Use valid texinfo directives. @program is not a valid directive.
[gnulib.git] / ChangeLog
1 2007-10-03  Bruno Haible  <bruno@clisp.org>
2
3         * doc/relocatable.texi: Use @samp instead of @program.
4
5 2007-10-02  Jim Meyering  <jim@meyering.net>
6
7         Perform one more "_.h" -> ".in.h" substitution.
8         * modules/unistd (Makefile.am) [unistd.h]: Use unistd.h.in
9         instead of unistd_.h here, too.
10
11 2007-10-01  Bruno Haible  <bruno@clisp.org>
12
13         * gnulib-tool (func_emit_initmacro_done): Special case for alloca.c.
14         Needed for the alloca-opt module.
15
16 2007-09-30  Bruno Haible  <bruno@clisp.org>
17
18         * lib/alloca.in.h: Renamed from lib/alloca_.h.
19         * modules/alloca-opt (Files, Makefile.am): Use alloca.in.h instead of
20         alloca_.h.
21         * lib/argz.in.h: Renamed from lib/argz_.h.
22         * modules/argz (Files, Makefile.am): Use argz.in.h instead of argz_.h.
23         * lib/byteswap.in.h: Renamed from lib/byteswap_.h.
24         * modules/byteswap (Files, Makefile.am): Use byteswap.in.h instead of
25         byteswap_.h.
26         * lib/dirent.in.h: Renamed from lib/dirent_.h.
27         * modules/fchdir (Files, Makefile.am): Use dirent.in.h instead of
28         dirent_.h.
29         * lib/fcntl.in.h: Renamed from lib/fcntl_.h.
30         * modules/fcntl (Files, Makefile.am): Use fcntl.in.h instead of
31         fcntl_.h.
32         * lib/float.in.h: Renamed from lib/float_.h.
33         * modules/float (Files, Makefile.am): Use float.in.h instead of
34         float_.h.
35         * lib/fnmatch.in.h: Renamed from lib/fnmatch_.h.
36         * modules/fnmatch (Files, Makefile.am): Use fnmatch.in.h instead of
37         fnmatch_.h.
38         * lib/getopt.in.h: Renamed from lib/getopt_.h.
39         * modules/getopt (Files, Makefile.am): Use getopt.in.h instead of
40         getopt_.h.
41         * lib/glob.in.h: Renamed from lib/glob_.h.
42         * modules/glob (Files, Makefile.am): Use glob.in.h instead of glob_.h.
43         * lib/iconv.in.h: Renamed from lib/iconv_.h.
44         * modules/iconv_open (Files, Makefile.am): Use iconv.in.h instead of
45         iconv_.h.
46         * lib/inttypes.in.h: Renamed from lib/inttypes_.h.
47         * modules/inttypes (Files, Makefile.am): Use inttypes.in.h instead of
48         inttypes_.h.
49         * lib/locale.in.h: Renamed from lib/locale_.h.
50         * modules/locale (Files, Makefile.am): Use locale.in.h instead of
51         locale_.h.
52         * lib/math.in.h: Renamed from lib/math_.h.
53         * modules/math (Files, Makefile.am): Use math.in.h instead of math_.h.
54         * lib/netinet_in.in.h: Renamed from lib/netinet_in_.h.
55         * modules/netinet_in (Files, Makefile.am): Use netinet_in.in.h instead
56         of netinet_in_.h. Add dependency.
57         * lib/poll.in.h: Renamed from lib/poll_.h.
58         * modules/poll (Files, Makefile.am): Use poll.in.h instead of poll_.h.
59         * lib/search.in.h: Renamed from lib/search_.h.
60         * modules/search (Files, Makefile.am): Use search.in.h instead of
61         search_.h.
62         * lib/signal.in.h: Renamed from lib/signal_.h.
63         * modules/signal (Files, Makefile.am): Use signal.in.h instead of
64         _signal.h.
65         * lib/stdbool.in.h: Renamed from lib/stdbool_.h.
66         * modules/stdbool (Files, Makefile.am): Use stdbool.in.h instead of
67         stdbool_.h.
68         * lib/stdint.in.h: Renamed from lib/stdint_.h.
69         * modules/stdint (Files, Makefile.am): Use stdint.in.h instead of
70         stdint_.h.
71         * lib/stdio.in.h: Renamed from lib/stdio_.h.
72         * modules/stdio (Files, Makefile.am): Use stdio.in.h instead of
73         stdio_.h.
74         * lib/stdlib.in.h: Renamed from lib/stdlib_.h.
75         * modules/stdlib (Files, Makefile.am): Use stdlib.in.h instead of
76         stdlib_.h.
77         * lib/string.in.h: Renamed from lib/string_.h.
78         * modules/string (Files, Makefile.am): Use string.in.h instead of
79         string_.h.
80         * doc/gnulib-tool.texi (Initial import): Update.
81         * lib/sys_select.in.h: Renamed from lib/sys_select_.h.
82         * modules/sys_select (Files, Makefile.am): Use sys_select.in.h instead
83         of sys_select_.h. Add dependency.
84         * lib/sys_socket.in.h: Renamed from lib/sys_socket_.h.
85         * modules/sys_socket (Files, Makefile.am): Use sys_socket.in.h instead
86         of sys_socket_.h.
87         * lib/sys_stat.in.h: Renamed from lib/sys_stat_.h.
88         * modules/sys_stat (Files, Makefile.am): Use sys_stat.in.h instead of
89         sys_stat_.h.
90         * lib/sys_time.in.h: Renamed from lib/sys_time_.h.
91         * modules/sys_time (Files, Makefile.am): Use sys_time.in.h instead of
92         sys_time_.h.
93         * lib/sysexits.in.h: Renamed from lib/sysexits_.h.
94         * modules/sysexits (Files, Makefile.am): Use sysexits.in.h instead of
95         sysexits_.h.
96         * lib/time.in.h: Renamed from lib/time_.h.
97         * modules/time (Files, Makefile.am): Use time.in.h instead of time_.h.
98         * lib/unistd.in.h: Renamed from lib/unistd_.h.
99         * modules/unistd (Files, Makefile.am): Use unistd.in.h instead of
100         unistd_.h.
101         * lib/wchar.in.h: Renamed from lib/wchar_.h.
102         * modules/wchar (Files, Makefile.am): Use wchar.in.h instead of
103         wchar_.h.
104         * lib/wctype.in.h: Renamed from lib/wctype_.h.
105         * modules/wctype (Files, Makefile.am): Use wctype.in.h instead of
106         wctype_.h.
107         * build-aux/bootstrap (slurp): Update.
108         * lib/.cppi-disable: Update.
109
110 2007-09-30  Bruno Haible  <bruno@clisp.org>
111
112         * tests/test-getaddrinfo.c (AF_UNSPEC): Provide a fallback definition.
113         Needed on BeOS.
114
115 2007-09-30  Bruno Haible  <bruno@clisp.org>
116
117         * modules/dirname-tests (check_PROGRAMS): Renamed from noinst_PROGRAMS.
118
119 2007-09-29  Bruno Haible  <bruno@clisp.org>
120
121         * lib/stdio_.h (getdelim, getline): Add identifiers. Doc tweak.
122
123 2007-09-29  Bruno Haible  <bruno@clisp.org>
124
125         * lib/xreadlink.c (xreadlink): Simplify to a wrapper around areadlink.
126         * modules/xreadlink (Depends-on): Add areadlink, remove readlink etc.
127         * build-aux/install-reloc: Compile also areadlink.c.
128         * modules/relocatable-prog-wrapper (Files): Add lib/areadlink.[hc].
129
130 2007-09-29  Bruno Haible  <bruno@clisp.org>
131
132         * gnulib-tool (func_emit_initmacro_done): Indentation.
133
134 2007-09-29  Bruno Haible  <bruno@clisp.org>
135
136         * README: Add CVS checkout update instructions.
137         Info from Bob Proulx <bob@proulx.com>.
138
139 2007-09-28  Eric Blake  <ebb9@byu.net>
140
141         Provide move-if-change.
142         * build-aux/move-if-change: New file, based on best practice
143         rather than any canonical upstream location.
144
145 2007-09-28  Jim Meyering  <jim@meyering.net>
146
147         Fix canonicalize loop-detection corner case.
148         Do not attempt to stat the symlink values stored via seen_triple.
149         Without this, coreutils' tests/misc/readlink-fp-loop test would fail
150         on linux-2.6.18, (but not 2.6.22).
151         * lib/canonicalize.c (seen_triple): Use triple_compare_ino_str, not
152         triple_compare.  The former compares dev,ino,filename, while the latter
153         would actually stat dirname(filename) when dev and ino were equal.
154         * lib/hash-triple.c: Install <string.h>.
155         (STREQ): Define.
156         (triple_compare_ino_str): New function.
157         * lib/hash-triple.h (triple_compare_ino_str): Declare it.
158
159 2007-09-28  Eric Blake  <ebb9@byu.net>
160
161         Enforce that AC_REPLACE_FUNCS files exist.
162         * gnulib-tool (func_emit_initmacro_done): Make AC_LIBSOURCES
163         override check for typos.
164
165         Fix test-closein on Solaris 10.
166         * tests/test-closein.c (main): Don't assume stdin can be inherited
167         closed on all systems.
168         * tests/test-closein.sh: Likewise.
169         Reported by Piotr Tarnowski.
170
171 2007-09-28  Jim Meyering  <jim@meyering.net>
172
173         * m4/nanosleep.m4 (gl_FUNC_NANOSLEEP): Fix typo in comment.
174
175 2007-09-27  Jim Meyering  <jim@meyering.net>
176
177         canonicalize: Avoid a false-positive cycle failure.
178         * modules/canonicalize (Depends-on): Add file-set and hash-triple.
179         Sort.  Remove cycle-check.
180         * lib/canonicalize.c: Include file-set.h and hash-triple.h,
181         not cycle-check.h.
182         (seen_triple): New function.
183         (canonicalize_filename_mode): Use it instead of cycle-check.
184         * tests/test-canonicalize.c: Add a test for this bug.
185         * tests/test-canonicalize.sh: Set up and run the test.
186
187         New module, file-set, from coreutils.
188         * modules/file-set: Define it.
189         * lib/file-set.c, lib/file-set.h: Implement.
190
191         New module, hash-triple, from coreutils.
192         * modules/hash-triple: Define it.
193         * lib/hash-triple.c, lib/hash-triple.h: Implement.
194
195 2007-09-25  Eric Blake  <ebb9@byu.net>
196
197         Fix strerror on Interix.
198         * lib/string_.h (strerror): Declare replacement.
199         * doc/functions/strerror.texi (strerror): Document the Interix
200         shortcoming.
201         * modules/string (Makefile.am): Support new hooks.
202         * m4/string_h.m4 (gl_HEADER_STRING_H_DEFAULTS): Add new hooks.
203         * m4/strerror.m4 (gl_FUNC_STRERROR): Defer to
204         gl_FUNC_STRERROR_SEPARATE.
205         (gl_FUNC_STRERROR_SEPARATE): Check for Interix bug.
206         * lib/strerror.c (rpl_strerror): Provide replacement.
207         * modules/strerror (Depends-on): Add string.
208         (configure.ac): Detect use of module.
209         * tests/test-strerror.c: New file.
210         * modules/strerror-tests: New test module.
211         * modules/argp (Depends-on): Add strerror.
212         * modules/error (Depends-on): Likewise.
213         Reported by Martin Koeppe.
214
215 2007-09-24  Bruno Haible  <bruno@clisp.org>
216
217         * README: Update git instructions.
218
219 2007-09-24  Eric Blake  <ebb9@byu.net>
220
221         Revert fpending breakage from 2007-09-08.
222         * m4/fpending.m4 (gl_FUNC_FPENDING): Don't require existence of
223         __fpending.c.
224
225 2007-09-24  Jim Meyering  <jim@meyering.net>
226
227         filenamecat.c: Add a test.
228         * lib/filenamecat.c (main) [TEST_FILE_NAME_CONCAT]: Add a test
229         showing how the function works when DIR is the empty string.
230
231 2007-09-21  Simon Josefsson  <simon@josefsson.org>
232
233         * tests/test-canonicalize.sh: Turn on executable bit.
234
235 2007-09-19  Eric Blake  <ebb9@byu.net>
236
237         * README: Update CVS instructions.
238
239 2007-09-18  Bruno Haible  <bruno@clisp.org>
240
241         * modules/areadlink: New file.
242         * lib/areadlink.h (areadlink): New declaration.
243         * lib/areadlink.c: New file, based on lib/xreadlink.c.
244
245 2007-09-17  Jim Meyering  <jim@meyering.net>
246
247         * lib/savewd.c (ESTALE) [!defined]: Define.
248         Reported to be required on Interix by Martin Koeppe.
249
250 2007-09-17  Bruno Haible  <bruno@clisp.org>
251
252         * gnulib-tool (func_version): Use $version.
253
254 2007-09-16  Bruno Haible  <bruno@clisp.org>
255
256         * m4/printf.m4 (gl_PRINTF_LONG_DOUBLE, gl_PRINTF_INFINITE,
257         gl_PRINTF_INFINITE_LONG_DOUBLE): Increase buf's size from 100 to 10000.
258         Needed on glibc-2.6.1 with -fstack-protector -D_FORTIFY_SOURCE=2.
259         Reported by Greg Schafer <gschafer@zip.com.au>.
260
261 2007-09-15  Bruno Haible  <bruno@clisp.org>
262
263         * gnulib-tool (sed): Try a little harder to make bash understand the
264         alias.
265         Reported by Bruce Korb <bruce.korb@gmail.com>.
266
267 2007-09-13  Eric Blake  <ebb9@byu.net>
268
269         * ChangeLog: Remove conflict markers.
270
271 2007-09-13  Simon Josefsson  <simon@josefsson.org>
272
273         * lib/gc-gnulib.c (gc_hash_open): Catch NULL calloc return value.
274         Reported by Bruno Haible <bruno@clisp.org>.
275
276 2007-09-12  Bruno Haible  <bruno@clisp.org>
277
278         * m4/lock.m4: Don't provide an AC_USE_SYSTEM_EXTENSIONS definition.
279         (gl_LOCK_EARLY_BODY): Use AC_GNU_SOURCE when AC_USE_SYSTEM_EXTENSIONS
280         is not defined.
281
282 2007-09-12  Eric Blake  <ebb9@byu.net>
283
284         Track CVS Autoconf on AC_USE_SYSTEM_EXTENSIONS.
285         * m4/extensions.m4 (AC_USE_SYSTEM_EXTENSIONS): Update to CVS
286         Autoconf definition.
287         * modules/euidaccess (Depends-on): Add extensions, for
288         AC_USE_SYSTEM_EXTENSIONS with autoconf <= 2.59.
289         * modules/fnmatch (Depends-on): Likewise.
290         * modules/getaddrinfo (Depends-on): Likewise.
291         * modules/getdelim (Depends-on): Likewise.
292         * modules/getline (Depends-on): Likewise.
293         * modules/getsubopt (Depends-on): Likewise.
294         * modules/gettext (Depends-on): Likewise.
295         * modules/group-member (Depends-on): Likewise.
296         * modules/mbchar (Depends-on): Likewise.
297         * modules/memmem (Depends-on): Likewise.
298         * modules/mempcpy (Depends-on): Likewise.
299         * modules/memrchr (Depends-on): Likewise.
300         * modules/pagealign_alloc (Depends-on): Likewise.
301         * modules/readutmp (Depends-on): Likewise.
302         * modules/stpcpy (Depends-on): Likewise.
303         * modules/stpncpy (Depends-on): Likewise.
304         * modules/strchrnul (Depends-on): Likewise.
305         * modules/strndup (Depends-on): Likewise.
306         * modules/strsep (Depends-on): Likewise.
307         * modules/strverscmp (Depends-on): Likewise.
308         * modules/vasprintf (Depends-on): Likewise.
309         * modules/wcwidth (Depends-on): Likewise.
310         * m4/euidaccess.m4 (gl_FUNC_EUIDACCESS): AC_GNU_SOURCE will be
311         obsolete in Autoconf 2.62; use AC_USE_SYSTEM_EXTENSIONS instead.
312         * m4/fnmatch.m4 (gl_FUNC_FNMATCH_GNU): Likewise.
313         * m4/getaddrinfo.m4 (gl_PREREQ_GETADDR_INFO): Likewise.
314         * m4/getdelim.m4 (gl_FUNC_GETDELIM): Likewise.
315         * m4/getline.m4 (gl_FUNC_GETLINE): Likewise.
316         * m4/getsubopt.m4 (gl_FUNC_GETSUBOPT): Likewise.
317         * m4/glob.m4 (gl_PREREQ_GLOB): Likewise.
318         * m4/group-member.m4 (gl_FUNC_GROUP_MEMBER): Likewise.
319         * m4/mbchar.m4 (gl_MBCHAR): Likewise.
320         * m4/memmem.m4 (gl_FUNC_MEMMEM): Likewise.
321         * m4/mempcpy.m4 (gl_FUNC_MEMPCPY): Likewise.
322         * m4/memrchr.m4 (gl_FUNC_MEMRCHR): Likewise.
323         * m4/mmap-anon.m4 (gl_FUNC_MMAP_ANON): Likewise.
324         * m4/pagealign_alloc.m4 (gl_PAGEALIGN_ALLOC): Likewise.
325         * m4/readutmp.m4 (gl_READUTMP): Likewise.
326         * m4/regex.m4 (gl_PREREQ_REGEX): Likewise.
327         * m4/stpcpy.m4 (gl_FUNC_STPCPY): Likewise.
328         * m4/stpncpy.m4 (gl_FUNC_STPNCPY): Likewise.
329         * m4/strchrnul.m4 (gl_FUNC_STRCHRNUL): Likewise.
330         * m4/strndup.m4 (gl_FUNC_STRNDUP): Likewise.
331         * m4/strnlen.m4 (gl_FUNC_STRNLEN): Likewise.
332         * m4/strsep.m4 (gl_FUNC_STRSEP): Likewise.
333         * m4/strverscmp.m4 (gl_FUNC_STRVERSCMP): Likewise.
334         * m4/vasprintf.m4 (gl_PREREQ_VASPRINTF_H): Likewise.
335         * m4/wcwidth.m4 (gl_FUNC_WCWIDTH): Likewise.
336         * m4/lock.m4 (gl_LOCK_EARLY_BODY): Likewise, but provide fallback,
337         so that lock.m4 can be used in gettext without extensions module.
338
339 2007-09-11  Bruno Haible  <bruno@clisp.org>
340
341         * m4/isc-posix.m4: Remove file.
342         Suggested by Eric Blake.
343
344 2007-09-11  Eric Blake  <ebb9@byu.net>
345
346         * ChangeLog: Restore lines accidentally truncated 2007-04-06.
347
348 2007-09-10  Bruno Haible  <bruno@clisp.org>
349
350         * posix-modules: Fix typo in error message.
351         Reported by Matt <mkraai@beckman.com>.
352
353 2007-09-09  Bruno Haible  <bruno@clisp.org>
354
355         * doc/functions/getdelim.texi: Update list of platforms lacking the
356         function.
357         * doc/functions/getline.texi: Likewise.
358
359 2007-09-09  Jim Meyering  <jim@meyering.net>
360
361         * lib/hash.c (hash_initialize): Detect calloc failure.
362         Reported by Bruno Haible.
363
364 2007-09-09  Bruno Haible  <bruno@clisp.org>
365
366         * lib/canonicalize-lgpl.c (__realpath): Set errno to ENOMEM when
367         malloc or realloc fails.
368
369 2007-09-09  Bruno Haible  <bruno@clisp.org>
370
371         * modules/getcwd (Depends-on): Add malloc-posix.
372         * modules/glob (Depends-on): Likewise.
373         * modules/putenv (Depends-on): Likewise.
374         * modules/strdup (Depends-on): Likewise.
375         * modules/getdelim (Depends-on): Add realloc-posix.
376         * modules/read-file (Depends-on): Likewise.
377
378 2007-09-09  Bruno Haible  <bruno@clisp.org>
379
380         * m4/malloc.m4 (gl_CHECK_MALLOC_POSIX): New macro.
381         (gl_FUNC_MALLOC_POSIX): Require it.
382         * m4/realloc.m4 (gl_FUNC_REALLOC_POSIX): Likewise.
383         * m4/calloc.m4 (gl_FUNC_CALLOC_POSIX): Likewise.
384         * modules/realloc (Files): Add m4/malloc.m4.
385         * modules/calloc (Files): Likewise.
386
387 2007-09-09  Bruno Haible  <bruno@clisp.org>
388
389         * modules/malloc-posix: New file.
390         * modules/malloc (Depends-on): Add malloc-posix.
391         * lib/malloc.c: Include errno.h.
392         (rpl_malloc): Merge the requirements of a glibc-compatible malloc
393         and a POSIX-compatible malloc into a single function. Set ENOMEM
394         when returning NULL.
395         * m4/malloc.m4: New file.
396         * doc/functions/malloc.texi: Mention the malloc-posix module.
397         * lib/stdlib_.h (malloc): New declaration.
398         * m4/stdlib_h.m4 (gl_STDLIB_H_DEFAULTS): Initialize
399         GNULIB_MALLOC_POSIX and HAVE_MALLOC_POSIX.
400         * modules/stdlib (stdlib.h): Substitute also GNULIB_MALLOC_POSIX
401         and HAVE_MALLOC_POSIX.
402
403 2007-09-09  Bruno Haible  <bruno@clisp.org>
404
405         * modules/realloc-posix: New file.
406         * modules/realloc (Depends-on): Add realloc-posix.
407         * lib/realloc.c: Include errno.h.
408         (rpl_realloc): Merge the requirements of a glibc-compatible realloc
409         and a POSIX-compatible realloc into a single function. Set ENOMEM
410         when returning NULL.
411         * m4/realloc.m4: New file.
412         * doc/functions/realloc.texi: Mention the realloc-posix module.
413         * lib/stdlib_.h (realloc): New declaration.
414         * m4/stdlib_h.m4 (gl_STDLIB_H_DEFAULTS): Initialize
415         GNULIB_REALLOC_POSIX and HAVE_REALLOC_POSIX.
416         * modules/stdlib (stdlib.h): Substitute also GNULIB_REALLOC_POSIX
417         and HAVE_REALLOC_POSIX.
418
419 2007-09-09  Bruno Haible  <bruno@clisp.org>
420
421         * modules/calloc-posix: New file.
422         * modules/calloc (Depends-on): Add calloc-posix.
423         * lib/calloc.c: Include errno.h.
424         (rpl_calloc): Merge the requirements of a glibc-compatible calloc
425         and a POSIX-compatible calloc into a single function. Set ENOMEM
426         when returning NULL.
427         * m4/calloc.m4 (gl_FUNC_CALLOC_POSIX): New macro.
428         * doc/functions/calloc.texi: Mention the calloc-posix module.
429         * lib/stdlib_.h (calloc): New declaration.
430         * m4/stdlib_h.m4 (gl_STDLIB_H_DEFAULTS): Initialize
431         GNULIB_CALLOC_POSIX and HAVE_CALLOC_POSIX.
432         * modules/stdlib (stdlib.h): Substitute also GNULIB_CALLOC_POSIX
433         and HAVE_CALLOC_POSIX.
434
435 2007-09-09  Bruno Haible  <bruno@clisp.org>
436
437         Allow for modules to show an arbitrary notice.
438         * modules/TEMPLATE-EXTENDED: Add 'Notice' field.
439         * gnulib-tool: New option --extract-notice.
440         (func_usage): Document it.
441         (sed_extract_prog): Update.
442         (func_get_notice): New function.
443         (func_modules_notice): New function.
444         (func_import, func_create_testdir): Invoke it.
445         Suggested by Jim Meyering.
446
447 2007-09-09  Bruno Haible  <bruno@clisp.org>
448
449         * gnulib-tool: New options --verbose, --quiet.
450         (func_usage): Document them.
451         (verbose): New variable.
452         (func_execute_command): New function.
453         (func_import): Don't show the module list and the file list if
454         $verbose < 0.
455         (func_create_testdir): Likewise. Use func_execute_command.
456         (func_create_megatestdir): Use func_execute_command.
457
458 2007-09-08  Bruno Haible  <bruno@clisp.org>
459
460         * gnulib-tool (func_import): Prefer rsync over wget when available,
461         for fetching the PO files.
462
463 2007-09-08  Bruno Haible  <bruno@clisp.org>
464
465         * posix-modules: New file. Portions copied from gnulib-tool.
466         * doc/gnulib.texi (POSIX Substitutes Library): New chapter.
467
468 2007-09-08  Jim Meyering  <jim@meyering.net>
469
470         Rename __fpending.c -> fpending.c and __fpending.h -> fpending.h
471         * lib/fpending.h: Rename from __fpending.h.
472         * lib/fpending.c: Rename from __fpending.c.
473         Include "fpending.h", not "__fpending.h".
474         * lib/__fpending.h, lib/__fpending.c: Remove files.
475         * modules/fpending (Files): Reflect new file names.
476         * lib/close-stream.c: Include "fpending.h", not "__fpending.h".
477
478 2007-09-08  Bruno Haible  <bruno@clisp.org>
479
480         * m4/inttypes-h.m4: Remove stub file.
481
482 2007-09-07  Simon Josefsson  <simon@josefsson.org>
483
484         * doc/headers/stdint.texi: Discuss #include_next issue.
485
486 2007-09-06  Paul Eggert  <eggert@cs.ucla.edu>
487
488         * build-aux/bootstrap: Remove obsolete comment about wget --help.
489
490 2007-09-06  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
491
492         * m4/time_h.m4 (gl_CHECK_TYPE_STRUCT_TIMESPEC): Fix misspelling
493         in variable name.
494
495 2007-09-03  Jim Meyering  <jim@meyering.net>
496
497         New module: git-version-gen.
498         * modules/git-version-gen: New file.
499
500         Import changes from coreutils for bootstrap script.
501
502         * build-aux/bootstrap (WGET_COMMAND): Remove code to set this variable.
503
504         bootstrap: uses rsync to download the .po files
505         * build-aux/bootstrap (po_download_command_format): New global.
506         (download_po_files): Use rsync.
507         (update_po_files): Don't remove .po files after download,
508         so future rsync runs can take advantage of the copies.
509
510         * build-aux/bootstrap (gnulib_tool): Make sha1sum check quietly.
511
512         Solve the unnecessary-.po-file-regeneration problem once and for all.
513         * build-aux/bootstrap (download_po_files): New function, renamed from
514         get_translations.  Now, downloads, but doesn't update LINGUAS.
515         (update_po_files): New function.
516
517         bootstrap: Ignore more.
518         * build-aux/bootstrap (symlink_to_dir): Add a directory name like
519         uniwidth to e.g., lib/.gitignore.
520         (slurp): Handle the sys_stat_.h -> sys mapping, too.
521
522         * build-aux/bootstrap: New setting: vc_ignore.
523         (insert_sorted_if_absent): Create $file if absent.
524         Adapt to new, possibly empty, list: $vc_ignore.
525
526         bootstrap: generate more ignorable names
527         * build-aux/bootstrap (slurp): When generating ignorable names,
528         also map .sin to .sed, .gperf to .c, and .y to .c.
529
530 2007-09-03  Jim Meyering  <jim@meyering.net>
531
532         * build-aux/git-version-gen: New file, from coreutils.  For details, see
533         http://git.sv.gnu.org/gitweb/?p=coreutils.git;a=commitdiff;h=bfe49f506
534
535 2007-09-02  Bruno Haible  <bruno@clisp.org>
536
537         Fix mis-recognition of 'mcs' on QNX 6.
538         * m4/csharpcomp.m4 (gt_CSHARPCOMP): Test whether the "mcs --version"
539         output contains the string "Mono".
540         * lib/csharpcomp.c (compile_csharp_using_mono): Likewise.
541         Reported by <kraai@ftbfs.org> at <https://savannah.gnu.org/bugs/?18337>.
542
543 2007-09-01  Bruno Haible  <bruno@clisp.org>
544
545         Fix collision between uniwidth/* and linebreak modules.
546         * lib/linebreak.h (locale_charset, uc_width, u8_width, u16_width,
547         u32_width): Remove declarations.
548         * lib/linebreak.c: Include uniwidth.h, uniwidth/cjk.h, streq.h.
549         (u32_mbtouc_unsafe, streq9, streq8, streq7, streq6, streq5, streq4,
550         streq3, streq2, streq1, streq0): Remove functions.
551         (STREQ): Remove macro.
552         (is_cjk_encoding): Remove function.
553         (nonspacing_table_data, nonspacing_table_ind): Remove constants.
554         (uc_width, u8_width, u16_width, u32_width): Remove functions.
555         * modules/linebreak (Depends-on): Add streq, uniwidth/width.
556         * NEWS: Document the change.
557
558 2007-09-01  Bruno Haible  <bruno@clisp.org>
559
560         * lib/streq.h: Add double-inclusion guard.
561
562 2007-09-01  Karl Berry  <karl@gnu.org>
563
564         * MODULES.html.sh: Rename mreadlink_with_size to areadlink_with_size.
565
566 2007-08-28  Jim Meyering  <jim@meyering.net>
567
568         Rename mreadlink_with_size to areadlink_with_size.
569         * NEWS: Document the change.
570         * lib/mreadlink-with-size.c (mreadlink_with_size): Rename this to...
571         * lib/areadlink-with-size.c (areadlink_with_size): ...this.
572         * lib/mreadlink.h: Rename this to...
573         * lib/areadlink.h: ...this.
574         * modules/mreadlink-with-size: Rename this to...
575         * modules/areadlink-with-size: ...this.
576         * lib/canonicalize.c: Reflect the renaming.
577         * modules/canonicalize: Likewise.
578
579 2007-08-26  Bruno Haible  <bruno@clisp.org>
580
581         * gnulib-tool (func_import): When deciding which files to remove,
582         consider also dangling symbolic links.
583         Reported by Eric Blake.
584
585 2007-08-26  Bruno Haible  <bruno@clisp.org>
586
587         * gnulib-tool (func_ln_if_changed): Use "test -h", not "test -L".
588
589 2007-08-23  Simon Josefsson  <simon@josefsson.org>
590
591         * lib/readline.c: Don't include getline.h, the prototype is now
592         found in stdio.h.
593
594 2007-08-23  Jim Meyering  <jim@meyering.net>
595
596         Getdelim touchup.
597         * lib/getdelim.c (getdelim): Don't bother to save/restore errno
598         around the funlockfile call, since funlockfile never sets errno.
599         Don't set errno upon failed realloc.
600
601 2007-08-22  Eric Blake  <ebb9@byu.net>
602
603         Getline touchups.
604         * lib/getdelim.c (getdelim): Revert regression that required *n to
605         be 0 when *lineptr is NULL.  Preserve errno across funlockfile.
606         * m4/getdelim.m4 (gl_FUNC_GETDELIM): Check for declaration of
607         getdelim, rather than whether implementation is missing.
608         * m4/getline.m4 (gl_FUNC_GETLINE): Likewise for getline.
609         * lib/stdio_.h (getline): Also declare if replacement is
610         required.
611         * doc/functions/getdelim.texi: New file.
612         * doc/functions/getline.texi: Likewise.
613         * doc/gnulib.texi (Function Substitutes): Add new files.
614         Reported by Bruno Haible.
615
616 2007-08-22  Ludovic Courtès  <ludo@gnu.org>
617
618         * users.txt: Add Guile.
619
620 2007-08-22  Eric Blake  <ebb9@byu.net>
621
622         * tests/test-getdelim.c (main): Use remove, not unlink.
623         * tests/test-getline.c (main): Likewise.
624
625         Move getline and getdelim into stdio.h, per POSIX 200x.
626         * modules/getline (Files): Remove getline.h.
627         (Depends-on): Add stdio.
628         (configure.ac): Add module indicator.
629         * modules/getdelim (Files): Remove getdelim.h.
630         (Depends-on): Add stdio.
631         (configure.ac): Add module indicator.
632         * modules/stdio (Makefile.am): Work with new indicators.
633         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Add new defaults.
634         * m4/getdelim.m4 (gl_FUNC_GETDELIM): Work with stdio needs.
635         * m4/getline.m4 (gl_FUNC_GETLINE): Likewise.
636         * lib/getdelim.h: Delete.
637         * lib/getline.h: Delete.
638         * lib/stdio_.h (getdelim, getline): Declare.
639         * modules/getdelim-tests: New module.
640         * modules/getline-tests: Likewise.
641         * tests/test-getdelim.c: New file.
642         * tests/test-getline.c: Likewise.
643         * NEWS: Document the change.
644         * lib/getline.c: Update choice of header.
645         * lib/csharpcomp.c: Likewise.
646         * lib/getpass.c: Likewise.
647         * lib/javacomp.c: Likewise.
648         * lib/javaversion.c: Likewise.
649         * lib/yesno.c: Likewise.
650         * lib/getdelim.c: Likewise.
651         (getdelim): Set errno on failure, and avoid memory leak.
652
653 2007-08-19  Bruno Haible  <bruno@clisp.org>
654
655         * modules/closein (Depends-on): Add freadahead.
656         * lib/closein.c: Include freadahead.h.
657         (close_stdin): Skip the fseeko and fflush calls if freadahead(stdin)
658         is zero.
659
660 2007-08-19  Bruno Haible  <bruno@clisp.org>
661
662         * modules/freadahead-tests: New file.
663         * tests/test-freadahead.sh: New file.
664         * tests/test-freadahead.c: New file.
665
666         * modules/freadahead: New file.
667         * lib/freadahead.h: New file.
668         * lib/freadahead.c: New file.
669         * MODULES.html.sh (File stream based Input/Output): Add freadahead,
670         fbufmode, fpurge, freadable, fwritable.
671
672 2007-08-19  Eric Blake  <ebb9@byu.net>
673
674         Test yesno in combination with closein.
675         * lib/yesno.c (yesno): Document use of stdin.
676         * modules/yesno-tests (Files): New module.
677         * tests/test-yesno.c (main): New file.
678         * tests/test-yesno.sh: Likewise.
679
680 2007-08-19  Bruno Haible  <bruno@clisp.org>
681
682         * lib/fbufmode.c (fbufmode): Add tentative support for Solaris/AMD64.
683         * lib/fseeko.c (rpl_fseeko): Likewise.
684         * lib/fseterr.c (fseterr): Likewise.
685
686 2007-08-19  Bruno Haible  <bruno@clisp.org>
687
688         * tests/test-lseek.c (main): Disable a test for BeOS.
689         * doc/functions/lseek.texi: Document the BeOS bug.
690
691 2007-08-19  Bruno Haible  <bruno@clisp.org>
692             Eric Blake  <ebb9@byu.net>
693
694         * lib/lseek.c: Include <sys/stat.h>.
695         (rpl_lseek): Add workaround code also for Unix platforms.
696         Needed for BeOS.
697         * m4/lseek.m4 (gl_FUNC_LSEEK): When cross-compiling, fail on BeOS.
698         * doc/functions/lseek.texi: Document BeOS definiency.
699
700 2007-08-18  Bruno Haible  <bruno@clisp.org>
701
702         * modules/fstrcmp-tests: New file.
703         * tests/test-fstrcmp.c: New file.
704
705 2007-08-18  Bruno Haible  <bruno@clisp.org>
706
707         * modules/fstrcmp: New file, from GNU gettext with modifications.
708         * lib/fstrcmp.h: New file, from GNU gettext.
709         * lib/fstrcmp.c: New file, from GNU gettext.
710         * MODULES.html.sh (String handling): Add fstrcmp.
711
712 2007-08-18  Bruno Haible  <bruno@clisp.org>
713
714         * lib/diffseq.h (struct context): Change type of 'heuristic' field to
715         'bool'.
716         (diag, compareseq): Remove const from the ctxt argument.
717         (USE_HEURISTIC): Undefine at the end.
718
719 2007-08-18  Jim Meyering  <jim@meyering.net>
720
721         New file: lib/idcache.h
722         * NEWS: Mention the addition.
723         * modules/idcache (Files): Add lib/idcache.h
724         * lib/idcache.c: Include "idcache.h".
725         Don't include <sys/types.h>.
726         Add a FIXME comment.
727         Move file-scoped "static" declarations to the top.
728         * lib/idcache.h: New file.  Include <sys/types.h> here, instead.
729
730 2007-08-17  Bruno Haible  <bruno@clisp.org>
731         and Paul Eggert  <eggert@cs.ucla.edu>
732
733         * MODULES.html.sh: Add diffseq.
734         * modules/diffseq: New file.
735         * lib/diffseq.h: New file, from GNU gettext with a few minor changes,
736         extracted from GNU gettext's fstrcmp.c and GNU diff's analyze.c.
737
738 2007-08-15  Paul Eggert  <eggert@cs.ucla.edu>
739
740         Import changes from coreutils for bootstrap script.
741
742         2007-07-21  Paul Eggert  <eggert@cs.ucla.edu>
743
744         * build-aux/bootstrap (slurp): Work even in environments where
745         "ls" defaults to "ls -A".  Put in a FIXME, though, since the
746         current code does not slurp files whose names start with ".", and
747         this looks like it might be a troublesome area.
748
749         2007-07-11  Jim Meyering  <jim@meyering.net>
750
751         If there's a GPL vN copyright comment, require that N == 3.
752
753         2007-07-08  Jim Meyering  <jim@meyering.net>
754
755         Run the coreutils-specific code only if tests/Makefile.am.in exists.
756         * build-aux/bootstrap (mam_template): Move definition out of loop.
757
758         Create symlinks for gl/{lib,m4}/*, just as for gnulib/{lib,m4}/*.
759
760         * build-aux/bootstrap (symlink_to_dir): Rename function from
761         symlink_to_gnulib.  Add a directory parameter.  Update all
762         callers.
763         (cp_mark_as_generated): Also check for -- and link to -- files in
764         gl/.
765
766         2007-07-08  Jim Meyering  <jim@meyering.net>
767
768         Adapt to deeper hierarchy in gnulib.
769         * build-aux/bootstrap (symlink_to_dir): If the destination
770         directory doesn't exist, create it. This is required at least for
771         "lib/uniwidth/cjk.h".
772
773         2007-05-15  Jim Meyering  <jim@meyering.net>
774
775         * build-aux/bootstrap: Now that generated Makefile.am files
776         are no longer under version control, they must be created at
777         bootstrap time.
778
779 2007-08-14  Ben Pfaff  <blp@gnu.org>
780
781         * lib/count-one-bits.h: Add comments.  From Bruno Haible.
782
783 2007-08-14  Paul Eggert  <eggert@cs.ucla.edu>
784
785         * lib/count-one-bits.h: Don't include <limits.h>; no longer needed
786         given the changes below.
787         (COUNT_ONE_BITS): Use 'verify' rather than 'verify_true'.  Work
788         even on hosts that have padding bits beyond the supported 64.
789
790 2007-08-10  Paul Eggert  <eggert@cs.ucla.edu>
791
792         * NEWS: In xstrtol, remove STRTOL_FATAL_ERROR and add xstrtol_fatal.
793         * lib/xstrtol.h: Don't include exitfail.h; that's now internal to
794         xstrtol.c.  Include getopt.h, since xstrtol_fatal's signature
795         depends on it.
796         (xstrtol_error): Remove.
797         (xstrtol_fatal): New decl, replacing the functionality of xstrtol_error
798         but with a different signature.
799         (ATTRIBUTE_NORETURN, __attribute__): New macros.
800         * lib/xstrtol-error.c: Include exitfail.h.
801         (xstrtol_fatal): New function, with a different signature from the
802         old xstrtol_error, so that the caller need not worry about passing
803         in an exit status, or about storage management of the option argument.
804         (xstrtol_error): Now a static function.  Redo signature to
805         implement xstrtol_fatal.  Output the correct number of hyphens in
806         front of the option so that the caller need not worry about
807         storage management.
808         (N_): New macro.
809         (_): Remove; not used now.
810         * modules/xstrtol: Depend on getopt.
811         * tests/test-xstrtol.c (main): Use new xstrtol_error function instead
812         of old STRTOL_FATAL_ERROR macro.
813         * tests/test-xstrtol.sh (t-xstrtol.xo): Adjust to match new behavior
814         of test program.
815         * tests/test-xstrtoimax.sh (t-xstrtoimax.xo): Likewise.
816         * tests/test-xstrtoumax.sh (t-xstrtoumax.xo): Likewise.
817
818 2007-08-08  Eric Blake  <ebb9@byu.net>
819
820         * lib/xstrtol-error.c: Add missing include.
821
822         Move xstrtol messages into gnulib domain, when --pobase is used.
823         * lib/xstrtol.h (_STRTOL_ERROR): Move messages out of macro...
824         * lib/xstrtol-error.c (xstrtol_error): ...into new file.
825         * modules/xstrtol (Files): Distribute new file.
826         * m4/xstrtol.m4 (gl_XSTRTOL): Build new file.
827         * lib/xstrtol.c (TESTING_XSTRTO): Move tests...
828         * tests/test-xstrtol.c: ...into new file.
829         * tests/test-xstrtoul.c: Also test xstrtoul.
830         * tests/test-xstrtoimax.c: Also test xstrtoimax.
831         * tests/test-xstrtoumax.c: Also test xstrtoumax.
832         * tests/test-xstrtol.sh: Drive the tests.
833         * tests/test-xstrtoimax.sh: Likewise.
834         * tests/test-xstrtoumax.sh: Likewise.
835         * modules/xstrtol-tests: New module.
836         * modules/xstrtoimax-tests: Likewise.
837         * modules/xstrtoumax-tests: Likewise.
838
839 2007-08-08  Jim Meyering  <jim@meyering.net>
840
841         New function: mfile_name_concat.
842         * lib/filenamecat.c (mfile_name_concat): New function, just like
843         file_name_concat, but return NULL upon failure rather than exiting
844         with a diagnostic.
845         * lib/filenamecat.h: Declare it.
846
847 2007-08-07  Bruno Haible  <bruno@clisp.org>
848
849         * m4/inttypes.m4 (gl_INTTYPES_H): Use GL_TRIGGER_STDC_LIMIT_MACROS
850         instead of __STDC_LIMIT_MACROS_TRIGGER. This avoids a redefinition
851         warning from gcc.
852         Reported by Eric Blake.
853
854 2007-08-07  Simon Josefsson  <simon@josefsson.org>
855
856         * modules/crypto/arctwo (License): Use the synonymous term "LGPLv2+".
857         * modules/crypto/arcfour (License): Likewise.
858         * modules/crypto/des-tests (License): Likewise.
859         * modules/crypto/gc-arctwo-tests (License): Likewise.
860         * modules/crypto/gc-des-tests (License): Likewise.
861         * modules/crypto/gc-hmac-md5-tests (License): Likewise.
862         * modules/crypto/gc-hmac-sha1-tests (License): Likewise.
863         * modules/crypto/gc-md2-tests (License): Likewise.
864         * modules/crypto/gc-md4-tests (License): Likewise.
865         * modules/crypto/gc-md5-tests (License): Likewise.
866         * modules/crypto/gc-pbkdf2-sha1-tests (License): Likewise.
867         * modules/crypto/gc-rijndael-tests (License): Likewise.
868         * modules/crypto/gc-sha1-tests (License): Likewise.
869         * modules/crypto/gc-tests (License): Likewise.
870         * modules/crypto/hmac-md5 (License): Likewise.
871         * modules/crypto/hmac-sha1 (License): Likewise.
872         * modules/crypto/md2-tests (License): Likewise.
873         * modules/crypto/md4-tests (License): Likewise.
874         * modules/crypto/md5 (License): Likewise.
875         * modules/crypto/rijndael (License): Likewise.
876         * modules/crypto/sha1 (License): Likewise.
877         * modules/memxor (License): Likewise.
878
879 2007-08-06  Paul Eggert  <eggert@cs.ucla.edu>
880         and Bruno Haible  <bruno@clisp.org>
881
882         * NEWS: Describe interface changes to human, xstrtol.
883         * lib/human.h: Include <xstrtol.h>.
884         (human_options): Return enum strtol_error, not int.  Remove
885         bool arg; take int * instead.
886         * lib/human.c: Don't include "gettext.h".
887         (_): Remove; no longer used.
888         Don't include <xstrtol.h>, since human.h does it.
889         (human_options): Adjust to abovementioned interface changes.
890         Do not report error to stderr; that's now the caller's
891         responsibility.
892         * lib/xstrtol.c (main) [defined TESTING_XSTRTO]: Adjust to
893         interface change.
894         * lib/xstrtol.h (_STRTOL_ERROR): Take Option, Arg rather than
895         Str, Argument_type_string.  All uses changed.  Put " argument"
896         in diagnostics to make them clearer.  Change wording of suffix
897         message for clarity.
898         (STRTOL_FATAL_ERROR): Take Option, Arg rather than Str,
899         Argument_type_string.
900         (STRTOL_FATAL_WARN): Remove; no longer used.
901         * modules/human (Depends-on): Remove gettext-h.
902
903 2007-08-06  Simon Josefsson  <simon@josefsson.org>
904
905         * build-aux/maint.mk, build-aux/GNUmakefile: Relicense to GPLv3+.
906
907 2007-07-31  Bruno Haible  <bruno@clisp.org>
908
909         * m4/stdint.m4 (gl_STDINT_H): Test whether WCHAR_MIN and WCHAR_MAX
910         are defined by <stdint.h> (as opposed to <wchar.h>, as on Dragonfly).
911         Reported by Joerg Sonnenberger <joerg@britannica.bec.de>.
912
913 2007-07-31  Bruno Haible  <bruno@clisp.org>
914
915         * lib/fflush.c (rpl_fflush): On BSD systems, use the __SNPT flag.
916         Suggested by Joerg Sonnenberger <joerg@britannica.bec.de>.
917
918 2007-07-30  Bruno Haible  <bruno@clisp.org>
919
920         * modules/base64 (License): Use the synonymous term "LGPLv2+".
921         * modules/c-ctype (License): Likewise.
922         * modules/c-strcase (License): Likewise.
923         * modules/check-version (License): Likewise.
924         * modules/iconv (License): Likewise.
925         * modules/iconv_open (License): Likewise.
926         * modules/read-file (License): Likewise.
927         * modules/striconv (License): Likewise.
928         * modules/strverscmp (License): Likewise.
929         * modules/vasprintf (License): Likewise.
930         * modules/crypto/des (License): Likewise.
931         * modules/crypto/gc (License): Likewise.
932         * modules/crypto/gc-arcfour (License): Likewise.
933         * modules/crypto/gc-arctwo (License): Likewise.
934         * modules/crypto/gc-des (License): Likewise.
935         * modules/crypto/gc-hmac-md5 (License): Likewise.
936         * modules/crypto/gc-hmac-sha1 (License): Likewise.
937         * modules/crypto/gc-md2 (License): Likewise.
938         * modules/crypto/gc-md4 (License): Likewise.
939         * modules/crypto/gc-md5 (License): Likewise.
940         * modules/crypto/gc-pbkdf2-sha1 (License): Likewise.
941         * modules/crypto/gc-random (License): Likewise.
942         * modules/crypto/gc-rijndael (License): Likewise.
943         * modules/crypto/gc-sha1 (License): Likewise.
944         * modules/crypto/md2 (License): Likewise.
945         * modules/crypto/md4 (License): Likewise.
946
947 2007-07-30  Jim Meyering  <jim@meyering.net>
948
949         * lib/fts.c (fts_read): Upon failure to chdir into a subdirectory,
950         set fts_info to FTS_DNR, not to FTS_ERR, so that the caller knows
951         it has valid stat data.  This bug would cause du not to count the
952         sizes of inaccessible directories.
953         Patch by Bryan Mason <bmason@redhat.com>, via Jose Maria Plans
954         in <http://bugzilla.redhat.com/250077>.
955
956 2007-07-25  Peter O'Gorman  <peter@pogma.com>
957             Bruno Haible  <bruno@clisp.org>
958
959         * m4/include_next.m4 (gl_INCLUDE_NEXT): Test whether #include_next
960         really works. Needed because AIX 4.3 "xlc -E" doesn't understand
961         #include_next, gives a diagnostic about it, but reports no error in
962         the exit code.
963         Reported by Gary V. Vaughan <gary@thewrittenword.com>.
964
965 2007-07-24  Ben Pfaff  <blp@gnu.org>
966
967         Improve name: "count-one-bits" is better than "popcount".
968         * MODULES.html.sh: Update name.
969         * lib/popcount.h: Renamed lib/count-one-bits.h.
970         (popcount): Renamed count_one_bits.
971         (popcountl): Renamed count_one_bits_l.
972         (popcountll): Renamed count_one_bits_ll.
973         * m4/popcount.m4: Renamed m4/count-one-bits.m4.
974         * modules/popcount: Renamed module/count-one-bits.
975         * modules/popcount-tests: Renamed module/count-one-bits-tests.
976         * tests/test-popcount.c: Renamed tests/test-count-one-bits.c.
977
978 2007-07-23  Ben Pfaff  <blp@gnu.org>
979
980         * lib/popcount.h (popcount32): Reduce size of constants, to allow
981         better code generation, and add U to large constants to avoid
982         warnings, in non-GCC case.
983         Suggested by Bruno Haible.
984
985 2007-07-23  Ben Pfaff  <blp@gnu.org>
986
987         * lib/popcount.h: Use verify_true instead of if...abort.
988         * modules/popcount: Depend on verify module.
989         Suggested by Jim Meyering.
990
991 2007-07-23  Bruno Haible  <bruno@clisp.org>
992
993         * gnulib-tool (func_import): Create a .cvsignore file also when the
994         directory is not yet in CVS but the toplevel directory is. When
995         creating a .cvsignore file, add ".deps" and ".dirstamp" to it.
996         Reported by Karl Berry.
997
998 2007-07-22  Ben Pfaff  <blp@gnu.org>
999
1000         * lib/popcount.h: Use faster, branchless algorithm for non-GCC
1001         case.
1002         Suggested by Eric Blake.
1003
1004 2007-07-22  Ben Pfaff  <blp@gnu.org>
1005
1006         New module: popcount.
1007         * MODULES.html.sh: Add popcount.
1008         * modules/popcount: New file.
1009         * modules/popcount-tests: New file.
1010         * tests/test-popcount.c: New file.
1011         * lib/popcount.h: New file.
1012         * m4/popcount.m4: New file.
1013
1014 2007-07-22  Paul Eggert  <eggert@cs.ucla.edu>
1015
1016         * build-aux/announce-gen: Update to GPLv3.
1017
1018         * build-aux/config.guess: Update from config.
1019
1020 2007-07-21  Bruno Haible  <bruno@clisp.org>
1021
1022         * lib/error.c (_) [ENABLE_NLS]: Define to gettext.
1023         * lib/verror.c (_) [ENABLE_NLS]: Likewise.
1024
1025 2007-07-20  Jim Meyering  <jim@meyering.net>
1026
1027         * check-module: Diagnose a self-dependency.
1028
1029 2007-07-19  Bruno Haible  <bruno@clisp.org>
1030
1031         * gnulib-tool (func_import): Don't abort if pobase or po_domain is
1032         empty.
1033         Reported by Eric Blake.
1034
1035 2007-07-18  Bruno Haible  <bruno@clisp.org>
1036
1037         * gnulib-tool: New options --po-base, --po-domain.
1038         (func_usage): Document them.
1039         (pobase, po_domain): New variables.
1040         (func_emit_lib_Makefile_am): Augment AM_CPPFLAGS, defining
1041         DEFAULT_TEXT_DOMAIN.
1042         (func_emit_po_Makevars, func_emit_po_POTFILES_in): New functions.
1043         (func_import): Consider pobase and po_domain. Create a po/ directory.
1044         (func_create_testdir): Set pobase and po_domain to empty.
1045         * build-aux/po/Makefile.in.in: New file, from GNU gettext 0.16.1.
1046         * build-aux/po/remove-potcdate.sin: New file, from GNU gettext 0.16.1.
1047
1048 2007-07-18  Bruno Haible  <bruno@clisp.org>
1049
1050         * gnulib-tool (func_get_automake_snippet): Synthesize also an
1051         EXTRA_DIST augmentation for files in build-aux/.
1052
1053 2007-07-16  Bruno Haible  <bruno@clisp.org>
1054
1055         * modules/lseek (License): Use the synonymous term "LGPLv2+".
1056         * modules/getdelim (License): Likewise.
1057
1058 2007-07-16  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
1059
1060         * modules/arpa_inet (License): Use the synonymous term LGPLv2+.
1061         * modules/d-type (License): Likewise.
1062         * modules/extensions (License): Likewise.
1063         * modules/fnmatch (License): Likewise.
1064         * modules/fseeko (License): Likewise.
1065         * modules/getaddrinfo (License): Likewise.
1066         * modules/getline (License): Likewise.
1067         * modules/getlogin_r (License): Likewise.
1068         * modules/getpass (License): Likewise.
1069         * modules/gettimeofday (License): Likewise.
1070         * modules/glob (License): Likewise.
1071         * modules/inet_ntop (License): Likewise.
1072         * modules/malloc (License): Likewise.
1073         * modules/malloca (License): Likewise.
1074         * modules/memmem (License): Likewise.
1075         * modules/mempcpy (License): Likewise.
1076         * modules/memset (License): Likewise.
1077         * modules/minmax (License): Likewise.
1078         * modules/mktime (License): Likewise.
1079         * modules/netinet_in (License): Likewise.
1080         * modules/pathmax (License): Likewise.
1081         * modules/poll (License): Likewise.
1082         * modules/regex (License): Likewise.
1083         * modules/snprintf (License): Likewise.
1084         * modules/stdbool (License): Likewise.
1085         * modules/stdint (License): Likewise.
1086         * modules/stdio (License): Likewise.
1087         * modules/strcase (License): Likewise.
1088         * modules/strcasestr (License): Likewise.
1089         * modules/strdup (License): Likewise.
1090         * modules/string (License): Likewise.
1091         * modules/strndup (License): Likewise.
1092         * modules/strnlen (License): Likewise.
1093         * modules/strpbrk (License): Likewise.
1094         * modules/strptime (License): Likewise.
1095         * modules/strsep (License): Likewise.
1096         * modules/sys_select (License): Likewise.
1097         * modules/sys_socket (License): Likewise.
1098         * modules/sys_stat (License): Likewise.
1099         * modules/sys_time (License): Likewise.
1100         * modules/time (License): Likewise.
1101         * modules/time_r (License): Likewise.
1102         * modules/timegm (License): Likewise.
1103         * modules/unistd (License): Likewise.
1104         * modules/vsnprintf (License): Likewise.
1105         * modules/wctype (License): Likewise.
1106
1107 2007-07-16  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
1108
1109         * modules/argz (License): LGPLv2+.
1110
1111 2007-07-15  Karl Berry  <karl@gnu.org>
1112
1113         * doc/gnulib.texi: revise node structure per new fdl.texi.
1114
1115 2007-07-14  Bruno Haible  <bruno@clisp.org>
1116
1117         * lib/uniname/gen-uninames.lisp (main): Emit a "do not edit" line to
1118         the output file.
1119         * lib/uniname/uninames.h: Regenerated.
1120
1121 2007-07-14  Karl Berry  <karl@gnu.org>
1122
1123         * doc/*gpl*.texi, doc/fdl.texi: new versions, consistently
1124         omitting sectioning and index commands.
1125
1126 2007-07-13  Bruno Haible  <bruno@clisp.org>
1127
1128         New gnulib-tool option --more-symlinks.
1129         * gnulib-tool (func_usage): Document --more-symlinks.
1130         (do_copyrights): New variable.
1131         Recognize option --more-symlinks.
1132         (func_import): Don't add a copyright notice transform to
1133         sed_transform_lib_file if do_copyrights is empty.
1134
1135 2007-07-13  Bruno Haible  <bruno@clisp.org>
1136
1137         * lib/vasnprintf.c (decimal_point_char): Define also if
1138         (NEED_PRINTF_LONG_DOUBLE || NEED_PRINTF_INFINITE_DOUBLE)
1139         && !NEED_PRINTF_DIRECTIVE_A.
1140         Reported by Clemens Koller <clemens.koller@anagramm.de> via
1141         Gary V. Vaughan <gary@gnu.org>.
1142
1143 2007-07-13  Paul Eggert  <eggert@cs.ucla.edu>
1144
1145         * lib/inttypes_.h: Undo previous change, since it was fixed
1146         in a different way in the 2007-07-02 fix to m4/inttypes.m4.
1147
1148 2007-07-13  Bruno Haible  <bruno@clisp.org>
1149
1150         * lib/stdint_.h: Fix typo: _GL_JUST_INCLUDE_SYSTEM_INTTYPES_H was
1151         misspelled as _GL_JUST_INCLUDE_ABSOLUTE_INTTYPES_H.
1152
1153 2007-07-13  Jim Meyering  <jim@meyering.net>
1154
1155         df: Don't fail for Tru64's "file-on-file mount".
1156         * m4/fsusage.m4 (gl_FSUSAGE): Reject Tru64's buggy statvfs,
1157         so we fall through and use statfs instead.  Details here:
1158         <http://thread.gmane.org/gmane.comp.gnu.coreutils.bugs/10878>
1159         Reported by Albert Chin.
1160
1161 2007-07-13  Bruno Haible  <bruno@clisp.org>
1162
1163         * modules/alloca-opt (License): Use the synonymous term "LGPLv2+".
1164         * modules/configmake (License): Likewise.
1165         * modules/gettext (License): Likewise.
1166         * modules/gettext-h (License): Likewise.
1167         * modules/include_next (License): Likewise.
1168         * modules/link-warning (License): Likewise.
1169         * modules/localcharset (License): Likewise.
1170         * modules/localename (License): Likewise.
1171         * modules/lock (License): Likewise.
1172         * modules/relocatable-lib-lgpl (License): Likewise.
1173         * modules/size_max (License): Likewise.
1174         * modules/vasnprintf (License): Likewise.
1175         * modules/wchar (License): Likewise.
1176         * modules/xsize (License): Likewise.
1177
1178 2007-07-13  Bruno Haible  <bruno@clisp.org>
1179
1180         * gnulib-tool (func_import): Treat LGPLv2 as synonymous to LGPL.
1181         (func_create_testdir): Handle copying terms "GPLv2+" and "LGPLv2+".
1182
1183 2007-07-12  Bruno Haible  <bruno@clisp.org>
1184
1185         * doc/gnulib-intro.texi (Copyright): Clarify the license abbreviations
1186         in the modules files.
1187
1188 2007-07-11  Karl Berry  <karl@gnu.org>
1189
1190         * MODULES.html.sh (func_module): use
1191          sed -e '\|^'"${includefile}"'$|d'
1192          instead of /.../d, to avoid errors on $includefile's containing /.
1193
1194 2007-07-10  Sergey Poznyakoff  <gray@gnu.org.ua>
1195
1196         * gnulib-tool (func_import): Avoid duplication of --avoid
1197         statements
1198         (func_dest_tmpfilename,func_create_testdir): Translate `-' in file
1199         names to `_' in variable names.
1200
1201 2007-07-10  Eric Blake  <ebb9@byu.net>
1202
1203         * lib/version-etc.c (version_etc_va): Default to GPLv3+.
1204         * NEWS: Document this change.
1205
1206 2007-07-08  Bruno Haible  <bruno@clisp.org>
1207
1208         Update to Unicode 5.0.
1209         * lib/uniwidth/width.c (nonspacing_table_data): Add U+00AD,
1210         U+0350..U+035F, U+05A2, U+05BA, U+05C5, U+05C7, U+0600..U+0603,
1211         U+0610..U+0615, U+0656..U+065E, U+07EB..U+07F3, U+0A01, U+0AE2..U+0AE3,
1212         U+0CBC. Remove U+0CBF, U+0CC6. Add U+0CE2..U+0CE3, U+135F,
1213         U+17B4..U+17B5, U+17DD. Remove U+180E. Add U+1920..U+1922,
1214         U+1927..U+192B, U+1932, U+1939..U+193B, U+1A17..U+1A18, U+1B00..U+1B03,
1215         U+1B34, U+1B36..U+1B3A, U+1B3C, U+1B42, U+1B6B..U+1B73, U+1DC0..U+1DCA,
1216         U+1DFE..U+1DFF, U+20EB..U+20EF, U+A802, U+A806, U+A80B, U+A825..U+A826,
1217         U+10A01..U+10A03, U+10A05..U+10A06, U+10A0C..U+10A0F, U+10A38..U+10A3A,
1218         U+10A3F, U+1D242..U+1D244.
1219         (nonspacing_table_ind): Update.
1220         (uc_width): Assign width 0 to U+E0100..U+E01EF. Assign width 1 to
1221         U+4DC0..U+4DFF. Assign width 2 to U+2329..U+232A, U+FE10..U+FE1F.
1222
1223 2007-07-08  Bruno Haible  <bruno@clisp.org>
1224
1225         Update to Unicode 5.0.
1226         * lib/uniname/gen-uninames.lisp (main): Add the range 0x12xxx to the
1227         code transform. Extend the name index field of unicode_name_to_code and
1228         unicode_code_to_name from 16 to 24 bits.
1229         * lib/uniname/uniname.c (unicode_character_name,
1230         unicode_name_character): Add the range 0x12xxx to the code transform.
1231         * lib/uniname/uninames.h: Regenerated.
1232         * tests/uniname/UnicodeDataNames.txt: Update to Unicode 5.0.
1233
1234 2007-07-07  Bruno Haible  <bruno@clisp.org>
1235
1236         * modules/wcwidth-tests: New file.
1237         * tests/test-wcwidth.c: New file.
1238
1239         Work around MacOS X wcwidth() bug.
1240         * m4/wcwidth.m4 (gl_FUNC_WCWIDTH): Test against MacOS X 10.3 bug.
1241         * lib/wcwidth.c: Include localcharset.h, streq.h, uniwidth.h.
1242         (rpl_wcwidth): Special-case the UTF-8 locales. Fall back to the
1243         original wcwidth in non-UTF-8 locales.
1244         * modules/wcwidth (Depends-on): Add localcharset, streq,
1245         uniwidth/width.
1246         * doc/functions/wcwidth.texi: Update.
1247
1248 2007-07-07  Bruno Haible  <bruno@clisp.org>
1249
1250         * lib/wchar_.h: Include the GL_LINK_WARNING macro.
1251         (wcwidth): New declaration.
1252         * m4/wchar.m4 (gl_WCHAR_MODULE_INDICATOR, gl_WCHAR_H_DEFAULTS): New
1253         macros.
1254         (gl_WCHAR_H): Require gl_WCHAR_H_DEFAULTS. Don't set WCHAR_H to empty
1255         here. Prepare for creating <wchar.h> unconditionally.
1256         * modules/wchar (Depends-on): Add link-warning.
1257         (Makefile.am): Substitute also GNULIB_WCWIDTH, HAVE_DECL_WCWIDTH,
1258         REPLACE_WCWIDTH, and GL_LINK_WARNING.
1259         * lib/wcwidth.h: Remove file.
1260         * m4/wcwidth.m4 (gl_FUNC_WCWIDTH): Require gl_WCHAR_H_DEFAULTS. Set
1261         HAVE_DECL_WCWIDTH, REPLACE_WCWIDTH, WCHAR_H.
1262         * modules/wcwidth (Files): Remove lib/wcwidth.h.
1263         (configure.ac): Invoke gl_WCHAR_MODULE_INDICATOR.
1264         (Include): Replace wcwidth.h with <wchar.h>.
1265         * lib/wcwidth.c: Include <wchar.h> instead of wcwidth.h.
1266         * lib/mbchar.h: Don't include wcwidth.h.
1267         * lib/mbswidth.c: Likewise.
1268         * NEWS: Mention the change.
1269
1270 2007-07-07  Bruno Haible  <bruno@clisp.org>
1271
1272         * lib/wcwidth.c: New file, extracted from lib/wcwidth.h.
1273         * lib/wcwidth.h: Don't include wctype.h. Replace inline function
1274         definition with an external declaration.
1275         * m4/wcwidth.m4 (gl_FUNC_WCWIDTH): Use wcwidth.c when wcwidth is not
1276         defined as a function. Remove AC_C_INLINE requirement.
1277         * modules/wcwidth (Files): Add lib/wcwidth.c.
1278         (Makefile.am): Remove redundant statement.
1279
1280 2007-07-07  Bruno Haible  <bruno@clisp.org>
1281
1282         * MODULES.html.sh (Unicode string functions): Add the new modules.
1283
1284         * tests/uniwidth/test-u32-strwidth.c: New file.
1285         * modules/uniwidth/u32-strwidth-tests: New file.
1286
1287         * lib/uniwidth/u32-strwidth.c: New file.
1288         * modules/uniwidth/u32-strwidth: New file.
1289
1290         * tests/uniwidth/test-u16-strwidth.c: New file.
1291         * modules/uniwidth/u16-strwidth-tests: New file.
1292
1293         * lib/uniwidth/u16-strwidth.c: New file.
1294         * modules/uniwidth/u16-strwidth: New file.
1295
1296         * tests/uniwidth/test-u8-strwidth.c: New file.
1297         * modules/uniwidth/u8-strwidth-tests: New file.
1298
1299         * lib/uniwidth/u8-strwidth.c: New file.
1300         * modules/uniwidth/u8-strwidth: New file.
1301
1302         * tests/uniwidth/test-u32-width.c: New file.
1303         * modules/uniwidth/u32-width-tests: New file.
1304
1305         * lib/uniwidth/u32-width.c: New file.
1306         * modules/uniwidth/u32-width: New file.
1307
1308         * tests/uniwidth/test-u16-width.c: New file.
1309         * modules/uniwidth/u16-width-tests: New file.
1310
1311         * lib/uniwidth/u16-width.c: New file.
1312         * modules/uniwidth/u16-width: New file.
1313
1314         * tests/uniwidth/test-u8-width.c: New file.
1315         * modules/uniwidth/u8-width-tests: New file.
1316
1317         * lib/uniwidth/u8-width.c: New file.
1318         * modules/uniwidth/u8-width: New file.
1319
1320         * tests/uniwidth/test-uc_width.c: New file.
1321         * modules/uniwidth/width-tests: New file.
1322
1323         * lib/uniwidth/width.c: New file, from GNU libiconv.
1324         * lib/uniwidth/cjk.h: New file, from GNU libiconv.
1325         * modules/uniwidth/width: New file.
1326
1327         * lib/uniwidth.h: New file, from GNU libiconv.
1328         * modules/uniwidth/base: New file.
1329
1330 2007-07-07  Bruno Haible  <bruno@clisp.org>
1331
1332         * lib/uniname.h: New file, from GNU gettext.
1333         * lib/uniname/gen-uninames.lisp: New file, from GNU gettext.
1334         * lib/uniname/uninames.h: New file, from GNU gettext.
1335         * lib/uniname/uniname.c: New file, from GNU gettext.
1336         * tests/uniname/test-uninames.sh: New file.
1337         * tests/uniname/test-uninames.c: New file, from GNU gettext.
1338         * tests/uniname/UnicodeDataNames.txt: New file, from GNU gettext.
1339         * modules/uniname/base: New file.
1340         * modules/uniname/uniname: New file.
1341         * modules/uniname/uniname-tests: New file.
1342         * MODULES.html.sh (Unicode string functions): Add the new modules.
1343
1344 2007-07-06  Bruno Haible  <bruno@clisp.org>
1345
1346         * doc/Makefile (TEXI2HTML): Specify a --reference-limit.
1347
1348 2007-07-06  Bruno Haible  <bruno@clisp.org>
1349
1350         * lib/sys_time_.h: Use a recursion-safe inclusion guard rather than
1351         a split double-inclusion guard. Needed for cygwin, where <sys/time.h>
1352         includes <cygwin/sys_time.h> which includes <sys/select.h> which
1353         include <sys/time.h>.
1354         Reported by Eric Blake.
1355
1356 2007-07-06  Eric Blake  <ebb9@byu.net>
1357
1358         Fix testing canonicalize on cygwin.
1359         * modules/canonicalize-lgpl-tests (test_canonicalize_lgpl_LDADD):
1360         Revert patch from 2007-06-19.
1361         * tests/test-canonicalize-lgpl.c (main): Instead, skip test when
1362         canonicalize module is also in use.
1363         * tests/test-canonicalize.c: New file.
1364         * tests/test-canonicalize.sh: Likewise.
1365         * modules/canonicalize-tests: Likewise.
1366
1367 2007-07-06  Jim Meyering  <jim@meyering.net>
1368
1369         * lib/getugroups.c (getugroups): Detect getgrent failure.
1370         Adjust comment to reflect reality: this function may return -1.
1371
1372 2007-07-05  Sergey Poznyakoff  <gray@gnu.org.ua>
1373
1374         * build-aux/bootstrap (TP_URL,get_translations): Update to use
1375         the new TP address.
1376         (usage): Fix typo
1377         (gnulib_mk): New variable.
1378
1379 2007-07-05  Jim Meyering  <jim@meyering.net>
1380
1381         Don't let endgrent clobber errno, no matter how improbable.
1382         * lib/getugroups.c (getugroups): Save and restore errno around
1383         endgrent call.
1384
1385         Close the group DB even when failing with 2^31 or more members.
1386         * lib/getugroups.c (getugroups): Don't return without calling endgrent.
1387
1388 2007-07-04  Jim Meyering  <jim@meyering.net>
1389
1390         * lib/getugroups.h: New file.
1391         * lib/getugroups.c: Include "getugroups.h".
1392         Remove uses of "register" keyword.
1393         Move local variable, "cp", down into scope where used.
1394         Give "username" parameter the "const" attribute.
1395         * modules/getugroups (Files): Add lib/getugroups.h
1396
1397 2007-07-04  Karl Berry  <karl@gnu.org>
1398
1399         * MODULES.html.sh (func_all_modules): Complete rename of
1400         gpl/lgpl to gpl-2.0 and lgpl-2.1, and add gpl-3.0.
1401
1402 2007-07-02  Bruno Haible  <bruno@clisp.org>
1403
1404         * m4/inttypes.m4 (gl_INTTYPES_H): Define __STDC_LIMIT_MACROS in C++
1405         mode, when inttypes.h comes from gnulib.
1406         Reported by Joel E. Denny <jdenny@ces.clemson.edu>.
1407
1408 2007-07-02  Simon Josefsson  <simon@josefsson.org>
1409
1410         * NEWS: Mention lgpl module name change.
1411
1412         * modules/lgpl-2.1: Renamed from lgpl.
1413
1414         * NEWS: Mention gpl module name change.
1415
1416         * modules/gpl-3.0: New file, based on gpl-2.0.
1417
1418         * modules/gpl-2.0: Renamed from gpl.
1419
1420         * modules/gpl: Fix filename, doc/gpl.texi is now found at
1421         doc/gpl-2.0.texi.
1422
1423 2007-07-02  Paul Eggert  <eggert@cs.ucla.edu>
1424
1425         * lib/inttypes_.h [defined __cplusplus&&!defined __STDC_LIMIT_MACROS]:
1426         #define __STDC_LIMIT_MACROS temporarily while including
1427         <stdint.h>, so that __STDC_LIMIT_MACROS is defined.
1428         Problem reported by Joel E. Denny in
1429         <http://lists.gnu.org/archive/html/bug-gnulib/2007-07/msg00008.html>.
1430
1431 2007-07-01  Bruno Haible  <bruno@clisp.org>
1432
1433         * lib/unistdio.h: New file.
1434         * lib/unistdio/u-asnprintf.h: New file.
1435         * lib/unistdio/u-asprintf.h: New file.
1436         * lib/unistdio/u-printf-args.c: New file.
1437         * lib/unistdio/u-printf-args.h: New file.
1438         * lib/unistdio/u-printf-parse.h: New file.
1439         * lib/unistdio/u-snprintf.h: New file.
1440         * lib/unistdio/u-sprintf.h: New file.
1441         * lib/unistdio/u-vasprintf.h: New file.
1442         * lib/unistdio/u-vsnprintf.h: New file.
1443         * lib/unistdio/u-vsprintf.h: New file.
1444         * lib/unistdio/ulc-asnprintf.c: New file.
1445         * lib/unistdio/ulc-asprintf.c: New file.
1446         * lib/unistdio/ulc-fprintf.c: New file, based on lib/fprintf.c.
1447         * lib/unistdio/ulc-printf-parse.c: New file.
1448         * lib/unistdio/ulc-snprintf.c: New file.
1449         * lib/unistdio/ulc-sprintf.c: New file.
1450         * lib/unistdio/ulc-vasnprintf.c: New file.
1451         * lib/unistdio/ulc-vasprintf.c: New file.
1452         * lib/unistdio/ulc-vfprintf.c: New file, based on lib/vfprintf.c.
1453         * lib/unistdio/ulc-vsnprintf.c: New file.
1454         * lib/unistdio/ulc-vsprintf.c: New file.
1455         * lib/unistdio/u8-asnprintf.c: New file.
1456         * lib/unistdio/u8-asprintf.c: New file.
1457         * lib/unistdio/u8-printf-parse.c: New file.
1458         * lib/unistdio/u8-snprintf.c: New file.
1459         * lib/unistdio/u8-sprintf.c: New file.
1460         * lib/unistdio/u8-vasnprintf.c: New file.
1461         * lib/unistdio/u8-vasprintf.c: New file.
1462         * lib/unistdio/u8-vsnprintf.c: New file.
1463         * lib/unistdio/u8-vsprintf.c: New file.
1464         * lib/unistdio/u8-u8-asnprintf.c: New file.
1465         * lib/unistdio/u8-u8-asprintf.c: New file.
1466         * lib/unistdio/u8-u8-snprintf.c: New file.
1467         * lib/unistdio/u8-u8-sprintf.c: New file.
1468         * lib/unistdio/u8-u8-vasnprintf.c: New file.
1469         * lib/unistdio/u8-u8-vasprintf.c: New file.
1470         * lib/unistdio/u8-u8-vsnprintf.c: New file.
1471         * lib/unistdio/u8-u8-vsprintf.c: New file.
1472         * lib/unistdio/u16-asnprintf.c: New file.
1473         * lib/unistdio/u16-asprintf.c: New file.
1474         * lib/unistdio/u16-printf-parse.c: New file.
1475         * lib/unistdio/u16-snprintf.c: New file.
1476         * lib/unistdio/u16-sprintf.c: New file.
1477         * lib/unistdio/u16-vasnprintf.c: New file.
1478         * lib/unistdio/u16-vasprintf.c: New file.
1479         * lib/unistdio/u16-vsnprintf.c: New file.
1480         * lib/unistdio/u16-vsprintf.c: New file.
1481         * lib/unistdio/u16-u16-asnprintf.c: New file.
1482         * lib/unistdio/u16-u16-asprintf.c: New file.
1483         * lib/unistdio/u16-u16-snprintf.c: New file.
1484         * lib/unistdio/u16-u16-sprintf.c: New file.
1485         * lib/unistdio/u16-u16-vasnprintf.c: New file.
1486         * lib/unistdio/u16-u16-vasprintf.c: New file.
1487         * lib/unistdio/u16-u16-vsnprintf.c: New file.
1488         * lib/unistdio/u16-u16-vsprintf.c: New file.
1489         * lib/unistdio/u32-asnprintf.c: New file.
1490         * lib/unistdio/u32-asprintf.c: New file.
1491         * lib/unistdio/u32-printf-parse.c: New file.
1492         * lib/unistdio/u32-snprintf.c: New file.
1493         * lib/unistdio/u32-sprintf.c: New file.
1494         * lib/unistdio/u32-vasnprintf.c: New file.
1495         * lib/unistdio/u32-vasprintf.c: New file.
1496         * lib/unistdio/u32-vsnprintf.c: New file.
1497         * lib/unistdio/u32-vsprintf.c: New file.
1498         * lib/unistdio/u32-u32-asnprintf.c: New file.
1499         * lib/unistdio/u32-u32-asprintf.c: New file.
1500         * lib/unistdio/u32-u32-snprintf.c: New file.
1501         * lib/unistdio/u32-u32-sprintf.c: New file.
1502         * lib/unistdio/u32-u32-vasnprintf.c: New file.
1503         * lib/unistdio/u32-u32-vasprintf.c: New file.
1504         * lib/unistdio/u32-u32-vsnprintf.c: New file.
1505         * lib/unistdio/u32-u32-vsprintf.c: New file.
1506         * tests/unistdio/test-ulc-asnprintf1.c: New file.
1507         * tests/unistdio/test-ulc-asnprintf1.h: New file.
1508         * tests/unistdio/test-ulc-printf1.h: New file.
1509         * tests/unistdio/test-ulc-vasnprintf1.c: New file.
1510         * tests/unistdio/test-ulc-vasnprintf2.c: New file.
1511         * tests/unistdio/test-ulc-vasnprintf2.sh: New file.
1512         * tests/unistdio/test-ulc-vasnprintf3.c: New file.
1513         * tests/unistdio/test-ulc-vasnprintf3.sh: New file.
1514         * tests/unistdio/test-ulc-vasprintf1.c: New file.
1515         * tests/unistdio/test-ulc-vsnprintf1.c: New file.
1516         * tests/unistdio/test-ulc-vsprintf1.c: New file.
1517         * tests/unistdio/test-u8-asnprintf1.c: New file.
1518         * tests/unistdio/test-u8-asnprintf1.h: New file.
1519         * tests/unistdio/test-u8-printf1.h: New file.
1520         * tests/unistdio/test-u8-vasnprintf1.c: New file.
1521         * tests/unistdio/test-u8-vasnprintf2.c: New file.
1522         * tests/unistdio/test-u8-vasnprintf2.sh: New file.
1523         * tests/unistdio/test-u8-vasnprintf3.c: New file.
1524         * tests/unistdio/test-u8-vasnprintf3.sh: New file.
1525         * tests/unistdio/test-u8-vasprintf1.c: New file.
1526         * tests/unistdio/test-u8-vsnprintf1.c: New file.
1527         * tests/unistdio/test-u8-vsprintf1.c: New file.
1528         * tests/unistdio/test-u16-asnprintf1.c: New file.
1529         * tests/unistdio/test-u16-asnprintf1.h: New file.
1530         * tests/unistdio/test-u16-printf1.h: New file.
1531         * tests/unistdio/test-u16-vasnprintf1.c: New file.
1532         * tests/unistdio/test-u16-vasnprintf2.c: New file.
1533         * tests/unistdio/test-u16-vasnprintf2.sh: New file.
1534         * tests/unistdio/test-u16-vasnprintf3.c: New file.
1535         * tests/unistdio/test-u16-vasnprintf3.sh: New file.
1536         * tests/unistdio/test-u16-vasprintf1.c: New file.
1537         * tests/unistdio/test-u16-vsnprintf1.c: New file.
1538         * tests/unistdio/test-u16-vsprintf1.c: New file.
1539         * tests/unistdio/test-u32-asnprintf1.c: New file.
1540         * tests/unistdio/test-u32-asnprintf1.h: New file.
1541         * tests/unistdio/test-u32-printf1.h: New file.
1542         * tests/unistdio/test-u32-vasnprintf1.c: New file.
1543         * tests/unistdio/test-u32-vasnprintf2.c: New file.
1544         * tests/unistdio/test-u32-vasnprintf2.sh: New file.
1545         * tests/unistdio/test-u32-vasnprintf3.c: New file.
1546         * tests/unistdio/test-u32-vasnprintf3.sh: New file.
1547         * tests/unistdio/test-u32-vasprintf1.c: New file.
1548         * tests/unistdio/test-u32-vsnprintf1.c: New file.
1549         * tests/unistdio/test-u32-vsprintf1.c: New file.
1550         * modules/unistdio/base: New file.
1551         * modules/unistdio/u-printf-args: New file.
1552         * modules/unistdio/ulc-asnprintf: New file.
1553         * modules/unistdio/ulc-asprintf: New file.
1554         * modules/unistdio/ulc-fprintf: New file.
1555         * modules/unistdio/ulc-printf-parse: New file.
1556         * modules/unistdio/ulc-snprintf: New file.
1557         * modules/unistdio/ulc-sprintf: New file.
1558         * modules/unistdio/ulc-vasnprintf: New file.
1559         * modules/unistdio/ulc-vasprintf: New file.
1560         * modules/unistdio/ulc-vfprintf: New file.
1561         * modules/unistdio/ulc-vsnprintf: New file.
1562         * modules/unistdio/ulc-vsprintf: New file.
1563         * modules/unistdio/u8-asnprintf: New file.
1564         * modules/unistdio/u8-asprintf: New file.
1565         * modules/unistdio/u8-printf-parse: New file.
1566         * modules/unistdio/u8-snprintf: New file.
1567         * modules/unistdio/u8-sprintf: New file.
1568         * modules/unistdio/u8-vasnprintf: New file.
1569         * modules/unistdio/u8-vasprintf: New file.
1570         * modules/unistdio/u8-vsnprintf: New file.
1571         * modules/unistdio/u8-vsprintf: New file.
1572         * modules/unistdio/u8-u8-asnprintf: New file.
1573         * modules/unistdio/u8-u8-asprintf: New file.
1574         * modules/unistdio/u8-u8-snprintf: New file.
1575         * modules/unistdio/u8-u8-sprintf: New file.
1576         * modules/unistdio/u8-u8-vasnprintf: New file.
1577         * modules/unistdio/u8-u8-vasprintf: New file.
1578         * modules/unistdio/u8-u8-vsnprintf: New file.
1579         * modules/unistdio/u8-u8-vsprintf: New file.
1580         * modules/unistdio/u16-asnprintf: New file.
1581         * modules/unistdio/u16-asprintf: New file.
1582         * modules/unistdio/u16-printf-parse: New file.
1583         * modules/unistdio/u16-snprintf: New file.
1584         * modules/unistdio/u16-sprintf: New file.
1585         * modules/unistdio/u16-vasnprintf: New file.
1586         * modules/unistdio/u16-vasprintf: New file.
1587         * modules/unistdio/u16-vsnprintf: New file.
1588         * modules/unistdio/u16-vsprintf: New file.
1589         * modules/unistdio/u16-u16-asnprintf: New file.
1590         * modules/unistdio/u16-u16-asprintf: New file.
1591         * modules/unistdio/u16-u16-snprintf: New file.
1592         * modules/unistdio/u16-u16-sprintf: New file.
1593         * modules/unistdio/u16-u16-vasnprintf: New file.
1594         * modules/unistdio/u16-u16-vasprintf: New file.
1595         * modules/unistdio/u16-u16-vsnprintf: New file.
1596         * modules/unistdio/u16-u16-vsprintf: New file.
1597         * modules/unistdio/u32-asnprintf: New file.
1598         * modules/unistdio/u32-asprintf: New file.
1599         * modules/unistdio/u32-printf-parse: New file.
1600         * modules/unistdio/u32-snprintf: New file.
1601         * modules/unistdio/u32-sprintf: New file.
1602         * modules/unistdio/u32-vasnprintf: New file.
1603         * modules/unistdio/u32-vasprintf: New file.
1604         * modules/unistdio/u32-vsnprintf: New file.
1605         * modules/unistdio/u32-vsprintf: New file.
1606         * modules/unistdio/u32-u32-asnprintf: New file.
1607         * modules/unistdio/u32-u32-asprintf: New file.
1608         * modules/unistdio/u32-u32-snprintf: New file.
1609         * modules/unistdio/u32-u32-sprintf: New file.
1610         * modules/unistdio/u32-u32-vasnprintf: New file.
1611         * modules/unistdio/u32-u32-vasprintf: New file.
1612         * modules/unistdio/u32-u32-vsnprintf: New file.
1613         * modules/unistdio/u32-u32-vsprintf: New file.
1614         * modules/unistdio/ulc-asnprintf-tests: New file.
1615         * modules/unistdio/ulc-vasnprintf-tests: New file.
1616         * modules/unistdio/ulc-vasprintf-tests: New file.
1617         * modules/unistdio/ulc-vsnprintf-tests: New file.
1618         * modules/unistdio/ulc-vsprintf-tests: New file.
1619         * modules/unistdio/u8-asnprintf-tests: New file.
1620         * modules/unistdio/u8-vasnprintf-tests: New file.
1621         * modules/unistdio/u8-vasprintf-tests: New file.
1622         * modules/unistdio/u8-vsnprintf-tests: New file.
1623         * modules/unistdio/u8-vsprintf-tests: New file.
1624         * modules/unistdio/u16-asnprintf-tests: New file.
1625         * modules/unistdio/u16-vasnprintf-tests: New file.
1626         * modules/unistdio/u16-vasprintf-tests: New file.
1627         * modules/unistdio/u16-vsnprintf-tests: New file.
1628         * modules/unistdio/u16-vsprintf-tests: New file.
1629         * modules/unistdio/u32-asnprintf-tests: New file.
1630         * modules/unistdio/u32-vasnprintf-tests: New file.
1631         * modules/unistdio/u32-vasprintf-tests: New file.
1632         * modules/unistdio/u32-vsnprintf-tests: New file.
1633         * modules/unistdio/u32-vsprintf-tests: New file.
1634         * MODULES.html.sh (Unicode string functions): Add the new modules.
1635
1636 2007-07-01  Bruno Haible  <bruno@clisp.org>
1637
1638         * lib/sprintf.c (sprintf): Limit the available length estimation,
1639         to avoid address wraparound.
1640         * lib/vsprintf.c (vsprintf): Likewise.
1641         * modules/sprintf-posix (Dependencies): Add stdint.
1642         * modules/vsprintf-posix (Dependencies): Likewise.
1643
1644 2007-07-01  Bruno Haible  <bruno@clisp.org>
1645
1646         * gnulib-tool (self_abspathname): Determine PATH_SEPARATOR and handle
1647         Windows PATH as well. Conservative double-quoting. Comments.
1648
1649 2007-07-01  Bruno Haible  <bruno@clisp.org>
1650             Eric Blake  <ebb9@byu.net>
1651             Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
1652
1653         * gnulib-tool (self_abspathname): Fix algorithm to cope with
1654         empty components in $PATH, denoting '.'.
1655
1656 2007-07-01  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
1657
1658         * gnulib-tool: Fix indentation.
1659         (func_create_megatestdir): Likewise.
1660         Report by Bruno Haible.
1661
1662 2007-06-30  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
1663
1664         Sync from Automake.
1665         * build-aux/gnupload: Fix shell portability issues with for loops.
1666         Report by Karl Berry.
1667
1668 2007-06-29  Simon Josefsson  <simon@josefsson.org>
1669
1670         * build-aux/maint.mk (POURL): Use translationproject.org.
1671
1672 2007-06-27  Simon Josefsson  <simon@josefsson.org>
1673             Bruno Haible  <bruno@clisp.org>
1674
1675         * m4/getaddrinfo.m4 (gl_GETADDRINFO): Require gl_HEADER_SYS_SOCKET
1676         before using HAVE_WS2TCPIP_H. Check for gai_strerror through an
1677         explicit link test, rather than AC_REPLACE_FUNCS - for mingw.
1678         (gl_PREREQ_GETADDRINFO): Require gl_HEADER_SYS_SOCKET before using
1679         HAVE_SYS_SOCKET_H and HAVE_WS2TCPIP_H.
1680
1681 2007-06-27  Bruno Haible  <bruno@clisp.org>
1682
1683         * build-aux/config.rpath: Upgrade to libtool-1.5.24.
1684         * build-aux/config.libpath: Upgrade to libtool-1.5.24.
1685
1686 2007-06-26  Karl Berry  <karl@gnu.org>
1687
1688         * MODULES.html.sh: remove xreadlink-with-size.
1689
1690 2007-06-23  Paul Eggert  <eggert@cs.ucla.edu>
1691
1692         * lib/time_.h: Port to Solaris 8 with Sun Studio 11, using a
1693         method that I hope also handles the double-include problem noted
1694         by Bruno Haible in
1695         <http://lists.gnu.org/archive/html/bug-gnulib/2007-05/msg00186.html>.
1696
1697 2007-06-23  Bruno Haible  <bruno@clisp.org>
1698
1699         * gnulib-tool (func_emit_lib_Makefile_am, func_emit_tests_Makefile_am):
1700         Don't let the 'mostlyclean' target fail if the last subdirectory could
1701         not be removed.
1702         Reported by Karl Berry.
1703
1704 2007-06-23  Bruno Haible  <bruno@clisp.org>
1705
1706         * gnulib-tool (echo): Add a speedier workaround for ksh.
1707         * tests/test-echo.sh: Likewise.
1708
1709 2007-06-23  Bruno Haible  <bruno@clisp.org>
1710
1711         * gnulib-tool (echo): Add workarounds also for bash versions < 2.04.
1712         * tests/test-echo.sh: Likewise.
1713
1714 2007-06-23  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
1715
1716         * gnulib-tool (IFS): Initialize early, so we don't set it to
1717         empty later.
1718         (self_abspathname): Rewrite algorithm to set it, reindent.
1719         (func_emit_lib_Makefile_am, func_emit_tests_Makefile_am)
1720         (func_create_megatestdir): Merge some sed scripts.
1721
1722 2007-06-23  Paul Eggert  <eggert@cs.ucla.edu>
1723
1724         * m4/include_next.m4 (gl_CHECK_NEXT_HEADERS): Check some typos
1725         exposed by Sun Studio 11 cc on Solaris 8.
1726
1727 2007-06-22  Bruno Haible  <bruno@clisp.org>
1728
1729         * gnulib-tool (echo): Ensure the echo primitive does not interpret
1730         backslashes.
1731         * tests/test-echo.sh: New file.
1732
1733 2007-06-22  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
1734
1735         * gnulib-tool (func_add_or_update, func_create_testdir): Do not
1736         simplify `sed_replace_build_aux' scripts, they are portable but
1737         echoing them with `echo' is not.
1738         Report and analysis by Fernando Ferreira <fernando.prog@netcabo.pt>.
1739
1740 2007-06-21  Karl Berry  <karl@gnu.org>
1741
1742         * config/srclist.txt: guess we can't handle the licenses via
1743         srclist at the moment.
1744
1745 2007-06-21  Paul Eggert  <eggert@cs.ucla.edu>
1746
1747         * MODULES.html.sh: Add include_next.
1748         * modules/include_next: New file.
1749
1750 2007-06-20  Paul Eggert  <eggert@cs.ucla.edu>
1751
1752         * m4/include_next.m4 (gl_INCLUDE_NEXT): Define and AC_SUBST
1753         INCLUDE_NEXT.
1754         (gl_CHECK_NEXT_HEADERS): New macro.
1755         * m4/fcntl_h.m4 (gl_FCNTL_H): use gl_CHECK_NEXT_HEADERS instead of
1756         the obsolescent gl_ABSOLUTE_HEADER.
1757         * m4/fchdir.m4 (gl_FUNC_FCHDIR): Likewise.
1758         * m4/float_h.m4 (gl_FLOAT_H): Likewise.
1759         * m4/iconv_h.m4 (gl_ICONV_H): Likewise.
1760         * m4/inttypes.m4 (gl_INTTYPES_H): Likewise.
1761         * m4/locale_h.m4 (gl_LOCALE_H): Likewise.
1762         * m4/math_h.m4 (gl_MATH_H): Likewise.
1763         * m4/netinet_in_h.m4 (gl_HEADER_NETINET_IN): Likewise.
1764         * m4/search_h.m4 (gl_SEARCH_H): Likewise.
1765         * m4/signal_h.m4 (gl_SIGNAL_H): Likewise.
1766         * m4/stdint.m4 (gl_STDINT_H): Likewise.
1767         * m4/stdio_h.m4 (gl_STDIO_H): Likewise.
1768         * m4/stdlib_h.m4 (gl_STDLIB_H): Likewise.
1769         * m4/string_h.m4 (gl_HEADER_STRING_H_BODY): Likewise.
1770         * m4/sys_select_h.m4 (gl_HEADER_SYS_SELECT): Likewise.
1771         * m4/sys_socket_h.m4 (gl_HEADER_SYS_SOCKET): Likewise.
1772         * m4/sys_stat_h.m4 (gl_HEADER_SYS_STAT_H): Likewise.
1773         * m4/sys_time_h.m4 (gl_HEADER_SYS_TIME_H_BODY): Likewise.
1774         * m4/sysexits.m4 (gl_SYSEXITS): Likewise.
1775         * m4/time_h.m4 (gl_HEADER_TIME_H_BODY): Likewise.
1776         * m4/unistd_h.m4 (gl_UNISTD_H): Likewise.
1777         * m4/wchar.m4 (gl_WCHAR_H): Likewise.
1778         * m4/wctype.m4 (gl_WCTYPE_H): Likewise.
1779         * m4/inttypes.m4 (gl_INTTYPES_H): Define
1780         _GL_JUST_INCLUDE_SYSTEM_INTTYPES_H to avoid the problem of unclean
1781         builds, since ABSOLUTE_INTTYPES_H is no longer being defined.
1782         * m4/stdint.m4 (gl_STDINT_H): Likewise, for
1783         _GL_JUST_INCLUDE_SYSTEM_STDINT_H.
1784         * lib/fcntl_.h: Use @INCLUDE_NEXT@ @NEXT_foo_H@
1785         rather than @HAVE_INCLUDE_NEXT@ and @ABSOLUTE_foo_H@.
1786         * lib/float_.h: Likewise.
1787         * lib/inttypes_.h: Likewise.
1788         * lib/math_.h: Likewise.
1789         * lib/search_.h: Likewise.
1790         * lib/signal_.h: Likewise.
1791         * lib/stdint_.h: Likewise.
1792         * lib/stdio_.h: Likewise.
1793         * lib/stdlib_.h: Likewise.
1794         * lib/string_.h: Likewise.
1795         * lib/sys_stat_.h: Likewise.
1796         * lib/sys_time_.h: Likewise.
1797         * lib/time_.h: Likewise.
1798         * lib/unistd_.h: Likewise.
1799         * lib/wchar_.h: Likewise.
1800         * lib/wctype_.h: Likewise.
1801         * lib/dirent_.h: Likewise.
1802         * lib/iconv_.h: Likewise.
1803         * lib/locale_.h: Likewise.
1804         * lib/netinet_in_.h: Likewise.
1805         * lib/sys_select_.h: Likewise.
1806         * lib/sys_socket_.h: Likewise.
1807         * lib/sysexits_.h: Likewise.
1808         * modules/fcntl (Depends-on): Depend on include_next, not
1809         absolute_header.
1810         (Makefile): Substitute INCLUDE_NEXT and NEXT_foo_H, not
1811         HAVE_INCLUDE_NEXT and ABSOLUTE_foo_H.
1812         * modules/fchdir: Likewise.
1813         * modules/float: Likewise.
1814         * modules/iconv_open: Likewise.
1815         * modules/inttypes: Likewise.
1816         * modules/locale: Likewise.
1817         * modules/math: Likewise.
1818         * modules/netinet_in: Likewise.
1819         * modules/search: Likewise.
1820         * modules/signal: Likewise.
1821         * modules/stdint: Likewise.
1822         * modules/stdio: Likewise.
1823         * modules/stdlib: Likewise.
1824         * modules/string: Likewise.
1825         * modules/sys_select: Likewise.
1826         * modules/sys_socket: Likewise.
1827         * modules/sys_stat: Likewise.
1828         * modules/sys_time: Likewise.
1829         * modules/sysexits: Likewise.
1830         * modules/time: Likewise.
1831         * modules/unistd: Likewise.
1832         * modules/wchar: Likewise.
1833         * modules/wctype: Likewise.
1834         * modules/sys_stat: Change maintainer to "all".
1835         * modules/unistd: Likewise.
1836
1837 2007-06-20  Karl Berry  <karl@gnu.org>
1838
1839         * config/srclist.txt: track www changes in license files.
1840
1841 2007-06-20  Sergey Poznyakoff  <gray@gnu.org.ua>
1842
1843         * build-aux/bootstrap: Remove stray dot.
1844         Make sure build_aux settings are honored when linking
1845         gnulib_extra_files.
1846
1847 2007-06-19  Eric Blake  <ebb9@byu.net>
1848
1849         * modules/canonicalize-lgpl-tests (test_canonicalize_lgpl_LDADD):
1850         Allow compilation on cygwin.
1851
1852 2007-06-19  Jim Meyering  <jim@meyering.net>
1853
1854         xreadlink-with-size: Remove module.  No longer used.
1855         Ex-callers now use xreadlink or mreadlink-with-size.
1856         * modules/xreadlink-with-size: Remove module.
1857         * lib/xreadlink-with-size.c: Remove file.
1858         * lib/xreadlink.h (xreadlink_with_size): Remove prototype.
1859         (xreadlink): Remove inaccurate comment.  The one in xreadlink.c,
1860         just before the function definition *is* accurate.
1861
1862         Eliminate one way canonicalize_filename_mode could exit.
1863         * lib/canonicalize.c (canonicalize_filename_mode):
1864         Use mreadlink_with_size, not xreadlink_with_size.
1865
1866 2007-06-18  Paul Eggert  <eggert@cs.ucla.edu>
1867
1868         Detect porting problems to FreeBSD/arm, which has time_t wider than
1869         long int.  Original problem reported for GNU diff by Xin Li in
1870         <http://lists.gnu.org/archive/html/bug-gnu-utils/2007-06/msg00091.html>.
1871         * modules/getdate (Depends-on): Add intprops, verify.
1872         * lib/getdate.y: Include intprops.h, verify.h.  Verify that time_t
1873         is an integer type no wider than long int.
1874
1875 2007-06-18  Jim Meyering  <jim@meyering.net>
1876
1877         New module: mreadlink-with-size.
1878         * MODULES.html.sh: Add mreadlink-with-size.
1879         * modules/mreadlink-with-size: New module
1880         * modules/canonicalize (Depends-on): Depend on mreadlink-with-size,
1881         not xreadlink-with-size.
1882         * lib/mreadlink-with-size.c, lib/mreadlink.h: New files.
1883
1884 2007-06-16  Bruno Haible  <bruno@clisp.org>
1885
1886         * m4/frexpl.m4 (gl_FUNC_FREXPL_WORKS): Catch the MacOS X 10.4 bug.
1887         * doc/functions/frexpl.texi: Document the MacOS X 10.4 bug.
1888         Reported by Gary V. Vaughan <gary@gnu.org>.
1889
1890 2007-06-15  Paul Eggert  <eggert@cs.ucla.edu>
1891
1892         Revamp lchown so that it lives in unistd.h where it belongs.
1893         * lib/lchown.h: Remove.
1894         * lib/dirchownmod.c: Don't include lib/lchown.h.
1895         * lib/fchownat.c: Likewise.
1896         * lib/openat.c: Likewise.
1897         * lib/lchown.c (REPLACE_CHOWN): Define to 0 if the system chown
1898         does not follow symlinks.
1899         (EOPNOTSUPP): Define if not defined.
1900         * lib/unistd_.h (chown): Do not replace if REPLADE_CHOWN
1901         is defined to 0.
1902         (lchown): New decl.
1903         * m4/lchown.m4 (gl_FUNC_LCHOWN): Require gl_UNISTD_H_DEFAULTS.
1904         Do not check for lchown decl.
1905         Set REPLACE_LCHOWN.
1906         * m4/unistd_h.m4 (gl_UNISTD_H_DEFAULTS): Set GNULIB_LCHOWN,
1907         REPLACE_LCHOWN.
1908         * modules/chown: Make it clear it follows symlinks.
1909         * modules/lchown: Make it clear it doesn't follow symlinks.
1910         (Files): Remove lib/lchown.h
1911         (Depends-on): Add unistd.
1912         (configure.ac): Add gl_UNISTD_MODULE_INDICATOR([lchown]).
1913         (Include): Include <unistd.h>, not "lchown.h".
1914         * modules/unistd (unistd.h): Substitude GNULIB_LCHOWN and
1915         REPLACE_LCHOWN.
1916
1917 2007-06-15  Jim Meyering  <jim@meyering.net>
1918
1919         Change license (GPL to LGPL) of fsusage and dependents.
1920         * modules/fsusage (License): Change to LGPL.
1921         * modules/full-read (License): Likewise.
1922         * modules/full-write (License): Likewise.
1923         * modules/safe-read (License): Likewise.
1924         * modules/safe-write (License): Likewise.
1925
1926 2007-06-14  Ben Pfaff  <blp@gnu.org>
1927
1928         Missing part of allocsa -> malloca transition.
1929         * modules/relocatable-prog-wrapper: gl_ALLOCSA should be
1930         gl_MALLOCA.
1931
1932 2007-06-12  Bruno Haible  <bruno@clisp.org>
1933
1934         * m4/isnanl.m4 (gl_FUNC_ISNANL_WORKS): Guess no when cross-compiling
1935         to ia64, x86_64, i386.
1936         Reported by Eric Blake.
1937
1938 2007-06-12  Bruno Haible  <bruno@clisp.org>
1939
1940         * m4/printf.m4 (gl_PRINTF_INFINITE_LONG_DOUBLE): Guess no also when
1941         cross-compiling to x86_64.
1942
1943 2007-06-12  Paul Eggert  <eggert@cs.ucla.edu>
1944
1945         * m4/absolute-header.m4 (gl_ABSOLUTE_HEADER): Fix POSIX sed portability
1946         glitch reported by Ralf Wildenhues in
1947         <http://lists.gnu.org/archive/html/bug-gnulib/2007-06/msg00114.html>.
1948
1949         * m4/regex.m4 (gl_REGEX): Catch a bug with [[:alnum:]_-] reported by
1950         Vin Shelton.
1951
1952 2007-06-11  Bruno Haible  <bruno@clisp.org>
1953
1954         * lib/printf-args.c (PRINTF_FETCHARGS) [ENABLE_UNISTDIO]: Fix NULL
1955         replacement string.
1956         Reported by Eric Blake.
1957
1958 2007-06-10  Bruno Haible  <bruno@clisp.org>
1959
1960         Prepare vasnprintf code for use with Unicode strings.
1961         * lib/printf-args.h (PRINTF_FETCHARGS): New macro.
1962         (arg_type) [ENABLE_UNISTDIO]: Define TYPE_U8_STRING, TYPE_U16_STRING,
1963         TYPE_U32_STRING.
1964         (argument) [ENABLE_UNISTDIO]: Add a_u8_string, a_u16_string,
1965         a_u32_string variants.
1966         (PRINTF_FETCHARGS): Renamed from printf_fetchargs.
1967         * lib/printf-args.c: Don't include config.h and the specification
1968         header if PRINTF_FETCHARGS is already defined.
1969         (PRINTF_FETCHARGS): Renamed from printf_fetchargs.
1970         (PRINTF_FETCHARGS) [ENABLE_UNISTDIO]: Add code for TYPE_U8_STRING,
1971         TYPE_U16_STRING, TYPE_U32_STRING.
1972         * lib/printf-parse.h [ENABLE_UNISTDIO] (u8_directive, u8_directives,
1973         u16_directive, u16_directives, u32_directive, u32_directives): New
1974         types.
1975         (ulc_printf_parse, u8_printf_parse, u16_printf_parse, u32_printf_parse):
1976         New declarations.
1977         * lib/printf-parse.c: Don't include config.h and the specification
1978         header if PRINTF_PARSE is already defined. Eliminate the set of
1979         parameters for WIDE_CHAR_VERSION; the user of this file must provide
1980         them now. Include c-ctype.h.
1981         (PRINTF_PARSE) [ENABLE_UNISTDIO]: Add code implementing the 'U'
1982         directive and CHAR_T_ONLY_ASCII.
1983         * lib/vasnprintf.c: Don't include config.h and the specification header
1984         if VASNPRINTF is already defined.
1985         (DCHAR_IS_TCHAR, DCHAR_CPY): New macros.
1986         (VASNPRINTF): Use PRINTF_FETCHARGS instead of printf_fetchargs. Use
1987         DCHAR_CPY. Handle the case that DCHAR_T and FCHAR_T are not the same
1988         type. Handle the case that TCHAR_T and FCHAR_T are not of the same
1989         size. Handle the case that DCHAR_T and TCHAR_T are not the same type,
1990         add a conversion from TCHAR_T[] to DCHAR_T[], and rework the padding
1991         code accordingly.
1992         (VASNPRINTF) [ENABLE_UNISTDIO]: Implement the 'U' directive. Enable
1993         pad_ourselves also in this case, with the 'c' and 's' directives, and
1994         with a different notion of "width".
1995         * m4/vasnprintf.m4 (gl_PREREQ_VASNPRINTF_WITH_EXTRAS): New macros.
1996
1997 2007-06-10  Bruno Haible  <bruno@clisp.org>
1998
1999         * modules/unistr/u32-mbsnlen: New file.
2000         * lib/unistr/u32-mbsnlen.c: New file.
2001
2002         * modules/unistr/u16-mbsnlen: New file.
2003         * lib/unistr/u16-mbsnlen.c: New file.
2004
2005         * modules/unistr/u8-mbsnlen: New file.
2006         * lib/unistr/u8-mbsnlen.c: New file.
2007
2008         * lib/unistr.h (u8_mbsnlen, u16_mbsnlen, u32_mbsnlen): New
2009         declarations.
2010
2011 2007-06-10  Bruno Haible  <bruno@clisp.org>
2012
2013         * lib/string_.h (mbsnlen): New declaration.
2014         * lib/mbsnlen.c: New file.
2015         * m4/mbsnlen.m4: New file.
2016         * modules/mbsnlen: New file.
2017         * m4/string_h.m4 (gl_HEADER_STRING_H_DEFAULTS): Set GNULIB_MBSNLEN.
2018         * modules/string (string.h): Substitute GNULIB_MBSNLEN.
2019         * MODULES.html.sh (Internationalization functions): Add mbsnlen.
2020
2021 2007-06-10  Bruno Haible  <bruno@clisp.org>
2022
2023         * lib/mbslen.c: Include <stdlib.h>, needed for MB_CUR_MAX.
2024
2025 2007-06-10  Bruno Haible  <bruno@clisp.org>
2026
2027         * lib/mbiter.h: Include <stddef.h>, needed for ptrdiff_t.
2028         * lib/mbuiter.h: Likewise.
2029
2030 2007-06-10  Bruno Haible  <bruno@clisp.org>
2031
2032         * m4/vasnprintf.m4 (gl_PREREQ_VASNPRINTF): Check for _snprintf
2033         declaration.
2034
2035 2007-06-10  Karl Berry  <karl@gnu.org>
2036
2037         * config/srclist.txt: remove gettext entries, Bruno prefers
2038         to update individually.
2039
2040 2007-06-10  Bruno Haible  <bruno@clisp.org>
2041
2042         * lib/vasnprintf.c (VASNPRINTF) [!USE_SNPRINTF]: Remove variable
2043         'maxlen'. Ensure only length + width bytes are allocated, not
2044         length + 1 + width.
2045
2046 2007-06-09  Bruno Haible  <bruno@clisp.org>
2047
2048         * lib/vasnprintf.c (FCHAR_T, DCHAR_T, TCHAR_T): New macros.
2049         (CHAR_T): Remove macro.
2050         (VASNPRINTF): Update.
2051
2052 2007-06-09  Bruno Haible  <bruno@clisp.org>
2053
2054         * MODULES.html.sh (Unicode string functions): Add the new modules.
2055
2056         * modules/uniconv/u32-conv-to-enc: New file.
2057         * lib/uniconv/u32-conv-to-enc.c: New file.
2058         * modules/uniconv/u32-conv-to-enc-tests: New file.
2059         * tests/uniconv/test-u32-conv-to-enc.c: New file.
2060
2061         * modules/uniconv/u16-conv-to-enc: New file.
2062         * lib/uniconv/u16-conv-to-enc.c: New file.
2063         * lib/uniconv/u-conv-to-enc.h: New file.
2064         * modules/uniconv/u16-conv-to-enc-tests: New file.
2065         * tests/uniconv/test-u16-conv-to-enc.c: New file.
2066
2067         * modules/uniconv/u8-conv-to-enc: New file.
2068         * lib/uniconv/u8-conv-to-enc.c: New file.
2069         * modules/uniconv/u8-conv-to-enc-tests: New file.
2070         * tests/uniconv/test-u8-conv-to-enc.c: New file.
2071
2072         * lib/uniconv.h (u8_conv_to_encoding, u16_conv_to_encoding,
2073         u32_conv_to_encoding): New declarations.
2074
2075 2007-06-09  Bruno Haible  <bruno@clisp.org>
2076
2077         * tests/uniconv/test-u32-strconv-to-enc.c (main): Remove unused code.
2078
2079 2007-06-09  Bruno Haible  <bruno@clisp.org>
2080
2081         Rename 'allocsa' -> 'malloca', 'freesa' -> 'freea'.
2082         * modules/malloca: Renamed from modules/allocsa, updated.
2083         * lib/malloca.h: Renamed from lib/allocsa.h, updated.
2084         * lib/malloca.c: Renamed from lib/allocsa.c, updated.
2085         * lib/malloca.valgrind: Renamed from lib/allocsa.valgrind, updated.
2086         * m4/malloca.m4: Renamed from m4/allocsa.m4, updated.
2087         * modules/malloca-tests: Renamed from modules/allocsa-tests, updated.
2088         * tests/test-malloca.c: Renamed from tests/test-allocsa.c, updated.
2089         * modules/xmalloca: Renamed from modules/xallocsa, updated.
2090         * lib/xmalloca.h: Renamed from lib/xallocsa.h, updated.
2091         * lib/xmalloca.c: Renamed from lib/xallocsa.c, updated.
2092         * modules/c-strcasestr (Depends-on): Update.
2093         * lib/c-strcasestr.c: Update.
2094         * modules/c-strstr (Depends-on): Update.
2095         * lib/c-strstr.c: Update.
2096         * modules/canonicalize-lgpl (Depends-on): Update.
2097         * lib/canonicalize-lgpl.c: Update.
2098         * modules/clean-temp (Depends-on): Update.
2099         * lib/clean-temp.c: Update.
2100         * modules/csharpcomp (Depends-on): Update.
2101         * lib/csharpcomp.c: Update.
2102         * modules/csharpexec (Depends-on): Update.
2103         * lib/csharpexec.c: Update.
2104         * modules/javacomp (Depends-on): Update.
2105         * lib/javacomp.c: Update.
2106         * modules/javaexec (Depends-on): Update.
2107         * lib/javaexec.c: Update.
2108         * modules/mbscasestr (Depends-on): Update.
2109         * lib/mbscasestr.c: Update.
2110         * modules/mbsstr (Depends-on): Update.
2111         * lib/mbsstr.c: Update.
2112         * modules/setenv (Depends-on): Update.
2113         * lib/setenv.c: Update.
2114         * modules/strcasestr (Depends-on): Update.
2115         * lib/strcasestr.c: Update.
2116         * modules/striconveha (Depends-on): Update.
2117         * lib/striconveha.c: Update.
2118         * modules/relocatable-prog-wrapper (Files): Update.
2119         * lib/relocwrapper.c: Update.
2120         * build-aux/install-reloc: Update.
2121         * MODULES.html.sh (Memory management functions <stdlib.h>): Update.
2122
2123 2007-06-08  Bruno Haible  <bruno@clisp.org>
2124
2125         Port to uClibc.
2126         * lib/fbufmode.c (fbufmode): Add special code for uClibc.
2127         * lib/fpurge.c (fpurge): Likewise.
2128         * lib/freading.c (freading): Likewise.
2129         * lib/fseeko.c (rpl_fseeko): Likewise.
2130         * lib/fseterr.c (fseterr): Likewise.
2131         * lib/fwriting.c (fwriting): Likewise.
2132         * tests/test-fflush.c (main): Avoid a failure on uClibc.
2133
2134 2007-06-08  Bruno Haible  <bruno@clisp.org>
2135
2136         * m4/intlmacosx.m4: New file, extracted from gettext.m4.
2137         * m4/gettext.m4 (gt_INTL_MACOSX): Remove macro, moved to intlmacosx.m4.
2138         * modules/gettext (Files): Add m4/intlmacosx.m4.
2139
2140 2007-06-07  Bruno Haible  <bruno@clisp.org>
2141
2142         * modules/localename-tests: New file.
2143         * tests/test-localename.c: New file.
2144
2145         New module 'localename'.
2146         * lib/localename.h: New file.
2147         * lib/localename.c: New file, from GNU gettext.
2148         * m4/localename.m4: New file.
2149         * modules/localename: New file.
2150
2151 2007-06-07  Bruno Haible  <bruno@clisp.org>
2152
2153         Work around the lack of <wchar.h> on some builds of uClibc.
2154         * doc/headers/wchar.texi: Update.
2155         * lib/wchar_.h: Include <wchar.h> only if it exists.
2156         * m4/wchar.m4 (gl_WCHAR_H): Check for <wchar.h>. Set HAVE_WCHAR_H.
2157         * m4/stdint.m4 (gl_STDINT_H): Check for <wchar.h>.
2158         (gl_STDINT_TYPE_PROPERTIES): Don't try to include <wchar.h> if it
2159         doesn't exist.
2160         * modules/wchar (wchar.h): Substitute HAVE_WCHAR_H.
2161         * modules/mbfile (Depends-on): Add wchar.
2162         * modules/mbiter (Depends-on): Likewise.
2163         * modules/mbuiter (Depends-on): Likewise.
2164         Reported by Simon Josefsson.
2165
2166 2007-06-06  Paul Eggert  <eggert@cs.ucla.edu>
2167
2168         Work around problem reported by Steven M. Schweda in
2169         <http://lists.gnu.org/archive/html/bug-tar/2007-06/msg00002.html>:
2170         Tru64 5.1B with the Compaq compiler environment installed declares
2171         an 'isblank' function but does not define it in the C library.
2172         * lib/fnmatch.c (isblank): Check for HAVE_ISBLANK, too.
2173         * lib/regex_internal.h (isblank): Likewise.
2174         * m4/fnmatch.m4 (_AC_LIBOBJ_FNMATCH): Check for isblank existence.
2175         * m4/regex.m4 (gl_PREREQ_REGEX): Likewise.
2176
2177 2007-06-05  Bruno Haible  <bruno@clisp.org>
2178
2179         Fix *printf so that it recognizes non-IEEE numbers on i386, x86_64,
2180         ia64.
2181         * modules/printf-safe: New file.
2182         * modules/fprintf-posix (Depends-on): Add printf-safe.
2183         * modules/printf-posix (Depends-on): Likewise.
2184         * modules/snprintf-posix (Depends-on): Likewise.
2185         * modules/sprintf-posix (Depends-on): Likewise.
2186         * modules/vasnprintf-posix (Depends-on): Likewise.
2187         * modules/vasprintf-posix (Depends-on): Likewise.
2188         * modules/vfprintf-posix (Depends-on): Likewise.
2189         * modules/vprintf-posix (Depends-on): Likewise.
2190         * modules/vsnprintf-posix (Depends-on): Likewise.
2191         * modules/vsprintf-posix (Depends-on): Likewise.
2192         * m4/printf.m4 (gl_PRINTF_INFINITE_LONG_DOUBLE): Require
2193         AC_C_BIGENDIAN. Define CHECK_PRINTF_SAFE if printf-safe is used. Test
2194         non-IEEE numbers on i386, x86_64, ia64. When cross-compiling, guess
2195         "no" on i386, x86_64, ia64.
2196         * tests/test-snprintf-posix.h (LDBL80_WORDS): New macro.
2197         (test_function): Check result of %La, %Lf, %Le, %Lg on non-IEEE numbers
2198         on i386, x86_64, ia64.
2199         * tests/test-sprintf-posix.h (LDBL80_WORDS): New macro.
2200         (test_function): Check result of %La, %Lf, %Le, %Lg on non-IEEE numbers
2201         on i386, x86_64, ia64.
2202         * tests/test-vasnprintf-posix.c: Include float.h.
2203         (LDBL80_WORDS): New macro.
2204         (test_function): Check result of %La, %Lf, %Le, %Lg on non-IEEE numbers
2205         on i386, x86_64, ia64.
2206         * tests/test-vasprintf-posix.c: Include float.h.
2207         (LDBL80_WORDS): New macro.
2208         (test_function): Check result of %La, %Lf, %Le, %Lg on non-IEEE numbers
2209         on i386, x86_64, ia64.
2210         * tests/test-snprintf-posix.c: Include float.h.
2211         * tests/test-sprintf-posix.c: Likewise.
2212         * tests/test-vsnprintf-posix.c: Likewise.
2213         * tests/test-vsprintf-posix.c: Likewise.
2214
2215 2007-06-05  Bruno Haible  <bruno@clisp.org>
2216
2217         Fix isnanl so that it recognizes non-IEEE numbers on i386, x86_64, ia64.
2218         * m4/isnanl.m4 (gl_FUNC_ISNANL_WORKS): Require AC_C_BIGENDIAN. Test
2219         non-IEEE numbers on i386, x86_64, ia64.
2220         (gl_LONG_DOUBLE_EXPONENT_LOCATION): Require AC_C_BIGENDIAN.
2221         * lib/isnan.c (FUNC): Add special code for i386, x86_64, ia64.
2222         * tests/test-isnanl.h: Include float.h.
2223         (main): Check also non-IEEE numbers on i386, x86_64, ia64.
2224
2225 2007-06-05  Bruno Haible  <bruno@clisp.org>
2226
2227         * lib/vasnprintf.c (VASNPRINTF): Do the extra handling of NaN and Inf
2228         also the %a / %A. Handle the %a / %A code before this extra handling.
2229
2230 2007-06-05  Bruno Haible  <bruno@clisp.org>
2231
2232         * lib/vasnprintf.c [NEED_PRINTF_LONG_DOUBLE ||
2233         NEED_PRINTF_INFINITE_LONG_DOUBLE]: Include fpucw.h.
2234
2235 2007-06-05  Bruno Haible  <bruno@clisp.org>
2236
2237         * m4/vasnprintf.m4 (gl_PREREQ_VASNPRINTF_INFINITE_LONG_DOUBLE): Fix
2238         typo in variable name.
2239
2240 2007-06-05  Eric Blake  <ebb9@byu.net>
2241
2242         * m4/lseek.m4 (gl_FUNC_LSEEK): Work when cross-compiling.
2243         Reported by Simon Josefsson.
2244
2245 2007-06-04  Bruno Haible  <bruno@clisp.org>
2246
2247         Avoid test failures on some PowerPC platforms.
2248         * tests/test-printf-frexpl.c (MIN_NORMAL_EXP, MIN_SUBNORMAL_EXP):
2249         Define differently for PowerPC.
2250         * tests/test-frexpl.c (MIN_NORMAL_EXP): Likewise.
2251         Reported by Gary V. Vaughan <gary@gnu.org>.
2252
2253 2007-06-02  Bruno Haible  <bruno@clisp.org>
2254
2255         Fix test-stdint failure on FreeBSD/ia64.
2256         * m4/stdint.m4 (gl_STDINT_H): Check the values of PTRDIFF_MIN,
2257         PTRDIFF_MAX, SIG_ATOMIC_MIN, SIG_ATOMIC_MAX, SIZE_MAX, WCHAR_MIN,
2258         WCHAR_MAX, WINT_MIN, WINT_MAX entirely, not only for plausibility.
2259         * doc/headers/stdint.texi: Update.
2260
2261 2007-06-01  Bruno Haible  <bruno@clisp.org>
2262
2263         * tests/test-binary-io.c (main): Pass a third argument to open().
2264         Reported by Gary V. Vaughan <gary@gnu.org>.
2265
2266 2007-06-01  Bruno Haible  <bruno@clisp.org>
2267
2268         * doc/functions/frexpl.texi: Update for mingw.
2269
2270 2007-06-01  Bruno Haible  <bruno@clisp.org>
2271
2272         * tests/test-lseek.c (main): Disable test of errno for invalid third
2273         argument.
2274         * doc/functions/lseek.texi: Update.
2275         Reported by Gary V. Vaughan <gary@gnu.org>.
2276
2277 2007-05-28  Bruno Haible  <bruno@clisp.org>
2278
2279         * m4/intl.m4 (AM_INTL_SUBDIR): Substitute variables WOE32, WINDRES.
2280
2281 2007-05-31  Eric Blake  <ebb9@byu.net>
2282
2283         * m4/frexpl.m4 (gl_FUNC_FREXPL_WORKS): Guess no on mingw when
2284         cross compiling.
2285
2286 2007-05-30  Eric Blake  <ebb9@byu.net>
2287         and Bruno Haible  <bruno@clisp.org>
2288
2289         Work around mingw test failures exposed by m4-1.4.9b.
2290         * m4/stdint.m4 (gl_STDINT_H): Detect mingw bug.
2291         * tests/test-unistd.c: Disable uid_t and git_t tests for the
2292         moment.
2293
2294 2007-05-30  Bruno Haible  <bruno@clisp.org>
2295
2296         * tests/test-lseek.c: Explicitly close file descriptors 0 and 1 before
2297         assuming that they are closed. Needed on HP-UX 11.
2298
2299 2007-05-29  Bruno Haible  <bruno@clisp.org>
2300
2301         Fix a problem with #include_next.
2302         * lib/dirent_.h: Split the double-inclusion guard.
2303         * lib/fcntl_.h: Likewise.
2304         * lib/float_.h: Likewise.
2305         * lib/iconv_.h: Likewise.
2306         * lib/inttypes_.h: Likewise.
2307         * lib/locale_.h: Likewise.
2308         * lib/math_.h: Likewise.
2309         * lib/netinet_in_.h: Likewise.
2310         * lib/search_.h: Likewise.
2311         * lib/signal_.h: Likewise.
2312         * lib/stdint_.h: Likewise.
2313         * lib/stdio_.h: Likewise.
2314         * lib/stdlib_.h: Likewise.
2315         * lib/string_.h: Likewise.
2316         * lib/sys_select_.h: Likewise.
2317         * lib/sys_socket_.h: Likewise.
2318         * lib/sys_stat_.h: Likewise.
2319         * lib/sys_time_.h: Likewise.
2320         * lib/sysexits_.h: Likewise.
2321         * lib/time_.h: Likewise.
2322         * lib/unistd_.h: Likewise.
2323         * lib/wchar_.h: Likewise.
2324         * lib/wctype_.h: Likewise.
2325
2326 2007-05-29  Bruno Haible  <bruno@clisp.org>
2327
2328         * tests/test-unistd.c: Disable the tests for useconds_t and intptr_t
2329         for the moment.
2330
2331 2007-05-29  Bruno Haible  <bruno@clisp.org>
2332
2333         * m4/isnan.m4 (gl_DOUBLE_EXPONENT_LOCATION): Silence the AC_C_BIGENDIAN
2334         invocation.
2335         Reported by Eric Blake.
2336
2337 2007-05-29  Bruno Haible  <bruno@clisp.org>
2338
2339         * m4/isnanf.m4 (gl_FLOAT_EXPONENT_LOCATION): Fix typo in cross-
2340         compiling case.
2341
2342 2007-05-29  Eric Blake  <ebb9@byu.net>
2343             Bruno Haible  <bruno@clisp.org>
2344
2345         * m4/isnanf.m4 (gl_FUNC_ISNANF_NO_LIBM): Avoid syntax error on
2346         cross compiles.
2347
2348 2007-05-28  Eric Blake  <ebb9@byu.net>
2349
2350         * modules/closein-tests (test_closein_LDADD): Support test on
2351         cygwin with libtool.
2352
2353 2007-05-28  Bruno Haible  <bruno@clisp.org>
2354
2355         * tests/uniconv/test-u16-conv-from-enc.c: Remove #ifdef HAVE_CONFIG_H.
2356         * tests/uniconv/test-u16-strconv-from-enc.c: Likewise.
2357         * tests/uniconv/test-u16-strconv-to-enc.c: Likewise.
2358         * tests/uniconv/test-u32-conv-from-enc.c: Likewise.
2359         * tests/uniconv/test-u32-strconv-from-enc.c: Likewise.
2360         * tests/uniconv/test-u32-strconv-to-enc.c: Likewise.
2361         * tests/uniconv/test-u8-conv-from-enc.c: Likewise.
2362         * tests/uniconv/test-u8-strconv-from-enc.c: Likewise.
2363         * tests/uniconv/test-u8-strconv-to-enc.c: Likewise.
2364
2365 2007-05-28  Eric Blake  <ebb9@byu.net>
2366
2367         Unconditionally include <config.h> in unit tests.
2368         * tests/test-alloca-opt.c: Remove #ifdef HAVE_CONFIG_H.
2369         * tests/test-allocsa.c, tests/test-arcfour.c,
2370         tests/test-arctwo.c, tests/test-argmatch.c, tests/test-argp.c,
2371         tests/test-array_list.c, tests/test-array_oset.c,
2372         tests/test-atexit.c, test-avltree_list.c, test-avltree_oset.c,
2373         test-avltreehash_list.c, test-base64.c, test-binary-io.c,
2374         test-c-ctype.c, test-c-strcasecmp.c, test-c-strcasestr.c,
2375         test-c-strncasecmp.c, test-c-strstr.c, test-canonicalize-lgpl.c,
2376         test-carray_list.c, test-crc.c, test-des.c, test-dirname.c,
2377         test-fflush.c, test-fprintf-posix.c, test-gc-arcfour.c,
2378         test-gc-arctwo.c, test-gc-des.c, test-gc-hmac-md5.c,
2379         test-gc-hmac-sha1.c, test-gc-md2.c, test-gc-md4.c, test-gc-md5.c,
2380         test-gc-pbkdf2-sha1.c, test-gc-rijndael.c, test-gc-sha1.c,
2381         test-gc.c, test-getpass.c, test-hmac-md5.c, test-hmac-sha1.c,
2382         test-iconv.c, test-linked_list.c, test-linkedhash_list.c,
2383         test-lock.c, test-mbscasecmp.c, test-mbscasestr1.c,
2384         test-mbscasestr2.c, test-mbscasestr3.c, test-mbscasestr4.c,
2385         test-mbschr.c, test-mbscspn.c, test-mbsncasecmp.c, test-mbspbrk.c,
2386         test-mbspcasecmp.c, test-mbsrchr.c, test-mbsspn.c, test-mbsstr1.c,
2387         test-mbsstr2.c, test-mbsstr3.c, test-md2.c, test-md4.c,
2388         test-md5.c, test-memmem.c, test-printf-posix.c,
2389         test-rbtree_list.c, test-rbtree_oset.c, test-rbtreehash_list.c,
2390         test-read-file.c, test-rijndael.c, test-snprintf-posix.c,
2391         test-snprintf.c, test-sprintf-posix.c, test-stdint.c,
2392         test-strcasestr.c, test-striconv.c, test-striconveh.c,
2393         test-striconveha.c, test-tls.c, test-vasnprintf-posix.c,
2394         test-vasnprintf-posix2.c, test-vasnprintf.c,
2395         test-vasprintf-posix.c, test-vasprintf.c, test-verify.c,
2396         test-vfprintf-posix.c, test-vprintf-posix.c,
2397         test-vsnprintf-posix.c, test-vsnprintf.c, test-vsprintf-posix.c,
2398         test-xvasprintf.c: Likewise.
2399
2400 2007-05-28  Bruno Haible  <bruno@clisp.org>
2401
2402         * gnulib-tool (func_import): Remember the --with-tests command-line
2403         option through the macro gl_WITH_TESTS in the gnulib-cache.m4.
2404         Reported by Eric Blake.
2405
2406 2007-05-28  Bruno Haible  <bruno@clisp.org>
2407
2408         * modules/ftell-tests: New file.
2409         * tests/test-ftell.c: New file, based on tests/test-ftello.c.
2410         * tests/test-ftell.sh: New file, based on tests/test-ftello.sh.
2411
2412         * lib/ftell.c: New file.
2413         * modules/ftell: New file.
2414         * m4/ftell.m4: New file.
2415         * doc/functions/ftell.texi: Update.
2416         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Set also GNULIB_FTELL,
2417         REPLACE_FTELL.
2418         * lib/stdio_.h (rpl_ftell): New declaration.
2419         * modules/stdio (Makefile.am): Substitute also GNULIB_FTELL,
2420         REPLACE_FTELL.
2421
2422 2007-05-28  Eric Blake  <ebb9@byu.net>
2423
2424         * lib/allocsa.h (safe_alloca): Avoid compiler warning.
2425
2426 2007-05-28  Bruno Haible  <bruno@clisp.org>
2427
2428         * modules/fseek-tests: New file.
2429         * tests/test-fseek.c: New file, based on tests/test-fseeko.c.
2430         * tests/test-fseek.sh: New file, based on tests/test-fseeko.sh.
2431
2432         * lib/fseek.c: New file.
2433         * modules/fseek: New file.
2434         * m4/fseek.m4: New file.
2435         * doc/functions/fseek.texi: Update.
2436         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Set also GNULIB_FSEEK,
2437         REPLACE_FSEEK.
2438         * lib/stdio_.h (rpl_fseek): New declaration.
2439         * modules/stdio (Makefile.am): Substitute also GNULIB_FSEEK,
2440         REPLACE_FSEEK.
2441
2442 2007-05-28  Bruno Haible  <bruno@clisp.org>
2443
2444         * lib/stdio_.h (fflush): More comments.
2445
2446 2007-05-28  Bruno Haible  <bruno@clisp.org>
2447
2448         * m4/lseek.m4 (gl_FUNC_LSEEK): When not cross-compiling, perform a real
2449         runtime test.
2450
2451 2007-05-28  Eric Blake  <ebb9@byu.net>
2452
2453         Improve lseek module.
2454         * lib/lseek.c (rpl_lseek): Detect EBADF on mingw.
2455         * lib/unistd_.h (lseek): Scale back link warning message.
2456         * tests/test-lseek.c: Beef up test.
2457         * tests/test-lseek.sh: Exercise more facets of lseek.
2458         Reported by Bruno Haible.
2459
2460 2007-05-28  Bruno Haible  <bruno@clisp.org>
2461
2462         * tests/test-unistd.c: Test all the types that <unistd.h> is expected
2463         to define.
2464
2465 2007-05-27  Bruno Haible  <bruno@clisp.org>
2466
2467         * m4/iconv.m4 (AM_ICONV_LINK): Fix 2007-03-31 patch.
2468
2469 2007-05-27  Bruno Haible  <bruno@clisp.org>
2470
2471         * modules/openmp: New file.
2472         * m4/openmp.m4: New file, taken from autoconf's CVS with changes by
2473         Noah Misch.
2474
2475 2007-05-26  Bruno Haible  <bruno@clisp.org>
2476
2477         * modules/chdir-long (Depends-on): Add fchdir.
2478         * modules/chdir-safer (Depends-on): Likewise.
2479         * modules/fts (Depends-on): Likewise.
2480         * modules/fts-lgpl (Depends-on): Likewise.
2481         * modules/openat (Depends-on): Likewise.
2482         * modules/savewd (Depends-on): Likewise.
2483
2484 2007-05-24  Eric Blake  <ebb9@byu.net>
2485
2486         Fix lseek on mingw.
2487         * modules/lseek: New module.
2488         * m4/lseek.m4: New file.
2489         * lib/lseek.c: New file.
2490         * modules/lseek-tests: New file.
2491         * tests/test-lseek.c: New file.
2492         * tests/test-lseek.sh: New file.
2493         * MODULES.html.sh: Document lseek module.
2494         * modules/fflush (Depends-on): Add lseek, fseeko.
2495         * modules/fseeko (Depends-on): Likewise.
2496         * modules/ftello (Depends-on): Likewise.
2497         * m4/fseeko.m4 (gl_FUNC_FSEEKO): Replace fseek[o] if lseek is
2498         broken.
2499         * m4/ftello.m4 (gl_FUNC_FTELLO): Replace ftell[o] if lseek is
2500         broken.
2501         * m4/fflush.m4 (gl_REPLACE_FFLUSH): Trigger fseeko module.
2502         * lib/fseeko.c (rpl_fseeko): Quit early on non-seekable files.
2503         * lib/ftello.c (rpl_ftello): Likewise.
2504         * tests/test-fseeko.c (main): Test this.
2505         * tests/test-fseeko.sh: Likewise.
2506         * tests/test-ftello.c (main): Likewise.
2507         * tests/test-ftello.sh: Likewise.
2508         * lib/stdio_.h (fseek, ftell): Simplify, since missing fseeko now
2509         implies replacing fseek.
2510         * modules/stdio (Makefile.am): No longer need HAVE_FSEEKO,
2511         HAVE_FTELLO.
2512         * m4/unistd_h.m4 (gl_UNISTD_H_DEFAULTS): Add lseek info.
2513         * modules/unistd (Makefile.am): Likewise.
2514         * lib/unistd_.h (lseek): Declare a replacement.
2515         * doc/functions/lseek.texi (lseek): Document this fix.
2516         * doc/functions/fseek.texi (fseek): Likewise.
2517         * doc/functions/ftell.texi (ftell): Likewise.
2518
2519 2007-05-24  Bruno Haible  <bruno@clisp.org>
2520
2521         * tests/test-vasnprintf-posix.c (test_function): Allow up to 50 bytes
2522         in the printed representation of a NaN.
2523         * tests/test-vasprintf-posix.c (test_function): Likewise.
2524         * tests/test-snprintf-posix.h (test_function): Likewise.
2525         * tests/test-sprintf-posix.h (test_function): Likewise.
2526         Reported by Eric Blake.
2527
2528 2007-05-23  Eric Blake  <ebb9@byu.net>
2529
2530         Fix fseeko/ftello on cygwin 1.5.24.
2531         * doc/functions/fseeko.texi (fseeko): Document the fix.
2532         * doc/functions/ftello.texi (ftello): Document the fix.
2533         * doc/functions/stdin.texi (stdin): Document the cygwin bug.
2534         * doc/functions/stdout.text (stdout): New file.
2535         * doc/functions/stderr.text (stderr): New file.
2536         * doc/gnulib.texi (Function Substitutes): Use new files.
2537         * tests/test-fseeko.c (main): Check for broken fseeko on cygwin
2538         prior to 1.7.0.
2539         * tests/test-ftello.c (main): Likewise for ftello.
2540         * tests/test-fseeko.sh: New file.
2541         * tests/test-ftello.sh: New file.
2542         * modules/fseeko-tests (Makefile.am): Ensure test-fseeko is run
2543         with seekable stdin.
2544         * modules/ftello-tests (Makefile.am): Likewise for test-ftello.
2545         * m4/fseeko.m4 (gl_FUNC_FSEEKO): Detect the cygwin bug.
2546         (gl_REPLACE_FSEEKO): New macro.
2547         * m4/ftello.m4 (gl_FUNC_FTELLO, gl_REPLACE_FTELLO): Likewise.
2548         * modules/fseeko (Files): Distribute fseeko.c.
2549         * modules/ftello (Files): Distribute ftello.c.
2550         * lib/fseeko.c (rpl_fseeko) [__CYGWIN__]: Convert stdin to 64-bit
2551         mode.
2552         * lib/ftello.c (rpl_ftello): New file.
2553         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Allow replacement of
2554         fseeko, ftello.
2555         (gl_STDIN_LARGE_OFFSET): New macro.
2556         * modules/stdio (Makefile.am): Perform the replacement.
2557         * lib/stdio_.h (rpl_fseeko, rpl_ftello): Define when needed.
2558
2559 2007-05-23  Bruno Haible  <bruno@clisp.org>
2560
2561         * lib/stdio_.h (fseeko, ftello): Provide a link warning only if
2562         GNULIB_POSIXCHECK is defined.
2563
2564 2007-05-21  Bruno Haible  <bruno@clisp.org>
2565
2566         * m4/printf.m4 (gl_PRINTF_INFINITE, gl_PRINTF_INFINITE_LONG_DOUBLE):
2567         Check also the output for NaN arguments. When cross-compiling, guess
2568         no on IRIX.
2569         * lib/vasnprintf.c: Update comments.
2570         * tests/test-vasnprintf-posix.c (strisnan): New function.
2571         (test_function): Use it.
2572         * tests/test-vasprintf-posix.c (strisnan): New function.
2573         (test_function): Use it.
2574         * tests/test-snprintf-posix.h (strisnan): New function.
2575         (test_function): Use it.
2576         * tests/test-sprintf-posix.h (strisnan): New function.
2577         (test_function): Use it.
2578         Reported by Eric Blake.
2579
2580 2007-05-20  Bruno Haible  <bruno@clisp.org>
2581
2582         * m4/frexpl.m4 (gl_FUNC_FREXPL_WORKS): Add test for large finite
2583         numbers that fails on BeOS.
2584         * doc/functions/frexpl.texi: Update.
2585
2586 2007-05-20  Jim Meyering  <jim@meyering.net>
2587
2588         * NEWS: Mention the incompatible change (s/futimens/gl_futimens/)
2589         forced upon us by glibc-2.6.
2590
2591 2007-05-20  Bruno Haible  <bruno@clisp.org>
2592
2593         Fix *printf result for NaN, Inf on AIX, Solaris, OSF/1.
2594         * m4/printf.m4 (gl_PRINTF_INFINITE): Update cross-compiling guesses.
2595         (gl_PRINTF_INFINITE_LONG_DOUBLE): New macro.
2596         * lib/vasnprintf.c: Use NEED_PRINTF_INFINITE_DOUBLE instead of
2597         NEED_PRINTF_INFINITE.
2598         (is_infinitel): New function.
2599         (VASNPRINTF): Handle NEED_PRINTF_INFINITE_LONG_DOUBLE case.
2600         * m4/vasnprintf.m4 (gl_PREREQ_VASNPRINTF_INFINITE_DOUBLE): Renamed from
2601         gl_PREREQ_VASNPRINTF_INFINITE.
2602         (gl_PREREQ_VASNPRINTF_INFINITE_LONG_DOUBLE): New macro.
2603         * m4/fprintf-posix.m4 (gl_FUNC_FPRINTF_POSIX): Invoke
2604         gl_PRINTF_INFINITE_LONG_DOUBLE and test its result. Invoke
2605         gl_PREREQ_VASNPRINTF_INFINITE_DOUBLE and
2606         gl_PREREQ_VASNPRINTF_INFINITE_LONG_DOUBLE instead of
2607         gl_PREREQ_VASNPRINTF_INFINITE.
2608         * m4/snprintf-posix.m4 (gl_FUNC_SNPRINTF_POSIX): Likewise.
2609         * m4/sprintf-posix.m4 (gl_FUNC_SPRINTF_POSIX): Likewise.
2610         * m4/vasnprintf-posix.m4 (gl_FUNC_VASNPRINTF_POSIX): Likewise.
2611         * m4/vasprintf-posix.m4 (gl_FUNC_VASPRINTF_POSIX): Likewise.
2612         * m4/vfprintf-posix.m4 (gl_FUNC_VFPRINTF_POSIX): Likewise.
2613         * m4/vsnprintf-posix.m4 (gl_FUNC_VSNPRINTF_POSIX): Likewise.
2614         * m4/vsprintf-posix.m4 (gl_FUNC_VSPRINTF_POSIX): Likewise.
2615         * doc/functions/fprintf.texi: Update.
2616         * doc/functions/printf.texi: Update.
2617         * doc/functions/snprintf.texi: Update.
2618         * doc/functions/sprintf.texi: Update.
2619         * doc/functions/vfprintf.texi: Update.
2620         * doc/functions/vprintf.texi: Update.
2621         * doc/functions/vsnprintf.texi: Update.
2622         * doc/functions/vsprintf.texi: Update.
2623
2624 2007-05-20  Bruno Haible  <bruno@clisp.org>
2625
2626         * m4/frexpl.m4 (gl_FUNC_FREXPL_NO_LIBM): Set REPLACE_FREXPL if frexpl
2627         was not found in libc.
2628         * m4/printf-frexpl.m4 (gl_FUNC_PRINTF_FREXPL): Likewise.
2629
2630 2007-05-20  Bruno Haible  <bruno@clisp.org>
2631
2632         * tests/test-vasnprintf-posix.c (test_function): Allow NaN to be
2633         printed as "-nan" instead of "nan".
2634         * tests/test-vasprintf-posix.c (test_function): Likewise.
2635         * tests/test-snprintf-posix.h (test_function): Likewise.
2636         * tests/test-sprintf-posix.h (test_function): Likewise.
2637         Needed for HP-UX 11.
2638
2639 2007-05-20  Jim Meyering  <jim@meyering.net>
2640
2641         Fix buggy test for the fchownat-deref bug.
2642         * m4/openat.m4 (gl_FUNC_FCHOWNAT_DEREF_BUG): Create the dangling
2643         symlink required for the run-test.  Without it, this test would
2644         always declare that fchownat doesn't work, and client code would
2645         unnecessarily use the replacement function with fixed libc.
2646         (gl_FUNC_FCHOWNAT): Eliminate a variable that wasn't initialized.
2647         Reported by Greg Schafer.
2648
2649 2007-05-19  Bruno Haible  <bruno@clisp.org>
2650
2651         * m4/isnanf.m4 (gl_ISNANF_WORKS): New macro.
2652         (gl_FUNC_ISNANF_NO_LIBM): Invoke it.
2653         * lib/isnan.c (FUNC): Use run-time expressions for SGI compiler.
2654         Needed for IRIX 6.5 and Solaris 2.5.1.
2655
2656 2007-05-19  Bruno Haible  <bruno@clisp.org>
2657
2658         * tests/test-vasnprintf-posix.c (have_minus_zero): New function.
2659         (test_function): Skip tests involving -0.0 on platforms where
2660         -0.0 = 0.0.
2661         * tests/test-vasprintf-posix.c (have_minus_zero): New function.
2662         (test_function): Skip tests involving -0.0 on platforms where
2663         -0.0 = 0.0.
2664         * tests/test-snprintf-posix.h (have_minus_zero): New function.
2665         (test_function): Skip tests involving -0.0 on platforms where
2666         -0.0 = 0.0.
2667         * tests/test-sprintf-posix.h (have_minus_zero): New function.
2668         (test_function): Skip tests involving -0.0 on platforms where
2669         -0.0 = 0.0.
2670         * tests/test-fprintf-posix.h (test_function): Remove all -0.0 related
2671         tests.
2672         * tests/test-printf-posix.h (test_function): Likewise.
2673         * tests/test-printf-posix.output: Remove all -0.0 related results.
2674         Needed for IRIX 6.5.
2675
2676 2007-05-19  Bruno Haible  <bruno@clisp.org>
2677
2678         * tests/test-vasnprintf-posix.c (test_function): Allow NaN to be
2679         printed as "nan0x7fffffff" instead of "nan".
2680         * tests/test-vasprintf-posix.c (test_function): Likewise.
2681         * tests/test-snprintf-posix.h (test_function): Likewise.
2682         * tests/test-sprintf-posix.h (test_function): Likewise.
2683         * tests/test-fprintf-posix.h (NaN): Remove macro.
2684         (test_function): Remove all NaN related tests.
2685         * tests/test-printf-posix.h (NaN): Remove macro.
2686         (test_function): Remove all NaN related tests.
2687         * tests/test-printf-posix.output: Remove all NaN related results.
2688         Needed for IRIX 6.5.
2689
2690 2007-05-19  Bruno Haible  <bruno@clisp.org>
2691
2692         * m4/frexp.m4 (gl_FUNC_FREXP_WORKS): Fix C89 syntax error in test code.
2693         * m4/frexpl.m4 (gl_FUNC_FREXPL_WORKS): Likewise.
2694
2695 2007-05-19  Bruno Haible  <bruno@clisp.org>
2696
2697         * lib/float_.h: New file.
2698         * m4/float_h.m4: New file.
2699         * modules/float: New file.
2700         * modules/isnanl (Dependencies): Add float.
2701         * modules/isnanl-nolibm (Dependencies): Likewise.
2702         * modules/mathl (Dependencies): Likewise.
2703         * modules/printf-frexpl (Dependencies): Likewise.
2704         * modules/signbit (Dependencies): Likewise.
2705         * modules/vasnprintf (Dependencies): Likewise.
2706         * doc/headers/float.texi: Update.
2707
2708 2007-05-19  Jim Meyering  <jim@meyering.net>
2709
2710         * lib/utimens.c (gl_futimens): Rename from futimens,
2711         now that glibc-2.6 declares futimens.
2712         * lib/utimens.h: Likewise.
2713
2714 2007-05-19  Bruno Haible  <bruno@clisp.org>
2715
2716         Avoid test failures on mingw.
2717         * tests/test-fprintf-posix.sh: Convert CR/LF to LF in output.
2718         * tests/test-printf-posix.sh: Likewise.
2719         * tests/test-vfprintf-posix.sh: Likewise.
2720         * tests/test-vprintf-posix.sh: Likewise.
2721
2722 2007-05-19  Bruno Haible  <bruno@clisp.org>
2723
2724         Fix *printf result for NaN, Inf, -0.0 on mingw.
2725         * m4/printf.m4 (gl_PRINTF_INFINITE): New macro.
2726         * lib/vasnprintf.c: Include math.h and isnan.h.
2727         (is_infinite_or_zero): New function.
2728         (VASNPRINTF): Fix also the handling of infinite or zero 'double'
2729         values in the %f, %F, %e, %E, %g, %G directives.
2730         * m4/vasnprintf.m4 (gl_PREREQ_VASNPRINTF_INFINITE): New macro.
2731         * m4/fprintf-posix.m4 (gl_FUNC_FPRINTF_POSIX): Invoke
2732         gl_PRINTF_INFINITE and test its result. Invoke
2733         gl_PREREQ_VASNPRINTF_INFINITE.
2734         * m4/snprintf-posix.m4 (gl_FUNC_SNPRINTF_POSIX): Likewise.
2735         * m4/sprintf-posix.m4 (gl_FUNC_SPRINTF_POSIX): Likewise.
2736         * m4/vasnprintf-posix.m4 (gl_FUNC_VASNPRINTF_POSIX): Likewise.
2737         * m4/vasprintf-posix.m4 (gl_FUNC_VASPRINTF_POSIX): Likewise.
2738         * m4/vfprintf-posix.m4 (gl_FUNC_VFPRINTF_POSIX): Likewise.
2739         * m4/vsnprintf-posix.m4 (gl_FUNC_VSNPRINTF_POSIX): Likewise.
2740         * m4/vsprintf-posix.m4 (gl_FUNC_VSPRINTF_POSIX): Likewise.
2741         * doc/functions/fprintf.texi: Update.
2742         * doc/functions/printf.texi: Update.
2743         * doc/functions/snprintf.texi: Update.
2744         * doc/functions/sprintf.texi: Update.
2745         * doc/functions/vfprintf.texi: Update.
2746         * doc/functions/vprintf.texi: Update.
2747         * doc/functions/vsnprintf.texi: Update.
2748         * doc/functions/vsprintf.texi: Update.
2749
2750 2007-05-19  Bruno Haible  <bruno@clisp.org>
2751
2752         * lib/vasnprintf.c (convert_to_decimal): Add an extra_zeroes argument.
2753         (scale10_round_decimal_long_double): Inline scale10_round_long_double.
2754         Instead of multiplying with 10^k, set extra_zeroes to k.
2755         (scale10_round_long_double): Remove function.
2756
2757 2007-05-18  Bruno Haible  <bruno@clisp.org>
2758
2759         * lib/vasnprintf.c (VASNPRINTF) [NEED_PRINTF_FLAG_ZERO]: Fix logic bug
2760         introduced on 2007-05-06.
2761
2762 2007-05-18  Bruno Haible  <bruno@clisp.org>
2763
2764         * tests/test-vasnprintf-posix.c (test_function): Also test the %e and
2765         %g directives.
2766         * tests/test-vasprintf-posix.c (test_function): Likewise.
2767         * tests/test-snprintf-posix.h (test_function): Likewise.
2768         * tests/test-sprintf-posix.h (test_function): Likewise.
2769
2770 2007-05-18  Bruno Haible  <bruno@clisp.org>
2771
2772         * tests/test-vasnprintf-posix.c (SIZEOF): New macro.
2773         (strmatch): New function.
2774         (test_function): Test the %f directive on numbers of various exponents.
2775         * tests/test-vasprintf-posix.c (SIZEOF): New macro.
2776         (strmatch): New function.
2777         (test_function): Test the %f directive on numbers of various exponents.
2778         * tests/test-snprintf-posix.h (strmatch): New function.
2779         (test_function): Test the %f directive on numbers of various exponents.
2780         * tests/test-sprintf-posix.h (strmatch): New function.
2781         (test_function): Test the %f directive on numbers of various exponents.
2782         * tests/test-snprintf-posix.c (SIZEOF): New macro.
2783         * tests/test-sprintf-posix.c (SIZEOF): New macro.
2784         * tests/test-vsnprintf-posix.c (SIZEOF): New macro.
2785         * tests/test-vsprintf-posix.c (SIZEOF): New macro.
2786
2787 2007-05-18  Bruno Haible  <bruno@clisp.org>
2788
2789         Add support for 'long double' number output.
2790         * m4/printf.m4 (gl_PRINTF_LONG_DOUBLE): New macro.
2791         * lib/vasnprintf.c: Include math.h and float+.h.
2792         (mp_limb_t): New type.
2793         (GMP_LIMB_BITS): New macro.
2794         (mp_twolimb_t): New type.
2795         (GMP_TWOLIMB_BITS): New macro.
2796         (mpn_t): New type.
2797         (multiply, divide, convert_to_decimal, decode_long_double,
2798         scale10_round_long_double, scale10_round_decimal_long_double,
2799         floorlog10l): New functions.
2800         (VASNPRINTF) [NEED_PRINTF_LONG_DOUBLE]: Implement 'long double' support
2801         for the %f, %F, %e, %E, %g, %G directives.
2802         * m4/vasnprintf.m4 (gl_PREREQ_VASNPRINTF_LONG_DOUBLE): New macro.
2803         * m4/fprintf-posix.m4 (gl_FUNC_FPRINTF_POSIX): Invoke
2804         gl_PRINTF_LONG_DOUBLE and test its result. Invoke
2805         gl_PREREQ_VASNPRINTF_LONG_DOUBLE.
2806         * m4/snprintf-posix.m4 (gl_FUNC_SNPRINTF_POSIX): Likewise.
2807         * m4/sprintf-posix.m4 (gl_FUNC_SPRINTF_POSIX): Likewise.
2808         * m4/vasnprintf-posix.m4 (gl_FUNC_VASNPRINTF_POSIX): Likewise.
2809         * m4/vasprintf-posix.m4 (gl_FUNC_VASPRINTF_POSIX): Likewise.
2810         * m4/vfprintf-posix.m4 (gl_FUNC_VFPRINTF_POSIX): Likewise.
2811         * m4/vsnprintf-posix.m4 (gl_FUNC_VSNPRINTF_POSIX): Likewise.
2812         * m4/vsprintf-posix.m4 (gl_FUNC_VSPRINTF_POSIX): Likewise.
2813         * modules/fprintf-posix (Depends-on): Add frexpl-nolibm.
2814         * modules/snprintf-posix (Depends-on): Likewise.
2815         * modules/sprintf-posix (Depends-on): Likewise.
2816         * modules/vasnprintf-posix (Depends-on): Likewise.
2817         * modules/vasprintf-posix (Depends-on): Likewise.
2818         * modules/vfprintf-posix (Depends-on): Likewise.
2819         * modules/vsnprintf-posix (Depends-on): Likewise.
2820         * modules/vsprintf-posix (Depends-on): Likewise.
2821         * modules/vasnprintf (Files): Add lib/float+.h.
2822         * doc/functions/fprintf.texi: Update.
2823         * doc/functions/printf.texi: Update.
2824         * doc/functions/snprintf.texi: Update.
2825         * doc/functions/sprintf.texi: Update.
2826         * doc/functions/vfprintf.texi: Update.
2827         * doc/functions/vprintf.texi: Update.
2828         * doc/functions/vsnprintf.texi: Update.
2829         * doc/functions/vsprintf.texi: Update.
2830
2831 2007-05-18  Bruno Haible  <bruno@clisp.org>
2832
2833         * lib/vasnprintf.c (USE_SNPRINTF): Define to 0 on BeOS.
2834
2835 2007-05-18  Bruno Haible  <bruno@clisp.org>
2836
2837         * lib/vasnprintf.c (VASNPRINTF) [WIN32]: Use %I64d instead of %lld
2838         for printing 64-bit integers. Needed for mingw.
2839
2840 2007-05-18  Bruno Haible  <bruno@clisp.org>
2841
2842         * m4/printf-frexpl.m4 (gl_FUNC_PRINTF_FREXPL): Invoke
2843         gl_FUNC_FREXPL_WORKS.
2844         * modules/printf-frexpl (Files): Add m4/frexpl.m4.
2845
2846 2007-05-18  Bruno Haible  <bruno@clisp.org>
2847
2848         * modules/frexpl-nolibm-tests: New file.
2849
2850         * modules/frexpl-nolibm: New file.
2851         * m4/frexpl.m4 (gl_FUNC_FREXPL_NO_LIBM): New macro.
2852
2853 2007-05-17  Paul Eggert  <eggert@cs.ucla.edu>
2854
2855         * lib/dirent_.h: Prefer #include_next <foo.h> to #include
2856         @ABSOLUTE_FOO_H@ if @HAVE_INCLUDE_NEXT@.  This works better with
2857         GCC 4.2, which otherwise issues a lot of warnings.
2858         * lib/iconv_.h, lib/locale_.h, lib/netinet_in_.h, lib/sys_select_.h:
2859         * lib/sys_socket_.h, lib/sys_stat_.h, lib/sysexits_.h, lib/unistd_.h:
2860         Likewise.
2861         * modules/fchdir (dirent.h): Substitute @HAVE_INCLUDE_NEXT@.
2862         * modules/iconv_open (iconv.h): Likewise.
2863         * modules/locale (locale.h): Likewise.
2864         * modules/netinet_in (netinet/in.h): Likewise.
2865         * modules/sys_select (sys_select.h): Likewise.
2866         * modules/sys_socket (sys/socket.h): Likewise.
2867         * modules/sys_stat (sys/stat.h): Likewise.
2868         * modules/sysexits (sysexits.h): Likewise.
2869         * modules/unistd (unistd.h): Likewise.
2870
2871 2007-05-17  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
2872
2873         * modules/closein-tests (Makefile.am): Distribute
2874         `test-closein.sh'.
2875
2876 2007-05-17  Bruno Haible  <bruno@clisp.org>
2877
2878         * tests/test-printf-posix.output: Renamed from
2879         tests/test-fprintf-posix.out.
2880         * modules/fprintf-posix-tests: Update.
2881         * modules/printf-posix-tests: Update.
2882         * modules/vfprintf-posix-tests: Update.
2883         * modules/vprintf-posix-tests: Update.
2884         * tests/test-fprintf-posix.sh: Update.
2885         * tests/test-printf-posix.sh: Update.
2886         * tests/test-vfprintf-posix.sh: Update.
2887         * tests/test-vprintf-posix.sh: Update.
2888         Reported by Ralf Wildenhues.
2889
2890 2007-05-16  Paul Eggert  <eggert@cs.ucla.edu>
2891
2892         * lib/fcntl_.h: Prefer #include_next <foo.h> to #include
2893         @ABSOLUTE_FOO_H@ if @HAVE_INCLUDE_NEXT@.  This works better with
2894         GCC 4.2, which otherwise issues a lot of warnings.
2895         * lib/inttypes_.h, lib/math_.h, lib/search_.h, lib/signal_.h:
2896         * lib/stdint_.h, lib/stdio_.h, lib/stdlib_.h, lib/string_.h:
2897         * lib/sys_time_.h, lib/time_.h, lib/wchar_.h, lib/wctype_.h: Likewise.
2898         * lib/stdlib_.h: Don't bother with #pragma GCC system_header, as
2899         it should no longer be needed.
2900         * lib/string_.h: Likewise.
2901         * modules/absolute-header (HAVE_INCLUDE_NEXT): New 'make' define.
2902         * modules/fcntl (fcntl.h): Substitute @HAVE_INCLUDE_NEXT@.
2903         * modules/inttypes (inttypes.h): Likewise.
2904         * modules/math (math.h): Likewise.
2905         * modules/search (search.h): Likewise.
2906         * modules/signal (signal.h): Likewise.
2907         * modules/stdint (stdint.h): Likewise.
2908         * modules/stdio (stdio.h): Likewise.
2909         * modules/stdlib (stdlib.h): Likewise.
2910         * modules/string (string.h): Likewise.
2911         * modules/sys_time (sys/time.h): Likewise.
2912         * modules/time (time.h): Likewise.
2913         * modules/wchar (wchar.h): Likewise.
2914         * modules/wctype (wtype.h): Likewise.
2915
2916 2007-05-16  Thien-Thi Nguyen  <ttn@gnuvola.org>  (tiny change)
2917
2918         * doc/gnulib-tool.texi (CVS Issues): Fix typo.
2919
2920 2007-05-13  Bruno Haible  <bruno@clisp.org>
2921
2922         * stpcpy.m4 (gl_FUNC_STPCPY): Require AC_C_RESTRICT.
2923         * stpncpy.m4 (gl_FUNC_STPNCPY): Likewise.
2924         * strsep.m4 (gl_FUNC_STRSEP): Likewise.
2925         * strtok_r.m4 (gl_FUNC_STRTOK_R): Likewise.
2926         (gl_PREREQ_STRTOK_R): Don't require it here.
2927
2928 2007-05-13  Bruno Haible  <bruno@clisp.org>
2929
2930         * lib/stdlib_.h (mkdtemp, mkstemp): Comment out argument name. Needed
2931         when used in C++ mode.
2932
2933 2007-05-12  Bruno Haible  <bruno@clisp.org>
2934
2935         * lib/linebuffer.h: Tweak doc.
2936         * lib/linebuffer.c: Likewise.
2937
2938 2007-05-12  James Youngman  <jay@gnu.org>
2939
2940         * lib/linebuffer.c (readlinebuffer_delim): New function,
2941         like readlinebuffer, but use a caller-specified delimiter.
2942         (readlinebuffer): Just call readlinebuffer_delim with '\n'
2943         as the delimiter.
2944         * lib/linebuffer.h (readlinebuffer_delim): Declare it.
2945
2946 2007-05-12  Sergey Poznyakoff  <gray@gnu.org.ua>
2947
2948         * m4/openat.m4 (gl_FUNC_OPENAT): Do not require openat-die.
2949         * modules/openat (Files): Remove openat-die.c.
2950         (Depends-on): Add openat-die.
2951         * modules/openat-die: New module.
2952
2953 2007-05-06  Bruno Haible  <bruno@clisp.org>
2954
2955         * m4/printf.m4 (gl_PRINTF_FLAG_GROUPING, gl_VSNPRINTF_ZEROSIZE_C99):
2956         Update with info about Cygwin.
2957         * doc/functions/fprintf.texi: Update.
2958         * doc/functions/printf.texi: Update.
2959         * doc/functions/snprintf.texi: Update.
2960         * doc/functions/sprintf.texi: Update.
2961         * doc/functions/vfprintf.texi: Update.
2962         * doc/functions/vprintf.texi: Update.
2963         * doc/functions/vsnprintf.texi: Update.
2964         * doc/functions/vsprintf.texi: Update.
2965         Reported by Eric Blake.
2966
2967 2007-05-06  Bruno Haible  <bruno@clisp.org>
2968
2969         * lib/vasnprintf.c (VASNPRINTF) [NEED_PRINTF_FLAG_ZERO]: Perform the
2970         padding ourselves for the floating-point directives.
2971         * m4/printf.m4 (gl_PRINTF_FLAG_ZERO): New macro.
2972         * m4/vasnprintf.m4 (gl_PREREQ_VASNPRINTF_FLAG_ZERO): New macro.
2973         * m4/snprintf-posix.m4 (gl_FUNC_SNPRINTF_POSIX): Invoke
2974         gl_PRINTF_FLAG_ZERO and test its result. Invoke
2975         gl_PREREQ_VASNPRINTF_FLAG_ZERO.
2976         * m4/sprintf-posix.m4 (gl_FUNC_SPRINTF_POSIX): Likewise.
2977         * m4/fprintf-posix.m4 (gl_FUNC_FPRINTF_POSIX): Likewise.
2978         * m4/vasnprintf-posix.m4 (gl_FUNC_VASNPRINTF_POSIX): Likewise.
2979         * m4/vasprintf-posix.m4 (gl_FUNC_VASPRINTF_POSIX): Likewise.
2980         * m4/vfprintf-posix.m4 (gl_FUNC_VFPRINTF_POSIX): Likewise.
2981         * m4/vsnprintf-posix.m4 (gl_FUNC_VSNPRINTF_POSIX): Likewise.
2982         * m4/vsprintf-posix.m4 (gl_FUNC_VSPRINTF_POSIX): Likewise.
2983         * tests/test-snprintf-posix.h (test_function): Also check the width
2984         and some flags in the %f directive.
2985         * tests/test-sprintf-posix.h (test_function): Likewise.
2986         * tests/test-vasnprintf-posix.c (test_function): Likewise.
2987         * tests/test-vasprintf-posix.c (test_function): Likewise.
2988         * doc/functions/fprintf.texi: Update.
2989         * doc/functions/printf.texi: Update.
2990         * doc/functions/snprintf.texi: Update.
2991         * doc/functions/sprintf.texi: Update.
2992         * doc/functions/vfprintf.texi: Update.
2993         * doc/functions/vprintf.texi: Update.
2994         * doc/functions/vsnprintf.texi: Update.
2995         * doc/functions/vsprintf.texi: Update.
2996
2997 2007-05-06  Bruno Haible  <bruno@clisp.org>
2998
2999         * lib/vasnprintf.c (VASNPRINTF) [NEED_PRINTF_FLAG_GROUPING]: Don't
3000         pass the ' flag character to sprintf or snprintf.
3001         * m4/printf.m4 (gl_PRINTF_FLAG_GROUPING): New macro.
3002         * m4/vasnprintf.m4 (gl_PREREQ_VASNPRINTF_FLAG_GROUPING): New macro.
3003         * m4/snprintf-posix.m4 (gl_FUNC_SNPRINTF_POSIX): Invoke
3004         gl_PRINTF_FLAG_GROUPING and test its result. Invoke
3005         gl_PREREQ_VASNPRINTF_FLAG_GROUPING.
3006         * m4/sprintf-posix.m4 (gl_FUNC_SPRINTF_POSIX): Likewise.
3007         * m4/fprintf-posix.m4 (gl_FUNC_FPRINTF_POSIX): Likewise.
3008         * m4/vasnprintf-posix.m4 (gl_FUNC_VASNPRINTF_POSIX): Likewise.
3009         * m4/vasprintf-posix.m4 (gl_FUNC_VASPRINTF_POSIX): Likewise.
3010         * m4/vfprintf-posix.m4 (gl_FUNC_VFPRINTF_POSIX): Likewise.
3011         * m4/vsnprintf-posix.m4 (gl_FUNC_VSNPRINTF_POSIX): Likewise.
3012         * m4/vsprintf-posix.m4 (gl_FUNC_VSPRINTF_POSIX): Likewise.
3013         * tests/test-snprintf-posix.h (test_function): Also check the grouping
3014         flag.
3015         * tests/test-sprintf-posix.h (test_function): Likewise.
3016         * tests/test-vasnprintf-posix.c (test_function): Likewise.
3017         * tests/test-vasprintf-posix.c (test_function): Likewise.
3018         * doc/functions/fprintf.texi: Update.
3019         * doc/functions/printf.texi: Update.
3020         * doc/functions/snprintf.texi: Update.
3021         * doc/functions/sprintf.texi: Update.
3022         * doc/functions/vfprintf.texi: Update.
3023         * doc/functions/vprintf.texi: Update.
3024         * doc/functions/vsnprintf.texi: Update.
3025         * doc/functions/vsprintf.texi: Update.
3026
3027 2007-05-01  Bruno Haible  <bruno@clisp.org>
3028
3029         * tests/test-argp-2.sh (func_compare): Drop .exe suffix.
3030
3031 2007-05-03  Paul Eggert  <eggert@cs.ucla.edu>
3032
3033         * m4/d-ino.m4 (gl_CHECK_TYPE_STRUCT_DIRENT_D_INO): Use better
3034         comment for D_INO_IN_DIRENT.  Problem reported by James Youngman.
3035
3036 2007-05-02  Paul Eggert  <eggert@cs.ucla.edu>
3037
3038         * m4/d-ino.m4 (gl_CHECK_TYPE_STRUCT_DIRENT_D_INO): Test whether
3039         readdir returns garbage in d_ino.  Problem reported by Kaz Sasayama in
3040         <http://lists.gnu.org/archive/html/bug-gnulib/2007-05/msg00021.html>.
3041
3042 2007-05-02  Sergey Poznyakoff  <gray@gnu.org.ua>
3043
3044         * lib/argp-help.c (struct hol_entry): New member `ord'.
3045         (HOL_ENTRY_PTRCMP): Use ord for comparison
3046         (hol_sort): Initialize ord.
3047
3048 2007-05-01  Bruno Haible  <bruno@clisp.org>
3049
3050         * doc/functions/_Exit_C99.texi: Renamed from doc/functions/_Exit.texi.
3051         Reported by Eric Blake.
3052         * doc/gnulib.texi (Function Substitutes): Update.
3053
3054 2007-05-01  Bruno Haible  <bruno@clisp.org>
3055
3056         * doc/functions.texi: Remove file, now redundant through
3057         doc/functions/*.texi.
3058
3059 2007-05-01  Bruno Haible  <bruno@clisp.org>
3060
3061         * modules/argp (Depends-on): Add sleep.
3062
3063 2007-05-01  Bruno Haible  <bruno@clisp.org>
3064
3065         * modules/sleep-tests: New file.
3066         * tests/test-sleep.c: New file.
3067
3068         * modules/sleep: New file.
3069         * lib/sleep.c: New file.
3070         * m4/sleep.m4: New file.
3071         * lib/unistd_.h (sleep): New declaration.
3072         * m4/unistd_h.m4 (gl_UNISTD_H_DEFAULTS): Initialize GNULIB_SLEEP,
3073         HAVE_SLEEP.
3074         * modules/unistd (Makefile.am): Substitute GNULIB_SLEEP, HAVE_SLEEP.
3075         * doc/functions/sleep.texi: Document the sleep module.
3076
3077 2007-05-01  Bruno Haible  <bruno@clisp.org>
3078
3079         * lib/sigprocmask.h: Remove file.
3080         * lib/signal_.h: Incorporate the previous contents of sigprocmask.h.
3081         * lib/sigprocmask.c: Include <signal.h> instead of sigprocmask.h.
3082         * m4/signal_h.m4 (gl_SIGNAL_H_DEFAULTS): Substitute GNULIB_SIGPROCMASK,
3083         HAVE_POSIX_SIGNALBLOCKING, HAVE_SIGSET_T.
3084         * m4/signalblocking.m4 (gl_SIGNALBLOCKING): Require
3085         gl_SIGNAL_H_DEFAULTS. Set HAVE_POSIX_SIGNALBLOCKING as a shell variable.
3086         (gl_PREREQ_SIGPROCMASK): Require gl_SIGNAL_H_DEFAULTS. Set
3087         HAVE_SIGSET_T as a shell variable.
3088         * modules/signal (Makefile.am): Substitute GNULIB_SIGPROCMASK,
3089         HAVE_POSIX_SIGNALBLOCKING, HAVE_SIGSET_T into signal.h.
3090         * modules/sigprocmask (Files): Remove lib/sigprocmask.h.
3091         (Depends-on): Add signal. Remove verify.
3092         (configure.ac): Invoke gl_SIGNAL_MODULE_INDICATOR.
3093         (Include): Mention <signal.h> instead of sigprocmask.h.
3094         * NEWS: Mention the change.
3095         * lib/fatal-signal.c: Don't include sigprocmask.h.
3096
3097 2007-05-01  Bruno Haible  <bruno@clisp.org>
3098
3099         * modules/signal: New file.
3100         * lib/signal_.h: New file.
3101         * m4/signal_h.m4: New file.
3102
3103 2007-05-01  Bruno Haible  <bruno@clisp.org>
3104
3105         * lib/wctype_.h: Test HAVE_ISWCNTRL at configure time.
3106         * m4/wctype.m4 (gl_WCTYPE_H): Substitute HAVE_ISWCNTRL.
3107         * modules/wctype (Makefile.am): Substitute HAVE_ISWCNTRL instead of
3108         HAVE_WCTYPE_CTMP_BUG into wctype.h.
3109
3110 2007-05-01  Bruno Haible  <bruno@clisp.org>
3111
3112         * lib/sys_stat_.h: Test HAVE_LSTAT, HAVE_DECL_MKDIR, HAVE_IO_H at
3113         configure time.
3114         * m4/sys_stat_h.m4 (gl_HEADER_SYS_STAT_H): Substitute HAVE_LSTAT,
3115         HAVE_DECL_MKDIR, HAVE_IO_H via AC_SUBST.
3116         * modules/sys_stat (Makefile.am): Substitute their values into
3117         sys/stat.h.
3118
3119 2007-05-01  Bruno Haible  <bruno@clisp.org>
3120
3121         * lib/glob_.h: Test HAVE_SYS_CDEFS_H at configure time.
3122         * m4/glob.m4 (gl_PREREQ_GLOB): Substitute HAVE_SYS_CDEFS_H via AC_SUBST.
3123         * modules/glob (Makefile.am): Put HAVE_SYS_CDEFS_H value into glob.h.
3124
3125 2007-05-01  Bruno Haible  <bruno@clisp.org>
3126
3127         * doc/header/assert.texi: Undo last change: don't mention the gnulib
3128         'assert' module here.
3129
3130 2007-05-01  Bruno Haible  <bruno@clisp.org>
3131
3132         * doc/functions/*.texi: New files.
3133         * doc/functions/google-ranking.txt: New file.
3134         * doc/gnulib.texi (Function Substitutes): New chapter.
3135         (ctime, inet_ntoa): Remove sections.
3136         * doc/ctime.texi: Remove file.
3137         * doc/inet_ntoa.texi: Remove file.
3138         * doc/Makefile (gnulib.info, gnulib.html, gnulib.dvi): Update
3139         dependencies.
3140         (%.info): New rule, specifying a --reference-limit.
3141
3142 2007-05-01  Bruno Haible  <bruno@clisp.org>
3143
3144         * MODULES.html.sh (posix_functions): Remove 'exec', 'toc'.
3145
3146 2007-05-01  Bruno Haible  <bruno@clisp.org>
3147
3148         * modules/mkdir (Depends-on): Add sys_stat, because sys_stat provides
3149         the portability of 'mkdir' to mingw systems.
3150
3151 2007-05-01  Bruno Haible  <bruno@clisp.org>
3152
3153         * doc/headers/google-ranking.txt: New file.
3154
3155 2007-04-30  Eric Blake  <ebb9@byu.net>
3156
3157         Prefer fseeko to fseek.
3158         * modules/getpass (Depends-on): Add fseeko.
3159         * lib/getpass.c (getpass): Use fseeko, not fseek.
3160
3161 2007-04-30  Sergey Poznyakoff  <gray@gnu.org.ua>
3162
3163         * lib/argp-help.c (hol_entry_cmp): Option sorting algorithm
3164         assumes the sorting is stable, while most qsort implementations
3165         are not.  Use argument addresses to ensure they never compare as
3166         equal.
3167
3168         * tests/test-argp-2.sh (usage-indent test): Fix output
3169         (func_compare): Restore diff options
3170         * tests/test-argp.c: Restore #include "progname.h"
3171
3172 2007-04-29  Bruno Haible  <bruno@clisp.org>
3173
3174         * m4/printf.m4 (gl_VSNPRINTF_ZEROSIZE_C99): New macro.
3175         * m4/snprintf-posix.m4 (gl_FUNC_SNPRINTF_POSIX): Invoke
3176         gl_VSNPRINTF_ZEROSIZE_C99. Test gl_cv_func_vsnprintf_zerosize_c99.
3177         * m4/vsnprintf-posix.m4 (gl_FUNC_VSNPRINTF_POSIX): Likewise.
3178         * modules/snprintf-posix-tests (Files): Add tests/test-snprintf.c.
3179         (configure.ac): Define CHECK_SNPRINTF_POSIX.
3180         (TESTS, check_PROGRAMS): Add test-snprintf.
3181         * modules/vsnprintf-posix-tests (Files): Add tests/test-vsnprintf.c.
3182         (configure.ac): Define CHECK_VSNPRINTF_POSIX.
3183         (TESTS, check_PROGRAMS): Add test-vsnprintf.
3184         * tests/test-snprintf.c (main) [!CHECK_SNPRINTF_POSIX]: Disable
3185         assertions that fail on HP-UX, OSF/1, or IRIX.
3186         * tests/test-vsnprintf.c (main) [!CHECK_VSNPRINTF_POSIX]: Likewise.
3187
3188 2007-04-29  Bruno Haible  <bruno@clisp.org>
3189
3190         * MODULES.html.sh (posix_functions): Remove 'contents'.
3191
3192 2007-04-29  Karl Berry  <karl@gnu.org>
3193
3194         * config/srclist.txt (gendocs_template_min): new entry.
3195
3196 2007-04-29  Bruno Haible  <bruno@clisp.org>
3197
3198         Work around fpurge bug on BSD systems.
3199         * modules/fpurge (Makefile.am): Compile fpurge.c unconditionally.
3200         * m4/fpurge.m4 (gl_FUNC_FPURGE): Don't invoke AC_LIBOBJ.
3201         * lib/fpurge.h (fpurge): Don't handle __fpurge wrapper here. Define
3202         fpurge to rpl_fpurge if the system already has this function.
3203         * lib/fpurge.c (fpurge): Handle also the __fpurge wrapper case and
3204         the case where the system already has this function. Correct invariants
3205         on BSD systems.
3206         * lib/fseeko.c (rpl_fseeko): Update recognition of preceding fflush on
3207         BSD systems.
3208
3209 2007-04-29  Sergey Poznyakoff  <gray@gnu.org.ua>
3210
3211         * lib/argp-help.c (hol_cluster_cmp): Reverse comparison.  Change
3212         proposed by Sven Verdoolaege.
3213
3214         * tests/test-argp.c: Fix option ordering.  Test deeply clustered
3215         options.
3216         * tests/test-argp-2.sh (func_compare): Use diff instead of cmp.
3217         (usage and help tests): Update
3218
3219 2007-04-29  Bruno Haible  <bruno@clisp.org>
3220
3221         * tests/test-fflush.c (main): Use a file of size 17, not 10.
3222         Print more information in case of failure. Disable a test on BeOS.
3223
3224 2007-04-29  Bruno Haible  <bruno@clisp.org>
3225
3226         * tests/**/test-*.[hc] (ASSERT): Use fprintf to show the line number.
3227         This helps debugging on systems on which no gdb is available.
3228
3229 2007-04-29  Bruno Haible  <bruno@clisp.org>
3230
3231         * lib/freading.h: Improve comments.
3232         * lib/fwriting.h: Likewise.
3233         * tests/test-freading.c (main): Don't check freading immediately after
3234         repositioning. Needed for glibc.
3235
3236 2007-04-29  Bruno Haible  <bruno@clisp.org>
3237
3238         * lib/freading.c (freading): Trivial simplification.
3239
3240 2007-04-28  Bruno Haible  <bruno@clisp.org>
3241
3242         * tests/test-fwriting.c (main): Also test the interaction between
3243         fflush and fwriting.
3244         * modules/fwriting-tests (Depends-on): Add fflush.
3245
3246         * tests/test-freading.c (main): Also test the interaction between
3247         fflush and freading.
3248         * modules/freading-tests (Depends-on): Add fflush.
3249
3250 2007-04-28  Bruno Haible  <bruno@clisp.org>
3251
3252         * lib/stdio_.h (fseek, ftell): Provide link warnings suggesting to use
3253         fseeko and ftello.
3254         Suggested by Eric Blake.
3255
3256 2007-04-28  Jim Meyering  <jim@meyering.net>
3257
3258         Avoid false-negative in gl_STDINT_H's C99 conformance test.
3259         * m4/stdint.m4 (gl_STDINT_H): When checking whether stdint.h conforms
3260         to C99, include all of gl_STDINT_INCLUDES, not just <stddef.h>.
3261
3262 2007-04-27  Eric Blake  <ebb9@byu.net>
3263
3264         * doc/headers/assert.texi (assert.h): Document assert module use.
3265
3266 2007-04-27  Bruno Haible  <bruno@clisp.org>
3267
3268         * doc/headers/*.texi: New files.
3269         * doc/gnulib.texi (Header File Substitutes): New chapter.
3270         * doc/Makefile (gnulib.info, gnulib.html, gnulib.dvi): Specify
3271         dependencies.
3272         (standards.info ,standards.html, standards.dvi): Update dependencies.
3273         (mostlyclean, clean): New targets.
3274
3275 2007-04-27  Bruno Haible  <bruno@clisp.org>
3276
3277         * lib/sysexits_.h: Renamed from lib/sysexit_.h.
3278         * modules/sysexits (Files, Makefile.am): Update.
3279
3280         * lib/sys_socket_.h: Renamed from lib/socket_.h.
3281         * modules/sys_socket (Files, Makefile.am): Update.
3282
3283         * lib/sys_stat_.h: Renamed from lib/stat_.h.
3284         * modules/sys_stat (Files, Makefile.am): Update.
3285
3286 2007-04-27  Eric Blake  <ebb9@byu.net>
3287
3288         * lib/freading.h: Improve comments.
3289         * lib/fwriting.h: Likewise.
3290         * lib/fflush.c: Likewise.
3291
3292         Fix closein for mingw.
3293         * modules/closein-tests: Add tests for closein.
3294         * tests/test-closein.c: New file.
3295         * tests/test-closein.sh: Likewise.
3296         * lib/unistd_.h [!SEEK_CUR]: Mingw also needs stdlib.h for _exit.
3297         * lib/closein.c (close_stdin): Don't fflush non-seekable streams.
3298
3299 2007-04-27  Bruno Haible  <bruno@clisp.org>
3300
3301         * lib/inttypes_.h [_DECC]: Don't use #include_next if the compiler
3302         version is < 6.
3303         * lib/math_.h [__DECC]: Likewise.
3304         * lib/stdio_.h [__DECC]: Likewise.
3305         * lib/stdlib_.h [__DECC]: Likewise.
3306         * lib/string_.h [__DECC]: Likewise.
3307         * lib/time_.h [__DECC]: Likewise.
3308         * lib/wchar_.h [__DECC]: Likewise.
3309         * lib/wctype_.h [__DECC]: Likewise.
3310
3311 2007-04-27  Bruno Haible  <bruno@clisp.org>
3312
3313         * tests/test-fbufmode.c (main): Relax test, to avoid failure on mingw.
3314
3315 2007-04-27  Bruno Haible  <bruno@clisp.org>
3316
3317         * lib/fflush.c: Add comments.
3318         * modules/fpurge-tests (Depends-on): Add fflush.
3319         * modules/freadable-tests (Depends-on): Likewise.
3320         * modules/fwritable-tests (Depends-on): Likewise.
3321
3322 2007-04-27  Charles Wilson  <libtool@cwilson.fastmail.fm>
3323
3324         * m4/argz.m4 (gl_FUNC_ARGZ): Use !HAVE_WORKING_ARGZ instead of
3325         SYSTEM_ARGZ_IS_BROKEN.  Also, minor stylistic improvements.
3326         Report by Bruno Haible <bruno@clisp.org>.
3327
3328 2007-04-26  Eric Blake  <ebb9@byu.net>
3329
3330         Fix fflush on mingw.
3331         * modules/fflush (Depends-on): Add freading.
3332         * lib/fflush.c (rpl_fflush): Use freading to avoid losing buffered
3333         but unread data.
3334
3335 2007-04-26  Eric Blake  <ebb9@byu.net>
3336         and Bruno Haible  <bruno@clisp.org>
3337
3338         Implement freading and fwriting.
3339         * lib/freading.c: New file.
3340         * lib/freading.h: Likewise.
3341         * m4/freading.m4: Likewise.
3342         * modules/freading: Likewise.
3343         * modules/freading-tests: Likewise.
3344         * tests/test-freading.c: Likewise.
3345         * lib/fwriting.c: New file.
3346         * lib/fwriting.h: Likewise.
3347         * m4/fwriting.m4: Likewise.
3348         * modules/fwriting: Likewise.
3349         * modules/fwriting-tests: Likewise.
3350         * tests/test-fwriting.c: Likewise.
3351         * MODULES.html.sh (File stream based Input/Output): Mention them.
3352
3353 2007-04-26  Bruno Haible  <bruno@clisp.org>
3354
3355         * lib/stdio_.h (fseeko, ftello): Check that off_t has the same size as
3356         'long' when we assume it.
3357         Suggested by Eric Blake.
3358
3359 2007-04-26  Bruno Haible  <bruno@clisp.org>
3360
3361         Ensure fseeko, ftello are declared on glibc systems.
3362         * modules/fflush (configure.ac-early): Require AC_FUNC_FSEEKO.
3363         * modules/fseeko (configure.ac-early): Likewise.
3364         * modules/ftello (configure.ac-early): Likewise.
3365         * m4/fflush.m4 (gl_REPLACE_FFLUSH): Don't define HAVE_FSEEKO, rely on
3366         AC_FUNC_FSEEKO for this.
3367         * m4/fseeko.m4 (gl_FUNC_FSEEKO): Inline gl_CHECK_FSEEKO.
3368         (gl_CHECK_FSEEKO): Remove macro.
3369
3370 2007-04-26  Bruno Haible  <bruno@clisp.org>
3371
3372         * tests/test-fflush.c (main): Also check the ftell result after
3373         fflush and fseek/fseeko.
3374         * lib/fflush.c (rpl_fflush): For BSD implementations, update the
3375         file descriptor position cache in the stream.
3376         * lib/fseeko.c (rpl_fseeko): Likewise.
3377
3378 2007-04-26  Bruno Haible  <bruno@clisp.org>
3379
3380         * modules/fflush-tests (Depends-on): Add fseeko.
3381
3382 2007-04-25  Charles Wilson  <libtool@cwilson.fastmail.fm>
3383             Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
3384
3385         * lib/argz_.h: ensure error_t definition is obtained in same
3386         mechanism system argz.h would have.
3387         * m4/argz.m4 (gl_FUNC_ARGZ): add new test to check if $host's
3388         argz facilities are known bad.  Err on the side of caution if
3389         cross-compiling.
3390
3391 2007-04-25  Eric Blake  <ebb9@byu.net>
3392
3393         * lib/fpurge.c (includes): Use stdlib.h for free.
3394         * tests/test-fflush.c (main): Also test fflush-fseeko.
3395
3396 2007-04-25  Bruno Haible  <bruno@clisp.org>
3397
3398         Make fflush+fseek POSIX-compliant on FreeBSD and MacOS X.
3399         * lib/fseeko.c: New file.
3400         * lib/stdio_.h: Include <sys/types.h> when off_t is needed.
3401         (fseeko, fseek): Define to replacements if REPLACE_FFLUSH.
3402         * m4/fseeko.m4 (gl_CHECK_FSEEKO): New macro, extracted from
3403         gl_FUNC_FSEEKO.
3404         (gl_FUNC_FSEEKO): Invoke it.
3405         * m4/fflush.m4 (gl_REPLACE_FFLUSH): Arrange to compile fseeko.c. Invoke
3406         gl_CHECK_FSEEKO. Define HAVE_FSEEKO.
3407         * modules/fflush (Files): Add lib/fseeko.c, m4/fseeko.m4.
3408
3409 2007-04-25  Bruno Haible  <bruno@clisp.org>
3410
3411         * modules/fflush (Depends-on): Add ftello.
3412
3413 2007-04-25  Bruno Haible  <bruno@clisp.org>
3414
3415         * modules/ftello-tests: New file.
3416         * tests/test-ftello.c: New file.
3417
3418         * modules/ftello: New file.
3419         * m4/ftello.m4: New file.
3420         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Set also GNULIB_FTELLO,
3421         HAVE_FTELLO.
3422         * lib/stdio_.h (ftello): New declaration.
3423         * modules/stdio (Makefile.am): Substitute also GNULIB_FTELLO,
3424         HAVE_FTELLO.
3425
3426 2007-04-25  Bruno Haible  <bruno@clisp.org>
3427
3428         * modules/fseeko-tests: New file.
3429         * tests/test-fseeko.c: New file.
3430
3431         * modules/fseeko: New file.
3432         * m4/fseeko.m4: New file.
3433         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Set also GNULIB_FSEEKO,
3434         HAVE_FSEEKO.
3435         * lib/stdio_.h (fseeko): New declaration.
3436         * modules/stdio (Makefile.am): Substitute also GNULIB_FSEEKO,
3437         HAVE_FSEEKO.
3438
3439 2007-04-25  Bruno Haible  <bruno@clisp.org>
3440
3441         * lib/stdio_.h (fflush): Add support for GNULIB_POSIXCHECK.
3442
3443 2007-04-25  Bruno Haible  <bruno@clisp.org>
3444
3445         * lib/unistd_.h: Include <stdio.h> if needed to get the SEEK_* macros.
3446         * tests/test-stdio.c: Check that the various SEEK_* macros are defined.
3447         * tests/test-unistd.c: Likewise.
3448         * tests/test-fcntl.c: Likewise.
3449
3450 2007-04-23  Eric Blake  <ebb9@byu.net>
3451
3452         * lib/fflush.c: Fix missing include.
3453         Reported by Bruno Haible.
3454
3455 2007-04-23  Bruno Haible  <bruno@clisp.org>
3456
3457         * lib/fpurge.c (fpurge) [glibc, BSD]: Free a malloc()ed ungetc buffer.
3458         Reported by Eric Blake.
3459
3460 2007-04-23  Bruno Haible  <bruno@clisp.org>
3461
3462         * lib/fbufmode.c (fbufmode): Port to Solaris/SPARC64.
3463
3464 2007-04-23  Bruno Haible  <bruno@clisp.org>
3465
3466         * lib/fseterr.c (fseterr): Don't hardcode the value of _IOERR.
3467
3468 2007-04-23  Bruno Haible  <bruno@clisp.org>
3469
3470         * tests/test-fbufmode.c (main): Be prepared to a failure of setvbuf.
3471         Needed on HP-UX 11.
3472
3473 2007-04-16  Eric Blake  <ebb9@byu.net>
3474
3475         Make fflush rely on fpurge.
3476         * lib/fflush.c (rpl_fflush): Rely on fpurge module, rather than
3477         open coding all variants.
3478         * modules/fflush (Depends-on): Add fpurge and unistd.
3479         * modules/fflush-tests (Depends-on): Unistd is no longer extra.
3480         * m4/fflush.m4 (gl_REPLACE_FFLUSH): Simplify.
3481
3482         Fix --with-tests compilation on cygwin.
3483         * modules/argmatch-tests (Makefile.am): List gnulib library first
3484         in LDADD.
3485         * modules/argp-tests (Makefile.am): Likewise.
3486         * modules/array-list-tests (Makefile.am): Likewise.
3487         * modules/array-oset-tests (Makefile.am): Likewise.
3488         * modules/avltree-list-tests (Makefile.am): Likewise.
3489         * modules/avltree-oset-tests (Makefile.am): Likewise.
3490         * modules/avltreehash-list-tests (Makefile.am): Likewise.
3491         * modules/carray-list-tests (Makefile.am): Likewise.
3492         * modules/dirname-tests (Makefile.am): Likewise.
3493         * modules/frexp-tests (Makefile.am): Likewise.
3494         * modules/isnanl-tests (Makefile.am): Likewise.
3495         * modules/linked-list-tests (Makefile.am): Likewise.
3496         * modules/linkedhash-list-tests (Makefile.am): Likewise.
3497         * modules/lock-tests (Makefile.am): Likewise.
3498         * modules/rbtree-list-tests (Makefile.am): Likewise.
3499         * modules/rbtree-oset-tests (Makefile.am): Likewise.
3500         * modules/rbtreehash-list-tests (Makefile.am): Likewise.
3501         * modules/tls-tests (Makefile.am): Likewise.
3502         * modules/tsearch-tests (Makefile.am): Likewise.
3503         * modules/xvasprintf-tests (Makefile.am): Likewise.
3504
3505         Fix fpurge for cygwin.
3506         * lib/fpurge.c (fpurge): Fix order of operation flub, and return a
3507         value.
3508         * modules/fpurge-tests (Depends-on): Clean up trash.
3509
3510 2007-04-16  Simon Josefsson  <simon@josefsson.org>
3511
3512         * lib/gc-libgcrypt.c (gc_hash_open): Shut up compiler warnings.
3513
3514         * m4/autobuild.m4: Re-indent.
3515
3516 2007-04-13  Bruno Haible  <bruno@clisp.org>
3517
3518         * modules/fpurge-tests: New file.
3519         * tests/test-fpurge.c: New file.
3520
3521         * modules/fpurge: New file.
3522         * lib/fpurge.h: New file.
3523         * lib/fpurge.c: New file.
3524         * m4/fpurge.m4: New file.
3525
3526 2007-04-13  Bruno Haible  <bruno@clisp.org>
3527
3528         * modules/fbufmode-tests: New file.
3529         * tests/test-fbufmode.c: New file.
3530
3531         * modules/fbufmode: New file.
3532         * lib/fbufmode.h: New file.
3533         * lib/fbufmode.c: New file.
3534         * m4/fbufmode.m4: New file.
3535
3536 2007-04-13  Bruno Haible  <bruno@clisp.org>
3537
3538         * modules/fwritable-tests: New file.
3539         * tests/test-fwritable.c: New file.
3540
3541         * modules/fwritable: New file.
3542         * lib/fwritable.h: New file.
3543         * lib/fwritable.c: New file.
3544         * m4/fwritable.m4: New file.
3545
3546 2007-04-13  Bruno Haible  <bruno@clisp.org>
3547
3548         * modules/freadable-tests: New file.
3549         * tests/test-freadable.c: New file.
3550
3551         * modules/freadable: New file.
3552         * lib/freadable.h: New file.
3553         * lib/freadable.c: New file.
3554         * m4/freadable.m4: New file.
3555
3556 2007-04-13  Bruno Haible  <bruno@clisp.org>
3557
3558         * modules/fflush-tests (Makefile.am): Remove EXTRA_DIST. Augment
3559         MOSTLYCLEANFILES.
3560
3561 2007-04-13  Paul Eggert  <eggert@cs.ucla.edu>
3562
3563         * build-aux/bootstrap (gnulib_tool_option_extras): New var, used by
3564         gzip bootstrap.conf to avoid dragging in i18n machinery.
3565         (gnulib_tool_option): Use it.
3566
3567 2007-04-13  Bruno Haible  <bruno@clisp.org>
3568
3569         * tests/test-vasnprintf-posix.c (test_function): Add tests for %f and
3570         %F directives.
3571         * tests/test-vasprintf-posix.c (test_function): Likewise.
3572         * tests/test-snprintf-posix.h (test_function): Likewise.
3573         * tests/test-sprintf-posix.h (test_function): Likewise.
3574         * tests/test-fprintf-posix.h (test_function): Likewise.
3575         * tests/test-printf-posix.h (test_function): Likewise.
3576         * tests/test-fprintf-posix.out: Likewise.
3577
3578 2007-04-13  Bruno Haible  <bruno@clisp.org>
3579
3580         * modules/lock-tests (configure.ac): For LIBSCHED, try also -lposix4.
3581         * modules/tls-tests (configure.ac): Likewise.
3582         Reported by Arto C. Nirkko <anirkko@insel.ch>.
3583
3584 2007-04-13  Bruno Haible  <bruno@clisp.org>
3585
3586         * lib/tls.c (glthread_tls_get): Fix return type.
3587         Patch by Arto C. Nirkko <anirkko@insel.ch>.
3588
3589 2007-04-12  Eric Blake  <ebb9@byu.net>
3590
3591         * modules/gettime (Depends-on): Remove gettime.
3592         Reported by Dmitry V. Levin.
3593
3594 2007-04-12  Bruno Haible  <bruno@clisp.org>
3595
3596         * modules/fflush (Include): Mention <stdio.h>.
3597         * modules/strtoimax (Include): Mention <inttypes.h>.
3598         * modules/strtoumax (Include): Likewise.
3599
3600 2007-04-12  Eric Blake  <ebb9@byu.net>
3601
3602         * .cvsignore: New file.
3603         * .gitignore: Likewise.
3604
3605 2007-04-12  Bruno Haible  <bruno@clisp.org>
3606
3607         * modules/iconv-tests (test_iconv_LDADD): Mention -liconv after LDADD,
3608         not before, since $(LDADD) often contains libgnu.a.
3609         * modules/striconv-tests (test_striconv_LDADD): Likewise.
3610         * modules/striconveh-tests (test_striconveh_LDADD): Likewise.
3611         * modules/striconveha-tests (test_striconveha_LDADD): Likewise.
3612         Needed on Cygwin.
3613
3614 2007-04-12  Eric Blake  <ebb9@byu.net>
3615
3616         Work around glibc's failure to flush stdin on fclose.
3617         * lib/closein.c (close_stdin): Flush stdin before closing.
3618
3619         Work around glibc's failure to reset seekable stdin on exit.
3620         * modules/closein: New module.
3621         * lib/closein.c: New file.
3622         * lib/closein.h: Likewise.
3623         * m4/closein.m4: Likewise.
3624         * MODULES.html.sh (File stream based Input/Output): Document it.
3625
3626 2007-04-12  Simon Josefsson  <simon@josefsson.org>
3627
3628         * gnulib-tool: Rename generated 'autobuild' script to
3629         'do-autobuild' in --create-megatestdir output.
3630
3631         * doc/gnulib.texi (Build robot for gnulib): Fix.
3632
3633 2007-04-12  Simon Josefsson  <simon@josefsson.org>
3634
3635         * modules/sysexits (Depends-on): Add absolute-header.
3636
3637 2007-04-12  Eric Blake  <ebb9@byu.net>
3638
3639         No need to preserve errno on success.
3640         * lib/fflush.c (rpl_fflush): Simplify errno tracking.
3641         Reported by Bruno Haible.
3642
3643 2007-04-12  Simon Josefsson  <simon@josefsson.org>
3644
3645         * MODULES.html.sh (Support for maintaining and releasing
3646         projects): Add autobuild.  Suggested by Eric Blake <ebb9@byu.net>.
3647
3648 2007-04-12  Simon Josefsson  <simon@josefsson.org>
3649
3650         * gnulib-tool (func_modules_add_dummy): Respect --avoid=dummy.
3651
3652 2007-04-12  Simon Josefsson  <simon@josefsson.org>
3653
3654         * modules/autobuild: New module.
3655
3656         * m4/autobuild.m4: New file.
3657
3658 2007-04-11  Bruno Haible  <bruno@clisp.org>
3659
3660         * lib/vasnprintf.c (VASNPRINTF): Implement the %F directive using the
3661         %f directive, if NEED_PRINTF_DIRECTIVE_F is defined.
3662         * m4/printf.m4 (gl_PRINTF_DIRECTIVE_F): New macro.
3663         * m4/vasnprintf.m4 (gl_PREREQ_VASNPRINTF_DIRECTIVE_F): New macro.
3664         * m4/fprintf-posix.m4 (gl_FUNC_FPRINTF_POSIX): Invoke
3665         gl_PRINTF_DIRECTIVE_F. Test gl_cv_func_printf_directive_f. Invoke
3666         gl_PREREQ_VASNPRINTF_DIRECTIVE_F for the replacement.
3667         * m4/snprintf-posix.m4 (gl_FUNC_SNPRINTF_POSIX): Invoke
3668         gl_PRINTF_DIRECTIVE_F. Test gl_cv_func_printf_directive_f. Invoke
3669         gl_PREREQ_VASNPRINTF_DIRECTIVE_F for the replacement.
3670         * m4/sprintf-posix.m4 (gl_FUNC_SPRINTF_POSIX): Invoke
3671         gl_PRINTF_DIRECTIVE_F. Test gl_cv_func_printf_directive_f. Invoke
3672         gl_PREREQ_VASNPRINTF_DIRECTIVE_F for the replacement.
3673         * m4/vasnprintf-posix.m4 (gl_FUNC_VASNPRINTF_POSIX): Invoke
3674         gl_PRINTF_DIRECTIVE_F. Test gl_cv_func_printf_directive_f. Invoke
3675         gl_PREREQ_VASNPRINTF_DIRECTIVE_F for the replacement.
3676         * m4/vasprintf-posix.m4 (gl_FUNC_VASPRINTF_POSIX): Invoke
3677         gl_PRINTF_DIRECTIVE_F. Test gl_cv_func_printf_directive_f. Invoke
3678         gl_PREREQ_VASNPRINTF_DIRECTIVE_F for the replacement.
3679         * m4/vfprintf-posix.m4 (gl_FUNC_VFPRINTF_POSIX): Invoke
3680         gl_PRINTF_DIRECTIVE_F. Test gl_cv_func_printf_directive_f. Invoke
3681         gl_PREREQ_VASNPRINTF_DIRECTIVE_F for the replacement.
3682         * m4/vsnprintf-posix.m4 (gl_FUNC_VSNPRINTF_POSIX): Invoke
3683         gl_PRINTF_DIRECTIVE_F. Test gl_cv_func_printf_directive_f. Invoke
3684         gl_PREREQ_VASNPRINTF_DIRECTIVE_F for the replacement.
3685         * m4/vsprintf-posix.m4 (gl_FUNC_VSPRINTF_POSIX): Invoke
3686         gl_PRINTF_DIRECTIVE_F. Test gl_cv_func_printf_directive_f. Invoke
3687         gl_PREREQ_VASNPRINTF_DIRECTIVE_F for the replacement.
3688         Reported by Eric Blake.
3689
3690 2007-04-11  Bruno Haible  <bruno@clisp.org>
3691
3692         * m4/printf.m4 (gl_PRINTF_DIRECTIVE_A): Fix test. It always failed.
3693
3694 2007-04-10  Bruno Haible  <bruno@clisp.org>
3695
3696         * m4/printf.m4 (gl_PRINTF_DIRECTIVE_A): Add a test for correct result
3697         for NaN and Infinity. Needed on FreeBSD 6.1.
3698         * tests/test-vasnprintf-posix.c (test_function): Undo last change
3699         regarding results for "%010a" of Infinity and NaN.
3700         * tests/test-vasprintf-posix.c (test_function): Likewise.
3701         * tests/test-snprintf-posix.h (test_function): Likewise.
3702         * tests/test-sprintf-posix.h (test_function): Likewise.
3703         * tests/test-fprintf-posix.h (test_function): Likewise.
3704         * tests/test-printf-posix.h (test_function): Likewise.
3705         * tests/test-fprintf-posix.out: Likewise.
3706
3707 2007-04-10  Bruno Haible  <bruno@clisp.org>
3708
3709         * modules/locale-tests: New file.
3710         * tests/test-locale.c: New file.
3711
3712         * modules/locale: New file.
3713         * lib/locale_.h: New file.
3714         * m4/locale_h.m4: New file.
3715
3716 2007-04-10  Paul Eggert  <eggert@cs.ucla.edu>
3717             Bruno Haible  <bruno@clisp.org>
3718
3719         * m4/signbit.m4 (gl_SIGNBIT): When the sign bit position could not
3720         be determined, test for availability of the copysignf, copysign,
3721         copysignl functions.
3722         * lib/signbitf.c (gl_signbitf): Use copysignf if available in libc.
3723         * lib/signbitd.c (gl_signbitd): Use copysign if available in libc.
3724         * lib/signbitl.c (gl_signbitl): Use copysignl if available in libc.
3725
3726 2007-04-09  Eric Blake  <ebb9@byu.net>
3727
3728         * lib/stdio_.h [REPLACE_FFLUSH]: Declare rpl_fflush.
3729         * modules/stdio (Makefile.am): Support fflush.
3730         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Likewise.
3731         * modules/fflush: New file.
3732         * lib/fflush.c: Likewise.
3733         * m4/fflush.m4: Likewise.
3734         * modules/fflush-tests: New test.
3735         * tests/test-fflush.c: Likewise.
3736         * MODULES.html.sh (Input/output <stdio.h>): Document new module.
3737
3738 2007-04-06  Bruno Haible  <bruno@clisp.org>
3739
3740         * lib/vasnprintf.c: Include <math.h>. Don't include float+.h.
3741         (VASNPRINTF): Use signbit for faster determination whether to print a
3742         minus sign.
3743         * modules/vasnprintf (Files): Remove lib/float+.h.
3744         * modules/fprintf-posix (Depends-on): Add signbit.
3745         * modules/snprintf-posix (Depends-on): Likewise.
3746         * modules/sprintf-posix (Depends-on): Likewise.
3747         * modules/vasnprintf-posix (Depends-on): Likewise.
3748         * modules/vasprintf-posix (Depends-on): Likewise.
3749         * modules/vfprintf-posix (Depends-on): Likewise.
3750         * modules/vsnprintf-posix (Depends-on): Likewise.
3751         * modules/vsprintf-posix (Depends-on): Likewise.
3752
3753 2007-04-06  Bruno Haible  <bruno@clisp.org>
3754
3755         * tests/test-frexp.c (main): Test also the sign bit of zero results.
3756         * tests/test-frexpl.c (main): Likewise.
3757         * tests/test-ldexpl.c (main): Likewise.
3758         * modules/frexp-tests (Depends-on): Add signbit.
3759         * modules/frexpl-tests (Depdends-on): Likewise.
3760         * modules/ldexpl-tests (Depdends-on): Likewise.
3761
3762 2007-04-06  Bruno Haible  <bruno@clisp.org>
3763
3764         * modules/signbit-tests: New file.
3765         * tests/test-signbit.c: New file.
3766
3767         * modules/signbit: New file.
3768         * lib/signbitf.c: New file.
3769         * lib/signbitd.c: New file.
3770         * lib/signbitl.c: New file.
3771         * m4/signbit.m4: New file.
3772         * lib/math_.h (gl_signbitf, gl_signbitd, gl_signbitl): New declarations.
3773         (signbit): New macro.
3774         * m4/math_h.m4 (gl_MATH_H_DEFAULTS): Initialize GNULIB_SIGNBIT and
3775         REPLACE_SIGNBIT.
3776         * modules/math (Makefile.am) Substibute also GNULIB_SIGNBIT and
3777         REPLACE_FREXPL into math.h.
3778
3779 2007-04-06  Bruno Haible  <bruno@clisp.org>
3780
3781         * modules/isnanf-nolibm-tests: New file.
3782         * tests/test-isnanf.c: New file.
3783
3784         * modules/isnanf-nolibm: New file.
3785         * lib/isnanf.h: New file.
3786         * lib/isnanf.c: New file.
3787         * lib/isnan.c: Consider the USE_FLOAT macro.
3788         * m4/isnanf.m4: New file.
3789
3790 2007-04-06  Bruno Haible  <bruno@clisp.org>
3791
3792         * modules/gettext-h (configure.ac): AC_SUBST LIBINTL and LTLIBINTL.
3793         (Link): New section.
3794
3795         * modules/canonicalize-lgpl-tests (Makefile.am): Undo last change.
3796
3797 2007-04-06  Bruno Haible  <bruno@clisp.org>
3798
3799         Assume the 'long double' type.
3800         * m4/longdouble.m4: Remove file.
3801         * config/srclist.txt: Don't mention longdouble.m4.
3802         * lib/allocsa.h: Assume HAVE_LONG_DOUBLE to be true.
3803         * lib/float+.h: Likewise.
3804         * lib/frexp.c: Likewise.
3805         * lib/printf-args.h: Likewise.
3806         * lib/printf-args.c: Likewise.
3807         * lib/printf-frexp.c: Likewise.
3808         * lib/printf-parse.c: Likewise.
3809         * lib/vasnprintf.c: Likewise.
3810         * m4/allocsa.m4: Remove gt_TYPE_LONGDOUBLE invocation.
3811         * m4/intl.m4: Likewise.
3812         * m4/isnanl.m4: Likewise.
3813         * m4/printf.m4: Likewise.
3814         * m4/printf-frexpl.m4: Likewise.
3815         * m4/vasnprintf.m4: Likewise.
3816         * modules/allocsa (Files): Remove m4/longdouble.m4.
3817         * modules/gettext (Files): Likewise.
3818         * modules/relocatable-prog-wrapper (Files): Likewise.
3819         * modules/vasnprintf (Files): Likewise.
3820         * modules/isnanl (Files): Likewise.
3821         (Include): Simplify.
3822         * modules/isnanl-nolibm (Files): Remove m4/longdouble.m4.
3823         (Include): Simplify.
3824         * modules/printf-frexpl (Files): Remove m4/longdouble.m4.
3825         (Include): Simplify.
3826         * modules/snprintf-posix-tests (Files): Remove m4/longdouble.m4.
3827         (configure.ac): Remove gt_TYPE_LONGDOUBLE invocation.
3828         * modules/sprintf-posix-tests (Files): Remove m4/longdouble.m4.
3829         (configure.ac): Remove gt_TYPE_LONGDOUBLE invocation.
3830         * modules/vasnprintf-posix-tests (Files): Remove m4/longdouble.m4.
3831         (configure.ac): Remove gt_TYPE_LONGDOUBLE invocation.
3832         * modules/vasprintf-posix-tests (Files): Remove m4/longdouble.m4.
3833         (configure.ac): Remove gt_TYPE_LONGDOUBLE invocation.
3834         * modules/vsnprintf-posix-tests (Files): Remove m4/longdouble.m4.
3835         (configure.ac): Remove gt_TYPE_LONGDOUBLE invocation.
3836         * modules/vsprintf-posix-tests (Files): Remove m4/longdouble.m4.
3837         (configure.ac): Remove gt_TYPE_LONGDOUBLE invocation.
3838         * tests/test-isnanl-nolibm.c: Assume HAVE_LONG_DOUBLE to be true.
3839         * tests/test-isnanl.c: Likewise.
3840         * tests/test-snprintf-posix.h: Likewise.
3841         * tests/test-sprintf-posix.h: Likewise.
3842         * tests/test-vasnprintf-posix.c: Likewise.
3843         * tests/test-vasnprintf-posix2.c: Likewise.
3844         * tests/test-vasprintf-posix.c: Likewise.
3845
3846 2007-04-06  Bruno Haible  <bruno@clisp.org>
3847
3848         Fix problem with Compaq (ex-DEC) Desktop C compiler on Tru64.
3849         * lib/math_.h [__DECC]: Include the overridden include file through
3850         #include_next, outside the double-inclusion guard.
3851         * lib/stdio_.h [__DECC]: Likewise.
3852         * lib/stdlib_.h [__DECC]: Likewise.
3853         * lib/string_.h [__DECC]: Likewise.
3854         * lib/time_.h [__DECC]: Likewise.
3855         * lib/wchar_.h [__DECC]: Likewise.
3856         * lib/wctype_.h [__DECC]: Likewise.
3857         * lib/inttypes_.h [__DECC]: Likewise.
3858         Reported by Albert Chin <china@thewrittenword.com> in
3859         <http://lists.gnu.org/archive/html/bug-gnulib/2007-04/msg00088.html>.
3860
3861 2007-04-04  Eric Blake  <ebb9@byu.net>
3862
3863         * m4/stdint.m4 (gl_STDINT_H): Detect WINT_MAX bug in cygwin
3864         1.5.x.
3865
3866 2007-04-04  Bruno Haible  <bruno@clisp.org>
3867
3868         * m4/printf.m4 (gl_PRINTF_DIRECTIVE_A): Add a test for correct
3869         rounding. Don't assume that FreeBSD 6 and NetBSD 4 pass this test.
3870
3871 2007-04-04  Bruno Haible  <bruno@clisp.org>
3872
3873         * tests/test-vasnprintf-posix.c (test_function): Allow two possible
3874         results for "%010a" of Infinity and NaN.
3875         * tests/test-vasprintf-posix.c (test_function): Likewise.
3876         * tests/test-snprintf-posix.h (test_function): Likewise.
3877         * tests/test-sprintf-posix.h (test_function): Likewise.
3878         * tests/test-fprintf-posix.h (test_function): Remove these tests.
3879         * tests/test-printf-posix.h (test_function): Likewise.
3880         * tests/test-fprintf-posix.out: Update.
3881         Needed for FreeBSD 6.1.
3882
3883 2007-04-04  Bruno Haible  <bruno@clisp.org>
3884
3885         * DEPENDENCIES: Remove mentions of tar and gzip, since they are not
3886         directly used by the gnulib modules nor by gnulib-tool.
3887
3888 2007-04-04  Paul Eggert  <eggert@cs.ucla.edu>
3889
3890         * DEPENDENCIES: Give overall description of version dependency
3891         desirability.  Use more-typical names for apps.
3892         Add shell, coreutils, diffutils, grep, tar, gzip.
3893
3894 2007-04-04  Simon Josefsson  <simon@josefsson.org>
3895
3896         * MODULES.html.sh: Rename crypto modules.  Remove iconvme.
3897
3898 2007-04-04  Karl Berry  <karl@gnu.org>
3899
3900         * MODULES.html.sh (func_module): missing '.
3901
3902 2007-04-03  Bruno Haible  <bruno@clisp.org>
3903
3904         * modules/argmatch-tests (Makefile.am): New variable
3905         test_argmatch_LDADD.
3906         * modules/argp-tests (Makefile.am): New variable test_argp_LDADD.
3907         * modules/array-list-tests (Makefile.am): New variable
3908         test_array_list_LDADD.
3909         * modules/array-oset-tests (Makefile.am): New variable
3910         test_array_oset_LDADD.
3911         * modules/avltree-list-tests (Makefile.am): New variable
3912         test_avltree_list_LDADD.
3913         * modules/avltree-oset-tests (Makefile.am): New variable
3914         test_avltree_oset_LDADD.
3915         * modules/avltreehash-list-tests (Makefile.am): New variable
3916         test_avltreehash_list_LDADD.
3917         * modules/canonicalize-lgpl-tests (Makefile.am): New variable
3918         test_canonicalize_lgpl_LDADD.
3919         * modules/carray-list-tests (Makefile.am): New variable
3920         test_carray_list_LDADD.
3921         * modules/dirname-tests (Makefile.am): New variable
3922         test_dirname_LDADD.
3923         * modules/linked-list-tests (Makefile.am): New variable
3924         test_linked_list_LDADD.
3925         * modules/linkedhash-list-tests (Makefile.am): New variable
3926         test_linkedhash_list_LDADD.
3927         * modules/rbtree-list-tests (Makefile.am): New variable
3928         test_rbtree_list_LDADD.
3929         * modules/rbtree-oset-tests (Makefile.am): New variable
3930         test_rbtree_oset_LDADD.
3931         * modules/rbtreehash-list-tests (Makefile.am): New variable
3932         test_rbtreehash_list_LDADD.
3933         * modules/xvasprintf-tests (Makefile.am): New variable
3934         test_xvasprintf_LDADD.
3935         Reported by Eric Blake.
3936
3937 2007-04-03  Eric Blake  <ebb9@byu.net>
3938
3939         * DEPENDENCIES: Weaken m4 requirements.
3940
3941 2007-04-03  Bruno Haible  <bruno@clisp.org>
3942
3943         * modules/frexp-tests (configure.ac): Remove AC_SUBST.
3944         * modules/isnanl-tests (configure.ac): Likewise.
3945
3946 2007-04-03  Ben Pfaff  <blp@gnu.org>
3947
3948         * modules/iconv_open: Add $(srcdir)/ to source directory
3949         references in Makefile fragments that call gperf, to fix VPATH
3950         builds.
3951
3952 2007-04-03  Bruno Haible  <bruno@clisp.org>
3953
3954         * modules/ldexpl (Depends-on): Add isnanl, remove isnanl-nolibm.
3955         * lib/ldexpl.c: Undo last change.
3956
3957 2007-04-03  Bruno Haible  <bruno@clisp.org>
3958
3959         * modules/printf-frexpl (Depends-on): Undo last change.
3960         (Files): Add m4/ldexpl.m4.
3961
3962 2007-04-03  Bruno Haible  <bruno@clisp.org>
3963
3964         * m4/isnanl.m4 (gl_FUNC_ISNANL): Substitute ISNANL_LIBM.
3965         * modules/isnanl (Link): New section.
3966
3967         * m4/frexp.m4 (gl_FUNC_FREXP): Substitute FREXP_LIBM.
3968         * modules/frexp (Link): New section.
3969
3970         * m4/frexpl.m4 (gl_FUNC_FREXPL): Substitute FREXPL_LIBM.
3971         * modules/frexpl (Link): New section.
3972
3973         * m4/ldexpl.m4 (gl_FUNC_LDEXPL): Substitute LDEXPL_LIBM.
3974         * modules/ldexpl (Link): New section.
3975
3976 2007-04-03  Bruno Haible  <bruno@clisp.org>
3977
3978         * modules/TEMPLATE-EXTENDED: New file.
3979         * gnulib-tool (func_all_modules, func_verify_module): Exclude it.
3980
3981 2007-04-03  Bruno Haible  <bruno@clisp.org>
3982
3983         * DEPENDENCIES: New file.
3984         Suggested by Simon Josefsson.
3985
3986 2007-04-03  Bruno Haible  <bruno@clisp.org>
3987
3988         * doc/gnulib.texi: Escape @.
3989
3990 2007-04-03  James Youngman  <jay@gnu.org>
3991         and Paul Eggert  <eggert@cs.ucla.edu>
3992
3993         * lib/stat-time.h (get_stat_birthtime): Check for zero-valued
3994         birthtime on all systems that have birthtime, not just those which
3995         use st_birthtimensec rather than st_birthtim.  Putting zero in
3996         st_birthtim.tv_sec is how (for example) FreeBSD/x86 6.1 indicates
3997         that the birth time is not available for files on an NFS mount.
3998
3999 2007-04-03  Simon Josefsson  <simon@josefsson.org>
4000
4001         * modules/memxor: Move back from crypto/, suggested by Bruno.
4002         * modules/crypto/hmac-sha1: Fix memxor dependency.
4003
4004         * modules/crypto/gc: Moved from ../.
4005
4006 2007-04-02  Eric Blake  <ebb9@byu.net>
4007
4008         * lib/ldexpl.c (includes): Avoid libm.
4009
4010         * modules/printf-frexpl (Depends-on): Depend on ldexpl.
4011
4012 2007-04-02  Bruno Haible  <bruno@clisp.org>
4013
4014         * lib/sysexit_.h (EX_OK): Disable the EX_OK definition from <unistd.h>
4015         on IRIX.
4016
4017 2007-04-02  Bruno Haible  <bruno@clisp.org>
4018
4019         * m4/intdiv0.m4 (gt_INTDIV0): Avoid performing the test for real on
4020         x86 or x86_64 platforms running MacOS X.
4021         Reported by Ryan Schmidt <@ryandesign.com>.
4022
4023 2007-04-02  Bruno Haible  <bruno@clisp.org>
4024
4025         * m4/intdiv0.m4 (gt_INTDIV0): When cross-compiling, treat x86_64 like
4026         i386.
4027
4028 2007-04-01  Simon Josefsson  <simon@josefsson.org>
4029
4030         * modules/crypto/arcfour: Moved from ../.
4031         * modules/crypto/arcfour-tests: Moved from ../.
4032         * modules/crypto/arctwo: Moved from ../.
4033         * modules/crypto/arctwo-tests: Moved from ../.
4034         * modules/crypto/des: Moved from ../.
4035         * modules/crypto/des-tests: Moved from ../.
4036         * modules/crypto/gc-arcfour: Moved from ../.
4037         * modules/crypto/gc-arcfour-tests: Moved from ../.
4038         * modules/crypto/gc-arctwo: Moved from ../.
4039         * modules/crypto/gc-arctwo-tests: Moved from ../.
4040         * modules/crypto/gc-des: Moved from ../.
4041         * modules/crypto/gc-des-tests: Moved from ../.
4042         * modules/crypto/gc-hmac-md5: Moved from ../.
4043         * modules/crypto/gc-hmac-md5-tests: Moved from ../.
4044         * modules/crypto/gc-hmac-sha1: Moved from ../.
4045         * modules/crypto/gc-hmac-sha1-tests: Moved from ../.
4046         * modules/crypto/gc-md2: Moved from ../.
4047         * modules/crypto/gc-md2-tests: Moved from ../.
4048         * modules/crypto/gc-md4: Moved from ../.
4049         * modules/crypto/gc-md4-tests: Moved from ../.
4050         * modules/crypto/gc-md5: Moved from ../.
4051         * modules/crypto/gc-md5-tests: Moved from ../.
4052         * modules/crypto/gc-pbkdf2-sha1: Moved from ../.
4053         * modules/crypto/gc-pbkdf2-sha1-tests: Moved from ../.
4054         * modules/crypto/gc-random: Moved from ../.
4055         * modules/crypto/gc-rijndael: Moved from ../.
4056         * modules/crypto/gc-rijndael-tests: Moved from ../.
4057         * modules/crypto/gc-sha1: Moved from ../.
4058         * modules/crypto/gc-sha1-tests: Moved from ../.
4059         * modules/crypto/gc-tests: Moved from ../.
4060         * modules/crypto/hmac-md5: Moved from ../.
4061         * modules/crypto/hmac-md5-tests: Moved from ../.
4062         * modules/crypto/hmac-sha1: Moved from ../.
4063         * modules/crypto/hmac-sha1-tests: Moved from ../.
4064         * modules/crypto/md2: Moved from ../.
4065         * modules/crypto/md2-tests: Moved from ../.
4066         * modules/crypto/md4: Moved from ../.
4067         * modules/crypto/md4-tests: Moved from ../.
4068         * modules/crypto/md5: Moved from ../.
4069         * modules/crypto/md5-tests: Moved from ../.
4070         * modules/crypto/memxor: Moved from ../.
4071         * modules/crypto/rijndael: Moved from ../.
4072         * modules/crypto/rijndael-tests: Moved from ../.
4073         * modules/crypto/sha1: Moved from ../.
4074
4075 2007-03-30  James Youngman  <jay@gnu.org>
4076
4077         * tests/test-stat-time.c (prepare_test): use chmod() rather than
4078         rename() to change the ctime of a file (because ctime is unaffected
4079         by rename on jfs2 on AIX 5.1).
4080         (main): Start by doing cleanup, in case a previous run failed leaving
4081         test files behind.
4082
4083 2007-03-31  Bruno Haible  <bruno@clisp.org>
4084
4085         Support old proprietary implementations of iconv.
4086         * modules/iconv_open: New file.
4087         * lib/iconv_.h: New file.
4088         * m4/iconv_h.m4: New file.
4089         * lib/iconv_open.c: New file.
4090         * lib/iconv_open-aix.gperf: New file.
4091         * lib/iconv_open-hpux.gperf: New file.
4092         * lib/iconv_open-irix.gperf: New file.
4093         * lib/iconv_open-osf.gperf: New file.
4094         * m4/iconv_open.m4: New file.
4095         * modules/linebreak (Depends-on): Add iconv_open.
4096         * modules/striconv (Depends-on): Likewise.
4097         * modules/striconveh (Depends-on): Likewise.
4098         * modules/unicodeio (Depends-on): Likewise.
4099         * lib/striconveh.h (mem_cd_iconveh, str_cd_iconveh): Allow cd to be
4100         (iconv_t)(-1).
4101         * lib/striconveh.c (mem_cd_iconveh_internal): Use an indirect
4102         conversion if cd is (iconv_t)(-1).
4103         (mem_iconveh, str_iconveh): Don't fail just because a direct conversion
4104         is not possible.
4105
4106 2007-03-31  Bruno Haible  <bruno@clisp.org>
4107
4108         * tests/test-striconveha.c (main): Don't expect "autodetect_jp" to
4109         work on Solaris either. Protect also second use of "autodetect_jp".
4110
4111 2007-03-31  Bruno Haible  <bruno@clisp.org>
4112
4113         * m4/frexpl.m4 (gl_FUNC_FREXPL): Set HAVE_DECL_FREXPL to 0 when
4114         the function is not present.
4115
4116 2007-03-31  Bruno Haible  <bruno@clisp.org>
4117
4118         * m4/ldexpl.m4 (gl_FUNC_LDEXPL): Set HAVE_DECL_LDEXPL to 0 when
4119         the function is not present.
4120
4121 2007-03-31  Bruno Haible  <bruno@clisp.org>
4122
4123         * m4/iconv.m4 (AM_ICONV_LINK): Fix 2007-03-29 patch. Test also against
4124         a bug in HP-UX iconv_open().
4125
4126 2007-03-31  Bruno Haible  <bruno@clisp.org>
4127
4128         * MODULES.html.sh (func_module): Don't show gnulib-common.m4.
4129         (Mathematics <math.h>): New section, add fpieee.
4130         (Input/output <stdio.h>): Add fseterr.
4131         (Mathematics <math.h>): New section, add printf-frexp.
4132         (Container data structures): Add sublist.
4133         (Core language properties): Add fpucw, inline.
4134         (Functions for greatest-width integer types <inttypes.h>): Add
4135         imaxabs, imaxdiv, inttypes.
4136         (Mathematics <math.h>): Add frexp, frexpl, isnan-nolibm, isnanl,
4137         isnanl-nolibm, ldexp.
4138         (Mathematics <math.h>): New section, add printf-frexpl.
4139         (Support for systems lacking POSIX:2001): Add fprintf-posix,
4140         printf-posix, snprintf-posix, sprintf-posix, string, search, socklen,
4141         sys_select, sys_socket, vasnprintf-posix, vasprintf-posix,
4142         vfprintf-posix, vprintf-posix, vsnprintf-posix, vsprintf-posix.
4143         (Unicode string functions): Add unistr/u*-mbtoucr.
4144         (Java): Add javacomp-script, javaexec-script.
4145         (C#): Add csharpcomp-script, csharpexec-script.
4146         (Support for building libraries and executables): Add havelib,
4147         relocatable-*.
4148         (Support for maintaining and releasing projects): Renamed from
4149         'Support for maintaining and release projects'. Add announce-gen.
4150
4151 2007-03-31  Bruno Haible  <bruno@clisp.org>
4152
4153         * README: Talk primarily about git.
4154         (git and CVS): Renamed from CVS.
4155         * doc/gnulib.texi (Introduction, Build robot for gnulib): Mention that
4156         gnulib is available through git.
4157         * doc/gnulib-tool.texi (CVS Issues): Mention git and svn as well.
4158
4159 2007-03-30  Bruno Haible  <bruno@clisp.org>
4160
4161         * lib/alloca_.h: Change prefix of double-inclusion guard macro to _GL_.
4162         * lib/poll_.h: Likewise.
4163         * lib/stat_.h: Likewise.
4164         * lib/sys_time_.h: Likewise.
4165         * lib/sysexit_.h: Likewise.
4166         * lib/glob_.h: Prefix double-inclusion guard macro with _GL_.
4167         * lib/stdbool_.h: Likewise.
4168         * lib/byteswap_.h: Add double-inclusion guard.
4169
4170 2007-03-30  Sergey Poznyakoff  <gray@mirddin.farlep.net>
4171
4172         * lib/sysexit_.h: Prefix double-inclusion guard macro with _GNULIB.
4173
4174 2007-03-30  Karl Berry  <karl@gnu.org>
4175
4176         * config/srclist-update: double space after USA in the license
4177         substitution, since that's how it's usually (?) written.
4178
4179 2007-03-30  Paul Eggert  <eggert@cs.ucla.edu>
4180
4181         * lib/write-any-file.c (can_write_any_file): Fix else-else bug
4182         reported by Bruno Haible.
4183
4184 2007-03-29  Bruno Haible  <bruno@clisp.org>
4185
4186         * m4/iconv.m4 (AM_ICONV_LINK): Require AC_CANONICAL_HOST. Test against
4187         a bug in AIX iconv().
4188
4189 2007-03-29  Bruno Haible  <bruno@clisp.org>
4190
4191         * modules/ldexpl-tests: New file.
4192         * tests/test-ldexpl.c: New file.
4193
4194 2007-03-29  Bruno Haible  <bruno@clisp.org>
4195
4196         * lib/ldexpl.c: Include fpucw.h.
4197         (ldexpl): Use BEGIN/END_LONG_DOUBLE_ROUNDING. Skip the last unneeded
4198         multiplication.
4199         * modules/ldexpl (Depends-on): Add fpucw.
4200
4201 2007-03-29  Bruno Haible  <bruno@clisp.org>
4202
4203         * modules/ldexpl: New file.
4204         * m4/ldexpl.m4: New file.
4205         * lib/math_.h (ldexpl): Define to a replacement if REPLACE_LDEXPL is
4206         set.
4207         * m4/math_h.m4 (gl_MATH_H_DEFAULTS): Initialize also GNULIB_LDEXPL,
4208         REPLACE_LDEXPL.
4209         * modules/math (Makefile.am): Substitute also GNULIB_LDEXPL,
4210         REPLACE_LDEXPL.
4211         * m4/printf-frexpl.m4 (gl_FUNC_PRINTF_FREXPL): Invoke
4212         gl_FUNC_LDEXPL_WORKS.
4213         * m4/mathl.m4 (gl_FUNC_LONG_DOUBLE_MATH): Remove test for ldexpl.
4214         * modules/mathl (Files): Remove lib/ldexpl.c.
4215         (Depends-on): Add ldexpl.
4216
4217 2007-03-29  Bruno Haible  <bruno@clisp.org>
4218
4219         * m4/frexpl.m4 (gl_FUNC_FREXPL_WORKS): Declare frexpl.
4220
4221 2007-03-29  Bruno Haible  <bruno@clisp.org>
4222
4223         * tests/test-striconveh.c (main): Don't assume that a direct conversion
4224         between ISO-8859-1 and ISO-8859-2 is possible. Needed for OSF/1, IRIX
4225         and possibly also HP-UX.
4226         * tests/test-striconveha.c (main): Don't expect "autodetect_jp" to
4227         work on AIX, IRIX, HP-UX, OSF/1.
4228         * tests/uniconv/test-u16-conv-from-enc.c (main): Likewise.
4229         * tests/uniconv/test-u16-strconv-from-enc.c (main): Likewise.
4230         * tests/uniconv/test-u32-conv-from-enc.c (main): Likewise.
4231         * tests/uniconv/test-u32-strconv-from-enc.c (main): Likewise.
4232         * tests/uniconv/test-u8-conv-from-enc.c (main): Likewise.
4233         * tests/uniconv/test-u8-strconv-from-enc.c (main): Likewise.
4234
4235 2007-03-29  Bruno Haible  <bruno@clisp.org>
4236
4237         * tests/test-stat-time.c: Include <fcntl.h>, not <sys/fcntl.h>.
4238
4239 2007-03-29  Paul Eggert  <eggert@cs.ucla.edu>
4240
4241         * lib/acl-internal.h (acl_get_fd, acl_set_fd): undef before defining,
4242         to work around a problem on OSF/1 5.1 reported by Bruno Haible.
4243
4244 2007-03-29  Eric Blake  <ebb9@byu.net>
4245
4246         * lib/acl-internal.h: Remove redundant include.
4247         (ACL_NOT_WELL_SUPPORTED): Also filter on EBUSY, returned by
4248         Cygwin when a file is locked.
4249
4250 2007-03-29  Bruno Haible  <bruno@clisp.org>
4251
4252         * lib/vasprintf.c [IN_LIBASPRINTF]: Include different specification
4253         file.
4254         * lib/asprintf.c [IN_LIBASPRINTF]: Likewise.
4255
4256 2007-03-29  Paul Eggert  <eggert@cs.ucla.edu>
4257
4258         * m4/getcwd-path-max.m4 (gl_FUNC_GETCWD_PATH_MAX): Don't bother to
4259         try to remove a parent directory if the child couldn't be removed
4260         (except for the first rmdir, which could fail because the child
4261         doesn't exist).  Problem reported by Jeff Blaine in
4262         <http://lists.gnu.org/archive/html/bug-tar/2007-03/msg00014.html>.
4263
4264 2007-03-28  Bruno Haible  <bruno@clisp.org>
4265
4266         * lib/striconveh.c (utf8conv_carefully): New function.
4267         (mem_cd_iconveh_internal): Invoke it.
4268
4269 2007-03-28  Bruno Haible  <bruno@clisp.org>
4270
4271         * lib/striconveh.c (mem_cd_iconveh_internal): Use u8_mbtoucr instead
4272         of u8_mbtouc in order to distinguish invalid and incomplete UTF-8
4273         input.
4274         * modules/striconveh (Depends-on): Add unistr/u8-mbtoucr. Replace
4275         utf8-ucs4 with unistr/u8-mbtouc. Replace ucs4-utf8 with
4276         unistr/u8-uctomb.
4277
4278 2007-03-28  Bruno Haible  <bruno@clisp.org>
4279
4280         * modules/unistr/u8-mbtoucr: New file.
4281         * lib/unistr/u8-mbtoucr.c: New file.
4282         * modules/unistr/u16-mbtoucr: New file.
4283         * lib/unistr/u16-mbtoucr.c: New file.
4284         * modules/unistr/u16-mbtoucr: New file.
4285         * lib/unistr/u16-mbtoucr.c: New file.
4286         * lib/unistr.h (u8_mbtoucr, u16_mbtoucr, u32_mbtoucr): New declarations.
4287
4288 2007-03-27  Simon Josefsson  <simon@josefsson.org>
4289             Bruno Haible  <bruno@clisp.org>
4290
4291         * m4/vasprintf.m4: Convert AC_SUBST into shell variable for
4292         REPLACE_VASPRINTF.  Set HAVE_VASPRINTF.  Add
4293         AC_REQUIRE([gl_STDIO_H_DEFAULTS]).
4294
4295         * m4/stdio_h.m4: Add stubs for vasprintf too.
4296
4297         * modules/stdio: Support vasprintf in sed command.
4298
4299         * modules/vasprintf: Depend on stdio for prototypes.  Remove
4300         vasprintf.h.  Add stdio module indicator.
4301
4302         * lib/stdio_.h: Declare asprintf and vasprintf, based on
4303         vasprintf.h.
4304
4305         * lib/vasprintf.h: File removed.
4306
4307         * lib/asprintf.c: Use stdio.h instead of vasprintf.h.
4308         * lib/vasprintf.c: Ditto.
4309         * lib/xvasprintf.c: Ditto.
4310         * tests/test-vasprintf-posix.c: Ditto.
4311         * tests/test-vasprintf.c: Ditto.
4312
4313 2007-03-27  Bruno Haible  <bruno@clisp.org>
4314
4315         Make vasnprintf multithread-safe.
4316         * lib/vasnprintf.c (decimal_point_char): New function.
4317         (VASNPRINTF): Use it.
4318         Suggested by Simon Josefsson.
4319
4320 2007-03-27  Eric Blake  <ebb9@byu.net>
4321
4322         Support sub-second birthtime on cygwin.
4323         * m4/stat-time.m4 (gl_STAT_BIRTHTIME): Also check for st_birthtim.
4324         * lib/stat-time.h (STAT_TIMESPEC): Adjust comments.
4325         (get_stat_birthtime): Also work with st_birthtim.
4326
4327 2007-03-27  Paul Eggert  <eggert@cs.ucla.edu>
4328
4329         * lib/stat-time.h (USE_BIRTHTIME): Remove.
4330         (get_stat_atime_ns, get_stat_ctime_ns, get_stat_mtime_ns):
4331         (get_stat_birthtime_ns): Do not try to use "spare" fields.
4332         (get_stat_birthtime_ns): Simplify compile-time tests.
4333         (get_stat_birthtime): Change the API to look like
4334         get_stat_mtime etc., except return a negative tv_nsec on error.
4335         * m4/stat-time.m4 (gl_STAT_TIME, gl_STAT_BIRTHTIME):
4336         Don't check for "spare" fields.
4337         (gl_STAT_BIRTHTIME): Don't check for struct stat.st_birthtimespec.tv_sec
4338         or for struct stat.st_birthtime, as these tests aren't used.
4339         * tests/test-stat-time.c (test_birthtime): Adjust to new API.
4340
4341 2007-03-27  Bruno Haible  <bruno@clisp.org>
4342
4343         * lib/stat-time.h: Include <sys/stat.h>.
4344
4345 2007-03-27  James Youngman  <jay@gnu.org>
4346
4347         * lib/stat-time.h (get_stat_birthtime): New function for
4348           retrieving st_birthtime as provided by UFS2 (hence *BSD).
4349         * m4/stat-time.m4 (gl_STAT_BIRTHTIME): Probe for st_birthtime
4350           and its variants.
4351         * modules/stat-time (configure.ac): call gl_STAT_BIRTHTIME.
4352         * modules/stat-time-test: New file.
4353         * tests/test-stat-time.c: New test, devised by Bruno Haible.
4354
4355 2007-03-26  Bruno Haible  <bruno@clisp.org>
4356
4357         Better support of signalling NaNs.
4358         * lib/atanl.c: Include isnanl.h.
4359         (atanl): Perform test for NaN at the beginning of the function and
4360         through a call to isnanl.
4361         * lib/cosl.c: Include isnanl.h.
4362         (cosl): Perform test for NaN at the beginning of the function and
4363         through a call to isnanl.
4364         * lib/ldexpl.c: Include isnanl.h.
4365         (ldexpl): Perform test for NaN through a call to isnanl.
4366         * lib/logl.c: Include isnanl.h.
4367         (logl): Perform test for NaN at the beginning of the function and
4368         through a call to isnanl.
4369         * lib/sinl.c: Include isnanl.h.
4370         (sinl): Perform test for NaN at the beginning of the function and
4371         through a call to isnanl.
4372         * lib/sqrtl.c: Include isnanl.h.
4373         (sqrtl): Perform test for NaN at the beginning of the function and
4374         through a call to isnanl.
4375         * lib/tanl.c: Include isnanl.h.
4376         (tanl): Perform test for NaN at the beginning of the function and
4377         through a call to isnanl.
4378         * lib/trigl.c (ieee754_rem_pio2l): Remove test for NaN.
4379         * modules/mathl (Depends-on): Add isnanl.
4380
4381 2007-03-26  Eric Blake  <ebb9@byu.net>
4382
4383         * m4/vasnprintf.m4 (gl_PREREQ_VASNPRINTF_DIRECTIVE_A): Fix
4384         regression in logic sense of previous patch.
4385
4386 2007-03-26  Bruno Haible  <bruno@clisp.org>
4387
4388         * m4/vasnprintf.m4 (gl_PREREQ_VASNPRINTF_DIRECTIVE_A): Don't use
4389         unportable shell command "if ! ...".
4390         Reported by Ralf Wildenhues.
4391
4392 2007-03-25  Bruno Haible  <bruno@clisp.org>
4393
4394         * lib/sysexit_,h: If HAVE_SYSEXITS_H is defined, include the original
4395         <sysexits.h> file, and only add EX_CONFIG.
4396         * m4/sysexits.m4 (gl_SYSEXITS): If <sysexits.h> exists, check its
4397         absolute file name and whether it is sufficient. Substitute also
4398         HAVE_SYSEXITS_H and ABSOLUTE_SYSEXITS_H.
4399         * modules/sysexits (Makefile.am): Substitute HAVE_SYSEXITS_H and
4400         ABSOLUTE_SYSEXITS_H into sysexits.h.
4401
4402 2007-03-25  Bruno Haible  <bruno@clisp.org>
4403
4404         * lib/getaddrinfo.c (getaddrinfo): Don't access hints->ai_flags when
4405         hints is NULL.
4406
4407 2007-03-25  Bruno Haible  <bruno@clisp.org>
4408
4409         * lib/uniconv/u8-conv-from-enc.c (u8_conv_from_encoding): Add a cast.
4410         * lib/uniconv/u8-strconv-to-enc.c (u8_strconv_to_encoding): Likewise.
4411
4412 2007-03-25  Bruno Haible  <bruno@clisp.org>
4413
4414         * lib/vasnprintf.c: Include langinfo.h.
4415         (VASNPRINTF): Prefer nl_langinfo over localeconv, since it's more
4416         multithread-safe.
4417         * m4/vasnprintf.m4 (gl_PREREQ_VASNPRINTF_DIRECTIVE_A): New macro.
4418         * m4/fprintf-posix.m4 (gl_FUNC_FPRINTF_POSIX): Invoke it.
4419         * m4/snprintf-posix.m4 (gl_FUNC_SNPRINTF_POSIX): Likewise.
4420         * m4/sprintf-posix.m4 (gl_FUNC_SPRINTF_POSIX): Likewise.
4421         * m4/vasnprintf-posix.m4 (gl_FUNC_VASNPRINTF_POSIX): Likewise.
4422         * m4/vasprintf-posix.m4 (gl_FUNC_VASPRINTF_POSIX): Likewise.
4423         * m4/vfprintf-posix.m4 (gl_FUNC_VFPRINTF_POSIX): Likewise.
4424         * m4/vsnprintf-posix.m4 (gl_FUNC_VSNPRINTF_POSIX: Likewise.
4425         * m4/vsprintf-posix.m4 (gl_FUNC_VSPRINTF_POSIX): Likewise.
4426         Reported by Simon Josefsson.
4427
4428 2007-03-25  Bruno Haible  <bruno@clisp.org>
4429
4430         * lib/printf-parse.c [!IN_LIBINTL]: Include <stdint.h>, for intmax_t.
4431         (PRINTF_PARSE): Make the support for size specifier 'j' unconditional.
4432         * modules/vasnprintf (Depends-on): Add stdint.
4433
4434 2007-03-25  Bruno Haible  <bruno@clisp.org>
4435
4436         * modules/fpieee: New file.
4437         * m4/fpieee.m4: New file.
4438         * modules/isnan-nolibm (Depends-on): Add fpieee.
4439         * modules/isnanl-nolibm (Depends-on): Add fpieee.
4440         * modules/isnanl (Depends-on): Add fpieee.
4441
4442 2007-03-25  Bruno Haible  <bruno@clisp.org>
4443
4444         * m4/frexpl.m4 (gl_FUNC_FREXPL_WORKS): Test also finite numbers.
4445
4446 2007-03-25  Bruno Haible  <bruno@clisp.org>
4447
4448         Avoid test failures on IRIX 6.5.
4449         * tests/test-frexpl.c (MIN_NORMAL_EXP): New macro.
4450         (main): Use it.
4451         * tests/test-printf-frexpl.c (MIN_NORMAL_EXP, MIN_SUBNORMAL_EXP): New
4452         macros.
4453         (main): Use them.
4454
4455 2007-03-25  Bruno Haible  <bruno@clisp.org>
4456
4457         * m4/frexpl.m4 (gl_FUNC_FREXPL_WORKS): New macro.
4458         (gl_FUNC_FREXPL): Invoke it. Set REPLACE_FREXPL to 1 if it frexpl
4459         exists but doesn't work.
4460         * lib/math_.h (frexpl): Define as a replacement macro if REPLACE_FREXPL
4461         is set. Don't provide a prototype if REPLACE_FREXPL is not set.
4462         * m4/math_h.m4 (gl_MATH_H_DEFAULTS): Initialize REPLACE_FREXPL.
4463         * modules/math (Makefile.am) Substibute also REPLACE_FREXPL into math.h.
4464
4465 2007-03-25  Bruno Haible  <bruno@clisp.org>
4466
4467         * m4/frexp.m4 (gl_FUNC_FREXP_WORKS): Add check whether frexp(inf)
4468         returns inf. Needed on IRIX 6.5.
4469
4470 2007-03-25  Bruno Haible  <bruno@clisp.org>
4471
4472         * tests/test-frexpl.c: Include isnanl-nolibm.h.
4473         (main): Use isnanl instead of x != x idiom.
4474         * modules/frexpl-tests (Depends-on): Add isnanl-nolibm.
4475
4476         * tests/test-frexp.c: Include isnan.h.
4477         (main): Use isnan instead of x != x idiom.
4478         * modules/frexp-tests (Depends-on): Add isnan-nolibm.
4479
4480 2007-03-25  Bruno Haible  <bruno@clisp.org>
4481
4482         * tests/test-frexp.c (NaN): New function/macro.
4483         (main): Use it instead of 0.0 / 0.0.
4484         * tests/test-isnan.c (NaN): New function/macro.
4485         (main): Use it instead of 0.0 / 0.0.
4486         * tests/test-vasnprintf-posix.c (NaN): New function/macro.
4487         (test_function): Use it instead of 0.0 / 0.0.
4488         * tests/test-vasprintf-posix.c (NaN): New function/macro.
4489         (test_function): Use it instead of 0.0 / 0.0.
4490         * tests/test-snprintf-posix.h (NaN): New function/macro.
4491         (test_function): Use it instead of 0.0 / 0.0.
4492         * tests/test-sprintf-posix.h (NaN): New function/macro.
4493         (test_function): Use it instead of 0.0 / 0.0.
4494         * tests/test-fprintf-posix.h (NaN): New function/macro.
4495         (test_function): Use it instead of 0.0 / 0.0.
4496         * tests/test-printf-posix.h (NaN): New function/macro.
4497         (test_function): Use it instead of 0.0 / 0.0.
4498
4499         * lib/isnan.c (FUNC): Work around a DEC C compiler bug.
4500
4501 2007-03-25  Bruno Haible  <bruno@clisp.org>
4502
4503         * lib/glob_.h: Include <sys/stat.h>. Avoids warnings on AIX 5.1.
4504
4505 2007-03-25  Bruno Haible  <bruno@clisp.org>
4506
4507         * lib/regexec.c (merge_state_with_log): Make static.
4508
4509 2007-03-25  Bruno Haible  <bruno@clisp.org>
4510
4511         * lib/trigl.c (kernel_rem_pio2): Make static.
4512
4513 2007-03-25  Bruno Haible  <bruno@clisp.org>
4514
4515         * lib/sincosl.c (sincosl_table): Make static.
4516
4517 2007-03-25  Bruno Haible  <bruno@clisp.org>
4518
4519         * lib/argp.h (__restrict): Define to empty, rather than to 'restrict',
4520         if the compiler does not support C99.
4521
4522 2007-03-25  Bruno Haible  <bruno@clisp.org>
4523
4524         * modules/time (Makefile.am): Ensure all rule action lines start with a
4525         tab.
4526
4527 2007-03-24  Bruno Haible  <bruno@clisp.org>
4528
4529         * modules/tsearch-tests: New file.
4530         * tests/test-tsearch.sh: New file.
4531         * tests/test-tsearch.c: New file, mostly copied from glibc.
4532
4533         * modules/search-tests: New file.
4534         * tests/test-search.c: New file.
4535
4536         * modules/search: New file.
4537         * lib/search_.h: New file, incorporating lib/tsearch.h.
4538         * m4/search_h.m4: New file.
4539         * lib/tsearch.h: Remove file.
4540         * lib/tsearch.c: Include search.h instead of tsearch.h.
4541         * m4/tsearch.m4 (gl_FUNC_TSEARCH): Require gl_SEARCH_H_DEFAULTS. Set
4542         HAVE_TSEARCH.
4543         * modules/tsearch (Files): Remove lib/tsearch.h.
4544         (Depends-on): Add search.
4545         (configure.ac): Invoke gl_SEARCH_MODULE_INDICATOR.
4546         (Include): Change tsearch.h into search.h.
4547
4548 2007-03-24  Bruno Haible  <bruno@clisp.org>
4549
4550         * modules/fpucw: New file.
4551         * lib/fpucw.h: New file.
4552         * lib/frexp.c: Include fpucw.h.
4553         (DECL_ROUNDING, BEGIN_ROUNDING, END_ROUNDING): New macros.
4554         (FUNC): Use them.
4555         * lib/printf-frexp.c: Include fpucw.h.
4556         (DECL_ROUNDING, BEGIN_ROUNDING, END_ROUNDING): New macros.
4557         (FUNC): Use them.
4558         * lib/vasnprintf.c: Include fpucw.h.
4559         (VASNPRINTF): Invoke BEGIN/END_LONG_DOUBLE_ROUNDING around the
4560         'long double' calculations.
4561         * tests/test-frexpl.c: Include fpucw.h.
4562         (main): Invoke BEGIN_LONG_DOUBLE_ROUNDING.
4563         * tests/test-printf-frexpl.c: Include fpucw.h.
4564         (main): Invoke BEGIN_LONG_DOUBLE_ROUNDING.
4565         * modules/frexpl (Depends-on): Add fpucw.
4566         * modules/printf-frexpl (Depends-on): Likewise.
4567         * modules/fprintf-posix (Depends-on): Likewise.
4568         * modules/snprintf-posix (Depends-on): Likewise.
4569         * modules/sprintf-posix (Depends-on): Likewise.
4570         * modules/vasnprintf-posix (Depends-on): Likewise.
4571         * modules/vasprintf-posix (Depends-on): Likewise.
4572         * modules/vfprintf-posix (Depends-on): Likewise.
4573         * modules/vsnprintf-posix (Depends-on): Likewise.
4574         * modules/vsprintf-posix (Depends-on): Likewise.
4575         * modules/frexpl-tests (Depends-on): Likewise.
4576         * modules/printf-frexpl-tests (Depends-on): Likewise.
4577
4578 2007-03-24  Bruno Haible  <bruno@clisp.org>
4579
4580         * lib/float+.h: New file.
4581         * lib/isnan.c: Include float+.h.
4582         (SIZE): New macro.
4583         (FUNC): Compare only SIZE bytes of the value.
4584         * lib/vasnprintf.c: Include float+.h.
4585         (VASNPRINTF): When comparing agains +0.0L or +0.0, compare only
4586         SIZEOF_LDBL or SIZEOF_DBL bytes.
4587         * modules/isnan-nolibm (Files): Add lib/float+.h.
4588         * modules/isnanl-nolibm (Files): Add lib/float+.h.
4589         * modules/isnanl (Files): Add lib/float+.h.
4590         * modules/vasnprintf (Files): Add lib/float+.h.
4591
4592 2007-03-24  Bruno Haible  <bruno@clisp.org>
4593
4594         * lib/vasnprintf.c [!HAVE_LONG_DOUBLE]: Include printf-frexp.h. Don't
4595         include isnanl-nolibm.h.
4596
4597 2007-03-24  Bruno Haible  <bruno@clisp.org>
4598
4599         * tests/test-read-file.c (main): Don't produce spurious output for
4600         expected situations. Make the test fail if it encountered unexpected
4601         results.
4602
4603 2007-03-24  Bruno Haible  <bruno@clisp.org>
4604
4605         * m4/locale-fr.m4 (gt_LOCALE_FR): Remove the special-casing of NetBSD,
4606         since its fr_FR.ISO8859-1 locale wouldn't pass the tests.
4607
4608 2007-03-24  Bruno Haible  <bruno@clisp.org>
4609
4610         * m4/locale-fr.m4 (gt_LOCALE_FR, gt_LOCALE_FR_UTF8): Fix last change.
4611
4612 2007-03-24  Bruno Haible  <bruno@clisp.org>
4613
4614         * modules/unistr/base (Depends-on): Remove utf8-ucs4-unsafe,
4615         utf16-ucs4-unsafe, utf8-ucs4, utf16-ucs4, ucs4-utf8, ucs4-utf16.
4616
4617         * modules/unistr/u8-mbtouc: Add source files from module utf8-ucs4.
4618         * modules/utf8-ucs4: Turn into a symbolic link to module
4619         unistr/u8-mbtouc.
4620
4621         * modules/unistr/u8-mbtouc-unsafe: Add source files from module
4622         utf8-ucs4-unsafe.
4623         * modules/utf8-ucs4-unsafe: Turn into a symbolic link to module
4624         unistr/u8-mbtouc-unsafe.
4625
4626         * modules/unistr/u16-mbtouc: Add source files from module utf16-ucs4.
4627         * modules/utf16-ucs4: Turn into a symbolic link to module
4628         unistr/u16-mbtouc.
4629
4630         * modules/unistr/u16-mbtouc-unsafe: Add source files from module
4631         utf16-ucs4-unsafe.
4632         * modules/utf16-ucs4-unsafe: Turn into a symbolic link to module
4633         unistr/u16-mbtouc-unsafe.
4634
4635         * modules/unistr/u8-uctomb: Add source files from module utf4-utf8.
4636         * modules/ucs4-utf8: Turn into a symbolic link to module
4637         unistr/u8-ubtomb.
4638
4639         * modules/unistr/u16-uctomb: Add source files from module utf4-utf16.
4640         * modules/ucs4-utf16: Turn into a symbolic link to module
4641         unistr/u16-ubtomb.
4642
4643 2007-03-24  Bruno Haible  <bruno@clisp.org>
4644
4645         * lib/unistr/u8-mbtouc-aux.c: Renamed from lib/unistr/utf8-ucs4.c.
4646         Enable the function only if HAVE_INLINE.
4647         * lib/unistr/u8-mbtouc-unsafe-aux.c: Renamed from
4648         lib/unistr/utf8-ucs4-unsafe.c. Enable the function only if HAVE_INLINE.
4649         * lib/unistr/u16-mbtouc-aux.c: Renamed from lib/unistr/utf16-ucs4.c.
4650         Enable the function only if HAVE_INLINE.
4651         * lib/unistr/u16-mbtouc-unsafe-aux.c: Renamed from
4652         lib/unistr/utf16-ucs4-unsafe.c. Enable the function only if HAVE_INLINE.
4653         * lib/unistr/u8-uctomb-aux.c: Renamed from lib/unistr/ucs4-utf8.c.
4654         Enable the function only if HAVE_INLINE.
4655         * lib/unistr/u16-uctomb-aux.c: Renamed from lib/unistr/ucs4-utf16.c.
4656         Enable the function only if HAVE_INLINE.
4657         * modules/utf8-ucs4: Update.
4658         * modules/utf8-ucs4-unsafe: Update.
4659         * modules/utf16-ucs4: Update.
4660         * modules/utf16-ucs4-unsafe: Update.
4661         * modules/ucs4-utf8: Update.
4662         * modules/ucs4-utf16: Update.
4663
4664 2007-03-24  Bruno Haible  <bruno@clisp.org>
4665
4666         * lib/utf8-ucs4.h: Remove file.
4667         * lib/utf8-ucs4-unsafe.h: Remove file.
4668         * lib/utf16-ucs4.h: Remove file.
4669         * lib/utf16-ucs4-unsafe.h: Remove file.
4670         * lib/ucs4-utf8.h: Remove file.
4671         * lib/ucs4-utf16.h: Remove file.
4672         * lib/unistr.h: Include their previous contents.
4673         * m4/utf-ucs4.m4: Remove file.
4674         * m4/ucs4-utf.m4: Remove file.
4675         * modules/utf8-ucs4 (Files): Remove lib/utf8-ucs4.h.
4676         (Depends-on): Add unistr/base.
4677         (configure.ac): Remove gl_UTF_UCS4.
4678         (Makefile.am): Update.
4679         (Include): Change to unistr.h.
4680         * modules/utf8-ucs4-unsafe (Files): Remove lib/utf8-ucs4-unsafe.h.
4681         (Depends-on): Add unistr/base.
4682         (configure.ac): Remove gl_UTF_UCS4.
4683         (Makefile.am): Update.
4684         (Include): Change to unistr.h.
4685         * modules/utf16-ucs4 (Files): Remove lib/utf16-ucs4.h.
4686         (Depends-on): Add unistr/base.
4687         (configure.ac): Remove gl_UTF_UCS4.
4688         (Makefile.am): Update.
4689         (Include): Change to unistr.h.
4690         * modules/utf16-ucs4-unsafe (Files): Remove lib/utf16-ucs4-unsafe.h.
4691         (Depends-on): Add unistr/base.
4692         (configure.ac): Remove gl_UTF_UCS4.
4693         (Makefile.am): Update.
4694         (Include): Change to unistr.h.
4695         * modules/ucs4-utf8 (Files): Remove lib/ucs4-utf8.h.
4696         (Depends-on): Add unistr/base.
4697         (configure.ac): Remove gl_UCS4_UTF.
4698         (Makefile.am): Update.
4699         (Include): Change to unistr.h.
4700         * modules/ucs4-utf16 (Files): Remove lib/ucs4-utf16.h.
4701         (Depends-on): Add unistr/base.
4702         (configure.ac): Remove gl_UCS4_UTF.
4703         (Makefile.am): Update.
4704         (Include): Change to unistr.h.
4705         * lib/unistr/utf8-ucs4.c: Include unistr.h instead of utf8-ucs4.h.
4706         * lib/unistr/utf8-ucs4-unsafe.c: Include unistr.h instead of
4707         utf8-ucs4-unsafe.h.
4708         * lib/unistr/utf16-ucs4.c: Include unistr.h instead of utf16-ucs4.h.
4709         * lib/unistr/utf16-ucs4-unsafe.c: Include unistr.h instead of
4710         utf16-ucs4-unsafe.h.
4711         * lib/unistr/ucs4-utf8.c: Include unistr.h instead of ucs4-utf8.h.
4712         * lib/unistr/ucs4-utf16.c: Include unistr.h instead of ucs4-utf16.h.
4713         * lib/unistr/u8-chr.c: Don't include ucs4-utf8.h.
4714         * lib/unistr/u8-strchr.c: Likewise.
4715         * lib/unistr/u8-strrchr.c: Likewise.
4716         * lib/unistr/u16-chr.c: Don't include ucs4-utf16.h.
4717         * lib/unistr/u16-strchr.c: Likewise.
4718         * lib/unistr/u16-strrchr.c: Likewise.
4719         * lib/striconveh.c: Update.
4720         * lib/linebreak.c: Update.
4721
4722 2007-03-24  Bruno Haible  <bruno@clisp.org>
4723
4724         * lib/argp-help.c (fill_in_uparams, canon_doc_option): Cast the
4725         arguments of isspace, isalpha, isalnum, isdigit to 'unsigned char'.
4726
4727 2007-03-22  Bruno Haible  <bruno@clisp.org>
4728
4729         * lib/strptime.c (__strptime_internal): Use ANSI C syntax.
4730
4731 2007-03-23  Paul Eggert  <eggert@cs.ucla.edu>
4732
4733         * MODULES.html.sh (File system functions): New module write-any-file.
4734         * modules/write-any-file, lib/write-any-file.c, lib/write-any-file.h:
4735         * m4/write-any-file.m4: New files.
4736
4737 2007-03-23  Eric Blake  <ebb9@byu.net>
4738
4739         * gnulib-tool: Rearrange space-tab sequences, since some editors
4740         like to eat them.
4741
4742 2007-03-23  Eric Blake  <ebb9@byu.net>
4743
4744         * lib/version-etc.c (version_etc_va): Update license wording to
4745         be more concise.  Recommended by Richard Stallman.
4746
4747 2007-03-22  Bruno Haible  <bruno@clisp.org>
4748
4749         * lib/poll.c (MSG_PEEK): New fallback definition.
4750
4751 2007-03-22  Bruno Haible  <bruno@clisp.org>
4752
4753         * modules/sys_socket-tests (configure.ac): Check for shutdown function.
4754         * tests/test-sys_socket.c (a): Test only if shutdown() exists.
4755         (main): Update.
4756         Fixes a compilation error on BeOS.
4757
4758 2007-03-22  Bruno Haible  <bruno@clisp.org>
4759
4760         * modules/frexpl-tests: New file.
4761         * tests/test-frexpl.c: New file.
4762
4763         * modules/frexpl: New file.
4764         * m4/frexpl.m4: New file.
4765         * modules/math (Makefile.am): Also substitute GNULIB_FREXPL into math.h.
4766         * lib/math_.h (frexpl): Test GNULIB_FREXPL instead of GNULIB_MATHL.
4767         * m4/math_h.m4 (gl_MATH_H_DEFAULTS): Initialize GNULIB_FREXPL.
4768         * modules/mathl (Files): Remove lib/frexpl.c, lib/frexp.c.
4769         (Depends-on): Add frexpl. Remove isnanl-nolibm.
4770         * m4/mathl.m4 (gl_FUNC_LONG_DOUBLE_MATH): Don't test for frexpl.
4771
4772 2007-03-22  Bruno Haible  <bruno@clisp.org>
4773
4774         * lib/frexpl.c: Share code with lib/frexp.c.
4775         * modules/mathl (Files): Add lib/frexp.c.
4776         (Depends-on): Add isnanl-nolibm.
4777
4778 2007-03-22  Bruno Haible  <bruno@clisp.org>
4779
4780         * modules/printf-frexp (Files): Add m4/frexp.m4.
4781         * m4/printf-frexp.m4 (gl_FUNC_PRINTF_FREXP): Define HAVE_FREXP_IN_LIBC
4782         only if the found frexp function actually works.
4783
4784 2007-03-22  Bruno Haible  <bruno@clisp.org>
4785
4786         * lib/frexp.c: Remove older implementation that uses divisions.
4787
4788 2007-03-21  Bruno Haible  <bruno@clisp.org>
4789
4790         * modules/frexp-tests: New file.
4791         * tests/test-frexp.c: New file.
4792
4793         * modules/frexp: New file.
4794         * lib/frexp.c: New file.
4795         * m4/frexp.m4: New file.
4796         * lib/math_.h (frexp): New declaration.
4797         * m4/math_h.m4 (gl_MATH_H_DEFAULTS): Also initialize GNULIB_FREXP and
4798         REPLACE_FREXP.
4799         * modules/math (math.h): Also substitute GNULIB_FREXP, REPLACE_FREXP.
4800
4801 2007-03-21  Bruno Haible  <bruno@clisp.org>
4802
4803         * modules/isnanl-tests: New file.
4804         * tests/test-isnanl.c: New file.
4805
4806         * modules/isnanl: New file.
4807         * lib/isnanl.h: New file.
4808         * m4/isnanl.m4 (gl_FUNC_ISNANL): New macro.
4809         (gl_FUNC_ISNANL_NO_LIBM): Invoke gl_HAVE_ISNANL_NO_LIBM,
4810         gl_FUNC_ISNANL_WORKS.
4811         (gl_HAVE_ISNANL_NO_LIBM, gl_HAVE_ISNANL_IN_LIBM, gl_FUNC_ISNANL_WORKS):
4812         New macros.
4813
4814 2007-03-21  Bruno Haible  <bruno@clisp.org>
4815
4816         * modules/isnanl-nolibm (Files): Add lib/isnanl-nolibm.h, remove
4817         lib/isnanl.h.
4818         (Include): Update.
4819         * lib/isnanl-nolibm.h: Renamed from lib/isnanl.h.
4820         * lib/vasnprintf.c: Update.
4821         * modules/isnanl-nolibm-tests (Files): Add tests/test-isnanl-nolibm.c,
4822         tests/test-isnanl.h, remove tests/test-isnanl.c.
4823         (Makefile.am): Update.
4824         * tests/test-isnanl-nolibm.c: New file.
4825         * tests/test-isnanl.h: New file.
4826         * tests/test-isnanl.c: Remove file.
4827
4828 2007-03-21  Jim Meyering  <jim@meyering.net>
4829
4830         When trying to open ".", treat ESTALE like EACCES.
4831         * lib/savewd.c (savewd_save): Resort to forking not just upon
4832         failure with EACCES, but also when errno is ESTALE.
4833
4834 2007-03-20  Bruno Haible  <bruno@clisp.org>
4835
4836         * lib/string_.h (strndup): Enable declaration also if HAVE_STRNDUP.
4837         Needed on AIX 5.1. Reported by Matthew Woehlke.
4838
4839 2007-03-19  Paul Eggert  <eggert@cs.ucla.edu>
4840
4841         Suggestions by Bruno Haible:
4842         * lib/acl-internal.h: Include "gettext.h" rather than rolling
4843         our own.
4844         (ACL_NOT_WELL_SUPPORTED): Parenthesize arg when used.
4845         * modules/acl (Depends-on): Add gettext.
4846
4847 2007-03-19  Bruno Haible  <bruno@clisp.org>
4848
4849         * modules/iconvme: Remove file.
4850         * lib/iconvme.h: Remove file.
4851         * lib/iconvme.c: Remove file.
4852         * m4/iconvme.m4: Remove file.
4853
4854 2007-03-19  Bruno Haible  <bruno@clisp.org>
4855
4856         * doc/relocatable-maint.texi: Break long shell script line.
4857         Suggested by Thien-Thi Nguyen <ttn@gnuvola.org>.
4858
4859 2007-03-19  Paul Eggert  <eggert@cs.ucla.edu>
4860
4861         Add limited support for Solaris 10 ZFS-style ACLs: just enough to
4862         handle file_has_acl.
4863         * lib/acl-internal.h, lib/acl_entries.c, lib/file-has-acl.c: New files.
4864         * lib/acl.c: Move header inclusions and related macro defns into
4865         lib/acl-internal.h.
4866         (S_ISLNK): Remove defn, since that's now done for us.
4867         (file_has_acl): Move to lib/file-has-acl.c.
4868         Call acl_trivial if available.  This is the crucial part of the fix.
4869         (acl_entries): Move to lib/acl_entries.c.  Now extern, since it's
4870         shared within the library.  Rewrite a bit, partly to make it compatible
4871         with the GNU coding style.
4872         * m4/acl.m4 (AC_FUNC_ACL): Add AC_LIBOBJ([file-has-acl]).
4873         Remove unnecessary double-quotes.
4874         Don't test for acl_to_text; the build will catch that.
4875         Replace acl_entries if it doesn't exist and it is needed.
4876         Check for -lsec and acl_trivial (as used on Solaris 10).
4877         * modules/acl (Files): Add lib/acl-internal.h, lib/acl_entries.c,
4878         lib/file-has-acl.c.
4879         (Depends-on): Add sys_stat, for S_ISLNK.
4880
4881 2007-03-19  Ben Pfaff  <blp@gnu.org>
4882
4883         * doc/gnulib.texi: Fix typos.
4884         Suggested by Thien-Thi Nguyen <ttn@gnuvola.org>.
4885
4886 2007-03-19  Paul Eggert  <eggert@cs.ucla.edu>
4887
4888         * lib/getcwd.c (__getcwd): Remove redundant comparison of buf to NULL.
4889         If size is zero here, buf must be zero.
4890
4891 2007-03-19  Simon Josefsson  <simon@josefsson.org>
4892
4893         * des.c: Remove weak_keys_chksum.  Reported by Bruno Haible
4894         <bruno@clisp.org>.
4895
4896 2007-03-18  Bruno Haible  <bruno@clisp.org>
4897
4898         * lib/vasnprintf.c (VASNPRINTF): Undo first part of last patch.
4899         Suggested by Eric Blake.
4900
4901 2007-03-18  Ben Pfaff  <blp@gnu.org>
4902
4903         * doc/relocatable.texi: Recommend using as prefix a directory
4904         that does not exist and will never be created.  Based on
4905         discussion with Bruno Haible, Ralf Wildenhues, Matthew Woehlke,
4906         and others.
4907
4908 2007-03-17  Bruno Haible  <bruno@clisp.org>
4909
4910         * lib/fchownat.c: Include lchown.h.
4911
4912 2007-03-17  Bruno Haible  <bruno@clisp.org>
4913
4914         Fix endless loop when the given allocated size was > INT_MAX.
4915         * lib/vasnprintf.c (EOVERFLOW): New fallback definition.
4916         (VASNPRINTF): Fail with EOVERFLOW when the given allocated size is
4917         larger than INT_MAX, or when it grow to a value larger than INT_MAX.
4918         * lib/vsprintf.c (vsprintf): Don't pass a size > INT_MAX to vasnprintf.
4919         * lib/sprintf.c (sprintf): Likewise.
4920
4921 2007-03-17  Bruno Haible  <bruno@clisp.org>
4922
4923         * tests/test-argp-2.sh (func_compare): Output a context diff.
4924
4925 2007-03-17  Bruno Haible  <bruno@clisp.org>
4926
4927         * m4/locale-fr.m4 (gt_LOCALE_FR, gt_LOCALE_FR_UTF8): Check also the
4928         locale's decimal-point character.
4929
4930 2007-03-17  Bruno Haible  <bruno@clisp.org>
4931
4932         * lib/vasnprintf.c (VASNPRINTF): Clear out the memory used for arg_mem
4933         before comparing it. Needed because on some platforms (e.g. x86) a
4934         'long double' occupies less bytes than sizeof (long double).
4935
4936 2007-03-17  Bruno Haible  <bruno@clisp.org>
4937
4938         * tests/test-crc.c (main): Make printf statements 64-bit clean.
4939         * tests/test-gc-pbkdf2-sha1.c (main): Likewise.
4940         * tests/test-getaddrinfo.c (simple): Likewise.
4941         * tests/test-read-file.c (main): Likewise.
4942
4943 2007-03-17  Bruno Haible  <bruno@clisp.org>
4944
4945         * tests/test-dirname.c (main): Make printf statements 64-bit clean.
4946
4947 2007-03-17  Bruno Haible  <bruno@clisp.org>
4948
4949         * tests/test-xvasprintf.c (test_xvasprintf, test_xasprintf): Remove
4950         unused variable.
4951
4952 2007-03-17  Bruno Haible  <bruno@clisp.org>
4953
4954         * tests/test-c-strcasecmp.c: Include c-strcase.h.
4955         * tests/test-c-strncasecmp.c: Likewise.
4956
4957 2007-03-17  Bruno Haible  <bruno@clisp.org>
4958
4959         * modules/stdlib (Depends-on): Add unistd.
4960         * lib/stdlib_.h: Include <unistd.h> if mkstemp is desired.
4961         Needed for MacOS X 10.3.
4962
4963 2007-03-17  Bruno Haible  <bruno@clisp.org>
4964
4965         * lib/unistr/u-strdup.h: Include <stdlib.h>.
4966
4967 2007-03-17  Bruno Haible  <bruno@clisp.org>
4968
4969         * lib/unistr/u-cpy-alloc.h: Include <stdlib.h>.
4970
4971 2007-03-17  Bruno Haible  <bruno@clisp.org>
4972
4973         * gnulib-tool (func_import): Update .cvsignore and .gitignore files
4974         to reflect files copied from gnulib (with or without modifications).
4975         Suggested by Jim Meyering.
4976
4977 2007-03-17  Eric Blake  <ebb9@byu.net>
4978
4979         * NEWS: Document stdlib change from 2007-02-18.
4980
4981 2007-03-17  Jim Meyering  <jim@meyering.net>
4982
4983         Detect use of AC_CONFIG_AUX_DIR also when its argument is quoted.
4984         * build-aux/bootstrap: Put ""s around use of $build_aux, in case
4985         someone uses a name containing shell meta-characters.
4986         Reported by Alfred M. Szmidt.
4987
4988         * build-aux/bootstrap: Don't use \> in grep regexp.  For HP-UX.
4989
4990 2007-03-16  Alfred M. Szmidt  <ams@gnu.org>
4991
4992         * build-aux/bootstrap (with_gettext): New variable.  Run autopoint
4993         and copy gettext configuration files only if configure.ac contains
4994         a use of AM_GNU_GETTEXT_VERSION.
4995
4996 2007-03-16  Alfred M. Szmidt  <ams@gnu.org>
4997
4998         * build-aux/bootstrap (gnulib_name): New variable.
4999         (gnulib_tool_options): Use it.
5000
5001 2007-03-13  Simon Josefsson  <simon@josefsson.org>
5002
5003         * tests/test-des.c: Use new namespace.
5004
5005 2007-03-15  Bruno Haible  <bruno@clisp.org>
5006
5007         * lib/dummy.c (gl_dummy_symbol): Renamed from 'dummy'.
5008         Reported by James Youngman <jay@gnu.org>.
5009
5010 2007-03-15  Bruno Haible  <bruno@clisp.org>
5011
5012         * lib/glob.c (glob): Add 'restrict' so that prototype matches the
5013         declared prototype. Needed with cc on OSF/1 5.1.
5014
5015 2007-03-15  Bruno Haible  <bruno@clisp.org>
5016
5017         * lib/gl_list.h (gl_listelement_dispose_fn): New type.
5018         (gl_list_create_empty, gl_list_create): Add dispose_fn argument.
5019         (struct gl_list_implementation): Add dispose_fn argument to the
5020         'create_empty', 'create' methods.
5021         (struct gl_list_impl_base): Add field 'dispose_fn'.
5022         * lib/gl_list.c (gl_list_create_empty, gl_list_create): Add dispose_fn
5023         argument.
5024         * lib/gl_array_list.c (gl_array_create_empty, gl_array_create): Add
5025         dispose_fn argument.
5026         (gl_array_remove_node, gl_array_remove_at, gl_array_list_free): Call
5027         dispose_fn on the dropped values.
5028         * lib/gl_carray_list.c (gl_carray_create_empty, gl_carray_create): Add
5029         dispose_fn argument.
5030         (gl_carray_remove_at, gl_carray_list_free): Call dispose_fn on the
5031         dropped values.
5032         * lib/gl_anyavltree_list2.h (gl_tree_create): Add dispose_fn argument.
5033         (gl_tree_remove_node): Call dispose_fn on the dropped value.
5034         * lib/gl_anyrbtree_list2.h (gl_tree_create): Add dispose_fn argument.
5035         (gl_tree_remove_node): Call dispose_fn on the dropped value.
5036         * lib/gl_anytree_list2.h (gl_tree_create_empty): Add dispose_fn
5037         argument.
5038         (gl_tree_list_free): Call dispose_fn on the dropped values.
5039         * lib/gl_anytreehash_list2.h (gl_tree_list_free): Call dispose_fn on
5040         the dropped values.
5041         * lib/gl_anylinked_list2.h (gl_linked_create_empty, gl_linked_create):
5042         Add dispose_fn argument.
5043         (gl_linked_remove_node, gl_linked_remove_at, gl_linked_list_free):
5044         Call dispose_fn on the dropped values.
5045         * lib/gl_sublist.c (gl_sublist_create_empty, gl_sublist_create_fill):
5046         Add dispose_fn argument.
5047         (gl_sublist_create): Initialize the 'dispose_fn' field.
5048         * lib/clean-temp.c (create_temp_dir, register_fd): Update.
5049         * tests/test-array_list.c (main): Update.
5050         * tests/test-carray_list.c (main): Update.
5051         * tests/test-avltree_list.c (main): Update.
5052         * tests/test-rbtree_list.c (main): Update.
5053         * tests/test-avltreehash_list.c (main): Update.
5054         * tests/test-rbtreehash_list.c (main): Update.
5055         * tests/test-linked_list.c (main): Update.
5056         * tests/test-linkedhash_list.c (main): Update.
5057         * tests/test-array_oset.c (main): Update.
5058
5059 2007-03-15  Bruno Haible  <bruno@clisp.org>
5060
5061         * lib/gl_oset.h (gl_setelement_dispose_fn): New type.
5062         (gl_oset_create_empty): Add dispose_fn argument.
5063         (struct gl_oset_implementation): Add dispose_fn argument to
5064         'create_empty' method.
5065         (struct gl_oset_impl_base): Add dispose_fn field.
5066         * lib/gl_oset.c (gl_oset_create_empty): Add dispose_fn argument.
5067         * lib/gl_array_oset.c (gl_array_create_empty): Add dispose_fn argument.
5068         (gl_array_remove_at, gl_array_free): Call dispose_fn on the dropped
5069         values.
5070         * lib/gl_anytree_oset.h (gl_tree_create_empty): Add dispose_fn argument.
5071         (gl_tree_oset_free): Call dispose_fn on the dropped values.
5072         * lib/gl_avltree_oset.c (gl_tree_remove_node): Call dispose_fn on the
5073         dropped value.
5074         * lib/gl_rbtree_oset.c (gl_tree_remove_node): Call dispose_fn on the
5075         dropped value.
5076         * tests/test-array_oset.c (main): Update.
5077         * tests/test-avltree_oset.c (main): Update.
5078         * tests/test-rbtree_oset.c (main): Update.
5079         * lib/gl_anytreehash_list1.h (add_to_bucket): Update.
5080
5081 2007-03-13  Bruno Haible  <bruno@clisp.org>
5082
5083         * tests/test-stdbool.c (i): Update after last patch.
5084
5085 2007-03-12  Bruno Haible  <bruno@clisp.org>
5086
5087         * lib/quotearg.c: Include <wctype.h> early, before the definition of
5088         the iswprint macro. Needed on Solaris 2.5.1.
5089
5090 2007-03-12  Bruno Haible  <bruno@clisp.org>
5091
5092         * tests/test-printf-frexp.c (main): Declare x as volatile.
5093
5094 2007-03-12  Simon Josefsson  <simon@josefsson.org>
5095
5096         * doc/gnulib.texi (Build robot for gnulib): New section.
5097
5098 2007-03-12  Jim Meyering  <jim@meyering.net>
5099
5100         * build-aux/bootstrap: New file.
5101         * build-aux/bootstrap.conf: New file, from coreutils.
5102
5103 2007-03-11  Bruno Haible  <bruno@clisp.org>
5104
5105         * m4/cycle-check.m4 (gl_CYCLE_CHECK): Require AC_C_INLINE.
5106
5107 2007-03-12  Simon Josefsson  <simon@josefsson.org>
5108
5109         * lib/des.h, lib/des.c, lib/gc-gnulib.c: Use gl_ namespace, to
5110         avoid collisions with 'des_setkey'.  Reported by Bruno Haible
5111         <bruno@clisp.org>.  Also change 'tripledes_' to '3des_'.
5112
5113 2007-03-11  Bruno Haible  <bruno@clisp.org>
5114
5115         * m4/locale-tr.m4 (gt_LOCALE_TR_UTF8): If the test program fails to
5116         compile, set LOCALE_TR_UTF8 to 'none' instead of empty.
5117
5118 2007-03-11  Bruno Haible  <bruno@clisp.org>
5119
5120         * lib/stdint_.h (INT64_MIN, INTMAX_MIN): Avoid using the ~INT..._MAX
5121         formula. Needed for SunPRO C 5.0.
5122
5123 2007-03-11  Bruno Haible  <bruno@clisp.org>
5124
5125         * modules/long-options (Depends-on): Add getopt.
5126
5127 2007-03-11  Bruno Haible  <bruno@clisp.org>
5128
5129         * modules/modechange (Depends-on): Add stdbool.
5130
5131 2007-03-11  Bruno Haible  <bruno@clisp.org>
5132
5133         * modules/i-ring (Depends-on): Add stdbool.
5134
5135 2007-03-11  Bruno Haible  <bruno@clisp.org>
5136
5137         * modules/gc-des (Depends-on): Add stdbool.
5138
5139 2007-03-11  Bruno Haible  <bruno@clisp.org>
5140
5141         * m4/mktime.m4 (gl_PREREQ_MKTIME): Require AC_C_INLINE.
5142
5143 2007-03-11  Bruno Haible  <bruno@clisp.org>
5144
5145         * m4/mempcpy.m4 (gl_FUNC_MEMPCPY): Require AC_C_RESTRICT.
5146
5147 2007-03-11  Bruno Haible  <bruno@clisp.org>
5148
5149         * lib/unistr/u32-mbtouc-unsafe.c (u32_mbtouc_unsafe): Fix syntax error.
5150
5151 2007-03-11  Bruno Haible  <bruno@clisp.org>
5152
5153         * lib/vasnprintf.c (sprintf): Undefine.
5154
5155 2007-03-11  Bruno Haible  <bruno@clisp.org>
5156
5157         * lib/isnan.c (rpl_isnan, rpl_isnanl): Work around bug regarding
5158         initializers in SunPRO C and Compaq C compilers.
5159
5160 2007-03-11  Bruno Haible  <bruno@clisp.org>
5161
5162         * lib/gl_array_oset.c (gl_array_iterator_next): Make pointer
5163         decrementing code ANSI C compliant.
5164
5165 2007-03-11  Bruno Haible  <bruno@clisp.org>
5166
5167         * lib/dummy.c [__sun]: Define a dummy variable, not just a typedef.
5168         Needed for Solaris 2.5.1 ranlib and SunPRO C 5.0.
5169
5170 2007-03-11  Bruno Haible  <bruno@clisp.org>
5171
5172         * tests/test-stdbool.c (s, d, e, xlcbug): Disable checks that gnulib's
5173         <stdbool.h> substitute doesn't pass.
5174
5175 2007-03-11  Bruno Haible  <bruno@clisp.org>
5176
5177         * lib/vasnprintf.c (snprintf): Undefine. Avoids an endless recursion.
5178
5179 2007-03-11  Bruno Haible  <bruno@clisp.org>
5180
5181         * gnulib-tool (func_create_megatestdir): Create also an autobuild
5182         script, for submission to autobuild.josefsson.org.
5183
5184 2007-03-10  Bruno Haible  <bruno@clisp.org>
5185
5186         * modules/canonicalize-lgpl-tests: New file.
5187         * tests/test-canonicalize-lgpl.sh: New file.
5188         * tests/test-canonicalize-lgpl.c: New file.
5189
5190         * modules/c-strcase-tests: New file.
5191         * tests/test-c-strcase.sh: New file.
5192         * tests/test-c-strcasecmp.c: New file.
5193         * tests/test-c-strncasecmp.c: New file.
5194
5195         * modules/atexit-tests: New file.
5196         * tests/test-atexit.sh: New file.
5197         * tests/test-atexit.c: New file.
5198
5199 2007-03-10  Bruno Haible  <bruno@clisp.org>
5200
5201         * tests/test-binary-io.sh: Use temporary filenames that are not so
5202         likely to clash with those of other tests (in a parallel make).
5203         * tests/test-binary-io.c: Likewise.
5204
5205 2007-03-10  Bruno Haible  <bruno@clisp.org>
5206
5207         * lib/fseterr.c (fseterr): Port to Solaris/SPARC64. Deactivate the
5208         fallback; use #error instead.
5209         Suggested by Simon Josefsson.
5210
5211 2007-03-10  Bruno Haible  <bruno@clisp.org>
5212
5213         * gnulib-tool (func_create_testdir): Treat MOSTLYCLEANFILES like
5214         CLEANFILES. Put spaces in each line of $cleaned_files, not only the
5215         first and the last.
5216
5217 2007-03-10  Bruno Haible  <bruno@clisp.org>
5218
5219         * lib/stdint_.h (uint_least64_t): Fix typo in last patch.
5220
5221 2007-03-10  Bruno Haible  <bruno@clisp.org>
5222
5223         * modules/snprintf-posix-tests (EXTRA_DIST): New variable. Needed for
5224         "make distcheck".
5225         * modules/sprintf-posix-tests (EXTRA_DIST): Likewise.
5226         * modules/vsnprintf-posix-tests (EXTRA_DIST): Likewise.
5227         * modules/vsprintf-posix-tests (EXTRA_DIST): Likewise.
5228
5229 2007-03-10  Bruno Haible  <bruno@clisp.org>
5230
5231         * modules/allocsa-tests (test_allocsa_SOURCES): Remove redundant
5232         variable.
5233         * modules/dirname-tests (test_dirname_SOURCES): Remove redundant
5234         variable.
5235
5236 2007-03-09  Eric Blake  <ebb9@byu.net>
5237         and Matthew Woehlke  <mw_triad@users.sourceforge.net>  (tiny change)
5238
5239         * lib/stdint_.h (int64_t, uint64_t): Don't undefine if 64-bit
5240         types are not being provided by gnulib.
5241         (GL_INT64_T, GL_UINT64_T): New witnesses of whether gnulib 64-bit
5242         types are supported.
5243
5244 2007-03-10  Bruno Haible  <bruno@clisp.org>
5245
5246         * lib/stdio_.h (__attribute__): New macro.
5247         (fprintf, vfprintf, printf, vprintf, snprintf, vsnprintf, sprintf,
5248         vsprintf): Specify __attribute__ __format__ for GCC.
5249         Suggested by Eric Blake.
5250
5251 2007-03-09  Bruno Haible  <bruno@clisp.org>
5252
5253         * modules/printf-posix-tests: New file.
5254         * tests/test-printf-posix.sh: New file.
5255         * tests/test-printf-posix.c: New file.
5256
5257         * modules/printf-posix: New file.
5258         * lib/printf.c: New file.
5259         * m4/printf-posix-rpl.m4: New file.
5260         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Set also GNULIB_PRINTF_POSIX,
5261         REPLACE_PRINTF.
5262         * lib/stdio_.h (printf): New declaration.
5263         (format, __format__, ____printf____, ____scanf____, ____strftime____,
5264         ____strfmon____): New macros.
5265         * modules/stdio (Makefile.am): Substitute also GNULIB_PRINTF_POSIX,
5266         REPLACE_PRINTF.
5267
5268 2007-03-09  Bruno Haible  <bruno@clisp.org>
5269
5270         * tests/test-vasnprintf-posix2.sh: New file.
5271         * tests/test-vasnprintf-posix2.c: New file.
5272         * modules/vasnprintf-posix-tests (Files): Add them and m4/locale-fr.m4.
5273         (configure.ac): Invoke gt_LOCALE_FR and gt_LOCALE_FR_UTF8.
5274         (Makefile.am): Activate test-vasnprintf-posix2.sh.
5275
5276         * lib/vasnprintf.c (VASNPRINTF): For the 'a' and 'A' directives, use
5277         a locale dependent decimal point, rather than always '.'.
5278
5279 2007-03-09  Eric Blake  <ebb9@byu.net>
5280
5281         * lib/stdlib_.h (EXIT_FAILURE): GNU code expects this to be 1, in
5282         spite of platforms like Tandem/NSK that define it to -1.
5283
5284 2007-03-08  Bruno Haible  <bruno@clisp.org>
5285
5286         * modules/vprintf-posix-tests: New file.
5287         * tests/test-vprintf-posix.sh: New file.
5288         * tests/test-vprintf-posix.c: New file.
5289         * tests/test-printf-posix.h: New file.
5290
5291         * modules/vprintf-posix: New file.
5292         * lib/vprintf.c: New file.
5293         * m4/vprintf-posix.m4: New file.
5294         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Set also GNULIB_VPRINTF_POSIX,
5295         REPLACE_VPRINTF.
5296         * lib/stdio_.h (vprintf): New declaration.
5297         * modules/stdio (Makefile.am): Substitute also GNULIB_VPRINTF_POSIX,
5298         REPLACE_VPRINTF.
5299
5300 2007-03-08  Bruno Haible  <bruno@clisp.org>
5301
5302         * modules/fprintf-posix-tests: New file.
5303         * tests/test-fprintf-posix.sh: New file.
5304         * tests/test-fprintf-posix.c: New file.
5305
5306         * modules/fprintf-posix: New file.
5307         * lib/fprintf.c: New file.
5308         * m4/fprintf-posix.m4: New file.
5309         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Set also GNULIB_FPRINTF_POSIX,
5310         REPLACE_FPRINTF.
5311         * lib/stdio_.h (fprintf): New declaration.
5312         * modules/stdio (Makefile.am): Substitute also GNULIB_FPRINTF_POSIX,
5313         REPLACE_FPRINTF.
5314
5315 2007-03-08  Bruno Haible  <bruno@clisp.org>
5316
5317         * modules/vfprintf-posix-tests: New file.
5318         * tests/test-vfprintf-posix.sh: New file.
5319         * tests/test-vfprintf-posix.c: New file.
5320         * tests/test-fprintf-posix.h: New file.
5321         * tests/test-fprintf-posix.out: New file.
5322
5323         * modules/vfprintf-posix: New file.
5324         * lib/vfprintf.c: New file.
5325         * m4/vfprintf-posix.m4: New file.
5326         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Set also GNULIB_VFPRINTF_POSIX,
5327         REPLACE_VFPRINTF.
5328         * lib/stdio_.h (vfprintf): New declaration.
5329         * modules/stdio (Makefile.am): Substitute also GNULIB_VFPRINTF_POSIX,
5330         REPLACE_VFPRINTF.
5331
5332 2007-03-08  Bruno Haible  <bruno@clisp.org>
5333
5334         * lib/stdio_.h: Treat __need___FILE like __need_FILE.
5335
5336 2007-03-08  Bruno Haible  <bruno@clisp.org>
5337
5338         * m4/snprintf-posix.m4 (gl_FUNC_SNPRINTF_POSIX): Use 'case' statements
5339         instead of 'expr' invocations.
5340         * m4/sprintf-posix.m4 (gl_FUNC_SPRINTF_POSIX): Likewise.
5341         * m4/vasnprintf-posix.m4 (gl_FUNC_VASNPRINTF_POSIX): Likewise.
5342         * m4/vasprintf-posix.m4 (gl_FUNC_VASPRINTF_POSIX): Likewise.
5343         * m4/vsnprintf-posix.m4 (gl_FUNC_VSNPRINTF_POSIX): Likewise.
5344         * m4/vsprintf-posix.m4 (gl_FUNC_VSPRINTF_POSIX): Likewise.
5345         Suggested by Paul Eggert.
5346
5347 2007-03-08  Bruno Haible  <bruno@clisp.org>
5348
5349         * modules/fseterr-tests: New file.
5350         * tests/test-fseterr.c: New file.
5351
5352         * modules/fseterr: New file.
5353         * lib/fseterr.h: New file.
5354         * lib/fseterr.c: New file.
5355
5356 2007-03-08  Bruno Haible  <bruno@clisp.org>
5357
5358         * lib/fnmatch_.h: Convert tabs in the middle of lines to spaces.
5359         * lib/getopt_.h: Likewise.
5360         * lib/mbswidth.h: Likewise.
5361         * lib/setenv.h: Likewise.
5362         * lib/vasnprintf.h: Likewise.
5363         * lib/vasprintf.h: Likewise.
5364         * lib/verror.h: Likewise.
5365         * lib/xsetenv.h: Likewise.
5366         * lib/xvasprintf.h: Likewise.
5367
5368 2007-03-08  Jim Meyering  <jim@meyering.net>
5369
5370         * users.txt: Add parted.
5371
5372         * ChangeLog: Restore 1500 lines mistakenly removed from the end.
5373
5374 2007-03-07  Bruno Haible  <bruno@clisp.org>
5375
5376         * m4/printf.m4: Make the shell script snippets copy&pastable.
5377
5378 2007-03-02  Bruno Haible  <bruno@clisp.org>
5379
5380         * lib/netinet_in_.h: New file.
5381         * m4/netinet_in_h.m4 (gl_HEADER_NETINET_IN): Test whether netinet/in.h
5382         is self-contained. Set ABSOLUTE_NETINET_IN_H, HAVE_NETINET_IN_H.
5383         * modules/netinet_in (Files): Add lib/netinet_in_.h.
5384         (Depends-on): Add absolute-header.
5385         (Makefile.am): Substitute ABSOLUTE_NETINET_IN_H, HAVE_NETINET_IN_H
5386         into netinet/in.h.
5387
5388 2007-03-03  Bruno Haible  <bruno@clisp.org>
5389
5390         * lib/sys_select_.h: New file.
5391         * m4/sys_socket_h.m4 (gl_HEADER_SYS_SELECT): Test whether sys/select.h
5392         is self-contained. Set ABSOLUTE_SYS_SELECT_H, HAVE_SYS_SELECT_H.
5393         * modules/sys_select (Files): Add lib/sys_select_.h.
5394         (Depends-on): Add absolute-header.
5395         (Makefile.am): Substitute ABSOLUTE_SYS_SELECT_H, HAVE_SYS_SELECT_H
5396         into sys/select.h.
5397
5398 2007-03-02  Bruno Haible  <bruno@clisp.org>
5399
5400         * lib/socket_.h: If sys/socket.h exists, include that and <sys/types.h>
5401         before it. Turn HAVE_WINSOCK2_H and HAVE_WS2TCPIP_H into configute-time
5402         values.
5403         * m4/sys_socket_h.m4 (gl_HEADER_SYS_SOCKET): Test also whether
5404         <sys/socket.h> is self-contained. Set ABSOLUTE_SYS_SOCKET_H,
5405         HAVE_SYS_SOCKET_H, HAVE_WINSOCK2_H, HAVE_WS2TCPIP_H.
5406         * modules/sys_socket (Depends-on): Add absolute-header.
5407         (Makefile.am): Substitute ABSOLUTE_SYS_SOCKET_H, HAVE_SYS_SOCKET_H,
5408         HAVE_WINSOCK2_H, HAVE_WS2TCPIP_H into sys/socket.h.
5409         (Include): Remove requirement of inclusion of <sys/types.h>.
5410
5411 2007-03-02  Bruno Haible  <bruno@clisp.org>
5412
5413         * lib/byteswap_.h (bswap_32): Fix formula.
5414
5415 2007-03-06  Bruno Haible  <bruno@clisp.org>
5416
5417         * modules/sprintf-posix-tests: New file.
5418         * tests/test-sprintf-posix.c: New file.
5419
5420         * modules/sprintf-posix: New file.
5421         * lib/sprintf.c: New file.
5422         * m4/sprintf-posix.m4: New file.
5423         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Set also GNULIB_SPRINTF_POSIX,
5424         REPLACE_SPRINTF.
5425         * lib/stdio_.h (sprintf): New declaration.
5426         * modules/stdio (Makefile.am): Substitute also GNULIB_SPRINTF_POSIX,
5427         REPLACE_SPRINTF.
5428
5429 2007-03-06  Bruno Haible  <bruno@clisp.org>
5430
5431         * modules/vsprintf-posix-tests: New file.
5432         * tests/test-vsprintf-posix.c: New file.
5433         * tests/test-sprintf-posix.h: New file.
5434
5435         * modules/vsprintf-posix: New file.
5436         * lib/vsprintf.c: New file.
5437         * m4/vsprintf-posix.m4: New file.
5438         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Set also GNULIB_VSPRINTF_POSIX,
5439         REPLACE_VSPRINTF.
5440         * lib/stdio_.h (vsprintf): New declaration.
5441         * modules/stdio (Makefile.am): Substitute also GNULIB_VSPRINTF_POSIX,
5442         REPLACE_VSPRINTF.
5443
5444 2007-03-06  Bruno Haible  <bruno@clisp.org>
5445
5446         * modules/vsnprintf (Depend-on): Remove minmax.
5447
5448 2007-03-06  Bruno Haible  <bruno@clisp.org>
5449
5450         * modules/snprintf-posix-tests: New file.
5451         * tests/test-snprintf-posix.c: New file.
5452
5453         * modules/snprintf-posix: New file.
5454         * m4/snprintf-posix.m4: New file.
5455         * m4/snprintf.m4 (gl_REPLACE_SNPRINTF): New macro, extracted from
5456         gl_FUNC_SNPRINTF.
5457         (gl_FUNC_SNPRINTF): Invoke it.
5458         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Set also REPLACE_SNPRINTF.
5459         * lib/stdio_.h (snprintf): Define as a replacement if REPLACE_SNPRINTF
5460         is set.
5461         * modules/stdio (Makefile.am): Substitute also REPLACE_SNPRINTF.
5462
5463 2007-03-06  Bruno Haible  <bruno@clisp.org>
5464
5465         * modules/vsnprintf-posix-tests: New file.
5466         * tests/test-vsnprintf-posix.c: New file.
5467         * tests/test-snprintf-posix.h: New file.
5468
5469         * modules/vsnprintf-posix: New file.
5470         * m4/vsnprintf-posix.m4: New file.
5471         * m4/vsnprintf.m4 (gl_REPLACE_VSNPRINTF): New macro, extracted from
5472         gl_FUNC_VSNPRINTF.
5473         (gl_FUNC_VSNPRINTF): Invoke it.
5474         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Set also REPLACE_VSNPRINTF.
5475         * lib/stdio_.h (vsnprintf): Define as a replacement if
5476         REPLACE_VSNPRINTF is set.
5477         * modules/stdio (Makefile.am): Substitute also REPLACE_VSNPRINTF.
5478
5479 2007-03-06  Bruno Haible  <bruno@clisp.org>
5480
5481         * m4/vasnprintf.m4 (gl_REPLACE_VASNPRINTF): Test for vasnprintf here.
5482         * m4/vasprintf-posix.m4 (gl_FUNC_VASPRINTF_POSIX): ... not here.
5483
5484 2007-03-06  Bruno Haible  <bruno@clisp.org>
5485
5486         * lib/math_.h (acosl): Declare also if HAVE_DECL_ACOSL is set.
5487         (asinl): Declare also if HAVE_DECL_ASINL is set.
5488         (atanl): Declare also if HAVE_DECL_ATANL is set.
5489         (ceill): Declare also if HAVE_DECL_CEILL is set.
5490         (cosl): Declare also if HAVE_DECL_COSL is set.
5491         (expl): Declare also if HAVE_DECL_EXPL is set.
5492         (floorl): Declare also if HAVE_DECL_FLOORL is set.
5493         (frexpl): Declare also if HAVE_DECL_FREXPL is set.
5494         (ldexpl): Declare also if HAVE_DECL_LDEXPL is set.
5495         (logl): Declare also if HAVE_DECL_LOGL is set.
5496         (sinl): Declare also if HAVE_DECL_SINL is set.
5497         (sqrtl): Declare also if HAVE_DECL_SQRTL is set.
5498         (tanl): Declare also if HAVE_DECL_TANL is set.
5499         * modules/math (Makefile.am): Substitute the values of HAVE_DECL_*.
5500         * m4/math_h.m4 (gl_MATH_H_DEFAULTS): Set HAVE_DECL_* to 1.
5501         * m4/printf-frexpl.m4 (gl_FUNC_PRINTF_FREXPL): Fix tests for the
5502         declaration of frexpl, ldexpl.
5503         * modules/printf-frexpl (Depends-on): Add math.
5504         * lib/printf-frexp.c (frexpl, ldexpl): Undo last change.
5505
5506 2007-03-05  Bruno Haible  <bruno@clisp.org>
5507
5508         * m4/printf-frexpl.m4 (gl_FUNC_PRINTF_FREXPL): Also test whether
5509         frexpl and ldexpl are declared.
5510         * lib/printf-frexp.c (frexpl, ldexpl): Provide fallback declarations.
5511
5512 2007-03-05  Bruno Haible  <bruno@clisp.org>
5513
5514         * gnulib-tool (func_get_automake_snippet): Don't synthesize an
5515         EXTRA_lib_SOURCES augmentation for the relocatable-prog-wrapper module.
5516
5517 2007-03-05  Bruno Haible  <bruno@clisp.org>
5518
5519         * lib/stdio_.h: Include <stddef.h>.
5520
5521 2007-03-05  Bruno Haible  <bruno@clisp.org>
5522
5523         * m4/printf.m4 (gl_SNPRINTF_DIRECTIVE_N): New macro.
5524
5525 2007-03-05  Bruno Haible  <bruno@clisp.org>
5526
5527         * m4/printf.m4: Update with info about OpenBSD 3.9, HP-UX 10.20,
5528         NetBSD 4, from Ralf Wildenhues.
5529
5530 2007-03-04  Bruno Haible  <bruno@clisp.org>
5531
5532         * lib/vasprintf.h: Update #if logic for the case when the functions
5533         exist but are overridden.
5534
5535 2007-03-04  Bruno Haible  <bruno@clisp.org>
5536
5537         * m4/printf.m4 (gl_PRINTF_DIRECTIVE_A): Exclude two buggy
5538         implementations: glibc-2.4 and MacOS X 10.3.
5539         * tests/test-vasnprintf-posix.c (test_function): Test also the case
5540         that exhibits the bugs in glibc-2.4 and MacOS X 10.3.
5541         * tests/test-vasprintf-posix.c (test_function): Likewise.
5542
5543 2007-03-04  Bruno Haible  <bruno@clisp.org>
5544
5545         * modules/vasprintf-posix-tests: New file.
5546         * tests/test-vasprintf-posix.c: New file.
5547
5548         * modules/vasprintf-posix: New file.
5549         * lib/vasprintf.h (asprintf, vasprintf): Rename if REPLACE_VASPRINTF is
5550         defined.
5551         * m4/vasprintf-posix.m4: New file.
5552         * m4/vasprintf.m4 (gl_REPLACE_VASPRINTF): New macro, extracted from
5553         gl_FUNC_VASPRINTF.
5554         (gl_FUNC_VASPRINTF): Invoke it.
5555         * m4/vasnprintf.m4 (gl_REPLACE_VASNPRINTF): Define REPLACE_VASNPRINTF
5556         here.
5557         * m4/vasnprintf-posix.m4 (gl_FUNC_VASNPRINTF_POSIX): Not here.
5558
5559 2007-03-04  Bruno Haible  <bruno@clisp.org>
5560
5561         * lib/sys_time_.h: Rename GETTIMEOFDAY_REPLACEMENT to
5562         REPLACE_GETTIMEOFDAY.
5563         * modules/sys_time (Makefile.am): Likewise.
5564         * m4/sys_time_h.m4: Likewise.
5565         * m4/gettimeofday.m4: Likewise.
5566
5567 2007-03-04  Bruno Haible  <bruno@clisp.org>
5568
5569         * modules/vasnprintf-posix-tests: New file.
5570         * tests/test-vasnprintf-posix.c: New file.
5571
5572         * modules/vasnprintf-posix: New file.
5573         * lib/vasnprintf.c: Include isnan.h, isnanl.h, printf-frexp.h,
5574         printf-frexpl.h.
5575         (VASNPRINTF): Handle the 'a' and 'A' directives here, if needed.
5576         * lib/vasnprintf.h (asnprintf, vasnprintf): Rename if
5577         REPLACE_VASNPRINTF is defined.
5578         * m4/vasnprintf.m4 (gl_REPLACE_VASNPRINTF): New macro, extracted from
5579         gl_FUNC_VASNPRINTF.
5580         (gl_FUNC_VASNPRINTF): Invoke it.
5581         * m4/vasnprintf-posix.m4: New file.
5582         * m4/printf.m4: New file.
5583
5584 2007-03-04  Bruno Haible  <bruno@clisp.org>
5585
5586         Compile progreloc.c only if --enable-relocatable is specified.
5587         * m4/relocatable.m4 (gl_RELOCATABLE): Arrange to compile progreloc.c
5588         if --enable-relocatable was specified.
5589         * modules/relocatable-prog (Makefile.am): Remove progreloc.c from
5590         lib_SOURCES.
5591
5592 2007-03-04  Jim Meyering  <jim@meyering.net>
5593
5594         * lib/acl.c (ACL_NOT_WELL_SUPPORTED): New macro.
5595         Use it consistently, rather than enumerating errno constants.
5596
5597 2007-03-04  Bruno Haible  <bruno@clisp.org>
5598
5599         * modules/xvasprintf-tests: New file.
5600         * tests/test-xvasprintf.c: New file.
5601
5602         * modules/vasprintf-tests: New file.
5603         * tests/test-vasprintf.c: New file.
5604
5605         * modules/vasnprintf-tests: New file.
5606         * tests/test-vasnprintf.c: New file.
5607
5608         * modules/vsnprintf-tests: New file.
5609         * tests/test-vsnprintf.c: New file.
5610
5611         * modules/snprintf-tests: New file.
5612         * tests/test-snprintf.c: New file.
5613
5614 2007-03-04  Bruno Haible  <bruno@clisp.org>
5615
5616         Compile relocatable.c only if --enable-relocatable is specified.
5617         * m4/relocatable-lib.m4 (gl_RELOCATABLE_LIBRARY_BODY): Renamed from
5618         gl_RELOCATABLE_LIBRARY.
5619         (gl_RELOCATABLE_LIBRARY, gl_RELOCATABLE_LIBRARY_SEPARATE): New macros.
5620         * m4/relocatable.m4 (gl_RELOCATABLE): Invoke gl_RELOCATABLE_LIBRARY.
5621         (gl_RELOCATABLE_BODY): Require gl_RELOCATABLE_LIBRARY_BODY instead of
5622         gl_RELOCATABLE_LIBRARY.
5623         * modules/relocatable-lib (configure.ac): Invoke gl_RELOCATABLE_LIBRARY.
5624         (Makefile.am): Remove lib_SOURCES.
5625         * modules/relocatable-lib-lgpl (configure.ac): Invoke
5626         gl_RELOCATABLE_LIBRARY.
5627         (Makefile.am): Remove lib_SOURCES.
5628         * modules/relocatable-prog (Makefile.am): Don't compile relocatable.c
5629         always.
5630         * modules/relocatable-prog-wrapper (configure.ac): Invoke
5631         gl_RELOCATABLE_LIBRARY_SEPARATE instead of gl_RELOCATABLE_LIBRARY.
5632
5633 2007-03-04  Bruno Haible  <bruno@clisp.org>
5634
5635         * modules/argmatch-tests: New file.
5636         * tests/test-argmatch.c: New file.
5637
5638         * tests/test-allocsa.c (main): Halve the number of loop runs.
5639
5640         * modules/alloca-opt-tests: New file.
5641         * tests/test-alloca-opt.c: New file.
5642
5643 2007-03-04  Jim Meyering  <jim@meyering.net>
5644
5645         Work around difference between Linux ACLs and Solaris 10 ZFS.
5646         * lib/acl.c (set_acl): Revert to using chmod_or_fchmod also
5647         for EINVAL.
5648
5649 2007-03-03  Bruno Haible  <bruno@clisp.org>
5650
5651         * modules/relocatable-prog (Depends-on): Add back progreloc's
5652         dependencies: canonicalize-lgpl, xalloc, xreadlink, stdbool, unistd.
5653
5654 2007-03-03  Bruno Haible  <bruno@clisp.org>
5655
5656         * modules/relocatable-lib-lgpl: Renamed from modules/relocatable-lib.
5657         * modules/relocatable-lib: New file.
5658
5659 2007-03-03  Bruno Haible  <bruno@clisp.org>
5660
5661         * modules/relocatable-prog: Renamed from modules/relocatable.
5662         * doc/relocatable-maint.texi: Talk about module 'relocatable-prog'.
5663
5664 2007-03-03  Bruno Haible  <bruno@clisp.org>
5665
5666         * modules/relocatable-script (Files): Add doc/relocatable.texi,
5667         m4/relocatable-lib.m4.
5668         (Depends-on): Remove 'relocatable'.
5669         (configure.ac): Add gl_RELOCATABLE_NOP.
5670
5671 2007-03-03  Bruno Haible  <bruno@clisp.org>
5672
5673         * modules/relocatable-prog-wrapper: New file.
5674         * modules/relocatable (Depends-on): Add it. Remove all other
5675         dependencies except progname.
5676         (Files): Remove build-aux/install-reloc, lib/relocwrapper.c.
5677
5678         * m4/strerror.m4 (gl_FUNC_STRERROR_SEPARATE): New macro.
5679         (gl_FUNC_STRERROR): Nop.
5680         * lib/strerror.c: Compile the file only if !HAVE_STRERROR.
5681
5682         * m4/setenv.m4 (gl_FUNC_SETENV_SEPARATE): New macro.
5683         * lib/setenv.c: Compile the file only if _LIBC || !HAVE_SETENV.
5684
5685         * m4/readlink.m4 (gl_FUNC_READLINK_SEPARATE): New macro.
5686         (gl_FUNC_READLINK): Update.
5687
5688         * m4/canonicalize-lgpl.m4 (gl_CANONICALIZE_LGPL_SEPARATE): New macro.
5689
5690 2007-03-03  Bruno Haible  <bruno@clisp.org>
5691
5692         * lib/xreadlink.c: Include <unistd.h> unconditionally.
5693         * modules/xreadlink (Depends-on): Add unistd.
5694         * modules/xreadlink-with-size (Depends-on): Likewise.
5695
5696 2007-03-03  Bruno Haible  <bruno@clisp.org>
5697
5698         * m4/setenv.m4 (gl_FUNC_SETENV, gl_FUNC_UNSETENV): New macros,
5699         extracted from gt_FUNC_SETENV.
5700         (gt_FUNC_SETENV): Remove macro.
5701         * modules/setenv (configure.ac): Add gl_FUNC_SETENV, gl_FUNC_UNSETENV,
5702         remove gt_FUNC_SETENV.
5703
5704 2007-03-03  Bruno Haible  <bruno@clisp.org>
5705
5706         * m4/relocatable-lib.m4 (gl_RELOCATABLE_LIBRARY): Define
5707         ENABLE_RELOCATABLE here.
5708         * m4/relocatable.m4 (gl_RELOCATABLE_BODY): Don't define it here.
5709
5710 2007-03-03  Bruno Haible  <bruno@clisp.org>
5711
5712         * modules/rbtreehash-list-tests (Depends-on): Add progname.
5713         * tests/test-rbtreehash_list.c: Include progname.h.
5714         (main): Call set_program_name.
5715
5716         * modules/rbtree-oset-tests (Depends-on): Add progname.
5717         * tests/test-rbtree_oset.c: Include progname.h.
5718         (main): Call set_program_name.
5719
5720         * modules/rbtree-list-tests (Depends-on): Add progname.
5721         * tests/test-rbtree_list.c: Include progname.h.
5722         (main): Call set_program_name.
5723
5724         * modules/linked-list-tests (Depends-on): Add progname.
5725         * tests/test-linked_list.c: Include progname.h.
5726         (main): Call set_program_name.
5727
5728 2007-03-03  Bruno Haible  <bruno@clisp.org>
5729
5730         * lib/glob-libc.h (_Restrict_): New macro, copied from lib/regex.h.
5731         All uses of __restrict changed to _Restrict_.
5732         * lib/glob_.h (__restrict): Remove macro.
5733
5734 2007-03-02  Bruno Haible  <bruno@clisp.org>
5735
5736         * modules/gettext (configure.ac): Require gettext infrastructure
5737         from version 0.16.1.
5738
5739 2007-03-02  Bruno Haible  <bruno@clisp.org>
5740
5741         * modules/linkedhash-list-tests (Depends-on): Add progname.
5742         * tests/test-linkedhash_list.c: Include progname.h.
5743         (main): Call set_program_name.
5744
5745         * modules/carray-list-tests (Depends-on): Add progname.
5746         * tests/test-carray_list.c: Include progname.h.
5747         (main): Call set_program_name.
5748
5749         * modules/avltreehash-list-tests (Depends-on): Add progname.
5750         * tests/test-avltreehash_list.c: Include progname.h.
5751         (main): Call set_program_name.
5752
5753         * modules/avltree-oset-tests (Depends-on): Add progname.
5754         * tests/test-avltree_oset.c: Include progname.h.
5755         (main): Call set_program_name.
5756
5757         * modules/avltree-list-tests (Depends-on): Add progname.
5758         * tests/test-avltree_list.c: Include progname.h.
5759         (main): Call set_program_name.
5760
5761         * modules/array-oset-tests (Depends-on): Add progname.
5762         * tests/test-array_oset.c: Include progname.h.
5763         (main): Call set_program_name.
5764
5765         * modules/array-list-tests (Depends-on): Add progname.
5766         * tests/test-array_list.c: Include progname.h.
5767         (main): Call set_program_name.
5768
5769         * modules/argp-tests (Depends-on): Add progname.
5770         * tests/test-argp.c: Include argp.h first. Include progname.h.
5771         (main): Call set_program_name.
5772
5773 2007-03-02  Paul Eggert  <eggert@cs.ucla.edu>
5774
5775         * doc/gnulib-tool.texi (Initial import): Reword description of
5776         _FILE_OFFSET_BITS and _GNU_SOURCE, since they sometimes have a
5777         limited effect even if defined after the first system include.
5778
5779 2007-03-01  Bruno Haible  <bruno@clisp.org>
5780
5781         * build-aux/config.libpath: Update to libtool-1.5.22.
5782         Reported by Albert Chin <bug-gnulib@mlists.thewrittenword.com>.
5783
5784 2007-03-01  Bruno Haible  <bruno@clisp.org>
5785
5786         * doc/relocatable-maint.texi: Recommend to set foo_CPPFLAGS, not
5787         foo_CFLAGS.
5788         Reported by Ralf Wildenhues.
5789
5790 2007-03-01  Bruno Haible  <bruno@clisp.org>
5791
5792         * build-aux/install-reloc: Remove object files left over by some
5793         compilers.
5794         Reported by Ralf Wildenhues.
5795
5796 2007-03-01  Bruno Haible  <bruno@clisp.org>
5797
5798         * build-aux/install-reloc: Break long lines.
5799
5800 2007-03-01  Bruno Haible  <bruno@clisp.org>
5801
5802         * doc/relocatable.texi: Document that it may not work on OpenBSD.
5803         Reported by Ralf Wildenhues.
5804
5805 2007-03-01  Bruno Haible  <bruno@clisp.org>
5806
5807         * doc/gnulib-tool.texi (Initial import): Remove paragraph about
5808         include ordering constraints.
5809
5810 2007-03-01  Paul Eggert  <eggert@cs.ucla.edu>
5811
5812         Followup to the 2007-02-12 patch, using suggestions from Bruno Haible in
5813         <http://lists.gnu.org/archive/html/bug-gnulib/2007-02/msg00136.html>.
5814         * doc/gnulib-tool.texi (Initial import): Mention _FILE_OFFSET_BITS
5815         as another example.
5816         * lib/time_.h: Fix misspelling.
5817         * m4/nanosleep.m4 (gl_FUNC_NANOSLEEP):
5818         Require gl_HEADER_TIME_H_DEFAULTS.
5819         * m4/strptime.m4 (gl_FUNC_STRPTIME): Likewise.
5820         * m4/time_r.m4 (gl_TIME_R): Likewise.
5821         * m4/timegm.m4 (gl_FUNC_TIMEGM): Likewise.
5822
5823 2007-03-01  Bruno Haible  <bruno@clisp.org>
5824
5825         * m4/utimecmp.m4 (gl_UTIMECMP): Don't require gl_TIMESPEC.
5826         * m4/utimens.m4 (gl_UTIMENS): Likewise.
5827
5828 2007-03-01  Jim Meyering  <jim@meyering.net>
5829
5830         * modules/xreadlink (Maintainer): Add my name.
5831         * modules/xreadlink-with-size (Depends-on): Alphabetize.
5832
5833 2007-02-26  Ben Pfaff  <blp@cs.stanford.edu>
5834             Bruno Haible  <bruno@clisp.org>
5835
5836         * build-aux/install-reloc: Compile also c-ctype.c.
5837         * build-aux/relocatable.sh.in: New file.
5838         * doc/relocatable.texi: New file.
5839         * doc/relocatable-maint.texi: New file.
5840         * doc/gnulib.texi: Include relocatable-maint.texi.
5841         * lib/progreloc.c: Include unistd.h unconditionally.
5842         * lib/relocwrapper.c: Include unistd.h unconditionally.
5843         Include c-ctype.h.
5844         (add_dotbin): Use c_tolower.
5845         * m4/relocatable-lib.m4: New file, extracted from m4/relocatable.m4.
5846         (gl_RELOCATABLE_LIBRARY): Renamed from AC_RELOCATABLE_LIBRARY.
5847         (gl_RELOCATABLE_NOP): Renamed from AC_RELOCATABLE_NOP.
5848         * m4/relocatable.m4 (AC_RELOCATABLE_LIBRARY, AC_RELOCATABLE_NOP): Move
5849         to m4/relocatable-lib.m4.
5850         (gl_RELOCATABLE): Renamed from AC_RELOCATABLE. Set also
5851         RELOCATABLE_CONFIG_H_DIR, RELOCATABLE_SRC_DIR, RELOCATABLE_BUILD_DIR.
5852         (gl_RELOCATABLE_BODY): Renamed from AC_RELOCATABLE_BODY. Don't
5853         require obsolete macro AC_EXEEXT. Don't check for unistd.h. Don't set
5854         SET_RELOCATABLE. Instead set RELOCATABLE_LDFLAGS, INSTALL_PROGRAM_ENV.
5855         * modules/relocatable: New file.
5856         * modules/relocatable-lib: New file.
5857         * modules/relocatable-script: New file.
5858
5859 2007-02-28  Bruno Haible  <bruno@clisp.org>
5860
5861         Import --enable-relocatable infrastructure.
5862         * build-aux/config.libpath: New file, from GNU gettext.
5863         * build-aux/install-reloc: New file, from GNU gettext.
5864         * build-aux/reloc-ldflags: New file, from GNU gettext.
5865         * lib/relocatable.h: New file, from GNU gettext.
5866         * lib/relocatable.c: New file, from GNU gettext.
5867         * lib/relocwrapper.c: New file, from GNU gettext.
5868         * m4/relocatable.m4: New file, from GNU gettext.
5869
5870 2007-02-28  Bruno Haible  <bruno@clisp.org>
5871
5872         * MODULES.html.sh (File system functions): Add xreadlink-with-size.
5873
5874         * modules/xreadlink: New file, from GNU gettext with modifications.
5875         * lib/xreadlink.c: New file, from GNU gettext.
5876         * lib/xreadlink.h: Add comments.
5877         (xreadlink): New declaration.
5878
5879         * modules/xreadlink-with-size: Renamed from modules/xreadlink.
5880         (Files): Remove m4/xreadlink.m4. Replace lib/xreadlink.c with
5881         lib/xreadlink-with-size.c.
5882         (configure.ac): Remove gl_XREADLINK invocation.
5883         (Makefile.am): Augment lib_SOURCES.
5884         * m4/xreadlink.m4: Remove file.
5885         * lib/xreadlink-with-size.c: Renamed from lib/xreadlink.c.
5886         (xreadlink_with_size): Renamed from xreadink.
5887         * lib/xreadlink.h (xreadlink_with_size): Renamed from xreadink.
5888         * modules/canonicalize (Depends-on): Replace xreadlink with
5889         xreadlink-with-size.
5890         * lib/canonicalize.c (canonicalize_filename_mode): Update.
5891
5892 2007-02-25  Jim Meyering  <jim@meyering.net>
5893
5894         * build-aux/announce-gen: When complaining about excess arguments,
5895         list them.
5896
5897 2007-02-25  Paul Eggert  <eggert@cs.ucla.edu>
5898
5899         * README: Document signed integer overflow situation more
5900         accurately.
5901
5902 2007-02-25  Bruno Haible  <bruno@clisp.org>
5903
5904         * lib/vasnprintf.c (VASNPRINTF): Fix estimate of size needed for a
5905         'a' or 'A' conversion.
5906
5907 2007-02-25  Bruno Haible  <bruno@clisp.org>
5908
5909         * modules/filename: Renamed from modules/pathname.
5910         (Files): Replace lib/pathname.h with lib/filename.h. Replace
5911         lib/concatpath.c with lib/concat-filename.c.
5912         (Makefile.am): Update.
5913         (Include): Replace pathname.h with filename.h.
5914         * lib/filename.h: Renamed from lib/pathname.h.
5915         (concatenated_filename): Renamed from concatenated_pathname.
5916         * lib/concat-filename.c: Renamed from lib/concatpath.c.
5917         (concatenated_filename): Renamed from concatenated_pathname.
5918         * lib/findprog.c: Include filename.h instead of pathname.h.
5919         (find_in_path): Update.
5920         * lib/javacomp.c: Include filename.h instead of pathname.h.
5921         (is_envjavac_gcj43_usable, is_envjavac_oldgcj_14_14_usable,
5922         is_envjavac_oldgcj_14_13_usable, is_envjavac_nongcj_usable,
5923         is_gcj_present, is_gcj43_usable, is_oldgcj_14_14_usable,
5924         is_oldgcj_14_13_usable, is_javac_usable): Update.
5925         * lib/javaexec.c: Include filename.h instead of pathname.h.
5926         (execute_java_class): Update.
5927         * modules/findprog: Update.
5928         * modules/javacomp: Update.
5929         * modules/javaexec: Update.
5930         * MODULES.html.sh (File system functions): Add 'filename', remove
5931         'pathname'.
5932
5933 2007-02-25  Bruno Haible  <bruno@clisp.org>
5934
5935         * modules/printf-frexpl-tests: New file.
5936         * tests/test-printf-frexpl.c: New file.
5937
5938         * modules/printf-frexpl: New file.
5939         * lib/printf-frexpl.h: New file.
5940         * lib/printf-frexpl.c: New file.
5941         * m4/printf-frexpl.m4: New file.
5942
5943 2007-02-25  Bruno Haible  <bruno@clisp.org>
5944
5945         * modules/printf-frexp-tests: New file.
5946         * tests/test-printf-frexp.c: New file.
5947
5948         * modules/printf-frexp: New file.
5949         * lib/printf-frexp.h: New file.
5950         * lib/printf-frexp.c: New file.
5951         * m4/printf-frexp.m4: New file.
5952
5953 2007-02-25  Bruno Haible  <bruno@clisp.org>
5954
5955         Assume automake >= 1.10 for the tests.
5956         * modules/arcfour-tests (TESTS): Remove $(EXEEXT) suffix.
5957         * modules/arctwo-tests: Likewise.
5958         * modules/argp-tests: Likewise.
5959         * modules/avltree-list-tests: Likewise.
5960         * modules/avltree-oset-tests: Likewise.
5961         * modules/avltreehash-list-tests: Likewise.
5962         * modules/carray-list-tests: Likewise.
5963         * modules/crc-tests: Likewise.
5964         * modules/des-tests: Likewise.
5965         * modules/gc-arcfour-tests: Likewise.
5966         * modules/gc-arctwo-tests: Likewise.
5967         * modules/gc-des-tests: Likewise.
5968         * modules/gc-hmac-md5-tests: Likewise.
5969         * modules/gc-hmac-sha1-tests: Likewise.
5970         * modules/gc-md2-tests: Likewise.
5971         * modules/gc-md4-tests: Likewise.
5972         * modules/gc-md5-tests: Likewise.
5973         * modules/gc-pbkdf2-sha1-tests: Likewise.
5974         * modules/gc-rijndael-tests: Likewise.
5975         * modules/gc-sha1-tests: Likewise.
5976         * modules/gc-tests: Likewise.
5977         * modules/getaddrinfo-tests: Likewise.
5978         * modules/hmac-md5-tests: Likewise.
5979         * modules/hmac-sha1-tests: Likewise.
5980         * modules/linked-list-tests: Likewise.
5981         * modules/linkedhash-list-tests: Likewise.
5982         * modules/lock-tests: Likewise.
5983         * modules/md2-tests: Likewise.
5984         * modules/md4-tests: Likewise.
5985         * modules/md5-tests: Likewise.
5986         * modules/rbtree-list-tests: Likewise.
5987         * modules/rbtree-oset-tests: Likewise.
5988         * modules/rbtreehash-list-tests: Likewise.
5989         * modules/read-file-tests: Likewise.
5990         * modules/rijndael-tests: Likewise.
5991         * modules/stdint-tests: Likewise.
5992         * modules/tls-tests: Likewise.
5993
5994 2007-02-24  Bruno Haible  <bruno@clisp.org>
5995
5996         * lib/isnanl.h (isnanl): Define through isnan if isnan is a macro.
5997         * m4/isnan.m4 (gl_FUNC_ISNAN_NO_LIBM): Don't check for isnan as a
5998         function; instead check whether isnan with a double argument links.
5999         * m4/isnanl.m4 (gl_FUNC_ISNANL_NO_LIBM): Don't check for isnanl as a
6000         function; instead check whether isnan with a 'long double' argument
6001         links.
6002         Reported by Eric Blake <ebb9@byu.net>.
6003
6004 2007-02-24  Bruno Haible  <bruno@clisp.org>
6005
6006         * lib/isnan.c: Support the 'long double' case if USE_LONG_DOUBLE is
6007         defined.
6008         * lib/isnanl.c: Remove all code. Just include isnan.c.
6009         * modules/isnanl-nolibm (Files): Add lib/isnan.c.
6010
6011 2007-02-25  Jim Meyering  <jim@meyering.net>
6012
6013         Avoid conflicting types for 'unsetenv' on FreeBSD.
6014         * lib/putenv.c (_unsetenv): Rename from "unsetenv", to avoid
6015         conflicting with FreeBSD's (5.0 and 6.1) function declaration
6016         in stdlib.h.
6017
6018 2007-02-24  Bruno Haible  <bruno@clisp.org>
6019
6020         * modules/isnanl-nolibm-tests: New file.
6021         * tests/test-isnanl.c: New file.
6022
6023         * modules/isnanl-nolibm: New file.
6024         * lib/isnanl.h: New file.
6025         * lib/isnanl.c: New file.
6026         * m4/isnanl.m4: New file.
6027
6028 2007-02-24  Bruno Haible  <bruno@clisp.org>
6029
6030         * modules/isnan-nolibm-tests: New file.
6031         * tests/test-isnan.c: New file.
6032
6033         * modules/isnan-nolibm: New file.
6034         * lib/isnan.h: New file.
6035         * lib/isnan.c: New file.
6036         * m4/isnan.m4: New file.
6037
6038 2007-02-24  Bruno Haible  <bruno@clisp.org>
6039
6040         * lib/frexpl.c (frexpl): Correct return values for x = 1.0L. Don't
6041         assume that an exponent fits in 20 bits.
6042
6043 2007-02-24  Jim Meyering  <jim@meyering.net>
6044
6045         * m4/regex.m4: Update the description of the configure-time option,
6046         --without-included-regex, to state accurately what the defaults are,
6047         and perhaps to give people an idea why using this option is risky.
6048
6049 2007-02-24  Paul Eggert  <eggert@cs.ucla.edu>
6050
6051         * m4/nanosleep.m4 (gl_FUNC_NANOSLEEP): Check for a nanosleep that
6052         loops on small arguments.  This attempts to avoid the problem
6053         Bruno Haible reported for AIX 4.3.2 in
6054         <http://lists.gnu.org/archive/html/bug-gnulib/2007-02/msg00309.html>.
6055
6056 2007-02-23  Bruno Haible  <bruno@clisp.org>
6057
6058         * m4/perl.m4 (gl_PERL): Require version 5.005, not 5.003.
6059         Needed for help2man.
6060
6061 2007-02-23  Karl Berry  <karl@gnu.org>
6062
6063         * doc/gnulib-tool.texi (CVS Issues): mention that when foo_.h
6064         exists, foo.h should be cvs-ignored, not committed.
6065
6066 2007-02-23  Eric Blake  <ebb9@byu.net>
6067
6068         * lib/getdate.h (includes):  Include <time.h>, not "timespec.h".
6069         * lib/stat-time.h (includes): Likewise.
6070         * lib/utimecmp.c (includes): Likewise.
6071         * lib/utimens.h (includes): Likewise.
6072         * lib/getdate.y (includes): Also include "timespec.h" for use
6073         internal to the module.
6074         * modules/utimens (Depends-on): Revert yesterday's patch.
6075         * modules/nanosleep (Depends-on): Add missing dependency.
6076
6077 2007-02-22  Bruno Haible  <bruno@clisp.org>
6078
6079         * lib/glob.c: Don't include getlogin_r.h.
6080
6081 2007-02-22  Jim Meyering  <jim@meyering.net>
6082
6083         * modules/utimens (Depends-on): Add timespec, required for
6084         utimens.h's inclusion of timespec.h.
6085
6086 2007-02-21  Paul Eggert  <eggert@cs.ucla.edu>
6087
6088         * lib/getcwd.c (__getcwd): Undo previous change; it mishandled
6089         long unreadable paths in GNU/Linux.  Problem reported by Andreas
6090         Schwab in
6091         <http://lists.gnu.org/archive/html/bug-gnulib/2007-02/msg00261.html>.
6092         I'll try to think of a better way to fix the Solaris problem.
6093
6094         * lib/getcwd.c (__getcwd): Don't assume getcwd (NULL, 0) works
6095         like glibc; on Solaris 10, it fails with errno == EINVAL.
6096         POSIX says the behavior is unspecified if the first argument is NULL,
6097         so play it safe and never pass NULL to the system getcwd.
6098
6099 2007-02-21  Jim Meyering  <jim@meyering.net>
6100
6101         * lib/gettimeofday.c (rpl_gettimeofday): Remove declaration
6102         of gettimeofday.  It would conflict with the one now always
6103         provided via sys_time_.h.  Reported by Matthew Woehlke, as
6104         an IRIX 6.5 build failure.
6105
6106 2007-02-20  Paul Eggert  <eggert@cs.ucla.edu>
6107
6108         Minor fixups to port to Solaris 10 with Sun C 5.8.
6109         * lib/getcwd.c [!_LIBC]: Include dirfd.h, since we use dirfd.
6110         * modules/getcwd (Depends-on): Add dirfd.
6111         * lib/putenv.c (putenv): #undef it.
6112         (rpl_putenv): New decl.
6113         (malloc, free): Include <stdlib.h> rather than prototyping separately.
6114
6115 2007-02-20  Bruno Haible  <bruno@clisp.org>
6116
6117         * modules/stdio-tests: New file.
6118         * tests/test-stdio.c: New file.
6119
6120         * modules/vsnprintf (Files): Remove lib/vsnprintf.h.
6121         (Depends-on): Add stdio.
6122         (configure.ac): Invoke gl_STDIO_MODULE_INDICATOR.
6123         (Include): Use <stdio.h> instead of vsnprintf.h.
6124         * m4/vsnprintf.m4 (gl_FUNC_VSNPRINTF): Require gl_STDIO_H_DEFAULTS. Set
6125         HAVE_DECL_VSNPRINTF.
6126         * lib/vsnprintf.c: Include <stdio.h> instead of vsnprintf.h.
6127
6128         * modules/snprintf (Files): Remove lib/snprintf.h.
6129         (Depends-on): Add stdio.
6130         (configure.ac): Invoke gl_STDIO_MODULE_INDICATOR.
6131         (Include): Use <stdio.h> instead of snprintf.h.
6132         * m4/snprintf.m4 (gl_FUNC_SNPRINTF): Require gl_STDIO_H_DEFAULTS. Set
6133         HAVE_DECL_SNPRINTF.
6134         * lib/snprintf.c: Include <stdio.h> instead of snprintf.h.
6135         * lib/getaddrinfo.c: Likewise.
6136
6137         * modules/stdio: New file.
6138         * lib/stdio_.h: New file, incorporating snprintf.h and vsnprintf.h.
6139         * lib/snprintf.h: Remove file.
6140         * lib/vsnprintf.h: Remove file.
6141         * lib/.cppi-disable: Remove snprintf.h.
6142         * m4/stdio_h.m4: New file.
6143         * MODULES.html.sh (Support for systems lacking ISO C 99): Add stdio.
6144
6145 2007-02-20  Jim Meyering  <jim@meyering.net>
6146
6147         * lib/ftruncate.c [HAVE_CHSIZE]: Document that this code is
6148         used by e.g., mingw.  From Bruno Haible.
6149
6150 2007-02-19  Bruno Haible  <bruno@clisp.org>
6151
6152         * lib/string_.h: Use "#pragma GCC system_header" to suppress some gcc
6153         warnings.
6154         Reported by Ben Pfaff <blp@cs.stanford.edu>.
6155
6156 2007-02-19  Bruno Haible  <bruno@clisp.org>
6157
6158         * m4/ftruncate.m4 (gl_FUNC_FTRUNCATE): Don't request a complaint mail
6159         from mingw users.
6160
6161 2007-02-19  Bruno Haible  <bruno@clisp.org>
6162
6163         * lib/stdlib_.h: Use "#pragma GCC system_header" to suppress some gcc
6164         warnings.
6165         Reported by Joel E. Denny <jdenny@ces.clemson.edu> via Paul Eggert.
6166
6167 2007-02-19  Jim Meyering  <jim@meyering.net>
6168
6169         Don't use FD after a successful "fdopendir (fd)".
6170         * lib/getcwd.c (__getcwd) [AT_FDCWD]: fdopendir (fd) usually closes fd.
6171         Reset it by calling dirfd on the just-obtained DIR*.
6172
6173         * m4/ftruncate.m4: Adjust comment to give this module a 3-year reprieve.
6174         Prompted by a report from Bruno Haible that mingw lacks ftruncate.
6175
6176 2007-02-18  Bruno Haible  <bruno@clisp.org>
6177
6178         * lib/readlink.c: Include <unistd.h>.
6179         * m4/readlink.m4 (gl_FUNC_READLINK): Require gl_UNISTD_H_DEFAULTS. Set
6180         HAVE_READLINK.
6181         * modules/readlink (Depends-on): Add unistd.
6182         (configure.ac): Invoke gl_UNISTD_MODULE_INDICATOR.
6183         (Include): Add <unistd.h>.
6184
6185         * lib/getlogin_r.h: Remove file.
6186         * lib/getlogin_r.c: Include <unistd.h> instead of getlogin_r.h.
6187         * m4/getlogin_r.m4 (gl_GETLOGIN_R_SUBSTITUTE): Remove macro.
6188         (gl_GETLOGIN_R): Inline it here. Require gl_UNISTD_H_DEFAULTS. Set
6189         HAVE_DECL_GETLOGIN_R.
6190         * modules/getlogin_r (Files): Remove lib/getlogin_r.h.
6191         (configure.ac): Invoke gl_UNISTD_MODULE_INDICATOR.
6192         (Include): Use <unistd.h> instead of getlogin_r.h.
6193
6194         * lib/getcwd.h: Remove file.
6195         * lib/getcwd.c: Include <unistd.h> instead of getcwd.h.
6196         * lib/xgetcwd.c: Likewise.
6197         * m4/getcwd.m4 (gl_FUNC_GETCWD): Require gl_UNISTD_H_DEFAULTS. Set
6198         REPLACE_GETCWD. Don't define __GETCWD_PREFIX.
6199         * modules/getcwd (Files): Remove lib/getcwd.h.
6200         (Depends-on): Add unistd.
6201         (configure.ac): Invoke gl_UNISTD_MODULE_INDICATOR.
6202         (Include): Use <unistd.h> instad of getcwd.h.
6203
6204         * lib/ftruncate.c: Include <unistd.h> first.
6205         * m4/ftruncate.m4 (gl_FUNC_FTRUNCATE): Require gl_UNISTD_H_DEFAULTS.
6206         Set HAVE_FTRUNCATE.
6207         * modules/ftruncate (Depends-on): Add unistd.
6208         (configure.ac): Invoke gl_UNISTD_MODULE_INDICATOR.
6209
6210         * lib/fchdir.c: Include <unistd.h> first.
6211         * lib/dirent_.h: Test REPLACE_FCHDIR, not FCHDIR_REPLACEMENT.
6212         * m4/fchdir.m4 (gl_FUNC_FCHDIR): Require gl_UNISTD_H_DEFAULTS instead
6213         of gl_HEADER_UNISTD_DEFAULTS. Set REPLACE_FCHDIR. Don't set UNISTD_H.
6214         * modules/fchdir (configure.ac): Invoke gl_UNISTD_MODULE_INDICATOR.
6215         (Makefile.am): Substitute also REPLACE_FCHDIR into dirent.h.
6216
6217         * lib/dup2.c: Include <unistd.h> first.
6218         * m4/dup2.m4 (gl_FUNC_DUP2): Require gl_UNISTD_H_DEFAULTS. Set
6219         HAVE_DUP2.
6220         * modules/dup2 (Depends-on): Add unistd.
6221         (configure.ac): Invoke gl_UNISTD_MODULE_INDICATOR.
6222
6223         * lib/chown.c: Include <unistd.h> first. Undefine chown later.
6224         * m4/chown.m4 (gl_FUNC_CHOWN): Require gl_UNISTD_H_DEFAULTS. Set
6225         REPLACE_CHOWN. Don't define chown as a macro here.
6226         * modules/chown (Depends-on): Add unistd.
6227         (configure.ac): Invoke gl_UNISTD_MODULE_INDICATOR.
6228
6229         * lib/unistd_.h: Test HAVE_UNISTD_H determined at configure time.
6230         Add definition for GL_LINK_WARNING.
6231         (chown, dup2): New declarations.
6232         (fchdir): Test REPLACE_FCHDIR, not FCHDIR_REPLACEMENT. Provide optional
6233         link warning.
6234         (ftruncate): New declaration.
6235         (getcwd): New declaration, taken from old getcwd.h.
6236         (getlogin_r): New declaration, taken from old getlogin_r.h.
6237         (readlink): New declaration.
6238         * m4/unistd_h.m4 (gl_UNISTD_H): Renamed from gl_HEADER_UNISTD. Don't
6239         set UNISTD_H. Inline gl_PREREQ_UNISTD. Set HAVE_UNISTD_H.
6240         (gl_PREREQ_UNISTD): Remove macro.
6241         (gl_UNISTD_MODULE_INDICATOR): New macro.
6242         (gl_UNISTD_H_DEFAULTS): Renamed from gl_HEADER_UNISTD_DEFAULTS. Set
6243         many new variables. Don't set UNISTD_H.
6244         * modules/unistd (Description): Change.
6245         (Depends-on): Add link-warning.
6246         (configure.ac): Update.
6247         (Makefile.am): Create unistd.h always. Substitute many new variables
6248         into it.
6249
6250 2007-02-18  Bruno Haible  <bruno@clisp.org>
6251
6252         * lib/stdlib_.h (getsubopt): New declaration, copied from getsubopt.h.
6253         * modules/stdlib (stdlib.h): Also substitute GNULIB_GETSUBOPT and
6254         HAVE_GETSUBOPT.
6255         * m4/stdlib_h.m4 (gl_STDLIB_H_DEFAULTS): Also initialize
6256         GNULIB_GETSUBOPT and HAVE_GETSUBOPT.
6257         * lib/getsubopt.h: Remove file.
6258         * modules/getsubopt (Files): Remove lib/getsubopt.h.
6259         (Depends-on): Add stdlib.
6260         (configure.ac): Invoke gl_STDLIB_MODULE_INDICATOR.
6261         (Includes): Use <stdlib.h> instead of getsubopt.h.
6262         * m4/getsubopt.m4 (gl_FUNC_GETSUBOPT): Require gl_STDLIB_H_DEFAULTS.
6263         Set HAVE_GETSUBOPT.
6264         * lib/getsubopt.c: Don't include getsubopt.h.
6265
6266 2007-02-18  Bruno Haible  <bruno@clisp.org>
6267
6268         * modules/fchdir (Depends-on): Add dup2.
6269
6270 2007-02-18  Bruno Haible  <bruno@clisp.org>
6271
6272         * lib/stdlib_.h: Handle glibc's special invocation convention
6273         specially.
6274
6275 2007-02-18  Bruno Haible  <bruno@clisp.org>
6276
6277         * modules/stdlib-tests: New file.
6278         * tests/test-stdlib.c: New file.
6279
6280         * modules/mkstemp (Files): Remove lib/mkstemp.h.
6281         (Depends-on): Add stdlib.
6282         (configure.ac): Invoke gl_STDLIB_MODULE_INDICATOR.
6283         (Includes): Use <stdlib.h> instead of mkstemp.h.
6284         * m4/mkstemp.m4 (gl_FUNC_MKSTEMP): Require gl_STDLIB_H_DEFAULTS. Set
6285         REPLACE_MKSTEMP. Remove definition of __MKSTEMP_PREFIX.
6286         * lib/mkstemp.c: Don't include mkstemp.h.
6287         * lib/mkstemp-safer.c: Include <stdlib.h> instead of mkstemp.h.
6288         * lib/stdlib--.h: Don't include mkstemp.h.
6289
6290         * modules/mkdtemp (Files): Remove lib/mkdtemp.h.
6291         (Depends-on): Add stdlib.
6292         (configure.ac): Invoke gl_STDLIB_MODULE_INDICATOR.
6293         (Includes): Use <stdlib.h> instead of mkdtemp.h.
6294         * m4/mkdtemp.m4 (gt_FUNC_MKDTEMP): Require gl_STDLIB_H_DEFAULTS. Set
6295         HAVE_MKDTEMP.
6296         * lib/mkdtemp.c: Don't include mkdtemp.h.
6297         * lib/clean-temp.c: Don't include mkdtemp.h.
6298
6299         * modules/exit (Files): Remove lib/exit.h.
6300         (Depends-on): Add stdlib.
6301         (Makefile.am): Remove lib_SOURCES.
6302         (Include): Use <stdlib.h> instead of exit.h.
6303         * lib/argmatch.c: Don't include exit.h.
6304         * lib/execute.c: Likewise.
6305         * lib/pagealign_alloc.c: Likewise.
6306         * lib/pipe.c: Likewise.
6307         * lib/wait-process.c: Likewise.
6308         * lib/copy-file.c: Include <stdlib.h> instead of exit.h.
6309         * lib/exitfail.c: Likewise.
6310         * lib/savewd.c: Likewise.
6311         * lib/xsetenv.c: Likewise.
6312
6313         * modules/stdlib: New file.
6314         * lib/stdlib_.h: New file, incorporating exit.h, mkdtemp.h, mkstemp.h
6315         and extra comments about mkstemp().
6316         * lib/exit.h: Remove file.
6317         * lib/mkdtemp.h: Remove file.
6318         * lib/mkstemp.h: Remove file.
6319         * m4/stdlib_h.m4: New file.
6320         * MODULES.html.sh (Support for systems lacking ANSI C 89): Add stdlib.
6321
6322 2007-02-18  Bruno Haible  <bruno@clisp.org>
6323
6324         * modules/math-tests: New file.
6325         * tests/test-math.c: New file.
6326
6327         * modules/math: New file.
6328         * modules/mathl (Files): Remove lib/mathl.h.
6329         (Depends-on): Add math.
6330         (Makefile.am): Don't mention mathl.h.
6331         (Include): Use <math.h> instead of mathl.h.
6332         * lib/math_.h: New file.
6333         * lib/mathl.h: Remove file.
6334         * lib/acosl.c: Include <config.h> and <math.h> first. Don't include
6335         mathl.h.
6336         * lib/asinl.c: Likewise.
6337         * lib/atanl.c: Likewise.
6338         * lib/ceill.c: Likewise.
6339         * lib/cosl.c: Likewise.
6340         * lib/expl.c: Likewise.
6341         * lib/floorl.c: Likewise.
6342         * lib/frexpl.c: Likewise.
6343         * lib/ldexpl.c: Likewise.
6344         * lib/logl.c: Likewise.
6345         * lib/sincosl.c: Likewise.
6346         * lib/sinl.c: Likewise.
6347         * lib/sqrtl.c: Likewise.
6348         * lib/tanl.c: Likewise.
6349         * lib/trigl.c: Likewise.
6350         * m4/math_h.m4: New file.
6351         * MODULES.html.sh (Mathematics): Add math.
6352
6353 2007-02-17  Bruno Haible  <bruno@clisp.org>
6354
6355         * modules/wctype-tests: New file.
6356         * tests/test-wctype.c: New file.
6357
6358         * modules/wchar-tests: New file.
6359         * tests/test-wchar.c: New file.
6360
6361         * modules/unistd-tests: New file.
6362         * tests/test-unistd.c: New file.
6363
6364         * modules/time-tests: New file.
6365         * tests/test-time.c: New file.
6366
6367         * modules/sysexits-tests: New file.
6368         * tests/test-sysexits.c: New file.
6369
6370         * modules/sys_time-tests: New file.
6371         * tests/test-sys_time.c: New file.
6372
6373         * modules/sys_stat-tests: New file.
6374         * tests/test-sys_stat.c: New file.
6375
6376         * modules/sys_socket-tests: New file.
6377         * tests/test-sys_socket.c: New file.
6378
6379         * modules/sys_select-tests: New file.
6380         * tests/test-sys_select.c: New file.
6381
6382         * modules/string-tests: New file.
6383         * tests/test-string.c: New file.
6384
6385         * modules/stdbool-tests: New file.
6386         * tests/test-stdbool.c: New file.
6387
6388         * modules/netinet_in-tests: New file.
6389         * tests/test-netinet_in.c: New file.
6390
6391         * modules/inttypes-tests: New file.
6392         * tests/test-inttypes.c: New file.
6393
6394         * modules/fcntl-tests: New file.
6395         * tests/test-fcntl.c: New file.
6396
6397         * modules/byteswap-tests: New file.
6398         * tests/test-byteswap.c: New file.
6399
6400         * modules/arpa_inet-tests: New file.
6401         * tests/test-arpa_inet.c: New file.
6402
6403 2007-02-17  Bruno Haible  <bruno@clisp.org>
6404
6405         * lib/inttypes_.h: Add definition for GL_LINK_WARNING.
6406         (imaxabs, imaxdiv, strtoimax, strtoumax): Don't declare the function
6407         if the corresponding module is not enabled. Emit link warnings if
6408         the function is used nevertheless.
6409         * m4/inttypes.m4 (gl_INTTYPES_H): Never use the existing <inttypes.h>.
6410         Don't AC_SUBST HAVE_DECL_IMAXABS, HAVE_DECL_IMAXDIV,
6411         HAVE_DECL_STRTOIMAX, HAVE_DECL_STRTOUMAX.
6412         (gl_INTTYPES_MODULE_INDICATOR, gl_INTTYPES_H_DEFAULTS): New macros.
6413         * modules/inttypes (Depends-on): Add link-warning.
6414         (Makefile.am): Copy the contents of build-aux/link-warning.h into
6415         inttypes.h. Substitute also GNULIB_IMAXABS, GNULIB_IMAXDIV,
6416         GNULIB_STRTOIMAX, GNULIB_STRTOUMAX.
6417         * modules/imaxabs (configure.ac): Invoke gl_INTTYPES_MODULE_INDICATOR.
6418         * modules/imaxdiv (configure.ac): Likewise.
6419         * modules/strtoimax (configure.ac): Likewise.
6420         * modules/strtoumax (configure.ac): Likewise.
6421
6422 2007-02-17  Bruno Haible  <bruno@clisp.org>
6423
6424         * m4/string_h.m4 (gl_HEADER_STRING_H_DEFAULTS): Include the contents of
6425         gl_STRING_MODULE_INDICATOR_DEFAULTS.
6426         (gl_STRING_MODULE_INDICATOR_DEFAULTS): Remove macro.
6427         (gl_HEADER_STRING_H_BODY, gl_STRING_MODULE_INDICATOR): Update.
6428
6429 2007-02-17  Bruno Haible  <bruno@clisp.org>
6430
6431         * modules/link-warning: New file.
6432         * build-aux/link-warning.h: New file, extracted from lib/string_.h.
6433         * lib/string_.h (GL_LINK_WARNING): Remove definition.
6434         * modules/string (Depends-on): Add link-warning.
6435         (Makefile.am): Copy the contents of build-aux/link-warning.h into
6436         string.h.
6437         * MODULES.html.sh (Support for building libraries and executables): Add
6438         link-warning.
6439
6440 2007-02-17  Bruno Haible  <bruno@clisp.org>
6441
6442         * lib/string_.h (memmem, mempcpy, memrchr, stpcpy, stpncpy, strcasecmp,
6443         strncasecmp, strchr, strchrnul, strdup, strndup, strnlen, strcspn,
6444         strpbrk, strspn, strrchr, strsep, strstr, strcasestr, strtok_r): Break
6445         long lines.
6446
6447 2007-02-17  Ben Pfaff  <blp@cs.stanford.edu>
6448             Bruno Haible  <bruno@clisp.org>
6449
6450         * modules/tmpfile: New file.
6451         * lib/tmpfile.c: New file.
6452         * m4/tmpfile.m4: New file.
6453         * MODULES.html.sh (func_all_modules): New section "Input/output".
6454
6455 2007-02-15  Bruno Haible  <bruno@clisp.org>
6456
6457         * lib/clean-temp.c [WIN32 && !CYGWIN]: Include <windows.h>.
6458         (supports_delete_on_close): New function.
6459         (open_temp, fopen_temp): Use _O_TEMPORARY when supported.
6460
6461 2007-02-14  Bruno Haible  <bruno@clisp.org>
6462
6463         * modules/mbspcasecmp-tests: New file.
6464         * tests/test-mbspcasecmp.sh: New file.
6465         * tests/test-mbspcasecmp.c: New file.
6466
6467         New module mbspcasecmp.
6468         * modules/mbspcasecmp: New file.
6469         * lib/mbspcasecmp.c: New file.
6470         * lib/string_.h (strncasecmp): Change warning message.
6471         (mbspcasecmp): New declaration.
6472         * m4/mbspcasecmp.m4: New file.
6473         * m4/string_h.m4 (gl_STRING_MODULE_INDICATOR_DEFAULTS): Initialize
6474         GNULIB_MBSPCASECMP.
6475         * modules/string (string.h): Also substitute GNULIB_MBSPCASECMP.
6476         * MODULES.html.sh (Internationalization functions): Add mbspcasecmp.
6477
6478 2007-02-14  Bruno Haible  <bruno@clisp.org>
6479
6480         * modules/mbsncasecmp-tests: New file.
6481         * tests/test-mbsncasecmp.sh: New file.
6482         * tests/test-mbsncasecmp.c: New file.
6483
6484         New module mbsncasecmp.
6485         * modules/mbsncasecmp: New file.
6486         * lib/mbsncasecmp.c: New file.
6487         * lib/string_.h (mbsncasecmp): New declaration.
6488         * m4/mbsncasecmp.m4: New file.
6489         * m4/string_h.m4 (gl_STRING_MODULE_INDICATOR_DEFAULTS): Initialize
6490         GNULIB_MBSNCASECMP.
6491         * modules/string (string.h): Also substitute GNULIB_MBSNCASECMP.
6492         * MODULES.html.sh (Internationalization functions): Add mbsncasecmp.
6493
6494 2007-02-14  Paul Eggert  <eggert@cs.ucla.edu>
6495
6496         * lib/exclude.c (FNM_EXTMATCH): Define if system does not.
6497         Verify that it doesn't overlap with our flags.
6498         (fnmatch_no_wildcards): Don't use strcasecmp or strncasecmp, which
6499         do not have the desired effect in multibyte locales; instead, use
6500         mbscasecmp.
6501         * modules/exclude (Depends-on): Depend on mbscasecmp, not strcase.
6502         Add dependency on xalloc.  Depend on fnmatch, not fnmatch-gnu, since
6503         we don't require GNU fnmatch ourselves (if our users require it, they
6504         should do so explicitly).
6505
6506         Fix regex code so it doesn't rely on strcasecmp.
6507         * lib/regex_internal.h: Include <langinfo.h> only if _LIBC is defined.
6508         Otherwise, include gnulib's langinfo.h.
6509         * lib/regcomp.c (init_dfa): Don't use strcasecmp, as it can have
6510         undesirable behavior in non-C locales.  Instead, rely on localecharset.
6511         * m4/regex.m4 (gl_PREREQ_REGEX): Don't require AM_LANGINFO_CODESET.
6512         * modules/regex (FILES): Remove m4/codeset.m4.
6513         (Depends-on): Add localcharset.  Remove strcase.
6514
6515 2007-02-13  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
6516
6517         * m4/unlinkdir.m4 (gl_UNLINKDIR): Fix m4 quoting bug.
6518         * m4/unlink-busy.m4 (gl_FUNC_UNLINK_BUSY_TEXT): Likewise.
6519
6520 2007-02-13  Bruno Haible  <bruno@clisp.org>
6521
6522         * m4/intdiv0.m4 (gt_INTDIV0): Assume ANSI C. Fix underquoting bug.
6523         Reported by Ralf Wildenhues <Ralf.Wildenhues@gmx.de>.
6524
6525 2007-02-12  Bruno Haible  <bruno@clisp.org>
6526
6527         * lib/string_.h (memmem, mempcpy, memrchr, stpcpy, stpncpy, strchrnul,
6528         strdup, strndup, strnlen, strpbrk, strsep, strtok_r): If
6529         GNULIB_POSIXCHECK and the gnulib module not enabled, provoke a link-
6530         time warning rather than a link error.
6531
6532 2007-02-12  Bruno Haible  <bruno@clisp.org>
6533
6534         * m4/locale-fr.m4 (gt_LOCALE_FR): Fix m4 quoting bug.
6535         * m4/locale-zh.m4 (gt_LOCALE_ZH_CN): Likewise.
6536         Reported by Ralf Wildenhues <Ralf.Wildenhues@gmx.de>.
6537
6538 2007-02-12  Paul Eggert  <eggert@cs.ucla.edu>
6539
6540         * lib/string_.h (strncasecmp): Fix typo: this macro takes 3
6541         args, not 2.
6542
6543 2007-02-12  Paul Eggert  <eggert@cs.ucla.edu>
6544
6545         New module 'time', so that apps can include <time.h> as per
6546         POSIX and GNU instead of separate include files like time_r.h
6547         and timegm.h.  This implementation tries out a simpler approach
6548         for replacing decls in standard include files (as compared to
6549         the string module), somewhat as an experiment.
6550
6551         * config/srclist.txt: Comment out mktime.c for now.
6552         * doc/gnulib-tool.texi (Initial import): Don't use time_r as an example
6553         since it doesn't apply any more.  Use generic wording instead.
6554         * MODULES.html.sh (Support for systems lacking POSIX:2001): New module
6555         'time'.
6556         * lib/time_.h, m4/time_h.m4, modules/time: New files.
6557         * lib/strptime.h, lib/time_r.h, lib/timegm.h: Remove.
6558         * lib/mktime.c: Include config.h depending on _LIBC, not HAVE_CONFIG_H.
6559         Don't include <sys/types.h>; no longer needed since we assume C89.
6560         * lib/mktime.c: Don't include "time_r.h"; no longer needed.
6561         * lib/strftime.c: Likewise.
6562         * lib/time_r.c: Likewise.
6563         * lib/nanosleep.c (nanosleep): #undef after include files, not before.
6564         * lib/nanosleep.c: Include <time.h> first, to check interface.
6565         * lib/strptime.c: Likewise.
6566         * lib/time_r.c: Likewise.
6567         * lib/timegm.c: Likewise.
6568         * lib/strptime.c: Don't include strptime.h or time_r.h; no longer
6569         needed.
6570         * lib/timegm.c: Don't include timegm.h; no longer needed.
6571         * lib/timespec.h: Don't include <sys/time.h> before <time.h>;
6572         time.h now handles any problems in that area.
6573         (struct timespec, nanosleep): Remove; time.h now arranges for these.
6574         * lib/xnanosleep.c: Don't include timespec.h; no longer needed now
6575         that time.h defines struct timespec.
6576         * m4/nanosleep.m4 (gl_FUNC_NANOSLEEP): Check that nanosleep is declared.
6577         Set REPLACE_NANOSLEEP.  Don't AC_DEFINE nanosleep; the time module now
6578         handles that.
6579         * m4/strptime.m4 (gl_FUNC_STPRTIME): Set REPLACE_STRPTIME.
6580         * m4/time_r.m4 (gl_TIME_R): Don't define HAVE_TIME_R_POSIX; no longer
6581         needed.  Set REPLACE_LOCALTIME.
6582         * m4/timegm.m4 (gl_FUNC_TIMEGM): Set REPLACE_TIMEGM.
6583         * m4/timespec.m4 (gl_CHECK_TYPE_STRUCT_TIMESPEC): Move to time_h.m4.
6584         (gl_TIMESPEC): Don't check for sys/time.h or struct timespec or
6585         nanosleep; time_h.m4 now does that.  Don't require
6586         gl_USE_SYSTEM_EXTENSIONS; no longer needed directly, and the time
6587         module handles this now.
6588         * modules/getdate (Depends-on): Remove timespec.  Add time.
6589         * modules/nanosleep (Depends-on): Likewise.
6590         * modules/stat-time (Depends-on): Likewise.
6591         * modules/nanosleep (Include): Include time.h, not timespec.h.
6592         * modules/strptime (Files): Remove lib/strptime.h.
6593         (Depends-on): Add extensions, time.
6594         (Include): Include time.h, not strptime.h.
6595         * modules/time_r (Files): Remove lib/time_r.h.
6596         (Depends-on): Add time.
6597         (Include): Include time.h, not time_r.h.
6598         * modules/timegm: Likewise.
6599         * modules/timespec (Description): Now does timespec-related decls
6600         of our own, instead of struct timespec itself.
6601         (Depends-on): Add time; remove extensions.
6602         (Maintainer): Add self.
6603         * modules/utimecmp (Depends-on): Add time; remove timespec.
6604         * modules/utimens (Depends-on): Likewise.
6605         * modules/xnanosleep (Depends-on): Likewise.
6606
6607 2007-02-11  Bruno Haible  <bruno@clisp.org>
6608
6609         * lib/c-strstr.c: Include allocsa.h.
6610         (knuth_morris_pratt): Use allocsa/freesa instead of malloc/free.
6611         * lib/c-strcasestr.c: Include allocsa.h.
6612         (knuth_morris_pratt): Use allocsa/freesa instead of malloc/free.
6613         * lib/strcasestr.c: Include allocsa.h.
6614         (knuth_morris_pratt): Use allocsa/freesa instead of malloc/free.
6615         * lib/mbsstr.c: Include allocsa.h.
6616         (knuth_morris_pratt_unibyte, knuth_morris_pratt_multibyte): Use
6617         allocsa/freesa instead of malloc/free.
6618         * lib/mbscasestr.c: Include allocsa.h.
6619         (knuth_morris_pratt_unibyte, knuth_morris_pratt_multibyte): Use
6620         allocsa/freesa instead of malloc/free.
6621         * modules/c-strstr (Depends-on): Add allocsa.
6622         * modules/c-strcasestr (Depends-on): Likewise.
6623         * modules/strcasestr (Depends-on): Likewise.
6624         * modules/mbsstr (Depends-on): Likewise.
6625         * modules/mbscasestr (Depends-on): Likewise.
6626
6627 2007-02-11  Bruno Haible  <bruno@clisp.org>
6628
6629         * lib/mbsspn.c (mbsspn): Fix bug. Remove unnecessary strlen call.
6630
6631         * modules/mbsspn-tests: New file.
6632         * tests/test-mbsspn.sh: New file.
6633         * tests/test-mbsspn.c: New file.
6634
6635 2007-02-11  Bruno Haible  <bruno@clisp.org>
6636
6637         * lib/mbspbrk.c (mbspbrk): Remove unneeded cast.
6638
6639         * modules/mbspbrk-tests: New file.
6640         * tests/test-mbspbrk.sh: New file.
6641         * tests/test-mbspbrk.c: New file.
6642
6643 2007-02-11  Bruno Haible  <bruno@clisp.org>
6644
6645         * lib/mbscspn.c (mbscspn): Remove unnecessary strlen call and
6646         unneeded cast.
6647
6648         * modules/mbscspn-tests: New file.
6649         * tests/test-mbscspn.sh: New file.
6650         * tests/test-mbscspn.c: New file.
6651
6652 2007-02-11  Bruno Haible  <bruno@clisp.org>
6653
6654         * modules/mbscasecmp-tests: New file.
6655         * tests/test-mbscasecmp.sh: New file.
6656         * tests/test-mbscasecmp.c: New file.
6657
6658 2007-02-11  Bruno Haible  <bruno@clisp.org>
6659
6660         Ensure O(n) worst-case complexity of mbscasestr.
6661         * lib/mbscasestr.c: Include stdbool.h.
6662         (knuth_morris_pratt_unibyte, knuth_morris_pratt_multibyte): New
6663         functions.
6664         (mbscasestr): Add some bookkeeping. Invoke knuth_morris_pratt_* when
6665         the bookkeeping indicates that it's worth it.
6666         * modules/mbscasestr (Depends-on): Add stdbool, mbslen, strnlen.
6667
6668         * modules/mbscasestr-tests: New file.
6669         * tests/test-mbscasestr1.c: New file.
6670         * tests/test-mbscasestr2.sh: New file.
6671         * tests/test-mbscasestr2.c: New file.
6672         * tests/test-mbscasestr3.sh: New file.
6673         * tests/test-mbscasestr3.c: New file.
6674         * tests/test-mbscasestr4.sh: New file.
6675         * tests/test-mbscasestr4.c: New file.
6676         * m4/locale-tr.m4: New file.
6677
6678 2007-02-11  Bruno Haible  <bruno@clisp.org>
6679
6680         Ensure O(n) worst-case complexity of mbsstr.
6681         * lib/mbsstr.c: Include stdbool.h.
6682         (knuth_morris_pratt_unibyte, knuth_morris_pratt_multibyte): New
6683         functions.
6684         (mbsstr): Add some bookkeeping. Invoke knuth_morris_pratt_* when the
6685         bookkeeping indicates that it's worth it.
6686         * modules/mbsstr (Depends-on): Add stdbool, mbslen, strnlen.
6687
6688         * modules/mbsstr-tests: New file.
6689         * tests/test-mbsstr1.c: New file.
6690         * tests/test-mbsstr2.sh: New file.
6691         * tests/test-mbsstr2.c: New file.
6692         * tests/test-mbsstr3.sh: New file.
6693         * tests/test-mbsstr3.c: New file.
6694         * m4/locale-fr.m4: New file.
6695
6696 2007-02-11  Bruno Haible  <bruno@clisp.org>
6697
6698         * lib/mbsrchr.c (mbsrchr): Fix bug.
6699
6700         * modules/mbsrchr-tests: New file.
6701         * tests/test-mbsrchr.sh: New file.
6702         * tests/test-mbsrchr.c: New file.
6703
6704 2007-02-11  Bruno Haible  <bruno@clisp.org>
6705
6706         * lib/mbschr.c (mbschr): Fix bug.
6707
6708         * modules/mbschr-tests: New file.
6709         * tests/test-mbschr.sh: New file.
6710         * tests/test-mbschr.c: New file.
6711         * m4/locale-zh.m4: New file.
6712
6713 2007-02-11  Bruno Haible  <bruno@clisp.org>
6714
6715         Support for copying multibyte string iterators.
6716         * lib/mbiter.h: Include <string.h>.
6717         (mbiter_multi_copy): New function.
6718         (mbi_copy): New macro.
6719         * lib/mbuiter.h: Include <string.h>.
6720         (mbuiter_multi_copy): New function.
6721         (mbui_copy): New macro.
6722
6723 2007-02-11  Bruno Haible  <bruno@clisp.org>
6724
6725         New module mbslen.
6726         * modules/mbslen: New file.
6727         * lib/mbslen.c: New file.
6728         * lib/string_.h (mbslen): New declaration.
6729         * m4/mbslen.m4: New file.
6730         * m4/string_h.m4 (gl_STRING_MODULE_INDICATOR_DEFAULTS): Initialize
6731         GNULIB_MBSLEN.
6732         * modules/string (string.h): Also substitute GNULIB_MBSLEN.
6733         * MODULES.html.sh (Internationalization functions): Add mbslen.
6734
6735 2007-02-11  Bruno Haible  <bruno@clisp.org>
6736
6737         Ensure O(n) worst-case complexity of strcasestr substitute.
6738         * lib/strcasestr.c: Include stdbool.h.
6739         (knuth_morris_pratt): New function.
6740         (strcasestr): Add some bookkeeping. Invoke knuth_morris_pratt when the
6741         bookkeeping indicates that it's worth it.
6742         * modules/strcasestr (Depends-on): Add stdbool, strnlen.
6743
6744         * modules/strcasestr-tests: New file.
6745         * tests/test-strcasestr.c: New file.
6746
6747 2007-02-11  Bruno Haible  <bruno@clisp.org>
6748
6749         Ensure O(n) worst-case complexity of c_strcasestr.
6750         * lib/c-strcasestr.c: Include stdbool.h, string.h.
6751         (knuth_morris_pratt): New function.
6752         (c_strcasestr): Add some bookkeeping. Invoke knuth_morris_pratt when
6753         the bookkeeping indicates that it's worth it.
6754         * modules/c-strcasestr (Depends-on): Add stdbool, strnlen.
6755
6756         * modules/c-strcasestr-tests: New file.
6757         * tests/test-c-strcasestr.c: New file.
6758
6759 2007-02-11  Bruno Haible  <bruno@clisp.org>
6760
6761         Ensure O(n) worst-case complexity of c_strstr.
6762         * lib/c-strstr.c: Include stdbool.h, string.h.
6763         (knuth_morris_pratt): New function.
6764         (c_strstr): Add some bookkeeping. Invoke knuth_morris_pratt when the
6765         bookkeeping indicates that it's worth it.
6766         * modules/c-strstr (Depends-on): Add stdbool, strnlen.
6767
6768         * lib/c-strstr.c: Complete rewrite for maintainability.
6769
6770         * modules/c-strstr-tests: New file.
6771         * tests/test-c-strstr.c: New file.
6772
6773 2007-02-11  Bruno Haible  <bruno@clisp.org>
6774
6775         * m4/javacomp.m4 (gt_JAVACOMP): Work around a 'tr' bug in coreutils
6776         5.2.1 and earlier, whereby \055 was treated just like the range
6777         delimiter '-'.
6778         Reported by Joel E. Denny <jdenny@ces.clemson.edu>.
6779
6780 2007-02-08  Bruno Haible  <bruno@clisp.org>
6781
6782         * modules/regex (Depends-on): Add stdbool.
6783         Reported by Dalibor Topic <robilad@kaffe.org>.
6784
6785 2007-02-05  Paul Eggert  <eggert@cs.ucla.edu>
6786
6787         * m4/regex.m4 (gl_REGEX): Check for glibc bug #3957.
6788         Prefer returning from main to exiting from it.
6789         Remove unnecessary parens after sizeof.
6790
6791 2007-02-05  Bruno Haible  <bruno@clisp.org>
6792
6793         New module mbssep.
6794         * modules/mbssep: New file.
6795         * lib/mbssep.c: New file.
6796         * lib/string_.h (strsep): Add a conditional link warning.
6797         (mbssep): New declaration.
6798         * m4/mbssep.m4: New file.
6799         * m4/string_h.m4 (gl_STRING_MODULE_INDICATOR_DEFAULTS): Initialize
6800         GNULIB_MBSSEP.
6801         * modules/string (string.h): Also substitute GNULIB_MBSSEP.
6802         * MODULES.html.sh (Internationalization functions): Add mbssep.
6803
6804 2007-02-05  Bruno Haible  <bruno@clisp.org>
6805
6806         * lib/strsep.c (strsep): Fix actions in case of no delimiters.
6807         Optimize search in case of 1 delimiter.
6808
6809 2007-02-05  Paolo Bonzini  <bonzini@gnu.org>
6810
6811         * lib/acl.h: Include sys/types.h before sys/acl.h.
6812
6813 2007-02-05  Paolo Bonzini  <bonzini@gnu.org>
6814
6815         Merge upstream fix for glibc bugzilla #3957:
6816
6817         2007-02-05  Jakub Jelinek  <jakub@redhat.com>
6818
6819         * lib/regcomp.c (parse_bracket_exp): Set '\n' bit rather than '\0'
6820         bit for RE_HAT_LISTS_NOT_NEWLINE.
6821         (build_charclass_op): Remove bogus comment.
6822
6823 2007-02-05  Simon Josefsson  <simon@josefsson.org>
6824
6825         * lib/gc.h, lib/gc-libgcrypt.c: Support SHA-256/384/512.
6826
6827 2007-02-04  Paul Eggert  <eggert@cs.ucla.edu>
6828
6829         * lib/getsubopt.c [!_LIBC]: Include config.h and getsubopt.h.
6830         * lib/memmem.c [!defined _LIBC]: Include config.h.
6831
6832 2007-02-04  Bruno Haible  <bruno@clisp.org>
6833
6834         * lib/string_.h (GL_LINK_WARNING2): Put the word "warning:" into the
6835         warning message.
6836
6837 2007-02-04  Bruno Haible  <bruno@clisp.org>
6838
6839         New module mbstok_r.
6840         * modules/mbstok_r: New file.
6841         * lib/mbstok_r.c: New file.
6842         * lib/string_.h (strtok_r): Change argument names to match the
6843         comments. Add a conditional link warning.
6844         (mbstok_r): New declaration.
6845         * m4/mbstok_r.m4: New file.
6846         * m4/string_h.m4 (gl_STRING_MODULE_INDICATOR_DEFAULTS): Initialize
6847         GNULIB_MBSTOK_R.
6848         * modules/string (string.h): Also substitute GNULIB_MBSTOK_R.
6849         * MODULES.html.sh (Internationalization functions): Add mbstok_r.
6850
6851 2007-02-04  Bruno Haible  <bruno@clisp.org>
6852
6853         New module mbsspn.
6854         * modules/mbsspn: New file.
6855         * lib/mbsspn.c: New file.
6856         * lib/string_.h (strspn): Add a conditional link warning.
6857         (mbsspn): New declaration.
6858         * m4/mbsspn.m4: New file.
6859         * m4/string_h.m4 (gl_STRING_MODULE_INDICATOR_DEFAULTS): Initialize
6860         GNULIB_MBSSPN.
6861         * modules/string (string.h): Also substitute GNULIB_MBSSPN.
6862         * MODULES.html.sh (Internationalization functions): Add mbsspn.
6863
6864 2007-02-04  Bruno Haible  <bruno@clisp.org>
6865
6866         New module mbspbrk.
6867         * modules/mbspbrk: New file.
6868         * lib/mbspbrk.c: New file.
6869         * lib/string_.h (strpbrk): Add a conditional link warning.
6870         (mbspbrk): New declaration.
6871         * m4/mbspbrk.m4: New file.
6872         * m4/string_h.m4 (gl_STRING_MODULE_INDICATOR_DEFAULTS): Initialize
6873         GNULIB_MBSPBRK.
6874         * modules/string (string.h): Also substitute GNULIB_MBSPBRK.
6875         * MODULES.html.sh (Internationalization functions): Add mbspbrk.
6876
6877 2007-02-04  Bruno Haible  <bruno@clisp.org>
6878
6879         New module mbscspn.
6880         * modules/mbscspn: New file.
6881         * lib/mbscspn.c: New file.
6882         * lib/string_.h (strcspn): Add a conditional link warning.
6883         (mbscspn): New declaration.
6884         * m4/mbscspn.m4: New file.
6885         * m4/string_h.m4 (gl_STRING_MODULE_INDICATOR_DEFAULTS): Initialize
6886         GNULIB_MBSCSPN.
6887         * modules/string (string.h): Also substitute GNULIB_MBSCSPN.
6888         * MODULES.html.sh (Internationalization functions): Add mbscspn.
6889
6890 2007-02-04  Bruno Haible  <bruno@clisp.org>
6891
6892         New module mbscasestr, reduced goal of strcasestr.
6893         * modules/mbscasestr: New file.
6894         * lib/mbscasestr.c: New file, copied from lib/strcasestr.c.
6895         (mbscasestr): Renamed from strcasestr.
6896         * lib/strcasestr.c: Don't include mbuiter.h.
6897         (strcasestr): Remove support for multibyte locales.
6898         * lib/string_.h (strcasestr): Don`t rename. Declare only if missing.
6899         Change the conditional link warning.
6900         (mbscasestr): New declaration.
6901         * m4/mbscasestr.m4: New file.
6902         * m4/strcasestr.m4 (gl_FUNC_STRCASESTR): Enable the replacement only if
6903         the system does not have strcasestr. Set HAVE_STRCASESTR instead of
6904         REPLACE_STRCASESTR.
6905         (gl_PREREQ_STRCASESTR): Don't require gl_FUNC_MBRTOWC.
6906         * m4/string_h.m4 (gl_HEADER_STRING_H_DEFAULTS): Initialize
6907         HAVE_STRCASESTR instead of REPLACE_STRCASESTR.
6908         (gl_STRING_MODULE_INDICATOR_DEFAULTS): Initialize GNULIB_MBSCASESTR.
6909         * modules/string (string.h): Also substitute GNULIB_MBSCASESTR.
6910         Substitute HAVE_STRCASESTR instead of REPLACE_STRCASESTR.
6911         * modules/strcasestr (Files): Remove m4/mbrtowc.m4.
6912         (Depends-on): Remove mbuiter.
6913         * MODULES.html.sh (Internationalization functions): Add mbscasestr.
6914
6915 2007-02-04  Bruno Haible  <bruno@clisp.org>
6916
6917         Simplify handling of strncasecmp.
6918         * lib/string_.h (strncasecmp): Remove test for GNULIB_STRCASE. Change
6919         the conditional link warning.
6920         * m4/string_h.m4 (gl_HEADER_STRING_H_DEFAULTS): Initialize
6921         HAVE_STRCASECMP, not REPLACE_STRCASECMP.
6922         (gl_STRING_MODULE_INDICATOR_DEFAULTS): Don't initialize GNULIB_STRCASE.
6923         * modules/strcase (configure.ac): Don't invoke
6924         gl_STRING_MODULE_INDICATOR.
6925         * modules/string (string.h): Don't substitute GNULIB_STRCASE.
6926
6927 2007-02-04  Bruno Haible  <bruno@clisp.org>
6928
6929         New module mbscasecmp, reduced goal of strcasecmp.
6930         * modules/mbscasecmp: New file.
6931         * lib/mbscasecmp.c: New file, copied from lib/strcasecmp.c.
6932         (mbscasecmp): Renamed from strcasecmp.
6933         * lib/strcasecmp.c: Don't include mbuiter.h.
6934         (strcasecmp): Remove support for multibyte locales.
6935         * lib/string_.h (strcasecmp): Don`t rename. Declare only if missing.
6936         Change the conditional link warning.
6937         (mbscasecmp): New declaration.
6938         * m4/mbscasecmp.m4: New file.
6939         * m4/strcase.m4 (gl_FUNC_STRCASECMP): Enable the replacement only if
6940         the system lacks strcasecmp. Set HAVE_STRCASECMP instead of
6941         REPLACE_STRCASECMP.
6942         (gl_PREREQ_STRCASECMP): Don't require gl_FUNC_MBRTOWC.
6943         * m4/string_h.m4 (gl_STRING_MODULE_INDICATOR_DEFAULTS): Initialize
6944         GNULIB_MBSCASECMP.
6945         * modules/string (string.h): Also substitute GNULIB_MBSCASECMP.
6946         Substitute HAVE_STRCASECMP instead of REPLACE_STRCASECMP.
6947         * modules/strcase (Files): Remove m4/mbrtowc.m4.
6948         (Depends-on): Remove mbuiter.
6949         * MODULES.html.sh (Internationalization functions): Add mbscasecmp.
6950
6951 2007-02-04  Bruno Haible  <bruno@clisp.org>
6952
6953         New module mbsstr. Remove module strstr.
6954         * modules/mbsstr: New file.
6955         * modules/strstr: Remove file.
6956         * lib/mbsstr.c: Renamed from lib/strstr.c.
6957         (mbsstr): Renamed from strstr.
6958         * lib/string_.h (strstr): Remove declaration. Change the conditional
6959         link warning.
6960         (mbsstr): New declaration.
6961         * m4/mbsstr.m4: New file.
6962         * m4/strstr.m4: Remove file.
6963         * m4/string_h.m4 (gl_HEADER_STRING_H_DEFAULTS): Don't initialize
6964         REPLACE_STRSTR.
6965         (gl_STRING_MODULE_INDICATOR_DEFAULTS): Initialize GNULIB_MBSSTR.
6966         Don't initialize GNULIB_STRSTR.
6967         * modules/string (string.h): Also substitute GNULIB_MBSSTR. Don't
6968         substitute GNULIB_STRSTR and REPLACE_STRSTR.
6969         * MODULES.html.sh (Internationalization functions): Add mbsstr.
6970         (Support for systems lacking ANSI C 89): Remove strstr.
6971
6972 2007-02-04  Bruno Haible  <bruno@clisp.org>
6973
6974         New module mbsrchr.
6975         * modules/mbsrchr: New file.
6976         * lib/mbsrchr.c: New file.
6977         * lib/string_.h (strrchr): Add a conditional link warning.
6978         (mbsrchr): New declaration.
6979         * m4/mbsrchr.m4: New file.
6980         * m4/string_h.m4 (gl_STRING_MODULE_INDICATOR_DEFAULTS): Initialize
6981         GNULIB_MBSRCHR.
6982         * modules/string (string.h): Also substitute GNULIB_MBSRCHR.
6983         * MODULES.html.sh (Internationalization functions): Add mbsrchr.
6984
6985 2007-02-04  Bruno Haible  <bruno@clisp.org>
6986
6987         New module mbschr.
6988         * modules/mbschr: New file.
6989         * lib/mbschr.c: New file.
6990         * lib/string_.h (strchr): Add a conditional link warning.
6991         (mbschr): New declaration.
6992         * m4/mbschr.m4: New file.
6993         * m4/string_h.m4 (gl_STRING_MODULE_INDICATOR_DEFAULTS): Initialize
6994         GNULIB_MBSCHR.
6995         * modules/string (string.h): Also substitute GNULIB_MBSCHR.
6996         * MODULES.html.sh (Internationalization functions): Add mbschr.
6997
6998 2007-02-04  Paul Eggert  <eggert@cs.ucla.edu>
6999
7000         * lib/stdbool_.h: Mention that bool bit-fields aren't supported.
7001
7002         * modules/stdarg (configure.ac-early): Require AC_PROG_CC_STDC.
7003
7004 2007-02-04  Bruno Haible  <bruno@clisp.org>
7005
7006         New module description section 'configure.ac-early'.
7007         * gnulib-tool (sed_extract_prog): Recognize configure.ac-early.
7008         (func_get_autoconf_early_snippet): New function.
7009         (func_import, func_create_testdir): Use it. Remove special cases for
7010         modules 'extensions' and 'lock'.
7011         * modules/extensions (configure.ac-early): Require
7012         gl_USE_SYSTEM_EXTENSIONS.
7013         * modules/lock (configure.ac-early): Require gl_LOCK_EARLY.
7014
7015 2007-02-04  Bruno Haible  <bruno@clisp.org>
7016
7017         Make use of gcj-4.3's -fsource and -ftarget option.
7018         * m4/javacomp.m4 (gt_JAVACOMP): Test whether gcj is in version >= 4.3,
7019         and if so try the options -fsource and -ftarget.
7020         * lib/javacomp.c (compile_using_gcj): Add fsource_option,
7021         source_version, ftarget_option, target_version arguments.
7022         (is_envjavac_gcj43, is_envjavac_gcj43_usable): New functions.
7023         (is_envjavac_oldgcj_14_14_usable): Renamed from
7024         is_envjavac_gcj_14_14_usable.
7025         (is_envjavac_oldgcj_14_13_usable): Renamed from
7026         is_envjavac_gcj_14_13_usable.
7027         (is_gcj_present): Update.
7028         (is_gcj_43, is_gcj43_usable): New functions.
7029         (is_oldgcj_14_14_usable): Renamed from is_gcj_14_14_usable. Update.
7030         (is_oldgcj_14_13_usable): Renamed from is_gcj_14_13_usable. Update.
7031         (compile_java_class): Test whether gcj is in version >= 4.3, and if so
7032         try the options -fsource and -ftarget.
7033
7034 2007-02-03  Paul Eggert  <eggert@cs.ucla.edu>
7035
7036         * lib/xalloc.h (x2nrealloc): Fix an unlikely bug in the overflow
7037         checking code.  Set N = ceil (1.5 * N) rather than to a slightly
7038         larger value.
7039
7040 2007-02-03  Jim Meyering  <jim@meyering.net>
7041
7042         Give tools a better chance to allocate space for very large buffers.
7043         * lib/xalloc.h (x2nrealloc): Use 3/2, not 2, as buffer size factor.
7044
7045         Make pwd and readlink work also when run with an unreadable parent dir
7046         on systems with openat support.
7047         * lib/getcwd.c (__getcwd) [HAVE_PARTLY_WORKING_GETCWD]: Use the system
7048         provided getcwd function, even when we have openat support.
7049         Reported by Dmitry V. Levin in <http://bugzilla.redhat.com/227168>.
7050
7051 2007-02-02  Bruno Haible  <bruno@clisp.org>
7052
7053         * lib/string_.h (memmem, mempcpy, memrchr, stpcpy, stpncpy, strchrnul,
7054         strdup, strndup, strnlen, strpbrk, strsep, strtok_r): Provoke a link
7055         error only if GNULIB_POSIXCHECK is defined. Needed to avoid artificial
7056         portability problems if one of these functions is only used on specific
7057         platforms.
7058         Reported by Paul Eggert.
7059
7060 2007-02-02  Paul Eggert  <eggert@cs.ucla.edu>
7061
7062         Avoid mempcpy in the regex code, as the string.h mempcpy stuff
7063         is causing more trouble than it's curing.
7064         * lib/regex_internal.h (__mempcpy): Remove.
7065         * lib/regcomp.c (regerror): Rewrite to avoid the need for mempcpy
7066         (and make the code a tad smaller to boot).
7067         * m4/regex.m4 (gl_PREREQ_REGEX): Don't check for mempcpy.
7068
7069 2007-02-02  Jim Meyering  <jim@meyering.net>
7070
7071         * modules/arpa_inet: Put AC_PROG_MKDIR_P in the configure.ac:
7072         section, not in the Makefile.am: one.
7073
7074 2007-02-02  Eric Blake  <ebb9@byu.net>
7075
7076         * lib/strchrnul.c: Always include config.h first.
7077
7078         * modules/mountlist (Depends-on): Revert 2007-01-31 change,
7079         gnulib strstr is not necessary here.
7080
7081 2007-02-02  Simon Josefsson  <simon@josefsson.org>
7082
7083         * m4/socklen.m4: Fix typo.
7084
7085 2007-02-02  Eric Blake  <ebb9@byu.net>
7086
7087         * modules/arpa_inet (Makefile.am): Use MKDIR_P to avoid races.
7088         * modules/netinet_in (Makefile.am): Likewise.
7089
7090 2007-02-01  Bruno Haible  <bruno@clisp.org>
7091
7092         * lib/string_.h (GL_LINK_WARNING): New macro.
7093         (strcasecmp, strstr, strcasestr): If provided by the system,
7094         conditionally define as a macro that leads to a warning instead of to
7095         an error.
7096         (strncasecmp): Conditionally define as a macro that leads to a warning.
7097
7098 2007-02-01  Karl Berry  <karl@gnu.org>
7099
7100         * config/srclist.txt (strtok_r.c): lose sync, no more strtok_r.h.
7101
7102 2007-02-01  Bruno Haible  <bruno@clisp.org>
7103
7104         * MODULES.html.sh (Unicode string functions): Update after 2007-01-27
7105         renamings.
7106
7107 2007-02-01  Eric Blake  <ebb9@byu.net>
7108
7109         * modules/regex (Depends-on): Revert dependence on mempcpy.
7110         * lib/regex_internal.h [! _LIBC && !__mempcpy]: Undo string
7111         module's definition of mempcpy.
7112         Reported by Paul Eggert.
7113
7114 2007-02-01  Paul Eggert  <eggert@cs.ucla.edu>
7115
7116         * lib/string_.h: If the gnulib module XYZ is not present, undefine
7117         the symbol XYZ before redefining it.  This fixes a problem with
7118         programs that don't use XYZ, when compiled on systems that define
7119         XYZ to something else.
7120
7121 2007-01-31  Paul Eggert  <eggert@cs.ucla.edu>
7122
7123         * lib/mkdir-p.c (make_dir_parents): Close a race condition that
7124         occurs when "mkdir -m foo" creates a setgid directory that is (1)
7125         writeable to group or other and (2) is intended to have a special
7126         mode bit that is set or cleared.  In such a case, the directory
7127         should be neither group- nor other-writeable until the special
7128         mode bits are right.
7129
7130 2007-01-31  Eric Blake  <ebb9@byu.net>
7131
7132         * modules/mountlist (Depends-on): Add strstr.
7133
7134         * m4/string_h.m4 (gl_STRING_MODULE_INDICATOR): Correct m4 usage
7135         bug.
7136         * modules/string (Makefile.am): Remove redundant replacement.
7137         * modules/regex (Depends-on): Add mempcpy.
7138
7139 2007-01-31  Bruno Haible  <bruno@clisp.org>
7140
7141         New module description field 'Link'.
7142         * gnulib-tool (func_usage): Document --extract-link-directive.
7143         (sed_extract_prog): Recognize 'Link' directive.
7144         (func_get_link_directive): New function.
7145         (func_import): Show summary of link directives.
7146         Handle --extract-link-directive option.
7147         * modules/acl (Link): New section.
7148         * modules/clock-time (Link): New section.
7149         * modules/euidaccess (Link): New section.
7150         * modules/gettext (Link): New section.
7151         * modules/iconv (Link): New section.
7152         * modules/lock (Link): New section.
7153         * modules/nanosleep (Link): New section.
7154         * modules/readline (Link): New section.
7155
7156 2007-01-27  Bruno Haible  <bruno@clisp.org>
7157
7158         Enforce the use of gnulib modules for unportable <string.h> functions.
7159         * m4/string_h.m4 (gl_STRING_MODULE_INDICATOR): New macro.
7160         (gl_STRING_MODULE_INDICATOR_DEFAULTS): New macro.
7161         (gl_HEADER_STRING_H_BODY): Require it.
7162         * lib/string_.h: If the gnulib module XYZ is not present, redefine
7163         the symbol XYZ to one that gives a link error.
7164         * modules/string (Makefile.am): Also substitute the GNULIB_* variables.
7165         * modules/memmem (configure.ac): Invoke gl_STRING_MODULE_INDICATOR.
7166         * modules/mempcpy (configure.ac): Likewise.
7167         * modules/memrchr (configure.ac): Likewise.
7168         * modules/stpcpy (configure.ac): Likewise.
7169         * modules/stpncpy (configure.ac): Likewise.
7170         * modules/strcase (configure.ac): Likewise.
7171         * modules/strcasestr (configure.ac): Likewise.
7172         * modules/strchrnul (configure.ac): Likewise.
7173         * modules/strdup (configure.ac): Likewise.
7174         * modules/strndup (configure.ac): Likewise.
7175         * modules/strnlen (configure.ac): Likewise.
7176         * modules/strpbrk (configure.ac): Likewise.
7177         * modules/strsep (configure.ac): Likewise.
7178         * modules/strstr (configure.ac): Likewise.
7179         * modules/strtok_r (configure.ac): Likewise.
7180
7181 2007-01-31  Jean-Louis Martineau  <martineau@zmanda.com>  (tiny change)
7182
7183         * lib/gai_strerror.c (values): Add EAI_OVERFLOW.
7184
7185 2007-01-30  Jim Meyering  <jim@meyering.net>
7186
7187         * lib/mpsort.c (mpsort): Remove spurious "return" in void function.
7188
7189 2007-01-29  Bruno Haible  <bruno@clisp.org>
7190
7191         * lib/allocsa.h: Use '#if HAVE_*' instead of '#ifdef HAVE_*'.
7192         * lib/execute.c: Likewise.
7193         * lib/pipe.c: Likewise.
7194         * lib/printf-args.h: Likewise.
7195         * lib/printf-args.c: Likewise.
7196         * lib/printf-parse.c: Likewise.
7197         * lib/vasnprintf.c: Likewise.
7198
7199 2007-01-29  Eric Blake  <ebb9@byu.net>
7200
7201         * lib/memrchr.c: Assume <string.h> unconditionally, to pull in
7202         declaration.
7203
7204 2007-01-29  Paul Eggert  <eggert@cs.ucla.edu>
7205
7206         * lib/strptime.h (strptime): Use 'restrict' for args where
7207         POSIX requires this.
7208         * lib/strptime.c (strptime): Likewise.
7209         Change license notice from LGPL to GPL, since gnulib-tool will
7210         change this as needed.
7211         Include <config.h> if _LIBC is not defined, not if HAVE_CONFIG_H is
7212         defined.
7213         Include "strptime.h" first, to check interface.
7214         Do not #undef _LIBC and _NL_CURRENT.
7215         Do not include <stdlib.h>; no longer needed.
7216         Include "time_r.h" and declare ptime_locale_status
7217         only if _LIBC is not defined.
7218         (__P): Remove unused macro.
7219         (match_string): Bring back glibc version, but use it only if _LIBC
7220         is defined.
7221         (__strptime_internal): Compile tm_gmtoff code if _LIBC is defined, too.
7222         Remove unnecessary assertion and abort() call.
7223         Use #ifdef _NL_CURRENT rather than #if 0, for benefit of glibc.
7224         * m4/strptime.m4: Fix serial number comment.
7225         (gl_FUNC_STRPTIME): Require AC_C_RESTRICT, gl_TM_GMTOFF.
7226         * modules/strptime (Files): Add m4/tm_gmtoff.m4.
7227         (Depends-on): Add time_r.
7228
7229 2007-01-29  Bruno Haible  <bruno@clisp.org>
7230
7231         * MODULES.html.sh (Support for systems lacking POSIX:2001): Add
7232         strptime.
7233         * modules/strptime (Depends-on): Add stdbool.
7234         * lib/strptime.h: Include <time.h> always. Add comments.
7235
7236 2007-01-29  Yoann Vandoorselaere  <yoann@prelude-ids.org>
7237
7238         * modules/strptime: New file.
7239         * lib/strptime.h: New file.
7240         * lib/strptime.c: New file.
7241         * m4/strptime.m4: New file.
7242
7243 2007-01-28  Paul Eggert  <eggert@cs.ucla.edu>
7244
7245         * MODULES.html.sh: New module mpsort.
7246         * lib/mpsort.c, lib/mpsort.h, m4/mpsort.m4, modules/mpsort: New files.
7247
7248         * lib/regex.h (_Restrict_): Renamed from __restrict, to avoid
7249         a circularity problem with HP-UX ia64 reported by Bob Proulx in
7250         <http://lists.gnu.org/archive/html/bug-gnulib/2007-01/msg00394.html>.
7251         All uses changed.
7252         (_Restrict_arr_): Renamed from __restrict_arr, for similar reasons.
7253         All uses changed.
7254         * lib/regcomp.c, lib/regexec.c: Change all uses from __restrict
7255         to _Restrict_.
7256         * lib/regexec.c (regexec): Declare pmatch with _Restrict_arr_, so that
7257         the parameter matches the prototype.
7258
7259 2007-01-28  Jim Meyering  <jim@meyering.net>
7260
7261         * modules/sys_time (Makefile.am) [MOSTLYCLEANFILES]: Do use
7262         sys/time.h here, reverting that part of the previous patch:
7263         <http://thread.gmane.org/gmane.comp.lib.gnulib.bugs/8959>.
7264
7265 2007-01-28  Bruno Haible  <bruno@clisp.org>
7266
7267         * modules/sys_time (Makefile.am): Build sys/time.h only when it's the
7268         value of $(SYS_TIME_H).
7269         [MOSTLYCLEANFILES]: Now that sys/time.h is created only when needed,
7270         remove it conditionally, too. [added by Jim Meyering]
7271         * m4/sys_time_h.m4 (gl_HEADER_SYS_TIME_H_BODY): Set SYS_TIME_H.
7272         * m4/gettimeofday.m4 (gl_FUNC_GETTIMEOFDAY):
7273         (gl_FUNC_GETTIMEOFDAY_CLOBBER): Set SYS_TIME_H when setting
7274         GETTIMEOFDAY_REPLACEMENT to 1.
7275
7276 2007-01-28  Bruno Haible  <bruno@clisp.org>
7277
7278         * m4/unistd_h.m4 (gl_HEADER_UNISTD_DEFAULTS): New macro.
7279         (gl_HEADER_UNISTD): Require it. Don't set UNISTD_H to empty here.
7280         * m4/fchdir.m4 (gl_FUNC_FCHDIR): Require gl_HEADER_UNISTD_DEFAULTS.
7281         Set UNISTD_H instead of UNISTD_H2.
7282         * modules/fchdir (BUILT_SOURCES): Drop $(UNISTD_H2).
7283
7284 2007-01-28  Bruno Haible  <bruno@clisp.org>
7285
7286         * modules/mbchar (Makefile.am): Add mbchar.c to lib_SOURCES.
7287         * m4/mbchar.m4 (gl_MBCHAR): Remove AC_LIBOBJ invocation.
7288
7289 2007-01-28  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
7290
7291         * gnulib-tool (func_emit_lib_Makefile_am, func_add_or_update)
7292         (func_create_testdir): Ensure C locale for `grep' and `tr'
7293         character ranges.
7294         (func_create_megatestdir): Avoid one `grep'.  Fix bug in
7295         ACLOCAL_AMFLAGS parsing state machine.
7296
7297 2007-01-27  Bruno Haible  <bruno@clisp.org>
7298
7299         * modules/unistr/base: Update.
7300
7301 2007-01-27  Bruno Haible  <bruno@clisp.org>
7302
7303         Rename u32-mbtouc -> u32-mbtouc-unsafe, u32-mbtouc-safe -> u32-mbtouc,
7304         u32_mbtouc -> u32_mbtouc_unsafe, u32_mbtouc_safe -> u32_mbtouc.
7305         * modules/unistr/u32-mbtouc-unsafe: Renamed from
7306         modules/unistr/u32-mbtouc.
7307         * lib/unistr/u32-mbtouc-unsafe.c: Renamed from lib/unistr/u32-mbtouc.c.
7308         * lib/unistr.h: Update.
7309         * lib/linebreak.c: Update.
7310         * modules/unistr/u32-mbtouc: Renamed from
7311         modules/unistr/u32-mbtouc-safe.
7312         * lib/unistr/u32-mbtouc.c: Renamed from lib/unistr/u32-mbtouc-safe.c.
7313         * lib/unistr.h: Update.
7314         * lib/unistr/u32-to-u8.c: Update.
7315         * lib/unistr/u32-to-u16.c: Update.
7316
7317 2007-01-27  Bruno Haible  <bruno@clisp.org>
7318
7319         Rename utf16-ucs4 -> utf16-ucs4-unsafe, utf16-ucs4-safe -> utf16-ucs4,
7320         u16_mbtouc -> u16_mbtouc_unsafe, u16_mbtouc_safe -> u16_mbtouc.
7321         * modules/utf16-ucs4-unsafe: Renamed from modules/utf16-ucs4.
7322         * lib/utf16-ucs4-unsafe.h: Renamed from lib/utf16-ucs4.h.
7323         * lib/unistr/utf16-ucs4-unsafe.c: Renamed from lib/unistr/utf16-ucs4.c.
7324         * modules/unistr/u16-mbtouc-unsafe: Renamed from
7325         modules/unistr/u16-mbtouc.
7326         * lib/unistr/u16-mbtouc-unsafe.c: Renamed from lib/unistr/u16-mbtouc.c.
7327         * lib/unistr.h: Update.
7328         * lib/linebreak.c: Update.
7329         * modules/linebreak: Update.
7330         * modules/utf16-ucs4: Renamed from modules/utf16-ucs4-safe.
7331         * lib/utf16-ucs4.h: Renamed from lib/utf16-ucs4-safe.h.
7332         * lib/unistr/utf16-ucs4.c: Renamed from lib/unistr/utf16-ucs4-safe.c.
7333         * modules/unistr/u16-mbtouc: Renamed from
7334         modules/unistr/u16-mbtouc-safe.
7335         * lib/unistr/u16-mbtouc.c: Renamed from lib/unistr/u16-mbtouc-safe.c.
7336         * lib/unistr.h: Update.
7337         * lib/unistr/u16-to-u8.c: Update.
7338         * modules/unistr/u16-to-u8: Update.
7339         * lib/unistr/u16-to-u32.c: Update.
7340         * modules/unistr/u16-to-u32: Update.
7341
7342 2007-01-27  Bruno Haible  <bruno@clisp.org>
7343
7344         Rename utf8-ucs4 -> utf8-ucs4-unsafe, utf8-ucs4-safe -> utf8-ucs4,
7345         u8_mbtouc -> u8_mbtouc_unsafe, u8_mbtouc_safe -> u8_mbtouc.
7346         * modules/utf8-ucs4-unsafe: Renamed from modules/utf8-ucs4.
7347         * lib/utf8-ucs4-unsafe.h: Renamed from lib/utf8-ucs4.h.
7348         * lib/unistr/utf8-ucs4-unsafe.c: Renamed from lib/unistr/utf8-ucs4.c.
7349         * modules/unistr/u8-mbtouc-unsafe: Renamed from
7350         modules/unistr/u8-mbtouc.
7351         * lib/unistr/u8-mbtouc-unsafe.c: Renamed from lib/unistr/u8-mbtouc.c.
7352         * lib/unistr.h: Update.
7353         * lib/striconveh.c: Update.
7354         * modules/striconveh: Update.
7355         * lib/linebreak.c: Update.
7356         * modules/linebreak: Update.
7357         * modules/utf8-ucs4: Renamed from modules/utf8-ucs4-safe.
7358         * lib/utf8-ucs4.h: Renamed from lib/utf8-ucs4-safe.h.
7359         * lib/unistr/utf8-ucs4.c: Renamed from lib/unistr/utf8-ucs4-safe.c.
7360         * modules/unistr/u8-mbtouc: Renamed from modules/unistr/u8-mbtouc-safe.
7361         * lib/unistr/u8-mbtouc.c: Renamed from lib/unistr/u8-mbtouc-safe.c.
7362         * lib/unistr.h: Update.
7363         * lib/striconveh.c: Update.
7364         * modules/striconveh: Update.
7365         * lib/unistr/u8-to-u16.c: Update.
7366         * modules/unistr/u8-to-u16: Update.
7367         * lib/unistr/u8-to-u32.c: Update.
7368         * modules/unistr/u8-to-u32: Update.
7369
7370 2007-01-27  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
7371
7372         Sync from Libtool.
7373         * lib/argz.c: Do not include strings.h nor memory.h, include
7374         string.h unconditionally.  Patch by Simon Josefsson.
7375
7376 2007-01-27  Bruno Haible  <bruno@clisp.org>
7377
7378         * m4/string_h.m4 (gl_HEADER_STRING_H_DEFAULTS): New macro, extracted
7379         from gl_HEADER_STRING_H_BODY.
7380         (gl_HEADER_STRING_H_BODY): Require it.
7381         * m4/memmem.m4 (gl_FUNC_MEMMEM): Require gl_HEADER_STRING_H_DEFAULTS.
7382         * m4/mempcpy.m4 (gl_FUNC_MEMPCPY): Likewise.
7383         * m4/memrchr.m4 (gl_FUNC_MEMRCHR): Likewise.
7384         * m4/stpcpy.m4 (gl_FUNC_STPCPY): Likewise.
7385         * m4/stpncpy.m4 (gl_FUNC_STPNCPY): Likewise.
7386         * m4/strcase.m4 (gl_FUNC_STRCASECMP, gl_FUNC_STRNCASECMP): Likewise.
7387         * m4/strcasestr.m4 (gl_FUNC_STRCASESTR): Likewise.
7388         * m4/strchrnul.m4 (gl_FUNC_STRCHRNUL): Likewise.
7389         * m4/strdup.m4 (gl_FUNC_STRDUP): Likewise.
7390         * m4/strndup.m4 (gl_FUNC_STRNDUP): Likewise.
7391         * m4/strnlen.m4 (gl_FUNC_STRNLEN): Likewise.
7392         * m4/strpbrk.m4 (gl_FUNC_STRPBRK): Likewise.
7393         * m4/strsep.m4 (gl_FUNC_STRSEP): Likewise.
7394         * m4/strstr.m4 (gl_FUNC_STRSTR): Likewise.
7395         * m4/strtok_r.m4 (gl_FUNC_STRTOK_R): Likewise.
7396
7397 2007-01-27  Bruno Haible  <bruno@clisp.org>
7398
7399         * gnulib-tool (func_emit_lib_Makefile_am): If $for_test is true, turn
7400         check_PROGRAMS into noinst_PROGRAMS.
7401         (func_emit_tests_Makefile_am): Likewise. Also don't initialize
7402         check_PROGRAMS in this case.
7403         (func_import): Set for_test to false.
7404         (func_create_testdir): Set for_test to true.
7405
7406 2007-01-27  Yoann Vandoorselaere <yoann.v@prelude-ids.com>
7407             Bruno Haible  <bruno@clisp.org>
7408
7409         * modules/strcasestr (Files): Remove lib/strcasestr.h.
7410         (Depends-on): Add string.
7411         (Includes): Use <string.h> instead of strcasestr.h.
7412         * modules/string (Makefile.am): Also substitute the value of
7413         REPLACE_STRCASESTR.
7414         * m4/strcasestr.m4 (gl_FUNC_STRCASESTR): Don't define strcasestr here;
7415         assume strcasestr is declared in <string.h> not <strings.h>. Also
7416         set REPLACE_STRCASESTR.
7417         * m4/string_h.m4 (gl_HEADER_STRING_H_BODY): Provide a default value for
7418         REPLACE_STRCASESTR.
7419         * lib/strcasestr.h: Remove file.
7420         * lib/strcasestr.c: Include <string.h> instead of strcasestr.h.
7421         * lib/string_.h (strcasestr): New declaration.
7422
7423 2007-01-27  Bruno Haible  <bruno@clisp.org>
7424
7425         * lib/string_.h: Use 'extern'.
7426
7427 2007-01-27  Jim Meyering  <jim@meyering.net>
7428
7429         * lib/regex_internal.c (re_string_reconstruct): Remove declaration
7430         of set-but-not-used local, "q".
7431
7432         * lib/mempcpy.c: Include <config.h> before <string.h>.
7433         This fixes a compilation error on HP-UX, due to the system's
7434         "restrict"-using mempcpy prototype.
7435
7436 2007-01-26  Bruno Haible  <bruno@clisp.org>
7437
7438         Small optimization.
7439         * lib/javacomp.c: Include c-strstr.h.
7440          (is_envjavac_gcj): Use c_strstr instead of strstr.
7441         * modules/javacomp (Depends-on): Add c-strstr, remove strstr.
7442
7443 2007-01-26  Bruno Haible  <bruno@clisp.org>
7444
7445         * MODULES.html.sh (Unicode string functions): Add the new modules.
7446
7447         * modules/uniconv/u32-strconv-to-locale: New file.
7448         * lib/uniconv/u32-strconv-to-locale.c: New file.
7449
7450         * modules/uniconv/u16-strconv-to-locale: New file.
7451         * lib/uniconv/u16-strconv-to-locale.c: New file.
7452
7453         * modules/uniconv/u8-strconv-to-locale: New file.
7454         * lib/uniconv/u8-strconv-to-locale.c: New file.
7455
7456         * modules/uniconv/u32-strconv-from-locale: New file.
7457         * lib/uniconv/u32-strconv-from-locale.c: New file.
7458
7459         * modules/uniconv/u16-strconv-from-locale: New file.
7460         * lib/uniconv/u16-strconv-from-locale.c: New file.
7461
7462         * modules/uniconv/u8-strconv-from-locale: New file.
7463         * lib/uniconv/u8-strconv-from-locale.c: New file.
7464
7465         * modules/uniconv/u32-strconv-to-enc: New file.
7466         * lib/uniconv/u32-strconv-to-enc.c: New file.
7467         * modules/uniconv/u32-strconv-to-enc-tests: New file.
7468         * tests/uniconv/test-u32-strconv-to-enc.c: New file.
7469
7470         * modules/uniconv/u16-strconv-to-enc: New file.
7471         * lib/uniconv/u16-strconv-to-enc.c: New file.
7472         * lib/uniconv/u-strconv-to-enc.h: New file.
7473         * modules/uniconv/u16-strconv-to-enc-tests: New file.
7474         * tests/uniconv/test-u16-strconv-to-enc.c: New file.
7475
7476         * modules/uniconv/u8-strconv-to-enc: New file.
7477         * lib/uniconv/u8-strconv-to-enc.c: New file.
7478         * modules/uniconv/u8-strconv-to-enc-tests: New file.
7479         * tests/uniconv/test-u8-strconv-to-enc.c: New file.
7480
7481         * modules/uniconv/u32-strconv-from-enc: New file.
7482         * lib/uniconv/u32-strconv-from-enc.c: New file.
7483         * modules/uniconv/u32-strconv-from-enc-tests: New file.
7484         * tests/uniconv/test-u32-strconv-from-enc.c: New file.
7485
7486         * modules/uniconv/u16-strconv-from-enc: New file.
7487         * lib/uniconv/u16-strconv-from-enc.c: New file.
7488         * modules/uniconv/u16-strconv-from-enc-tests: New file.
7489         * tests/uniconv/test-u16-strconv-from-enc.c: New file.
7490
7491         * modules/uniconv/u8-strconv-from-enc: New file.
7492         * lib/uniconv/u8-strconv-from-enc.c: New file.
7493         * lib/uniconv/u-strconv-from-enc.h: New file.
7494         * modules/uniconv/u8-strconv-from-enc-tests: New file.
7495         * tests/uniconv/test-u8-strconv-from-enc.c: New file.
7496
7497         * modules/uniconv/u32-conv-from-enc: New file.
7498         * lib/uniconv/u32-conv-from-enc.c: New file.
7499         * modules/uniconv/u32-conv-from-enc-tests: New file.
7500         * tests/uniconv/test-u32-conv-from-enc.c: New file.
7501
7502         * modules/uniconv/u16-conv-from-enc: New file.
7503         * lib/uniconv/u16-conv-from-enc.c: New file.
7504         * lib/uniconv/u-conv-from-enc.h: New file.
7505         * modules/uniconv/u16-conv-from-enc-tests: New file.
7506         * tests/uniconv/test-u16-conv-from-enc.c: New file.
7507
7508         * modules/uniconv/u8-conv-from-enc: New file.
7509         * lib/uniconv/u8-conv-from-enc.c: New file.
7510         * modules/uniconv/u8-conv-from-enc-tests: New file.
7511         * tests/uniconv/test-u8-conv-from-enc.c: New file.
7512
7513         * modules/uniconv/base: New file.
7514         * lib/uniconv.h: New file.
7515
7516 2007-01-26  Paul Eggert  <eggert@cs.ucla.edu>
7517
7518         * doc/gnulib-tool.texi (Initial import): Update to match current
7519         behavior with strdup module.
7520         * lib/.cppi-disable: Remove strcase.h, strdup.h, strndup.h, strnlen.h.
7521         * lib/memmem.h: Remove; all uses removed.  This is now done
7522         by <string.h>.
7523         * lib/mempcpy.h: Likewise.
7524         * lib/memrchr.h: Likewise.
7525         * lib/stpcpy.h: Likewise.
7526         * lib/stpncpy.h: Likewise.
7527         * lib/strcase.h: Likewise.
7528         * lib/strchrnul.h: Likewise.
7529         * lib/strdup.h: Likewise.
7530         * lib/strndup.h: Likewise.
7531         * lib/strnlen.h: Likewise.
7532         * lib/strpbrk.h: Likewise.
7533         * lib/strsep.h: Likewise.
7534         * lib/strstr.h: Likewise.
7535         * lib/strtok_r.h: Likewise.
7536         * lib/string_.h: New file.
7537         * lib/argp-namefrob.h: Don't include no-longer-existent include files.
7538         Rely on <string.h> instead.
7539         * lib/canon-host.c: Likewise.
7540         * lib/chdir-long.c: Likewise.
7541         * lib/concatpath.c: Likewise.
7542         * lib/exclude.c: Likewise.
7543         * lib/fchdir.c: Likewise.
7544         * lib/getaddrinfo.c: Likewise.
7545         * lib/getcwd.c: Likewise.
7546         * lib/getsubopt.c: Likewise.
7547         * lib/glob.c: Likewise.
7548         * lib/hard-locale.c: Likewise.
7549         * lib/iconvme.c: Likewise.
7550         * lib/javacomp.c: Likewise.
7551         * lib/mempcpy.c: Likewise.
7552         * lib/memrchr.c: Likewise.
7553         * lib/regex_internal.h: Likewise.
7554         * lib/stpncpy.c: Likewise.
7555         * lib/strcasecmp.c: Likewise.
7556         * lib/strchrnul.c: Likewise.
7557         * lib/strdup.c: Likewise.
7558         * lib/striconv.c: Likewise.
7559         * lib/striconveh.c: Likewise.
7560         * lib/striconveha.c: Likewise.
7561         * lib/strncasecmp.c: Likewise.
7562         * lib/strndup.c: Likewise.
7563         * lib/strnlen.c: Likewise.
7564         * lib/strsep.c: Likewise.
7565         * lib/strstr.c: Likewise.
7566         * lib/strtok_r.c: Likewise.
7567         * lib/userspec.c: Likewise.
7568         * lib/w32spawn.h: Likewise.
7569         * lib/xstrndup.c: Likewise.
7570         * lib/mountlist.c (strstr): Remove decl.
7571         * m4/string_h.m4: New file.
7572         * m4/memmem.m4 (gl_FUNC_MEMMEM): Set HAVE_DECL_MEMMEM if necessary.
7573         * m4/mempcpy.m4 (gl_FUNC_MEMPCPY): Set HAVE_MEMPCPY if necessary.
7574         * m4/memrchr.m4 (gl_FUNC_MEMRCHR): Set HAVE_MEMRCHR
7575         * m4/stpcpy.m4 (gl_FUNC_STPCPY): Set HAVE_STPCPY if necessary.
7576         * m4/stpncpy.m4 (gl_PREREQ_STPNCPY): Set HAVE_STPNCPY if necessary.
7577         * m4/strcase.m4 (gl_FUNC_STRCASECMP):
7578         Set REPLACE_STRCASECMP if necessary.
7579         (gl_FUNC_STRNCASECMP): Set HAVE_DECL_STRNCASECMP if necessary.
7580         * m4/strchrnul.m4 (gl_FUNC_STRCHRNUL): Set HAVE_STRCHRNUL if necessary.
7581         * m4/strdup.m4 (gl_FUNC_STRDUP): Set HAVE_DECL_STRDUP if necessary.
7582         * m4/strndup.m4 (gl_FUNC_STRNDUP): Set HAVE_DECL_STRNLEN and
7583         HAVE_DECL_STRDUP if necessary.
7584         (gl_PREREQ_STRNLEN): Don't bother to check for strnlen decl,
7585         since gl_FUNC_STRNDUP does that now.
7586         * m4/strnlen.m4 (gl_FUNC_STRNLEN): Set HAVE_DECL_STRNLEN if necessary.
7587         Check for decl here...
7588         (gl_PREREQ_STRNLEN): ... not here.
7589         * m4/strpbrk.m4 (gl_FUNC_STRPBRK): Set HAVE_STRPBRK if necessary.
7590         * m4/strsep.m4 (gl_FUNC_STRSEP): Set HAVE_STRSEP if necessary.
7591         * m4/strstr.m4 (gl_FUNC_STRSTR): Set REPLACE_STRSTR if necessary.
7592         * m4/strtok_r.m4 (gl_FUNC_STRTOK_R): Set HAVE_DECL_STRTOK_R if
7593         necessary.
7594         * modules/string: New file.
7595         * modules/memmem (Files): Remove special-purpose include file.
7596         (Depends-on): Add string.
7597         (Include): Include <string.h>, not the removed file.
7598         * modules/mempcpy: Likewise.
7599         * modules/memrchr: Likewise.
7600         * modules/stpcpy: Likewise.
7601         * modules/stpncpy: Likewise.
7602         * modules/strcase: Likewise.
7603         * modules/strchrnul: Likewise.
7604         * modules/strdup: Likewise.
7605         * modules/strndup: Likewise.
7606         * modules/strnlen: Likewise.
7607         * modules/strpbrk: Likewise.
7608         * modules/strsep: Likewise.
7609         * modules/strstr: Likewise.
7610         * modules/strtok_r: Likewise.
7611         * tests/test-dirname.c: Don't include "strdup.h", since
7612         <string.h> now suffices.
7613         * tests/test-memmem.c: Don't include "memmem.h", since
7614         <string.h> now suffices.
7615
7616 2007-01-25  Bruno Haible  <bruno@clisp.org>
7617
7618         * lib/striconveh.c (mem_cd_iconveh_internal): Ignore *lengthp if
7619         *resultp is 0.
7620
7621         * lib/unistr/u16-to-u8.c (u16_to_u8): Fix u8_uctomb invocation.
7622         * lib/unistr/u32-to-u8.c (u32_to_u8): Likewise.
7623         * lib/unistr/u8-to-u16.c (u8_to_u16): Fix u16_uctomb invocation.
7624         * lib/unistr/u32-to-u16.c (u32_to_u16): Likewise.
7625
7626         * modules/unistr/u8-to-u16 (Depends-on): Add missing modules.
7627         * modules/unistr/u8-to-u32 (Depends-on): Add missing modules.
7628         * modules/unistr/u16-to-u8 (Depends-on): Add missing modules.
7629         * modules/unistr/u16-to-u32 (Depends-on): Add missing modules.
7630         * modules/unistr/u32-to-u8 (Depends-on): Add missing modules.
7631         * modules/unistr/u32-to-u16 (Depends-on): Add missing modules.
7632
7633 2007-01-24  Bruno Haible  <bruno@clisp.org>
7634
7635         Don't AC_REQUIRE autoconf macros that invoke AC_LIBOBJ. See
7636         <http://lists.gnu.org/archive/html/bug-gnulib/2006-10/msg00279.html>.
7637         * m4/argp.m4 (gl_ARGP): Invoke, don't require, gl_GETOPT_SUBSTITUTE.
7638         * m4/fts.m4 (gl_FUNC_FTS, gl_FUNC_FTS_LGPL): Invoke, don't require,
7639         gl_FUNC_FTS_CORE.
7640         (gl_FUNC_FTS_CORE): Invoke, don't require, gl_FUNC_OPENAT.
7641         * m4/lstat.m4 (gl_FUNC_LSTAT): Invoke, don't require,
7642         AC_FUNC_LSTAT_FOLLOWS_SLASHED_SYMLINK.
7643         * m4/memcmp.m4 (gl_FUNC_MEMCMP): Invoke, don't require, AC_FUNC_MEMCMP.
7644         * m4/mktime.m4 (gl_FUNC_MKTIME): Invoke, don't require, AC_FUNC_MKTIME.
7645         * m4/openat.m4 (gl_FUNC_OPENAT): Invoke, don't require,
7646         gl_FUNC_FCHOWNAT.
7647         * m4/strftime.m4 (gl_FUNC_GNU_STRFTIME): Invoke, don't require,
7648         gl_FUNC_STRFTIME.
7649         * m4/strtod.m4 (gl_FUNC_STRTOD): Invoke, don't require, AC_FUNC_STRTOD.
7650         Reported by Ralf Wildenhues.
7651
7652 2007-01-24  Bruno Haible  <bruno@clisp.org>
7653
7654         Drop AC_REQUIRE calls that are redundant with the module dependencies.
7655         * m4/canon-host.m4 (gl_PREREQ_CANON_HOST): Don't require
7656         gl_GETADDRINFO.
7657         * m4/chdir-long.m4 (gl_PREREQ_CHDIR_LONG): Don't require AM_STDBOOL_H,
7658         gl_FUNC_MEMPCPY, gl_FUNC_OPENAT, gl_FUNC_MEMRCHR.
7659         * m4/openat.m4 (gl_PREREQ_OPENAT): Don't require gl_SAVE_CWD.
7660
7661 2007-01-24  Paul Eggert  <eggert@cs.ucla.edu>
7662
7663         * m4/fnmatch.m4 (_AC_FUNC_FNMATCH_IF): Add test for glibc bug 361.
7664         Don't use 'exit'; just return from 'main'.
7665         (_AC_LIBOBJ_FNMATCH): Check for headers and functions just once.
7666
7667         * lib/fnmatch_.h: Readjust white space and comments to match
7668         glibc, to avoid spurious diffs.
7669
7670 2007-01-23  Paul Eggert  <eggert@cs.ucla.edu>
7671
7672         * lib/fnmatch_loop.c (internal_fnmatch) [!_LIBC]: #if-out the
7673         2004-12-01 change by Jakub Jelinek, since this code won't compile
7674         if !LIBC.  Problem reported by Bob Proulx.
7675
7676 2007-01-23  Bruno Haible  <bruno@clisp.org>
7677
7678         * lib/striconveh.c: Include c-strcaseeq.h.
7679         (mem_iconveh, str_iconveh): Use STRCASEEQ instead of c_strcasecmp.
7680         * modules/striconveh (Depends-on): Add c-strcaseeq.
7681
7682 2007-01-23  Bruno Haible  <bruno@clisp.org>
7683
7684         * MODULES.html.sh (String handling): Add streq, c-strcaseeq.
7685
7686         * modules/c-strcaseeq: New file.
7687         * lib/c-strcaseeq.h: New file.
7688
7689         * modules/streq: New file.
7690         * lib/streq.h: New file.
7691
7692 2007-01-23  Bruno Haible  <bruno@clisp.org>
7693
7694         * modules/striconveha-tests: New file.
7695         * tests/test-striconveha.c: New file.
7696
7697         * lib/striconveha.h: Include <stdbool.h>.
7698         (mem_iconveha, str_iconveha): Add 'transliterate' argument.
7699         * lib/striconveha.c: Include allocsa.h, strdup.h, c-strcase.h.
7700         (mem_iconveha_notranslit): Renamed from mem_iconveha.
7701         (mem_iconveha): New function.
7702         (str_iconveha_notranslit): Renamed from str_iconveha.
7703         (str_iconveha): New function.
7704         * modules/striconveha (Depends-on): Add stdbool, allocsa, strdup,
7705         c-strcase.
7706
7707 2007-01-23  Bruno Haible  <bruno@clisp.org>
7708
7709         * lib/striconveha.c (mem_iconveha): Fix endless recursion. Try all
7710         encodings without forgiving before trying any encoding with handler.
7711         (str_iconveha): Try all encodings without forgiving before trying any
7712         encoding with handler.
7713
7714 2007-01-23  Paul Eggert  <eggert@cs.ucla.edu>
7715
7716         Import the following changes from libc.
7717
7718         2005-10-14  Ulrich Drepper  <drepper@redhat.com>
7719
7720         * lib/fnmatch_loop.c: Adjust for changed secondary hash function.
7721
7722         2004-12-01  Jakub Jelinek  <jakub@redhat.com>
7723
7724         * lib/fnmatch_loop.c (internal_fnmatch): Clear is_seqval after
7725         normal_bracket label.
7726
7727         2004-09-01  Jakub Jelinek  <jakub@redhat.com>
7728
7729         [BZ #361]
7730         * lib/fnmatch_loop.c (FCT): For backslash between brackets, branch
7731         to normal_bracket after fetching the next character.
7732
7733 2007-01-22  Bruno Haible  <bruno@clisp.org>
7734
7735         * lib/striconveh.h (mem_cd_iconveh, mem_iconveh): Add 'offsets'
7736         argument.
7737         * lib/striconveh.c (iconv_carefully_1): New function.
7738         (mem_cd_iconveh_internal, mem_cd_iconveh, mem_iconveh): Add 'offsets'
7739         argument.
7740         (str_cd_iconveh): Update.
7741         * lib/striconveha.h (mem_iconveha): Add 'offsets' argument.
7742         * lib/striconveha.c (mem_iconveha): Add 'offsets' argument.
7743         * tests/test-striconveh.c (MAGIC): New macro.
7744         (new_offsets): New function.
7745         (main): Test call with and without offsets.
7746
7747 2007-01-22  Bruno Haible  <bruno@clisp.org>
7748
7749         * modules/sys_stat (Makefile.am): Use @MKDIR_P@ instead of $(MKDIR_P).
7750         * modules/sys_select (Makefile.am): Likewise.
7751         * modules/sys_socket (Makefile.am): Likewise.
7752         * modules/sys_time (Makefile.am): Likewise.
7753
7754 2007-01-22  Paul Eggert  <eggert@cs.ucla.edu>
7755
7756         * modules/gettimeofday (License): Change from GPL to LGPL, since
7757         gettimeofday is a library function.
7758
7759 2007-01-22  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
7760
7761         * lib/poll.c (rpl_poll): Don't check against FD_SETSIZE under Win32.
7762
7763 2007-01-21  Bruno Haible  <bruno@clisp.org>
7764
7765         * m4/gnulib-common.m4 (AC_PROG_MKDIR_P): New macro.
7766
7767 2007-01-21  Bruno Haible  <bruno@clisp.org>
7768
7769         * modules/striconveha: New file.
7770         * lib/striconveha.h: New file.
7771         * lib/striconveha.c: New file.
7772         * MODULES.html.sh (Internationalization functions): Add striconveha.
7773         * lib/striconv.c (str_iconv): Optimize the case of an empty input
7774         string.
7775         * lib/striconveh.c (mem_iconveh, str_iconveh): Likewise.
7776
7777 2007-01-21  Bruno Haible  <bruno@clisp.org>
7778
7779         * lib/striconv.c (str_iconv): Guarantee errno is set when strdup fails.
7780         * lib/striconveh.c (str_iconveh): Likewise.
7781
7782 2007-01-21  Bruno Haible  <bruno@clisp.org>
7783
7784         * lib/striconveh.h (mem_iconveh): New declaration.
7785         * lib/striconveh.c (mem_iconveh): New function.
7786         * tests/test-striconveh.c (main): Add tests for mem_iconveh.
7787
7788 2007-01-21  Bruno Haible  <bruno@clisp.org>
7789
7790         * lib/xstriconv.h (xmem_cd_iconv): Change specification.
7791
7792         * lib/striconveh.h (mem_cd_iconveh): Change specification.
7793         * lib/striconveh.c (mem_cd_iconveh): Don't free the user-supplied
7794         original result buffer.
7795         (str_cd_iconveh): Update.
7796         * tests/test-striconveh.c (main): Update.
7797
7798         * lib/striconv.h (mem_cd_iconv): Change specification.
7799         * lib/striconv.c (mem_cd_iconv): Don't free the user-supplied original
7800         result buffer.
7801         (str_cd_iconv): Update.
7802         * tests/test-striconv.c (main): Update.
7803
7804 2007-01-21  Bruno Haible  <bruno@clisp.org>
7805
7806         * gnulib-tool: Fix test whether sed is GNU sed supporting --posix.
7807
7808 2007-01-20  Jim Meyering  <jim@meyering.net>
7809
7810         * lib/userspec.c (parse_with_separator): If a user or group string
7811         starts with "+", skip the corresponding name-to-ID look-up, since
7812         such a look-up must fail: user and group names may not include "+".
7813
7814 2007-01-19  Paul Eggert  <eggert@cs.ucla.edu>
7815
7816         * lib/poll.c: Include sys/time.h and time.h unconditionally,
7817         since we now assume the sys_time module.
7818         * m4/poll.m4 (gl_PREREQ_POLL): Don't require AC_HEADER_TIME or
7819         check for sys/time.h; no longer needed.
7820         * modules/poll (Depends-on): Depend on sys_time.
7821
7822 2007-01-18  Bruno Haible  <bruno@clisp.org>
7823
7824         * m4/mktime.m4 (AC_FUNC_MKTIME): Remove test for <sys/time.h>.
7825         * m4/strftime.m4 (gl_FUNC_STRFTIME): Likewise.
7826
7827         * m4/tempname.m4 (gl_PREREQ_TEMPNAME): Remove tests for sys/time.h and
7828         gettimeofday.
7829
7830         * tests/test-gettimeofday.c: Include <time.h>.
7831         (dummy): Remove variable.
7832
7833         * m4/sys_time_h.m4 (gl_HEADER_SYS_TIME_H_BODY): Renamed from
7834         gl_HEADER_SYS_TIME_H.
7835         (gl_HEADER_SYS_TIME_H): New macro.
7836
7837         * lib/sys_time_.h: Test GETTIMEOFDAY_REPLACEMENT instead of
7838         HAVE_GETTIMEOFDAY_POSIX_SIGNATURE and GETTIMEOFDAY_CLOBBERS_LOCALTIME.
7839         * m4/gettimeofday.m4 (gl_FUNC_GETTIMEOFDAY,
7840         gl_FUNC_GETTIMEOFDAY_CLOBBER): Set GETTIMEOFDAY_REPLACEMENT instead of
7841         HAVE_GETTIMEOFDAY_POSIX_SIGNATURE and GETTIMEOFDAY_CLOBBERS_LOCALTIME.
7842         * m4/sys_time_h.m4 (gl_HEADER_SYS_TIME_H): Initialize
7843         GETTIMEOFDAY_REPLACEMENT instead of HAVE_GETTIMEOFDAY_POSIX_SIGNATURE
7844         and GETTIMEOFDAY_CLOBBERS_LOCALTIME.
7845         * modules/sys_time (sys/time.h): Substitute GETTIMEOFDAY_REPLACEMENT
7846         instead of HAVE_GETTIMEOFDAY_POSIX_SIGNATURE and
7847         GETTIMEOFDAY_CLOBBERS_LOCALTIME.
7848
7849         * m4/gettimeofday.m4 (gl_GETTIMEOFDAY_REPLACE_LOCALTIME): Undo the
7850         last change; it caused a compilation error when cross-compiling to
7851         Cygwin.
7852
7853 2007-01-18  Jim Meyering  <jim@meyering.net>
7854
7855         Use "$(MKDIR_P) sys", not race-prone "test -d sys || mkdir sys".
7856         * modules/sys_stat (Makefile.am): Use "$(MKDIR_P) sys", rather
7857         than the race-prone "test -d sys || mkdir sys".
7858         (configure.ac): Use AC_PROG_MKDIR_P.
7859         * modules/sys_select: Likewise.
7860         * modules/sys_socket: Likewise.
7861         * modules/sys_time: Likewise.
7862
7863 2007-01-18  Eric Blake  <ebb9@byu.net>
7864
7865         * m4/gettimeofday.m4 (gl_GETTIMEOFDAY_REPLACE_LOCALTIME): Also
7866         replace gettimeofday.
7867         * lib/gettimeofday.c (rpl_gettimeofday): Declare with replacement
7868         name, to avoid infinite recursion.
7869
7870 2007-01-17  Paul Eggert  <eggert@cs.ucla.edu>
7871
7872         * MODULES.html.sh (Support for systems lacking POSIX:2001): New
7873         module sys_time.
7874         * lib/gethrxtime.c: Include <sys/time.h>, since we can no longer
7875         assume timespec.h defines struct timeval.
7876         * lib/settime.c: Likewise.
7877         * lib/utimens.c: Likewise.
7878         * lib/gettime.c (gettime): Remove test against HAVE_GETTIMEOFDAY,
7879         since we now assume the gettimeofday module.
7880         * lib/tempname.c (__gen_tempname): Likewise.
7881         * lib/gettimeofday.h: Remove.
7882         * lib/gettimeofday.c: Include <sys/time.h> instead of "gettimeofday.h".
7883         Don't include <sys/types.h> and <stdlib.h>; shouldn't be needed.
7884         Include <time.h>, for 'time()'.
7885         (localtime_buffer_addr): Also use this workaround if
7886         TZSET_CLOBBERS_LOCALTIME.  Set to a dummy static variable by default,
7887         to simplify the uses.  All uses changed.
7888         (localtime, gmtime, tzset, gettimeofday): Reformat slightly so
7889         that #undef is inside {}, and 'const' follows type name consistently.
7890         (tzset): Define replacement only if TZSET_CLOBBERS_LOCALTIME.
7891         (gettimeofday): Do not use the maximum possible value for
7892         tv->tv_usec, since that might break usages other than ls.c.
7893         Instead, we'll leave ls.c alone.  This undoes today's patch
7894         by Bruno.  Add a compile-time warning for 1s-clock resolution;
7895         we've never observed the problem but might as well keep the
7896         canary.
7897         * lib/nanosleep.c: Include timespec.h first, for interface check.
7898         * lib/nanosleep.c: Include <sys/time.h> unconditionally, since we
7899         now assume the sys_time module.
7900         * lib/tempname.c: Likewise.
7901         * lib/timespec.h: Likewise.
7902         * lib/nanosleep.c: Don't worry about TIME_WITH_SYS_TIME; no longer
7903         needed.
7904         * lib/strftime.c: Likewise.
7905         * lib/timespec.h: Likewise.
7906         * lib/posixtm.c: Include posixtm.h first, for interface check.
7907         Don't worry about TM_IN_SYS_TIME; that's wayyy obsolete.
7908         * lib/posixtm.h: Include stdbool.h and time.h, for proper interface.
7909         * lib/strftime.c: Don't include <sys/types.h>; shouldn't be needed.
7910         * lib/sys_time_.h: New file.
7911         * lib/timespec.h (struct timespec): Use long int, not long.
7912         * m4/gettimeofday.m4 (gl_FUNC_GETTIMEOFDAY):
7913         (gl_FUNC_GETTIMEOFDAY_CLOBBER, gl_PREREQ_GETTIMEOFDAY):
7914         Remove obsolescent call to AC_HEADER_TIME.
7915         * m4/mktime.m4 (AC_FUNC_MKTIME): Likewise.
7916         * m4/nanosleep.m4 (gl_FUNC_NANOSLEEP): Likewise.
7917         * m4/strftime.m4 (gl_FUNC_STRFTIME): Likewise.
7918         * m4/timespec.m4 (gl_TIMESPEC, gl_CHECK_TYPE_STRUCT_TIMESPEC):
7919         Likewise.
7920         * m4/tzset.m4 (gl_FUNC_TZSET_CLOBBER): Likewise.
7921         * m4/utimbuf.m4 (gl_CHECK_TYPE_STRUCT_UTIMBUF): Likewise.
7922         * m4/gettimeofday.m4 (gl_FUNC_GETTIMEOFDAY): Move sys/time.h tests
7923         into the sys_time module.  Check for gettimeofday just once.
7924         Prefix our variables with gl_, not with ac_ or jm_.  Tighten test
7925         for gettimeofday signature to just check the signature.  Merely
7926         compile it, since linking doesn't test signature.  Improve test for
7927         whether gettimeofday.o is actually needed.
7928         (gl_FUNC_GETTIMEOFDAY_CLOBBER): Renamed from
7929         AC_FUNC_GETTIMEOFDAY_CLOBBER.  All uses changed.  Use
7930         AC_RUN_IFELSE rather than AC_TRY_RUN.  If clobbering, set
7931         and define GETTIMEOFDAY_CLOBBERS_LOCALTIME.
7932         (gl_GETTIMEOFDAY_REPLACE_LOCALTIME): Don't define
7933         GETTIMEOFDAY_CLOBBERS_LOCALTIME; that's gl_FUNC_GETTIMEOFDAY_CLOBBER's
7934         job.  Don't define tzset; that's gl_FUNC_TZSET_CLOBBER's job.
7935         * m4/mktime.m4 (AC_FUNC_MKTIME): Just include <time.h> rather
7936         than worrying about sys/time.h.
7937         * m4/nanosleep.m4 (gl_FUNC_NANOSLEEP):
7938         Don't bother worrying about TIME_WITH_SYS_TIME.
7939         * m4/stat-time.m4 (gl_STAT_TIME): Likewise.
7940         * m4/posixtm.m4 (gl_POSIXTM): Remove obsolescent call to AC_STRUCT_TM.
7941         * m4/sys_time_h.m4: New file.
7942         * m4/tzset.m4 (gl_FUNC_TZSET_CLOBBER): Require gl_HEADER_SYS_TIME_H.
7943         Don't include sys/time.h.  Return from main rather than exiting.
7944         Define TZSET_CLOBBERS_LOCALTIME, for consistency with other names;
7945         all uses changed.
7946         * modules/gethrxtime (Depends-on): Add sys_time.
7947         * modules/gettime (Depends-on): Likewise.
7948         * modules/gettimeofday (Depends-on): Likewise.
7949         * modules/nanosleep (Depends-on): Likewise.
7950         * modules/settime (Depends-on): Likewise.
7951         * modules/tempname (Depends-on): Likewise.
7952         * modules/utimens (Depends-on): Likewise.
7953         * modules/gettimeofday (Files): Remove lib/gettimeofday.h.
7954         (Include:) Change back to <sys/time.h>.
7955         (Maintainer:) Add self.
7956         * modules/sys_time: New file.
7957         * modules/tempname (Depends-on): Add gettimeofday.
7958         * tests/test-gettimeofday.c: Include <sys/time.h>
7959         rather than gettimeofday.h.
7960
7961 2007-01-17  Bruno Haible  <bruno@clisp.org>
7962
7963         * gnulib-tool (func_get_license): Revert last patch. Instead, let
7964         the license default to GPL.
7965         (func_create_testdir): Don't complain if a module is LGPL and its
7966         tests module depends on GPLed modules.
7967
7968 2007-01-17  Bruno Haible  <bruno@clisp.org>
7969
7970         * lib/gettimeofday.c (gettimeofday): Add code for the case
7971         HAVE_GETTIMEOFDAY && !GETTIMEOFDAY_CLOBBERS_LOCALTIME. Use the
7972         maximum possible value for tv->tv_usec, rather than the minimum one.
7973
7974 2005-10-08  Martin Lambers  <marlam@marlam.de>
7975 2005-10-08  Paul Eggert  <eggert@cs.ucla.edu>
7976 2007-01-16  Bruno Haible  <bruno@clisp.org>
7977
7978         * modules/gettimeofday (Files): Add lib/gettimeofday.h.
7979         (configure.ac): Remove AC_FUNC_GETTIMEOFDAY_CLOBBER. Add
7980         gl_FUNC_GETTIMEOFDAY.
7981         (Include): Add gettimeofday.h.
7982         * m4/gettimeofday.m4 (gl_FUNC_GETTIMEOFDAY): New macro.
7983         (AC_FUNC_GETTIMEOFDAY_CLOBBER): Don't invoke gl_PREREQ_GETTIMEOFDAY.
7984         (gl_GETTIMEOFDAY_REPLACE_LOCALTIME): Define
7985         GETTIMEOFDAY_CLOBBERS_LOCALTIME. Invoke gl_PREREQ_GETTIMEOFDAY here.
7986         (gl_PREREQ_GETTIMEOFDAY): Check for <sys/timeb.h> and _ftime.
7987         * lib/gettimeofday.h: New file.
7988         * lib/gettimeofday.c: Include <sys/timeb.h>.
7989         (localtime_buffer_addr, rpl_localtime, rpl_gmtime, rpl_tzset): Define
7990         only if GETTIMEOFDAY_CLOBBERS_LOCALTIME.
7991         (rpl_gettimeofday) [!HAVE_GETTIMEOFDAY]: Use _ftime() when available;
7992         fall back on time().
7993
7994         * tests/test-gettimeofday.c: New file.
7995         * modules/gettimeofday-tests: New file.
7996
7997 2007-01-16  Eric Blake  <ebb9@byu.net>
7998
7999         * modules/fnmatch (Depends-on): Depend on wchar.
8000         * lib/fnmatch.c (WIDE_CHAR_SUPPORT): Assume <wchar.h>.
8001         * m4/fnmatch.m4: Likewise.
8002         * modules/mbchar (Makefile.am): Assume <wchar.h>.
8003         * m4/mbchar.m4: Likewise.
8004         * modules/mbswidth (Depends-on): Depend on wchar.
8005         * lib/mbswidth.c: Assume <wchar.h>.
8006         * m4/mbswidth.m4: Likewise.
8007         * modules/quotearg (Depends-on): Depend on wchar.
8008         * lib/quotearg.c: Assume <wchar.h>.
8009         * m4/quotearg.m4: Likewise.
8010         * modules/regex (Depends-on): Depend on wchar.
8011         * lib/regex_internal.h: Assume <wchar.h>.
8012         * m4/regex.m4: Likewise.
8013         * modules/stdint (Depends-on): Depend on wchar.
8014         * lib/stdint_.h [!defined WCHAR_MIN]: Assume <wchar.h>.
8015         * m4/stdint.m4: Likewise.
8016         * tests/test-stdint.c [HAVE_WINT_T]: Likewise.
8017         * modules/strftime (Depends-on): Depend on wchar.
8018         * lib/strftime.c (DO_MULTIBYTE): Assume <wchar.h>.
8019         * modules/strtol (Depends-on): Depend on wchar.
8020         * lib/strtol.c: Assume <wchar.h>.
8021         * modules/wcwidth (Depends-on): Depend on wchar.
8022         * lib/wcwidth.h: Assume <wchar.h>.
8023         * m4/wcwidth.m4: Likewise.
8024
8025 2007-01-16  Bruno Haible  <bruno@clisp.org>
8026
8027         * modules/csharpexec-script: New, created from...
8028         * modules/csharpexec: ... this.
8029
8030 2007-01-16  Paolo Bonzini  <bonzini@gnu.org>
8031
8032         * modules/javaexec-script: New, created from...
8033         * modules/javaexec: ... this.
8034
8035 2007-01-16  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
8036
8037         * modules/poll (Dependencies): Add sys_select.
8038
8039 2007-01-15  Jim Meyering  <jim@meyering.net>
8040
8041         * m4/readutmp.m4 (gl_READUTMP): Work around AIX 4.3 struct-
8042         redefinition bug when using both <utmp.h> and <utmpx.h> headers.
8043         * lib/readutmp.h: Likewise.  Reported by Daniel Richard G. in
8044         <http://article.gmane.org/gmane.comp.gnu.core-utils.bugs/9415>.
8045
8046 2007-01-15  Bruno Haible  <bruno@clisp.org>
8047
8048         * modules/striconveh: New file.
8049         * lib/striconveh.h: New file.
8050         * lib/striconveh.c: New file.
8051         * MODULES.html.sh (Internationalization functions): Add striconveh.
8052
8053         * modules/striconveh-tests: New file.
8054         * tests/test-striconveh.c: New file.
8055
8056 2007-01-15  Bruno Haible  <bruno@clisp.org>
8057
8058         * lib/striconv.c (str_cd_iconv): Use the first algorithm if iconv is
8059         not from GNU libiconv or GNU libc.
8060
8061 2007-01-15  Bruno Haible  <bruno@clisp.org>
8062
8063         * doc/gnulib-intro.texi (Copyright): Explain the different license
8064         terms for module descriptions, autoconf macros, tests, documentation.
8065
8066 2007-01-14  Bruno Haible  <bruno@clisp.org>
8067
8068         * modules/striconv-tests: New file.
8069         * tests/test-striconv.c: New file.
8070
8071 2007-01-14  Bruno Haible  <bruno@clisp.org>
8072
8073         * modules/iconv-tests: New file.
8074         * tests/test-iconv.c: New file.
8075
8076 2007-01-14  Bruno Haible  <bruno@clisp.org>
8077
8078         * gnulib-tool (func_get_license): For test modules, use the license of
8079         the main module.
8080
8081 2007-01-14  Bruno Haible  <bruno@clisp.org>
8082
8083         * modules/iconv (Include): Clarify that <iconv.h> can only be included
8084         if iconv is found to exist.
8085
8086 2007-01-14  Bruno Haible  <bruno@clisp.org>
8087
8088         * modules/c-ctype-tests: New file.
8089         * tests/test-c-ctype.c: New file.
8090
8091 2007-01-14  Bruno Haible  <bruno@clisp.org>
8092
8093         * modules/binary-io-tests: New file.
8094         * tests/test-binary-io.sh: New file.
8095         * tests/test-binary-io.c: New file.
8096
8097 2007-01-14  Bruno Haible  <bruno@clisp.org>
8098
8099         * modules/array-oset-tests: New file.
8100         * tests/test-array_oset.c: New file.
8101
8102 2007-01-14  Bruno Haible  <bruno@clisp.org>
8103
8104         * modules/array-list-tests: New file.
8105         * tests/test-array_list.c: New file.
8106
8107 2007-01-14  Bruno Haible  <bruno@clisp.org>
8108
8109         * gnulib-tool (func_create_testdir): Don't unnecessarily run configure
8110         and make.
8111         Reported by Simon Josefsson in
8112         <http://lists.gnu.org/archive/html/bug-gnulib/2007-01/msg00139.html>
8113
8114 2007-01-14  Bruno Haible  <bruno@clisp.org>
8115
8116         * modules/allocsa-tests: New file.
8117         * tests/test-allocsa.c: New file.
8118
8119 2007-01-14  Bruno Haible  <bruno@clisp.org>
8120
8121         * modules/fchdir (Depends-on): Add absolute-header.
8122         * modules/unistd (Depends-on): Likewise.
8123
8124 2006-12-30  Bruno Haible  <bruno@clisp.org>
8125
8126         * modules/fchdir: New file.
8127         * modules/unistd (Files): Add lib/unistd_.h.
8128         (Makefile.am): Generate unistd.h from unistd_.h.
8129         * lib/fchdir.c: New file.
8130         * lib/dirent_.h: New file.
8131         * lib/unistd_.h: New file.
8132         * lib/fcntl_.h (open) [FCHDIR_REPLACEMENT]: New replacement.
8133         * m4/fchdir.m4: New file.
8134         * m4/unistd_h.m4 (gl_PREREQ_UNISTD): New macro.
8135         (gl_HEADER_UNISTD): Invoke it.
8136         * lib/dup-safer.c (dup_safer) [FCHDIR_REPLACEMENT]: Use the dup
8137         function.
8138         * lib/backupfile.c (opendir, closedir): Undefine.
8139         * lib/chown.c (open, close): Undefine.
8140         * lib/clean-temp.c (open, close): Undefine.
8141         * lib/copy-file.c (open, close): Undefine.
8142         * lib/execute.c (open, close): Undefine.
8143         * lib/fsusage.c (open, close): Undefine.
8144         * lib/gc-gnulib.c (open, close): Undefine.
8145         * lib/getcwd.c (opendir, closedir): Undefine.
8146         * lib/glob.c (opendir, closedir): Undefine.
8147         * lib/javacomp.c (open, close): Undefine.
8148         * lib/mountlist.c (open, close, opendir, closedir): Undefine.
8149         * lib/openat-proc.c (open, close): Undefine.
8150         * lib/pagealign_alloc.c (open, close): Undefine.
8151         * lib/pipe.c (open, close): Undefine.
8152         * lib/progreloc.c (open, close): Undefine.
8153         * lib/savedir.c (opendir, closedir): Undefine.
8154         * lib/utime.c (open, close): Undefine.
8155         * MODULES.html.sh (Support for systems lacking POSIX:2001): Add fchdir.
8156
8157 2007-01-10  Bruno Haible  <bruno@clisp.org>
8158
8159         * lib/striconv.c (mem_cd_iconv): Align the temporary buffer.
8160
8161 2007-01-12  Eric Blake  <ebb9@byu.net>
8162
8163         Provide a robust <wchar.h>.  Further simplifications are now
8164         possible in other modules, but not included here.
8165         * modules/wchar: New module.
8166         * m4/wchar.m4: New file.
8167         * lib/wchar_.h: Likewise.
8168         * modules/mbchar (Depends-on): Depend on wchar, as the first use
8169         of the new module.
8170         * MODULES.html.sh (Extended multibyte and wide character utilities):
8171         New section.
8172
8173 2007-01-12  Paul Eggert  <eggert@cs.ucla.edu>
8174
8175         * lib/xreadlink.c (SYMLINK_MAX) [!defined SYMLINK_MAX]: Define
8176         to a reasonable default for memory allocation.
8177         (xreadlink): Don't allocate a huge buffer, to work around a buggy
8178         file system that reports garbage st_size values for symlinks.
8179         Problem reported by Liyang Hu.
8180
8181 2007-01-11  Simon Josefsson  <simon@josefsson.org>
8182
8183         * gnulib-tool (func_all_modules): Exclude all .* files (e.g.,
8184         Emacs .#* auto-save files).
8185
8186 2007-01-11  Bruno Haible  <bruno@clisp.org>
8187
8188         * gnulib-tool (func_all_modules): Exclude all files inside the CVS
8189         directory.
8190
8191 2007-01-10  Paul Eggert  <eggert@cs.ucla.edu>
8192
8193         Use @...@ consistently in lib/wctype_.h.
8194         * lib/wctype_.h [HAVE_WINT_T]: Go back to using @...@, but rely
8195         on it being set to 1 or 0.
8196         * m4/wctype.m4 (gl_WCTYPE_H): Set HAVE_WINT_T to 1 or 0, and
8197         go back to AC_SUBSTing it.
8198         * modules/wctype (Makefile.am): Undo previous change.
8199
8200 2007-01-10  Eric Blake  <ebb9@byu.net>
8201
8202         * lib/wctype_.h [HAVE_WINT_T]: Rely on AC_DEFINE.
8203         * m4/wctype.m4 (gl_WCTYPE_H): No need to AC_SUBST(HAVE_WINT_T).
8204         * modules/wctype (Makefile.am): Likewise.
8205         Reported by Chris McGuire.
8206
8207 2007-01-10  Jim Meyering  <jim@meyering.net>
8208
8209         fts.c: a small readability/maintainability improvement
8210         * lib/fts.c (fts_read): Make this code slightly more readable and
8211         maintainable by hoisting the "sp->fts_cur = p" assignments to
8212         immediately follow the statements that set P.  Derived from
8213         the patch by Miloslav Trmac in http://bugzilla.redhat.com/222089.
8214
8215 2007-01-10  Eric Blake  <ebb9@byu.net>
8216
8217         * lib/wctype_.h [HAVE_WINT_T]: Include <stddef.h> before
8218         <wchar.h>, to work around BSDI bug in BSD/OS 4.0.1.
8219         * m4/wcwidth.m4 (gl_FUNC_WCWIDTH): Likewise.
8220         * m4/wint_t.m4 (gt_TYPE_WINT_T): Likewise.
8221         Reported by Chris McGuire.
8222
8223 2007-01-09  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
8224
8225         * gnulib-tool (func_all_modules): Use POSIX conforming escaping
8226         in sed script.
8227
8228 2007-01-09  Bruno Haible  <bruno@clisp.org>
8229
8230         * MODULES.html.sh: Accept options --cvs-urls, --git-urls.
8231         (repo_url_prefix, repo_url_suffix, repo_url_suffix_repl): New
8232         variables.
8233         (func_module): Use them.
8234
8235 2007-01-09  Bruno Haible  <bruno@clisp.org>
8236
8237         * modules/unistr/base: New file.
8238         * lib/unistr.h: New file.
8239
8240         * modules/unistr/u8-to-u16: New file.
8241         * lib/unistr/u8-to-u16.c: New file.
8242
8243         * modules/unistr/u8-to-u32: New file.
8244         * lib/unistr/u8-to-u32.c: New file.
8245
8246         * modules/unistr/u16-to-u8: New file.
8247         * lib/unistr/u16-to-u8.c: New file.
8248
8249         * modules/unistr/u16-to-u32: New file.
8250         * lib/unistr/u16-to-u32.c: New file.
8251
8252         * modules/unistr/u32-to-u8: New file.
8253         * lib/unistr/u32-to-u8.c: New file.
8254
8255         * modules/unistr/u32-to-u16: New file.
8256         * lib/unistr/u32-to-u16.c: New file.
8257
8258         * modules/unistr/u8-check: New file.
8259         * modules/unistr/u16-check: New file.
8260         * modules/unistr/u32-check: New file.
8261         * lib/unistr/u8-check.c: New file.
8262         * lib/unistr/u16-check.c: New file.
8263         * lib/unistr/u32-check.c: New file.
8264
8265         * modules/unistr/u8-chr: New file.
8266         * modules/unistr/u16-chr: New file.
8267         * modules/unistr/u32-chr: New file.
8268         * lib/unistr/u8-chr.c: New file.
8269         * lib/unistr/u16-chr.c: New file.
8270         * lib/unistr/u32-chr.c: New file.
8271
8272         * modules/unistr/u8-cmp: New file.
8273         * modules/unistr/u16-cmp: New file.
8274         * modules/unistr/u32-cmp: New file.
8275         * lib/unistr/u8-cmp.c: New file.
8276         * lib/unistr/u16-cmp.c: New file.
8277         * lib/unistr/u32-cmp.c: New file.
8278
8279         * modules/unistr/u8-cpy: New file.
8280         * modules/unistr/u16-cpy: New file.
8281         * modules/unistr/u32-cpy: New file.
8282         * lib/unistr/u8-cpy.c: New file.
8283         * lib/unistr/u16-cpy.c: New file.
8284         * lib/unistr/u32-cpy.c: New file.
8285         * lib/unistr/u-cpy.h: New file.
8286
8287         * modules/unistr/u8-cpy-alloc: New file.
8288         * modules/unistr/u16-cpy-alloc: New file.
8289         * modules/unistr/u32-cpy-alloc: New file.
8290         * lib/unistr/u8-cpy-alloc.c: New file.
8291         * lib/unistr/u16-cpy-alloc.c: New file.
8292         * lib/unistr/u32-cpy-alloc.c: New file.
8293         * lib/unistr/u-cpy-alloc.h: New file.
8294
8295         * modules/unistr/u8-endswith: New file.
8296         * modules/unistr/u16-endswith: New file.
8297         * modules/unistr/u32-endswith: New file.
8298         * lib/unistr/u8-endswith.c: New file.
8299         * lib/unistr/u16-endswith.c: New file.
8300         * lib/unistr/u32-endswith.c: New file.
8301         * lib/unistr/u-endswith.h: New file.
8302
8303         * modules/unistr/u8-mblen: New file.
8304         * modules/unistr/u16-mblen: New file.
8305         * modules/unistr/u32-mblen: New file.
8306         * lib/unistr/u8-mblen.c: New file.
8307         * lib/unistr/u16-mblen.c: New file.
8308         * lib/unistr/u32-mblen.c: New file.
8309
8310         * modules/unistr/u8-mbtouc: New file.
8311         * modules/unistr/u16-mbtouc: New file.
8312         * modules/unistr/u32-mbtouc: New file.
8313         * lib/unistr/u8-mbtouc.c: New file.
8314         * lib/unistr/u16-mbtouc.c: New file.
8315         * lib/unistr/u32-mbtouc.c: New file.
8316
8317         * modules/unistr/u8-mbtouc-safe: New file.
8318         * modules/unistr/u16-mbtouc-safe: New file.
8319         * modules/unistr/u32-mbtouc-safe: New file.
8320         * lib/unistr/u8-mbtouc-safe.c: New file.
8321         * lib/unistr/u16-mbtouc-safe.c: New file.
8322         * lib/unistr/u32-mbtouc-safe.c: New file.
8323
8324         * modules/unistr/u8-move: New file.
8325         * modules/unistr/u16-move: New file.
8326         * modules/unistr/u32-move: New file.
8327         * lib/unistr/u8-move.c: New file.
8328         * lib/unistr/u16-move.c: New file.
8329         * lib/unistr/u32-move.c: New file.
8330         * lib/unistr/u-move.h: New file.
8331
8332         * modules/unistr/u8-next: New file.
8333         * modules/unistr/u16-next: New file.
8334         * modules/unistr/u32-next: New file.
8335         * lib/unistr/u8-next.c: New file.
8336         * lib/unistr/u16-next.c: New file.
8337         * lib/unistr/u32-next.c: New file.
8338
8339         * modules/unistr/u8-prev: New file.
8340         * modules/unistr/u16-prev: New file.
8341         * modules/unistr/u32-prev: New file.
8342         * lib/unistr/u8-prev.c: New file.
8343         * lib/unistr/u16-prev.c: New file.
8344         * lib/unistr/u32-prev.c: New file.
8345
8346         * modules/unistr/u8-set: New file.
8347         * modules/unistr/u16-set: New file.
8348         * modules/unistr/u32-set: New file.
8349         * lib/unistr/u8-set.c: New file.
8350         * lib/unistr/u16-set.c: New file.
8351         * lib/unistr/u32-set.c: New file.
8352         * lib/unistr/u-set.h: New file.
8353
8354         * modules/unistr/u8-startswith: New file.
8355         * modules/unistr/u16-startswith: New file.
8356         * modules/unistr/u32-startswith: New file.
8357         * lib/unistr/u8-startswith.c: New file.
8358         * lib/unistr/u16-startswith.c: New file.
8359         * lib/unistr/u32-startswith.c: New file.
8360         * lib/unistr/u-startswith.h: New file.
8361
8362         * modules/unistr/u8-stpcpy: New file.
8363         * modules/unistr/u16-stpcpy: New file.
8364         * modules/unistr/u32-stpcpy: New file.
8365         * lib/unistr/u8-stpcpy.c: New file.
8366         * lib/unistr/u16-stpcpy.c: New file.
8367         * lib/unistr/u32-stpcpy.c: New file.
8368         * lib/unistr/u-stpcpy.h: New file.
8369
8370         * modules/unistr/u8-stpncpy: New file.
8371         * modules/unistr/u16-stpncpy: New file.
8372         * modules/unistr/u32-stpncpy: New file.
8373         * lib/unistr/u8-stpncpy.c: New file.
8374         * lib/unistr/u16-stpncpy.c: New file.
8375         * lib/unistr/u32-stpncpy.c: New file.
8376         * lib/unistr/u-stpncpy.h: New file.
8377
8378         * modules/unistr/u8-strcat: New file.
8379         * modules/unistr/u16-strcat: New file.
8380         * modules/unistr/u32-strcat: New file.
8381         * lib/unistr/u8-strcat.c: New file.
8382         * lib/unistr/u16-strcat.c: New file.
8383         * lib/unistr/u32-strcat.c: New file.
8384         * lib/unistr/u-strcat.h: New file.
8385
8386         * modules/unistr/u8-strchr: New file.
8387         * modules/unistr/u16-strchr: New file.
8388         * modules/unistr/u32-strchr: New file.
8389         * lib/unistr/u8-strchr.c: New file.
8390         * lib/unistr/u16-strchr.c: New file.
8391         * lib/unistr/u32-strchr.c: New file.
8392
8393         * modules/unistr/u8-strcmp: New file.
8394         * modules/unistr/u16-strcmp: New file.
8395         * modules/unistr/u32-strcmp: New file.
8396         * lib/unistr/u8-strcmp.c: New file.
8397         * lib/unistr/u16-strcmp.c: New file.
8398         * lib/unistr/u32-strcmp.c: New file.
8399
8400         * modules/unistr/u8-strcpy: New file.
8401         * modules/unistr/u16-strcpy: New file.
8402         * modules/unistr/u32-strcpy: New file.
8403         * lib/unistr/u8-strcpy.c: New file.
8404         * lib/unistr/u16-strcpy.c: New file.
8405         * lib/unistr/u32-strcpy.c: New file.
8406         * lib/unistr/u-strcpy.h: New file.
8407
8408         * modules/unistr/u8-strcspn: New file.
8409         * modules/unistr/u16-strcspn: New file.
8410         * modules/unistr/u32-strcspn: New file.
8411         * lib/unistr/u8-strcspn.c: New file.
8412         * lib/unistr/u16-strcspn.c: New file.
8413         * lib/unistr/u32-strcspn.c: New file.
8414         * lib/unistr/u-strcspn.h: New file.
8415
8416         * modules/unistr/u8-strdup: New file.
8417         * modules/unistr/u16-strdup: New file.
8418         * modules/unistr/u32-strdup: New file.
8419         * lib/unistr/u8-strdup.c: New file.
8420         * lib/unistr/u16-strdup.c: New file.
8421         * lib/unistr/u32-strdup.c: New file.
8422         * lib/unistr/u-strdup.h: New file.
8423
8424         * modules/unistr/u8-strlen: New file.
8425         * modules/unistr/u16-strlen: New file.
8426         * modules/unistr/u32-strlen: New file.
8427         * lib/unistr/u8-strlen.c: New file.
8428         * lib/unistr/u16-strlen.c: New file.
8429         * lib/unistr/u32-strlen.c: New file.
8430         * lib/unistr/u-strlen.h: New file.
8431
8432         * modules/unistr/u8-strmblen: New file.
8433         * modules/unistr/u16-strmblen: New file.
8434         * modules/unistr/u32-strmblen: New file.
8435         * lib/unistr/u8-strmblen.c: New file.
8436         * lib/unistr/u16-strmblen.c: New file.
8437         * lib/unistr/u32-strmblen.c: New file.
8438
8439         * modules/unistr/u8-strmbtouc: New file.
8440         * modules/unistr/u16-strmbtouc: New file.
8441         * modules/unistr/u32-strmbtouc: New file.
8442         * lib/unistr/u8-strmbtouc.c: New file.
8443         * lib/unistr/u16-strmbtouc.c: New file.
8444         * lib/unistr/u32-strmbtouc.c: New file.
8445
8446         * modules/unistr/u8-strncat: New file.
8447         * modules/unistr/u16-strncat: New file.
8448         * modules/unistr/u32-strncat: New file.
8449         * lib/unistr/u8-strncat.c: New file.
8450         * lib/unistr/u16-strncat.c: New file.
8451         * lib/unistr/u32-strncat.c: New file.
8452         * lib/unistr/u-strncat.h: New file.
8453
8454         * modules/unistr/u8-strncmp: New file.
8455         * modules/unistr/u16-strncmp: New file.
8456         * modules/unistr/u32-strncmp: New file.
8457         * lib/unistr/u8-strncmp.c: New file.
8458         * lib/unistr/u16-strncmp.c: New file.
8459         * lib/unistr/u32-strncmp.c: New file.
8460
8461         * modules/unistr/u8-strncpy: New file.
8462         * modules/unistr/u16-strncpy: New file.
8463         * modules/unistr/u32-strncpy: New file.
8464         * lib/unistr/u8-strncpy.c: New file.
8465         * lib/unistr/u16-strncpy.c: New file.
8466         * lib/unistr/u32-strncpy.c: New file.
8467         * lib/unistr/u-strncpy.h: New file.
8468
8469         * modules/unistr/u8-strnlen: New file.
8470         * modules/unistr/u16-strnlen: New file.
8471         * modules/unistr/u32-strnlen: New file.
8472         * lib/unistr/u8-strnlen.c: New file.
8473         * lib/unistr/u16-strnlen.c: New file.
8474         * lib/unistr/u32-strnlen.c: New file.
8475         * lib/unistr/u-strnlen.h: New file.
8476
8477         * modules/unistr/u8-strpbrk: New file.
8478         * modules/unistr/u16-strpbrk: New file.
8479         * modules/unistr/u32-strpbrk: New file.
8480         * lib/unistr/u8-strpbrk.c: New file.
8481         * lib/unistr/u16-strpbrk.c: New file.
8482         * lib/unistr/u32-strpbrk.c: New file.
8483         * lib/unistr/u-strpbrk.h: New file.
8484
8485         * modules/unistr/u8-strrchr: New file.
8486         * modules/unistr/u16-strrchr: New file.
8487         * modules/unistr/u32-strrchr: New file.
8488         * lib/unistr/u8-strrchr.c: New file.
8489         * lib/unistr/u16-strrchr.c: New file.
8490         * lib/unistr/u32-strrchr.c: New file.
8491
8492         * modules/unistr/u8-strspn: New file.
8493         * modules/unistr/u16-strspn: New file.
8494         * modules/unistr/u32-strspn: New file.
8495         * lib/unistr/u8-strspn.c: New file.
8496         * lib/unistr/u16-strspn.c: New file.
8497         * lib/unistr/u32-strspn.c: New file.
8498         * lib/unistr/u-strspn.h: New file.
8499
8500         * modules/unistr/u8-strstr: New file.
8501         * modules/unistr/u16-strstr: New file.
8502         * modules/unistr/u32-strstr: New file.
8503         * lib/unistr/u8-strstr.c: New file.
8504         * lib/unistr/u16-strstr.c: New file.
8505         * lib/unistr/u32-strstr.c: New file.
8506         * lib/unistr/u-strstr.h: New file.
8507
8508         * modules/unistr/u8-strtok: New file.
8509         * modules/unistr/u16-strtok: New file.
8510         * modules/unistr/u32-strtok: New file.
8511         * lib/unistr/u8-strtok.c: New file.
8512         * lib/unistr/u16-strtok.c: New file.
8513         * lib/unistr/u32-strtok.c: New file.
8514         * lib/unistr/u-strtok.h: New file.
8515
8516         * modules/unistr/u8-uctomb: New file.
8517         * modules/unistr/u16-uctomb: New file.
8518         * modules/unistr/u32-uctomb: New file.
8519         * lib/unistr/u8-uctomb.c: New file.
8520         * lib/unistr/u16-uctomb.c: New file.
8521         * lib/unistr/u32-uctomb.c: New file.
8522
8523         * MODULES.html.sh (Unicode string functions): Add the new modules.
8524
8525 2007-01-08  Bruno Haible  <bruno@clisp.org>
8526
8527         * gnulib-tool (func_all_modules): Use find, not ls, to traverse the
8528         modules directory. Filter out CVS, ChangeLog, COPYING, README also from
8529         subdirectories.
8530
8531 2007-01-08  Karl Berry  <karl@gnu.org>
8532
8533         * doc/error.texi: mention that main() fns must set program_name
8534         when progname is used.
8535
8536 2007-01-08  Paul Eggert  <eggert@cs.ucla.edu>
8537
8538         * m4/wctype.m4 (gl_WCTYPE_H): Compute ABSOLUTE_WCTYPE_H even if
8539         WCTYPE_H is empty, for the benefit of builds from non-distclean
8540         directories.  Problem reported by Eric Blake in
8541         <http://lists.gnu.org/archive/html/bug-gnulib/2007-01/msg00157.html>.
8542
8543 2007-01-08  Bruno Haible  <bruno@clisp.org>
8544
8545         * m4/canonicalize.m4 (AC_FUNC_CANONICALIZE_FILE_NAME): Remove
8546         PROVIDE_CANONICALIZE_FILENAME_MODE macro definition.
8547         * lib/canonicalize.h: Test GNULIB_CANONICALIZE instead of
8548         PROVIDE_CANONICALIZE_FILENAME_MODE.
8549         * modules/canonicalize (configure.ac): Use gl_MODULE_INDICATOR.
8550
8551 2007-01-08  Bruno Haible  <bruno@clisp.org>
8552
8553         * m4/fts.m4 (gl_FUNC_FTS_LGPL): Remove _LGPL_PACKAGE macro definition.
8554         * lib/fts_.h (_LGPL_PACKAGE): Remove macro.
8555         Use !GNULIB_FTS instead of _LGPL_PACKAGE.
8556         * lib/fts.c: Likewise.
8557         * modules/fts (configure.ac): Use gl_MODULE_INDICATOR.
8558
8559 2006-12-25  Bruno Haible  <bruno@clisp.org>
8560
8561         * modules/utf8-ucs4-safe: New file.
8562         * lib/utf8-ucs4-safe.h: New file.
8563         * lib/unistr/utf8-ucs4-safe.c: New file.
8564
8565         * modules/utf16-ucs4-safe: New file.
8566         * lib/utf16-ucs4-safe.h: New file.
8567         * lib/unistr/utf16-ucs4-safe.c: New file.
8568
8569         * MODULES.html.sh (Unicode string functions): Add the new modules.
8570
8571 2007-01-08  Bruno Haible  <bruno@clisp.org>
8572
8573         * modules/utf8-ucs4 (Files, lib_SOURCES): Add unistr/utf8-ucs4.c.
8574         (Depends-on): Add unitypes.
8575         * lib/utf8-ucs4.h: Add double-inclusion guard. Include unitypes.h.
8576         (u8_mbtouc_aux): Move out to separate file.
8577         (u8_mbtouc): Use ucs4_t, uint8_t types.
8578         * lib/unistr/utf8-ucs4.c: New file.
8579
8580         * modules/utf16-ucs4 (Files, lib_SOURCES): Add unistr/utf16-ucs4.c.
8581         (Depends-on): Add unitypes.
8582         * lib/utf16-ucs4.h: Add double-inclusion guard. Include unitypes.h.
8583         (u16_mbtouc_aux): Move out to separate file.
8584         (u16_mbtouc): Use ucs4_t, uint16_t types.
8585         * lib/unistr/utf16-ucs4.c: New file.
8586
8587         * modules/ucs4-utf8 (Files, lib_SOURCES): Add unistr/ucs4-utf8.c.
8588         (Depends-on): Add unitypes.
8589         * lib/ucs4-utf8.h: Add double-inclusion guard. Include unitypes.h.
8590         (u8_uctomb_aux): Move out to separate file.
8591         (u8_uctomb): Use ucs4_t, uint8_t types.
8592         * lib/unistr/ucs4-utf8.c: New file.
8593
8594         * modules/ucs4-utf16 (Files, lib_SOURCES): Add unistr/ucs4-utf16.c.
8595         (Depends-on): Add unitypes.
8596         * lib/ucs4-utf16.h: Add double-inclusion guard. Include unitypes.h.
8597         (u16_uctomb_aux): Move out to separate file.
8598         (u16_uctomb): Use ucs4_t, uint16_t types.
8599         * lib/unistr/ucs4-utf16.c: New file.
8600
8601 2006-12-25  Bruno Haible  <bruno@clisp.org>
8602
8603         * modules/unitypes: New file.
8604         * lib/unitypes.h: New file.
8605         * MODULES.html.sh (func_all_modules): New section "Unicode string
8606         functions". Move ucs4-utf8, ucs4-utf16, utf8-ucs4, utf16-ucs4 to
8607         this section. Add unitypes.
8608
8609 2007-01-08  Bruno Haible  <bruno@clisp.org>
8610
8611         Avoid variable names that conflict with those from libtool.
8612         * m4/lib-link.m4 (AC_LIB_RPATH, AC_LIB_LINKFLAGS_BODY,
8613         AC_LIB_LINKFLAGS_FROM_LIBS): Rename libext to acl_libext,
8614         shlibext to acl_shlibext, libname_spec to acl_libname_spec,
8615         library_names_spec to acl_library_names_spec, hardcode_* to
8616         acl_hardcode_*.
8617         Reported by Ralf Wildenhues.
8618
8619 2007-01-08  Bruno Haible  <bruno@clisp.org>
8620
8621         * m4/gc-arcfour.m4 (gl_GC_ARCFOUR): Remove GC_USE_ARCFOUR macro
8622         definition.
8623         * m4/gc-arctwo.m4 (gl_GC_ARCTWO): Remove GC_USE_ARCTWO macro
8624         definition.
8625         * m4/gc-des.m4 (gl_GC_DES): Remove GC_USE_DES macro definition.
8626         * m4/gc-hmac-md5.m4 (gl_GC_HMAC_MD5): Remove GC_USE_HMAC_MD5 macro
8627         definition.
8628         * m4/gc-hmac-sha1.m4 (gl_GC_HMAC_SHA1): Remove GC_USE_HMAC_SHA1 macro
8629         definition.
8630         * m4/gc-md2.m4 (gl_GC_MD2): Remove GC_USE_MD2 macro definition.
8631         * m4/gc-md4.m4 (gl_GC_MD4): Remove GC_USE_MD4 macro definition.
8632         * m4/gc-md5.m4 (gl_GC_MD5): Remove GC_USE_MD5 macro definition.
8633         * m4/gc-random.m4 (gl_GC_RANDOM): Remove GC_USE_RANDOM macro
8634         definition.
8635         * m4/gc-rijndael.m4 (gl_GC_RIJNDAEL): Remove GC_USE_RIJNDAEL macro
8636         definition.
8637         * m4/gc-sha1.m4 (gl_GC_SHA1): Remove GC_USE_SHA1 macro definition.
8638         * lib/gc-gnulib.c: Use GNULIB_GC_<algorithm> instead of
8639         GC_USE_<algorithm>.
8640         * lib/gc-libgcrypt.c: Likewise.
8641         * modules/gc-arcfour (configure.ac): Use gl_MODULE_INDICATOR.
8642         * modules/gc-arctwo (configure.ac): Likewise.
8643         * modules/gc-des (configure.ac): Likewise.
8644         * modules/gc-hmac-md5 (configure.ac): Likewise.
8645         * modules/gc-hmac-sha1 (configure.ac): Likewise.
8646         * modules/gc-md2 (configure.ac): Likewise.
8647         * modules/gc-md4 (configure.ac): Likewise.
8648         * modules/gc-md5 (configure.ac): Likewise.
8649         * modules/gc-random (configure.ac): Likewise.
8650         * modules/gc-rijndael (configure.ac): Likewise.
8651         * modules/gc-sha1 (configure.ac): Likewise.
8652
8653 2007-01-08  Bruno Haible  <bruno@clisp.org>
8654
8655         * m4/close-stream.m4 (gl_CLOSE_STREAM): Remove GNULIB_CLOSE_STREAM
8656         macro definition.
8657         * m4/fcntl-safer.m4 (gl_FCNTL_SAFER): Remove GNULIB_FCNTL_SAFER macro
8658         definition.
8659         * m4/stdio-safer.m4 (gl_FOPEN_SAFER): Remove GNULIB_FOPEN_SAFER macro
8660         definition.
8661         * modules/close-stream (configure.ac): Invoke gl_MODULE_INDICATOR.
8662         * modules/fcntl-safer (configure.ac): Likewise.
8663         * modules/fopen-safer (configure.ac): Likewise.
8664         * modules/fwriteerror (configure.ac): Likewise. Remove explicit
8665         GNULIB_FWRITEERROR macro definition.
8666
8667 2007-01-08  Bruno Haible  <bruno@clisp.org>
8668
8669         * m4/gnulib-common.m4: New file.
8670         * gnulib-tool (func_get_autoconf_snippet): Undo last change.
8671         (func_get_filelist): Add m4/gnulib-common.m4.
8672
8673 2007-01-08  Bruno Haible  <bruno@clisp.org>
8674
8675         * m4/lib-link.m4 (AC_LIB_LINKFLAGS_BODY): Simplify the sorting
8676         command.
8677
8678 2007-01-08  Jim Meyering  <jim@meyering.net>
8679
8680         Use a more robust test for a "can't happen" condition.
8681         * lib/fts.c (fts_read): Revert the change of 2006-11-22, since it
8682         narrowed the st_size value.  Presuming the "can't happen" condition
8683         is true, that narrowing could conceivably convert an invalid st_size
8684         value into a valid one.  Instead, use a change based on Matthew
8685         Woehlke's original patch.
8686
8687         Slight readability improvement: use an assert-like macro
8688         in place of literal "abort ()" uses.
8689         * lib/fts.c (fts_assert): Define.
8690         (fts_set_stat_required, cwd_advance_fd, fts_read, fd_ring_check):
8691         Use this macro instead of a bare 'abort'.
8692
8693 2007-01-05  Paul Eggert  <eggert@cs.ucla.edu>
8694
8695         Don't worry about using IRIX 5.3's wctype.h broken definitions;
8696         simply work around them.
8697         * lib/wctype_.h: Remove test for HAVE_WCTYPE_CTMP_BUG.
8698         (iswalnum, iswalpha, iswblank, iswcntrl, iswdigit, iswgraph, iswlower):
8699         (iswprint, iswpunct, iswspace, iswupper, iswxdigit): Undef before
8700         declaring.
8701         Don't bother to define as macros, since the standard doesn't require it.
8702         * m4/wctype.m4 (WCTYPE_H, ABSOLUTE_WCTYPE_H): Simplify, since we no
8703         longer worry about IRIX 5.3.
8704         (HAVE_WCTYPE_CTMP_BUG): Remove.
8705
8706 2007-01-04  Paul Eggert  <eggert@cs.ucla.edu>
8707
8708         * lib/wctype_.h (_ctmp_) [HAVE_WCTYPE_CTMP_BUG]: Now of type wchar_t,
8709         not wint_t.  Also, include <ctype.h>, to fix another IRIX bug.
8710         * m4/wctype.m4 (gl_WCTYPE_H): Likewise.
8711         Problems reported by Georg Schwarz for IRIX 5.3.
8712
8713         * gnulib-tool (autoconf_minversion): Take the maximum version number
8714         found, not the minimum.  Problem reported by James Youngman.
8715
8716 2007-01-03  Karl Berry  <karl@gnu.org>
8717
8718         * doc/error.texi: new file, explaining interaction with progname.
8719         * doc/gnulib.texi: include it.  Update copyright.
8720
8721 2007-01-03  Simon Josefsson  <simon@josefsson.org>
8722
8723         * gnulib-tool (func_create_testdir): Run AC_CANONICAL_BUILD and
8724         AC_CANONICAL_HOST, to improve autobuild outputs.
8725
8726 2007-01-03  Paolo Bonzini  <bonzini@gnu.org>
8727             Yoann Vandoorselaere <yoann.v@prelude-ids.com>
8728
8729         * lib/poll.c (poll): Use recv on Mac OS X to distinguish connected
8730         sockets, server sockets, and other file descriptors.  Count errors
8731         to compute the return value.  Reorder the code a bit to be easier
8732         to follow.  Don't set event bits that were not requested (except
8733         POLLERR and POLLHUP).
8734
8735 2007-01-01  Bruno Haible  <bruno@clisp.org>
8736
8737         * modules/lchmod (Include): Require lchmod.h, not lchown.h.
8738
8739 2007-01-03  Jim Meyering  <jim@meyering.net>
8740
8741         * modules/fts-lgpl (Depends-on): Add i-ring.  Reported by Bruno Haible.
8742
8743 2007-01-02  Bruno Haible  <bruno@clisp.org>
8744
8745         * modules/settime (Include): Require timespec.h.
8746         * modules/nanosleep (Include): Likewise.
8747
8748 2007-01-01  Bruno Haible  <bruno@clisp.org>
8749
8750         * gnulib-tool (func_emit_copyright_notice): Bump year.
8751         (func_get_autoconf_snippet): Emit a GNULIB_<modulename> macro.
8752
8753 2007-01-01  Bruno Haible  <bruno@clisp.org>
8754
8755         Improve support for OpenBSD.
8756         * build-aux/config.rpath (libname_spec): Export.
8757         (library_names_spec): New variable. Export.
8758         * m4/lib-link.m4 (AC_LIB_LINKFLAGS_BODY): Extract libname_spec and
8759         library_names_spec from the config.rpath output. Locate shared library
8760         through the name pattern in library_names_spec.
8761
8762 2007-01-01  Eric Blake  <ebb9@byu.net>
8763
8764         * lib/version-etc.c (COPYRIGHT_YEAR): Bump for new year.
8765
8766 2006-12-30  Paul Eggert  <eggert@cs.ucla.edu>
8767
8768         * gnulib-tool (SORT): Remove, since we no longer assume GNU sort.
8769         Rewrite so as not to assume GNU sort or "tail -1".  Also, don't
8770         assume the C locale, and avoid an "eval" that could cause trouble.
8771         Problem with SORT reported by Bob Proulx.
8772
8773         * lib/getpagesize.h (getpagesize) [defined __amigaos4__]:
8774         Define.  Trivial patch from Henning Nielsen Lund, originally
8775         sent to bug-grep@gnu.org today.
8776
8777 2006-12-29  Paul Eggert  <eggert@cs.ucla.edu>
8778
8779         * lib/acl.h: Include sys/types.h and sys/stat.h, for mode_t and
8780         struct stat.  Problem reported by Henning Nielsen Lund.
8781         * lib/acl.c: Include acl.h first, to check interface.  Don't
8782         bother to include sys/types.h and sys/stat.h again.
8783
8784 2006-12-28  Paul Eggert  <eggert@cs.ucla.edu>
8785
8786         Import the following change from libc; problem reported by
8787         Sven Verdoolaege.
8788
8789         2005-10-13  Ulrich Drepper  <drepper@redhat.com>
8790
8791         [BZ #1373]
8792         * lib/argp.h: Remove __NTH for __argp_usage inline function.
8793
8794 2006-12-28  Jim Meyering  <jim@meyering.net>
8795
8796         * build-aux/announce-gen: Do not assume that the package
8797         builds any of tar.gz, tar.bz2, and .xdelta files.
8798         Suggestion from Simon Josefsson.
8799
8800 2006-12-28  Simon Josefsson  <simon@josefsson.org>
8801
8802         * modules/announce-gen: New file.
8803
8804 2006-12-27  Paul Eggert  <eggert@cs.ucla.edu>
8805
8806         * lib/mbchar.h: Just include <wctype.h>; the wctype module
8807         handles its gotchas now.
8808         * lib/mbswidth.c: Likewise.
8809         * lib/wcwidth.h: Likewise.
8810         * m4/mbchar.m4 (gl_MBCHAR): Don't bother checking for wctype.h
8811         and iswcntrl; the wctype module does this stuff now.
8812         * m4/mbswidth.m4 (gl_MBSWIDTH): Likewise.
8813         * m4/wcwidth.m4 (gl_FUNC_WCWIDTH): Likewise.
8814         * modules/mbchar (Depends-on): Add wctype.
8815         * modules/mbswidth (Depends-on): Likewise.
8816         * modules/wcwidth (Depends-on): Likewise.
8817
8818 2006-12-27  Eric Blake  <ebb9@byu.net>
8819
8820         * lib/fnmatch.c: Reinstate inclusion of <wchar.h>, since this
8821         module uses more than what <wctype.h> is required to provide.
8822
8823 2006-12-26  Eric Blake  <ebb9@byu.net>
8824
8825         * gnulib-tool (sed_extract_prog): Avoid space-tab.
8826
8827 2006-12-26  Eric Blake  <ebb9@byu.net>
8828
8829         * modules/absolute-header: New module.
8830         * modules/fcntl (Depends-on): Depend on it.
8831         * modules/inttypes (Depends-on): Likewise.
8832         * modules/stdint (Depends-on): Likewise.
8833         * modules/sys_stat (Depends-on): Likewise.
8834         * modules/wctype (Depends-on): Likewise.
8835         * MODULES.html.sh (Support for building libraries and
8836         executables): Document it.
8837
8838 2006-12-25  Paul Eggert  <eggert@cs.ucla.edu>
8839
8840         * gnulib-tool (SED): Remove, undoing previous change.
8841         The problem was that it broke coreutils on Solaris, because
8842         "sed --posix" leaked into a makefile.
8843         (sed): New alias, if 'alias' and GNU sed.
8844
8845 2006-12-24  Jim Meyering  <jim@meyering.net>
8846
8847         Work around an fchownat bug in glibc-2.4:
8848         http://lists.ubuntu.com/archives/ubuntu-users/2006-September/093218.html
8849         This bug would cause "chown -RP ... DIR" to follow symlinks in DIR,
8850         in spite of the -P option.
8851         * m4/openat.m4 (gl_FUNC_FCHOWNAT, gl_FUNC_FCHOWNAT_DEREF_BUG):
8852         New macros.
8853         (gl_PREREQ_OPENAT): Require gl_FUNC_FCHOWNAT.
8854         * modules/openat (Files): Add lib/fchownat.c.
8855         * lib/openat.c (fchownat): Don't define here.  Move to...
8856         * lib/fchownat.c: ...this new file.
8857
8858 2006-12-23  Paul Eggert  <eggert@cs.ucla.edu>
8859
8860         Fix bug reported by Bruno Haible in
8861         <http://lists.gnu.org/archive/html/bug-gnulib/2006-12/msg00228.html>
8862         where quotearg.c didn't compile on Mac OS X 10.2 because it
8863         lacks <wchar.h> and wint_t.
8864         * lib/wctype_.h (__wctype_wint_t): New type.
8865         Include <stdio.h>, <time.h>, <wchar.h> only if HAVE_WINT_T.
8866         (iswalnum, iswalpha, iswblank, iswcntrl, iswdigit, iswgraph):
8867         (iswlower, iswprint, iswpunct, iswspace, iswupper, ixwxdigit):
8868         Arg is now of type __wctype_wint_t, not wint_t.
8869         * m4/wctype.m4 (gl_WCTYPE_H): Require gt_TYPE_WINT_T, and
8870         substitute HAVE_WINT_T.
8871         * modules/wctype (Files): Add m4/wint_t.m4.
8872         (wctype.h): Substitute HAVE_WINT_T.
8873
8874 2006-12-23  Bruno Haible  <bruno@clisp.org>
8875
8876         * lib/safe-read.h [C++]: Wrap declarations in extern "C".
8877
8878 2006-12-23  Bruno Haible  <bruno@clisp.org>
8879
8880         * lib/canonicalize-lgpl.c (__realpath): Test HAVE_READLINK instead of
8881         S_ISLNK.
8882         Needed because gnulib's sys/stat.h replacement defines S_ISLNK on
8883         mingw.
8884
8885 2006-12-22  Bruno Haible  <bruno@clisp.org>
8886
8887         * lib/copy-file.c: Include acl.h.
8888         (copy_file_preserving) [USE_ACL]: Use copy_acl instead of chmod.
8889         Close the file descriptors only after being done with copy_acl.
8890         * modules/copy-file (Depends-on): Add acl.
8891
8892 2006-12-22  Bruno Haible  <bruno@clisp.org>
8893
8894         * gnulib-tool (SED): New variable.
8895         Use $SED instead of sed everywhere.
8896
8897 2006-12-22  Bruno Haible  <bruno@clisp.org>
8898
8899         * modules/no-c++: New file.
8900         * m4/no-c++.m4: New file.
8901         * MODULES.html.sh (Support for building libraries and executables):
8902         Add no-c++.
8903
8904 2006-12-22  Paul Eggert  <eggert@cs.ucla.edu>
8905
8906         * m4/mktime.m4 (AC_FUNC_MKTIME): Sync from Autoconf.
8907         Include <limits.h>, and use its INT_MAX to rewrite the
8908         j loop so that it does not overflow 'int'.  Problem reported by
8909         Ralf Wildenhues in
8910         <http://lists.gnu.org/archive/html/bug-gnulib/2006-12/msg00084.html>.
8911         Play it safe by shifting left by 1 rather than multiplying by 2,
8912         as GCC is less likely to optimize this away when the value
8913         is signed (when it assumes overflow leads to undefined behavior).
8914         Also, don't assume time_t uses two's complement.
8915
8916 2006-12-21  Paul Eggert  <eggert@cs.ucla.edu>
8917
8918         * MODULES.html.sh: New module wctype.
8919         * lib/wctype_.h, m4/wctype.m4, modules/wctype: New files.
8920         * lib/fnmatch.c: Don't bother to include <wchar.h> before
8921         <wctype.h>, since the new wctype module should fix this.
8922         * lib/quotearg.c: Include <wctype.h> unconditionally, since
8923         the wctype module should arrange for it.
8924         * lib/regex_internal.h: Likewise.
8925         * m4/quotearg.m4 (gl_QUOTEARG): Don't check for wctype.h or iswprint,
8926         since the wctype module should handle this now.
8927         * m4/regex.m4 (gl_PREREQ_REGEX): Don't check for wctype.h.
8928         * modules/fnmatch (Depends-on): Add wctype.
8929         * modules/quotearg (Depends-on): Likewise.
8930         * modules/regex (Depends-on): Likewise.
8931
8932 2006-12-19  Bruno Haible  <bruno@clisp.org>
8933
8934         * lib/strdup.h [C++]: Wrap definitions in extern "C".
8935         Suggested by Lorenzo Bettini <bettini@dsi.unifi.it>.
8936
8937 2006-12-19  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
8938
8939         * modules/savewd (Depends-on): Fix dependency on fcntl.
8940
8941 2006-12-18  Paul Eggert  <eggert@cs.ucla.edu>
8942
8943         * m4/stdint.m4 (gl_STDINT_H): Set STDINT_H to empty if stdint.h
8944         conforms to C99, rather than relying on the user's environment
8945         setting of STDINT_H.
8946
8947 2006-12-18  Paul Eggert  <eggert@cs.ucla.edu>
8948         and Eric Blake  <ebb9@byu.net>
8949
8950         * lib/dirname.h (DOUBLE_SLASH_IS_DISTINCT_ROOT): Default to 0, not 1.
8951         This is more consistent with the other defines here.
8952         * m4/double-slash-root.m4 (gl_DOUBLE_SLASH_ROOT):
8953         Port to z/OS.  Problem reported by Paul Gilmartin.
8954         Change local vars to use gl_ prefix rather than ac_.
8955         Don't define DOUBLE_SLASH_IS_DISTINCT_ROOT to 0, for consistency
8956         with other defines.
8957         * modules/double-slash-root: New module.
8958         * modules/dirname (Files): Remove m4/double-slash-root.m4.
8959         (Depends-on): Add double-slash-root.
8960         * MODULES.html.sh (File system functions): Mention new module.
8961
8962 2006-12-14  Paul Eggert  <eggert@cs.ucla.edu>
8963
8964         * lib/yesno.c [!ENABLE_NLS]: Don't include getline.h.
8965         (yesno) [!ENABLE_NLS]: Don't invoke getline or rpmatch.
8966         This is for the benefit of gzip, which doesn't do i18n.
8967
8968 2006-12-12  Jim Meyering  <jim@meyering.net>
8969
8970         * m4/acl.m4 (gl_ACL_GET_FILE): Fix logic error.
8971         Reported by Andreas Schwab <schwab@suse.de>.
8972
8973 2006-12-12  Bruno Haible  <bruno@clisp.org>
8974
8975         Merge these changes.
8976         2006-09-05  Bruno Haible  <bruno@clisp.org>
8977         * lib/iconvme.c (iconv_string): No need to save and restore errno when
8978         iconv_alloc succeeded.
8979         (iconv_alloc): Don't assume that malloc() or realloc(), when failing,
8980         sets errno to ENOMEM. (malloc on GNU/kFreeBSD doesn't.) No need to
8981         test for " && dest " at the end - dest is always != NULL there. Call
8982         iconv with 4xNULL arguments initially, to reset the state. Call iconv
8983         with 2xNULL arguments, also to flush the state storage. Handle the
8984         IRIX iconv behaviour. Realloc the final result, to throw away unused
8985         memory.
8986
8987 2006-12-11  Paul Eggert  <eggert@cs.ucla.edu>
8988
8989         * m4/openat.m4 (gl_FUNC_OPENAT): Don't compile mkdirat
8990         and fchmodat unconditionally, since glibc 2.4 has them.
8991         Problem reported by Arkadiusz Miskiewicz.
8992
8993 2006-12-10  Bruno Haible  <bruno@clisp.org>
8994
8995         * gnulib-tool (func_import): Show the include files only for those
8996         modules that are copied and specified.
8997         Reported by Karl Berry.
8998
8999 2006-12-08  Jim Meyering  <jim@meyering.net>
9000
9001         * build-aux/announce-gen ($VERSION): Don't use of $Revision...$.
9002         Instead, use Emacs' time-stamp write hook.  Note that the time is UTC.
9003
9004         * build-aux/announce-gen: Add two new options, both optional:
9005         --bootstrap-tools=TOOL_LIST
9006               a comma-separated list of tools, e.g.,
9007               autoconf,automake,bison,gnulib
9008         --gnulib-snapshot-date=DATE
9009               if gnulib is in the bootstrap tool list,
9010               then report this as the snapshot date.
9011               If not specified, use the current date/time.
9012               If you specify a date here, be sure it's UTC.
9013
9014 2006-12-05  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
9015
9016         * tests/test-argp-2.sh: Fix test to match actual output.
9017         (func_compare): Fix sed script to be portable.
9018
9019 2006-12-05  Paul Eggert  <eggert@cs.ucla.edu>
9020
9021         * lib/utimens.c (futimens) [HAVE_BUGGY_NFS_TIME_STAMPS]: Add a
9022         workaround for this case.  It is not autoconfigured now; offhand
9023         it's hard to see how to autoconfigure it.
9024
9025 2006-12-03  Paul Eggert  <eggert@cs.ucla.edu>
9026
9027         * lib/mkdir-p.c (make_dir_parents): Fix race condition when making
9028         a directory that is about to be chowned.  Such a directory's
9029         initial file permissions should permit the owner only and this
9030         should not be changed until after the chown, since the group and
9031         other bits would be incorrect if they granted permission before
9032         the chown.
9033
9034         Fix porting problem for iswctype reported by Georg Schwarz in:
9035         http://lists.gnu.org/archive/html/bug-coreutils/2006-12/msg00017.html
9036         * lib/fnmatch.c (WIDE_CHAR_SUPPORT): Require HAVE_ISWCTYPE, too.
9037         * lib/regex_internal.h (RE_ENABLE_I18N): Likewise.
9038         * m4/fnmatch.m4 (_AC_LIBOBJ_FNMATCH): Check for iswctype, too.
9039         * m4/regex.m4 (gl_PREREQ_REGEX): Likewise.
9040
9041 2006-12-03  Jim Meyering  <jim@meyering.net>
9042
9043         * lib/fts.c (fts_load): Don't set sp->fts_dev here, since
9044         p->fts_statp may not yet be defined.
9045         (fts_read): Instead, set it in the caller, once p->fts_statp is
9046         sure to be defined, and corresponds to a top-level directory.
9047         This bug made du -x fail.  Here's the coreutils test case:
9048         http://git.sv.gnu.org/gitweb/?p=coreutils.git;a=commit;h=ba45154d8e9f
9049         Reported by Mike Frysinger.
9050
9051 2006-12-01  Jim Meyering  <jim@meyering.net>
9052
9053         * modules/savewd (Depends-on): Add fcntl_h to avoid self-test
9054         build failure due to missing definition of HAVE_WORKING_O_NOFOLLOW.
9055         Reported by Simon Josefsson.
9056
9057 2006-11-30  Jim Meyering  <jim@meyering.net>
9058
9059         * m4/warning.m4: Use the all-permissive copyright notice
9060         recommended by RMS (rather than LGPL).
9061         * m4/vararrays.m4: Likewise.
9062         * m4/flexmember.m4: Likewise.
9063
9064 2006-11-29  Bruno Haible  <bruno@clisp.org>
9065
9066         * gnulib-tool (func_emit_lib_Makefile_am): Initialize also
9067         noinst_LIBRARIES. Augment noinst_LIBRARIES and noinst_LTLIBRARIES
9068         using +=.
9069         Reported by Simon Josefsson <simon@josefsson.org>.
9070
9071 2006-11-28  James Youngman <jay@gnu.org>
9072
9073         * README: Advise users that they might find the bug-gnulib@gnu.org
9074         and autotools-announce@gnu.org mailing lists useful.
9075
9076 2006-11-28  Bruno Haible  <bruno@clisp.org>
9077
9078         * m4/ptrdiff_max.m4: Remove file.
9079
9080 2006-11-21  Bruno Haible  <bruno@clisp.org>
9081
9082         * m4/eoverflow.m4 (gl_EOVERFLOW): Use AC_COMPUTE_INT instead of
9083         _AC_COMPUTE_INT.
9084         (AC_COMPUTE_INT): Add fallback definition for autoconf < 2.61.
9085         * m4/ptrdiff_max.m4 (gl_PTRDIFF_MAX): Use AC_COMPUTE_INT instead of
9086         _AC_COMPUTE_INT.
9087         (AC_COMPUTE_INT): Add fallback definition for autoconf < 2.61.
9088         * m4/size_max.m4 (gl_SIZE_MAX): Use AC_COMPUTE_INT instead of
9089         _AC_COMPUTE_INT.
9090         (AC_COMPUTE_INT): Add fallback definition for autoconf < 2.61.
9091
9092 2006-11-28  Jim Meyering  <jim@meyering.net>
9093
9094         * lib/regcomp.c (parse_branch): Rename local, exp->expr, to avoid
9095         warning from "gcc -Wshadow" about shadowing the builtin.
9096
9097 2006-11-27  Bruno Haible  <bruno@clisp.org>
9098
9099         * m4/stdint.m4 (gl_STDINT_BITSIZEOF): Use AC_COMPUTE_INT instead of
9100         _AC_COMPUTE_INT.
9101         (AC_COMPUTE_INT): Add fallback definition for autoconf < 2.61.
9102
9103 2006-11-27  Bruno Haible  <bruno@clisp.org>
9104             Paul Eggert  <eggert@cs.ucla.edu>
9105
9106         * lib/regex.h (__restrict_arr): Redo logic of #if, for clarity.
9107
9108 2006-11-26  Bruno Haible  <bruno@clisp.org>
9109
9110         * gnulib-tool (func_emit_lib_Makefile_am): Initialize also
9111         noinst_LTLIBRARIES.
9112
9113 2006-11-27  Paul Eggert  <eggert@cs.ucla.edu>
9114             Bruno Haible  <bruno@clisp.org>
9115
9116         * lib/gettext.h (_LIBGETTEXT_HAVE_VARIABLE_SIZE_ARRAYS): Define to 0
9117         if compiling with "gcc -ansi".
9118
9119 2006-11-26  Paul Eggert  <eggert@cs.ucla.edu>
9120
9121         Fix some incompatibilities with gcc -ansi -pedantic.
9122         * lib/regex.h (__restrict_arr): Don't use the [restrict] syntax
9123         if compiling pedantically with GCC, unless it's C99 or later.
9124         Don't trust sys/cdefs.h's definition of __restrict_arr, either, as
9125         it mishandles gcc -ansi -pedantic as well.
9126         * lib/regex_internal.h (re_token_t): Don't use enum bitfields
9127         if gcc -pedantic.
9128         * lib/regexec.c (check_node_accept_bytes): Don't use auto
9129         initializers for struct if -pedantic, unless it's C99 or later.
9130
9131 2006-11-25  Nix  <nix@esperi.org.uk>  (tiny change)
9132
9133         * m4/fcntl_h.m4 (gl_FCNTL_H): Test the atime, not the mtime.
9134         Don't close an fd more than once. Identical atimes indicate
9135         success, not failure.
9136
9137 2006-11-22  Robinson Mittmann <bob@hoplon.com>  (tiny change)
9138
9139         * lib/sincosl.c (kernel_sinl): Fix typo in threshold.
9140
9141 2006-11-23  Jim Meyering  <jim@meyering.net>
9142
9143         * build-aux/announce-gen: New file.  From coreutils.
9144
9145 2006-11-22  Jim Meyering  <jim@meyering.net>
9146
9147         Work around a compile-time error from the HP-UX 11.00 /bin/cc.
9148         * lib/fts.c (enum Fts_stat): Give this previously-anon enum a name.
9149         (fts_read): Use a temporary to narrow the overused st_size member
9150         before using it in a switch statement.  Reported by Matthew Woehlke.
9151
9152         * m4/clock_time.m4 (gl_CLOCK_TIME): Quote AC_SUBST argument.
9153         * m4/euidaccess.m4 (gl_PREREQ_EUIDACCESS): Likewise.
9154
9155 2006-11-20  Bruno Haible  <bruno@clisp.org>
9156
9157         * gettext.m4 (AM_GNU_GETTEXT): Revert 2005-07-28 patch: Use
9158         changequote instead of pairs of brackets.
9159         Reported by Andreas Schwab <schwab@suse.de>.
9160
9161 2006-11-21  Jim Meyering  <jim@meyering.net>
9162
9163         * lib/fts.c (fts_safe_changedir): Move a declaration "up",
9164         so as to remain compatible with older compilers.
9165         Patch from Michael Deutschmann.
9166
9167 2006-11-20  Paul Eggert  <eggert@cs.ucla.edu>
9168
9169         * MODULES.html.sh (File system functions): Add openat.
9170
9171         * lib/openat.h (rpl_fstatat): New macro, if
9172         [HAVE_OPENAT && ! LSTAT_FOLLOWS_SLASHED_SYMLINK.
9173         (fstatat): Define to rpl_fstatat under the same conditions,
9174         unless COMPILING_FSTATAT.
9175         * m4/openat.m4 (gl_FUNC_OPENAT): Compile fstatat.c too, if fstatat
9176         seems to have the bug.
9177         * lib/fstatat.c: New file.
9178         * modules/openat (Files): Add it.
9179
9180 2006-11-20  Bruno Haible  <bruno@clisp.org>
9181
9182         * Makefile: New file.
9183
9184 2006-11-20  Jim Meyering  <jim@meyering.net>
9185
9186         The beginnings of syntax-related checks for gnulib.
9187         * lib/Makefile: New file.
9188         * lib/t-idcache: New script.  Ensure that the two halves of
9189         idcache.c stay in sync.
9190
9191         * lib/idcache.c: Adjust comments in user- and group- portions to
9192         be more accurate, and to be consistent with one another.
9193
9194 2006-11-20  Jim Meyering  <jim@meyering.net>
9195
9196         * lib/idcache.c: Restore most of the 2006-11-06 patch, so as to
9197         continue using the flexible array member (thus, this module performs
9198         half as many malloc calls), with the addition that...
9199         (getgroup, getuser): Consistently record a non-match via an empty
9200         "name" string, and map an empty string match to a NULL return value.
9201         * modules/idcache (Depends-on): Re-add flexmember.
9202
9203         * lib/idcache.c (getuser): Remove all uses of the register keyword.
9204         (getuidbyname, getgroup, getgidbyname): Likewise.
9205
9206         Use cleaner syntax: NULL rather than 0.
9207         * lib/idcache.c (getuidbyname, getgidbyname): Return NULL, not 0.
9208
9209 2006-11-20  Paul Eggert  <eggert@cs.ucla.edu>
9210
9211         * lib/idcache.c: Undo most recent patch, dated 2006-11-06.
9212         It mishandled the case where the group was missing.
9213         Problem reported by Greg Schafer.
9214         * modules/idcache: Likewise.
9215
9216 2006-11-18  Jim Meyering  <jim@meyering.net>
9217
9218         * check-module (%exempt_header): Add exception for some
9219         conditionally-included headers.
9220
9221         * modules/i-ring (Depends-on): Add verify.
9222         (License): Change to LGPL.
9223
9224 2006-11-16  Paul Eggert  <eggert@cs.ucla.edu>
9225
9226         * modules/getaddinfo (Depends-on): Remove inttostr; add snprintf.
9227         * lib/getaddrinfo.c: Include snprintf.h rather than intprops.h
9228         and inttostr.h.  Use snprintf rather than uinttostr, so that
9229         LGPLed code doesn't depend on GPLed.
9230
9231 2006-11-17  Paul Eggert  <eggert@cs.ucla.edu>
9232
9233         * modules/inline (License): Change from GPL to LGPL.
9234
9235 2006-11-17  Jim Meyering  <jim@meyering.net>
9236
9237         * modules/d-type (License): Switch to LGPL.
9238
9239 2006-11-15  Bruno Haible  <bruno@clisp.org>
9240
9241         * m4/alloca.m4 (gl_FUNC_ALLOCA): Fix the AC_CACHE_CHECK message.
9242
9243 2006-11-15  Eric Blake  <ebb9@byu.net>
9244
9245         * m4/allocsa.m4 (gl_ALLOCSA): Don't invoke macro already picked up by
9246         the module dependency.
9247
9248 2006-11-15  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
9249             Bruno Haible  <bruno@clisp.org>
9250
9251         * gnulib-tool (func_create_testdir): Add license consistency check.
9252
9253 2006-11-15  Eric Blake  <ebb9@byu.net>
9254
9255         * m4/alloca.m4 (gl_FUNC_ALLOCA): Use AC_CACHE_CHECK to avoid a
9256         random "(cached)" in configure output.
9257
9258 2006-11-14  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
9259
9260         * m4/inttypes.m4 (gl_INTTYPES_H): Use AC_CACHE_CHECK so that the
9261         test for conforming inttypes.h is both announced and cached.
9262
9263         * MODULES.html.sh (seen_modules, seen_files): New variables.
9264         (func_module): Rewrite to use a few less gnulib-tool and sed
9265         invocations.  Avoid a couple of quadratic algorithms for ...
9266         (missed_modules, missed_files): ... these, with ...
9267         (func_append, func_tmpdir): ... these new functions, from
9268         gnulib-tool.  Analogously, install traps for cleanup.
9269
9270         * tests/test-gc.c (main): Remove unused variables.
9271         * tests/test-read-file.c: Include stdlib.h, for 'free'.
9272
9273 2006-11-14  Paul Eggert  <eggert@cs.ucla.edu>
9274
9275         * modules/inttostr (License): Change to LGPL.
9276
9277 2006-11-14  Eric Blake  <ebb9@byu.net>
9278
9279         * modules/tempname (License): Change to LGPL.
9280
9281 2006-11-14  Eric Blake  <ebb9@byu.net>
9282
9283         * doc/functions.texi (Function Portability): *printf functions on
9284         Cygwin now understand all POSIX size specifiers.
9285
9286 2006-11-14  Bruno Haible  <bruno@clisp.org>
9287
9288         * modules/c-ctype (License): Change to LGPL.
9289
9290 2006-11-12  Bruno Haible  <bruno@clisp.org>
9291
9292         * m4/lib-link.m4 (AC_LIB_LINKFLAGS, AC_LIB_HAVE_LINKFLAGS,
9293         AC_LIB_LINKFLAGS_BODY): Also set a LIB${NAME}_PREFIX variable. Needed
9294         for GNOME libraries, for which the include files are installed in
9295         subdirectories of $prefix/include.
9296
9297 2006-11-12  Bruno Haible  <bruno@clisp.org>
9298
9299         * m4/lib-link.m4: Require at least autoconf-2.54.
9300         (AC_LIB_LINKFLAGS_BODY) [autoconf < 2.61]: Turn dots into the library
9301         name to underscores for the --with option.
9302
9303 2006-11-13  Bruno Haible  <bruno@clisp.org>
9304
9305         * gnulib-tool (func_create_testdir): Set gl_source_base correctly in
9306         the tests directory.
9307         Reported by Ralf Wildenhues.
9308
9309 2006-11-13  Bruno Haible  <bruno@clisp.org>
9310
9311         * gnulib-tool (func_emit_initmacro_start): Also override AC_LIBSOURCES.
9312         (func_emit_initmacro_end): Undo the override here.
9313         (func_emit_initmacro_done): Emit a definition for gl_LIBSOURCES.
9314         Works around the famous automake error in coreutils.
9315
9316 2006-11-13  Eric Blake  <ebb9@byu.net>
9317
9318         * lib/gl_anytree_oset.h (gl_tree_search_atleast): Return the
9319         element, not its node.
9320
9321 2006-11-12  Bruno Haible  <bruno@clisp.org>
9322
9323         * gnulib-tool (func_emit_lib_Makefile_am): Replace occurrences of
9324         '$(top_srcdir)/build-aux/', taking into account the real auxdir.
9325
9326 2006-11-12  Bruno Haible  <bruno@clisp.org>
9327
9328         * gnulib-tool: New option --local-symlink.
9329         (func_usage): Document it.
9330         (lsymbolic): New variable.
9331         (func_import, func_create_testdir): If --symlink was not specified,
9332         test whether --local-symlink was specified and the file comes from
9333         the local_gnulib_dir.
9334
9335 2006-11-12  Bruno Haible  <bruno@clisp.org>
9336
9337         * gnulib-tool (func_ln): New function.
9338         (func_ln_if_changed, func_create_testdir): Use it instead of "ln -s".
9339
9340 2006-11-12  Bruno Haible  <bruno@clisp.org>
9341
9342         Finish support for source files in subdirectories.
9343         * gnulib-tool (func_emit_lib_Makefile_am): If some of the source files
9344         are in subdirectories, set uses_subdirs and add 'subdir-objects' to
9345         AUTOMAKE_OPTIONS.
9346         (func_import, func_create_testdir): Invoke AM_PROG_CC_C_O in this case.
9347
9348 2006-11-12  Bruno Haible  <bruno@clisp.org>
9349
9350         * gnulib-tool (func_get_automake_snippet): Synthesize also an
9351         EXTRA_lib_SOURCES augmentation.
9352         (func_emit_lib_Makefile_am): Initialize EXTRA_lib..._SOURCES to empty.
9353
9354 2006-11-12  Jim Meyering  <jim@meyering.net>
9355
9356         Make fts (in FTS_CWDFD mode) more efficient by caching a few open
9357         file descriptors.  This also averts a failure on systems with
9358         native openat support when a traversed directory lacks "x" access.
9359         * lib/fts_.h: Include "i-ring.h"
9360         (struct FTS) [fts_fd_ring]: New member.
9361         * lib/fts.c (RESTORE_INITIAL_CWD): Also call fd_ring_clear.
9362         (FCHDIR): Add parentheses.
9363         (fd_ring_check, fd_ring_print) [!FTS_DEBUG]: Define away.
9364         (cwd_advance_fd): Add a 3rd parameter.  Adjust all callers.
9365         When descending, rather than simply closing the previous
9366         fts_cwd_fd value, push that file descriptor onto the ring.
9367         (same_fd, fd_ring_print, fd_ring_check) [FTS_DEBUG]: New functions.
9368         (fts_open): Initialize the new fd_ring member.
9369         (fts_close): Clear the ring.
9370         (fts_safe_changedir): When possible, use our new fd_ring to skip
9371         the diropen and fstat and dev/ino comparison that would normally
9372         accompany a virtual `chdir ("..")'.
9373
9374         * modules/fts (Depends-on): Add i-ring.
9375         * modules/i-ring: New module.
9376         * lib/i-ring.c, lib/i-ring.h, lib/i-ring-test.c: New files.
9377         * m4/i-ring.m4: New file.
9378
9379 2006-11-12  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
9380
9381         * gnulib-tool (func_create_testdir): Fix replacement of
9382         `build-aux' in configure.ac.  Run autotools in gltests
9383         subdirectory.
9384         (func_create_testdir, func_create_megatestdir, test): There is
9385         no need for '--force' in most autotool invocations in a new
9386         tree.  Actually fail the whole test if any of the tools, or the
9387         configure or make stages fail.
9388
9389         Sync from Automake.
9390         * build-aux/gnupload: Revert last change.  Add pointer to upload
9391         instructions of the GNU Maintenance Instructions.
9392         Suggestion by Karl Berry.
9393
9394 2006-11-10  Jim Meyering  <jim@meyering.net>
9395
9396         * lib/fts.c [FTS_DEBUG]: Don't try to print a pointer via %s.
9397
9398 2006-11-09  Paul Eggert  <eggert@cs.ucla.edu>
9399
9400         * lib/gettext.h (dgettext, dcgettext, ngettext) [! ENABLE_NLS]:
9401         (dngettext, dcngettext, bindtextdomain) [! ENABLE_NLS]:
9402         (bind_textdomain_codeset) [! ENABLE_NLS]:
9403         Evaluate all the arguments.  That way, callers get compatible behavior
9404         if the arguments have side effects.  Also, it avoids some GCC
9405         diagnostics in some cases; Joel E. Denny reported problems when Bison
9406         was configured with --enable-gcc-warnigs.
9407
9408 2006-11-10  Jim Meyering  <jim@meyering.net>
9409
9410         * m4/inline.m4 (gl_INLINE): Check with the compiler, not cpp, so that
9411         relevant options in CFLAGS (like -O, -fno-inline) are taken into
9412         account.
9413
9414 2006-11-10  Jim Meyering  <jim@meyering.net>
9415
9416         * modules/inline: New file/module.
9417         * modules/xalloc (Files): Remove m4/inline.m4.
9418         (Depends-on): Add inline, instead.
9419         * modules/oset: Likewise.
9420         * modules/list: Likewise.
9421
9422 2006-11-09  Paul Eggert  <eggert@cs.ucla.edu>
9423
9424         * lib/stdint_.h (uintmax_t): Fix typo: int64_t -> uint64_t.
9425         Problem reported by Matthew Woehlke.
9426
9427 2006-11-09  Bruno Haible  <bruno@clisp.org>
9428
9429         * lib/tempname.c (gen_tempname): Remove variant that invokes
9430         __gen_tempname.
9431         * m4/tempname.m4 (gl_FUNC_GEN_TEMPNAME): Don't test for
9432         __gen_tempname.
9433
9434 2006-11-08  Bruno Haible  <bruno@clisp.org>
9435
9436         * m4/longlong.m4 (AC_TYPE_LONG_LONG_INT): Set ac_cv_type_long_long_int
9437         to 'yes' instead of 'cross-compiling'.
9438
9439 2006-11-08  Paul Eggert  <eggert@cs.ucla.edu>
9440
9441         * lib/quotearg.h (quotearg_free): New decl.
9442         * lib/quotearg.c (quotearg_free): New function.
9443         (slot0, nslots, slotvec0, slotvec):
9444         Now file-scope so that quotearg_free can get at them.
9445
9446 2006-11-08  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
9447
9448         Sync from Automake.
9449         * build-aux/gnupload: Add missing 'gnu' to example URL.
9450         Report by Karl Berry.
9451
9452 2006-11-08  Bruno Haible  <bruno@clisp.org>
9453
9454         * m4/inline.m4 (gl_INLINE): Also test __NO_INLINE__.
9455         Suggested by Paul Eggert.
9456
9457 2006-11-08  Jim Meyering  <jim@meyering.net>
9458
9459         * lib/fts.c [!_LGPL_PACKAGE]: Don't include fcntl--.h twice.
9460         It's already included if !_LIBC.
9461         (fts_safe_changedir): Add a comment.
9462
9463 2006-11-07  Paul Eggert  <eggert@cs.ucla.edu>
9464
9465         * m4/longlong.m4 (AC_TYPE_LONG_LONG_INT): Detect bug in
9466         Tandem NonStop Kernel (OSS) cc -O circa 2004, reported by
9467         Matthew Woehlke.
9468
9469         * lib/xalloc.h (XMALLOC, XNMALLOC, XZALLOC, XCALLOC): Move
9470         definitions up, to avoid colliding with change below.
9471         (static_inline) [HAVE_INLINE]: New macro.
9472         (xnmalloc, xnrealloc, x2nrealloc, xcharalloc):
9473         Provide extern decls when !HAVE_INLINE.  Do not define unless
9474         static_inline is defined, either by us or by xmalloc.c.  Use
9475         static_inline rather than static inline.
9476         (XCALLOC): Optimize sizeof(T) = 1 case.
9477         * lib/xmalloc.c (static_inline) [!HAVE_INLINE]: New macro.
9478
9479 2006-11-07  Bruno Haible  <bruno@clisp.org>
9480
9481         * lib/xalloc.h (XNMALLOC): Restore optimization of sizeof(T) = 1 case.
9482         * m4/xalloc.m4 (gl_PREREQ_XALLOC): Require gl_INLINE instead of
9483         AC_C_INLINE.
9484         * modules/xalloc (Files): Add m4/inline.m4.
9485
9486 2006-11-07  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
9487
9488         * README: Fix typo.
9489         * doc/gnulib.texi (Miscellaneous Notes): Likewise, rename...
9490         (Miscellanous Notes): ...from this.
9491
9492 2006-11-07  Paul Eggert  <eggert@cs.ucla.edu>
9493
9494         * m4/flexmember.m4 (AC_C_FLEXIBLE_ARRAY_MEMBER):
9495         Mention that offsetof should be used instead of sizeof.
9496         From Bruno Haible.
9497
9498 2006-11-07  Bruno Haible  <bruno@clisp.org>
9499
9500         * lib/w32spawn.h (prepare_spawn): Use XNMALLOC instead of xmalloc.
9501
9502 2006-11-06  Paul Eggert  <eggert@cs.ucla.edu>
9503
9504         Simplify xmalloc expressions. Add overflow check in xmalloc arguments.
9505         * lib/gl_anyavltree_list2.h (create_subtree_with_contents):
9506         (gl_tree_create, gl_tree_add_first, gl_tree_add_last):
9507         (gl_tree_add_before, gl_tree_add_after):
9508         Use XMALLOC instead of xmalloc, and XCALLOC instead of xzalloc.
9509         * lib/gl_anyhash_list2.h (hash_resize): Likewise.
9510         * lib/gl_anylinked_list2.h (gl_linked_create_empty, gl_linked_create):
9511         (gl_linked_add_first, gl_linked_add_last, gl_linked_add_before):
9512         (gl_linked_add_after, gl_linked_add_at): Likewise.
9513         * lib/gl_anyrbtree_list2.h (create_subtree_with_contents):
9514         (gl_tree_create, gl_tree_add_first, gl_tree_add_last):
9515         (gl_tree_add_before, gl_tree_add_after): Likewise.
9516         * lib/gl_anytree_list2.h (gl_tree_create_empty): Likewise.
9517         * lib/gl_anytree_oset.h (gl_tree_create_empty): Likewise.
9518         * lib/gl_anytreehash_list1.h (add_to_bucket): Likewise.
9519
9520 2006-11-06  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
9521
9522         * lib/gl_oset.h: Use C comment style, not C++ comment style.
9523
9524 2006-11-06  Bruno Haible  <bruno@clisp.org>
9525
9526         * m4/inline.m4: New file.
9527         * m4/gl_list.m4 (gl_LIST): Require gl_INLINE.
9528         * modules/list (Files): Add m4/inline.m4.
9529         * modules/oset (Files): Likewise.
9530
9531 2006-11-06  Paul Eggert  <eggert@cs.ucla.edu>
9532
9533         * lib/idcache.c: Include <stddef.h>, for offsetof.
9534         (struct userid.name): Change from char * to a flexible array member.
9535         All uses changed.
9536         * modules/idcache (Depends-on): Add flexmember.
9537
9538         * MODULES.html.sh (Core language properties): New module flexmember.
9539         * modules/flexmember, m4/flexmember.m4: New files.
9540
9541         * lib/xalloc.h (xnmalloc, xnrealloc, x2nrealloc): Now static
9542         inline functions that are identical with the old xnmalloc_inline,
9543         xnrealloc_inline, x2nrealloc_inline of lib/xmalloc.c.  This is so
9544         that we can avoid some unnecessary integer multiplications and
9545         divisions in the common case where the element size is known at
9546         compile time.
9547         (XNMALLOC) [HAVE_INLINE]: Remove special case, which is no longer
9548         needed.
9549         (xnboundedmalloc): Remove.
9550         (XMALLOC, XNMALLOC, XZALLOC, XCALLOC): Use lower-case letters for
9551         arguments, for consistency with rest of this header.
9552         (xcharalloc): Rewrite using XNMALLOC.
9553         * lib/xmalloc.c (xnmalloc_inline, xnmalloc, xnrealloc_inline):
9554         (xnrealloc, x2nrealloc_inline, x2nrealloc): Remove.  The *_inline
9555         versions have been moved to lib/xalloc.h and renamed to be the
9556         non-*_inline versions.
9557         (xmalloc, xrealloc): Implement without reference to the xnmalloc
9558         and xnrealloc functions, since those functions are now inline and
9559         now call us.
9560         (x2realloc): Invoke x2realloc, not x2realloc_inline, to accommodate
9561         renaming described above.
9562         * m4/xalloc.m4 (gl_PREREQ_XMALLOC): Remove AC_C_INLINE since
9563         xmalloc.c no longer uses inline directly.  gl_PREREQ_XALLOC now
9564         captures the dependency in AC_C_INLINE.
9565
9566         New module canonicalize-lgpl, proposed by Charles Wilson in
9567         <http://lists.gnu.org/archive/html/bug-gnulib/2006-11/msg00020.html>
9568         with a few small changes afterwards.
9569         * MODULES.html.sh (File system functions): New module
9570         canonicalize-lgpl.
9571         * lib/canonicalize.h: Add comments for canonicalize_filename_mode
9572         and canonicalize_file_name.
9573         * lib/canonicalize-lgpl.c, m4/canonicalize-lgpl.m4:
9574         * modules/canonicalize-lgpl: New files.
9575
9576 2006-11-05  Bruno Haible  <bruno@clisp.org>
9577
9578         * gnulib-tool (func_import, func_create_testdir): Create directories
9579         also for files in subdirectories of lib/.
9580
9581 2006-11-05  Bruno Haible  <bruno@clisp.org>
9582
9583         * lib/gl_array_list.c (gl_array_iterator_next): Make pointer decrement
9584         ANSI C compliant.
9585
9586 2006-11-03  Bruno Haible  <bruno@clisp.org>
9587
9588         Simplify xmalloc expressions. Add overflow check in xmalloc arguments.
9589         * m4/xalloc.m4 (gl_PREREQ_XALLOC): Require AC_C_INLINE.
9590         * lib/xalloc.h (XMALLOC, XNMALLOC, XZALLOC, XCALLOC): New macros.
9591         (xnboundedmalloc): New inline function.
9592         * lib/classpath.c (new_classpath): Use XNMALLOC instead of xmalloc.
9593         * lib/clean-temp.c (create_temp_dir): Use XNMALLOC, XMALLOC instead of
9594         xmalloc.
9595         * lib/concatpath.c (concatenated_pathname): Use XNMALLOC instead of
9596         xmalloc.
9597         * lib/fatal-signal.c (at_fatal_signal): Use XNMALLOC instead of xmalloc.
9598         * lib/findprog.c (find_in_path): Use XNMALLOC instead of xmalloc.
9599         * lib/gl_array_list.c (gl_array_create_empty): Use XMALLOC instead of
9600         xmalloc.
9601         (gl_array_create): Use XNMALLOC, XMALLOC instead of xmalloc.
9602         * lib/gl_array_oset.c (gl_array_create_empty): Use XNMALLOC instead of
9603         xmalloc.
9604         * lib/gl_avltree_oset.c (gl_tree_add_first, gl_tree_add_before,
9605         gl_tree_add_after): Use XMALLOC instead of xmalloc.
9606         * lib/gl_carray_list.c (gl_carray_create_empty): Use XMALLOC instead of
9607         xmalloc.
9608         (gl_carray_create): Use XNMALLOC, XMALLOC instead of xmalloc.
9609         * lib/gl_rbtree_oset.c (gl_tree_add_first, gl_tree_add_before,
9610         gl_tree_add_after): Use XMALLOC instead of xmalloc.
9611         * lib/gl_sublist.c (gl_sublist_create): Use XMALLOC instead of xmalloc.
9612         * lib/pagealign_alloc.c (new_memnode): Use XMALLOC instead of xmalloc.
9613         * lib/sh-quote.c (shell_quote_argv): Use XNMALLOC instead of xmalloc.
9614         * lib/xvasprintf.c (xstrcat): Use XNMALLOC instead of xmalloc.
9615
9616 2006-11-03  Bruno Haible  <bruno@clisp.org>
9617
9618         * lib/c-ctype.h [C++]: Define functions without name mangling.
9619         * lib/fwriteerror.h [C++]: Likewise.
9620         * lib/gcd.h [C++]: Likewise.
9621         * lib/linebreak.h [C++]: Likewise.
9622
9623 2006-11-03  Paul Eggert  <eggert@cs.ucla.edu>
9624
9625         * lib/canonicalize.h: (canonicalize_mode_t, CAN_EXISTING):
9626         (CAN_ALL_BUT_LAST, CAN_MISSING, canonicalize_filename_mode):
9627         Define only if PROVIDE_CANONICALIZE_FILENAME_MODE is defined.
9628         * m4/canonicalize.m4 (AC_FUNC_CANONICALIZE_FILE_NAME):
9629         Check for functions and headers just once.
9630         Check for declaration of canonicalize_file_name.
9631         Define PROVIDE_CANONICALIZE_FILENAME_MODE.
9632
9633 2006-11-02  Charles Wilson  <cygwin@cwilson.fastmail.fm>
9634
9635         * gnulib-tool (func_import): Fix typo in actioncmd.
9636
9637 2006-11-02  Bruno Haible  <bruno@clisp.org>
9638
9639         * gnulib-tool (func_get_automake_snippet): Interpret a backslash-
9640         newline sequence in the Makefile.am snippet as a space, like "make"
9641         does.
9642         Reported by Roger Persson <perrog@gmail.com>.
9643
9644 2006-11-01  Bruno Haible  <bruno@clisp.org>
9645
9646         * m4/strcase.m4 (gl_FUNC_STRNCASECMP): Check whether strncasecmp is
9647         already declared in <string.h>.
9648         * lib/strcase.h (strncasecmp): Don't declare it if yes.
9649
9650 2006-11-01  Bruno Haible  <bruno@clisp.org>
9651
9652         * m4/strcase.m4 (gl_FUNC_STRCASECMP): Don't define strcasecmp here.
9653         * lib/strcase.h: Include <string.h>.
9654         (strcasecmp): Define to rpl_strcasecmp here.
9655
9656 2006-11-01  Bruno Haible  <bruno@clisp.org>
9657
9658         * lib/printf-parse.c (PRINTF_PARSE): Cast malloc/realloc results.
9659
9660 2006-11-01  Eric Blake  <ebb9@byu.net>
9661
9662         * lib/mkstemp-safer.c (mkstemp_safer): Allow C++ compilation.
9663
9664         * m4/mkstemp.m4 (gl_FUNC_MKSTEMP): Allow C++ configuration.
9665
9666 2006-10-29  Bruno Haible  <bruno@clisp.org>
9667
9668         Make it compile in C++ mode.
9669         * lib/full-write.c (full_rw): Add a cast.
9670
9671 2006-11-01  Bruno Haible  <bruno@clisp.org>
9672
9673         * gnulib-tool (func_get_automake_snippet): Change sed_combine_lines to
9674         be POSIX compliant.
9675         Reported by Roger Persson <perrog@gmail.com>.
9676
9677 2006-11-01  Eric Blake  <ebb9@byu.net>
9678
9679         * lib/getopt_.h: Fix comments.
9680
9681 2006-10-31  Eric Blake  <ebb9@byu.net>
9682
9683         * modules/tmpdir (Depends-on): Add sys_stat.
9684         * modules/mkdtemp (Depends-on): Add tempname, drop unistd.
9685         * lib/mkdtemp.c (gen_tempname): Remove; tempname covers this.
9686         * lib/tmpdir.c (S_ISDIR): Simplify, thanks to sys_stat.
9687         * m4/mkdtemp.m4 (gl_PREREQ_MKDTEMP): Simplify, thanks to
9688         tempname.
9689
9690 2006-10-31  Paul Eggert  <eggert@cs.ucla.edu>
9691
9692         Avoid some C++ diagnostics reported by Bruno Haible.
9693         * lib/quotearg.c (clone_quoting_options): Use xmemdup rather than
9694         xmalloc.
9695         (quotearg_alloc): Use xcharalloc rather than xmalloc.
9696         (struct slotvec): Move to top level.
9697         (quotearg_n_options): Rewrite to avoid xmalloc.
9698         * lib/xalloc.h (xcharalloc): New function.
9699         * (xrealloc, xnrealloc, x2realloc, x2nrealloc, xmemdup):
9700         [defined __cplusplus]: Add function template that provides result
9701         type propagation.  This part of the change is from Bruno Haible.
9702
9703 2006-10-29  Bruno Haible  <bruno@clisp.org>
9704
9705         Make it compile in C++ mode.
9706         * lib/striconv.c (mem_cd_iconv): Cast malloc/realloc result.
9707         * lib/strnlen1.c (strnlen1): Cast memchr result.
9708         * lib/mbchar.h (mb_copy): Rename arguments to 'new_mbc', 'old_mbc'.
9709         * lib/clean-temp.c (string_equals, string_hash): Add casts.
9710         (create_temp_dir): Rename local variable 'template'.
9711         (compile_csharp_using_sscli): Add cast.
9712         * lib/fatal-signal.c (at_fatal_signal): Cast xmalloc result.
9713         * lib/findprog.c (find_in_path): Likewise.
9714         * lib/linebreak.c (mbs_width_linebreaks): Cast malloc result.
9715         * lib/wait-process.c (register_slave_subprocess): Likewise.
9716
9717 2006-10-22  Bruno Haible  <bruno@clisp.org>
9718
9719         * modules/tsearch: New file.
9720         * lib/tsearch.h: New file.
9721         * lib/tsearch.c: New file, from glibc-2.5 with small modifications.
9722         * m4/tsearch.m4: New file.
9723         * MODULES.html.sh (Support for systems lacking POSIX:2001): Add tsearch.
9724
9725 2006-10-29  Eric Blake  <ebb9@byu.net>
9726
9727         * lib/arcfour.c: Assume config.h.
9728         * lib/arctwo.c: Likewise.
9729         * lib/base64.c: Likewise.
9730         * lib/check-version.c: Likewise.
9731         * lib/crc.c: Likewise.
9732         * lib/des.c: Likewise.
9733         * lib/gc-gnulib.c: Likewise.
9734         * lib/gc-libgcrypt.c: Likewise.
9735         * lib/gc-pbkdf2-sha1.c: Likewise.
9736         * lib/getaddrinfo.c: Likewise.
9737         * lib/getdelim.c: Likewise.
9738         * lib/getline.c: Likewise.
9739         * lib/hmac-md5.c: Likewise.
9740         * lib/hmac-sha1.c: Likewise.
9741         * lib/iconvme.c: Likewise.
9742         * lib/md2.c: Likewise.
9743         * lib/md4.c: Likewise.
9744         * lib/memxor.c: Likewise.
9745         * lib/read-file.c: Likewise.
9746         * lib/readline.c: Likewise.
9747         * lib/rijndael-alg-fst.c: Likewise.
9748         * lib/rijndael-api-fst.c: Likewise.
9749         * lib/xgetdomainname.c: Likewise.
9750
9751 2006-10-28  Eric Blake  <ebb9@byu.net>
9752
9753         * lib/xstrndup.c: Assume config.h.
9754
9755 2006-10-27  Paul Eggert  <eggert@cs.ucla.edu>
9756
9757         Move stat.h-substitute stuff from lib/stat-macros.h to lib/stat_.h.
9758         stat-macros.h is now for our own macros, whereas stat_h is for
9759         macros in the <sys/stat.h> name space.
9760         * lib/stat-macros.h: Remove copyright notice, as this file is now tiny.
9761         (STAT_MACROS_H): Remove.
9762         (S_IFMT, S_ISBLK, S_ISCHR, S_ISDIR, S_ISFIFO, S_ISLNK, S_ISNAM):
9763         (S_ISMPB, S_ISMPC, S_ISNWK, S_ISREG, S_ISSOCK, S_ISDOOR, S_ISPORT):
9764         (S_TYPEISMQ, S_TYPEISTMO, S_TYPEISSEM, S_TYPEISSHM, S_ISCTG, S_ISOFD):
9765         (S_ISOFL, S_ISWHT, S_ISUID, S_ISGID, S_ISVTX, S_IRUSR, S_IRGRP):
9766         (S_IROTH, S_IWUSR, S_IWGRP, S_IWOTH, S_IXUSR, S_IXGRP, S_IXOTH):
9767         (S_IRWXU, S_IRWXG, S_IRWXO, S_IXUGO, S_IRWXUGO):
9768         Move these macros to ...
9769         * lib/stat_.h: here.  Don't include stat-macros.h.
9770         * lib/canonicalize.c: Don't include stat-macros.h.
9771         * lib/chown.c: Likewise.
9772         * lib/euidaccess.c: Likewise.
9773         * lib/file-type.c: Likewise.
9774         * lib/filemode.c: Likewise.
9775         * lib/glob.c: Likewise.
9776         * lib/isapipe.c: Likewise.
9777         * lib/lchown.c: Likewise.
9778         * lib/lstat.c: Likewise.
9779         * lib/mkdir-p.c: Likewise.
9780         * lib/rmdir.c: Likewise.
9781         * m4/lchown.m4 (gl_FUNC_LCHOWN): Don't require gl_STAT_MACROS.
9782         * m4/sys_stat_h.m4 (gl_HEADER_SYS_STAT_H): Don't check for io.h
9783         unless mkdir isn't declared, to speed up 'configure'.
9784         Always create sys/stat.h, since it's unlikely any real sys/stat.h
9785         would define all the S_* symbols.
9786         * modules/canonicalize (Depends-on):
9787         Depend on sys_stat, not stat-macros.
9788         * modules/chown: Likewise.
9789         * modules/euidaccess: Likewise.
9790         * modules/filemode: Likewise.
9791         * modules/file-type: Likewise.
9792         * modules/glob: Likewise.
9793         * modules/isapipe: Likewise.
9794         * modules/lchown: Likewise.
9795         * modules/lstat: Likewise.
9796         * modules/mkancesdirs: Likewise.
9797         * modules/rmdir: Likewise.
9798         * modules/mkdir-p (Depends-on): Also depend on sys_stat.
9799         * modules/modechange: Likewise.
9800         * modules/stat-macros (Files): Remove m4/stat-macros.m4.
9801         (configure.ac): Remove gl_STAT_MACROS.
9802         * modules/sys_stat (Depends-on): Remove stat-macros.
9803
9804 2006-10-27  Bruno Haible  <bruno@clisp.org>
9805
9806         * m4/signed.m4: Remove file.
9807         * m4/vasnprintf.m4 (gl_PREREQ_PRINTF_ARGS_: Remove bh_C_SIGNED
9808         invocation.
9809         * modules/vasnprintf (Files): Remove m4/signed.m4.
9810
9811 2006-10-27  Bruno Haible  <bruno@clisp.org>
9812
9813         Update to GNU gettext 0.16.
9814         * modules/gettext (Files): Add m4/intl.m4, m4/intldir.m4. Remove
9815         m4/inttypes-h.m4, m4/signed.m4.
9816         * m4/gettext.m4: Update to GNU gettext 0.16.
9817         * m4/intl.m4: New file, from GNU gettext.
9818         * m4/intldir.m4: New file, from GNU gettext.
9819         * config/srclist.txt: Update
9820
9821 2006-10-27  Eric Blake  <ebb9@byu.net>
9822
9823         * MODULES.html.sh: Document tempname.
9824         * modules/mkstemp (Depends-on): Add tempname, and drop transitive
9825         dependencies.
9826         (Files): Move lib/tempname.c...
9827         * modules/tempname: ...to this new module.
9828         * m4/mkstemp.m4 (gl_FUNC_MKSTEMP): Remove tempname checks.
9829         (gl_PREREQ_TEMPNAME): Move...
9830         * m4/tempname.m4: ...to this new file.
9831         * lib/mkstemp.c (includes) [!_LIBC]: Use tempname.h.
9832         * modules/sys_stat (Depends-on): Add stat-macros.
9833         * lib/stat_.h (includes): Pick up stat macros.
9834         * m4/sys_stat_h.m4 (gl_HEADER_SYS_STAT_H): Replace <sys/stat.h>
9835         if stat macros are broken.
9836         * lib/tempname.c (includes): No need to include "stat-macros.h".
9837         (__gen_tempname) [!_LIBC]: Expose as gen_tempname.
9838         (direxists, __path_search) [!_LIBC]: Don't compile these in
9839         gnulib; the tmpdir module covers that.
9840         * lib/tempname.h: New file.
9841
9842 2006-10-26  Paul Eggert  <eggert@cs.ucla.edu>
9843
9844         * COPYING: Explain how gnulib-tool converts licence headers.
9845         Almost all wording by Eric Blake.
9846
9847 2006-10-25  Paul Eggert  <eggert@cs.ucla.edu>
9848
9849         * lib/mbchar.h (is_basic_table): Make read-only.
9850         * lib/mbchar.c (is_basic_table): Likewise.
9851         Reported by John Darrington.
9852
9853 2006-10-25  Bruno Haible  <bruno@clisp.org>
9854
9855         * lib/progname.h (set_program_name): Undefine before defining.
9856
9857 2006-10-25  Bruno Haible  <bruno@clisp.org>
9858
9859         * lib/gettext.h (_LIBGETTEXT_HAVE_VARIABLE_SIZE_ARRAYS): Define to
9860         false for non-gcc C++ compilers.
9861         Reported by Nelson H. F. Beebe <beebe@math.utah.edu>.
9862
9863 2006-10-24  Bruno Haible  <bruno@clisp.org>
9864
9865         * lib/striconv.c (mem_cd_iconv, str_cd_iconv): Treat all non-GNU
9866         iconv implementations like Irix iconv.
9867
9868 2006-10-24  Paul Eggert  <eggert@cs.ucla.edu>
9869
9870         * modules/vararrays: New file.
9871         * m4/vararrays.m4: New file, taken from diffutils.
9872         * MODULES.html.sh: New module vararrays.
9873
9874 2006-10-24  Karl Berry  <karl@gnu.org>
9875
9876         * doc/gnulib-intro.texi: --- instead of --; non-naive naive.
9877         Don't call GNU Unix.
9878
9879 2006-10-24  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
9880
9881         * users.txt: Add Libtool.
9882
9883         Sync from Libtool:
9884
9885         2006-10-24  Paul Eggert  <eggert@cs.ucla.edu>
9886
9887         * lib/argz.c: Remove check for HAVE_CONFIG_H, to conform
9888         to gnulib's policy of including config.h unconditionally.
9889
9890 2006-10-24  Bruno Haible  <bruno@clisp.org>
9891
9892         * modules/wcwidth (Files): Add m4/wint_t.m4.
9893         * m4/wcwidth.m4 (gl_FUNC_WCWIDTH): Require gt_TYPE_WINT_T.
9894         * lib/wcwidth.h (iswprint): Use 'int' if 'wint_t' is not defined.
9895
9896 2006-10-24  Paul Eggert  <eggert@cs.ucla.edu>
9897
9898         * lib/getdate.y (yyerror): Make the arguments pointer-to-const,
9899         to pacify GCC with some -W flags enabled.  Problem reported by
9900         Bruno Haible.
9901
9902 2006-10-24  Jim Meyering  <jim@meyering.net>
9903
9904         * MODULES.html.sh: Remove uinttostr.  It's not a module.
9905         Reported by Karl Berry.
9906
9907 2006-10-23  Bruno Haible  <bruno@clisp.org>
9908
9909         * lib/fts.c (fts_build): Move variable declaration, for C89 compliance.
9910
9911 2006-10-24  Bruno Haible  <bruno@clisp.org>
9912
9913         * lib/gl_list.h: Use C comment style, not C++ comment style.
9914
9915 2006-10-23  Eric Blake  <ebb9@byu.net>
9916
9917         * lib/getaddrinfo.c (includes): Add missing include.
9918
9919 2006-10-23  Bruno Haible  <bruno@clisp.org>
9920             Paul Eggert  <eggert@cs.ucla.edu>
9921
9922         Ability to rename obstack_free.
9923         * lib/obstack.h (__obstack_free): New macro. Declare instead of
9924         obstack_free.
9925         (obstack_free): Invoke the __obstack_free macro.
9926         * lib/obstack.c (obstack_free): Use __obstack_free macro.
9927
9928 2006-10-23  Bruno Haible  <bruno@clisp.org>
9929             Paul Eggert  <eggert@cs.ucla.edu>
9930
9931         * lib/argp.h (argp_parse, __argp_parse): Comment out the identifiers
9932         __argc, __argv from the declaration. (They are defined as macros on
9933         mingw.)
9934
9935 2006-10-22  Bruno Haible  <bruno@clisp.org>
9936
9937         * doc/gnulib-intro.texi: New file.
9938         * doc/gnulib.texi: Include it.
9939
9940 2006-10-21  Bruno Haible  <bruno@clisp.org>
9941
9942         * doc/gnulib.texi: Split the chapter "Gnulib" into 3 chapters
9943         "Introduction", "Miscellanous Notes", "Particular Modules".
9944
9945 2006-10-21  Bruno Haible  <bruno@clisp.org>
9946
9947         * gnulib-tool (func_emit_lib_Makefile_am, func_emit_tests_Makefile_am):
9948         Change mostlyclean-local rule to avoid sh syntax error from bash
9949         versions 2.00..2.05 when $(MOSTLYCLEANDIRS) is empty.
9950
9951 2006-10-23  Jim Meyering  <jim@meyering.net>
9952
9953         * lib/getaddrinfo.c (getnameinfo): Use new lightweight uinttostr,
9954         in place of snprintf.
9955
9956         * modules/inttostr (Files): Add lib/uinttostr.c.
9957         * lib/uinttostr.c (inttostr): New file/function.
9958         * lib/inttostr.h (uinttostr): Declare.
9959         * m4/inttostr.m4: Add AC_LIBOBJ([uinttostr]).
9960         * MODULES.html.sh (Numeric conversion functions <stdlib.h>):
9961         Add uinttostr.
9962         * modules/getaddrinfo (Depends-on): Remove snprintf.  Add inttostr.
9963
9964 2006-10-21  Paul Eggert  <eggert@cs.ucla.edu>
9965
9966         * lib/canonicalize.c (ELOOP): Define if not already defined.
9967         Problem reported by Bruno Haible in
9968         <http://lists.gnu.org/archive/html/bug-gnulib/2006-10/msg00282.html>.
9969
9970 2006-10-21  Paul Eggert  <eggert@cs.ucla.edu>
9971
9972         * lib/stdint_.h [defined _AIX]: Don't include <sys/types.h>.
9973         Problem reported by Perry Smith and Ville Laurikari.
9974
9975         * lib/getndelim2.c (SSIZE_MAX): Use same defn that getdelim.c
9976         uses.
9977
9978 2006-10-19  Bruno Haible  <bruno@clisp.org>
9979
9980         * lib/getndelim2.c (SSIZE_MAX): Provide fallback definition. Needed
9981         for mingw.
9982
9983 2006-10-19  Bruno Haible  <bruno@clisp.org>
9984
9985         * lib/openat-priv.h (EOPNOTSUPP): Provide fallback definition.
9986         Needed for mingw.
9987
9988 2006-10-19  Bruno Haible  <bruno@clisp.org>
9989
9990         * m4/size_max.m4 (gl_SIZE_MAX): Cache the result.
9991
9992 2006-10-19  Bruno Haible  <bruno@clisp.org>
9993
9994         * m4/allocsa.m4 (gl_ALLOCSA): Invoke gl_FUNC_ALLOCA, don't AC_REQUIRE
9995         it.
9996
9997 2006-10-19  Bruno Haible  <bruno@clisp.org>
9998
9999         * m4/alloca.m4 (gl_FUNC_ALLOCA): Cache the result of the AC_EGREP_CPP
10000         invocation.
10001
10002 2006-10-19  Bruno Haible  <bruno@clisp.org>
10003
10004         * gnulib-tool (func_create_testdir): Don't include ftruncate and
10005         mountlist by default.
10006
10007 2006-10-16  Bruno Haible  <bruno@clisp.org>
10008
10009         * lib/c-strstr.c: Include c-strstr.h.
10010
10011 2006-10-18  Charles Wilson  <cygwin@cwilson.fastmail.fm>
10012
10013         * gnulib-tool: Don't clobber $sourcebase when $local_gnulib_dir ends
10014         in a slash.
10015
10016 2006-10-18  Bruno Haible  <bruno@clisp.org>
10017
10018         * lib/lock.h [C++]: Wrap definitions in extern "C".
10019
10020 2006-10-18  Bruno Haible  <bruno@clisp.org>
10021
10022         * gnulib-tool (func_emit_initmacro_end): Remove duplicates from the
10023         gl_LIBOBJS list.
10024
10025 2006-10-18  Bruno Haible  <bruno@clisp.org>
10026
10027         * lib/findprog.c (find_in_path): Avoid "gcc -Wwrite-strings" warning.
10028
10029 2006-10-19  Paul Eggert  <eggert@cs.ucla.edu>
10030
10031         * lib/xstrtol.h: Include gettext.h.
10032         (_STRTOL_ERROR): Wrap English-language formats inside gettext.
10033         Problem reported by Eric Blake.
10034         * modules/xstrtol (Depends-on): Add gettext-h.
10035
10036 2006-10-19  Paul Eggert  <eggert@cs.ucla.edu>  (tiny change)
10037
10038         * lib/strftime.c (advance): New macro.
10039         (add): Use it to avoid adding 0 to a FILE *.  FILE can be an
10040         incomplete type, so you can't add 0 to it.  Problem and patch
10041         reported by Eelco Dolstra for dietlibc.
10042
10043 2006-10-18  Jim Meyering  <jim@meyering.net>
10044
10045         * lib/readutmp.c (desirable_utmp_entry): Use "bool" as the
10046         type for a local, and rename it: s/up/user_proc/.
10047
10048 2006-10-18  Sergey Poznyakoff  <gray@gnu.org.ua>
10049
10050         * lib/readutmp.c (desirable_utmp_entry): Implement new flag:
10051         READ_UTMP_USER_PROCESS.
10052         * lib/readutmp.h (READ_UTMP_USER_PROCESS): New flag
10053
10054 2006-10-17  Paul Eggert  <eggert@cs.ucla.edu>
10055
10056         * lib/localcharset.c: Do not check HAVE_SETLOCALE.
10057         * m4/localcharset.m4 (gl_LOCALCHARSET): Don't check for setlocale.
10058
10059 2006-10-17  Eric Blake  <ebb9@byu.net>
10060
10061         * lib/sigprocmask.c (sigprocmask): Fix typo.
10062
10063         * m4/signalblocking.m4 (gl_PREREQ_SIGPROCMASK): Fix typo.
10064
10065         * modules/clean-temp (Makefile.am): Don't add to make output...
10066         (configure.ac): ...instead define SIGNAL_SAFE_LIST inside
10067         config.h.
10068
10069 2006-10-17  Bruno Haible  <bruno@clisp.org>
10070
10071         * lib/gettext.h (gettext, ngettext, pgettext, npgettext): Define
10072         differently if DEFAULT_TEXT_DOMAIN is set.
10073
10074 2006-10-16  Bruno Haible  <bruno@clisp.org>
10075
10076         * lib/clean-temp.c: Include fwriteerror.h.
10077
10078 2006-10-16  Bruno Haible  <bruno@clisp.org>
10079
10080         * getndelim2.m4 (gl_GETNDELIM2): Remove 2003-10-23 hack.
10081
10082 2006-10-16  Bruno Haible  <bruno@clisp.org>
10083
10084         * m4/signalblocking.m4 (gl_PREREQ_SIGPROCMASK): Also test for sigset_t.
10085         * lib/sigprocmask.h: Include <sys/types.h>.
10086         (sigset_t): Use the system's definition if present.
10087
10088 2006-10-17  Eric Blake  <ebb9@byu.net>
10089
10090         * lib/xvasprintf.c (includes): Assume config.h.
10091         * lib/xasprintf.c (includes): Likewise.
10092
10093 2006-10-16  Paul Eggert  <eggert@cs.ucla.edu>
10094
10095         * lib/fsusage.c (PROPAGATE_ALL_ONES): Don't assume uintmax_t is
10096         at least as wide as intmax_t.
10097
10098 2006-10-16  Alexandre Duret-Lutz  <adl@gnu.org>
10099
10100         (Imported from Automake.)
10101         * build-aux/gnupload: Update to version 1.1 of directive file.
10102
10103 2006-10-16  Eric Blake  <ebb9@byu.net>
10104
10105         * modules/configmake (Makefile.am): Add pkglibexecdir support, to
10106         match Automake 1.10a.
10107
10108 2006-10-14  Bruno Haible  <bruno@clisp.org>
10109
10110         * modules/sigprocmask: New file.
10111         * lib/sigprocmask.h: New file.
10112         * lib/sigprocmask.c: New file.
10113         * m4/signalblocking.m4 (gl_SIGNALBLOCKING): Renamed from
10114         gt_SIGNALBLOCKING. When not defining HAVE_POSIX_SIGNALBLOCKING,
10115         request sigprocmask.o.
10116         (gl_PREREQ_SIGPROCMASK): New macro.
10117         * modules/fatal-signal (Files): Remove m4/signalblocking.m4.
10118         (Depends-on): Add sigprocmask.
10119         * m4/fatal-signal.m4 (gl_FATAL_SIGNAL): Don't require
10120         gt_SIGNALBLOCKING. Test for 'raise' only once.
10121         * lib/fatal-signal.c: Include sigprocmask.h.
10122         (fatal_signal_set, init_fatal_signal_set, block_fatal_signals,
10123         unblock_fatal_signals): Define always.
10124         * MODULES.html.sh (Support for systems lacking POSIX:2001): Add
10125         sigprocmask.
10126
10127 2006-10-14  Paul Eggert  <eggert@cs.ucla.edu>
10128
10129         Sync from Automake.
10130         * build-aux/install-sh (posix_mkdir): Reject FreeBSD 6.1 mkdir -p -m,
10131         which incorrectly sets the mode of an existing destination
10132         directory.  In some cases the unpatched install-sh could do the
10133         equivalent of "chmod 777 /" or "chmod 0 /" on a buggy FreeBSD
10134         system.  We hope this is rare in practice, but it's clearly worth
10135         fixing.  Problem reported by Alex Unleashed in
10136         <http://lists.gnu.org/archive/html/bug-autoconf/2006-10/msg00012.html>.
10137         Also, don't bother to check for -m bugs unless we're using -m;
10138         suggested by Stepan Kasal.
10139
10140 2006-10-14  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
10141
10142         Sync from Automake.
10143         * build-aux/depcomp (gcc3): Put dependency extraction flags before the
10144         `-c' flag, so they appear at the same position as in %FASTDEP%
10145         mode in depend2.am.  Fixes build failure for FreeBSD's c89,
10146         which ignores unknown options only after the first non-option.
10147         Bug report against M4 by Nelson H. F. Beebe.
10148
10149 2006-10-13  Jim Meyering  <jim@meyering.net>
10150
10151         Fix a bug in yesterday's change.
10152         * lib/fts.c (fts_open): When using FTS_XDEV|FTS_NOSTAT,
10153         p->fts_statp->st_dev would be used uninitialized.
10154         Ensures that we always call fts_stat on the very first entry.
10155         Miklos Szeredi reported that find -xdev stopped working.
10156
10157 2006-10-12  Bruno Haible  <bruno@clisp.org>
10158
10159         * gnulib-tool (func_get_automake_snippet): Append an automatically
10160         computed EXTRA_DIST augmentation.
10161         * modules/acl (Makefile.am): Remove EXTRA_DIST augmentation.
10162         * modules/alloca-opt (Makefile.am): Likewise.
10163         * modules/allocsa (Makefile.am): Likewise.
10164         * modules/arcfour (Makefile.am): Likewise.
10165         * modules/arctwo (Makefile.am): Likewise.
10166         * modules/argmatch (Makefile.am): Likewise.
10167         * modules/argz (Makefile.am): Likewise.
10168         * modules/atexit (Makefile.am): Likewise.
10169         * modules/backupfile (Makefile.am): Likewise.
10170         * modules/byteswap (Makefile.am): Likewise.
10171         * modules/c-strtod (Makefile.am): Likewise.
10172         * modules/c-strtold (Makefile.am): Likewise.
10173         * modules/calloc (Makefile.am): Likewise.
10174         * modules/canon-host (Makefile.am): Likewise.
10175         * modules/canonicalize (Makefile.am): Likewise.
10176         * modules/chdir-long (Makefile.am): Likewise.
10177         * modules/chdir-safer (Makefile.am): Likewise.
10178         * modules/check-version (Makefile.am): Likewise.
10179         * modules/chown (Makefile.am): Likewise.
10180         * modules/cloexec (Makefile.am): Likewise.
10181         * modules/close-stream (Makefile.am): Likewise.
10182         * modules/closeout (Makefile.am): Likewise.
10183         * modules/crc (Makefile.am): Likewise.
10184         * modules/csharpexec (Makefile.am): Likewise.
10185         * modules/cycle-check (Makefile.am): Likewise.
10186         * modules/des (Makefile.am): Likewise.
10187         * modules/dev-ino (Makefile.am): Likewise.
10188         * modules/dirfd (Makefile.am): Likewise.
10189         * modules/dirname (Makefile.am): Likewise.
10190         * modules/dup2 (Makefile.am): Likewise.
10191         * modules/eealloc (Makefile.am): Likewise.
10192         * modules/error (Makefile.am): Likewise.
10193         * modules/euidaccess (Makefile.am): Likewise.
10194         * modules/exclude (Makefile.am): Likewise.
10195         * modules/exitfail (Makefile.am): Likewise.
10196         * modules/fcntl-safer (Makefile.am): Likewise.
10197         * modules/fcntl (Makefile.am): Likewise.
10198         * modules/file-type (Makefile.am): Likewise.
10199         * modules/fileblocks (Makefile.am): Likewise.
10200         * modules/filemode (Makefile.am): Likewise.
10201         * modules/filenamecat (Makefile.am): Likewise.
10202         * modules/fnmatch (Makefile.am): Likewise.
10203         * modules/fopen-safer (Makefile.am): Likewise.
10204         * modules/fpending (Makefile.am): Likewise.
10205         * modules/fprintftime (Makefile.am): Likewise.
10206         * modules/free (Makefile.am): Likewise.
10207         * modules/fsusage (Makefile.am): Likewise.
10208         * modules/ftruncate (Makefile.am): Likewise.
10209         * modules/fts (Makefile.am): Likewise.
10210         * modules/gc-arcfour (Makefile.am): Likewise.
10211         * modules/gc-des (Makefile.am): Likewise.
10212         * modules/gc-hmac-md5 (Makefile.am): Likewise.
10213         * modules/gc-hmac-sha1 (Makefile.am): Likewise.
10214         * modules/gc-md4 (Makefile.am): Likewise.
10215         * modules/gc-pbkdf2-sha1 (Makefile.am): Likewise.
10216         * modules/gc-sha1 (Makefile.am): Likewise.
10217         * modules/gc (Makefile.am): Likewise.
10218         * modules/getaddrinfo (Makefile.am): Likewise.
10219         * modules/getcwd (Makefile.am): Likewise.
10220         * modules/getdelim (Makefile.am): Likewise.
10221         * modules/getdomainname (Makefile.am): Likewise.
10222         * modules/getgroups (Makefile.am): Likewise.
10223         * modules/gethostname (Makefile.am): Likewise.
10224         * modules/gethrxtime (Makefile.am): Likewise.
10225         * modules/getline (Makefile.am): Likewise.
10226         * modules/getloadavg (Makefile.am): Likewise.
10227         * modules/getlogin_r (Makefile.am): Likewise.
10228         * modules/getndelim2 (Makefile.am): Likewise.
10229         * modules/getopt (Makefile.am): Likewise.
10230         * modules/getpagesize (Makefile.am): Likewise.
10231         * modules/getpass-gnu (Makefile.am): Likewise.
10232         * modules/getpass (Makefile.am): Likewise.
10233         * modules/getsubopt (Makefile.am): Likewise.
10234         * modules/gettime (Makefile.am): Likewise.
10235         * modules/gettimeofday (Makefile.am): Likewise.
10236         * modules/getugroups (Makefile.am): Likewise.
10237         * modules/getusershell (Makefile.am): Likewise.
10238         * modules/glob (Makefile.am): Likewise.
10239         * modules/group-member (Makefile.am): Likewise.
10240         * modules/hard-locale (Makefile.am): Likewise.
10241         * modules/hash (Makefile.am): Likewise.
10242         * modules/hmac-md5 (Makefile.am): Likewise.
10243         * modules/hmac-sha1 (Makefile.am): Likewise.
10244         * modules/human (Makefile.am): Likewise.
10245         * modules/idcache (Makefile.am): Likewise.
10246         * modules/imaxabs (Makefile.am): Likewise.
10247         * modules/imaxdiv (Makefile.am): Likewise.
10248         * modules/inet_ntop (Makefile.am): Likewise.
10249         * modules/inet_pton (Makefile.am): Likewise.
10250         * modules/intprops (Makefile.am): Likewise.
10251         * modules/inttostr (Makefile.am): Likewise.
10252         * modules/inttypes (Makefile.am): Likewise.
10253         * modules/isapipe (Makefile.am): Likewise.
10254         * modules/javaversion (Makefile.am): Likewise.
10255         * modules/lchmod (Makefile.am): Likewise.
10256         * modules/lchown (Makefile.am): Likewise.
10257         * modules/localcharset (Makefile.am): Likewise.
10258         * modules/long-options (Makefile.am): Likewise.
10259         * modules/lstat (Makefile.am): Likewise.
10260         * modules/malloc (Makefile.am): Likewise.
10261         * modules/mathl (Makefile.am): Likewise.
10262         * modules/mbchar (Makefile.am): Likewise.
10263         * modules/md2 (Makefile.am): Likewise.
10264         * modules/md4 (Makefile.am): Likewise.
10265         * modules/md5 (Makefile.am): Likewise.
10266         * modules/memcasecmp (Makefile.am): Likewise.
10267         * modules/memchr (Makefile.am): Likewise.
10268         * modules/memcmp (Makefile.am): Likewise.
10269         * modules/memcoll (Makefile.am): Likewise.
10270         * modules/memcpy (Makefile.am): Likewise.
10271         * modules/memmem (Makefile.am): Likewise.
10272         * modules/memmove (Makefile.am): Likewise.
10273         * modules/mempcpy (Makefile.am): Likewise.
10274         * modules/memrchr (Makefile.am): Likewise.
10275         * modules/memset (Makefile.am): Likewise.
10276         * modules/memxor (Makefile.am): Likewise.
10277         * modules/mkancesdirs (Makefile.am): Likewise.
10278         * modules/mkdir-p (Makefile.am): Likewise.
10279         * modules/mkdir (Makefile.am): Likewise.
10280         * modules/mkdtemp (Makefile.am): Likewise.
10281         * modules/mkstemp (Makefile.am): Likewise.
10282         * modules/mktime (Makefile.am): Likewise.
10283         * modules/modechange (Makefile.am): Likewise.
10284         * modules/mountlist (Makefile.am): Likewise.
10285         * modules/nanosleep (Makefile.am): Likewise.
10286         * modules/obstack (Makefile.am): Likewise.
10287         * modules/openat (Makefile.am): Likewise.
10288         * modules/pagealign_alloc (Makefile.am): Likewise.
10289         * modules/pathmax (Makefile.am): Likewise.
10290         * modules/physmem (Makefile.am): Likewise.
10291         * modules/poll (Makefile.am): Likewise.
10292         * modules/posixtm (Makefile.am): Likewise.
10293         * modules/posixver (Makefile.am): Likewise.
10294         * modules/putenv (Makefile.am): Likewise.
10295         * modules/quote (Makefile.am): Likewise.
10296         * modules/quotearg (Makefile.am): Likewise.
10297         * modules/raise (Makefile.am): Likewise.
10298         * modules/read-file (Makefile.am): Likewise.
10299         * modules/readline (Makefile.am): Likewise.
10300         * modules/readlink (Makefile.am): Likewise.
10301         * modules/readtokens (Makefile.am): Likewise.
10302         * modules/readutmp (Makefile.am): Likewise.
10303         * modules/realloc (Makefile.am): Likewise.
10304         * modules/regex (Makefile.am): Likewise.
10305         * modules/rename-dest-slash (Makefile.am): Likewise.
10306         * modules/rename (Makefile.am): Likewise.
10307         * modules/rijndael (Makefile.am): Likewise.
10308         * modules/rmdir (Makefile.am): Likewise.
10309         * modules/rpmatch (Makefile.am): Likewise.
10310         * modules/safe-read (Makefile.am): Likewise.
10311         * modules/safe-write (Makefile.am): Likewise.
10312         * modules/same-inode (Makefile.am): Likewise.
10313         * modules/same (Makefile.am): Likewise.
10314         * modules/save-cwd (Makefile.am): Likewise.
10315         * modules/savedir (Makefile.am): Likewise.
10316         * modules/setenv (Makefile.am): Likewise.
10317         * modules/settime (Makefile.am): Likewise.
10318         * modules/sha1 (Makefile.am): Likewise.
10319         * modules/sig2str (Makefile.am): Likewise.
10320         * modules/snprintf (Makefile.am): Likewise.
10321         * modules/stat-macros (Makefile.am): Likewise.
10322         * modules/stat-time (Makefile.am): Likewise.
10323         * modules/stdbool (Makefile.am): Likewise.
10324         * modules/stdint (Makefile.am): Likewise.
10325         * modules/stdlib-safer (Makefile.am): Likewise.
10326         * modules/stpcpy (Makefile.am): Likewise.
10327         * modules/stpncpy (Makefile.am): Likewise.
10328         * modules/strcase (Makefile.am): Likewise.
10329         * modules/strcasestr (Makefile.am): Likewise.
10330         * modules/strchrnul (Makefile.am): Likewise.
10331         * modules/strcspn (Makefile.am): Likewise.
10332         * modules/strdup (Makefile.am): Likewise.
10333         * modules/strerror (Makefile.am): Likewise.
10334         * modules/strftime (Makefile.am): Likewise.
10335         * modules/strndup (Makefile.am): Likewise.
10336         * modules/strnlen (Makefile.am): Likewise.
10337         * modules/strpbrk (Makefile.am): Likewise.
10338         * modules/strsep (Makefile.am): Likewise.
10339         * modules/strstr (Makefile.am): Likewise.
10340         * modules/strtod (Makefile.am): Likewise.
10341         * modules/strtoimax (Makefile.am): Likewise.
10342         * modules/strtok_r (Makefile.am): Likewise.
10343         * modules/strtol (Makefile.am): Likewise.
10344         * modules/strtoll (Makefile.am): Likewise.
10345         * modules/strtoul (Makefile.am): Likewise.
10346         * modules/strtoull (Makefile.am): Likewise.
10347         * modules/strtoumax (Makefile.am): Likewise.
10348         * modules/strverscmp (Makefile.am): Likewise.
10349         * modules/sys_socket (Makefile.am): Likewise.
10350         * modules/sys_stat (Makefile.am): Likewise.
10351         * modules/sysexits (Makefile.am): Likewise.
10352         * modules/time_r (Makefile.am): Likewise.
10353         * modules/timegm (Makefile.am): Likewise.
10354         * modules/timespec (Makefile.am): Likewise.
10355         * modules/tmpfile-safer (Makefile.am): Likewise.
10356         * modules/trim (Makefile.am): Likewise.
10357         * modules/unistd-safer (Makefile.am): Likewise.
10358         * modules/unlinkdir (Makefile.am): Likewise.
10359         * modules/unlocked-io (Makefile.am): Likewise.
10360         * modules/userspec (Makefile.am): Likewise.
10361         * modules/utime (Makefile.am): Likewise.
10362         * modules/utimecmp (Makefile.am): Likewise.
10363         * modules/utimens (Makefile.am): Likewise.
10364         * modules/vasnprintf (Makefile.am): Likewise.
10365         * modules/vasprintf (Makefile.am): Likewise.
10366         * modules/vsnprintf (Makefile.am): Likewise.
10367         * modules/xalloc (Makefile.am): Likewise.
10368         * modules/xgetcwd (Makefile.am): Likewise.
10369         * modules/xnanosleep (Makefile.am): Likewise.
10370         * modules/xreadlink (Makefile.am): Likewise.
10371         * modules/xstrtod (Makefile.am): Likewise.
10372         * modules/xstrtol (Makefile.am): Likewise.
10373         * modules/xstrtold (Makefile.am): Likewise.
10374         * modules/yesno (Makefile.am): Likewise.
10375         * modules/getdate (Makefile.am): Don't add getdate.h to EXTRA_DIST.
10376
10377 2006-10-12  Paul Eggert  <eggert@cs.ucla.edu>
10378
10379         * modules/error (Makefile.am): Distribute files through
10380         EXTRA_DIST, not lib_SOURCES.
10381
10382 2006-10-12  Eric Blake  <ebb9@byu.net>
10383
10384         * modules/error (Makefile.am): Distribute files in /lib.
10385         * modules/obstack (Makefile.am): Likewise.
10386
10387 2006-10-12  Bruno Haible  <bruno@clisp.org>
10388
10389         * modules/acl (Makefile.am): Distribute all files in lib/ through
10390         EXTRA_DIST.
10391         * modules/arcfour (Makefile.am): Likewise.
10392         * modules/arctwo (Makefile.am): Likewise.
10393         * modules/argmatch (Makefile.am): Likewise.
10394         * modules/argz (Makefile.am): Likewise.
10395         * modules/atexit (Makefile.am): Likewise.
10396         * modules/backupfile (Makefile.am): Likewise.
10397         * modules/c-strtod (Makefile.am): Likewise.
10398         * modules/c-strtold (Makefile.am): Likewise.
10399         * modules/calloc (Makefile.am): Likewise.
10400         * modules/canon-host (Makefile.am): Likewise.
10401         * modules/canonicalize (Makefile.am): Likewise.
10402         * modules/chdir-long (Makefile.am): Likewise.
10403         * modules/chdir-safer (Makefile.am): Likewise.
10404         * modules/check-version (Makefile.am): Likewise.
10405         * modules/chown (Makefile.am): Likewise.
10406         * modules/cloexec (Makefile.am): Likewise.
10407         * modules/close-stream (Makefile.am): Likewise.
10408         * modules/closeout (Makefile.am): Likewise.
10409         * modules/crc (Makefile.am): Likewise.
10410         * modules/cycle-check (Makefile.am): Likewise.
10411         * modules/des (Makefile.am): Likewise.
10412         * modules/dirfd (Makefile.am): Likewise.
10413         * modules/dirname (Makefile.am): Likewise.
10414         * modules/dup2 (Makefile.am): Likewise.
10415         * modules/euidaccess (Makefile.am): Likewise.
10416         * modules/exclude (Makefile.am): Likewise.
10417         * modules/exitfail (Makefile.am): Likewise.
10418         * modules/fcntl-safer (Makefile.am): Likewise.
10419         * modules/file-type (Makefile.am): Likewise.
10420         * modules/fileblocks (Makefile.am): Likewise.
10421         * modules/filemode (Makefile.am): Likewise.
10422         * modules/filenamecat (Makefile.am): Likewise.
10423         * modules/fnmatch (Makefile.am): Likewise.
10424         * modules/fopen-safer (Makefile.am): Likewise.
10425         * modules/fpending (Makefile.am): Likewise.
10426         * modules/fprintftime (Makefile.am): Likewise.
10427         * modules/free (Makefile.am): Likewise.
10428         * modules/fsusage (Makefile.am): Likewise.
10429         * modules/ftruncate (Makefile.am): Likewise.
10430         * modules/fts (Makefile.am): Likewise.
10431         * modules/gc (Makefile.am): Likewise.
10432         * modules/gc-pbkdf2-sha1 (Makefile.am): Likewise.
10433         * modules/getaddrinfo (Makefile.am): Likewise.
10434         * modules/getcwd (Makefile.am): Likewise.
10435         * modules/getdelim (Makefile.am): Likewise.
10436         * modules/getdomainname (Makefile.am): Likewise.
10437         * modules/getgroups (Makefile.am): Likewise.
10438         * modules/gethostname (Makefile.am): Likewise.
10439         * modules/gethrxtime (Makefile.am): Likewise.
10440         * modules/getline (Makefile.am): Likewise.
10441         * modules/getloadavg (Makefile.am): Likewise.
10442         * modules/getlogin_r (Makefile.am): Likewise.
10443         * modules/getopt (Makefile.am): Likewise.
10444         * modules/getpass (Makefile.am): Likewise.
10445         * modules/getpass-gnu (Makefile.am): Likewise.
10446         * modules/getsubopt (Makefile.am): Likewise.
10447         * modules/gettime (Makefile.am): Likewise.
10448         * modules/gettimeofday (Makefile.am): Likewise.
10449         * modules/getugroups (Makefile.am): Likewise.
10450         * modules/getusershell (Makefile.am): Likewise.
10451         * modules/glob (Makefile.am): Likewise.
10452         * modules/group-member (Makefile.am): Likewise.
10453         * modules/hard-locale (Makefile.am): Likewise.
10454         * modules/hash (Makefile.am): Likewise.
10455         * modules/hmac-md5 (Makefile.am): Likewise.
10456         * modules/hmac-sha1 (Makefile.am): Likewise.
10457         * modules/human (Makefile.am): Likewise.
10458         * modules/idcache (Makefile.am): Likewise.
10459         * modules/imaxabs (Makefile.am): Likewise.
10460         * modules/imaxdiv (Makefile.am): Likewise.
10461         * modules/inet_ntop (Makefile.am): Likewise.
10462         * modules/inet_pton (Makefile.am): Likewise.
10463         * modules/inttostr (Makefile.am): Likewise.
10464         * modules/isapipe (Makefile.am): Likewise.
10465         * modules/lchown (Makefile.am): Likewise.
10466         * modules/long-options (Makefile.am): Likewise.
10467         * modules/lstat (Makefile.am): Likewise.
10468         * modules/malloc (Makefile.am): Likewise.
10469         * modules/mathl (Makefile.am): Likewise.
10470         * modules/mbchar (Makefile.am): Likewise.
10471         * modules/md2 (Makefile.am): Likewise.
10472         * modules/md4 (Makefile.am): Likewise.
10473         * modules/md5 (Makefile.am): Likewise.
10474         * modules/memcasecmp (Makefile.am): Likewise.
10475         * modules/memchr (Makefile.am): Likewise.
10476         * modules/memcmp (Makefile.am): Likewise.
10477         * modules/memcoll (Makefile.am): Likewise.
10478         * modules/memcpy (Makefile.am): Likewise.
10479         * modules/memmem (Makefile.am): Likewise.
10480         * modules/memmove (Makefile.am): Likewise.
10481         * modules/mempcpy (Makefile.am): Likewise.
10482         * modules/memrchr (Makefile.am): Likewise.
10483         * modules/memset (Makefile.am): Likewise.
10484         * modules/memxor (Makefile.am): Likewise.
10485         * modules/mkancesdirs (Makefile.am): Likewise.
10486         * modules/mkdir (Makefile.am): Likewise.
10487         * modules/mkdir-p (Makefile.am): Likewise.
10488         * modules/mkdtemp (Makefile.am): Likewise.
10489         * modules/mkstemp (Makefile.am): Likewise.
10490         * modules/mktime (Makefile.am): Likewise.
10491         * modules/modechange (Makefile.am): Likewise.
10492         * modules/mountlist (Makefile.am): Likewise.
10493         * modules/nanosleep (Makefile.am): Likewise.
10494         * modules/openat (Makefile.am): Likewise.
10495         * modules/pagealign_alloc (Makefile.am): Likewise.
10496         * modules/physmem (Makefile.am): Likewise.
10497         * modules/poll (Makefile.am): Likewise.
10498         * modules/posixtm (Makefile.am): Likewise.
10499         * modules/posixver (Makefile.am): Likewise.
10500         * modules/putenv (Makefile.am): Likewise.
10501         * modules/quote (Makefile.am): Likewise.
10502         * modules/quotearg (Makefile.am): Likewise.
10503         * modules/raise (Makefile.am): Likewise.
10504         * modules/read-file (Makefile.am): Likewise.
10505         * modules/readline (Makefile.am): Likewise.
10506         * modules/readlink (Makefile.am): Likewise.
10507         * modules/readtokens (Makefile.am): Likewise.
10508         * modules/readutmp (Makefile.am): Likewise.
10509         * modules/realloc (Makefile.am): Likewise.
10510         * modules/regex (Makefile.am): Likewise.
10511         * modules/rename (Makefile.am): Likewise.
10512         * modules/rename-dest-slash (Makefile.am): Likewise.
10513         * modules/rijndael (Makefile.am): Likewise.
10514         * modules/rmdir (Makefile.am): Likewise.
10515         * modules/rpmatch (Makefile.am): Likewise.
10516         * modules/safe-read (Makefile.am): Likewise.
10517         * modules/safe-write (Makefile.am): Likewise.
10518         * modules/same (Makefile.am): Likewise.
10519         * modules/save-cwd (Makefile.am): Likewise.
10520         * modules/savedir (Makefile.am): Likewise.
10521         * modules/setenv (Makefile.am): Likewise.
10522         * modules/settime (Makefile.am): Likewise.
10523         * modules/sha1 (Makefile.am): Likewise.
10524         * modules/sig2str (Makefile.am): Likewise.
10525         * modules/snprintf (Makefile.am): Likewise.
10526         * modules/stdlib-safer (Makefile.am): Likewise.
10527         * modules/stpcpy (Makefile.am): Likewise.
10528         * modules/stpncpy (Makefile.am): Likewise.
10529         * modules/strcase (Makefile.am): Likewise.
10530         * modules/strcasestr (Makefile.am): Likewise.
10531         * modules/strchrnul (Makefile.am): Likewise.
10532         * modules/strcspn (Makefile.am): Likewise.
10533         * modules/strdup (Makefile.am): Likewise.
10534         * modules/strerror (Makefile.am): Likewise.
10535         * modules/strftime (Makefile.am): Likewise.
10536         * modules/strndup (Makefile.am): Likewise.
10537         * modules/strnlen (Makefile.am): Likewise.
10538         * modules/strpbrk (Makefile.am): Likewise.
10539         * modules/strsep (Makefile.am): Likewise.
10540         * modules/strstr (Makefile.am): Likewise.
10541         * modules/strtod (Makefile.am): Likewise.
10542         * modules/strtoimax (Makefile.am): Likewise.
10543         * modules/strtok_r (Makefile.am): Likewise.
10544         * modules/strtol (Makefile.am): Likewise.
10545         * modules/strtoll (Makefile.am): Likewise.
10546         * modules/strtoul (Makefile.am): Likewise.
10547         * modules/strtoull (Makefile.am): Likewise.
10548         * modules/strtoumax (Makefile.am): Likewise.
10549         * modules/strverscmp (Makefile.am): Likewise.
10550         * modules/time_r (Makefile.am): Likewise.
10551         * modules/timegm (Makefile.am): Likewise.
10552         * modules/tmpfile-safer (Makefile.am): Likewise.
10553         * modules/unistd-safer (Makefile.am): Likewise.
10554         * modules/unlinkdir (Makefile.am): Likewise.
10555         * modules/userspec (Makefile.am): Likewise.
10556         * modules/utime (Makefile.am): Likewise.
10557         * modules/utimecmp (Makefile.am): Likewise.
10558         * modules/utimens (Makefile.am): Likewise.
10559         * modules/vasnprintf (Makefile.am): Likewise.
10560         * modules/vasprintf (Makefile.am): Likewise.
10561         * modules/vsnprintf (Makefile.am): Likewise.
10562         * modules/xalloc (Makefile.am): Likewise.
10563         * modules/xgetcwd (Makefile.am): Likewise.
10564         * modules/xnanosleep (Makefile.am): Likewise.
10565         * modules/xreadlink (Makefile.am): Likewise.
10566         * modules/xstrtod (Makefile.am): Likewise.
10567         * modules/xstrtol (Makefile.am): Likewise.
10568         * modules/xstrtold (Makefile.am): Likewise.
10569         * modules/yesno (Makefile.am): Likewise.
10570
10571 2006-10-12  Jim Meyering  <jim@meyering.net>
10572
10573         * m4/getloadavg.m4: Revert the change below.
10574
10575         * m4/getloadavg.m4 (gl_GETLOADAVG): Test for the existence of
10576         lib/getloadavg.c using "ls -L", not "test -f".  The latter would
10577         fail with a symlink, which is what coreutils' ./bootstrap now
10578         creates by default.
10579
10580 2006-10-12  Bruno Haible  <bruno@clisp.org>
10581
10582         * lib/inttypes_.h (_LONG_LONG_FORMAT_PREFIX): Don't define for MSVC or
10583         mingw.
10584         (_PRI64_PREFIX, _PRIu64_PREFIX, _SCN64_PREFIX, _SCNu64_PREFIX): Handle
10585         MSVC and mingw explicitly.
10586
10587 2006-10-11  Simon Josefsson  <jas@extundo.com>
10588             Bruno Haible  <bruno@clisp.org>
10589
10590         Add support for multiple gnulib-tool invocations in the scope of a
10591         single configure.ac file.
10592         * gnulib-tool (func_emit_lib_Makefile_am): In the _LIBADD variable,
10593         use a private [LT]LIBOBJS variant. Define a _DEPENDENCIES variable
10594         with the same contents as the _LIBADD variable.
10595         (func_emit_initmacro_start, func_emit_initmacro_end,
10596         func_emit_initmacro_done): New functions.
10597         (func_import, func_create_testdir): Invoke them. Allow the identifiers
10598         gl_LIBOBJS and gl_LTLIBOBJS.
10599
10600 2006-10-11  Bruno Haible  <bruno@clisp.org>
10601
10602         * gnulib-tool (GETTEXTPATH, AUTOHEADER, AUTOPOINT): New variables.
10603         (func_create_testdir): Don't create po/Makefile.am, don't invoke
10604         autoreconf. Instead, invoke autopoint explicitly but move back the
10605         *.m4 files from gnulib.
10606
10607 2006-10-11  Bruno Haible  <bruno@clisp.org>
10608
10609         * gnulib-tool (func_usage): Make module names after --create-testdir
10610         optional.
10611         (func_create_testdir): If no module was specified, use nearly all
10612         modules.
10613
10614 2006-10-12  Jim Meyering  <jim@meyering.net>
10615
10616         Big performance improvement for fts-based tools that use FTS_NOSTAT.
10617         Avoid spurious inode-mismatch problems on non-POSIX file systems.
10618         Details: http://article.gmane.org/gmane.comp.lib.gnulib.bugs/7416
10619         * lib/fts_.h (FTS_DEFER_STAT): Define new flag.
10620         (FTS_OPTIONMASK): Extend the mask to reflect this addition.
10621         * lib/fts.c (DT_IS_KNOWN, DT_MUST_BE): Define.
10622         (FTS_NO_STAT_REQUIRED, FTS_STAT_REQUIRED): Define.
10623         (fts_set_stat_required): New function.
10624         (fts_open): Defer the calls to fts_stat, if possible or requested.
10625         Move the code that maps a command-line fts_info value FTS_DOT to FTS_D
10626         into fts_stat itself.
10627         (fts_read): Perform any required (deferred) fts_stat call.
10628         (fts_build): Likewise, for the directory we're about to open and read.
10629         In the readdir loop, carefully decide whether each entry will require
10630         an eventual call to fts_stat, using dirent.d_type info if available.
10631         (fts_stat): Move the test for whether to honor FTS_COMFOLLOW on
10632         a command line argument into this function.  Update all callers.
10633         Map a return value of FTS_DOT to FTS_D for a command line argument.
10634         * modules/fts (Depends-on): Add d-type.  Alphabetize.
10635         Thanks to Miklos Szeredi for his tenacity and for the initial
10636         bug report about "find" failing on a FUSE-based file system.
10637
10638         * lib/fts.c (fts_open): Use consistent indentation.
10639
10640 2006-10-12  Paul Eggert  <eggert@cs.ucla.edu>
10641
10642         * m4/extensions.m4 (AC_USE_SYSTEM_EXTENSIONS): Renamed from
10643         gl_USE_SYSTEM_EXTENSIONS, to fix a coreutils bootstrap failure
10644         reported by Jim Meyering.  All uses of cache variables renamed
10645         to match Autoconf's.
10646         (gl_USE_SYSTEM_EXTENSIONS): New macro, which simply requires
10647         the other one.
10648
10649         * m4/rename-dest-slash.m4 (gl_FUNC_RENAME_TRAILING_DEST_SLASH):
10650         Fix misspelling in diagnostic.
10651
10652 2006-10-11  Paul Eggert  <eggert@cs.ucla.edu>
10653
10654         * lib/mkdir-p.c (HAVE_FCHMOD): Define to false if not already
10655         defined.  Problem reported by Matthew Woehlke.
10656
10657         * lib/inttypes_.h (_LONG_LONG_FORMAT_PREFIX): New macro.
10658         Add support for Tandem NonStop R series.
10659         (_PRI64_PREFIX, _PRIu64_PREFIX, _SCN64_PREFIX, _SCNu64_PREFIX):
10660         Use new macro.
10661
10662         * lib/rename-dest-slash.c: Include stdbool.h but not string.h.
10663         (has_trailing_slash): Omit size arg; all callers changed.
10664         Omit 'inline', since it doesn't help performance and we'd
10665         need to configure it.
10666         Don't count //, ///, etc. as having a trailing slash.
10667         As a side effect, this removes a C99ism reported by Matthew Woehlke.
10668         (rpl_rename_dest_slash): On failure, use rename's errno rather
10669         than (in some cases) an incorrect or junk errno.
10670         Simplify code by removing need to compute length; this does
10671         cause it to make two passes instead of one over the file name,
10672         but it's worth it.
10673
10674         * m4/extensions.m4 (gl_USE_SYSTEM_EXTENSIONS): Undo previous
10675         change, since Autoconf's version may no longer be appropriate now
10676         that we are using CVS Autoconf's version.  Add support for Tandem.
10677
10678 2006-10-11  Paul Eggert  <eggert@cs.ucla.edu>
10679             Bruno Haible  <bruno@clisp.org>
10680
10681         * lib/allocsa.h (sa_alignment_longlong, sa_alignment_max): Test
10682         HAVE_LONG_LONG_INT instead of HAVE_LONG_LONG.
10683         * m4/allocsa.m4 (gl_ALLOCSA): Invoke AC_TYPE_LONG_LONG_INT instead of
10684         gl_AC_TYPE_LONG_LONG.
10685
10686         * lib/printf-args.h (arg_type, argument): Test HAVE_LONG_LONG_INT
10687         instead of HAVE_LONG_LONG.
10688         * lib/printf-args.c (printf_fetchargs): Likewise.
10689         * lib/printf-parse.c (PRINTF_PARSE): Likewise.
10690         * lib/vasnprintf.c (VASNPRINTF): Likewise.
10691         * m4/vasnprintf.m4 (gl_PREREQ_PRINTF_ARGS, gl_PREREQ_PRINTF_PARSE,
10692         gl_PREREQ_VASNPRINTF): Invoke AC_TYPE_LONG_LONG_INT instead of
10693         gl_AC_TYPE_LONG_LONG.
10694
10695 2006-10-11  Bruno Haible  <bruno@clisp.org>
10696
10697         * m4/longlong.m4: Add comments.
10698         * m4/ulonglong.m4: Likewise.
10699
10700 2006-10-10  Bruno Haible  <bruno@clisp.org>
10701
10702         Make it possible to #define stpcpy, strdup to aliases.
10703         * lib/stpcpy.c (stpcpy) [!_LIBC]: Don't undefine.
10704         * lib/strdup.c (strdup) [!_LIBC]: Don't undefine.
10705
10706 2006-10-10  Bruno Haible  <bruno@clisp.org>
10707
10708         Make it possible to #define gcd to an alias.
10709         * lib/gcd.c: Include config.h.
10710
10711 2006-10-10  Bruno Haible  <bruno@clisp.org>
10712
10713         Make it possible to #define c_isascii to an alias.
10714         * lib/c-ctype.h: Don't define the macros if NO_C_CTYPE_MACROS is
10715         defined. Undefine the macros before defining them, to avoid gcc
10716         warnings.
10717         * lib/c-ctype.c: Include config.h. Don't undefine the macros; instead,
10718         define NO_C_CTYPE_MACROS early.
10719
10720 2006-10-10  Bruno Haible  <bruno@clisp.org>
10721
10722         Make it possible to #define set_program_name to an alias.
10723         * lib/progname.c: Don't undefine set_program_name; instead, undefine
10724         ENABLE_RELOCATABLE early.
10725
10726 2006-10-10  Paul Eggert  <eggert@cs.ucla.edu>
10727
10728         Port to Tandem NSK OSS, which has 64-bit signed int but at most
10729         32-bit unsigned int.  Problem reported by Matthew Woehlke in:
10730         http://lists.gnu.org/archive/html/bug-coreutils/2006-10/msg00062.html
10731         More generally, don't assume that 64-bit signed int is available
10732         if unsigned int is, and vice versa.
10733         * lib/inttypes_.h (_PRIu64_PREFIX, _SCNu64_PREFIX): Depend on
10734         unsigned symbols, not on their signed counterparts.
10735         * lib/stdint_.h (uint64_t, uint_least64_t, uint_fast64_t, uintmax_t):
10736         (UINT64_MAX, UINT_LEAST64_MAX, UINT_FAST64_MAX, UINTMAX_MAX):
10737         (UINT64_C, UINTMAX_C):
10738         Likewise.
10739         * lib/strtoimax.c (strtoll): Depend on signed symbols, not their
10740         unsigned counterparts.
10741         (Have_long_long, Unsigned): New macros.
10742         (Int): Renamed from INT.
10743         (strtoimax): Use the new macros.
10744         * m4/stdint.m4 (gl_STDINT_H): Require AC_TYPE_UNSIGNED_LONG_LONG_INT
10745         and substitute HAVE_UNSIGNED_LONG_LONG_INT.
10746         * modules/inttypes (inttypes.h): Substitute
10747         HAVE_UNSIGNED_LONG_LONG_INT.
10748         * modules/stdint (stdint.h): Likewise.
10749         (Files): Add m4/ulonglong.m4.
10750
10751 2006-10-10  Bruno Haible  <bruno@clisp.org>
10752
10753         Fix a gcc -Wshadow warning.
10754         * lib/gl_anyhash_list2.h (hash_resize): Rename local variable 'index'
10755         to 'bucket'.
10756         * lib/gl_anylinked_list2.h (gl_linked_search_from_to,
10757         gl_linked_indexof_from_to): Likewise.
10758         * lib/gl_linkedhash_list.c (add_to_bucket, remove_from_bucket):
10759         Likewise.
10760         * lib/gl_anytreehash_list1.h (add_to_bucket, remove_from_bucket):
10761         Likewise.
10762         * lib/gl_anytreehash_list2.h (gl_tree_search_from_to): Likewise.
10763         Reported by Eric Blake.
10764
10765 2006-10-09  Paul Eggert  <eggert@cs.ucla.edu>
10766
10767         * lib/filemode.h [HAVE_DECL_STRMODE]: Include unistd.h too,
10768         for NetBSD.  Problem reported by Bruno Haible.
10769
10770 2006-10-09  Jim Meyering  <jim@meyering.net>
10771
10772         * lib/lchown.c: Include <sys/stat.h> before "stat-macros.h".
10773         Patch from Bruno Haible.
10774
10775 2006-10-09  Jim Meyering  <jim@meyering.net>
10776
10777         * lib/fts-cycle.c (leave_dir): When "leaving" a top level directory due
10778         to FTS_SKIP, don't copy the parent's uninitialized dev/ino values.
10779         Trigger with e.g., mkdir d && valgrind ./chmod u+rwx d d
10780
10781 2006-10-08  Paul Eggert  <eggert@cs.ucla.edu>
10782
10783         Don't include <config.h> twice; this doesn't work in some cases,
10784         e.g., when config.h has "#define intmax_t long long int" and
10785         we include <config.h>, <inttypes.h>, <config.h> in that order.
10786         Problem reported by Matthew Woehlke in:
10787         http://lists.gnu.org/archive/html/bug-coreutils/2006-10/msg00073.html
10788         * lib/fprintftime.c: Don't include config.h or fprintftime.h.
10789         * lib/fts-cycle.c: Don't include config.h.
10790         * lib/strftime.c: Include fprintftime.h if FPRINTFTIME is defined.
10791         * lib/xstrtoimax.c: Remove copyright notice since it's short tnow.
10792         Don't include config.h or xstrtol.h.  Define STRTOL_T_MINIMUM
10793         and STRTOL_T_MAXIMUM unconditionally, since we now assume gnulib
10794         inttypes.h.
10795         * lib/xstrtoumax.c: Likewise.
10796         * lib/xstrtol.c: Include config.h and xstrtol.h after defining
10797         __strtol and the like, so that this module is more like its siblings.
10798         (STRTOL_T_MINIMUM, STRTOL_T_MAXIMUM) [! defined STRTOL_T_MINIMUM]:
10799         Remove; no longer needed now that we assume gnulib inttypes.h.
10800
10801 2006-10-08  Bruno Haible  <bruno@clisp.org>
10802
10803         * doc/gnulib-tool.texi: Emphasize the drawbacks of the --symlink
10804         option.
10805
10806 2006-10-07  Jim Meyering  <jim@meyering.net>
10807
10808         * modules/inttypes (inttypes.h): Revert what seems to have been
10809         an inadvertent part of today's change: use "|", not "/" in the
10810         substitution for the "/"-containing string, $(ABSOLUTE_INTTYPES_H).
10811
10812 2006-10-07  Bruno Haible  <bruno@clisp.org>
10813
10814         * modules/sublist: New file.
10815
10816 2006-10-07  Bruno Haible  <bruno@clisp.org>
10817
10818         * modules/alloca-opt (alloca.h): Add a "DO NOT EDIT" comment.
10819         * modules/argz (argz.h): Likewise.
10820         * modules/arpa_inet (arpa/inet.h): Likewise.
10821         * modules/byteswap (byteswap.h): Likewise.
10822         * modules/configmake (configmake.h): Likewise.
10823         * modules/fcntl (fcntl.h): Likewise.
10824         * modules/fnmatch (fnmatch.h): Likewise.
10825         * modules/getopt (getopt.h): Likewise.
10826         * modules/glob (glob.h): Likewise.
10827         * modules/inttypes (inttypes.h): Likewise.
10828         * modules/netinet_in (netinet/in.h): Likewise.
10829         * modules/poll (poll.h): Likewise.
10830         * modules/stdbool (stdbool.h): Likewise.
10831         * modules/stdint (stdint.h): Likewise.
10832         * modules/sys_select (sys/select.h): Likewise.
10833         * modules/sys_socket (sys/socket.h): Likewise.
10834         * modules/sys_stat (sys/stat.h): Likewise.
10835         * modules/sysexits (sysexits.h): Likewise.
10836         * modules/unistd (unistd.h): Likewise.
10837         * gnulib-tool (func_emit_lib_Makefile_am, func_emit_tests_Makefile_am):
10838         Add a "DO NOT EDIT" comment to the generated file.
10839         (func_import): Likewise for gnulib-comp.m4.
10840
10841 2006-10-07  Bruno Haible  <bruno@clisp.org>
10842
10843         * lib/gl_sublist.h: New file.
10844         * lib/gl_sublist.c: New file.
10845
10846 2006-10-06  Paul Eggert  <eggert@cs.ucla.edu>
10847
10848         * lib/mkancesdirs.c (mkancesdirs): Pass to MAKE_DIR both the full file
10849         name (relative to the original working directory) and the file
10850         name component (relative to the temporary working directory).  All
10851         callers changed.
10852         * lib/mkancesdirs.h (mkancesdirs): Adjust prototype to match.
10853         * lib/mkdir-p.c (make_dir_parents): Likewise.
10854         * lib/mkdir-p.h (make_dir_parents): Likewise.
10855
10856 2006-10-06  Eric Blake  <ebb9@byu.net>
10857
10858         Define several macros for use by the clean-temp module.
10859         * m4/close-stream.m4 (gl_CLOSE_STREAM): Define GNULIB_CLOSE_STREAM.
10860         * m4/fcntl-safer.m4 (gl_FCNTL_SAFER): Define GNULIB_FCNTL_SAFER.
10861         * m4/stdio-safer.m4 (gl_FOPEN_SAFER): Define GNULIB_FOPEN_SAFER.
10862
10863         * lib/clean-temp.h (close_stream_temp): New declaration.
10864         * lib/clean-temp.c (includes): Pull in headers according to what
10865         other modules are in use.
10866         (close_stream_temp) [GNULIB_CLOSE_STREAM]: New function.
10867
10868 2006-10-06  Bruno Haible  <bruno@clisp.org>
10869
10870         * lib/javacomp.c (write_temp_file): Use fopen_temp, fwriteerror_temp
10871         instead of fopen, fwriteerror.
10872
10873 2006-10-06  Bruno Haible  <bruno@clisp.org>
10874
10875         * lib/clean-temp.h (cleanup_temp_file, cleanup_temp_subdir,
10876         cleanup_temp_dir_contents, cleanup_temp_dir): Change return type to
10877         int.
10878         * lib/clean-temp.c (do_unlink, do_rmdir, cleanup_temp_file,
10879         cleanup_temp_subdir, cleanup_temp_dir_contents, cleanup_temp_dir):
10880         Return an error indicator.
10881         Suggested by Eric Blake.
10882
10883 2006-10-06  Bruno Haible  <bruno@clisp.org>
10884
10885         * lib/clean-temp.c (PATH_MAX): Provide a fallback for GNU Hurd.
10886         Reported by Eric Blake.
10887
10888 2006-10-06  Bruno Haible  <bruno@clisp.org>
10889
10890         * modules/closeout (Description): Mention stderr too.
10891
10892 2006-10-06  Bruno Haible  <bruno@clisp.org>
10893         and Paul Eggert  <eggert@cs.ucla.edu>
10894
10895         * lib/closeout.c (close_stdout): Also close stderr.
10896         * lib/closeout.h: Update comment.
10897
10898 2006-10-05  Paul Eggert  <eggert@cs.ucla.edu>
10899
10900         Fix some Darwin-7.9.0 porting problems reported by Bruno Haible in
10901         <http://lists.gnu.org/archive/html/bug-coreutils/2006-10/msg00063.html>.
10902         * lib/dirchownmod.c: Include lchown.h.
10903         * lib/lchown.c: Don't include files that lchown.h now includes.
10904         Don't declare chown, since lchown.h now does that.
10905         * lib/lchown.h: Include errno.h, sys/types.h, unistd.h.
10906         (lchown): Define to rpl_chown if lchown is declared but
10907         does not exist.  Declare using a prototype if lchown is not
10908         declared.  Add a copyright notice.
10909         * lib/mkstemp.h: Include <unistd.h>.
10910         * lib/openat.c: Include lchown.h.
10911
10912         * lib/fcntl_.h (O_NOFOLLOW): Don't depend on O_NOFOLLOW_IS_INEFFECTIVE;
10913         we now test for that separately.
10914         * lib/fts.c (fts_safe_changedir): Inspect HAVE_WORKING_O_NOFOLLOW
10915         rather than O_NOFOLLOW, when testing whether it's possible to
10916         avoid a race condition reliably.
10917         * lib/savewd.c (savewd_chdir): Likewise.
10918
10919         Remove macros that are no longer needed now that stdint.h is
10920         reliable.
10921         * lib/fsusage.c (UINTMAX_MAX): Remove.
10922         * lib/human.c (SIZE_MAX, UINTMAX_MAX): Remove.
10923         * lib/utimecmp.c (SIZE_MAX): Remove.
10924
10925         * m4/lchown.m4 (gl_FUNC_LCHOWN): Check whether lchown is declared.
10926
10927         * m4/fcntl_h.m4 (gl_FCNTL_H): Define HAVE_WORKING_O_NOFOLLOW instead
10928         of O_NOFOLLOW_IS_INEFFECTIVE.  Define HAVE_WORKING_O_NOATIME if
10929         O_NOATIME works.
10930
10931 2006-10-05  Bruno Haible  <bruno@clisp.org>
10932
10933         * lib/gl_list.h (gl_sortedlist_search_from_to,
10934         gl_sortedlist_indexof_from_to): New declarations.
10935         (gl_list_implementation): New fields sortedlist_search_from_to,
10936         sortedlist_indexof_from_to.
10937         (gl_sortedlist_search_from_to, gl_sortedlist_indexof_from_to): New
10938         inline functions.
10939         * lib/gl_list.c (gl_sortedlist_search_from_to,
10940         gl_sortedlist_indexof_from_to): New functions.
10941         * lib/gl_array_list.c (gl_array_sortedlist_indexof_from_to): New
10942         function.
10943         (gl_array_sortedlist_indexof, gl_array_sortedlist_search): Use it.
10944         (gl_array_sortedlist_search_from_to): New function.
10945         (gl_array_list_implementation): Update.
10946         * lib/gl_carray_list.c (gl_carray_sortedlist_indexof_from_to): New
10947         function.
10948         (gl_carray_sortedlist_indexof, gl_carray_sortedlist_search): Use it.
10949         (gl_carray_sortedlist_search_from_to): New function.
10950         (gl_carray_list_implementation): Update.
10951         * lib/gl_anylinked_list2.h (gl_linked_sortedlist_search_from_to,
10952         gl_linked_sortedlist_indexof_from_to): New functions.
10953         * lib/gl_linked_list.c (gl_linked_list_implementation): Update.
10954         * lib/gl_linkedhash_list.c (gl_linkedhash_list_implementation): Update.
10955         * lib/gl_anytree_list2.h (gl_tree_sortedlist_search_from_to,
10956         gl_tree_sortedlist_indexof_from_to): New functions.
10957         * lib/gl_avltree_list.c (gl_avltree_list_implementation): Update.
10958         * lib/gl_avltreehash_list.c (gl_avltreehash_list_implementation):
10959         Update.
10960         * lib/gl_rbtree_list.c (gl_rbtree_list_implementation): Update.
10961         * lib/gl_rbtreehash_list.c (gl_avltreehash_list_implementation):
10962         Update.
10963
10964 2006-10-05  Bruno Haible  <bruno@clisp.org>
10965
10966         * lib/gl_list.h (gl_list_search_from, gl_list_search_from_to,
10967         gl_list_indexof_from, gl_list_indexof_from_to): New declarations.
10968         (struct gl_list_implementation): Add fields search_from_to,
10969         indexof_from_to. Remove fields search, indexof.
10970         (gl_list_search): Use the search_from_to method.
10971         (gl_list_search_from, gl_list_search_from_to): New functions.
10972         (gl_list_indexof): Use the indexof_from_to method.
10973         (gl_list_indexof_from, gl_list_indexof_from_to): New functions.
10974         * lib/gl_list.c (gl_list_search): Use the search_from_to method.
10975         (gl_list_search_from, gl_list_search_from_to): New functions.
10976         (gl_list_indexof): Use the indexof_from_to method.
10977         (gl_list_indexof_from, gl_list_indexof_from_to): New functions.
10978         * lib/gl_array_list.c (gl_array_indexof_from_to): Renamed from
10979         gl_array_indexof. Add start_index, end_index arguments.
10980         (gl_array_search_from_to): Renamed from gl_array_search. Add
10981         start_index, end_index arguments.
10982         (gl_array_remove, gl_array_list_implementation): Update.
10983         * lib/gl_carray_list.c (gl_carray_indexof_from_to): Renamed from
10984         gl_carray_indexof. Add start_index, end_index arguments.
10985         (gl_carray_search_from_to): Renamed from gl_carray_search. Add
10986         start_index, end_index arguments.
10987         (gl_carray_remove, gl_carray_list_implementation): Update.
10988         * lib/gl_anylinked_list2.h (gl_linked_search_from_to): Renamed from
10989         gl_linked_search. Add start_index, end_index arguments.
10990         (gl_linked_indexof_from_to): Renamed from gl_linked_indexof. Add
10991         start_index, end_index arguments.
10992         (gl_linked_remove): Update.
10993         * lib/gl_linked_list.c (gl_linked_list_implementation): Update.
10994         * lib/gl_linkedhash_list.c (gl_linkedhash_list_implementation): Update.
10995         * lib/gl_anytree_list1.h (iterstack_item_t): Change type of 'rightp'
10996         field to 'size_t'.
10997         * lib/gl_anytree_list2.h (gl_tree_search_from_to): Renamed from
10998         gl_tree_search. Add start_index, end_index arguments.
10999         (gl_tree_indexof_from_to): Renamed from gl_tree_indexof. Add
11000         start_index, end_index arguments.
11001         (gl_tree_remove): Update.
11002         * lib/gl_avltree_list.c (gl_avltree_list_implementation): Update.
11003         * lib/gl_rbtree_list.c (gl_rbtree_list_implementation): Update.
11004         * lib/gl_anytreehash_list1.h (compare_position_threshold): New
11005         function.
11006         * lib/gl_anytreehash_list2.h (gl_tree_search_from_to): Renamed from
11007         gl_tree_search. Add start_index, end_index arguments.
11008         (gl_tree_indexof_from_to): Renamed from gl_tree_indexof. Add
11009         start_index, end_index arguments.
11010         * lib/gl_avltreehash_list.c (gl_avltreehash_list_implementation):
11011         Update.
11012         * lib/gl_rbtreehash_list.c (gl_rbtreehash_list_implementation): Update.
11013
11014 2006-10-05  Bruno Haible  <bruno@clisp.org>
11015
11016         * modules/fwriteerror (configure.ac): Define GNULIB_FWRITEERROR.
11017
11018         * lib/clean-temp.h (open_temp, fopen_temp, close_temp, fclose_temp,
11019         fwriteerror_temp): New declarations.
11020         * lib/clean-temp.c (uintptr_t): Provide fallback definition.
11021         (descriptors): New variable.
11022         (cleanup): First, close the descriptors.
11023         (register_fd, unregister_fd, open_temp, fopen_temp, close_temp,
11024         fclose_temp, fwriteerror_temp): New functions.
11025
11026 2006-10-04  Jim Meyering  <jim@meyering.net>
11027
11028         * lib/fts.c (fts_open): Tiny comment change.
11029
11030 2006-10-04  Bruno Haible  <bruno@clisp.org>
11031
11032         Make it possible to invoke AC_GNU_SOURCE after gl_LOCK_EARLY.
11033         * m4/lock.m4 (gl_LOCK_EARLY_BODY): New macro, extracted code from
11034         gl_LOCK_BODY.
11035         (gl_LOCK_EARLY): Require gl_LOCK_EARLY_BODY, not gl_LOCK_BODY.
11036         (gl_LOCK_BODY): Remove settings of CPPFLAGS, now done in
11037         gl_LOCK_EARLY_BODY.
11038         (gl_LOCK): Require gl_LOCK_BODY.
11039
11040 2006-10-04  Bruno Haible  <bruno@clisp.org>
11041
11042         * lib/gl_oset.h (gl_setelement_threshold_fn): New type.
11043         (gl_oset_search_atleast): New declaration.
11044         (struct gl_oset_implementation): Add field 'search_atleast'.
11045         (gl_oset_search_atleast): New inline function.
11046         * lib/gl_oset.c (gl_oset_search_atleast): New function.
11047         * lib/gl_array_oset.c (gl_array_search_atleast): New function.
11048         (gl_array_oset_implementation): Update.
11049         * lib/gl_anytree_oset.h (gl_tree_search_atleast): New function.
11050         * lib/gl_avltree_oset.c (gl_avltree_oset_implementation): Update.
11051         * lib/gl_rbtree_oset.c (gl_rbtree_oset_implementation): Update.
11052
11053 2006-10-04  Bruno Haible  <bruno@clisp.org>
11054
11055         * lib/fatal-signal.c (fatal_signals) [WOE32]: Add the SIGBREAK signal.
11056
11057 2006-10-03  Bruno Haible  <bruno@clisp.org>
11058
11059         * lib/gl_rbtreehash_list.c (gl_rbtreehash_list_implementation): Renamed
11060         from gl_avltreehash_list_implementation.
11061
11062 2006-10-03  Bruno Haible  <bruno@clisp.org>
11063
11064         * lib/gl_oset.c (gl_oset_add): Fix return type.
11065
11066 2006-10-02  Paolo Bonzini  <bonzini@gnu.org>  (tiny change)
11067
11068         * lib/quotearg.c (mbstate_t) [!HAVE_MBRTOWC]: #define to int.
11069
11070 2006-10-02  Eric Blake  <ebb9@byu.net>
11071
11072         * modules/strnlen (Depends-on): Add extensions.
11073
11074 2006-10-02  Eric Blake  <ebb9@byu.net>
11075
11076         * m4/extensions.m4 (gl_USE_SYSTEM_EXTENSIONS): Use autoconf's
11077         definition in 2.60+.
11078
11079 2006-10-02  Dmitry V. Levin  <ldv@altlinux.org>
11080
11081         * lib/fts.c (fts_close, fts_build, fts_palloc): Remove redundant
11082         checks.
11083
11084 2006-10-02  Bruno Haible  <bruno@clisp.org>
11085
11086         * gnulib-tool (func_emit_lib_Makefile_am): Don't add no-dependencies
11087         to the AUTOMAKE_OPTIONS.
11088         Reported by Jim Meyering.
11089
11090 2006-09-29  Paul Eggert  <eggert@cs.ucla.edu>
11091
11092         Work around bug in Solaris 10 /proc file system:
11093         /proc/self/fd/NNN/.. isn't the parent directory of
11094         the directory whose file descriptor is NNN.  This needs to
11095         be worked around at run time, not compile time, since a
11096         program might be built on Solaris 8, where things work, and
11097         run on Solaris 10.
11098         * lib/openat-priv.h (BUILD_PROC_NAME): Remove.  All callers changed
11099         to use the following interface instead:
11100         (OPENAT_BUFFER_SIZE): New macro.
11101         (openat_proc_name): New function.
11102         * lib/at-func.c (AT_FUNC_NAME): Adjust to above changes.
11103         * lib/openat.c (openat_permissive, openat_needs_fchdir, fdopendir):
11104         Likewise.
11105         * lib/openat-proc.c: New file.
11106         * modules/openat (Files): Add lib/openat-proc.c.
11107         (Depends-on): Add same-inode, stdbool.
11108         * m4/openat.m4 (gl_FUNC_OPENAT): Add AC_LIBOBJ(openat-proc).
11109
11110 2006-09-29  Bruno Haible  <bruno@clisp.org>
11111
11112         * lib/fwriteerror.h (fwriteerror_no_ebadf): New declaration.
11113         * lib/(do_fwriteerror): Renamed from fwriteerror. Add ignore_ebadf
11114         argument. Set stdout_closed before testing for ferror, not after.
11115         (fwriteerror, fwriteerror_no_ebadf): New functions.
11116
11117 2006-09-28  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
11118
11119         * m4/intmax.m4 (gt_TYPE_INTMAX_T): Avoid unused variables warning.
11120
11121 2006-09-28  Paolo Bonzini  <bonzini@gnu.org>
11122
11123         * lib/poll.c (rpl_poll) [__APPLE__]: Use FIONREAD instead of MSG_PEEK.
11124         * m4/poll.m4: Look for sys/ioctl.h and sys/filio.h.
11125
11126 2006-09-28  Jim Meyering  <jim@meyering.net>
11127
11128         * lib/mkdir-p.c: Include "dirchownmod.h", not "dirchownmod.c".
11129         Include <unistd.h>.
11130
11131 2006-09-28  Bruno Haible  <bruno@clisp.org>
11132
11133         * modules/avltreehash-list (Depends-on): Add stdint, remove size_max.
11134         * modules/linkedhash-list (Depends-on): Likewise.
11135         * modules/rbtreehash-list (Depends-on): Likewise.
11136
11137 2006-09-28  Bruno Haible  <bruno@clisp.org>
11138
11139         * lib/strndup.h: Simplify the redefinition of strndup.
11140         (_GL_CONCAT, _GL_XCONCAT, __STRNDUP_ID): Remove macros.
11141         * m4/strndup.m4 (gl_FUNC_STRNDUP): Don't define __STRNDUP_PREFIX.
11142
11143 2006-09-28  Bruno Haible  <bruno@clisp.org>
11144
11145         * lib/gl_avltreehash_list.c: Include <stdint.h> instead of size_max.h.
11146         * lib/gl_linkedhash_list.c: Likewise.
11147         * lib/gl_rbtreehash_list.c: Likewise.
11148
11149 2006-09-27  Paul Eggert  <eggert@cs.ucla.edu>
11150
11151         * lib/canon-host.c (canon_host_r): Work around bug in Darwin 7.9.0
11152         getaddrinfo.
11153
11154         * lib/__fpending.h: Don't include <stdio_ext.h> unless
11155         HAVE_DECL___FPENDING.  This avoids a bug with lsbcc, where
11156         it causes <stdio_ext.h> to cause a compile-time error.
11157         Problem reported by Nelson H. F. Beebe.
11158         * lib/getpass.c: Likewise, except for HAVE_DECL___FSETLOCKING instead
11159         of HAVE_DECL___PENDING.
11160
11161         * m4/fpending.m4 (gl_FUNC_FPENDING): Check for stdio_ext at most once.
11162         * m4/getpass.m4 (gl_PREREQ_GETPASS): Check for __fsetlocking's
11163         declaration.
11164
11165 2006-09-27  Jim Meyering  <jim@meyering.net>
11166
11167         This file could end up with a definition for a function
11168         named __strndup, rather than rpl_strndup on a system with
11169         incomplete weak_alias support.
11170         * lib/strndup.c (strndup): Rename from __strndup.
11171         Remove #defines that used to map __strndup to strndup.
11172         Don't use K&R prototypes.
11173         Remove LIBC-related code, since this file is not sync'd with glibc.
11174         * lib/strndup.h: Revamp, accordingly.
11175         * m4/strndup.m4: Modernize.
11176
11177 2006-09-26  Paul Eggert  <eggert@cs.ucla.edu>
11178
11179         * modules/savewd (Depends-on): Add 'raise'.
11180         * lib/savewd.c: Include <signal.h>, for 'raise'.
11181
11182 2006-09-26  Jim Meyering  <jim@meyering.net>
11183
11184         * m4/acl.m4 (AC_FUNC_ACL): Disable ACL support altogether
11185         when we detect Darwin 8.7.0's acl_get_file bug.
11186         Rearrange to perform the new (below) run-test while $LIBS
11187         contains any acl-related library.  Set USE_ACL at the end.
11188         (gl_ACL_GET_FILE): New function.
11189
11190 2006-09-26  Eric Blake  <ebb9@byu.net>
11191
11192         * lib/verror.c: Include <config.h> unconditionally.
11193
11194 2006-09-25  Paul Eggert  <eggert@cs.ucla.edu>
11195
11196         * modules/clock-time (Maintainer): Add self.
11197         * modules/getlogin_r (Depends-on): Add extensions.
11198
11199 2006-09-25  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
11200
11201         * modules/clock-time: New module.
11202         * modules/nanosleep (Depends-on): Add clock-time.
11203         * modules/gethrxtime (Depends-on): Likewise.
11204         * modules/gettime (Depends-on): Likewise.
11205         * modules/settime (Depends-on): Likewise.
11206
11207         * modules/fts-lgpl: Depend on openat.
11208         * modules/mkancesdirs: Depend on savewd.
11209         * modules/mkdir-p: Likewise.
11210
11211 2006-09-25  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
11212
11213         * m4/host-os.m4 (gl_HOST_OS): Require AC_CANONICAL_HOST.
11214
11215         * m4/chdir-long.m4 (gl_FUNC_CHDIR_LONG): Rename cache variable from
11216         `gl_have_arbitrary_file_name_length_limit' to
11217         `gl_cv_have_arbitrary_file_name_length_limit', so that caching
11218         actually works between configure runs.
11219
11220 2006-09-25  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
11221             Bruno Haible  <bruno@clisp.org>
11222
11223         * m4/stpncpy.m4 (gl_FUNC_STPNCPY): Include <string.h>.
11224
11225 2006-09-25  Jim Meyering  <jim@meyering.net>
11226
11227         * m4/fcntl_h.m4 (gl_FCNTL_H): Fix typo in test for failed open.
11228         This typo caused coreutils/tests/dd/misc to fail on Darwin 8.7.0.
11229
11230 2006-09-25  Eric Blake  <ebb9@byu.net>
11231
11232         * gnulib-tool (func_import, func_create_testdir): Fix typos in
11233         exec's in 2006-09-18 patch when shuffling fds.
11234
11235 2006-09-25  Bruno Haible  <bruno@clisp.org>
11236
11237         * m4/getloadavg.m4 (gl_GETLOADAVG): Fix directory in error message.
11238         Reported by Jim Meyering.
11239
11240 2006-09-24  Jim Meyering  <jim@meyering.net>
11241
11242         * m4/ls-mntd-fs.m4 (gl_LIST_MOUNTED_FILE_SYSTEMS): Don't use '>' to
11243         compare a pointer against a literal "0".  That caused failures with
11244         at least HP-UX's hpcc.
11245
11246 2006-09-22  Simon Josefsson  <jas@extundo.com>
11247
11248         * modules/gc-sha1:
11249         * modules/gc-md4:
11250         * modules/gc-hmac-sha1:
11251         * modules/gc-hmac-md5:
11252         * modules/gc-des:
11253         * modules/gc-arcfour: Distribute more files.
11254
11255 2006-09-22  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
11256
11257         * lib/gl_anylinked_list2.h [lint] (gl_linked_iterator)
11258         (gl_linked_iterator_from_to): Initialize struct completely.
11259         * lib/gl_anytree_list2.h [lint] (gl_tree_iterator): Likewise.
11260         (gl_tree_iterator_from_to): Likewise
11261         * lib/gl_anytree_oset.h [lint] (gl_tree_iterator): Likewise.
11262         * lib/gl_array_list.c [lint] (gl_array_iterator)
11263         (gl_array_iterator_from_to): Likewise.
11264         * lib/gl_array_oset.c [lint] (gl_array_iterator): Likewise.
11265         * lib/gl_carray_list.c [lint] (gl_carray_iterator)
11266         (gl_carray_iterator_from_to): Likewise.
11267
11268         * lib/gc-gnulib.c [GC_USE_HMAC_SHA1]: include hmac.h for hmac_sha1.
11269         * lib/md4.c (md4_process_block): Remove unused variable.
11270         * lib/rijndael-api-fst.c (rijndaelBlockDecrypt): GCC suggests
11271         parentheses for clarity.
11272
11273 2006-09-22  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
11274
11275         * modules/bison-i18n (Depends-on): Add gettext.
11276
11277 2006-09-22  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
11278
11279         * m4/fsusage.m4 (gl_STATFS_TRUNCATES): Avoid unused variable.
11280         * m4/getdate.m4 (gl_C_COMPOUND_LITERALS): Likewise.
11281         * m4/jm-winsz1.m4 (gl_HEADER_TIOCGWINSZ_IN_TERMIOS_H): Likewise;
11282         also add missing comma that caused broken test.
11283         * m4/link-follow.m4 (gl_AC_FUNC_LINK_FOLLOWS_SYMLINK): Include
11284         stdlib.h, for `abort'.
11285         * m4/ls-mntd-fs.m4 (gl_LIST_MOUNTED_FILE_SYSTEMS): Avoid unused
11286         variables.
11287         * m4/mkdir-slash.m4 (gl_FUNC_MKDIR_TRAILING_SLASH): Check for and
11288         include unistd.h if present, for `rmdir'.
11289         * m4/physmem.m4 (gl_SYS__SYSTEM_CONFIGURATION): Avoid unused
11290         variables.
11291         * m4/putenv.m4 (gl_FUNC_PUTENV): Rewrite using AC_RUN_IFELSE, and
11292         in the process include standard headers for prototypes.
11293         * m4/readutmp.m4 (gl_READUTMP): Require AC_GNU_SOURCE, so utmpxname
11294         gets declared on GNU/Linux.
11295         * m4/rmdir-errno.m4 (gl_FUNC_RMDIR_NOTEMPTY): Check for and include
11296         unistd.h, for `rmdir'.
11297         * m4/time_r.m4 (gl_TIME_R): Avoid unused variables.
11298
11299         * m4/fnmatch.m4 (_AC_FUNC_FNMATCH_IF): Avoid expression that is
11300         always true.
11301         * m4/strndup.m4 (gl_FUNC_STRNDUP): include stdlib.h, for `free'.
11302
11303         * m4/sockpfaf.m4 (gl_SOCKET_FAMILIES): Avoid gcc -Wall warnings.
11304
11305 2006-09-22  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
11306
11307         * gnulib-tool (func_version): Create output all at once.  This
11308         may help avoid triggering unnecessary SIGPIPEs, and at any
11309         rate it doesn't hurt.
11310
11311 2006-09-22  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
11312             Bruno Haible  <bruno@clisp.org>
11313
11314         * m4/lock.m4 (gl_LOCK_BODY): Avoid unused variables warning.
11315         * m4/mbswidth.m4 (gl_MBSWIDTH): Likewise.
11316         * m4/signed.m4 (bh_C_SIGNED): Likewise.
11317
11318         * m4/vasprintf.m4 (gl_PREREQ_VASPRINTF_H): New macro.
11319         (gl_FUNC_VASPRINTF): Invoke it.
11320
11321 2006-09-22  Bruno Haible  <bruno@clisp.org>
11322
11323         * m4/getloadavg.m4 (gl_GETLOADAVG): Expect the directory of
11324         getloadavg.c as first argument.
11325
11326 2006-09-22  Bruno Haible  <bruno@clisp.org>
11327
11328         * gnulib-tool (func_import, func_create_testdir): Set gl_source_base
11329         at the beginning of the gl_INIT macro.
11330         * modules/getloadavg (configure.ac): Pass $gl_source_base to
11331         gl_GETLOADAVG.
11332
11333 2006-09-22  Bruno Haible  <bruno@clisp.org>
11334
11335         * gnulib-tool (func_create_megatestdir): Don't include the config-h
11336         module.
11337         Suggested by Ralf Wildenhues.
11338
11339 2006-09-20  Paul Eggert  <eggert@cs.ucla.edu>
11340
11341         Import this patch from libc:
11342
11343         2006-09-06  Jakub Jelinek  <jakub@redhat.com>
11344
11345         * lib/regex_internal.c (re_string_reconstruct): Handle
11346         offset < pstr->valid_raw_len && pstr->offsets_needed case.
11347         Ensure no bytes read before raw_mbs array.  Pass a saved copy of
11348         pstr->valid_len - 1 rather than pstr->valid_raw_len - 1 to
11349         re_string_context_at.
11350
11351         * m4/regex.m4 (gl_REGEX): Check for locale.h, since the test
11352         now requires it.
11353         (gl_PREREQ_REGEX): Don't check for locale.h any more, since
11354         gl_REGEX now does it for us.
11355         (gl_REGEX): Add test taken from
11356         http://sourceware.org/ml/libc-hacker/2006-09/msg00008.html.
11357
11358         * m4/mkstemp.m4 (gl_FUNC_MKSTEMP): Require AC_SYS_LARGEFILE.
11359         Check that large offsets work.  Modernize Autoconf usages.
11360         Prefer "yes" to mean a good thing rather than a bad.
11361         Don't put "#define mkstemp" in config.h, as this might interfere
11362         with standard system headers that "#define mkstemp mkstemp64".
11363
11364         * modules/mkstemp (Depends-on): Add extensions, so that
11365         mkstemp is visible on some platforms.
11366         (Makefile.am): Add mkstemp.h to EXTRA_DIST.
11367         (Include): Change to "mkstemp.h" from <stdlib.h>.
11368         (Files): Add mkstemp.h.
11369
11370         * lib/mkstemp.h: New file, since some standard headers
11371         #define mkstemp.
11372         * lib/mkstemp.c: Revamp to put the !_LIBC code together.
11373         Include "mkstemp.h".
11374         Make the _LIBC code resemble glibc original more,
11375         e.g., use K&R style.
11376         * lib/mkstemp-safer.c: Include "mkstemp.h" instead of <stdlib.h>.
11377         (mkstemp): Remove, since mkstemp.h does this for us.
11378         * lib/stdlib--.h: Include mkstemp.h.
11379
11380         Import this patch from libc:
11381
11382         2006-04-07  Ulrich Drepper  <drepper@redhat.com>
11383
11384         * lib/tempname.c (__gen_tempname): Change attempts_min
11385         into a macro.  Use preprocessor to decide how to initialize
11386         attempts [Coverity CID 67].
11387
11388 2006-09-20  Bruno Haible  <bruno@clisp.org>
11389
11390         * lib/mkdtemp.c: Import from libc.
11391         2006-04-07  Ulrich Drepper  <drepper@redhat.com>
11392                 * sysdeps/posix/tempname.c (__gen_tempname): Change
11393                 attempts_min into a macro.  Use preprocessor to decide how to
11394                 initialize attempts [Coverity CID 67].
11395         2001-11-27  Paul Eggert  <eggert@twinsun.com>
11396                 * sysdeps/posix/tempname.c (__gen_tempname): Try at least
11397                 ATTEMPTS_MIN or TMP_MAX times, whichever is greater.
11398
11399 2006-09-19  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
11400
11401         * gnulib-tool (func_exit): New function, to allow to pass the
11402         exit status portably through the trap.  Use everywhere.
11403         (--help, --version): Signal a write error.
11404         (trap): catch SIGPIPE, for write errors.
11405         Exit at the end of the trap, with the correct exit status.
11406
11407 2006-09-19  Karl Berry  <karl@gnu.org>
11408
11409         * doc/gnulib.texi: note about the license texinfo files.
11410
11411 2006-09-19  Eric Blake  <ebb9@byu.net>
11412
11413         * gnulib-tool: Avoid space-tab.
11414
11415 2006-09-18  Paul Eggert  <eggert@cs.ucla.edu>
11416
11417         * lib/getaddrinfo.c (getaddrinfo) [defined HAVE_IPV6]: Fix typo
11418         that prevented coreutils 6.1 from building.  Problem reported
11419         by Petter Reinholdtsen.
11420
11421 2006-09-18  Paul Eggert  <eggert@cs.ucla.edu>
11422
11423         * gnulib-tool (avoidlist): Fix typo that broke options like
11424         --avoid=lock that are used by coreutils bootstrap.
11425
11426 2006-09-18  Mark D. Baushke  <mdb@gnu.org>
11427
11428         * m4/inttypes.m4 (gl_INTTYPES_H): Quote "test" args
11429         more systematically.
11430
11431 2006-09-18  Jim Meyering  <jim@meyering.net>
11432
11433         * lib/savewd.c (savewd_restore): Don't shadow: s/status/child_status/.
11434
11435 2006-09-18  Bruno Haible  <bruno@clisp.org>
11436
11437         * modules/inttypes (Files): Remove m4/inttypes-h.m4.
11438
11439 2006-09-18  Bruno Haible  <bruno@clisp.org>
11440
11441         * m4/inttypes-h.m4 (gl_HEADER_INTTYPES_H): Remove macro.
11442         * m4/inttypes-pri.m4: Require autoconf >= 2.52.
11443         (gt_INTTYPES_PRI): Invoke AC_CHECK_HEADERS on inttypes.h. Test
11444         ac_cv_header_inttypes_h instead of gl_cv_header_inttypes_h.
11445         * m4/gettext.m4: Require autoconf >= 2.52.
11446         (gt_INTL_SUBDIR_CORE): Invoke AC_CHECK_HEADERS on inttypes.h.
11447         * m4/inttypes.m4 (gl_INTTYPES_H): Test ac_cv_header_inttypes_h instead
11448         of gl_cv_header_inttypes_h.
11449
11450 2006-09-18  Bruno Haible  <bruno@clisp.org>
11451
11452         * lib/javaversion.c: Include configmake.h.
11453
11454 2006-09-18  Bruno Haible  <bruno@clisp.org>
11455
11456         * gnulib-tool (func_import, func_create_testdir): Use exec tricks to
11457         avoid that the while loops be executed in a subshell.
11458
11459 2006-09-18  Bruno Haible  <bruno@clisp.org>
11460
11461         * MODULES.html.sh (func_module): Break long lines.
11462         Suggested by Bruce Korb <bkorb@gnu.org>.
11463
11464 2006-09-17  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
11465
11466         Speed up by a factor of 1.12.
11467         * gnulib-tool (nl): New variable.
11468         (func_import): Rewrite include directive extraction to only read each
11469         directive once.
11470
11471 2006-09-17  Bruno Haible  <bruno@clisp.org>
11472
11473         * modules/javaversion (Makefile.am): Remove DEFS setting.
11474         (Depends-on): Add configmake, for PKGDATADIR definition.
11475
11476 2006-09-17  Bruno Haible  <bruno@clisp.org>
11477
11478         * gnulib-tool (func_create_testdir): Rewrite all files at once.
11479
11480 2006-09-17  Bruno Haible  <bruno@clisp.org>
11481
11482         * gnulib-tool (func_append): New function, stolen from libtool.m4.
11483         (func_modules_transitive_closure, func_modules_add_dummy,
11484         func_modules_to_filelist, func_import, func_create_testdir,
11485         func_create_megatestdir, ...): Use it wherever possible.
11486         Suggested by Ralf Wildenhues.
11487
11488 2006-09-16  Karl Berry  <karl@gnu.org>
11489
11490         * doc/fdl.texi (ADDENDUM): switch to @heading from @appendixsubsec,
11491         to avoid sectioning errors.
11492         * doc/lgpl.texi, gpl.texi (Copying): downcase @unnumbered title.
11493         [ifinfo]: blank line after @center-ed titles.
11494         * doc/lgpl.texi (Library Copying): Rename main node to GNU LGPL.
11495         Spell FSF address consistently with others.
11496         (These changes approved by rms.)
11497
11498 2006-09-15  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
11499
11500         Speed up by a factor of 1.61.
11501         * gnulib-tool (func_modules_transitive_closure): Rewrite to not check
11502         already checked module names again.
11503
11504 2006-09-15  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
11505
11506         Speed up by a factor of 1.13.
11507         * gnulib-tool (func_import): Rewrite all old_files at once; likewise
11508         for new_files, and the input to func_add_or_update.
11509
11510 2006-09-15  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
11511
11512         * gnulib-tool (func_all_modules, func_modules_to_filelist, func_import,
11513         func_create_testdir, ...): Change 'sort | uniq' to 'sort -u'.
11514
11515 2006-09-15  Paul Eggert  <eggert@cs.ucla.edu>
11516
11517         * modules/mkancesdirs (Depends-on): Add fcntl.
11518         * modules/savewd: New file.
11519         * MODULES.html.sh (File system functions): Add savewd.
11520
11521         * modules/configmake (Makefile.am): Add support for the
11522         Automake-supplied PKGLIBDIR, PKGINCLUDEDIR, PKGDATADIR.
11523
11524 2006-09-15  Paul Eggert  <eggert@cs.ucla.edu>
11525
11526         * m4/savewd.m4: New file.
11527
11528 2006-09-15  Paul Eggert  <eggert@cs.ucla.edu>
11529
11530         * lib/dirchownmod.c: Don't include fcntl.h; no longer needed.
11531         (dirchownmod): New arg FD.  All callers changed.
11532         Use FD rather than opening the directory ourself, as opening is
11533         now the caller's responsibility.
11534         * lib/dirchownmod.h: Likewise.
11535         * lib/mkancesdirs.c: Include <sys/types.h>, for portability to older
11536         hosts that require <sys/types.h> before <sys/stat.h>.  Include
11537         fcntl.h, savewd.h, and unistd.h, not dirname.h and stat-macros.h.
11538         (test_dir): Remove.
11539         (mkancesdirs): Return length of prefix of FILE that has already
11540         been made, or -2 if there is a child doing the work.  Redo
11541         algorithm so that it is O(N) rather than O(N**2).  Optimize away
11542         ".", and treat ".." specially since it might stray back into
11543         already-created areas.  Use a subprocess if necessary.  New arg
11544         WD; all users changed.  MAKE_DIR function should now return 1
11545         if it creates a directory that is not readable.  Return -2 if
11546         a child process is spun off.
11547         * lib/mkancesdirs.h: Include <stddef.h>, for ptrdiff_t.
11548         Adjust signature to match code.
11549         * lib/mkdir-p.c: Include dirname.h, for IS_ABSOLUTE_FILE_NAME.
11550         (make_dir_parents): Use a subprocess if necessary.  New arg WD;
11551         all users changed.
11552         * lib/savewd.c, lib/savewd.h: New files.
11553
11554 2006-09-15  Jim Meyering  <jim@meyering.net>
11555
11556         * modules/rename-dest-slash: New module.
11557         * MODULES.html.sh (posix_compat): Add it here.
11558
11559         * modules/rename: Reflect vb_FUNC_RENAME -> gl_FUNC_RENAME change.
11560
11561 2006-09-15  Jim Meyering  <jim@meyering.net>
11562
11563         * m4/rename-dest-slash.m4 (gl_FUNC_RENAME_TRAILING_DEST_SLASH): New
11564         file.
11565
11566         * m4/rename.m4 (gl_FUNC_RENAME): Rename from vb_FUNC_RENAME.
11567
11568 2006-09-15  Jim Meyering  <jim@meyering.net>
11569
11570         * lib/rename-dest-slash.c (has_trailing_slash): Use
11571         FILE_SYSTEM_PREFIX_LEN, for non-POSIX systems.
11572         (rpl_rename_dest_slash): Perform the cheaper trailing slash
11573         test before testing whether SRC is a directory.
11574         Suggestions from Bruno Haible.
11575
11576         Avoid a warning about an unused variable.
11577         * lib/regex_internal.c (re_dfa_add_node): Move declaration of "type"
11578         into the #ifdef block where it's used.
11579
11580         * lib/rename-dest-slash.c: New file.
11581
11582 2006-09-14  Bruno Haible  <bruno@clisp.org>
11583
11584         * lib/allocsa.c: Include <config.h> unconditionally.
11585         * lib/asnprintf.c: Likewise.
11586         * lib/asprintf.c: Likewise.
11587         * lib/c-strcasecmp.c: Likewise.
11588         * lib/c-strcasestr.c: Likewise.
11589         * lib/c-strncasecmp.c: Likewise.
11590         * lib/c-strstr.c: Likewise.
11591         * lib/classpath.c: Likewise.
11592         * lib/clean-temp.c: Likewise.
11593         * lib/concatpath.c: Likewise.
11594         * lib/copy-file.c: Likewise.
11595         * lib/csharpcomp.c: Likewise.
11596         * lib/csharpexec.c: Likewise.
11597         * lib/execute.c: Likewise.
11598         * lib/fatal-signal.c: Likewise.
11599         * lib/findprog.c: Likewise.
11600         * lib/fwriteerror.c: Likewise.
11601         * lib/gl_array_list.c: Likewise.
11602         * lib/gl_array_oset.c: Likewise.
11603         * lib/gl_avltree_list.c: Likewise.
11604         * lib/gl_avltree_oset.c: Likewise.
11605         * lib/gl_avltreehash_list.c: Likewise.
11606         * lib/gl_carray_list.c: Likewise.
11607         * lib/gl_linked_list.c: Likewise.
11608         * lib/gl_linkedhash_list.c: Likewise.
11609         * lib/gl_list.c: Likewise.
11610         * lib/gl_oset.c: Likewise.
11611         * lib/gl_rbtree_list.c: Likewise.
11612         * lib/gl_rbtree_oset.c: Likewise.
11613         * lib/gl_rbtreehash_list.c: Likewise.
11614         * lib/imaxabs.c: Likewise.
11615         * lib/imaxdiv.c: Likewise.
11616         * lib/javacomp.c: Likewise.
11617         * lib/javaexec.c: Likewise.
11618         * lib/javaversion.c: Likewise.
11619         * lib/linebreak.c: Likewise.
11620         * lib/localcharset.c: Likewise.
11621         * lib/lock.c: Likewise.
11622         * lib/mbchar.c: Likewise.
11623         * lib/mbswidth.c: Likewise.
11624         * lib/mkdtemp.c: Likewise.
11625         * lib/pipe.c: Likewise.
11626         * lib/printf-args.c: Likewise.
11627         * lib/printf-parse.c: Likewise.
11628         * lib/progname.c: Likewise.
11629         * lib/progreloc.c: Likewise.
11630         * lib/readlink.c: Likewise.
11631         * lib/sh-quote.c: Likewise.
11632         * lib/stpcpy.c: Likewise.
11633         * lib/stpncpy.c: Likewise.
11634         * lib/strcasecmp.c: Likewise.
11635         * lib/strcasestr.c: Likewise.
11636         * lib/strcspn.c: Likewise.
11637         * lib/striconv.c: Likewise.
11638         * lib/strncasecmp.c: Likewise.
11639         * lib/strnlen1.c: Likewise.
11640         * lib/strstr.c: Likewise.
11641         * lib/strtok_r.c: Likewise.
11642         * lib/tls.c: Likewise.
11643         * lib/tmpdir.c: Likewise.
11644         * lib/unicodeio.c: Likewise.
11645         * lib/unsetenv.c: Likewise.
11646         * lib/vasnprintf.c: Likewise.
11647         * lib/vasprintf.c: Likewise.
11648         * lib/wait-process.c: Likewise.
11649         * lib/xallocsa.c: Likewise.
11650         * lib/xsetenv.c: Likewise.
11651         * lib/xstriconv.c: Likewise.
11652
11653 2006-09-13  Simon Josefsson  <jas@extundo.com>
11654
11655         * m4/getdate.m4: Don't AC_LIBOBJ([getdate]), automake takes care of
11656         that internally, suggested by Ralf Wildenhues
11657         <Ralf.Wildenhues@gmx.de>.
11658
11659 2006-09-13  Simon Josefsson  <jas@extundo.com>
11660
11661         * gnulib-tool (func_emit_lib_Makefile_am): Use $(LIBOBJS), not
11662         @LIBOBJS@.
11663         Suggested by Ralf Wildenhues <Ralf.Wildenhues@gmx.de>.
11664
11665 2006-09-13  Paul Eggert  <eggert@cs.ucla.edu>
11666
11667         * lib/_fpending.c: Include <config.h> unconditionally, since we no
11668         longer worry about uses that don't define HAVE_CONFIG_H.
11669         * lib/acl.c, lib/alloca.c, lib/argmatch.c, lib/atexit.c:
11670         * lib/backupfile.c, lib/basename.c, lib/c-stack.c, lib/c-strtod.c:
11671         * lib/calloc.c,lib/ canon-host.c, lib/canonicalize.c, lib/chdir-long.c:
11672         * lib/chdir-safer.c, lib/chown.c, lib/cloexec.c, lib/close-stream.c:
11673         * lib/closeout.c, lib/creat-safer.c, lib/cycle-check.c, lib/diacrit.c:
11674         * lib/dirchownmod.c, lib/dirfd.c, lib/dirname.c, lib/dup-safer.c:
11675         * lib/dup2.c, lib/error.c, lib/euidaccess.c, lib/exclude.c:
11676         * lib/exitfail.c, lib/fchmodat.c, lib/fchown-stub.c, lib/fd-safer.c:
11677         * lib/file-type.c, lib/fileblocks.c, lib/filemode.c, lib/filenamecat.c:
11678         * lib/fnmatch.c, lib/fopen-safer.c, lib/fprintftime.c, lib/free.c:
11679         * lib/fsusage.c, lib/ftruncate.c, lib/fts-cycle.c, lib/fts.c:
11680         * lib/full-write.c, lib/gai_strerror.c, lib/getcwd.c, lib/getdate.y:
11681         * lib/getdomainname.c, lib/getgroups.c, lib/gethostname.c:
11682         * lib/gethrxtime.c, lib/getloadavg.c, lib/getlogin_r.c:
11683         * lib/getndelim2.c, lib/getnline.c, lib/getopt.c, lib/getopt1.c:
11684         * lib/getpass.c, lib/gettime.c, lib/gettimeofday.c, lib/getugroups.c:
11685         * lib/getusershell.c, lib/glob.c, lib/group-member.c:
11686         * lib/hard-locale.c, lib/hash-pjw.c, lib/hash.c, lib/human.c:
11687         * lib/idcache.c, lib/inet_ntop.c, lib/inet_pton.c, lib/inttostr.c:
11688         * lib/isdir.c, lib/lchown.c, lib/linebuffer.c, lib/long-options.c:
11689         * lib/lstat.c, lib/malloc.c, lib/md5.c, lib/memcasecmp.c, lib/memchr.c:
11690         * lib/memcmp.c, lib/memcoll.c, lib/memcpy.c, lib/memmove.c:
11691         * lib/memrchr.c, lib/mkancesdirs.c, lib/mkdir-p.c, lib/mkdir.c:
11692         * lib/mkdirat.c, lib/mkstemp-safer.c, lib/mkstemp.c, lib/modechange.c:
11693         * lib/mountlist.c, lib/nanosleep.c, lib/obstack.c, lib/open-safer.c:
11694         * lib/openat-die.c, lib/openat.c, lib/pagealign_alloc.c, lib/physmem.c:
11695         * lib/pipe-safer.c, lib/posixtm.c, lib/posixver.c, lib/putenv.c:
11696         * lib/quote.c, lib/quotearg.c, lib/raise.c, lib/readtokens.c:
11697         * lib/readtokens0.c, lib/readutmp.c, lib/realloc.c, lib/regex.c:
11698         * lib/rename.c, lib/rmdir.c, lib/rpmatch.c, lib/safe-read.c:
11699         * lib/same.c, lib/save-cwd.c, lib/savedir.c, lib/setenv.c:
11700         * lib/settime.c, lib/sha1.c, lib/sig2str.c, lib/snprintf.c:
11701         * lib/strdup.c, lib/strerror.c, lib/strftime.c, lib/stripslash.c:
11702         * lib/strndup.c, lib/strnlen.c, lib/strpbrk.c, lib/strtod.c:
11703         * lib/strtoimax.c, lib/strtol.c, lib/strverscmp.c, lib/tempname.c:
11704         * lib/time_r.c, lib/timegm.c, lib/tmpfile-safer.c, lib/unlinkdir.c:
11705         * lib/userspec.c, lib/utime.c, lib/utimecmp.c, lib/utimens.c:
11706         * lib/version-etc-fsf.c, lib/version-etc.c, lib/xalloc-die.c:
11707         * lib/xgetcwd.c, lib/xgethostname.c, lib/xmalloc.c, lib/xmemcoll.c:
11708         * lib/xnanosleep.c, lib/xreadlink.c, lib/xstrtod.c, lib/xstrtoimax.c:
11709         * lib/xstrtol.c, lib/xstrtoumax.c, lib/yesno.c:
11710         Likewise.
11711
11712 2006-09-13  Eric Blake  <ebb9@byu.net>
11713
11714         * lib/getopt.c: Fix typo in last commit.
11715
11716 2006-09-12  Sergey Poznyakoff  <gray@gnu.org.ua>
11717
11718         * lib/argp-help.c (argp_doc): Make sure NULL is not passed to
11719         dgettext.
11720
11721 2006-09-12  Jim Meyering  <jim@meyering.net>
11722
11723         * lib/nanosleep.c: Include <sys/types.h> before sys/select.h, to avoid
11724         compilation failure (due to use of pid_t in latter) on NetBSD 1.6.
11725         Reported by Nelson H. F. Beebe.
11726
11727 2006-09-10  Sergey Poznyakoff  <gray@gnu.org.ua>
11728
11729         * lib/argp-parse.c (__argp_parse) [!_LIBC]: Make sure
11730         program_invocation_name and program_invocation_short_name are
11731         initialized.
11732         * lib/argp-namefrob.h: Move declarations of program_invocation_name
11733         and program_invocation_short_name to argp.h, so they are visible
11734         to user programs.
11735         * lib/argp.h: Likewise
11736
11737 2006-09-10  Bruno Haible  <bruno@clisp.org>
11738
11739         * modules/mkdtemp (Files): Remove m4/ulonglong.m4, m4/stdint_h.m4,
11740         m4/inttypes_h.m4, m4/uintmax_t.m4.
11741
11742 2006-09-10  Bruno Haible  <bruno@clisp.org>
11743
11744         * m4/mkdtemp.m4 (gl_PREREQ_MKDTEMP): Don't require
11745         gl_AC_TYPE_UINTMAX_T.
11746
11747 2006-09-10  Bruno Haible  <bruno@clisp.org>
11748
11749         * lib/mkdtemp.c: Include <stdint.h> always. Don't include <inttypes.h>.
11750
11751 2006-09-09  Sergey Poznyakoff  <gray@gnu.org.ua>
11752
11753         * lib/argp.h (struct argp): Document the N_("..") "\v" N_("..")
11754         convention.  Text proposed by Bruno Haible.
11755         (struct argp_option): Document the use of N_() wrappers.
11756
11757         * lib/argp-help.c (argp_doc): Split the untranslated doc string on
11758         '\v', and translate the two parts separately, instead of feeding
11759         the whole string to gettext.  This allows to exclude
11760         '\v' from the strings visible to the translator by writing doc
11761         strings as N_("..") "\v" N_("..").
11762
11763 2006-09-09  Paul Eggert  <eggert@cs.ucla.edu>
11764
11765         * config/srclist.txt: Undo latest change; the bug was fixed.
11766
11767 2006-09-09  Bruno Haible  <bruno@clisp.org>
11768
11769         * gnulib-tool (func_emit_lib_Makefile_am): Eliminate lib_LDFLAGS
11770         assignments if building a library without libtool.
11771         (func_emit_tests_Makefile_am): Likewise. Handle lib_* variables as
11772         in func_emit_lib_Makefile_am.
11773         (func_import): When building a static library libfoo.a, arrange to
11774         define variables LIBFOO_LIBDEPS and LIBFOO_LTLIBDEPS.
11775         (func_create_testdir): Likewise.
11776         * modules/gc (configure.ac, Makefile.am): If building statically,
11777         augment gl_libdeps and gl_ltlibdeps instead of lib_LDFLAGS.
11778         * modules/iconvme (configure.ac, Makefile.am): Likewise.
11779         * modules/striconv (configure.ac, Makefile.am): Likewise.
11780         Based on a suggestion by Ralf Wildenhues.
11781
11782 2006-09-08  Paul Eggert  <eggert@cs.ucla.edu>
11783
11784         * m4/mktime.m4 (AC_FUNC_MKTIME): Sync from Autoconf.
11785         Check for unistd.h too, since Autoconf doesn't assume POSIX.
11786         Also:
11787
11788         2006-09-08  Paul Eggert  <eggert@cs.ucla.edu>
11789         Add year_2050_test to catch glibc bug 2821
11790         <http://sourceware.org/bugzilla/show_bug.cgi?id=2821>.
11791
11792         2006-08-15  Paul Eggert  <eggert@cs.ucla.edu>
11793         Prefer #ifdef to #if.
11794
11795         2006-04-02  Paul Eggert  <eggert@cs.ucla.edu>
11796         Return from 'main' instead of calling 'exit'.
11797
11798 2006-09-08  Paul Eggert  <eggert@cs.ucla.edu>
11799
11800         * lib/mktime.c (guess_time_tm): Fix bug where mktime
11801         returned the maximum time_t value rather than (time_t) -1.
11802         Problem originally reported by William Bardwell
11803         <http://sourceware.org/bugzilla/show_bug.cgi?id=2821>.
11804
11805         * lib/isapipe.h (HAVE_FIFO_PIPES) [!defined HAVE_FIFO_PIPES]:
11806         Moved to here ...
11807         * lib/isapipe.c (HAVE_FIFO_PIPES) [!defined HAVE_FIFO_PIPES]:
11808         ... from here.
11809
11810 2006-09-08  Paul Eggert  <eggert@cs.ucla.edu>
11811
11812         * config/srclist.txt: Temporarily comment out mktime.c until glibc bug
11813         2821 is fixed.
11814
11815 2006-09-08  Jim Meyering  <jim@meyering.net>
11816
11817         Don't make generated files read-only.  That would bother too many
11818         people.  However, do retain the ability to work when targets are
11819         read-only: remove the destination and temporary files before writing
11820         them (when generated via sed or echo), or by using the -f option for
11821         both cp and mv commands.  Suggestion to use -f from Paul Eggert.
11822         * modules/alloca-opt, modules/argz, modules/arpa_inet:
11823         * modules/byteswap, modules/configmake, modules/fcntl:
11824         * modules/fnmatch, modules/getopt, modules/glob, modules/inttypes:
11825         * modules/localcharset, modules/netinet_in, modules/poll:
11826         * modules/stdbool, modules/stdint, modules/sys_select:
11827         * modules/sys_socket, modules/sys_stat, modules/sysexits:
11828
11829 2006-09-08  Jim Meyering  <jim@meyering.net>
11830
11831         Avoid new build failure on FreeBSD 6.0.
11832         * m4/ls-mntd-fs.m4 (gl_LIST_MOUNTED_FILE_SYSTEMS): Include
11833         <sys/param.h> when testing whether getmntinfo uses statvfs.  Patch by
11834         Pavel Tsekov, in <http://savannah.gnu.org/bugs/?17643>.
11835
11836 2006-09-07  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
11837
11838         * m4/fsusage.m4 (gl_FILE_SYSTEM_USAGE): Don't use plain echo.
11839
11840 2006-09-07  Jim Meyering  <jim@meyering.net>
11841
11842         Fix global typo in last change: use chmod u-w, not chmod u-x.
11843         Spotted by Paul Eggert and Bruce Korb.
11844         * modules/alloca-opt, modules/argz, modules/arpa_inet:
11845         * modules/byteswap, modules/configmake, modules/fcntl:
11846         * modules/fnmatch, modules/getopt, modules/glob, modules/inttypes:
11847         * modules/localcharset, modules/netinet_in, modules/poll:
11848         * modules/stdbool, modules/stdint, modules/sys_select:
11849         * modules/sys_socket, modules/sys_stat, modules/sysexits:
11850
11851 2006-09-06  Jim Meyering  <jim@meyering.net>
11852
11853         Make generated files be read-only.
11854         * modules/alloca-opt (Makefile.am): Work also when $@ is read-only.
11855         Ensure that each generated file is now read-only.
11856         * modules/argz: Likewise.
11857         * modules/arpa_inet: Likewise.
11858         * modules/byteswap: Likewise.
11859         * modules/configmake: Likewise.
11860         * modules/fcntl: Likewise.
11861         * modules/fnmatch: Likewise.
11862         * modules/getopt: Likewise.
11863         * modules/glob: Likewise.
11864         * modules/inttypes: Likewise.
11865         * modules/netinet_in: Likewise.
11866         * modules/poll: Likewise.
11867         * modules/stdbool: Likewise.
11868         * modules/stdint: Likewise.
11869         * modules/sys_select: Likewise.
11870         * modules/sys_socket: Likewise.
11871         * modules/sys_stat: Likewise.
11872         * modules/sysexits: Likewise.
11873         * modules/localcharset: Same as above, but continue using temporary
11874         file named "t-$@" (why different?) rather than the "$@-t" used
11875         everywhere else.
11876
11877         * modules/sysexits (Makefile.am): Replace literal occurrences
11878         of "sysexit.h" more readable, and more consistent, "$@".
11879
11880 2006-09-06  Bruno Haible  <bruno@clisp.org>
11881
11882         * modules/striconv: New file.
11883         * modules/xstriconv: New file.
11884         * MODULES.html.sh (Internationalization functions): Add striconv,
11885         xstriconv.
11886
11887 2006-09-06  Bruno Haible  <bruno@clisp.org>
11888
11889         * modules/gc (Makefile.am): Augment lib_LDFLAGS, not lib_LIBADD.
11890         * modules/iconvme (Makefile.am): Likewise. Also handle the case of
11891         not using libtool correctly.
11892
11893 2006-09-06  Bruno Haible  <bruno@clisp.org>
11894
11895         * lib/striconv.h: New file.
11896         * lib/striconv.c: New file, merging iconvme.c with GNU gettext's
11897         iconvstring.c.
11898         * lib/xstriconv.h: New file.
11899         * lib/xstriconv.c: New file.
11900
11901 2006-09-06  Bruno Haible  <bruno@clisp.org>
11902
11903         * gnulib-tool (func_emit_lib_Makefile_am): Initialize also
11904         lib_..._LDFLAGS.
11905
11906 2006-09-05  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
11907
11908         * lib/argz_.h: Sync from Libtool.
11909
11910         2006-09-04  George Bosilca <bosilca@cs.utk.edu>
11911                 and Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
11912
11913         * lib/libltdl/argz_.h: It's __cplusplus, not _cplusplus.
11914
11915 2006-09-05  Davide Angelocola  <davide.angelocola@tiscali.it>
11916
11917         * modules/trim: New file.
11918
11919 2006-09-05  Davide Angelocola  <davide.angelocola@tiscali.it>
11920
11921         * lib/trim.h: New file.
11922         * lib/trim.c: New file.
11923
11924 2006-09-05  Bruno Haible  <bruno@clisp.org>
11925
11926         * MODULES.html.sh (String handling): Add trim.
11927
11928 2006-09-04  Karl Berry  <karl@gnu.org>
11929
11930         * config/srclist.txt (signed.m4, gettext.m4): changes not propagated
11931         until next release.
11932
11933 2006-09-03  Bruno Haible  <bruno@clisp.org>
11934
11935         * m4/lib-link.m4 (AC_LIB_LINKFLAGS_BODY): Locate mingw shared libraries
11936         correctly.
11937
11938 2006-09-01  Paul Eggert  <eggert@cs.ucla.edu>
11939
11940         * m4/getloadavg.m4 (gl_GETLOADAVG): Use CONFIGURING_GETLOADAVG,
11941         not gl_GETLOADAVG.  Omit unneeded semicolons.
11942         Problems reported by Ralf Wildenhues in
11943         <http://lists.gnu.org/archive/html/bug-gnulib/2006-09/msg00000.html>.
11944         (gl_PREREQ_GETLOADAVG): Use AC_DEFUN, not m4_define.  Put
11945         at the end, which is the usual gnulib style.
11946
11947         * m4/fstypename.m4 (gl_FSTYPENAME): Use AC_CHECK_MEMBERS instead
11948         of doing all the work ourselves.
11949         * m4/fsusage.m4 (gl_PREREQ_FSUSAGE_EXTRA): Don't check for
11950         sys/statvfs.h since the code doesn't use HAVE_SYS_STATVFS_H.
11951
11952 2006-09-01  Paul Eggert  <eggert@cs.ucla.edu>
11953
11954         * lib/getloadavg.c: Use CONFIGURING_GETLOADAVG, not gl_GETLOADAVG.
11955         Problem reported by Ralf Wildenhues in
11956         <http://lists.gnu.org/archive/html/bug-gnulib/2006-09/msg00000.html>.
11957
11958         * lib/mountlist.c: All uses of HAVE_F_FSTYPENAME_IN_STATFS replaced by
11959         HAVE_STRUCT_STATFS_F_FSTYPENAME.
11960
11961 2006-09-01  Paul Eggert  <eggert@cs.ucla.edu>
11962
11963         * gnulib-tool (func_emit_lib_Makefile_am): Fix typos in
11964         yesterday's patch by changing test -n to test -z.
11965
11966 2006-08-31  Paul Eggert  <eggert@cs.ucla.edu>
11967
11968         * modules/getloadavg (Files): Add m4/getloadavg.m4.
11969         (configure.ac): AC_FUNC_GETLOADAVG -> gl_GETLOADAVG, as
11970         the former is now obsolescent.
11971
11972         * modules/chdir-long (Depends-on): Add fcntl.
11973
11974 2006-08-31  Paul Eggert  <eggert@cs.ucla.edu>
11975
11976         * m4/fnmatch.m4: Add comment that Autoconf AC_FUNC_FNMATCH is
11977         obsolescent, and programs should use gnulib instead.
11978         * m4/getloadavg.m4: New file, with contents taken from Autoconf
11979         but with prefixes changed.
11980
11981 2006-08-31  Paul Eggert  <eggert@cs.ucla.edu>
11982
11983         * lib/getloadavg.c [defined gl_GETLOADAVG]: Don't include config.h
11984         or stdbool.h, because they might not exist while configuring.
11985
11986         * lib/chdir-long.c: Include <fcntl.h>, for O_DIRECTORY.
11987         Don't include unistd.h or limits.h; not needed, since chdir-long.h
11988         does that for us.
11989         (O_DIRECTORY): Remove.
11990
11991 2006-08-31  Eric Blake  <ebb9@byu.net>
11992
11993         * gnulib-tool: Don't let emacs change spaces to TAB.
11994
11995 2006-08-31  Bruno Haible  <bruno@clisp.org>
11996
11997         * gnulib-tool: When calling func_import more than once, do it in a
11998         subshell.
11999         Reported by Eric Blake <ebb9@byu.net>.
12000
12001 2006-08-31  Bruno Haible  <bruno@clisp.org>
12002
12003         * gnulib-tool (nl): Remove variable.
12004         (sed_transform_lib_file): Use more robust test for config-h module.
12005         (func_import): Fix typo in 2006-08-25 patch.
12006
12007 2006-08-31  Bruno Haible  <bruno@clisp.org>
12008
12009         * gnulib-tool (func_emit_lib_Makefile_am): When --makefile-name was
12010         specified, augment Makefile.am variables instead of assigning them.
12011
12012 2006-08-30  Paul Eggert  <eggert@cs.ucla.edu>
12013
12014         Work around a bug in both the Linux and SunOS 64-bit kernels:
12015         nanosleep mishandles sleeps for longer than 2**31 seconds.
12016         Problem reported by Frank v Waveren in
12017         <http://lists.gnu.org/archive/html/bug-coreutils/2006-08/msg00298.html>.
12018         * m4/nanosleep.m4 (gl_FUNC_NANOSLEEP): Require gl_CLOCK_TIME.
12019         Check for nanosleep bug.
12020         (LIB_NANOSLEEP): Append clock_gettime library if needed.
12021
12022 2006-08-30  Paul Eggert  <eggert@cs.ucla.edu>
12023
12024         Work around a bug in both the Linux and SunOS 64-bit kernels:
12025         nanosleep mishandles sleeps for longer than 2**31 seconds.
12026         Problem reported by Frank v Waveren in
12027         <http://lists.gnu.org/archive/html/bug-coreutils/2006-08/msg00298.html>.
12028         * lib/nanosleep.c (BILLION): New constant.
12029         (getnow) [HAVE_BUG_BIG_NANOSLEEP]: New functions.
12030         (rpl_nanosleep) [HAVE_BUG_BIG_NANOSLEEP]: Completely new
12031         implementation.
12032
12033 2006-08-30  Paul Eggert  <eggert@cs.ucla.edu>
12034
12035         * modules/nanosleep (Depends-on): Add gettime.
12036
12037 2006-08-30  Paul Eggert  <eggert@cs.ucla.edu>
12038         and Simon Josefsson  <jas@extundo.com>
12039         and Oskar Liljeblad  <oskar@osk.mine.nu>
12040
12041         * MODULES.html.sh (Support for building documentation): Add gpl, lgpl.
12042         * gnulib-tool (func_import): New license type 'unmodifiable license
12043         text'.
12044         * modules/fdl: Use it.  Longer description.
12045         * module/gpl, module/lgpl: New files.
12046
12047 2006-08-30  Jim Meyering  <jim@meyering.net>
12048
12049         * lib/isapipe.c (isapipe): Rename local s/fd/fd_pair/ to avoid
12050         shadowing the parameter.
12051
12052 2006-08-29  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
12053
12054         Sync from Libtool:
12055
12056         2006-08-28  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
12057
12058         * lib/libltdl/argz.c: Use `#ifdef HAVE_CONFIG_H', to facilitate code
12059         sharing with gnulib.  Report by Eric Blake.
12060
12061 2006-08-29  Paul Eggert  <eggert@cs.ucla.edu>
12062
12063         * modules/isapipe: New file.
12064         * MODULES.html.sh (File descriptor based Input/Output): Add isapipe.
12065
12066 2006-08-29  Paul Eggert  <eggert@cs.ucla.edu>
12067
12068         * modules/configmake (Makefile.am): Add a comment, and omit
12069         the CONFIGMAKE_ prefix from generated macro names.  Suggested
12070         by Bruno Haible.
12071
12072 2006-08-29  Paul Eggert  <eggert@cs.ucla.edu>
12073
12074         * m4/isapipe.m4: New file.
12075
12076 2006-08-29  Paul Eggert  <eggert@cs.ucla.edu>
12077
12078         * lib/isapipe.c, lib/isapipe.h: New files.
12079
12080 2006-08-29  Jim Meyering  <jim@meyering.net>
12081
12082         * modules/configmake (Makefile.am): Make configmake.h depend on
12083         Makefile.  Otherwise, a stale configmake.h could hang around.
12084
12085 2006-08-29  Eric Blake  <ebb9@byu.net>
12086
12087         * lib/error.c (error_at_line, print_errno_message): Match libc, after
12088         resolution of upstream bug 3044.
12089
12090 2006-08-29  Bruno Haible  <bruno@clisp.org>
12091
12092         * modules/localcharset (Depends-on): Add configmake.
12093         (Makefile.am): Remove setting of LIBDIR through DEFS.
12094
12095 2006-08-29  Bruno Haible  <bruno@clisp.org>
12096
12097         * lib/localcharset.c: Include configmake.h in order to get LIBDIR
12098         defined.
12099
12100 2006-08-28  Paul Eggert  <eggert@cs.ucla.edu>
12101
12102         * modules/fcntl: New file.
12103         * modules/chdir-safer (Depends-on): Add fcntl.
12104         * modules/fts: Likewise.
12105         * modules/mkdir-p: Likewise.
12106
12107         * modules/stdint (Makefile.am): Do not substitute ABSOLUTE_INTTYPES_H.
12108         This undoes the most recent change, since we're now addressing the
12109         problem in a different way.
12110
12111         * gnulib-tool (emit_lib_Makefile_am): Don't put $makefile_name
12112         into output, since the output might be called Makefile.am even
12113         if $makefile_name is something different.
12114         (func_import): Use $makefile_am rather than
12115         ${makefile_name-Makefile.am}, to fix a bug where makefile_name was
12116         empty.
12117
12118         * modules/inttypes (Files): Add m4/inttypes-h.m4.
12119
12120 2006-08-28  Paul Eggert  <eggert@cs.ucla.edu>
12121
12122         * m4/inttypes.m4 (gl_INTTYPES_H): Move ABSOLUTE_INTTYPES_H code here...
12123         * m4/stdint.m4 (gl_STDINT_H): ... from here.  This undoes the most
12124         recent change to stdint.m4, since we're now addressing the problem in a
12125         different way.
12126
12127 2006-08-28  Paul Eggert  <eggert@cs.ucla.edu>
12128
12129         * m4/fcntl_h.m4: New file.
12130
12131 2006-08-28  Paul Eggert  <eggert@cs.ucla.edu>
12132
12133         * lib/fcntl_.h: New file.
12134         * lib/chdir-safer.c (O_DIRECTORY, O_NOFOLLOW): Remove, now that we have
12135         the fcntl module.
12136         * lib/dirchownmod.c: Likewise.
12137         * lib/fts.c: Likewise.
12138
12139         * lib/inttypes_.h [defined _GL_JUST_INCLUDE_ABSOLUTE_INTTYPES_H]:
12140         Include @ABSOLUTE_INTTYPES_H@ if available, but do nothing else.
12141         * lib/stdint_.h (_GL_JUST_INCLUDE_ABSOLUTE_INTTYPES_H): Define
12142         just before including <inttypes.h>, to avoid circular inclusion.
12143
12144 2006-08-28  Jim Meyering  <jim@meyering.net>
12145
12146         * doc/visibility.texi: Actually read and correct the grammar of the
12147         sentence affected by yesterday's change.
12148
12149 2006-08-28  Eric Blake  <ebb9@byu.net>
12150
12151         * modules/inttypes (Makefile.am): Fix sed error when inttypes.h
12152         needs wrapper.
12153
12154 2006-08-28  Eric Blake  <ebb9@byu.net>
12155
12156         * m4/inttypes.m4 (gl_INTTYPES_H): Fix missing #endif.
12157
12158 2006-08-28  Eric Blake  <ebb9@byu.net>
12159
12160         * m4/codeset.m4 (AM_LANGINFO_CODESET): Avoid compiler warning.
12161
12162 2006-08-28  Bruno Haible  <bruno@clisp.org>
12163
12164         * modules/c-strstr: New file, from GNU gettext.
12165         * MODULES.html.sh (String handling): Add c-strstr.
12166
12167 2006-08-28  Bruno Haible  <bruno@clisp.org>
12168
12169         * m4/inttypes.m4 (gl_INTTYPES_H): Don't test for the existence of SCNX*
12170         macros.
12171         Reported by Eric Blake.
12172
12173 2006-08-28  Bruno Haible  <bruno@clisp.org>
12174
12175         * lib/vasnprintf.c (EOVERFLOW): Remove definition.
12176         (VASNPRINTF): Return a string of length > INT_MAX without failing.
12177         * lib/vasprintf.c: Include errno.h, limits.h.
12178         (EOVERFLOW): New fallback definition.
12179         (vasprintf): Test here whether the string length is > INT_MAX.
12180         * lib/vsnprintf.c: Include errno.h, limits.h.
12181         (EOVERFLOW): New fallback definition.
12182         (vsnprintf): Fix bug when generated string was too long for the buffer.
12183         Test here whether the string length is > INT_MAX.
12184
12185 2006-08-28  Bruno Haible  <bruno@clisp.org>
12186
12187         * lib/inttypes_.h (SCNX*): Remove definitions.
12188         Reported by Eric Blake.
12189
12190 2006-08-28  Bruno Haible  <bruno@clisp.org>
12191
12192         * lib/c-strstr.h: New file, from GNU gettext.
12193         * lib/c-strstr.c: New file, from GNU gettext.
12194
12195 2006-08-28  Bruno Haible  <bruno@clisp.org>
12196
12197         * gnulib-tool: Reorder some statements.
12198
12199 2006-08-28  Bruno Haible  <bruno@clisp.org>
12200
12201         * gnulib-tool: New option --makefile-name.
12202         (func_emit_lib_Makefile_am, func_emit_tests_Makefile_am): Use
12203         $makefile_name.
12204         (func_import): Write $makefile_name to the cache file, and read it from
12205         there unless explicitly specified. Use $makefile_name as file name
12206         instead of Makefile.am. Adjust the recommendations accordingly.
12207
12208 2006-08-28  Bruno Haible  <bruno@clisp.org>
12209
12210         * gnulib-tool (func_verify_module): Check against misapplying patch.
12211
12212 2006-08-28  Bruno Haible  <bruno@clisp.org>
12213
12214         * gnulib-tool (func_relativize, func_relconcat): New functions.
12215         Give an error if --local-dir is given with --update.
12216         Remove trailing slashes from $local_gnulib_dir.
12217         (func_import): Store the relativized $local_gnulib_dir in
12218         gnulib-cache.m4, and read it from there if not specified explicitly.
12219
12220 2006-08-28  Bruno Haible  <bruno@clisp.org>
12221
12222         * gnulib-tool (func_get_tests_module): Don't assume that $gnulib_dir
12223         is the current directory. Respect also $local_gnulib_dir.
12224
12225 2006-08-28  Bruno Haible  <bruno@clisp.org>
12226             Simon Josefsson  <jas@extundo.com>
12227
12228         BeOS portability.
12229         * lib/getaddrinfo.c (PF_INET, PF_UNSPEC): New macros.
12230
12231 2006-08-27  Jim Meyering  <jim@meyering.net>
12232
12233         * doc/visibility.texi: Remove duplicate word: "pointer".
12234
12235 2006-08-26  Bruno Haible  <bruno@clisp.org>
12236
12237         * modules/inttypes (Files): Add lib/inttypes_.h, remove lib/inttypes.h.
12238         Add m4/inttypes.m4, remove m4/_inttypes_h.m4 and m4/include_next.m4.
12239         (Makefile.am): Create inttypes.h from inttypes_.h.
12240         * modules/stdint (Makefile.am): Substitute also ABSOLUTE_INTTYPES_H.
12241
12242         * modules/imaxabs: New file.
12243
12244         * modules/imaxdiv: New file.
12245
12246 2006-08-26  Bruno Haible  <bruno@clisp.org>
12247
12248         * m4/inttypes.m4: New file.
12249         * m4/_inttypes_h.m4: Remove file.
12250         * m4/inttypes-pri.m4 (gt_INTTYPES_PRI): Also AC_SUBST
12251         PRI_MACROS_BROKEN.
12252         * m4/stdint.m4 (gl_STDINT_H): Define also ABSOLUTE_INTTYPES_H.
12253
12254         * m4/imaxabs.m4: New file.
12255
12256         * m4/imaxdiv.m4: New file.
12257
12258 2006-08-26  Bruno Haible  <bruno@clisp.org>
12259
12260         * lib/inttypes_.h: New file.
12261         * lib/inttypes.h: Remove file.
12262         * lib/stdint_.h: Include <inttypes.h> through its absolute filename.
12263
12264         * lib/imaxabs.c: New file.
12265
12266         * lib/imaxdiv.c: New file.
12267
12268 2006-08-25  Paul Eggert  <eggert@cs.ucla.edu>
12269
12270         New config-h module, so that "make" output needn't be cluttered
12271         by -DHAVE_CONFIG_H.
12272         * MODULES.html.sh (Support for building libraries and executables):
12273         Add config-h.
12274         * modules/config-h: New file.
12275         * gnulib-tool (nl, sed_transform_lib_file): New vars.
12276         (func_import): Turn "#ifdef HAVE_CONFIG_H" to "#if 1" if
12277         the config-h module is used.
12278
12279         New configmake module, so that "make" output needn't be cluttered
12280         by fluff like '-DLIBDIR=\"/usr/local/lib\"'.
12281         * MODULES.html.sh (Support for building libraries and executables):
12282         Add configmake.
12283         * modules/configmake: New file.
12284
12285 2006-08-25  Paul Eggert  <eggert@cs.ucla.edu>
12286
12287         * m4/config-h.m4: New file.
12288
12289 2006-08-24  Paul Eggert  <eggert@cs.ucla.edu>
12290
12291         * config/srclist.txt: Add elisp-comp.
12292
12293 2006-08-24  Paul Eggert  <eggert@cs.ucla.edu>
12294
12295         * MODULES.html.sh (Support for building libraries and executables):
12296         Add elisp-comp.
12297         * build-aux/elisp-comp: New file.
12298         * modules/elisp-comp: New file.
12299
12300 2006-08-24  Bruno Haible  <bruno@clisp.org>
12301
12302         * gnulib-tool (func_create_testdir): Use non-default values of
12303         sourcebase and m4base.
12304
12305 2006-08-24  Bruno Haible  <bruno@clisp.org>
12306
12307         * MODULES.html.sh (Compatibility checks for POSIX:2001 functions: Fix
12308         HTML structure.
12309
12310 2006-08-23  Paul Eggert  <eggert@cs.ucla.edu>
12311
12312         * modules/openat (Depends-on): Add lchown.
12313
12314 2006-08-23  Bruno Haible  <bruno@clisp.org>
12315
12316         * gnulib-tool (func_import, func_create_testdir): Emit an invocation
12317         of gl_LOCK_EARLY instead of gl_LOCK.
12318
12319 2006-08-23  Bruno Haible  <bruno@clisp.org>
12320
12321         * m4/lock.m4 (gl_LOCK_BODY): Change the default value of gl_use_threads
12322         on OSF/1 to no.
12323         Reported by Stephen Cartwright <sgcartwr@ucalgary.ca>.
12324
12325 2006-08-23  Bruno Haible  <bruno@clisp.org>
12326
12327         * m4/fsusage.m4 (gl_FILE_SYSTEM_USAGE): Don't consider BeOS statvfs
12328         as unusable.
12329
12330         * m4/lock.m4 (gl_LOCK_EARLY): Renamed from gl_LOCK.
12331         (gl_LOCK_BODY): Remove gl_PREREQ_LOCK invocation.
12332         (gl_LOCK): New macro.
12333
12334 2006-08-22  Simon Josefsson  <jas@extundo.com>
12335
12336         * modules/gc-md5 (Makefile.am): Need to add md5.h, after changes
12337         to md5 module.
12338
12339 2006-08-22  Simon Josefsson  <jas@extundo.com>
12340
12341         * MODULES.html.sh: Add "Support for maintaining and release
12342         projects".
12343
12344         * build-aux/gnupload: New file, from coreutils.
12345
12346 2006-08-22  Paul Eggert  <eggert@cs.ucla.edu>
12347
12348         Avoid the need for AC_LIBSOURCES in m4 macros.
12349         * modules/arcfour (EXTRA_DIST): Add arcfour.h.
12350         * modules/arctwo (EXTRA_DIST): Add arctwo.h.
12351         * modules/check-version (EXTRA_DIST): Add check-version.h.
12352         * modules/crc (EXTRA_DIST): Add crc.h.
12353         * modules/des (EXTRA_DIST): Add des.h.
12354         * modules/gc (EXTRA_DIST): Add gc.h.
12355         * modules/getdelim (EXTRA_DIST): Add getdelim.h.
12356         * modules/getline (EXTRA_DIST): Add getline.h.
12357         * modules/getlogin_r (EXTRA_DIST): Add getlogin_r.h.
12358         * modules/hmac-md5 (EXTRA_DIST): Add hmac.h.
12359         * modules/hmac-sha1 (EXTRA_DIST): Add hmac.h.
12360         * modules/md2 (EXTRA_DIST): Add md2.h.
12361         * modules/md4 (EXTRA_DIST): Add md4.h.
12362         * modules/pagealign_alloc (EXTRA_DIST): Add pagealign_alloc.h.
12363         * modules/read-file (EXTRA_DIST): Add read-file.h.
12364         * modules/readline (EXTRA_DIST): Add readline.h.
12365         * modules/rijndael (EXTRA_DIST): Add rijndael-alg-fst.h,
12366         rijndael-api-fst.h.
12367
12368 2006-08-22  Paul Eggert  <eggert@cs.ucla.edu>
12369
12370         * m4/rijndael.m4 (gl_ARCFOUR):
12371         * m4/arctwo.m4 (gl_ARCTWO):
12372         * m4/check-version.m4 (gl_CHECK_VERSION):
12373         * m4/crc.m4 (gl_CRC):
12374         * m4/des.m4 (gl_DES):
12375         * m4/gc-pbkdf2-sha1.m4 (gl_GC_PBKDF2_SHA1):
12376         * m4/gc.m4 (gl_GC):
12377         * m4/getdelim.m4 (gl_FUNC_GETDELIM):
12378         * m4/getline.m4 (gl_FUNC_GETLINE):
12379         * m4/getlogin_r.m4 (gl_GETLOGIN_R_SUBSTITUTE):
12380         * m4/hmac-md5.m4 (gl_HMAC_MD5):
12381         * m4/hmac-sha1.m4 (gl_HMAC_SHA1):
12382         * m4/md2.m4 (gl_MD2):
12383         * m4/md4.m4 (gl_MD4):
12384         * m4/pagealign_alloc.m4 (gl_PAGEALIGN_ALLOC):
12385         * m4/read-file.m4 (gl_FUNC_READ_FILE):
12386         * m4/readline.m4 (gl_FUNC_READLINE):
12387         * m4/rijndael.m4 (gl_RIJNDAEL):
12388         Don't use AC_LIBSOURCES; instead, rely on the files in ../modules/
12389         to get the necessary .h files and whatnot.
12390
12391 2006-08-22  Paul Eggert  <eggert@cs.ucla.edu>
12392
12393         * config/srclist.txt: Remove gnupload, since coreutils now syncs from
12394         gnulib rather than the other way around.
12395         * config/srclistvars.sh (COREUTILS): Remove.
12396
12397 2006-08-22  Jim Meyering  <jim@meyering.net>
12398
12399         * modules/mkdir-p (Makefile.am): Fix typo: s/lib+SOURCES/lib_SOURCES/.
12400
12401         * modules/getpass-gnu (Makefile.am): Add getpass.h to EXTRA_DIST.
12402
12403 2006-08-22  Eric Blake  <ebb9@byu.net>
12404
12405         * modules/regexprops-generic: New file.
12406         * MODULES.html.sh (Support for building documentation): List it.
12407
12408 2006-08-22  Eric Blake  <ebb9@byu.net>
12409
12410         * m4/stdint_h.m4 (gl_AC_HEADER_STDINT_H): Avoid compiler warning.
12411         * m4/inttypes_h.m4 (gl_AC_HEADER_INTTYPES_H): Likewise.
12412         * m4/longlong.m4 (AC_TYPE_LONG_LONG_INT): Likewise.
12413         * m4/intmax_t.m4 (gt_AC_TYPE_INTMAX_T): Likewise.
12414
12415 2006-08-22  Bruno Haible  <bruno@clisp.org>
12416
12417         * gnulib-tool (func_emit_lib_Makefile_am): Don't treat lib_LIBRARIES
12418         and lib_LTLIBRARIES like the other lib_* variables.
12419
12420 2006-08-22  Bruno Haible  <bruno@clisp.org>
12421
12422         * build-aux/x-to-1.in: New file, from GNU gettext.
12423
12424 2006-08-22  Bruno Haible  <bruno@clisp.org>
12425
12426         * m4/readutmp.m4 (gl_READUTMP): Compile readutmp.c only if <utmp.h> or
12427         <utmpx.h> exists.
12428
12429 2006-08-22  Bruno Haible  <bruno@clisp.org>
12430
12431         * lib/readutmp.h: Skip most definitions if neither <utmp.h> nor
12432         <utmpx.h> exists.
12433
12434 2006-08-21  Paul Eggert  <eggert@cs.ucla.edu>
12435
12436         BeOS portability.
12437         * lib/dirchownmod.c (dirchownmod): Don't use fchmod if it doesn't
12438         exist.
12439         Problem reported by Bruno Haible.
12440
12441 2006-08-21  Paul Eggert  <eggert@cs.ucla.edu>
12442
12443         Avoid the need for AC_LIBSOURCES in m4 macros.
12444         * modules/acl (EXTRA_DIST): Add acl.h.
12445         * modules/argmatch (Files): Add m4/argmatch.m4.
12446         (configure.ac): Add gl_ARGMATCH.
12447         (EXTRA_DIST): Renamed from lib_SOURCES, for
12448         consistency with the other modules.  Remove argmatch.c.
12449         * modules/backupfile (EXTRA_DIST): Add backupfile.h.
12450         * modules/c-strtod (EXTRA_DIST): Add c-strtod.h.
12451         * modules/c-strtold (EXTRA_DIST): Add c-strtod.c, c-strtod.h.
12452         * modules/canonhost (EXTRA_DIST): Add c-canonhost.h.
12453         * modules/canonicalize (EXTRA_DIST): Add canonicalize.h.
12454         * modules/chdir-long (EXTRA_DIST): Add chdir-long.h.
12455         * modules/chdir-safer (EXTRA_DIST): Add chdir-safer.h.
12456         * modules/cloexec (EXTRA_DIST): Add cloexec.h.
12457         * modules/close-stream (EXTRA_DIST): Add close-stream.h.
12458         * modules/closeout (EXTRA_DIST): Add closeout.h.
12459         * modules/cycle-check (EXTRA_DIST): Add cycle-check.h.
12460         * modules/dev-ino (EXTRA_DIST): Add dev-ino.h.
12461         * modules/dirfd (EXTRA_DIST): Add dirfd.h.
12462         * modules/dirname (EXTRA_DIST): Renamed from lib_SOURCES.  Add
12463         dirname.h; remove basename.c and stripslash.c.
12464         * modules/exclude (EXTRA_DIST): Add exclude.h.
12465         * modules/exitfail (EXTRA_DIST): Add exitfail.h.
12466         * modules/fcntl-safer (EXTRA_DIST): Add fcntl-safer.h fcntl--.h.
12467         * modules/file-type (EXTRA_DIST): Add file-type.h.
12468         * modules/filemode (EXTRA_DIST): Add filemode.h.
12469         * modules/filenamecat (EXTRA_DIST): Add filenamecat.h.
12470         * modules/fopen-safer (EXTRA_DIST): Add stdio-safer.h stdio--.h.
12471         * modules/fpending (EXTRA_DIST): Add __fpending.h.
12472         * modules/fprintftime (EXTRA_DIST): Add fprintftime.h.
12473         * modules/fsusage (EXTRA_DIST): Add fsusage.h.
12474         * modules/fts (EXTRA_DIST): Add fts_.h fts-cycle.c.
12475         * modules/getcwd (EXTRA_DIST): Add getcwd.h.
12476         * modules/getdate (EXTRA_DIST): Add getdate.c.
12477         * modules/gethrxtime (EXTRA_DIST): Add gethrxtime.h xtime.h.
12478         * modules/getpagesize (EXTRA_DIST): Add getpagesize.h.
12479         * modules/getpass (EXTRA_DIST): Add getpass.h.
12480         * modules/glob (EXTRA_DIST): Add glob_.h glob-libc.h.
12481         * modules/group-member (EXTRA_DIST): Add group-member.h.
12482         * modules/hard-locale (EXTRA_DIST): Add hard-locale.h.
12483         * modules/hash (EXTRA_DIST): Add hash.h.
12484         * modules/human (EXTRA_DIST): Add human.h.
12485         * modules/inttypes (EXTRA_DIST): Add inttypes.h.
12486         * modules/lchmod (EXTRA_DIST): Add lchmod.h.
12487         * modules/lchown (EXTRA_DIST): Add lchown.h.
12488         * modules/long-options (EXTRA_DIST): Add long-options.h.
12489         * modules/lstat (EXTRA_DIST): Add lstat.h.
12490         * modules/md5 (EXTRA_DIST): Add memcasecmp.h.
12491         * modules/memcoll (EXTRA_DIST): Add memcoll.h.
12492         * modules/mempcpy (EXTRA_DIST): Add mempcpy.h.
12493         * modules/memrchr (EXTRA_DIST): Add memrchr.h.
12494         * modules/memxor (EXTRA_DIST): Add memxor.h.
12495         * modules/mkancesdirs (EXTRA_DIST): Add mkancesdirs.h.
12496         * modules/mkdir-p (EXTRA_DIST): Add modechange.h.
12497         * modules/mountlist (EXTRA_DIST): Add mountlist.h.
12498         * modules/openat (EXTRA_DIST): Add at-func.c openat.h openat-priv.h.
12499         * modules/pathmax (EXTRA_DIST): Add pathmax.h.
12500         * modules/physmem (EXTRA_DIST): Add physmem.h.
12501         * modules/posixtm (EXTRA_DIST): Add posixtm.h.
12502         * modules/posixver (EXTRA_DIST): Add posixver.h.
12503         * modules/quote (EXTRA_DIST): Add quote.h.
12504         * modules/quotearg (EXTRA_DIST): Add quotearg.h.
12505         * modules/readtokens (EXTRA_DIST): Add readtokens.h.
12506         * modules/readutmp (EXTRA_DIST): Add readutmp.h.
12507         * modules/regex (EXTRA_DIST): Add regcomp.c regex.h regex_internal.c
12508         regex_internal.h regexec.c.
12509         * modules/safe-read (EXTRA_DIST): Add safe-read.h.
12510         * modules/safe-write (EXTRA_DIST): Add safe-write.h.
12511         * modules/same (EXTRA_DIST): Add same.h.
12512         * modules/same-inode (EXTRA_DIST): Add same-inode.h.
12513         * modules/save-cwd (EXTRA_DIST): Add save-cwd.h.
12514         * modules/savedir (EXTRA_DIST): Add savedir.h.
12515         * modules/sha1 (EXTRA_DIST): Add sha1.h.
12516         * modules/sig2str (EXTRA_DIST): Add sig2str.h.
12517         * modules/stat-macros (EXTRA_DIST): Add stat-macros.h.
12518         * modules/stat-time (EXTRA_DIST): Add stat-time.h.
12519         * modules/stdlib-safer (EXTRA_DIST): Add stdlib-safer.h stdlib--.h.
12520         * modules/strdup (EXTRA_DIST): Add strdup.h.
12521         * modules/strftime (EXTRA_DIST): Add strftime.h.
12522         * modules/strndup (EXTRA_DIST): Add strndup.h.
12523         * modules/strnlen (EXTRA_DIST): Add strnlen.h.
12524         * modules/strverscmp (EXTRA_DIST): Add strverscmp.h.
12525         * modules/time_r (EXTRA_DIST): Add time_r.h.
12526         * modules/timespec (EXTRA_DIST): Add timespec.h.
12527         * modules/tmpfile-safer (EXTRA_DIST): Add stdio-safer.h stdio--.h.
12528         * modules/unistd-safer (EXTRA_DIST): Add unistd-safer.h unistd--.h.
12529         * modules/unlinkdir (EXTRA_DIST): Add unlinkdir.h.
12530         * modules/unlocked-io (EXTRA_DIST): Add unlocked-io.h.
12531         * modules/userspec (EXTRA_DIST): Add userspec.h.
12532         * modules/utimecmp (EXTRA_DIST): Add utimecmp.h.
12533         * modules/utimens (EXTRA_DIST): Add utimens.h.
12534         * modules/xalloc (EXTRA_DIST): Add xalloc.h.
12535         * modules/xgetcwd (EXTRA_DIST): Add xgetcwd.h.
12536         * modules/xnanosleep (EXTRA_DIST): Add xnanosleep.h.
12537         * modules/xreadlink (EXTRA_DIST): Add xreadlink.h.
12538         * modules/xstrtod (EXTRA_DIST): Add xstrtod.h.
12539         * modules/xstrtol (EXTRA_DIST): Add xstrtol.h.
12540         * modules/xstrtold (EXTRA_DIST): Add xstrtod.c xstrtod.h.
12541         * modules/yesno (EXTRA_DIST): Add yesno.h.
12542
12543 2006-08-21  Paul Eggert  <eggert@cs.ucla.edu>
12544
12545         * m4/mkdir-p.m4 (gl_MKDIR_PARENTS): Check for fchmod.
12546
12547         * m4/argmatch.m4: New file, from coreutils with AC_LIBSOURCES removed.
12548         * m4/dev-ino.m4, same-inode.m4: Remove.
12549
12550         * m4/_inttypes_h.m4 (gl_INTTYPES_H):
12551         * m4/acl.m4 (AC_FUNC_ACL):
12552         * m4/backupfile.m4 (gl_BACKUPFILE):
12553         * m4/c-strtod.m4 (gl_C99_STRTOLD):
12554         * m4/canon-host.m4 (gl_CANON_HOST):
12555         * m4/canonicalize.m4 (AC_FUNC_CANONICALIZE_FILE_NAME):
12556         * m4/chdir-long.m4 (gl_FUNC_CHDIR_LONG):
12557         * m4/chdir-safer.m4 (gl_CHDIR_SAFER):
12558         * m4/cloexec.m4 (gl_CLOEXEC):
12559         * m4/close-stream.m4 (gl_CLOSE_STREAM):
12560         * m4/closeout.m4 (gl_CLOSEOUT):
12561         * m4/dirfd.m4 (gl_FUNC_DIRFD):
12562         * m4/dirname.m4 (gl_DIRNAME):
12563         * m4/exclude.m4 (gl_EXCLUDE):
12564         * m4/exitfail.m4 (gl_EXITFAIL):
12565         * m4/fcntl-safer.m4 (gl_FCNTL_SAFER):
12566         * m4/file-type.m4 (gl_FILE_TYPE):
12567         * m4/filemode.m4 (gl_FILEMODE):
12568         * m4/filenamecat.m4 (gl_FILE_NAME_CONCAT):
12569         * m4/fpending.m4 (gl_FUNC_FPENDING):
12570         * m4/fprintftime.m4 (gl_FPRINTFTIME):
12571         * m4/fts.m4 (gl_FUNC_FTS):
12572         * m4/getcwd.m4 (gl_FUNC_GETCWD_NULL):
12573         * m4/getdate.m4 (gl_GETDATE):
12574         * m4/gethrxtime.m4 (gl_GETHRXTIME):
12575         * m4/getpagesize.m4 (gl_GETPAGESIZE):
12576         * m4/getpass.m4 (gl_FUNC_GETPASS):
12577         * m4/gettime.m4 (gl_GETTIME):
12578         * m4/getugroups.m4 (gl_GETUGROUPS):
12579         * m4/glob.m4 (gl_GLOB_SUBSTITUTE):
12580         * m4/group-member.m4 (gl_FUNC_GROUP_MEMBER):
12581         * m4/hard-locale.m4 (gl_HARD_LOCALE):
12582         * m4/hash.m4 (gl_HASH):
12583         * m4/idcache.m4 (gl_IDCACHE):
12584         * m4/lchmod.m4 (gl_FUNC_LCHMOD):
12585         * m4/lchown.m4 (gl_FUNC_LCHOWN):
12586         * m4/long-options.m4 (gl_LONG_OPTIONS):
12587         * m4/lstat.m4 (gl_FUNC_LSTAT):
12588         * m4/md5.m4 (gl_MD5):
12589         * m4/memcasecmp.m4 (gl_MEMCASECMP):
12590         * m4/memcoll.m4 (gl_MEMCOLL):
12591         * m4/mempcpy.m4 (gl_FUNC_MEMPCPY):
12592         * m4/memrchr.m4 (gl_FUNC_MEMRCHR):
12593         * m4/memxor.m4 (gl_MEMXOR):
12594         * m4/mkancesdirs.m4 (gl_MKANCESDIRS):
12595         * m4/mkdir-p.m4 (gl_MKDIR_PARENTS):
12596         * m4/modechange.m4 (gl_MODECHANGE):
12597         * m4/mountlist.m4 (gl_MOUNTLIST):
12598         * m4/nanosleep.m4 (gl_FUNC_NANOSLEEP):
12599         * m4/openat.m4 (gl_FUNC_OPENAT):
12600         * m4/pathmax.m4 (gl_PATHMAX):
12601         * m4/physmem.m4 (gl_PHYSMEM):
12602         * m4/posixtm.m4 (gl_POSIXTM):
12603         * m4/posixver.m4 (gl_POSIXVER):
12604         * m4/quote.m4 (gl_QUOTE):
12605         * m4/quotearg.m4 (gl_QUOTEARG):
12606         * m4/readtokens.m4 (gl_READTOKENS):
12607         * m4/readutmp.m4 (gl_READUTMP):
12608         * m4/regex.m4 (gl_REGEX):
12609         * m4/safe-read.m4 (gl_SAFE_READ):
12610         * m4/safe-write.m4 (gl_SAFE_WRITE):
12611         * m4/same.m4 (gl_SAME):
12612         * m4/save-cwd.m4 (gl_SAVE_CWD):
12613         * m4/savedir.m4 (gl_SAVEDIR):
12614         * m4/settime.m4 (gl_SETTIME):
12615         * m4/sha1.m4 (gl_SHA1):
12616         * m4/sig2str.m4 (gl_FUNC_SIG2STR):
12617         * m4/stat-macros.m4 (gl_STAT_MACROS):
12618         * m4/stat-time.m4 (gl_STAT_TIME):
12619         * m4/stdio-safer.m4 (gl_FOPEN_SAFER):
12620         * m4/stdlib-safer.m4 (gl_STDLIB_SAFER):
12621         * m4/strdup.m4 (gl_FUNC_STRDUP):
12622         * m4/strftime.m4 (gl_FUNC_GNU_STRFTIME):
12623         * m4/strndup.m4 (gl_FUNC_STRNDUP):
12624         * m4/strnlen.m4 (gl_FUNC_STRNLEN):
12625         * m4/strverscmp.m4 (gl_FUNC_STRVERSCMP):
12626         * m4/time_r.m4 (gl_TIME_R):
12627         * m4/timespec.m4 (gl_TIMESPEC):
12628         * m4/unistd-safer.m4 (gl_UNISTD_SAFER):
12629         * m4/unlinkdir.m4 (gl_UNLINKDIR):
12630         * m4/unlocked-io.m4 (gl_FUNC_GLIBC_UNLOCKED_IO):
12631         * m4/userspec.m4 (gl_USERSPEC):
12632         * m4/utimecmp.m4 (gl_UTIMECMP):
12633         * m4/utimens.m4 (gl_UTIMENS):
12634         * m4/xalloc.m4 (gl_XALLOC):
12635         * m4/xgetcwd.m4 (gl_XGETCWD):
12636         * m4/xnanosleep.m4 (gl_XNANOSLEEP):
12637         * m4/xreadlink.m4 (gl_XREADLINK):
12638         * m4/xstrtod.m4 (gl_XSTRTOD):
12639         * m4/yesno.m4 (gl_YESNO):
12640         Don't use AC_LIBSOURCES; instead, rely on the files in ../modules/
12641         to get the necessary .h files and whatnot.
12642
12643 2006-08-21  Mark D. Baushke  <mdb@gnu.org>
12644             Bruno Haible  <bruno@clisp.org>
12645
12646         * gnulib-tool (func_verify_module): Work around Sun's non-POSIX 1003.2
12647         /bin/sh understanding of '!' conditional negation.
12648
12649 2006-08-21  Jim Meyering  <jim@meyering.net>
12650
12651         * modules/openat (Depends-on): Really alphabetize.
12652
12653         * modules/acl (Depends-on): Add error and quote.
12654
12655         * check-module (find_included_lib_files): Add at-func.c to the
12656         ok-to-include-more-than-once white list.
12657
12658         * modules/openat (Depends-on): Add lstat.  Alphabetize.
12659
12660 2006-08-21  Bruno Haible  <bruno@clisp.org>
12661
12662         * gnulib-tool (func_emit_lib_Makefile_am, func_emit_tests_Makefile_am):
12663         Emit a pkgdata_DATA variable only if some snippets add contents to it.
12664         Reported by Martin Lambers <marlam@marlam.de>.
12665
12666 2006-08-21  Bruno Haible  <bruno@clisp.org>
12667
12668         * gnulib-tool (func_emit_lib_Makefile_am): If the snippets already
12669         specify an installation location, don't emit a noinst_LIBRARIES or
12670         noinst_LTLIBRARIES assignment.
12671
12672 2006-08-21  Bruno Haible  <bruno@clisp.org>
12673
12674         BeOS portability.
12675         * modules/mbchar (Include): Don't test HAVE_WCTYPE_H any more, since
12676         BeOS has mbrtowc() but no <wctype.h>.
12677
12678 2006-08-21  Bruno Haible  <bruno@clisp.org>
12679
12680         BeOS portability.
12681         * m4/mbchar.m4 (gl_MBCHAR): Compile mbchar.c also if <wctype.h> doesn't
12682         exist.
12683
12684 2006-08-21  Bruno Haible  <bruno@clisp.org>
12685
12686         BeOS portability.
12687         * lib/mbchar.h: Include <wctype.h> only if it exists.
12688
12689 2006-08-20  Paul Eggert  <eggert@cs.ucla.edu>
12690
12691         Remove files that are no longer needed by their respective modules.
12692         * m4/obstack.m4: Remove.
12693         * m4/strerror_r.m4: Remove.
12694         * m4/uint32_t.m4: Remove.
12695         * m4/uintptr_t.m4: Remove.
12696         * m4/ullong_max.m4: Remove.
12697         * m4/xstrtoimax.m4: Remove.
12698         * m4/xstrtoumax.m4: Remove.
12699
12700         * m4/cycle-check.m4 (gl_CYCLE_CHECK): Do not require
12701         gl_AC_TYPE_UINTMAX_T, gl_STRUCT_DEV_INO, or gl_SAME_INODE, since gnulib
12702         dependencies now capture this.
12703
12704         * m4/cycle-check.m4 (gl_CYCLE_CHECK):
12705         Do not use AC_LIBSOURCES, since gnulib modules now do this.
12706         * m4/fsusage.m4 (gl_FSUSAGE): Likewise.
12707         * m4/human.m4 (gl_HUMAN): Likewise.
12708         * m4/inttostr.m4 (gl_INTTOSTR): Likewise.
12709         * m4/xstrtol.m4 (gl_XSTRTOL): Likewise.
12710
12711         * m4/filemode.m4 (gl_FILEMODE): Require AC_STRUCT_ST_DM_MODE.
12712
12713         * m4/filemode.m4 (gl_PREREQ_FSUSAGE_EXTRA): Do not require
12714         gl_AC_TYPE_INTMAX_T or gl_AC_TYPE_UINTMAX_T, since we now require
12715         stdint.
12716         * m4/human.m4 (gl_HUMAN): Likewise.
12717         * m4/inttostr.m4 (gl_PREREQ_INTTOSTR): Likewise.
12718         * m4/mkstemp.m4 (gl_PREREQ_TEMPNAME): Likewise.
12719         * m4/strtoimax.m4 (gl_PREREQ_STRTOIMAX): Likewise.
12720         * m4/strtoumax.m4 (gl_PREREQ_STRTOUMAX): Likewise.
12721         * m4/xstrtol (gl_XSTRTOL): Likewise.
12722
12723         * m4/gethrxtime.m4 (gl_XTIME): gl_AC_TYPE_LONG_LONG ->
12724         AC_TYPE_LONG_LONG_INT.
12725         * m4/strtoimax.m4 (gl_PREREQ_STRTOIMAX): Likewise.
12726         * m4/strtoll.m4 (gl_FUNC_STRTOLL): Likewise.
12727         * m4/strtoull.m4 (gl_FUNC_STRTOULL): Likewise, for unsigned long.
12728         * m4/strtoumax.m4 (gl_PREREQ_STRTOUMAX): Likewise.
12729
12730         * m4/human.m4 (gl_HUMAN): Do not require AM_STDBOOL_H since we depend
12731         on stdbool.
12732
12733         * m4/xstrtol.m4 (gl_PREREQ_XSTRTOL_H, gl_PREREQ_XSTRTOL): Remove.
12734         (gl_PREREQ_XSTRTOUL): Remove.
12735
12736         * m4/ls-mntd-fs.m4 (gl_LIST_MOUNTED_FILE_SYSTEMS): Check for hasmntopt.
12737
12738         * m4/posixver.m4: Fix comment since head -1 now works even in POSIX
12739         mode.
12740
12741 2006-08-20  Paul Eggert  <eggert@cs.ucla.edu>
12742
12743         Add and change modules to make it easier for coreutils to use
12744         gnulib-tool.
12745         * modules/backupfile (Files): Remove m4/d-ino.m4.
12746         (Depends-on): Add d-ino.
12747         * modules/cycle-check (Depends-on): Add stdint.
12748         (lib_SOURCES): Add cycle-check.h.
12749         * modules/d-ino: New module.
12750         * modules/d-type: New module.
12751         * modules/error (Files): Remove m4/strerror_r.m4.
12752         * modules/filemode (Files): Add m4/st_dm_mode.m4.
12753         * modules/fsuage (Files): Remove m4/ulonglong.m4, m4/stdint_h.m4,
12754         m4/inttypes_h.m4, m4/uintmax_t.m4.
12755         (Depends-on): Add stdint.
12756         (lib_SOURCES): Add fsusage.h.
12757         * modules/getcwd (Files): Remove d-ino.m4.
12758         (Depends-on): Add d-ino.
12759         * modules/getndelim2 (Depends-on): Add stdint.
12760         * modules/glob (Files): Remove m4/d-type.m4.
12761         (Depends-on): Add d-type.
12762         * modules/host-os: New module.
12763         * modules/human (Files):  Remove m4/ulonglong.m4, m4/stdint_h.m4,
12764         m4/inttypes_h.m4, m4/uintmax_t.m4.
12765         * Depends-on: Add stdint.
12766         (lib_SOURCES): Add human.h.
12767         * modules/inttostr (Files): Remove m4/intmax_t.m4,
12768         m4/inttostr.m4, m4/inttypes_h.m4, m4/longlong.m4, m4/stdint_h.m4,
12769         m4/uintmax_t.m4, m4/ulonglong.m4.
12770         (Depends-on): Add stdint.
12771         (EXTRA_DIST): Add inttostr.h.
12772         * modules/lchmod: New module.
12773         * modules/link-follow: New module.
12774         * modules/mkdir-p (Files): Remove lib/lchmod.h, m4/lchmod.m4.
12775         (Depends-on): Add lchmod.
12776         * modules/mkstemp (Files): Remove m4/ulonglong.m4,
12777         m4/stdint_h.m4, m4/inttypes_h.m4, m4/uintmax_t.m4.
12778         (Depends-on): Add stdint.
12779         * modules/obstack (Files): Remove m4/inttypes_h.m4, m4/obstack.m4,
12780         m4/stdint_h.m4, m4/uintmax_t.m4, m4/ulonglong.m4.
12781         (Depends-on): Add stdint.
12782         (configure.ac): Change gl_OBSTACK to AC_FUNC_OBSTACK.
12783         * modules/perl: New module.
12784         * modules/regex (Depends-on): Add stdint.
12785         * modules/rmdir-errno: New module.
12786         * modules/strtoimax (Files): Remove m4/stdint_h.m4, m4/inttypes_h.m4,
12787         m4/intmax_t.m4.
12788         (Depends-on): Add stdint.
12789         * modules/strtoumax (Files): Remove m4/stdint_h.m4, m4/inttypes_h.m4,
12790         m4/uintmax_t.m4.
12791         (Depends-on): Add stdint.
12792         * modules/unlink-busy: New module.
12793         * modules/utimecmp (Depends-on): Add stdint.
12794         * modules/uptime: New module.
12795         * modules/winsz-ioctl: New module.
12796         * modules/winsz-termios: New module.
12797         * modules/xnanosleep (Depends-on): Add nanosleep.
12798         * modules/ullong_max: Remove.
12799         * modules/xstrtoimax (Files): Remove m4/xstrtoimax.m4.
12800         (configure.ac): Remove gl_XSTRTOIMAX; no action needed now.
12801         * modules/xstrtol (Files): Remove m4/ulonglong.m4, m4/longlong.m4,
12802         m4/stdint_h.m4, m4/inttypes_h.m4, m4/uintmax_t.m4, m4/intmax_t.m4.
12803         (Depends-on): Add inttypes.
12804         (lib_SOURCES): Add xstrtol.h.
12805         * modules/xstrtoumax (Files): Remove m4/xstrtoumax.m4.
12806         (configure.ac): Remove gl_XSTRTOUMAX; no action needed now.
12807         * MODULES.html.sh: Move 'assert' into the assert section.
12808         Move 'dummy' into the linking section.
12809         Remove ullong_max.
12810         Add section for compatibility checks for POSIX:2001 functions,
12811         and put d-ino, d-type, link-follow, rmdir-errno, unlink-busy,
12812         winsz-ioctl, and winsz-termios into it.
12813         Add lchmod.
12814         Add top-level Misc section and put host-os, perl, and uptime
12815         into it.
12816
12817 2006-08-20  Paul Eggert  <eggert@cs.ucla.edu>
12818
12819         * lib/cycle-check.h: Include <stdint.h> unconditionally, since we
12820         now assume the stdint module.  Do not include inttypes.h.
12821         * lib/fsusage.h: Likewise.
12822         * lib/getndelim2.c: Likewise.
12823         * lib/human.h: Likewise.
12824         * lib/inttostr.h: Likewise.
12825         * lib/obstack.c: Likewise.
12826         * lib/regex_internal.h: Likewise.
12827         * lib/tempname.c: Likewise.
12828         * lib/utimecmp.c: Likewise.
12829         * lib/xstrtol.h: Likewise.
12830
12831         * lib/stat_.h: Fix typo: HAVE_FUNC_LSTAT -> HAVE_LSTAT.
12832
12833         * lib/strtoimax.c: Adjust to macro name changes in Autoconf,
12834         e.g., HAVE_LONG_LONG -> HAVE_LONG_LONG_INT.
12835         * lib/xtime.h: Likewise.
12836
12837 2006-08-19  Paul Eggert  <eggert@cs.ucla.edu>
12838
12839         * modules/openat (Files): Add lib/fchmodat.c.
12840         Fixes problem reported by Jay Youngman.
12841
12842 2006-08-19  Paul Eggert  <eggert@cs.ucla.edu>
12843
12844         * lib/fchmodat.c: New file, from coreutils.  This was inadvertently
12845         omitted in the 2006-08-17 update.  Problem reported by Jay Youngman.
12846
12847 2006-08-18  Paul Eggert  <eggert@cs.ucla.edu>
12848             Bruno Haible  <bruno@clisp.org>
12849
12850         * m4/bison-i18n.m4 (BISON_I18N): Also handle the case where yacc exists
12851         and is a script that invokes bison. Tighten the code. Add comments.
12852
12853 2006-08-18  Jim Meyering  <jim@meyering.net>
12854
12855         * m4/gethrxtime.m4 (gl_PREREQ_GETHRXTIME): Also check for
12856         CLOCK_REALTIME, since gethrxtime may revert to using clock_gettime via
12857         gettime.c.  Gabor Z. Papp reported that gethrxtime-using programs
12858         failed to link due to unresolved clock_gettime on a linux-2.4.x system.
12859
12860 2006-08-18  Bruno Haible  <bruno@clisp.org>
12861
12862         * modules/bison-i18n: New file.
12863         * MODULES.html.sh (Internationalization functions): Add it.
12864
12865 2006-08-18  Bruno Haible  <bruno@clisp.org>
12866
12867         * m4/ls-mntd-fs.m4 (gl_LIST_MOUNTED_FILE_SYSTEMS): Also check for
12868         sys/statvfs.h. When getmntinfo was found, check its declaration and
12869         set either MOUNTED_GETMNTINFO or MOUNTED_GETMNTINFO2 depending on it.
12870
12871 2006-08-18  Bruno Haible  <bruno@clisp.org>
12872
12873         * m4/bison-i18n.m4: New file, from bison.
12874
12875 2006-08-18  Bruno Haible  <bruno@clisp.org>
12876
12877         * lib/mountlist.c [MOUNTED_GETMNTINFO2]: Include sys/statvfs.h.
12878         (ME_DUMMY): Treat "kernfs" as a dummy.
12879         (read_file_system_list) [MOUNTED_GETMNTINFO2]: Implement.
12880
12881 2006-08-17  Paul Eggert  <eggert@cs.ucla.edu>
12882
12883         Update from coreutils.
12884
12885         2006-08-15  Jim Meyering  <jim@meyering.net>
12886
12887         * m4/openat.m4 (gl_FUNC_OPENAT): Add at-func.c via AC_LIBSOURCES.
12888
12889         2006-01-17  Jim Meyering  <jim@meyering.net>
12890
12891         * m4/fts.m4 (gl_FUNC_FTS_CORE): Depend on gl_FUNC_OPENAT.
12892
12893         2006-01-11  Jim Meyering  <jim@meyering.net>
12894
12895         * m4/openat.m4 (gl_FUNC_OPENAT): Require and compile fchmodat.c.
12896         Check for the lchmod function.
12897
12898 2006-08-17  Paul Eggert  <eggert@cs.ucla.edu>
12899
12900         Update from coreutils.
12901
12902         * lib/__fpending.h: Add copyright notice.
12903         * lib/fprintftime.h: Likewise.
12904         * lib/savedir.c: Use (C) in copyright notice.
12905         * lib/savedir.h: Likewise.
12906
12907         2006-08-15  Jim Meyering  <jim@meyering.net>
12908
12909         * lib/at-func.c: New file, with the logic of all emulated at-functions.
12910         * lib/openat-priv.h: Include <errno.h> and define ENOSYS,
12911         in support of the EXPECTED_ERRNO macro.
12912         * lib/openat.c (fstatat, unlinkat, fchownat): Remove function
12913         definitions.  Instead, define the appropriate symbols and include
12914         "at-func.c".
12915         * lib/mkdirat.c (mkdirat): Likewise.
12916         * lib/fchmodat.c (fchmodat): Likewise.
12917         (ENOSYS): Remove definition.
12918         * lib/openat.c: Don't include <errno.h>, now that "openat-priv.h" does
12919         it.  Don't include "unistd--.h" -- it wasn't ever used.
12920
12921         2006-01-17  Jim Meyering  <jim@meyering.net>
12922
12923         Rewrite fts.c not to change the current working directory,
12924         by using openat, fstatat, fdopendir, etc..
12925
12926         * lib/fts.c [! _LIBC]: Include "openat.h" and "unistd--.h".
12927         (HAVE_OPENAT_SUPPORT): Define.
12928         [_LIBC] (fchdir): Don't undef or define; no longer used.
12929         (FCHDIR): Define in terms of cwd_advance_fd rather than fchdir.
12930         Now, this `function' always succeeds, and consumes its file descriptor
12931         parameter -- so callers must not close such FDs.  Update callers.
12932         (diropen_fd, opendirat, cwd_advance_fd): New functions.
12933         (diropen): Add parameter, SP.  Adjust all callers.
12934         Implement using diropen_fd, rather than open.
12935         (fts_open): Initialize new member, fts_cwd_fd.
12936         Remove fts_rft-setting code.
12937         (fts_close): Close fts_cwd_fd, if necessary.
12938         (__opendir2): Define in terms of opendir or opendirat,
12939         depending on whether the FST_NOCHDIR flag is set.
12940         (fts_build): Since fts_safe_changedir consumes its FD, and since
12941         this code must do `closedir(dirp)', dup the dirfd(dirp) argument,
12942         and close the dup'd file descriptor upon failure.
12943         (fts_stat): Use fstatat(...AT_SYMLINK_NOFOLLOW) in place of lstat.
12944         (fts_safe_changedir): Tweak semantics to reflect that this function
12945         now calls cwd_advance_fd and hence consumes its FD argument.
12946         * lib/fts_.h [struct FTS] (fts_cwd_fd): New member.
12947         [struct FTS] (fts_rft): Remove now-unused member.
12948         [struct FTS] (fts_cycle.state): Improve comment.
12949
12950         * lib/openat.c (openat_needs_fchdir): New function.
12951         * lib/openat.h (openat_needs_fchdir): Declare it.
12952
12953 2006-08-16  Paul Eggert  <eggert@cs.ucla.edu>
12954
12955         * lib/memcoll.c (memcoll): Set errno = 0 in the shortcut case, too.
12956         Problem and fix reported by Pádraig Brady in
12957         <http://lists.gnu.org/archive/html/bug-coreutils/2006-08/msg00099.html>.
12958
12959 2006-08-15  Paul Eggert  <eggert@cs.ucla.edu>
12960
12961         * modules/cycle-check (configure.ac): Add gl_CYCLE_CHECK.
12962
12963 2006-08-15  Paul Eggert  <eggert@cs.ucla.edu>
12964
12965         * lib/memcoll.c (memcoll): Optimize for the common case where the
12966         arguments are bytewise equal.
12967
12968 2006-08-15  Paul Eggert  <eggert@cs.ucla.edu>
12969
12970         * doc/regexprops-generic.texi: Add a copyright notice.
12971
12972 2006-08-15  Bruno Haible  <bruno@clisp.org>
12973
12974         * modules/tmpdir (License): Change to LGPL.
12975
12976 2006-08-15  Bruno Haible  <bruno@clisp.org>
12977
12978         * gnulib-tool (func_all_modules, func_verify_module): COPYING is not a
12979         module.
12980
12981 2006-08-14  Simon Josefsson  <jas@extundo.com>
12982
12983         * config/srclist.txt: Add gnupload.
12984
12985 2006-08-14  Paul Eggert  <eggert@cs.ucla.edu>
12986
12987         Change copyright notice from LGPL 2 to GPL 2, since that's the
12988         standard form used in the gnulib repository.
12989         * tests/test-lock.c: Likewise.
12990         * tests/test-stdint.c: Likewise.
12991         * tests/test-tls.c: Likewise.
12992
12993         * users.txt: Add bison, diffutils, libprelude, prelude-lml,
12994         prelude-manager.  User shorter URLs for GNU projects, without '?'.
12995         Add copyright notice.
12996
12997         * check-module: Add copyright notice.  Output a copyright
12998         notice if "--version" is specified.
12999         * modules/COPYING: New file.
13000         * tests/test-getaddrinfo.c: Add copyright notice.
13001         * tests/test-verify.c: Likewise.
13002
13003 2006-08-14  Paul Eggert  <eggert@cs.ucla.edu>
13004
13005         Change copyright notice from LGPL 2 to GPL 2, since that's the
13006         standard form used in the gnulib repository.
13007         * lib/lock.c: LGPL -> GPL.
13008         * lib/lock.h: Likewise.
13009         * lib/strnlen1.c: Likewise.
13010         * lib/strnlen1.h: Likewise.
13011         * lib/tls.c: Likewise.
13012         * lib/tls.h: Likewise.
13013         * lib/tmpdir.c: Likewise.
13014
13015         * lib/TODO: Remove; this belongs only in coreutils.
13016
13017 2006-08-14  Paul Eggert  <eggert@cs.ucla.edu>
13018
13019         Add copyright notices to long-enough files that lack them, since
13020         otherwise the files aren't clearly free.  Use the same notice that
13021         getdate.texi already uses.
13022         * doc/alloca-opt.texi: Add copyright notice.
13023         * doc/alloca.texi: Likewise.
13024         * doc/ctime.texi: Likewise.
13025         * doc/functions.texi: Likewise.
13026         * doc/gcd.texi: Likewise.
13027         * doc/gnulib-tool.texi: Likewise.
13028         * doc/inet_ntoa.texi: Likewise.
13029         * doc/visibility.texi: Likewise.
13030
13031         * doc/getdate.texi: Update FDL version from 1.1 to 1.2.
13032         * doc/quote.texi: Add copyright notice.
13033
13034         * doc/solaris-versions: Add SunOS 5.10, SunOS 1.x, SunOS 4.0, SunOS
13035         4.0.x, SunOS 4.1.1.1, SunOS 4.1.1_U1, SunOS 4.1.3B.  SunOS 4.1.3
13036         was Solaris 1.1A.  Remove space before B in Solaris 1.1.1B.
13037         Mention SunOS 5.11.  Mention that everything before SunOS 5.7
13038         is now obsolete, and give a pointer to the Sun list.
13039         Add copyright notice.
13040
13041 2006-08-14  Paul Eggert  <eggert@cs.ucla.edu>
13042
13043         * config/srclistvars.sh: Add copyright notice.
13044
13045 2006-08-14  Eric Blake  <ebb9@byu.net>
13046
13047         Import the following change from libc:
13048
13049         2006-08-12  Ulrich Drepper  <drepper@redhat.com>
13050
13051         Upstream bug 2997.
13052         * lib/misc/error.c: Add space between program name and message if file
13053         name is missing.
13054
13055 2006-08-12  Karl Berry  <karl@gnu.org>
13056
13057         * config/srclist.txt (ssize_t.m4, sig_atomic_t.m4, signalblocking.m4):
13058         remove, these originate in gnulib now.
13059
13060 2006-08-11  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
13061
13062         * doc/Makefile (standards.info standards.html standards.dvi):
13063         Also depend on make-stds.texi.
13064
13065 2006-08-11  Paul Eggert  <eggert@cs.ucla.edu>
13066
13067         * lib/pipe-safer.c (pipe_safer): Fix misspelling: HAVE_FUNC_PIPE ->
13068         HAVE_PIPE.  Fix a file descriptor leak when fd_safer fails.
13069
13070         * lib/regex_internal.c (re_string_skip_chars): Don't assume WEOF fits
13071         in wchar_t.  Problem reported by Eric Blake.
13072
13073         * lib/snprintf.c (snprintf): memcpy LEN bytes, not SIZE - 1, when
13074         LEN is smaller than SIZE.  Suggested by Bruno Haible.
13075         Also, help the compiler to keep LEN in a register.
13076
13077 2006-08-11  Eric Blake  <ebb9@byu.net>
13078
13079         * users.txt: Sort.  Add tar.
13080
13081 2006-08-11  Bruno Haible  <bruno@clisp.org>
13082
13083         * users.txt: New file.
13084
13085 2006-08-11  Bruno Haible  <bruno@clisp.org>
13086
13087         * m4/wcwidth.m4 (gl_FUNC_WCWIDTH): Include <stdio.h> and <time.h>
13088         before <wchar.h>. Needed for OSF/1 and BSD/OS.
13089
13090 2006-08-10  Paul Eggert  <eggert@cs.ucla.edu>
13091
13092         * modules/snprintf (Depends-on): Remove minmax.
13093         (Maintainer): Add self and Bruno.
13094
13095 2006-08-10  Paul Eggert  <eggert@cs.ucla.edu>
13096
13097         * lib/.cppi-disable: Add snprintf.h, socket_.h.
13098         * lib/snprintf.c: Include <errno.h> and <limits.h>.
13099         (EOVERFLOW): Define if the system does not.
13100         Do not include "minmax.h"; it wasn't used.
13101         (snprintf): Don't assume size_t promotes to an unsigned type.
13102         Fix bug when generated string was too long for the buffer: the
13103         buffer's contents are supposed to be the initial prefix of the
13104         output.  Don't assume vasnprintf returns EOVERFLOW if the size
13105         exceeds INT_MAX; do the check ourselves.
13106
13107         Import the following changes from libc:
13108
13109         2006-06-02  Jakub Jelinek  <jakub@redhat.com>
13110
13111         * lib/posix/regex_internal.c (re_string_skip_chars): If no character
13112         has been converted at all, set *last_wc to WEOF.  If mbrtowc failed,
13113         set wc to the byte which couldn't be converted.
13114         (re_string_reconstruct): Don't clear valid_raw_len before calling
13115         re_string_skip_chars.  If wc is WEOF after re_string_skip_chars, set
13116         tip_context using re_string_context_at.
13117
13118         2006-05-02  Ulrich Drepper  <drepper@redhat.com>
13119
13120         * lib/posix/regex.h: g++ still cannot handled [restrict].
13121
13122         2006-04-21  Ulrich Drepper  <drepper@redhat.com>
13123
13124         * lib/posix/regex.h: Remove special handling for VMS.
13125
13126 2006-08-10  Jim Meyering  <jim@meyering.net>
13127
13128         * modules/same-inode: New module.
13129         * modules/dev-ino: New module.
13130         * modules/cycle-check: Depend on these modules, rather than simply
13131         including their .h files.
13132         (Makefile.am): Don't list cycle-check.[ch] here, now that they're
13133         required via m4/cycle-check.m4.
13134         * modules/same: Depend on new same-inode module, rather than
13135         including same-inode.h.
13136         * modules/chdir-safer: New file.
13137
13138         * modules/chown (Depends-on): Add stat-macros.
13139
13140 2006-08-10  Jim Meyering  <jim@meyering.net>
13141
13142         * m4/cycle-check.m4: New file.
13143         Require gl_STRUCT_DEV_INO and gl_SAME_INODE.
13144         * m4/dev-ino.m4, m4/same-inode.m4: New files.
13145
13146 2006-08-10  Eric Blake  <ebb9@byu.net>
13147
13148         * modules/verror (Depends-on): Remove bogus gl_VERROR that snuck
13149         in from original proposal.
13150
13151 2006-08-10  Eric Blake  <ebb9@byu.net>
13152         and Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
13153
13154         * gnulib-tool (func_import): Detect unexpanded macros in gnulib
13155         namespace.
13156
13157 2006-08-10  Bruno Haible  <bruno@clisp.org>
13158
13159         * gnulib-tool (func_create_testdir): Detect unexpanded macros here
13160         as well.
13161
13162 2006-08-09  Paul Eggert  <eggert@cs.ucla.edu>
13163
13164         Sync from coreutils.
13165
13166         2006-07-19  Mike Frysinger  <vapier@gentoo.org>
13167
13168         * lib/mountlist.c [ME_REMOTE]: Filter out cifs.
13169         Reported by Toralf Förster in <http://bugs.gentoo.org/141012>.
13170
13171 2006-08-09  Paul Eggert  <eggert@cs.ucla.edu>
13172
13173         * modules/restrict: Remove; no longer needed now that we assume
13174         Autoconf 2.59 or later.
13175         * MODULES.html.sh: Remove 'restrict'.
13176         * modules/argp (Depends-on): Remove 'restrict'.
13177         * modules/base64 (Depends-on): Likewise.
13178         * modules/gc (Depends-on): Likewise.
13179         * modules/getaddrinfo (Depends-on): Likewise.
13180         * modules/glob (Depends-on): Likewise.
13181         * modules/inet_ntop (Depends-on): Likewise.
13182         * modules/inet_pton (Depends-on): Likewise.
13183         * modules/memxor (Depends-on): Likewise.
13184         * modules/regex (Depends-on): Likewise.
13185         * modules/strtok_r (Depends-on): Likewise.
13186         * modules/time_r (Depends-on): Likewise.
13187
13188 2006-08-09  Paul Eggert  <eggert@cs.ucla.edu>
13189
13190         * m4/argp.m4 (gl_ARGP): Require AC_C_RESTRICT.
13191         * m4/gc.m4 (gl_PREREQ_GC): Likewise.
13192         * m4/glob.m4 (gl_PREREQ_GLOB): Likewise.
13193         * m4/inet_ntop.m4 (gl_PREREQ_INET_NTOP): Likewise.
13194         * m4/inet_pton.m4 (gl_PREREQ_INET_PTON): Likewise.
13195         * m4/memxor.m4 (gl_MEMXOR): Likewise.
13196         * m4/restrict.m4: Remove; no longer needed.  All remaining uses of
13197         gl_C_RESTRICT replaced by AC_C_RESTRICT.
13198
13199         Merge from coreutils.
13200         * m4/regex.m4 (gl_PREREQ_REGEX): Require AC_C_RESTRICT, not
13201         gl_C_RESTRICT, now that we assume Autoconf 2.59 or later.
13202         * m4/strtok_r.m4 (gl_FUNC_STRTOK_R): Likewise.
13203         * m4/time_r.m4 (gl_TIME_R): Likewise.
13204
13205 2006-08-09  Karl Berry  <karl@gnu.org>
13206
13207         * config/srclist.txt: no more gettext-tools, per Bruno.
13208
13209 2006-08-08  Eric Blake  <ebb9@byu.net>
13210
13211         * modules/verror: New module.
13212         * MODULES.html.sh: Document it.
13213
13214 2006-08-08  Eric Blake  <ebb9@byu.net>
13215
13216         * lib/verror.h, lib/verror.c: New files.
13217
13218 2006-08-08  Eric Blake  <ebb9@byu.net>
13219
13220         * lib/verror.c (verror_at_line): Work around glibc bug 2997, so that
13221         verror_at_line output complies with GNU Coding Standards even when
13222         file is NULL.
13223
13224 2006-08-07  Bruno Haible  <bruno@clisp.org>
13225
13226         * lib/allocsa.h (sa_alignof) [_AIX]: Also consider 'long long' in newer
13227         versions of AIX.
13228         Reported by Ralf Wildenhues.
13229
13230 2006-08-07  Bruno Haible  <bruno@clisp.org>
13231
13232         * gnulib-tool (func_create_testdir): Wrap the set of autoconf snippets
13233         in an AC_DEFUN. Needed so that the autoconf snippets can use
13234         AC_REQUIRE.
13235
13236 2006-08-06  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
13237
13238         * gnulib-tool (func_emit_lib_Makefile_am, func_emit_tests_Makefile_am):
13239         Initialize pkgdata_DATA.
13240         * modules/javaversion (Makefile.am): Add to pkgdata_DATA, rather than
13241         overriding it.
13242
13243 2006-08-06  Eric Blake  <ebb9@byu.net>
13244
13245         * lib/error.h: Fold in some upstream changes from glibc.
13246         * lib/error.c: Likewise.
13247
13248 2006-08-04  Bruno Haible  <bruno@clisp.org>
13249
13250         * gnulib-tool (func_emit_lib_Makefile_am, func_emit_tests_Makefile_am):
13251         Make the mostlyclean-local rule depend on mostlyclean-generic.
13252         Reported by Jim Meyering. Solution suggested by Ralf Wildenhues.
13253
13254 2006-07-31  Bruno Haible  <bruno@clisp.org>
13255
13256         * m4/localcharset.m4 (gl_LOCALCHARSET): Remove tests for <stddef.h>,
13257         <stdlib.h>, <string.h>.
13258
13259 2006-07-30  Bruno Haible  <bruno@clisp.org>
13260
13261         * modules/readlink (License): Change to LGPL.
13262
13263 2006-07-30  Bruno Haible  <bruno@clisp.org>
13264
13265         * modules/javaversion (Makefile.am): Distribute javaversion.java and
13266         javaversion.class. Also install javaversion.class in $(pkgdatadir) and
13267         set PKGDATADIR to point to it.
13268
13269 2006-07-30  Bruno Haible  <bruno@clisp.org>
13270
13271         * modules/csharpexec (configure.ac): Comment out macro invocation.
13272         * modules/javaexec (configure.ac): Likewise.
13273         * modules/javacomp-script (configure.ac): Likewise.
13274
13275         * modules/csharpcomp-script (configure.ac): Use AC_REQUIRE.
13276
13277 2006-07-30  Bruno Haible  <bruno@clisp.org>
13278
13279         * modules/clean-temp (Depends-on): Add linkedhash-list, remove
13280         linked-list.
13281
13282 2006-07-30  Bruno Haible  <bruno@clisp.org>
13283
13284         * m4/wcwidth.m4 (gl_FUNC_WCWIDTH): Assume <string.h> exists.
13285
13286 2006-07-30  Bruno Haible  <bruno@clisp.org>
13287
13288         * gnulib-tool (func_emit_lib_Makefile_am, func_emit_tests_Makefile_am):
13289         Initialize MOSTLYCLEANFILES to core and *.stackdump, so that core dumps
13290         get removed.
13291
13292 2006-07-29  Bruno Haible  <bruno@clisp.org>
13293
13294         Make it possible for gnulib-tool to work with locally modified or
13295         augmented gnulib repositories.
13296         * gnulib-tool (func_usage): Document --local-dir option.
13297         (local_gnulib_dir): New variable.
13298         Handle --local-dir option.
13299         (func_lookup_file): New function.
13300         (func_all_modules, func_verify_module): Look also in $local_gnulib_dir.
13301         (func_get_description, func_get_filelist, func_get_description,
13302         func_get_filelist, func_get_dependencies, func_get_autoconf_snippet,
13303         func_get_automake_snippet, func_get_include_directive,
13304         func_get_license, func_get_maintainer): Use func_lookup_file.
13305         (func_import, func_create_testdir): Use func_lookup_file.
13306
13307 2006-07-29  Bruno Haible  <bruno@clisp.org>
13308
13309         * modules/setenv (Depends-on): Add unistd.
13310
13311 2006-07-29  Bruno Haible  <bruno@clisp.org>
13312
13313         * lib/setenv.c: Undo unintended modification done on 2006-02-27.
13314
13315 2006-07-29  Bruno Haible  <bruno@clisp.org>
13316
13317         * lib/localcharset.c: Assume <stddef.h>, <stdlib.h>, <string.h> exist.
13318
13319 2006-07-29  Bruno Haible  <bruno@clisp.org>
13320
13321         * gnulib-tool (import, update): If there is no Makefile.am, look at
13322         aclocal.m4, instead of bailing out.
13323
13324 2006-07-29  Bruno Haible  <bruno@clisp.org>
13325
13326         * gnulib-tool (func_usage): Revert most of the 2006-07-15 change.
13327         Categorize the options by when they are useful.
13328
13329 2006-07-29  Bruno Haible  <bruno@clisp.org>
13330
13331         * gnulib-tool (func_usage): Document option --no-libtool.
13332         Handle option --no-libtool.
13333         (func_emit_lib_Makefile_am, func_emit_tests_Makefile_am): Update
13334         for changed semantics of $libtool variable.
13335         (func_import): Likewise. If libtool is not used, show this through
13336         an option --no-libtool.
13337         (func_create_testdir): Update.
13338
13339 2006-07-29  Bruno Haible  <bruno@clisp.org>
13340
13341         * gnulib-tool (func_import): Extend error message about missing
13342         --doc-base.
13343
13344 2006-07-29  Bruno Haible  <bruno@clisp.org>
13345
13346         * gnulib-tool (func_import): Don't create the $docbase directory if
13347         there is no file to store there.
13348
13349 2006-07-29  Bruno Haible  <bruno@clisp.org>
13350
13351         * gnulib-tool (autoconf_minversion): If a --dir option is given and
13352         relevant, look for configure.ac there, not in the current directory.
13353         Also use a simple search for AC_PREREQ, not "autoconf --trace".
13354
13355 2006-07-29  Bruno Haible  <bruno@clisp.org>
13356
13357         * gnulib-tool (SORT): New variable.
13358         (func_usage): Undocument --assume-autoconf option.
13359         Remove --assume-autoconf option handling.
13360         (autoconf_minversion): Determine from the contents of configure.ac.
13361         (func_import): Remove autoconf_minversion handling.
13362         Suggested by Eric Blake.
13363
13364 2006-07-29  Bruno Haible  <bruno@clisp.org>
13365
13366         * doc/gnulib-tool.texi (gl_LIBTOOL): Mention --no-libtool option.
13367
13368 2006-07-29  Bruno Haible  <bruno@clisp.org>
13369
13370         * config/srclist.txt (*setenv.[ch]): Remove rules.
13371
13372 2006-07-28  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
13373
13374         * m4/inet_pton.m4, inet_ntop.m4: Check for netinet/in.h too.
13375
13376 2006-07-28  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
13377
13378         * lib/inet_ntop.h, inet_pton.h: Need to include netinet/in.h before
13379         arpa/inet.h.
13380
13381 2006-07-28  Simon Josefsson  <jas@extundo.com>
13382
13383         * modules/inet_ntop (Depends-on): Depend on arpa_inet.
13384         * modules/inet_pton (Depends-on): Likewise.
13385
13386 2006-07-28  Simon Josefsson  <jas@extundo.com>
13387
13388         * m4/netinet_in_h.m4: New file.
13389
13390 2006-07-28  Simon Josefsson  <jas@extundo.com>
13391
13392         * lib/inet_ntop.h, inet_pton.h: No need to guard netinet/in.h
13393         #include's.
13394
13395 2006-07-28  Simon Josefsson  <jas@extundo.com>
13396
13397         * lib/inet_ntop.h, inet_pton.h: No need to guard arpa/inet.h
13398         #include's.
13399
13400 2006-07-28  Paul Eggert  <eggert@cs.ucla.edu>
13401
13402         * lib/modechange.c (mode_compile): Numeric modes now affect setuid and
13403         setgid on directories only if they set these bits.
13404         * lib/modechange.h: Remove obsolete comment about masks.
13405
13406 2006-07-28  Eric Blake  <ebb9@byu.net>
13407
13408         * lib/regex_internal.h (struct re_dfa_t) [!_LIBC]: Avoid invalid C89
13409         macro expansion.
13410
13411 2006-07-28  Bruno Haible  <bruno@clisp.org>
13412
13413         * lib/inet_ntop.h, inet_pton.h: Use #if HAVE* instead of #ifdef HAVE*.
13414
13415 2006-07-28  Bruno Haible  <bruno@clisp.org>
13416
13417         * m4/mbchar.m4 (gl_MBCHAR): Also test for iswcntrl.
13418
13419 2006-07-28  Bruno Haible  <bruno@clisp.org>
13420
13421         * lib/mbchar.h (iswalnum, iswalpha, iswblank, iswcntrl, iswdigit,
13422         iswgraph, iswlower, iswprint, iswpunct, iswspace, iswupper, iswxdigit):
13423         Define fallbacks.
13424         Avoids link error on FreeBSD 4.x.
13425         Reported by Yoann Vandoorselaere <yoann.v@prelude-ids.com>.
13426
13427         * lib/wcwidth.h (iswprint): Assume an ASCII compatible wide character
13428         encoding.
13429         * lib/mbswidth.c (iswcntrl): Likewise.
13430
13431 2006-07-27  Bruno Haible  <bruno@clisp.org>
13432
13433         * m4/stdint.m4 (gl_STDINT_H): Define __STDC_CONSTANT_MACROS during the
13434         test.
13435
13436 2006-07-27  Bruno Haible  <bruno@clisp.org>
13437
13438         * lib/stdint_.h (INT*_C, UINT*_C) [C++]: Define these if
13439         __STDC_CONSTANT_MACROS is defined, not if __STDC_LIMIT_MACROS is
13440         defined.
13441
13442 2006-07-26  Eric Blake  <ebb9@byu.net>
13443
13444         * m4/unistd-safer.m4 (gl_UNISTD_SAFER): Check for missing pipe.
13445
13446 2006-07-26  Eric Blake  <ebb9@byu.net>
13447
13448         * lib/mkstemp-safer.c [! HAVE_MKSTEMP]: Add prototype for platforms
13449         like mingw that lack mkstemp.
13450         * lib/pipe-safer.c (pipe_safer) [!HAVE_FUNC_PIPE]: Provide fallback to
13451         avoid compilation warning on mingw.
13452
13453 2006-07-26  Bruno Haible  <bruno@clisp.org>
13454
13455         * m4/stdint.m4 (gl_STDINT_H): Also verify the existence of the macros
13456         INT*_MIN, INT_LEAST*_MAX, INT_LEAST*_MIN, UINT_LEAST*_MAX,
13457         INT_FAST*_MIN, INTPTR_MIN.
13458
13459 2006-07-25  Bruno Haible  <bruno@clisp.org>
13460
13461         * modules/version-etc (Depends-on): Add stdarg.
13462
13463 2006-07-25  Bruno Haible  <bruno@clisp.org>
13464
13465         * m4/stdint.m4 (gl_INTEGER_TYPE_SUFFIX): Avoid 'eval' in front of
13466         complex commands.
13467
13468 2006-07-25  Bruno Haible  <bruno@clisp.org>
13469
13470         * lib/version-etc.c (version_etc_va): Use va_copy, assumed to be
13471         defined in <stdarg.h> or config.h.
13472
13473 2006-07-24  Paul Eggert  <eggert@cs.ucla.edu>
13474
13475         * m4/stdio-safer.m4 (gl_FOPEN_SAFER, gl_TMPFILE_SAFER): New macros.
13476         (gl_STDIO_SAFER): Remove.
13477
13478 2006-07-24  Paul Eggert  <eggert@cs.ucla.edu>
13479
13480         * MODULES.html.sh (File stream based Input/Output):
13481         Add fopen-safer, tmpfile-safer; remove stdio-safer.
13482         * modules/getusershell (Depends-on): Change stdio-safer to fopen-safer.
13483         * modules/fopen-safer, modules/tmpfile-safer: New files.
13484         * modules/stdio-safer: Remove.
13485
13486 2006-07-24  Bruno Haible  <bruno@clisp.org>
13487
13488         * modules/tmpdir: New file.
13489         * MODULES.html.sh (File system functions): Add it.
13490
13491 2006-07-24  Bruno Haible  <bruno@clisp.org>
13492
13493         * modules/javacomp (Depends-on): Add unistd, javaversion, binary-io,
13494         getline, pathname, fwriteerror, clean-temp, xvasprintf, strstr.
13495
13496 2006-07-24  Bruno Haible  <bruno@clisp.org>
13497
13498         * modules/clean-temp: New file.
13499
13500 2006-07-24  Bruno Haible  <bruno@clisp.org>
13501
13502         * m4/tmpdir.m4: New file, from GNU gettext.
13503
13504 2006-07-24  Bruno Haible  <bruno@clisp.org>
13505
13506         * lib/tmpdir.h: New file, from GNU gettext.
13507         * lib/tmpdir.c: New file, from GNU gettext.
13508
13509 2006-07-24  Bruno Haible  <bruno@clisp.org>
13510
13511         * lib/clean-temp.h: New file, from GNU gettext.
13512         * lib/clean-temp.c: New file, from GNU gettext.
13513
13514 2006-07-23  Eric Blake  <ebb9@byu.net>
13515
13516         * modules/stdio-safer (Files): Add tmpfile-safer.c.
13517         (Depends-on): Add binary-io.
13518
13519 2006-07-23  Eric Blake  <ebb9@byu.net>
13520
13521         * m4/stdio-safer.m4 (gl_STDIO_SAFER): Add tmpfile-safer.c.
13522
13523 2006-07-23  Eric Blake  <ebb9@byu.net>
13524
13525         * lib/tmpfile-safer.c: New file.
13526         * lib/stdio-safer.h (fopen_safer): Add prototype.
13527         * lib/stdio--.h (tmpfile): Make safer.
13528
13529 2006-07-23  Bruno Haible  <bruno@clisp.org>
13530
13531         * lib/gl_anylinked_list2.h (ASYNCSAFE): New macro.
13532         (gl_linked_add_first, gl_linked_add_last, gl_linked_add_before,
13533         gl_linked_add_after, gl_linked_add_at, gl_linked_remove_node,
13534         gl_linked_remove_at): Use it.
13535
13536 2006-07-22  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
13537         and Simon Josefsson <jas@extundo.com>
13538
13539         * lib/getaddrinfo.h (AI_PASSIVE): Make sure it is defined.
13540
13541         * lib/getaddrinfo.c (getaddrinfo): Support AI_PASSIVE.
13542
13543 2006-07-22  Paul Eggert  <eggert@cs.ucla.edu>
13544
13545         * modules/close-stream: New file.
13546         * modules/closeout (Description): Make it clear that it exits
13547         with a diagnostic on error.
13548         (Depends-on): Add close-stream.  Remove fpending, stdbool.
13549         * MODULES.html.sh (File stream based Input/Output): Add close-stream.
13550
13551 2006-07-22  Paul Eggert  <eggert@cs.ucla.edu>
13552
13553         * m4/close-stream.m4: New file.
13554
13555 2006-07-22  Paul Eggert  <eggert@cs.ucla.edu>
13556
13557         * lib/close-stream.c, lib/close-stream.h: New files.
13558
13559 2006-07-22  Bruno Haible  <bruno@clisp.org>
13560
13561         Merge from GNU gettext 0.15.
13562
13563         2006-05-01  Bruno Haible  <bruno@clisp.org>
13564
13565                 * build-aux/javacomp.sh.in: Update for changed javacomp.m4.
13566
13567         2006-07-22  Bruno Haible  <bruno@clisp.org>
13568
13569                 * modules/javaversion: New file.
13570                 * MODULES.html.sh (Java): Add javaversion.
13571
13572         2006-03-12  Bruno Haible  <bruno@clisp.org>
13573
13574                 * build-aux/javaexec.sh.in: Update for changed javaexec.m4.
13575
13576         2005-12-04  Bruno Haible  <bruno@clisp.org>
13577
13578                 * build-aux/csharpexec.sh.in: Add support for 'clix' launcher
13579                 (untested).
13580
13581         2006-06-21  Bruno Haible  <bruno@clisp.org>
13582
13583                 Avoid warnings from recent versions of mcs.
13584                 * build-aux/csharpcomp.sh.in (options_mcs): Don't use options
13585                 -o, -L, -r any more. Use options documented since mcs-1.0
13586                 instead. Similarly for -g.
13587
13588         2005-12-04  Bruno Haible  <bruno@clisp.org>
13589
13590                 * build-aux/csharpcomp.sh.in: Suffix for resources is
13591                 .resources, not .resource.
13592
13593         2005-07-09  Bruno Haible  <bruno@clisp.org>
13594
13595                 * build-aux/csharpcomp.sh.in (options_csc): For -l option,
13596                 add a .dll suffix.
13597                 Reported by Mark Junker <mjscod@gmx.de>.
13598
13599         2006-07-22  Bruno Haible  <bruno@clisp.org>
13600
13601                 * modules/gettext: Upgrade to gettext-0.15.
13602                 (Files): Remove m4/isc-posix.m4. Add m4/lock.m4,
13603                 m4/visibility.m4.
13604                 Replace m4/inttypes.m4 with m4/inttypes-h.m4.
13605
13606 2006-07-22  Bruno Haible  <bruno@clisp.org>
13607
13608         Merge from GNU gettext 0.15.
13609
13610         2006-03-25  Bruno Haible  <bruno@clisp.org>
13611
13612                 * lib-link.m4 (AC_LIB_LINKFLAGS_FROM_LIBS): New macro.
13613
13614         2006-07-21  Bruno Haible  <bruno@clisp.org>
13615
13616                 * javacomp.m4 (gt_JAVACOMP): Convert target_version "null" to
13617                 "1.1".
13618
13619         2006-05-09  Bruno Haible  <bruno@clisp.org>
13620
13621                 * javacomp.m4 (gt_JAVACOMP): On Cygwin, set
13622                 CLASSPATH_SEPARATOR to a semicolon. Use CLASSPATH_SEPARATOR
13623                 for the conftestver execution.
13624
13625         2006-05-01  Bruno Haible  <bruno@clisp.org>
13626
13627                 * javacomp.m4 (gt_JAVACOMP): Accept a source-version and an
13628                 optional target-version argument. Verify that the compiler
13629                 groks source of the specified source-version, or add -source
13630                 option as necessary. Verify that the compiler produces
13631                 bytecode in the specified target-version, or add -target and
13632                 -source options as necessary. Make the result of the test
13633                 available as variable CONF_JAVAC. Also log error output in
13634                 config.log.
13635
13636         2006-03-11  Bruno Haible  <bruno@clisp.org>
13637
13638                 * javacomp.m4 (gt_JAVACOMP): Treat gcj-4.x like gcj-3.x.
13639
13640         2006-05-09  Bruno Haible  <bruno@clisp.org>
13641
13642                 * javaexec.m4 (gt_JAVAEXEC): On Cygwin, set
13643                 CLASSPATH_SEPARATOR to a semicolon.
13644
13645         2006-03-12  Bruno Haible  <bruno@clisp.org>
13646
13647                 * javaexec.m4 (gt_JAVAEXEC): Make the result of the test
13648                 available as variable CONF_JAVA, for subsequent autoconf
13649                 tests. Also log error output in config.log.
13650
13651         2006-07-19  Bruno Haible  <bruno@clisp.org>
13652
13653                 * getline.m4 (AM_FUNC_GETLINE): When cross-compiling, assume
13654                 that getline works on glibc2 systems. Needed to avoid trouble
13655                 in relocatable.c.
13656                 Reported by Nils Magnus Larsgard <nmlarsgaard@atmel.no>.
13657
13658         2005-12-04  Bruno Haible  <bruno@clisp.org>
13659
13660                 * csharpexec.m4 (gt_CSHARPEXEC): Add support for 'clix'
13661                 launcher (untested).
13662
13663         2005-12-04  Bruno Haible  <bruno@clisp.org>
13664
13665                 * csharpcomp.m4 (gt_CSHARPCOMP): Also set CSHARPCOMPFLAGS.
13666
13667         2006-07-22  Bruno Haible  <bruno@clisp.org>
13668
13669                 * gettext.m4: Update from GNU gettext-0.15.
13670                 * nls.m4: Likewise.
13671                 * po.m4: Likewise.
13672                 * inttypes-pri.m4: Likewise.
13673                 * inttypes-h.m4: Renamed from inttypes.m4.
13674                 (gl_HEADER_INTTYPES_H): Renamed from gt_HEADER_INTTYPES_H.
13675
13676 2006-07-22  Bruno Haible  <bruno@clisp.org>
13677
13678         Merge from GNU gettext 0.15.
13679
13680         2005-07-05  Bruno Haible  <bruno@clisp.org>
13681
13682                 * printf-args.c (printf_fetchargs): Work around broken
13683                 definition of wint_t on mingw.
13684
13685         2005-02-12  Bruno Haible  <bruno@clisp.org>
13686
13687                 * xallocsa.h: Add extern "C" for C++.
13688
13689         2006-05-17  Bruno Haible  <bruno@clisp.org>
13690
13691                 Cygwin portability.
13692                 * progreloc.c (WIN32_NATIVE): Renamed from WIN32.
13693
13694         2006-04-30  Bruno Haible  <bruno@clisp.org>
13695
13696                 * progreloc.c: Include <mach-o/dyld.h> if available.
13697                 (find_executable): Use _NSGetExecutablePath when possible.
13698
13699         2006-05-06  Charles Wilson  <cygwin@cwilson.fastmail.fm>
13700
13701                 * progreloc.c (maybe_executable) [CYGWIN]: Use the access()
13702                 function.
13703
13704         2005-12-29  Bruno Haible  <bruno@clisp.org>
13705
13706                 * progreloc.c (set_program_name_and_installdir): Fix
13707                 compilation error.
13708
13709         2005-12-04  Bruno Haible  <bruno@clisp.org>
13710
13711                 Cygwin portability.
13712                 * progreloc.c: Include <windows.h> also on Cygwin.
13713                 (find_executable): Add support for Cygwin.
13714                 (set_program_name_and_installdir): Handle also platforms with
13715                 nonempty EXEEXT.
13716
13717         2006-07-11  Bruno Haible  <bruno@clisp.org>
13718
13719                 * javacomp.c: Fix a comment.
13720                 Reported by Jim Meyering.
13721
13722         2006-04-30  Bruno Haible  <bruno@clisp.org>
13723
13724                 * javacomp.h (compile_java_class): Add source_version,
13725                 target_version arguments.
13726                 * javacomp.c: Rewritten to choose only a compiler that
13727                 respects the specified source_version and target_version.
13728
13729         2006-06-27  Bruno Haible  <bruno@clisp.org>
13730
13731                 Assume correct S_ISDIR macro.
13732                 * mkdtemp.c: Remove test of STAT_MACROS_BROKEN.
13733
13734         2006-07-22  Bruno Haible  <bruno@clisp.org>
13735
13736                 * javaversion.h: New file, from GNU gettext.
13737                 * javaversion.c: New file, from GNU gettext.
13738                 * javaversion.java: New file, from GNU gettext.
13739                 * javaversion.class: New file, from GNU gettext.
13740
13741         2006-05-17  Bruno Haible  <bruno@clisp.org>
13742
13743                 Cygwin portability.
13744                 * javaexec.c (execute_java_class): Test for jview program
13745                 also on Cygwin.
13746
13747         2006-04-09  Bruno Haible  <bruno@clisp.org>
13748
13749                 * fatal-signal.c: Don't include string.h.
13750                 (at_fatal_signal): Use a copying loop instead of memcpy.
13751
13752         2005-12-04  Bruno Haible  <bruno@clisp.org>
13753
13754                 * csharpexec.c: Add support for 'clix' launcher (untested).
13755                 (execute_csharp_using_sscli): New function.
13756                 (execute_csharp_program): Call it.
13757
13758         2006-06-21  Bruno Haible  <bruno@clisp.org>
13759
13760                 Avoid warnings from recent versions of mcs.
13761                 * csharpcomp.c (compile_csharp_using_mono): Don't use options
13762                 -o, -L, -r any more. Use options documented since mcs-1.0
13763                 instead. Similarly for -g.
13764
13765         2005-07-09  Bruno Haible  <bruno@clisp.org>
13766
13767                 * csharpcomp.c (compile_csharp_using_sscli): For -l option,
13768                 add a .dll suffix.
13769                 Reported by Mark Junker <mjscod@gmx.de>.
13770
13771         2006-06-17  Bruno Haible  <bruno@clisp.org>
13772
13773                 * config.charset: Update for NetBSD 3.0.
13774
13775         2006-05-17  Bruno Haible  <bruno@clisp.org>
13776
13777                 Cygwin portability.
13778                 * localcharset.c (WIN32_NATIVE): Renamed from WIN32.
13779
13780         2006-05-16  Bruno Haible  <bruno@clisp.org>
13781
13782                 * localcharset.c [CYGWIN]: Include <windows.h>.
13783                 (get_charset_aliases): For Cygwin, return the same CPxxx
13784                 aliases list as under WIN32.
13785                 (locale_charset) [CYGWIN]: Try to retrieve the encoding from
13786                 the environment variables. Fall back to GetACP().
13787
13788         2006-04-05  Bruno Haible  <bruno@clisp.org>
13789
13790                 * config.charset: Update Juan Manuel Guerrero's address.
13791
13792         2005-02-12  Bruno Haible  <bruno@clisp.org>
13793
13794                 * allocsa.h: Add extern "C" for C++.
13795
13796         2005-02-10  Bruno Haible  <bruno@clisp.org>
13797
13798                 * allocsa.h (sa_alignof): Define differently with AIX xlc, to
13799                 avoid a bug of this compiler on AIX 3.2.5 dealing with enums.
13800
13801         2006-07-22  Bruno Haible  <bruno@clisp.org>
13802
13803                 * gettext.h: Update to GNU gettext-0.15.
13804
13805 2006-07-22  Bruno Haible  <bruno@clisp.org>
13806
13807         * config/srclist.txt: Resync printf-args.c, vasnprintf.c,
13808         localcharset.c, mkdtemp.c, config.rpath, lib-ld.m4, lib-link.m4,
13809         lib-prefix.m4, longdouble.m4, ssize_t.m4.
13810
13811 2006-07-21  Eric Blake  <ebb9@byu.net>
13812
13813         * modules/stdlib-safer: New file.
13814         * MODULES.html.sh (File stream based Input/Output): Add
13815         stdlib-safer.
13816
13817 2006-07-21  Eric Blake  <ebb9@byu.net>
13818
13819         * lib/stdlib-safer.h: New file from coreutils, required by
13820         stdlib--.h.
13821
13822 2006-07-20  Paul Eggert  <eggert@cs.ucla.edu>
13823
13824         * gnulib-tool (func_usage): Document --assume-autoconf='latest-stable'.
13825
13826 2006-07-20  Bruno Haible  <bruno@clisp.org>
13827
13828         * gnulib-tool: Recognize new option --assume-autoconf.
13829         (autoconf_minversion): New variable.
13830         (func_get_filelist): Use it to decide whether to add onceonly_2_57.m4.
13831
13832 2006-07-20  Bruno Haible  <bruno@clisp.org>
13833
13834         * MODULES.html.sh (func_all_modules): Add a missing func_begin_table.
13835
13836 2006-07-19  Derek R. Price  <derek@ximbiot.com>
13837
13838         * lib/getaddrinfo.h: Don't define unimplemented AI_* flags.
13839         Reindent and repaginate.
13840
13841 2006-07-19  Derek Price  <derek@ximbiot.com>
13842
13843         * doc/gnulib.texi (Libtool and Windows):  Eliminate passive voice.
13844         Correct grammar.
13845
13846 2006-07-17  Bruno Haible  <bruno@clisp.org>
13847
13848         * modules/list: New file.
13849         * modules/array-list: New file.
13850         * modules/carray-list, modules/carray-list-tests: New files.
13851         * modules/linked-list, modules/linked-list-tests: New files.
13852         * modules/avltree-list, modules/avltree-list-tests: New files.
13853         * modules/rbtree-list, modules/rbtree-list-tests: New files.
13854         * modules/linkedhash-list, modules/linkedhash-list-tests: New files.
13855         * modules/avltreehash-list, modules/avltreehash-list-tests: New files.
13856         * modules/rbtreehash-list, modules/rbtreehash-list-tests: New files.
13857         * modules/oset: New file.
13858         * modules/array-oset: New file.
13859         * modules/avltree-oset, modules/avltree-oset-tests: New files.
13860         * modules/rbtree-oset, modules/rbtree-oset-tests: New files.
13861         * tests/test-carray_list.c: New file.
13862         * tests/test-linked_list.c: New file.
13863         * tests/test-avltree_list.c: New file.
13864         * tests/test-rbtree_list.c: New file.
13865         * tests/test-linkedhash_list.c: New file.
13866         * tests/test-avltreehash_list.c: New file.
13867         * tests/test-rbtreehash_list.c: New file.
13868         * tests/test-avltree_oset.c: New file.
13869         * tests/test-rbtree_oset.c: New file.
13870         * MODULES.html.sh (Container data structures): New section.
13871
13872 2006-07-17  Bruno Haible  <bruno@clisp.org>
13873
13874         * m4/gl_list.m4: New file.
13875
13876 2006-07-17  Bruno Haible  <bruno@clisp.org>
13877
13878         * lib/gl_list.h: New file.
13879         * lib/gl_list.c: New file.
13880         * lib/gl_array_list.h: New file.
13881         * lib/gl_array_list.c: New file.
13882         * lib/gl_carray_list.h: New file.
13883         * lib/gl_carray_list.c: New file.
13884         * lib/gl_linked_list.h: New file.
13885         * lib/gl_linked_list.c: New file.
13886         * lib/gl_anylinked_list1.h: New file.
13887         * lib/gl_anylinked_list2.h: New file.
13888         * lib/gl_avltree_list.h: New file.
13889         * lib/gl_avltree_list.c: New file.
13890         * lib/gl_anyavltree_list1.h: New file.
13891         * lib/gl_anyavltree_list2.h: New file.
13892         * lib/gl_rbtree_list.h: New file.
13893         * lib/gl_rbtree_list.c: New file.
13894         * lib/gl_anyrbtree_list1.h: New file.
13895         * lib/gl_anyrbtree_list2.h: New file.
13896         * lib/gl_anytree_list1.h: New file.
13897         * lib/gl_anytree_list2.h: New file.
13898         * lib/gl_linkedhash_list.h: New file.
13899         * lib/gl_linkedhash_list.c: New file.
13900         * lib/gl_anyhash_list1.h: New file.
13901         * lib/gl_anyhash_list2.h: New file.
13902         * lib/gl_avltreehash_list.h: New file.
13903         * lib/gl_avltreehash_list.c: New file.
13904         * lib/gl_rbtreehash_list.h: New file.
13905         * lib/gl_rbtreehash_list.c: New file.
13906         * lib/gl_anytreehash_list1.h: New file.
13907         * lib/gl_anytreehash_list2.h: New file.
13908
13909         * lib/gl_oset.h: New file.
13910         * lib/gl_oset.c: New file.
13911         * lib/gl_array_oset.h: New file.
13912         * lib/gl_array_oset.c: New file.
13913         * lib/gl_avltree_oset.h: New file.
13914         * lib/gl_avltree_oset.c: New file.
13915         * lib/gl_rbtree_oset.h: New file.
13916         * lib/gl_rbtree_oset.c: New file.
13917         * lib/gl_anytree_oset.h: New file.
13918
13919 2006-07-16  Paul Eggert  <eggert@cs.ucla.edu>
13920
13921         * m4/mkancesdirs.m4: New file.
13922         * m4/mkdir-p.m4 (gl_MKDIR_PARENTS): Mention dirchownmod.c,
13923         dirchownmod.h.  Don't require AC_FUNC_ALLOCA, gl_AFS, gl_CHDIR_SAFER;
13924         no longer needed.  Require gl_FUNC_LCHOWN, since dirchownmod.c needs
13925         it.
13926
13927 2006-07-16  Paul Eggert  <eggert@cs.ucla.edu>
13928
13929         * lib/dirchownmod.c, lib/dirchownmod.h, lib/mkancesdirs.c:
13930         * lib/mkancesdirs.h: New files.
13931         * lib/mkdir-p.c: Don't include alloca.h, stdio.h, sys/types.h,
13932         unistd.h, string.h, chdir-safer.h, dirname.h, lchmod.h, lchown.h,
13933         save-cwd.h.  Instead, include dirchownmod.h and mkancesdirs.h.
13934         (make_dir_parents): New args MAKE_ANCESTOR, OPTIONS, ANNOUNCE,
13935         MODE_BITS.  Remove options VERBOSE_FMT_STRING, CWD_ERRNO.  All
13936         callers changed.  Revamp internals significantly, by not
13937         attempting to create directories that are temporarily more
13938         permissive than the final results.  Do not attempt to use
13939         save_cwd/restore_cwd; it isn't worth it for mkdir and install.
13940         This removes some race conditions, fixes some bugs, and simplifies
13941         things.  Use new dirchownmod function to do owner and mode changes.
13942         * lib/mkdir-p.h: Likewise.
13943         * lib/modechange.c (octal_to_mode): New function.
13944         (struct mode_change): New member mentioned.
13945         (make_node_op_equals): New arg mentioned.  All callers changed.
13946         (mode_compile): Keep track of which mode bits the user has explicitly
13947         mentioned.
13948         (mode_adjust): New arg DIR, so that we implement the X op correctly.
13949         New arg PMODE_BITS, to keep track of which mode bits the user
13950         mentioned; it treats S_ISUID and S_ISGID speciall.
13951         All callers changed.
13952         * lib/modechange.h: Likewise.
13953
13954 2006-07-16  Paul Eggert  <eggert@cs.ucla.edu>
13955
13956         * MODULES.html.sh: Add mkancestors.
13957         * modules/mkancesdirs: New module.
13958         * modules/mkdir-p (Files): Remove lib/chdir-safer.c, lib/chdir-safer.h,
13959         lib/same-inode.h, m4/afs.m4, m4/chdir-safer.m4.
13960         The chdir-safer and afs files are now orphans; I'll remove them
13961         unless someone speaks up.
13962         Add lib/dirchownmod.c, lib/dirchownmod.h.
13963         (Depends-on): Remove alloca, chown, save-cwd, dirname.
13964         Add lchown, mkancesdirs.
13965         (Maintainer): Add self.
13966
13967 2006-07-15  Karl Berry  <karl@gnu.org>
13968
13969         * gnulib-tool: help message wording/arrangement.
13970
13971 2006-07-14  Simon Josefsson  <jas@extundo.com>
13972
13973         * doc/gnulib.texi (Libtool and Windows): New section.
13974
13975 2006-07-12  Simon Josefsson  <jas@extundo.com>
13976
13977         * modules/gendocs (License): Fix license, approved by Karl.
13978
13979 2006-07-12  Eric Blake  <ebb9@byu.net>
13980
13981         * MODULES.html.sh: Add gendocs.
13982
13983 2006-07-11  Eric Blake  <ebb9@byu.net>
13984
13985         * modules/fdl: New module, to install doc/fdl.texi.
13986         * MODULES.html.sh: Add new section for documentation modules.
13987         * gnulib-tool: Avoid space-tab.
13988         (--doc-base): New option, to manage files from doc.
13989
13990 2006-07-11  Eric Blake  <ebb9@byu.net>
13991
13992         * m4/absolute-header.m4: Fix comments to match recent change.
13993
13994 2006-07-11  Eric Blake  <ebb9@byu.net>
13995
13996         * gnulib-tool: List --doc-base before --tests-base.
13997
13998 2006-07-11  Derek R. Price  <derek@ximbiot.com>
13999
14000         * lib/glob.c: s/NAMLEN/_D_EXACT_NAMLEN/.
14001
14002 2006-07-11  Bruno Haible  <bruno@clisp.org>
14003
14004         * README: Mention where to put documentation.
14005
14006 2006-07-10  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
14007
14008         * doc/functions.texi, gnulib-tool.texi, gnulib.texi: Fix some typos.
14009
14010 2006-07-10  Paul Eggert  <eggert@cs.ucla.edu>
14011
14012         * m4/sys_stat_h.m4 (gl_HEADER_SYS_STAT_H): Like today's change
14013         to stdint.m4.
14014
14015 2006-07-10  Paul Eggert  <eggert@cs.ucla.edu>
14016
14017         * m4/stdint.m4 (gl_STDINT_H): Like yesterday's change to
14018         absolute-header.m4.  Also, set ABSOLUTE_STDINT_H to a string
14019         "no/such/file/stdint.h" when there is no such file, so that
14020         the resulting C code can be parsed by dodgy compilers.
14021         Problems reported by Bob Proulx.
14022
14023 2006-07-10  Derek R. Price  <derek@ximbiot.com>
14024
14025         * lib/backupfile.c, dirfd.h, fts.c, getcwd.c, glob.c, glob_.h:
14026         Ignore the obsolescent !HAVE_DIRENT_H case.  Consolidate NAMLEN
14027         macros into the GNU _D_EXACT_NAMLEN.
14028         * lib/savedir.c:  Likewise.
14029         (savedirstream): Use _D_EXACT_NAMLEN in preference to strlen.
14030
14031 2006-07-10  Derek R. Price  <derek@ximbiot.com>
14032         and Paul Eggert  <eggert@cs.ucla.edu>
14033
14034         * m4/backupfile.m4, d-ino.m4, d-type.m4, dirfd.m4, fts.m4, getcwd.m4:
14035         * m4/savedir.m4:
14036         Ignore the obsolescent !HAVE_DIRENT_H case.  Consolidate NAMLEN
14037         macros into the GNU _D_EXACT_NAMLEN.
14038
14039 2006-07-09  Paul Eggert  <eggert@cs.ucla.edu>
14040
14041         * m4/absolute-header.m4 (gl_ABSOLUTE_HEADER): Use "" rather than <>
14042         around the absolute name, to work around a problem with the HP-UX
14043         11.23 native C compiler, reported by Bob Proulx.
14044
14045 2006-07-09  Paul Eggert  <eggert@cs.ucla.edu>
14046
14047         * doc/maintain.texi, make-stds.texi: Sync from
14048         <http://savannah.gnu.org/projects/gnustandards>.
14049
14050 2006-07-09  Paul Eggert  <eggert@cs.ucla.edu>
14051
14052         * build-aux/depcomp, build-aux/install-sh: Sync from Automake.
14053
14054 2006-07-09  Jim Meyering  <jim@meyering.net>
14055
14056         * m4/glob.m4: Remove a doubled word in a comment.
14057
14058 2006-07-09  Jim Meyering  <jim@meyering.net>
14059
14060         * lib/argp-pv.c: Remove a doubled word in a comment.
14061         * lib/check-version.c (check_version): Likewise.
14062         * lib/javacomp.c (compile_java_class): Likewise.
14063
14064 2006-07-08  Paul Eggert  <eggert@cs.ucla.edu>
14065
14066         * gnulib-tool (func_get_filelist): Don't echo m4/onceonly_2_57.m4,
14067         for the benefit of people using Autoconf 2.60.  If you want to
14068         support older Autoconf versions you can copy m4/onceonly_2_57.m4
14069         (or m4/onceonly.m4, if pre-2.57) manually.
14070
14071 2006-07-08  Jim Meyering  <jim@meyering.net>
14072
14073         * m4/link-follow.m4: Remove one of two adjacent "whether"s in a
14074         comment.
14075         * m4/getopt.m4: Remove one of two adjacent "your"s in a comment.
14076         * m4/regex.m4 (gl_REGEX): Remove one of two adjacent "the"s in a
14077         comment.
14078
14079 2006-07-08  Jim Meyering  <jim@meyering.net>
14080
14081         * lib/getndelim2.h (getndelim2): Remove doubled "after" in comment.
14082
14083 2006-07-07  Simon Josefsson  <jas@extundo.com>
14084
14085         * tests/test-crc.c: Change expected crc value, the test vector
14086         were probably computed using the old broken crc.c?
14087
14088 2006-07-06  Simon Josefsson  <jas@extundo.com>
14089
14090         * modules/sys_socket (Files): Add m4/sockpfaf.m4 (this module is
14091         now the canonical place for the M4 file).
14092
14093         * modules/getaddrinfo (Files): Remove m4/sockpfaf.m4, we get it
14094         from the sys_socket dependency now.
14095
14096         * modules/inet_pton (Files): Ditto.
14097
14098         * modules/inet_ntop (Files): Ditto.
14099
14100 2006-07-06  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>  (tiny change)
14101
14102         * modules/getusershell (configure.ac): Use gl_FUNC_GETUSERSHELL,
14103         not gl_PREREQ_GETUSERSHELL.
14104
14105 2006-07-06  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
14106
14107         * m4/_inttypes_h.m4 (gl_INTTYPES_H): Use AC_CHECK_DECLS_ONCE
14108         with only one argument, for Autoconf 2.60.
14109         * m4/fileblocks.m4 (gl_PREREQ_FILEBLOCKS): AC_CHECK_DECLS_ONCE may
14110         expand to nothing, so add a shell command to avoid syntax error.
14111         * m4/getpass.m4 (gl_PREREQ_GETPASS): Likewise.
14112
14113 2006-07-06  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
14114
14115         * lib/strtod.c (strtod): cast the argument of tolower to unsigned char.
14116
14117 2006-07-06  Paul Eggert  <eggert@cs.ucla.edu>
14118
14119         * m4/fnmatch.m4 (_AC_LIBOBJ_FNMATCH): Don't check for getenv decl;
14120         no longer needed.  Check for isblank decl.
14121         * m4/mkstemp.m4 (gl_PREREQ_TEMPNAME): Don't check for getenv decl.
14122         * m4/regex.m4 (gl_PREREQ_REGEX): Dheck for isblank decl instead
14123         of existence.
14124
14125 2006-07-06  Paul Eggert  <eggert@cs.ucla.edu>
14126
14127         * lib/getloadavg.c: Use __VMS, not VMS.
14128         * lib/getopt.c: Likewise.
14129         * lib/getpagesize.h: Likewise.
14130         * lib/glob.c: Remove most VMS cruft; it hasn't been tested for a while
14131         and probably does not work.
14132
14133 2006-07-06  Paul Eggert  <eggert@cs.ucla.edu>
14134
14135         * lib/.cppi-disable: Add wcwidth.
14136         * lib/fnmatch.c (ISBLANK): Remove.  All uses changed to isblank.
14137         (isblank) [! (defined isblank || HAVE_DECL_ISBLANK)]: New macro.
14138         (ISGRAPH): Remove.  All uses changed to isgraph.
14139         (FOLD) [!defined _LIBC]: Remove special case.
14140         * lib/getdate.y (lookup_word): Remove no-longer-needed call to islower.
14141         * lib/regex_internal.h (isblank): Depend on HAVE_DECL_ISBLANK, not
14142         HAVE_ISBLANK.
14143         * lib/strftime.c (TOLOWER, TOUPPER) [!defined _LIBC]: Remove special
14144         case.
14145
14146 2006-07-06  Jim Hyslop  <jhyslop@dreampossible.ca>  (tiny change)
14147
14148         * lib/getaddrinfo.c: Changes to compile under MSVC6: changed
14149         '#if WIN32_NATIVE' to '#ifdef' & moved WSAAPI macro inside
14150         brackets.  Other minor changes to suppress some compiler
14151         warnings.
14152
14153 2006-07-06  Derek R. Price  <derek@ximbiot.com>
14154         and Paul Eggert  <eggert@cs.ucla.edu>
14155
14156         * m4/backupfile.m4 (gl_BACKUPFILE): Check for dirent.h, instead
14157         of invoking obsolescent AC_HEADER_DIRENT macro.
14158         * m4/d-ino.m4 (gl_CHECK_TYPE_STRUCT_DIRENT_D_INO): Likewise.
14159         * m4/d-type.m4 (gl_CHECK_TYPE_STRUCT_DIRENT_D_TYPE): Likewise.
14160         * m4/dirfd.m4 (gl_FUNC_DIRFD): Likewise.
14161         * m4/fts.m4 (gl_FUNC_FTS_CORE): Likewise.
14162         * m4/getcwd.m4 (gl_PREREQ_GETCWD): Likewise.
14163         * m4/glob.m4 (gl_PREREQ_GLOB): Likewise.
14164         * m4/savedir.m4 (gl_SAVEDIR): Likewise.
14165         * m4/readdir.m4: Remove; no longer needed.
14166
14167 2006-07-06  Derek R. Price  <derek@ximbiot.com>
14168         and Paul Eggert  <eggert@cs.ucla.edu>
14169
14170         * lib/backupfile.c [HAVE_DIRENT_H && ! HAVE_NDIR_H]:
14171         Don't worry about this obsolete case any more.
14172         (HAVE_DIR): Remove.  All uses removed; we now assume you can read
14173         directories.
14174         * lib/dirfd.h [HAVE_DIRENT_H && ! HAVE_NDIR_H]: Don't
14175         worry about this obsolete case any more.
14176         * lib/fts.c: Likewise.
14177         * lib/getcwd.c: Likewise.
14178         * lib/glob.h: Likewise.
14179         * lib/savedir.c: Likewise.
14180
14181 2006-07-05  Paul Eggert  <eggert@cs.ucla.edu>
14182
14183         * m4/xstrtol.m4 (gl_PREREQ_XSTRTOL): Use AC_CHECK_DECLS_ONCE
14184         rather than AC_CHECK_DECLS for strtoimax and strtoumax.
14185         * m4/getusershell.m4 (gl_PREREQ_GETUSERSHELL): Remove; no longer
14186         needed.
14187         All uses removed.
14188         * m4/strtol.m4 (gl_PREREQ_STRTOL): Likewise.
14189         * m4/strtoul.m4 (gl_PREREQ_STRTOUL): Likewise.
14190         * m4/exclude.m4 (gl_EXCLUDE): Don't check for isascii; no longer
14191         needed.
14192         * m4/getdate.m4 (gl_GETDATE): Likewise.
14193         * m4/getusershell.m4 (gl_PREREQ_GETUSERSHELL): Likewise.
14194         * m4/memcasecmp.m4 (gl_MEMCASECMP): Likewise.
14195         * m4/strtod.m4 (gl_FUNC_STRTOD): Likewise.
14196         * m4/strtol.m4 (gl_PREREQ_STRTOL): Likewise.
14197         * m4/strtoul.m4 (gl_PREREQ_STRTOUL): Likewise.
14198         * m4/xstrtol.m4 (gl_PREREQ_XSTRTOL): Likewise.
14199         * m4/exclude.m4 (gl_EXCLUDE): Don't require AC_C_INLINE; no longer
14200         needed.
14201
14202 2006-07-05  Paul Eggert  <eggert@cs.ucla.edu>
14203
14204         * lib/memcasecmp.c: Include <limits.h>.
14205         (memcasecmp): Don't assume UCHAR_MAX <= INT_MAX.
14206         * lib/strtod.c (strtod): Don't assume isspace works on negative chars.
14207         Don't assume isdigit succeeds only on '0' through '9'.
14208
14209 2006-07-05  Eric Blake  <ebb9@byu.net>
14210
14211         * modules/getaddrinfo (Depends-on): Add snprintf.
14212
14213 2006-07-05  Eric Blake  <ebb9@byu.net>
14214
14215         * m4/sockpfaf.m4 (gl_SOCKET_FAMILIES): Use gl_HEADER_SYS_SOCKET
14216         to avoid 'header present but could not be compiled' on cygwin.
14217
14218 2006-07-05  Eric Blake  <ebb9@byu.net>
14219
14220         * lib/getaddrinfo.h (NI_NUMERICHOST, NI_NUMERICSERV): Define if
14221         missing from netdb.h.
14222         * lib/getaddrinfo.c (includes): Include inet_ntop and snprintf.
14223
14224 2006-07-05  Derek R. Price  <derek@ximbiot.com>
14225
14226         * m4/calloc.m4 (_AC_FUNC_CALLOC_IF): Don't require AC_HEADER_STDC;
14227         no longer needed.
14228         * m4/exclude.m4 (gl_EXCLUDE): Likewise.
14229         * m4/getdate.m4 (gl_GETDATE): Likewise.
14230         * m4/getusershell.m4 (gl_PREREQ_GETUSERSHELL): Likewise.
14231         * m4/memcasecmp.m4 (gl_MEMCASECMP): Likewise.
14232         * m4/strtod.m4 (gl_FUNC_STRTOD): Likewise.
14233         * m4/strtol.m4 (gl_PREREQ_STRTOL): Likewise.
14234         * m4/xstrtol.m4 (gl_PREREQ_XSTRTOL): Likewise.
14235
14236 2006-07-05  Derek R. Price  <derek@ximbiot.com>
14237
14238         * lib/exclude.c (IN_CTYPE_DOMAIN, is_space): Remove; no longer needed.
14239         All uses of is_space replaced by isspace.
14240         * lib/exit.h: Don't talk about STDC_HEADERS.
14241         * lib/fnmatch.c (ISASCII): Remove; no longer needed.  All uses removed.
14242         (ISPRINT, ISDIGIT, ISALNUM, ISALPHA, ISCNTRL, ISLOWER, ISPUNCT):
14243         (ISSPACE, ISUPPER, ISXDIGIT): Remove; no longer needed.  All uses
14244         replaced by isprint etc.
14245         * lib/getdate.y (IN_CTYPE_DOMAIN, ISSPACE, ISALPHA, ISLOWER): Likewise.
14246         * lib/getusershell.c (IN_CTYPE_DOMAIN, ISSPACE): Likewise.
14247         * lib/memcasecmp.c (IN_CTYPE_DOMAIN, ISLOWER, TOUPPER): Likewise.
14248         * lib/strtod.c (IN_CTYPE_DOMAIN, ISSPACE, ISDIGIT, TOLOWER): Likewise.
14249         * lib/strtol.c (IN_CTYPE_DOMAIN): Likewise.
14250         * lib/xstrtol.c (IN_CTYPE_DOMAIN, ISSPACE): Likewise.
14251
14252 2006-07-05  Bruno Haible  <bruno@clisp.org>
14253
14254         * m4/strndup.m4 (gl_FUNC_STRNDUP): When cross-compiling, check whether
14255         the function exists, before testing against AIX.
14256         Reported by Martin Lambers <marlam@marlam.de>.
14257
14258 2006-07-04  Paul Eggert  <eggert@cs.ucla.edu>
14259
14260         * modules/cycle-check (lib_SOURCES): Add same-inode.h.
14261         From Mark D. Baushke.
14262
14263 2006-07-04  Paul Eggert  <eggert@cs.ucla.edu>
14264
14265         * m4/absolute-header.m4 (gl_ABSOLUTE_HEADER): Prepend three slashes
14266         to the absolute name, not just one, to bypass Sun C 5.8's
14267         "warning: #include of /usr/include/... may be non-portable".
14268
14269 2006-07-04  Eric Blake  <ebb9@byu.net>
14270
14271         * modules/dirname-tests: New test module.
14272         * tests/test-dirname.c: New file, replacing dirname.c
14273         TEST_DIRNAME section that was recently deleted.
14274
14275 2006-07-04  Bruno Haible  <bruno@clisp.org>
14276
14277         Assume ANSI C header files and <ctype.h> functions.
14278         * lib/mbswidth.c (IN_CTYPE_DOMAIN, ISPRINT, ISCNTRL): Remove macros.
14279         (mbsnwidth): Use isprint, iscntrl instead.
14280
14281 2006-07-03  Paul Eggert  <eggert@cs.ucla.edu>
14282
14283         Merge from coreutils.
14284         * MODULES.html.sh: Add xstrtold.
14285         * modules/xstrtold: New file.
14286         * modules/cycle-check (Files): Add lib/same-inode.h.
14287         * modules/dirname (Files): Add m4/double-slash-root.m4.
14288         * modules/getcwd (Files): Add m4/getcwd-abort-bug.m4.
14289         * modules/mkdir-p (Files): Add lib/same-inode.h.
14290         * modules/same (Files): Add lib/same-inode.h.
14291
14292 2006-07-03  Paul Eggert  <eggert@cs.ucla.edu>
14293
14294         * m4/absolute-header.m4: Renamed from full-header-path.m4.
14295         This is to keep the terminology clean; POSIX talks about
14296         "absolute pathnames", not "full pathnames", but the GNU
14297         Coding Standards say to use "path" for something else;
14298         so use "absolute" to keep both sides happy.
14299         (gl_ABSOLUTE_HEADER): Renamed from gl_FULL_HEADER_PATH.
14300         Set gl_absolute_header, not gl_full_header_path.
14301         Set gl_cv_absolute_<header>, not gl_full_path_<header>.
14302         Define ABSOLUTE_<HEADER>, not FULL_PATH_<HEADER>.
14303         All uses changed.
14304
14305         Merge from coreutils.
14306
14307         2006-06-30  Paul Eggert  <eggert@cs.ucla.edu>
14308
14309         * m4/c-strtod.m4 (gl_C_STRTOLD): Add c-strtod.c to LIBSOURCES.
14310         Require gl_USE_SYSTEM_EXTENSIONS, not gl_C_STRTOD, since we don't
14311         want to require the building of c-strtod.o.
14312         * m4/lib-check.m4 (cu_LIB_CHECK): Remove SEQ_LIBM, since seq no longer
14313         needs -lm directly.
14314         * m4/xstrtod.m4 (gl_XSTRTOLD): New macro.
14315
14316         2006-06-19  Paul Eggert  <eggert@cs.ucla.edu>
14317
14318         * m4/lib-ignore.m4 (gl_IGNORE_UNUSED_LIBRARIES): Prefer binutils's
14319         --as-needed option if available.  Problem reported by Albert Chin in
14320         <http://lists.gnu.org/archive/html/bug-gnulib/2006-06/msg00114.html>.
14321         However, use -Wl,--as-needed, not bare --as-needed, since HP-UX 11.11
14322         cc merely issues a bunch of annoying warnings for --as-needed
14323         (this problem was reported by Bob Proulx).  Also, try linking with
14324         -lm to detect a bug in binutils 2.16 (this problem was reported
14325         by Ralf Wildenhues).
14326
14327         2006-06-18  Jim Meyering  <jim@meyering.net>
14328
14329         Test for a bug that causes glibc's getcwd to suffer a failed assertion.
14330         * m4/getcwd-abort-bug.m4 (gl_FUNC_GETCWD_ABORT_BUG): New file and
14331         macro.
14332         * m4/getcwd.m4 (gl_FUNC_GETCWD): If we detect support for getcwd_null,
14333         also check for glibc-2.4's abort-inducing bug.
14334
14335         * m4/getcwd-path-max.m4 (gl_FUNC_GETCWD_PATH_MAX): Fix typo.
14336         Low-probability clean-up should be to use rmdir to get rid of
14337         the just-created directory, not unlink.
14338
14339         * m4/ftruncate.m4 (gl_FUNC_FTRUNCATE): If ftruncate is missing, make
14340         configure fail, and request a bug report to inform us about it.
14341         Add a comment that, barring reports to the contrary, in 2007 we'll
14342         assume ftruncate is universally available.
14343
14344         2006-04-17  Paul Eggert  <eggert@cs.ucla.edu>
14345
14346         * m4/filemode.m4 (gl_FILEMODE): Check for strmode declaration.
14347
14348         2006-03-12  Jim Meyering  <jim@meyering.net>
14349
14350         * m4/chdir-safer.m4 (gl_CHDIR_SAFER): Add same-inode.h to the list.
14351         * m4/cycle-check.m4 (gl_CYCLE_CHECK): Likewise.
14352         * m4/same.m4 (gl_SAME): Likewise.
14353         * m4/root-dev-ino.m4 (gl_ROOT_DEV_INO): Likewise.
14354
14355         2006-03-11  Eric Blake  <ebb9@byu.net>
14356
14357         * m4/double-slash-root.m4: New file, provides gl_DOUBLE_SLASH_ROOT.
14358         * m4/dirname.m4 (gl_DIRNAME): Use gl_DOUBLE_SLASH_ROOT.
14359         * m4/dos.m4 (FILE_SYSTEM_PREFIX_LEN): Move from here to dirname.h.
14360         (FILE_SYSTEM_DRIVE_PREFIX_CAN_BE_RELATIVE): New define.
14361
14362 2006-07-03  Paul Eggert  <eggert@cs.ucla.edu>
14363
14364         * lib/stdint_.h: Include <sys/types.h> after @FULL_PATH_STDINT_H@, for
14365         MacOS X 10.4.6.  Don't mention <sys/int_types.h>.  Problems
14366         reported by Mark D. Baushke, one in
14367         <http://lists.gnu.org/archive/html/bug-gnulib/2006-07/msg00015.html>.
14368
14369         Merge from coreutils.
14370
14371         * lib/.cppi-disable: Add stdint_.h.
14372         * lib/.cvsignore: Add stdint.h.
14373
14374         2006-06-30  Paul Eggert  <eggert@cs.ucla.edu>
14375
14376         * lib/xstrtod.c (XSTRTOD, DOUBLE): New macros, so that we can support
14377         both double and long double versions.
14378         (XSTRTOD): Renamed from xstrtod.  Use DOUBLE internally.
14379         * lib/xstrtold.c: New file.
14380         * lib/xstrtod.h (xstrtold): New decl.
14381
14382         2006-05-22  Paul Eggert  <eggert@cs.ucla.edu>
14383
14384         * lib/filemode.c (setst): Remove.
14385         (strmode): Rewrite to avoid setst.  This makes the code shorter,
14386         (arguably) clearer, and the generated code is a bit smaller on my
14387         Debian GNU/Linux stable x86 host.
14388
14389         2006-04-17  Paul Eggert  <eggert@cs.ucla.edu>
14390
14391         * lib/filemode.c: Include "filemode.h" first, to test the interface.
14392         Assume that filemode.h includes sys/types.h and sys/stat.h.
14393         (HAVE_ST_DM_MODE): New macro, moved here from ls.c.
14394         (ftypelet): Reorder to put common cases first, for efficiency.
14395         Add 'P', 'w'.  Remove 'M', since it's now the caller's responsibility
14396         to do 'M'.
14397         (strmode): Renamed from mode_string, and now stores 12 bytes instead
14398         of 10, for compatibility with FreeBSD.  All callers changed.
14399         (filemodestring): Now stores 12 bytes instead of 10, and sets file
14400         types that can't be deduced solely from st_mode.  First arg is now a
14401         const pointer.
14402         * lib/filemode.h (HAVE_DECL_STRMODE): Include <string.h> for strmode.
14403         (strmode): Renamed from mode_string.
14404         (filemodestring): New decl.
14405         * lib/stat-macros.h: Don't undef S_ISDOOR, since it's never buggy.
14406         (S_ISDOOR): Don't bother with S_IFDOOR, since that code is never
14407         needed.
14408         (S_ISPORT, S_ISWHT): New macros, if not already defined.
14409
14410         2006-04-12  Paul Eggert  <eggert@cs.ucla.edu>
14411
14412         * lib/fsusage.c: Don't include <inttypes.h> or <stdint.h>, since
14413         fsusage.h now does that.  Include fsusage.h first, to test interface.
14414         Prefer statvfs if it works, since it's blessed by POSIX.  Attempt
14415         at most one method (the old code could have generated decls that
14416         didn't conform to C89, not that this was ever exercised).
14417         * lib/fsusage.h: Include <inttypes.h> and <stdint.h> if they exist.
14418
14419         2006-03-19  Jim Meyering  <jim@meyering.net>
14420
14421         Work even in a chroot where d_ino values for entries in "/"
14422         don't match the stat.st_ino values for the same names.
14423         * lib/getcwd.c (__getcwd): When no d_ino value matches the target inode
14424         number, iterate through all entries again, using lstat instead.
14425         Reported by Kenshi Muto in http://bugs.debian.org/355810, and by
14426         Zouhir Hafidi in https://bugzilla.redhat.com/bugzilla/190656.
14427
14428         * lib/getcwd.c (__getcwd): Clarify a comment.
14429         Use memcpy in place of a call to strcpy.
14430
14431         2006-03-12  Jim Meyering  <jim@meyering.net>
14432
14433         * lib/fts-cycle.c (leave_dir): If cycle-check's saved dev-ino pair
14434         matches that of the current directory (which we're about to chdir ".."
14435         out of), then save the dev-ino of the parent, instead.
14436
14437         * lib/same-inode.h (SAME_INODE): New file/macro.
14438         * lib/chdir-safer.c (SAME_INODE): Remove definition.
14439         Include "same-inode.h", instead.
14440         * lib/same.c: Likewise.
14441         * lib/cycle-check.h: Include "same-inode.h".
14442         (CYCLE_CHECK_REFLECT_CHDIR_UP): Define.
14443         * lib/cycle-check.c (SAME_INODE): Remove definition.
14444         * lib/root-dev-ino.h: Include "same-inode.h".
14445
14446         2006-03-11  Eric Blake  <ebb9@byu.net>
14447
14448         * lib/same.c (same_name): s/base_name/last_component/
14449         * lib/backupfile.c (check_extension, numbered_backup): Likewise.
14450         * lib/filenamecat.c (file_name_concat): Likewise.
14451
14452         2006-03-11  Eric Blake  <ebb9@byu.net>,
14453                     Paul Eggert  <eggert@cs.ucla.edu>
14454
14455         * lib/dirname.h (FILE_SYSTEM_PREFIX_LEN): Move here from dos.m4.
14456         [FILE_SYSTEM_ACCEPTS_DRIVE_LETTER_PREFIX]: Don't treat 1: as a
14457         drive prefix.
14458         (IS_ABSOLUTE_FILE_NAME): Treat all drive letters as absolute on
14459         platforms like cygwin with FILE_SYSTEM_DRIVE_PREFIX_IS_ABSOLUTE.
14460         (last_component): New method.
14461         * lib/dirname.c (dir_len): Determine when drive letters need a
14462         subsequent slash.  Preserve // when it is special.
14463         (dir_name): Don't append dot when drive letter is absolute.
14464         [TEST_DIRNAME]: Move into a full-blown gnulib test.
14465         * lib/basename.c (base_name): New semantics - malloc the result.
14466         Preserve // when it is special.  Preserve relative files that look
14467         like drive letters.
14468         (base_len): Preserve // when it is special.
14469         (last_component): New method, similar to old base_name semantics.
14470         * lib/stripslash.c (strip_trailing_slashes): Use last_component, not
14471         base_name.  Strip redundant slashes from ///.
14472
14473 2006-07-03  Jim Meyering  <jim@meyering.net>
14474
14475         * lib/cycle-check.h (CYCLE_CHECK_REFLECT_CHDIR_UP): Abort if this
14476         macro is used before the first cycle_check call.
14477
14478 2006-07-03  Eric Blake  <ebb9@byu.net>
14479
14480         * modules/dirname (Depends-on): Add xstrndup.
14481
14482 2006-07-02  Paul Eggert  <eggert@cs.ucla.edu>
14483
14484         * m4/stdint.m4 (gl_STDINT_H): Use more-mnemonic identifiers for
14485         test cases, so that config.log is a bit easier to follow.
14486
14487 2006-07-02  Paul Eggert  <eggert@cs.ucla.edu>
14488
14489         * lib/stdint_.h (intmax_t, uintmax_t): Prefer long to long long if
14490         both are 64 bits, since this seems to be the tradition, and this
14491         prevents gcc -Wformat from warning about usages with PRIuMAX.  If
14492         we ever run into a host that prefers long long to long in this
14493         case, we'll need another configure-time test.  Problem reported by
14494         Jim Meyering.
14495
14496 2006-07-02  Eric Blake  <ebb9@byu.net>
14497
14498         * m4/wcwidth.m4 (gl_FUNC_WCWIDTH): Simplify by using AC_CHECK_DECLS.
14499
14500 2006-07-01  Paul Eggert  <eggert@cs.ucla.edu>
14501
14502         * modules/inttypes (Depends-on): No longer depends on stdint.
14503         * modules/stdint (Description): Say more about assumptions.
14504         Say that the fast types might differ.  Say macros are used.
14505         (Files): Remove m4/size_max.m4, m4/wchar_t.m4.  Add m4/longlong.m4.
14506         (Makefile.am): Revise list of substituted symbols to match
14507         new stdint.m4.
14508         * modules/stdint-tests (Files): Add m4/wchar_t.m4, m4/wint_t.m4.
14509         (configure.ac): Add gt_TYPE_WCHAR_T, gt_TYPE_WINT_T.
14510         * tests/test-stdint.c (verify_same_types)
14511         [! (__GNUC__ >= 2 && DO_PEDANTIC)]: Put in a decl, so that
14512         the code conforms to C99/C89.
14513         Test for WCHAR_MIN and WCHAR_MAX only if HAVE_WCHAR_T.
14514         Test for WINT_MIN and WINT_MAX only if HAVE_WINT_T.
14515
14516 2006-07-01  Paul Eggert  <eggert@cs.ucla.edu>
14517
14518         * m4/longlong.m4 (AC_TYPE_LONG_LONG_INT): Backport from Autoconf 2.60,
14519         but fix a bug, by requiring at least 64 bits.
14520         * m4/ulonglong.m4 (AC_TYPE_UNSIGNED_LONG_LONG_INT): Likewise.
14521         * m4/longlong.m4 (gl_AC_TYPE_LONG_LONG): Now just call
14522         AC_TYPE_LONG_LONG_INT.  This macro is obsolete and will go soon.
14523         * m4/ulonglong.m4 (gl_AC_TYPE_UNSIGNED_LONG_LONG) Likewise.
14524
14525         * m4/stdint.m4 (gl_STDINT_H): Rewrite to accommodate stdint_.h
14526         changes.  Make 2.59 a prerequisite.  Check and substitute for
14527         HAVE_LONG_LONG_INT.  Rely on Autoconf to check for stdint.h and
14528         inttypes.h.  Do not use special include files; just use the
14529         defaults.  Check for sys/inttypes.h and sys/bitypes.h in the usual
14530         way now.  Remove no-longer-needed tests for HAVE_LONG_64BIT,
14531         HAVE_LONG_LONG_64BIT, int8_t, int16_t, int32_t, int64_t, uint8_t,
14532         uint16_t, uint32_t uint64_t, int_least8_t, int_least16_t,
14533         int_least32_t, int_least64_t, uint_least8_t, uint_least16_t,
14534         uint_least32_t, uint_least64_t, int_fast8_t, int_fast16_t,
14535         int_fast32_t, int_fast64_t, uint_fast8_t uint_fast16_t,
14536         uint_fast32_t, uint_fast64_t, intptr_t, uintptr_t, intmax_t,
14537         uintmax_t, INT8_MIN, INT8_MAX, UINT8_MAX, INT16_MIN, INT16_MAX,
14538         UINT16_MAX, INT32_MIN, INT32_MAX, UINT32_MAX, INT64_MIN,
14539         INT64_MAX, UINT64_MAX, INT_LEAST8_MIN, INT_LEAST8_MAX,
14540         UINT_LEAST8_MAX, INT_LEAST16_MIN, INT_LEAST16_MAX,
14541         UINT_LEAST16_MAX, INT_LEAST32_MIN, INT_LEAST32_MAX,
14542         UINT_LEAST32_MAX, INT_LEAST64_MIN, INT_LEAST64_MAX,
14543         UINT_LEAST64_MAX, INT_FAST8_MIN, INT_FAST8_MAX, UINT_FAST8_MAX,
14544         INT_FAST16_MIN, INT_FAST16_MAX, UINT_FAST16_MAX, INT_FAST32_MIN,
14545         INT_FAST32_MAX, UINT_FAST32_MAX, INT_FAST64_MIN, INT_FAST64_MAX,
14546         UINT_FAST64_MAX, INTPTR_MIN, INTPTR_MAX, UINTPTR_MAX, INTMAX_MIN,
14547         INTMAX_MAX, UINTMAX_MAX, PTRDIFF_MIN, PTRDIFF_MAX, SIG_ATOMIC_MIN,
14548         SIG_ATOMIC_MAX, SIZE_MAX, WCHAR_MIN, WCHAR_MAX, WINT_MIN,
14549         WINT_MAX.  Check for C99 conformance more strictly, by detecting
14550         bugs in glibc 2.4, Solaris 10, and OpenBSD 3.9.  On the other hand do
14551         not check for things that C99 does not require, e.g., int8_t.  If
14552         a test isn't needed unless <stdint.h> isn't working, and is
14553         unlikely to be needed for any other reason, then don't do it
14554         unless <stdint.h> isn't working.  Do not check for ptrdiff_t or
14555         size_t, since we assume C89 freestanding at least.  Do not check
14556         for sig_atomic_t, wchar_t, or wint_t, since the code now does
14557         the right thing even if the types are not defined.  Instead use:
14558         (gl_STDINT_TYPE_PROPERTIES): New macro.
14559         (gl_HEADER_STDINT_H, gl_HEADER_INTTYPES_H): Remove.  Don't bother
14560         testing whether <sys/types.h> clashes, as Autoconf does this for
14561         us now.  All uses removed.
14562         (gl_STDINT_CHECK_TYPES, gl_STDINT_MISSING_BOUND):
14563         (gl_STDINT_MISSING_BOUNDS, gl_STDINT_MISSING_BOUNDS2):
14564         (gl_CHECK_TYPE_SAME):
14565         Remove; no longer needed.
14566         (gl_STDINT_BITSIZEOF): Don't bother to check whether the type
14567         exists, since we'll return 0 anyway in that case.
14568         (gl_INTEGER_TYPE_SUFFIX, gl_STDINT_INCLUDES): New macros.
14569
14570 2006-07-01  Paul Eggert  <eggert@cs.ucla.edu>
14571
14572         * lib/stdint_.h (_GL_STDINT_H): Renamed from _STDINT_H, to avoid
14573         possible collision with system files.
14574         (<stdio.h>, <time.h>, <wchar.h>) [defined __cplusplus && ! defined
14575         __STDC_CONSTANT_MACROS)]: Do not include, since we don't need
14576         WCHAR_MIN and WCHAR_MAX in this case.
14577         (<stddef.h>): Do not include; no longer needed.
14578         (<sys/types.h>): Include if @HAVE_SYS_TYPES_H@, not if
14579         (defined(__OpenBSD__) || defined(__bsdi__) || defined(__sgi)).
14580         (<sys/inttypes.h>): Include if @HAVE_SYS_INTTYPES_H@ &&
14581         !@HAVE_INTTYPES_H@, not if (defined(__FreeBSD__)
14582         && (__FreeBSD__ >= 3) && (__FreeBSD__ <= 4)).
14583         (__STDINT_H__) [@HAVE_STDINT_H@ && defined __sgi && ! defined
14584         __c99]: Define, to work around IRIX <stdint.h> incompatibility.
14585         (@FULL_PATH_STDINT_H@) [!(defined(__sgi) && @HAVE_INTTYPES_H@ &&
14586         !defined(__c99))]: Include in this case too, since it's harmless
14587         now.
14588         (<inttypes.h>) [@HAVE_INTTYPES_H@]: Include, since it's no longer
14589         dangerous to do so.
14590         (@FULL_PATH_INTTYPES_H@) [(defined(__hpux) || defined(_AIX)) &&
14591         @HAVE_INTTYPES_H@]: Do not include, since we now include <inttypes.h>.
14592         (_STDINT_MIN, _STDINT_MAX): New macros.
14593         (int8_t, uint8_t, int16_t, uint16_t, int32_t, uint32_t, int64_t):
14594         (uint64_t, int_least8_t, uint_least8_t, int_least16_t):
14595         (uint_least16_t, int_least32_t, uint_least32_t, int_least64_t):
14596         (uint_least64_t, int_fast8_t, uint_fast8_t, int_fast16_t):
14597         (uint_fast16_t, int_fast32_t, uint_fast32_t, int_fast64_t):
14598         (uint_fast64_t, intptr_t, uintptr_t, intmax_t, uintmax_t): Now
14599         macros, not typedefs; this simplifies things quite a bit.
14600         Use long int for all types narrower than int64_t.
14601         (intmax_t, uintmax_t, INTMAX_C, UINTMAX_C):
14602         Define in terms of long long int or int64_t or long int,
14603         not int64_t or int32_t.  This saves some compile-time testing.
14604         (INT8_MIN, INT8_MAX, UINT8_MAX, INT16_MIN, INT16_MAX, UINT16_MAX):
14605         (INT32_MIN, INT32_MAX, UINT32_MAX, INT64_MIN, INT64_MAX):
14606         (UINT64_MAX, INT_LEAST8_MIN, INT_LEAST8_MAX, UINT_LEAST8_MAX):
14607         (INT_LEAST16_MIN, INT_LEAST16_MAX, UINT_LEAST16_MAX):
14608         (INT_LEAST32_MIN, INT_LEAST32_MAX, UINT_LEAST32_MAX):
14609         (INT_LEAST64_MIN, INT_LEAST64_MAX, UINT_LEAST64_MAX, INT_FAST8_MIN):
14610         (INT_FAST8_MAX, UINT_FAST8_MAX, INT_FAST16_MIN, INT_FAST16_MAX):
14611         (UINT_FAST16_MAX, INT_FAST32_MIN, INT_FAST32_MAX, UINT_FAST32_MAX):
14612         (INT_FAST64_MIN, INT_FAST64_MAX, UINT_FAST64_MAX, INTPTR_MIN):
14613         (INTPTR_MAX, UINTPTR_MAX, INTMAX_MIN, INTMAX_MAX, UINTMAX_MAX):
14614         (PTRDIFF_MIN, PTRDIFF_MAX, SIG_ATOMIC_MIN, SIG_ATOMIC_MAX):
14615         (SIZE_MAX, WCHAR_MIN, WCHAR_MAX, WINT_MIN, WINT_MAX):
14616         undef any previous version and define our own version, for
14617         simplicity and consistency with the new macros for types.
14618         (PTRDIFF_MIN, PTRDIFF_MAX, SIG_ATOMIC_MIN, SIG_ATOMIC_MAX):
14619         (SIZE_MAX, WCHAR_MIN, WCHAR_MAX, WINT_MIN, WINT_MAX):
14620         Simplify definitions by using _STDINT_MIN and _STDINT_MAX
14621         where appropriate.  Rely on new symbols @PTRDIFF_T_SUFFIX@,
14622         @SIG_ATOMIC_T_SUFFIX@, @SIZE_T_SUFFIX@, @WCHAR_T_SUFFIX@,
14623         @WINT_T_SUFFIX@ to keep things simple here.
14624         (UINT8_C, UINT16_C, UINT32_C, INT64_C, UINT64_C):
14625         Simplify by assuming typical 8/16/32/64 host, since we're
14626         already doing that elsewhere anyway.
14627         Use (LONG_MAX >> 31 >> 31 == 1) rather than @HAVE_LONG_64BIT@,
14628         and assume long long int is 64 bits if available.  This
14629         speeds up 'configure'.
14630
14631 2006-07-01  Eric Blake  <ebb9@byu.net>
14632
14633         * m4/stdarg.m4 (gl_STDARG_H): Use proper AH_VERBATIM.
14634         Reported by Andreas Buening.
14635
14636 2006-07-01  Eric Blake  <ebb9@byu.net>
14637
14638         * m4/stdarg.m4 (gl_STDARG_H): Properly parenthesize gl_va_copy.
14639
14640 2006-06-30  Jim Hyslop  <jhyslop@dreampossible.ca>  (tiny change)
14641
14642         * lib/getaddrinfo.c: fixed typo
14643
14644 2006-06-29  Jim Meyering  <jim@meyering.net>
14645
14646         * modules/strftime (Maintainer): Add my name, since with the
14647         FPRINTFTIME changes strftime.c has forked from glibc.
14648
14649 2006-06-29  Eric Blake  <ebb9@byu.net>
14650
14651         * m4/sys_stat_h.m4 (gl_HEADER_SYS_STAT_H): Use AC_C_INLINE.
14652
14653 2006-06-29  Eric Blake  <ebb9@byu.net>
14654
14655         * m4/sys_stat_h.m4 (gl_HEADER_SYS_STAT_H): New file.
14656
14657 2006-06-29  Eric Blake  <ebb9@byu.net>
14658
14659         * lib/stat_.h: New file.
14660
14661 2006-06-29  Eric Blake  <ebb9@byu.net>
14662
14663         * lib/stat_.h (rpl_mkdir): Declare inline, to avoid warnings about
14664         unused static function.
14665
14666 2006-06-29  Eric Blake  <ebb9@byu.net>
14667
14668         * doc/functions.texi (Function Portability): Document missing lstat
14669         on mingw.
14670
14671 2006-06-29  Eric Blake  <ebb9@byu.net>
14672
14673         * MODULES.html.sh: Add sys_stat.
14674         * modules/sys_stat: New module.
14675         * modules/mkstemp (Depends-on): Add sys_stat.
14676
14677 2006-06-29  Derek R. Price  <derek@ximbiot.com>
14678
14679         * m4/strftime.m4: Don't call AC_FUNC_STRFTIME.
14680
14681 2006-06-29  Derek R. Price  <derek@ximbiot.com>
14682
14683         * m4/c-bs-a.m4: Removed.
14684
14685 2006-06-29  Derek R. Price  <derek@ximbiot.com>
14686
14687         * lib/strftime.c: Assume strftime() exists.
14688
14689 2006-06-29  Derek Price  <derek@ximbiot.com>
14690
14691         * modules/c-bs-a: Removed - \a is C89.
14692         * MODULES.html.sh: Remove c-bs-a.
14693
14694 2006-06-29  Bruno Haible  <bruno@clisp.org>
14695
14696         * modules/wcwidth (License): Change to LGPL.
14697
14698 2006-06-28  Simon Josefsson  <jas@extundo.com>
14699
14700         * tests/test-getaddrinfo.c: Test getnameinfo too.  Call WSAStartup
14701         on _WIN32.
14702
14703         * modules/getaddrinfo (Depends-on): Add inet_ntop, needed by
14704         getnameinfo.
14705
14706 2006-06-28  Simon Josefsson  <jas@extundo.com>
14707
14708         * m4/getaddrinfo.m4: Look for getnameinfo prototypes too.
14709
14710 2006-06-28  Simon Josefsson  <jas@extundo.com>
14711
14712         * lib/getaddrinfo.c: Try to load ws2_32.dll on Windows, to find the
14713         functions there.  It will succeed on Windows XP, but on Windows
14714         2000 and (presumably) earlier, it will fail, and use the internal
14715         re-implementation.
14716         (use_win32_p): New function.
14717         (getaddrinfo): Use strtoul on servname, to support numeric ports.
14718         Support AI_NUMERICSERV to disable getservbyname.
14719         (getnameinfo): New function, only supports
14720         NI_NUMERICHOST|NI_NUMERICSERV for now.
14721
14722         * lib/getaddrinfo.h: Test and check for AI_* flags separately, MinGW
14723         only have some of them.  Add AI_NUMERICSERV.  Add prototype for
14724         getnameinfo.
14725
14726 2006-06-28  Eric Blake  <ebb9@byu.net>
14727
14728         * modules/wcwidth: New file.
14729         * modules/mbchar (Depends-on): Add wcwidth.
14730         * modules/mbswidth (Depends-on): Add wcwidth.
14731         * MODULES.html.sh: Add wcwidth.
14732
14733 2006-06-28  Eric Blake  <ebb9@byu.net>
14734
14735         * m4/mbswidth.m4 (gl_MBSDWIDTH): Move wcwidth from here...
14736         * m4/wcwidth.m4 (gl_FUNC_WCWIDTH): ...to this new file.
14737
14738 2006-06-28  Eric Blake  <ebb9@byu.net>
14739
14740         * lib/xvasprintf.h: Fix comments.
14741
14742 2006-06-28  Eric Blake  <ebb9@byu.net>
14743
14744         * lib/mbchar.h (wcwidth): Include wcwidth.h.
14745         * lib/mbswidth.c (wcwidth): Move from here...
14746         * lib/wcwidth.h: ...to this new file.
14747
14748 2006-06-28  Derek R. Price  <derek@ximbiot.com>
14749
14750         * m4/savedir.m4: Remove AC_FUNC_CLOSEDIR_VOID requirement.
14751
14752         * m4/fnmatch.m4 (_AC_LIBOBJ_FNMATCH): Don't require AC_C_CONST, since
14753         it's obsolete.
14754         * m4/strftime.m4 (gl_FUNC_GNU_STRFTIME): Likewise.
14755
14756 2006-06-28  Derek R. Price  <derek@ximbiot.com>
14757
14758         * lib/savedir.c (CLOSEDIR): Remove.  All uses changed to closedir.
14759         Autoconf 2.60 says this stuff was obsolete.
14760
14761 2006-06-28  Bruno Haible  <bruno@clisp.org>
14762
14763         * modules/wcwidth (Files): Add m4/wchar_t.m4.
14764
14765 2006-06-28  Bruno Haible  <bruno@clisp.org>
14766
14767         * m4/wcwidth.m4 (gl_FUNC_WCWIDTH): Also require AC_C_INLINE and
14768         gt_TYPE_WCHAR_T.
14769
14770 2006-06-28  Bruno Haible  <bruno@clisp.org>
14771
14772         * lib/wcwidth.h: Declare nothing if !HAVE_WCHAR_T. Provide a fallback
14773         declaration for wcwidth.
14774         * lib/mbswidth.c: Restore the includes of <wchar.h> and <wctypes.h>.
14775
14776 2006-06-28  Bruno Haible  <bruno@clisp.org>
14777
14778         * lib/mkdtemp.c [MINGW]: Include <io.h>.
14779         (mkdir): Define using _mkdir.
14780
14781 2006-06-28  Bruno Haible  <bruno@clisp.org>
14782
14783         * lib/getaddrinfo.h: Fix POSIX URL.
14784         * lib/getaddrinfo.c (WIN32_NATIVE): New macro. Use it instead of
14785         _WIN32.
14786         (use_win32_p): Make static.
14787         (getaddrinfo): Reject service name if it is empty or does not consist
14788         solely of decimal digits, or if its value is > 65535.
14789         (getnameinfo): Remove useless casts.
14790
14791 2006-06-27  Simon Josefsson  <jas@extundo.com>
14792
14793         * modules/sys_select: New file, suggested by Bruno Haible, Paul
14794         Eggert and Martin Lambers.
14795
14796 2006-06-27  Simon Josefsson  <jas@extundo.com>
14797
14798         * m4/sys_select_h.m4: New file, suggested by Bruno Haible, Paul
14799         Eggert and Martin Lambers.
14800
14801 2006-06-27  Bruno Haible  <bruno@clisp.org>
14802
14803         * m4/stdint.m4 (gl_STDINT_BITSIZEOF): For nonexistent types, set the
14804         result to 0, not to empty.
14805         Reported by Martin Neitzel <neitzel@sco.gaertner.de>.
14806
14807 2006-06-27  Bruno Haible  <bruno@clisp.org>
14808
14809         * lib/stdint_.h (intmax_t, uintmax_t): Undefine before typedef.
14810
14811 2006-06-26  Simon Josefsson  <jas@extundo.com>
14812
14813         * m4/inet_ntop.m4: Don't check for sys/types.h, we assume it is
14814         present.
14815
14816 2006-06-26  Paul Eggert  <eggert@cs.ucla.edu>
14817
14818         * lib/base64.c (B64): Use _ as the formal parameter, not x, to avoid
14819         bug in IBM C V6 for AIX.  Problem reported by Larry Jones in
14820         <http://lists.gnu.org/archive/html/bug-gnulib/2006-06/msg00181.html>.
14821
14822 2006-06-26  Mark D. Baushke  <mdb@gnu.org>
14823
14824         * m4/stdint.m4 (gl_STDINT_H): Treat BSD/OS like OpenBSD.
14825
14826 2006-06-26  Bruno Haible  <bruno@clisp.org>
14827
14828         * modules/stdint (Makefile.am): Also substitute HAVE_WCHAR_H.
14829
14830 2006-06-26  Bruno Haible  <bruno@clisp.org>
14831
14832         * m4/stdint.m4 (gl_STDINT_H): Test also for <wchar.h>.
14833
14834 2006-06-26  Bruno Haible  <bruno@clisp.org>
14835
14836         * m4/stdint.m4 (gl_STDINT_H): Don't include <stdint.h> when using the
14837         SGI C compiler in pre-C99 mode.
14838         Suggested by Mark D. Baushke and Larry Jones.
14839
14840 2006-06-26  Bruno Haible  <bruno@clisp.org>
14841
14842         * lib/stdint_.h: Include <wchar.h> if necessary for WCHAR_MIN or
14843         WCHAR_MAX.
14844         Reported by Mark D. Baushke and Larry Jones.
14845
14846 2006-06-26  Bruno Haible  <bruno@clisp.org>
14847
14848         * lib/stdint_.h: Don't include <stdint.h> when using the SGI C compiler
14849         in pre-C99 mode.
14850         Suggested by Mark D. Baushke and Larry Jones.
14851
14852 2006-06-23  Simon Josefsson  <jas@extundo.com>
14853             Bruno Haible  <bruno@clisp.org>
14854
14855         * gnulib-tool (func_emit_lib_Makefile_am): Define MOSTLYCLEANDIRS.
14856         Emit mostlyclean-local rule.
14857         (func_emit_tests_Makefile_am): Likewise.
14858         * modules/sys_socket (Makefile.am): Use MOSTLYCLEANDIRS.
14859
14860 2006-06-23  Mark D. Baushke  <mdb@gnu.org>
14861
14862         * lib/stdint_.h: Treat BSD/OS like OpenBSD.
14863
14864 2006-06-23  Bruno Haible  <bruno@clisp.org>
14865
14866         * tests/test-stdint.c: Update to match ISO C 99 Technical
14867         Corrigendum 1.
14868
14869 2006-06-23  Bruno Haible  <bruno@clisp.org>
14870
14871         * m4/stdint.m4 (gl_STDINT_H): Treat IRIX like OpenBSD.
14872
14873 2006-06-23  Bruno Haible  <bruno@clisp.org>
14874
14875         * lib/stdint_.h: Treat IRIX like OpenBSD.
14876
14877 2006-06-23  Bruno Haible  <bruno@clisp.org>
14878
14879         * lib/stdint_.h (UINT8_C, UINT16_C, UINT32_C): Define according to
14880         ISO C 99 Technical Corrigendum 1.
14881
14882 2006-06-22  Simon Josefsson  <jas@extundo.com>
14883
14884         * m4/sockpfaf.m4: Include winsock2.h too, to make it work under
14885         MinGW.
14886
14887 2006-06-22  Paul Eggert  <eggert@cs.ucla.edu>
14888
14889         * lib/glob.c (collated_compare): Remove 'const' uses that weren't
14890         needed.  Some compiler complained about some of them.  Problem reported
14891         by Larry Jones in
14892         <http://lists.gnu.org/archive/html/bug-gnulib/2006-06/msg00172.html>.
14893
14894 2006-06-21  Simon Josefsson  <jas@extundo.com>
14895
14896         * tests/test-getaddrinfo.c: New file.
14897
14898         * modules/getaddrinfo-tests: New file.
14899
14900         * MODULES.html.sh: Add inet_pton.
14901
14902         * modules/inet_pton: New file.
14903
14904 2006-06-21  Simon Josefsson  <jas@extundo.com>
14905
14906         * m4/getaddrinfo.m4: Don't define WINVER.  Look for gethostbyname in
14907         -lws2_32 too.  Fixes getaddrinfo on Windows 2000, with the price
14908         of using the (limited) gnulib implementation on Windows XP.
14909
14910         * m4/inet_pton.m4: New file.
14911
14912 2006-06-21  Simon Josefsson  <jas@extundo.com>
14913
14914         * lib/getaddrinfo.c (getaddrinfo): Set ai_family in the return
14915         variable.
14916
14917         * lib/socket_.h: Don't define WINVER.
14918
14919         * lib/inet_pton.h, inet_pton.c: New file, taken from glibc but
14920         slightly modified to work in gnulib.
14921
14922 2006-06-21  Simon Josefsson  <jas@extundo.com>
14923
14924         * doc/gnulib.texi (Windows sockets): Add.
14925
14926 2006-06-21  Paul Eggert  <eggert@cs.ucla.edu>
14927
14928         * lib/read-file.c (fread_file): Start with buffer allocation of
14929         0 bytes rather than 1 byte; this simplifies the code.
14930         Don't invoke feof; it's not needed.  Refactor to avoid duplicate
14931         code to free buffer and save/restore errno.
14932         (internal_read_file): Remove unused local.
14933
14934 2006-06-20  Paul Eggert  <eggert@cs.ucla.edu>
14935
14936         * lib/openat.c (openat): Use ?:, not if, to work around GCC bug 4210
14937         <http://gcc.gnu.org/bugzilla/show_bug.cgi?id=4210>.
14938         Problem reported by Denis Excoffier in
14939         <http://lists.gnu.org/archive/html/bug-tar/2006-06/msg00023.html>.
14940
14941 2006-06-19  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
14942
14943         * modules/sys_socket, modules/socklen: Include sys/types since
14944         FreeBSD 4.x's sys/socket.h needs it.
14945
14946 2006-06-19  Simon Josefsson  <jas@extundo.com>
14947
14948         * lib/inet_ntop.c: Always build inet_ntop4, since inet_ntop6 calls it.
14949
14950 2006-06-19  Paul Eggert  <eggert@cs.ucla.edu>
14951
14952         * lib/alloca_.h (alloca) [defined alloca]: Don't define or declare.
14953
14954 2006-06-19  Bruno Haible  <bruno@clisp.org>
14955
14956         * m4/stdint.m4 (gl_STDINT_H): Enclose the values of FULL_PATH_STDINT_H
14957         and FULL_PATH_INTTYPES_H in angle brackets.
14958         Reported by Mark D. Baushke <mdb@gnu.org>.
14959
14960 2006-06-17  Eric Blake  <ebb9@byu.net>
14961
14962         * m4/rmdir-errno.m4 (gl_FUNC_FMDIR_NOTEMPTY): Assume errno.h declares
14963         errno.
14964
14965 2006-06-17  Bruno Haible  <bruno@clisp.org>
14966
14967         * m4/stdint.m4 (gl_STDINT_H) [FreeBSD >= 5]: Don't include
14968         <sys/inttypes.h>.
14969
14970 2006-06-17  Bruno Haible  <bruno@clisp.org>
14971
14972         * m4/setenv.m4 (gl_PREREQ_SETENV, gl_PREREQ_UNSETENV): Remove test
14973         whether errno is declared. Assume <errno.h> declares errno.
14974
14975 2006-06-17  Bruno Haible  <bruno@clisp.org>
14976
14977         * lib/stdint_.h [FreeBSD >= 5]: Don't include <sys/inttypes.h>.
14978
14979 2006-06-17  Bruno Haible  <bruno@clisp.org>
14980
14981         * lib/stdint_.h (_UINT8_T, _UINT32_T, _UINT64_T): New macros. Fixes a
14982         problem on Solaris 2.5.1.
14983
14984 2006-06-16  Eric Blake  <ebb9@byu.net>
14985
14986         * lib/unsetenv.c [!defined errno]: Assume errno.h declares errno.
14987         * lib/unicodeio.c [!defined errno]: Likewise.
14988         * lib/strtol.c [!defined errno]: Likewise.
14989         * lib/strtod.c [!defined errno]: Likewise.
14990
14991 2006-06-15  Eric Blake  <ebb9@byu.net>
14992
14993         * m4/ssize_t.m4 (gt_TYPE_SSIZE_T): Work in spite of -Werror.
14994
14995 2006-06-15  Eric Blake  <ebb9@byu.net>
14996
14997         * config/srclist.txt (ssize_t.m4): Lose sync.
14998
14999 2006-06-15  Bruno Haible  <bruno@clisp.org>
15000
15001         * modules/stdint (Files): Include m4/full-header-path.m4,
15002         m4/size_max.m4, m4/wchar_t.m4.
15003         (Makefile.am): Many more substitutions.
15004         * modules/stdint-tests: New file.
15005         * tests/test-stdint.c: New file.
15006
15007 2006-06-15  Bruno Haible  <bruno@clisp.org>
15008
15009         * m4/stdint.m4 (gl_STDINT_H): Rewritten to produce a complete stdint.h.
15010         (gl_HEADER_STDINT_H, gl_HEADER_INTTYPES_H, gl_STDINT_CHECK_TYPES,
15011         gl_STDINT_MISSING_BOUND, gl_STDINT_MISSING_BOUNDS,
15012         gl_STDINT_MISSING_BOUNDS2, gl_STDINT_BITSIZEOF, gl_CHECK_TYPES_SIGNED,
15013         gl_CHECK_TYPE_SAME): New macros.
15014
15015 2006-06-15  Bruno Haible  <bruno@clisp.org>
15016
15017         * m4/size_max.m4 (gl_SIZE_MAX): Make it work also when cross-compiling.
15018
15019 2006-06-15  Bruno Haible  <bruno@clisp.org>
15020
15021         * lib/stdint_.h: Rewritten to be fully auto-configured.
15022         Fixes bug on HP-UX/IA64.
15023
15024 2006-06-11  Paul Eggert  <eggert@cs.ucla.edu>
15025
15026         * lib/getdate.y (__attribute__): Don't define if already defined.
15027         Problem reported by Larry Jones.
15028         * lib/utimens.c (__attribute__): Likewise.
15029
15030 2006-06-04  Paul Eggert  <eggert@cs.ucla.edu>
15031
15032         * lib/regexec.c (group_nodes_into_DFAstates): Fix a buffer overrun
15033         reported by Andreas Schwab.
15034
15035 2006-05-30  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
15036             Bruno Haible  <bruno@clisp.org>
15037
15038         * m4/strndup.m4 (gl_FUNC_STRNDUP): Replace the AC_REPLACE_FUNCS with a
15039         check for the declaration of strnlen and a run test that exposes the
15040         AIX 5.1 strnlen bug.  In the failure case, #define strndup to
15041         rpl_strndup.
15042
15043 2006-05-30  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
15044             Bruno Haible  <bruno@clisp.org>
15045
15046         * lib/strndup.c (strndup) [!_LIBC]: Don't undefine macro definition.
15047
15048 2006-05-28  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
15049
15050         * m4/c-strtod.m4 (gl_C99_STRTOLD): Use a link test rather than a
15051         compile test, for Tru64 4.0D.
15052
15053 2006-05-28  Karl Berry  <karl@gnu.org>
15054
15055         * config/srclist.txt (printf-args.c): lose sync.
15056
15057 2006-05-26  Martin Lambers  <marlam@marlam.de>
15058
15059         * lib/getpass.c: Updates the test for the native W32 API, and adds
15060         missing includes, thus fixing compilation warnings.
15061
15062 2006-05-25  Sergey Poznyakoff  <gray@gnu.org.ua>
15063
15064         * lib/exclude.c (exclude_fnmatch): New function.
15065         (excluded_file_name): Call exclude_fnmatch.
15066         * lib/exclude.h (excluded_file_name): New prototype
15067
15068 2006-05-25  Paul Eggert  <eggert@cs.ucla.edu>
15069
15070         * lib/tempname.c (small_open, large_open): New macros.
15071         (__open, __open64) [!_LIBC]: Remove.
15072         (__gen_tempname): Use small_open and large_open instead of __open
15073         and __open64.  This fixes a portability bug on HP-UX 11.11i
15074         reported by Simon Wing-Tang in
15075         <http://lists.gnu.org/archive/html/bug-coreutils/2006-05/msg00114.html>.
15076
15077 2006-05-24  Bruno Haible  <bruno@clisp.org>
15078
15079         * lib/printf-args.c (printf_fetchargs): Turn NULL pointers for
15080         TYPE_STRING and TYPE_WIDE_STRING into a non-NULL replacement.
15081         Reported by Thorsten Maerz <torte@netztorte.de> via
15082         Aaron Stone <aaron@serendipity.cx>.
15083
15084 2006-05-19  Paul Eggert  <eggert@cs.ucla.edu>
15085
15086         * m4/nanosleep.m4 (gl_FUNC_NANOSLEEP): Rename cache variables to use
15087         gl_ rather than jm_.  Link, don't run, so that cross-compiles are
15088         allowed.  Check that resulting type is arithmetic.  Move AC_REQUIRE
15089         and AC_CHECK_HEADERS_ONCE outside of AC_CACHE_CHECK, since they're
15090         not really conditional on the cache.
15091         (gl_PREREQ_NANOSLEEP): Check for sys/select.h.
15092
15093 2006-05-19  Paul Eggert  <eggert@cs.ucla.edu>
15094
15095         * lib/nanosleep.c [HAVE_SYS_SELECT_H]: Include <sys/select.h>.
15096         Use the usual Autoconf way to include <time.h> and/or sys/time.h.
15097         (my_usleep): Don't mishandle maximum value.
15098
15099 2006-05-19  Jim Meyering  <jim@meyering.net>
15100
15101         * lib/getugroups.c: Correct an outdated comment.  From Bruno Haible.
15102
15103 2006-05-17  Bruno Haible  <bruno@clisp.org>
15104
15105         Cygwin portability.
15106         * lib/classpath.c (PATH_SEPARATOR) [CYGWIN]: Define as ':'.
15107
15108 2006-05-17  Bruno Haible  <bruno@clisp.org>
15109
15110         * lib/stdint_.h: Fix recognition of Cygwin.
15111
15112 2006-05-15  Bruno Haible  <bruno@clisp.org>
15113
15114         * build-aux/config.rpath: Improve support for Sun C 5.9 on Linux, based
15115         on libtool patch by Ralf Wildenhues.
15116
15117 2006-05-14  Paul Eggert  <eggert@cs.ucla.edu>
15118
15119         * m4/stdbool.m4 (AC_HEADER_STDBOOL): Fix overly-picky
15120         test for C99 conformance; (bool) 0.5 is an integer constant
15121         expression, but (bool) -0.5 is not.  Problem reported by Fedor
15122         Sergeev in <http://forum.sun.com/jive/thread.jspa?threadID=96202>.
15123
15124 2006-05-11  Simon Josefsson  <jas@extundo.com>
15125
15126         * m4/xvasprintf.m4: Fix obvious typo.
15127
15128 2006-05-11  Jim Meyering  <jim@meyering.net>
15129
15130         * lib/sha1.c (sha1_buffer): Correct comment: s/MD5/SHA1/.  From
15131         James Lemley.
15132
15133 2006-05-10  Simon Josefsson  <jas@extundo.com>
15134
15135         * lib/md4.c: Typo fix, update copyright years.
15136         (K1, K2): Don't use L because it turn computations into 64-bit on
15137         64-bit platforms.
15138
15139 2006-05-10  Paul Eggert  <eggert@cs.ucla.edu>
15140
15141         * lib/crc.c (crc32_update): Remove unnecessary L suffix.
15142         * lib/md4.c (rol): Cast right-shift arg to uint32_t to prevent
15143         unwanted sign propagation, e.g., on hosts with 64-bit int.
15144         There still are some problems with reeelly weird theoretical hosts
15145         (e.g., 33-bit int) but it's not worth worrying about now.
15146         * lib/sha1.c (rol): Likewise.
15147         (K1, K2, K3, K4): Remove unnecessary L suffix.
15148
15149 2006-05-10  Bruno Haible  <bruno@clisp.org>
15150
15151         * lib/des.c: Cast to avoid warnings.
15152
15153 2006-05-09  Bruno Haible  <bruno@clisp.org>
15154
15155         * modules/xvasprintf (Files): Add m4/xvasprintf.m4.
15156         (Depends-on): Depend also on xsize, stdarg.
15157         (configure.ac): Add gl_XVASPRINTF.
15158
15159 2006-05-09  Bruno Haible  <bruno@clisp.org>
15160
15161         * m4/xvasprintf.m4: New file.
15162
15163 2006-05-09  Bruno Haible  <bruno@clisp.org>
15164
15165         * lib/xvasprintf.c: Include limits.h, string.h, xsize.h.
15166         (EOVERFLOW): Define fallback value.
15167         (xstrcat): New function.
15168         (xvasprintf): Recognize the special case of a string concatenation.
15169
15170 2006-05-08  Eric Blake  <ebb9@byu.net>
15171
15172         * gnulib-tool (func_version): Base copyright year on CVS date.
15173         (func_emit_copyright_notice): New function.
15174         (func_emit_lib_Makefile_am): Use it.
15175         (func_emit_tests_Makefile_am): Likewise.
15176         (func_import): Likewise.
15177
15178 2006-05-08  Bruno Haible  <bruno@clisp.org>
15179
15180         * modules/stdarg: New file.
15181         * MODULES.html.sh (func_all_modules): Add section for <stdarg.h>.
15182
15183 2006-05-08  Bruno Haible  <bruno@clisp.org>
15184
15185         * m4/stdarg.m4: New file, from GNU gettext.
15186
15187 2006-05-08  Bruno Haible  <bruno@clisp.org>
15188
15189         * config/srclist.txt (build-aux/config.rpath): different from latest
15190         release.
15191
15192 2006-05-08  Bruno Haible  <bruno@clisp.org>
15193
15194         * build-aux/config.rpath: Add support for Sun C 5.9 on Linux.
15195
15196 2006-05-05  Jim Meyering  <jim@meyering.net>
15197
15198         * m4/warning.m4: New file, derived from bison's file by the same name.
15199
15200 2006-05-03  Bruno Haible  <bruno@clisp.org>
15201
15202         * lib/stdint_.h: Shorter URL.
15203         * lib/inttypes.h: Likewise.
15204
15205 2006-05-02  Paul Eggert  <eggert@cs.ucla.edu>
15206
15207         * modules/inttypes (Maintainer): Change from Derek Price to 'all'.
15208
15209 2006-05-02  Paul Eggert  <eggert@cs.ucla.edu>
15210
15211         * lib/verify.h: Document the internals better.  Most of this change
15212         was written by Bruno Haible.
15213
15214 2006-05-02  Paul Eggert  <eggert@cs.ucla.edu>
15215
15216         * doc/verify.texi: New file, partly based on a proposal by
15217         Bruno Haible.
15218
15219 2006-05-02  Bruno Haible  <bruno@clisp.org>
15220
15221         * m4/full-header-path.m4 (gl_FULL_HEADER_PATH): Move the include_next
15222         test from here...
15223         * m4/_inttypes_h.m4 (gl_INTTYPES_H): ... to here.
15224
15225 2006-04-29  Bruno Haible  <bruno@clisp.org>
15226
15227         * lib/gcd.c: Use WORD_T and GCD instead of unsigned long and gcd.
15228         Suggested by Oskar Liljeblad <oskar@osk.mine.nu>.
15229
15230 2006-04-29  Bruno Haible  <bruno@clisp.org>
15231
15232         * gnulib-tool: Make --update option actually work.
15233
15234 2006-04-29  Bruno Haible  <bruno@clisp.org>
15235
15236         * doc/gcd.texi: New file.
15237         * doc/gnulib.texi: Include it.
15238
15239 2006-04-25  Paul Eggert  <eggert@cs.ucla.edu>
15240
15241         * lib/getdate.y (get_date): When adding relative date, start with the
15242         initial time, not with the result of the first mktime call.
15243
15244 2006-04-25  Bruno Haible  <bruno@clisp.org>
15245
15246         * gnulib-tool (func_import): Output the include directives in three
15247         blocks, sorted separately.
15248         Reported by Ben Pfaff <blp@cs.stanford.edu>.
15249
15250 2006-04-24  Paul Eggert  <eggert@cs.ucla.edu>
15251
15252         * m4/unlink-busy.m4 (gl_FUNC_UNLINK_BUSY_TEXT): Use prototype
15253         to define main with arguments, for C++.  Reported by Eric Blake.
15254         * m4/c-stack.m4 (AC_SYS_XSI_STACK_OVERFLOW_HEURISTIC):
15255         Prefer 'int main ()' to 'int main (void)', for C++.
15256         * m4/getcwd-path-max.m4 (gl_FUNC_GETCWD_PATH_MAX): Likewise.
15257         * m4/fsusage.m4 (gl_FILE_SYSTEM_USAGE): Specify a return type
15258         for 'main', for C99 and C++.
15259
15260 2006-04-24  Paul Eggert  <eggert@cs.ucla.edu>
15261
15262         * m4/fsusage.m4 (gl_FILE_SYSTEM_USAGE): Use return, not exit.
15263         Don't assume that exit status -1 is valid.
15264         * m4/nanosleep.m4 (gl_FUNC_NANOSLEEP): Likewise.
15265         * m4/putenv.m4 (gl_FUNC_PUTENV): Likewise.
15266         * m4/rmdir-errno.m4 (gl_FUNC_RMDIR_NOTEMPTY): Likewise.
15267         * m4/readdir.m4 (GL_FUNC_READDIR): Include <stdlib.h>.
15268         * m4/rename.m4 (vb_FUNC_RENAME): Likewise.
15269         * m4/unlink-busy.m4 (gl_FUNC_UNLINK_BUSY_TEXT): Use AC_RUN_IFELSE,
15270         not AC_TRY_RUN.  Use return, not exit.  Don't assume that
15271         functions can be used without declaring them, or that you can
15272         exit with status -1.
15273         * m4/utimes-null.m4 (gl_FUNC_UTIMES_NULL): Likewise.
15274
15275 2006-04-24  Karl Berry  <karl@gnu.org>
15276
15277         * config/srclist.txt (longdouble.m4): sync lost.
15278
15279 2006-04-24  Eric Blake  <ebb9@byu.net>
15280
15281         * m4/strerror_r.m4 (AC_FUNC_STRERROR_R): Avoid unused variable warning.
15282
15283 2006-04-24  Bruno Haible  <bruno@clisp.org>
15284
15285         * m4/poll.m4 (gl_FUNC_POLL): When cross-compiling, reject also the
15286         poll() implementation in AIX.
15287         Reported by Ralf Wildenhues <Ralf.Wildenhues@gmx.de>.
15288
15289 2006-04-24  Bruno Haible  <bruno@clisp.org>
15290
15291         * m4/poll.m4 (gl_FUNC_POLL): Rearrange code, so that POLL_H gets
15292         assigned exactly once.
15293
15294 2006-04-23  Claudio Fontana  <claudio@gnu.org>
15295             Bruno Haible  <bruno@clisp.org>
15296
15297         * modules/gettext (Makefile.am): Add a -I flag for <libintl.h>.
15298         * gnulib-tool (func_emit_lib_Makefile_am): Emit empty default value
15299         for AM_CPPFLAGS.
15300
15301 2006-04-23  Bruno Haible  <bruno@clisp.org>
15302
15303         * modules/copy-file: Depend on unistd.
15304         * modules/execute: Likewise.
15305         * modules/fatal-signal: Likewise.
15306         * modules/findprog: Likewise.
15307         * modules/mkdtemp : Likewise.
15308         * modules/pipe: Likewise.
15309         * modules/wait-process: Likewise.
15310
15311 2006-04-23  Bruno Haible  <bruno@clisp.org>
15312
15313         * lib/fwriteerror.c (fwriteerror): Call fclose also when an error
15314         condition was already detected.
15315         Reported by Ben Pfaff <blp@cs.stanford.edu>.
15316
15317 2006-04-23  Bruno Haible  <bruno@clisp.org>
15318
15319         * lib/copy-file.c: Include <unistd.h> unconditionally.
15320         * lib/execute.c: Likewise.
15321         * lib/fatal-signal.c: Likewise.
15322         * lib/findprog.c: Likewise.
15323         * lib/mkdtemp.c: Likewise.
15324         * lib/pipe.h: Likewise.
15325         * lib/pipe.c: Likewise.
15326         * lib/wait-process.h: Likewise.
15327
15328 2006-04-23  Bruno Haible  <bruno@clisp.org>
15329
15330         * gnulib-tool (func_usage): Fix --import description. Document
15331         --update.
15332         (func_import): Create temporary file in a temporary directory, if
15333         --dry-run is specified. Silence errors from 'grep' when there are no
15334         m4 files in $m4dir.
15335         (func_create_testdir): Silence errors from 'grep' when there are no
15336         m4 files in $m4dir.
15337         Reported by Karl Berry <karl@freefriends.org>.
15338
15339 2006-04-20  Bruno Haible  <bruno@clisp.org>
15340
15341         * m4/argp.m4 (gl_ARGP): Don't call AC_CHECK_DECLS_ONCE with more than
15342         one argument, so that the code will be portable to Autoconf 2.60.
15343         * m4/getlogin_r.m4 (gl_PREREQ_GETLOGIN_R): Likewise.
15344         * m4/getpass.m4 (gl_PREREQ_GETPASS): Likewise.
15345         * m4/unlocked-io.m4 (gl_FUNC_GLIBC_UNLOCKED_IO): Likewise.
15346
15347 2006-04-19  Derek Price  <derek@ximbiot.com>
15348             Eric Blake  <ebb9@byu.net>
15349
15350         * m4/full-header-path.m4 (gl_FULL_HEADER_PATH): Use </full/path.h>
15351         rather than "/full/path.h".  Update comment to match.  Shorten &
15352         generalize m4_translit call via AS_TR_CPP.
15353
15354 2006-04-19  Derek Price  <derek@ximbiot.com>
15355             Eric Blake  <ebb9@byu.net>
15356
15357         * lib/inttypes.h: Correct grammar in comment.
15358
15359 2006-04-18  Derek Price  <derek@ximbiot.com>
15360             Paul Eggert  <eggert@cs.ucla.edu>
15361
15362         * modules/inttypes: New file.
15363         * modules/strtoimax, modules/strtoumax: Depend on inttypes.
15364
15365 2006-04-18  Derek Price  <derek@ximbiot.com>
15366             Paul Eggert  <eggert@cs.ucla.edu>
15367
15368         * m4/_inttypes_h.m4, m4/full-header-path.m4, m4/include_next.m4:
15369         New files.
15370
15371 2006-04-18  Derek Price  <derek@ximbiot.com>
15372             Paul Eggert  <eggert@cs.ucla.edu>
15373
15374         * lib/inttypes.h: New file.
15375         * lib/strtoimax.c: Assume <inttypes.h>.
15376
15377 2006-04-15  Paul Eggert  <eggert@cs.ucla.edu>
15378
15379         * lib/utimens.c (futimens): glibc futimesat messes up if /proc
15380         isn't mounted.  Problem reported by Kir Kolyshkin.
15381
15382 2006-04-13  Paul Eggert  <eggert@cs.ucla.edu>
15383
15384         * lib/regcomp.c (init_dfa): Don't use wchar_t or wctype_t if
15385         RE_ENABLE_I18N is not defined.  Problem reported by Mark D. Baushke via
15386         Derek R. Price.
15387         * lib/regex.h (RE_DUP_MAX): Update comment to match current
15388         implementation.
15389
15390 2006-04-12  Eric Blake  <ebb9@byu.net>
15391
15392         * modules/time_r (Makefile.am): Remove lib_SOURCES line, as this
15393         is now done automatically by the corresponding Autoconf macro.
15394
15395 2006-04-11  Paul Eggert  <eggert@cs.ucla.edu>
15396
15397         * m4/time_r.m4 (gl_TIME_R): Add AC_LIBSOURCES for time_r.c and
15398         time_r.h.
15399
15400 2006-04-09  Paul Eggert  <eggert@cs.ucla.edu>
15401
15402         Merge regex changes from libc, removing some of our
15403         POSIX-conformance changes that were rejected and redoing them in a
15404         less-intrusive way.
15405
15406         * lib/regcomp.c (re_compile_internal, init_dfa):
15407         Length arg is now size_t, not Idx.  All uses changed.
15408         (peek_token): Forward decl now says internal_function.
15409         (__re_error_msgid, __re_error_msgid_idx):
15410         Now static rather than extern with attribute_hidden.
15411         (re_compile_pattern) [!defined _LIBC]: Use K&R-style defn.
15412         For some reason libc prefers K&R style defns for external functions.
15413         (regerror) [!defined _LIBC]: Likewise.
15414         (re_set_syntax, re_compile_fastmap, regcomp, regfree, re_comp):
15415         (seek_collating_symbol_entry, lookup_collation_sequence_value):
15416         (build_range_exp, build_collating_symbol):
15417         Use K&R-style defn.
15418         (re_compile_fastmap): Use '\0' to memset, not 0.
15419         (utf8_sb_map): Make the calculations more obvious.
15420         (init_dfa, parse_bracket_exp, build_charclass_op):
15421         Call calloc and cast result, as glibc does.
15422         (init_word_char, fetch_token, peek_token, peek_token_bracket):
15423         (build_range_exp, build_collating_symbol):
15424         Now internal functions.
15425
15426         * lib/regex.c [!defined _LIBC]: Allow compiling with C++ compilers.
15427
15428         * lib/regex.h (__USE_GNU_REGEX): New macro.  Don't depend on
15429         _REGEX_SOURCE any more; depend on _GNU_SOURCE instead.
15430         Don't depend on VMS; depend on __VMS instead, for POSIX
15431         namespace cleanness.
15432         (regoff_t): Define to ssize_t, not long int.
15433
15434         Remove the REG_ macros named below.  Instead, make the old names
15435         (e.g., RE_BACKSLASH_ESCAPE_IN_LISTS) visible only if
15436         __USE_GNU_REGEX.
15437         (REG_BACKSLASH_ESCAPE_IN_LISTS):
15438         (REG_BK_PLUS_QM, REG_CHAR_CLASSES, REG_CONTEXT_INDEP_ANCHORS):
15439         (REG_CONTEXT_INDEP_OPS, REG_CONTEXT_INVALID_OPS):
15440         (REG_DOT_NEWLINE, REG_DOT_NOT_NULL, REG_HAT_LISTS_NOT_NEWLINE):
15441         (REG_INTERVALS, REG_LIMITED_OPS, REG_NEWLINE_ALT):
15442         (REG_NO_BK_BRACES, REG_NO_BK_PARENS, REG_NO_BK_REFS):
15443         (REG_NO_BK_VBAR, REG_NO_EMPTY_RANGES):
15444         (REG_UNMATCHED_RIGHT_PAREN_ORD, REG_NO_POSIX_BACKTRACKING):
15445         (REG_NO_GNU_OPS, REG_DEBUG, REG_INVALID_INTERVAL_ORD):
15446         (REG_IGNORE_CASE, REG_CARET_ANCHORS_HERE):
15447         (REG_CONTEXT_INVALID_DUP, REG_NO_SUB, REG_SYNTAX_EMACS):
15448         (REG_SYNTAX_AWK, REG_SYNTAX_GNU_AWK, REG_SYNTAX_POSIX_AWK):
15449         (REG_SYNTAX_GREP, REG_SYNTAX_EGREP, REG_SYNTAX_POSIX_EGREP):
15450         (REG_SYNTAX_ED, REG_SYNTAX_SED, _REG_SYNTAX_POSIX_COMMON):
15451         (REG_SYNTAX_POSIX_BASIC, REG_SYNTAX_POSIX_MINIMAL_BASIC):
15452         (REG_SYNTAX_POSIX_EXTENDED, REG_SYNTAX_POSIX_MINIMAL_EXTENDED):
15453         (REG_DUP_MAX, REG_UNALLOCATED, REG_REALLOCATE, REG_FIXED):
15454         (REG_NREGS):
15455         Remove.  All uses replaced by the old RE_* names.
15456         (RE_BACKSLASH_ESCAPE_IN_LISTS):
15457         (RE_BK_PLUS_QM, RE_CHAR_CLASSES, RE_CONTEXT_INDEP_ANCHORS):
15458         (RE_CONTEXT_INDEP_OPS, RE_CONTEXT_INVALID_OPS):
15459         (RE_DOT_NEWLINE, RE_DOT_NOT_NULL, RE_HAT_LISTS_NOT_NEWLINE):
15460         (RE_INTERVALS, RE_LIMITED_OPS, RE_NEWLINE_ALT):
15461         (RE_NO_BK_BRACES, RE_NO_BK_PARENS, RE_NO_BK_REFS):
15462         (RE_NO_BK_VBAR, RE_NO_EMPTY_RANGES):
15463         (RE_UNMATCHED_RIGHT_PAREN_ORD, RE_NO_POSIX_BACKTRACKING):
15464         (RE_NO_GNU_OPS, RE_DEBUG, RE_INVALID_INTERVAL_ORD):
15465         (RE_IGNORE_CASE, RE_CARET_ANCHORS_HERE):
15466         (RE_CONTEXT_INVALID_DUP, RE_NO_SUB):
15467         Don't bother having these macros be independent of each others'
15468         values, since they no longer exist in the POSIX name space.
15469
15470         Rename the following member names back to their old names,
15471         unless !__USE_GNU_REGEX.  All uses changed back.
15472         (buffer): Renamed from re_buffer.
15473         (allocated): Renamed from re_allocated.
15474         (used): Renamed from re_used.
15475         (syntax): Renamed from re_syntax.
15476         (fastmap): Renamed from re_fastmap.
15477         (translate): Renamed from re_translate.
15478         (can_be_null): Renamed from re_can_be_null.
15479         (regs_allocated): Renamed from re_regs_allocated.
15480         (fastmap_accurate): Renamed from re_fastmap_accurate.
15481         (no_sub): Renamed from re_no_sub.
15482         (not_bol): Renamed from re_not_bol.
15483         (not_eol): Renamed from re_not_eol.
15484         (newline_anchor): Renamed from re_newline_anchor.
15485         (num_regs): Renamed from rm_num_regs.
15486         (start): Renamed from rm_start.
15487         (end): Renamed from rm_end.
15488
15489         (free_state): Move up a bit.
15490
15491         * lib/regex_internal.h (inline) [__GNUC__ < 3 && defined _LIBC]:
15492         #define to be empty.
15493         (ASCII_CHARS): New macro, replacing all uses of 0x80 and/or SBC_MAX / 2
15494         when that is what is intended.
15495         (SBC_MAX): Define to UCHAR_MAX + 1, not 256.
15496         (__re_error_msgid, __re_error_msgid_idx): Remove decls; not needed.
15497         (MAX): New macro.
15498         (re_xmalloc, re_calloc, re_xrealloc, re_x2realloc): Remove.
15499         All uses changed back to re_malloc, etc.  It's now the caller's
15500         responsibility to check for overflow; all callers changed.
15501         (re_alloc_oversized, re_x2alloc_oversized, re_xnmalloc, re_xnrealloc):
15502         (re_x2nrealloc): Remove.
15503         (free_state): Remove decl.
15504
15505         * lib/regexc.c (regexec, re_match, re_search, re_match_2, re_search_2):
15506         (re_set_registers, re_exec):
15507         Use K&R-style defn.
15508
15509         2006-01-31  Roland McGrath  <roland@redhat.com>
15510
15511         * lib/regcomp.c (calc_eclosure_iter): Remove dead variables.
15512         Reported by Mike Frysinger <vapier@gentoo.org>.
15513
15514         2006-01-15  Andreas Jaeger  <aj@suse.de>
15515
15516         [BZ #1950]
15517         * lib/regex_internal.c (re_string_reconstruct): Adjust for
15518         build_wcs_upper_buffer change.
15519         (build_wcs_upper_buffer): Change return type.
15520
15521         2005-12-10  Ulrich Drepper  <drepper@redhat.com>
15522
15523         * lib/regex_internal.h: Include <stdint.h> if available.
15524
15525         2005-12-06  Paolo Bonzini  <bonzini@gnu.org>
15526
15527         * lib/regex_internal.h (SIZE_MAX): Provide a default definition.
15528
15529         2005-10-14  Ulrich Drepper  <drepper@redhat.com>
15530
15531         * lib/regcomp.c: Adjust for changed secondary hash function.
15532
15533         2005-09-30  Ulrich Drepper  <drepper@redhat.com>
15534
15535         * lib/regex.h: Pretty printing.
15536         Clean up namespace a bit.
15537
15538         2005-09-30  Jakub Jelinek  <jakub@redhat.com>
15539
15540         * lib/regexec.c (update_cur_sifted_state, check_arrival,
15541         check_arrival_add_next_nodes): Avoid using uninitialized variable.
15542
15543         2005-09-06  Paul Eggert  <eggert@cs.ucla.edu>
15544                     Ulrich Drepper  <drepper@redhat.com>
15545
15546         [BZ #1302]
15547         * lib/regex_internal.h (bitset_t): Renamed from bitset.  All uses
15548         changed.
15549         (bitset_word_t): Renamed from bitset_word.  All uses changed.
15550
15551         2005-09-22  Ulrich Drepper  <drepper@redhat.com>
15552
15553         [BZ #281]
15554         * lib/regex.h: Define RE_TRANSLATE_TYPE as unsigned char *.
15555         * lib/regcomp.c: Remove unnecessary uses of
15556         unsigned RE_TRANSLATE_TYPE.
15557         * lib/regex_internal.h: Likewise.
15558         * lib/regex_internal.c: Likewise.
15559         * lib/regexec.c: Likewise.
15560         Based on a patch by Stepan Kasal <kasal@ucw.cz>.
15561
15562         2005-09-07  Ulrich Drepper  <drepper@redhat.com>
15563
15564         * lib/regexec.c (find_recover_state): Remove unnecessary
15565         initialization.
15566         (transit_state_bkref): Make DFA a const pointer.
15567         (get_subexp): Likewise.
15568         (check_arrival): Likewise.
15569         (update_cur_sifted_state): Likewise.
15570         (re_search_internal): Likewise.
15571         (prune_impossible_nodes): Likewise.
15572         (acquire_init_state_context): Likewise.
15573         (proceed_next_node): Likewise.
15574         (set_regs): Likewise.
15575         (free_fail_stack_return): Likewise.
15576         (check_arrival_expand_ecl): Mark DFA parameter as const.
15577         (check_arrival_expand_ecl_sub): Likewise.
15578         (check_subexp_limits): Likewise.
15579         (sub_epsilon_src_nodes):  Likewise.
15580         (add_epsilon_src_nodes):  Likewise.
15581         (merge_state_array): Likewise.
15582         (update_regs): Likewise.
15583         (build_trtable): Likewise.
15584         (sift_states_backward): Mark MCTX parameter as const.
15585         (build_sifted_states): Likewise.
15586         (update_cur_sifted_state): Likewise.
15587         (sift_states_mkref): Likewise.
15588         (check_arrival_expand_ecl): Mark eclosure as const.
15589         (check_dst_limits_calc_pos_1): Likewise.
15590         * lib/regex_internal.h (re_match_context_t): Make dfa a const
15591         pointer.
15592
15593         2005-09-06  Ulrich Drepper  <drepper@redhat.com>
15594
15595         * lib/regexec.c (merge_state_with_log): Define dfa as const pointer.
15596         (transit_state_sb): Likewise.
15597         (transit_state_mb): Likewise.
15598         (sift_states_iter_mb): Likewise.
15599         (check_arrival_add_next_nodes): Likewise.
15600         (check_node_accept_bytes): Change first parameter to pointer-to-const.
15601         [_LIBC] (re_search_2_stub): Use mempcpy.
15602
15603         * lib/regex_internal.c (re_string_reconstruct): Avoid calling
15604         mbrtowc for very simple UTF-8 case.
15605
15606         * lib/regex_internal.c (re_acquire_state): Make DFA pointer arg
15607         a pointer-to-const.
15608         (re_acquire_state_context): Likewise.
15609         * lib/regex_internal.h: Adjust prototypes.
15610
15611         * lib/regex.c: Prevent using C++ compilers.
15612
15613         * lib/regex_internal.c (re_acquire_state): Minor code rearrangement.
15614         (re_acquire_state_context): Likewise.
15615
15616 2006-04-09  Paul Eggert  <eggert@cs.ucla.edu>
15617
15618         * modules/regex (Depends-on): Add ssize_t.
15619
15620 2006-04-09  Paul Eggert  <eggert@cs.ucla.edu>
15621
15622         * m4/regex.m4 (gl_REGEX): Check for new glibc interface to
15623         translation table.
15624
15625 2006-04-09  Paul Eggert  <eggert@cs.ucla.edu>
15626
15627         * doc/gnulib-tool.texi (Modified imports): pathname -> file name.
15628
15629 2006-03-29  Mark D. Baushke  <mdb@gnu.org>
15630             Bruno Haible  <bruno@clisp.org>
15631
15632         * lib/stdint_.h: On OpenBSD, don't redefine types already included in
15633         <sys/types.h> and <inttypes.h>.
15634
15635 2006-03-25  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
15636
15637         * m4/argz.m4 (gl_FUNC_ARGZ): If we define `error_t', also define
15638         `__error_t_defined', so argp.h will not typedef the former.
15639
15640 2006-03-25  Paul Eggert  <eggert@cs.ucla.edu>
15641
15642         * m4/regex.m4 (gl_REGEX): Don't insist on REG_SYNTAX_POSIX_EGREP,
15643         REG_SYNTAX_EMACS, and REG_IGNORE_CASE.  Settle for the traditional
15644         glibc names.  Even if glibc is changed to conform to POSIX, the
15645         traditional names will be available anyway, since regex depends on
15646         the extensions module.  Also, fix a longstanding typo in the
15647         implementation of Spencer ERE test #75 from grep 2.3.  Problems
15648         reported by Emanuele Giaquinta.  Also, change sense of cached
15649         variable, so that the message makes sense.
15650
15651 2006-03-24  Simon Josefsson  <jas@extundo.com>
15652
15653         * lib/base64.c: Fix problems reported by Eric Blake <ebb9@byu.net>,
15654         including some doc fixes.
15655         (base64_encode_alloc): Fix +1 bug on allocation failures.
15656
15657 2006-03-24  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
15658
15659         * lib/base64.c (base64_encode): Do not read past end of array with
15660         unsanitized input on systems with CHAR_BIT > 8.
15661
15662 2006-03-24  Eric Blake  <ebb9@byu.net>
15663
15664         * lib/time_r.c (copy_string_result): Remove, as it is no longer used.
15665
15666 2006-03-22  Karl Berry  <karl@gnu.org>
15667
15668         * config/srclist.txt (*setenv.[ch]): get from coreutils.
15669         * config/srclistvars.sh (COREUTILS): new var.
15670
15671 2006-03-17  Jim Meyering  <jim@meyering.net>
15672
15673         * m4/regex.m4 (gl_REGEX): Fix typo in last change:
15674         s/_REGEX_WIDE_OFFSETS/_REGEX_LARGE_OFFSETS/.
15675
15676 2006-03-16  Paul Eggert  <eggert@cs.ucla.edu>
15677
15678         * m4/regex.m4 (gl_REGEX): Don't check for off_t, since the code
15679         no longer needs it.  Instead, check that regoff_t is as least
15680         as wide as ptrdiff_t.
15681
15682         Don't define _REGEX_WIDE_OFFSETS unless using the included regex,
15683         so that our regex.h stays compatible with the installed regex.
15684         This is helpful for installers who configure --without-included-regex.
15685         Problem reported by Emanuele Giaquinta.
15686
15687 2006-03-16  Paul Eggert  <eggert@cs.ucla.edu>
15688
15689         * lib/regex.h (regoff_t) [defined _REGEX_LARGE_OFFSETS]:
15690         Typedef to long int, not to off_, as POSIX will likely change
15691         in that direction.
15692
15693 2006-03-15  Eric Blake  <ebb9@byu.net>
15694
15695         * m4/dirfd.m4 (gl_FUNC_DIRFD): Use AC_REQUIRE for AC_HEADER_DIRENT.
15696
15697 2006-03-13  Sergey Poznyakoff  <gray@gnu.org.ua>
15698
15699         * lib/argp-help.c (validate_uparams): Fix typo
15700         * lib/argp-parse.c (argp_default_options): Consistently begin help
15701         messages with a lowercase letter.
15702
15703 2006-03-11  Paul Eggert  <eggert@cs.ucla.edu>
15704
15705         * lib/time_r.h (asctime_r, ctime_r): Remove.  These functions can
15706         overrun buffers and shouldn't be used (much as gets shouldn't be
15707         used).
15708         * lib/time_r.c (asctime_r, ctime_r): Likewise.
15709
15710 2006-03-08  Simon Josefsson  <jas@extundo.com>
15711
15712         * m4/gc-random.m4: Permit 'no' as variable values and fix warnings,
15713         suggested by Ralf Wildenhues <Ralf.Wildenhues@gmx.de>.
15714
15715 2006-03-08  Simon Josefsson  <jas@extundo.com>
15716
15717         * m4/gc-random.m4: Call AC_CANONICAL_HOST and use $host_os instead of
15718         $target, suggested by Ralf Wildenhues <Ralf.Wildenhues@gmx.de>.
15719
15720 2006-03-08  Simon Josefsson  <jas@extundo.com>
15721
15722         * lib/gc-gnulib.c (randomize): Don't open files called 'no', they
15723         signal that configure disabled the device.
15724
15725 2006-03-08  Simon Josefsson  <jas@extundo.com>
15726
15727         * build-aux/maint.mk: Fix refresh-po, to handle no translated
15728         languages.
15729
15730 2006-03-07  Simon Josefsson  <jas@extundo.com>
15731
15732         * modules/getopt (Depends-on): Add unistd.
15733
15734         * modules/unistd: New file.
15735
15736 2006-03-07  Simon Josefsson  <jas@extundo.com>
15737
15738         * modules/gc-random: New file.
15739
15740 2006-03-07  Simon Josefsson  <jas@extundo.com>
15741
15742         * m4/unistd_h.m4: New file.
15743
15744 2006-03-07  Simon Josefsson  <jas@extundo.com>
15745
15746         * m4/readline.m4 (gl_FUNC_READLINE): Rewrite the cached part of the
15747         test to be side-effect free by storing the result in the cache
15748         variable gl_cv_lib_readline, and moving the assignment of
15749         LIBREADLINE and LTLIBREADLINE outside the COMMANDS-TO-SET-IT.
15750         From Ralf Wildenhues <Ralf.Wildenhues@gmx.de>.
15751
15752 2006-03-07  Simon Josefsson  <jas@extundo.com>
15753
15754         * m4/gc-random.m4: New file, mostly from gc.m4.  Warn instead of
15755         error on missing devices (the functions will return an error).
15756
15757         * m4/gc.m4: Move random stuff to gc-random.m4
15758
15759 2006-03-07  Simon Josefsson  <jas@extundo.com>
15760
15761         * lib/unistd_.h: New file.
15762
15763 2006-03-07  Simon Josefsson  <jas@extundo.com>
15764
15765         * lib/gc-libgcrypt.c, gc-gnulib.c: Use GC_USE_RANDOM.
15766
15767 2006-03-07  Paul Eggert  <eggert@cs.ucla.edu>
15768
15769         * m4/unistd_h.m4 (gl_HEADER_UNISTD): Rename, to match modules file.
15770         Problem reported by Juan Manuel Guerrero.
15771
15772 2006-03-07  Paul Eggert  <eggert@cs.ucla.edu>
15773
15774         * lib/c-stack.c: Include unistd.h unconditionally, since we now assume
15775         the unistd module.
15776         * lib/getlogin_r.c: Likewise.
15777         * lib/getlogin_r.h: Likewise.
15778         * lib/glob.c: Likewise.
15779         * lib/pagealign_alloc.c: Likewise.
15780         * lib/unistd_.h: Remove; no longer needed.
15781
15782 2006-03-07  Paul Eggert  <eggert@cs.ucla.edu>
15783
15784         * MODULES.html.sh (Support for systems lacking POSIX:2001):
15785         Add unistd.
15786         * modules/c-stack (Depends-on): Add unistd.
15787         * modules/getlogin_r: Likewise.
15788         * modules/glob: Likewise.
15789         * modules/pagealign_alloc: Likewise.
15790         * modules/unistd (Files): Remove lib/unistd_.h.
15791         (EXTRA_DIST): Remove.
15792         (unistd.h): Create using 'echo' rather than 'cp', so that we don't
15793         need unistd_.h.
15794         (MOSTLYCLEANFILES): Remove unistd.h-t.
15795
15796 2006-03-03  Simon Josefsson  <jas@extundo.com>
15797
15798         * build-aux/maint.mk: Add several syntax checks from CoreUtils.
15799
15800 2006-03-03  Simon Josefsson  <jas@extundo.com>
15801
15802         * build-aux/maint.mk: Add refresh-po rule, based on ideas from
15803         libidn and bison.
15804
15805 2006-03-03  Simon Josefsson  <jas@extundo.com>
15806
15807         * build-aux/maint.mk: Add indent target.
15808
15809 2006-03-03  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de> (tiny change)
15810
15811         * m4/poll.m4 (gl_FUNC_POLL): If we deem poll(2) unacceptable, use
15812         our replacement poll.h in any case, to avoid a differing
15813         declaration from a system header.  Seen on AIX.
15814
15815 2006-03-01  Simon Josefsson  <jas@extundo.com>
15816
15817         * lib/readline.c: Fix typo, tiny patch from Stepan Kasal
15818         <kasal@ucw.cz>.
15819
15820 2006-03-01  Paul Eggert  <eggert@cs.ucla.edu>
15821
15822         * modules/gettime (Depends-on): Add extensions module.
15823         * modules/nanosleep (Depends-on): Likewise.
15824         * modules/settime (Depends-on): Likewise.
15825
15826 2006-03-01  Paul Eggert  <eggert@cs.ucla.edu>
15827
15828         * m4/clock_time.m4 (gl_CLOCK_TIME): Require gl_USE_SYSTEM_EXTENSIONS,
15829         not merely AC_GNU_SOURCE, for the benefit of Solaris 10 when compiled
15830         pedantically.
15831         * m4/nanosleep.m4 (gl_FUNC_NANOSLEEP): Likewise.
15832         * m4/timespec.m4 (gl_TIMESPEC): Likewise.
15833
15834         * m4/extensions.m4 (gl_USE_SYSTEM_EXTENSIONS): Use "=" with "test",
15835         not "==".  Reported by Ralf Wildenhues.
15836
15837 2006-03-01  Karl Berry  <karl@gnu.org>
15838
15839         * doc/Copyright/request-*: new files, synced from gnuorg.
15840
15841 2006-03-01  Karl Berry  <karl@gnu.org>
15842
15843         * config/srclist.txt (Copyright/*): new entries.
15844
15845 2006-02-28  Simon Josefsson  <jas@extundo.com>
15846
15847         * lib/getopt.c: Protect #include of unistd.h, for MSVS.
15848
15849 2006-02-27  Simon Josefsson  <jas@extundo.com>
15850
15851         * lib/base64.h: Indent #define's.  From Jim Meyering
15852         <jim@meyering.net>.
15853
15854 2006-02-27  Jim Meyering  <jim@meyering.net>
15855
15856         Revert the change of 2006-02-24, so these files can continue
15857         to be sync'd from gettext.
15858         * lib/mkdtemp.c, setenv.c, unsetenv.c: *Un*-normalize inclusion
15859         of `config.h'.
15860
15861 2006-02-26  Paul Eggert  <eggert@cs.ucla.edu>
15862
15863         * modules/intprops: New file.
15864         * MODULES.html.sh (Numeric conversion functions <stdlib.h>):
15865         Add intprops.
15866         * modules/getloadavg (Files): Remove lib/intprops.h.
15867         (Depends-on): Add intprops.
15868         * modules/human: Likewise.
15869         * modules/inttostr: Likewise.
15870         * modules/openat: Likewise.
15871         * modules/sig2str: Likewise.
15872         * modules/userspec: Likewise.
15873         * modules/utimecmp: Likewise.
15874         * modules/xnanosleep: Likewise.
15875         * modules/xstrtol: Likewise.
15876
15877 2006-02-24  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>  (tiny changes)
15878
15879         * modules/xstrtod: Omit xstrtod.h, xstrtod.c; they're in LIB_SOURCES.
15880         * modules/lock-tests (TESTS): Use $(EXEEXT).
15881         * modules/tls-tests: Likewise.
15882         * modules/argp-tests: Likewise.
15883         (check_PROGRAMS): New var, replacing...
15884         (noinst_PROGRAMS, test_argp_SOURCES): Remove.
15885
15886 2006-02-24  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
15887
15888         * lib/mkdtemp.c, lib/setenv.c, lib/unsetenv.c: Normalize inclusion of
15889         `config.h'.
15890
15891 2006-02-24  Paul Eggert  <eggert@cs.ucla.edu>
15892
15893         * lib/glob.c: Say "invalid" rather than "illegal" in comments.
15894
15895 2006-02-22  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
15896
15897         Sync from coreutils.
15898         * m4/mkdir-p.m4 (gl_MKDIR_PARENTS): Require gl_FUNC_LCHMOD and
15899         gl_CHDIR_SAFER.
15900
15901 2006-02-22  Jim Meyering  <jim@meyering.net>
15902
15903         Sync from coreutils.
15904         * m4/chdir-safer.m4: New file.
15905
15906 2006-02-20  Paul Eggert  <eggert@cs.ucla.edu>
15907
15908         * lib/getcwd.c (AT_FDCWD): Work around a bug in Solaris 9 and 10, where
15909         AT_FDCWD exceeds INT_MAX.
15910         * lib/openat.h (AT_FDCWD): Likewise.
15911
15912 2006-02-17  Eric Blake  <address@hidden>
15913
15914         * m4/getaddrinfo.m4 (gl_GETADDRINFO): Fix caching error.
15915
15916 2006-02-16  Simon Josefsson  <jas@extundo.com>
15917
15918         * modules/getaddrinfo (Depends-on): Add sys_socket.
15919
15920 2006-02-15  Simon Josefsson  <jas@extundo.com>
15921
15922         * build-aux/maint.mk: Add dsyntax-check rule.
15923
15924 2006-02-15  Eric Blake  <ebb9@byu.net>
15925
15926         * m4/sys_socket_h.m4 (gl_HEADER_SYS_SOCKET): Don't attempt using
15927         winsock2.h or ws2tcpip.h when sys/socket.h is present. Fixes
15928         'present but cannot compile' warnings on cygwin.
15929         * m4/socklen.m4 (gl_TYPE_SOCKLEN_T): Use gl_HEADER_SYS_SOCKET.  Don't
15930         use ws2tcpip.h if sys/socket.h works.
15931         * m4/getaddrinfo.m4 (gl_PREREQ_GETADDRINFO): Use gl_HEADER_SYS_SOCKET.
15932         (gl_GETADDRINFO): Don't use ws2tcpip.h when sys/socket.h is present.
15933
15934 2006-02-14  Simon Josefsson  <jas@extundo.com>
15935
15936         * modules/maintainer-makefile (Files): Rename.
15937
15938         * build-aux/GNUmakefile: Rename Makefile.maint to maint.mk
15939         and (the local) Makefile.cfg to maint-cfg.mk.
15940
15941         * build-aux/Makefile.maint, build-aux/maint.mk: Renamed the former
15942         to the latter.
15943
15944         * modules/maintainer-makefile: New module.
15945
15946         * build-aux/Makefile.maint: New file, from GNU CoreUtils, although
15947         severaly stripped to make it possible to build it up from scratch
15948         with reliable tests.
15949
15950         * build-aux/GNUmakefile: New file, from GNU CoreUtils with some
15951         fixes to permit overriding the default actions when configure and
15952         makefile are not available.
15953
15954 2006-02-14  Paul Eggert  <eggert@cs.ucla.edu>
15955
15956         Sync from coreutils.
15957         * modules/lstat (Depends-on): Don't depend on xalloc.
15958         (License): Change from GPL to LGPL, since this is now simply a
15959         replacement for a libc function.
15960
15961 2006-02-14  Jim Meyering  <jim@meyering.net>
15962
15963         Sync from coreutils.
15964
15965         Eliminate the unwelcome (albeit unlikely) possibility of xmalloc
15966         failure on deficient systems, and simplify gnulib lgpl dependencies.
15967         * lib/lstat.c (rpl_lstat): Rewrite to use stat() in place of the
15968         xmalloc/lstat combination.  Based on a patch from Bruno Haible.
15969
15970         * lib/xalloc-die.c: Remove unused definition of N_.
15971
15972 2006-02-14  Jim Meyering  <jim@meyering.net>
15973
15974         Sync from coreutils.
15975         * m4/ls-mntd-fs.m4 (AC_FUNC_GETMNTENT): Invoke
15976         AC_CHECK_FUNCS(getmntent) unconditionally so that tests of
15977         $ac_cv_func_getmntent (e.g., in gl_LIST_MOUNTED_FILE_SYSTEMS) need not
15978         double-quote uses of that variable, to accommodate the rare case in
15979         which getmntent is available in none of the libraries checked.  This
15980         happens at least on FreeBSD 5.0.
15981
15982 2006-02-13  Simon Josefsson  <jas@extundo.com>
15983
15984         * gnulib-tool (Usage): Fix --import, from
15985         karl@freefriends.org (Karl Berry).
15986
15987 2006-02-13  Sergey Poznyakoff  <gray@gnu.org.ua>
15988
15989         * lib/argp-fmtstream.c: Restore another bugfix lost on 2005-12-12
15990
15991 2006-02-07  Sergey Poznyakoff  <gray@gnu.org.ua>
15992
15993         * lib/argp-namefrob.h: Restore changes accidentally lost during the
15994         "autoupdate" on 2005-12-12.
15995
15996 2006-02-07  Paul Eggert  <eggert@cs.ucla.edu>
15997
15998         * modules/closeout (Depends-on): Remove atexit.
15999
16000 2006-02-07  Paul Eggert  <eggert@cs.ucla.edu>
16001
16002         * lib/closeout.c (close_stdout): Don't assume 'bool' converts nonzero
16003         ints to 0 or 1, as this isn't true for the stdbool.h substitute.
16004
16005 2006-02-05  Paul Eggert  <eggert@cs.ucla.edu>
16006
16007         * m4/extensions.m4 (gl_USE_SYSTEM_EXTENSIONS): Don't #define
16008         __EXTENSIONS__ if this causes compilation to fail.  Problem
16009         reported by Nelson H. F. Beebe with Solaris 10 and Sun C 5.7
16010         c89 -D_XOPEN_SOURCE -D_XOPEN_SOURCE_EXTENDED.
16011
16012 2006-01-27  Paul Eggert  <eggert@cs.ucla.edu>
16013
16014         * lib/fnmatch.c (L_): Renamed from L, to work around a bug in
16015         Mac OS X 10.3.9 with GCC 3 reported by Claudio Fontana in
16016         <http://lists.gnu.org/archive/html/bug-gnulib/2006-01/msg00074.html>.
16017         All uses changed.
16018
16019 2006-01-26  Simon Josefsson  <jas@extundo.com>
16020
16021         * lib/socket_.h: Set WINVER to 0x0501, to make sure getaddrinfo
16022         prototype is visible on mingw32.
16023
16024         * lib/getaddrinfo.h: Define EAI_ADDRFAMILY and EAI_SYSTEM if not set,
16025         for mingw32.
16026
16027         * lib/gai_strerror.c, getaddrinfo.h: Protect netdb.h #include (for
16028         mingw32).
16029
16030 2006-01-26  Paul Eggert  <eggert@cs.ucla.edu>
16031
16032         * lib/fts.c (diropen): Open with O_NOCTTY | O_NONBLOCK too.  Don't
16033         attempt to open for write; this always fails, at least on POSIX
16034         hosts.  This reinstates the 2006-01-09 change, which was
16035         inadvertently removed.
16036
16037 2006-01-26  Bruno Haible  <bruno@clisp.org>
16038
16039         * gnulib-tool (func_import): Use "trap 'exit $?' instead of "trap :".
16040         Reported by Paul Eggert.
16041
16042 2006-01-26  Bruno Haible  <bruno@clisp.org>
16043             Paul Eggert  <eggert@cs.ucla.edu>
16044
16045         * lib/stdbool_.h (_Bool)
16046         [(! (defined __cplusplus || defined __BEOS__)
16047           && !defined __GNUC__
16048           && !(defined __HP_cc || defined __xlc__
16049                || (defined __SUNPRO_C && (__SUNPRO_C < 0x550 || __STDC__ == 1))
16050                || defined __sgi))]:
16051         #define to signed char in these cases too; this simplifies
16052         the code (so that we don't have to worry about HP-UX, AIX, SunPRO,
16053         etc., separately) and makes it more conservative.
16054
16055 2006-01-25  Simon Josefsson  <jas@extundo.com>
16056
16057         * m4/getaddrinfo.m4: Look for getaddrinfo inside ws2tcip.h and
16058         -lws2_32.  Protect sys/socket.h and netdb.h #include's.  Include
16059         ws2tcpip.h with WINVER=0x0501.  All for mingw32.
16060
16061 2006-01-25  Sergey Poznyakoff  <gray@gnu.org.ua>
16062
16063         * lib/argp-namefrob.h: Bugfix. Remove stray #
16064
16065 2006-01-25  Paul Eggert  <eggert@cs.ucla.edu>
16066
16067         * m4/stdbool.m4 (AC_HEADER_STDBOOL): Check for xlc bug if __GCC__ too,
16068         so that we test the test.
16069         Check for yet another HP-UX cc bug involving *bool |= bool.
16070
16071 2006-01-25  Karl Berry  <karl@gnu.org>
16072
16073         * config/srclist.txt (vasnprintf.c): sync lost.
16074
16075 2006-01-25  Jim Meyering  <jim@meyering.net>
16076
16077         Sync from the stable (b5) branch of coreutils:
16078
16079         * lib/fts.c (fts_children): Don't let close() clobber errno from
16080         failed fchdir().
16081
16082         * lib/fts.c (fts_stat): When following a symlink-to-directory,
16083         don't necessarily interpret stat-fails+lstat-succeeds as indicating
16084         a dangling symlink.  That can also happen at least for ELOOP.
16085         The fix: return FTS_SLNONE only when the stat errno is ENOENT.
16086         FYI, this bug predates the inclusion of fts.c in coreutils.
16087
16088         * lib/fts.c (fts_open): Put new maxarglen declaration and uses
16089         in their own block, so pre-c99 compilers don't object.
16090
16091         Avoid the double-free (first in fts_read, second in fts_close) that
16092         would occur when an `active' directory is made inaccessible (e.g.,
16093         via chmod a-x) during a traversal.
16094         * lib/fts.c (fts_read): After a failed fchdir, update sp->fts_cur
16095         before returning.  Reproduce this failure by
16096         mkdir -p a/b; cd a; chmod a-x . b
16097         Reported by Stavros Passas.
16098
16099 2006-01-25  Jim Meyering  <jim@meyering.net>
16100
16101         * lib/fileblocks.c: Remove more useless parentheses.
16102         * lib/readutmp.h: Likewise.
16103
16104 2006-01-25  Bruno Haible  <bruno@clisp.org>
16105
16106         * lib/stdbool_.h (_Bool) [IRIX cc]: Define as 'signed char', to avoid
16107         warnings.
16108         Reported by Paul Eggert.
16109
16110 2006-01-25  Bruno Haible  <bruno@clisp.org>
16111
16112         * gnulib-tool (func_import): Use "trap :" instead of "trap -" to get
16113         rid of a trap command. For Solaris sh.
16114         Reported by Mark D. Baushke <mdb@gnu.org>.
16115
16116 2006-01-24  Simon Josefsson  <jas@extundo.com>
16117
16118         * lib/socket_.h (SHUT_WR, SHUT_RDWR): Don't hardcode, suggested by
16119         Bruno.
16120
16121 2006-01-24  Karl Berry  <karl@gnu.org>
16122
16123         * config/srclist.txt (argp-namefrob.h): sync lost.
16124
16125 2006-01-24  Jim Meyering  <jim@meyering.net>
16126
16127         * modules/openat (Files): Add lib/intprops.h.
16128         From Mark D. Baushke.
16129
16130 2006-01-24  Jim Meyering  <jim@meyering.net>
16131
16132         * m4/openat.m4 (gl_FUNC_OPENAT): Add AC_LIBSOURCES([intprops.h]).
16133         Reported by Mark D. Baushke.
16134
16135 2006-01-24  Jim Meyering  <jim@meyering.net>
16136
16137         * lib/socket_.h: Remove useless parentheses in uses of cpp `defined'.
16138
16139 2006-01-24  Bruno Haible  <bruno@clisp.org>
16140
16141         * modules/strnlen (Maintainer): Change from glibc to all.
16142
16143 2006-01-24  Bruno Haible  <bruno@clisp.org>
16144
16145         * m4/stdbool.m4 (AC_HEADER_STDBOOL): Check for IBM and HP-UX bugs.
16146         Patch by Paul Eggert.
16147
16148 2006-01-24  Bruno Haible  <bruno@clisp.org>
16149
16150         * lib/stdbool_.h (_Bool) [__cplusplus]: Don't define if the compiler
16151         already has it.
16152         Report and patch by Albert Chin-A-Young  <china@thewrittenword.com> on
16153         2005-11-26.
16154
16155         * lib/stdbool_.h (_Bool) [HP-UX cc, AIX cc,xlc]: Define as
16156         'signed char' to avoid problems with the built-in _Bool type.
16157         Reported by Paul Eggert on 2005-11-26.
16158
16159 2006-01-24  Bruno Haible  <bruno@clisp.org>
16160
16161         * gnulib-tool (func_import): Avoid constructing complicated sed
16162         expressions inside backquote.
16163         Report and solution by Mark D. Baushke <mdb@gnu.org>.
16164
16165 2006-01-23  Ulrich Drepper  <drepper@redhat.com>
16166
16167         These changes imported from libc.
16168         * lib/getopt.c: Use __fxprintf instead of inline stream orientation
16169         test and two separate function calls.
16170         * lib/strndup.c (__strndup): Add libc_hidden_def.
16171
16172 2006-01-23  Simon Josefsson  <jas@extundo.com>
16173
16174         * modules/lock-tests: Use check_PROGRAMS instead of noinst_PROGRAMS.
16175         Remove the test_*_SOURCES variable: automake infers it by default.
16176         * modules/tls-tests: Likewise.
16177
16178 2006-01-23  Paul Eggert  <eggert@cs.ucla.edu>
16179
16180         Work around porting bugs reported by Dieter in
16181         <http://lists.gnu.org/archive/html/bug-bison/2006-01/msg00049.html>.
16182         * lib/getopt.c (_NOPROTO): Remove; no longer needed.
16183         Include <stdlib.h> and <unistd.h> in all environments; it's safe now.
16184         Include "getopt.h" first, to check interface.
16185         (getenv): Declare only if defined HAVE_DECL_GETENV &&
16186         !HAVE_DECL_GETENV.
16187         * lib/strndup.c [!_LIBC]: Include "strndup.h" to get prototype.
16188         (__strndup): Revert to K&R-style function dfns, the glibc style.
16189         * lib/strnlen.c: Don't claim it's taken from glibc; it's not.
16190         (strnlen, __strnlen): Remove #defines and #undefs; not needed.
16191         Include strnlen.h first, to get prototype properly.
16192         (strnlen): Renamed from __strnlen.
16193         Remove weak alias.
16194
16195 2006-01-23  Paul Eggert  <eggert@cs.ucla.edu>
16196
16197         * m4/getopt.m4 (gl_PREREQ_GETOPT): Check for getenv decl.
16198
16199 2006-01-23  Paul Eggert  <eggert@cs.ucla.edu>
16200
16201         * config/srclist.txt: Adjust to reflect glibc reorganization.
16202         This affects only comments.
16203
16204 2006-01-22  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>  (tiny change)
16205
16206          * gnulib-tool, build-aux/csharpcomp.sh.in: Do not pass `-q' to mktemp.
16207          Reported by Bruce Korb <bkorb@gnu.org>.
16208
16209 2006-01-22  Paul Eggert  <eggert@cs.ucla.edu>
16210
16211         * lib/quotearg.c (quotearg_buffer_restyled): Add "default: break;"
16212         to pacify gcc -Wswitch-default.
16213
16214 2006-01-22  Bruno Haible  <bruno@clisp.org>
16215
16216         * lib/vasnprintf.c (VASNPRINTF): In the computation of the size of the
16217         temporary buffer for sprintf, take into account the precision also
16218         for 'd', 'i', 'u', 'o', 'x', 'X'.
16219
16220 2006-01-21  Sergey Poznyakoff  <gray@gnu.org.ua>
16221
16222         * modules/argp-tests: New module
16223         * tests/test-argp.c: New file
16224         * tests/test-argp-2.sh: New file
16225
16226 2006-01-21  Sergey Poznyakoff  <gray@gnu.org.ua>
16227
16228         * lib/argp-help.c (usage_long_opt): Do not print DOC options.
16229         (__argp_base_name): Removed
16230         * lib/argp-namefrob.h (__argp_basename): Removed definition. Was a
16231         typo.
16232         (__argp_base_name): Provide macro definition or extern declaration
16233         depending on the configuration
16234
16235 2006-01-20  Simon Josefsson  <jas@extundo.com>
16236
16237         * modules/inet_ntop (Depends-on): Depend on sys_socket.
16238
16239 2006-01-20  Simon Josefsson  <jas@extundo.com>
16240
16241         * lib/inet_ntop.h: Unconditionally include sys/socket.h.
16242
16243 2006-01-20  Paul Eggert  <eggert@cs.ucla.edu>
16244
16245         * m4/lib-ignore.m4 (gl_IGNORE_UNUSED_LIBRARIES): Use -Wl,-z,ignore
16246         rather than -Xlinker -z -Xlinker ignore, as it's more portable.
16247         Suggested by Bruno Haible.
16248
16249 2006-01-20  Karl Berry  <karl@gnu.org>
16250
16251         * config/srclist.txt (argp-fmtstream.h, localcharset.c): comment out
16252         until changes propagate, I guess.
16253
16254 2006-01-19  Simon Josefsson  <jas@extundo.com>
16255
16256         * m4/socklen.m4: Look in ws2tcpip.h too, for mingw32.
16257
16258 2006-01-19  Simon Josefsson  <jas@extundo.com>
16259
16260         * lib/socket_.h: Map SHUT_RD, SHUT_WR, SHUT_RDWR correctly.
16261
16262 2006-01-19  Simon Josefsson  <jas@extundo.com>
16263
16264         * gnulib-tool: Set check_PROGRAMS.
16265
16266         * modules/arcfour-tests, modules/arctwo-tests, modules/crc-tests,
16267         modules/des-tests, modules/gc-arcfour-tests,
16268         modules/gc-arctwo-tests, modules/gc-des-tests,
16269         modules/gc-hmac-md5-tests, modules/gc-hmac-sha1-tests,
16270         modules/gc-md2-tests, modules/gc-md4-tests, modules/gc-md5-tests,
16271         modules/gc-pbkdf2-sha1-tests, modules/gc-rijndael-tests,
16272         modules/gc-sha1-tests, modules/gc-tests, modules/hmac-md5-tests,
16273         modules/hmac-sha1-tests, modules/md2-tests, modules/md4-tests,
16274         modules/md5-tests, modules/readline, modules/rijndael-tests: Use
16275         check_PROGRAMS instead of noinst_PROGRAMS to be able to remove
16276         test_*_SOURCES.
16277
16278 2006-01-18  Simon Josefsson  <jas@extundo.com>
16279
16280         * modules/socklen (Depends-on): Depend on sys_socket.
16281
16282 2006-01-18  Simon Josefsson  <jas@extundo.com>
16283
16284         * modules/arcfour-tests, modules/arctwo-tests, modules/crc-tests,
16285         modules/des-tests, modules/gc-arcfour-tests,
16286         modules/gc-arctwo-tests, modules/gc-des-tests,
16287         modules/gc-hmac-md5-tests, modules/gc-hmac-sha1-tests,
16288         modules/gc-md2-tests, modules/gc-md4-tests, modules/gc-md5-tests,
16289         modules/gc-pbkdf2-sha1-tests, modules/gc-rijndael-tests,
16290         modules/gc-sha1-tests, modules/gc-tests, modules/hmac-md5-tests,
16291         modules/hmac-sha1-tests, modules/md2-tests, modules/md4-tests,
16292         modules/md5-tests, modules/readline, modules/rijndael-tests: Add
16293         $(EXEEXT) to automake TESTS variable, for mingw32.
16294
16295 2006-01-17  Simon Josefsson  <jas@extundo.com>
16296
16297         * modules/socklen (Include): Need sys/socket.h.
16298
16299 2006-01-17  Bruno Haible  <bruno@clisp.org>
16300
16301         * modules/ssize_t (Include): Add <sys/types.h>.
16302
16303 2006-01-16  Paul Eggert  <eggert@cs.ucla.edu>
16304
16305         * m4/lib-ignore.m4 (gl_IGNORE_UNUSED_LIBRARIES): Don't use ldd, as
16306         it's not portable and it doesn't work with cross-compiles.
16307         Problem reported by Bruno Haible.  Fix missing-$ typo in
16308         'test "gl_cv_ignore_unused_libraries" ...' that prevented
16309         -zignore from being used with Sun's C compiler.
16310
16311 2006-01-12  Simon Josefsson  <jas@extundo.com>
16312
16313         * lib/base64.c: Fix warning, reported by Bruno Haible
16314         <bruno@clisp.org> and patch by Paul Eggert <eggert@CS.UCLA.EDU>.
16315
16316 2006-01-12  Bruno Haible  <bruno@clisp.org>
16317
16318         * modules/ldd: New file.
16319         * build-aux/ldd.sh.in: New file.
16320         * MODULES.html.sh (Support for building libraries and executables): Add
16321         ldd.
16322
16323 2006-01-12  Bruno Haible  <bruno@clisp.org>
16324
16325         * m4/ldd.m4: New file.
16326
16327 2006-01-12  Bruno Haible  <bruno@clisp.org>
16328
16329         * gnulib-tool (func_import, func_create_testdir): Don't go into an
16330         endless loop while replacing $auxdir with build-aux.
16331
16332 2006-01-11  Simon Josefsson  <jas@extundo.com>
16333
16334         * lib/stdint_.h (SIZE_MAX): Add missing (.
16335
16336 2006-01-11  Paul Eggert  <eggert@cs.ucla.edu>
16337
16338         Sync from coreutils.
16339         * lib/md5.c: Fix commentary typos.
16340         (alignof, UNALIGNED_P): No need for a GCC-specific version.
16341         * lib/md5.h (__attribute__): Remove; unused.
16342         * lib/sha1.c: Fix commentary to match md5 better.
16343         * lib/sha1.h (struct sha1_ctx): Use a word buffer, not a byte buffer,
16344         so that we don't need to worry about alignment.  All uses changed.
16345         This merges the 2005-10-28 md5 change into sha1.
16346
16347 2006-01-11  Jim Meyering  <jim@meyering.net>
16348
16349         Sync from coreutils.
16350         * lib/md5.c (OP): Fix spacing.
16351
16352 2006-01-11  Bruno Haible  <bruno@clisp.org>
16353
16354         Ensure automatic ordering between gl_LOCK and gl_ARGP.
16355         * m4/lock.m4 (gl_LOCK_BODY): Renamed from gl_LOCK.
16356         (gl_LOCK): New macro, requiring gl_LOCK_BODY.
16357
16358 2006-01-11  Bruno Haible  <bruno@clisp.org>
16359
16360         Ensure automatic ordering between gl_LOCK and gl_ARGP.
16361         * gnulib-tool (func_import, func_create_testdir): Put gl_LOCK into
16362         the "early" section as well.
16363
16364 2006-01-11  Bruno Haible  <bruno@clisp.org>
16365
16366         Avoid "ar: no archive members specified" error on MacOS X.
16367         * gnulib-tool (func_modules_add_dummy): New function.
16368         (func_import, func_create_testdir): Invoke it.
16369
16370 2006-01-11  Bruno Haible  <bruno@clisp.org>
16371
16372         * gnulib-tool (func_import, func_create_testdir): Replace build-aux
16373         with $auxdir in AC_CONFIG_FILES statements.
16374
16375 2006-01-11  Bruno Haible  <bruno@clisp.org>
16376
16377         * gnulib-tool (func_emit_lib_Makefile_am, func_emit_tests_Makefile_am):
16378         Initialize also noinst_HEADERS to empty.
16379
16380 2006-01-11  Bruno Haible  <bruno@clisp.org>
16381
16382         * gnulib-tool (AUTOMAKEPATH, AUTOCONF, ACLOCAL, AUTOMAKE): New
16383         variables.
16384         (func_create_megatestdir): Call aclocal, autoconf, automake here, not
16385         autoreconf.
16386
16387 2006-01-11  Bruno Haible  <bruno@clisp.org>
16388
16389         * gnulib-tool (AUTOCONF, ACLOCAL, AUTOMAKE, AUTORECONF): Make
16390         overridable by the user.
16391         Reported by Ralf Wildenhues <Ralf.Wildenhues@gmx.de>.
16392
16393 2006-01-10  Simon Josefsson  <jas@extundo.com>
16394
16395         * modules/sys_socket: New file.
16396
16397 2006-01-10  Simon Josefsson  <jas@extundo.com>
16398
16399         * m4/sys_socket_h.m4: New file.
16400
16401 2006-01-10  Simon Josefsson  <jas@extundo.com>
16402
16403         * lib/socket_.h: New file.
16404
16405 2006-01-10  Paul Eggert  <eggert@cs.ucla.edu>
16406
16407         * modules/readutmp (Maintainer): Add myself.
16408
16409 2006-01-10  Paul Eggert  <eggert@cs.ucla.edu>
16410
16411         * m4/memcoll.m4 (gl_MEMCOLL): Don't require AC_FUNC_MEMCMP, undoing
16412         the 2002-12-31 change.  Problem and fix reported by Bruno Haible.
16413         People who are still concerned with buggy memcmp implementations
16414         can invoke gl_FUNC_MEMCMP themselves.
16415
16416 2006-01-10  Paul Eggert  <eggert@cs.ucla.edu>
16417
16418         * lib/regex_internal.h (BITSET_WORD_BITS):
16419         Work around a bug in 64-bit PGC (before version 6.1-2), where the
16420         preprocessor mishandles large unsigned values as if they were signed.
16421         Problem reported by Claudio Fontana in
16422         <http://lists.gnu.org/archive/html/bug-gnulib/2005-12/msg00061.html>.
16423
16424 2006-01-10  Jim Meyering  <jim@meyering.net>
16425
16426         Avoid the double-free (first in fts_read, second in fts_close) that
16427         would occur when an `active' directory is made inaccessible (e.g.,
16428         via chmod a-x) during a traversal.
16429         * lib/fts.c (fts_read): After a failed fchdir, update sp->fts_cur
16430         before returning.  Reproduce this failure by
16431         mkdir -p a/b; cd a; chmod a-x . b
16432         Reported by Stavros Passas.
16433
16434         Sync from coreutils.
16435         * lib/sha1.c: Tweak grammar in a comment.
16436
16437 2006-01-10  Jim Meyering  <jim@meyering.net>
16438
16439         * m4/fpending.m4: Also include <stdio.h>, for Dragonfly.
16440         Patch by Joerg Sonnenberger.
16441
16442 2006-01-10  Bruno Haible  <bruno@clisp.org>
16443
16444         * modules/readutmp: Depend on module free.
16445         * modules/strtok_r: Depend on module restrict.
16446
16447 2006-01-10  Bruno Haible  <bruno@clisp.org>
16448
16449         * modules/gettext (configure.ac): Add an invocation of
16450         AM_GNU_GETTEXT_VERSION. Needed since autoreconf is used by gnulib-tool.
16451
16452 2006-01-10  Bruno Haible  <bruno@clisp.org>
16453
16454         * m4/localcharset.m4 (gl_LOCALCHARSET): Also test for getc_unlocked.
16455         Reported by Werner Lemberg <wl@gnu.org>.
16456
16457 2006-01-10  Bruno Haible  <bruno@clisp.org>
16458
16459         * lib/localcharset.c: Update from GNU gettext.
16460
16461 2006-01-10  Bruno Haible  <bruno@clisp.org>
16462
16463         * lib/argp.h (__const): Remove macro. Use const instead.
16464         * lib/argp-fmtstream.h (__const): Likewise.
16465         * lib/glob_.h (__const): Remove macro.
16466         * lib/glob-libc.h: Use const instead of __const.
16467
16468 2006-01-10  Bruno Haible  <bruno@clisp.org>
16469
16470         * gnulib-tool (func_emit_tests_Makefile_am): Emit an empty SUBDIR
16471         variable.
16472         Needed to avoid an automake error regarding the 'gettext' module.
16473
16474 2006-01-09  Simon Josefsson  <jas@extundo.com>
16475
16476         * modules/inet_ntop (Depends-on): Add restrict.
16477
16478 2006-01-09  Simon Josefsson  <jas@extundo.com>
16479
16480         * modules/gc-rijndael-tests (License): Put under LGPL.
16481
16482         * modules/gc-des-tests (License): Likewise.
16483
16484         * modules/gc-arcfour-tests (License): Likewise.
16485
16486         * modules/gc-arctwo-tests (License): Likewise.
16487
16488         * modules/gc-pbkdf2-sha1-tests (License): Likewise.
16489
16490         * modules/gc-hmac-sha1-tests (Files): Likewise.
16491
16492         * modules/gc-hmac-md5-tests (License): Likewise.
16493
16494         * modules/gc-sha1-tests (License): Likewise.
16495
16496         * modules/gc-md5-tests (License): Likewise.
16497
16498         * modules/gc-md4-tests (License): Likewise.
16499
16500         * modules/gc-md2-tests (License): Likewise.
16501
16502         * modules/gc-tests (License): Likewise.
16503
16504         * modules/des-tests (License): Likewise.
16505
16506         * modules/md4-tests (License): Likewise.
16507
16508         * modules/md2-tests (License): Likewise.
16509
16510 2006-01-09  Paul Eggert  <eggert@cs.ucla.edu>
16511
16512         Sync from coreutils:
16513
16514         * MODULES.html.sh (build_lib): New section, with new lib-ignore module.
16515         * modules/lib-ignore: New file.
16516         * modules/mkdir-p (Files): Add chdir-safer.c, chdir-safer.h, lchmod.h,
16517         chdir-safer.m4, lchmod.m4.
16518         * modules/openat: Add mkdirat.c, openat-priv.h.
16519
16520 2006-01-09  Paul Eggert  <eggert@cs.ucla.edu>
16521
16522         Sync from coreutils.
16523         * m4/lib-ignore.m4: New file.
16524         * m4/lchmod.m4: New file.
16525
16526 2006-01-09  Paul Eggert  <eggert@cs.ucla.edu>
16527
16528         Sync from coreutils.
16529         * lib/chdir-long.c (cdb_free): Don't bother trying to open directory
16530         for write access: POSIX says that must fail.
16531         * lib/fts.c (diropen): Likewise.
16532         * lib/save-cwd.c (save_cwd): Likewise.
16533         * lib/chdir-long.c (cdb_free): Open with O_NOCTTY | O_NONBLOCK as
16534         well, for minor improvements on hosts that lack O_DIRECTORY.
16535         * lib/chown.c (rpl_chown) [CHOWN_MODIFIES_SYMLINK]:
16536         Don't try O_WRONLY unless O_RDONLY failed wth EACCES.
16537         Fall back on chown if open failed with EACCES.
16538
16539         * lib/gettime.c (gettime) [!defined OK_TO_USE_1S_CLOCK]:
16540         Report an error at compile-time if only a 1-second nominal clock
16541         resolution is found.
16542
16543         * lib/lchmod.h: New file.
16544         * lib/mkdir-p.c: Include lchmod.h, lchown.h.
16545         (make_dir_parents): Use lchown rather than chown, and
16546         lchmod rather than chmod.
16547
16548         * lib/mountlist.c (ME_DUMMY): "none" and "proc" file systems are
16549         dummies too.  Problem with "none" reported by Bob Proulx.  Problem with
16550         "proc" reported by n0dalus.
16551
16552         * lib/mountlist.c: Include <limits.h>.
16553         (dev_from_mount_options)
16554         [defined MOUNTED_GETMNTENT1 || defined MOUNTED_GETMNTENT2]:
16555         New function.  It no longer assumes "dev=" has the System V meaning
16556         on Linux (since it doesn't).  It also parses "dev=" more carefully.
16557         (read_file_system_list)
16558         [defined MOUNTED_GETMNTENT1 || defined MOUNTED_GETMNTENT2]: Use it.
16559         MOUNTED_GETMNTENT2 is new here; the code didn't used to look for
16560         dev= in that case.
16561
16562         * lib/posixtm.h (PDS_PRE_2000): New macro.
16563         * lib/posixtm.c (year): Arg is now syntax_bits rather than
16564         allow_century.  All usages changed.  Reject dates outside the range
16565         1969-1999 if PDS_PRE_2000 is used.
16566
16567 2006-01-09  Paul Eggert  <eggert@cs.ucla.edu>
16568
16569         Sync from coreutils.
16570         * doc/getdate.texi (General date syntax): Invalid dates are rejected.
16571         (Time of day items): Mention the possibility of leap seconds.
16572         Problem reported by Dr. David Alan Gilbert.
16573
16574 2006-01-09  Jim Meyering  <jim@meyering.net>
16575
16576         Sync from coreutils.
16577
16578         * lib/version-etc.c (COPYRIGHT_YEAR): Update to 2006.
16579
16580         * lib/chdir-safer.h, lib/chdir-safer.c: New files.
16581
16582         * lib/modechange.c (mode_compile): Reject an invalid mode string
16583         that starts with an octal digit.  From Andreas Gruenbacher.
16584
16585         * lib/openat.c: Include "fcntl--.h" and "unistd--.h", to map open
16586         and dup to open_safer and dup_safer, respectively.
16587         (openat_permissive): Fix typo in comment.
16588
16589         * lib/openat.c: Don't include <stdlib.h>, <unistd.h>, <fcntl.h>,
16590         "gettext.h"; either no longer needed or are guaranteed by openat.h.
16591         (_): Remove; no longer needed.
16592         (openat): Renamed from rpl_openat; no need for rpl_openat
16593         since openat.h renames openat for us.
16594         Replace most of the body with a call to openat_permissive,
16595         to avoid duplicate code.
16596         Port to (probably hypothetical) environments were mode_t is
16597         wider than int.
16598         (openat_permissive): Require mode arg, so that we can check
16599         types better.  Put it just after flags.  Change cwd failure
16600         indicator from pointer-to-bool to pointer-to-errno-value.
16601         All callers changed.
16602         Invoke openat_save_fail and/or openat_restore_fail if
16603         cwd_errno is null, so that openat can call us.
16604         (openat_permissive, fdopendir, fstatat, unlinkat):
16605         Simplify errno handling to avoid some duplicate code,
16606         as it's OK to set errno on success.
16607         * lib/openat.h: Revamp code so that function macros depend on
16608         __OPENAT_PREFIX only, not also on AT_FDCWD.
16609         (openat_ro): Remove.  Caller changed to use openat_permissive.
16610         (openat_permissive): Now a macro, if not a function.
16611         (openat_restore_fail, openat_save_fail): Now always functions,
16612         since mkdirat needs them even if __OPENAT_PREFIX is defined.
16613
16614         * lib/openat-priv.h: New file, defining macros used by mkdirat.c
16615         and openat.c.
16616         * lib/mkdirat.c: Include openat-priv.h.
16617         Remove definitions of macros defined therein.
16618         * lib/openat.c: Likewise.
16619
16620         * lib/mkdirat.c (mkdirat): New file and function.
16621         * lib/openat.h (mkdirat): Declare.
16622
16623         * lib/openat.c (fdopendir): Don't change errno when returning non-NULL.
16624
16625         * lib/openat.h (openat_permissive): Declare.
16626         (openat_ro): Define.
16627
16628         * lib/openat.c (EXPECTED_ERRNO): New macro.
16629         (openat_permissive): New function -- used in remove.c rewrite.
16630         (all functions): Set errno just before returning, only if there
16631         was an actual failure.
16632         Use EXPECTED_ERRNO rather than comparing against only ENOTDIR.
16633
16634         Emulate openat-family functions using Linux's procfs, if possible.
16635         Idea and some code based on Ulrich Drepper's glibc changes.
16636
16637         * lib/openat.c: (BUILD_PROC_NAME): New macro.
16638         Include <stdio.h>, <string.h>, "alloca.h" and "intprops.h".
16639         (rpl_openat): Emulate by trying to open /proc/self/fd/%d/%s,
16640         before falling back on save_cwd and restore_cwd.
16641         (fdopendir, fstatat, unlinkat): Likewise.
16642
16643         * lib/openat.c (fstatat, unlinkat): Perform the syscall directly,
16644         skipping the save_cwd...restore_cwd overhead, if FILE is absolute.
16645
16646         * lib/openat.c (rpl_openat): Use the promoted type (int), not mode_t,
16647         as second argument to va_arg.  Otherwise, some versions of gcc
16648         warn that `if this code is reached, the program will abort'.
16649
16650 2006-01-09  Jim Meyering  <jim@meyering.net>
16651
16652         Sync from coreutils.
16653         * m4/openat.m4 (gl_FUNC_OPENAT): Require and compile mkdirat.c.
16654         Require openat-priv.h.
16655
16656 2006-01-09  Bruno Haible  <bruno@clisp.org>
16657
16658         * modules/strnlen (Include): Use strnlen.h.
16659
16660 2006-01-09  Bruno Haible  <bruno@clisp.org>
16661
16662         * m4/stdint.m4 (gl_STDINT_H): Also test for <sys/bitypes.h>.
16663
16664 2006-01-09  Bruno Haible  <bruno@clisp.org>
16665
16666         * lib/sysexit_.h (EX_OK): New macro.
16667         Suggested by Martin Lambers <marlam@marlam.de>.
16668
16669 2006-01-09  Bruno Haible  <bruno@clisp.org>
16670
16671         * lib/stdint_.h: On Linux libc4 and libc5, include <sys/bitypes.h> and
16672         don't define _STDINT_H_NEED_SIGNED_INT_TYPES.
16673
16674 2006-01-09  Bruno Haible  <bruno@clisp.org>
16675
16676         * lib/stdint_.h (SIZE_MAX): Write the value without involving negative
16677         numbers.
16678
16679 2006-01-09  Bruno Haible  <bruno@clisp.org>
16680
16681         * lib/javacomp.sh.in: Move to ../build-aux/javacomp.sh.in.
16682         * lib/javaexec.sh.in: Move to ../build-aux/javaexec.sh.in.
16683         * lib/csharpcomp.sh.in: Move to ../build-aux/csharpcomp.sh.in.
16684         * lib/csharpexec.sh.in: Move to ../build-aux/csharpexec.sh.in.
16685
16686 2006-01-09  Bruno Haible  <bruno@clisp.org>
16687
16688         * build-aux/javacomp.sh.in: New file, moved from lib/.
16689         * modules/javacomp-script (Files): Update.
16690         (configure.ac): Add AC_CONFIG_FILES invocation.
16691         (EXTRA_DIST): Remove variable.
16692
16693         * build-aux/javaexec.sh.in: New file, moved from lib/.
16694         * modules/javaexec (Files): Update.
16695         (configure.ac): Add AC_CONFIG_FILES invocation.
16696         (EXTRA_DIST): Remove javaexec.sh.in.
16697
16698         * build-aux/csharpcomp.sh.in: New file, moved from lib/.
16699         * modules/csharpcomp-script (Files): Update.
16700         (configure.ac): Add AC_CONFIG_FILES invocation.
16701         (EXTRA_DIST): Remove variable.
16702
16703         * build-aux/csharpexec.sh.in: New file, moved from lib/.
16704         * modules/csharpexec (Files): Update.
16705         (configure.ac): Add AC_CONFIG_FILES invocation.
16706         (EXTRA_DIST): Remove csharpexec.sh.in.
16707
16708 2006-01-09  Andreas Gruenbacher  <agruen@suse.de>
16709
16710         Sync from coreutils.
16711
16712         Add POSIX ACL support
16713         * lib/acl.h (copy_acl, set_acl): Add declarations.
16714         * lib/acl.c (acl_entries): Add fallback implementation for POSIX ACL
16715         systems other than Linux.
16716         (chmod_or_fchmod): New function: use fchmod when possible,
16717         and chmod otherwise.
16718         (file_has_acl): Add a POSIX ACL implementation, with a
16719         Linux-specific subcase.
16720         (copy_acl): Add: copy an acl and S_ISUID, S_ISGID, and
16721         S_ISVTX from one file to another.  Fall back to fchmod/chmod when
16722         acls are unsupported.
16723         (set_acl): Add: set a file's acl and S_ISUID, S_ISGID, and
16724         S_ISVTX to a defined value.  Fall back to fchmod/chmod when acls
16725         are unsupported.
16726
16727 2006-01-09  Andreas Gruenbacher  <agruen@suse.de>
16728
16729         Sync from coreutils.
16730         * m4/acl.m4 (AC_FUNC_ACL): Add POSIX ACL and Linux-specific acl tests.
16731
16732 2006-01-07  Bruno Haible  <bruno@clisp.org>
16733
16734         * gnulib-tool (func_import): Add an AC_PROG_RANLIB dependency to
16735         gl_EARLY.
16736
16737 2006-01-04  Paul Eggert  <eggert@cs.ucla.edu>
16738
16739         * lib/strftime.c (tzname): Don't declare if it is already #defined.
16740         Problem reported for Mingw by Mark Junker.
16741
16742 2006-01-04  Paul Eggert  <eggert@cs.ucla.edu>
16743
16744         * README: Gnulib normally doesn't generate a tarball.
16745
16746 2006-01-03  Paul Eggert  <eggert@cs.ucla.edu>
16747
16748         * lib/xtime.h (xtime_make, xtime_nonnegative_nsec, xtime_nsec): Use
16749         long int, not int, for nanosecond counts, so that people who are
16750         used to POSIX struct timespec won't be surprised.  Reported by Jim
16751         Meyering.
16752
16753 2005-12-28  Bruno Haible  <bruno@clisp.org>
16754
16755         * build-aux/config.rpath: Update from GNU gettext.
16756
16757 2005-12-16  Jim Meyering  <jim@meyering.net>
16758
16759         * modules/fprintftime: New module.
16760         * MODULES.html.sh (Date and time <time.h>): Add fprintftime.
16761
16762 2005-12-16  Jim Meyering  <jim@meyering.net>
16763
16764         * m4/fprintftime.m4: New file.
16765
16766 2005-12-16  Jim Meyering  <jim@meyering.net>
16767
16768         * lib/fprintftime.c, lib/fprintftime.h: New files.
16769
16770 2005-12-15  Simon Josefsson  <jas@extundo.com>
16771
16772         * modules/socklen (configure.ac): Fix M4 macro name, to align with
16773         new m4/socklen.m4.
16774
16775 2005-12-10  Sergey Poznyakoff  <gray@gnu.org.ua>
16776
16777         * m4/argp.m4: Define HAVE_DECL_PROGRAM_INVOCATION_NAME and
16778         HAVE_DECL_PROGRAM_INVOCATION_SHORT_NAME
16779
16780 2005-12-10  Sergey Poznyakoff  <gray@gnu.org.ua>
16781
16782         * lib/argp-fmtstream.c (__argp_fmtstream_update): Fix coredump
16783         * lib/argp-help.c (fill_in_uparams): Check if the constructed
16784         struct uparams is valid. Fall back to the default values if it is
16785         not.
16786
16787 2005-12-09  Sergey Poznyakoff  <gray@gnu.org.ua>
16788
16789         * modules/argp (Files): Add argp-pin.c
16790         (Depends-on): dirname
16791         (lib_SOURCES): Add argp-pin.c
16792
16793 2005-12-09  Sergey Poznyakoff  <gray@gnu.org.ua>
16794
16795         * m4/argp.m4:  Check if program_invocation_name and
16796         program_invocation_short_name are declared and define appropriate
16797         macros if they are not.
16798
16799 2005-12-09  Sergey Poznyakoff  <gray@gnu.org.ua>
16800
16801         * lib/argp-help.c (__argp_base_name): New function
16802         (__argp_short_program_name): Rewrite using __argp_base_name
16803         * lib/argp-namefrob.h: Define program_invocation_name and
16804         program_invocation_short_name if requested
16805         (__argp_base_name): Add prototype
16806         * lib/argp-parse.c (argp_def): Use gettext wrappers
16807         (argp_default_parser): Use __argp_base_name
16808         * lib/argp-pin.c: New file. Defines program_invocation_name and
16809         program_invocation_short_name on systems that lack them.
16810
16811 2005-12-07  Paul Eggert  <eggert@cs.ucla.edu>
16812
16813         * m4/stat-time.m4 (gl_STAT_TIME): Add check for
16814         TYPEOF_STRUCT_STAT_ST_ATIM_IS_STRUCT_TIMESPEC, to fix IRIX 5.3
16815         porting problem reported by Georg Schwarz in
16816         <http://lists.gnu.org/archive/html/bug-coreutils/2005-12/msg00083.html>.
16817
16818 2005-12-07  Paul Eggert  <eggert@cs.ucla.edu>
16819
16820         * lib/stat-time.h (STATE_TIMESPEC, STAT_TIMESPEC_NS): Add check for
16821         TYPEOF_STRUCT_STAT_ST_ATIM_IS_STRUCT_TIMESPEC, to fix IRIX 5.3
16822         porting problem reported by Georg Schwarz in
16823         <http://lists.gnu.org/archive/html/bug-coreutils/2005-12/msg00083.html>.
16824
16825 2005-12-05  Bruno Haible  <bruno@clisp.org>
16826
16827         * lib/csharpcomp.sh.in (options_csc): For -l option, add a .dll suffix.
16828         * lib/csharpcomp.c (compile_csharp_using_sscli): Likewise.
16829         Reported by Mark Junker <mjscod@gmx.de>.
16830
16831 2005-12-02  Paul Eggert  <eggert@cs.ucla.edu>
16832
16833         * m4/socklen.m4 (gl_TYPE_SOCKLEN_T): Renamed from gl_SOCKLEN_T.
16834         Use implementation from Albert Chin, with some
16835         comments/corrections by Stepan Kasal and myself.
16836
16837 2005-12-02  Bruno Haible  <bruno@clisp.org>
16838
16839         * gnulib-tool (func_import): Accept GPLed build tool modules when
16840         --lgpl is given.
16841         * modules/csharpcomp-script: New file.
16842         * modules/csharpcomp: Depend on it.
16843         * modules/javacomp-script: New file.
16844         * modules/javacomp: Depend on it.
16845         Suggested by Simon Josefsson.
16846
16847 2005-12-01  Paul Eggert  <eggert@cs.ucla.edu>
16848
16849         * m4/regex.m4 (gl_REGEX): Check whether off_t can be used in a switch
16850         statement, to work around an HP-UX 10.20 compiler bug reported by
16851         Peter O'Gorman.
16852
16853 2005-11-29  Paul Eggert  <eggert@cs.ucla.edu>
16854
16855         * modules/savedir (Depends-on): Add openat.
16856
16857 2005-11-29  Paul Eggert  <eggert@cs.ucla.edu>
16858
16859         * lib/stdint_.h (intmax_t) [defined intmax_t]: Do not declare.
16860         (uintmax_t) [defined uintmax_t]: Do not declare.
16861         (SIZE_MAX) [defined SIZE_MAX]: Do not define.
16862         This works around a problem if intmax_t.m4 and/or uintmax_t.m4
16863         and/or size_max.m4 are also used.  Problem reported by Mark D. Baushke.
16864         (SIZE_MAX): Define to ((size_t) -1), not (~(size_t)0), for the
16865         sake of portability to weird hosts that C allows (though we don't
16866         know of any practical examples).
16867
16868         * lib/savedir.h (fdsavedir): New decl.
16869         * lib/savedir.c (fdsavedir, savedirstream): New functions; the latter
16870         contains most of the former guts of savedir.
16871         (savedir): Use savedirstream.
16872         Include "openat.h".
16873
16874 2005-11-25  Paul Eggert  <eggert@cs.ucla.edu>
16875
16876         * modules/obstack (Files): Add m4/ulonglong.m4.
16877         Problem reported by Davide Angelocola.
16878
16879 2005-11-15  Paul Eggert  <eggert@cs.ucla.edu>
16880
16881         * lib/xstrtod.c: Don't bother with #pragma STDC FENV_ACCESS ON, as
16882         coreutils no longer futzes with rounding modes.
16883
16884 2005-11-14  Jim Meyering  <jim@meyering.net>
16885
16886         * lib/mkstemp-safer.c: Include <config.h>, required for possible
16887         replacement of mkstemp.
16888
16889 2005-11-10  Simon Josefsson  <jas@extundo.com>
16890
16891         * lib/readline.c: Remove EOL.
16892
16893 2005-11-10  Paul Eggert  <eggert@cs.ucla.edu>
16894
16895         * modules/gethrxtime (Depends-on): Add gettime.
16896
16897 2005-11-10  Paul Eggert  <eggert@cs.ucla.edu>
16898
16899         * m4/gethrxtime.m4 (gl_PREREQ_GETHRXTIME): Don't require AC_HEADER_TIME
16900         or gettimeofday; no longer needed.
16901
16902 2005-11-10  Paul Eggert  <eggert@cs.ucla.edu>
16903
16904         * lib/gethrxtime.c: Include "timespec.h" rather than the sys/time /
16905         time business.
16906         (gethrxtime) [! (HAVE_NANOUPTIME
16907         || (defined CLOCK_MONOTONIC && HAVE_CLOCK_GETTIME)
16908         || HAVE_MICROUPTIME)]: Fall back on gettime rather than rolling
16909         our own approximation.
16910
16911 2005-11-08  Eric Blake  <ebb9@byu.net>
16912
16913         * lib/inet_ntop.h: Use #if !, not #ifndef, for AC_CHECK_DECLS.
16914
16915 2005-11-08  Eric Blake  <ebb9@byu.net>
16916
16917         * lib/getaddrinfo.h: Use #if !, not #ifndef, for AC_CHECK_DECLS.
16918
16919 2005-11-04  Bruno Haible  <bruno@clisp.org>
16920
16921         * gnulib-tool: Implement --update mode.
16922
16923 2005-10-30  Paul Eggert  <eggert@cs.ucla.edu>
16924
16925         Fix porting problem reported by Theodoros V. Kalamatianos.
16926         * lib/utimens.c (futimens) [HAVE_WORKING_UTIMES && HAVE_FUTIMES]:
16927         Don't assume that futimes failing means we must fail.
16928
16929 2005-10-30  Paul Eggert  <eggert@cs.ucla.edu>
16930
16931         * m4/chdir-long.m4 (gl_FUNC_CHDIR_LONG): Revamp wording and local
16932         variables to suggest the intended function of the PATH_MAX check.
16933
16934 2005-10-30  Kean Johnston  <jkj@sco.com>
16935
16936         Trivial changes to support SCO systems.
16937         * m4/chdir-long.m4 (gl_FUNC_CHDIR_LONG): Check for MAXPATHLEN as well
16938         as PATH_MAX.
16939         * m4/fpending.m4 (gl_FUNC_FPENDING): Correct check for SCO systems,
16940         where __ptr is null when no I/O is pending.
16941
16942 2005-10-29  Paul Eggert  <eggert@cs.ucla.edu>
16943
16944         * lib/getcwd.c (__getcwd): Don't assume that system calls after readdir
16945         leave errno alone.  Problem reported by Dmitry V. Levin.
16946
16947 2005-10-28  Simon Josefsson  <jas@extundo.com>
16948
16949         * tests/test-gc-md4.c, tests/test-gc-md5.c, tests/test-gc-sha1.c:
16950         Test more.
16951
16952         * tests/test-gc-md2.c, tests/test-md2.c: New files.
16953
16954         * modules/md2, modules/md2-tests: New files.
16955
16956 2005-10-28  Simon Josefsson  <jas@extundo.com>
16957
16958         * m4/inet_ntop.m4: More tests.
16959
16960         * m4/gc-md2.m4, md2.m4: New file.
16961
16962 2005-10-28  Simon Josefsson  <jas@extundo.com>
16963
16964         * lib/inet_ntop.h, inet_ntop.c: Make it work under mingw32: Add
16965         "restrict" keywords, as per POSIX.  Protect the function
16966         declaration around HAVE_DECL_INET_NTOP rather than HAVE_INET_NTOP.
16967         Don't use K&R prototypes.  Check the sprintf return values.
16968         Re-define EAFNOSUPPORT if not present.  Indent.
16969
16970         * lib/md5.h, md5.c: Simplify buffer handling visavi alignment,
16971         suggested by Bruno Haible <bruno@clisp.org>.
16972
16973         * lib/gc-gnulib.c, gc-libgcrypt.c: Check calloc return value.
16974
16975         * lib/gc.h: Add MD2 and RMD160 length defines.  Add prototypes.
16976
16977         * lib/gc-libgcrypt.c: Add MD2 (which is not available through
16978         libgcrypt).
16979
16980         * lib/gc-gnulib.c: Add MD2.  Implement gc_hash_* API.
16981
16982         * lib/md2.h, lib/md2.c: New files.
16983
16984 2005-10-28  Paul Eggert  <eggert@cs.ucla.edu>
16985
16986         * lib/savedir.c (savedir): Don't assume that xrealloc etc. leave
16987         errno alone.  Problem reported by Frederic Jolliton.
16988
16989 2005-10-27  Paul Eggert  <eggert@cs.ucla.edu>
16990
16991         * modules/verify (License): Change from GPL to LGPL.  This is a
16992         tiny module and there are apparently near-equivalents that are
16993         under the BSD license.
16994
16995 2005-10-24  Simon Josefsson  <jas@extundo.com>
16996
16997         * modules/sha1: Relicense to LGPL.
16998
16999 2005-10-24  Simon Josefsson  <jas@extundo.com>
17000
17001         * lib/md4.h: Shrink buffer size, now that we changed the type.
17002
17003 2005-10-23  Simon Josefsson  <jas@extundo.com>
17004
17005         * gnulib-tool (func_import): Fix --tests-base.
17006
17007 2005-10-22  Simon Josefsson  <jas@extundo.com>
17008
17009         * modules/arcfour (Depends-on): Need stdint.
17010
17011 2005-10-22  Simon Josefsson  <jas@extundo.com>
17012
17013         * m4/gc.m4: Don't be fooled by --disable-*random-device parameters,
17014         suggested by Bruno Haible <bruno@clisp.org>.  Fix error messages.
17015
17016 2005-10-22  Simon Josefsson  <jas@extundo.com>
17017
17018         * lib/md4.h, md4.c: Simplify buffer handling visavi alignment,
17019         suggested by Bruno Haible <bruno@clisp.org>.
17020
17021 2005-10-22  Simon Josefsson  <jas@extundo.com>
17022
17023         * lib/crc.h: Include stddef.h, for size_t.
17024
17025 2005-10-22  Simon Josefsson  <jas@extundo.com>
17026
17027         * lib/arcfour.h, arcfour.c: Use fixed size indices in the
17028         arcfour_context struct (simplify test vector testing in GNU
17029         Shishi).
17030
17031 2005-10-21  Simon Josefsson  <jas@extundo.com>
17032
17033         * modules/des, modules/des-tests: New files.
17034
17035         * modules/gc-des, modules/gc-des-tests: New files.
17036
17037         * tests/test-des.c, tests/test-gc-des.c: New file.
17038
17039 2005-10-21  Simon Josefsson  <jas@extundo.com>
17040
17041         * modules/arctwo, modules/arctwo-tests: New files.
17042
17043         * tests/test-arctwo.c: New file.
17044
17045         * modules/gc-arctwo, modules/gc-arctwo-tests: New files.
17046
17047         * tests/test-gc-arctwo.c: New file.
17048
17049 2005-10-21  Simon Josefsson  <jas@extundo.com>
17050
17051         * m4/gc.m4: Don't use libgcrypt if gcrypt.h isn't found, suggested by
17052         Bruno Haible <bruno@clisp.org>.
17053
17054         * m4/gc-des.m4: New file.
17055
17056 2005-10-21  Simon Josefsson  <jas@extundo.com>
17057
17058         * m4/arctwo.m4: New file.
17059
17060         * m4/gc-arctwo.m4: New file.
17061
17062 2005-10-21  Simon Josefsson  <jas@extundo.com>
17063
17064         * lib/rijndael-api-fst.c: Fix bugs in CBC mode for more than one
17065         block.
17066
17067 2005-10-21  Simon Josefsson  <jas@extundo.com>
17068
17069         * lib/hmac-md5.c (hmac_md5): Add comments, suggested by Bruno Haible
17070         <bruno@clisp.org>.
17071
17072         * lib/hmac-sha1.c (hmac_sha1): Likewise.
17073
17074         * lib/crc.c (crc32_update): Actually use crc parameter, suggested by
17075         Bruno Haible <bruno@clisp.org>.
17076
17077         * lib/crc.h: Include stdint.h directly, suggested by Bruno Haible
17078         <bruno@clisp.org>.
17079
17080 2005-10-21  Simon Josefsson  <jas@extundo.com>
17081
17082         * lib/gc-libgcrypt.c (gc_cipher_open): Handle ECB.
17083
17084 2005-10-21  Simon Josefsson  <jas@extundo.com>
17085
17086         * lib/gc-gnulib.c: Support ARCTWO in CBC mode.
17087
17088 2005-10-21  Simon Josefsson  <jas@extundo.com>
17089
17090         * lib/des.h, lib/des.c: New files.
17091
17092         * lib/gc-gnulib.c: Support DES.c
17093
17094 2005-10-21  Simon Josefsson  <jas@extundo.com>
17095
17096         * lib/arctwo.h, lib/arctwo.c: New files.
17097
17098         * lib/gc-gnulib.c: Support ARCTWO.
17099
17100 2005-10-21  Simon Josefsson  <jas@extundo.com>
17101
17102         * lib/arctwo.h (arctwo_setkey): Protect variable in CPP macro,
17103         suggested by Ralf Wildenhues <Ralf.Wildenhues@gmx.de>.
17104
17105 2005-10-21  Simon Josefsson  <jas@extundo.com>
17106
17107         * gnulib-tool (func_import, func_create_testdir): Define automake
17108         conditional GL_COND_LIBTOOL if libtool is used (to be used by modules
17109         Makefile.am snippet),
17110         suggested by Bruno Haible <bruno@clisp.org>.
17111
17112         * modules/gc (Makefile.am): Use it.
17113
17114 2005-10-21  Bruno Haible  <bruno@clisp.org>
17115
17116         * gnulib-tool (func_import, func_create_testdir): Add quoting to last
17117         patch.
17118
17119 2005-10-19  Simon Josefsson  <jas@extundo.com>
17120
17121         * tests/test-gc-rijndael.c: New file.
17122
17123         * modules/gc-rijndael, modules/gc-rijndael-test: New files.
17124
17125 2005-10-19  Simon Josefsson  <jas@extundo.com>
17126
17127         * tests/test-gc-md4.c, tests/test-gc-md5.c: Test gc_hash_buffer
17128         interface too.
17129
17130 2005-10-19  Simon Josefsson  <jas@extundo.com>
17131
17132         * tests/test-gc-arcfour.c: New file.
17133
17134         * modules/gc-arcfour, modules/gc-arcfour-tests: New files.
17135
17136 2005-10-19  Simon Josefsson  <jas@extundo.com>
17137
17138         * modules/gc-md4, modules/gc-md4-tests: New file.
17139
17140         * tests/test-gc-md4.c: New file.
17141
17142 2005-10-19  Simon Josefsson  <jas@extundo.com>
17143
17144         * m4/gc-md4.m4: New file.
17145
17146 2005-10-19  Simon Josefsson  <jas@extundo.com>
17147
17148         * m4/gc-hmac-md5.m4, gc-hmac-sha1.m4, gc-md4.m4,
17149         gc-md5.m4, gc-sha1.m4: Fix typo, suggested by Stepan Kasal
17150         <kasal@ucw.cz>.
17151
17152 2005-10-19  Simon Josefsson  <jas@extundo.com>
17153
17154         * m4/gc-arcfour.m4: New file.
17155
17156         * m4/gc-rijndael.m4: New file.
17157
17158 2005-10-19  Simon Josefsson  <jas@extundo.com>
17159
17160         * lib/gc.h, gc-gnulib.c, gc-libgcrypt.c: Support MD4.
17161
17162 2005-10-19  Simon Josefsson  <jas@extundo.com>
17163
17164         * lib/gc-gnulib.c: Support ARCFOUR.
17165
17166 2005-10-19  Simon Josefsson  <jas@extundo.com>
17167
17168         * lib/gc-gnulib.c: Implement gc_cipher_* API, currently only with AES
17169         support.
17170
17171         * lib/gc.h: Add ECB enum type.
17172
17173         * lib/hmac-md5.c, hmac-sha1.c: Include memxor.h.
17174
17175 2005-10-18  Simon Josefsson  <jas@extundo.com>
17176
17177         * tests/test-md5.c: New file.
17178
17179         * modules/md5-tests: New file.
17180
17181 2005-10-18  Simon Josefsson  <jas@extundo.com>
17182
17183         * tests/test-md4.c: New file.
17184
17185         * modules/md4, modules/md4-tests: New files.
17186
17187 2005-10-18  Simon Josefsson  <jas@extundo.com>
17188
17189         * m4/md4.m4: New file.
17190
17191 2005-10-18  Simon Josefsson  <jas@extundo.com>
17192
17193         * lib/md4.h, lib/md4.c: New files, based on md5.?.
17194
17195 2005-10-17  Stepan Kasal  <kasal@ucw.cz>
17196
17197         * gnulib-tool (func_create_testdir): Omit the second check whether
17198         BUILT_SOURCES in nonempty.
17199
17200 2005-10-17  Simon Josefsson  <jas@extundo.com>
17201
17202         * tests/test-rijndael.c: New file.
17203
17204 2005-10-17  Simon Josefsson  <jas@extundo.com>
17205
17206         * modules/sha1: Depend on stdint instead of md5.
17207
17208         * modules/md5: Depend on stdint, remove uint32_t.
17209
17210 2005-10-17  Simon Josefsson  <jas@extundo.com>
17211
17212         * modules/gc-sha1-tests: New file.
17213
17214         * tests/test-gc-sha1.c: New file.
17215
17216 2005-10-17  Simon Josefsson  <jas@extundo.com>
17217
17218         * m4/md5.m4: Remove call to uint32_t.m4.
17219
17220 2005-10-17  Simon Josefsson  <jas@extundo.com>
17221
17222         * lib/sha1.c: Use uint32_t instead of md5_uint32.t
17223
17224         * lib/sha1.h: Use stdint.h and uint32_t instead of md5_uint32 from
17225         md5.h.
17226
17227         * lib/md5.c: Use uin32_t.  Fix non-gcc UNALIGNED_P macro.
17228
17229         * lib/md5.h: Use stdint.h and uint32_t.  Doc fix.
17230
17231 2005-10-17  Simon Josefsson  <jas@extundo.com>
17232
17233         * lib/gc.h, gc-libgcrypt.c: Add more hash types/functions.
17234
17235 2005-10-17  Simon Josefsson  <jas@extundo.com>
17236
17237         * lib/gc.h, gc-libgcrypt.c: Add ciphers.
17238
17239 2005-10-17  Simon Josefsson  <jas@extundo.com>
17240
17241         * lib/gc-libgcrypt.c (gc_hmac_sha1): Fix assert.
17242
17243         * lib/gc.h (gc_nonce, gc_pseudo_random, gc_random): Add prototypes.
17244
17245 2005-10-17  Bruno Haible  <bruno@clisp.org>
17246
17247         * m4/stdbool.m4 (AC_HEADER_STDBOOL): Change the return statement so
17248         that it can also be used in a test.
17249
17250 2005-10-16  Bruno Haible  <bruno@clisp.org>
17251
17252         * gnulib-tool (func_emit_tests_Makefile_am): Also define
17253         TESTS_ENVIRONMENT, so that individual tests can augment it.
17254
17255         * gnulib-tool (func_create_testdir): Use an intermediate target for
17256         building $(BUILT_SOURCES). Needed because BUILT_SOURCES can contain
17257         macros, like $(ALLOCA_H), which cannot be passed through the command
17258         line.
17259
17260 2005-10-15  Simon Josefsson  <jas@extundo.com>
17261
17262         * modules/rijndael-tests: New file.
17263
17264         * modules/rijndael: New file.
17265
17266 2005-10-15  Simon Josefsson  <jas@extundo.com>
17267
17268         * m4/rijndael.m4: New file.
17269
17270 2005-10-15  Simon Josefsson  <jas@extundo.com>
17271
17272         * lib/rijndael-api-fst.h, lib/rijndael-api-fst.c: New files.
17273
17274         * lib/rijndael-alg-fst.h, lib/rijndael-alg-fst.c: New files.
17275
17276 2005-10-14  Simon Josefsson  <jas@extundo.com>
17277
17278         * tests/test-arcfour.c: New file.
17279
17280         * modules/arcfour, modules/arcfour-tests: New files.
17281
17282 2005-10-14  Simon Josefsson  <jas@extundo.com>
17283
17284         * m4/arcfour.m4: New file.
17285
17286 2005-10-14  Simon Josefsson  <jas@extundo.com>
17287
17288         * lib/arcfour.h, lib/arcfour.c: New files.
17289
17290 2005-10-14  Roland McGrath  <roland@redhat.com>
17291
17292         Import from libc.  [BZ #1331]
17293         * lib/obstack.h [!__STDC__] (obstack_int_grow_fast): Fix misnamed
17294         macro argument.
17295         Reported by Matej Vela <vela@debian.org>.
17296
17297 2005-10-14  Paul Eggert  <eggert@cs.ucla.edu>
17298
17299         * lib/obstack.c [defined _LIBC && defined USE_IN_LIBIO]: Don't
17300         include <wchar.h>; no longer needed.
17301
17302 2005-10-14  Paul Eggert  <eggert@cs.ucla.edu>
17303
17304         * config/srclist.txt: Add glibc bug 321 for obstack.c, obstack.h.
17305
17306 2005-10-14  Jakub Jelinek  <jakub@redhat.com>
17307         and  Ulrich Drepper  <drepper@redhat.com>
17308
17309         Import from libc.
17310         * lib/obstack.c (print_and_abort) [defined _LIBC]: Use __fxprintf
17311         instead of inline stream orientation test and two separate
17312         function calls.  Pay no attention to USE_IN_LIBIO.
17313
17314 2005-10-13  Simon Josefsson  <jas@extundo.com>
17315
17316         * modules/gc-hmac-md5-tests: New file.
17317
17318         * tests/test-gc-hmac-sha1.c: New file.
17319
17320         * tests/test-gc.c (main): Remove MD5 and HMAC-MD5 tests.
17321
17322         * modules/gc-hmac-md5-tests: New file.
17323
17324         * tests/test-gc-md5.c: New file.
17325
17326         * modules/gc-md5-tests: New file.
17327
17328 2005-10-13  Simon Josefsson  <jas@extundo.com>
17329
17330         * lib/gc-pbkdf2-sha1.c (gc_pbkdf2_sha1): Optimize CEIL computation.
17331         Move memory allocation outside of loop.
17332
17333 2005-10-13  Paul Eggert  <eggert@cs.ucla.edu>
17334
17335         * lib/mkdir-p.c (make_dir_parents): Don't report an error if an
17336         intermediate directory is in a read-only file system.  Problem
17337         reported by Eric Blake.
17338
17339 2005-10-13  Oskar Liljeblad  <oskar@osk.mine.nu>
17340
17341         * modules/human (Depends-on): Depend on xstrtoumax, not xstrtol.
17342
17343 2005-10-12  Simon Josefsson  <jas@extundo.com>
17344
17345         * tests/test-hmac-sha1.c: New file.
17346
17347         * modules/hmac-sha1-tests: New file.
17348
17349         * modules/hmac-sha1: New file.
17350
17351 2005-10-12  Simon Josefsson  <jas@extundo.com>
17352
17353         * modules/gc-sha1: New file.
17354
17355 2005-10-12  Simon Josefsson  <jas@extundo.com>
17356
17357         * modules/gc-pbkdf2-sha1, modules/gc-pbkdf2-sha1-tests: New files.
17358
17359         * tests/test-gc-pbkdf2-sha1.c: New file.
17360
17361 2005-10-12  Simon Josefsson  <jas@extundo.com>
17362
17363         * modules/gc-md5, modules/gc-hmac-md5: New files.
17364
17365         * modules/gc (Files): Remove md5, memxor and hmac files.
17366
17367 2005-10-12  Simon Josefsson  <jas@extundo.com>
17368
17369         * m4/gc-pbkdf2-sha1.m4: New file.
17370
17371         * m4/gc-hmac-sha1.m4: New file.
17372
17373         * m4/gc-sha1: New file.
17374
17375         * m4/hmac-sha1.m4: New file.
17376
17377 2005-10-12  Simon Josefsson  <jas@extundo.com>
17378
17379         * m4/gc-md5.m4, m4/gc-hmac-md5.m4: New files.
17380
17381         * m4/gc.m4: Don't call gl_MD5, gl_MEMXOR or gl_HMAC_MD5.
17382
17383 2005-10-12  Simon Josefsson  <jas@extundo.com>
17384
17385         * lib/gc.h, gc-gnulib.c, gc-libgcrypt.c: Use Gc_rc for return types,
17386         suggested by Bruno Haible <bruno@clisp.org>.
17387
17388 2005-10-12  Simon Josefsson  <jas@extundo.com>
17389
17390         * lib/gc.h, gc-gnulib.c, gc-libgcrypt.c: Support SHA-1.
17391
17392 2005-10-12  Simon Josefsson  <jas@extundo.com>
17393
17394         * lib/gc-pbkdf2-sha1.c: New file.
17395
17396         * lib/gc.h: Add gc_pbkdf2_sha1 prototype.
17397
17398 2005-10-12  Simon Josefsson  <jas@extundo.com>
17399
17400         * lib/gc-libgcrypt.c (gc_hmac_sha1): New function.
17401
17402         * lib/gc-gnulib.c (gc_hmac_sha1): New function.
17403
17404 2005-10-12  Simon Josefsson  <jas@extundo.com>
17405
17406         * lib/gc-gnulib.c: Condition MD5 and HMAC-MD5 use on GC_USE_MD5 and
17407         GC_USE_HMAC_MD5, respectively.
17408
17409         * lib/gc-libgcrypt.c (gc_md5): Fix assert call.
17410         (gc_md5): Fix typo.
17411
17412         * lib/gc.h (gc_hash_buffer): Use gc_hash in prototype.
17413
17414         * lib/gc-libgcrypt.c (gc_hash_buffer): Ditto.
17415
17416         * lib/gc-gnulib.c (gc_hash_buffer): Ditto.
17417
17418 2005-10-12  Bruno Haible  <bruno@clisp.org>
17419
17420         * m4/stdbool.m4 (gl_STDBOOL_H): Define as an alias of AM_STDBOOL_H.
17421         Reported by Stepan Kasal <kasal@ucw.cz>.
17422
17423 2005-10-11  Simon Josefsson  <jas@extundo.com>
17424
17425         * tests/test-crc.c: New file.
17426
17427         * modules/crc, modules/crc-tests: New files.
17428
17429 2005-10-11  Simon Josefsson  <jas@extundo.com>
17430
17431         * m4/crc.m4: New file.
17432
17433 2005-10-11  Simon Josefsson  <jas@extundo.com>
17434
17435         * lib/gc.h: Add gc_hash and gc_hash_buffer.
17436
17437         * lib/gc-gnulib.c (gc_hash_buffer): Add.  Reorder #include's.
17438
17439         * lib/gc-libgcrypt.c (gc_hash_buffer): Add.
17440
17441 2005-10-11  Simon Josefsson  <jas@extundo.com>
17442
17443         * lib/crc.h, lib/crc.c: New files.
17444
17445         * lib/gc.h (gc_hash_buffer): Add doc.
17446
17447 2005-10-11  Bruno Haible  <bruno@clisp.org>
17448
17449         * modules/c-strcasestr: New file.
17450         * MODULES.html.sh (String handling <string.h>): Add c-strcasestr.
17451
17452 2005-10-11  Bruno Haible  <bruno@clisp.org>
17453
17454         * modules/c-strcase: New file.
17455         * MODULES.html.sh (String handling <string.h>): Add c-strcase.
17456
17457 2005-10-11  Bruno Haible  <bruno@clisp.org>
17458
17459         * lib/strcasecmp.c: Include limits.h.
17460         (strcasecmp): Avoid integer overflow on exotic platforms.
17461         * lib/strncasecmp.c: Include limits.h.
17462         (strncasecmp): Avoid integer overflow on exotic platforms.
17463         Reported by Paul Eggert.
17464
17465 2005-10-11  Bruno Haible  <bruno@clisp.org>
17466
17467         * lib/c-strcasestr.h: New file, from GNU gettext.
17468         * lib/c-strcasestr.c: New file, from GNU gettext.
17469
17470 2005-10-11  Bruno Haible  <bruno@clisp.org>
17471
17472         * lib/c-strcase.h: New file, from GNU gettext.
17473         * lib/c-strcasecmp.c: New file, from GNU gettext.
17474         * lib/c-strncasecmp.c: New file, from GNU gettext.
17475
17476 2005-10-10  Paul Eggert  <eggert@cs.ucla.edu>
17477
17478         * modules/mempcpy (License): GPL -> LGPL.
17479         * modules/strchrnul (License): Likewise.
17480         * modules/sysexits (License): Likewise.
17481
17482 2005-10-08  Simon Josefsson  <jas@extundo.com>
17483
17484         * config/srclist.txt: Bug 1423 is closed, but 1439 remains.
17485
17486 2005-10-07  Simon Josefsson  <jas@extundo.com>
17487
17488         * m4/memxor.m4: Remove gl_C_RESTRICT call.
17489
17490 2005-10-06  Simon Josefsson  <jas@extundo.com>
17491
17492         * tests/test-hmac-md5.c: New file.
17493
17494         * modules/hmac-md5-tests: New file.
17495
17496         * modules/hmac-md5: New file.
17497
17498 2005-10-06  Simon Josefsson  <jas@extundo.com>
17499
17500         * m4/hmac-md5.m4: New file.
17501
17502         * m4/memxor.m4: Require gl_C_RESTRICT.
17503
17504 2005-10-06  Simon Josefsson  <jas@extundo.com>
17505
17506         * lib/memxor.c (memxor): Avoid casts and warnings.
17507
17508 2005-10-06  Simon Josefsson  <jas@extundo.com>
17509
17510         * lib/hmac-md5.c: New file.
17511
17512         * lib/hmac.h: New file.
17513
17514 2005-10-06  Paul Eggert  <eggert@cs.ucla.edu>
17515
17516         * m4/stdbool.m4 (AC_HEADER_STDBOOL): Check that bool
17517         promotes to int, not unsigned int, to catch the AIX 5.3
17518         compiler bug.
17519
17520 2005-10-05  Simon Josefsson  <jas@extundo.com>
17521
17522         * modules/memxor: New file.
17523
17524         * modules/iconv (Files): Move config.rpath to havelib, it is used
17525         there.
17526
17527         * modules/havelib (Files): Add config.rpath.
17528
17529 2005-10-05  Simon Josefsson  <jas@extundo.com>
17530
17531         * m4/memxor.m4: New file.
17532
17533 2005-10-05  Simon Josefsson  <jas@extundo.com>
17534
17535         * lib/memxor.c (memxor): Fix compiler error.
17536
17537         * lib/md5.h (MD5_DIGEST_SIZE, MD5_BLOCK_SIZE): Add, see also
17538         <http://sourceware.org/bugzilla/show_bug.cgi?id=1423>.
17539
17540         * lib/memxor.h, lib/memxor.c: New files.
17541
17542         * lib/getaddrinfo.h: Don't protect sys/types.h with HAVE_SYS_TYPES_H,
17543         we assume all systems have it, suggested by Jim Meyering
17544         <jim@meyering.net>.  Remove HAVE_SYS_SOCKET_H test too, to see if
17545         any systems lack sys/socket.h; mingw32 is known to lack it, but we
17546         don't support it yet anyway.  Also remove HAVE_NETDB_H test, for
17547         same reasons.
17548
17549 2005-10-05  Simon Josefsson  <jas@extundo.com>
17550
17551         * config/srclist.txt: Add glibc bug 1423 for md5.h.
17552
17553 2005-10-05  Paul Eggert  <eggert@cs.ucla.edu>
17554
17555         * m4/getaddrinfo.m4 (gl_PREREQ_GETADDRINFO): Don't check for
17556         sys/socket.h, netdb.h, sys/types.h; the checks areno longer
17557         needed, since the source code now assumes these .h files.
17558
17559 2005-10-05  Derek Price  <derek@ximbiot.com>
17560
17561         * lib/getdelim.c (SIZE_MAX): New macro, if not already defined.
17562
17563 2005-10-05  Bruno Haible  <bruno@clisp.org>
17564
17565         * modules/stdint (License): Change to LGPL.
17566
17567 2005-10-04  Simon Josefsson  <jas@extundo.com>
17568
17569         * lib/getaddrinfo.h: Move sys/types.h include first, reported by "Mark
17570         D. Baushke" <mdb@gnu.org>.
17571
17572 2005-10-04  Bruno Haible  <bruno@clisp.org>
17573
17574         * lib/verify.h (verify_true): Provide alternative definition for C++.
17575
17576 2005-10-03  Paul Eggert  <eggert@cs.ucla.edu>
17577
17578         * lib/getdelim.c: Include getdelim.h first.  Include <limits.h>.
17579         (SSIZE_MAX): New macro, if not already defined.
17580         (getdelim): Fix buffer overrun on 64-bit hosts with lines longer
17581         than 2 GiB.
17582
17583 2005-10-02  Paul Eggert  <eggert@cs.ucla.edu>
17584
17585         Sync from coreutils.
17586         * m4/openat.m4 (gl_FUNC_OPENAT): Check for fdopendir.
17587         * m4/ullong_max.m4 (gl_ULLONG_MAX): Simplify so that it merely
17588         defines ULONG_MAX_LT_ULLONG_MAX.  Thomas M.Ott reports that
17589         ULLONG_MAX doesn't work with 2.7.2.1.
17590
17591 2005-10-02  Paul Eggert  <eggert@cs.ucla.edu>
17592
17593         * modules/xreadlink (Makefile.am): Remove lib_SOURCES.
17594         From Ben Pfaff.
17595
17596         * modules/exclude (Depends-on): Depend on verify.
17597         * modules/strtoimax (Depends-on): Likewise.
17598         * modules/utimecmp (Depends-on): Likewise.
17599
17600 2005-10-02  Paul Eggert  <eggert@cs.ucla.edu>
17601
17602         * lib/exclude.c: Include verify.h.
17603         (verify): Remove.  All callers changed to use verify.h's version.
17604         * lib/strtoimax.c: Likewise.
17605         * lib/utimecmp.c: Likewis.e
17606
17607         Sync from coreutils.
17608         * lib/.cppi-disable: Add getaddrinfo.h, getdelim.h, getline.h,
17609         getpass.c, mbchar.h, mbuiter.h, strcase.h, strnlen.h, strnlen1.h.
17610         * lib/.cvsignore: Add fts.h, search.h, t-fpending.
17611         * lib/settime.c (settime): Fix { typo in previous patch.  Also, don't
17612         bother returning ENOSYS if settimeofday or stime fails; just let
17613         them return whatever errno they want to return.
17614         * lib/utimens.c: Include unistd.h, for dup2.
17615         (futimens): Fix typo: HAVE_FUTIMESAT was misspelled in an #if.
17616         (futimens) [! HAVE_FUTIMESAT]: If !file, set errno before returning -1.
17617
17618 2005-10-02  Jim Meyering  <jim@meyering.net>
17619
17620         Sync from coreutils.
17621         * m4/utimes.m4 (gl_FUNC_UTIMES): Detect the version of utimes
17622         from glibc-2.2.5 that fails for read-only files.
17623
17624 2005-10-02  Jim Meyering  <jim@meyering.net>
17625
17626         Sync from coreutils.
17627         * lib/fts-cycle.c [HAVE_CONFIG_H]: Include <config.h>.
17628         * lib/openat-die.c: Use `#ifdef HAVE_CONFIG_H', not
17629         `#if HAVE_CONFIG_H'.
17630         * lib/openat.c (fdopendir): Do not define if HAVE_FDOPENDIR.
17631         Remove AT_FDCWD test.
17632         Do not consume the fd unless successful.
17633         * lib/openat.h (fdopendir): Do not define if HAVE_FDOPENDIR.
17634         * lib/settime.c (settime): Move the HAVE_STIME block `up' into an #elif
17635         block, so that we don't even try to compile it if settimeofday is
17636         available.  This works around a compilation failure on OSF1 V5.1,
17637         due to stime requiring a `long int*' while tv_sec is `int'.
17638
17639 2005-10-02  Alfred M. Szmidt  <ams@gnu.org>
17640
17641         Sync from coreutils.
17642         * m4/chdir-long.m4 (gl_FUNC_CHDIR_LONG): Compare $gl_have_path...
17643         against `yes', rather than just testing for nonempty.
17644
17645 2005-10-01  Simon Josefsson  <jas@extundo.com>
17646
17647         * m4/getaddrinfo.m4: Include sys/types.h for sys/socket.h, on FreeBSD
17648         and Darwin.
17649
17650         * m4/getaddrinfo.m4: Use AC_GNU_SOURCE, GNU only declare getaddrinfo
17651         as an (POSIX) extension.  Check for sys/types.h, sys/socket.h, and
17652         netdb.h too, needed by getaddrinfo.h.  Check if getaddrinfo,
17653         freeaddrinfo and gai_strerror are declared by the POSIX headers.
17654         Check if struct addrinfo is declared.
17655
17656 2005-10-01  Simon Josefsson  <jas@extundo.com>
17657
17658         * lib/getaddrinfo.h: Protect #include's of sys/socket.h and netdb.h.
17659         Only define struct addrinfo if !HAVE_STRUCT_ADDRINFO.  Protect
17660         AI_* and EAI_* definitions.  Protect function declarations.
17661
17662 2005-10-01  Jim Meyering  <jim@meyering.net>
17663
17664         Sync from coreutils.
17665
17666         * m4/getaddrinfo.m4 (gl_GETADDRINFO): Look for getservbyname in these
17667         libraries [inet nsl socket xnet].  Nelson Beebe reported that with
17668         native cc on Solaris 7, getaddrinfo.c requires -lsocket.
17669         * m4/getaddrinfo.m4 (gl_GETADDRINFO): Check for gethostbyname
17670         in the inet and nsl libraries.  Required on Solaris 5.7.
17671
17672 2005-10-01  Jim Meyering  <jim@meyering.net>
17673
17674         Sync from coreutils.
17675         * m4/getaddrinfo.m4 (gl_GETADDRINFO): Check for gethostbyname
17676         in the inet and nsl libraries.  Required on Solaris 5.7.
17677
17678 2005-10-01  Eric Blake  <ebb9@byu.net>  (tiny change)
17679
17680         * lib/getdelim.c (getdelim): Remove unused variables.
17681
17682 2005-09-29  Paul Eggert  <eggert@cs.ucla.edu>
17683
17684         * lib/xtime.h (XTIME_PRECISION): Now of type int, not long long int,
17685         so that the code works even with ancient cpp.  Portability problem
17686         with GCC 2.7.2.1 reported by Thomas M.Ott.
17687
17688 2005-09-27  Paul Eggert  <eggert@cs.ucla.edu>
17689
17690         * modules/regex (Depends-on): Add strcase.
17691
17692         * modules/gethostname (Licence): Change from GPL to LGPL, since
17693         gethostname.c is a trivial implementation of a standard library
17694         function.
17695         * modules/poll (License): Change from GPL to LGPL, since it's
17696         derived from LGPL code.
17697
17698 2005-09-27  Jim Meyering  <jim@meyering.net>
17699
17700         * lib/getcwd.c: Change #ifdef<TAB>HAVE_CONFIG_H to #ifdef
17701         HAVE_CONFIG_H.
17702
17703         * lib/intprops.h (signed_type_or_expr__): Define.
17704         (INT_STRLEN_BOUND) [__GNUC__]: Use a slightly tighter bound
17705         for unsigned types.
17706
17707 2005-09-26  Paul Eggert  <eggert@cs.ucla.edu>
17708
17709         * lib/verify.h (verify_expr): Remove, replacing with:
17710         (verify_true): New macro that returns true instead of void.
17711         (verify_type__): Remove.
17712         (verify): Use verify_true rather than verify_type__.
17713
17714 2005-09-26  Bruno Haible  <bruno@clisp.org>
17715
17716         * modules/mbchar (Include): Mention that HAVE_WCHAR_H && HAVE_WCTYPE_H
17717         is necessary.
17718         (lib_SOURCES): Remove mbchar.c.
17719         * modules/mbfile (Include): Mention that HAVE_MBRTOWC is necessary.
17720         (Files): Add m4/mbrtowc.m4.
17721         * modules/mbiter: Likewise.
17722         * modules/mbuiter: Likewise.
17723
17724 2005-09-26  Bruno Haible  <bruno@clisp.org>
17725
17726         * m4/mbchar.m4 (gl_MBCHAR): Check for wchar.h and wctype.h. Don't
17727         compile mbchar.c if they are not both present.
17728         * m4/mbfile.m4 (gl_MBFILE): Require gl_FUNC_MBRTOWC.
17729         * m4/mbiter.m4 (gl_MBITER): Likewise.
17730         * m4/strstr.m4 (gl_PREREQ_STRSTR): Use AC_REQUIRE.
17731         * m4/strcasestr.m4 (gl_PREREQ_STRCASESTR): Likewise.
17732         * m4/strcase.m4 (gl_PREREQ_STRCASECMP): Likewise.
17733
17734 2005-09-25  Jim Meyering  <jim@meyering.net>
17735
17736         * modules/inet_ntop (Depends-on): Add socklen, since inet_ntop.c
17737         also uses socklen_t.
17738
17739 2005-09-24  Paul Eggert  <eggert@cs.ucla.edu>
17740
17741         * lib/utimens.c (ENOSYS): Define if not already defined.
17742         (futimens): Support having a null PATH if the file descriptor
17743         is nonnegative.
17744
17745         * lib/regex_internal.h (__GNUC_PREREQ, always_inline, inline, pure):
17746         Remove.
17747         (__attribute): Define to empty unless GCC 3.1 or later.
17748         This works around a core dump on OpenBSD 3.4, which has GCC
17749         2.95.3, which dumps core when given __attribute__(()).  It also
17750         simplifies other tests, since we really don't want to bother with
17751         worrying about which ancient version of GCC supported what.
17752         Original problem reported by Yoann Vandoorselaere, with part of
17753         the fix suggested by Derek Price.
17754
17755 2005-09-24  Jim Meyering  <jim@meyering.net>
17756
17757         * lib/verify.h (verify_type__): Use `unsigned int' as the bitfield type
17758         so we can once again use a positive bitfield width of 1 -- now we
17759         don't have to explain why we were using a bitfield width of 2.
17760
17761 2005-09-23  Paul Eggert  <eggert@cs.ucla.edu>
17762
17763         * m4/regex.m4 (gl_REGEX): If replacing, define regcomp to rpl_regcomp,
17764         and similarly for the other external symbols.  Problem reported
17765         by James Gallager.
17766
17767         * m4/fnmatch.m4 (_AC_FUNC_FNMATCH_IF): Catch Sun Studio 10u1 on Linux
17768         bug reported by Jim Meyering.
17769
17770         * m4/utimens.m4 (gl_UTIMENS): Check for futimesat.
17771         * m4/getaddrinfo.m4 (gl_PREREQ_GETADDRINFO): Undo previous change;
17772         not needed, since socklen is a prerequisite module.
17773
17774 2005-09-23  Paul Eggert  <eggert@cs.ucla.edu>
17775
17776         * lib/getaddrinfo.c [HAVE_NETINET_IN_H]: Include <netinet/in.h>.
17777         Problem reported by Eric Blake.
17778         (getaddrinfo): Initialize se so that it's not garbage.
17779         Redo internal storage allocation so that it doesn't make unportable
17780         assumptions about alignment.
17781         Fix a memory leak.
17782
17783         * lib/utimens.c (futimens): Use futimesat if available.
17784         Prefer it to futimes since it doesn't have the futimes bug.
17785
17786         * lib/verify.h (GL_CONCAT0, GL_CONCAT): Remove.
17787         (verify): Don't use the __LINE__ trick, as it doesn't work in general.
17788         Instead, declare a function that returns a pointer to an array,
17789         and use verify_type__ to declare the size of the array.
17790         Problem and germ of a solution reported by Bruno Haible.
17791         (verify_type__): Use 2, not 1, for bitfield size, to avoid
17792         a warning with Irix 6.5 cc.  Problem reported by Bruno Haible.
17793
17794 2005-09-23  Jim Meyering  <jim@meyering.net>
17795
17796         Sync from coreutils.
17797         Correct build failure (socklen_t not defined) on at least
17798         mips-sgi-irix6.5 and alphaev67-dec-osf5.1.
17799         * m4/getaddrinfo.m4 (gl_PREREQ_GETADDRINFO): Require gl_SOCKLEN_T.
17800
17801 2005-09-23  Jim Meyering  <jim@meyering.net>
17802
17803         * modules/getaddrinfo (Depends-on): Add socklen.
17804
17805 2005-09-23  Bruno Haible  <bruno@clisp.org>
17806
17807         * tests/test-verify.c: New file.
17808
17809 2005-09-22  Paul Eggert  <eggert@cs.ucla.edu>
17810
17811         Sync from coreutils.
17812
17813         * modules/argmatch (Depends-on): Add verify.
17814         * modules/getloadavg (Depends-on): Depend on fcntl-safer, not
17815         unistd-safer.
17816         * modules/save-cwd (Depends-on): Likewise.
17817
17818         * modules/openat (Files): Add lib/openat-die.c.
17819         (Depends-on): Remove error, exitfail.
17820         Add dirname.
17821
17822         * modules/verify: New file.
17823         * MODULES.html.sh (Diagnostics <assert.h>): New section,
17824         with "verify" module.
17825
17826 2005-09-22  Paul Eggert  <eggert@cs.ucla.edu>
17827
17828         Sync from coreutils.
17829
17830         * m4/backupfile.m4, calloc.m4, chown.m4, cloexec.m4, dup2.m4:
17831         * m4/fileblocks.m4, free.m4, ftruncate.m4, getcwd.m4, getpagesize.m4:
17832         * m4/getugroups.m4, group-member.m4, idcache.m4, link-follow.m4:
17833         * m4/mkstemp.m4, mktime.m4, mountlist.m4, nanosleep.m4, pathmax.m4:
17834         * m4/physmem.m4, posixver.m4, putenv.m4, safe-read.m4, same.m4:
17835         * m4/save-cwd.m4, stdio-safer.m4, unistd-safer.m4, unlinkdir.m4:
17836         * m4/userspec.m4, xgetcwd.m4, xreadlink.m4:
17837         Don't bother checking for string.h, stdlib.h, unistd.h.
17838         * m4/fts.m4 (gl_FUNC_FTS_CORE): Don't require
17839         AC_FUNC_LSTAT_FOLLOWS_SLASHED_SYMLINK; that's now the lstat
17840         module's job.
17841         * m4/jm-macros.m4 (gl_MACROS): Likewise.
17842         * m4/prereq.m4 (gl_PREREQ): Add gl_FUNC_LSTAT.
17843
17844         * m4/getdate.m4 (gl_C_COMPOUND_LITERALS): New macro.
17845         (gl_GETDATE): Use it.
17846
17847         * m4/mkdir-p.m4 (gl_MKDIR_PARENTS): Don't bother checking for unistd.h.
17848
17849 2005-09-22  Paul Eggert  <eggert@cs.ucla.edu>
17850
17851         Sync from coreutils.
17852
17853         * lib/.cppi-disable: Add regcomp.c, regex_internal.c, regex_internal.h,
17854         stat-time.h.
17855         * lib/argmatch.h: Include verify.h
17856         (ARGMATCH_VERIFY): Use verify rather than rolling our own.
17857         (ARGMATCH_ASSERT): Remove; unused.
17858         * lib/canonicalize.c: Assume STDC_HEADERS.
17859         * lib/exclude.c: Include "strcase.h".
17860         * lib/regex_internal.h [!defined _LIBC]: Likewise.
17861         * lib/getusershell.c: Include stdio--.h rather than stdio.h
17862         and stdio-safer.h.
17863         (getusershell): Call fopen, not fopen_safer.
17864         * lib/save-cwd.c: Include fcntl--.h rather than fcntl.h.
17865         Do not include unistd-safer.h.
17866         (save_cwd): Don't call fd_safer; no longer needed
17867         now that we include fcntl--.h.
17868
17869         * lib/getdate.y (relative_time): New type.
17870         (RELATIVE_TIME_0): New constant.
17871         (parser_control): Use relative_time instead of doing it ourselves.
17872         (%union): Add new relative_time rel member.
17873         (tYEAR_UNIT, tMONTH_UNIT, tHOUR_UNIT, tMINUTE_UNIT, tSEC_UNIT):
17874         Now typeless.
17875         (relunit, relunit_snumber): Now of type rel.
17876         (zone, rel, relunit, get_date): Adjust to above changes.
17877
17878         * lib/getloadavg.c: Include fcntl--.h rather than fcntl.h.
17879         Do not include unistd-safer.h.
17880         (getloadavg): Don't call fd_safer; no longer needed
17881         now that we include fcntl--.h.
17882
17883         * lib/mkdir-p.c (ENOSYS): Define to EEXIST if not defined.
17884         (make_dir_parents): Treat ENOSYS like EEXIST.
17885
17886         Improve quality of diagnostics on restore_cwd failure.
17887         * lib/mkdir-p.h (make_dir): Remove.  All uses replaced by mkdir.
17888         (make_dir_parents): Last arg is now int * (for errno), not bool *.
17889         * lib/mkdir-p.c (make_dir, make_dir_parents): Likewise.
17890         Rewrite "mkdir -p" algorithm to avoid the need for "stat"
17891         each time through the loop.  Do not diagnose restore_cwd failure;
17892         that is the caller's job (and perhaps the caller does not care).
17893
17894         * lib/mkdir-p.c (CLEANUP_CWD, CLEANUP): Remove.
17895         (make_dir_parents): Revamp to avoid need for CLEANUP_CWD, CLEANUP.
17896         If the file already exists but is not a directory, don't bother
17897         to try to make its parents.
17898         Close potential file descriptor leak if we can't chdir("/") (!).
17899         Don't always return true if chdir($PWD) fails; return true only
17900         if the requested action was done successfully (except for the
17901         chdir($PWD)).
17902         Don't log final directory unless we actually made it.
17903         Refactor to avoid duplicate code to fix up permissions.
17904         Don't attempt to fix up parent permissions if chdir($PWD) fails.
17905
17906         * lib/strftime.c (my_strftime): Rewrite the previous change slightly,
17907         to make it a bit faster and (I hope) clearer.
17908         * lib/strftime.c (my_strftime): Add support for %:z, %::z, %:::z.
17909         Fix bug in formats like %2N.
17910
17911         * lib/verify.h: New file.
17912
17913 2005-09-22  Paul Eggert  <eggert@cs.ucla.edu>
17914
17915         Sync from coreutils.
17916         * m4/getaddrinfo.m4 (gl_PREREQ_GETADDRINFO): Check for netinet/in.h.
17917
17918 2005-09-22  Jim Meyering  <jim@meyering.net>
17919
17920         Sync from coreutils.
17921
17922         * m4/lstat.m4 (gl_FUNC_LSTAT):
17923         Use AC_LIBSOURCES to require lstat.c and lstat.h.
17924         Remove obsolete comment.
17925         * m4/xreadlink.m4: Use AC_LIBSOURCES and AC_LIBOBJ.
17926         * m4/xstrtod.m4: Likewise.
17927
17928         * m4/openat.m4 (gl_FUNC_OPENAT): Add openat-die.c.
17929
17930 2005-09-22  Jim Meyering  <jim@meyering.net>
17931
17932         Sync from coreutils.
17933
17934         * lib/backupfile.c: Use ARGMATCH_VERIFY, just in case.
17935
17936         * lib/posixtm.c (posixtime) [lint]: Initialize *all* of tm0, not just
17937         the .tm_year member, since otherwise gcc-4.0 would now warn about
17938         tm_zone, tm_gmtoff, tm_isdst, tm_yday, tm_wday.
17939
17940         * lib/quotearg.c (quotearg_n_options): Change code to be suboptimal, in
17941         order to avoid an unsuppressible warning from gcc on 64-bit systems.
17942
17943         * lib/getdate.y (get_date): Undo part of the 2005-04-04 change, so that
17944         the command "date -d'2005-03-27 +1 day'" succeeds once again, even
17945         when run in a time zone for which daylight savings time is in effect
17946         for the starting date.
17947
17948         * lib/mkdir-p.c (make_dir_parents): Don't let a failed chdir($PWD)
17949         stop us from restricting permissions of just-created absolute-named
17950         directories.
17951         * lib/mkdir-p.c (CLEANUP_CWD): Return *true*, not false when failing
17952         to restore initial working directory.
17953         * lib/mkdir-p.c (make_dir_parents): New parameter:
17954         different_working_dir, to tell caller if/when we change the working
17955         directory and are unable to return to the initial one.
17956         * lib/mkdir-p.h (make_dir_parents): Update prototype.
17957         * lib/mkdir-p.c (CLEANUP_CWD): Change one more `return 1' to
17958         `return false'.  This fixes a bug introduced on 2004-07-30.
17959
17960         * lib/openat.c (fdopendir): Be sure to close the supplied
17961         file descriptor before returning.  This makes our replacement
17962         implementation a little closer to Solaris's, where fdopendir
17963         ties the file descriptor to the returned DIR* pointer.
17964         * lib/openat.c (unlinkat): New function.
17965         * lib/openat.h (unlinkat): Add prototype.
17966         * lib/openat-die.c (openat_save_fail): Rename from openat_save_die.
17967         (openat_restore_fail): Rename from openat_restore_die.
17968         * lib/openat.c, openat.h: Reflect s/_die/_fail/ renaming.
17969
17970         Provide an alternative to exiting immediately upon save_cwd or
17971         restore_cwd failure.  Now, an application can arrange e.g.,
17972         to perform a longjump in that case.
17973         * lib/openat.c: Include dirname.h.
17974         Use IS_ABSOLUTE_FILE_NAME rather than testing for leading slash.
17975         (rpl_openat, fdopendir, fstatat): Call openat_save_die
17976         and openat_restore_die rather than calling error directly.
17977         Don't include "error.h" or "exitfail.h"; they're no longer needed.
17978
17979         * lib/openat-die.c (openat_save_die, openat_restore_die): New file.
17980         * lib/openat.h (openat_save_die, openat_restore_die): Declare and
17981         define.
17982
17983         * lib/strftime.c [FPRINTFTIME] (fprintftime): Provide a new interface:
17984         size_t fprintftime (FILE *fp, char const *fmt, struct tm const *tm,
17985                             int utc, int nanoseconds);
17986         Background:
17987         date should not have to allocate a megabyte of virtual memory to
17988         handle a format argument like +%1048575T.  When implemented with
17989         strftime, it must allocate such a buffer, use strftime to fill it
17990         in, print it, then free it.
17991         With fprintftime, it simply prints everything and exits.
17992         With no need for memory allocation, that's one fewer way to fail.
17993         * lib/strftime.c (my_strftime): Parse the colons of %:::z *after* the
17994         optional field width, not before, so we accept %9:z, not %:9z.
17995         (my_strftime): Be sure to use L_('x') for literals.
17996
17997         * lib/backupfile.c, lib/canon-host.c, lib/canonicalize.c, lib/chown.c:
17998         * lib/cloexec.c, lib/dup-safer.c, lib/dup2.c, lib/euidaccess.c:
17999         * lib/fd-safer.c, lib/fileblocks.c, lib/fopen-safer.c, lib/fsusage.c:
18000         * lib/ftruncate.c, lib/getcwd.c, lib/getcwd.h, lib/getloadavg.c:
18001         * lib/getopt_.h, lib/getpagesize.h, lib/getugroups.c:
18002         * lib/group-member.c, lib/human.h, lib/idcache.c, lib/mkdir-p.c:
18003         * lib/mountlist.c, lib/nanosleep.c, lib/pathmax.h, lib/physmem.c:
18004         * lib/posixver.c, lib/putenv.c, lib/raise.c, lib/safe-read.c:
18005         * lib/same.c, lib/save-cwd.c, lib/setenv.c, lib/settime.c:
18006         * lib/tempname.c, lib/unlinkdir.c, lib/unsetenv.c, lib/userspec.c:
18007         * lib/xgethostname.c, lib/xreadlink.c:
18008         Assume HAVE_UNISTD_H, i.e., include <unistd.h> unconditionally.
18009
18010         * lib/chown.c, lib/cloexec.c, lib/dup-safer.c, lib/dup2.c:
18011         * lib/fsusage.c, lib/getcwd.c, lib/getloadavg.c, lib/mountlist.c:
18012         * lib/openat.h, lib/save-cwd.c, lib/tempname.c:
18013         Assume HAVE_FCNTL_H (i.e., include <fcntl.h> unconditionally,
18014         and don't include <sys/file.h>).
18015
18016 2005-09-22  Eric Blake  <ebb9@byu.net>  (tiny change)
18017
18018         Sync from coreutils.
18019
18020         * lib/getloadavg.c (getloadavg) [__CYGWIN__]: Port to cygwin.
18021         [__linux__]: Allocate a big enough buffer for /proc/loadavg.
18022         [!LDAV_DONE]: Avoid unused variable warning.
18023
18024 2005-09-21  Bruno Haible  <bruno@clisp.org>
18025
18026         * lib/unicodeio.h (unicode_to_mb): New declaration.
18027
18028 2005-09-20  Derek Price  <derek@ximbiot.com>
18029
18030         * lib/getaddrinfo.c: Don't include <netdb.h> included from
18031         getaddrinfo.h.
18032
18033 2005-09-20  Bruno Haible  <bruno@clisp.org>
18034
18035         * gnulib-tool: Remove trailing slashes from the values specified for
18036         --source-base, --m4-base, --tests-base, --aux-dir.
18037         Suggested by Simon Josefsson <jas@extundo.com>.
18038
18039 2005-09-20  Bruno Haible  <bruno@clisp.org>
18040
18041         * gnulib-tool (func_all_modules, func_modules_transitive_closure,
18042         func_modules_to_filelist, func_import, func_create_testdir): Make all
18043         sorting results locale-independent, so that gnulib-cache.m4 doesn't
18044         change when gnulib-tool is invoked in a different locale.
18045
18046 2005-09-19  Simon Josefsson  <jas@extundo.com>
18047
18048         * m4/socklen.m4: Fix typo.
18049
18050 2005-09-19  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
18051
18052         Use a consistent style for including <config.h>.
18053         * lib/__fpending.c, lib/acl.c, lib/argmatch.c, lib/argp-help.c,
18054         lib/argp-parse.c, lib/argp-pvh.c, lib/backupfile.c, lib/basename.c,
18055         lib/c-stack.c, lib/calloc.c, lib/check-version.c, lib/cloexec.c,
18056         lib/closeout.c, lib/copy-file.c, lib/creat-safer.c, lib/cycle-check.c,
18057         lib/dirfd.c, lib/dirname.c, lib/dup-safer.c, lib/dup2.c,
18058         lib/euidaccess.c, lib/exclude.c, lib/exitfail.c, lib/fatal-signal.c,
18059         lib/fd-safer.c, lib/file-type.c, lib/fileblocks.c, lib/filemode.c,
18060         lib/filenamecat.c, lib/findprog.c, lib/fnmatch.c, lib/fopen-safer.c,
18061         lib/free.c, lib/fsusage.c, lib/ftruncate.c, lib/full-write.c,
18062         lib/fwriteerror.c, lib/getaddrinfo.c, lib/getcwd.c, lib/getdelim.c,
18063         lib/getline.c, lib/getlogin_r.c, lib/getndelim2.c, lib/getnline.c,
18064         lib/getopt1.c, lib/getpass.c, lib/group-member.c, lib/hard-locale.c,
18065         lib/hash-pjw.c, lib/hash.c, lib/human.c, lib/idcache.c,
18066         lib/inet_ntop.c, lib/isdir.c, lib/long-options.c, lib/malloc.c,
18067         lib/memcasecmp.c, lib/memcmp.c, lib/memcoll.c, lib/memcpy.c,
18068         lib/memmove.c, lib/mkdir-p.c, lib/modechange.c, lib/mountlist.c,
18069         lib/open-safer.c, lib/physmem.c, lib/pipe-safer.c, lib/pipe.c,
18070         lib/poll.c, lib/posixver.c, lib/progname.c, lib/progreloc.c,
18071         lib/putenv.c, lib/quote.c, lib/quotearg.c, lib/readline.c,
18072         lib/readlink.c, lib/realloc.c, lib/regex.c, lib/rename.c, lib/rmdir.c,
18073         lib/rpmatch.c, lib/safe-read.c, lib/same.c, lib/save-cwd.c,
18074         lib/savedir.c, lib/sig2str.c, lib/strcspn.c, lib/strerror.c,
18075         lib/stripslash.c, lib/strncasecmp.c, lib/strndup.c, lib/strnlen.c,
18076         lib/strnlen1.c, lib/strsep.c, lib/strstr.c, lib/strtod.c,
18077         lib/strtoimax.c, lib/strtol.c, lib/strverscmp.c, lib/tempname.c,
18078         lib/time_r.c, lib/userspec.c, lib/utimecmp.c, lib/version-etc-fsf.c,
18079         lib/version-etc.c, lib/wait-process.c, lib/xalloc-die.c, lib/xgetcwd.c,
18080         lib/xmalloc.c, lib/xmemcoll.c, lib/xnanosleep.c, lib/xreadlink.c,
18081         lib/xsetenv.c, lib/xstrndup.c, lib/xstrtoimax.c, lib/xstrtol.c,
18082         lib/xstrtoumax.c, lib/yesno.c:
18083         Standardize inclusion of config.h.
18084         * lib/__fpending.h, lib/dirfd.h, lib/getdate.h, lib/human.h,
18085         lib/inttostr.h:  Removed inclusion of config.h from header files.
18086         * lib/inttostr.c:  Adjusted in-tree users.
18087         * lib/timespec.h: Remove superfluous warning to include config.h.
18088         * lib/atexit.c, lib/chdir-long.c, lib/chown.c, lib/fchown-stub.c,
18089         lib/getgroups.c, lib/gettimeofday.c, lib/lchown.c, lib/lstat.c,
18090         lib/mkdir.c, lib/mkstemp.c, lib/nanosleep.c, lib/openat.c, lib/raise.c,
18091         lib/readtokens0.c, lib/readutmp.c, lib/unlinkdir.c: Guard inclusion of
18092         config.h with HAVE_CONFIG_H.
18093
18094 2005-09-19  Jim Meyering  <jim@meyering.net>
18095
18096         * modules/pathmax (License): Change to LGPL.
18097
18098 2005-09-19  Derek Price  <derek@ximbiot.com>
18099
18100         * config/srclist.txt: glibc's glob.h is now in lib/glob-libc.h.
18101
18102 2005-09-19  Bruno Haible  <bruno@clisp.org>
18103
18104         * gnulib-tool (import): Provide default for --tests-base.
18105
18106 2005-09-19  Bruno Haible  <bruno@clisp.org>
18107
18108         * doc/quote.texi: New file, extracted from gnulib.texi.
18109         * doc/ctime.texi: New file, extracted from gnulib.texi.
18110         * doc/inet_ntoa.texi: New file, extracted from gnulib.texi.
18111         * doc/gnulib-tool.texi: New file, extracted from gnulib.texi.
18112         * doc/gnulib.texi: Include them.
18113
18114 2005-09-18  Bruno Haible  <bruno@clisp.org>
18115
18116         Portability fix.
18117         * gnulib-tool (func_readlink): New function.
18118         (func_ln_if_changed): Use it.
18119
18120 2005-09-18  Bruno Haible  <bruno@clisp.org>
18121
18122         * gnulib-tool: Support --with-tests also with --import.
18123         (func_emit_tests_Makefile_am): Use variables $m4base and $testsbase.
18124         (func_import): Use variables $testsbase and $inctests. Emit a
18125         gl_TESTS_BASE form into gnulib-cache.m4. Create $testsbase/Makefile.am.
18126         Remind the user to add AC_CONFIG_FILES($testsdir/Makefile) and
18127         SUBDIRS += $testsdir.
18128         (func_create_testdir): Update.
18129
18130 2005-09-18  Bruno Haible  <bruno@clisp.org>
18131
18132         * gnulib-tool: Revise --dry-run implementation. Use variable $doit
18133         instead of $dry_run.
18134         (func_cp_if_changed, func_mv_if_changed): Remove functions.
18135         (func_ln_if_changed): Don't handle dry-run here.
18136         (func_import): In dry-run mode, detect more precisely which actions
18137         would be performed, and don't use "...ing" verbs.
18138
18139 2005-09-18  Bruno Haible  <bruno@clisp.org>
18140
18141         * gnulib-tool (func_tmpdir): New function, taken from GNU gettextize.
18142         (func_import): Use join on two temporary files instead of three nested
18143         loops, in order to determine which files are new or old.
18144
18145 2005-09-18  Bruno Haible  <bruno@clisp.org>
18146
18147         * gnulib-tool (func_import): Comment out code that spits out the
18148         new files with --dry-run.
18149
18150 2005-09-18  Bruno Haible  <bruno@clisp.org>
18151
18152         * doc/gnulib.texi (Invoking gnulib-tool): 50% rewritten.
18153
18154 2005-09-16  Paul Eggert  <eggert@cs.ucla.edu>
18155
18156         * lib/stat-time.h: New file.
18157         * lib/timespec.h (ST_TIME_CMP_NS, ST_TIME_CMP, ATIME_CMP, CTIME_CMP):
18158         (MTIME_CMP, TIMESPEC_NS): Remove.  Now done by stat-time.h,
18159         in a different way.
18160         (timespec_cmp): New function.
18161         * lib/utimecmp.c: Include stat-time.h.
18162         (SYSCALL_RESOLUTION): Depend on whether various struct stat
18163         members exist, not on the obsolescent ST_MTIM_NSEC.
18164         (utimecmp): Use the new stat-time functions rater than TIMESPEC_NS.
18165
18166 2005-09-16  Paul Eggert  <eggert@cs.ucla.edu>
18167
18168         * config/srclist.txt: Remove glibc bug 1033 and uncomment mktime.c.
18169
18170 2005-09-16  Paul Eggert  <eggert@cs.ucla.edu>
18171
18172         * MODULES.html.sh (File system functions): Add stat-time.
18173         * modules/stat-time: New file.
18174         * modules/timespec (Files): Remove m4/st_mtim.m4; this
18175         is now done in a different way, by the stat-time module.
18176         * modules/utimecmp (Depends-on): Add stat-time.
18177
18178 2005-09-15  Paul Eggert  <eggert@cs.ucla.edu>
18179
18180         * m4/st_mtim.m4: Remove.  Superseded by...
18181         * m4/stat-time.m4: New file.
18182         * m4/timespec.m4 (gl_TIMESPEC): Require AC_C_INLINE.
18183         Do not invoke AC_STRUCT_ST_MTIM_NSEC; no longer needed.
18184
18185 2005-09-15  Derek Price  <derek@ximbiot.com>
18186
18187         * m4/strstr.m4 (gl_FUNC_STRSTR): Don't define strstr here.
18188
18189 2005-09-15  Derek Price  <derek@ximbiot.com>
18190
18191         * lib/regex_internal.h: Blank `pure' for GNUC < 3.
18192         * lib/regex_internal.c: Ditto, using this...
18193         (__GNUC_PREREQ): ...new macro.
18194         * lib/regcomp.c, regexec.c: Blank `always_inline' for GNUC < 3.1
18195         using...
18196         (__GNUC_PREREQ): ...this new macro.
18197
18198         * lib/strstr.h: Include string.h. Define strstr as a macro here.
18199
18200 2005-09-15  Derek Price  <derek@ximbiot.com>
18201             Paul Eggert  <eggert@cs.ucla.edu>
18202
18203         * lib/regcomp.c, regexec.c, regex_internal.c: Back out previous
18204         changes, consolidating in...
18205         * lib/regex_internal.h: ...this file.
18206
18207 2005-09-13  Jim Meyering  <jim@meyering.net>
18208
18209         * lib/canon-host.c: Filter through gnu indent and reword comments
18210         slightly.
18211         * lib/canon-host.h (ch_strerror_r): Tweak cpp indentation and spacing.
18212
18213 2005-09-13  Derek Price  <derek@ximbiot.com>
18214
18215         * lib/canon-host.c (canon_host_r): Set *cherror on memory allocation
18216         failure.
18217         Reported by Jim Meyering  <jim@meyering.net>.
18218
18219 2005-09-12  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>  (tiny change)
18220
18221         * lib/base64.c: Typo.
18222         (base64_encode): Put b64str in initialized data section.
18223
18224 2005-09-12  Paul Eggert  <eggert@cs.ucla.edu>
18225
18226         Merge glibc and coreutils changes into gnulib, plus a few
18227         extra fixes.
18228         * lib/md5.c: Use #error rather than a string.
18229         (CYCLIC): New macro, from glibc source.  Use it instead of rol.
18230         * lib/md5.h (__GNUC_PREREQ, __THROW): Define if not defined already.
18231         (__attribute__): Define to empty for non recent-GCC.
18232         (__md5_buffer, __md5_finish_ctx, __md5_init_ctx, __md5_process_block):
18233         (__md5_process_bytes, __md5_read_ctx, __md5_stream):
18234         Renamed from their non-__ counterparts, with new macros replacing
18235         them if not _LIBC.  Add __THROW attribute.
18236         (rol): Remove.
18237         (struct md5_ctx): Align buffer if using GCC.
18238         * lib/sha1.h (struct sha1_ctx): Likewise.
18239         * lib/sha1.c (SWAP): Renamed from the NOTSWAP.  All uses changed.
18240         The old name was backwards.
18241         (NOTSWAP): Remove; not used.
18242         (rol): New macro, moved here from md5.h.
18243         (sha1_process_block): Remove a FIXME that doesn't make sense.
18244
18245 2005-09-12  Derek Price  <derek@ximbiot.com>
18246
18247         Return usable errors from canon-host.
18248         * lib/canon-host.h: New file.
18249         * lib/canon-host.c (canon_host): Wrap...
18250         (canon_host_r): ...this new function, which now relies exclusively on
18251         getaddrinfo.
18252         (ch_strerror): New function.
18253         (last_cherror): New global.
18254         * lib/getaddrinfo.c: Move include of getaddrinfo.h first to test
18255         interface.
18256         (getaddrinfo): Add AI_CANONNAME functionality.  Don't do arithmetic on
18257         void *.
18258         (freeaddrinfo): Free ai->ai_canonname when set.
18259
18260 2005-09-12  Derek Price  <derek@ximbiot.com>
18261
18262         Make canon-host require getaddrinfo.
18263         * m4/canon-host.m4 (gl_CANON_HOST): Remove most dependencies.
18264         AC_LIBSOURCE canon-host.h.  Call...
18265         (gl_PREREQ_CANON_HOST): ...this new function, which requires
18266         gl_GETADDRINFO.
18267         * m4/getaddrinfo.m4 (gl_GETADDRINFO): Compile gai_strerror when needed.
18268
18269 2005-09-12  Derek Price  <derek@ximbiot.com>
18270
18271         * modules/canon-host: Add canon-host.h.  Depend on getaddrinfo.  Make
18272         LGPL.
18273         * modules/getaddrinfo: Add link to opengroup spec.  Depend on strdup.
18274
18275 2005-09-12  Derek Price  <derek@ximbiot.com>
18276
18277         * lib/gai_strerror.c: Include config.h when available.  Include
18278         getaddrinfo.h before other headers to test interface.
18279         Reported by Larry Jones <lawrence.jones@ugs.com>.
18280
18281 2005-09-12  Derek Price  <derek@ximbiot.com>
18282             Paul Eggert  <eggert@cs.ucla.edu>
18283
18284         * modules/glob (Files): Add glob-libc.h.
18285
18286 2005-09-12  Derek Price  <derek@ximbiot.com>
18287             Paul Eggert  <eggert@cs.ucla.edu>
18288
18289         * m4/glob.m4 (gl_GLOB_SUBSTITUTE): AC_LIBSOURCES for glob.c,
18290         glob_.h, glob-libc.h.
18291         (gl_PREREQ_GLOB): Remove _SYS_CDEFS_H hack; no longer needed.
18292
18293 2005-09-12  Derek Price  <derek@ximbiot.com>
18294             Paul Eggert  <eggert@cs.ucla.edu>
18295
18296         * lib/glob-libc.h: Renamed from glob_.h.  The new version is
18297         taken from libc's glob.h, except with '#ifdef __GLOB_GNULIB'
18298         protecting things that should be done only in gnulib contexts.
18299         * lib/glob_.h: New file, containing only the glob things needed for
18300         gnulib.
18301         (GLOB_PREFIX): Remove.  All uses changed to look for __GLOB_GNULIB.
18302         (__GLOB_CONCAT, __GLOB_XCONCAT, __GLOB_ID): Remove; no longer needed.
18303         (glob, globfree, glob_pattern_p): Now defined simply in terms of
18304         rpl_glob, rpl_globfree, rpl_glob_pattern_p.
18305         (__GLOB_GNULIB): New macro, to keep the glob.h changes clearer
18306         and to respect the namespace rules better.
18307
18308 2005-09-08  Simon Josefsson  <jas@extundo.com>
18309
18310         * modules/socklen: New file.
18311
18312 2005-09-08  Simon Josefsson  <jas@extundo.com>
18313
18314         * m4/socklen.m4: New file.
18315
18316 2005-09-08  Paul Eggert  <eggert@cs.ucla.edu>
18317
18318         * modules/utimens (Files): Add m4/utimbuf.m4, since
18319         m4/utimens.m4 requires gl_CHECK_TYPE_STRUCT_UTIMBUF.
18320         Reported by Sergey Poznyakoff.
18321
18322 2005-09-08  Paul Eggert  <eggert@cs.ucla.edu>
18323
18324         * lib/glob.c (glob, globfree, __glob_pattern_p): Use old-style function
18325         definitions, since that's the preferred style in glibc.
18326         Fix a minor spacing issue, and update copyright notice to match
18327         glibc's.
18328
18329 2005-09-08  Paul Eggert  <eggert@cs.ucla.edu>
18330
18331         * config/srclist.txt: Remove glibc bug 1061; it's been fixed.
18332
18333 2005-09-06  Simon Josefsson  <jas@extundo.com>
18334
18335         * lib/getpass.c (getpass): Fix typo, test for HAVE_TCSETATTR and not
18336         TCSETATTR.  Reported by Derek Price <derek@ximbiot.com>.
18337
18338 2005-09-06  Paul Eggert  <eggert@cs.ucla.edu>
18339
18340         * lib/regex_internal.h (bitset_not): Add parens to avoid gcc -Wall
18341         warning.
18342
18343 2005-09-06  Paul Eggert  <eggert@cs.ucla.edu>
18344
18345         * config/srclist.txt: Add glibc bug 1302.
18346
18347 2005-09-05  Paul Eggert  <eggert@cs.ucla.edu>
18348
18349         Change bitset word type from unsigned int to unsigned long int,
18350         as this has better performance on typical 64-bit hosts.
18351         Port bitset code to hosts with unusual word sizes.
18352         * lib/regcomp.c (build_equiv_class, build_charclass, build_range_exp):
18353         (build_collating_symbol):
18354         Prefer bitset to re_bitset_ptr_t in prototypes, when the actual
18355         argument is a bitset.  This is merely a style issue, but it makes
18356         it clearer that an entire array is expected.
18357         (re_compile_fastmap_iter, init_dfa, init_word_char, optimize_subexps):
18358         * lib/regcomp.c (lower_subexp, parse_bracket_exp, built_charclass_op):
18359         Port to the case where bitset_word is not the same as unsigned int.
18360         * lib/regex_internal.h (bitset_set, bitset_clear, bitset_contain):
18361         (bitset_not, bitset_merge, bitset_set_all, bitset_mask):
18362         Likewise.
18363         * lib/regexec.c (check_dst_limits_calc_pos_1,
18364         check_subexp_matching_top):
18365         (build_trtable, group_nodes_into_DFAstates):
18366         Likewise.
18367         * lib/regcomp.c (re_compile_fastmap_iter, utf8_sb_map, optimize_utf8):
18368         Don't assume that SBC_MAX is a multiple of BITSET_WORD_BITS.
18369         * lib/regex_internal.h (bitset_set_all, bitset_not): Likewise.
18370         * lib/regexec.c (group_nodes_into_DFAstates): Likewise.
18371         * lib/regcomp.c (utf8_sb_map): Don't assume UINT_MAX == 0xffffffff.
18372         * lib/regcomp.c (optimize_subexps, lower_subexp):
18373         Work even if bitset_word has holes in its bitwise representation.
18374         * lib/regex_internal.h (BITSET_WORD_BITS): Likewise.
18375         * lib/regexec.c (check_dst_limits_calc_pos_1,
18376         check_subexp_matching_top):
18377         Likewise.
18378         * lib/regex_internal.c (re_string_reconstruct):
18379         Don't assume UCHAR_MAX == 255.
18380         * lib/regex_internal.h (bitset_set_all): Likewise.
18381         * lib/regex_internal.h (BITSET_WORD_BITS): Renamed from UINT_BITS.
18382         All uses changed.
18383         (BITSET_WORDS): Renamed from BITSET_UINTS.  All uses changed.
18384         (bitset_word): New type, replacing 'unsigned int' for bitset uses.
18385         All uses changed.
18386         (BITSET_WORD_MAX): New macro.
18387         (bitset_set, bitset_clear, bitset_contain, bitset_empty):
18388         (bitset_set_all, bitset_copy):  Now inline functions, not macros.
18389         (bitset_empty, bitset_copy):
18390         Prefer sizeof (bitset) to multiplying it out ourselves.
18391         (bitset_not_merge): Remove; unused.
18392         (bitset_contain): Return bool, not unsigned int with one bit on.
18393         All callers changed.
18394         * lib/regexec.c (build_trtable): Don't assume bitset has no stricter
18395         alignment than re_node_set; do this by defining a new internal
18396         type struct dests_alloc and using it to allocate memory.
18397
18398 2005-09-05  Bruno Haible  <bruno@clisp.org>
18399
18400         * gnulib-tool (func_import): Fix comparison in handling of symbolic
18401         links.
18402
18403 2005-09-04  Martin Lambers  <marlam@marlam.de>  (tiny change)
18404
18405         * modules/size_max (Makefile.am): Add size_max.h
18406
18407 2005-09-04  Derek Price  <derek@ximbiot.com>
18408
18409         * gnulib-tool (func_import): Fix reversed $symbolic logic.
18410
18411 2005-09-03  Simon Josefsson  <jas@extundo.com>
18412
18413         * gnulib-tool: Fix typo.
18414
18415 2005-09-03  Simon Josefsson  <jas@extundo.com>
18416
18417         * config/srclist.txt: Add glibc bug 1293.
18418
18419 2005-09-03  Derek Price  <derek@ximbiot.com>
18420
18421         * m4/getlogin_r (gl_GETLOGIN_R): Fix cut & paste error.
18422         From Larry Jones <lawrence.jones@ugs.com>.
18423
18424 2005-09-02  Simon Josefsson  <jas@extundo.com>
18425
18426         * modules/socklen: New file.
18427
18428 2005-09-02  Simon Josefsson  <jas@extundo.com>
18429
18430         * modules/havelib: New module.
18431
18432         * modules/gettext, modules/iconv, modules/lock, modules/readline:
18433         Use havelib.
18434
18435 2005-09-02  Paul Eggert  <eggert@cs.ucla.edu>
18436
18437         Check for arithmetic overflow when calculating sizes, to prevent
18438         some buffer-overflow issues.  These patches are conservative, in the
18439         sense that when I couldn't determine whether an overflow was possible,
18440         I inserted a run-time check.
18441         * lib/regex_internal.h (re_xmalloc, re_xrealloc, re_x2realloc): New
18442         macros.
18443         (SIZE_MAX) [!defined SIZE_MAX]: New macro.
18444         (re_alloc_oversized, re_x2alloc_oversized, re_xnmalloc):
18445         (re_xnrealloc, re_x2nrealloc): New inline functions.
18446         * lib/regcomp.c (init_dfa, analyze, build_range_exp,
18447         parse_bracket_exp):
18448         (build_equiv_class, build_charclass): Check for arithmetic overflow
18449         in size expression calculations.
18450         * lib/regex_internal.c (re_string_realloc_buffers):
18451         (build_wcs_upper_buffer, re_node_set_add_intersect):
18452         (re_node_set_init_union, re_node_set_insert, re_node_set_insert_last):
18453         (re_dfa_add_node, register_state): Likewise.
18454         * lib/regexec.c (re_search_stub, re_copy_regs, re_search_internal):
18455         (prune_impossible_nodes, push_fail_stack, set_regs, check_arrival):
18456         (build_trtable, extend_buffers, match_ctx_init, match_ctx_add_entry):
18457         (match_ctx_add_subtop, match_ctx_add_sublast): Likewise.
18458
18459 2005-09-02  Paul Eggert  <eggert@cs.ucla.edu>
18460
18461         * modules/inttostr (Files): Add m4/inttypes_h.m4, m4/stdint_h.m4,
18462         m4/ulonglong.m4.  Problem reported by Martin Lambers.
18463
18464 2005-09-02  Bruno Haible  <bruno@clisp.org>
18465
18466         Support for lib vs. lib64 distinction on biarch platforms.
18467         * m4/lib-prefix.m4 (AC_LIB_PREPARE_MULTILIB): New macro.
18468         (AC_LIB_PREFIX): Require it. Use $acl_libdirstem instead of 'lib'.
18469         * m4/lib-link.m4 (AC_LIB_LINKFLAGS_BODY): Likewise.
18470
18471 2005-09-02  Bruno Haible  <bruno@clisp.org>
18472
18473         * gnulib-tool (import): In the other first-use case, provide defaults
18474         as well.
18475
18476 2005-09-02  Bruno Haible  <bruno@clisp.org>
18477
18478         * config/srclist.txt: lib-link.m4 and lib-prefix.m4 currently have
18479         patches not yet found in the latest gettext release.
18480
18481 2005-09-01  Paul Eggert  <eggert@cs.ucla.edu>
18482
18483         * lib/glob.c (GET_LOGIN_NAME_MAX): Renamed from LOGIN_NAME_MAX,
18484         to avoid a collision with bits/local_lim.h in glibc.
18485         All uses changed.  Problem reported by Dmitry V. Levin in
18486         <http://sources.redhat.com/bugzilla/show_bug.cgi?id=1060>.
18487
18488         * lib/regex_internal.c (build_wcs_upper_buffer): Fix portability
18489         bugs in int versus size_t comparisons.
18490         (re_string_context_at): Fix bug where the code assumed that
18491         Idx is signed.
18492
18493         Use bool where appropriate.
18494         * lib/regcomp.c (re_set_fastmap): ICASE arg is bool, not int.
18495         All callers changed.
18496         (calc_eclosure_iter): Likewise, for ROOT arg.
18497         (parse_bracket_element): Likewise, for ACCEPT_HYPHEN arg.
18498         (build_charclass_op): Likewise, for NON_MATCH arg.
18499         * lib/regex_internal.c (re_string_allocate, re_string_construct):
18500         (re_string_construct_common): Likewise, for ICASE arg.
18501         * lib/regexec.c (re_search_2_stub, re_search_stub):
18502         Likewise, for RET_LEN arg.
18503         (check_matching): Likewise, for FL_LONGEST_MATCH arg.
18504         (set_regs): Likewise, for FL_BACKTRACK arg.
18505         * lib/regcomp.c (re_compile_fastmap_iter, optimize_utf8):
18506         (duplicate_node_closure, calc_inveclosure, calc_eclosure):
18507         (calc_eclosure_iter, parse_bracket_exp):
18508         Use bool for internal variables that are booleans.
18509         * lib/regexec.c (re_search_internal, check_matching,
18510         proceed_next_node):
18511         (set_regs, build_sifted_states, sift_states_bkref):
18512         (check_arrival_add_next_nodes, check_arrival_expand_ecl_sub):
18513         (expand_bkref_cache, build_trtable, group_nodes_into_DFAstates):
18514         (find_collation_sequence_value):
18515         Likewise.
18516         * lib/regex_internal.c (re_node_set_insert, re_node_set_insert_last):
18517         (re_node_set_compare):
18518         Return bool, not int. All callers changed.
18519         * lib/regexec.c (check_halt_node_context, check_dst_limits):
18520         (build_trtable, check_node_accept): Likewise.
18521         * lib/regex_internal.h: Include stdbool.h.
18522
18523         Fix bugs uncovered when converting to bool.
18524         * lib/regcomp.c (calc_eclosure_iter): Check for storage allocation
18525         failure instead of charging ahead blindly.
18526         * lib/regex_internal.c (register_state): Likewise.
18527         * lib/regexec.c (re_search_2_stub): Use simpler method than boolean
18528         for freeing internal storage.
18529         (group_nodes_into_DFA_states): Use unsigned int, not int, for
18530         bitset pieces used as boolean, to avoid undefined behavior
18531         on hosts that do int overflow checking.
18532
18533 2005-09-01  Paul Eggert  <eggert@cs.ucla.edu>
18534
18535         * config/srclist.txt: Add glibc bugs 1285-1287.
18536
18537 2005-09-01  Jim Meyering  <jim@meyering.net>
18538
18539         * m4/lchown.m4: Require gl_FUNC_CHOWN, for the definition of
18540         CHOWN_MODIFIES_SYMLINK, which is used by lchown.c.
18541         Require gl_STAT_MACROS, too.
18542
18543 2005-09-01  Bruno Haible  <bruno@clisp.org>
18544
18545         * gnulib-tool (import): In the first-use case, provide defaults.
18546
18547 2005-09-01  Bruno Haible  <bruno@clisp.org>
18548
18549         * gnulib-tool (func_import): Remove the .tmp files.
18550
18551 2005-09-01  Bruno Haible  <bruno@clisp.org>
18552
18553         * gnulib-tool (func_import): Fix handling of symbolic links.
18554
18555 2005-08-31  Paul Eggert  <eggert@cs.ucla.edu>
18556
18557         On 64-bit hosts (where size_t is 64 bits and int is 32 bits), the
18558         old glibc regex code mishandles strings longer than 2**31 bytes.
18559         This patch fixes this when the regex code is used in gnulib
18560         (i.e., outside glibc).
18561
18562         This patch should not affect the use of the regex code inside
18563         glibc.  No doubt this problem also needs to be handled for glibc
18564         as well, but the result will be an incompatible change to the
18565         glibc ABI, and the old ABI will have to be supported too.  That
18566         can be the the subject for another patch.
18567
18568         * lib/regex.h (_REGEX_LARGE_OFFSETS): New feature-test macro,
18569         governing whether the rest of this patch is active.  By default,
18570         the macro is disabled and the patch has no effect.
18571         (regoff_t) [defined _REGEX_LARGE_OFFSETS]: Define to off_t, not int.
18572         (__re_idx_t, __re_size_t, __re_long_size_t): New types.
18573         (struct re_pattern_buffer, re_search, re_search_2, re_match):
18574         (re_match_2, re_set_registers): Use the new types.
18575         * lib/regex_internal.h (Idx, re_hashval_t): New types.
18576         (REG_MISSING, REG_ERROR, REG_VALID_INDEX, REG_VALID_NONZERO_INDEX):
18577         New macros.
18578         (re_node_set, re_charset_t, re_token_t, re_string_realloc_buffers):
18579         (re_string_context_at, bin_tree_t, re_dfastate_t):
18580         (struct re_state_table_entry, state_array_t, re_sub_match_last_t):
18581         (re_sub_match_top_t, re_match_context_t, re_sift_context_t):
18582         (struct re_fail_stack_ent_t, struct re_fail_stack_t, struct re_dfa_t):
18583         (re_string_char_size_at, re_string_wchar_at):
18584         (re_string_elem_size_at):
18585         Use the new types and macros to port to 64-bit hosts.
18586         Use unsigned types for internal values, so that the code
18587         mostly works even for arrays larger than SSIZE_MAX.
18588         * lib/regcomp.c (re_compile_internal, init_dfa, duplicate_node):
18589         (search_duplicated_node, calc_eclosure_iter, fetch_number):
18590         (parse_reg_exp, parse_branch, parse_expression, parse_sub_exp):
18591         (build_equiv_class, build_charclass, re_compile_fastmap_iter):
18592         (free_dfa_content, create_initial_state, optimize_utf8, analyze):
18593         (optimize_subexps, calc_first, link_nfa_nodes, duplicate_node_closure):
18594         (calc_inveclosure, parse_dup_op, build_range_exp):
18595         (build_collating_symbol, parse_bracket_exp, build_charclass_op):
18596         (fetch_number, create_token_tree, mark_opt_subexp):
18597         Likewise.
18598         * lib/regex_internal.c (re_string_construct_common,
18599         create_ci_newstate):
18600         (create_cd_newstate, re_string_allocate, re_string_construct):
18601         (re_string_realloc_buffers, build_wcs_upper_buffer):
18602         (re_string_skip_chars, build_upper_buffer, re_string_translate_buffer):
18603         (re_string_reconstruct, re_string_peek_byte_case):
18604         (re_string_fetch_byte_case, re_string_context_at):
18605         (re_node_set_alloc, re_node_set_init_1, re_node_set_init_2):
18606         (re_node_set_init_copy, re_node_set_add_intersect):
18607         (re_node_set_init_union, re_node_set_merge, re_node_set_insert):
18608         (re_node_set_insert_last, re_node_set_compare, re_node_set_contains):
18609         (re_node_set_remove_at, re_dfa_add_node, calc_state_hash):
18610         (re_acquire_state, re_acquire_state_context, register_state):
18611         Likewise.
18612         * lib/regex.c (match_ctx_init, match_ctx_add_entry,
18613         search_cur_bkref_entry):
18614         (match_ctx_add_subtop, match_ctx_add_sublast, sift_ctx_init):
18615         (re_search_internal, re_search_2_stub, re_search_stub)
18616         (re_copy_regs, check_matching, check_halt_state_context, update_regs):
18617         (push_fail_stack, sift_states_iter_mb, build_sifted_states):
18618         (update_cur_sifted_state, check_dst_limits):
18619         (check_dst_limits_calc_pos_1, check_dst_limits_calc_pos):
18620         (check_subexp_limits, sift_states_bkref, merge_state_array):
18621         (check_subexp_matching_top, get_subexp, get_subexp_sub):
18622         (find_subexp_node, check_arrival, check_arrival_add_next_nodes):
18623         (check_arrival_expand_ecl, check_arrival_expand_ecl_sub):
18624         (expand_bkref_cache, check_node_accept_bytes):
18625         (group_nodes_into_DFAstates, check_node_accept, regexec, re_match):
18626         (re_search, re_match_2, re_search_2, prune_impossible_nodes):
18627         (acquire_init_state_context, check_halt_node_context):
18628         (proceed_next_node, pop_fail_stack, set_regs, free_fail_stack_return):
18629         (sift_states_backward, clean_state_log_if_needed):
18630         (sub_epsilon_src_nodes, add_epsilone_src_nodes, merge_state_with_log):
18631         (find_recover_state, transit_state_sb, transit_state_mb):
18632         (transit_state_bkref, build_trtable, match_ctx_clean):
18633         Likewise.
18634         * lib/regcomp.c (parse_dup_op): Add an extra test if Idx is unsigned,
18635         to work around an assumption that REG_MISSING is negative.
18636
18637         * lib/regcomp.c (re_comp) [defined _REGEX_RE_COMP || defined _LIBC]:
18638         (seek_collating_symbol_entry) [defined _LIBC]:
18639         (lookup_collation_sequence_value) [defined _LIBC]:
18640         (build_range_exp, build_collating_symbol) [defined _LIBC]:
18641         Use prototypes rather than old-style function definitions.
18642         * lib/regexec.c (re_exec) [defined _REGEX_RE_COMP || defined _LIBC]:
18643         (transit_state_sb) [0]:
18644         (find_collation_sequence_value) [defined _LIBC]: Likewise.
18645
18646         * lib/regexec.c (re_search_internal): Simplify update of rm_so and
18647         rm_eo.
18648
18649         * lib/regcomp.c (re_compile_fastmap_iter, init_dfa, init_word_char):
18650         (optimize_subexps, lower_subexp):
18651         Don't assume 1<<31 has defined behavior on hosts with 32-bit int,
18652         since the signed shift might overflow.  Use 1u<<31 instead.
18653         * lib/regex_internal.h (bitset_set, bitset_clear, bitset_contain):
18654         Likewise.
18655         * lib/regexec.c (check_dst_limits_calc_pos_1,
18656         check_subexp_matching_top): Likewise.
18657
18658         * lib/regcomp.c (optimize_subexps, lower_subexp):
18659         Use CHAR_BIT rather than 8, for clarity.
18660         * lib/regexec.c (check_dst_limits_calc_pos_1):
18661         (check_subexp_matching_top): Likewise.
18662         * lib/regcomp.c (init_dfa): Make table_size unsigned, so that we don't
18663         have to worry about portability issues when shifting it left.
18664         Remove no-longer-needed test for table_size > 0.
18665         * lib/regcomp.c (parse_sub_exp): Do not shift more bits than there are
18666         in a word, as the resulting behavior is undefined.
18667         * lib/regexec.c (check_dst_limits_calc_pos_1): Likewise;
18668         in one case, a <= should have been an <, and in another case the
18669         whole test was missing.
18670         * lib/regex_internal.h (BYTE_BITS): Remove.  All uses changed to
18671         the standard name CHAR_BIT.
18672         * lib/regexec.c (match_ctx_add_entry): Don't assume that ~0 == -1;
18673         this is not true on one's complement and signed-magnitude hosts.
18674
18675         * lib/regex_internal.h (re_sub_match_top_t): Remove unused member
18676         next_last_offset.
18677         (struct re_dfa_t): Remove unused member states_alloc.
18678         * lib/regcomp.c (init_dfa): Don't initialize unused members.
18679
18680 2005-08-31  Paul Eggert  <eggert@cs.ucla.edu>
18681
18682         * m4/regex.m4 (gl_REGEX): Require AC_SYS_LARGEFILE, Define
18683         _REGEX_LARGE_OFFSETS).  Test for regoff_t/off_t bug in 64-bit
18684         and large-file glibc and in 32-bit large-file Solaris.
18685
18686 2005-08-31  Paul Eggert  <eggert@cs.ucla.edu>
18687
18688         * lib/regex_internal.c (re_string_reconstruct): Don't assume buffer
18689         lengths fit in regoff_t; this isn't true if regoff_t is the same
18690         width as size_t.
18691         * lib/regex.c (re_search_internal): 5th arg is LAST_START
18692         (= START + RANGE) instead of RANGE.  This avoids overflow
18693         problems when regoff_t is the same width as size_t.
18694         All callers changed.
18695         (re_search_2_stub): Check for overflow when adding the
18696         sizes of the two strings.
18697         (re_search_stub): Check for overflow when adding START
18698         to RANGE; if it occurs, substitute the extreme value.
18699
18700 2005-08-31  Paul Eggert  <eggert@cs.ucla.edu>
18701
18702         * config/srclist.txt: Add glibc bugs 1273, 1278-1282, 1284.
18703
18704 2005-08-31  Jim Meyering  <jim@meyering.net>
18705
18706         * lib/regcomp.c (search_duplicated_node): Make first pointer arg
18707         a pointer-to-const.
18708         * lib/regex_internal.c (create_ci_newstate, create_cd_newstate):
18709         (register_state): Likewise.
18710         * lib/regexec.c (search_cur_bkref_entry, check_dst_limits):
18711         (check_dst_limits_calc_pos_1, check_dst_limits_calc_pos):
18712         (group_nodes_into_DFAstates): Likewise.
18713
18714 2005-08-31  Jim Meyering  <jim@meyering.net>
18715
18716         * check-module: Add a FIXME comment.
18717
18718 2005-08-31  Eric Blake  <ebb9@byu.net>
18719
18720         * modules/unistd-safer (Files): Add unistd--.h.
18721         * modules/stdio-safer (Files): Add stdio--.h.
18722
18723 2005-08-31  Derek Price  <derek@ximbiot.com>
18724
18725         * lib/getdelim.c (getdelim): Return EOF on EOF.
18726         Reported by Larry Jones <lawrence.jones@ugs.com>.
18727
18728 2005-08-31  Bruno Haible  <bruno@clisp.org>
18729
18730         Avoid unnecessary diffs in the generated lib/Makefile.am.
18731         * gnulib-tool (func_emit_lib_Makefile_am): Don't write the cmd into
18732         the generated files.
18733         (func_import): Don't set cmd.
18734
18735 2005-08-31  Bruno Haible  <bruno@clisp.org>
18736
18737         * lib/strstr.c: Include <stddef.h>, for NULL.
18738         * lib/strcasestr.c: Likewise.
18739         Reported by Yoann Vandoorselaere <yoann.v@prelude-ids.com>.
18740
18741 2005-08-31  Bruno Haible  <bruno@clisp.org>
18742
18743         * gnulib-tool: New option --macro-prefix.
18744         (func_import): Use macro_prefix.
18745         (import): Handle option --macro-prefix.
18746
18747 2005-08-31  Bruno Haible  <bruno@clisp.org>
18748
18749         * gnulib-tool (import): Rename most ac_* variables to cached_*.
18750         Also use new variables cached_lgpl, cached_libtool.
18751
18752 2005-08-31  Bruno Haible  <bruno@clisp.org>
18753
18754         * gnulib-tool (func_import): Require AC_GNU_SOURCE etc. instead of
18755         always instantiating them.
18756
18757 2005-08-31  Bruno Haible  <bruno@clisp.org>
18758
18759         * gnulib-tool (func_import): Read the previous cached settings
18760         from gnulib-cache.m4 and gnulib-comp.m4. Remove files that were
18761         earlier added by gnulib but are now dropped. Warn when a gnulib file
18762         overwrites a non-gnulib file.
18763
18764 2005-08-31  Bruno Haible  <bruno@clisp.org>
18765
18766         * gnulib-tool (func_import): Generate two files gnulib-cache.m4 and
18767         gnulib-comp.m4 instead of a single gnulib.m4, to make it easy for
18768         projects that don't keep autogenerated files in CVS. Put into
18769         actioncmd only the specified modules, not the transitive closure.
18770
18771 2005-08-31  Bruno Haible  <bruno@clisp.org>
18772
18773         * gnulib-tool (func_import): Fix defaulting of $libname and $libtool.
18774         Create directories that shall be filled.
18775         (import): Don't look for gl_* macros in configure.ac. Recurse across
18776         all directories containing a gnulib-cache.m4 files, if meaningful.
18777
18778 2005-08-31  Bruno Haible  <bruno@clisp.org>
18779
18780         * gnulib-tool (func_import): Emit also a stub for gl_LIBTOOL.
18781         (import): Set seen_libtool when we see gl_LIBTOOL.
18782
18783 2005-08-31  Bruno Haible  <bruno@clisp.org>
18784
18785         * gnulib-tool (func_import): Also copy m4/gnulib-tool.m4. Omit
18786         declaration macro definitions from generated gnulib.m4.
18787
18788 2005-08-30  Oskar Liljeblad  <oskar@osk.mine.nu>
18789
18790         * lib/iconvme.h: Add prototype for iconv_alloc.
18791
18792 2005-08-29  Simon Josefsson  <jas@extundo.com>
18793
18794         * lib/iconvme.c: Fix errno.
18795
18796 2005-08-29  Bruno Haible  <bruno@clisp.org>
18797
18798         * gnulib-tool: Enclose all occurrences of $destdir in "...", so
18799         that it works when the directory contains spaces.
18800
18801 2005-08-29  Bruno Haible  <bruno@clisp.org>
18802
18803         * gnulib-tool (import): Avoid unnecessary spaces in $avoidlist.
18804
18805 2005-08-29  Bruno Haible  <bruno@clisp.org>
18806
18807         * gnulib-tool (func_import): Emit more comments into gnulib.m4.
18808         Emit more advice.
18809
18810 2005-08-29  Bruno Haible  <bruno@clisp.org>
18811         and Stepan Kasal  <kasal@ucw.cz>
18812
18813         * check-module: If more parameters are given, check each of them
18814         separately; add more exceptions, as noted by Jim Meyering.
18815         (check_module): New procedure.
18816         (%exempt_header): Now contains all exceptions.
18817
18818 2005-08-29  Ben Pfaff  <blp@cs.stanford.edu>
18819
18820         * modules/byteswap (Makefile.am): Fix rule to not assume GNU make.
18821
18822 2005-08-29  Oskar Liljeblad  <oskar@osk.mine.nu>
18823
18824         * lib/iconvme.c: Split iconv_string into iconv_alloc.
18825
18826 2005-08-28  Bruno Haible  <bruno@clisp.org>
18827
18828         * m4/gnulib-tool.m4: New file.
18829
18830 2005-08-27  Jim Meyering  <jim@meyering.net>
18831
18832         * modules/unistd-safer (Files): Add pipe-safer.c.
18833         * modules/fcntl-safer (Files): Add creat-safer.c.
18834
18835 2005-08-27  Jim Meyering  <jim@meyering.net>
18836
18837         * m4/stdlib-safer.m4: New file.  From coreutils.
18838         * m4/stdio-safer.m4 (gl_STDIO_SAFER): Add stdio--.h.
18839         * m4/fcntl-safer.m4 (gl_FCNTL_SAFER): Add creat-safer.c to the
18840         AC_LIBSOURCES list and arrange to compile it via AC_LIBOBJ.
18841         * m4/unistd-safer.m4 (gl_UNISTD_SAFER): Likewise, add pipe-safer.c.
18842         Add pipe-safer.c and unistd--.h to the AC_LIBSOURCES list.
18843
18844 2005-08-27  Jim Meyering  <jim@meyering.net>
18845
18846         * lib/fopen-safer.c: Merge minor changes from coreutils.
18847         * lib/dup-safer.c: Likewise.
18848         * lib/fd-safer.c: Likewise.
18849
18850         Merge from coreutils.
18851         * lib/stdio--.h: New file.
18852         * lib/stdlib--.h: New file.
18853         * lib/mkstemp-safer.c: New file.
18854
18855         GNU tar needs these.
18856         * lib/pipe-safer.c: New file.
18857         * lib/creat-safer.c: New file.
18858         * lib/fcntl--.h (creat): Define to creat_safer.
18859         * lib/fcntl-safer.h: Include <sys/types.h> and declare creat_safer.
18860         * lib/unistd--.h (pipe): Define to pipe_safer.
18861         * lib/unistd-safer.h: Declare pipe_safer.
18862
18863 2005-08-26  Simon Josefsson  <jas@extundo.com>
18864
18865         * lib/getpass.c: Use _WIN32 instead of WIN32, suggested by Bruno
18866         Haible <bruno@clisp.org>.
18867
18868 2005-08-26  Paul Eggert  <eggert@cs.ucla.edu>
18869
18870         * lib/regex_internal.h: Remove all references to
18871         RE_NO_INTERNAL_PROTOTYPES; no longer neeeded now that we assume C89
18872         or better.
18873         (bitset_not, bitset_merge, bitset_not_merge):
18874         (bitset_mask, re_string_allocate, re_string_construct):
18875         (re_string_reconstruct, re_string_destruct, re_string_elem_size_at):
18876         (re_string_char_size_at, re_string_wchar_at, re_string_peek_byte_case):
18877         (re_string_fetch_byte_case, re_node_set_alloc, re_node_set_init_1):
18878         (re_node_set_init_2, re_node_set_init_copy, re_node_set_add_intersect):
18879         (re_node_set_init_union, re_node_set_merge, re_node_set_insert):
18880         (re_node_set_insert_last, re_node_set_compare, re_node_set_contains):
18881         (re_node_set_remove_at, re_dfa_add_node, re_acquire_state):
18882         (re_acquire_state_context):
18883         Remove unnecessary forward decls.
18884         (re_string_char_size_at, re_string_wchar_at, re_string_elem_size_at):
18885         Put __attribute at function definition,
18886         now that the function decl has been removed.
18887         * lib/regex_internal.c (re_string_peek_byte_case):
18888         (re_string_fetch_byte_case, re_node_set_compare, re_node_set_contains):
18889         Likewise.
18890
18891 2005-08-25  Stepan Kasal  <kasal@ucw.cz>
18892
18893         * m4/regex.m4: Add AC_PREREQ(2.50).
18894         (gl_REGEX): If --with-included-regex was given, skip the autodetection.
18895
18896 2005-08-25  Simon Josefsson  <jas@extundo.com>
18897
18898         * m4/getpass.m4: Check for termios.h, tcgetattr, tcsetattr, and
18899         __fsetlocking.
18900
18901 2005-08-25  Simon Josefsson  <jas@extundo.com>
18902
18903         * lib/getpass.c: Add WIN32 implementation.  Conditionalize use of
18904         termios.h, tcgetattr, tcsetattr and __fsetlocking.  Remove some
18905         GLIBC specific code.
18906
18907 2005-08-25  Paul Eggert  <eggert@cs.ucla.edu>
18908
18909         Make regex safe for g++.  This fixes one real bug (an "err"
18910         that should have been "*err").  g++ problem reported by
18911         Sam Steingold.
18912         * lib/regex_internal.h (re_calloc): New macro, consistent with
18913         re_malloc etc.  All callers of calloc changed to use re_calloc.
18914         * lib/regex_internal.c (build_wcs_upper_buffer): Return reg_errcode_t,
18915         not int.  All callers changed.
18916         * lib/regcomp.c (re_compile_fastmap_iter): Don't use
18917         alloca (mb_cur_max); just use an array of size MB_LEN_MAX.
18918         * lib/regexec.c (push_fail_stack): Use re_realloc, not realloc.
18919         (find_recover_state): Change "err" to "*err"; this fixes what
18920         appears to be a real bug.
18921         (check_arrival_expand_ecl_sub): Be consistent about reg_errcode_t
18922         versus int.
18923
18924 2005-08-25  Paul Eggert  <eggert@cs.ucla.edu>
18925
18926         * modules/regex (Depends-on): Add malloc, since the code
18927         assumes that !malloc(0) means failure.
18928
18929 2005-08-25  Paul Eggert  <eggert@cs.ucla.edu>
18930
18931         * lib/regexec.c (set_regs): Don't alloca with an unbounded size.
18932
18933         alloca modernization/simplification for regex.
18934         * lib/regex.c: Remove portability cruft for alloca.  This no longer
18935         needs to be at the start of the file, and can be moved into
18936         regex_internal.h and simplified.
18937         * lib/regex_internal.h: Include <alloca.h>.
18938         (__libc_use_alloca) [!defined _LIBC]: New macro.
18939         * lib/regexec.c (build_trtable): Remove "#ifdef _LIBC", since the code
18940         now works outside glibc.
18941
18942 2005-08-25  Paul Eggert  <eggert@cs.ucla.edu>
18943
18944         * config/srclist.txt: Add glibc bugs 1241, 1245.
18945
18946 2005-08-25  Jim Meyering  <jim@meyering.net>
18947
18948         * lib/open-safer.c: Include <config.h>.
18949         Otherwise, we'd lose LARGEFILE support in any file using
18950         e.g. "fcntl--.h"
18951
18952 2005-08-25  Bruno Haible  <bruno@clisp.org>
18953
18954         * m4/minmax.m4: Require autoconf 2.52.
18955         (gl_MINMAX_IN_HEADER): Add comments. Use m4_pushdef/m4_popdef instead
18956         of define/undefine. Use AS_TR_SH and AS_TR_CPP as more robust
18957         alternatives of translit over the alphabet.
18958         Based on a patch from Stepan Kasal <kasal@ucw.cz>.
18959
18960 2005-08-24  Simon Josefsson  <jas@extundo.com>
18961
18962         * tests/test-getpass.c: New file.
18963
18964 2005-08-24  Paul Eggert  <eggert@cs.ucla.edu>
18965
18966         * m4/regex.m4 (gl_REGEX): Use POSIX-compliant spellings when testing
18967         for GNU regex features.
18968
18969 2005-08-24  Paul Eggert  <eggert@cs.ucla.edu>
18970
18971         * lib/regcomp.c (regerror): 2nd arg is 'restrict', as per POSIX.
18972         * lib/regex.h (regerror): Likewise.
18973
18974         * lib/regex.c: Do not include <sys/types.h>, as POSIX no longer
18975         requires this.  (The code never needed it.)
18976
18977         * lib/regcomp.c, regex_internal.c, regex_internal.h, regexec.c:
18978         All uses of recently-renamed identifiers changed to use the new,
18979         POSIX-compliant names.  The code will build and run just fine
18980         without these changes, but it's better to eat our own dog food
18981         and use the standard-conforming names.
18982
18983         * lib/regex.h: Fix a multitude of POSIX name space violations.
18984         These changes have an effect only for programs that define
18985         _POSIX_C_SOURCE, _POSIX_SOURCE, or _XOPEN_SOURCE; they
18986         do not change anything for programs compiled in the normal way.
18987         Also, there is no effect on the ABI.
18988
18989         (_REGEX_SOURCE): New macro.
18990         Do not include <stddef.h> if _XOPEN_SOURCE and VMS are both
18991         defined and _GNU_SOURCE is not; this fixes a name space violation.
18992
18993         Rename the following macros to obey POSIX requirements.
18994         The old names are still visible as macros if _REGEX_SOURCE is defined.
18995         (REG_BACKSLASH_ESCAPE_IN_LISTS): renamed from
18996         RE_BACKSLASH_ESCAPE_IN_LISTS.
18997         (REG_BK_PLUS_QM): renamed from RE_BK_PLUS_QM.
18998         (REG_CHAR_CLASSES): renamed from RE_CHAR_CLASSES.
18999         (REG_CONTEXT_INDEP_ANCHORS): renamed from RE_CONTEXT_INDEP_ANCHORS.
19000         (REG_CONTEXT_INDEP_OPS): renamed from RE_CONTEXT_INDEP_OPS.
19001         (REG_CONTEXT_INVALID_OPS): renamed from RE_CONTEXT_INVALID_OPS.
19002         (REG_DOT_NEWLINE): renamed from RE_DOT_NEWLINE.
19003         (REG_DOT_NOT_NULL): renamed from RE_DOT_NOT_NULL.
19004         (REG_HAT_LISTS_NOT_NEWLINE): renamed from RE_HAT_LISTS_NOT_NEWLINE.
19005         (REG_INTERVALS): renamed from RE_INTERVALS.
19006         (REG_LIMITED_OPS): renamed from RE_LIMITED_OPS.
19007         (REG_NEWLINE_ALT): renamed from RE_NEWLINE_ALT.
19008         (REG_NO_BK_BRACES): renamed from RE_NO_BK_BRACES.
19009         (REG_NO_BK_PARENS): renamed from RE_NO_BK_PARENS.
19010         (REG_NO_BK_REFS): renamed from RE_NO_BK_REFS.
19011         (REG_NO_BK_VBAR): renamed from RE_NO_BK_VBAR.
19012         (REG_NO_EMPTY_RANGES): renamed from RE_NO_EMPTY_RANGES.
19013         (REG_UNMATCHED_RIGHT_PAREN_ORD): renamed from
19014         RE_UNMATCHED_RIGHT_PAREN_ORD.
19015         (REG_NO_POSIX_BACKTRACKING): renamed from RE_NO_POSIX_BACKTRACKING.
19016         (REG_NO_GNU_OPS): renamed from RE_NO_GNU_OPS.
19017         (REG_DEBUG): renamed from RE_DEBUG.
19018         (REG_INVALID_INTERVAL_ORD): renamed from RE_INVALID_INTERVAL_ORD.
19019         (REG_IGNORE_CASE): renamed from RE_ICASE.  This renaming is a bit
19020         unusual, since we can't clash with the POSIX REG_ICASE.
19021         (REG_CARET_ANCHORS_HERE): renamed from RE_CARET_ANCHORS_HERE.
19022         (REG_CONTEXT_INVALID_DUP): renamed from RE_CONTEXT_INVALID_DUP.
19023         (REG_NO_SUB): renamed from RE_NO_SUB.
19024         (REG_SYNTAX_EMACS): renamed from RE_SYNTAX_EMACS.
19025         (REG_SYNTAX_AWK): renamed from RE_SYNTAX_AWK.
19026         (REG_SYNTAX_GNU_AWK): renamed from RE_SYNTAX_GNU_AWK.
19027         (REG_SYNTAX_POSIX_AWK): renamed from RE_SYNTAX_POSIX_AWK.
19028         (REG_SYNTAX_GREP): renamed from RE_SYNTAX_GREP.
19029         (REG_SYNTAX_EGREP): renamed from RE_SYNTAX_EGREP.
19030         (REG_SYNTAX_POSIX_EGREP): renamed from RE_SYNTAX_POSIX_EGREP.
19031         (REG_SYNTAX_ED): renamed from RE_SYNTAX_ED.
19032         (REG_SYNTAX_SED): renamed from RE_SYNTAX_SED.
19033         (_REG_SYNTAX_POSIX_COMMON): renamed from _RE_SYNTAX_POSIX_COMMON.
19034         (REG_SYNTAX_POSIX_BASIC): renamed from RE_SYNTAX_POSIX_BASIC.
19035         (REG_SYNTAX_POSIX_MINIMAL_BASIC): renamed from
19036         RE_SYNTAX_POSIX_MINIMAL_BASIC.
19037         (REG_SYNTAX_POSIX_EXTENDED): renamed from RE_SYNTAX_POSIX_EXTENDED.
19038         (REG_SYNTAX_POSIX_MINIMAL_EXTENDED): renamed from
19039         RE_SYNTAX_POSIX_MINIMAL_EXTENDED.
19040         (REG_DUP_MAX): renamed from RE_DUP_MAX.  No need to undef it.
19041         (REG_UNALLOCATED): Renamed from REGS_UNALLOCATED.
19042         (REG_REALLOCATE): Renamed from REGS_REALLOCATE.
19043         (REG_FIXED): Renamed from REGS_FIXED.
19044         (REG_NREGS): Renamed from RE_NREGS.
19045
19046         (REG_ICASE, REG_NEWLINE, REG_NOSUB): Do not depend on the values
19047         of other REG_* macros, since POSIX says the user is allowed to
19048         #undef these macros selectively.
19049
19050         (reg_errcode_t): Update comment stating what other tables need
19051         to be consistent.
19052
19053         Rename the following enum values to obey POSIX requirements.
19054         The old names are still visible as macros.
19055         (_REG_ENOSYS): Renamed from REG_ENOSYS.  Define even if _XOPEN_SOURCE
19056         is not defined, since GNU is supposed to be a superset of POSIX as
19057         much as possible, and since we want reg_errcode_t to be a signed
19058         type for implementation consistency.
19059         (_REG_NOERROR): Renamed from REG_NOERROR.
19060         (_REG_NOMATCH): Renamed from REG_NOMATCH.
19061         (_REG_BADPAT): Renamed from REG_BADPAT.
19062         (_REG_ECOLLATE): Renamed from REG_ECOLLATE.
19063         (_REG_ECTYPE): Renamed from REG_ECTYPE.
19064         (_REG_EESCAPE): Renamed from REG_EESCAPE.
19065         (_REG_ESUBREG): Renamed from REG_ESUBREG.
19066         (_REG_EBRACK): Renamed from REG_EBRACK.
19067         (_REG_EPAREN): Renamed from REG_EPAREN.
19068         (_REG_EBRACE): Renamed from REG_EBRACE.
19069         (_REG_BADBR): Renamed from REG_BADBR.
19070         (_REG_ERANGE): Renamed from REG_ERANGE.
19071         (_REG_ESPACE): Renamed from REG_ESPACE.
19072         (_REG_BADRPT): Renamed from REG_BADRPT.
19073         (_REG_EEND): Renamed from REG_EEND.
19074         (_REG_ESIZE): Renamed from REG_ESIZE.
19075         (_REG_ERPAREN): Renamed from REG_ERPAREN.
19076         (REG_ENOSYS, REG_NOERROR, REG_NOMATCH, REG_BADPAT, REG_ECOLLATE):
19077         (REG_ECTYPE, REG_EESCAPE, REG_ESUBREG, REG_EBRACK, REG_EPAREN):
19078         (REG_EBRACE, REG_BADBR, REG_ERANGE, REG_ESPACE, REG_BADRPT, REG_EEND):
19079         (REG_ESIZE, REG_ERPAREN): Now macros, not enum constants.
19080
19081         (_REG_RE_NAME, _REG_RM_NAME): New macros.
19082         (REG_TRANSLATE_TYPE): Renamed from RE_TRANSLATE_TYPE.  All uses
19083         changed.  But support the old name if the new one is not defined
19084         and if _REGEX_SOURCE.
19085
19086         Change the following member names in struct re_pattern_buffer.
19087         The old names are still supported if !_REGEX_SOURCE.
19088         The new names are always supported, regardless of _REGEX_SOURCE.
19089         (re_buffer): Renamed from buffer.
19090         (re_allocated): Renamed from allocated.
19091         (re_used): Renamed from used.
19092         (re_syntax): Renamed from syntax.
19093         (re_fastmap): Renamed from fastmap.
19094         (re_translate): Renamed from translate.
19095         (re_can_be_null): Renamed from can_be_null.
19096         (re_regs_allocated): Renamed from regs_allocated.
19097         (re_fastmap_accurate): Renamed from fastmap_accurate.
19098         (re_no_sub): Renamed from no_sub.
19099         (re_not_bol): Renamed from not_bol.
19100         (re_not_eol): Renamed from not_eol.
19101         (re_newline_anchor): Renamed from newline_anchor.
19102
19103         Change the following member names in struct re_registers.
19104         The old names are still supported if !_REGEX_SOURCE.
19105         The new names are always supported, regardless of _REGEX_SOURCE.
19106         (rm_num_regs): Renamed from num_regs.
19107         (rm_start): Renamed from start.
19108         (rm_end): Renamed from end.
19109
19110         (re_set_syntax, re_compile_pattern, re_compile_fastmap):
19111         (re_search, re_search_2, re_match, re_match_2, re_set_registers):
19112         Prepend __ to parameter names.
19113
19114         Undo yesterday's changes.
19115
19116 2005-08-24  Paul Eggert  <eggert@cs.ucla.edu>
19117
19118         * config/srclist.txt: Remove glibc bug 1233 and add 1236, which
19119         supersedes it. Add glibc bugs 1237, 1238, 1240.  Comment out
19120         lib/regex.c.
19121
19122 2005-08-24  Jim Meyering  <jim@meyering.net>
19123
19124         Sync from coreutils.
19125         * m4/fcntl-safer.m4: New file.
19126
19127         * m4/xgetcwd.m4: Use AC_LIBSOURCES and AC_LIBOBJ to indicate source
19128         and object files for this module.
19129
19130 2005-08-24  Jim Meyering  <jim@meyering.net>
19131
19132         Sync from coreutils.
19133         * lib/fcntl--.h, lib/fcntl-safer.h, lib/open-safer.c: New files.
19134
19135 2005-08-24  Jim Meyering  <jim@meyering.net>
19136
19137         * modules/xgetcwd (Makefile.am): Remove `lib_SOURCES += ...' line,
19138         now that xgetcwd.m4 requires xgetcwd.c and xgetcwd.h.
19139
19140 2005-08-24  Jim Meyering  <jim@meyering.net>
19141
19142         * modules/fcntl-safer: New module.
19143         * modules/fts (Depends-on): Add fcntl-safer.
19144         * MODULES.html.sh (File descriptor based Input/Output):
19145         Add fcntl-safer.
19146
19147 2005-08-24  Bruno Haible  <bruno@clisp.org>
19148
19149         Support for unit test modules.
19150         * modules/README: Mention tests modules.
19151         * modules/TEMPLATE-TESTS: New file.
19152         * gnulib-tool: New options --extract-tests-module, --with-tests and
19153         --tests-base (unused for the moment).
19154         (testsbase, inctests): New variables.
19155         (func_all_modules): Exclude TEMPLATE-TESTS and *-tests.
19156         (func_verify_module): Exclude TEMPLATE-TESTS.
19157         (func_verify_nontests_module, func_verify_tests_module): New functions.
19158         (func_get_dependencies): Add implicit dependency for tests modules.
19159         (func_get_tests_module): New function.
19160         (func_modules_transitive_closure): When --with-tests was specified,
19161         include the unit tests as well, unless explicitly avoided.
19162         (func_emit_lib_Makefile_am): Ignore the tests modules here.
19163         (func_emit_tests_Makefile_am): New function.
19164         (func_create_testdir): When --with-tests was specified, emit a
19165         tests/ directory.
19166         * MODULES.html.sh (Future developments): Update.
19167
19168 2005-08-24  Bruno Haible  <bruno@clisp.org>
19169
19170         * modules/tls-tests: New file.
19171         * tests/test-tls.c: New file, from GNU gettext.
19172
19173 2005-08-24  Bruno Haible  <bruno@clisp.org>
19174
19175         * modules/lock-tests: New file.
19176         * tests/test-lock.c: New file, from GNU gettext.
19177
19178 2005-08-24  Bruno Haible  <bruno@clisp.org>
19179
19180         * lib/lock.h: Add multiple inclusion guard.
19181         * lib/tls.h: Add multiple inclusion guard.
19182
19183 2005-08-24  Bruno Haible  <bruno@clisp.org>
19184
19185         * gnulib-tool: Add support for the --aux-dir option to
19186         --create-testdir, --create-megatestdir, --test, --megatest.
19187         (func_create_testdir, func_create_megatestdir): Optionally emit a
19188         AC_CONFIG_AUX_DIR directive.
19189         (create-testdir, create-megatestdir, test, megatest): Provide a
19190         default value for $auxdir.
19191
19192 2005-08-24  Bruno Haible  <bruno@clisp.org>
19193
19194         * gnulib-tool (import): Use compound statement instead of subshell
19195         where possible.
19196
19197 2005-08-24  Bruno Haible  <bruno@clisp.org>
19198
19199         * gnulib-tool (import): Change --aux-dir default to "build-aux".
19200
19201 2005-08-24  Bruno Haible  <bruno@clisp.org>
19202
19203         * gnulib-tool (func_version): Update.
19204
19205 2005-08-24  Bruno Haible  <bruno@clisp.org>
19206
19207         * gnulib-tool (func_import, func_create_testdir,
19208         func_create_megatestdir): Quote all autoconf macro arguments.
19209
19210 2005-08-24  Bruno Haible  <bruno@clisp.org>
19211
19212         * gnulib-tool (func_create_megatestdir): Call autoreconf without the
19213         option --force, because --force causes the aclocal.m4 of each
19214         subdirectory to be newer than the corresponding config.h.in.
19215
19216 2005-08-23  Paul Eggert  <eggert@cs.ucla.edu>
19217
19218         * m4/regex.m4 (gl_INCLUDED_REGEX): Remove; no longer used.
19219         All contents moved to gl_REGEX.
19220         (gl_REGEX): Don't bother checking whether lib/regex.c exists;
19221         assume that it does.
19222
19223 2005-08-23  Paul Eggert  <eggert@cs.ucla.edu>
19224
19225         * lib/regex.h (REG_NOSYS)
19226         [!defined _XOPEN_SOURCE && 200112L <= _POSIX_C_SOURCE]:
19227         Define, since POSIX requires it as of 2001.
19228         (_REG_ENOSYS)
19229         [! (defined _XOPEN_SOURCE || 200112L <= _POSIX_C_SOURCE)]:
19230         New private symbol, used to keep the enum signed in all cases.
19231         * lib/regex.h (RE_NO_EMPTY_RANGES): Fix doc bug reported by James
19232         Youngman in
19233         <http://lists.gnu.org/archive/html/bug-gnulib/2005-07/msg00132.html>.
19234
19235         * lib/regex_internal.c (re_string_skip_chars, register_state):
19236         (calc_state_hash):
19237         Remove forward decls; no longer needed now that we use prototypes.
19238         * lib/regexec.c (acquire_init_state_context, check_halt_node_context):
19239         (proceed_next_node, pop_fail_stack, sub_epsilon_src_nodes):
19240         (clean_state_log_if_needed): Likewise.
19241
19242 2005-08-23  Paul Eggert  <eggert@cs.ucla.edu>
19243
19244         * config/srclist.txt: Add glibc bugs 1231-1233.
19245
19246 2005-08-20  Paul Eggert  <eggert@cs.ucla.edu>
19247
19248         Fix problems reported by Sam Steingold in
19249         <http://lists.gnu.org/archive/html/bug-gnulib/2005-08/msg00007.html>.
19250         * lib/regexec.c (sift_states_bkref): Fix portability bug: the code
19251         assumed that reg_errcode_t is a signed type, which is not
19252         necessarily true if _XOPEN_SOURCE is not defined.
19253         * lib/regex_internal.c (calc_state_hash): Put 'inline' before type,
19254         since some compilers warn about it otherwise.
19255
19256 2005-08-20  Paul Eggert  <eggert@cs.ucla.edu>
19257
19258         * lib/regcomp.c (create_initial_state): Remove duplicate decl.
19259         (init_word_char, create_initial_state, duplicate_node_closure):
19260         (fetch_token, peek_token_bracket, build_range_exp):
19261         (build_collating_symbol): Remove forward decls; no longer needed
19262         now that we use prototypes.
19263
19264         * lib/regcomp.c:
19265         (re_compile_pattern, re_set_syntax, re_compile_fastmap):
19266         (re_compile_fastmap_iter, regcomp, regerror, regfree):
19267         (re_compile_internal, init_dfa, init_word_char, free_workarea_compile):
19268         (create_initial_state, optimize_utf8, analyze, postorder, preorder):
19269         (optimize_subexps, lower_subexps, lower_subexp, calc_first, calc_next):
19270         (link_nfa_nodes, duplicate_node_closure, search_duplicated_node):
19271         (duplicate_node, calc_inveclosure, calc_eclosure, calc_eclosure_iter):
19272         (fetch_token, peek_token, peek_token_bracket, parse, parse_reg_exp):
19273         (parse_branch, parse_expression, parse_sub_exp, parse_dup_op):
19274         (build_range_exp, build_collating_symbol, parse_bracket_exp):
19275         (parse_bracket_element, parse_bracket_symbol, build_equiv_class):
19276         (build_charclass, build_charclass_op, fetch_number, create_tree):
19277         (create_token_tree, mark_opt_subexp, duplicate_tree):
19278         Use prototypes rather than old-style definitions.
19279
19280         * lib/regex_internal.c:
19281         (re_string_allocate, re_string_construct, re_string_realloc_buffers):
19282         (re_string_construct_common, build_wcs_buffer, build_wcs_upper_buffer):
19283         (re_string_skip_chars, build_upper_buffer, re_string_translate_buffer):
19284         (re_string_reconstruct, re_string_peek_byte_case):
19285         (re_string_fetch_byte_case, re_string_destruct, re_string_context_at):
19286         (re_node_set_alloc, re_node_set_init_1, re_node_set_init_2):
19287         (re_node_set_init_copy, re_node_set_add_intersect):
19288         (re_node_set_init_union, re_node_set_merge, re_node_set_insert):
19289         (re_node_set_insert_last, re_node_set_compare, re_node_set_contains):
19290         (re_node_set_remove_at, re_dfa_add_node, calc_state_hash):
19291         (re_acquire_state, re_acquire_state_context, register_state):
19292         (create_ci_newstate, create_cd_newstate, free_state):
19293         Likewise.
19294         * lib/regexec.c (regexec, re_match, re_search, re_match_2,
19295         re_search_2):
19296         (re_search_2_stub, re_search_stub, re_copy_regs, re_set_registers):
19297         (re_search_internal, prune_impossible_nodes):
19298         (acquire_init_state_context, check_matching, static):
19299         (check_halt_node_context, check_halt_state_context, proceed_next_node):
19300         (push_fail_stack, pop_fail_stack, set_regs, free_fail_stack_return):
19301         (update_regs, sift_states_backward, build_sifted_states):
19302         (clean_state_log_if_needed, merge_state_array):
19303         (update_cur_sifted_state, add_epsilon_src_nodes):
19304         (sub_epsilon_src_nodes, check_dst_limits, check_dst_limits_calc_pos_1):
19305         (check_dst_limits_calc_pos, check_subexp_limits, sift_states_bkref):
19306         (sift_states_iter_mb, transit_state, merge_state_with_log, static):
19307         (find_recover_state, check_subexp_matching_top, transit_state_mb):
19308         (transit_state_bkref, get_subexp, get_subexp_sub, find_subexp_node):
19309         (check_arrival, check_arrival_add_next_nodes):
19310         (check_arrival_expand_ecl, check_arrival_expand_ecl_sub):
19311         (expand_bkref_cache, build_trtable, group_nodes_into_DFAstates):
19312         (check_node_accept_bytes, check_node_accept, extend_buffers):
19313         (match_ctx_init, match_ctx_clean, match_ctx_free, match_ctx_add_entry):
19314         (search_cur_bkref_entry, match_ctx_add_subtop, match_ctx_add_sublast):
19315         (sift_ctx_init):
19316         Likewise.
19317
19318         * lib/regex_internal.h:
19319         (re_string_allocate, re_string_construct, re_string_reconstruct):
19320         (re_string_realloc_buffers, build_wcs_buffer, build_wcs_upper_buffer):
19321         (build_upper_buffer, re_string_translate_buffer, re_string_destruct):
19322         (re_string_elem_size_at, re_string_char_size_at, re_string_wchar_at):
19323         (re_string_context_at, re_string_peek_byte_case):
19324         (re_string_fetch_byte_case): Declare even if RE_NO_INTERNAL_PROTOTYPES
19325         is defined, since we now use prototypes always.
19326
19327         * lib/regex.h (_RE_ARGS): Remove.  No longer needed, since we assume
19328         C89 or better.  All uses removed.
19329
19330 2005-08-20  Paul Eggert  <eggert@cs.ucla.edu>
19331
19332         * config/srclist.txt: Add glibc bugs 1220-1227.
19333
19334 2005-08-20  Jim Meyering  <jim@meyering.net>
19335
19336         * lib/regexec.c (regexec, re_search_stub) [!_LIBC]: Omit declaration
19337         of unused local, dfa.
19338
19339 2005-08-20  Bruno Haible  <bruno@clisp.org>
19340
19341         * m4/regex.m4 (gl_PREREQ_REGEX): Require AC_GNU_SOURCE.
19342
19343 2005-08-19  Paul Eggert  <eggert@cs.ucla.edu>
19344
19345         * lib/regex_internal.c (re_string_realloc_buffers, re_node_set_insert):
19346         (re_node_set_insert_last, re_dfa_add_node):
19347         Rename local variables to avoid GCC shadowing warnings.
19348
19349 2005-08-19  Paul Eggert  <eggert@cs.ucla.edu>
19350
19351         * lib/regex_internal.c (re_acquire_state, re_acquire_state_context)
19352         [defined lint]: Suppress bogus uninitialized-variable warnings.
19353
19354         * lib/regcomp.c (duplicate_node): Return new index, not an error code,
19355         and let the caller return REG_ESPACE if out of space.  This
19356         removes an uninitialied-variable warning with GCC 4.0.1, and also
19357         avoids taking the address of a local variable.  All callers
19358         changed.
19359
19360 2005-08-19  Paul Eggert  <eggert@cs.ucla.edu>
19361
19362         * config/srclist.txt: Comment out $LIBCSRC/posix/regex_internal.c,
19363         $LIBCSRC/posix/regexec.c.
19364         Add glibc bug 1217 for regcomp.c.
19365
19366 2005-08-19  Jim Meyering  <jim@meyering.net>
19367
19368         * lib/regexec.c (proceed_next_node): Redo local variables to
19369         avoid GCC shadowing warnings.
19370
19371 2005-08-18  Bruno Haible  <bruno@clisp.org>
19372
19373         * lib/strstr.c (strstr): Fix return value in multibyte case.
19374         * lib/strcasestr.c (strcasestr): Likewise.
19375
19376 2005-08-17  Paul Eggert  <eggert@cs.ucla.edu>
19377
19378         * lib/regex.h: Remove useless space-before-tab.  From coreutils.
19379
19380 2005-08-17  Jim Meyering  <jim@meyering.net>
19381
19382         Make the %s format (seconds since the epoch) work for a negative
19383         number and when used with a zero-padded field width, e.g. %015s.
19384
19385         * lib/strftime.c (my_strftime): Move the `do_number_sign_and_padding'
19386         label so that it precedes the code to set `digits'.  Otherwise,
19387         %0Ns wouldn't work.  Before this change, `date -d @-22 +%05s' would
19388         print `00-22'.  Now, it prints `-0022', as it should.
19389
19390 2005-08-17  Bruno Haible  <bruno@clisp.org>
19391
19392         * modules/strstr (Files): Add m4/mbrtowc.m4.
19393         (Depends-on): Add mbuiter.
19394
19395 2005-08-17  Bruno Haible  <bruno@clisp.org>
19396
19397         * modules/strcasestr: New file.
19398         * MODULES.html.sh (String handling, based on ANSI C 89): Add
19399         strcasestr.
19400
19401 2005-08-17  Bruno Haible  <bruno@clisp.org>
19402
19403         * modules/strcase (Depends-on): Add mbuiter. Remove strnlen1, mbchar.
19404
19405 2005-08-17  Bruno Haible  <bruno@clisp.org>
19406
19407         * modules/mbuiter: New file.
19408         * MODULES.html.sh (Extended multibyte and wide character utilities):
19409         Add mbuiter.
19410
19411 2005-08-17  Bruno Haible  <bruno@clisp.org>
19412
19413         * m4/strstr.m4 (gl_FUNC_STRSTR): Use the replacement function always.
19414         (gl_PREREQ_STRSTR): Use gl_FUNC_MBRTOWC.
19415
19416 2005-08-17  Bruno Haible  <bruno@clisp.org>
19417
19418         * m4/strcasestr.m4: New file.
19419
19420 2005-08-17  Bruno Haible  <bruno@clisp.org>
19421
19422         * lib/strstr.h: Ignore HAVE_STRSTR, always declare the gnulib function.
19423         * lib/strstr.c: Completely rewritten, with multibyte locale support.
19424
19425 2005-08-17  Bruno Haible  <bruno@clisp.org>
19426
19427         * lib/strcasestr.h: New file.
19428         * lib/strcasestr.c: New file.
19429
19430 2005-08-17  Bruno Haible  <bruno@clisp.org>
19431
19432         * lib/strcasecmp.c: Use mbuiter.h.
19433
19434 2005-08-17  Bruno Haible  <bruno@clisp.org>
19435
19436         * lib/mbuiter.h: New file.
19437
19438 2005-08-16  Paul Eggert  <eggert@cs.ucla.edu>
19439
19440         * m4/getopt.m4 (gl_GETOPT_CHECK_HEADERS): Do not override the results
19441         of gl_GETOPT_SUBSTITUTE.  That way, if both gl_GETOPT_SUBSTITUTE
19442         and gl_GETOPT are both invoked via different paths (as happens
19443         with GNU tar CVS because it uses both argp and getopt), the former
19444         wins.
19445
19446 2005-08-16  Bruno Haible  <bruno@clisp.org>
19447
19448         * modules/tls: New file.
19449         * MODULES.html.sh (Multithreading): Add tls.
19450
19451 2005-08-16  Bruno Haible  <bruno@clisp.org>
19452
19453         * modules/strnlen1: New file.
19454         * MODULES.html.sh (String handling): Add strnlen1.
19455
19456 2005-08-16  Bruno Haible  <bruno@clisp.org>
19457
19458         * modules/strcase (Files): Add m4/mbrtowc.m4.
19459         (Depends-on): Add strnlen1, mbchar.
19460
19461 2005-08-16  Bruno Haible  <bruno@clisp.org>
19462
19463         * modules/mbiter: New file.
19464         * MODULES.html.sh (Extended multibyte and wide character utilities):
19465         Add mbiter.
19466
19467 2005-08-16  Bruno Haible  <bruno@clisp.org>
19468
19469         * modules/mbfile: New file.
19470         * MODULES.html.sh (Extended multibyte and wide character utilities):
19471         Add mbfile.
19472
19473 2005-08-16  Bruno Haible  <bruno@clisp.org>
19474
19475         * modules/mbchar: New file.
19476         * MODULES.html.sh (Extended multibyte and wide character utilities):
19477         New section.
19478
19479 2005-08-16  Bruno Haible  <bruno@clisp.org>
19480
19481         * m4/tls.m4: New file, from GNU gettext.
19482
19483 2005-08-16  Bruno Haible  <bruno@clisp.org>
19484
19485         * m4/strcase.m4 (gl_FUNC_STRCASECMP): Use the replacement function
19486         always.
19487         (gl_PREREQ_STRCASECMP): Use gl_FUNC_MBRTOWC.
19488
19489 2005-08-16  Bruno Haible  <bruno@clisp.org>
19490
19491         * m4/mbiter.m4: New file.
19492
19493 2005-08-16  Bruno Haible  <bruno@clisp.org>
19494
19495         * m4/mbfile.m4: New file.
19496
19497 2005-08-16  Bruno Haible  <bruno@clisp.org>
19498
19499         * m4/mbchar.m4: New file.
19500
19501 2005-08-16  Bruno Haible  <bruno@clisp.org>
19502
19503         * lib/tls.h: New file, from GNU gettext.
19504         * lib/tls.c: New file, from GNU gettext.
19505
19506 2005-08-16  Bruno Haible  <bruno@clisp.org>
19507
19508         * lib/strnlen1.h: New file.
19509         * lib/strnlen1.c: New file.
19510
19511 2005-08-16  Bruno Haible  <bruno@clisp.org>
19512
19513         * lib/strcasecmp.c (struct mbiter_multi): Remove at_end field.
19514         (mbi_init): Update.
19515         (mbi_avail, mbi_advance): Let the iteration end before the terminating
19516         NUL byte, not after it.
19517
19518 2005-08-16  Bruno Haible  <bruno@clisp.org>
19519
19520         * lib/strcase.h (strcasecmp): Add note in comments.
19521         * lib/strncasecmp.c: Use code from strcasecmp.c.
19522         * lib/strcasecmp.c: Use mbchar module. Define private mbiter variant.
19523         (strcasecmp): Work correctly in multibyte locales.
19524
19525 2005-08-16  Bruno Haible  <bruno@clisp.org>
19526
19527         * lib/mbiter.h: New file.
19528
19529 2005-08-16  Bruno Haible  <bruno@clisp.org>
19530
19531         * lib/mbfile.h: New file.
19532
19533 2005-08-16  Bruno Haible  <bruno@clisp.org>
19534
19535         * lib/mbchar.h: New file.
19536         * lib/mbchar.c: New file.
19537
19538 2005-08-16  Bruno Haible  <bruno@clisp.org>
19539
19540         * lib/mbchar.h (mb_cmp, mb_casecmp): Order the invalid characters after
19541         the valid ones. Makes the comparison operations transitive:
19542         cmp (a, b) < 0 && cmp (b, c) < 0 ==> cmp (a, c) < 0.
19543         * lib/strcasecmp.c (strcasecmp): Use mb_casecmp.
19544
19545 2005-08-15  Simon Josefsson  <jas@extundo.com>
19546
19547         * modules/ssize_t (License): Change to 'unlimited'.
19548
19549         * gnulib-tool (sed_extract_prog): Recognize 'unlimited' license.
19550
19551 2005-08-15  Paul Eggert  <eggert@cs.ucla.edu>
19552
19553         * config/srclist.txt: Comment out $LIBCSRC/posix/regex.h.
19554         Add comments for each pending glibc patch.
19555
19556 2005-08-15  Bruno Haible  <bruno@clisp.org>
19557
19558         * lib/regex.h (__restrict_arr): Don't define to __restrict if
19559         __cplusplus is defined.
19560
19561 2005-08-14  Jim Meyering  <jim@meyering.net>
19562
19563         Sync from coreutils.
19564
19565         * lib/fts-cycle.c (setup_dir, enter_dir, leave_dir, free_dir):
19566         Use the hash-table-based cycle-detection code not just when
19567         FTS_TIGHT_CYCLE_CHECK if specified, but also with FTS_LOGICAL.
19568         Reported by James Youngman in
19569         <http://lists.gnu.org/archive/html/bug-gnulib/2005-08/msg00011.html>.
19570         * lib/fts_.h: Mention that with FTS_LOGICAL, we use
19571         FTS_TIGHT_CYCLE_CHECK.
19572         * lib/fts.c (fts_cross_check) [FTS_DEBUG]:
19573         s/active_dir_ht/fts_cycle.ht/. This lets us compile with -DFTS_DEBUG,
19574         once again.
19575         * lib/fts.c [! _LIBC]: Include "lstat.h" rather than rolling our own.
19576         * lib/fts.c (fd_safer): Remove decl.
19577         Include fcntl--.h rather than unistd-safer.h
19578         (fts_safe_changedir): Don't call fd_safer; no longer needed
19579         now that we include fcntl--.h.
19580
19581 2005-08-12  Simon Josefsson  <jas@extundo.com>
19582
19583         * modules/getndelim2: Use ssize_t module.
19584         * modules/getnline: Likewise.
19585         * modules/safe-read: Likewise.
19586         * modules/xreadlink: Likewise.
19587
19588         * modules/ssize_t: New file.
19589
19590 2005-08-12  Simon Josefsson  <jas@extundo.com>
19591
19592         * m4/readline.m4: Look for termcap, curses or ncurses if required.
19593
19594 2005-08-12  Simon Josefsson  <jas@extundo.com>
19595
19596         * MODULES.html.sh (Support for systems lacking POSIX:2001): Add
19597         ssize_t.
19598
19599 2005-08-12  Simon Josefsson  <jas@extundo.com>
19600
19601         * MODULES.html.sh (Extra functions based on ANSI C 89: Misc): Add
19602         readline, getdelim and check_version.
19603         (Support for systems lacking ISO C 99: Sizes of integer types):
19604         Add size_max.
19605
19606 2005-08-12  Bruno Haible  <bruno@clisp.org>
19607
19608         * m4/readline.m4 (gl_FUNC_READLINE): Look for ncurses first.
19609
19610 2005-08-11  Simon Josefsson  <jas@extundo.com>
19611
19612         * modules/readline: New file.
19613
19614         * modules/strnlen (Files): Add strnlen.h.
19615
19616 2005-08-11  Simon Josefsson  <jas@extundo.com>
19617
19618         * m4/readline.m4: New file.
19619
19620 2005-08-11  Simon Josefsson  <jas@extundo.com>
19621
19622         * lib/readline.h, readline.c: New file.
19623
19624 2005-08-11  Simon Josefsson  <jas@extundo.com>
19625
19626         * doc/gnulib.texi (Initial import, Finishing touches): Mention
19627         gl_AVOID.
19628
19629 2005-08-11  Bruno Haible  <bruno@clisp.org>
19630
19631         * lib/strnlen.h (strnlen): Change parameter name to match comment.
19632
19633 2005-08-10  Stepan Kasal  <kasal@ucw.cz>
19634
19635         * m4/onceonly_2_57.m4: Really require Autoconf 2.57.
19636
19637 2005-08-10  Simon Josefsson  <jas@extundo.com>
19638
19639         * tests/test-iconvme.c: New file.
19640
19641 2005-08-10  Simon Josefsson  <jas@extundo.com>
19642
19643         * m4/strnlen.m4: New file.
19644
19645         * m4/strndup.m4: Don't check for strnlen declaration, done in
19646         strnlen.m4.
19647
19648 2005-08-10  Simon Josefsson  <jas@extundo.com>
19649
19650         * lib/strndup.c: Use strnlen.h.
19651
19652         * lib/strnlen.h: New file.
19653
19654 2005-08-08  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>  (tiny change)
19655
19656         * README: Typos.
19657
19658 2005-08-02  Simon Josefsson  <jas@extundo.com>
19659
19660         * modules/readline: New file.
19661
19662 2005-08-02  Simon Josefsson  <jas@extundo.com>
19663
19664         * modules/getdelim: New file.
19665
19666         * modules/getline: Rewrite, don't use getndelim2.
19667
19668 2005-08-02  Simon Josefsson  <jas@extundo.com>
19669
19670         * m4/getline.m4: Separate out getdelim stuff into separate module.
19671
19672         * m4/getdelim.m4: New file.
19673
19674 2005-08-02  Simon Josefsson  <jas@extundo.com>
19675
19676         * lib/getline.h, getline.c: Rewrite.
19677
19678         * lib/getdelim.h, lib/getdelim.c: New files, ported from glibc.
19679
19680 2005-07-31  Bruno Haible  <bruno@clisp.org>
19681
19682         * lib/lock.h (gl_lock_initializer): New macro.
19683         (gl_lock_define_initialized): Use it.
19684         (gl_rwlock_initializer): New macro.
19685         (gl_rwlock_define_initialized): Use it.
19686         (gl_recursive_lock_initializer): New macro.
19687         (gl_recursive_lock_define_initialized): Use it.
19688
19689 2005-07-30  Karl Berry  <karl@gnu.org>
19690
19691         * doc/gnulib.texi (Initial import): mention -I$(top_builddir)/lib.
19692         Report from Ben Pfaff, regarding getopt.
19693
19694 2005-07-26  Paul Eggert  <eggert@cs.ucla.edu>
19695
19696         Add support to getopt for Emacs, which doesn't use LIBOBJS in the
19697         normal way.
19698         * m4/getopt.m4 (gl_GETOPT_SUBSTITUTE_HEADER): New macro.
19699         (gl_GETOPT_SUBSTITUTE): Use it.  Invoke gl_PREREQ_GETOPT.
19700         (gl_GETOPT_IFELSE, gl_GETOPT_CHECK_HEADERS): New macros.
19701         (gl_GETOPT): Use the new macros.  Most of the implementation
19702         is moved to the new macros.  This is for programs like Emacs
19703         that don't want all the functionality of gl_GETOPT.
19704
19705 2005-07-26  Bruno Haible  <bruno@clisp.org>
19706
19707         * m4/lock.m4: Update from GNU gettext.
19708
19709 2005-07-26  Bruno Haible  <bruno@clisp.org>
19710
19711         * lib/lock.h: Update from GNU gettext.
19712         * lib/lock.c: Update from GNU gettext.
19713
19714 2005-07-25  Paul Eggert  <eggert@cs.ucla.edu>
19715
19716         * m4/regex.m4 (gl_INCLUDED_REGEX): Use AC_RUN_IFELSE instead of the
19717         obsolescent AC_TRY_RUN.  Include the default includes files, for
19718         'exit'.
19719
19720 2005-07-24  Bruno Haible  <bruno@clisp.org>
19721
19722         * modules/visibility: New file.
19723         * MODULES.html.sh (Misc): Add visibility.
19724
19725 2005-07-24  Bruno Haible  <bruno@clisp.org>
19726
19727         * m4/visibility.m4: New file.
19728
19729 2005-07-24  Bruno Haible  <bruno@clisp.org>
19730
19731         * doc/visibility.texi: New file.
19732
19733 2005-07-22  Bruno Haible  <bruno@clisp.org>
19734
19735         * modules/alloca-opt (Makefile.am): Remove explicit dependency on
19736         $(ALLOCA_H), redundant through BUILT_SOURCES.
19737         * modules/argz (Makefile.am): Remove explicit dependency on $(ARGZ_H),
19738         redundant through BUILT_SOURCES.
19739         * modules/byteswap (Makefile.am): Remove explicit dependency on
19740         $(BYTESWAP_H), redundant through BUILT_SOURCES.
19741         * modules/fnmatch (Makefile.am): Remove explicit dependency on
19742         $(FNMATCH_H), redundant through BUILT_SOURCES.
19743         * modules/getopt (Makefile.am): Remove explicit dependency on
19744         $(GETOPT_H), redundant through BUILT_SOURCES.
19745         * modules/glob (Makefile.am): Remove explicit dependency on $(GLOB_H),
19746         redundant through BUILT_SOURCES.
19747         * modules/poll (Makefile.am): Remove explicit dependency on $(POLL_H),
19748         redundant through BUILT_SOURCES.
19749         * modules/stdbool (Makefile.am): Remove explicit dependency on
19750         $(STDBOOL_H), redundant through BUILT_SOURCES.
19751         * modules/stdint (Makefile.am): Remove explicit dependency on
19752         $(STDINT_H), redundant through BUILT_SOURCES.
19753         * modules/sysexits (Makefile.am): Add $(SYSEXITS_H) to BUILT_SOURCES.
19754         Remove explicit dependency on $(SYSEXITS_H).
19755         Reported by Alexandre Duret-Lutz <adl@src.lip6.fr>.
19756
19757 2005-07-18  Simon Josefsson  <jas@extundo.com>
19758
19759         * lib/check-version.c (check_version): Accept identical versions too.
19760
19761 2005-07-18  Bruno Haible  <bruno@clisp.org>
19762
19763         * modules/lock: New file.
19764         * MODULES.html.sh (Multithreading): New section.
19765
19766 2005-07-18  Bruno Haible  <bruno@clisp.org>
19767
19768         * m4/lock.m4: New file, from GNU gettext.
19769
19770 2005-07-18  Bruno Haible  <bruno@clisp.org>
19771
19772         * lib/lock.h: New file, from GNU gettext.
19773         * lib/lock.c: New file, from GNU gettext.
19774
19775 2005-07-18  Bruno Haible  <bruno@clisp.org>
19776
19777         * lib/lock.h (gl_once_t): New type.
19778         (gl_once_define, gl_once): New macros.
19779         * lib/lock.c (fresh_once): New variable.
19780         (glthread_once, glthread_once_call, glthread_once_singlethreaded): New
19781         functions.
19782
19783 2005-07-16  Simon Josefsson  <jas@extundo.com>
19784
19785         * doc/gnulib.texi (Library version handling): Add ELF symbol collision
19786         workaround, suggested by Bruno.
19787
19788 2005-07-15  Paul Eggert  <eggert@cs.ucla.edu>
19789
19790         * modules/xalloc (Depends-on): Add xalloc-die.
19791         * modules/xvasprintf (Depends-on): Add xalloc-die.
19792
19793 2005-07-15  Paul Eggert  <eggert@cs.ucla.edu>
19794
19795         * lib/quotearg.c: Add translator comment suggested by Bruno Haible,
19796         with a minor change.
19797
19798 2005-07-15  Bruno Haible  <bruno@clisp.org>
19799
19800         * m4/poll.m4 (gl_FUNC_POLL): Check against MacOS X 10.4 poll() bug.
19801         When using lib/poll.c, define poll as rpl_poll.
19802
19803 2005-07-14  Paul Eggert  <eggert@cs.ucla.edu>
19804
19805         * modules/argp (Depends-on): Remove unlocked-io.
19806
19807 2005-07-14  Derek Price  <derek@ximbiot.com>
19808
19809         * m4/glob.m4 (gl_GLOB): Cache glob interface check result.  Add check
19810         for glob symlink bug.
19811
19812 2005-07-14  Bruno Haible  <bruno@clisp.org>
19813
19814         * m4/argp.m4 (gl_ARGP): Remove invocation of gl_FUNC_GLIBC_UNLOCKED_IO.
19815         Instead, test for *_unlocked function declarations directly.
19816
19817 2005-07-11  Simon Josefsson  <jas@extundo.com>
19818
19819         * modules/size_max: New file.
19820
19821         * modules/xsize: Depend on size_max module for size_max.m4.
19822
19823 2005-07-11  Simon Josefsson  <jas@extundo.com>
19824
19825         * lib/size_max.h: New file.
19826
19827 2005-07-11  Paul Eggert  <eggert@cs.ucla.edu>
19828
19829         * lib/version-etc-fsf.c (version_etc_copyright): Parameterize the
19830         copyright symbol and the year.
19831         * lib/version-etc.c (COPYRIGHT_YEAR): New constant.
19832         (version_etc_va): Use parameterized copyright notice.
19833         Reword to conform to the current GNU coding standards.
19834
19835 2005-07-11  Karl Berry  <karl@gnu.org>
19836
19837         * doc/gnulib.texi (Quoting): new node.
19838         (Initial import): more info, from Patrice.
19839
19840 2005-07-11  Bruno Haible  <bruno@clisp.org>
19841
19842         * gnulib-tool (func_usage): Document option --avoid.
19843         (Command line options): Handle --avoid.
19844         (func_acceptable): New function.
19845         (func_modules_transitive_closure): Use it.
19846
19847 2005-07-11  Bruno Haible  <bruno@clisp.org>
19848
19849         * MODULES.html.sh: Use shortcut URLs to the www.opengroup.org site.
19850         Reported by Jim Meyering.
19851
19852 2005-07-10  Bruno Haible  <bruno@clisp.org>
19853
19854         * m4/size_max.m4 (gl_SIZE_MAX): Cast ~(size_t)0 back to size_t.
19855         Needed when size_t is smaller than 'unsigned int'.
19856         Reported by Paul Eggert.
19857
19858 2005-07-09  Sergey Poznyakoff  <gray@gnu.org.ua>
19859
19860         * modules/argp (Depends-on): Add unlocked-io
19861
19862 2005-07-09  Sergey Poznyakoff  <gray@gnu.org.ua>
19863
19864         * lib/argp-namefrob.h: Include unlocked-io.h. Removed unnecessary
19865         block of defines.
19866
19867 2005-07-08  Paul Eggert  <eggert@cs.ucla.edu>
19868
19869         * config/srclist.txt: Comment out regcomp.c, since we have a porting
19870         fix now.
19871
19872 2005-07-08  Eric Blake  <ebb9@byu.net>  (tiny change)
19873         and Paul Eggert  <eggert@cs.ucla.edu>
19874
19875         * lib/regcomp.c (init_dfa, build_range_exp): Store __btowc value
19876         in wint_t, not wchar_t.  Remove now-unnecessary cast.
19877
19878 2005-07-07  Paul Eggert  <eggert@cs.ucla.edu>
19879
19880         * modules/regex (Files): Add lib/regex_internal.c,
19881         lib/regex_internal.h, lib/regexec.c, lib/regcomp.c, m4/codeset.m4.
19882         (Depends-on): Add extensions.
19883         (Makefile.am): Remove lib_SOURCES; now done by m4 code.
19884
19885 2005-07-07  Paul Eggert  <eggert@cs.ucla.edu>
19886
19887         * m4/backupfile.m4 (gl_BACKUPFILE): Use AC_CHECK_FUNCS_ONCE on
19888         pathconf.
19889         * m4/same.m4 (gl_SAME): Likewise.
19890         Require AC_SYS_LONG_FILE_NAMES; bug reported by Gerrit P. Haase.
19891
19892         * m4/regex.m4: Adjust to new libc regex implementation.
19893         (gl_INCLUDED_REGEX): Add AC_LIBSOURCES for
19894         all the .c and .h parts of (the new) regex.
19895         Quote the m4 stuff better.
19896         Check for RE_ICASE bug of old gnulib.
19897         Check for REG_STARTEND of recent libc.
19898         Rename local variables from jm_* to gl_*.
19899         Quote operand of "test -f".
19900         Say "recent enough" version of libc, not "version 2".
19901         (gl_PREREQ_REGEX): Remove AC_FUNC_ALLOCA, since alloca is a
19902         prerequisite module.  Remove AC_HEADER_STDC; no longer needed.
19903         Check for locale.h, isblank, mbrtowc, wcrtomb, wcscoll.
19904         Remove check for btowc, isascii.
19905         Require AM_LANGINFO_CODESET.
19906
19907 2005-07-07  Paul Eggert  <eggert@cs.ucla.edu>
19908
19909         * lib/regex.c, regex.h: Sync from libc.
19910         * lib/regcomp.c, lib/regexec_internal.c, lib/regex_internal.h:
19911         * lib/regexec.c:
19912         New files, synced from libc, except that regex_internal.h
19913         currently has a small porting fix.
19914
19915 2005-07-07  Paul Eggert  <eggert@cs.ucla.edu>
19916
19917         * config/srclist.txt: Add regcomp.c, regex.c, regex.h,
19918         regex_internal.c, regexec.c.
19919         Add regex_internal.h too, but as a comment, since the libc version
19920         is currently broken in gnulib mode.
19921
19922 2005-07-06  Paul Eggert  <eggert@cs.ucla.edu>
19923
19924         Support programs like Emacs that use gnulib but not gettext.
19925         * MODULES.html.sh (Internationalization functions): Add gettext-h.
19926         * modules/gettext-h: New file.
19927         * modules/gettext (Files): Remove lib/gettext.h.
19928         (Depends-on): Add gettext-h.
19929         (Makefile.am): Remove lib_SOURCES.
19930         * modules/argmatch, modules/c-stack, modules/closeout:
19931         * modules/copy-file, modules/csharpcomp, modules/csharpexec:
19932         * modules/execute, modules/file-type, modules/getaddrinfo:
19933         * modules/getopt, modules/human, modules/javacomp:
19934         * modules/javaexec, modules/mkdir-p, modules/obstack:
19935         * modules/openat, modules/pagealign_alloc, modules/pipe:
19936         * modules/quotearg, modules/regex, modules/rpmatch:
19937         * modules/unicodeio, modules/userspec, modules/version-etc:
19938         * modules/wait-process, modules/xalloc-die, modules/xmemcoll:
19939         * modules/xsetenv:
19940         Depend on gettext-h, not gettext.
19941
19942 2005-07-05  Paul Eggert  <eggert@cs.ucla.edu>
19943
19944         * gnulib-tool (func_import): Add support for 'public domain' license.
19945         * modules/alloca, modules/atexit, modules/memmove:
19946         Now public domain, not GPL.
19947         * modules/dup2, modules/getpagesize, modules/malloc, modules/memset:
19948         * modules/realloc, modules/strerror, modules/strtod:
19949         Now LGPL, not GPL.
19950
19951 2005-07-05  Bruno Haible  <bruno@clisp.org>
19952
19953         * m4/mbrtowc.m4 (gl_FUNC_MBRTOWC): Upgrade to version from current
19954         autoconf CVS. Needed for mingw.
19955
19956 2005-07-03  Paul Eggert  <eggert@cs.ucla.edu>
19957
19958         Remove the dependency of the strftime module on the tzset module.
19959         * modules/strftime (Depends-on): Remove dependency on tzset.
19960
19961 2005-07-03  Paul Eggert  <eggert@cs.ucla.edu>
19962
19963         Remove the dependency of the strftime module on the tzset module.
19964         * m4/strftime.m4 (gl_FUNC_STRFTIME): Don't require
19965         gl_FUNC_TZSET_CLOBBER.
19966
19967 2005-07-03  Paul Eggert  <eggert@cs.ucla.edu>
19968
19969         Remove the dependency of the strftime module on the tzset module.
19970         * lib/strftime.c (my_strftime)
19971         [! defined _LIBC && ! HAVE_RUN_TZSET_TEST]:
19972         Copy the input structure, to work around some of the bug with
19973         Solaris 2.5.1 and Solaris 2.6.  If you still care about these old
19974         Solaris releases, you should also use the tzset module, but we won't
19975         require it as a dependency any more since we don't want LGPLed code
19976         to depend on GPLed code.
19977
19978 2005-07-02  Jim Meyering  <jim@meyering.net>
19979
19980         * m4/chown.m4, cloexec.m4, dup2.m4, fsusage.m4:
19981         * m4/getcwd-path-max.m4, getcwd.m4, mkstemp.m4, mountlist.m4:
19982         * m4/pagealign_alloc.m4, save-cwd.m4, unistd-safer.m4:
19983         Don't check for fcntl.h, and don't test for HAVE_FCNTL_H.
19984
19985 2005-07-02  Jim Meyering  <jim@meyering.net>
19986
19987         * lib/backupfile.c (backup_args): Change a `0' to NULL.
19988
19989 2005-07-01  Paul Eggert  <eggert@cs.ucla.edu>
19990
19991         * lib/xnanosleep.c: Include timespec.h, since OpenBSD 3.4 <time.h>
19992         declares only 'struct timespec;' (!).
19993
19994 2005-07-01  Jim Meyering  <jim@meyering.net>
19995
19996         * lib/chown.c, cloexec.c, dup-safer.c, dup2.c, fsusage.c, getcwd.c:
19997         * lib/getloadavg.c, mountlist.c, openat.h, pagealign_alloc.c:
19998         * lib/save-cwd.c, tempname.c:
19999         Assume HAVE_FCNTL_H (i.e., include <fcntl.h> unconditionally,
20000         and don't include <sys/file.h>).
20001
20002 2005-06-29  Jim Meyering  <jim@meyering.net>
20003
20004         * lib/mkdir-p.c (make_dir_parents): Don't apply sizeof to a hard-coded
20005         type name.  Use the variable name instead.
20006         * lib/idcache.c (getuser, getuidbyname, getgroup, getgidbyname):
20007         Likewise.
20008
20009 2005-06-28  Simon Josefsson  <jas@extundo.com>
20010
20011         * modules/check-version (Files): Add check-version.m4.
20012
20013 2005-06-28  Simon Josefsson  <jas@extundo.com>
20014
20015         * m4/check-version.m4: New file, suggested by Jim Meyering
20016         <jim@meyering.net>.
20017
20018 2005-06-28  Simon Josefsson  <jas@extundo.com>
20019
20020         * lib/check-version.h, lib/check-version.c: New files.
20021
20022 2005-06-28  Simon Josefsson  <jas@extundo.com>
20023
20024         * lib/base64.c (base64_encode): Indent.  Rename 'b64' to avoid
20025         collision with global variable.  Better indentation.  Don't
20026         increment buffer pointer beyond buffer end.  Based on comments
20027         from Paul Eggert <eggert@cs.ucla.edu>.
20028
20029         * lib/base64.h: Indent.
20030
20031 2005-06-28  Simon Josefsson  <jas@extundo.com>
20032
20033         * doc/gnulib.texi (Library version handling): New section.
20034
20035 2005-06-28  Jim Meyering  <jim@meyering.net>
20036
20037         * check-module (find_included_lib_files): Hard-code another
20038         pair of exceptions: fts.c includes fts-cycle.c and unistd-safer.h
20039         but modules/fts-lgpl (correctly) does not list those files.
20040
20041         * modules/canonicalize (Files): Add lib/pathmax.h.
20042
20043 2005-06-25  Simon Josefsson  <jas@extundo.com>
20044
20045         * modules/check-version: New file.
20046
20047 2005-06-24  Paul Eggert  <eggert@cs.ucla.edu>
20048
20049         * lib/canon-host.c (canon-host): Append trailing "," to 0 in
20050         initializer of struct addrinfo, as an indication that we don't
20051         care how many members the structure has.
20052
20053 2005-06-24  Derek Price  <derek@ximbiot.com>
20054         and Bruno Haible  <bruno@clisp.org>
20055
20056         Remove stat module & update lstat.
20057         * m4/lstat.m4 (gl_FUNC_LSTAT): Drop AC_FUNC_LSTAT in favor of
20058         AC_FUNC_LSTAT_FOLLOWS_SLASHED_SYMLINK.
20059         * m4/stat.m4: Remove this file.
20060
20061 2005-06-24  Derek Price  <derek@ximbiot.com>
20062         and Bruno Haible  <bruno@clisp.org>
20063
20064         Remove stat module & update lstat.
20065         * lib/stat.c: Remove this file...
20066         (slash_aware_lstat): ...moving this content and its support...
20067         * lib/lstat.c (rpl_lstat): ...into here.
20068         * lib/lstat.h: New file.
20069
20070 2005-06-24  Derek Price  <derek@ximbiot.com>
20071         and Bruno Haible  <bruno@clisp.org>
20072
20073         Remove stat module & update lstat.
20074         * config/srclist.txt (libc sources): Remove stat.
20075
20076 2005-06-24  Derek Price  <derek@ximbiot.com>
20077         and Bruno Haible  <bruno@clisp.org>
20078
20079         Remove stat module & update lstat.
20080         * MODULES.html.sh (stat): Remove.
20081         * MODULES.html: Regenerated.
20082         * modules/lstat (Description): Correct function name.
20083         (Files): Add "lstat.h".
20084         (Depends-on): Remove stat, add xalloc, stat-macros.
20085         * modules/stat: Remove this file.
20086         (Include): Add "lstat.h", remove <sys/stat.h>.
20087
20088 2005-06-23  Paul Eggert  <eggert@cs.ucla.edu>
20089
20090         * lib/mktime.c: Include <string.h> even if !DEBUG.  (From glibc.)
20091         (ranged_convert): Don't save conversion in a temporary struct.
20092         This causes a warning with GCC 4.0.0, and anyway in the typical
20093         case it's not worth the extra 100 bytes or so of code.
20094         (ranged_convert, __mktime_internal): When calling a function via a
20095         pointer P, use P () rather than (*P) (), as we now assume C89 or
20096         better.
20097
20098 2005-06-22  Paul Eggert  <eggert@cs.ucla.edu>
20099
20100         * lib/readutmp.c (desirable_utmp_entry): Fix bug where "who -b" and
20101         "who -r" failed to give output.  Problem reported by Tim Waugh.
20102
20103         * lib/xmalloc.c (HAVE_GNU_CALLOC): New constant.
20104         (xcalloc): Use it to avoid needless tests.
20105         Problem reported by Jim Meyering.
20106
20107 2005-06-20  Derek Price  <derek@ximbiot.com>
20108
20109         * m4/bison.m4: Note that precious decls of YACC & YFLAGS will be
20110         unnecessary for Autoconfs > 2.59c.
20111
20112 2005-06-16  Sergey Poznyakoff  <gray@Mirddin.farlep.net>
20113
20114         * lib/argp.h (__option_is_short): Check upper limit of
20115         __key. Isprint() requires its argument to have the value
20116         of an unsigned char or EOF.
20117
20118 2005-06-16  Jim Meyering  <jim@meyering.net>
20119
20120         * lib/calloc.c (rpl_calloc): Allocate a 1-byte buffer (not 1xS or Nx1)
20121         when either N or S is zero.
20122
20123 2005-06-16  Derek Price  <derek@ximbiot.com>
20124
20125         * m4/bison.m4: Declare YACC & YFLAGS precious.
20126
20127 2005-06-10  Paul Eggert  <eggert@cs.ucla.edu>
20128
20129         * lib/fnmatch.c (fnmatch): If there is an encoding error in a
20130         multibyte string or pattern, fall back on unibyte matching.
20131         Problem reported by James Youngman.
20132
20133 2005-06-08  Bruno Haible  <bruno@clisp.org>
20134
20135         * modules/csharpcomp: New file.
20136         * MODULES.html.sh (C#): Add csharpcomp.
20137
20138 2005-06-08  Bruno Haible  <bruno@clisp.org>
20139
20140         * m4/csharpcomp.m4: New file, from GNU gettext.
20141
20142 2005-06-08  Bruno Haible  <bruno@clisp.org>
20143
20144         * lib/csharpcomp.h: New file, from GNU gettext.
20145         * lib/csharpcomp.c: New file, from GNU gettext.
20146         * lib/csharpcomp.sh.in: New file, from GNU gettext.
20147
20148 2005-06-08  Bruno Haible  <bruno@clisp.org>
20149
20150         * lib/binary-io.h (fileno): Undefine before defining it. Avoids a gcc
20151         warning on mingw.
20152
20153 2005-06-07  Derek Price  <derek@ximbiot.com>
20154
20155         Sync from CVS.
20156         * lib/glob_.h: Indent nested #ifdef.
20157
20158 2005-06-02  Paul Eggert  <eggert@cs.ucla.edu>
20159
20160         Sync from coreutils.
20161         Use "file name" when talking about file names, instead of "filename"
20162         or "path", as per the GNU coding standards.
20163         * lib/mkdir-p.c: Renamed from makepath.c.
20164         (make_dir_parents): Renamed from make_path.  All callers changed.
20165         * lib/mkdir-p.h: Likewise.  All includers changed.
20166         * lib/filenamecat.c: Renamed from path-concat.c.
20167         (file_name_concat): Renamed from path_concat.  All callers changed.
20168         [TEST_FILE_NAME_CONCAT]: Renamed from TEST_PATH_CONCAT.
20169         * lib/filenamecat.h: Likewise.  All includers changed.
20170         * lib/acl.c: Don't use "path" or "filename" to mean "file name"
20171         in comments or local variable names.
20172         * lib/basename.c: Likewise.
20173         * lib/canonicalize.c, canonicalize.h: Likewise.
20174         * lib/dirname.c, dirname.h: Likewise.
20175         * lib/euidaccess.c: Likewise.
20176         * lib/exclude.c: Likewise
20177         * lib/fnmatch_.h, fnmatch_loop.c: Likewise.
20178         * lib/fsusage.c, fsuage.h: Likewise.
20179         * lib/fts.c, fts_.h: Likewise.
20180         * lib/getcwd.c: Likewise.
20181         * lib/getloadavg.c: Likewise.
20182         * lib/mkstemp.c: Likewise.
20183         * lib/mountlist.c, mountlist.h: Likewise.
20184         * lib/openat.c, openat.h: Likewise.
20185         * lib/readlink-stub.c: Likewise.
20186         * lib/readutmp.c, readutmp.h: Likewise.
20187         * lib/rename.c: Likewise.
20188         * lib/rmdir.c: Likewise.
20189         * lib/same.c: Likewise.
20190         * lib/savedir.c: Likewise.
20191         * lib/stripslash.c: Likewise.
20192         * lib/tempname.c: Likewise.
20193         * lib/xreadlink.c: Likewise.
20194         * lib/exclude.c (excluded_file_name): Renamed from excluded_filename.
20195         All uses changed.
20196         * lib/exclude.h: Likewise.
20197
20198         * lib/euidaccess.c (getuid, getgid, getuid, getegid)
20199         [!defined _POSIX_VERSION]: Remove decls; not needed these days.
20200         * lib/idcache.c (getpwuid, getpwnam, getgrgid, getgrnam)
20201         [!defined _POSIX_VERSION]: Remove decls; not needed these days.
20202         * lib/pathmax.h: Include <limits.h> unconditionally, since other
20203         files have been getting away with it for years (MORE/BSD 4.3
20204         is extinct now).
20205         * lib/userspec.c (getpwnam, getgrnam, getgrgid)
20206         [!defined _POSIX_VERSION]: Remove decls; not needed these days.
20207
20208         * lib/pathmax.h (_POSIX_PATH_MAX) [!defined _POSIX_PATH_MAX]:
20209         Define to 256, not 255, as per modern POSIX.
20210
20211 2005-06-02  Paul Eggert  <eggert@cs.ucla.edu>
20212
20213         Sync from coreutils.
20214         Use "file name" when talking about file names, instead of "filename"
20215         or "path", as per the GNU coding standards.
20216         * MODULES.html.sh: mkdir-p renamed from makepath.
20217         filenamecat renamed from path-concat.
20218         * modules/filenamecat: Renamed from modules/path-concat.
20219         (Files): filenamecat.h and filenamecat.c renamed from
20220         path-concat.h and path-concat.c.
20221         (configure.ac): gl_FILE_NAME_CONCAT, not gl_PATH_CONCAT.
20222         (Include): filenamecat.h, not path-concat.h.
20223         * modules/mkdir-p: Renamed from modules/makepath.
20224         (Files): mkdir-p.h and mkdir-p.c renamed from makepath.h and
20225         makepath.c.
20226         (configure.ac): gl_MKDIR_PARENTS, not gl_MAKEPATH.
20227         (Include): mkdir-p.h, not makepath.h.
20228
20229 2005-06-02  Paul Eggert  <eggert@cs.ucla.edu>
20230
20231         Sync from coreutils.
20232         * m4/mkdir-p.m4: Renamed from makepath.m4.
20233         (gl_MKDIR_PARENTS): Renamed from gl_MAKEPATH.  All uses changed.
20234         Rename files from makepath.c to mkdir-p.c, and from
20235         makepath.h to mkdir-p.h.
20236         * m4/filenamecat.m4: Renamed from path-concat.m4.
20237         (gl_FILE_NAME_CONCAT): Renamed from gl_PATH_CONCAT.  All uses changed.
20238         Rename files from path-concat.c to filenamecat.c,
20239         and from path-concat.h to filenamecat.h.
20240         * m4/getcwd-path-max.m4: Don't use "path" or "filename" to mean
20241         "file name" in local variables or comments.
20242         * m4/rename.m4: Likewise.
20243
20244 2005-06-01  Bruno Haible  <bruno@clisp.org>
20245
20246         * modules/csharpexec: New file.
20247         * MODULES.html.sh (C#): New section.
20248
20249 2005-06-01  Bruno Haible  <bruno@clisp.org>
20250
20251         * m4/csharp.m4: New file, from GNU gettext.
20252         * m4/csharpexec.m4: New file, from GNU gettext.
20253
20254 2005-06-01  Bruno Haible  <bruno@clisp.org>
20255
20256         * lib/csharpexec.h: New file, from GNU gettext.
20257         * lib/csharpexec.c: New file, from GNU gettext.
20258         * lib/csharpexec.sh.in: New file, from GNU gettext.
20259
20260 2005-05-31  Derek Price  <derek@ximbiot.com>
20261             Paul Eggert  <eggert@cs.ucla.edu>
20262
20263         Sync from cvs.
20264         * m4/glob.m4: s/MISSING_SYS_CDEFS_H/_SYS_CDEFS_H/ and comment.
20265
20266 2005-05-31  Derek Price  <derek@ximbiot.com>
20267             Paul Eggert  <eggert@cs.ucla.edu>
20268
20269         Sync from cvs.
20270         * lib/glob_.h: s/MISSING_SYS_CDEFS_H/_SYS_CDEFS_H/ and comment.
20271
20272 2005-05-29  Derek Price  <derek@ximbiot.com>
20273
20274         * config/srclist.txt (glob_.h, glob.c): Add these files.
20275
20276 2005-05-29  Derek Price  <derek@ximbiot.com>
20277
20278         * MODULES.html.sh: Add glob to Enhanced POSIX.2001 section.
20279         * modules/glob: New file.
20280         * modules/getlogin_r: Add link to POSIX spec in description.
20281
20282 2005-05-29  Derek Price  <derek@ximbiot.com>
20283             Paul Eggert  <eggert@cs.ucla.edu>
20284
20285         * m4/glob.m4: New file.
20286
20287 2005-05-29  Derek Price  <derek@ximbiot.com>
20288             Paul Eggert  <eggert@cs.ucla.edu>
20289
20290         * lib/glob_.h, lib/glob.c: New files.
20291
20292 2005-05-27  Paul Eggert  <eggert@cs.ucla.edu>
20293
20294         * modules/fts (Files): Remove m4/inttypes-pri.m4.
20295         * modules/fts-lgpl (Depends-on): Remove gettext.
20296
20297 2005-05-27  Paul Eggert  <eggert@cs.ucla.edu>
20298
20299         * m4/fts.m4 (gl_FUNC_FTS_CORE): Don't check for inttypes.h or stdint.h,
20300         and don't require gt_INTTYPES_PRI.
20301
20302 2005-05-27  Paul Eggert  <eggert@cs.ucla.edu>
20303
20304         * lib/getlogin_r.c (getlogin_r): Don't set errno to 0 on return.
20305
20306         * lib/fts.c: Don't worry about debugging on pre-C99-compatible hosts;
20307         the configuration hassle isn't worth it.
20308         Include inttypes.h and stdint.h unconditionally if FTS_DEBUG.
20309         (LONGEST_MODIFIER, PRIuMAX): Remove.
20310
20311 2005-05-27  Bruno Haible  <bruno@clisp.org>
20312
20313         * lib/getlogin_r.h: Remove second include of <stddef.h>.
20314
20315 2005-05-26  Paul Eggert  <eggert@cs.ucla.edu>
20316
20317         * m4/extensions.m4 (gl_USE_SYSTEM_EXTENSIONS): Define
20318         _POSIX_PTHREAD_SEMANTICS for Solaris.
20319
20320 2005-05-25  Derek Price  <derek@ximbiot.com>
20321
20322         * MODULES.html.sh: Add getlogin_r to POSIX.2001 support section.
20323
20324 2005-05-25  Derek Price  <derek@ximbiot.com>
20325             Paul Eggert  <eggert@cs.ucla.edu>
20326
20327         * modules/getlogin_r, m4/getlogin_r.m4: New files.
20328         * lib/getlogin_r.c, getlogin_r.h: New files.
20329
20330 2005-05-25  Bruno Haible  <bruno@clisp.org>
20331             Derek Price  <derek@ximbiot.com>
20332
20333         * lib/getlogin_r.h: Simplify API documentation.
20334
20335 2005-05-23  Derek Price  <derek@ximbiot.com>
20336
20337         * modules/minmax (Files): Add m4/minmax.m4.
20338         (configure.ac): Add gl_MINMAX.
20339
20340 2005-05-22  Paul Eggert  <eggert@cs.ucla.edu>
20341
20342         * lib/fts.c (fd_safer) [_LGPL_PACKAGE]: New static function,
20343         so that unistd-safer.h (GPL'ed code) need not be included.
20344
20345 2005-05-22  Bruno Haible  <bruno@clisp.org>
20346
20347         * m4/minmax.m4: New file.
20348         Based on a patch by Derek Price <derek@ximbiot.com>.
20349
20350 2005-05-22  Bruno Haible  <bruno@clisp.org>
20351
20352         * lib/stdint_.h (_STDINT_H_HAVE_INT64): New macro. Use it in #ifdefs.
20353         (INT64_MIN): Fix definition.
20354         Suggested by Paul Eggert <eggert@cs.ucla.edu>.
20355
20356         * lib/stdint_.h (_STDINT_H_NEED_SIGNED_INT_TYPES): Renamed from
20357         NEED_SIGNED_INT_TYPES.
20358
20359         * lib/stdint_.h (_STDINT_H_HAVE_SYSTEM_INTTYPES): Renamed from
20360         HAVE_SYSTEM_INTTYPES.
20361
20362 2005-05-22  Bruno Haible  <bruno@clisp.org>
20363
20364         * lib/minmax.h: Include <limits.h> only when it defines MIN, MAX.
20365         Also include <sys/param.h> if it defines MIN, MAX.
20366         Based on a patch by Derek Price <derek@ximbiot.com>.
20367
20368 2005-05-21  Jim Meyering  <jim@meyering.net>
20369
20370         * modules/fts (Files): Add m4/inttypes-pri.m4.
20371         (Depends-on): Add lstat and remove gettext.  Alphabetize.
20372
20373 2005-05-20  Paul Eggert  <eggert@cs.ucla.edu>
20374
20375         New fts module.
20376         * lib/fts.c: Don't include "cycle-check.h" or "hash.h".
20377         (setup_dir, free_dir): New functions.
20378         (enter_dir, leave_dir): Define trivial
20379         alternatives of _LGPL_PACKAGE.  Move to fts-cycle.c if !_LGPL_PACKAGE.
20380         (HT_INITIAL_SIZE, ENTER_DIR): Remove.  All uses removed.
20381         (LEAVE_DIR): Fix typo: pass Fts and Ent to leave_dir.
20382         (struct Active_dir, AD_compare, AD_hash, enter_dir, leave_dir):
20383         Move to fts-cycle.c.
20384         (fts_open): Use setup_dir.
20385         (fts_close): Use free_dir.
20386         (fts_read): Have just one copy of the ENTER_DIR code rather than three.
20387         This adds a label and some gotos, but the alternatives were messier.
20388         Check for memory allocation failure when entering a dir.
20389         (fts_stat) [_LGPL_PACKAGE]: Bring back glibc cycle detection code.
20390         * lib/fts_.h (_LGPL_PACKAGE) [defined _LIBC]: New macro.
20391         (FTS): New member fts_cycle, that is a union that contains the
20392         old active_dir_ht and cycle_state.  All uses changed to mention
20393         fts_cycle.ht and fts_cycle.state.
20394         * lib/fts-cycle.c: New file, containing GPL'ed code migrated out of
20395         fts.c, with the following changes:
20396         (setup_dir, free_dir): New functions.
20397         (enter_dir): Now returns bool.  Return true if successful, false
20398         if memory exhausted.  All callers changed.
20399         Do not bother partly cleaning up on
20400         memory allocation failure; that is free_dir's job.
20401         However, free ad if hash_insert fails, to avoid memory leak.
20402         (enter_dir, leave_dir): Accommodate change to FTS by inspecting
20403         fts->fts_options to see which union member to use.
20404
20405 2005-05-20  Paul Eggert  <eggert@cs.ucla.edu>
20406
20407         * m4/fts.m4 (gl_FUNC_FTS_CORE): Renamed from gl_FUNC_FTS.
20408         (gl_FUNC_FTS, gl_FUNC_FTS_LGPL): New macros.
20409
20410 2005-05-20  Paul Eggert  <eggert@cs.ucla.edu>
20411
20412         * MODULES.html.sh (File system functions): Add fts, fts-lgpl.
20413
20414 2005-05-20  Jim Meyering  <jim@meyering.net>
20415
20416         * lib/unlinkdir.h (cannot_unlink_dir) [UNLINK_CANNOT_UNLINK_DIR]:
20417         Now a macro, to pacify GCC.
20418
20419 2005-05-20  Eric Blake  <ebb9@byu.net>  (tiny change)
20420
20421         * m4/chown.m4 (gl_FUNC_CHOWN): Correct sense of test for honoring IDs
20422         of -1.
20423
20424 2005-05-20  Eric Blake  <ebb9@byu.net>  (tiny change)
20425
20426         * lib/chown.c (rpl_chown): Return -1 on failure.
20427
20428 2005-05-18  Paul Eggert  <eggert@cs.ucla.edu>
20429
20430         * m4/canonicalize.m4 (AC_FUNC_CANONICALIZE_FILE_NAME]):
20431         Don't check for stddef.h.
20432         * m4/fts.m4 (gl_FUNC_FTS): Don't require AC_HEADER_STDC, as we
20433         don't use its results.
20434         Don't check for fcntl.h, stddef.h, stdlib.h, string.h, unistd.h,
20435         since we include them unconditionally.  Don't require
20436         AM_STDBOOL_H, since stdbool is a prerequisite.
20437         Don't require AC_C_CONST, AC_TYPE_SIZE_T or check for ptrdiff_t
20438         since we assume C89 or better.
20439         Don't require AC_FUNC_CLOSEDIR_VOID, AC_FUNC_LSTAT, or AC_FUNC_STAT,
20440         as we don't use their results.
20441         Don't check for fchdir, memmove, memset, strrchr, as we use
20442         them unconditionally.
20443         * m4/gettimeofday.m4 (AC_FUNC_GETTIMEOFDAY_CLOBBER): Don't define
20444         GETTIMEOFDAY_CLOBBERS_LOCALTIME_BUFFER, since nobody uses it.
20445
20446 2005-05-18  Paul Eggert  <eggert@cs.ucla.edu>
20447
20448         * lib/canonicalize.c: Include canonicalize.h first, to test interface.
20449         Include <stddef.h> unconditionally, since we assume C89 now.
20450         All uses of PTR_INT_TYPE replaced by ptrdiff_t.
20451         * lib/fts.c: Include fts_.h first, to check interface.
20452         Do not include intprops.h; no longer needed.
20453         Include cycle-check.h and hash.h, since fts_.h no longer does.
20454         Remove unnecessary casts of closedir to void.
20455         (fts_build): Use a simpler method (not involving TYPE_SIGNED) to
20456         decide whether to decrement nlinks.
20457         * lib/fts_.h: Do not include hash.h or cycle-check.h; no longer needed.
20458         (FTS): Use struct hash_table * instead of Hash_table, so that
20459         we no longer need to include hash.h here.
20460
20461 2005-05-18  Jim Meyering  <jim@meyering.net>
20462
20463         * modules/dirfd (License): Change to LGPL.  Most of the code
20464         is already in the public domain.
20465
20466 2005-05-18  Jim Meyering  <jim@meyering.net>
20467
20468         * m4/fts.m4 (AC_LIBSOURCES): Add intprops.h to the list.
20469         Reported by Yoann Vandoorselaere.
20470
20471 2005-05-17  Jim Meyering  <jim@meyering.net>
20472
20473         * m4/fts.m4: New file, from coreutils.
20474
20475 2005-05-17  Jim Meyering  <jim@meyering.net>
20476
20477         * lib/fts.c, lib/fts_.h: New files, from coreutils.
20478
20479 2005-05-14  Paul Eggert  <eggert@cs.ucla.edu>
20480
20481         Sync from coreutils.
20482         * m4/unlinkdir.m4: New file.
20483
20484 2005-05-14  Paul Eggert  <eggert@cs.ucla.edu>
20485
20486         Sync from coreutils.
20487         * lib/unlinkdir.c, lib/unlinkdir.h: New files.
20488         * lib/gethrxtime.c, lib/gethrxtime.h, lib/getpass.h, lib/mountlist.h,
20489         lib/path-concat.c, lib/regex.h, lib/unlocked-io.h, lib/xtime.h:
20490         White space changes only.
20491         * lib/makepath.c (make_path): Port to hosts where leading "//" is
20492         special.
20493         * lib/yesno.c: Include getline.h, not ctype.h.
20494         (yesno): Don't remove leading white space; POSIX doesn't allow it.
20495         Use getline to remove arbitrary restriction on response length.
20496
20497 2005-05-14  Paul Eggert  <eggert@cs.ucla.edu>
20498
20499         * config/srclist-update: Spell out "Street" in FSF postal
20500         mail address; this is the style the FSF seems to prefer.
20501
20502         * build-aux/depcomp, build-aux/install-sh, build-aux/mdate-sh,
20503         build-aux/missing, build-aux/mkinstalldirs: Sync from Automake;
20504         this updates FSF postal mail address.
20505
20506         Sync from coreutils.
20507         * modules/unlinkdir: New file.
20508         * modules/yesno (Depends-on): Add getline.
20509         * MODULES.html.sh (File system functions): Add unlinkdir.
20510
20511 2005-05-13  Paul Eggert  <eggert@cs.ucla.edu>
20512
20513         * lib/byteswap_.h, lib/getsubopt.h, lib/iconvme.h, lib/strsep.c,
20514         lib/strsep.h:
20515         Change the initial comment to refer to GPL, not LGPL.
20516         gnulib-tool will change it to LGPL as needed.
20517
20518         * lib/__fpending.c, lib/acl.c, lib/acl.h, lib/alloca_.h, lib/allocsa.c,
20519         lib/allocsa.h, lib/argmatch.c, lib/argmatch.h, lib/argp-ba.c,
20520         lib/argp-eexst.c, lib/argp-fmtstream.c, lib/argp-fmtstream.h,
20521         lib/argp-fs-xinl.c, lib/argp-help.c, lib/argp-namefrob.h,
20522         lib/argp-parse.c, lib/argp-pv.c, lib/argp-pvh.c, lib/argp-xinl.c,
20523         lib/argp.h, lib/argz.c, lib/argz_.h, lib/asnprintf.c, lib/asprintf.c,
20524         lib/atanl.c, lib/backupfile.c, lib/backupfile.h, lib/base64.c,
20525         lib/base64.h, lib/basename.c, lib/binary-io.h, lib/byteswap_.h,
20526         lib/c-ctype.c, lib/c-ctype.h, lib/c-stack.c, lib/c-stack.h,
20527         lib/c-strtod.c, lib/calloc.c, lib/canon-host.c, lib/canonicalize.c,
20528         lib/canonicalize.h, lib/ceill.c, lib/chdir-long.c, lib/chdir-long.h,
20529         lib/chown.c, lib/classpath.c, lib/classpath.h, lib/cloexec.c,
20530         lib/closeout.c, lib/closeout.h, lib/concatpath.c, lib/config.charset,
20531         lib/copy-file.c, lib/copy-file.h, lib/cycle-check.c, lib/cycle-check.h,
20532         lib/diacrit.c, lib/diacrit.h, lib/dirfd.c, lib/dirfd.h, lib/dirname.c,
20533         lib/dirname.h, lib/dummy.c, lib/dup-safer.c, lib/dup2.c, lib/eealloc.h,
20534         lib/error.c, lib/error.h, lib/euidaccess.c, lib/exclude.c,
20535         lib/exclude.h, lib/execute.c, lib/execute.h, lib/exit.h,
20536         lib/exitfail.c, lib/exitfail.h, lib/expl.c, lib/fatal-signal.c,
20537         lib/fatal-signal.h, lib/fd-safer.c, lib/file-type.c, lib/file-type.h,
20538         lib/fileblocks.c, lib/filemode.c, lib/filemode.h, lib/findprog.c,
20539         lib/findprog.h, lib/floorl.c, lib/fnmatch.c, lib/fnmatch_.h,
20540         lib/fnmatch_loop.c, lib/fopen-safer.c, lib/free.c, lib/frexpl.c,
20541         lib/fsusage.c, lib/fsusage.h, lib/full-read.c, lib/full-read.h,
20542         lib/full-write.c, lib/full-write.h, lib/fwriteerror.c,
20543         lib/fwriteerror.h, lib/gai_strerror.c, lib/gcd.c, lib/gcd.h,
20544         lib/getaddrinfo.c, lib/getaddrinfo.h, lib/getcwd.c, lib/getcwd.h,
20545         lib/getdate.h, lib/getdate.y, lib/getdomainname.c, lib/getdomainname.h,
20546         lib/getgroups.c, lib/gethostname.c, lib/gethrxtime.c, lib/gethrxtime.h,
20547         lib/getline.c, lib/getline.h, lib/getloadavg.c, lib/getndelim2.c,
20548         lib/getndelim2.h, lib/getnline.c, lib/getnline.h, lib/getopt.c,
20549         lib/getopt1.c, lib/getopt_.h, lib/getopt_int.h, lib/getpagesize.h,
20550         lib/getpass.c, lib/getpass.h, lib/getsubopt.c, lib/getsubopt.h,
20551         lib/gettext.h, lib/gettime.c, lib/gettimeofday.c, lib/getugroups.c,
20552         lib/getusershell.c, lib/group-member.c, lib/group-member.h,
20553         lib/hard-locale.c, lib/hard-locale.h, lib/hash-pjw.c, lib/hash-pjw.h,
20554         lib/hash.c, lib/hash.h, lib/human.c, lib/human.h, lib/iconvme.c,
20555         lib/iconvme.h, lib/idcache.c, lib/inet_ntop.h, lib/intprops.h,
20556         lib/inttostr.c, lib/inttostr.h, lib/isdir.c, lib/javacomp.c,
20557         lib/javacomp.h, lib/javacomp.sh.in, lib/javaexec.c, lib/javaexec.h,
20558         lib/javaexec.sh.in, lib/lbrkprop.h, lib/lchown.c, lib/ldexpl.c,
20559         lib/linebreak.c, lib/linebreak.h, lib/linebuffer.c, lib/linebuffer.h,
20560         lib/localcharset.c, lib/localcharset.h, lib/logl.c, lib/long-options.c,
20561         lib/long-options.h, lib/lstat.c, lib/makepath.c, lib/makepath.h,
20562         lib/malloc.c, lib/mathl.h, lib/mbswidth.c, lib/mbswidth.h, lib/md5.c,
20563         lib/md5.h, lib/memcasecmp.c, lib/memcasecmp.h, lib/memchr.c,
20564         lib/memcmp.c, lib/memcoll.c, lib/memcoll.h, lib/memcpy.c, lib/memmem.c,
20565         lib/memmem.h, lib/mempcpy.c, lib/mempcpy.h, lib/memrchr.c,
20566         lib/memrchr.h, lib/memset.c, lib/minmax.h, lib/mkdir.c, lib/mkdtemp.c,
20567         lib/mkdtemp.h, lib/mkstemp.c, lib/mktime.c, lib/modechange.c,
20568         lib/modechange.h, lib/mountlist.c, lib/mountlist.h, lib/nanosleep.c,
20569         lib/obstack.c, lib/obstack.h, lib/openat.c, lib/openat.h,
20570         lib/pagealign_alloc.c, lib/pagealign_alloc.h, lib/path-concat.c,
20571         lib/path-concat.h, lib/pathmax.h, lib/pathname.h, lib/physmem.c,
20572         lib/physmem.h, lib/pipe.c, lib/pipe.h, lib/poll.c, lib/poll_.h,
20573         lib/posixtm.c, lib/posixtm.h, lib/posixver.c, lib/printf-args.c,
20574         lib/printf-args.h, lib/printf-parse.c, lib/printf-parse.h,
20575         lib/progname.c, lib/progname.h, lib/progreloc.c, lib/putenv.c,
20576         lib/quote.c, lib/quote.h, lib/quotearg.c, lib/quotearg.h, lib/raise.c,
20577         lib/readlink.c, lib/readtokens.c, lib/readtokens.h, lib/readtokens0.c,
20578         lib/readtokens0.h, lib/readutmp.c, lib/readutmp.h, lib/realloc.c,
20579         lib/ref-add.sin, lib/ref-del.sin, lib/regex.c, lib/regex.h,
20580         lib/rename.c, lib/rmdir.c, lib/rpmatch.c, lib/safe-read.c,
20581         lib/safe-read.h, lib/safe-write.c, lib/safe-write.h, lib/same.c,
20582         lib/same.h, lib/save-cwd.c, lib/save-cwd.h, lib/savedir.c,
20583         lib/savedir.h, lib/setenv.c, lib/setenv.h, lib/settime.c,
20584         lib/sh-quote.c, lib/sh-quote.h, lib/sha1.c, lib/sha1.h, lib/sig2str.c,
20585         lib/sig2str.h, lib/sincosl.c, lib/snprintf.c, lib/snprintf.h,
20586         lib/sqrtl.c, lib/stat-macros.h, lib/stat.c, lib/stdbool_.h,
20587         lib/stdint_.h, lib/stdio-safer.h, lib/stpcpy.c, lib/stpcpy.h,
20588         lib/stpncpy.c, lib/stpncpy.h, lib/strcase.h, lib/strcasecmp.c,
20589         lib/strchrnul.c, lib/strchrnul.h, lib/strcspn.c, lib/strdup.c,
20590         lib/strdup.h, lib/strerror.c, lib/strftime.c, lib/strftime.h,
20591         lib/stripslash.c, lib/strndup.c, lib/strndup.h, lib/strnlen.c,
20592         lib/strpbrk.c, lib/strpbrk.h, lib/strsep.c, lib/strsep.h, lib/strstr.c,
20593         lib/strstr.h, lib/strtod.c, lib/strtoimax.c, lib/strtok_r.c,
20594         lib/strtok_r.h, lib/strtol.c, lib/strtoll.c, lib/strtoul.c,
20595         lib/strtoull.c, lib/strverscmp.c, lib/strverscmp.h, lib/sysexit_.h,
20596         lib/tempname.c, lib/time_r.c, lib/time_r.h, lib/timegm.c, lib/timegm.h,
20597         lib/timespec.h, lib/trigl.c, lib/trigl.h, lib/ucs4-utf16.h,
20598         lib/ucs4-utf8.h, lib/unicodeio.c, lib/unicodeio.h, lib/unistd-safer.h,
20599         lib/unlocked-io.h, lib/unsetenv.c, lib/userspec.c, lib/utf16-ucs4.h,
20600         lib/utf8-ucs4.h, lib/utime.c, lib/utimecmp.c, lib/utimecmp.h,
20601         lib/utimens.c, lib/vasnprintf.c, lib/vasnprintf.h, lib/vasprintf.c,
20602         lib/vasprintf.h, lib/version-etc-fsf.c, lib/version-etc.c,
20603         lib/version-etc.h, lib/vsnprintf.c, lib/vsnprintf.h, lib/w32spawn.h,
20604         lib/wait-process.c, lib/wait-process.h, lib/xalloc-die.c, lib/xalloc.h,
20605         lib/xallocsa.c, lib/xallocsa.h, lib/xasprintf.c, lib/xgetcwd.c,
20606         lib/xgetcwd.h, lib/xgetdomainname.c, lib/xgetdomainname.h,
20607         lib/xgethostname.c, lib/xmalloc.c, lib/xmemcoll.c, lib/xnanosleep.c,
20608         lib/xreadlink.c, lib/xreadlink.h, lib/xsetenv.c, lib/xsetenv.h,
20609         lib/xsize.h, lib/xstrndup.c, lib/xstrndup.h, lib/xstrtod.c,
20610         lib/xstrtod.h, lib/xstrtoimax.c, lib/xstrtol.c, lib/xstrtol.h,
20611         lib/xstrtoumax.c, lib/xtime.h, lib/xvasprintf.c, lib/xvasprintf.h,
20612         lib/yesno.c, lib/yesno.h:
20613         Update FSF postal mail address.
20614
20615 2005-05-13  Paul Eggert  <eggert@cs.ucla.edu>
20616
20617         * MODULES.html.sh, README, gnulib-tool, tests/test-base64.c,
20618         tests/test-memmem.c, tests/test-stpncpy.c:
20619         Update FSF postal mail address.
20620
20621 2005-05-13  Bruno Haible  <bruno@clisp.org>
20622
20623         * lib/stdint_.h (int64_t, uint64_t, int_least64_t, uint_least64_t,
20624         int_fast64_t, uint_fast64_t, intmax_t, uintmax_t, INT64_MIN, INT64_MAX,
20625         UINT64_MAX, INT_LEAST64_MIN, INT_LEAST64_MAX, UINT_LEAST64_MAX,
20626         INT_FAST64_MIN, INT_FAST64_MAX, UINT_FAST64_MAX, INTMAX_MIN,
20627         INTMAX_MAX, UINTMAX_MAX, INT64_C, UINT64_C, INTMAX_C, UINTMAX_C):
20628         Add support for 64-bit integers in the MSVC compiler.
20629
20630 2005-05-12  Sergey Poznyakoff  <gray@Mirddin.farlep.net>
20631
20632         * modules/getdate (Makefile.am): Add getdate.c to EXTRA_DIST
20633
20634 2005-05-12  Eric Blake  <ebb9@byu.net>  (tiny change)
20635
20636         * gnulib-tool (func_import): Sort and uniquify recommended includes.
20637
20638 2005-05-11  Paul Eggert  <eggert@cs.ucla.edu>
20639
20640         * doc/getdate.texi (General date syntax): Don't say that date
20641         date --iso-8601=ns generates acceptable dates; it doesn't yet.
20642         Problem reported by Nic Ferrier.
20643
20644 2005-05-10  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
20645
20646         * lib/getaddrinfo.c: Don't fail when SOCK_STREAM or SOCK_DGRAM are
20647         specified in ai_socktype. Fix invalid ai_protocol
20648         check. ai_protocol is usually set to 0 or depending on
20649         ai_family/ai_socktype to IPPROTO_TCP / IPPROTO_UDP.  Checking for
20650         SOCK_STREAM / SOCK_DGRAM in ai_protocol was invalid.  Set
20651         ai_socktype / ai_protocol in the returned addrinfo structure.
20652
20653 2005-05-10  Simon Josefsson  <jas@extundo.com>
20654
20655         * m4/getaddrinfo.m4: Look in libnsl/libsocket for getaddrinfo, from
20656         Yoann Vandoorselaere <yoann.v@prelude-ids.com>.
20657
20658 2005-05-10  Karl Berry  <karl@gnu.org>
20659
20660         * doc/fdl.texi, gpl.texi, lgpl.texi, COPYING: update FSF address
20661         (from http://www.gnu.org/licenses).
20662         * doc/COPYING.LIB: also rename to COPYING.LESSER.
20663         * doc/COPYING.DOC: remove; per rms, only needed in doc files, so
20664         fdl.texi suffices.
20665
20666 2005-05-10  Karl Berry  <karl@gnu.org>
20667
20668         * config/srclist.txt (COPYING.LESSER): rename from COPYING.LIB.
20669         (COPYING.DOC): remove.
20670
20671         * config/srclist-update: new FSF address.
20672
20673 2005-05-10  Derek Price  <derek@ximbiot.com>
20674
20675         * m4/getopt.m4 (gl_GETOPT): Check for Solaris 10 bug, not decl, when
20676         possible.
20677
20678 2005-05-09  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
20679             Bruno Haible  <bruno@clisp.org>
20680
20681         * modules/inet_ntop: New file.
20682         * MODULES.html.sh (Support for systems lacking POSIX:2001): Add
20683         inet_ntop.
20684
20685 2005-05-09  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
20686             Bruno Haible  <bruno@clisp.org>
20687
20688         * m4/inet_ntop.m4: New file.
20689
20690 2005-05-09  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
20691             Bruno Haible  <bruno@clisp.org>
20692
20693         * lib/inet_ntop.h: New file.
20694         * lib/inet_ntop.c: New file, from glibc with modifications.
20695
20696 2005-05-09  Paul Eggert  <eggert@cs.ucla.edu>
20697
20698         * modules/time_r (License): Change to LGPL.
20699         * modules/extensions (License): Change to LGPL.  Actually,
20700         the license is more permissive than that, but currently gnulib-tool
20701         doesn't know how to handle more-permissive licenses.
20702
20703         * modules/stat-macros (Depends-on): Don't depend on stat-macros (!).
20704         Problem reported by Dave Love.
20705
20706 2005-05-08  Jim Meyering  <jim@meyering.net>
20707
20708         * lib/classpath.c (PATH_SEPARATOR): Remove insignificant trailing
20709         blank.
20710
20711 2005-05-06  Paul Eggert  <eggert@cs.ucla.edu>
20712
20713         * modules/argmatch (Depends-on): Add stdbool.
20714         * modules/backupfile (Depends-on): Likewise.
20715         * modules/chdir-long (Depends-on): Likewise.
20716         * modules/closeout (Depends-on): Likewise.
20717         * modules/cycle-check (Depends-on): Likewise.
20718         * modules/dirname (Depends-on): Likewise.
20719         * modules/fnmatch (Depends-on): Likewise.
20720         * modules/fsusage (Depends-on): Likewise.
20721         * modules/fwriteerror (Depends-on): Likewise.
20722         * modules/getcwd (Depends-on): Likewise.
20723         * modules/getloadavg (Depends-on): Likewise.
20724         * modules/hard-locale (Depends-on): Likewise.
20725         * modules/makepath (Depends-on): Likewise.
20726         * modules/mountlist (Depends-on): Likewise.
20727         * modules/nanosleep (Depends-on): Likewise.
20728         * modules/posixtm (Depends-on): Likewise.
20729         * modules/quotearg (Depends-on): Likewise.
20730         * modules/readtokens (Depends-on): Likewise.
20731         * modules/readtokens0 (Depends-on): Likewise.
20732         * modules/readutmp (Depends-on): Likewise.
20733         * modules/save-cwd (Depends-on): Likewise.
20734         * modules/strftime (Depends-on): Likewise.
20735         * modules/userspec (Depends-on): Likewise.
20736         * modules/utimecmp (Depends-on): Likewise.
20737         * modules/xgetcwd (Depends-on): Likewise.
20738         * modules/xnanosleep (Depends-on): Likewise.
20739         * modules/xstrtod (Depends-on): Likewise.
20740         * modules/yesno (Depends-on): Likewise.
20741
20742 2005-05-05  Paul Eggert  <eggert@cs.ucla.edu>
20743
20744         * m4/getopt.m4 (gl_GETOPT): Check for Solaris 10 getopt, and avoid
20745         needless checks.
20746
20747 2005-05-01  Paul Eggert  <eggert@cs.ucla.edu>
20748
20749         Merge from coreutils.  Among other things,
20750         add bulletproofing for cases where stdin, stdout, or stderr are closed.
20751         * lib/fd-safer.c: New file.
20752         * lib/fcntl-safer.h, open-safer.c: Remove.
20753         * lib/chdir-long.c: Fix comment "fetish" -> "coreutils".
20754         * lib/dup-safer.c: Include unistd-safer.h first.
20755         Don't include errno.h.
20756         (dup_safer) [!defined F_DUPFD]: Let fd_safer do the real work.
20757         * lib/file-type.h: Don't assume invoker included sys/stat.h first.
20758         * lib/file-type.c: Rely on file-type.h change.
20759         * lib/getloadavg.c: Include unistd-safer.h.
20760         (getloadavg): Use safer open.
20761         * lib/getusershell.c: Include "stdio-safer.h".
20762         (getusershell): Use safer fopen.
20763         * lib/long-options.c (long_options): Use NULL rather than 0.
20764         * lib/modechange.h (mode_free): Remove; all callers changed to invoke
20765         'free'.
20766         * lib/modechange.c: Likewise.
20767         xstrtol.h, stdbool.h, stddef.h: Don't include; no longer needed.
20768         (MODE_DONE): New constant.
20769         (struct mode_change): Remove 'next' member.
20770         (make_node_op_equals): New function; like the old one of the
20771         same name, except it allocates an array.
20772         (mode_compile, mode_create_from_ref): Use it.
20773         (mode_compile): Allocate result as an array, not a linked list.
20774         Parse octal string ourself, so that we catch mistakes like "+0".
20775         (mode_adjust): Arg is an array, not a linked list.
20776         * lib/modechange.c: Include stat-macros.h, xalloc.h.
20777         (S_ISDIR, S_ISUID, S_ISGID, S_ISVTX, S_IRUSR, S_IWUSR, S_IXUSR):
20778         (S_IRGRP, S_IWGRP, S_IXGRP, S_IROTH, S_IWOTH, S_IXOTH, S_IRXWU):
20779         (S_IRWXG, S_IRWXO, CHMOD_MODE_BITS):
20780         Remove.  This is now stat-macros.h's job.
20781         (talloc): Remove.  All callers replaced by xalloc, so that
20782         our invokers don't have to worry about reporting memory failures.
20783         (make_node_op_equals): Remove.
20784         (MODE_ORDINARY_CHAGE, MODE_X_IF_ANY_X, MODE_COPY_EXISTING):
20785         New constants.
20786         (struct mode_change): Moved here from modechange.h.
20787         (mode_append_entry): Remove.
20788         (mode_compile): Remove MASKED_OPS arg, since it encouraged
20789         apps to have incorrect behavior.  Use simpler algorithm for head
20790         and tail.  Don't futz with umask; that's now the job of mode_adjust.
20791         Detect more invalid usages rather than having somewhat-random behavior.
20792         Don't insert an "a=" action, as that leads to incorrect behavior.
20793         (mode_compile, mode_create_from_ref): Return NULL on error instead
20794         of an enum, since now there's only one way to have an error.  All
20795         callers changed.
20796         (mode_adjust): Accept new arg UMASK_VALUE, and interpret it
20797         at the correct time.  Simplify calculation of "+u" and its ilk.
20798         Don't mishandle "+X".
20799         (mode_free): Remove "register" and localize decls.
20800         * lib/modechange.h (MODE_X_IF_ANY_X, MODE_COPY_EXISTING):
20801         (struct mode_change): Move to modechange.c; callers don't
20802         need to see this stuff.
20803         (MODE_MASK_EQUALS, MODE_MASK_PLUS, MODE_MASK_MINUS, MODE_MASK_ALL):
20804         (MODE_INVALID, MODE_MEMORY_EXHAUSTED, MODE_BAD_REFERENCE): Remove.
20805         (mode_change, mode_adjust): Reflect the new signatures noted above.
20806         * lib/nanosleep.c (rpl_nanosleep): Include "timespec.h" before macros
20807         that might redefine system include files.
20808         (siginterrupt) [!HAVE_SIGINTERRUPT]: New macro.
20809         (my_usleep): Use NULL rather than (void *) 0.
20810         (rpl_nanosleep) [!defined SA_NOCLDSTOP]:
20811         Use siginterrupt to specify that system calls should be interrupted.
20812         (rpl_nanosleep): Move initialization of suspended closer to call of
20813         my_usleep.
20814         * lib/readutmp.h (read_utmp): New arg OPTIONS.  All uses changed.
20815         * lib/readutmp.c: Likewise.  Include signal.h, stdbool.h.
20816         (desirable_utmp_entry): New function.
20817         (read_utmp) [defined UTMP_NAME_FUNCTION]: Redo memory allocation
20818         using x2nrealloc, to simplify logic.
20819         (read_utmp) [!defined UTMP_NAME_FUNCTION]: Check for overflow in
20820         size calculation.  Do not assume utmp file is a regular file.
20821         * lib/readutmp.h (UT_PID): Moved here from ../src/who.c.
20822         (READ_UTMP_CHECK_PIDS): New constant.
20823         * lib/save-cwd.c: Include unistd-safer.h.
20824         (save_cwd): Use fd_safer.
20825         * lib/tempname.c (S_ISDIR, S_IRUSR, S_IRUSR, S_IWUSR, S_IXUSR): Remove.
20826         [!_LIBC] Include "stat-macros.h" instead.
20827         * lib/unistd-safer.h (fd_safer): New decl.
20828
20829 2005-05-01  Paul Eggert  <eggert@cs.ucla.edu>
20830
20831         * modules/getloadavg (Depends-on): Add unistd-safer.
20832         * modules/getusershell (Depends-on): Add stdio-safer.
20833         * modules/lstat (Depends-on): Remove xalloc.
20834         * modules/mkstemp (Depends-on): Add stat-macros.
20835         * modules/modechange (Depends-on): Remove xstrtol.
20836         Add stat-macros, xalloc.
20837         * modules/save-cwd (Depends-on): Add unistd-safer.
20838         * modules/stdio-safer (Makefile.am): Remove lib_SOURCES.
20839         * modules/unistd-safer (Files): Add lib/fd-safer.c
20840         (Makefile.am): Remove lib_SOURCES.
20841
20842         * MODULES.html.sh (Enhancements for POSIX:2001 functions):
20843         Remove fcntl-safer; unistd-safer supersedes it.
20844
20845 2005-05-01  Paul Eggert  <eggert@cs.ucla.edu>
20846
20847         * m4/euidaccess.m4 (gl_PREREQ_EUIDACCESS): Don't require
20848         AC_HEADER_STAT.
20849         * m4/lchown.m4 (gl_FUNC_CHOWN): Likewise.
20850         (gl_PREREQ_CHOWN): Remove.
20851         * m4/lstat.m4 (gl_FUNC_LSTAT): Require AC_FUNC_LSTAT instead of calling
20852         it.  Don't require AC_HEADER_STAT.
20853         (gl_PREREQ_LSTAT): Remove.
20854         * m4/mkstemp.m4 (gl_PREREQ_TEMPNAME): Check stdint.h only once.
20855         Don't require AC_HEADER_STAT.
20856         * m4/rmdir.m4 (gl_FUNC_RMDIR): Don't require AC_HEADER_STAT.
20857         (gl_PREREQ_RMDIR): Remove.
20858         * m4/canonicalize.m4 (AC_FUNC_CANONICALIZE_FILE_NAME): Don't
20859         mention stat-macros.h or AC_HEADER_STAT, since we'll make
20860         the stat-macros module a prerequisite.
20861         * m4/file-type.m4 (gl_FILE_TYPE): Likewise.
20862         * m4/filemode.m4 (gl_FILEMODE): Likewise.
20863         * m4/makepath.m4 (gl_MAKEPATH): Likewise.
20864         * m4/modechange.m4 (gl_MODECHANGE): Likewise.
20865         * m4/clock_time.m4 (gl_CLOCK_TIME): Use gl_ rather than fetish_ for
20866         variable names.
20867         * m4/rmdir-errno.m4 (gl_FUNC_RMDIR_NOTEMPTY): Renamed from
20868         fetish_FUNC_RMDIR_NOTEMPTY.  All uses changed.  Use gl_ for
20869         variable prefixes.
20870         * m4/fcntl-safer.m4: Remove.
20871         * m4/stdio-safer.m4 (gl_STDIO_SAFER): Use AC_LIBSOURCES and AC_LIBOBJ.
20872         * m4/unistd-safer.m4 (gl_UNISTD_SAFER): Likewise.
20873         Invoke gl_PREREQ_FD_SAFER.
20874         (gl_PREREQ_FD_SAFER): New macro.
20875         * m4/nanosleep.m4 (gl_PREREQ_NANOSLEEP): Check for siginterrupt.
20876         * m4/readutmp.m4 (gl_READUTMP): Require AC_C_INLINE.
20877         Use AC_CHECK_HEADERS_ONCE and AC_CHECK_FUNCS_ONCE when possible.
20878         Remove duplicate call to AC_LIBOBJ(readutmp).
20879         (gl_PREREQ_READUTMP): Remove.  All uses inlined.
20880
20881         * m4/mmap-anon.m4 (gl_FUNC_MMAP_ANON): Check for message, not for
20882         MAP_ANON.  Problem reported by Moriyoshi Koizumi to bug-cvs.
20883
20884 2005-05-01  Paul Eggert  <eggert@cs.ucla.edu>
20885
20886         * MODULES.html.sh (Misc): Add byteswap.
20887
20888 2005-05-01  Oskar Liljeblad  <oskar@osk.mine.nu>
20889
20890         * modules/getcwd (Depends-on): Add extensions.
20891         * modules/openat (Depends-on): Likewise.
20892
20893 2005-05-01  Oskar Liljeblad  <oskar@osk.mine.nu>
20894
20895         * modules/byteswap: New file.
20896
20897 2005-05-01  Oskar Liljeblad  <oskar@osk.mine.nu>
20898
20899         * m4/byteswap.m4: New file.
20900
20901 2005-05-01  Oskar Liljeblad  <oskar@osk.mine.nu>
20902
20903         * lib/byteswap_.h: New file.
20904
20905 2005-04-25  Karl Berry  <karl@gnu.org>
20906
20907         * m4/gettext.m4: Update from GNU gettext 0.14.4.
20908
20909 2005-04-25  Albert Chin  <china@thewrittenword.com>
20910
20911         * lib/regex.c: Include <stdio.h>, as a workaround to a Compaq Desktop
20912         Toolkit C bug.
20913
20914 2005-04-21  Oskar Liljeblad  <oskar@osk.mine.nu>
20915
20916         * gnulib-tool (Options): Add -s for --symlink/--symbolic.
20917         (func_ln_if_changed) Remove forcibly for no error message
20918         in case file does not exist.
20919
20920 2005-04-19  Simon Josefsson  <jas@extundo.com>
20921
20922         * gnulib-tool (Options): Make --symlink mean --symbolic.
20923
20924 2005-04-18  Oskar Liljeblad  <oskar@osk.mine.nu>
20925
20926         * doc/gnulib.texi (Initial import): Fix.  Mention --aux-dir.
20927
20928 2005-04-16  Simon Josefsson  <jas@extundo.com>
20929
20930         * modules/getpass-gnu (Makefile.am): Don't mention getpass.h.
20931
20932 2005-04-15  Simon Josefsson  <jas@extundo.com>
20933
20934         * m4/getpass.m4 (gl_FUNC_GETPASS): Use AC_LIBSOURCES.
20935
20936 2005-04-15  Simon Josefsson  <jas@extundo.com>
20937
20938         * gnulib-tool: Rename --symlink to --symbolic.
20939
20940 2005-04-15  Oskar Liljeblad  <oskar@osk.mine.nu>
20941
20942         * gnulib-tool: Add -s, --symlink option to gnulib-tool to make
20943         symbolic links to files instead of copying/moving.  Add --aux-dir,
20944         specifying directory relative --dir where auxiliary build tools
20945         are placed.
20946
20947 2005-04-14  Bruno Haible  <bruno@clisp.org>
20948
20949         * modules/allocsa (License): Change to LGPL.
20950         Requested by Yoann Vandoorselaere <yoann@prelude-ids.org>.
20951
20952 2005-04-13  Paul Eggert  <eggert@cs.ucla.edu>
20953
20954         * lib/getdate.y (zone): Allow relunit_snumber after tZONE, so
20955         that "UTC +1 second" continues to work.  Problem reported
20956         by Dmitry V. Levin.
20957         (relunit_snumber): New rule.
20958         (relunit): Use it.
20959
20960 2005-04-12  Paul Eggert  <eggert@cs.ucla.edu>
20961
20962         * lib/getdate.y (universal_time_zone_table): New constant.
20963         (time_zone_table): Remove GMT, UT, UTC entries; they're now in
20964         universal_time_zone_table.
20965         (lookup_zone): Prefer universal_time_zone_table to
20966         local_time_zone_table, so that "GMT" time stamps are allowed in
20967         London during the summer.  Problem reported by Ian Abbott.
20968
20969 2005-04-12  Jim Meyering  <jim@meyering.net>
20970
20971         * lib/human.c (humblock): Set *options even when returning due to
20972         xstrtoumax conversion failure.  Thanks to a used-uninitialized
20973         warning from gcc-4.
20974
20975 2005-04-09  Jim Meyering  <jim@meyering.net>
20976
20977         * lib/posixtm.c (posixtime) [lint]: Avoid spurious warning from gcc-4's
20978         -Wuninitialized: initialize tm0.tm_year.
20979
20980 2005-04-04  Paul Eggert  <eggert@cs.ucla.edu>
20981
20982         * lib/getdate.y (parser_control): rels_seen is now a boolean, not a
20983         count, since there's no maximum.  All uses changed.
20984         Add member dsts_seen.
20985         (local_zone): Accumulate dsts_seen rather than relying on tm_isdst
20986         not being INT_MAX.
20987         (get_date): Initialize dsts_seen, and check that it doesn't go over 1.
20988         Use pc_rels_seen to decide whther a date is absolute.
20989
20990         * lib/getdate.y (number): Don't overwrite year.
20991         (get_date): Initialize pc.year.digits to 0, not 4, to enable above
20992         check.
20993
20994 2005-04-02  Simon Josefsson  <jas@extundo.com>
20995
20996         * lib/getaddrinfo.h: Fix OpenBSD compilation failure, inspired by tiny
20997         patch from Yoann Vandoorselaere <yoann@prelude-ids.org>.
20998
20999 2005-03-28  Eric Blake  <ebb9@byu.net>  (tiny change)
21000
21001         * m4/getcwd-path-max.m4: Return success on systems such as Cygwin
21002         where no absolute path name can be longer than PATH_MAX.
21003
21004 2005-03-27  Jim Meyering  <jim@meyering.net>
21005
21006         * lib/argmatch.c: Clarify comment: null-terminated -> NULL-terminated.
21007
21008 2005-03-26  Paul Eggert  <eggert@cs.ucla.edu>
21009
21010         * lib/intprops.h (INT_STRLEN_BOUND, INT_BUFSIZE_BOUND):
21011         "one's complement" -> "ones' complement" in comment, as per Knuth.
21012         "value of type" -> "type or expression" in comment.
21013         * lib/mktime.c, strftime.c: Propagate intprops.h comment nits.
21014
21015 2005-03-26  Jim Meyering  <jim@meyering.net>
21016
21017         Comment nits.
21018         * lib/intprops.h: Add the apostrophe in `(one|two)'s complement'.
21019         Correct typos: s/or/of/.
21020
21021 2005-03-26  Jim Meyering  <jim@meyering.net>
21022
21023         * modules/check-include-files: Move to ../ and rename to...
21024         * check-module: ...this.
21025
21026 2005-03-25  Jim Meyering  <jim@meyering.net>
21027
21028         * modules/xvasprintf (Files): Add xalloc.h.
21029
21030 2005-03-23  Paul Eggert  <eggert@cs.ucla.edu>
21031
21032         * modules/gettext (Files): config/config.rpath ->
21033         build-aux/config.rpath
21034         * modules/iconv (Files): Likewise.
21035         Problem reported by Oskar Liljeblad.
21036
21037 2005-03-23  Jim Meyering  <jim@meyering.net>
21038
21039         * modules/check-include-files: New script to check for
21040         missing dependencies, multiple includes, etc.
21041
21042         * modules/c-strtold (Depends-on): Add xalloc.
21043         * modules/c-strtod (Depends-on): Add xalloc.
21044         * modules/hash (Depends-on): Add xalloc.
21045         (Files): Remove lib/xalloc.h.
21046
21047         * modules/gethrxtime (Files): Add lib/gethrxtime.h.
21048         * modules/userspec (Files): Add lib/inttostr.h.
21049
21050 2005-03-23  Jim Meyering  <jim@meyering.net>
21051
21052         * lib/canonicalize.c: Remove duplicate `#include "stat-macros.h"'.
21053
21054 2005-03-22  Jim Meyering  <jim@meyering.net>
21055
21056         * modules/stat-macros: New module.
21057         * modules/canonicalize, modules/euidaccess, modules/file-type,
21058         * modules/filemode, modules/lchown, modules/makepath,
21059         * modules/rmdir, modules/stat: Depend on new stat-macros module
21060         rather than listing lib/stat-macros.h manually.
21061         Don't add stat-macros.h to lib_SOURCES or list it in Files: section.
21062
21063 2005-03-22  Jim Meyering  <jim@meyering.net>
21064
21065         * m4/stat-macros.m4 (gl_STAT_MACROS): New file/macro.
21066
21067 2005-03-22  Bruno Haible  <bruno@clisp.org>
21068
21069         * config/srclist.txt: Replace target directory 'config' with
21070         'build-aux'.
21071         * config/config.guess, config.sub, config.rpath, depcomp, install-sh:
21072         * config/mdate-sh, missing, mkinstalldirs, texinfo.tex: Move to
21073         ../build-aux/.
21074
21075 2005-03-21  Paul Eggert  <eggert@cs.ucla.edu>
21076
21077         * modules/chdir-long (Depends-on): Add mempcpy.
21078
21079         * modules/acl, modules/backupfile, modules/c-strtod,
21080         modules/c-strtold, modules/canon-host, modules/canonicalize,
21081         modules/cloexec, modules/closeout, modules/dirfd, modules/dirname,
21082         modules/exclude, modules/exitfail, modules/file-type,
21083         modules/filemode, modules/fpending, modules/fsusage, modules/getcwd,
21084         modules/getdate, modules/getline, modules/getpagesize,
21085         modules/getpass, modules/getugroups, modules/group-member,
21086         modules/hard-locale, modules/hash, modules/human, modules/idcache,
21087         modules/inttostr, modules/long-options, modules/makepath,
21088         modules/md5, modules/memcasecmp, modules/memcoll,
21089         modules/modechange, modules/mountlist, modules/path-concat,
21090         modules/pathmax, modules/physmem, modules/posixtm, modules/posixver,
21091         modules/quote, modules/quotearg, modules/readtokens, modules/readutmp,
21092         modules/safe-read, modules/safe-write, modules/same, modules/savedir,
21093         modules/settime, modules/sha1, modules/sig2str, modules/strdup,
21094         modules/strftime, modules/strndup, modules/strverscmp,
21095         modules/timespec, modules/unlocked-io, modules/userspec,
21096         modules/utimecmp, modules/utimens, modules/xalloc, modules/xstrtol,
21097         modules/yesno:
21098         Remove lib_SOURCES line from Makefile.am section, as this is now
21099         done automatically by the corresponding Autoconf macro.
21100
21101 2005-03-21  Jim Meyering  <jim@meyering.net>
21102
21103         Changes imported from coreutils.
21104
21105         * lib/cycle-check.c: Don't include xalloc.h.
21106
21107         * lib/path-concat.c: Don't include assert.h.
21108         (path_concat): Remove assertion that would have triggered
21109         for ABASE starting with more than one slash.
21110         Reported by Andreas Schwab.
21111
21112         * lib/path-concat.c (path_concat): Set *BASE_IN_RESULT
21113         properly when ABASE is an absolute file name.
21114         Correct the description of this function.
21115         Include <assert.h>.
21116         Add an assertion and a test driver.
21117         This fixes a bug introduced on 2004-07-02.
21118         Andreas Schwab reported the resulting failure of cp --parents:
21119         http://lists.gnu.org/archive/html/bug-coreutils/2005-01/msg00130.html
21120
21121 2005-03-21  Jim Meyering  <jim@meyering.net>
21122
21123         * m4/chdir-long.m4 (gl_PREREQ_CHDIR_LONG): Invoke gl_FUNC_MEMRCHR.
21124         * m4/memrchr.m4 (gl_FUNC_MEMRCHR): Check for memrchr decl.
21125
21126 2005-03-21  Jim Meyering  <jim@meyering.net>
21127         and  Paul Eggert  <eggert@cs.ucla.edu>
21128
21129         * m4/acl.m4, m4/backupfile.m4, m4/c-strtod.m4, m4/canon-host.m4,
21130         m4/canonicalize.m4, m4/cloexec.m4, m4/closeout.m4, m4/dirfd.m4,
21131         m4/dirname.m4, m4/exclude.m4, m4/exitfail.m4, m4/file-type.m4,
21132         m4/filemode.m4, m4/fpending.m4, m4/fsusage.m4, m4/getcwd.m4,
21133         m4/getdate.m4, m4/getline.m4, m4/getpagesize.m4, m4/getpass.m4,
21134         m4/getugroups.m4, m4/group-member.m4, m4/hard-locale.m4, m4/hash.m4,
21135         m4/human.m4, m4/idcache.m4, m4/inttostr.m4, m4/long-options.m4,
21136         m4/makepath.m4, m4/md5.m4, m4/memcasecmp.m4, m4/memcoll.m4,
21137         m4/modechange.m4, m4/mountlist.m4, m4/nanosleep.m4, m4/path-concat.m4,
21138         m4/pathmax.m4, m4/physmem.m4, m4/posixtm.m4, m4/posixver.m4,
21139         m4/quote.m4, m4/quotearg.m4, m4/readtokens.m4, m4/readutmp.m4,
21140         m4/safe-read.m4, m4/safe-write.m4, m4/same.m4, m4/savedir.m4,
21141         m4/settime.m4, m4/sha1.m4, m4/sig2str.m4, m4/strdup.m4, m4/strftime.m4,
21142         m4/strndup.m4, m4/strverscmp.m4, m4/timespec.m4, m4/unlocked-io.m4,
21143         m4/userspec.m4, m4/utimecmp.m4, m4/utimens.m4, m4/xalloc.m4,
21144         m4/xnanosleep.m4, m4/xstrtol.m4, m4/yesno.m4:
21145         Use AC_LIBSOURCES and AC_LIBOBJ to indicate source and object files
21146         for these modules.
21147
21148 2005-03-18  Paul Eggert  <eggert@cs.ucla.edu>
21149
21150         * lib/strftime.c (my_strftime): If the underlying strftime returns 0
21151         (which shouldn't happen), generate nothing instead of returning 0
21152         immediately, so that nstrftime (NULL, ...) doesn't return 0.
21153
21154 2005-03-16  Bruno Haible  <bruno@clisp.org>
21155
21156         * modules/stdint (Makefile.am): Use HAVE_LONG_LONG_64BIT instead of
21157         HAVE_LONGLONG_64BIT.
21158
21159 2005-03-16  Bruno Haible  <bruno@clisp.org>
21160
21161         * m4/stdint.m4 (gl_STDINT_H): Define HAVE_LONG_LONG_64BIT instead of
21162         HAVE_LONGLONG_64BIT.
21163
21164 2005-03-16  Bruno Haible  <bruno@clisp.org>
21165
21166         * lib/stdint_.h: Use HAVE_LONG_LONG_64BIT instead of
21167         HAVE_LONGLONG_64BIT.
21168
21169 2005-03-15  Paul Eggert  <eggert@cs.ucla.edu>
21170
21171         * lib/strftime.c (my_strftime): Prepend space to format so that we can
21172         reliably distinguish strftime failure from empty output on POSIX
21173         hosts.
21174
21175 2005-03-15  Paul Eggert  <eggert@cs.ucla.edu>
21176
21177         * lib/iconvme.c (SIZE_MAX): New macro, if not already defined.
21178         (iconv_string): Don't guess a size-zero buffer, as that might cause
21179         buffer overrun.  Instead, avoid multiplying by MB_LEN_MAX if the
21180         result would be 'too large', where 'too large' is (heuristically)
21181         the square root of SIZE_MAX, divided by MB_LEN_MAX to allay
21182         overflow concerns.  This will prevent some unwanted malloc failures
21183         when the inputs are very large.
21184
21185 2005-03-15  Karl Berry  <karl@gnu.org>
21186
21187         * config/srclist.txt (config.rpath): from gettext.
21188         * config/config.rpath: update.
21189
21190 2005-03-15  Bruno Haible  <bruno@clisp.org>
21191
21192         * lib/regex.c (byte_re_match_2_internal): Rename local variable 'not'
21193         to 'negate'.
21194
21195         * lib/regex.c (byte_re_match_2_internal): Reduce scope of same_str_p
21196         variable.
21197
21198         * lib/regex.c (EXTEND_BUFFER, regcomp): Cast the realloc/malloc
21199         results.
21200
21201 2005-03-14  Simon Josefsson  <jas@extundo.com>
21202
21203         * lib/timegm.h: Use proper prototype CPP guards, reported by Dave Love
21204         <fx@gnu.org>.
21205
21206 2005-03-14  Paul Eggert  <eggert@cs.ucla.edu>
21207
21208         * lib/mktime.c (TYPE_TWOS_COMPLEMENT, TYPE_ONES_COMPLEMENT,
21209         TYPE_SIGNED_MAGNITUDE, TYPE_MINIMUM, TYPE_MAXIMUM): Sync from
21210         intprops.h.
21211         * lib/strtol.c: Likewise.
21212
21213 2005-03-14  Jim Meyering  <jim@meyering.net>
21214
21215         * lib/strftime.c (my_strftime) [HAVE_STRFTIME && ! (_NL_CURRENT
21216         && HAVE_STRUCT_ERA_ENTRY)]: Initialize the first byte of ubuf[]
21217         to be nonzero so that we (and caller) can detect the difference
21218         between a valid zero-length expansion and an error return, even
21219         when the underlying strftime fails before writing anything into
21220         that location.
21221
21222 2005-03-14  Bruno Haible  <bruno@clisp.org>
21223
21224         * m4/lib-link.m4, gettext.m4, nls.m4, po.m4:
21225         Update from GNU gettext 0.14.3.
21226
21227 2005-03-10  Jim Meyering  <jim@meyering.net>
21228
21229         * m4/save-cwd.m4 (gl_SAVE_CWD): Check for fchdir.
21230
21231 2005-03-10  Jim Meyering  <jim@meyering.net>
21232
21233         * lib/save-cwd.c [!HAVE_FCHDIR]: Define open, fchdir, and chdir_long
21234         so that this module works on systems without fchdir.
21235
21236 2005-03-09  Paul Eggert  <eggert@cs.ucla.edu>
21237
21238         Factor int-properties macros into a single file, except for
21239         glibc-related files.
21240         * lib/intprops.h: New file.
21241         * lib/getloadavg.c: Include it instead of limits.h.
21242         (INT_STRLEN_BOUND): Remove.
21243         * lib/human.c: Include intprops.h.
21244         (group_number): Use INT_STRLEN_BOUND instead of rolling it ourself.
21245         * lib/human.h (LONGEST_HUMAN_READABLE): Use 146/485 rather than
21246         302/1000.
21247         * lib/inttostr.h: Include intprops.h instead of limits.h.
21248         (INT_STRLEN_BOUND, INT_BUFSIZE_BOUND): Remove.
21249         * lib/mktime.c (TYPE_IS_INTEGER, TYPE_TWOS_COMPLEMENT): New macros,
21250         for consistency with intprops.h.
21251         (time_t_is_integer, twos_complement_arithmetic): Use them.
21252         * lib/sig2str.h: Include <signal.h>, intprops.h.
21253         (INT_STRLEN_BOUND): Remove.
21254         * lib/strftime.c (TYPE_SIGNED): Remove.
21255         (INT_STRLEN_BOUND): Switch to same implementation as intprops.h.
21256         * lib/strtol.c: Adjust comments to match intprops.h.
21257         * lib/userspec.c: Include intprops.h.
21258         (TYPE_SIGNED, TYPE_MINIMUM, TYPE_MAXIMUM): Remove.
21259         * lib/utimecmp.c, xnanosleep.c, xstrtol.c: Likewise.
21260         * lib/utimecmp.c (utimecmp): Use TYPE_IS_INTEGER, TYPE_TWOS_COMPLEMENT
21261         instead of rolling our own expressions.
21262         * lib/xstrtol.c: Include xstrtol.h first, to test interface.
21263
21264         * lib/strftime.c: Include <stdbool.h>.  Use bool where appropriate,
21265         instead of int.
21266         (my_strftime): Do not mishandle years close to INT_MAX, by doing
21267         the right thing even if adding 1900 would overflow.  Similarly
21268         for tm_mon + 1 and tm_yday + 1.
21269         Make %Y always equivalent to %C%y, and similarly for %G and %g.
21270         (DO_NUMBER, DO_NUMBER_SPACEPAD): Set digits to d, not a conditional.
21271         (DO_SIGNED_NUMBER): New macro.
21272         (my_strftime) [HAVE_TZNAME]: Don't dump core if tp->tm_dst > 1.
21273
21274 2005-03-07  Bruno Haible  <bruno@clisp.org>
21275
21276         * m4/mmap-anon.m4 (MAP_FILE, MAP_FAILED): Remove definitions.
21277
21278 2005-03-07  Bruno Haible  <bruno@clisp.org>
21279
21280         * lib/pagealign_alloc.c (MAP_FILE, MAP_FAILED): Define fallbacks.
21281
21282 2005-03-04  Derek R. Price  <derek@ximbiot.com>
21283
21284         * gnulib-tool (func_cp_if_changed, func_mv_if_changed): New functions.
21285         (func_import): Only replace files via --import when they have actually
21286         changed.
21287
21288 2005-03-03  Derek R. Price  <derek@ximbiot.com>
21289
21290         * m4/mmap-anon.m4: New file.
21291         * m4/pagealign_alloc.m4: New file.
21292
21293 2005-03-03  Derek R. Price  <derek@ximbiot.com>
21294             Bruno Haible  <bruno@clisp.org>
21295
21296         * modules/pagealign_alloc: New file.
21297         * MODULES.html.sh (Memory management functions): Add pagealign_alloc.
21298
21299 2005-03-03  Derek R. Price  <derek@ximbiot.com>
21300             Bruno Haible  <bruno@clisp.org>
21301
21302         * lib/pagealign_alloc.h: New file.
21303         * lib/pagealign_alloc.c: New file.
21304
21305 2005-03-03  Bruno Haible  <bruno@clisp.org>
21306
21307         * m4/inttypes.m4, isc-posix.m4, once-only.m4:
21308         Use an all-permissive copyright notice, recommended by RMS.
21309
21310 2005-03-02  Bruno Haible  <bruno@clisp.org>
21311
21312         * m4/stpncpy.m4 (gl_FUNC_STPNCPY): Undo the replacement here. Because
21313         of AIX, the replacement has to be done only after <string.h> is
21314         included, therefore not in config.h. stpncpy.h does the replacement,
21315         and stpncpy.c uses it.
21316
21317 2005-03-02  Bruno Haible  <bruno@clisp.org>
21318
21319         * lib/stpncpy.h (stpncpy): Define as a macro without arguments, so that
21320         stpncpy.c uses it.
21321
21322 2005-03-01  Paul Eggert  <eggert@cs.ucla.edu>
21323
21324         Remove workaround for bug in Linux kernel 2.6.8 or thereabouts.
21325         The workaround isn't strictly needed for POSIX conformance, and
21326         it's too much of a pain to configure and maintain.  We'll ask
21327         people to fix their kernels instead.
21328         * lib/xnanosleep.c: Don't include gethrxtime.h or xtime.h.
21329         (NANOSLEEP_BUG_WORKAROUND): Remove.
21330         (xnanosleep): Remove the workaround.
21331
21332 2005-03-01  Paul Eggert  <eggert@cs.ucla.edu>
21333
21334         * modules/gettime (Makefile.am): Remove lib_SOURCES line.
21335         Reported by Derek Price.
21336         (Include): Add "timespec.h".
21337
21338         * modules/xnanosleep (Depends-on): Remove gethrxtime.
21339
21340 2005-03-01  Paul Eggert  <eggert@cs.ucla.edu>
21341
21342         * m4/xnanosleep.m4 (gl_XNANOSLEEP): Remove configuration attempting
21343         to detect nanosleep bug.
21344
21345 2005-03-01  Bruno Haible  <bruno@clisp.org>
21346
21347         * lib/vasnprintf.c (EOVERFLOW): Define to a fallback if needed.
21348
21349 2005-02-26  Paul Eggert  <eggert@cs.ucla.edu>
21350
21351         * modules/gethrxtime: New file.
21352         * modules/xnanosleep (Files): Add m4/xnanosleep.m4.
21353         (Depends-on): Add gethrxtime.
21354         (configure.ac): Add gl_XNANOSLEEP.
21355         (Makefile.am): Remove lib_SOURCES line.
21356
21357 2005-02-25  Paul Eggert  <eggert@cs.ucla.edu>
21358
21359         * m4/gethrxtime.m4, m4/xnanosleep.m4: New files.
21360         * m4/gettime.m4 (gl_GETTIME): Check for nanotime.
21361
21362 2005-02-25  Paul Eggert  <eggert@cs.ucla.edu>
21363
21364         * lib/gethrxtime.h, lib/gethrxtime.c, lib/xtime.h: New files.
21365         * lib/timespec.h (gettime): Return void, since it always
21366         succeeds now.  All uses changed.
21367         * lib/gettime.c (gettime) Likewise.
21368         [HAVE_NANOTIME]: Prefer nanotime.
21369         Assume gettimeofday succeeds, as POSIX requires.
21370         Assime time () succeeds, since other code already does.
21371         * lib/xnanosleep.c: Include xtime.h and gethrxtime.h, not xalloc.h.
21372         (timespec_subtract): Remove.
21373         (NANOSLEEP_BUG_WORKAROUND): New constant.
21374         (xnanosleep): Use gethrxtime rather than gettime; this simplifies
21375         things considerably.  Use it only on GNU/Linux hosts, since the
21376         workaround shouldn't be needed elsewhere.
21377
21378 2005-02-24  Bruno Haible  <bruno@clisp.org>
21379
21380         * modules/gettext (Files): Add m4/glibc2.m4.
21381
21382 2005-02-24  Bruno Haible  <bruno@clisp.org>
21383
21384         * m4/gettext.m4, intdiv0.m4, intmax.m4, inttypes-pri.m4, lcmessage.m4:
21385         * m4/lib-link.m4, lib-prefix.m4, nls.m4, po.m4, printf-posix.m4:
21386         * m4/progtest.m4:
21387         Update from GNU gettext 0.14.2.
21388         * m4/glibc2.m4: New file, from GNU gettext 0.14.2.
21389
21390 2005-02-24  Bruno Haible  <bruno@clisp.org>
21391
21392         * lib/localcharset.c: Update from GNU gettext 0.14.2.
21393         * lib/config.charset: Update from GNU gettext 0.14.2.
21394
21395 2005-02-24  Bruno Haible  <bruno@clisp.org>
21396
21397         * lib/gettext.h: Update from GNU gettext 0.14.2.
21398
21399 2005-02-23  Simon Josefsson  <jas@extundo.com>
21400
21401         * m4/iconvme.m4: New file.
21402
21403 2005-02-23  Jim Meyering  <jim@meyering.net>
21404
21405         * m4/extensions.m4 (gl_USE_SYSTEM_EXTENSIONS): Revert yesteday's
21406         change.
21407         Thanks to Bruno Haible for catching it.
21408
21409 2005-02-22  Simon Josefsson  <jas@extundo.com>
21410
21411         * modules/iconvme: New file.
21412
21413         * MODULES.html.sh: Add iconvme.
21414
21415 2005-02-22  Simon Josefsson  <jas@extundo.com>
21416
21417         * lib/iconvme.h, lib/iconvme.c: New files, from libc.
21418
21419 2005-02-22  Simon Josefsson  <jas@extundo.com>
21420
21421         * config/srclist.txt: Sync iconvme.h, iconvme.c from libc.
21422
21423 2005-02-22  Jim Meyering  <jim@meyering.net>
21424
21425         * m4/extensions.m4 (gl_USE_SYSTEM_EXTENSIONS): Fix typo:
21426         s/ifndef/ifdef/.
21427
21428 2005-02-20  Neil Conway  <neilc@samurai.com>
21429
21430         * lib/xgethostname.c (xgethostname): Check for ENOMEM, which is
21431         returned by OSX/Darwin if the specified buffer is not large
21432         enough for the hostname.
21433
21434 2005-02-03  Sergey Poznyakoff  <gray@Mirddin.farlep.net>
21435
21436         * lib/argp-help.c (__argp_help): Create a fake struct argp_state and
21437         pass it to _help, otherwise the latter coredumps trying to
21438         dereference state.root_argp.
21439
21440 2005-02-03  Paul Eggert  <eggert@cs.ucla.edu>
21441
21442         * modules/chdir-long (Depends-on): Add memrchr.
21443         * modules/memrchr (Files): Add lib/memrchr.h.
21444         (Include): "memrchr.h".
21445
21446 2005-02-03  Paul Eggert  <eggert@cs.ucla.edu>
21447
21448         * m4/memrchr.m4 (gl_FUNC_MEMRCHR): Add AC_LIBSOURCES, for memrchr.h.
21449
21450 2005-02-03  Paul Eggert  <eggert@cs.ucla.edu>
21451
21452         * lib/memrchr.h: New file.
21453         * lib/chdir-long.c: Include it.
21454         * lib/memrchr.c [!defined _LIBC]: Include it rather than <string.h>
21455         Don't bother including stddef.h.
21456
21457 2005-02-01  Paul Eggert  <eggert@cs.ucla.edu>
21458
21459         * lib/mountlist.h (MOUNTLIST_H_): New macro, to protect against double
21460         inclusion.
21461         Include <sys/types.h>, for dev_t.
21462         (ME_DUMMY, ME_REMOTE): Move from here....
21463         * lib/mountlist.c (ME_DUMMY, ME_REMOTE): To here.
21464         (ME_DUMMY): Count "subfs" as a dummy.  Problem reported by
21465         Dmitry V. Levin.
21466         Include mountlist.h first, to test the interface.
21467
21468 2005-01-29  Bruno Haible  <bruno@clisp.org>
21469
21470         * lib/progname.c (program_name): Initialize.
21471         Needed when linking statically on MacOS X.
21472
21473 2005-01-28  Paul Eggert  <eggert@cs.ucla.edu>
21474
21475         Sync from coreutils.
21476         * modules/getloadavg (Files): Remove m4/getloadavg.m4.
21477         (Depends-on): Add c-strtod.
21478         (configure.ac): Replace gl_FUNC_GETLOADAVG with AC_FUNC_GETLOADAVG.
21479
21480 2005-01-28  Paul Eggert  <eggert@cs.ucla.edu>
21481
21482         Sync from coreutils.
21483         * m4/getloadavg.m4, glibc.m4, search-libs.m4: Remove.
21484
21485         Remove files that are specific to coreutils.
21486         * m4/check-decl.m4, jm-macros.m4, lib-check.m4, prereq.m4: Remove.
21487
21488 2005-01-28  Bruno Haible  <bruno@clisp.org>
21489
21490         * modules/javacomp: New file.
21491         * MODULES.html.sh (Java): Add javacomp.
21492
21493 2005-01-28  Bruno Haible  <bruno@clisp.org>
21494
21495         * m4/javacomp.m4: New file, from GNU gettext.
21496
21497 2005-01-28  Bruno Haible  <bruno@clisp.org>
21498
21499         * lib/javacomp.sh.in: New file, from GNU gettext.
21500         * lib/javacomp.h: New file, from GNU gettext.
21501         * lib/javacomp.c: New file, from GNU gettext.
21502
21503 2005-01-26  Simon Josefsson  <jas@extundo.com>
21504
21505         * lib/gai_strerror.c: Use GPL in header.
21506
21507 2005-01-26  Bruno Haible  <bruno@clisp.org>
21508
21509         * modules/javaexec: New file.
21510         * MODULES.html.sh (Java): Add javaexec.
21511
21512 2005-01-26  Bruno Haible  <bruno@clisp.org>
21513
21514         * m4/javaexec.m4: New file, from GNU gettext.
21515
21516 2005-01-26  Bruno Haible  <bruno@clisp.org>
21517
21518         * lib/javaexec.sh.in: New file, from GNU gettext.
21519         * lib/javaexec.h: New file, from GNU gettext.
21520         * lib/javaexec.c: New file, from GNU gettext.
21521
21522 2005-01-24  Sergey Poznyakoff  <gray@Mirddin.farlep.net>
21523
21524         * modules/lchown (Depends-on): Remove lchown.h
21525
21526 2005-01-24  Sergey Poznyakoff  <gray@Mirddin.farlep.net>
21527
21528         * m4/sysexits.m4 (gl_SYSEXITS): Reverted logic. SYSEXITS_H
21529         must be defined if the header file was not found, in order
21530         to provide a replacement. Reported by Todd Vierling <tv@duh.org>
21531
21532 2005-01-24  Sergey Poznyakoff  <gray@Mirddin.farlep.net>
21533
21534         * lib/argp-help.c (hol_entry_help): Avoid using non-constant
21535         initializers for struct pentry_state.
21536         (__argp_error): Check return value of __asprintf
21537         (__argp_failure): Translate error message
21538
21539         * lib/argp-parse.c: Removed braces around the expansion of N_()
21540
21541 2005-01-23  Paul Eggert  <eggert@cs.ucla.edu>
21542
21543         * m4/acl.m4, afs.m4, alloca.m4, argp.m4, assert.m4, atexit.m4,
21544         backupfile.m4, base64.m4, bison.m4, c-bs-a.m4, c-stack.m4,
21545         c-strtod.m4, calloc.m4, canon-host.m4, canonicalize.m4,
21546         clock_time.m4, cloexec.m4, closeout.m4, d-ino.m4, d-type.m4,
21547         dirfd.m4, dirname.m4, dos.m4, dup2.m4, error.m4, euidaccess.m4,
21548         exclude.m4, exitfail.m4, extensions.m4, fcntl-safer.m4,
21549         file-type.m4, fileblocks.m4, filemode.m4, fnmatch.m4, fpending.m4,
21550         free.m4, fstypename.m4, fsusage.m4, ftruncate.m4, getaddrinfo.m4,
21551         getcwd-path-max.m4, getcwd.m4, getdate.m4, getdomainname.m4,
21552         getgroups.m4, gethostname.m4, getline.m4, getndelim2.m4,
21553         getnline.m4, getopt.m4, getpagesize.m4, getpass.m4, getsubopt.m4,
21554         gettime.m4, gettimeofday.m4, getugroups.m4, getusershell.m4,
21555         group-member.m4, hard-locale.m4, hash.m4, host-os.m4, human.m4,
21556         idcache.m4, inttostr.m4, isdir.m4, jm-winsz1.m4, jm-winsz2.m4,
21557         link-follow.m4, long-options.m4, ls-mntd-fs.m4, lstat.m4,
21558         makepath.m4, mathl.m4, md5.m4, memcasecmp.m4, memchr.m4,
21559         memcmp.m4, memcoll.m4, memcpy.m4, memmem.m4, memmove.m4,
21560         memrchr.m4, memset.m4, mkdir-slash.m4, mkstemp.m4, mktime.m4,
21561         modechange.m4, mountlist.m4, nanosleep.m4, obstack.m4,
21562         path-concat.m4, pathmax.m4, perl.m4, physmem.m4, poll.m4,
21563         posixtm.m4, posixver.m4, putenv.m4, quote.m4, quotearg.m4,
21564         readdir.m4, readtokens.m4, readutmp.m4, regex.m4, rename.m4,
21565         restrict.m4, rmdir-errno.m4, rmdir.m4, rpmatch.m4, same.m4,
21566         savedir.m4, settime.m4, sha1.m4, sig2str.m4, snprintf.m4,
21567         sockpfaf.m4, st_dm_mode.m4, st_mtim.m4, stat.m4, stdint.m4,
21568         stdio-safer.m4, strchrnul.m4, strdup.m4, strerror.m4,
21569         strerror_r.m4, strftime.m4, strndup.m4, strnlen.m4, strsep.m4,
21570         strtod.m4, strtoimax.m4, strtok_r.m4, strtol.m4, strtoll.m4,
21571         strtoul.m4, strtoull.m4, strtoumax.m4, strverscmp.m4, sysexits.m4,
21572         time_r.m4, timegm.m4, timespec.m4, tm_gmtoff.m4, tzset.m4,
21573         uint32_t.m4, uintptr_t.m4, unistd-safer.m4, unlink-busy.m4,
21574         unlocked-io.m4, uptime.m4, userspec.m4, utimbuf.m4, utime.m4,
21575         utimecmp.m4, utimens.m4, utimes-null.m4, vsnprintf.m4, xalloc.m4,
21576         xgetcwd.m4, xreadlink.m4, xstrndup.m4, xstrtod.m4, xstrtoimax.m4,
21577         xstrtol.m4, xstrtoumax.m4, yesno.m4:
21578         Use an all-permissive copyright notice, recommended by RMS.
21579
21580 2005-01-21  Paul Eggert  <eggert@cs.ucla.edu>
21581
21582         * modules/chdir-long (Depends-on): Remove mempcpy.
21583
21584 2005-01-21  Jim Meyering  <jim@meyering.net>
21585
21586         * lib/openat.h (AT_SYMLINK_NOFOLLOW): Define to 4096, so it's the
21587         same value as for Solaris 9.
21588
21589         * lib/chdir-long.c (chdir_long): Rewrite to remove limitation on
21590         component length.  This included changing the parameter to be
21591         of type `char *' rather than `char const *'.
21592         * lib/chdir-long.h (chdir_long): Update prototype.
21593
21594         * lib/openat.c (fdopendir, fstatat): New functions.
21595         * lib/openat.h: Include headers required for use of DIR and struct
21596         stat.
21597         [AT_SYMLINK_NOFOLLOW]: Define.
21598         (fdopendir, fstatat): Add prototypes.
21599
21600 2005-01-21  Bruno Haible  <bruno@clisp.org>
21601
21602         * modules/classpath: New file.
21603         * MODULES.html.sh (Java): Add classpath.
21604
21605 2005-01-21  Bruno Haible  <bruno@clisp.org>
21606
21607         * lib/classpath.h: New file, from GNU gettext.
21608         * lib/classpath.c: New file, from GNU gettext.
21609
21610 2005-01-20  Simon Josefsson  <jas@extundo.com>
21611
21612         * modules/version-etc-fsf: New file.
21613
21614 2005-01-20  Simon Josefsson  <jas@extundo.com>
21615
21616         * lib/version-etc-fsf.c: New file, with version_etc_copyright.
21617         * lib/version-etc.c: Remove version_etc_copyright.
21618         * lib/version-etc.h (version_etc_copyright): Use [] instead of * in
21619         prototype, suggested by Paul Eggert <eggert@CS.UCLA.EDU>.
21620
21621 2005-01-20  Simon Josefsson  <jas@extundo.com>
21622
21623         * lib/base64.h (isbase64): Add.
21624
21625         * lib/base64.c (isb64): Rename to isbase64, use to_uchar instead of
21626         using a unsigned prototype, don't inline.
21627         (base64_decode): Use it.
21628
21629 2005-01-20  Paul Eggert  <eggert@cs.ucla.edu>
21630
21631         * m4/save-cwd.m4 (gl_SAVE_CWD): Remove check for fcntl; we now assume
21632         it.
21633
21634 2005-01-20  Paul Eggert  <eggert@cs.ucla.edu>
21635
21636         * lib/save-cwd.c (save_cwd): Remove code to support the case
21637         where fchdir is missing or flaky.
21638
21639 2005-01-20  Paul Eggert  <eggert@cs.ucla.edu>
21640
21641         * MODULES.html.sh (Command-line arguments): Add version-etc-fsf.
21642
21643 2005-01-19  Paul Eggert  <eggert@cs.ucla.edu>
21644
21645         * modules/mempcpy (Makefile.am): Remove mention of mempcpy.h;
21646         AC_LIBSOURCES now does this.
21647         * MODULES.html.sh (Sizes of integer types <limits.h>): New element,
21648         with new ullong_max module.
21649
21650 2005-01-19  Bruno Haible  <bruno@clisp.org>
21651
21652         * modules/sh-quote: New file.
21653         * MODULES.html.sh (Executing programs): Add sh-quote.
21654
21655 2005-01-19  Bruno Haible  <bruno@clisp.org>
21656
21657         * lib/sh-quote.h: New file, from GNU gettext.
21658         * lib/sh-quote.c: New file, from GNU gettext.
21659
21660 2005-01-18  Paul Eggert  <eggert@cs.ucla.edu>
21661
21662         Merge from coreutils.
21663         * m4/ullong_max.m4: New file.
21664         * m4/jm-macros.m4 (gl_MACROS): Require gl_ULLONG_MAX.
21665         (gl_MACROS): Assume localeconv exists.
21666
21667 2005-01-18  Paul Eggert  <eggert@cs.ucla.edu>
21668
21669         Merge changes from coreutils, as described below in several
21670         changelogs dated today.
21671
21672         * lib/save-cwd.c: Include "save-cwd.h" before other include files.
21673         (O_DIRECTORY): Remove; not needed here, since "." must be
21674         a directory.  All uses removed.
21675         (save_cwd): Use __sgi || __sun, not sun || __sun.  __sun is
21676         universal on Suns, and we also need to test for IRIX.
21677         Revamp code to use 'if' rather than '#if'.
21678         Avoid unnecessary comparison of cwd->desc to 0.
21679
21680         * lib/utimens.c (futimens): Robustify the previous patch, by checking
21681         for known valid error numbers rather than observed invalid ones.
21682
21683 2005-01-18  Paul Eggert  <eggert@cs.ucla.edu>
21684
21685         * modules/ullong_max: New file.
21686
21687         * modules/chdir-long, modules/openat: New files.
21688         * modules/save-cwd (Depends-on): Depend on chdir-long.
21689         (Makefile.am): Remove lib_SOURCES; now handled by AC_LIBSOURCES.
21690
21691 2005-01-18  Jim Meyering  <jim@meyering.net>
21692
21693         Merge from coreutils.
21694         * m4/chdir-long.m4, m4/openat.m4: New files.
21695         * m4/save-cwd.m4 (gl_SAVE_CWD): Add AC_LIBSOURCES for save-cwd.c,
21696         save-cwd.h.  Add AC_LIBOBJ for save-cwd.
21697         * m4/chown.m4 (gl_FUNC_CHOWN): When cross-compiling, assume that chown
21698         is sane and DOES follow symlinks.  Besides, testing 20 different
21699         systems found no broken chown implementations.
21700         Prompted by a change in rsync's copy of this macro.
21701         * m4/jm-macros.m4 (gl_MACROS): Require gl_FUNC_CHDIR_LONG.
21702
21703         * m4/lchown.m4 (gl_FUNC_LCHOWN): Use AC_LIBSOURCES.
21704
21705         * m4/utimes.m4: Work around tests/touch/empty-file failure on a system
21706         (sparc64, Linux-2.4.28, glibc-2.3.3) that didn't honor utimes'
21707         NULL-means-set-to-current-time semantics.
21708         Remove temporary file immediately, rather than waiting
21709         for configure's at-exit trap code to do it.
21710
21711 2005-01-18  Jim Meyering  <jim@meyering.net>
21712
21713         * lib/version-etc.c (version_etc_copyright): Update copyright date.
21714
21715         * lib/utimens.c (futimens): Account for the fact that futimes
21716         can also fail with errno == ENOSYS or errno == ENOENT.
21717         Patch from Dmitry V. Levin.
21718
21719         Change the name of the robust chdir function from chdir to chdir_long.
21720         * lib/save-cwd.c: Include chdir-long.h rather than chdir.h.
21721         (restore_cwd): Use chdir_long, not chdir.
21722         * lib/chdir-long.c: Renamed from chdir.c.
21723         * lib/chdir-long.h: Renamed from chdir.h.
21724         [!defined PATH_MAX]: Define chdir_long to chdir on systems like the
21725         Hurd.
21726
21727 2005-01-18  Bruno Haible  <bruno@clisp.org>
21728
21729         * m4/allocsa.m4, m4/codeset.m4, m4/copy-file.m4, m4/eaccess.m4:
21730         * m4/eealloc.m4, m4/eoverflow.m4, m4/execute.m4, m4/fatal-signal.m4:
21731         * m4/findprog.m4, m4/glibc21.m4, m4/iconv.m4, m4/intmax_t.m4:
21732         * m4/inttypes_h.m4, m4/lib-ld.m4, m4/lib-link.m4, m4/lib-prefix.m4:
21733         * m4/linebreak.m4, m4/localcharset.m4, m4/longdouble.m4:
21734         * m4/longlong.m4, m4/mbrtowc.m4, m4/mbstate_t.m4, m4/mbswidth.m4:
21735         * m4/mkdtemp.m4, m4/pipe.m4, m4/readlink.m4, m4/safe-read.m4:
21736         * m4/safe-write.m4, m4/setenv.m4, m4/sig_atomic_t.m4:
21737         * m4/signalblocking.m4, m4/signed.m4, m4/size_max.m4, m4/ssize_t.m4:
21738         * m4/stdbool.m4, m4/stdint_h.m4, m4/stpcpy.m4, m4/stpncpy.m4:
21739         * m4/strcase.m4, m4/strcspn.m4, m4/strpbrk.m4, m4/strstr.m4:
21740         * m4/ucs4-utf.m4, m4/uintmax_t.m4, m4/ulonglong.m4, m4/unicodeio.m4:
21741         * m4/utf-ucs4.m4, m4/vasnprintf.m4, m4/vasprintf.m4:
21742         * m4/wait-process.m4, m4/wchar_t.m4, m4/wint_t.m4, m4/xsize.m4:
21743         Use an all-permissive copyright notice, recommended by RMS.
21744
21745 2005-01-18  Bob Proulx  <bob@proulx.com>
21746
21747         * lib/obstack.c [DEFAULT_ALIGNMENT]: Use an intermediate type to
21748         simplify offsetof() macro construct to avoid compile failure with
21749         native HP-UX 11.0 ANSI C compiler.
21750
21751 2005-01-17  Bruno Haible  <bruno@clisp.org>
21752
21753         * lib/stpncpy.c: Remove HAVE_STPNCPY and gnu_stpncpy renaming,
21754         redundant because stpncpy.m4 takes care of it.
21755
21756 2005-01-17  Bruno Haible  <bruno@clisp.org>
21757
21758         * lib/progreloc.c: Include xalloc.h instead of xmalloc.h.
21759
21760 2005-01-17  Bruno Haible  <bruno@clisp.org>
21761
21762         * lib/progreloc.c (xstrdup): Define as strdup if no xmalloc should be
21763         used.
21764
21765 2005-01-17  Bruno Haible  <bruno@clisp.org>
21766
21767         * lib/fwriteerror.h (fwriteerror): Change specification to include
21768         fclose.
21769         * lib/fwriteerror.c: Include <stdbool.h>.
21770         (fwriteerror): At the end, close the file stream. Record whether
21771         stdout was already closed.
21772
21773 2005-01-17  Bruno Haible  <bruno@clisp.org>
21774
21775         * lib/execute.c (environ): Declare if needed.
21776         * lib/pipe.c (environ): Likewise.
21777         Reported by Michael Schloh von Bennewitz <michael.schloh@cw.com>.
21778
21779 2005-01-11  Sergey Poznyakoff  <gray@Mirddin.farlep.net>
21780
21781         * modules/argp: Depend on vsnprintf
21782
21783 2005-01-10  Jim Meyering  <jim@meyering.net>
21784
21785         * modules/closeout (Depends-on): Add atexit.
21786
21787 2005-01-06  Bruno Haible  <bruno@clisp.org>
21788
21789         * m4/stpncpy.m4 (gl_FUNC_STPNCPY): Rename stpncpy to gnu_stpncpy here.
21790
21791 2005-01-04  Paul Eggert  <eggert@cs.ucla.edu>
21792
21793         * lib/human.c (SIZE_MAX, UINTMAX_MAX): Move these conditional
21794         definitions to be after all include files, to avoid collisions.
21795         Problem reported by Bob Proulx.
21796
21797 2005-01-04  Jim Meyering  <jim@meyering.net>
21798
21799         Changes imported from coreutils.
21800         * m4/mkstemp.m4 (gl_FUNC_MKSTEMP): Rather than using "conftestXXXXXX"
21801         as the mkstemp template, use a temporary directory and an
21802         8.3-friendly template to avoid trouble on systems like DJGPP.
21803         Reported by Juan M. Guerrero via Stepan Kasal.
21804         * m4/(gl_FUNC_MKSTEMP): Include <unistd.h> for the declaration of
21805         close. Remove the temporary directory right away, rather than waiting
21806         for configure's at-exit trap code to do it.
21807         Suggestion from Stepan Kasal.
21808
21809 2005-01-01  Simon Josefsson  <jas@extundo.com>
21810
21811         * gnulib-tool: Print #include directives when --import'ing.
21812
21813 2004-12-28  Simon Josefsson  <jas@extundo.com>
21814
21815         * tests/test-base64.c: Include required header files.  Remove
21816         unused variables.
21817
21818 2004-12-28  Paul Eggert  <eggert@cs.ucla.edu>
21819
21820         * modules/error (Depends-on): Remove gettext.
21821
21822 2004-12-28  Paul Eggert  <eggert@cs.ucla.edu>
21823
21824         * lib/error.c [!_LIBC && !ENABLE_NLS]: Do not include "gettext.h";
21825         not needed.  This removes a dependency on the gettext module.
21826         [defined _LIBC]: Do not include <libintl.h>; not needed.
21827
21828 2004-12-24  Paul Eggert  <eggert@cs.ucla.edu>
21829
21830         * m4/c-strtod.m4 (gl_C99_STRTOLD): New macro.
21831         (gl_C_STRTOD): Use it instead of AC_CHECK_DECLS_ONCE(strtold).
21832
21833 2004-12-24  Paul Eggert  <eggert@cs.ucla.edu>
21834
21835         * lib/c-strtod.c (STRTOD): Depend on HAVE_C99_STRTOLD, not
21836         HAVE_DECL_STRTOLD.
21837
21838 2004-12-23  Paul Eggert  <eggert@cs.ucla.edu>
21839
21840         * modules/getdate (Depends-on): Remove alloca-opt.
21841
21842 2004-12-23  Paul Eggert  <eggert@cs.ucla.edu>
21843
21844         * m4/getdate.m4 (gl_GETDATE): Remove AC_FUNC_ALLOCA.
21845
21846 2004-12-23  Paul Eggert  <eggert@cs.ucla.edu>
21847
21848         * lib/argp-parse.c: Include <stddef.h>.
21849         (alignof, alignto): New macros.
21850         (parser_init): Don't assume that void * is aligned sufficiently
21851         for struct option.
21852
21853         * lib/getdate.y (YYSTACK_USE_ALLOCA): Define to 0, since there's no
21854         need to extend the stack.
21855         (YYINITDEPTH): New macro, so that the initial stack isn't overly
21856         large.
21857
21858 2004-12-22  Sergey Poznyakoff  <gray@Mirddin.farlep.net>
21859
21860         * lib/argp-parse.c (parser_init): Avoid arithmetics on void pointers.
21861
21862 2004-12-19  Paul Eggert  <eggert@cs.ucla.edu>
21863
21864         * modules/regex (lib_SOURCES): Remove regex.c, undoing previous
21865         (2004-10-24) change.  Apparently this was a false alarm.
21866
21867         * modules/getdate: Depend on alloca-opt, not alloca.
21868
21869 2004-12-19  Paul Eggert  <eggert@cs.ucla.edu>
21870
21871         * lib/alloca_.h: Conditionalize on _GNULIB_ALLOCA_H, not _ALLOCA_H.
21872         Remove now-obsolete comment about AIX.
21873         * lib/getdate.y: Include <alloca.h> only if HAVE_ALLOCA.
21874         (YYSTACK_USE_ALLOCA): Define to 0 if !HAVE_ALLOCA.
21875         (YYMAXDEPTH): New macro.
21876
21877 2004-12-18  Simon Josefsson  <jas@extundo.com>
21878
21879         * modules/alloca: Depend on alloca-opt, instead of duplicating it.
21880
21881 2004-12-18  Bruno Haible  <bruno@clisp.org>
21882
21883         * m4/fatal-signal.m4 (gl_FATAL_SIGNAL): Also test for sigaction.
21884
21885 2004-12-18  Bruno Haible  <bruno@clisp.org>
21886
21887         * lib/fatal-signal.c (fatal_signals): Make non-const.
21888         (init_fatal_signals): New function.
21889         (uninstall_handlers, install_handlers): Ignore signals that were set to
21890         SIG_IGN.
21891         (at_fatal_signal): Call init_fatal_signals.
21892         (init_fatal_signal_set): Likewise. Ignore signals that were set to
21893         SIG_IGN.
21894         Reported by Paul Eggert.
21895
21896 2004-12-18  Bruno Haible  <bruno@clisp.org>
21897
21898         * doc/alloca.texi: New file.
21899         * doc/alloca-opt.texi: New file.
21900
21901 2004-12-17  Jim Meyering  <jim@meyering.net>
21902
21903         * config/install-sh: Use `(exit N); exit N', not `(exit N); exit'.
21904         Otherwise, install-sh could exit with improper exit status when
21905         exiting via a trapped interrupt.  Thanks to a report from Bob Proulx.
21906
21907 2004-12-16  Simon Josefsson  <jas@extundo.com>
21908
21909         * tests/test-base64.c: Add license.
21910
21911 2004-12-15  Stepan Kasal  <address@hidden>
21912
21913         * gnulib-tool (func_emit_lib_Makefile_am): Shorten a long sed command.
21914
21915 2004-12-12  Paul Eggert  <eggert@cs.ucla.edu>
21916
21917         * modules/getcwd (Files): Add m4/d-ino.m4.
21918         Suggested by Mark D. Baushke.
21919
21920 2004-12-08  Paul Eggert  <eggert@cs.ucla.edu>
21921
21922         * lib/getdate.y (textint): New member "negative".
21923         (time_zone_hhmm): New function.
21924         Expect 14 shift-reduce conflicts, not 13.
21925         (o_colon_minutes): New rule.
21926         (time, zone): Use it to add support for +HH:MM, UTC+HH:MM.
21927         (yylex): Set the "negative" member of signed numbers.
21928
21929 2004-12-08  Paul Eggert  <eggert@cs.ucla.edu>
21930
21931         * doc/getdate.texi (Time of day items, Time zone items):
21932         Describe new formats +00:00, UTC+00:00.
21933
21934 2004-12-07  Paul Eggert  <eggert@cs.ucla.edu>
21935
21936         * m4/ls-mntd-fs.m4 (AC_FUNC_GETMNTENT): Fix typo in previous change:
21937         spurious "-l"s.  Problem reported by Stepan Kasal.
21938
21939 2004-12-06  Paul Eggert  <eggert@cs.ucla.edu>
21940
21941         * m4/ls-mntd-fs.m4 (AC_FUNC_GETMNTENT): New macro, to work around bug
21942         in Autoconf 2.59.  Problem reported by Mark D. Baushke.
21943
21944 2004-12-04  Simon Josefsson  <jas@extundo.com>
21945
21946         * modules/getaddrinfo (License): Add LGPL, reported by Yoann
21947         Vandoorselaere <yoann@prelude-ids.org>.
21948
21949 2004-12-04  Paul Eggert  <eggert@cs.ucla.edu>
21950
21951         Changes imported from coreutils.
21952         * m4/hard-locale.m4 (gl_HARD_LOCALE): Assume locale.h and setlocale
21953         exist.
21954         * m4/human.m4 (gl_HUMAN): Assume locale.h and localeconv exist.
21955
21956 2004-12-04  Paul Eggert  <eggert@cs.ucla.edu>
21957
21958         Changes imported from coreutils.
21959         * lib/hard-locale.c: Assume <locale.h> exists.
21960         Include "strdup.h".
21961         (GLIBC_VERSION): New macro.
21962         (hard_locale): Assume setlocale exists.
21963         Rewrite to avoid #ifdef.
21964         Use strdup rather than malloc + strcpy.
21965         * lib/human.c: Assume <locale.h> exists.
21966         (human_readable): Assume localeconv exists.
21967
21968 2004-12-04  Paul Eggert  <eggert@cs.ucla.edu>
21969
21970         * modules/hard-locale (Depends-on): Add strdup.
21971
21972 2004-12-01  Jakub Jelinek  <jakub@redhat.com>
21973
21974         * lib/mktime.c (__mktime_internal): If SEC_REQUESTED != SEC,
21975         convert T2, not T.  (Imported from libc.)
21976
21977 2004-11-30  Simon Josefsson  <jas@extundo.com>
21978
21979         * modules/restrict (License): Change to LGPL.
21980
21981 2004-11-30  Simon Josefsson  <jas@extundo.com>
21982
21983         * m4/restrict.m4: Add copyright and copying conditions.
21984
21985 2004-11-30  Simon Josefsson  <jas@extundo.com>
21986
21987         * m4/base64.m4: New file.
21988
21989 2004-11-30  Simon Josefsson  <jas@extundo.com>
21990
21991         * MODULES.html.sh (Extra functions based on ANSI C 89): Add
21992         base64.
21993
21994         * tests/test-base64.c: New file.
21995
21996         * modules/base64: New file.
21997
21998 2004-11-30  Paul Eggert  <eggert@cs.ucla.edu>
21999
22000         * m4/getcwd-path-max.m4 (gl_FUNC_GETCWD_PATH_MAX):
22001         Define HAVE_PARTLY_WORKING_GETCWD if getcwd is partly working.
22002
22003         * m4/readutmp.m4 (gl_READUTMP): Don't check for sys/param.h.
22004
22005 2004-11-30  Paul Eggert  <eggert@cs.ucla.edu>
22006
22007         * lib/getcwd.c (is_ENAMETOOLONG): New macro.
22008         (__getcwd.c): Don't restore errno; glibc doesn't.
22009         [HAVE_PARTLY_WORKING_GETCWD && !defined AT_FDCWD]: Try system getcwd
22010         first, falling back to our code only if its results look suspicious.
22011         Ensure that the resulting buffer is only as large as necessary.
22012
22013         * lib/readutmp.c: Include readutmp.h first.
22014         Include <errno.h>, since readutmp.h no longer does that.
22015         * lib/readutmp.h: Don't include <errno.h>,
22016         <sys/param.h>, <time.h>; not needed to establish interface.
22017         (errno): Remove decl.
22018         (HAVE_STRUCT_XTMP_UT_TYPE): Remove; no longer needed.
22019         (UT_TYPE_EQ, UT_TYPE_NOT_DEFINED, UT_TYPE_BOOT_TIME,
22020         UT_TYPE_USER_PROCESS, IS_USER_PROCESS): New macros.
22021
22022 2004-11-28  Simon Josefsson  <jas@extundo.com>
22023
22024         * lib/base64.h, base64.c: New file.
22025
22026 2004-11-27  Paul Eggert  <eggert@cs.ucla.edu>
22027
22028         * lib/getcwd.h: New file, which I forgot to check in on 2004-11-25.
22029
22030 2004-11-26  Paul Eggert  <eggert@cs.ucla.edu>
22031
22032         * modules/getcwd (Files): Add lib/getcwd.h, m4/getcwd.m4.
22033         (Depends-on): Remove pathmax, same.  Add mempcpy.
22034         (configure.ac): GL_FUNC_GETCWD_PATH_MAX -> gl_FUNC_GETCWD.
22035         (Makefile.am): Append getcwd.h to lib_SOURCES.
22036         (Include): Add getcwd.h.
22037         (Maintainer): Change from Jim Meyering to "all, glibc",
22038         since getdate now uses intended-for-glibc code.
22039         * modules/xgetcwd (Files): Remove m4/getcwd.m4.
22040         (Depends-on): Depend on getcwd.  Do not depend on pathmax.
22041
22042 2004-11-25  Paul Eggert  <eggert@cs.ucla.edu>
22043
22044         Fix problems reported by Scott S. Tinsley for HP-UX 11.11 using
22045         HP's ANSI C compiler.
22046         * lib/fsusage.c (statvfs) [HAVE_SYS_STATVFS_H]: Remove decl.
22047         Declaring int functions causes warnings on some modern systems and
22048         shouldn't be needed to compile on ancient ones.
22049         * lib/same.c (MIN) [defined MIN]: Don't define, since it's already
22050         defined.
22051
22052         * lib/getcwd.c: Replace by a copy of glibc/sysdeps/posix/getcwd.c, but
22053         with the following changes.
22054         (__set_errno): Parenthesize properly.
22055         Include <stdbool.h>.
22056         (MIN, MAX, MATCHING_INO): New macros.
22057         (__getcwd): Define with prototype, not K&R form.
22058         Use heuristics to allocate default buffer on stack if possible.
22059         If AT_FDCWD is defined, use openat and fstatat to avoid O(N**2)
22060         behavior, and to avoid the PATH_MAX limit when computing
22061         ../../../../...
22062         Use MATCHING_INO to compare inode number to file.
22063         Check for arithmetic overflow in size calculations.
22064         Fix bug in reallocation of dot array that caused getcwd to fail
22065         on directories nested deeper than 75.
22066         Be more careful about saving errno on error.
22067         Do not use realloc; use only free+malloc, as this is a bit
22068         more flexible and avoids a needless copy operation.
22069         Do not inspect st_dev and st_ino for symbolic links; POSIX
22070         doesn't specify the latter.
22071         Check for closedir errors.
22072         Avoid needless casts.
22073         Use "#ifdef weak_alias" around weak_alias, to be like other
22074         glibc code.
22075         The following changes to getcwd.c have effect only when used in
22076         gnulib; they have no effect inside glibc proper.
22077         (#pragma alloca) [defined _AIX && !defined __GNUC__]: Remove,
22078         as alloca isn't used.
22079         (alloca, __alloca): Likewise.
22080         [!_LIBC]: Include "getcwd.h", "mempcpy.h".
22081         Include <stddef.h>, <stdlib.h>, <string.h>, <limits.h>
22082         unconditionally, as gnulib assumes C89 or better.
22083         Do not include <sys/param.h>.
22084         (errno) [!defined __GNU_LIBRARY__ && !defined STDC_HEADERS]: Remove
22085         no-longer-necessary 'extern int errno' decl; gnulib assumes C89 or
22086         better.
22087         (NULL) [!defined NULL]: Remove; we assume C89 or better.
22088         Include <dirent.h> in a way that is compatible with modern Autoconf.
22089         (_D_ALLOC_NAMELEN, _D_EXACT_NAMLEN):
22090         New macros, if not already defined.
22091         Include <unistd.h> if _LIBC, not if __GNU_LIBRARY__.
22092         Use "_LIBC", not "defined _LIBC", for consistency.
22093         (HAVE_MEMPCPY): Remove; no longer needed now that gnulib has
22094         a mempcpy module.
22095         (__lstat, __closedir, __opendir, __readdir) [!_LIBC]: New macros.
22096         (GETCWD_RETURN_TYPE): Remove.  All uses replaced by char *.
22097         * lib/xgetcwd.c: David MacKenzie's old code was removed, so give
22098         credit only to Jim Meyering and adjust the copyright dates.
22099         Do not include <limits.h>, <stdio.h>, <sys/types.h>,
22100         <stdlib.h>, <unistd.h>, "pathmax.h".
22101         Instead, include "xgetcwd.h" (first) and "getcwd.h".
22102         (INITIAL_BUFFER_SIZE): Remove.
22103         (xgetcwd): Rely on getcwd, since we now depend on a reliable one.
22104
22105 2004-11-25  Paul Eggert  <eggert@cs.ucla.edu>
22106
22107         * m4/getcwd-path-max.m4 (gl_FUNC_GETCWD_PATH_MAX): Renamed from
22108         GL_FUNC_GETCWD_PATH_MAX for consistency.  All uses changed.
22109         Use the _ONCE methods, for efficiency.
22110         Check for fcntl.h.  In test program, include <errno.h>
22111         and <fcntl.h> if available.  Remove old K&R cruft from
22112         test program.  Check for common errors in GNU/Linux,
22113         OpenBSD, and Solaris.  Just set gl_cv_func_getcwd_path_max;
22114         don't do AC_LIBOBJ, as that's getcwd.m4's job.
22115         * m4/getcwd.m4 (gl_FUNC_GETCWD_NULL): Renamed from
22116         AC_FUNC_GETCWD_NULL.  All used changed.  Change cache variable
22117         name accordingly.
22118         (gl_FUNC_GETCWD, gl_PREREQ_GETCWD): New macros.  Revamp to
22119         accommodate new getcwd.c.
22120         * m4/jm-macros.m4 (gl_MACROS): Don't require GL_FUNC_GETCWD_PATH_MAX.
22121         * m4/prereq.m4 (gl_PREREQ): Add gl_FUNC_MEMPCPY.
22122         * m4/xgetcwd.m4 (gl_XGETCWD): Replace with gl_FUNC_GETCWD, since
22123         that's all we need now.
22124
22125 2004-11-23  Sergey Poznyakoff  <gray@Mirddin.farlep.net>
22126
22127         * m4/argp.m4 (gl_ARGP): Require gl_GETOPT_SUBSTITUTE unconditionally:
22128         argp-parse.c depends on getopt internals, that means we should
22129         always use our getopt, to be on the safe side.
22130         * m4/getopt.m4 (gl_GETOPT): Check if GETOPT_H is already set, in
22131         order not to spoil the result of an eventual previous invocation
22132         of gl_GETOPT_SUBSTITUTE.
22133
22134 2004-11-23  Sergey Poznyakoff  <gray@Mirddin.farlep.net>
22135
22136         * lib/getopt_.h: Re-addition of __getopt_argv_const caused
22137         redefinition warnings. To avoid them, include the defines
22138         in `#if !defined __need_getopt ... #endif'. The only place
22139         where __getopt_argv_const is used is in definitions
22140         of getopt_long and getopt_long_only below, which are as well
22141         protected by `#ifndef __need_getopt'.
22142         [defined __GETOPT_PREFIX && !defined __need_getopt]: Undef
22143         __need_getopt after including <stdio.h> and <unistd.h> These
22144         headers might have defined it.
22145
22146 2004-11-23  Paul Eggert  <eggert@cs.ucla.edu>
22147
22148         * m4/utimens.m4 (gl_UTIMENS): Check for futimes function.
22149
22150 2004-11-23  Paul Eggert  <eggert@cs.ucla.edu>
22151
22152         * lib/utimens.c (__attribute__, ATTRIBUTE_UNUSED): New macros.
22153         (futimens): New function, which uses futimes if available.
22154         (futimens, utimens): Support timespec==NULL, with same semantics
22155         as utime and utimens.
22156         * lib/utimens.h (futimens): New decl.
22157
22158 2004-11-23  Jim Meyering  <jim@meyering.net>
22159
22160         * lib/getopt_.h: Remove trailing blanks.
22161
22162 2004-11-23  Jim Meyering  <jim@meyering.net>
22163
22164         * lib/__fpending.c: Add comment.
22165
22166 2004-11-22  Paul Eggert  <eggert@cs.ucla.edu>
22167
22168         * modules/canonicalize (Depends-on): Add xreadlink.
22169         Problem reported by James Youngman.
22170
22171 2004-11-20  Paul Eggert  <eggert@cs.ucla.edu>
22172
22173         * lib/getopt_.h (__GETOPT_CONCAT, __GETOPT_XCONCAT, __GETOPT_ID):
22174         New macros.
22175         (getopt, getopt_long, getopt_long_only, optarg, opterr, optind,
22176         optopt): Use them instead of invoking ## directly; otherwise, the
22177         symbols will be __GETOPT_PREFIXgetopt rather than rpl_getopt.
22178
22179 2004-11-19  Bruno Haible  <bruno@clisp.org>
22180
22181         * lib/strtok_r.c: Move comments from here...
22182         * lib/strtok_r.h: ... to here.
22183
22184 2004-11-17  Paul Eggert  <eggert@cs.ucla.edu>
22185
22186         * m4/calloc.m4 (_AC_FUNC_CALLOC_IF): Check for buggy calloc
22187         implementations that mishandle size_t overflow.
22188
22189 2004-11-17  Paul Eggert  <eggert@cs.ucla.edu>
22190
22191         * lib/realloc.c (rpl_realloc): Call 'free' if n==0, since realloc
22192         might fail.  Problem reported by Yoann Vandoorselaere.
22193         * lib/calloc.c (rpl_calloc): Defend against buggy calloc
22194         implementations that mishandle size_t overflow.
22195
22196 2004-11-16  Paul Eggert  <eggert@cs.ucla.edu>
22197
22198         * modules/canon-host (Depends-on): Add strdup.
22199
22200 2004-11-16  Paul Eggert  <eggert@cs.ucla.edu>
22201
22202         * m4/canon-host.m4 (gl_CANON_HOST): Check for getaddrinfo.
22203
22204 2004-11-16  Paul Eggert  <eggert@cs.ucla.edu>
22205
22206         * lib/canon-host.c: Include "strdup.h".
22207         (canon_host): Use getaddrinfo if available, so that IPv6 works.
22208         Use strdup instead of malloc/strcpy to duplicate strings.
22209
22210         * lib/human.h (LONGEST_HUMAN_READABLE): Add 1 for space before unit.
22211         (human_space_before_unit): New constant.
22212         * lib/human.c (human_readable): Support it.
22213
22214         * lib/xgetcwd.c: Include <limits.h>, for PATH_MAX.
22215         (xgetcwd): Set errno correctly when failing.
22216         Work around Solaris 9 bug: getcwd sets errno==ERANGE even though
22217         the failure is actually due to a PATH_MAX problem.
22218
22219         Further getopt changes to make it more likely that glibc will
22220         buy the changes back.
22221         * lib/getopt.c (POSIXLY_CORRECT): New constant.
22222         (getopt): Use it, so to preserve glibc semantic
22223         * lib/getopt1.c (getopt_long, getopt_long_only): Arg is char * const *
22224         when compiling for libc.
22225         * lib/getopt_.h (__getopt_argv_const): Bring it back.
22226         (getopt_long, getopt_long_only): Use it.
22227
22228         * lib/getopt.c (_getopt_initialize, _getopt_internal_r,
22229         _getopt_internal): New arg POSIXLY_CORRECT.  All callers changed.
22230         (getopt): Argv is now char * const *, as per standard.
22231         (_getopt_internal_r, _getopt_internal): Argv is now char **,
22232         not char *__getopt_argv_const *.
22233         * lib/getopt1.c (getopt_long, _getopt_long_r, getopt_long_only,
22234         _getopt_long_only_r): Likewise.
22235         * lib/getopt_.h (getopt, getopt_long, geopt_long_only): Likewise.
22236         * lib/getopt_int.h (_getopt_internal, _getopt_internal_r,
22237         _getopt_long_r, _getopt_long_only_r): Likewise.
22238         * lib/getopt_.h (__getopt_argv_const): Remove.
22239         (getopt): Argv is now char * const *, as per standard.
22240
22241         * lib/getdate.y (tORDINAL): New token.
22242         (day, relunit): Allow it for relative times.
22243         (relative_time_table): Use tORDINAL for ordinals.
22244
22245 2004-11-16  Paul Eggert  <eggert@cs.ucla.edu>
22246
22247         * doc/getdate.texi (General date syntax): "next" is 1, not 2.
22248         Document that "second" isn't allowed as an ordinal number.
22249
22250 2004-11-16  Jim Meyering  <jim@meyering.net>
22251
22252         * modules/closeout (Depends-on): Add fpending.
22253
22254 2004-11-15  Jim Meyering  <jim@meyering.net>
22255
22256         * lib/closeout.c: Include "__fpending.h" once again.
22257         Include <stdbool.h>.
22258         (close_stdout): Don't fail just because stdout was closed initially,
22259         since some programs don't write to stdout in the normal course of
22260         operation (other than --version and --help), and we don't want this
22261         function to make e.g. `touch file >&-' fail.
22262         But do fail if it was closed and someone has tried to write to it.
22263         E.g., `printf foo >&-' must fail.
22264
22265 2004-11-13  Jim Meyering  <jim@meyering.net>
22266
22267         * m4/jm-macros.m4: Do require gl_FUNC_FPENDING.
22268
22269 2004-11-12  Simon Josefsson  <jas@extundo.com>
22270
22271         * config/srclist.txt: Add strtok_r.c, glibc bought our changes, but a
22272         small doc fix is still pending.
22273
22274 2004-11-11  Simon Josefsson  <jas@extundo.com>
22275
22276         * modules/strtok_r: New file.
22277
22278         * MODULES.html.sh (Support for systems lacking POSIX:2001): Add
22279         strtok_r.
22280
22281 2004-11-11  Simon Josefsson  <jas@extundo.com>
22282
22283         * m4/strtok_r.m4: New file.
22284
22285         * m4/getopt.m4: Replace opterr.
22286
22287 2004-11-11  Simon Josefsson  <jas@extundo.com>
22288
22289         * lib/strtok_r.h, strtok_r.c: New file.
22290
22291 2004-11-11  Paul Eggert  <eggert@cs.ucla.edu>
22292
22293         * m4/getopt.m4 (gl_GETOPT_SUBSTITUTE): Define __GETOPT_PREFIX instead
22294         of replacing opterr, getopt, etc.  This should handle the
22295         powerpc-apple-darwin5.5 problem recently noted by Simon Josefsson.
22296
22297 2004-11-11  Paul Eggert  <eggert@cs.ucla.edu>
22298
22299         * lib/getopt_.h (__getopt_argv_const): New macro, to be used so that
22300         we can stop lying to compilers about the constness of argv when we
22301         are compiled outside glibc.
22302         (getopt, getopt_long, getopt_long_only): Use it.
22303         * lib/getopt.c (_getopt_initialize, _getopt_internal_r,
22304         _getopt_internal, getopt): Likewise.
22305         * lib/getopt1.c (getopt_long, _getopt_long_r, getopt_long_only,
22306         _getopt_long_only_r): Likewise.
22307         * lib/getopt_int.h (_getopt_internal, _getopt_internal_r,
22308         _getopt_long_r, _getopt_long_only_r): Likewise.
22309
22310         * lib/getopt_.h [defined __GETOPT_PREFIX && !defined __need_getopt]:
22311         Include <stdlib.h> and <stdio.h>, and <unistd.h> if available.
22312         Then rename getopt to __GETOPT_PREFIX##getopt, and so forth for
22313         the other external symbols.
22314         (getopt) [!defined __GNU_LIBRARY]: Use prototype, not old-style
22315         declaration, since the above renaming now works around collisions.
22316
22317 2004-11-11  Jim Meyering  <jim@meyering.net>
22318
22319         * lib/linebreak.c: Remove trailing blanks.
22320         * lib/alloca_.h: Likewise.
22321         * lib/acosl.c: Likewise.
22322         * lib/euidaccess.c: Likewise.
22323         * lib/allocsa.h: Likewise.
22324
22325 2004-11-10  Simon Josefsson  <jas@extundo.com>
22326
22327         * m4/getaddrinfo.m4: New file.
22328
22329 2004-11-10  Simon Josefsson  <jas@extundo.com>
22330
22331         * lib/getaddrinfo.h, lib/getaddrinfo.c: New files.
22332
22333 2004-11-10  Simon Josefsson  <jas@extundo.com>
22334
22335         * MODULES.html.sh (Support for systems lacking POSIX:2001): Add
22336         getaddrinfo.
22337
22338         * modules/getaddrinfo: New file.
22339
22340 2004-11-10  Paul Eggert  <eggert@cs.ucla.edu>
22341
22342         * m4/prereq.m4 (gl_PREREQ): Require gt_FUNC_SETENV.
22343
22344 2004-11-10  Paul Eggert  <eggert@cs.ucla.edu>
22345
22346         * lib/mktime.c (SHR): New macro, which is a portable
22347         substitute for >> that should work even on Crays.
22348         (TIME_T_MIDPOINT, ydhms_diff, __mktime_internal): Use it.
22349         Problem reported by Mark D. Baushke in
22350         <http://lists.gnu.org/archive/html/bug-gnulib/2004-11/msg00071.html>.
22351         * lib/getdate.y (SHR): Likewise.
22352         (tm_diff): Use it.
22353         * lib/strftime.c (SHR): Likewise.
22354         (tm_diff): Use it.
22355         * lib/quotearg.c (struct quoting_options): Use unsigned int for
22356         quote_these_too, so that right shifts are well defined.  All uses
22357         changed.
22358
22359 2004-11-10  Jim Meyering  <jim@meyering.net>
22360
22361         Ensure that no close failure goes unreported.
22362         * lib/closeout.c (close_stdout): Always close stdout.  I.e., don't
22363         return early when it seems there's nothing to flush.
22364         Don't include __fpending.h.
22365
22366 2004-11-10  Jim Meyering  <jim@meyering.net>
22367
22368         * modules/closeout (Depends-on): Remove fpending.
22369
22370 2004-11-10  Jim Meyering  <jim@meyering.net>
22371
22372         * m4/jm-macros.m4 (gl_MACROS): Don't require gl_FUNC_FPENDING.
22373
22374 2004-11-09  Paul Eggert  <eggert@cs.ucla.edu>
22375
22376         * m4/strftime.m4 (_gl_STRFTIME_PREREQS): Remove.  Move its body to
22377         gl_FUNC_STRFTIME.
22378         (gl_FUNC_STRFTIME): Use AC_CHECK_FUNCS_ONCE and AC_CHECK_HEADERS_ONCE
22379         and AC_REQUIRE when possible, to avoid duplicate checks.
22380         Check for <wchar.h>.
22381
22382 2004-11-09  Paul Eggert  <eggert@cs.ucla.edu>
22383
22384         * lib/strftime.c (DO_MULTIBYTE): Check for wchar.h, too.
22385
22386 2004-11-09  Bruno Haible  <bruno@clisp.org>
22387
22388         * m4/sockpfaf.m4: New file.
22389
22390 2004-11-05  Bruno Haible  <bruno@clisp.org>
22391
22392         * lib/readlink.c: Include stddef.h, needed for size_t on Woe32.
22393         Reported by Mark D. Baushke <mdb@cvshome.org>.
22394
22395 2004-11-04  Bruno Haible  <bruno@clisp.org>
22396
22397         2004-09-11  Bruno Haible  <bruno@clisp.org>
22398                 * allocsa.valgrind: New file.
22399         2004-02-06  Bruno Haible  <bruno@clisp.org>
22400                 * allocsa.h (sa_alignof): Define differently with HP-UX cc, to
22401                 avoid a bug of this cc on HP-UX 10.20 dealing with enums.
22402                 Reported by Christopher Seip <chris.seip@hp.com>.
22403
22404 2004-11-04  Bruno Haible  <bruno@clisp.org>
22405
22406         * modules/allocsa (Files): Add lib/allocsa.valgrind.
22407         (Makefile.am): Distribute it.
22408
22409 2004-11-03  Paul Eggert  <eggert@cs.ucla.edu>
22410
22411         * lib/xreadlink.c (xreadlink): AIX and HP-UX readlink return -1
22412         with errno == ERANGE if the buffer is too small.
22413         Problem reported by Mark D. Baushke.
22414
22415 2004-11-03  Albert Chin  <china@thewrittenword.com>
22416             Paul Eggert  <eggert@cs.ucla.edu>
22417
22418         * m4/uint32_t.m4 (gl_AC_TYPE_UINT32_T): When determining uint32_t
22419         equivalent, substitute $ac_type for equivalent type rather than
22420         blindly using uint32_t *always* which won't work if uint32_t is not
22421         available.  Define _UINT32_T to work around typedef of uint32_t if
22422         <sys/sched.h>, <pthread.h>, or <semaphore.h> used on Solaris
22423         2.5.1.
22424
22425 2004-11-02  Paul Eggert  <eggert@cs.ucla.edu>
22426
22427         * m4/jm-macros.m4: Sync from coreutils.
22428         (gl_MACROS): Check for mbrlen, for pathchk.
22429         (gl_CHECK_ALL_TYPES): Require AC_TYPE_MBSTATE_T, for pathchk.
22430
22431 2004-11-02  Paul Eggert  <eggert@cs.ucla.edu>
22432
22433         * lib/xreadlink.c (MAXSIZE): New macro.
22434         (xreadlink): Use it instead of SSIZE_MAX.  Ensure initial buffer
22435         size does not exceed MAXSIZE.  Avoid cast.
22436         As suggested by Mark D. Baushke in
22437         <http://lists.gnu.org/archive/html/bug-gnulib/2004-11/msg00009.html>,
22438         if readlink fails with buffer size just under MAXSIZE, try again
22439         with MAXSIZE.
22440
22441 2004-11-02  Paul Eggert  <eggert@cs.ucla.edu>
22442
22443         * config/srclist.txt: Add mktime.c; glibc bought all our changes.
22444
22445 2004-11-02  Derek R. Price  <derek@ximbiot.com>
22446         and  Paul Eggert  <eggert@cs.ucla.edu>
22447
22448         * lib/getdate.y [!TEST]: Include <stdio.h>, since we use sprintf now.
22449         (get_date): Overparenthesize to avoid GCC warning.
22450
22451 2004-11-02  Bruno Haible  <bruno@clisp.org>
22452
22453         * m4/setenv.m4 (gt_FUNC_SETENV): Define VOID_UNSETENV if unsetenv()
22454         returns void.
22455
22456 2004-11-02  Bruno Haible  <bruno@clisp.org>
22457
22458         * lib/setenv.h (unsetenv): Define as a macro if the system's unsetenv()
22459         function returns void.
22460
22461 2004-11-01  Paul Eggert  <eggert@cs.ucla.edu>
22462
22463         * m4/getpass.m4 (gl_PREREQ_GETPASS): Check for declarations of
22464         fflush_unlocked, flockfile, funlockfile, funlockfile,
22465         fputs_unlocked, putc_unlocked.
22466
22467 2004-11-01  Paul Eggert  <eggert@cs.ucla.edu>
22468
22469         * lib/getpass.c (fflush_unlocked, flockfile, funlockfile)
22470         (funlockfile, fputs_unlocked, putc_unlocked): Don't define if
22471         already declared.
22472
22473 2004-10-29  Paul Eggert  <eggert@cs.ucla.edu>
22474
22475         * modules/getdate (Files): Add doc/getdate.texi.
22476         (Depends-on): Add setenv, xalloc.
22477
22478 2004-10-29  Paul Eggert  <eggert@cs.ucla.edu>
22479
22480         * lib/getdate.y: Add support for TZ="foo" within a date string.
22481         Fix some bugs near time_t boundaries.  Reject dates with
22482         out-of-range components, e.g., "Sept 31".
22483         Include <stdlib.h>, "setenv.h", "xalloc.h".
22484         (ISDIGIT_LOCALE): Remove; unused.
22485         Note that the TZ and time functions used here are not reentrant.
22486         (mktime_ok, get_tz): New functions.
22487         (TZBUFSIZE): New constant.
22488         (get_date): Parse leading TZ="foo".  Reject out-of-range components;.
22489         This requires that we sometimes generate our own TZ="XXX..." setting.
22490
22491 2004-10-29  Paul Eggert  <eggert@cs.ucla.edu>
22492
22493         * doc/getdate.texi: New file, from coreutils with modifications for
22494         the new TZ parsing.
22495
22496 2004-10-27  Derek R. Price  <derek@ximbiot.com>
22497
22498         * lib/mktime.c (not_equal_tm): Remove redundant check.
22499
22500 2004-10-24  Paul Eggert  <eggert@cs.ucla.edu>
22501
22502         * modules/regex (lib_SOURCES): Add regex.c.
22503         Reported by James Youngman in
22504         <http://lists.gnu.org/archive/html/bug-gnulib/2004-10/msg00199.html>.
22505
22506 2004-10-24  Paul Eggert  <eggert@cs.ucla.edu>
22507
22508         * lib/getdate.y: Use Bison 1.875 features, and some minor
22509         code cleanups.  This change does not affect semantics.
22510         Don't include <stdlib.h>; no longer needed.
22511         Don't include unlocked-io.h; only the "#if TEST" code uses
22512         stdio, and performance isn't crucial there.
22513         (PC, YYLEX_PARAM, YYPARSE_PARAM): Remove; replaced by
22514         Bison 1.875 features as described below.
22515         All uses of "PC." replaced by "pc->".
22516         (YYSTYPE): Add a forward declaration.
22517         (yylex, yyerror): Use full prototypes in forward decls.
22518         Use "%pure-parser" rather than obsolescent "%pure_parser".
22519         Use %parse-param and %lex-param instead of obsolescent
22520         YYPARSE_PARAM and YYLEX_PARAM.
22521         (meridian_table, month_and_day_table, time_units_table,
22522         relative_time_table, time_zone_table, military_table,
22523         lookup_zone, lookup_word, get_date):
22524         Use NULL instead of 0 where appropriate.
22525         (to_hour): Avoid abort (), to avoid a dependency on
22526         stdlib.h.
22527         (yyerror, yylex): Now accepts parser_control * arg.
22528         (main) [TEST]: Use '\0' rather than 0 for char.
22529
22530 2004-10-22  Paul Eggert  <eggert@cs.ucla.edu>
22531
22532         * m4/getpagesize.m4 (gl_GETPAGESIZE): Check for <sys/param.h>.
22533
22534 2004-10-22  Paul Eggert  <eggert@cs.ucla.edu>
22535
22536         * lib/getpagesize.c (getpagesize): Don't assume <sys/param.h> exists.
22537         It's now the caller's responsibility to handle the case where
22538         !HAVE_GETPAGESIZE && !defined getpagesize.
22539
22540         * lib/mktime.c (leapyear): Arg is long int, not int.
22541
22542 2004-10-18  Paul Eggert  <eggert@cs.ucla.edu>
22543
22544         * lib/argp-fs-xinl.c, argp-xinl.c: Update from glibc.
22545
22546 2004-10-17  Paul Eggert  <eggert@cs.ucla.edu>
22547
22548         * gnulib-tool (func_emit_lib_Makefile_am): Fix typo: a $ was
22549         missing.  Problem reported by James Youngman.
22550
22551 2004-10-16  Simon Josefsson  <jas@extundo.com>
22552
22553         * gnulib-tool: Fix comments.  Fix parse problem.
22554         (func_emit_lib_Makefile_am): Don't hard code a in libgl_a_SOURCES.
22555
22556 2004-10-15  Paul Eggert  <eggert@cs.ucla.edu>
22557
22558         * m4/getopt.m4 (gl_GETOPT): Detect and reject the incompatible BSD
22559         implementation of getopt_long.  Problem reported by Alexander Taler in:
22560         http://lists.gnu.org/archive/html/bug-gnulib/2004-10/msg00103.html
22561
22562 2004-10-15  Bruno Haible  <bruno@clisp.org>
22563
22564         * gnulib-tool: Untabify. Initialize supplied_libname.
22565         (func_usage): More homogenous output.
22566         (func_modules_transitive_closure, func_modules_to_filelist,
22567         func_emit_lib_Makefile_am): New functions.
22568         (func_import): New function, extracted from big case statement. Use
22569         func_get_license, func_modules_transitive_closure,
22570         func_modules_to_filelist, func_emit_lib_Makefile_am. Initialize
22571         opt_lgpl. Don't use test -a, as it's not portable.
22572         (func_create_testdir): Use func_modules_transitive_closure,
22573         func_modules_to_filelist, func_emit_lib_Makefile_am.
22574
22575 2004-10-15  Bruno Haible  <bruno@clisp.org>
22576
22577         * gnulib-tool (func_import): Let gl_INIT define LTALLOCA when needed.
22578
22579 2004-10-15  Bruno Haible  <bruno@clisp.org>
22580
22581         * gnulib-tool (func_emit_lib_Makefile_am): Add markers to separate
22582         the portions belonging to each module.
22583         Suggested by Derek Robert Price <derek@ximbiot.com>.
22584
22585 2004-10-12  Simon Josefsson  <jas@extundo.com>
22586
22587         * lib/getpass.c (fflush_unlocked, flockfile, funlockfile)
22588         (fputs_unlocked, putc_unlocked) [!_LIBCS && !USE_UNLOCKED_IO]: Map
22589         to real functions.
22590
22591 2004-10-11  Yoann Vandoorselaere  <yoann@prelude-ids.org>
22592
22593         * modules/vsnprintf: New file.
22594
22595 2004-10-11  Yoann Vandoorselaere  <yoann@prelude-ids.org>
22596
22597         * m4/vsnprintf.m4: New file.
22598
22599 2004-10-11  Yoann Vandoorselaere  <yoann@prelude-ids.org>
22600
22601         * lib/vsnprintf.h: New file.
22602         * lib/vsnprintf.c: New file.
22603
22604 2004-10-11  Bruno Haible  <bruno@clisp.org>
22605
22606         * MODULES.html.sh (Support for systems lacking ISO C 99): Add
22607         vsnprintf.
22608
22609 2004-10-10  Paul Eggert  <eggert@cs.ucla.edu>
22610
22611         * config/srclistvars.sh: Add GNUSTANDARDS (for eggert only).
22612
22613 2004-10-07  Bruno Haible  <bruno@clisp.org>
22614
22615         * lib/snprintf.c (snprintf): Avoid a memory allocation if the result
22616         fits into the provided buffer.
22617
22618 2004-10-06  Paul Eggert  <eggert@cs.ucla.edu>
22619
22620         * lib/diacrit.c, diacrit.h: Add GPL notice.
22621
22622         * lib/atanl.c, logl.c: Add GPL notice, to match glibc's added LGPL
22623         notice.
22624         * lib/atanl.c (atanl): Keep the code as similar to glibc as possible.
22625         * lib/logl.c (logl): Keep the code as similar to glibc as possible.
22626         This avoids a potential constant-folding bug.
22627
22628 2004-10-05  Bruno Haible  <bruno@clisp.org>
22629
22630         * m4/strsep.m4 (gl_FUNC_STRSEP): Require AC_GNU_SOURCE. Don't check
22631         for the declaration of strsep.
22632
22633 2004-10-05  Bruno Haible  <bruno@clisp.org>
22634
22635         * lib/strsep.h: Don't declare strsep() if HAVE_STRSEP.
22636
22637 2004-10-04  Simon Josefsson  <jas@extundo.com>
22638
22639         * modules/memmem: New file.
22640         * tests/test-memmem.c: New file.
22641         * MODULES.html.sh (Extra functions based on ANSI C 89): Add memmem.
22642
22643 2004-10-04  Simon Josefsson  <jas@extundo.com>
22644
22645         * m4/memmem.m4: New file.
22646
22647 2004-10-04  Simon Josefsson  <jas@extundo.com>
22648
22649         * lib/memmem.h: New file.
22650         * lib/memmem.c: New file, taken from glibc.
22651
22652 2004-10-04  Simon Josefsson  <jas@extundo.com>
22653
22654         * lib/error.c, md5.c, regex.c: Use '#if USE_UNLOCKED_IO' instead of
22655         '#ifdef USE_UNLOCKED_IO'.
22656
22657 2004-10-04  Simon Josefsson  <jas@extundo.com>
22658
22659         * config/srclist.txt: Add memmem from glibc.
22660
22661 2004-10-04  Paul Eggert  <eggert@cs.ucla.edu>
22662
22663         * modules/xalloc (Files, Makefile.am): Remove xstrdup.c.
22664
22665         * modules/argmatch, modules/argp, modules/closeout, modules/error,
22666         modules/exclude, modules/getdate, modules/getline,
22667         modules/getndelim2, modules/getpass, modules/getpass-gnu,
22668         modules/getusershell, modules/linebuffer, modules/md5,
22669         modules/mountlist, modules/posixtm, modules/readtokens,
22670         modules/readutmp, modules/regex, modules/sha1,
22671         modules/version-etc, modules/yesno:
22672         Remove dependency on unlocked-io.
22673
22674 2004-10-04  Paul Eggert  <eggert@cs.ucla.edu>
22675
22676         * m4/xalloc.m4 (gl_PREREQ_XSTRDUP): Remove.  All uses removed.
22677
22678         * m4/unlocked-io.m4: Add copyright notice.
22679         (gl_FUNC_GLIBC_UNLOCKED_IO): Define USE_UNLOCKED_IO.
22680
22681 2004-10-04  Paul Eggert  <eggert@cs.ucla.edu>
22682
22683         * lib/xalloc.h (xmemdup): Renamed from xclone.  All uses changed.
22684         * lib/xmalloc.c (xmemdup): Likewise.
22685         * lib/xalloc.h (CCLONE, CLONE, NEW, XCALLOC, XMALLOC, XREALLOC,
22686         XFREE): Remove these long-obsolescent macros.
22687         * lib/xmalloc.c (xstrdup): Implementation moved here from xstrdup.c
22688         * lib/xstrdup.c: Remove.
22689
22690         * lib/regex.c (re_comp): Cast gettext return value to char *,
22691         Problem reported by Martin Neitzel via Mark D. Baushke.
22692
22693 2004-10-04  Paul Eggert  <eggert@cs.ucla.edu>
22694
22695         * lib/argmatch.c, closeout.c, error.c, exclude.c, getdate.y,
22696         getndelim2.c, getpass.c, getusershell.c, linebuffer.c,
22697         md5.c, mountlist.c, posixtm.c, readtokens.c, readutmp.c,
22698         regex.c, sha1.c, version-etc.c, yesno.c:
22699         Include "unlocked-io.h" only if USE_UNLOCKED_IO.
22700         * lib/unlocked-io.h: Don't worry about USE_UNLOCKED_IO; that's now
22701         the includer's responsibility.
22702
22703         Sync from coreutils.
22704
22705         * lib/modechange.c (mode_compile): Don't decrement a pointer that
22706         points to the start of a string, as the C Standard says the
22707         resulting behavior is undefined.
22708
22709         * lib/backupfile.h (enum backuptype): Rename none -> no_backups,
22710         simple -> simple_backups, numbered_existing ->
22711         numbered_existing_backups, numbered -> numbered_backups
22712         to avoid shadowing problems.  All uses changed.
22713         * lib/argmatch.c (enum backuptype) [defined TEST]: Likewise.
22714         * lib/backupfile.c (check_extension, numbered_backup):
22715         Rename locals to avoid shadowing 'basename'.
22716         * lib/backupfile.h (VALID_BACKUP_TYPE): Don't evaluate arg more than
22717         once.
22718
22719         * lib/.cppi-disable: Add getopt_.h, getopt_int.h.
22720         * lib/.cvsignore: Add getopt.h.
22721
22722 2004-10-04  Bruno Haible  <bruno@clisp.org>
22723
22724         * modules/README: New file.
22725         * gnulib-tool (func_all_modules, func_verify_module): modules/README is
22726         not a module.
22727
22728 2004-10-02  Jim Meyering  <jim@meyering.net>
22729
22730         * lib/dirfd.h, getpagesize.h: Add copyright notice.
22731
22732 2004-10-01  Yoann Vandoorselaere  <yoann@prelude-ids.org>
22733
22734         * modules/strsep: New file.
22735
22736 2004-10-01  Yoann Vandoorselaere  <yoann@prelude-ids.org>
22737
22738         * m4/strsep.m4: New file.
22739
22740 2004-10-01  Yoann Vandoorselaere  <yoann@prelude-ids.org>
22741
22742         * lib/strsep.h: New file.
22743         * lib/strsep.c: New file.
22744
22745 2004-10-01  Simon Josefsson  <jas@extundo.com>
22746
22747         * lib/snprintf.c (snprintf): Handle size==0.
22748
22749 2004-10-01  Simon Josefsson  <jas@extundo.com>
22750             Bruno Haible  <bruno@clisp.org>
22751
22752         * lib/snprintf.c: Include <stdarg.h>, <stdlib.h>, <string.h>.
22753         (snprintf): Declare 'args'.
22754
22755 2004-10-01  Paul Eggert  <eggert@cs.ucla.edu>
22756
22757         * lib/snprintf.c: Remove comments as to why each header is needed.
22758
22759 2004-10-01  Bruno Haible  <bruno@clisp.org>
22760
22761         * MODULES.html.sh: Add strsep.
22762
22763 2004-09-30  Simon Josefsson  <jas@extundo.com>
22764
22765         * modules/snprintf: New file.
22766
22767 2004-09-30  Simon Josefsson  <jas@extundo.com>
22768
22769         * m4/snprintf.m4: New file.
22770
22771 2004-09-30  Simon Josefsson  <jas@extundo.com>
22772
22773         * lib/snprintf.h, lib/snprintf.c: New files.
22774
22775 2004-09-30  Sergey Poznyakoff  <gray@Mirddin.farlep.net>
22776
22777         * lib/argp-help.c (canon_doc_option): Fixed coredump if *name==NULL
22778         (hol_entry_help): Never translate an empty string.
22779         Do not translate option tag (opt->name) if OPTION_NO_TRANS is set
22780         * lib/argp.h (OPTION_NO_TRANS): New option.
22781
22782 2004-09-30  Paul Eggert  <eggert@cs.ucla.edu>
22783
22784         * modules/argp (Maintainer): Replace Simon Josefsson
22785         by Sergey Poznyakoff.
22786
22787 2004-09-30  Paul Eggert  <eggert@cs.ucla.edu>
22788
22789         * config/srclist.txt: Comment-out argp/argp.h, until we get the argp
22790         changes merged back into glibc.
22791
22792 2004-09-30  Paul Eggert  <eggert@cs.ucla.edu>
22793
22794         * MODULES.html.sh (Support for systems lacking ISO C 99): Add snprintf.
22795
22796 2004-09-29  Oskar Liljeblad  <oskar@osk.mine.nu>
22797
22798         * lib/xvasprintf.c: Include xalloc.h.
22799         (xvasprintf): Use xalloc_die, not xmalloc_die.
22800
22801 2004-09-29  Bruno Haible  <bruno@clisp.org>
22802
22803         * modules/alloca-opt: New file, derived from modules/alloca.
22804         * modules/allocsa: Depend on alloca-opt instead of alloca.
22805         * modules/setenv: Likewise.
22806         * modules/vasnprintf: Likewise.
22807         * MODULES.html.sh: Add alloca-opt.
22808
22809 2004-09-28  Simon Josefsson  <jas@extundo.com>
22810
22811         * gnulib-tool: New parameter --lgpl, to asseert that modules are
22812         LGPL, and to replace license template from GPL to LGPL.
22813
22814 2004-09-28  Paul Eggert  <eggert@cs.ucla.edu>
22815
22816         * modules/dummy: Change license to LGPL.
22817
22818 2004-09-28  Paul Eggert  <eggert@cs.ucla.edu>
22819
22820         * lib/dummy.c: Change copyright notice to FSF, and license to GPL.
22821
22822 2004-09-24  Simon Josefsson  <jas@extundo.com>
22823
22824         * modules/minmax (License): Change from GPL to LGPL.
22825
22826 2004-09-23  Simon Josefsson  <jas@extundo.com>
22827
22828         * gnulib-tool (--import): Typo.
22829
22830 2004-09-23  Simon Josefsson  <jas@extundo.com>
22831
22832         * gnulib-tool (--import): Make sure *.m4 end up in m4/ by default.
22833
22834 2004-09-22  Bruno Haible  <bruno@clisp.org>
22835
22836         * modules/*: Add 'License' field.
22837         * gnulib-tool: Accept --extract-license option.
22838         (func_get_license): New function.
22839
22840 2004-09-21  Bruno Haible  <bruno@clisp.org>
22841
22842         * modules/vasnprintf (Files): Add m4/stdint_h.m4, m4/inttypes_h.m4.
22843         Reported by Simon Josefsson.
22844
22845 2004-09-20  Paul Eggert  <eggert@cs.ucla.edu>
22846
22847         * modules/inttostr (Files): Add m4/longlong.m4, since it uses
22848         gl_AC_TYPE_LONG_LONG.
22849
22850 2004-09-20  Paul Eggert  <eggert@cs.ucla.edu>
22851
22852         * config/srclist.txt: Add getsubopt.c, since libc bought our changes.
22853
22854 2004-09-18  Simon Josefsson  <jas@extundo.com>
22855         and  Paul Eggert  <eggert@cs.ucla.edu>
22856
22857         * gnulib-tool: Replace various ad-hoc automake/autoconf/aclocal
22858         calls with autoreconf.  Define GL_LIB.
22859
22860 2004-09-14  Karl Berry  <karl@gnu.org>
22861
22862         * config/srclist.txt: unsync setenv.c, sigh.
22863
22864 2004-09-13  Paul Eggert  <eggert@cs.ucla.edu>
22865
22866         * lib/argp-pvh.c (argp_program_version_hook): Provide initial value.
22867         Problem reported by Bruno Haible in:
22868         http://lists.gnu.org/archive/html/bug-tar/2004-09/msg00023.html
22869
22870 2004-09-13  Paul Eggert  <eggert@cs.ucla.edu>
22871
22872         * config/srclist.txt: Comment out argp-pvh.c.
22873
22874 2004-09-11  Paul Eggert  <eggert@cs.ucla.edu>
22875
22876         * lib/mempcpy.h: Wrap the entire include file inside #ifndef mempcpy,
22877         in case some system header has #define'd it.  Problem reported by
22878         Soeren D. Schulze in
22879         <http://lists.gnu.org/archive/html/bug-gnulib/2004-09/msg00017.html>.
22880
22881 2004-09-09  Karl Berry  <karl@gnu.org>
22882
22883         * regex.[ch]: delete from the root.  These were supposed to be
22884                 synced with emacs cvs, but this has not happened for about
22885                 a year, and anyway nothing else uses emacs regex.[ch].
22886                 bug-gnulib mail from Jeff Bailey, 9 Sep 2004 15:49:24 -0700.
22887                 lib/regex[.ch] is untouched.
22888
22889 2004-09-09  Bruno Haible  <bruno@clisp.org>
22890
22891         * modules/vasnprintf (Files): Add m4/eoverflow.m4.
22892
22893 2004-09-09  Bruno Haible  <bruno@clisp.org>
22894
22895         * m4/eoverflow.m4: New file, taken from GNU libiconv eilseq.m4 with
22896         modifications.
22897         * m4/vasnprintf.m4 (gl_FUNC_VASNPRINTF): Require gl_EOVERFLOW.
22898
22899 2004-09-08  Oskar Liljeblad  <oskar@osk.mine.nu>
22900
22901         * modules/xvasprintf: New file.
22902         * MODULES.html.sh (Extra functions based on ANSI C 89): Add vasprintf.
22903
22904 2004-09-08  Oskar Liljeblad  <oskar@osk.mine.nu>
22905
22906         * lib/xvasprintf.h: New file.
22907         * lib/xvasprintf.c: New file.
22908         * lib/xasprintf.c: New file.
22909
22910 2004-09-08  Bruno Haible  <bruno@clisp.org>
22911
22912         * m4/stdint.m4: New file, taken from GNU clisp with modifications.
22913
22914 2004-09-08  Bruno Haible  <bruno@clisp.org>
22915
22916         * lib/vasnprintf.c (VASNPRINTF): Signal EOVERFLOW if the resulting
22917         length is > INT_MAX.
22918         * lib/vasprintf.c (vasprintf): Don't test for length > INT_MAX any
22919         more.
22920
22921 2004-09-08  Bruno Haible  <bruno@clisp.org>
22922
22923         * lib/stdint_.h: New file, taken from GNU clisp.
22924
22925 2004-09-08  Bruno Haible  <bruno@clisp.org>
22926             Oskar Liljeblad  <oskar@osk.mine.nu>
22927
22928         * modules/stdint: New file.
22929         * MODULES.html.sh (Support for systems lacking ISO C 99): Add stdint.
22930
22931 2004-08-19  Paul Eggert  <eggert@cs.ucla.edu>
22932
22933         Import from coreutils.
22934         * lib/userspec.c: Don't use <alloca.h>, so that we don't use alloca on
22935         strings on unbounded length.  alloca's performance benefits aren't
22936         that important here.
22937         (V_STRDUP): Remove.
22938         (parse_with_separator): New function, with most of the internals
22939         of the old parse_user_spec.  Allow user to omit both user and group,
22940         for compatibility with FreeBSD.
22941         Clone only the user name, not the entire spec.
22942         Do not set *uid, *gid unless entirely successful.
22943         Avoid memory leak in some failing cases.
22944         Fix regression for USER.GROUP reported by Dmitry V. Levin in
22945         <http://lists.gnu.org/archive/html/bug-coreutils/2004-08/msg00102.html>
22946         (parse_user_spec): Rewrite to use parse_with_separator.
22947
22948 2004-08-19  Paul Eggert  <eggert@cs.ucla.edu>
22949
22950         * modules/userspec: Don't depend on alloca.
22951
22952 2004-08-19  Paul Eggert  <eggert@cs.ucla.edu>
22953
22954         * m4/userspec.m4 (gl_USERSPEC): Don't require AC_FUNC_ALLOCA.
22955
22956 2004-08-17  Paul Eggert  <eggert@cs.ucla.edu>
22957
22958         * MODULES.html.sh: Add xalloc-die, c-strtod, c-strtold, raise,
22959         readtokens0, getcwd, fcntl-safer, canonicalize, cycle-check,
22960         utimecmp, utimens, xnanosleep.  Rename sha to sha1.
22961
22962 2004-08-16  Simon Josefsson  <jas@extundo.com>
22963
22964         * gnulib-tool: Use sed instead of autoconf --trace, inspired by
22965         libtoolize behaviour by "Gary V. Vaughan" <gary@gnu.org>.
22966         Add --dry-run for --import.
22967         Let user provided command line parameters override configure.ac
22968         settings.
22969
22970 2004-08-12  Simon Josefsson  <jas@extundo.com>
22971
22972         * m4/getopt.m4 (gl_GETOPT_SUBSTITUTE): New macro,
22973         as discussed with Paul Eggert in threads rooted at
22974         <http://lists.gnu.org/archive/html/bug-gnulib/2004-06/msg00039.html>
22975         and
22976         <http://lists.gnu.org/archive/html/bug-gnulib/2004-07/msg00001.html>.
22977         Before, the test was empty, and relied on ELIDE_CODE in source
22978         code.)
22979         (gl_PREREQ_GETOPT): New macro.
22980         (gl_GETOPT): Use them.
22981
22982 2004-08-12  Simon Josefsson  <jas@extundo.com>
22983
22984         * lib/getopt.c, getopt1.c: Remove ELIDE_CODE hack.
22985         * lib/getopt_.h: Renamed from getopt.h.
22986
22987 2004-08-12  Simon Josefsson  <jas@extundo.com>
22988
22989         * gnulib-tool: Add --source-base, --m4-base, --libtool options.
22990         Change default library name from libfoo to libgnu.
22991         Now, if you have a configure.ac that says:
22992                 gl_SOURCE_BASE(gl)
22993                 gl_M4_BASE(gl/m4)
22994                 gl_MODULES(error getopt etcetera)
22995                 gl_INIT
22996         you can import all you need by running:
22997                 ../gnulib/gnulib-tool --import
22998
22999         * modules/getopt (Files): Rename getopt.h to getopt_.h.
23000         (Makefile.am): Rewrite, use logic from argz.
23001         (Include): Use <getopt.h> instead of "getopt.h".
23002
23003 2004-08-12  Paul Eggert  <eggert@cs.ucla.edu>
23004
23005         * modules/argp (Files): Add m4/unlocked-io.m4.
23006         (Depends-on): Add extensions.
23007
23008 2004-08-12  Paul Eggert  <eggert@cs.ucla.edu>
23009
23010         * m4/argp.m4 (gl_ARGP): Do not check for argp.h or argp_parse; nobody
23011         uses HAVE_ARGP_H or HAVE_ARGP_PARSE.
23012         Require gl_FUNC_GLIBC_UNLOCKED_IO, gl_USE_SYSTEM_EXTENSIONS.
23013         Check for program_invocation_name, program_invocation_short_name,
23014         flockfile, funlockfile, features.h, _getopt_long_only_r.
23015
23016 2004-08-12  Paul Eggert  <eggert@cs.ucla.edu>
23017
23018         * lib/argp-help.c, argp-parse.c: Use "gettext.h" instead of
23019         its complicated substitute.
23020         * lib/argp-help.c: Include <errno.h>, for program_invocation_short_name
23021         and program_invocation_name.
23022         (__argp_basename) [!_LIBC]: Remove; the only use was
23023         replaced by its body.
23024         (__argp_short_program_name): Change condition from
23025         !defined __argp_short_program_name to
23026         ! (defined _LIBC || HAVE_DECL_PROGRAM_INVOCATION_SHORT_NAME),
23027         to match argp-namefrob.h.
23028         (__argp_failure): Don't assume strerror_r returns char *.
23029         * lib/argp-parse.c (N_): Define unconditionally.
23030         (argp_default_options): Fill out initializers with 0 to avoid
23031         gcc warnings.
23032
23033 2004-08-12  Paul Eggert  <eggert@cs.ucla.edu>
23034
23035         * config/srclist.txt: Remove getopt.c, getopt.h (renamed to getopt_.h),
23036         getopt1.c.
23037
23038 2004-08-11  Paul Eggert  <eggert@cs.ucla.edu>
23039
23040         Merge from coreutils.
23041
23042         * m4/fnmatch.m4 (_AC_LIBOBJ_FNMATCH): Check for wmemchr and wmemcpy.
23043
23044         * m4/obstack.m4 (gl_PREREQ_OBSTACK): Require
23045         gl_AC_HEADER_INTTYPES_H, gl_AC_HEADER_STDINT_H, gl_AC_TYPE_UINTMAX_T.
23046
23047 2004-08-11  Paul Eggert  <eggert@cs.ucla.edu>
23048
23049         Merge from coreutils.
23050
23051         * lib/fnmatch.c (WIDE_CHAR_SUPPORT): Don't set to 1 if missing
23052         wmemchr or wmemcpy.  Problem reported by Robert Dahlem
23053         for Reliant Unix 5.43.
23054
23055         * lib/obstack.c: Include <inttypes.h> and <stdint.h> if available.
23056         (union fooround): Use uintmax_t, not long int.
23057         The rest is a merge from libc:
23058         [defined _LIBC]: Include <shlib-compat.h>.
23059         (_obstack) [defined _LIBC]: Remove after 2.3.4.
23060
23061         * lib/settime.c (settime): Recode to avoid warning with
23062         Sun Forte C 6U2.
23063
23064         * lib/strverscmp.c: Convert to UTF-8.
23065
23066 2004-08-11  Paul Eggert  <eggert@cs.ucla.edu>
23067
23068         * modules/obstack (Files): Add m4/inttypes_h.m4, m4/stdint_h.m4,
23069         m4/uintmax_t.m4.
23070
23071 2004-08-09  Paul Eggert  <eggert@cs.ucla.edu>
23072
23073         * modules/xalloc-die: New file.
23074         * modules/xalloc: Remove dependencies on error, gettext, exitfail.
23075
23076         * modules/md5 (Files): Add m4/uint32_t.m4.
23077         * modules/sha1: Renamed from modules/sha.
23078         (Files):
23079         Rename lib/sha.h to lib/sha1.h.
23080         Rename lib/sha.c to lib/sha1.c.
23081         Rename m4/sha.m4 to m4/sha1.m4.
23082         (lib_SOURCES): Likewise.
23083         (configure.ac): Rename gl_SHA to gl_SHA1.
23084         (Include): sha.h -> sha1.h.
23085
23086 2004-08-09  Paul Eggert  <eggert@cs.ucla.edu>
23087
23088         * m4/uint32_t.m4, m4/uintptr_t.m4: New files.
23089         * m4/sha1.m4: Renamed from sha.m4.
23090         (gl_SHA1): Renamed from gl_SHA.  All uses changed.
23091
23092 2004-08-09  Paul Eggert  <eggert@cs.ucla.edu>
23093
23094         * lib/obstack.h (obstack_empty_p):
23095         Don't assume that chunk->contents is suitably aligned.
23096         * lib/obstack.c (_obstack_begin, _obstack_begin_1, _obstack_newchunk):
23097         Likewise. Problem reported by Benno in
23098         <http://sources.redhat.com/ml/libc-alpha/2004-08/msg00055.html>.
23099
23100         * lib/chown.c (rpl_chown): Work even if the file is writeable but not
23101         readable.  This could be improved further but it'd take some work.
23102
23103 2004-08-08  Simon Josefsson  <jas@extundo.com>
23104
23105         * modules/xgethostname (Depends-on): Remove exit and error (not
23106         used).
23107
23108         * modules/getpass-gnu: Add getpass.h.
23109         (Depends-on): Add stdbool.
23110         * modules/getpass: Add getpass.h.
23111
23112 2004-08-08  Simon Josefsson  <jas@extundo.com>
23113
23114         * m4/getpass.m4 (gl_FUNC_GETPASS, gl_FUNC_GETPASS_GNU):
23115         Check getpass declaration.
23116
23117 2004-08-08  Simon Josefsson  <jas@extundo.com>
23118
23119         * lib/xgethostname.c: Don't include error.h (not used).
23120
23121         * lib/getpass.h: Add.
23122         * lib/getpass.c: Include getpass.h first.
23123
23124 2004-08-08  Paul Eggert  <eggert@cs.ucla.edu>
23125
23126         * lib/xalloc-die.c: New file.
23127         * lib/xalloc.h (xalloc_fail_func, xalloc_msg_memory_exhausted): Remove.
23128         All uses removed.
23129         * lib/xmalloc.c (xalloc_fail_func, xalloc_msg_memory_exhausted):
23130         Likewise. Move inclusions of gettext.h, error.h, exitfail.h to
23131         xalloc-die.c.
23132         (_, N_, xalloc_die): Move to xalloc-die.c.
23133         * lib/userspec.c (parse_user_spaec): Use xstrdup rather than strdup,
23134         so that we needn't mess with xalloc_msg_memory_exhausted.
23135
23136         * lib/sha1.h: Renamed from sha.h.
23137         (SHA1_H): Renamed from _SHA_H.
23138         (sha1_ctx): Renamed from sha_ctx.
23139         (sha1_init_ctx): Renamed from sha_init_ctx.
23140         (sha1_process_block): Renamed from sha_process_block.
23141         (sha1_process_bytes): Renamed from sha_process_bytes.
23142         (sha1_finish_ctx): Renamed from sha_finish_ctx.
23143         (sha1_read_ctx): Renamed from sha_read_ctx.
23144         (sha1_stream): Renamed from sha_stream.
23145         (sha1_buffer): Renamed from sha_buffer.
23146         * lib/sha1.c: Likewise; renamed from sha.c.
23147         Do not include <sys/types.h>.
23148         Include <stddef.h> rather than <stdlib.h>.
23149
23150 2004-08-08  Bruno Haible  <bruno@clisp.org>
23151
23152         * lib/pathname.h (FILE_SYSTEM_PREFIX_LEN): Renamed from
23153         FILESYSTEM_PREFIX_LEN.
23154         * lib/progreloc.c: Likewise.
23155         * lib/concatpath.c (concatenated_pathname): Use FILE_SYSTEM_PREFIX_LEN.
23156
23157 2004-08-06  Simon Josefsson  <jas@extundo.com>
23158
23159         * modules/progname (Depends-on): Don't depend on stdbool.
23160
23161 2004-08-06  Simon Josefsson  <jas@extundo.com>
23162
23163         * modules/getsubopt: New file.
23164         * MODULES.html.sh (Support for systems lacking POSIX:2001): Add
23165         getsubopt.
23166
23167 2004-08-06  Paul Eggert  <eggert@cs.ucla.edu>
23168
23169         More merge from coreutils.
23170
23171         * m4/utimens.m4, m4/utimecmp.m4: New files.
23172         * m4/backupfile.m4, euidacces.m4, acl.m4, afs.m4, calloc.m4, dirfd.m4,
23173         fsusage.m4, jm-macros.m4, ls-mntd-fs.m4, md5.m4, mountlist.m4,
23174         prereq.m4, sha.m4: Import changes from coreutils.
23175
23176 2004-08-06  Paul Eggert  <eggert@cs.ucla.edu>
23177
23178         More merge from coreutils.
23179         * modules/raise, modules/readtokens0, modules/utimens:
23180         * modules/utimecmp, module/xnanosleep: New files.
23181         * modules/strftime: Add lib/strftime.h.
23182         Change include from <time.h> to "strftime.h".
23183         * modules/yesno: Add lib/yesno.h.
23184         * modules/backupfile: Remove lib/addext.c.
23185         * modules/euidaccess: Add stat-macros.h.
23186         * modules/canonicalize, modules/euidaccess,
23187         modules/filemode, modules/lchown, modules/makepath,
23188         modules/rmdir, modules/stat: Likewise.
23189
23190 2004-08-06  Paul Eggert  <eggert@cs.ucla.edu>
23191
23192         Merge from tar.
23193         * lib/argp-help.c (make_hol, hol_append): Don't assume that
23194         SIZE_MAX is a valid preprocessor constant.
23195         (__argp_basename): Change from "#ifndef _LIBC"
23196         to "#ifndef __argp_short_program_name", so that
23197         we don't compile these functions for tar.
23198
23199         More merges from coreutils.
23200         * lib/raise.c, lib/readtokens0.h, lib/readtokens0.c, lib/strftime.h:
23201         * lib/utimens.h, lib/utimens.c, lib/utimecmp.h, lib/utimecmp.c:
23202         * lib/xnanosleep.h, lib/xnanosleep.c, lib/yesno.h: New files.
23203         * lib/addext.c: Remove; no longer needed.
23204         * lib/yesno.c, lib/argmatch.h, lib/argmatch.c, lib/backupfile.h,
23205         lib/backupfile.c, lib/euidaccess.c, lib/filemode.c, lib/closeout.c,
23206         lib/dup2.c, lib/exclude.c, lib/fileblocks.c, lib/filemode.c,
23207         lib/fnmatch.c, lib/fnmtahc_loop.c, lib/fopen-safer.c, lib/fsusage.c,
23208         lib/fsusage.h, lib/ftruncate.c, lib/full-write.c, lib/getdate.y,
23209         lib/getloadavg.c, lib/getugroups.c, lib/hard-locale.c,
23210         lib/hard-locale.h, lib/hash.c, lib/human.c, lib/human.h, lib/lchown.c,
23211         lib/lchown.h, lib/makepath.c, lib/makepath.h, lib/md5.c, lib/md5.h,
23212         lib/memchr.c, lib/memcoll.c, lib/memrchr.c, lib/modechange.c,
23213         lib/modechange.h, lib/mountlist.c, lib/mountlist.h, lib/nanosleep.c,
23214         lib/posixtm.c, lib/putenv.c, quotearg.c, lib/quotearg.h,
23215         lib/readtokens.c, lib/readutmp.c, lib/readutmp.h, lib/rmdir.c,
23216         lib/safe-read.c, lib/save-cwd.c, lib/savedir.c, lib/setenv.c,
23217         lib/sig2str.c, lib/stat.c, lib/strtoimax.c, lib/strverscmp.c,
23218         lib/userspec.c, lib/utime.c, lib/version-etc.c., lib/xgethostname.c,
23219         lib/xmemcoll.c, lib/xreadlink.c, lib/xstrtod.c, lib/xstrtod.h,
23220         lib/xstrtoimax.c, lib/xstrtol.c, lib/xstrtol.h, lib/xstrtoumax.c:
23221         Import changes from coreutils.
23222
23223 2004-08-05  Simon Josefsson  <jas@extundo.com>
23224
23225         * m4/strdup.m4: Always run gl_PREREQ_STRDUP, since strdup.h need it.
23226
23227 2004-08-05  Simon Josefsson  <jas@extundo.com>
23228
23229         * m4/getsubopt.m4: New file.
23230
23231 2004-08-05  Paul Eggert  <eggert@cs.ucla.edu>
23232
23233         Merge from coreutils.
23234
23235         * m4/c-strtod.m4, m4/canonicalize.m4, m4/fcntl-safer.m4:
23236         * m4/getcwd-path-max.m4: New files.
23237
23238         * m4/dos.m4 (gl_AC_DOS): filesystem -> file system renaming.
23239         FILESYSTEM_PREFIX_LEN ->
23240         FILE_SYSTEM_PREFIX_LEN.
23241         FILESYSTEM_ACCEPTS_DRIVE_LETTER_PREFIX ->
23242         FILE_SYSTEM_ACCEPTS_DRIVE_LETTER_PREFIX.
23243         FILESYSTEM_BACKSLASH_IS_FILE_NAME_SEPARATOR ->
23244         FILE_SYSTEM_BACKSLASH_IS_FILE_NAME_SEPARATOR.
23245
23246         * m4/path-concat.m4 (gl_PATH_CONCAT): Don't require gl_AC_DOS, the
23247         prerequisite modules now handle the DOS stuff.
23248         Don't check for unistd.h.
23249
23250 2004-08-05  Paul Eggert  <eggert@cs.ucla.edu>
23251
23252         Merge from coreutils.
23253
23254         * lib/.gdb-history: Remove; this doesn't belong here.
23255
23256         * lib/c-strtod.c, lib/c-strtod.h, lib/c-strtold.c, lib/cycle-check.c:
23257         * lib/cycle-check.h, lib/dev-ino.h, lib/canonicalize.h:
23258         * lib/canonicalize.c, lib/fcntl-safer.h, lib/fcntl-safer.c:
23259         * lib/getcwd.c: New files.
23260
23261         * lib/dirname.h: Include <stdbool.h>.
23262         (FILE_SYSTEM_PREFIX_LEN): Renamed from FILESYSTEM_PREFIX_LEN,
23263         for consistency with POSIX terminology.  All uses changed.
23264         (IS_ABSOLUTE_FILE_NAME, IS_RELATIVE_FILE_NAME): New macros.
23265         (strip_trailing_slashes): Use bool for booleans.
23266         * lib/stripslash.c (strip_trailing_slashes): Likewise.
23267
23268         * lib/error.c: Work around bug in OpenBSD 3.4 sterror_r: it
23269         sometimes returns a positive errno value even when it succeeds.
23270         (print_errno_message) [!LIBC]: Fall back on strerror if
23271         __strerror_r fails.
23272
23273         * lib/path-concat.c (mempcpy): Don't define if a system header defines
23274         it. Don't include stdio.h, stdlib.h, unistd.h, strdup.h.
23275         (longest_relative_suffix): New function.
23276         (path_concat): Use it.  Assume first argument is not NULL.
23277         Port to DOS.  Omit redundant separators.
23278         Report an error instead of returning NULL.
23279         Use mempcpy instead of memcpy.
23280         (xpath_concat): Remove: not declared or used.
23281
23282         * lib/same.h: Include <stdbool.h>
23283         (same_name): Return bool, not int.
23284         * lib/same.c (same_name): Likewise.
23285         (errno): Don't declare; we assume C89 or better now.
23286
23287         * lib/stat-macros (S_ISCTG, S_ISOFD, S_ISOFL): New macros,
23288         if not already defined.
23289
23290         * lib/xgetcwd.c (errno): Don't declare; we assume C89 or better now.
23291         * lib/dup-safer.c (errno): Likewise.
23292
23293 2004-08-05  Paul Eggert  <eggert@cs.ucla.edu>
23294
23295         Merge from coreutils.
23296         * modules/c-strtod, modules/c-strtold, modules/canonicalize:
23297         * modules/cycle-check, modules/fcntl-safer, modules/getcwd: New files.
23298         * modules/path-concat: Don't depend on strdup.
23299
23300 2004-08-03  Simon Josefsson  <jas@extundo.com>
23301
23302         * lib/strdup.h: Only use HAVE_DECL_STRDUP if defined.
23303         * lib/progname.h: Don't include stdbool.h.
23304
23305 2004-08-03  Paul Eggert  <eggert@cs.ucla.edu>
23306
23307         * modules/fatal: Remove, as the "fatal" module wasn't used or working.
23308         * MODULES.html.sh (func_all_modules): Remove fatal.
23309
23310 2004-08-03  Paul Eggert  <eggert@cs.ucla.edu>
23311
23312         * m4/fatal.m4: Remove, as the "fatal" module wasn't used or working.
23313
23314 2004-08-03  Paul Eggert  <eggert@cs.ucla.edu>
23315
23316         * lib/fatal.c, fatal.h: Remove as the "fatal" module wasn't used or
23317         working.
23318
23319 2004-08-02  Simon Josefsson  <jas@extundo.com>
23320
23321         * lib/getsubopt.h: New file, with comments from Bruno Haible.
23322         * lib/getsubopt.c: New file, from glibc, but slightly modified based on
23323         suggestions from Paul Eggert <eggert@cs.ucla.edu>.
23324
23325 2004-08-01  Simon Josefsson  <jas@extundo.com>
23326
23327         * lib/xgetdomainname.c: Include stdlib.h, for free().
23328
23329 2004-07-19  Bruno Haible  <bruno@clisp.org>
23330
23331         * MODULES.html.sh (func_all_modules): Add dummy.
23332
23333 2004-07-16  Simon Josefsson  <jas@extundo.com>
23334
23335         * modules/dummy: New file.
23336
23337 2004-07-16  Simon Josefsson  <jas@extundo.com>
23338
23339         * lib/dummy.c: New file.
23340
23341 2004-07-16  Bruno Haible  <bruno@clisp.org>
23342
23343         * lib/backupfile.h: Add extern "C" for C++.
23344         * lib/closeout.h: Likewise.
23345         * lib/copy-file.h: Likewise.
23346         * lib/findprog.h: Likewise.
23347         * lib/full-write.h: Likewise.
23348         * lib/pathname.h: Likewise.
23349         * lib/progname.h: Likewise.
23350         * lib/stpcpy.h: Likewise.
23351         * lib/stpncpy.h: Likewise.
23352         * lib/strcase.h: Likewise.
23353         * lib/strstr.h: Likewise.
23354         * lib/xalloc.h: Likewise.
23355
23356         * lib/mbswidth.h: Add extern "C" for C++.
23357         Reported by Albert Chin-A-Young <china@thewrittenword.com>.
23358
23359 2004-07-13  Robert Millan  <robertmh@gnu.org>
23360
23361         * m4/host-os.m4: s/KNetBSD/kNetBSD/g and s/KFreeBSD/kFreeBSD/g.
23362
23363 2004-07-09  Simon Josefsson  <jas@extundo.com>
23364
23365         * lib/getndelim2.c: Include stddef.h, for ptrdiff_t.  (FreeBSD 4.9
23366         failed without this.)
23367
23368 2004-07-09  Paul Eggert  <eggert@cs.ucla.edu>
23369
23370         * modules/chown (Files): Add lib/fchown-stub.c, since
23371         gl_PREREQ_CHOWN invokes AC_LIBOBJ(fchown-stub).
23372
23373 2004-07-09  Paul Eggert  <eggert@cs.ucla.edu>
23374
23375         * lib/fchown-stub.c: New file.
23376
23377 2004-06-24  Jim Meyering  <jim@meyering.net>
23378
23379         * lib/obstack.h (obstack_base): Cast to (void *), per documentation.
23380
23381 2004-06-22  Paul Eggert  <eggert@cs.ucla.edu>
23382
23383         * modules/argz: Omit "#include".
23384
23385         * MODULES.html.sh (func_all_modules): Add calloc, to match
23386         2004-06-01 addition of calloc module.
23387
23388 2004-06-22  Paul Eggert  <eggert@cs.ucla.edu>
23389
23390         * m4/argz.m4: New file, which is autoupdated from libtool.
23391
23392 2004-06-22  Paul Eggert  <eggert@cs.ucla.edu>
23393
23394         * lib/argz.c, lib/argz_.h: New files, which are autoupdated from
23395         libtool.
23396
23397 2004-06-22  Paul Eggert  <eggert@cs.ucla.edu>
23398
23399         * config/srclist-update: Don't insist on "USA." before the
23400         close-comment, as libtool omits the period and puts the */ on a
23401         separate line.
23402         * config/srclist.txt: Add argz.c, argz_.h, argz.m4.
23403         * config/srclistvars.sh: Add LIBTOOL (for eggert only).
23404
23405 2004-06-22  Gary V. Vaughan  <gary@gnu.org>
23406
23407         * modules/argz: New file.
23408         * MODULES.html.sh (func_all_modules): Add argz.
23409
23410 2004-06-12  Jim Meyering  <jim@meyering.net>
23411         and  Paul Eggert  <eggert@cs.ucla.edu>
23412
23413         * modules/hash (Files): Add lib/xalloc.h.
23414         * modules/pipe (Depends-on): Add wait-process.
23415         * modules/stat (Depends-on): Add xalloc.
23416         * modules/userspec (Files): Add lib/userspec.h.
23417         * modules/xstrto
23418
23419         Upgrade from gettext-0.13.
23420         * modules/gettext (Files): Add m4/intmax.m4, m4/longdouble.m4,
23421         m4/longlong.m4, m4/printf-posix.m4, m4/signed.m4, m4/size_max.m4,
23422         m4/wchar_t.m4, m4/wint_t.m4, m4/xsize.m4.
23423
23424 2004-06-10  Jim Meyering  <jim@meyering.net>
23425
23426         * lib/calloc.c: New file.
23427
23428 2004-06-06  Paul Eggert  <eggert@cs.ucla.edu>
23429
23430         * lib/getdate.y (yylex): Allow space between sign and number.
23431         Problem reported by Dan Jacobson.
23432
23433 2004-06-01  Paul Eggert  <eggert@cs.ucla.edu>
23434
23435         Merge from coreutils CVS.
23436
23437         * m4/backupfile.m4, dirname.m4, human.m4, inttypes.m4, longlong.m4,
23438         makepath.m4, memchr.m4, memcmp.m4, mountlist.m4, path-concat.m4,
23439         putenv.m4, quotearg.m4, readutmp.m4, strtoimax.m4, strtoll.m4,
23440         strtoull.m4, strtoumax.m4, ulonglong.m4, vasnprintf.m4,
23441         xstrtol.m4: Fix copyright date and/or serial number.
23442
23443         * m4/chown.m4 (gl_PREREQ_CHOWN): Check for fcntl.h.
23444         See if we need an fchown replacement.
23445         (gl_FUNC_CHOWN_FOLLOWS_SYMLINK): New macro.
23446         (gl_FUNC_CHOWN): Require gl_FUNC_CHOWN_FOLLOWS_SYMLINK,
23447         and use the replacement function if we detect either defect.
23448
23449         * m4/prereq.m4 (gl_PREREQ): Add gl_ALLOCSA, gl_CLOEXEC, gl_INTTOSTR,
23450         gl_UTIMECMP.
23451
23452 2004-06-01  Paul Eggert  <eggert@cs.ucla.edu>
23453         and  Jim Meyering  <jim@meyering.net>
23454
23455         Merge from coreutils CVS.
23456
23457         * lib/stat-macros.h: New file, with contents from file-type.h
23458         and coreutils' system.h.
23459         * lib/file-type.c: Include "stat-macros.h".
23460         * lib/file-type.h (file_type): Move all macro definitions to new file,
23461         stat-macros.h.
23462
23463         * lib/chown.c (rpl_chown) [CHOWN_FAILS_TO_HONOR_ID_OF_NEGATIVE_ONE]:
23464         Wrap old code with this conditional.
23465         [CHOWN_MODIFIES_SYMLINK]: Try to work around a chown
23466         function that does not dereference symlinks.
23467         * lib/lchown.c (lchown) [CHOWN_MODIFIES_SYMLINK]: Just call chown.
23468
23469         * lib/xreadlink.c: Include xreadlink.h first, to catch .h file
23470         dependency problems.
23471         (xreadlink): Accept new arg SIZE, for efficiency.
23472         All decls and uses changed.
23473         * lib/xreadlink.h: Include <stddef.h>, for size_t.
23474
23475         * lib/.cppi-disable: Add alloca_.h, allocsa.h, exit.h, getndelim2.h,
23476         gettext.h, localcharset.h, strdup.h, strndup.h, strtoul.c, time_r.h.
23477
23478         * lib/.cvsignore: Add alloca.h, fnmatch.h, poll.h, stdbool.h,
23479         sysexits.h.
23480
23481 2004-06-01  Jim Meyering  <jim@meyering.net>
23482
23483         * m4/calloc.m4: New file.
23484
23485 2004-05-31  Paul Eggert  <eggert@cs.ucla.edu>
23486
23487         * m4/stdbool.m4 (AC_HEADER_STDBOOL): Detect _Bool bug in HP aC++/ANSI
23488         C B3910B A.05.55 [Dec 04 2003].  Problem reported by Jim Meyering.
23489         Also, fix a typo in a diagnostic.
23490
23491 2004-05-30  Paul Eggert  <eggert@cs.ucla.edu>
23492
23493         * m4/xalloc.m4 (gl_PREREQ_XMALLOC): Do not require AC_FUNC_MALLOC
23494         or AC_FUNC_REALLOC.
23495
23496 2004-05-30  Paul Eggert  <eggert@cs.ucla.edu>
23497
23498         * lib/xmalloc.c (HAVE_MALLOC, HAVE_REALLOC): Do not require these
23499         macros to be defined.
23500         (xnmalloc_inline, xnrealloc_inline, xcalloc): Do not die if
23501         the allocator returns NULL because the requested size is zero.
23502
23503 2004-05-20  Paul Eggert  <eggert@cs.ucla.edu>
23504
23505         * lib/malloc/obstack.c (_obstack) [defined _LIBC]: Bring back this
23506         var.  Add comment explaining why libc still defines it.  This
23507         merges the following patch from glibc:
23508         http://sources.redhat.com/ml/libc-alpha/2004-05/msg00157.html
23509
23510 2004-05-20  Andreas Schwab  <schwab@suse.de>
23511
23512         * m4/free.m4: Replace free if it not known to work, not the other
23513         way round.
23514
23515 2004-05-19  Paul Eggert  <eggert@cs.ucla.edu>
23516
23517         * lib/obstack.c (_obstack): Remove unused variable.  It hasn't been
23518         present in glibc since revision 1.1 of this file.
23519         * lib/obstack.h (_obstack_free, obstack_1grow, obstack_1grow_fast,
23520         obstack_alignment_mask, obstack_alloc, obstack_base,
23521         obstack_blank, obstack_blank_fast, obstack_chunk_size,
23522         obstack_copy, obstack_copy0, obstack_finish, obstack_grow,
23523         obstack_grow0, obstack_init, obstack_int_grow,
23524         obstack_int_grow_fast, obstack_make_room, obstack_memory_used,
23525         obstack_next_free, obstack_object_size, obstack_ptr_grow,
23526         obstack_ptr_grow_fast, obstack_room): Remove declarations of
23527         nonexistent functions.
23528
23529 2004-05-18  Karl Berry  <karl@gnu.org>
23530
23531         * config/srclist.txt: break link for vasnprintf.c.
23532
23533 2004-05-17  Paul Eggert  <eggert@cs.ucla.edu>
23534
23535         Port obstack to the AS/400, where pointers are 16 bytes wide and
23536         you cannot cast an integer to a valid pointer.  This patch is
23537         currently waiting to be integrated into glibc; see
23538         <http://sources.redhat.com/ml/libc-alpha/2004-05/msg00073.html>.
23539
23540         * lib/obstack.h (__PTR_TO_INT, __INT_TO_PTR): Remove.
23541         All uses of __INT_TO_PTR (PTR_TO_INT ...) replaced by __PTR_ALIGN.
23542         (__BPTR_ALIGN, __PTR_ALIGN): New macros.
23543         (struct obstack): temp member is now a union of a pointer and
23544         an integer, instead of an integer.  All integer uses changed.
23545         This does not affect the physical layout of struct obstack,
23546         except on hosts (like the AS/400) where the size or alignment of
23547         void * is greater than that of ptrdiff_t.
23548         (obstack_finish) [! (defined __GNUC__ && defined __STDC__ &&
23549         __STDC__)]: Store temporary in pointer member of union, not
23550         integer member.
23551         * lib/obstack.c: Include <stddef.h>, for offsetof.
23552         (struct fooalign): Remove; it doesn't need a name.
23553         (union fooround): Change double to long double, and add void *.
23554         (DEFAULT_ALIGNMENT): Use offsetof to compute.
23555         (DEFAULT_ALIGNMENT, DEFAULT_ROUNDING): Now an enum constant,
23556         not a macro.  Hence the values are always int; so remove all
23557         casts-to-int in uses.
23558
23559 2004-05-17  Paul Eggert  <eggert@cs.ucla.edu>
23560
23561         * config/srclist.txt: Break link for argp-help.c and argp-parse.c until
23562         we can get this patch merged into glibc.
23563
23564 2004-05-17  Derek R. Price  <derek@ximbiot.com>
23565             Paul Eggert  <eggert@cs.ucla.edu>
23566
23567         * m4/argp: Depend on alloca.
23568
23569 2004-05-17  Derek R. Price  <derek@ximbiot.com>
23570             Paul Eggert  <eggert@cs.ucla.edu>
23571
23572         * lib/argp-help.c, argp-parse.c: Assume <alloca.h> rather than
23573         freecoding.
23574
23575 2004-05-17  Bruno Haible  <bruno@clisp.org>
23576
23577         * lib/vasnprintf.c (VASNPRINTF): Correctly handle the case of a
23578         precision that consists of a '.' followed by an empty digit string.
23579         Patch by Tor Lillqvist <tml@iki.fi>.
23580
23581 2004-05-16  Paul Eggert  <eggert@cs.ucla.edu>
23582
23583         * m4/alloca.m4 (gl_FUNC_ALLOCA): Define HAVE_ALLOCA_H always,
23584         for backward compatibility with older code.  We need our own
23585         alloca.h if _AIX is defined.  Define HAVE_ALLOCA if we discover
23586         it under some other name, and our alloca.h will define it.
23587
23588 2004-05-16  Paul Eggert  <eggert@cs.ucla.edu>
23589             Derek Price  <derek@ximbiot.com>
23590
23591         * lib/alloca.c: Include <alloca.h>, to get our interface.
23592         * lib/alloca_.h: Use __alloca on AIX, so that we don't have to
23593         include <alloca.h> first.  Use C89 prototype for alloca; this
23594         requires including <stddef.h> for size_t.  Use extern "C" if C++.
23595         Use #elif for simplicity, since we can assume C89 now.
23596         Don't try to source the system alloca.h since it will not be found
23597         and to prevent recursively including its replacement.
23598         * lib/fnmatch.c: Include <alloca.h> instead of opencoding.
23599         * lib/regex.c: Likewise.
23600
23601 2004-05-16  Derek Price  <derek@ximbiot.com>
23602             Paul Eggert  <eggert@cs.ucla.edu>
23603
23604         getline cleanup.  This changes the getndelim2 API: both order of
23605         arguments, and meaning of delim2 (now uses EOF, not 0, to indicate
23606         no delimiter).
23607
23608         * lib/getline.c: Don't include stddef.h or stdio.h, since our
23609         interface does that.
23610         (getline): Always use getdelim, so that we don't have two
23611         copies of this code.
23612         * lib/getndelim2.c: Include <limits.h>, <inttypes.h>, <stdint.h>
23613         if available.
23614         (PTRDIFF_MAX, SIZE_MAX, SSIZE_MAX): Define if not defined.
23615         (GETNDELIM2_MAXIMUM): New macro.
23616         (getndelim2): Reorder arguments.  delim==EOF now means no delimiter,
23617         instead of the old practice of delim2==0.  All callers changed.
23618         Return -1 on overflow, instead of returning junk.
23619         Do not set *linesize unless allocation succeeds.
23620         * lib/getndelim2.h: Do not include stddef.h; no longer needed, now
23621         that we include sys/types.h.
23622         * lib/getnline.h: Likewise.
23623         * lib/getndelim2.h (GETNLINE_NO_LIMIT): New macro.
23624         (getndelim2): Reorder arguments.
23625         * lib/getnline.c (getnline, getndelim):
23626         Don't discard the NMAX argument.
23627         (getnline): Invoke getndelim, to avoid code duplication.
23628         * lib/getnline.h (GETNLINE_NO_LIMIT): New macro, used instead
23629         of (size_t) -1 by callers of the getnline family.
23630
23631 2004-05-13  Paul Eggert  <eggert@cs.ucla.edu>
23632
23633         * m4/gettime.m4 (gl_GETTIME): Require gl_TIMESPEC.
23634         Check for gettimeofday.
23635         * m4/settime.m4 (gl_SETTIME): Require gl_TIMESPEC.
23636         Check for settimeofday, stime.
23637
23638 2004-05-13  Paul Eggert  <eggert@cs.ucla.edu>
23639
23640         * lib/nanosleep.c (suspended): Change its type from int to
23641         sig_atomic_t volatile.
23642         (first_call): Make it private to rpl_nanosleep, and have it
23643         be zero initially as that's a bit faster.
23644         (my_usleep): Round up fractional times instead of truncating them,
23645         as this is the usual meaning for 'sleep'.
23646
23647         * lib/gettime.c (gettime): Fall back on `time' if `gettimeofday'
23648         doesn't work.
23649         * lib/settime.c: Include <unistd.h>, for stime (on Solaris 8, anyway).
23650         (ENOSYS): Define if not defined.
23651         (settime): Fall back on stime if it exists and settimeofday fails.
23652         But don't bother with fallbacks if a method fails with errno == EPERM.
23653
23654 2004-05-11  Jim Meyering  <jim@meyering.net>
23655
23656         Prior to this change, the save_cwd caller required read access to the
23657         current directory on most systems (ones with the fchdir function).
23658
23659         * lib/save-cwd.c (save_cwd) [HAVE_FCHDIR]: If opening `.' read-only
23660         fails, try write-only, and finally, resort to using xgetcwd.
23661
23662 2004-05-06  Paul Eggert  <eggert@cs.ucla.edu>
23663
23664         * lib/obstack.c, obstack.h: Import changes from libc.
23665
23666 2004-04-28  Bruno Haible  <bruno@clisp.org>
23667
23668         * lib/findprog.c (find_in_path): Treat Cygwin like Windows, since it
23669         also implicitly appends .exe to executables.
23670         * lib/localcharset.c (ISSLASH): Treat Cygwin like Windows, since it now
23671         accepts Windows pathnames.
23672         * lib/pathname.h (ISSLASH, IS_PATH_WITH_DIR, FILESYSTEM_PREFIX_LEN):
23673         Treat Cygwin like Windows, since it now accepts Windows pathnames.
23674         * lib/progreloc.c (ISSLASH, IS_PATH_WITH_DIR, FILESYSTEM_PREFIX_LEN):
23675         Treat Cygwin like Windows, since it now accepts Windows pathnames.
23676         Reported by Derek Robert Price <derek@ximbiot.com>.
23677
23678 2004-04-21  Karl Berry  <karl@gnu.org>
23679
23680         * config/srclist.txt (localcharset.c): break sync.
23681
23682 2004-04-20  Paul Eggert  <eggert@twinsun.com>
23683
23684         * m4/host-os.m4: Add a copyright notice.
23685
23686 2004-04-20  Jim Meyering  <jim@meyering.net>
23687
23688         Change UTILS_ to gl_ in AC_DEFINE'd names.
23689         Change utils_- and jm_-prefixed variables, too.
23690         * m4/mkdir-slash.m4 (gl_FUNC_MKDIR_TRAILING_SLASH): Renamed from
23691         UTILS_FUNC_MKDIR_TRAILING_SLASH.
23692         * m4/mkstemp.m4 (gl_FUNC_MKSTEMP): Renamed from UTILS_FUNC_MKSTEP.
23693
23694         * m4/dirfd.m4 (gl_FUNC_DIRFD): Rename from UTILS_FUNC_DIRFD.
23695         Don't emit trailing blanks.
23696         Also rename jm_-prefixed variables to have gl_ prefix.
23697
23698         * m4/host-os.m4 (gl_HOST_OS): Rename from UTILS_HOST_OS.
23699         Also rename jm_-prefixed variables to have gl_ prefix.
23700
23701         * m4/jm-macros.m4: Reflect the renamings.
23702         * m4/prereq.m4: Likewise.
23703
23704 2004-04-20  Jim Meyering  <jim@meyering.net>
23705
23706         * lib/getndelim2.c (getndelim2): Upon realloc failure, don't leak
23707         memory.
23708
23709 2004-04-20  Jim Meyering  <jim@meyering.net>
23710             Bruno Haible  <bruno@clisp.org>
23711
23712         * lib/localcharset.c (get_charset_aliases) [!VMS && !WIN32]: Don't leak
23713         memory when realloc fails.
23714
23715 2004-04-19  Jim Meyering  <jim@meyering.net>
23716
23717         * m4/readutmp.m4 (gl_PREREQ_READUTMP): Require gl_FUNC_FREE,
23718         now that readutmp.c may call `free (0)'.
23719
23720 2004-04-19  Bruno Haible  <bruno@clisp.org>
23721
23722         * m4/mbrtowc.m4: Change jm_ to gl_ in cache variables as well.
23723         * m4/inttypes_h.m4: Likewise.
23724         * m4/stdint_h.m4: Likewise.
23725         * m4/intmax_t.m4: Likewise.
23726         * m4/uintmax_t.m4: Likewise.
23727
23728 2004-04-18  Jim Meyering  <jim@meyering.net>
23729
23730         * m4/prereq.m4: Don't forbid jm_ prefix.
23731
23732         * m4/afs.m4, m4/allocsa.m4, m4/assert.m4, m4/backupfile.m4:
23733         * m4/bison.m4, m4/check-decl.m4, m4/chown.m4, m4/d-ino.m4:
23734         * m4/d-type.m4, m4/dirname.m4, m4/dos.m4, m4/error.m4, m4/fpending.m4:
23735         * m4/fstypename.m4, m4/fsusage.m4, m4/ftruncate.m4, m4/getdate.m4:
23736         * m4/getgroups.m4, m4/gettext.m4, m4/glibc21.m4, m4/group-member.m4:
23737         * m4/human.m4, m4/intmax.m4, m4/intmax_t.m4, m4/inttostr.m4:
23738         * m4/inttypes.m4, m4/inttypes_h.m4, m4/jm-macros.m4, m4/jm-winsz1.m4:
23739         * m4/jm-winsz2.m4, m4/lchown.m4, m4/lib-check.m4, m4/link-follow.m4:
23740         * m4/localcharset.m4, m4/longlong.m4, m4/ls-mntd-fs.m4, m4/lstat.m4:
23741         * m4/makepath.m4, m4/mbrtowc.m4, m4/mbswidth.m4, m4/memchr.m4:
23742         * m4/memcmp.m4, m4/mkdtemp.m4, m4/mkstemp.m4, m4/mountlist.m4:
23743         * m4/nanosleep.m4, m4/path-concat.m4, m4/perl.m4, m4/prereq.m4:
23744         * m4/putenv.m4, m4/quotearg.m4, m4/regex.m4, m4/stat.m4:
23745         * m4/stdint_h.m4, m4/strftime.m4, m4/strtoimax.m4, m4/strtoll.m4:
23746         * m4/strtoull.m4, m4/strtoumax.m4, m4/timespec.m4, m4/uintmax_t.m4:
23747         * m4/ulonglong.m4, m4/unlink-busy.m4, m4/unlocked-io.m4, m4/uptime.m4,
23748         * m4/utimbuf.m4, m4/utime.m4, m4/utimes-null.m4, m4/vasnprintf.m4:
23749         * m4/xstrtoimax.m4, m4/xstrtol.m4, m4/xstrtoumax.m4:
23750         Change jm_ to gl_ in AC_DEFINE'd names. Update all uses.
23751
23752 2004-04-18  Jim Meyering  <jim@meyering.net>
23753
23754         * lib/readutmp.c (read_utmp) [UTMP_NAME_FUNCTION]: Upon realloc
23755         failure, don't leak memory and do call END_UTMP_ENT.
23756
23757 2004-04-16  Jim Meyering  <jim@meyering.net>
23758
23759         * m4/prereq.m4 (jm_PREREQ_STAT): Remove macro.  It is specific to
23760         coreutils' stat program.
23761         (gl_PREREQ): Don't require jm_PREREQ_STAT.
23762
23763 2004-04-11  Paul Eggert  <eggert@twinsun.com>
23764
23765         * lib/inttostr.h: Include <limits.h> unconditionally, since we assume
23766         C89.
23767         (CHAR_BIT): Remove, since we assume C89.
23768         Include <stdint.h> if available, as per current Autoconf CVS advice.
23769
23770 2004-03-31  Jim Meyering  <jim@meyering.net>
23771
23772         * m4/prereq.m4: Require AC_FUNC_MALLOC, not jm_FUNC_MALLOC.
23773         Require AC_FUNC_REALLOC, not jm_FUNC_REALLOC.
23774         * m4/xalloc.m4: Likewise.
23775
23776 2004-03-30  Paul Eggert  <eggert@twinsun.com>
23777
23778         Merge from coreutils.
23779
23780         * m4/inttostr.m4: New file.
23781         * m4/getdate.m4 (gl_GETDATE): Remove time-related stuff.
23782         Require AM_STDBOOL_H and gl_TIMESPEC instead.
23783         Require gl_CLOCK_TIME.
23784         * m4/clock_time.m4 (gl_CLOCK_TIME): Require AC_GNU_SOURCE.
23785
23786 2004-03-30  Paul Eggert  <eggert@twinsun.com>
23787
23788         * lib/cloexec.h, cloexec.c (set_cloexec_flag): Return int
23789         not bool, to be more consistent with Unix conventions.
23790         Suggested by Bruno Haible.
23791
23792         Merge from coreutils.
23793
23794         * lib/imaxtostr.c, lib/inttostr.c, lib/inttostr.h, lib/offtostr.c:
23795         * lib/umaxtostr.c: New files.
23796
23797         * lib/getdate.h: Include stdbool.h, and timespec.h instead of
23798         the usual <time.h> dance.
23799         (get_date): Change signature to support fractional time stamps.
23800         All callers changed.
23801         * lib/getdate.y: Include "getdate.h" first, as we can now
23802         assume C89 and don't need to worry about 'const'.
23803         Similarly, include "unlocked-io.h" near start, not in middle.
23804         Include <limits.h>.
23805         (textint.value): Use long int rather than int.
23806         (textint.digits): Use size_t rather than int.
23807         (BILLION, LOG10_BILLION): New constants.
23808         (parser_control): New member rel_ns.  Members day_ordinal,
23809         time_zone, month, day, hour, minutes, rel_year, rel_month,
23810         rel_day, rel_hour, rel_minutes, rel_seconds
23811         are now long int, not int.  Member seconds is now struct timespec,
23812         not int.  New member timespec_seen.  Members dates_seen, days_seen,
23813         local_zones_seen, rels_seen, times_seen, zones_seen are now size_t,
23814         not int.
23815         (%union.intval): Now long int, not int.
23816         New member timespec.
23817         (tSDECIMAL_NUMBER, tUDECIMAL_NUMBER): New tokens.
23818         (seconds, signed_seconds, unsigned_seconds): New nonterminals.
23819         (spec): Now is a timespec or an item list.
23820         (timespec, items): New nonterminals.
23821         (time, rel, relunit, number, get_date):
23822         Add support for fractional seconds.
23823         (time): Fix bug: seconds weren't cleared in "00:00 +0000" syntax.
23824         (gmtime, localtime, mktime): Remove decls; not needed with C89.
23825         (to_hour): First arg is now long int, not int.
23826         (to_year): Returns long int, not int.
23827         Don't treat year -70 like 70.
23828         (tm_diff): Returns long int, not int.
23829         (lookup_word): Use bool instead of int when appropriate.
23830         (yylex): Use size_t for count, not int.
23831         Detect overflow when parsing large integer constants.
23832         Add support for fractions.
23833         (get_date): Make pointers 'const' if possible.
23834         Use more-portable code to detect integer overflow.
23835         (main) [TEST]: Adjust to above changes.  Test for localtime failure.
23836         Don't use ctime; it's not reliable if the year has >4 digits.
23837
23838         * lib/human.c (humblock): Inspect BLOCKSIZE if BLOCK_SIZE isn't set.
23839         This is for compatibility with BSD.
23840
23841         * lib/timespec.h (ST_TIME_CMP_NS, ST_TIME_CMP): Define.
23842         (ATIME_CMP, CTIME_CMP, MTIME_CMP, TIMESPEC_NS): Likewise.
23843         From coreutils' system.h.
23844
23845         * lib/userspec.c: Don't include "posixver.h".
23846         (parse_user_spec): Fall back on USER.GROUP parsing, regardless
23847         of POSIX version, as POSIX 1003.1-2001 allows that behavior as a
23848         compatible extension.  Simplify code by removing a boolean int
23849         that was always nonzero if a string was nonnull.
23850
23851 2004-03-30  Jim Meyering  <jim@meyering.net>
23852
23853         Merge from coreutils.
23854
23855         Avoid a configure-time warning about sys/ucred.h on OSF V4.0.
23856         * m4/ls-mntd-fs.m4: Test for sys/ucred.h separately, since
23857         on some systems one must include <grp.h> before it.
23858         Reported by Christian Krackowizer.
23859
23860 2004-03-30  Jim Meyering  <jim@meyering.net>
23861
23862         Merge from coreutils.
23863
23864         * lib/mountlist.c [HAVE_SYS_UCRED_H]: Include grp.h before sys/ucred.h.
23865
23866         * lib/readtokens.c (readtoken): Don't leak 64 bytes when reading
23867         an empty input stream.
23868
23869         * lib/readtokens.c: Include <stdbool.h>.
23870         (readtoken): Use `size_t' rather than int/long.
23871         All callers adjusted.
23872         Use `bool' rather than `int' where appropriate.
23873         Use memset rather than an explicit loop.
23874         Use x2nrealloc rather than xrealloc.
23875         Allow the use of `\0' as a delimiter.
23876         (readtokens): Likewise.
23877         * lib/readtokens.h (readtoken, readtokens): Update prototypes.
23878
23879 2004-03-30  Jim Meyering  <jim@meyering.net>
23880
23881         * m4/realloc.m4: Remove file, since now it does no more than
23882         AC_REQUIRE([AC_FUNC_REALLOC]), and that can be done via
23883         the `configure.ac' section of module/realloc.
23884         * m4/malloc.m4: Likewise, but for AC_FUNC_MALLOC.
23885
23886 2004-03-30  Bruno Haible  <bruno@clisp.org>
23887
23888         * lib/getloadavg.c (getloadavg): Don't assume setlocale returns
23889         nonnull.
23890
23891 2004-03-29  Paul Eggert  <eggert@twinsun.com>
23892
23893         Merge changes to getloadavg.c from coreutils and Emacs.
23894
23895         * lib/getloadavg.c [!defined HAVE_SETLOCALE] (setlocale):
23896         Define to an expression, not to the empty string.
23897         Include cloexec.h and xalloc.h.
23898         (getloadavg): Restore LC_NUMERIC locale after setting it temporarily.
23899         Use set_cloexec_flag rather than rolling our own.
23900         * lib/cloexec.c, lib/cloexec.h: New files.
23901
23902 2004-03-29  Paul Eggert  <eggert@twinsun.com>
23903
23904         * m4/cloexec.m4: New file.
23905
23906 2004-03-18  Paul Eggert  <eggert@twinsun.com>
23907
23908         * lib/getopt.h: Sync with libc CVS.
23909
23910 2004-03-18  Paul Eggert  <eggert@twinsun.com>
23911             Bruno Haible  <bruno@clisp.org>
23912
23913         * m4/mbswidth.m4 (gl_MBSWIDTH): Also test whether <wchar.h> declares
23914         mbswidth.
23915
23916 2004-03-18  Paul Eggert  <eggert@twinsun.com>
23917             Bruno Haible  <bruno@clisp.org>
23918
23919         * lib/mbswidth.h: Include <wchar.h> only if
23920         HAVE_DECL_MBSWIDTH_IN_WCHAR_H, not on all platforms that have
23921         <wchar.h>.
23922         * lib/mbswidth.c: Include <stdio.h> and <time.h> before <wchar.h>.
23923
23924 2004-03-09  Paul Eggert  <eggert@twinsun.com>
23925
23926         * lib/argp-parse.c, getopt.c, getopt.h, getopt1.c:
23927         Sync with libc CVS.
23928         * lib/getopt_int.h: New file, also synced from libc.
23929
23930 2004-03-09  Paul Eggert  <eggert@twinsun.com>
23931
23932         * config/srclistvars.sh: Add GNUWWWLICENSES for eggert.
23933         * config/srclist.txt: Sync getopt with libc.  Add getopt_int.h.
23934         Bring back getopt.c, getopt.h, getopt1.c.
23935
23936 2004-03-07  Paul Eggert  <eggert@twinsun.com>
23937
23938         * m4/c-stack.m4 (gl_PREREQ_C_STACK): Renamed from jm_PREREQ_C_STACK.
23939         All uses changed.  Check for sa_sigaction member; this fixes
23940         a bug first reported by Jason Andrade in
23941         <http://mail.gnu.org/archive/html/bug-textutils/2003-03/msg00027.html>.
23942
23943 2004-03-07  Paul Eggert  <eggert@twinsun.com>
23944
23945         * lib/c-stack.c (SIGACTION_WORKS): New macro.  Use it instead of long
23946         '#if' expressions.  Unlike the code it replaces, it does not
23947         depend on (defined _SC_PAGESIZE).  However, it does depend on
23948         HAVE_STRUCT_SIGACTION_SA_SIGACTION; this last change fixes a bug
23949         first reported by Jason Andrade in
23950         <http://mail.gnu.org/archive/html/bug-textutils/2003-03/msg00027.html>.
23951
23952 2004-02-25  Simon Josefsson  <jas@extundo.com>
23953
23954         * m4/strdup.m4 (gl_PREREQ_STRDUP): Check whether strdup is declared.
23955
23956 2004-02-25  Simon Josefsson  <jas@extundo.com>
23957
23958         * lib/strdup.h: New file.
23959         * lib/strdup.c: Include it.
23960         * lib/path-concat.c: Include strdup.h. Drop strdup declaration.
23961         * lib/userspec.c: Include strdup.h. Drop strdup declaration.
23962
23963 2004-02-23  Karl Berry  <karl@gnu.org>
23964
23965         * doc/maintain.texi, doc/standards.texi, doc/make-stds.texi: new files
23966         (from fencepost.gnu.org:/gd/gnuorg).
23967
23968 2004-02-23  Karl Berry  <karl@gnu.org>
23969
23970         * config/srclistvars.sh (GNUORG) [karl]: redefine.
23971         * config/srclist.txt: add maintain/standards documents.
23972
23973 2004-02-18  Bruno Haible  <bruno@clisp.org>
23974
23975         * m4/xsize.m4 (gl_XSIZE): Require AC_C_INLINE.
23976         Reported by Derek Robert Price <derek@ximbiot.com>.
23977
23978 2004-02-16  Karl Berry  <karl@gnu.org>
23979
23980         * config/mkinstalldirs, install-sh: update from automake.
23981
23982 2004-02-06  Karl Berry  <karl@gnu.org>
23983
23984         * m4/po.m4: update from gettext 0.14.1.
23985
23986 2004-02-06  Karl Berry  <karl@gnu.org>
23987
23988         * lib/config.charset: update from gettext 0.14.1.
23989
23990 2004-02-05  Paul Eggert  <eggert@twinsun.com>
23991
23992         Add comments and code, prompted by suggestions from Bruno Haible
23993         for sh-quote.
23994         * lib/quotearg.h (quotearg_alloc): New decl.  Improve the comments
23995         describing the enum quoting_style values.
23996         * lib/quotearg.c (quotearg_alloc): New function.
23997         (quotearg_buffer_restyled): Treat lone { and } as special.
23998         Treat = as special.  Work around bug with older shells
23999         that "see" a '\' that is really the 2nd byte of a multibyte char.
24000         Quote empty string with shell_quoting_style.
24001
24002 2004-02-03  Bruno Haible  <bruno@clisp.org>
24003
24004         * m4/pipe.m4: New file, from GNU gettext.
24005
24006 2004-02-03  Bruno Haible  <bruno@clisp.org>
24007
24008         * lib/pipe.h: New file, from GNU gettext.
24009         * lib/pipe.c: New file, from GNU gettext.
24010
24011 2004-01-27  Bruno Haible  <bruno@clisp.org>
24012
24013         * m4/execute.m4: New file, from GNU gettext.
24014
24015 2004-01-27  Bruno Haible  <bruno@clisp.org>
24016
24017         * lib/execute.h: New file, from GNU gettext.
24018         * lib/execute.c: New file, from GNU gettext.
24019         * lib/w32spawn.h: New file, from GNU gettext.
24020
24021 2004-01-24  Paul Eggert  <eggert@twinsun.com>
24022
24023         Merge from diffutils.
24024
24025         * lib/file-type.c (file_type): Add typed memory objects.
24026         * lib/file-type.h (S_TYPEISTMO): New macro.
24027
24028         * lib/c-stack.h (c_stack_action): Remove argv argument.
24029         * lib/c-stack.c (c_stack_action): Likewise.  All uses changed.
24030         (die): Don't calculate message unless segv_action returns.
24031         (get_stack_location, min_address_from_argv, max_address_from_argv,
24032         volatile stack_base, volatile_stack_size): Remove.
24033         (segv_handler): If ! HAVE_XSI_STACK_OVERFLOW_HEURISTIC, assume
24034         that every segmentation violation is a stack overflow.  (Ouch!)
24035         See Debian bug 136249 (still outstanding) for more info about why
24036         HAVE_XSI_STACK_OVERFLOW_HEURISTIC fails on Linux kernels.
24037
24038 2004-01-24  Paul Eggert  <eggert@twinsun.com>
24039
24040         Exit-status fix from coreutils.
24041
24042         Use exit_failure consistently in place of EXIT_FAILURE,
24043         so that program exit statuses are consistent on failure.
24044
24045         * lib/argmatch.c (ARGMATCH_DIE) [! defined ARGMATCH_DIE]:
24046         Include "exitfail.h", and use exit_failure rather than EXIT_FAILURE.
24047         * lib/argmatch.h: Comment fix to match the above.
24048         * lib/obstack.c (obstack_exit_failure) [!defined _LIBC]:
24049         Now a macro referring to exit_failure, instead of a separate
24050         variable.  Include "exitfail.h" to get it.
24051         * lib/xstrtol.h: Include "exitfail.h".
24052         (STRTOL_FATAL_ERROR): Exit with status exit_failure, not 2.
24053
24054         * lib/long-options.c (parse_long_options): Use prototype
24055         for usage function arg.  Pass it EXIT_SUCCESS rather than 0,
24056         for clarity.
24057
24058 2004-01-21  Jim Meyering  <jim@meyering.net>
24059
24060         * lib/mktime.c (__mktime_internal) [!_LIBC]: Define to mktime_internal
24061         so as not to conflict with a different-sized __mktime_internal
24062         function in GNU libc.
24063         * lib/timegm.c (__mktime_internal) [!_LIBC]: Likewise.
24064         Problem building statically-linked `ls' reported by Michael Brunnbauer.
24065
24066 2004-01-20  Karl Berry  <karl@gnu.org>
24067
24068         * config/config.guess: update from config.
24069
24070         * config/srclistvars.sh: GNUWWWLICENSES for karl.
24071
24072 2004-01-20  Bruno Haible  <bruno@clisp.org>
24073
24074         Safer stack allocation.
24075         * lib/setenv.c: Include allocsa.h.
24076         (alloca): Remove fallback definition.
24077         (freea): Remove macro.
24078         (__add_to_environ) [!_LIBC]: Use allocsa instead of alloca. Use freesa
24079         instead of freea.
24080
24081 2004-01-20  Bruno Haible  <bruno@clisp.org>
24082
24083         * m4/eealloc.m4: New file, from GNU gettext.
24084
24085 2004-01-20  Bruno Haible  <bruno@clisp.org>
24086
24087         * m4/allocsa.m4: New file, from GNU gettext.
24088
24089 2004-01-20  Bruno Haible  <bruno@clisp.org>
24090
24091         * lib/xallocsa.h: New file, from GNU gettext.
24092         * lib/xallocsa.c: New file, from GNU gettext.
24093
24094 2004-01-20  Bruno Haible  <bruno@clisp.org>
24095
24096         * lib/wait-process.c: On Windows, include windows.h. Needed on mingw.
24097
24098 2004-01-20  Bruno Haible  <bruno@clisp.org>
24099
24100         * lib/wait-process.c (wait_subprocess): Add ignore_sigpipe argument.
24101         * lib/wait-process.c (wait_subprocess): Likewise. Handle SIGPIPE
24102         specially.
24103
24104 2004-01-20  Bruno Haible  <bruno@clisp.org>
24105
24106         * lib/wait-process.c (wait_process): Disable the 2003-10-31 waitid()
24107         patch.
24108
24109 2004-01-20  Bruno Haible  <bruno@clisp.org>
24110
24111         * lib/wait-process.c (cleanup_slaves): Use ANSI C declaration.
24112
24113 2004-01-20  Bruno Haible  <bruno@clisp.org>
24114
24115         * lib/eealloc.h: New file.
24116
24117 2004-01-20  Bruno Haible  <bruno@clisp.org>
24118
24119         * lib/binary-io.h: Avoid warnings on Cygwin.
24120
24121 2004-01-20  Bruno Haible  <bruno@clisp.org>
24122
24123         * lib/allocsa.h: New file, from GNU gettext.
24124         * lib/allocsa.c: New file, from GNU gettext.
24125
24126 2004-01-18  Karl Berry  <karl@gnu.org>
24127
24128         * doc/gpl.texi, doc/lgpl.texi: new files.
24129
24130 2004-01-18  Karl Berry  <karl@gnu.org>
24131
24132         * config/srclistvars.sh (GNUWWWLICENSES): new variable.
24133         * config/srclist.txt ({fdl,gpl,lgpl}.text): get from there.
24134
24135 2004-01-15  Paul Eggert  <eggert@twinsun.com>
24136
24137         Merge from coreutils.
24138
24139         * m4/jm-macros.m4 (jm_CHECK_ALL_TYPES): Check for uintptr_t.
24140         * m4/posixver.m4 (gl_POSIXVER): Require gl_DEFAULT_POSIX2_VERSION.
24141         (gl_DEFAULT_POSIX2_VERSION): Move
24142         the documentation from 'configure' into 'config.hin',
24143         so that 'configure --help' isn't burdened by it and
24144         we don't have to worry about its formatting there.
24145         Reword the documentation so that it's more succinct
24146         and can be run together into a single paragraph.
24147         * m4/same.m4 (gl_SAME): Check for pathconf.
24148
24149 2004-01-15  Paul Eggert  <eggert@twinsun.com>
24150
24151         Merge from coreutils.
24152
24153         * lib/posixver.c: Include posixver.h.
24154
24155         * lib/same.c: Include <stdbool.h>, <limits.h>.
24156         (_POSIX_NAME_MAX): Define if not defined.
24157         (MIN): New macro.
24158         (same_name): If file names are silently truncated, report
24159         that the file names are the same if they are the same after
24160         the silent truncation.
24161
24162         * lib/xstrtod.h (xstrtod): Accept an extra arg, specifying the
24163         conversion function.
24164         * lib/xstrtod.c (xstrtod): Likewise.  All callers changed to
24165         include c-strtod.h and use c_strtod.  Don't include stdlib.h; no
24166         longer needed.
24167
24168 2004-01-15  Jim Meyering  <jim@meyering.net>
24169
24170         Merge from coreutils.
24171
24172         * m4/clock_time.m4 (gl_CLOCK_TIME): Don't set LIB_CLOCK_GETTIME
24173         if no library is required.
24174         * m4/jm-macros.m4: Don't require UTILS_SYS_OPEN_MAX.
24175         * m4/jm-macros.m4 (jm_MACROS): Require gl_FUNC_FREE.
24176         * m4/jm-macros.m4 (jm_MACROS): Require autoconf-2.58.
24177         (AC_LANG_SOURCE): Remove definition, now that we require autoconf-2.58.
24178         * m4/jm-macros.m4 (jm_MACROS): Don't require AC_FUNC_FTW.
24179         * m4/lib-check.m4 (jm_LIB_CHECK): Do not set LIB_CRYPT to the
24180         value, $ac_cv_search_crypt, if it's "none required".
24181         * m4/posixver.m4 (gl_DEFAULT_POSIX2_VERSION): New macro.
24182         * m4/prereq.m4 (jm_PREREQ): Require AC_FUNC_GETLOADAVG,
24183         not gl_FUNC_GETLOADAVG.
24184         * m4/prereq.m4 (jm_PREREQ): Require gl_READTOKENS, gl_MD5, gl_MAKEPATH,
24185         gl_LONG_OPTIONS, and gl_IDCACHE, gl_GETUGROUPS.
24186
24187 2004-01-15  Jim Meyering  <jim@meyering.net>
24188
24189         Merge from coreutils.
24190
24191         * lib/md5.h (rol) [__GNUC__ && __i386__]: Don't use `asm' code.  These
24192         days, gcc-3.x does better all by itself.  Patch from Dean Gaudet:
24193         http://mail.gnu.org/archive/html/bug-coreutils/2003-11/msg00144.html
24194
24195         * lib/posixver.c (DEFAULT_POSIX2_VERSION): Use definition of new,
24196         optional configure-time default.
24197
24198         * lib/version-etc.c (version_etc_copyright): Update copyright date.
24199
24200         * lib/xreadlink.c (xreadlink): Correct outdated comment.
24201
24202 2004-01-15  Alexandre Duret-Lutz  <adl@gnu.org>
24203
24204         Merge from coreutils.
24205
24206         * m4/nanosleep.m4 (jm_FUNC_NANOSLEEP): Do not set LIB_NANOSLEEP to the
24207         value, $ac_cv_search_nanosleep, if it's "none required".
24208
24209 2004-01-14  Paul Eggert  <eggert@twinsun.com>
24210
24211         * lib/fnmatch_loop.c (ALLOCA_LIMIT): Remove macro, which collided
24212         with like-named macro in fnmatch.c.
24213         (EXT): Use an internal constant instead.
24214
24215         Merge fnmatch patches from glibc.
24216         * lib/fnmatch.c (mbsinit): Remove define.
24217         Add libc_hidden_ver (__fnmatch, fnmatch).
24218         * lib/fnmatch_loop.c (FCT): Cast to int32_t and UCHAR when appropriate.
24219         Adjust to renaming of collseq_table_lookup to __collseq_table_lookup.
24220
24221 2004-01-14  Karl Berry  <karl@gnu.org>
24222
24223         * config/install-sh: update from automake.
24224
24225 2004-01-13  Karl Berry  <karl@gnu.org>
24226
24227         * config/install-sh: update from automake.
24228
24229 2004-01-09  Karl Berry  <karl@gnu.org>
24230
24231         * config/install-sh: update from automake.
24232
24233 2004-01-05  Karl Berry  <karl@gnu.org>
24234
24235         * config/config.{sub,guess}: update from config.
24236
24237 2003-12-31  Karl Berry  <karl@gnu.org>
24238
24239         * config/depcomp: update from automake.
24240
24241 2003-12-14  Karl Berry  <karl@gnu.org>
24242
24243         * lib/config.charset: update from gettext-runtime.
24244
24245 2003-12-03  Paul Eggert  <eggert@twinsun.com>
24246
24247         * lib/getgroups.c (getgroups): xmalloc takes one argument, not two.
24248         Bug reported by Alfred M. Szmidt.
24249
24250 2003-12-03  Bruno Haible  <bruno@clisp.org>
24251
24252         * m4/gettext.m4: Upgrade from gettext-0.13.
24253         * m4/po.m4: Upgrade from gettext-0.13.
24254         * m4/size_max.m4 (gl_SIZE_MAX): Don't use the _ONCE macros here.
24255         * m4/intmax.m4: New file, from gettext-0.13.
24256         * m4/printf-posix.m4: New file, from gettext-0.13.
24257
24258 2003-11-29  Karl Berry  <karl@gnu.org>
24259
24260         * lib/argp-{help.c,parse.c,namefrob.h}, argp.h: update from libc.
24261
24262 2003-11-25  Paul Eggert  <eggert@twinsun.com>
24263             Bruno Haible  <bruno@clisp.org>
24264
24265         * lib/printf-parse.h: Don't include sys/types.h.
24266         (ARG_NONE): New macro.
24267         (char_directive): Change type of *arg_index fields to size_t.
24268         * lib/printf-parse.c: Don't include sys/types.h.
24269         (SSIZE_MAX): Remove macro.
24270         (PRINTF_PARSE): Change the type of the arg_index variables to size_t.
24271         Remove unnecessary overflow check.
24272         * lib/vasnprintf.c (VASNPRINTF): Update for type change of *arg_index
24273         fields.
24274
24275 2003-11-25  Bruno Haible  <bruno@clisp.org>
24276
24277         * modules/vasnprintf (Files): Remove m4/ssize_t.m4.
24278
24279 2003-11-25  Bruno Haible  <bruno@clisp.org>
24280
24281         * m4/vasnprintf.m4 (gl_PREREQ_PRINTF_PARSE): Don't require
24282         gt_TYPE_SSIZE_T.
24283
24284 2003-11-24  Paul Eggert  <eggert@twinsun.com>
24285
24286         * modules/alloca: Remove dependency on xalloc.
24287
24288 2003-11-24  Paul Eggert  <eggert@twinsun.com>
24289
24290         * lib/alloca.c: Remove dependency on xalloc module.
24291         (xalloc_die): Remove.
24292         (memory_full) [!defined emacs]: New macro.
24293         [!defined emacs]: Don't include xalloc.h.
24294         (alloca): Invoke memory_full, not xalloc_die, if malloc fails or
24295         address arithmetic overflows.  Change datatypes a bit to avoid
24296         unnecessary casts.
24297
24298 2003-11-22  Jim Meyering  <jim@meyering.net>
24299
24300         * lib/xmalloc.c (x2nrealloc_inline): Fix typos in comments:
24301         s/size/size_t/.
24302
24303 2003-11-21  Karl Berry  <karl@gnu.org>
24304
24305         * config/config.{sub,guess}: update from config.
24306
24307 2003-11-18  Karl Berry  <karl@gnu.org>
24308
24309         * config/config.{sub,guess}: update from config.
24310
24311         * config/(printf-{parse,args}.[ch]): sync broken, sigh.
24312
24313 2003-11-17  Paul Eggert  <eggert@twinsun.com>
24314
24315         * README: Mention that S+T cannot overflow if S is the size of
24316         an existing object and T is sufficiently small.
24317
24318 2003-11-17  Jim Meyering  <jim@meyering.net>
24319
24320         On systems without utime and without a utimes function capable of
24321         dealing with a NULL struct utimbuf* argument, this utime replacement
24322         could -- in unusual circumstances -- leak a file descriptor.
24323         * lib/utime.c: Include <unistd.h> and <errno.h>.
24324         (utime_null): Be sure to close `fd' and to preserve errno.
24325         Reported by Geoff Collyer via Arnold Robbins.
24326
24327 2003-11-17  Bruno Haible  <bruno@clisp.org>
24328
24329         * modules/vasnprintf (Files): Add m4/ssize_t.m4.
24330         (Depends-on): Add xsize.
24331
24332 2003-11-17  Bruno Haible  <bruno@clisp.org>
24333
24334         * m4/vasnprintf.m4 (gl_PREREQ_PRINTF_PARSE): Require gt_TYPE_SSIZE_T.
24335
24336 2003-11-17  Bruno Haible  <bruno@clisp.org>
24337
24338         * lib/vasnprintf.c (alloca): Remove fallback definition.
24339         (freea): Remove definition.
24340         (VASNPRINTF): Use alloca only for small sizes, say <= 4000 bytes.
24341         Reported by Paul Eggert.
24342
24343 2003-11-16  Paul Eggert  <eggert@twinsun.com>
24344             Bruno Haible  <bruno@clisp.org>
24345
24346         Protect against address arithmetic overflow.
24347         * lib/printf-args.h: Include stddef.h.
24348         (arguments): Change type of field 'count' to size_t.
24349         * lib/printf-args.c (printf_fetchargs): Use size_t instead of
24350         'unsigned int' where appropriate.
24351         * lib/printf-parse.h: Include sys/types.h.
24352         (char_directive): Change type of *arg_index fields to ssize_t.
24353         (char_directives): Change type of fields 'count', max_*_length to
24354         size_t.
24355         * lib/printf-parse.c: Include sys/types.h and xsize.h.
24356         (SSIZE_MAX): Define fallback value.
24357         (PRINTF_PARSE): Use size_t instead of 'unsigned int' and ssize_t
24358         instead of 'int' where appropriate. Check a_allocated, d_allocated
24359         against overflow. Reject %m$ argument numbers > SSIZE_MAX + 1.
24360         * lib/vasnprintf.c: Include xsize.h.
24361         (VASNPRINTF): Use size_t instead of 'unsigned int' where appropriate.
24362         Check alloca, malloc, realloc, ENSURE_ALLOCATION arguments against
24363         overflow. Avoid wraparound when converting a width or precision from
24364         decimal to binary.
24365
24366 2003-11-16  Bruno Haible  <bruno@clisp.org>
24367
24368         Update from GNU gettext.
24369         * lib/printf-parse.c: Generalize to it can be compiled for wide
24370         strings.
24371         (PRINTF_PARSE, CHAR_T, DIRECTIVE, DIRECTIVES): New macros.
24372         * lib/vasnprintf.c: Generalize to it can be compiled for wide strings.
24373         (VASNPRINTF, CHAR_T, DIRECTIVE, DIRECTIVES, PRINTF_PARSE, USE_SNPRINTF,
24374         SNPRINTF): New macros.
24375         Don't include <alloca.h> if the file is used inside libintl.
24376         (local_wcslen): New function, for Solaris 2.5.1.
24377         (VASNPRINTF): Use it instead of wcslen.
24378
24379 2003-11-16  Bruno Haible  <bruno@clisp.org>
24380
24381         * lib/xsize.h (xmax): New function.
24382         (xsum, xsum3, xsum4): Declare as "pure" functions.
24383
24384 2003-11-12  Paul Eggert  <eggert@twinsun.com>
24385
24386         * modules/xalloc (Files): Undo latest change, since xalloc.h
24387         no longer needs SIZE_MAX or PTRDIFF_MAX.
24388
24389 2003-11-12  Paul Eggert  <eggert@twinsun.com>
24390
24391         * m4/xalloc.m4 (gl_PREREQ_XALLOC): Do not require gl_SIZE_MAX or
24392         gl_PTRDIFF_MAX.
24393
24394 2003-11-12  Paul Eggert  <eggert@twinsun.com>
24395
24396         * lib/xstrtol.c (__xstrtol): Remove "break" immediately after
24397         "return", to pacify some unknown compiler.  Problem reported
24398         by Joerg Schilling.
24399
24400 2003-11-12  Paul Eggert  <eggert@twinsun.com>
24401
24402         * lib/xalloc.h: Do not include <limits.h> or <stdint.h>.
24403         (xalloc_oversized): Use sizeof (ptrdiff_t) and sizeof (size_t) for
24404         the heuristic, rather than PTRDIFF_MAX and SIZE_MAX.  This
24405         heuristic is just as accurate as far as we know, and it removes a
24406         dependency on size_max.m4 and ptrdiff_max.m4.
24407
24408 2003-11-11  Bruno Haible  <bruno@clisp.org>
24409
24410         * modules/xsize (Files): Add m4/size_max.m4.
24411         * modules/xalloc (Files): Add m4/size_max.m4, m4/ptrdiff_max.m4.
24412
24413 2003-11-11  Bruno Haible  <bruno@clisp.org>
24414
24415         * m4/size_max.m4: New file.
24416         * m4/ptrdiff_max.m4: New file.
24417         * m4/xsize,m4 (gl_XSIZE): Require gl_SIZE_MAX.
24418         * m4/xalloc.m4 (gl_PREREQ_XALLOC): New macro.
24419         (gl_XALLOC): Invoke it.
24420
24421 2003-11-11  Bruno Haible  <bruno@clisp.org>
24422
24423         * lib/xsize.h (SIZE_MAX): Remove fallback definition.
24424         * lib/xalloc.h: Include limits.h. Assume SIZE_MAX and PTRDIFF_MAX are
24425         defined.
24426
24427 2003-11-10  Paul Eggert  <eggert@twinsun.com>
24428
24429         * lib/xalloc.h (xalloc_oversized): [! (defined PTRDIFF_MAX &&
24430         PTRDIFF_MAX < SIZE_MAX)]: Fix off-by-one error that would have
24431         rejected some allocations of exactly SIZE_MAX - 2 bytes.
24432         From Bruno Haible.
24433         [defined PTRDIFF_MAX && PTRDIFF_MAX < SIZE_MAX]: Use SIZE_MAX,
24434         not (size_t) -1, since it's defined here.
24435
24436 2003-11-09  Karl Berry  <karl@gnu.org>
24437
24438         * config/mkinstalldirs, depcomp, mdate-sh: update from automake.
24439
24440 2003-11-06  Paul Eggert  <eggert@twinsun.com>
24441
24442         * lib/xalloc.h [HAVE_STDINT_H]: Include <stdint.h>.
24443         (xalloc_oversized) [! (PTRDIFF_MAX < SIZE_MAX)]:
24444         Reject sizes of exactly SIZE_MAX bytes.
24445         * lib/xreadlink.c: Include "xalloc.h" before checking whether SIZE_MAX
24446         is defined, since "xalloc.h" now defines SIZE_MAX on modern hosts.
24447
24448 2003-11-05  Bruno Haible  <bruno@clisp.org>
24449
24450         * lib/xsize.h: Include limits.h, to avoid a possible collision with
24451         SIZE_MAX defined in <limits.h> on Solaris.
24452
24453 2003-11-04  Jim Meyering  <jim@meyering.net>
24454
24455         * modules/sysexits: Use the `$(VAR)' notation for AC_SUBST'd
24456         variable names, rather than @VAR@.
24457         * modules/poll: Likewise.
24458
24459 2003-11-04  Bruno Haible  <bruno@clisp.org>
24460
24461         * modules/xsize: New file.
24462         * modules/linebreak: Depend on xsize.
24463         * MODULES.html.sh (func_all_modules): Add xsize.
24464
24465 2003-11-04  Bruno Haible  <bruno@clisp.org>
24466
24467         * m4/xsize.m4: New file.
24468
24469 2003-11-04  Bruno Haible  <bruno@clisp.org>
24470
24471         * lib/xsize.h: New file.
24472         * lib/linebreak.c: Include xsize.h.
24473         (mbs_possible_linebreaks, mbs_width_linebreaks): Check malloc()
24474         argument for overflow.
24475         Suggested by Paul Eggert.
24476
24477 2003-11-03  Karl Berry  <karl@gnu.org>
24478
24479         * config/config.{guess,sub}: update from config.
24480
24481 2003-11-03  Jim Meyering  <jim@meyering.net>
24482
24483         * modules/userspec (lib_SOURCES): Add userspec.h.
24484         (Include): Add "userspec.h".
24485         Improve description.
24486
24487 2003-11-03  Jim Meyering  <jim@meyering.net>
24488
24489         * lib/userspec.c: Include "userspec.h".
24490         * lib/userspec.h: New file.
24491
24492 2003-11-03  Bruno Haible  <bruno@clisp.org>
24493
24494         * m4/wait-process.m4 (gl_WAIT_PROCESS): Also check for waitid.
24495
24496 2003-11-03  Bruno Haible  <bruno@clisp.org>
24497
24498         * lib/wait-process.c (wait_process): Use waitid with WNOWAIT if
24499         available, to avoid (extremely rare) race condition.
24500         Suggested by Paul Eggert.
24501
24502 2003-11-02  Karl Berry  <karl@gnu.org>
24503
24504         * config/srclist.txt (vasprintf.c): sync broken, sigh.
24505
24506 2003-10-31  Paul Eggert  <eggert@twinsun.com>
24507
24508         * lib/mountlist.h (struct mount_entry.me_type_malloced): New member.
24509         * lib/mountlist.c (SIZE_MAX): Define if not defined already.
24510         (read_filesystem_list): Set and use me_type_malloced.
24511         Use "sizeof *me" rather than "sizeof (struct mount_entry)" (or
24512         whatever the type happens to be), for brevity and consistency.
24513         Check for size calculation overflow on Alphas running OSF/1.
24514
24515 2003-10-31  Jim Meyering  <jim@meyering.net>
24516
24517         * lib/hash.c: Include "xalloc.h" for use of xalloc_oversized.
24518
24519         * lib/linebuffer.c: Include <string.h> for declaration of memset.
24520
24521 2003-10-30  Paul Eggert  <eggert@twinsun.com>
24522             Bruno Haible  <bruno@clisp.org>
24523
24524         * lib/vasprintf.c: Include <limits.h>, <stdlib.h>.
24525         (vasprintf): Fail if the resulting length doesn't fit in an 'int'.
24526
24527 2003-10-30  Paul Eggert  <eggert@cs.ucla.edu>
24528
24529         * m4/host-os.m4 (UTILS_HOST_OS): Change netbsd*-gnu pattern back to
24530         netbsd*-gnu*.  Suggested by Robert Millan.
24531
24532 2003-10-29  Paul Eggert  <eggert@twinsun.com>
24533
24534         * modules/group-member: Depend on stdbool.
24535
24536 2003-10-29  Paul Eggert  <eggert@twinsun.com>
24537
24538         * m4/xalloc.m4 (gl_XALLOC): Undo previous change.
24539
24540 2003-10-29  Paul Eggert  <eggert@twinsun.com>
24541
24542         * m4/host-os.m4 (UTILS_HOST_OS): Resurrect netbsd*-gnu.  Add comments
24543         to it, and to knetbsd*-gnu and kfreebsd*-gnu.  Remove the '*' from
24544         after the 'gnu' in these cases.  This fixes some bugs in the
24545         previous change, and is based on suggestions by Robert Millan.
24546
24547 2003-10-29  Paul Eggert  <eggert@twinsun.com>
24548
24549         * lib/xalloc.h (xalloc_oversized): Now a macro, not a function,
24550         so that it works even if SIZE_MAX < N.  Do not include <stdbool.h>;
24551         no longer needed.
24552         * lib/quotearg.c (quotearg_n_options): Use it.
24553         * lib/group-member.c: Include <stdbool.h>.
24554         (free_group_info): Arg is now const *; don't free arg.
24555         (get_group_info): Now returns bool and accepts struct group_info *,
24556         rather than returning a malloc'ed struct group_info *.
24557         All uses changed.  Check for overflow in internal size calculation.
24558
24559         * lib/getusershell.c (readname): Simplify the code by using x2nrealloc
24560         rather than xmalloc/xrealloc.
24561         * lib/linebuffer.c (initbuffer, readlinebuffer): Simplify the code by
24562         using x2realloc rather than xmalloc/xrealloc.  Also, fix a C
24563         conformance bug: the old code used a pointer after freeing the
24564         storage that it addressed.
24565         * lib/hash.c (hash_initialize): Simplify the code by using
24566         xalloc_oversized rather than doing it by hand.
24567         * lib/getgroups.c (getgroups): Don't use xrealloc, since we don't need
24568         the buffer preserved.  Use free and xmalloc instead.
24569         * lib/quotearg.c (quotearg_n_options): Likewise.
24570         Use a simpler test for size overflow.  Don't use xalloc_oversized
24571         because unsigned int might be wider than size_t (!); this suggests
24572         that we should switch from unsigned int to size_t for slot numbers.
24573
24574 2003-10-28  Paul Eggert  <eggert@twinsun.com>
24575
24576         * m4/host-os.m4 (UTILS_HOST_OS): Identify GNU/KFreeBSD and
24577         GNU/KNetBSD.  These implementations use glibc atop the FreeBSD and
24578         NetBSD kernels.  Requested by Richard Stallman.
24579
24580 2003-10-27  Paul Eggert  <eggert@twinsun.com>
24581
24582         * lib/exclude.c (new_exclude): Use xzalloc rather than xmalloc
24583         to allocate the returned structure.  Do not allocate a subarray,
24584         as x2nrealloc will do that.
24585         (add_exclude): Use x2nrealloc to reallocate ex->exclude,
24586         instead of xnrealloc.
24587         (add_exclude_file): Use x2realloc instead of malloc + xnrealloc.
24588
24589 2003-10-27  Bruno Haible  <bruno@clisp.org>
24590
24591         * lib/stdbool_.h: Better support for BeOS.
24592
24593 2003-10-26  Paul Eggert  <eggert@twinsun.com>
24594
24595         * m4/xalloc.m4 (gl_XALLOC): Requore AC_C_INLINE, since xalloc.h
24596         now uses inline.
24597
24598 2003-10-26  Paul Eggert  <eggert@twinsun.com>
24599
24600         * lib/xalloc.h (xalloc_oversized): New static inline function, for
24601         callers that want to do their own size-overflow checking.  Include
24602         <stdbool.h>, since xalloc_oversized returns bool.
24603         * lib/xalloc.c (array_size_overflow): Remove.  All callers changed
24604         to use xalloc_oversized.
24605
24606         Add two functions x2realloc, x2nrealloc, for programs that grow
24607         arrays dynamically by doubling their sizes.
24608         * lib/xalloc.h (x2realloc, x2nrealloc): New decls.
24609         * lib/xmalloc.c (x2nrealloc_inline, x2nrealloc, x2realloc):
24610         New functions.
24611
24612         Port to C99 semantics for 'inline' of external functions.
24613         Bug reported by Bruno Haible.
24614         * lib/xmalloc.c (xnmalloc_inline): New static inline function,
24615         with the old contents of xnmalloc.
24616         (xnmalloc, xmalloc): Use it.
24617         (xnrealloc_inline): New static inline function,
24618         with the old contents of xnrealloc.
24619         (xnrealloc, xrealloc): Use it.
24620
24621         * lib/alloc.c (alloca): xmalloc cannot return NULL, so don't test for
24622         that.
24623
24624 2003-10-26  Karl Berry  <karl@gnu.org>
24625
24626         * config/srclist.txt (COPYING.DOC): no longer available from
24627         /gd/gnuorg; don't know where the ultimate source is.
24628
24629 2003-10-25  Paul Eggert  <eggert@twinsun.com>
24630
24631         Fix several address-calculation bugs in the hash modules,
24632         plus some minor code cleanup.
24633
24634         * lib/hash.h: Include <stdbool.h>, for bool.
24635         * lib/hash.c: Don't include <stdbool.h>, since hash.h does it now.
24636         * lib/hash.h (Hash_hasher, hash_get_n_buckets, hash_get_n_buckets_used,
24637         hash_get_n_entries, hash_get_max_bucket_length,
24638         hash_get_entries, hash_do_for_each, hash_string, hash_initialize,
24639         hash_rehash): Use size_t rather than unsigned.
24640         * lib/hash.c (struct hash_table, hash_get_n_buckets,
24641         hash_get_n_buckets_used, hash_get_n_entries,
24642         hash_get_max_bucket_length, hash_table_ok, hash_print_statistics,
24643         hash_get_entries, hash_do_for_each, hash_string, is_prime,
24644         next_prime, hash_initialize, hash_rehash, hash_delete, hash_print):
24645         Likewise.
24646         (SIZE_MAX): Define if not defined.
24647         (hash_get_max_bucket_length, hash_table_ok, hash_lookup,
24648         hash_get_first, hash_get_next, hash_get_entries, hash_do_for_each,
24649         hash_print):
24650         Use const * when possible.
24651         (hash_string): Use (unsigned char) *P rather than *(unsigned char *) P.
24652         (check_tuning): Fix bug: if tuning parameters were very close to
24653         0 or 1, rounding errors could have caused subscript violations.
24654         (hash_initialize, allocate_entry, hash_print): Remove unnecessary cast.
24655         (hash_initialize): Add 'fail:' label
24656         to free table and return NULL, and use it to simplify code.
24657         Use calloc rather than clearing the storage ourself.
24658         (hash_initialize, hash_rehash): Check for arithmetic overflow in
24659         buffer size calculations.
24660         * lib/hash-pjw.h (hash_pjw): Use size_t, not unsigned.
24661         Include <stddef.h>, for size_t.
24662         * lib/hash-pjw.c (hash_pjw): Likewise.
24663         Switch to method described by Bruno Haible.
24664         Include <limits.h>, for CHAR_BIT.
24665         (SIZE_BITS): New macro.
24666
24667 2003-10-23  Paul Eggert  <eggert@twinsun.com>
24668
24669         * m4/getline.m4 (AM_FUNC_GETLINE):
24670         Don't include getndelim2.o twice into LIBOBJS; this breaks on some
24671         hosts.  Problem reported by Derek Robert Price in
24672         <http://mail.gnu.org/archive/html/bug-gnulib/2003-10/msg00092.html>.
24673         This patch can be withdrawn after Autoconf 2.58 is required for gnulib.
24674         * m4/getndelim2.m4 (gl_GETNDELIM2): Likewise.
24675
24676 2003-10-21  Paul Eggert  <eggert@twinsun.com>
24677
24678         * lib/getndelim2.c (getndelim2): When size calculation overflows,
24679         ceiling the allocation at NMAX bytes rather than silently
24680         discarding input bytes before NMAX is reached.  This makes
24681         a difference only if NMAX exceeds SIZE_MAX / 2.
24682
24683         * lib/obstack.c: Merge from glibc.
24684         [defined _LIBC]: Include <obstack.h>, not "obstack.h".
24685         Add libc_hidden_def (_obstack_newchunk).
24686         (_obstack_free) [! defined _LIBC]: Remove.
24687         [defined _LIBC]: Make a strong alias from obstack_free, rather than
24688         a clone of the function body.
24689         (fputs) [defined _LIBC && defined USE_IN_LIBIO]: Remove.
24690         [defined _LIBC && !defined USE_IN_LIBIO]: Include <libio/iolibio.h>.
24691
24692         * lib/obstack.h: Indenting cleanup, to make it easier to merge with
24693         glibc.
24694         (obstack_grow, obstack_grow0): Remove unnecessary parentheses around
24695         arg to memcpy.
24696
24697         * lib/obstack.h (obstack_1grow_fast): Properly parenthesize arg.
24698         (obstack_ptr_grow_fast, obstack_int_grow_fast):
24699         Don't use lvalue casts, as GCC plans to remove support for them
24700         in GCC 3.5.  Reported by Joseph S. Myers.  This bug
24701         was also present in the non-GCC version, indicating that this
24702         code had always been buggy and had never been widely used.
24703         (obstack_1grow, obstack_ptr_grow, obstack_int_grow, obstack_blank):
24704         Use the fast variant of each macro, rather than copying the
24705         definiens of the fast variant; that way, we'll be more likely to
24706         catch future bugs in the fast variants.
24707
24708 2003-10-20  Bruno Haible  <bruno@clisp.org>
24709
24710         * modules/wait-process: New file.
24711         * MODULES.html.sh (func_all_modules): Add wait-process.
24712
24713 2003-10-20  Bruno Haible  <bruno@clisp.org>
24714
24715         * m4/wait-process.m4: New file.
24716
24717 2003-10-20  Bruno Haible  <bruno@clisp.org>
24718
24719         * lib/wait-process.h: New file, from GNU gettext.
24720         * lib/wait-process.c: New file, from GNU gettext.
24721
24722 2003-10-19  Jim Meyering  <jim@meyering.net>
24723
24724         * lib/vasnprintf.c (vasnprintf): Work around losing snprintf on
24725         HPUX 10.20.
24726
24727 2003-10-18  Karl Berry  <karl@gnu.org>
24728
24729         * config/config.guess: update from config.
24730
24731 2003-10-16  Paul Eggert  <eggert@twinsun.com>
24732
24733         * lib/getgroups.c: Include <errno.h>, <stdlib.h>.
24734         (getgroups): First arg is int, not size_t.
24735         Don't let 'free' mangle errno.
24736
24737 2003-10-16  Paul Eggert  <eggert@twinsun.com>
24738
24739         * README: Mention that gnulib assumes that (foo *) NULL + 0 == NULL.
24740
24741 2003-10-16  Karl Berry  <karl@gnu.org>
24742
24743         * config/config.{guess,sub}: update from config.
24744
24745 2003-10-16  Jim Meyering  <jim@meyering.net>
24746
24747         * lib/xmalloc.c: Include <string.h>, for declarations of memset and
24748         memcpy.
24749
24750 2003-10-15  Paul Eggert  <eggert@twinsun.com>
24751
24752         * lib/exclude.c: Do not include <inttypes.h> or <stdint.h>.
24753         (SIZE_MAX): Remove.
24754         (new_exclude, add_exclude_file): Initial size no longer needs to
24755         be a power of 2.
24756         (add_exclude, add_exclude_file): Use xnrealloc instead of rolling
24757         our own address arithmetic overflow checking.
24758
24759         * lib/fnmatch.c (SIZE_MAX): Define if standard headers don't.
24760         (fnmatch): Do not alloca more than 2000 wide characters;
24761         instead, use malloc for large buffers.
24762         Check for address arithmetic overflow, and return -1
24763         with errno set to ENOMEM in that case.
24764         * lib/fnmatch_loop.c (ALLOCA_LIMIT): New macro.
24765         (NEW_PATTERN): Do not alloca more than 8000 bytes;
24766         instead, return -1.  Check for address arithmetic overflow.
24767
24768 2003-10-14  Paul Eggert  <eggert@twinsun.com>
24769
24770         Handle invalid suffixes and overflow independently, so that
24771         callers can treat them independently as needed.  Fix some bugs in
24772         suffix handling, e.g., "100k@" was not diagnosed as an invalid
24773         suffix for a human-readable blocksize.  The major caller-visible
24774         change is the addition of a new
24775         LONGINT_INVALID_SUFFIX_CHAR_WITH_OVERFLOW enum value, indicating
24776         that both overflow and suffix chars were found.
24777
24778         * lib/human.c (humblock): Don't check separately for invalid suffix
24779         char; that is xstrtoumax's job (now that its bug is fixed).
24780         * lib/xstrtoimax.c (STRTOL_T_MINIMUM, STRTOL_T_MAXIMUM) [defined
24781         INTMAX_MAX]: New macros.
24782         * lib/xstrtol.c (STRTOL_T_MINIMUM, STRTOL_T_MAXIMUM, TYPE_MINIMUM,
24783         TYPE_MAXIMUM): New macros.
24784         (bkm_scale, bkm_scale_by_power): Return strtol_error, not int.
24785         (bkm_scale, bkm_scale_by_power, __xstrtol): Return maximal values
24786         if overflow occurs, as it's what __strtol does and it's more useful
24787         in practice.
24788         (__xstrtol): If __strtol reports some error other than ERANGE,
24789         reflect it to the caller as LONGINT_INVALID.  If it reports
24790         ERANGE, continue the rest of parsing, and report LONGINT_OVERFLOW
24791         | LONGINT_INVALID_SUFFIX_CHAR if both errors occur.
24792         * lib/xstrtol.h (LONGINT_INVALID_SUFFIX_CHAR_WITH_OVERFLOW): New enum
24793         value.
24794         (_STRTOL_ERROR): Handle it.  Abort when given unknown error codes.
24795         * lib/xstrtoul.c (STRTOL_T_MINIMUM, STRTOL_T_MAXIMUM): New macros.
24796         * lib/xstrtoumax.c (STRTOL_T_MINIMUM, STRTOL_T_MAXIMUM)
24797         [defined UINTMAX_MAX]: New macros.
24798
24799 2003-10-14  Bruno Haible  <bruno@clisp.org>
24800
24801         * modules/fatal-signal: Add m4/sig_atomic_t.m4 to file list.
24802
24803 2003-10-14  Bruno Haible  <bruno@clisp.org>
24804
24805         * m4/sig_atomic_t: New file, from GNU gettext.
24806         * m4/fatal-signal.m4 (gl_FATAL_SIGNAL): Require gt_TYPE_SIG_ATOMIC_T.
24807
24808 2003-10-14  Bruno Haible  <bruno@clisp.org>
24809
24810         * lib/fatal-signal.h: Improved comments. Suggested by Paul Eggert.
24811         * lib/fatal-signal.c: Use sig_atomic_t. Suggested by Paul Eggert.
24812         Also use volatile where needed.
24813
24814 2003-10-12  Paul Eggert  <eggert@twinsun.com>
24815
24816         * modules/xalloc: Do not depend on 'exit'.  Depend on 'stdbool'.
24817         Change maintainer from Bruno Haible to 'all'.
24818
24819 2003-10-12  Paul Eggert  <eggert@twinsun.com>
24820
24821         * m4/xalloc.m4 (gl_PREREQ_XMALLOC): Require AC_C_INLINE.
24822
24823 2003-10-12  Paul Eggert  <eggert@twinsun.com>
24824
24825         * lib/xalloc.h (xnmalloc, xzalloc, xnrealloc, xclone): New decls.
24826         (XMALLOC, XCALLOC, XREALLOC, XFREE, CCLONE, CLONE): Deprecate,
24827         and define in terms of the other primitives.
24828         * lib/xmalloc.c: Include stdbool.h; do not include exit.h.
24829         (SIZE_MAX): Define if not already defined.
24830         (array_size_overflow): New function.
24831         (xalloc_die): Abort instead of exiting if 'error' returns.
24832         (xnmalloc, xnrealloc, xzalloc, xclone): New functions.
24833         (xmalloc, xrealloc): Use them.
24834         (xcalloc): Check for address arithmetic overflow.
24835         * lib/xstrdup.c (xstrdup): Use xclone, since memcpy should be
24836         a bit faster than strcpy.
24837
24838 2003-10-10  Simon Josefsson  <jas@extundo.com>
24839
24840         * modules/argp (Depends-on): Add restrict and strcase.
24841
24842 2003-10-10  Simon Josefsson  <jas@extundo.com>
24843
24844         * m4/argp.m4: Add AC_C_INLINE.
24845
24846 2003-10-08  Paul Eggert  <eggert@twinsun.com>
24847
24848         Merge getpass from libc, plus a few fixes.
24849
24850         * lib/getpass.c (HAVE_STDIO_EXT) [_LIBC]: Define to 1.
24851         Include <stdbool.h>.
24852         Include <stdio_ext.h> if HAVE_STDIO_H, otherwise define
24853         __fsetlocking to empty.
24854         [_LIBC]: Do not include "getline.h" or "unlocked-io.h", but
24855         do include <bits/libc-lock.h>.
24856         Do not include <fcntl.h>; not needed.
24857         [_LIBC]: Include <wchar.h>.
24858         (NOTCANCEL_MODE): New macro.
24859         (flockfile, funlockfile) [_LIBC]: New macros.
24860         (__libc_cleanup_push, __libc_cleanup_pop, __getline, __tcgetattr)
24861         [!_LIBC]: New macros.
24862         (call_fclose): New function.
24863         (getpass): Use it.  Save tty stream separately; this simplifies the
24864         code and makes it more reliable if stdin happens to equal stdout.
24865         Invoke __fsetlocking on tty.
24866         Handle thread cancellation if needed.
24867         Namespace cleanup (use __tcgetattr, __getline).
24868         Use bool for Booleans.
24869         [USE_IN_LIBIO]: Handle wide streams.
24870         [!_LIBC]: Unconditionally do the fseek, since we don't know what
24871         stream might go where.
24872
24873         * lib/unlocked-io.h: Include <stdio.h>, so that the caller
24874         doesn't have to include <stdio.h> before us.
24875         (clearerr_unlocked, feof_unlocked, ferror_unlocked,
24876         fflush_unlocked, fgets_unlocked, fputc_unlocked, fputs_unlocked,
24877         fread_unlocked, fwrite_unlocked, getc_unlocked, getchar_unlocked,
24878         putc_unlocked, putchar_unlocked): Define to the unlocked counterpart
24879         if not declared, so that we can use getpass.c code from libc without
24880         rewriting it.
24881         (flockfile, ftrylockfile, funlockfile): New macros.
24882
24883 2003-10-08  Paul Eggert  <eggert@twinsun.com>
24884
24885         * modules/getpass: Depend on stdbool.
24886
24887 2003-10-08  Paul Eggert  <eggert@twinsun.com>
24888
24889         * m4/getpass.m4 (gl_PREREQ_GETPASS): Check for stdio_ext.h.
24890
24891 2003-10-07  Karl Berry  <karl@gnu.org>
24892
24893         * config/config.{guess,sub}: update from config.
24894
24895 2003-10-06  Jim Meyering  <jim@meyering.net>
24896             Bruno Haible  <bruno@clisp.org>
24897
24898         This lets translators provide better translations for the
24899         "Written by ..." part of --version output.
24900         * lib/version-etc.h: Include stdarg.h.
24901         (version_etc_copyright): Declare as readonly.
24902         (version_etc): Make this function variadic with a NULL-terminated list
24903         of author name strings.
24904         (version_etc_va): New declaration.
24905         * lib/version-etc.c: Include stdarg.h, stdlib.h.
24906         (version_etc_copyright): Declare as readonly.
24907         (version_etc_va): New function. Provide a different translatable string
24908         for each possible number of authors < 10. Abbreviate when there are 10
24909         authors or more.
24910         (version_etc): Make this function variadic. Call version_etc_va.
24911         Suggestion from Gary V. Vaughan.
24912
24913         * lib/long-options.h (parse_long_options): Change prototype: the
24914         authors string is moved to the end and becomes variadic.
24915         * lib/long-options.c: Include stdarg.h.
24916         (parse_long_options): Make this function variadic, too.
24917         Call version_etc_va, not version_etc.
24918
24919 2003-10-06  Bruno Haible  <bruno@clisp.org>
24920
24921         * modules/version-etc-2: Remove file.
24922         * MODULES.html.sh (func_all_modules): Remove version-etc-2.
24923
24924 2003-10-06  Bruno Haible  <bruno@clisp.org>
24925
24926         * modules/fatal-signal: New file.
24927         * MODULES.html.sh (func_all_modules): Add fatal-signal.
24928
24929 2003-10-06  Bruno Haible  <bruno@clisp.org>
24930
24931         * m4/fatal-signal.m4: New file.
24932         * m4/signalblocking.m4: New file, from GNU gettext.
24933
24934 2003-10-06  Bruno Haible  <bruno@clisp.org>
24935
24936         * lib/version-etc-2.h: Remove file.
24937         * lib/version-etc-2.c: Remove file.
24938
24939 2003-10-06  Bruno Haible  <bruno@clisp.org>
24940
24941         * lib/fatal-signal.h: New file, from GNU gettext.
24942         * lib/fatal-signal.c: New file, from GNU gettext.
24943
24944 2003-10-05  Paul Eggert  <eggert@twinsun.com>
24945
24946         * README: Rework advice for preventing empty .o files.
24947         Don't recommend ELIDE constructs.  Recommend <stddef.h>,
24948         not <sys/types.h>.
24949
24950 2003-10-04  Karl Berry  <karl@gnu.org>
24951
24952         * lib/argp*: update from libc.
24953
24954 2003-10-04  Karl Berry  <karl@gnu.org>
24955
24956         * config/config.{guess,sub}: update from config.
24957
24958 2003-10-02  Bruno Haible  <bruno@clisp.org>
24959
24960         * modules/lchown (Include): Add lchown.h.
24961         * modules/time_r (Include): Use "..." syntax.
24962         * modules/xgetdomainname (Include): Add xgetdomainname.h.
24963
24964 2003-10-01  Simon Josefsson  <jas@extundo.com>
24965
24966         * MODULES.html.sh (func_all_modules): Move gethostname from section
24967         'based on' to section 'lacking' POSIX:2001.
24968
24969 2003-10-01  Larry Jones  <lawrence.jones@eds.com>
24970
24971         * lib/getpass.c (getpass): Use a no-op fseek when switching from input
24972         to output mode on the same stream.
24973
24974 2003-09-29  Paul Eggert  <eggert@twinsun.com>
24975
24976         * lib/strftime.c (tm_diff) [! HAVE_TM_GMTOFF]:
24977         Fix arg typo in previous patch.
24978
24979 2003-09-28  Jim Meyering  <jim@meyering.net>
24980
24981         * lib/error.c: Correct cpp indentation.
24982
24983 2003-09-27  Paul Eggert  <eggert@twinsun.com>
24984
24985         * modules/free: New file.
24986
24987 2003-09-27  Paul Eggert  <eggert@twinsun.com>
24988
24989         * m4/free.m4: New file.
24990
24991 2003-09-27  Paul Eggert  <eggert@twinsun.com>
24992
24993         * lib/minmax.h (MIN, MAX)
24994         [__STDC__ && defined __GNUC__ && __GNUC__ >= 2]:
24995         Omit the special code that used __typeof__, since we worry that
24996         it could be more trouble than it's worth.  See:
24997         http://mail.gnu.org/archive/html/bug-gnulib/2003-01/msg00090.html
24998         http://mail.gnu.org/archive/html/bug-gnulib/2003-01/msg00095.html
24999
25000         * lib/free.c: New file.
25001
25002 2003-09-27  Oskar Liljeblad  <oskar@osk.mine.nu>
25003
25004         Trivial fixes to Makefile.am parts of module listings.
25005         * modules/strstr: Append strstr.h to lib_SOURCES.
25006         * modules/strcase: Likewise, for strcase.h.
25007
25008 2003-09-27  Karl Berry  <karl@gnu.org>
25009
25010         * config/mkinstalldirs: update from automake.
25011
25012 2003-09-26  Paul Eggert  <eggert@twinsun.com>
25013
25014         * lib/error.c (SIZE_MAX) [!defined SIZE_MAX]: Define.
25015         (error_tail): Do not loop, reallocating temporary buffer, since
25016         the output cannot contain more wide characters than the input
25017         contains bytes, the size must be big enough already.  This avoids
25018         one potential size overflow calculation.  Check for size overflow
25019         when calculating temporary buffer size.  Free temporary buffer
25020         when done, if it was allocated with malloc; this plugs a memory
25021         leak.  Remove casts from void * to pointers, that are no longer
25022         needed now that we're assuming C89 or better.
25023
25024         Merge error changes from glibc.
25025
25026         * lib/error.c, error.h: Update copyright notice header to match glibc.
25027         * lib/error.c [defined _LIBC]: Include <errno.h>, <bits/libc-lock.h>.
25028         (error, error_at_line) [defined _LIBC && defined __libc_ptf_call]:
25029         Disable cancellation while printing error.
25030         * lib/error.h: Prepend __ to parameter names.
25031
25032 2003-09-26  Jim Meyering  <jim@meyering.net>
25033
25034         * lib/error.c (error_tail): Move some declarations
25035         into inner scope where the local variables are used.
25036
25037 2003-09-26  Bruno Haible  <bruno@clisp.org>
25038
25039         * m4/stpncpy.m4 (gl_FUNC_STPNCPY): Add comments about the AIX
25040         stpncpy().
25041         Don't define stpncpy through config.h; it's now done through stpncpy.h.
25042
25043 2003-09-26  Bruno Haible  <bruno@clisp.org>
25044
25045         * lib/stpncpy.h (gnu_stpncpy): New declaration.
25046         (stpncpy): Define as alias for gnu_stpncpy.
25047         * lib/stpncpy.c [!_LIBC]: Define gnu_stpncpy, not stpncpy.
25048
25049 2003-09-25  Simon Josefsson  <jas@extundo.com>
25050
25051         * lib/xgetdomainname.h: New file.
25052         * lib/xgetdomainname.c: New file.
25053
25054 2003-09-25  Simon Josefsson  <jas@extundo.com>
25055             Bruno Haible  <bruno@clisp.org>
25056
25057         * modules/getdomainname: New file.
25058         * modules/xgetdomainname: New file.
25059         * MODULES.html.sh (func_all_modules): Add getdomainname,
25060         xgetdomainname.
25061
25062 2003-09-25  Simon Josefsson  <jas@extundo.com>
25063             Bruno Haible  <bruno@clisp.org>
25064
25065         * m4/getdomainname.m4: New file.
25066
25067 2003-09-25  Simon Josefsson  <jas@extundo.com>
25068             Bruno Haible  <bruno@clisp.org>
25069
25070         * lib/getdomainname.h: New file.
25071         * lib/getdomainname.c: New file.
25072
25073 2003-09-25  Karl Berry  <karl@gnu.org>
25074
25075         * lib/argp-fmtstream.c, argp-help.c: update from libc.
25076
25077 2003-09-25  Karl Berry  <karl@gnu.org>
25078
25079         * config/install-sh: update from automake.
25080
25081 2003-09-25  Bruno Haible  <bruno@clisp.org>
25082
25083         * modules/version-etc-2: New file, from modules/version-etc with
25084         modifications.
25085         * MODULES.html.sh (func_all_modules): Add version-etc-2.
25086
25087 2003-09-25  Bruno Haible  <bruno@clisp.org>
25088
25089         * lib/version-etc-2.h: New file, from version-etc.h with modifications.
25090         * lib/version-etc-2.c: New file, from version-etc.c with modifications.
25091
25092 2003-09-24  Simon Josefsson  <jas@extundo.com>
25093
25094         * modules/xgethostname: Add xgethostname.h.
25095
25096 2003-09-24  Paul Eggert  <eggert@twinsun.com>
25097
25098         * lib/linebuffer.c (freebuffer): Don't free the argument, just
25099         the buffer associated with the argument.  Bug reported by
25100         Simon Josefsson.
25101
25102 2003-09-24  Paul Eggert  <eggert@twinsun.com>
25103
25104         * README: Document assumptions that 'int' is at least 32 bits
25105         wide, that integer arithmetic is 2's complement without overflow,
25106         that there are no holes in integer values, that adding sizes of
25107         two nonoverlapping objects can't overflow, and that all-bits-zero
25108         yields scalar zero.  Fix spelling and capitalization typos.
25109
25110 2003-09-19  Karl Berry  <karl@gnu.org>
25111
25112         * lib/argp.h: update from libc.
25113
25114 2003-09-17  Paul Eggert  <eggert@twinsun.com>
25115
25116         * m4/extensions.m4 (gl_USE_SYSTEM_EXTENSIONS): Call AC_BEFORE first,
25117         to avoid spurious warnings like "AC_RUN_IFELSE was called before
25118         gl_USE_SYSTEM_EXTENSIONS" from autoreconf.
25119
25120 2003-09-17  Paul Eggert  <eggert@twinsun.com>
25121
25122         * gnulib-tool: Use "test -h", not "test -L", for portability
25123         to Solaris 8 /bin/sh.  (This bug is fixed in Solaris 9.)
25124         (tags_regexp): Remove, since \| doesn't conform to POSIX.
25125         (sed_extract_prog): Issue s commands one-by-one, rather than
25126         using \| in one s command.
25127
25128 2003-09-16  Paul Eggert  <eggert@twinsun.com>
25129
25130         * lib/linebuffer.c (readlinebuffer): Return NULL immediately upon
25131         input error, instead of returning NULL the next time we are called
25132         (and therefore losing track of errno).
25133
25134 2003-09-16  Bruno Haible  <bruno@clisp.org>
25135
25136         * gnulib-tool (func_create_testdir): Warn about duplicated
25137         dependencies.
25138
25139 2003-09-15  Paul Eggert  <eggert@twinsun.com>
25140
25141         * modules/argmatch, modules/fatal, modules/obstack,
25142         modules/xalloc, modules/xgethostname: Sort dependencies by
25143         importance, not alphabetically.
25144
25145 2003-09-15  Paul Eggert  <eggert@twinsun.com>
25146
25147         * lib/getndelim2.c (getndelim2): Don't trash errno when a read
25148         fails, so that the caller gets the proper errno.
25149
25150         * lib/readutmp.c (read_utmp): Likewise.
25151         Check for fstat error.  Close stream and free storage
25152         when failing.
25153
25154 2003-09-14  Karl Berry  <karl@gnu.org>
25155
25156         * config/srclist.txt (strdup.c): disable for c89 changes.
25157
25158 2003-09-14  Jim Meyering  <jim@meyering.net>
25159
25160         * lib/getloadavg.c: Correct cpp indentation.
25161         * lib/strdup.c: Likewise.
25162         * lib/vasnprintf.c: Likewise.
25163
25164 2003-09-14  Bruno Haible  <bruno@clisp.org>
25165
25166         * modules/fwriteerror: New file.
25167         * MODULES.html.sh (func_all_modules): Add fwriteerror.
25168
25169 2003-09-14  Bruno Haible  <bruno@clisp.org>
25170
25171         * lib/fwriteerror.h: New file.
25172         * lib/fwriteerror.c: New file.
25173
25174 2003-09-12  Paul Eggert  <eggert@twinsun.com>
25175
25176         * modules/argmatch, modules/exitfail, modules/fatal, modules/obstack,
25177         modules/xgethostname, modules/xalloc: Depend on exit.
25178
25179 2003-09-12  Paul Eggert  <eggert@twinsun.com>
25180
25181         * m4/error.m4: Require AC_FUNC_STRERROR_R rather than invoking it.
25182
25183         * m4/extensions.m4 (gl_USE_SYSTEM_EXTENSIONS): Require AC_AIX
25184         and AC_MINIX, too, so that their extensions are available.
25185
25186         * m4/prereq.m4 (jm_PREREQ_ADDEXT): Remove.  All uses removed.
25187         This macro has been superseded by gl_BACKUPFILE.
25188
25189         More patches to assume C89 or better.
25190
25191         * m4/error.m4 (gl_ERROR): Don't check for vprintf.
25192
25193         * m4/check-decl.m4 (jm_CHECK_DECLS): Include <string.h>, <stdlib.h>
25194         unconditionally.
25195         * m4/closeout.m4 (gl_CLOSEOUT): Don't check for stdlib.h.
25196         * m4/gettimeofday.m4 (AC_FUNC_GETTIMEOFDAY_CLOBBER):
25197         Include <string.h>, <stdlib.h> unconditionally.
25198         * m4/lstat.m4 (gl_PREREQ_LSTAT): Don't check for stdlib.h, free.
25199         * m4/readdir.m4 (GL_FUNC_READDIR): Don't check for string.h.
25200         * m4/readutmp.m4 (gl_PREREQ_READUTMP): Don't check for standard C
25201         headers or for string.h.
25202         * m4/strtoumax.m4 (gl_PREREQ_STRTOUMAX): Don't check for stdlib.h
25203         or strtoul.
25204
25205         * m4/mkstemp.m4 (jm_PREREQ_TEMPNAME): Do not require standard C
25206         headers.
25207         * m4/strdup.m4 (gl_PREREQ_STRDUP): Likewise.
25208         * m4/userspec.m4 (gl_USERSPEC): Likewise.
25209         * m4/xalloc.m4 (gl_PREREQ_XMALLOC): Likewise.
25210         * m4/xstrtod.m4 (gl_XSTRTOD): Likewise.
25211         * m4/xstrtol.m4 (gl_PREREQ_XSTRTOL): Likewise.
25212         * m4/strftime.m4 (_jm_STRFTIME_PREREQS): Don't check for limits.h,
25213         memcpy, memset.
25214         (jm_FUNC_GNU_STRFTIME): Don't require standard C headers.
25215         * m4/strtod.m4 (gl_FUNC_STRTOD): Do not check for float.h.
25216         * m4/strtoimax.m4 (gl_PREREQ_STRTOIMAX): Do not check for stdlib.h,
25217         strtol.
25218         * m4/strtol.m4 (gl_FUNC_STRTOL): Do not check for limits.h.
25219         * m4/userspec.m4 (gl_USERSPEC): Do not check for string.h.
25220         * m4/xstrtol.m4 (gl_PREREQ_XSTRTOL): Do not check for string.h, strtol,
25221         strtoul.
25222
25223 2003-09-12  Paul Eggert  <eggert@twinsun.com>
25224
25225         * lib/argmatch.c, fatal.c, xgethostname.c, xmalloc.c: Include exit.h.
25226         * lib/obstack.c [!defined _LIBC]: Likewise.
25227         * lib/argmatch.c (EXIT_FAILURE): Remove; now done by exit.h
25228         * lib/exitfail.c, fatal.c, xgethostname.c, xmalloc.c: Likewise.
25229         * lib/exitfail.c: Don't include stdlib.h; no longer needed.
25230
25231         More changes to assume C89 or better.
25232
25233         * lib/error.c (error_tail): Assume vprintf.
25234
25235         * lib/argmatch.c (getenv): Remove decl.
25236         * lib/progreloc.c (get_full_program_name): Define via prototype.
25237         * lib/setenv.c (clearenv): Likewise.
25238         * lib/stpncpy.c: Do not include <string.h> or <sys/types.h>; not
25239         needed.
25240         * lib/strdup.c: Include <stdlib.h>, <string.h> unconditionally.
25241         (malloc, memcpy): Remove decls.
25242         * lib/strftime.c (HAVE_LIMITS_H, STDC_HEADERS) [defined _LIBC]: Remove.
25243         (HAVE_MEMCPY) [defined emacs && !defined HAVE_BCOPY]: Remove.
25244         Include <limits.h>, <stddef.h>, <stdlib.h>, <string.h> unconditionally.
25245         (memcpy): Remove macro.
25246         (MEMCPY) [!defined COMPILE_WIDE]: Define to memcpy unconditionally.
25247         (__P): Remove.  All uses removed.
25248         (PTR): Remove.  All uses changed to void *.
25249         (CHAR_BIT, NULL): Remove.
25250         (spaces, zeros, memset_space, memset_zero)
25251         [!defined memset && !defined HAVE_MEMSET && !defined _LIBC]:
25252         Remove.
25253         (LOCALE_PARAM, LOCALE_PARAM_DECL): Remove.
25254         (memcpy_lowcase, memcpy_uppcase, tm_diff, iso_week_days):
25255         Define with prototype.
25256         Remove now-unnecessary prototype decl.
25257         (extra_args_spec): Assume ANSI C.  All uses changed.
25258         (extra_args_spec_iso): Remove.
25259         (my_strftime, emacs_strftimeu): Define via prototype.
25260         * lib/strtod.c: Include <float.h>, <stdlib.h>, <string.h>
25261         unconditionally.
25262         (DBL_MAX, DBL_MIN, HUGE_VAL, NULL): Remove decls.
25263         * lib/strtoimax.c: Include <stdlib.h> unconditionally.
25264         (strtoul, strtol): Remove decls.
25265         * lib/strtol.c (STDC_HEADERS, HAVE_LIMITS_H, NULL, ULONG_MAX,
25266         LONG_MAX): Remove.
25267         Include <limits.h>, <stddef.h>, <stdlib.h>, <string.h> unconditionally.
25268         (LOCALE_PARAM_DECL): Remove.  All uses changed to LOCALE_PARAM_PROTO.
25269         (LOCALE_PARAM_PROTO): New macro.
25270         (INTERNAL, INTERNAL1, WEAKNAME): Assume ANSI C, not K&R.
25271         (INTERNAL (strtol), strtol): Define with a prototype.
25272         (PARAMS): Remove.  All uses removed.
25273         * lib/tempname.c: Include <string.h> unconditionally.
25274         * lib/userspec.c: Include <stdlib.h>, <string.h> unconditionally.
25275         * lib/xgethostname.c (main): Define with a prototype.
25276         * lib/xmalloc.c: Include "xalloc.h" first, to check interface.
25277         Include <stdlib.h> unconditionally.
25278         (calloc, malloc, realloc, free): Remove decls.
25279         * lib/xstrtod.c: Include "xstrtod.h" first, to check interface.
25280         Include <stdlib.h> unconditionally.  Sort include file names.
25281         (strtod): Remove.
25282         (xstrtod): Define with a prototype.
25283         * lib/xstrtol.c: Include <stdlib.h>, <string.h> unconditionally.
25284         (strtol, strtoul): Remove decls.
25285
25286 2003-09-11  Paul Eggert  <eggert@twinsun.com>
25287
25288         More patches to assume C89 or better.
25289         * m4/strndup.m4 (gl_PREREQ_STRNDUP): Remove STDC_HEADERS check.
25290         * m4/strnlen.m4 (gl_PREREQ_STRNLEN): Don't check for memory.h,
25291         string.h, memchr, STDC_HEADERS.
25292
25293 2003-09-11  Paul Eggert  <eggert@twinsun.com>
25294
25295         * lib/strndup.c: Don't include <stdio.h>, <sys/types.h>.
25296         Include <stdlib.h>, <string.h> unconditionally.
25297         Remove now-unnecessary cast to char *.
25298         * lib/strnlen.c: Include <string.h> unconditionally.
25299         * lib/yesno.c (yesno): Define with a prototype.
25300
25301 2003-09-11  Bruno Haible  <bruno@clisp.org>
25302
25303         * config/srclist.txt (setenv.c, unsetenv.c): Disable for the moment.
25304
25305 2003-09-10  Jim Meyering  <jim@meyering.net>
25306
25307         * lib/error.c: Correct indentation of cpp directives.
25308
25309 2003-09-10  Bruno Haible  <bruno@clisp.org>
25310
25311         * m4/strcspn.m4 (gl_PREREQ_STRCSPN): Remove <string.h> check.
25312         * m4/strpbrk.m4 (gl_PREREQ_STRPBRK): Remove <string.h> check.
25313         * m4/strstr.m4 (gl_PREREQ_STRSTR): Remove <string.h> check.
25314         * m4/unicodeio.m4 (gl_UNICODEIO): Remove <string.h> check.
25315         * m4/setenv.m4 (gl_PREREQ_SETENV, gl_PREREQ_UNSETENV): Remove
25316         <stdlib.h> and <string.h> checks.
25317         * m4/xreadlink.m4 (gl_XREADLINK): Remove <stdlib.h> check.
25318         * m4/yesno.m4 (gl_YESNO): Remove <stdlib.h> check.
25319
25320 2003-09-10  Bruno Haible  <bruno@clisp.org>
25321
25322         * lib/strcspn.c: Include <string.h> unconditionally.
25323         * lib/strpbrk.c: Include <string.h> unconditionally.
25324         * lib/strstr.c: Include <string.h> unconditionally.
25325         * lib/unicodeio.c: Include <string.h> unconditionally.
25326         * lib/setenv.c: Include <stdlib.h> and <string.h> unconditionally.
25327         * lib/unsetenv.c: Likewise.
25328         * lib/xreadlink.c: Include <stdlib.h> unconditionally.
25329         * lib/yesno.c: Include <stdlib.h> unconditionally.
25330         (rpmatch): Add prototype.
25331
25332 2003-09-09  Paul Eggert  <eggert@twinsun.com>
25333
25334         More patches to assume C89 or better.
25335         * m4/getcwd.m4 (AC_FUNC_GETCWD_NULL): Don't check for stdlib.h.
25336         * m4/getopt.m4 (gl_GETOPT): Don't check for string.h.
25337         * m4/getugroups.m4 (gl_GETUGROUPS): Do not check for standard C headers
25338         or for string.h.
25339         * m4/getusershell.m4 (gl_PREREQ_GETUSERSHELL): Do not check for
25340         stdlib.h.
25341         * m4/group-member.m4 (gl_PREREQ_GROUP_MEMBER): Do not require standard
25342         C headers.
25343         * m4/hard-locale.m4 (gl_HARD_LOCALE): Do not check for stdlib.h,
25344         string.h.
25345         * m4/hash.m4 (gl_HASH): Do not check for stdlib.h, malloc, free.
25346         * m4/human.m4 (gl_HUMAN): Do not check for stdlib.h, string.h, getenv.
25347         * m4/idcache.m4 (gl_IDCACHE): Do not check for standard C headers,
25348         or for string.h.
25349         * m4/long-options.m4 (gl_LONG_OPTIONS): Do not check for stdlib.h.
25350         * m4/makepath.m4 (gl_MAKEPATH): Do not check for string.h or standard
25351         C headers.
25352         * m4/md5.m4 (gl_MD5): Don't check for limits.h, standard C headers,
25353         memcpy.
25354         * m4/sha.m4 (gl_SHA): Don't check for standard Cheaders, memcpy.
25355         * m4/memchr.m4 (jm_PREREQ_MEMCHR): Don't check for limits.h, stdlib.h.
25356         * m4/memcmp.m4 (gl_PREREQ_MEMCMP): Don't check for string.h.
25357         * m4/memcoll.m4 (gl_MEMCOLL): Likewise.
25358         * m4/memrchr.c (gl_PREREQ_MEMRCHR): Don't check for limits.h.
25359         * m4/mkdir-slash.m4 (gl_PREREQ_MKDIR): Don't check for stdlib.h,
25360         string.h, free.
25361         * m4/mktime.m4 (gl_PREREQ_MKTIME): Don't check for standard C headers.
25362         * m4/modechange.m4 (gl_MODECHANGE): Don't check for standard C headers.
25363         * m4/mountlist.m4 (gl_PREREQ_MOUNTLIST_EXTRA): Don't check for standard
25364         C headers, or for string.h.
25365         * m4/obstack.m4 (gl_OBSTACK): Don't check for stddefe.h, string.h.
25366         (gl_PREREQ_OBSTACK): Don't check for stdlib.h.
25367         * m4/path-concat.m4 (gl_PATH_CONCAT): Don't check for standard C
25368         headers, memory.h, stdlib.h, string.h, strings.h.
25369         * m4/posixtm.m4 (gl_POSIXTM): Don't check for stdlib.h, string.h.
25370         * m4/posixver.m4 (gl_POSIXVER): Don't check for getenv.
25371         * m4/putenv.m4 (gl_PREREQ_PUTENV): Don't check for string.h, memcpy,
25372         strchr.
25373         * m4/readtokens.m4 (gl_READTOKENS): Don't check for standard C
25374         headers, memory.h, string.h.
25375         * m4/regex.m4 (jm_PREREQ_REGEX): Do not check for limits.h, string.h.
25376         * m4/rename.m4 (gl_PREREQ_RENAME): Do not check for stdlib.h, string.h,
25377         free.
25378         * m4/rpmatch.m4 (gl_PREREQ_RPMATCH): Don't check for standard C
25379         headers.
25380         * m4/same.m4 (gl_SAME): Don't check for stdlib.h, string.h, free.
25381         * m4/save-cwd.m4 (gl_SAVE_CWD): Don't check for standard C headers.
25382         * m4/savedir.m4 (gl_SAVEDIR): Don't check for standard C headers.
25383         * m4/strchrnul.m4 (gl_PREREQ_STRCHRNUL): Don't check for string.h.
25384         * m4/xgetcwd.m4 (gl_XGETCWD): Don't check for stdlib.h.
25385
25386 2003-09-09  Paul Eggert  <eggert@twinsun.com>
25387
25388         More K&R removal.
25389
25390         * lib/acosl.c (main): Use a prototype.
25391         * lib/asinl.c, cosl.c, expl.c, frexpl.c, ldexpl.c, sinl.c,
25392         tanl.c: Likewise.
25393
25394         * lib/getloadavg.c (getloadavg, main): Define via prototypes.
25395
25396         * lib/getopt.h (struct option.name): Assume C89, and use 'const'.
25397         (getopt, etopt_long, getopt_long_only, _getopt_internal)
25398         [defined __GNU_LIBRARY__]: Assume C89, so we can always declare
25399         with a prototype.
25400         * lib/getopt.c (const): Remove macro.
25401         Include <string.h> unconditionally.
25402         (my_index): Remove; all uses changed to strchr.
25403         (strlen): Remove decl.
25404         (exchange): Remove forward decl; no longer needed.
25405         (exchange, _getopt_initialize, _getopt_internal, getopt, main):
25406         Define with prototype.
25407         * lib/getopt1.c (const): Remove macro.
25408         (getopt_long, getopt_long_only, main): Define with prototype.
25409
25410         * lib/getugroups.c: Include <string.h> unconditionally.
25411
25412         * lib/getusershell.c: Include <stdlib.h> unconditionally.
25413         (getusershell, setusershell, endusershell, readname, main):
25414         Define with prototypes.
25415
25416         * lib/group-member.c: Include group-member.h first.
25417         Include <stdlib.h> unconditionally.
25418
25419         * lib/hard-locale.c: Include hard-locale.h first.
25420         Include <stdlib.h>, <string.h> unconditionally.
25421
25422         * lib/hash.c (free, malloc): Remove decls.
25423         Include <stdlib.h> unconditionally.
25424
25425         * lib/human.c: Include <stdlib.h>, <string.h> unconditionally.
25426         (getenv): Do not declare.
25427
25428         * lib/idcache.c: Include <string.h> unconditionally.
25429
25430         * lib/long-options.c: Include long-options.h first, to test interface.
25431         Include <stdlib.h> unconditionally.
25432
25433         * lib/makepath.c: Include makepath.h first, to test interface.
25434         Include <stdlib.h> and <string.h> unconditionally.
25435
25436         * lib/linebuffer.c: Include <stdlib.h>.
25437         (free): Remove decl.
25438
25439         * lib/malloc.c: Include <stdlib.h>, for malloc; don't bother with
25440         stddef.h. rpl_malloc returns void *, not char *.
25441         * lib/realloc.c (rpl_realloc): Likewise.  Also, define with a
25442         prototype.
25443
25444         * lib/md5.h: Include <limits.h> unconditionally.
25445         (UINT_MAX_32_BITS): Don't worry about non-__STDC__ case.
25446         (__P): Remove; all uses removed.
25447         * lib/md5.c: Include "md5.h" first.
25448         (md5_init_ctx, md5_read_ctx, md5_finish_ctx, md5_stream,
25449         md5_buffer, md5_process_bytes, md5_process_block):
25450         Define with prototypes.
25451         * lib/sha.h (__P): Remove all uses.  (It wasn't defined??)
25452         * lib/sha.c: Include "sha.h" first.
25453         Include <stdlib.h>, <string.h> unconditionally.
25454
25455         * lib/memchr.c (__ptr_t): Remove; all uses changed to void *.
25456         * lib/memcmp.c (__ptr_t): Likewise.
25457         * lib/memrchr.c (__ptr_t): Likewise.
25458         * lib/memchr.c, memcmp.c, memcoll.c, memrchr.c:
25459         Include <string.h> unconditionally.
25460         * lib/memchr.c, memrchr.c: Include <limits.h> unconditionally.
25461         * lib/memchr.c: Include <stdlib.h> unconditionally.
25462         * lib/memchr.c (LONG_MAX): Remove.
25463         * lib/memrchr.c (LONG_MAX): Likewise.
25464         * lib/memchr.c (__memchr): Define via a prototype.
25465         * lib/memrchr.c (__memrchr): Likewise.
25466         * lib/memcmp.c (__P): Remove, and remove all uses.
25467         (memcmp_bytes, memcmp_common_alignment, memcmp_not_common_alignment):
25468         Remove forward decls; no longer needed.
25469         * lib/memcpy.c, memmove.c, memset.c: Include <stddef.h>.
25470         Use types required by C89 in prototype.
25471
25472         * lib/mkdir.c: Include <stdlib.h>, <string.h> unconditionally.
25473         * lib/savedir.c: Likewise.
25474         * lib/mkdir.c (free): Remove decl.
25475         * lib/rmdir.c (rmdir): Define with a prototype.
25476         * lib/savedir.c: Include savedir.h first, to test interface.
25477
25478         * lib/mktime.c (STDC_HEADERS): Remove.
25479         Include <stdlib.h>, <string.h> unconditionally.
25480
25481         * lib/modechange.c: Include <stdlib.h> unconditionally.
25482         (malloc): Remove decl.
25483
25484         * lib/mountlist.c: Include <stdlib.h>, <string.h> unconditionally.
25485         (free): Remove decl.
25486
25487         * lib/obstack.h (PTR_INT_TYPE) [!defined __PTRDIFF_TYPE__]:
25488         Define to ptrdiff_t, without bothering to check HAVE_STDDEF_H.
25489         (This type really should be intptr_t, but that's a C99ism.)
25490         (_obstack_memcpy): Remove: all uses changed to memcpy.
25491         Include <string.h> unconditionally.
25492         (struct obstack): Assume __STDC__ for types of members
25493         chunkfun, freefun, extra_arg.
25494         (_obstack_newchunk, _obstack_free, _obstack_begin, _obstack_begin_1,
25495         _obstack_memory_used, obstack_alloc_failed_handler, obstack_init,
25496         obstack_begin, obstack_specify_allocation,
25497         obstack_specify_allocation_with_arg, obstack_chunkfun,
25498         obstack_freefun, obstack_free) [! (defined __STDC__ && __STDC__)]:
25499         Remove unprototyped decls and the macros that use them.
25500         * lib/obstack.c (POINTER): Remove.  All uses changed to void *.
25501         (obstack_alloc_failed_handler, CALL_CHUNKFUN, CALL_FREEFUN,
25502         _obstack_begin, _obstack_begin_1, _obstack_allocated_p)
25503         (defined __STDC__ && __STDC__)]:
25504         Remove nonprototyped code.
25505         Include <stdlib.h> unconditionally.
25506         (_obstack_begin, _obstack_begin_1, _obstack_newchunk,
25507         _obstack_allocated_p, _obstack_free, obstack_free,
25508         _obstack_memory_used, print_and_abort):
25509         Define using prototypes.
25510         (obstack_1grow, obstack_1grow_fast, obstack_alloc, obstack_base,
25511         obstack_blank, obstack_blank_fast, obstack_copy, obstack_copy0,
25512         obstack_finish, obstack_grow, obstack_grow0, obstack_make_room,
25513         obstack_next_free, obstack_object_size, obstack_room) [0]:
25514         Remove unused, unprototyped code.
25515
25516         * lib/path-concat.c: Include <stdlib.h>, <string.h> unconditionally.
25517
25518         * lib/physmem.c (physmem_total, physmem_available, main): Define
25519         with prototypes.
25520
25521         * lib/posixtm.c: Include <stdlib.h>, <string.h> unconditionally.
25522         (main): Define with a prototype.
25523
25524         * lib/posixver.c (getenv): Remove decl.
25525
25526         * lib/putenv.c (malloc): Returns void *, not char *.
25527         Include <string.h> unconditionally.
25528         (strchr, memcpy, NULL): Do not define.
25529
25530         * lib/readtokens.c: Include readtokens.h first, to test interface.
25531         Include <stdlib.h>, <string.h> unconditionally.
25532         (init_tokenbuffer): Define with a prototype.
25533
25534         * lib/regex.c (PARAMS): Remove.  All uses removed.
25535         All uses of _RE_ARGS removed, too.
25536         Include <stddef.h>, <stdlib.h>, <string.h>, <limits.h>
25537         unconditionally.
25538         (bzero): Assume memset exists.
25539         (memcmp, memcpy, NULL): Remove.
25540         (SIGN_EXTEND_CHAR): Remove; all uses replaced by casts to signed
25541         char, or assignments to local vars of type signed char.
25542         (init_syntax_once, PREFIX(extract_number_and_incr),
25543         PREFIX(print_partial_compiled_pattern),
25544         PREFIX(print_compiled_pattern), PREFIX(print_double_string),
25545         convert_mbs_to_wcs, print_fastmap, re_set_syntax,
25546         PREFIX(regex_grow_registers), PREFIX(regex_compile),
25547         PREFIX(store_op1), PREFIX(store_op2), PREFIX(insert_op1),
25548         PREFIX(insert_op2), PREFIX(at_begline_loc_p),
25549         PREFIX(at_endline_loc_p), group_in_compile_stack, insert_space,
25550         wcs_compile_range, byte_compile_range, truncate_wchar,
25551         PREFIX(re_compile_fastmap), re_compile_fastmap, re_set_registers,
25552         re_search, re_search_2, PREFIX(re_search_2), re_match, re_match_2,
25553         count_mbs_length, wcs_re_match_2_internal,
25554         byte_re_match_2_internal, PREFIX(group_match_null_string_p),
25555         PREFIX(alt_match_null_string_p),
25556         PREFIX(common_op_match_null_string_p), PREFIX(bcmp_translate),
25557         re_compile_pattern, re_comp, re_exec, regcomp, regexec, regerror,
25558         regfree, PREFIX(extract_number)): Define with prototype.  Remove
25559         now-unnecessary declaration, if any.
25560         (byte_compile_range, PREFIX(regex_compile), re_comp, re_exec,
25561         regcomp, regexec):
25562         Remove now-unnecessary casts among pointer types.
25563         * lib/regex.h (_RE_ARGS): Remove.  All uses removed.
25564
25565         * lib/rename.c: Include <stdlib.h>, <string.h> unconditionally.
25566         (free): Remove decl.
25567
25568         * lib/rpmatch.c: Include <stdlib.h> unconditionally.
25569
25570         * lib/same.c: Include <stdlib.h>, <string.h> unconditionally.
25571         (free): Remove decl.
25572
25573         * lib/save-cwd.c: Include <stdlib.h> unconditionally.
25574         * lib/xgetcwd.c: Likewise.
25575
25576         * lib/stat.c: Include <stdlib.h>, <string.h> unconditionally.
25577         (free): Remove decl.
25578
25579         * lib/strchrnul.c (strchrnul): Define with a prototype.
25580         Fix bug: c_in was not converted to char before searching.
25581
25582         The following changes are not K&R related:
25583
25584         * lib/group-member.h: Include <sys/types.h>, so that this file is
25585         self-contained.
25586         * lib/makepath.h: Likewise.
25587
25588         * lib/getusershell.c (readname, default_index, line_size, readname):
25589         Use size_t, not int, for sizes.
25590         (readname): If the size overflows, report an error instead of
25591         looping forever.
25592
25593 2003-09-09  Paul Eggert  <eggert@twinsun.com>
25594
25595         * config/srclist.txt: Do not get getopt.h, getopt1.c, or regex.h from
25596         libc.
25597
25598 2003-09-09  Paul Eggert  <eggert@twinsun.com>
25599
25600         * README: New section: portability guidelines.
25601
25602 2003-09-09  Derek Robert Price  <derek@ximbiot.com>
25603
25604         * m4/getndelim2.m4 (gl_PREREQ_GETNDELIM2): Assume stdlib.h per the
25605         C89 spec.
25606
25607 2003-09-09  Derek Robert Price  <derek@ximbiot.com>
25608
25609         * lib/getndelim2.c: Assume stdlib.h per the C89 spec.
25610
25611 2003-09-08  Paul Eggert  <eggert@twinsun.com>
25612
25613         Assume C89 or better; remove K&R cruft.
25614         A few of these changes were first proposed by Derek Robert Price
25615         in <http://mail.gnu.org/archive/html/bug-gnulib/2003-07/msg00105.html>.
25616
25617         * lib/addext.c: Include <string.h> unconditionally.
25618         * lib/backupfile.c: Include <string.h>, <stdlib.h> unconditionally.
25619         Don't declare getenv or malloc.
25620
25621         * lib/alloca.c: Include <string.h>, <stdlib.h> unconditionally.
25622         (POINTER_TYPE, pointer): Remove; all uses changed to void *.
25623         (NULL): Remove.
25624         (find_stack_direction, alloca): Use prototypes.
25625
25626         * lib/atexit.c (atexit): Define using a prototype.
25627
25628         * lib/basename.c, dirname.c, stripslash.c:
25629         Include <string.h> unconditionally.
25630
25631         * lib/bcopy.c: Include <stddef.h>.
25632         (bcopy): Define with prototype, using 'const' and 'void' and 'size_t'.
25633
25634         * lib/canon-host.c: Include <stdlib.h>, <string.h> unconditionally.
25635
25636         * lib/error.h (error, error_at_line, error_print_progname)
25637         [! (defined (__STDC__) && __STDC__)]: Remove decls.
25638         * lib/error.c: Include error.h first, to check interface.
25639         Include <stdarg.h>, <stdlib.h>, <string.h> unconditionally.
25640         (VA_START): Remove; all uses changeed to va_start.
25641         (exit, strerror): Remove decls.
25642         (error_print_progname): Prototype uncondionally.
25643         Don't include <errno.h>; no longer needed.
25644         (private_strerror): Remove.
25645         (error_tail): Always define.
25646         (error, error_at_line): Assume C89 or better; always use prototypes.
25647         * lib/fatal.c: Include "fatal.h" first, to test interface.
25648         Include <stdarg.h>, <stdlib.h>, <string.h> unconditionally.
25649         (VA_START): Remove; all uses changed to va_start.
25650         [! (HAVE_VPRINTF || HAVE_DOPRNT || _LIBC)]: Remove support for
25651         this case.
25652         (exit): Remove decl.
25653         (fatal): Prototype unconditionally.  Assume va_start works.
25654         Abort at end, to pacify gcc.
25655
25656         * lib/euidaccess.c (main): Define with a prototype.
25657
25658         * lib/exclude.c: Include <stdlib.h>, <string.h> unconditionally.
25659
25660         * lib/exitfail.c: Include <stdlib.h> unconditionally.
25661
25662         * lib/fnmatch_.h (__P): Remove.  All uses changed to assume
25663         prototypes.
25664         * lib/fnmatch.c: Include fnmatch.h first, to test interface.
25665         Include <string.h>, <stddef.h>, <stdlib.h> unconditionally.
25666         (getenv): Remove decl.
25667         (fnmatch): Define using a prototype.
25668         * lib/fnmatch_loop.c (FCT): Remove forward decl; no longer needed.
25669         (FCT): Define using a prototype.
25670
25671         * lib/getdate.y: Include <stdlib.h>, <string.h> unconditionally.
25672
25673         * lib/gethostname.c: Include <stddef.h>.
25674         (gethostname): Define with prototype.  Length is size_t, not int.
25675
25676 2003-09-08  Paul Eggert  <eggert@twinsun.com>
25677
25678         Assume C89 or better; remove K&R cruft.
25679         * m4/alloca.m4 (gl_PREREQ_ALLOCA): Don't check for stdlib.h, string.h.
25680         * m4/backupfile.m4 (gl_BACKUPFILE): Don't check for stdlib.h,
25681         string.h, getenv, malloc.
25682         * m4/dirname.m4 (gl_DIRNAME): Don't check for string.h or C standard
25683         headers.
25684         * m4/canon-host.m4 (gl_CANON_HOST): Don't check for string.h, stdlib.h.
25685         * m4/error.m4 (jm_PREREQ_ERROR): Do not require STDC headers, and
25686         do not check for strerror.
25687         * m4/exclude.m4: Do not check for stdlib.h, string.h, strings.h.
25688         * m4/exitfail.m4 (gl_EXITFAIL): Do not check for stdlib.h.
25689         * m4/fatal.m4 (gl_FATAL): Do not require STDC headers, and
25690         do not check for doprnt or vprintf.
25691         * m4/fnmatch.m4 (gl_PREREQ_FNMATCH_EXTRA): Remove.  All uses removed.
25692         * m4/getdate.m4 (gl_GETDATE): Don't check for stdlib.h or string.h.
25693
25694 2003-09-08  Paul Eggert  <eggert@twinsun.com>
25695
25696         * lib/getversion.c: Remove; was migrated to backupfile.c in 1997.
25697         getversion.c should have been removed then, but was accidentally
25698         preserved.
25699
25700         * lib/utime.c [!HAVE_UTIMES_NULL]: Include <sys/stat.h>, <fcntl.h>.
25701         (utime_null): Fix typo: 'st' was sometimes called 'sb'.
25702
25703 2003-09-08  Karl Berry  <karl@gnu.org>
25704
25705         * config/config.sub, config.guess, srclistvars.sh: update from savannah
25706                 config, forget about prep.
25707
25708         * config/depcomp, missing: update from automake.
25709
25710 2003-09-07  Paul Eggert  <eggert@twinsun.com>
25711
25712         * modules/time_r: Depend on 'restrict'.  Fix from Simon Josefsson in
25713         <http://mail.gnu.org/archive/html/bug-gnulib/2003-09/msg00028.html>.
25714
25715 2003-09-07  Paul Eggert  <eggert@twinsun.com>
25716
25717         * lib/time_r.c (gmtime_r, localtime_r): Fix silly typo: missing arg to
25718         copy_tm_result.  Bug reported by Simon Josefsson in
25719         <http://mail.gnu.org/archive/html/bug-gnulib/2003-09/msg00028.html>.
25720
25721 2003-09-06  Paul Eggert  <eggert@twinsun.com>
25722
25723         * m4/time_r.m4: New file.
25724         * m4/mktime.m4 (gl_PREREQ_MKTIME): Remove check for limits.h.
25725         * m4/timegm.m4 (gl_FUNC_TIMEGM): Assume that timegm is buggy if mktime
25726         is. Check for timegm declaration.
25727         (gl_PREREQ_TIMEGM): Require gl_FUNC_MKTIME.
25728         Do not check for gmtime_r.
25729         Replace mktime if __mktime_internal does not exist and if mktime
25730         hasn't been replaced already.
25731
25732 2003-09-06  Paul Eggert  <eggert@twinsun.com>
25733
25734         * lib/time_r.c, lib/time_r.h: New files.
25735
25736         * lib/mktime.c (my_mktime_localtime_r): Remove; all uses changed to
25737         __localtime_r.
25738         (__localtime_r) [!defined _LIBC]: New macro.  Include <time_r.h>.
25739         (__mktime_internal) [!defined _LIBC]: Now extern, not static.
25740
25741         * lib/strftime.c (my_strftime_gmtime_r): Remove; all uses changed to
25742         __gmtime_r.
25743         (my_strftime_localtime_r): Remove; all uses changed to __localtime_r.
25744         (__gtime_r, __localtime_r) [!HAVE_TM_GMTOFF]: New macros.
25745         Include <time_r.h>.
25746
25747         * lib/timegm.c: Switch to glibc implementation, with the following
25748         changes:
25749         [defined HAVE_CONFIG_H]: Include <config.h>.
25750         [!defined _LIBC]: Include "timegm.h" rather than <time.h>.
25751         (__mktime_internal) [!defined _LIBC]: New decl.
25752         (__gmtime_r) [!defined _LIBC]: New macro and function.
25753         (timegm): Use a prototype, since gnulib assumes C89.
25754         Do not bother declaring tmp to be const, as it's not really usefu.
25755         * lib/timegm.h: Hoist "#include <time.h>" out of #ifdef.
25756         (timegm): Declare only if HAVE_DECL_TIMEGM.
25757
25758 2003-09-06  Paul Eggert  <eggert@twinsun.com>
25759
25760         * MODULES.html.sh (func_all_modules): Add time_r.
25761         * modules/time_r: New file.
25762         * modules/mktime, modules/strftime, modules/timegm: Depend on time_r.
25763         * modules/timegm: Depend on mktime.  Change maintainer to "all, glibc".
25764
25765 2003-09-03  Paul Eggert  <eggert@twinsun.com>
25766
25767         * lib/human.c (human_readable): Fix bug that rounded 10501 to 10k.
25768         Bug reported by Lute Kamstra in
25769         <http://mail.gnu.org/archive/html/bug-gnulib/2003-09/msg00003.html>.
25770
25771         * lib/getdate.y (relative_time_table): Use tDAY_UNIT for "tomorrow",
25772         "yesterday", "today", and "now" rather than tMINUTE_UNIT.  Of
25773         course with correspondingly smaller numbers for tomorrow and
25774         yesterday.  From Tadayoshi Funaba.  Originally installed into
25775         sh-utils on 1999-08-07, but the patch got lost (I guess during the
25776         coreutils merge?).
25777
25778 2003-08-31  Simon Josefsson  <jas@extundo.com>
25779
25780         * modules/timegm: New file.
25781         * MODULES.html.sh (func_all_modules): Add timegm.
25782
25783 2003-08-31  Simon Josefsson  <jas@extundo.com>
25784
25785         * m4/timegm.m4: New file.
25786
25787 2003-08-31  Simon Josefsson  <jas@extundo.com>
25788
25789         * lib/timegm.h: New file.
25790         * lib/timegm.c: New file.  Based on
25791         wget-1.8.2/src/http.c:mktime_from_utc.
25792
25793 2003-08-31  Karl Berry  <karl@gnu.org>
25794
25795         * lib/argp.h: update from libc.
25796
25797 2003-08-28  Bruno Haible  <bruno@clisp.org>
25798
25799         * m4/fnmatch.m4 (_AC_LIBOBJ_FNMATCH): Remove AC_DEFINE of fnmatch here.
25800         This avoids havoc on compilers for which '#define fnmatch rpl_fnmatch'
25801         followed by '#define fnmatch fnmatch_posix' gives an error.
25802
25803 2003-08-28  Bruno Haible  <bruno@clisp.org>
25804
25805         * lib/binary-io.h: Undefine O_BINARY before defining it. This avoids a
25806         warning on QNX, which defines O_BINARY to 000000.
25807
25808 2003-08-27  Jim Meyering  <jim@meyering.net>
25809
25810         * m4/mkstemp.m4: Require that the system mkstemp be able to create
25811         70 temporary files, not just 30.  Tru64 V4.0F's mkstemp function
25812         would fail after 32.  Reported by Danny Levinson.  Details here:
25813         http://mail.gnu.org/archive/html/bug-coreutils/2003-08/msg00124.html
25814
25815 2003-08-24  Bruno Haible  <bruno@clisp.org>
25816
25817         * lib/binary-io.h: Include <stdio.h>, to avoid a compilation error when
25818         MSVC7 <stdio.h> is included later.
25819
25820 2003-08-22  Simon Josefsson  <jas@extundo.com>
25821
25822         * modules/strndup (Makefile.am): Add strndup.h to lib_SOURCES.
25823
25824 2003-08-20  Karl Berry  <karl@gnu.org>
25825
25826         * m4/lib-ld.m4: serial 1003 from gettext, no changes besides serial.
25827
25828 2003-08-20  Bruno Haible  <bruno@clisp.org>
25829
25830         * modules/progname: New file.
25831         * MODULES.html.sh (func_all_modules): Add progname.
25832
25833 2003-08-20  Bruno Haible  <bruno@clisp.org>
25834
25835         * lib/progname.h: New file, from GNU gettext.
25836         * lib/progname.c: New file, from GNU gettext.
25837         * lib/progreloc.c: New file, from GNU gettext.
25838
25839 2003-08-19  Jim Meyering  <jim@meyering.net>
25840
25841         * m4/lib-ld.m4: Revert yesterday's change, per Bruno's request here:
25842         http://mail.gnu.org/archive/html/bug-gnulib/2003-08/msg00155.html
25843
25844 2003-08-19  Bruno Haible  <bruno@clisp.org>
25845
25846         * m4/xalloc.m4 (gl_PREREQ_XSTRDUP): Don't check for <string.h> any
25847         more.
25848
25849 2003-08-19  Bruno Haible  <bruno@clisp.org>
25850
25851         * lib/xstrdup.c: Assume <string.h> exists.
25852
25853 2003-08-18  Paul Eggert  <eggert@twinsun.com>
25854
25855         * modules/stdbool: Add BUILT_SOURCES.  Prefer $@ to target name
25856         in makefile rules.
25857
25858 2003-08-18  Jim Meyering  <jim@meyering.net>
25859
25860         * m4/getloadavg.m4: Use [\t ], not [ \t] (where \t is a literal TAB).
25861         * m4/lib-ld.m4: Likewise.
25862
25863 2003-08-18  Jim Meyering  <jim@meyering.net>
25864
25865         * lib/setenv.h: Indent nested cpp directive.
25866         * lib/vasnprintf.c: Remove trailing blanks.
25867
25868 2003-08-17  Simon Josefsson  <jas@extundo.com>
25869
25870         * modules/xstrndup: New file.
25871         * MODULES.html.sh (func_all_modules): Add xstrndup.
25872
25873 2003-08-17  Simon Josefsson  <jas@extundo.com>
25874
25875         * modules/argp: Fix autoconf macro name. Add more dependencies.
25876
25877 2003-08-17  Simon Josefsson  <jas@extundo.com>
25878
25879         * m4/xstrndup.m4: New file.
25880
25881 2003-08-17  Simon Josefsson  <jas@extundo.com>
25882
25883         * m4/argp.m4: New file.
25884
25885 2003-08-17  Simon Josefsson  <jas@extundo.com>
25886             Bruno Haible  <bruno@clisp.org>
25887
25888         * lib/xstrndup.h: New file.
25889         * lib/xstrndup.c: New file.
25890
25891 2003-08-17  Bruno Haible  <bruno@clisp.org>
25892
25893         * modules/strndup (Files, Include): Add lib/strndup.h.
25894
25895 2003-08-17  Bruno Haible  <bruno@clisp.org>
25896
25897         * modules/euidaccess (Files): Add lib/euidaccess.h.
25898
25899 2003-08-17  Bruno Haible  <bruno@clisp.org>
25900
25901         * lib/strndup.h: New file.
25902
25903 2003-08-17  Bruno Haible  <bruno@clisp.org>
25904
25905         * gnulib-tool (func_create_testdir): Handle gl_USE_SYSTEM_EXTENSIONS
25906         like AC_GNU_SOURCE.
25907         * modules/extensions (configure.ac): Comment out the invocation of
25908         gl_USE_SYSTEM_EXTENSIONS.
25909
25910 2003-08-16  Paul Eggert  <eggert@twinsun.com>
25911
25912         Merges from coreutils, etc.
25913         * m4/rpmatch.m4 (gl_PREREQ_RPMATCH): Insert ':' to prevent a syntax
25914         error in gl_FUNC_MATCH.  This fixes a bug I introduced on 2003-05-28.
25915         * m4/readlink.m4 (gl_PREREQ_READLINK): Renamed from gl_PREREQ_READLINE,
25916         fixing a typo.
25917         * m4/host-os.m4 (UTILS_HOST_OS): Add GNU/NetBSD, GNU/FreeBSD.
25918         * m4/hash.m4 (gl_HASH): Use AM_STDBOOL_H, not AC_HEADER_STDBOOL.
25919
25920 2003-08-16  Paul Eggert  <eggert@twinsun.com>
25921
25922         Document merge from coreutils.
25923         * modules/alloca: Append $(ALLOCA_H) to BUILT_SOURCES.
25924         * modules/fnmatch: Append $(FNMATCH_H) to BUILT_SOURCES.
25925         * modules/utime: Add m4/utimes-null.m4.
25926
25927 2003-08-16  Paul Eggert  <eggert@twinsun.com>
25928
25929         * lib/regex.h, strdup.c, strtoll.c, strtoul.c: Do not normalize white
25930         space, undoing this 2003-08-12 change:
25931         <http://mail.gnu.org/archive/html/bug-gnulib/2003-08/msg00080.html>
25932
25933 2003-08-16  Paul Eggert  <eggert@twinsun.com>
25934
25935         * config/srclist.txt: Get regex.h, strdup.c, strtoll.c,
25936         strtoul.c from libc, undoing this 2003-08-12 change:
25937         <http://mail.gnu.org/archive/html/bug-gnulib/2003-08/msg00080.html>
25938
25939 2003-08-16  Jim Meyering  <jim@meyering.net>
25940
25941         Merges from coreutils.
25942         * m4/readdir.m4 (GL_FUNC_READDIR): Change name to have GL_ (not jm_)
25943         prefix.  Adjust cache variables similarly.  Create 500 rather than
25944         just 300 files, to exercise bug on Darwin6.5, too.
25945         * m4/perl.m4 (jm_PERL): Use $am_missing_run, not undefined
25946         $missing_dir.
25947         * m4/jm-winsz1.m4: Require AC_SYS_POSIX_TERMIOS, not
25948         AM_SYS_POSIX_TERMIOS.
25949         Reported by mkc@mathdogs.com.
25950         Also change use of $am_cv_sys_posix_termios
25951         to $ac_cv_sys_posix_termios.  Reported by Andreas Schwab.
25952         * m4/getgroups.m4 (jm_FUNC_GETGROUPS): Rewrite to use AC_FUNC_GETGROUPS
25953         and (if needed) to call AC_LIBOBJ and to set GETGROUPS_LIB.
25954         * m4/fsusage.m4 [__GLIBC__]: GNU libc's statvfs stats each mount point
25955         in /proc/mounts until it finds one with matching device number.  This
25956         is unnecessary when the FILE argument *is* a mount point.  No stat call
25957         is necessary in that case.  So, disable the statvfs-testing code on
25958         systems with GNU libc.  Reported by Andrei Gaponenko via Tim Waugh
25959         as RedHat bug# 84846.
25960         * m4/c-stack.m4 (AC_SYS_XSI_STACK_OVERFLOW_HEURISTIC): Limit stack size
25961         to 1MB, so as not to render systems with no stack size limit (e.g.,
25962         linux-2.2.x) unusable.  Suggestion and code from Bruno Haible.
25963         Include <unistd.h>.  On some systems,
25964         it is required for the definition of _SC_PAGESIZE.
25965
25966 2003-08-16  Jim Meyering  <jim@meyering.net>
25967
25968         Merge from coreutils.
25969         * lib/xstrtoimax.c: #else #if -> #elif.
25970         * lib/xstrtoumax.c: Likewise.
25971
25972 2003-08-16  Jim Meyering  <jim@meyering.net>
25973
25974         * m4/utimes.m4 (gl_FUNC_UTIMES): New file.
25975         * m4/utimes.m4: Removed.
25976         * m4/utimes-null.m4: Renamed from utimes.m4.
25977
25978         * m4/c-stack.m4 (AC_SYS_XSI_STACK_OVERFLOW_HEURISTIC): Limit stack size
25979         to 1MB, so as not to render systems with no stack size limit (e.g.,
25980         linux-2.2.x) unusable.  Suggestion and code from Bruno Haible.
25981         Include <unistd.h>.  On some systems,
25982         it is required for the definition of _SC_PAGESIZE.
25983
25984 2003-08-16  Jim Meyering  <jim@meyering.net>
25985         and Paul Eggert  <eggert@cs.ucla.edu>
25986
25987         Merges from coreutils, etc.
25988
25989         * m4/jm-macros.m4 (AC_LANG_SOURCE(C)): New macro, undefine, then define
25990         using the latest version from cvs.  This avoids problems with #line
25991         directives using a vendor (Sun) compiler.
25992         (jm_MACROS): Bump prerequisite from 2.52g to 2.57.
25993         Don't set GETGROUPS_LIB here; now it's
25994         done via getgroups.m4's wrapper function.
25995         AC_SUBST OPTIONAL_BIN_PROGS, OPTIONAL_BIN_ZCRIPTS, and MAN here,
25996         rather than just in sh-util/configure.in, so that the
25997         now-shared-by-fileutils-and-textutils lib/Makefile.am are all the
25998         same.
25999         Use AC_CONFIG_LIBOBJ_DIR(lib) to tell the new
26000         AC_FUNC_GETLOADAVG where to find getloadavg.c.
26001         Require AC_FUNC_FTW, gt_INTTYPES_PRI, gl_CLOCK_TIME,
26002         UTILS_SYS_OPEN_MAX, GL_FUNC_GETCWD_PATH_MAX, GL_FUNC_READDIR,
26003         gl_FSUSAGE, gl_MOUNTLIST, AC_FUNC_CANONICALIZE_FILE_NAME.
26004         Remove code that is now done by the newly-required macros.
26005         Append $(EXEEXT) to DF_PROG.
26006         AC_LIBOBJ fchdir-stub if fchdir doesn't exist; similarly for fchown.
26007         Do not invoke or require the following here,
26008         since prereq.m4 or some gnulib .m4 now does this for us:
26009         gl_REGEX, UTILS_FUNC_MKDIR_TRAILING_SLASH, jm_BISON, gl_FUNC_MKTIME,
26010         jm_FUNC_LSTAT, jm_FUNC_STAT, jm_FUNC_REALLOC, jm_FUNC_MALLOC,
26011         jm_FUNC_NANOSLEEP, jm_FUNC_READDIR, jm_FUNC_MEMCMP,
26012         jm_FUNC_GLIBC_UNLOCKED_IO, AC_FUNC_FNMATCH_GNU, jm_FUNC_PUTENV,
26013         jm_AC_PREREQ_XSTRTOUMAX, jm_AC_PREREQ_XSTRTOIMAX,
26014         AC_FUNC_ERROR_AT_LINE, jm_FUNC_GNU_STRFTIME, AC_FUNC_VPRINTF,
26015         vb_FUNC_RENAME, UTILS_FUNC_MKSTEP, jm_FUNC_UTIME, AM_FUNC_GETLINE,
26016         AC_FUNC_OBSTACK.
26017         Do not replace the following functions, as this is now the job
26018         of some gnulib .m4: strcasecmp, strncasecmp, dup2, gethostname,
26019         getusershell, sig2str, strcspn, stpcpy, strstr, strtol, strtoul
26020         strpbrk, euidaccess, memcmp, rmdir, rpmatch, strndup, strverscmp,
26021         atexit getpass, strdup, getpagesize.
26022         Replace 'raise'.
26023         Do not check for the following functions, as this is now the job
26024         of some gnulib .m4: bcopy, canonicalize_file_name, fchdir, ftime,
26025         getcwd, getmntinfo, resolvepath.  But check for sysctl, setreuid,
26026         setregid.
26027         (jm_CHECK_ALL_HEADERS): Do not check for fenv.h.
26028         Check for sys/sysctl.h.
26029         (jm_CHECK_ALL_TYPES): Do not require AC_STRUCT_TM, AC_STRUCT_TIMEZONE,
26030         jm_CHECK_TYPE_STRUCT_TIMESPEC.  Invoke gt_TYPE_SSIZE_T instead
26031         of checking for ssize_t ourselves.
26032
26033         * m4/prereq.m4 (jm_PREREQ): Don't invoke macros; AC_REQUIRE them.
26034         Require every macro that gnulib/modules/* suggests for us.
26035         (jm_PREREQ_ADDEXT): New macro.
26036         (jm_PREREQ_STAT): Check for 'struct statfs' on Ultrix 4.4.
26037         Require jm_AC_TYPE_LONG_LONG instead of invoking it.
26038
26039         * m4/physmem.m4 (gl_SYS__SYSTEM_CONFIGURATION): New macro.
26040         (gl_PHYSMEM): Use it.
26041         Also check for `table' function.
26042         Check for new headers and functions.
26043         Add check for sys/sysmp.h.
26044         With suggestions from Kaveh Ghazi.
26045         Ignore headers that are present but cannot be compiled.  This
26046         avoids spurious warnings on Solaris 9 sparc with Forte Developer 7
26047         C 5.4.
26048
26049 2003-08-15  Paul Eggert  <eggert@twinsun.com>
26050
26051         Document merge from coreutils.
26052         * modules/userspec: Depend on posixver.
26053         * modules/strftime: Depend on tzset.
26054
26055 2003-08-15  Paul Eggert  <eggert@twinsun.com>
26056
26057         * lib/config.charset, ref-add.sin, ref-del.sin: Use three spaces,
26058         rather than tab, after '#' in shell-script copyright notices.
26059         Suggested by Bruno Haible.
26060
26061 2003-08-15  Paul Eggert  <eggert@twinsun.com>
26062
26063         * config/srclist-update: Use three spaces, rather than tab, after '#'
26064         in shell-script copyright notices.  Suggested by Bruno Haible.
26065         Remove unnecessary parenthesization in regular expression.
26066
26067 2003-08-15  Jim Meyering  <jim@meyering.net>
26068
26069         Merge from coreutils.
26070         * lib/xgethostname.c: Include <stdlib.h>.
26071         (xghostname): Don't exit for anything other than memory-related
26072         failure; just return NULL.
26073         * lib/userspec.c: Include "posixver.h".
26074         (parse_user_spec): Accept `.' as a separator only
26075         in pre-POSIX-200112 mode.
26076         * lib/strtoimax.c: Use #elif rather than #else #if.
26077         * lib/strftime.c (my_strftime) [!_LIBC && HAVE_TZNAME && HAVE_TZSET]:
26078         Remove function, now that we can rely on a working tzset function.
26079         [!_LIBC]: Ensure that the required autoconf test has been run.
26080         [!defined _NL_CURRENT && HAVE_STRFTIME]:
26081         Use underlying_strftime for %r.
26082         * lib/sha.c: Merge in some clean-up and optimization changes from
26083         glibc.
26084         * lib/sha.c (sha_stream) [BLOCKSIZE]: Move definition to top of file.
26085         Ensure that it is a multiple of 64.
26086         Rearrange loop exit tests so as to avoid performing an
26087         additional fread after encountering an error or EOF.
26088         * lib/realloc.c: Update copyright date.
26089
26090 2003-08-15  Jim Meyering  <jim@meyering.net>
26091         and Paul Eggert  <eggert@twinsun.com>
26092
26093         Merge from coreutils.
26094         * lib/readutmp.h (HAVE_UTMPX_H): Undef if struct utmp has the ut_exit
26095         member but strut utmpx does not.  Needed for AIX 4.3.3.
26096         (UT_EXIT_E_TERMINATION, UT_EXIT_E_EXIT): Define.
26097
26098 2003-08-15  Jim Meyering  <jim@meyering.net>
26099         and Paul Eggert  <eggert@cs.ucla.edu>
26100
26101         Merges from coreutils, etc.
26102         * m4/strftime.m4 (_jm_STRFTIME_PREREQS):
26103         Require gl_FUNC_TZSET_CLOBBER.
26104         * m4/readutmp.m4 (gl_READUTMP): Check for ut_exit.ut_exit,
26105         ut_exit.e_exit, ut_exit.ut_termination, and ut_exit.e_termination
26106         members.
26107
26108 2003-08-14  Paul Eggert  <eggert@twinsun.com>
26109
26110         Help the merge from coreutils.
26111         * m4/gettimeofday.m4 (gl_GETTIMEOFDAY_REPLACE_LOCALTIME): New macro.
26112         (AC_FUNC_GETTIMEOFDAY_CLOBBER): Use it.
26113         * m4/tzset.m4: Use it too.
26114
26115 2003-08-14  Paul Eggert  <eggert@twinsun.com>
26116
26117         * modules/tzset: New file.
26118
26119 2003-08-14  Jim Meyering  <jim@meyering.net>
26120
26121         Merges from coreutils.
26122         * modules/fnmatch: Use the `$(FNMATCH_H)' notation for AC_REPLACED
26123         variable names, rather than @FNMATCH_H@.
26124         * modules/alloca: Likewise for $(ALLOCA_H).
26125
26126         * modules/fnmatch (fnmatch.h): Use `$@' in the commands, in place of
26127         the three copies of the literal target, `fnmatch.h'.
26128         * modules/alloca (alloca.h): Likewise.
26129
26130 2003-08-14  Jim Meyering  <jim@meyering.net>
26131
26132         Merge from coreutils.
26133         * m4/tzset.m4: New file.
26134         * m4/ls-mntd-fs.m4 (jm_LIST_MOUNTED_FILESYSTEMS): Move the
26135         MOUNTED_VMOUNT test to precede the MOUNTED_GETMNTENT1 tests, since
26136         otherwise, AIX 5.1 systems would end up using the latter.
26137         MOUNTED_GETMNTENT1 support is inadequate on such systems: 1) detecting
26138         whether a file system is remote doesn't work  2) the MOUNTED_VMOUNT
26139         code reports the HOSTNAME:/MOUNT_POINT, while the MOUNTED_GETMNTENT1
26140         code reports merely /MOUNT_POINT.  Reported by Mike Jetzer.
26141
26142 2003-08-14  Jim Meyering  <jim@meyering.net>
26143
26144         Merge from coreutils.
26145         * lib/obstack.h: Whitespace changes.
26146         * lib/mountlist.c: Remove anachronistic casts of xmalloc, xrealloc,
26147         and xcalloc return values.
26148         (read_filesystem_list) [MOUNTED_GETFSSTAT]:
26149         Use MNT_NOWAIT, rather than MNT_WAIT.  Otherwise, `df DIR' could
26150         hang on OSF/1 5.1 for DIR on both local and remote file systems.
26151         Reported by (and fix confirmed by) Nelson H. F. Beebe.
26152         (read_filesystem_list) [MOUNTED_VMOUNT]: Detect any
26153         error from mntctl.
26154         Use mntctl's return value to drive the entry-processing loop, since
26155         we can't rely on the value of the vmt_length member in the last
26156         entry.  On some systems doing so could result in exhausting
26157         virtual memory.  Based in part on a patch from Mike Jetzer.
26158
26159 2003-08-14  Jim Meyering  <jim@meyering.net>
26160         and Paul Eggert  <eggert@twinsun.com>
26161
26162         Merges from coreutils, plus other fixes.
26163         * lib/physmem.c: Merge in portability changes from gcc/libiberty
26164         to support AIX, IRIX, Tru64, and Windows.  See the ChangeLog there
26165         for credits and details.  Thanks to Kaveh Ghazi for helping
26166         to keep these files in sync.
26167         (ARRAY_SIZE): Define it.
26168         (physmem_total, physmem_available): Add comments. From Kaveh Ghazi.
26169         * lib/memcasecmp.c: Remove unnecessary parentheses after 'defined'.
26170         (memcasecmp): Don't assume size_t fits in unsigned int.
26171         Remove casts and duplicate code.
26172         * lib/md5.c: Include <string.h> and <stdlib.h> unconditionally.
26173         (memcpy): Remove definition.
26174         Merge in some clean-up and optimization changes from glibc.
26175         [BLOCKSIZE]: Move definition to top of file.
26176         Ensure that it is a multiple of 64.
26177         Rearrange loop exit tests so as to avoid performing an
26178         additional fread after encountering an error or EOF.
26179         * lib/md5.h (md5_uintptr): Define.
26180         * lib/makepath.c (CLEANUP_CWD): Report an error if we failed to
26181         return to the initial working directory.  Preserve errno
26182         for caller.
26183         * lib/idcache.c: Include "xalloc.h".
26184         (xmalloc, xrealloc): Remove decls.
26185         (getuser): Remove casts no longer required in C89.
26186         * lib/human.c: Include stdio.h, for sprintf.
26187         * lib/group-member.c: Include "xalloc.h".
26188         (xmalloc, xrealloc): Remove decls.
26189         (get_group_info): Remove casts no longer required in C89.
26190         * lib/getusershell.c (readname): Remove casts no longer required in
26191         C89.
26192         * lib/gettimeofday.c (rpl_gmtime, rpl_tzset): New functions.
26193         * lib/getline.c: Whitespace fix, from coreutils.
26194
26195 2003-08-13  Paul Eggert  <eggert@twinsun.com>
26196
26197         * m4/exclude.m4 (gl_EXCLUDE): Require AC_C_INLINE, AC_HEADER_STDC.
26198         Check for isascii.
26199
26200         * m4/gettext.m4, iconv.m4, intdiv0.m4, inttypes-pri.m4, lib-link.m4,
26201         lib-prefix.m4, longdouble.m4, po.m4, progtest.m4, signed.m4:
26202         Undo previous (whitespace-only) change.
26203
26204 2003-08-13  Paul Eggert  <eggert@twinsun.com>
26205
26206         * lib/exclude.c: Include <ctype.h>
26207         (IN_CTYPE_DOMAIN): New macro.
26208         (is_space): New fn.
26209         (add_exclude_file): If LINE_END is a space, ignore trailing spaces
26210         and empty lines.
26211
26212         * lib/argp-help.c, argp-parse.c, config.charset, getopt.h:
26213         Undo previous (whitespace-only) change.
26214
26215 2003-08-13  Paul Eggert  <eggert@twinsun.com>
26216
26217         * config/srclist-update: Change update back to the old behavior,
26218         leaving whitespace alone.  Use one 'sed' command rather than a
26219         pipeline.
26220         (fixlicense): Now a variable, not a function.
26221         (remove_trailing_blanks): Remove.
26222         (fixfile): Don't invoke unexpand or cat, or remove trailing blanks.
26223         * config/config.guess, config.sub, install-sh, missing, texinfo.tex:
26224         Undo previous (whitespace-only) change.
26225
26226 2003-08-12  Paul Eggert  <eggert@twinsun.com>
26227
26228         Merge from coreutils.
26229         * modules/euidaccess: Add lib_SOURCES, include for new
26230         file euidaccess.h
26231
26232 2003-08-12  Paul Eggert  <eggert@twinsun.com>
26233
26234         * m4/gettext.m4, iconv.m4, intdiv0.m4, inttypes-pri.m4, lib-link.m4,
26235         lib-prefix.m4, longdouble.m4, po.m4, progtest.m4, signed.m4:
26236         Normalize leading white space and remove trailing white space.
26237
26238         Merge from coreutils
26239         * m4/euidaccess.m4 (gl_FUNC_EUIDACCESS): Check for euidaccess decl.
26240
26241         * m4/lib-ld.m4, lib-link.m4, lib-prefix.m4: Regenerate from gettext
26242         0.12.1.  These files are now being upgraded automatically by
26243         ../config/srclist-update.
26244
26245 2003-08-12  Paul Eggert  <eggert@twinsun.com>
26246
26247         * lib/argp-help.c, argp-parse.c, config.charset, getopt.h:
26248         Normalize leading white space and remove trailing white space.
26249         * lib/ref-add.sin, ref-del.sin: Use '#' before empty line in copyright
26250         notice, as per ../config/srclist-update.
26251
26252         Merge from coreutils.
26253         * lib/euidaccess.h: New file.
26254         * lib/euidaccess.c: Include it.
26255         * lib/.cppi-disable: Add printf-args.h, printf-parse.h, stdbool_.h,
26256         vasnprintf.h, vasprintf.h.  Remove strdup.c, gettext.h.
26257         * lib/regex.h, strdup.c, strtoll.c, strtoul.c: Normalize white space.
26258
26259 2003-08-12  Paul Eggert  <eggert@twinsun.com>
26260
26261         * config/srclist-update: Add copyright notice.
26262         (remove_id_lines, remove_trailing_blanks): New constants.
26263         (fixfile): Use them to normalize spacing a bit in copied files.
26264         * config/config.guess, config.sub, install-sh, missing, texinfo.tex:
26265         Normalize leading white space and remove trailing white space.
26266
26267         * config/texinfo.tex: Sync with texinfo.
26268
26269         * config/srclist.txt: Don't get regex.h, strdup.c, strtoll.c,
26270         strtoul.c from libc, to merge coreutils whitespace changes.
26271
26272         * config/srclist.txt: Get the following m4 files from gettext:
26273         codeset.m4, gettext.m4, glibc21.m4, iconv.m4, intdiv0.m4,
26274         inttypes-pri.m4, lcmessage.m4, lib-ld.m4, lib-link.m4, lib-prefix.m4,
26275         longdouble.m4, nls.m4, po.m4, progtest.m4, signed.m4, wchar_t.m4,
26276         wint_t.m4.
26277
26278 2003-08-12  Karl Berry  <karl@gnu.org>
26279
26280         * config/srclist.txt: can't sync vasnprintf.c any more, changes have
26281         been made.
26282
26283 2003-08-11  Paul Eggert  <eggert@twinsun.com>
26284
26285         * modules/gnu-source, m4/gnu-source.m4:
26286         Remove; we're assuming Autoconf 2.54 or later now.
26287         Suggested by Bruno Haible.
26288         * MODULES.html.sh (func_all_modules): Remove gnu-source.
26289
26290 2003-08-11  Bruno Haible  <bruno@clisp.org>
26291
26292         * m4/vasnprintf.m4 (gl_PREREQ_VASNPRINTF): Also check for wcslen.
26293
26294 2003-08-11  Bruno Haible  <bruno@clisp.org>
26295
26296         * lib/vasnprintf.c (local_wcslen): New function, for Solaris 2.5.1.
26297         (vasnprintf): Use it instead of wcslen.
26298
26299 2003-08-11  Bruno Haible  <bruno@clisp.org>
26300
26301         * lib/stdbool_.h (_Bool): Undo last change; instead use a negative enum
26302         value to ensure that _Bool promotes to int. Use #define for _Bool when
26303         using the Solaris C compiler. Adds comments suggested by Paul Eggert.
26304
26305 2003-08-10  Karl Berry  <karl@gnu.org>
26306
26307         * lib/regex.h: update from libc (whitespace fix).
26308
26309 2003-08-09  Paul Eggert  <eggert@twinsun.com>
26310
26311         Merge some files from coreutils.  These changes were
26312         originally made by Jim Meyering.
26313         * lib/acl.c: Include <sys/types.h> before <sys/stat.h>;
26314         many older Unixes require this.
26315         * lib/alloca.c (alloca): Remove cast to argument of free;
26316         no longer needed in C89.
26317         * lib/alloca_.h, regex.h: Fix white space to match
26318         what GNU indent does.
26319
26320 2003-08-09  Paul Eggert  <eggert@twinsun.com>
26321
26322         * m4/regex.m4 (jm_INCLUDED_REGEX): Change "\201" to "\371";
26323         apparently Emacs's Unicode mode got confused before my 2003-08-05
26324         checkin.
26325
26326 2003-08-08  Paul Eggert  <eggert@twinsun.com>
26327
26328         * m4/extensions.m4: New file.
26329         * m4/timespec.m4 (jm_CHECK_TYPE_STRUCT_TIMESPEC):
26330         Require gl_USE_SYSTEM_EXTENSIONS.
26331         * m4/unlocked-io.m4 (jm_FUNC_GLIBC_UNLOCKED_IO):
26332         Require gl_USE_SYSTEM_EXTENSIONS rather than AC_GNU_SOURCE.
26333
26334 2003-08-08  Paul Eggert  <eggert@twinsun.com>
26335
26336         * MODULES.html.sh (func_all_modules): Add extensions, gnu-source.
26337         * modules/extensions, modules/gnu-source: New files.
26338         * modules/timespec, modules/unlocked-io: Depend on extensions.
26339
26340 2003-08-07  Paul Eggert  <eggert@twinsun.com>
26341
26342         * modules/restrict: New file.
26343         * MODULES.html.sh (func_all_modules): Add restrict.
26344         * modules/regex: Depend on restrict.
26345
26346 2003-08-07  Paul Eggert  <eggert@twinsun.com>
26347
26348         * m4/restrict.m4: New file.
26349         * m4/regex.m4 (jm_PREREQ_REGEX): Add gl_C_RESTRICT.
26350
26351 2003-08-07  Bruno Haible  <bruno@clisp.org>
26352
26353         * modules/getndelim2 (Makefile.am): Add the files to EXTRA_DIST, not
26354         lib_SOURCES, because getndelim2.m4 now uses AC_LIBOBJ(getndelim2).
26355
26356 2003-08-07  Bruno Haible  <bruno@clisp.org>
26357
26358         * m4/getndelim2.m4 (gl_GETNDELIM2): Use AC_LIBOBJ(getndelim2). This
26359         makes the module 'getndelim2' compatible with the module 'getline'.
26360
26361 2003-08-05  Paul Eggert  <eggert@twinsun.com>
26362
26363         * m4/regex.m4 (jm_INCLUDED_REGEX): Replace a single non-ASCII
26364         byte with "\201" to avoid glitches when editing that source file
26365         with multi-gnome-terminal.
26366
26367 2003-08-05  Paul Eggert  <eggert@twinsun.com>
26368
26369         * lib/bumpalloc.h: Remove.
26370
26371 2003-08-05  Paul Eggert  <eggert@twinsun.com>
26372
26373         * MODULES.html.sh (func_all_modules): Remove bumpalloc.
26374         * modules/bumpalloc: Remove.
26375
26376 2003-08-04  Paul Eggert  <eggert@twinsun.com>
26377
26378         * lib/getloadavg.c: Change copyright notice and spacing to conform to
26379         GNU coding style.
26380
26381         Merge from coreutils.
26382         * lib/error.c [!USE_IN_LIBIO]: Omit this case; assume USE_IN_LIBIO is
26383         1. From glibc.
26384         * lib/getdate.y (date): Also accept dates like May-23-2003; suggestion
26385         from Karl Berry, implemented by Jim Meyering.
26386         * lib/getgroups.c: Include "xalloc.h" instead of declaring xalloc fns;
26387         from Dmitry V. Levin.
26388         Remove anachronistic cast of xrealloc.
26389         * lib/fnmatch_.h (__const): Remove.  Use 'const'.
26390         * lib/fnmatch_loop.c (NEW_PATTERN): Cast alloca return value to proper
26391         type. Otherwise, it wouldn't compile with at least /bin/cc on
26392         ymp-cray-unicos9.0.2.X.
26393         Combine two mostly-identical uses of alloca into one.
26394         Thanks to the Cray-Cyber project for access to a Cray Y-MP.
26395
26396 2003-08-04  Dave Love  <d.love@dl.ac.uk>
26397
26398         [From Emacs.]
26399
26400         * lib/getloadavg.c: Check `__unix' as well as `unix'.  Use #ifdef, not
26401         #if.  Check HAVE_LIBKSTAT as well as LOAD_AVE_TYPE.  Check
26402         F_SETFD, not FD_SETFD.  Use HAVE_STRUCT_NLIST_N_UN_N_NAME, not
26403         obsolete NLIST_NAME_UNION.
26404         [__GNU__]: Undef BSD and FSCALE.
26405         [!NLIST_STRUCT]: Remove conditional definition of NLIST_STRUCT.
26406
26407 2003-08-03  Paul Eggert  <eggert@twinsun.com>
26408
26409         * lib/stdbool_.h (_Bool): Make it signed char, instead of
26410         an enum type, so that it's guaranteed to promote to int.  See:
26411         <http://mail.gnu.org/archive/html/bug-gnulib/2003-07/msg00124.html>
26412
26413 2003-08-03  Karl Berry  <karl@gnu.org>
26414
26415         * config/depcomp: update from automake.
26416
26417 2003-07-31  Paul Eggert  <eggert@twinsun.com>
26418
26419         * lib/strerror.c: Include config.h, limits.h.  Declare sprintf.
26420         (strerror): Don't assume that a printable int fits in 14 bytes.
26421
26422 2003-07-31  Bruno Haible  <bruno@clisp.org>
26423
26424         * modules/getpass-gnu: New file.
26425         * MODULES.html.sh (func_all_modules): Add getpass-gnu.
26426
26427 2003-07-31  Bruno Haible  <bruno@clisp.org>
26428
26429         * m4/getpass.m4 (gl_FUNC_GETPASS_GNU): New macro.
26430
26431 2003-07-24  Karl Berry  <karl@gnu.org>
26432
26433         * config/missing: update from automake.
26434
26435 2003-07-24  Derek Robert Price  <derek@ximbiot.com>
26436             Bruno Haible  <bruno@clisp.org>
26437
26438         * lib/getline.h (getline, getdelim): Change return type to ssize_t.
26439         * lib/getline.c (getline, getdelim): Likewise.
26440         Remove _GNU_SOURCE define; now it's defined in config.h through
26441         m4/getline.m4.
26442
26443 2003-07-23  Karl Berry  <karl@gnu.org>
26444
26445         * config/config.sub: update from prep.
26446
26447 2003-07-22  Paul Eggert  <eggert@twinsun.com>
26448
26449         * modules/xalloc (Depends-on): Add exitfail.
26450         * modules/xmemcoll: Likewise.
26451
26452 2003-07-22  Paul Eggert  <eggert@twinsun.com>
26453
26454         * lib/xalloc.h (XCALLOC, XREALLOC, CCLONE): Fix under- and
26455         over-parenthesization in macros.
26456
26457         Sync with coreutils.
26458
26459         * lib/xalloc.h (XMALLOC, XCALLOC, XREALLOC): Remove casts not
26460         required by C99.
26461
26462         Use `exit_failure' for xalloc and xmemcoll instead of their own
26463         private exit-failure variables.
26464         * lib/xalloc.h (xalloc_exit_failure): Remove.
26465         * lib/xmalloc.c: Likewise.  Include exitfail.h.
26466         (xalloc_die): Use exit_failure instead of xalloc_exit_failure.
26467         * lib/xmemcoll.h (xmemcoll_exit_failure): Remove.
26468         * lib/xmemcoll.c: Likewise.  Include exitfail.h.
26469         (xmemcoll): Use exit_failure instead of xalloc_exit_failure.
26470
26471 2003-07-20  Jim Meyering  <jim@meyering.net>
26472
26473         * modules/closeout (Depends-on): Add exitfail.
26474         Suggestion from Bruno Haible.
26475
26476 2003-07-19  Karl Berry  <karl@gnu.org>
26477
26478         * config/config.sub: update from prep.
26479
26480 2003-07-18  Paul Eggert  <eggert@twinsun.com>
26481
26482         * lib/closeout.h (close_stdout_set_status, close_stdout_status):
26483         Remove.
26484         * lib/closeout.c: Likewise.  Include "closeout.h" right after config.h,
26485         to test that it can stand by itself.  Include "exitfail.h".
26486         Clients should set exit_failure instead.
26487         (EXIT_FAILURE): Remove; no longer needed.  Do not include <stdlib.h>.
26488
26489 2003-07-18  Bruno Haible  <bruno@clisp.org>
26490
26491         * modules/getndelim2: New file.
26492         * modules/getline: Share files with module getndelim2.
26493         * modules/getnline: Depend on getndelim2 instead of sharing files with
26494         it. Add getnline.c to lib_SOURCES.
26495         * MODULES.html.sh (func_all_modules): Add getndelim2.
26496
26497 2003-07-18  Bruno Haible  <bruno@clisp.org>
26498
26499         * m4/getndelim2.m4: New file.
26500         * m4/getline.m4 (AM_FUNC_GETLINE): Add AC_LIBOBJ of getndelim2.c and
26501         invoke gl_PREREQ_GETNDELIM2.
26502         (gl_PREREQ_GETLINE): Drop AC_HEADER_STDC, now done by
26503         gl_PREREQ_GETNDELIM2.
26504         * m4/getnline.m4 (gl_GETNLINE): Drop AC_HEADER_STDC, now done by
26505         gl_GETNDELIM2.
26506
26507 2003-07-18  Bruno Haible  <bruno@clisp.org>
26508
26509         * lib/getndelim2.h: New file.
26510         * lib/getndelim2.c: Make into a module of its own. Include config.h,
26511         getndelim2.h.
26512         (getndelim2): Make non-static. Change return type to ssize_t.
26513         * lib/getline.h: Change argument names.
26514         * lib/getline.c: Include getndelim2.h instead of getndelim2.c.
26515         * lib/getnline.c: Include getndelim2.h.
26516
26517 2003-07-18  Andreas Schwab  <schwab@suse.de>
26518
26519         * lib/memcoll.c (memcoll) [!HAVE_STRCOLL]: Clear errno.
26520
26521 2003-07-17  Karl Berry  <karl@gnu.org>
26522
26523         * config/config.sub: update from prep.
26524
26525 2003-07-17  Bruno Haible  <bruno@clisp.org>
26526
26527         * modules/getnline: New file.
26528         * modules/getline: Add lib/getndelim2.c to source file list.
26529         * MODULES.html.sh (func_all_modules): Add getnline.
26530
26531 2003-07-17  Bruno Haible  <bruno@clisp.org>
26532
26533         * m4/getnline.m4: New file.
26534
26535 2003-07-17  Bruno Haible  <bruno@clisp.org>
26536
26537         * m4/Makefile.am.in: Remove file.
26538         * m4/Makefile.am: Remove file.
26539         * m4/Makefile.in: Remove file.
26540
26541 2003-07-17  Bruno Haible  <bruno@clisp.org>
26542
26543         * lib/getnline.h: New file.
26544         * lib/getnline.c: New file.
26545         * lib/getndelim2.c: New file, extracted from getline.c.
26546         (getndelim2): Renamed from getdelim2, with added nmax argument.
26547         * lib/getline.c: Include getndelim2.c.
26548         (getdelim2): Moved out to getndelim2.c.
26549         (getline, getdelim): Update.
26550
26551 2003-07-17  Bruno Haible  <bruno@clisp.org>
26552
26553         * lib/Makefile.am: Remove file.
26554         * lib/Makefile.in: Remove file.
26555
26556 2003-07-17  Bruno Haible  <bruno@clisp.org>
26557
26558         * configure.in: Remove file.
26559         * Makefile.in: Remove file.
26560
26561 2003-07-17  Bruno Haible  <bruno@clisp.org>
26562
26563         * MODULES.html.sh: Put the </BODY> right before </HTML>.
26564
26565 2003-07-16  Karl Berry  <karl@gnu.org>
26566
26567         * config/srclist-update: was running fixlicense twice, which caused
26568                 texinfo.tex to be nullified for some reason.  Simplify,
26569                 $gplsrc is no longer needed as far as I can see?
26570
26571 2003-07-16  Jim Meyering  <jim@meyering.net>
26572
26573         * modules/save-cwd: Depend on xgetcwd.  From Derek Price.
26574
26575 2003-07-15  Paul Eggert  <eggert@twinsun.com>
26576
26577         * config/srclist.txt: Get the following files from gettext-runtime/intl
26578         instead: config.charset, localcharset.c, localcharset.h, ref-add.sin,
26579         ref-del.sin.  From Bruno Haible.
26580         * config/srclist-update (fixfile): Change grep pattern again, since the
26581         previous fix didn't work (there was another trailing $).  Use
26582         '[$]' to escape the $s.
26583
26584 2003-07-15  Karl Berry  <karl@gnu.org>
26585
26586         * lib/vasnprintf.c: update from gettext.
26587
26588 2003-07-15  Karl Berry  <karl@gnu.org>
26589
26590         * config/srclist-update (fixfile): Change grep pattern, since 'Id'
26591         gets expanded when surrounded by '$'.
26592
26593 2003-07-15  Jim Meyering  <jim@meyering.net>
26594
26595         * modules/save-cwd: Don't depend on error.  From Derek Price.
26596
26597 2003-07-15  Jim Meyering  <jim@meyering.net>
26598
26599         * lib/makepath.c (make_path): Enclose diagnostic in _(...).
26600
26601 2003-07-14  Simon Josefsson  <jas@extundo.com>
26602
26603         * modules/mempcpy: New file.
26604         * MODULES.html.sh (func_all_modules): Add mempcpy.
26605
26606 2003-07-14  Simon Josefsson  <jas@extundo.com>
26607
26608         * m4/mempcpy.m4: New file.
26609
26610 2003-07-14  Simon Josefsson  <jas@extundo.com>
26611
26612         * lib/mempcpy.h: New file.
26613         * lib/mempcpy.c: New file.
26614
26615 2003-07-14  Paul Eggert  <eggert@twinsun.com>
26616
26617         * modules/getdate, modules/posixtm: Depend on mktime.
26618
26619 2003-07-14  Paul Eggert  <eggert@twinsun.com>
26620
26621         * lib/ceill.c, expl.c, floorl.c, frexpl.c, ldexpl.c, mathl.h,
26622         sincosl.c, sqrtl.c, trigl.c, trigl.h, poll.c, poll_.h, mkstemp.c,
26623         unicodeio.c, unicodeio.h, unlocked-io.h:
26624         Switch from LGPL to GPL.
26625
26626 2003-07-14  Paul Eggert  <eggert@twinsun.com>
26627
26628         * lib/asnprintf.c, asprintf.c, config.charset, gettext.h,
26629         localcharset.c, localcharset.h, mkdtemp.c, printf-args.c,
26630         printf-args.h, printf-parse.c, printf-parse.h, ref-add.sin,
26631         ref-del.sin, setenv.c, unsetenv.c, vasnprintf.c, vasnprintf.h,
26632         vasprintf.c, vasprintf.h: Regenerate.  These files are now being
26633         updated automatically by ../config/srclist-update.  This changes
26634         their license from LPGL to GPL.
26635
26636 2003-07-14  Paul Eggert  <eggert@twinsun.com>
26637
26638         * config/srclist.txt: Add tons more gettext files.  $GETTEXT is now
26639         assumed to refer to the root of the most recent stable gettext version.
26640         * config/srclistvars.sh: Add defaults for eggert.
26641         * config/srclist-update: Convert LGPL to GPL in shell scripts, too.
26642         Match "This program" as well as "The program".  This is needed
26643         for gettext.
26644
26645 2003-07-14  Jim Meyering  <jim@meyering.net>
26646
26647         Don't emit diagnostics.  Let callers do that.
26648         * lib/save-cwd.c: Don't include "error.h".
26649         (save_cwd): Don't call error.  Ensure that errno is valid
26650         when returning nonzero.
26651
26652         * lib/save-cwd.h (restore_cwd): Update prototype.
26653         * lib/save-cwd.c (restore_cwd): Remove two parameters.
26654         Simplify.  Don't call error upon failure.  Let callers do that.
26655         (save_cwd): Mention that Irix 5.3 has the same problem as SunOS 4
26656         when auditing is enabled.  But don't bother updating the #if.
26657
26658 2003-07-11  Alexandre Duret-Lutz  <adl@gnu.org>
26659
26660         * lib/obstack.h (__INT_TO_PTR): Revert change of 2003-03-13;
26661         it breaks C++ compilation.
26662         [!__GNUC__ || !__STDC__] (obstack_finish): Cast result to void*.
26663
26664 2003-07-10  Simon Josefsson  <jas@extundo.com>
26665
26666         * modules/strchrnul (Makefile.am): Add strchrnul.h.
26667
26668 2003-07-10  Jim Meyering  <jim@meyering.net>
26669
26670         * m4/clock_time.m4: Remove trailing blank.
26671         * m4/intmax_t.m4: Likewise.
26672
26673 2003-07-10  Jim Meyering  <jim@meyering.net>
26674
26675         * lib/vasnprintf.c: Remove trailing blanks.
26676         Make cpp indentation consistent.
26677
26678 2003-07-09  Paul Eggert  <eggert@twinsun.com>
26679
26680         * lib/alloca_.h, euidaccess.c, getpass.c, memrchr.c, obstack.h,
26681         posixver.c, strftime.c, strnlen.c, strverscmp.c:
26682         Switch from LGPL to GPL.
26683
26684 2003-07-09  Paul Eggert  <eggert@twinsun.com>
26685
26686         * config/srclist.txt: Sort sublists.  Add
26687         $LIBCSRC/sysdeps/generic/strtoul.c. In comments, add more libc files
26688         that differ from gnulib for one reason or another; we'd like this list
26689         to be smaller but for now let's document what we have.
26690
26691 2003-07-08  Paul Eggert  <eggert@twinsun.com>
26692
26693         * config/srclist-update: Port to POSIX 1003.1-2001 hosts by avoiding
26694         the use of GNU extensions.  Change "x=`eval echo $x`" to the shorter
26695         and sweeter "eval x=$x".
26696         * config/srclist.txt: Get lib/argp* from glibc.
26697
26698 2003-07-07  Paul Eggert  <eggert@twinsun.com>
26699
26700         * lib/mktime.c: Fix some boundary cases and remove need for floating
26701         point.
26702
26703         Issue a compile-time diagnostic if time_t is floating point, or if
26704         two's complement arithmetic is not in effect, or if arithmetic
26705         right shift does not propagate the sign.  These assumptions were
26706         all in the original code but they weren't checked.
26707
26708         (TIME_T_MIDPOINT, verify): New macros.
26709         (__isleap): Remove; it has integer overflow problems.
26710         (leapyear): New function, without those problems.
26711         (ydhms_tm_diff): Remove; splitting into two parts.
26712         (ydhms_diff): New function, containing the arithmetic part of
26713         the old ydhms_tm_diff function.  Issue a compile-time
26714         diagnostic if we are not using C99 integer division.
26715         Avoid casts when possible.
26716         (guess_time_tm): New function, containing the checking part of
26717         the old ydhms_tm_diff function.  Return the new value, rather than
26718         the difference between it and the old.  Accept a new argument T
26719         so that *T specifies the old value.  Check for overflow in the result.
26720
26721         (__mktime_internal): Use a time_t offset, not a long int offset.
26722         This undoes the 2003-06-04 change, which is no longer needed now
26723         that we have better overflow checking.
26724         (localtime_offset): Likewise.
26725
26726         (__mktime_internal): Avoid harmful overflow on hosts where time_t
26727         and long are 64-bit but int is only 32-bit.
26728         (ydhms_diff): Use long int to store year1 and yday1.
26729         Issue a compile-time diagnostic if long int is not wide enough.
26730
26731         (__mktime_internal): Use long int to store adjusted year and yday.
26732         Use plain C rather than preprocessor commands, if that doesn't
26733         affect efficiency.
26734         Check for overflow (and try to repair) after each probe
26735         rather than checking only at the very end.  This avoids some bugs
26736         (e.g., southern hemisphere, behind GMT, and GMT offset at minimum time
26737         does not equal GMT offset at maximum time).
26738         Use integer to check for overflow rather than floating point; this
26739         is more portable to non-IEEE hosts, and is a tad faster.
26740         When we detect that we are oscillating between two values,
26741         don't check whether tm_isdst has the requested value, since
26742         we already know the answer.  When tm_isdst has the wrong value,
26743         use a different heuristic to find the right one, based on the
26744         extreme values actually observed in practice in tz2003a,
26745         rather than the (overly optimistic) "previous 3 calendar quarters".
26746
26747         (not_equal_tm, print_tm, check_result): Use "const T" rather than
26748         "T const" to accommodate glibc style.
26749         (check_result): Use less-confusing report format.  "long" -> "long int.
26750         (main): Likewise.
26751         Don't loop if the iteration overflows time_t.
26752         Allow a negative step in the iteration.
26753
26754 2003-07-06  Karl Berry  <karl@gnu.org>
26755
26756         * config/depcomp: update from automake.
26757         * config/config.sub: update from prep.
26758
26759 2003-07-03  Karl Berry  <karl@gnu.org>
26760
26761         * config/config.guess: update from prep.
26762
26763 2003-07-01  Paul Eggert  <eggert@twinsun.com>
26764
26765         * m4/xreadlink.m4 (gl_XREADLINK): Don't check for sys/types.h, since
26766         xreadlink.c now includes it unconditionally.
26767
26768 2003-07-01  Paul Eggert  <eggert@twinsun.com>
26769
26770         * lib/xreadlink.c: Include <sys/types.h> unconditionally, instead of
26771         having it depend on HAVE_SYS_TYPES_H.
26772
26773 2003-07-01  Bruno Haible  <bruno@clisp.org>
26774
26775         * m4/ssize_t.m4 (gt_TYPE_SSIZE_T): Don't include <unistd.h>.
26776         <sys/types.h> should be sufficient.
26777         Reported by Paul Eggert.
26778
26779 2003-06-26  Karl Berry  <karl@gnu.org>
26780
26781         * config/depcomp: update from automake.
26782
26783 2003-06-26  Bruno Haible  <bruno@clisp.org>
26784
26785         * modules/human: Depend on module stdbool.
26786
26787 2003-06-25  Bruno Haible  <bruno@clisp.org>
26788
26789         * modules/readlink: New file.
26790         * modules/xreadlink: Depend on it.
26791         * MODULES.html.sh (func_all_modules): Add readlink.
26792
26793 2003-06-25  Bruno Haible  <bruno@clisp.org>
26794
26795         * m4/readlink.m4: New file.
26796
26797 2003-06-25  Bruno Haible  <bruno@clisp.org>
26798
26799         * lib/readlink.c: New file.
26800
26801 2003-06-22  Karl Berry  <karl@gnu.org>
26802
26803         * config/srclist.txt: update mkinstalldirs from automake.
26804         * config/mkinstalldirs: update.
26805
26806 2003-06-22  Bruno Haible  <bruno@clisp.org>
26807
26808         Portability to mingw32.
26809         * m4/ssize_t.m4: New file, from GNU gettext.
26810         * m4/safe-read.m4 (gl_PREREQ_SAFE_READ): Require gt_TYPE_SSIZE_T.
26811         * m4/xreadlink.m4 (gl_XREADLINK): Require gt_TYPE_SSIZE_T.
26812
26813 2003-06-22  Bruno Haible  <bruno@clisp.org>
26814
26815         * modules/safe-read: Add m4/ssize_t.m4.
26816         * modules/xreadlink: Add m4/ssize_t.m4.
26817
26818 2003-06-20  Bruno Haible  <bruno@clisp.org>
26819
26820         Assume C89, so PARAMS isn't needed.
26821         * lib/unicodeio.h (PARAMS): Remove.
26822         * lib/unicodeio.c: Don't use PARAMS.
26823
26824 2003-06-18  Karl Berry  <karl@gnu.org>
26825
26826         * config/config.{guess,sub}: update from prep.
26827
26828 2003-06-18  Jim Meyering  <jim@meyering.net>
26829
26830         Merge changes from coreutils.
26831         * lib/readutmp.c: Include <string.h> and <stdlib.h> unconditionally.
26832         Remove explicit declarations of xmalloc and realloc.
26833         Include xalloc.h.
26834         (read_utmp): Remove anachronistic cast of xmalloc.
26835
26836 2003-06-17  Paul Eggert  <eggert@twinsun.com>
26837
26838         Assume C89, so PARAMS isn't needed.
26839         * lib/backupfile.h (PARAMS): Remove.  All uses removed.
26840         * lib/closeout.h, lib/dirname.h, lib/filemode.h, lib/fsusage.h,
26841         lib/getdate.h, lib/getline.h, lib/group-member.h, lib/hard-locale.h,
26842         lib/hash.h, lib/linebuffer.h, lib/long-options.h, lib/makepath.h,
26843         lib/memcasecmp.h, lib/memcoll.h, lib/modechange.h, lib/mountlist.h,
26844         lib/path-concat.h, lib/physmem.h, lib/posixtm.h, lib/quote.h,
26845         lib/readutmp.h, lib/same.h, lib/save-cwd.h, lib/savedir.h,
26846         lib/stdio-safer.h, lib/strtoimax.c, lib/strverscmp.h,
26847         lib/unistd-safer.h, lib/version-etc.h, lib/xalloc.h, lib/xreadlink.h,
26848         lib/xstrtod.h, lib/xstrtol.h: Likewise.
26849         * lib/filemode.h, lib/hard-locale.h, lib/memcoll.h, lib/modechange.h,
26850         lib/physmem.h, lib/same.h, lib/strverscmp.h: Do not include config.h;
26851         no longer needed. Anyway, config.h should always be included before any
26852         other file.
26853
26854 2003-06-11  Simon Josefsson  <jas@extundo.com>
26855
26856         * modules/sysexits: New file.
26857         * MODULES.html.sh (func_all_modules): Add sysexits.
26858
26859 2003-06-11  Simon Josefsson  <jas@extundo.com>
26860
26861         * lib/sysexit_.h: New file.
26862
26863 2003-06-11  Derek Price  <derek@ximbiot.com>
26864
26865         * lib/stat.c [LSTAT]: Compile/use slash_aware_lstat only if it is
26866         necessary.
26867
26868 2003-06-11  Bruno Haible  <bruno@clisp.org>
26869
26870         * m4/sysexits.m4: New file.
26871
26872 2003-06-10  Simon Josefsson  <jas@extundo.com>
26873
26874         * lib/argp.h: New file, from glibc.
26875         * lib/argp-ba.c: New file, from glibc.
26876         * lib/argp-eexst.c: New file, from glibc.
26877         * lib/argp-fmtstream.c: New file, from glibc.
26878         * lib/argp-fmtstream.h: New file, from glibc.
26879         * lib/argp-fs-xinl.c: New file, from glibc.
26880         * lib/argp-help.c: New file, from glibc.
26881         * lib/argp-namefrob.h: New file, from glibc.
26882         * lib/argp-parse.c: New file, from glibc.
26883         * lib/argp-pv.c: New file, from glibc.
26884         * lib/argp-pvh.c: New file, from glibc.
26885         * lib/argp-xinl.c: New file, from glibc.
26886
26887 2003-06-10  Simon Josefsson  <jas@extundo.com>
26888
26889         * modules/strchrnul: New file.
26890
26891 2003-06-10  Simon Josefsson  <jas@extundo.com>
26892
26893         * modules/argp: New file.
26894
26895 2003-06-10  Simon Josefsson  <jas@extundo.com>
26896
26897         * m4/strchrnul.m4: New file.
26898
26899 2003-06-10  Simon Josefsson  <jas@extundo.com>
26900
26901         * lib/strchrnul.h: New file.
26902         * lib/strchrnul.c: New file.
26903
26904 2003-06-10  Bruno Haible  <bruno@clisp.org>
26905
26906         * MODULES.html.sh (func_all_modules): Add strchrnul and argp.
26907
26908 2003-06-07  Karl Berry  <karl@gnu.org>
26909
26910         * config/config.{guess,sub}: update from prep.
26911
26912 2003-06-07  Jim Meyering  <jim@meyering.net>
26913
26914         * modules/strtod: Use $(...) notation, not @...@ for
26915         AC_REPLACE'd variables.
26916         * modules/localcharset: Likewise.
26917
26918 2003-06-07  Jim Meyering  <jim@meyering.net>
26919
26920         * lib/readtokens.h: Put `Free Software Foundation, Inc.'
26921         in place of my name in the copyright comment.
26922         Remove definition and uses of __P.
26923
26924         From coreutils.
26925         * lib/stat.c: Don't declare xmalloc explicitly.
26926         Instead, include "xalloc.h".
26927         * lib/readtokens.c (readtokens): Remove anachronistic casts of xmalloc,
26928         xrealloc, and xcalloc return values.
26929         * lib/xgetcwd.c (xgetcwd): Include "xgetcwd.h".
26930         Improve comment.
26931         * lib/xgetcwd.h: Remove definition/uses of PARAMS.
26932
26933 2003-06-07  Bruno Haible  <bruno@clisp.org>
26934
26935         * modules/poll (Makefile.am): Use explicit creation rule for poll.h, to
26936         avoid AC_CONFIG_LINKS.
26937         * modules/fnmatch (Makefile.am): Use explicit creation rule for
26938         fnmatch.h, to avoid AC_CONFIG_LINKS.
26939         * modules/alloca (Makefile.am): Make creation of alloca.h Ctrl-C safe.
26940
26941 2003-06-07  Bruno Haible  <bruno@clisp.org>
26942
26943         * m4/fnmatch.m4 (_AC_LIBOBJ_FNMATCH, gl_FUNC_FNMATCH_POSIX,
26944         gl_FUNC_FNMATCH_GNU): Set FNMATCH_H instead of invoking
26945         AC_CONFIG_LINKS. Needed to allow for a different name of the lib
26946         directory.
26947         * m4/poll.m4 (gl_FUNC_POLL): Set POLL_H instead of invoking
26948         AC_CONFIG_LINKS. Needed to allow for a different name of the lib
26949         directory.
26950
26951 2003-06-06  Jim Meyering  <jim@meyering.net>
26952
26953         Merge from coreutils.
26954         * lib/same.c: (same_name): Declare *_basename locals to be `const'.
26955         Consolidate declarations and initializations of *_base* locals.
26956
26957         Merge from coreutils.
26958         This avoids a core dump on systems without GNU putenv,
26959         when running `env -u SOME_ALREADY_UNSET_VARIABLE'.
26960         * lib/putenv.c (__set_errno, LOCK, UNLOCK): Define.
26961         (unsetenv): New static function, from GNU libc.
26962         (rpl_putenv): Use it.
26963
26964         * lib/modechange.c: Remove trailing blanks.
26965
26966         Merge from coreutils.
26967         * lib/fsusage.c: Remove declaration of statfs.
26968         It conflicted with one from OSF/1 5.1 in <sys/mount.h>.
26969
26970         * lib/posixtm.c: Include <stdbool.h> unconditionally.
26971
26972 2003-06-06  Jim Meyering  <jim@meyering.net>
26973
26974         * lib/stdbool_.h: Renamed from stdbool.h.in.
26975
26976 2003-06-06  Jim Meyering  <jim@meyering.net>
26977             Bruno Haible  <bruno@clisp.org>
26978
26979         * modules/stdbool: Reflect renaming: stdbool.h.in -> stdbool_.h.
26980         Adjust Makefile.am snippet not to redirect directly to target.
26981         Use $(STDBOOL_H) notation, not @STDBOOL_H@ for AC_REPLACE'd variables.
26982
26983 2003-06-05  Paul Eggert  <eggert@twinsun.com>
26984
26985         * lib/mktime.c (__mktime_internal): When resolving a tm_isdst
26986         mismatch, look in future quarters as well as past.  This fixes a
26987         bug when processing fall-backwards gaps immediately after a long
26988         period of daylight-saving time.
26989
26990         * lib/mktime.c: Assume freestanding C89 or better.
26991         (HAVE_LIMITS_H): Remove.  Assume it's 1.
26992         (__P): Remove; not used.
26993         (CHAR_BIT, INT_MIN, INT_MAX): Remove; <limits.h> defines them.
26994         (mktime, not_equal_tm, print_tm, check_result,
26995         main): Use prototypes.  Use const * where appropriate.
26996         (main): Fix typo in testing code that uncovered by above changes.
26997         (Local Variables): Remove -DHAVE_LIMITS_H from compile-command.
26998
26999 2003-06-04  Paul Eggert  <eggert@twinsun.com>
27000
27001         * m4/human.m4 (gl_HUMAN): Require AM_STDBOOL_H.  Check for
27002         locale.h, localeconv.  This merges changes from coreutils.
27003
27004         * m4/mktime.m4 (AC_FUNC_MKTIME): New macro, taken from Autoconf CVS.
27005         It can be removed after the next Autoconf is released.
27006         * m4/exclude.m4 (gl_EXCLUDE): Don't check for sys/types.h; no loner
27007         needed.
27008
27009 2003-06-04  Paul Eggert  <eggert@twinsun.com>
27010
27011         * lib/mktime.c: Fix Debian bug 177940
27012         <http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=177940>.
27013         (localtime_offset): Now long int, not time_t, because we want it
27014         to be guaranteed to be signed.  All uses changed.
27015         (__mktime_internal): If overflow would occur when adding offset,
27016         don't add it.
27017
27018         Merge 'human' changes from coreutils.  Rewrite to support
27019         locale-specific notations like thousands separators.
27020         * lib/human.c: Simplify authorship notice.
27021         Include human.h immediately after config.h.
27022         <sys/types.h>, <stdio.h>: Do not include; no longer needed.
27023         <limits.h>: Do not include, since human.h does.
27024         (SIZE_MAX, UINTMAX_MAX): New macros.
27025         <strings.h>: Include if HAVE_STRINGS_H, not if !HAVE_STRING_H.
27026         <locale.h>: Include if HAVE_LOCALE_H and HAVE_LOCALECONV.
27027         (HUMAN_READABLE_SUFFIX_LENGTH_MAX): New macro.
27028         (power_letter): Renamed from suffixes.
27029         (generate_suffix_backwards): Remove.
27030         (adjust_value): Now takes int style (because of human.h changes)
27031         and long double value (for greater precision on some platforms).
27032         (group_number): New function.
27033         (human_readable): Use it.  Use integer options, not enum.
27034         Put the options before the sizes in the arg list.
27035         Support all the new options.
27036         The old human_readable function has been removed;
27037         use inttostr.h instead.
27038         (human_readable, default_block_size, humblock):
27039         Use uintmax_t, not int, for block sizes.
27040         (human_readable_inexact, block_size_types): Remove.
27041         (block_size_opts): New constant.
27042         (human_options): Renamed from human_block_size, with new signature
27043         that allows block sizes up to UINTMAX_MAX.  All callers changed.
27044         * lib/human.h: Add copyright and authorship notice.
27045         Include <limits.h> and <stdbool.h> unconditionally.
27046         (PARAMS): Remove.  All uses removed.
27047         (LONGEST_HUMAN_READABLE): Add support for thousands separator.
27048         (enum human_inexact_style): Remove tag; now a nameless enum.
27049         (human_floor, human_ceiling, human_round_to_even): Now have
27050         values 2, 0, 1 rather than -1, 1, 0.
27051         (human_group_digits, human_suppress_point_zero, human_autoscale,
27052         human_base_1024, human_SI, human_B): New constants.
27053         (human_readable_inexact, human_block_size): Remove.
27054         (human_readable): Size args are now uintmax_t, not int.
27055         (human_options): New decl.
27056
27057         * lib/exclude.c: (new_exclude, add_exclude): Remove casts that are
27058         unnecessary now that we assume C89 or better.  This change
27059         imported from coreutils.
27060
27061         * lib/mktime.c (__mktime_internal): Do not reject negative timestamps
27062         arbitrarily.  This is the same patch as 2003-05-28, but it got lost
27063         in the 2003-05-30 sync from glibc.
27064
27065         .h files should stand alone, but we shouldn't include <sys/types.h>
27066         if we can get away with just <stddef.h>.
27067
27068         * lib/__fpending.h, addext.c, backupfile.c, exclude.c, getline.c,
27069         malloc.c, putenv.c, realloc.c, strcasecmp.c: Include <stddef.h>
27070         rather than <sys/types.h>, as we merely need size_t.
27071         * lib/dirname.h, memcoll.h, xalloc.h, xmemcoll.h: Include <stddef.h>,
27072         to get size_t.
27073         * lib/hash.h, linebuffer.h, readtokens.h, stdio-safer.h, version-etc.h:
27074         Include <stdio.h>, to get FILE.
27075         * lib/memcasecmp.c: Don't include <sys/types.h>, as we can assume
27076         memcasecmp.h has included <stddef.h> and all we need is size_t.
27077         * lib/memcoll.c: Include "memcoll.h", which gets us size_t and checks
27078         our interface, instead of including <sys/types.h>
27079
27080 2003-06-04  Paul Eggert  <eggert@twinsun.com>
27081
27082         * config/srclist.txt ($LIBCSRC/time/mktime.c lib gpl): Comment out for
27083         now, as glibc mktime is buggy on non-glibc systems.
27084
27085 2003-06-03  Karl Berry  <karl@gnu.org>
27086
27087         * config/config.sub: update from prep.
27088
27089 2003-06-02  Paul Eggert  <eggert@twinsun.com>
27090
27091         [from coreutils]
27092         Fix some minor time-related bugs with POSIX time arguments.
27093         Some valid time stamps were being rejected (notably -1, and
27094         time stamps before 1900 on 64-bit hosts).  And some invalid
27095         time stamps were being accepted, e.g. September 31.
27096
27097         * lib/posixtm.h (posixtime): Return bool instead of time_t, so
27098         that we can return (time_t) -1 successfully.
27099         * lib/posixtm.c: Likewise.
27100         [HAVE_STDBOOL_H]: Include <stdbool.h>.
27101         (bool, false, true) [!HAVE_STDBOOL_H]: New type.
27102         (t): Remove static var.
27103         (year, posix_time_parse): Now takes struct tm * arg to modify, instead
27104         of static var.  All uses changed.
27105         (year): Do not reject years before 1900; they can occur with
27106         64-bit time_t.
27107         (posix_time_parse): Do not check for out-of-range components;
27108         that is now the caller's responsibility, since our checks were
27109         only approximations.
27110         (posixtime): Use mktime to check for out-of-range components,
27111         since it knows them exactly.
27112         If mktime returns (time_t) -1, check whether an error actually occurred
27113         by invoking localtime on -1.
27114         (main) [TEST_POSIXTIME]: Check for input data errors, and report
27115         posixtime failures better.
27116         Improve the test data (in comments only).
27117
27118 2003-06-02  Karl Berry  <karl@gnu.org>
27119
27120         * config/mkinstalldirs (version): new variable.
27121         (--version): new option.
27122         (usage): improve message.
27123
27124 2003-05-30  Karl Berry  <karl@gnu.org>
27125
27126         * lib/mktime.c: update from libc.
27127
27128 2003-05-30  Bruno Haible  <bruno@clisp.org>
27129
27130         * modules/gettext: Add files m4/nls.m4 and m4/po.m4.
27131         * config/config.rpath: Upgrade to gettext-0.12.1.
27132
27133 2003-05-30  Bruno Haible  <bruno@clisp.org>
27134
27135         * m4/gettext.m4: Upgrade to gettext-0.12.1.
27136         * m4/nls.m4: New file, from gettext-0.12.1.
27137         * m4/po.m4: New file, from gettext-0.12.1.
27138         * m4/progtest.m4: Upgrade to gettext-0.12.1.
27139
27140 2003-05-30  Bruno Haible  <bruno@clisp.org>
27141
27142         * lib/config.charset: Upgrade to gettext-0.12.1 and libiconv-1.9.1.
27143         * lib/localcharset.h: Likewise.
27144         * lib/localcharset.c: Likewise.
27145
27146 2003-05-29  Karl Berry  <karl@gnu.org>
27147
27148         * config/config.rpath: update from gettext.
27149
27150 2003-05-28  Paul Eggert  <eggert@twinsun.com>
27151
27152         Assume the headers required for C89 freestanding compilers.
27153         * m4/backupfile.m4 (gl_BACKUPFILE): Don't check for limits.h.
27154         * m4/fsusage.m4 (gl_PREREQ_FSUSAGE_EXTRA): Likewise.
27155         * m4/human.m4 (gl_HUMAN): Likewise.
27156         * m4/pathmax.m4 (gl_PATHMAX): Likewise.
27157         * m4/rpmatch.m4 (gl_FUNC_RPMATCH): Likewise.
27158         * m4/userspec.m4 (gl_USERSPEC): Likewise.
27159         * m4/xreadlink.m4 (gl_XREADLINK): Likewise.
27160         * m4/xstrtol.m4 (gl_PREREQ_XSTRTOL): Likewise.
27161         * m4/quote.m4 (gl_QUOTE): Don't check for stddef.h.
27162
27163 2003-05-28  Paul Eggert  <eggert@twinsun.com>
27164
27165         Assume the headers required for C89 freestanding compilers.
27166         * lib/addext.c, lib/backupfile.c, lib/fsusage.c, lib/human.c,
27167         lib/pathmax.h, lib/rpmatch.c, lib/userspec.c, lib/xreadlink.c,
27168         lib/xstrtol.c: Include <limits.h> without checking for HAVE_LIMITS_H.
27169         * lib/backupfile.c, lib/fsusage.c, lib/hash.c, lib/human.c,
27170         lib/safe-read.c, lib/userspec.c, lib/xstrtol.c (CHAR_BIT): Don't
27171         define, since <limits.h> is guaranteed to do that.
27172         * lib/fatal.c: Include <stdarg.h> without checking for __STDC__.
27173         * lib/exclude.c: Include <stdbool.h> unconditionally.
27174         * lib/tempname.c: Include <stddef.h> unconditionally.
27175         * lib/hash.c: Include <limits.h>, since we no longer define CHAR_BIT.
27176         * lib/modechange.c, rpmatch.c (NULL): Don't define, since
27177         <stddef.h> does that.
27178         * lib/quote.c: Dont include <stddef.h> or <sys/types.h>; not needed.
27179         * lib/safe-read.c (INT_MAX): Don't define, since <limits.h> does that.
27180         * lib/safe-read.c (TYPE_MINIMUM, TYPE_MAXIMUM): Remove; no longer
27181         needed.
27182         * lib/xstrtol.c: Likewise.
27183         * lib/safe-read.c: Remove TYPE_SIGNED; no longer needed.
27184         * lib/savedir.c: Include <stddef.h> instead of defining NULL.
27185
27186         * lib/addext.c (addext): Use assignment rather than cast, to avoid
27187         warnings on some platforms.
27188
27189         * lib/mktime.c (__mktime_internal): Do not reject negative timestamps
27190         arbitrarily.
27191
27192 2003-05-26  Jim Meyering  <jim@meyering.net>
27193
27194         Merge in a change from coreutils:
27195         * m4/dirfd.m4 (UTILS_FUNC_DIRFD): Test the cache variable, not one
27196         that is guaranteed to be `no'.  Use `no_such_member' to indicate
27197         that condition, rather than `-1' which is slightly misleading.
27198         Change the name of the cache variable to have the gl_ prefix.
27199         Prompted by a patch from Richard Dawe for DJGPP.
27200
27201 2003-05-24  Karl Berry  <karl@gnu.org>
27202
27203         * config/config.guess: update from prep.
27204
27205 2003-05-22  Karl Berry  <karl@gnu.org>
27206
27207         * gnulib-tool (func_usage): =LIBRARY not =libRARY in help msg.
27208
27209 2003-05-20  Karl Berry  <karl@gnu.org>
27210
27211         * config/config.guess: update from prep.
27212
27213 2003-05-18  Karl Berry  <karl@gnu.org>
27214
27215         * config/srclistvars.sh (TEXMF): use TEXMFROOT instead, since TEXMF
27216         might actually be set by the user.
27217
27218         * config/depcomp, install-sh, mdate-sh: update from automake.
27219
27220 2003-05-17  Bruno Haible  <bruno@clisp.org>
27221
27222         * m4/dirfd.m4 (UTILS_FUNC_DIRFD): Fix a quoting bug leading to an
27223         invalid expansion for AC_EGREP_CPP.
27224         * m4/strtoimax.m4 (gl_FUNC_STRTOIMAX): Likewise.
27225         * m4/strtoumax.m4 (gl_FUNC_STRTOUMAX): Likewise.
27226         Suggested by Akim Demaille <akim@epita.fr> in
27227         http://mail.gnu.org/archive/html/bug-autoconf/2003-05/threads.html
27228
27229 2003-05-12  Jim Meyering  <jim@meyering.net>
27230
27231         * lib/strftime.c (my_strftime): Let the `-' (no-pad) flag affect
27232         the space-padded-by-default conversion specifiers, %e, %k, %l.
27233
27234 2003-05-12  Bruno Haible  <bruno@clisp.org>
27235
27236         * lib/linebreak.c (iconv_string_length): Don't return -1 just because
27237         the string is longer than 4 KB.
27238
27239 2003-05-11  Karl Berry  <karl@gnu.org>
27240
27241         * config/config.{guess,sub}: update from prep.
27242
27243 2003-05-09  Bruno Haible  <bruno@clisp.org>
27244
27245         * modules/error: Add m4/strerror_r.m4 to file list.
27246
27247 2003-05-03  Bruno Haible  <bruno@clisp.org>
27248
27249         Upgrade to Unicode-4.0.
27250         * lib/linebreak.c (nonspacing_table_data): Change width of U+00AD,
27251         U+0350..U+0357, U+035D..U+035F, U+0600..U+0603, U+0610..U+0615,
27252         U+0656..U+0658, U+0A01, U+0AE2..U+0AE3, U+0CBC, U+17B4..U+17B5,
27253         U+17DD, U+1920..U+1922, U+1927..U+192B, U+1932, U+1939..U+193B
27254         from 1 to 0. Change width of U+0CBF, U+0CC6, U+180E from 0 to 1.
27255         (uc_width): Change width of U+4DC0..U+4DFF from 2 to 1. Change width
27256         of U+2A6D7..U+2F7FF, U+2FA1E..U+2FFFD, U+30000..U+3FFFD from 1 to 2.
27257         Change width of U+E0100..U+E01EF from 1 to 0.
27258
27259 2003-04-25  Jim Meyering  <jim@meyering.net>
27260
27261         * lib/copy-file.c (copy_file_preserving): Declare buf_size to be
27262         of type size_t, not int.
27263
27264 2003-04-25  Bruno Haible  <bruno@clisp.org>
27265
27266         * lib/copy-file.c: Include <stddef.h>, for size_t.
27267
27268 2003-04-21  Paul Eggert  <eggert@twinsun.com>
27269
27270         * m4/error.m4 (gl_ERROR): Do not put under dynamic conditions some
27271         code which expansion is under static control.  Patch imported from
27272         Akim Demaille's patch to Bison; see
27273         <http://mail.gnu.org/archive/html/bison-patches/2003-03/msg00057.html>.
27274
27275 2003-04-14  Bruno Haible  <bruno@clisp.org>
27276
27277         * m4/error.m4 (jm_PREREQ_ERROR): Use AC_FUNC_VPRINTF.
27278
27279 2003-04-11  Jim Meyering  <jim@meyering.net>
27280
27281         Merge changes from Coreutils.
27282
27283         2003-03-22  Jim Meyering  <jim@meyering.net>
27284
27285         * lib/strftime.c (widen): Cast alloca return value to proper type.
27286
27287         2003-01-19  Ulrich Drepper  <drepper@redhat.com>
27288
27289         From GNU libc.
27290         * lib/strftime.c (my_strftime): Handle very large width
27291         specifications for numeric values correctly.  Improve checks for
27292         overflow.
27293
27294         2003-01-19  Jim Meyering  <jim@meyering.net>
27295
27296         * lib/strftime.c (widen) [COMPILE_WIDE]: Merge nearly-identical
27297         definitions.
27298         (nl_get_alt_digit) [! defined my_strftime]: Define.
27299         (my_strftime) [_NL_CURRENT]: Merge nearly-identical uses of
27300         _nl_get_alt_digit and _nl_get_walt_digit.
27301
27302         * lib/strftime.c (my_strftime): Merge in locale-related changes from
27303         libc. These changes have no effect outside of _LIBC.
27304
27305 2003-04-10  Bruno Haible  <bruno@clisp.org>
27306
27307         * modules/findprog: New file.
27308         * MODULES.html.sh (func_all_modules): Add it.
27309
27310 2003-04-10  Bruno Haible  <bruno@clisp.org>
27311
27312         * m4/findprog.m4: New file.
27313         * m4/eaccess.m4: New file.
27314
27315 2003-04-10  Bruno Haible  <bruno@clisp.org>
27316
27317         * lib/findprog.h: New file, from GNU gettext.
27318         * lib/findprog.c: New file, from GNU gettext.
27319
27320 2003-04-05  Jim Meyering  <jim@meyering.net>
27321
27322         Merge changes from Coreutils.
27323
27324         * lib/exclude.h (PARAMS): Remove definition and uses.
27325         * lib/exclude.c: Remove uses of `PARAMS'.
27326
27327         * lib/dirname.c [TEST_DIRNAME]: Update build instructions for test.
27328         Add test-cases for DOS filenames. Declare program_name.
27329         (main): Set up program_name.  Patch by Rich Dawe.
27330
27331         * lib/mountlist.c (read_filesystem_list) [MOUNTED_VMOUNT]: Detect any
27332         error from mntctl.
27333         Use mntctl's return value to drive the entry-processing loop, since
27334         we can't rely on the value of the vmt_length member in the last
27335         entry.  On some systems doing so could result in exhausting
27336         virtual memory.  Based in part on a patch from Mike Jetzer.
27337
27338 2003-04-04  Bruno Haible  <bruno@clisp.org>
27339
27340         * modules/linebreak: New file.
27341         * MODULES.html.sh (func_all_modules): Add it.
27342
27343 2003-04-04  Bruno Haible  <bruno@clisp.org>
27344
27345         * m4/linebreak.m4: New file.
27346
27347 2003-04-04  Bruno Haible  <bruno@clisp.org>
27348
27349         * lib/linebreak.h: New file, from GNU gettext.
27350         * lib/linebreak.c: New file, from GNU gettext with slight
27351         modifications.
27352         * lib/lbrkprop.h: New file, from GNU gettext.
27353
27354 2003-04-03  Bruno Haible  <bruno@clisp.org>
27355
27356         * modules/utf8-ucs4: New file.
27357         * modules/utf16-ucs4: New file.
27358         * modules/ucs4-utf8: New file.
27359         * modules/ucs4-utf16: New file.
27360         * MODULES.html.sh (func_all_modules): Add them.
27361
27362 2003-04-03  Bruno Haible  <bruno@clisp.org>
27363
27364         * m4/utf-ucs4.m4: New file.
27365         * m4/ucs4-utf.m4: New file.
27366
27367 2003-04-03  Bruno Haible  <bruno@clisp.org>
27368
27369         * lib/utf8-ucs4.h: New file, from GNU gettext.
27370         * lib/utf16-ucs4.h: New file, from GNU gettext.
27371         * lib/ucs4-utf8.h: New file, from GNU gettext.
27372         * lib/ucs4-utf16.h: New file, from GNU gettext.
27373
27374 2003-04-02  Bruno Haible  <bruno@clisp.org>
27375
27376         * modules/binary-io: New file.
27377         * MODULES.html.sh (func_all_modules): Add it.
27378
27379 2003-04-02  Bruno Haible  <bruno@clisp.org>
27380
27381         * lib/binary-io.h: New file, from GNU gettext.
27382
27383 2003-04-01  Bruno Haible  <bruno@clisp.org>
27384
27385         * modules/pathname: New file.
27386         * MODULES.html.sh (func_all_modules): Add it.
27387
27388 2003-04-01  Bruno Haible  <bruno@clisp.org>
27389
27390         * lib/pathname.h: New file, from GNU gettext.
27391         * lib/concatpath.c: New file, from GNU gettext.
27392
27393 2003-03-30  Bruno Haible  <bruno@clisp.org>
27394
27395         * m4/copy-file.m4 (gl_COPY_FILE): Add check for chown().
27396
27397 2003-03-30  Bruno Haible  <bruno@clisp.org>
27398
27399         * lib/copy-file.c (copy_file_preserving): Don't set owner if the
27400         function chown() doesn't exist.
27401
27402 2003-03-28  Bruno Haible  <bruno@clisp.org>
27403
27404         * modules/copy-file: New file.
27405         * MODULES.html.sh (func_all_modules): Add it.
27406
27407 2003-03-28  Bruno Haible  <bruno@clisp.org>
27408
27409         * m4/copy-file.m4: New file.
27410
27411 2003-03-28  Bruno Haible  <bruno@clisp.org>
27412
27413         * lib/copy-file.h: New file, from GNU gettext.
27414         * lib/copy-file.c: New file, from GNU gettext.
27415
27416 2003-03-18  Jim Meyering  <jim@meyering.net>
27417
27418         * lib/quote.c (quote_n): Fix typo in comment.
27419
27420 2003-03-18  Bruno Haible  <bruno@clisp.org>
27421
27422         * m4/onceonly.m4: Use m4_defn instead of defn, for better error
27423         checking.
27424         * m4/onceonly_2_57.m4: Likewise.
27425
27426 2003-03-17  Bruno Haible  <bruno@clisp.org>
27427
27428         * m4/onceonly.m4: Require autoconf 2.54 or newer.
27429         (m4_quote): Remove macro.
27430         * m4/onceonly_2_57.m4: Require autoconf 2.54 or newer.
27431
27432 2003-03-14  Jim Meyering  <jim@meyering.net>
27433
27434         Merge changes from Coreutils.
27435         * lib/obstack.h (obstack_object_size): Declare temporary, __o,
27436         to be const, in order to avoid warnings.
27437         (obstack_room): Likewise.
27438         (obstack_empty_p): Likewise.
27439
27440 2003-03-14  Bruno Haible  <bruno@clisp.org>
27441
27442         * m4/onceonly_2_57.m4 (AC_CHECK_HEADERS_ONCE, AC_CHECK_FUNCS_ONCE,
27443         AC_CHECK_DECLS_ONCE): Quote AC_FOREACH variable-expansions properly.
27444
27445 2003-03-13  Paul Eggert  <eggert@twinsun.com>
27446
27447         Merge changes from Bison.
27448         * lib/obstack.h: (__INT_TO_PTR) [__STDC__]: Cast result to
27449         (void *) to avoid diagnostic with native c89 on SGI IRIX 6.5
27450         when compiling Bison 1.875's `bitset bset = obstack_alloc
27451         (bobstack, bytes);'.  Problem reported by Nelson H. F. Beebe.
27452         * lib/hash.c: Include <stdbool.h> unconditionally.
27453
27454 2003-03-13  Paul Eggert  <eggert@twinsun.com>
27455
27456         * m4/onceonly.m4 (m4_quote): New macro.
27457         (AC_CHECK_HEADERS_ONCE, AC_CHECK_FUNCS_ONCE, AC_CHECK_DECLS_ONCE):
27458         Quote AC_FOREACH variable-expansions properly.
27459
27460 2003-03-13  Paul Eggert  <eggert@twinsun.com>
27461
27462         * doc/COPYING.DOC, fdl.texi: Sync with latest FSF version.
27463
27464 2003-03-09  Paul Eggert  <eggert@twinsun.com>
27465
27466         * lib/argmatch.c (EXIT_FAILURE): Define if the system doesn't.
27467         Reported by Bruce Becker; see:
27468         http://mail.gnu.org/archive/html/bug-bison/2003-03/msg00017.html
27469
27470 2003-03-03  Paul Eggert  <eggert@twinsun.com>
27471             Bruno Haible  <bruno@clisp.org>
27472
27473         * lib/mbswidth.h: Include <wchar.h>. Needed for UnixWare 7.1.1.
27474         Reported by John Hughes, see
27475         http://mail.gnu.org/archive/html/bug-bison/2003-02/msg00030.html
27476
27477 2003-02-20  Bruno Haible  <bruno@clisp.org>
27478
27479         * MODULES.html.sh (func_all_modules): Add poll.
27480
27481 2003-02-19  Paolo Bonzini  <bonzini@gnu.org>
27482
27483         * modules/poll: New file.
27484
27485 2003-02-19  Paolo Bonzini  <bonzini@gnu.org>
27486
27487         * lib/poll_.h: New file.
27488         * lib/poll.c: New file.
27489
27490 2003-02-19  Paolo Bonzini  <bonzini@gnu.org>
27491
27492         * m4/poll.m4: New file.
27493
27494 2003-02-18  Paolo Bonzini  <bonzini@gnu.org>
27495
27496         * modules/mathl: New file.
27497
27498 2003-02-18  Paolo Bonzini  <bonzini@gnu.org>
27499
27500         * lib/mathl.h: New file.
27501         * lib/acosl.c: New file.
27502         * lib/asinl.c: New file.
27503         * lib/atanl.c: New file.
27504         * lib/ceill.c: New file.
27505         * lib/cosl.c: New file.
27506         * lib/expl.c: New file.
27507         * lib/floorl.c: New file.
27508         * lib/frexpl.c: New file.
27509         * lib/ldexpl.c: New file.
27510         * lib/logl.c: New file.
27511         * lib/sincosl.c: New file.
27512         * lib/sinl.c: New file.
27513         * lib/sqrtl.c: New file.
27514         * lib/tanl.c: New file.
27515         * lib/trigl.c: New file.
27516         * lib/trigl.h: New file.
27517
27518 2003-02-18  Paolo Bonzini  <bonzini@gnu.org>
27519
27520         * m4/mathl.m4: New file.
27521
27522 2003-02-18  Bruno Haible  <bruno@clisp.org>
27523
27524         * MODULES.html.sh (func_all_modules): Add mathl.
27525
27526 2003-02-17  Bruno Haible  <bruno@clisp.org>
27527
27528         * modules/mkdtemp: New module.
27529         * MODULES.html.sh (func_all_modules): Add it.
27530
27531 2003-02-17  Bruno Haible  <bruno@clisp.org>
27532
27533         * m4/mkdtemp.m4: New file, from GNU gettext with modifications.
27534
27535 2003-02-17  Bruno Haible  <bruno@clisp.org>
27536
27537         * lib/mkdtemp.h: New file, from GNU gettext.
27538         * lib/mkdtemp.c: New file, from GNU gettext.
27539
27540 2003-02-02  Jim Meyering  <jim@meyering.net>
27541
27542         * m4/regex.m4 (jm_INCLUDED_REGEX): Detect broken re_search in
27543         e.g. glibc-2.2.93.
27544
27545 2003-01-31  Bruno Haible  <bruno@clisp.org>
27546
27547         * m4/rename.m4 (vb_FUNC_RENAME): Add a redirection from 'rename' to
27548         'rpl_rename'.
27549         * m4/strnlen.m4 (gl_FUNC_STRNLEN): Add a redirection from 'strnlen' to
27550         'rpl_strnlen'.
27551         * m4/strtod.m4 (gl_FUNC_STRTOD): Add a redirection from 'strtod' to
27552         'rpl_strtod'.
27553         * m4/utime.m4 (jm_FUNC_UTIME): Add a redirection from 'utime' to
27554         'rpl_utime'.
27555
27556 2003-01-31  Bruno Haible  <bruno@clisp.org>
27557
27558         * lib/rename.c: #undef rename before defining rpl_rename.
27559         * lib/strnlen.c: #undef strnlen, define rpl_strnlen instead of strnlen.
27560
27561 2003-01-30  Bruno Haible  <bruno@clisp.org>
27562
27563         * modules/vasnprintf, modules/vasprintf: New modules.
27564         * MODULES.html.sh (func_all_modules): Add them.
27565
27566 2003-01-30  Bruno Haible  <bruno@clisp.org>
27567
27568         * m4/signed.m4: New file, from GNU gettext.
27569         * m4/longdouble.m4: New file, from GNU gettext.
27570         * m4/wchar_t.m4: New file, from GNU gettext.
27571         * m4/wint_t.m4: New file, from GNU gettext.
27572         * m4/vasnprintf.m4: New file.
27573         * m4/vasprintf.m4: New file.
27574
27575 2003-01-30  Bruno Haible  <bruno@clisp.org>
27576
27577         * lib/printf-args.h: New file, from GNU gettext.
27578         * lib/printf-args.c: New file, from GNU gettext.
27579         * lib/printf-parse.h: New file, from GNU gettext.
27580         * lib/printf-parse.c: New file, from GNU gettext.
27581         * lib/vasnprintf.h: New file, from GNU gettext.
27582         * lib/vasnprintf.c: New file, from GNU gettext.
27583         * lib/asnprintf.c: New file, from GNU gettext.
27584         * lib/vasprintf.h: New file, from GNU gettext with modifications.
27585         * lib/vasprintf.c: New file, from GNU gettext.
27586         * lib/asprintf.c: New file, from GNU gettext.
27587
27588 2003-01-29  Bruno Haible  <bruno@clisp.org>
27589
27590         * modules/stpncpy: New module.
27591         * MODULES.html.sh (func_all_modules): Add it.
27592
27593 2003-01-29  Bruno Haible  <bruno@clisp.org>
27594
27595         * m4/stpncpy.m4: New file.
27596
27597 2003-01-29  Bruno Haible  <bruno@clisp.org>
27598
27599         * lib/stpncpy.h: New file, from GNU gettext with modifications.
27600         * lib/stpncpy.c: New file, from GNU gettext with modifications.
27601
27602 2003-01-28  Bruno Haible  <bruno@clisp.org>
27603
27604         * modules/c-ctype: New module.
27605         * MODULES.html.sh (func_all_modules): Add it.
27606
27607 2003-01-28  Bruno Haible  <bruno@clisp.org>
27608
27609         * lib/c-ctype.h: New file, from GNU gettext, with changes suggested by
27610         Paul Eggert.
27611         * lib/c-ctype.c: New file, from GNU gettext, with changes suggested by
27612         Paul Eggert.
27613
27614 2003-01-27  Bruno Haible  <bruno@clisp.org>
27615
27616         * modules/xsetenv: New module.
27617         * MODULES.html.sh (func_all_modules): Add it.
27618
27619 2003-01-27  Bruno Haible  <bruno@clisp.org>
27620
27621         * lib/xsetenv.h: New file, from GNU gettext.
27622         * lib/xsetenv.c: New file, from GNU gettext.
27623
27624 2003-01-23  Jim Meyering  <jim@meyering.net>
27625
27626         * m4/dirfd.m4 (UTILS_FUNC_DIRFD): Correct typo: s/-1/no/ that kept this
27627         from working on systems without dirfd (at least Irix and OSF1/Tru64).
27628
27629 2003-01-23  Bruno Haible  <bruno@clisp.org>
27630
27631         * modules/minmax: New module.
27632         * MODULES.html.sh (func_all_modules): Add it.
27633
27634 2003-01-23  Bruno Haible  <bruno@clisp.org>
27635
27636         * lib/minmax.h: New file, from GNU gettext, with comments from Paul
27637         Eggert.
27638
27639 2003-01-22  Bruno Haible  <bruno@clisp.org>
27640
27641         * modules/exit: New module.
27642         * MODULES.html.sh (func_all_modules): Add it.
27643
27644 2003-01-22  Bruno Haible  <bruno@clisp.org>
27645
27646         * lib/exit.h: New file, from GNU gettext.
27647
27648 2003-01-19  Bruno Haible  <bruno@clisp.org>
27649
27650         * gnulib-tool: Recognize option --extract-maintainer.
27651         (func_get_maintainer): New function.
27652         * modules/*: Add Maintainer entry.
27653
27654 2003-01-16  Jim Meyering  <jim@meyering.net>
27655
27656         * m4/regex.m4: The `regex' struct is both input and output.
27657         Initialize it before each use.  Patch by Tim Waugh.
27658
27659 2003-01-16  Bruno Haible  <bruno@clisp.org>
27660
27661         * MODULES.html.sh: Add a table of contents. Add the module name as
27662         leftmost column. Add hyperlinks.
27663
27664 2003-01-15  Bruno Haible  <bruno@clisp.org>
27665
27666         * m4/md5.m4 (gl_MD5): Require AC_C_INLINE.
27667
27668 2003-01-15  Bruno Haible  <bruno@clisp.org>
27669
27670         * m4/longlong.m4 (jm_AC_TYPE_LONG_LONG): Also test the LL suffix.
27671         * m4/ulonglong.m4 (jm_AC_TYPE_UNSIGNED_LONG_LONG): Also test the ULL
27672         suffix.
27673
27674 2003-01-15  Bruno Haible  <bruno@clisp.org>
27675
27676         * m4/alloca.m4 (gl_FUNC_ALLOCA): Invoke AC_EGREP_CPP prerequisites.
27677
27678 2003-01-15  Bruno Haible  <bruno@clisp.org>
27679
27680         * lib/stpcpy.h (stpcpy): Use ANSI C function declarations.
27681         * lib/strcase.h (strcasecmp, strncasecmp): Likewise.
27682
27683 2003-01-14  Jim Meyering  <jim@meyering.net>
27684
27685         * lib/same.c (same_name): Tweak a comment.
27686
27687 2003-01-14  Bruno Haible  <bruno@clisp.org>
27688
27689         * lib/same.c (same_name): Reorder tests so as to avoid calling stat()
27690         when a string comparison is sufficient.
27691
27692 2003-01-14  Bruno Haible  <bruno@clisp.org>
27693
27694         * lib/readtokens.c (readtoken): Cast character to 'unsigned char', not
27695         'unsigned int'.
27696
27697 2003-01-14  Bruno Haible  <bruno@clisp.org>
27698
27699         * lib/hash-pjw.c: Add comment about low quality of this function.
27700
27701 2003-01-13  Bruno Haible  <bruno@clisp.org>
27702
27703         * modules/stpcpy: Distribute lib/stpcpy.h.
27704         * modules/setenv: Depend on alloca. Distribute lib/setenv.h.
27705
27706 2003-01-13  Bruno Haible  <bruno@clisp.org>
27707
27708         * modules/*: Add a description.
27709         * modules/strpbrk: Fix Makefile.am snippet.
27710         * modules/strtoimax: Fix dependencies.
27711         * modules/strtoumax: Likewise.
27712
27713 2003-01-13  Bruno Haible  <bruno@clisp.org>
27714
27715         * gnulib-tool (func_create_testdir): Substitute lib_OBJECTS.
27716         * modules/alloca (Makefile.am): All object files depend on alloca.h.
27717         * modules/stdbool (Makefile.am): All object files depend on stdbool.h.
27718
27719 2003-01-13  Bruno Haible  <bruno@clisp.org>
27720
27721         * gnulib-tool (func_create_testdir): Store config/* files in the main
27722         directory.
27723         * config.rpath: Move to ...
27724         * config/config.rpath: ... here.
27725         * modules/gettext: Contains config/config.rpath, not config.rpath.
27726         * modules/iconv: Likewise.
27727
27728 2003-01-12  Paul Eggert  <eggert@twinsun.com>
27729
27730         Finish renaming getstr -> getdelim2 and readline -> readlinebuffer,
27731         to avoid collisions with libcurses and libreadline.
27732
27733         * m4/getstr.m4: Remove.
27734         * m4/getline.m4 (gl_PREREQ_GETLINE): Require AC_HEADER_STDC.
27735
27736 2003-01-12  Paul Eggert  <eggert@twinsun.com>
27737
27738         Finish renaming getstr -> getdelim2 and readline -> readlinebuffer,
27739         to avoid collisions with libcurses and libreadline.
27740
27741         * lib/Makefile.am (libfetish_a_SOURCES): Remove getstr.c, getstr.h.
27742         * lib/getstr.h, getstr.c: Remove.
27743         * lib/getline.c: Include "getline.h", to check interface.
27744         Move body of old getstr.c here: this defines MIN_CHUNK and
27745         declares getdelim2, which is renamed from getstr.
27746         (getline, getdelim): Adjust to renaming of getstr -> getdelim2.
27747
27748         * lib/linebuffer.c (readlinebuffer): Renamed from readline.
27749         All uses changed.
27750         * lib/linebuffer.h: Likewise.
27751         (readline): Remove backward-compatibility macro.
27752
27753 2003-01-12  Paul Eggert  <eggert@twinsun.com>
27754
27755         Finish renaming getstr -> getdelim2 and readline -> readlinebuffer,
27756         to avoid collisions with libcurses and libreadline.
27757         * getstr: Remove.
27758         * MODULES.html.sh: Remove getstr.
27759         * modules/getline: Depend on unlocked-io, not getstr.
27760
27761 2003-01-12  Jim Meyering  <jim@meyering.net>
27762
27763         * lib/makepath.c: Don't test HAVE_ERRNO_H.  It's not necessary.
27764
27765 2003-01-10  Bruno Haible  <bruno@clisp.org>
27766
27767         * modules/alloca: Change Makefile.am requirements. Simplify Include
27768         requirements. Add lib/alloca_.h to file list.
27769
27770 2003-01-10  Bruno Haible  <bruno@clisp.org>
27771
27772         * m4/alloca.m4 (gl_FUNC_ALLOCA): Also define ALLOCA_H.
27773
27774 2003-01-10  Bruno Haible  <bruno@clisp.org>
27775
27776         * lib/alloca_.h: New file.
27777         * lib/getdate.y: Unconditionally include alloca.h.
27778         * lib/makepath.c: Likewise.
27779         * lib/setenv.c: Likewise.
27780         * lib/userspec.c: Likewise.
27781
27782 2003-01-09  Karl Berry  <karl@gnu.org>
27783
27784         * MODULES.html.sh: include `dirname $0` in PATH, to find
27785         gnulib-tool.
27786
27787 2003-01-09  Bruno Haible  <bruno@clisp.org>
27788
27789         * modules/stdbool: Change configure.ac, Makefile.am requirements.
27790         Simplify Include requirements. Add lib/stdbool.h.in to file list.
27791
27792 2003-01-09  Bruno Haible  <bruno@clisp.org>
27793
27794         * m4/stdbool.m4 (AM_STDBOOL_H): New macro.
27795
27796 2003-01-09  Bruno Haible  <bruno@clisp.org>
27797
27798         * lib/stdbool.h.in: New file.
27799
27800 2003-01-09  Bruno Haible  <bruno@clisp.org>
27801
27802         * gnulib-tool (func_all_modules): Ignore files ending in ~.
27803         * MODULES.html.sh: Likewise.
27804
27805 2003-01-08  Jim Meyering  <jim@meyering.net>
27806
27807         * lib/full-write.c: Undefine and define-away `const' after inclusion
27808         of errno.h, not before.  Suggestion from Bruno Haible.
27809
27810 2003-01-08  Bruno Haible  <bruno@clisp.org>
27811
27812         * modules/full-read: Depend on full-write.
27813
27814 2003-01-08  Bruno Haible  <bruno@clisp.org>
27815
27816         * lib/safe-read.c: Include specification header first, to ensure its
27817         selfcontainedness.
27818         * lib/full-write.c: Likewise.
27819
27820 2003-01-07  Jim Meyering  <jim@meyering.net>
27821
27822         * lib/full-write.c: Rework so that it may serve to define full_read,
27823         too.
27824         * lib/full-read.c: Simply #define FULL_READ and include full-write.c.
27825
27826 2003-01-07  Bruno Haible  <bruno@clisp.org>
27827
27828         * lib/strtoimax.c: Include <stdint.h> as an alternative to
27829         <inttypes.h>.
27830         * lib/xstrtol.h: Likewise.
27831         * lib/xstrtoimax.c: Likewise.
27832         * lib/xstrtoumax.c: Likewise.
27833         * lib/human.h: Likewise.
27834
27835         * lib/tempname.c: Include <inttypes.h> too. Avoids a compilation error
27836         on systems that have <inttypes.h> but not <stdint.h>.
27837
27838 2003-01-07  Bruno Haible  <bruno@clisp.org>
27839
27840         * MODULES.html.sh: Add copyright notice.
27841         (missed_files): Omit CVS directory entries.
27842         (func_module): Make it work with sed-3.02.
27843         * MODULES.txt: Remove file.
27844
27845 2003-01-06  Jim Meyering  <jim@meyering.net>
27846
27847         * lib/version-etc.c: Update year in translatable copyright string.
27848
27849 2003-01-03  Karl Berry  <karl@gnu.org>
27850
27851         * config/config.{guess,sub}: update from prep.
27852
27853 2003-01-02  Karl Berry  <karl@gnu.org>
27854
27855         * doc/COPYING.DOC: belatedly updated to 1.2.
27856
27857 2003-01-01  Karl Berry  <karl@gnu.org>
27858
27859         * gnulib-tool (func_verify_module): report module name $module in
27860         error message, not $1.
27861         * gnulib-tool (create-testdir): don't complain if destdir couldn't
27862         be created, only if it doesn't exist.
27863         * gnulib-tool (last_checkin_date): don't expand the $Date here.
27864
27865 2002-12-31  Paul Eggert  <eggert@twinsun.com>
27866
27867         * m4/memcoll.m4 (gl_MEMCOLL): Require AC_FUNC_MEMCMP.
27868
27869 2002-12-31  Paul Eggert  <eggert@twinsun.com>
27870
27871         * lib/memcoll.c (memcoll): Fall back on a simple algorithm using
27872         memcmp if strcoll doesn't work.
27873
27874 2002-12-31  Bruno Haible  <bruno@clisp.org>
27875
27876         * lib/utime.c (utime_null): No need to call ftruncate if the file was
27877         nonempty.
27878
27879 2002-12-31  Bruno Haible  <bruno@clisp.org>
27880
27881         * lib/memcoll.c (STRCOLL): New macro.
27882         (memcoll): Use it.
27883
27884 2002-12-31  Bruno Haible  <bruno@clisp.org>
27885
27886         * lib/localcharset.h: New file.
27887         * lib/localcharset.c: Include it.
27888         * lib/unicodeio.c: Likewise.
27889
27890 2002-12-31  Bruno Haible  <bruno@clisp.org>
27891
27892         * lib/getstr.h (getstr): Define, to avoid clash with libcurses.
27893         * lib/linebuffer.h (readline): Define, to avoid clash with libreadline.
27894
27895 2002-12-31  Bruno Haible  <bruno@clisp.org>
27896
27897         * lib/getline.h: Include <stddef.h>, for size_t.
27898
27899         * lib/unicodeio.h: Include <stddef.h>, for size_t.
27900         * lib/unicodeio.c: Don't include <stddef.h>.
27901
27902 2002-12-31  Bruno Haible  <bruno@clisp.org>
27903
27904         * lib/getdate.y (get_date): Test HAVE_STRUCT_TM_TM_ZONE, not
27905         HAVE_TM_ZONE.
27906
27907 2002-12-24  Karl Berry  <karl@gnu.org>
27908
27909         * config/config.guess: update from prep.
27910
27911 2002-12-24  Bruno Haible  <bruno@clisp.org>
27912
27913         General infrasructure.
27914         * m4/README: Rewritten.
27915         * m4/onceonly.m4: New file.
27916         * m4/onceonly_2_57.m4: New file.
27917
27918         Module atexit.
27919         * m4/atexit.m4: New file.
27920
27921         Module strtod.
27922         * m4/strtod.m4: New file.
27923
27924         Module strtol.
27925         * m4/strtol.m4: New file.
27926
27927         Module strtoul.
27928         * m4/strtoul.m4: New file.
27929
27930         Module memchr.
27931         * m4/memchr.m4: New file.
27932
27933         Module memcmp.
27934         * m4/memcmp.m4 (gl_PREREQ_MEMCMP): New macro.
27935         (jm_FUNC_MEMCMP): Invoke it.
27936
27937         Module memcpy.
27938         * m4/memcpy.m4: New file.
27939
27940         Module memmove.
27941         * m4/memmove.m4: New file.
27942
27943         Module memset.
27944         * m4/memset.m4: New file.
27945
27946         Module strcspn.
27947         * m4/strcspn.m4: New file.
27948
27949         Module strpbrk.
27950         * m4/strpbrk.m4: New file.
27951
27952         Module strstr.
27953         * m4/strstr.m4: New file.
27954
27955         Module strerror.
27956         * m4/strerror.m4: New file.
27957
27958         Module mktime.
27959         * m4/mktime.m4: Renamed from jm-mktime.m4.
27960         (gl_PREREQ_MKTIME): New macro.
27961         (gl_FUNC_MKTIME): Renamed from jm_FUNC_MKTIME. Invoke gl_PREREQ_MKTIME.
27962
27963         Module malloc.
27964         * m4/malloc.m4 (gl_PREREQ_MALLOC): New macro.
27965         (jm_FUNC_MALLOC): Use AC_FUNC_MALLOC. Invoke gl_PREREQ_MALLOC.
27966         Don't define HAVE_DONE_WORKING_MALLOC_CHECK, since nothing uses it.
27967
27968         Module realloc.
27969         * m4/realloc.m4 (gl_PREREQ_REALLOC): New macro.
27970         (jm_FUNC_REALLOC): Use AC_FUNC_REALLOC. Invoke gl_PREREQ_REALLOC.
27971         Don't define HAVE_DONE_WORKING_REALLOC_CHECK, since nothing uses it.
27972
27973         Module strftime.
27974         * m4/tm_gmtoff.m4: New file, extracted from strftime.m4.
27975         * m4/strftime.m4 (_jm_STRFTIME_PREREQS): Use AC_FUNC_STRFTIME.
27976         Don't test for bcopy (we are not emacs). Invoke AC_TYPE_MBSTATE_T and
27977         gl_TM_GMTOFF.
27978         (_jm_STRFTIME_PREREQS, jm_FUNC_GNU_STRFTIME): Use onceonly macros.
27979
27980         Module xalloc.
27981         * m4/xalloc.m4: New file.
27982
27983         Module alloca.
27984         * m4/alloca.m4: New file.
27985
27986         Module putenv.
27987         * m4/putenv.m4 (gl_PREREQ_PUTENV): New macro.
27988         (jm_FUNC_PUTENV): Invoke it.
27989
27990         Module setenv.
27991         * m4/setenv.m4 (gt_FUNC_SETENV): New macro.
27992         (gt_CHECK_VAR_DECL): Fix quoting error that led to infinite loop in m4
27993         when invoked twice.
27994         (gt_PREREQ_SETENV, gt_PREREQ_UNSETENV): New macros, replacing old
27995         gt_FUNC_SETENV.
27996
27997         Module memrchr.
27998         * m4/memrchr.m4: New file.
27999
28000         Module stpcpy.
28001         * m4/stpcpy.m4: New file.
28002
28003         Module strcase.
28004         * m4/strcase.m4: New file.
28005
28006         Module strdup.
28007         * m4/strdup.m4: New file.
28008
28009         Module strnlen.
28010         * m4/strnlen.m4: New file.
28011
28012         Module strndup.
28013         * m4/strndup.m4: New file.
28014
28015         Module xstrtod.
28016         * m4/xstrtod.m4: New file.
28017
28018         Module xstrtol.
28019         * m4/xstrtol.m4: New file.
28020
28021         Module getdate.
28022         * m4/getdate.m4: New file.
28023
28024         Module unlocked-io.
28025         * m4/unlocked-io.m4: Renamed from jm-glibc-io.m4.
28026         (jm_FUNC_GLIBC_UNLOCKED_IO): Invoke AC_GNU_SOURCE. Use onceonly macros.
28027         * m4/jm-glibc-io.m4n: Remove file.
28028
28029         Module long-options.
28030         * m4/long-options.m4: New file.
28031
28032         Module md5.
28033         * m4/md5.m4: New file.
28034
28035         Module sha.
28036         * m4/sha.m4: New file.
28037
28038         Module getstr.
28039         * m4/getstr.m4: New file.
28040
28041         Module getline.
28042         * m4/getline.m4 (gl_PREREQ_GETLINE): New macro.
28043         (AM_FUNC_GETLINE): Invoke AC_GNU_SOURCE. Use <stdlib.h>, not
28044         <sys/types.h>, for size_t. Use the function name gnu_getline, not
28045         simply getline. Infoke gl_PREREQ_GETLINE.
28046
28047         Module obstack.
28048         * m4/obstack.m4: New file.
28049
28050         Module hash.
28051         * m4/hash.m4: New file.
28052
28053         Module readtokens.
28054         * m4/readtokens.m4: New file.
28055
28056         Module strverscmp.
28057         * m4/strverscmp.m4: New file.
28058
28059         Module stdbool.
28060         * m4/stdbool.m4 (AC_HEADER_STDBOOL): Add test for _Bool. Needed for
28061         OSF/1.
28062
28063         Module strtoll.
28064         * m4/strtoll.m4: New file.
28065
28066         Module strtoull.
28067         * m4/strtoull.m4: New file.
28068
28069         Module strtoimax.
28070         * m4/strtoimax.m4: New file.
28071
28072         Module strtoumax.
28073         * m4/strtoumax.m4: New file.
28074
28075         Module xstrtoimax.
28076         * m4/xstrtoimax.m4 (jm_XSTRTOIMAX): Renamed from
28077         jm_AC_PREREQ_XSTRTOIMAX.
28078         Moved the strtol prerequisites to strtol.m4.
28079         Moved the strtoll prerequisites to strtoll.m4.
28080         Moved the strtoimax prerequisites to strtoimax.m4.
28081
28082         Module xstrtoumax.
28083         * m4/xstrtoumax.m4 (jm_XSTRTOUMAX): Renamed from
28084         jm_AC_PREREQ_XSTRTOUMAX.
28085         Moved the strtoul prerequisites to strtoul.m4.
28086         Moved the strtoull prerequisites to strtoull.m4.
28087         Moved the strtoumax prerequisites to strtoumax.m4.
28088
28089         Module chown.
28090         * m4/chown.m4 (gl_PREREQ_CHOWN): New macro.
28091         (jm_FUNC_CHOWN): Use AC_FUNC_CHOWN. Invoke gl_PREREQ_CHOWN.
28092
28093         Module dup2.
28094         * m4/dup2.m4: New file.
28095
28096         Module ftruncate.
28097         * m4/ftruncate.m4 (gl_PREREQ_FTRUNCATE): New macro.
28098         (jm_FUNC_FTRUNCATE): Use AC_REPLACE_FUNCS. Invoke gl_PREREQ_FTRUNCATE.
28099
28100         Module getgroups.
28101         * m4/getgroups.m4 (gl_PREREQ_GETGROUPS): New macro.
28102         (jm_FUNC_GETGROUPS): Use AC_FUNC_GETGROUPS. Invoke gl_PREREQ_GETGROUPS.
28103
28104         Module gettimeofday.
28105         * m4/gettimeofday.m4 (gl_PREREQ_GETTIMEOFDAY): New macro.
28106         (AC_FUNC_GETTIMEOFDAY_CLOBBER): Use onceonly macros. Invoke
28107         gl_PREREQ_GETTIMEOFDAY.
28108
28109         Module mkdir.
28110         * m4/mkdir-slash.m4 (gl_PREREQ_MKDIR): New macro.
28111         (UTILS_FUNC_MKDIR_TRAILING_SLASH): Invoke gl_PREREQ_MKDIR.
28112
28113         Module mkstemp.
28114         * m4/mkstemp.m4 (gl_PREREQ_MKSTEMP): New macro.
28115         (jm_PREREQ_TEMPNAME): New macro, from prereq.m4. Also invoke
28116         jm_AC_TYPE_UINTMAX_T.
28117         (UTILS_FUNC_MKSTEMP): Invoke gl_PREREQ_MKSTEMP and jm_PREREQ_TEMPNAME.
28118
28119         Module stat.
28120         * m4/stat.m4 (gl_PREREQ_STAT): New macro.
28121         (jm_FUNC_STAT): Use AC_FUNC_STAT. Invoke gl_PREREQ_STAT.
28122
28123         Module lstat.
28124         * m4/lstat.m4 (gl_PREREQ_LSTAT): New macro.
28125         (jm_FUNC_LSTAT): Use AC_FUNC_LSTAT. Invoke gl_PREREQ_LSTAT.
28126
28127         Module timespec.
28128         * m4/timespec.m4 (gl_TIMESPEC): New macro.
28129         (jm_CHECK_TYPE_STRUCT_TIMESPEC): Add check for <sys/time.h>.
28130         * m4/st_mtim.m4: Indentation.
28131
28132         Module nanosleep.
28133         * m4/nanosleep.m4 (gl_PREREQ_NANOSLEEP): New macro.
28134         (jm_FUNC_NANOSLEEP): Add check for <sys/time.h>. Invoke
28135         gl_PREREQ_NANOSLEEP.
28136
28137         Module regex.
28138         * m4/regex.m4 (jm_PREREQ_REGEX): New macro.
28139         (jm_INCLUDED_REGEX): Invoke jm_PREREQ_REGEX.
28140         (gl_REGEX): New macro.
28141
28142         Module rename.
28143         * m4/rename.m4 (gl_PREREQ_RENAME): New macro.
28144         (vb_FUNC_RENAME): Invoke gl_PREREQ_RENAME.
28145
28146         Module rmdir.
28147         * m4/rmdir.m4: New file.
28148
28149         Module utime.
28150         * m4/utimbuf.m4 (jm_CHECK_TYPE_STRUCT_UTIMBUF): Use onceonly macros.
28151         * m4/utime.m4 (gl_PREREQ_UTIME): New macro.
28152         (jm_FUNC_UTIME): Invoke gl_PREREQ_UTIME.
28153
28154         Module dirname.
28155         * m4/dirname.m4: New file.
28156
28157         Module getopt.
28158         * m4/getopt.m4: New file.
28159
28160         Module unistd-safer.
28161         * m4/unistd-safer.m4: New file.
28162
28163         Module fnmatch.
28164         * m4/fnmatch.m4 (_AC_FUNC_FNMATCH_IF): Include <stdlib.h>, for exit()
28165         declaration.
28166         (gl_PREREQ_FNMATCH_EXTRA): New macro.
28167         (gl_FUNC_FNMATCH_POSIX): New macro.
28168         (gl_FUNC_FNMATCH_GNU): Renamed from AC_FUNC_FNMATCH_GNU. Invoke
28169         gl_PREREQ_FNMATCH_EXTRA. Use the function name gnu_fnmatch, not
28170         simply fnmatch.
28171
28172         Module exclude.
28173         * m4/exclude.m4: New file.
28174
28175         Module human.
28176         * m4/human.m4: New file.
28177
28178         Module acl.
28179         * m4/acl.m4: Nop.
28180
28181         Module backupfile.
28182         * m4/backupfile.m4: New file.
28183         * m4/d-ino.m4: Indentation.
28184
28185         Module fsusage.
28186         * m4/fsusage.m4 (gl_FSUSAGE): New macro.
28187         (jm_STATFS_TRUNCATES): New macro, from coreutils-4.5.4/configure.ac.
28188         (gl_PREREQ_FSUSAGE_EXTRA): New macro.
28189
28190         Module dirfd.
28191         * m4/dirfd.m4 (UTILS_FUNC_DIRFD): Invoke some AC_EGREP_CPP
28192         requirements.
28193
28194         Module euidaccess.
28195         * m4/euidaccess.m4: New file.
28196
28197         Module file-type.
28198         * m4/file-type.m4: New file.
28199
28200         Module fileblocks.
28201         * m4/fileblocks.m4: New file.
28202
28203         Module filemode.
28204         * m4/filemode.m4: New file.
28205
28206         Module isdir.
28207         * m4/isdir.m4: New file.
28208
28209         Module lchown.
28210         * m4/lchown.m4 (gl_PREREQ_LCHOWN): New macro.
28211         (jm_FUNC_LCHOWN): Invoke gl_PREREQ_LCHOWN.
28212
28213         Module makepath.
28214         * m4/makepath.m4: New file.
28215
28216         Module modechange.
28217         * m4/modechange.m4: New file.
28218
28219         Module mountlist.
28220         * m4/mountlist.m4: New file.
28221         * m4/ls-mntd-fs.m4 (jm_LIST_MOUNTED_FILESYSTEMS): Use onceonly macros.
28222         Indentation.
28223
28224         Module path-concat.
28225         * m4/path-concat.m4: New file.
28226
28227         Module pathmax.
28228         * m4/pathmax.m4: New file.
28229
28230         Module same.
28231         * m4/same.m4: New file.
28232
28233         Module save-cwd.
28234         * m4/save-cwd.m4: New file.
28235
28236         Module savedir.
28237         * m4/savedir.m4: New file.
28238
28239         Module xgetcwd.
28240         * m4/xgetcwd.m4: New file.
28241         * m4/getcwd.m4 (AC_FUNC_GETCWD_NULL): Use onceonly macros.
28242
28243         Module xreadlink.
28244         * m4/xreadlink.m4: New file.
28245
28246         Module safe-read.
28247         * m4/safe-read.m4: New file.
28248
28249         Module safe-write.
28250         * m4/safe-write.m4: New file.
28251
28252         Module closeout.
28253         * m4/closeout.m4: New file.
28254
28255         Module stdio-safer.
28256         * m4/stdio-safer.m4: New file.
28257
28258         Module getpass.
28259         * m4/getpass.m4: New file.
28260
28261         Module getugroups.
28262         * m4/getugroups.m4: New file.
28263
28264         Module group-member.
28265         * m4/group-member.m4 (gl_PREREQ_GROUP_MEMBER): New macro.
28266         (jm_FUNC_GROUP_MEMBER): Invoke AC_GNU_SOURCE, gl_PREREQ_GROUP_MEMBER.
28267
28268         Module idcache.
28269         * m4/idcache.m4: New file.
28270
28271         Module userspec.
28272         * m4/userspec.m4: New file.
28273
28274         Module gettime.
28275         * m4/clock_time.m4: New file.
28276         * m4/gettime.m4: New file.
28277
28278         Module settime.
28279         * m4/settime.m4: New file.
28280
28281         Module posixtm.
28282         * m4/posixtm.m4: New file.
28283
28284         Module gethostname.
28285         * m4/gethostname.m4: New file.
28286
28287         Module canon-host.
28288         * m4/canon-host.m4: New file.
28289
28290         Module gettext.
28291         * m4/codeset.m4: New file, from gettext-0.11.5.
28292         * m4/gettext.m4: New file, from gettext-0.11.5.
28293         * m4/glibc21.m4: New file, from gettext-0.11.5.
28294         * m4/iconv.m4: New file, from gettext-0.11.5.
28295         * m4/intdiv0.m4: New file, from gettext-0.11.5.
28296         * m4/inttypes-pri.m4: New file, from gettext-0.11.5.
28297         * m4/inttypes.m4: New file, from gettext-0.11.5.
28298         * m4/inttypes_h.m4: New file, from gettext-0.11.5 with modifications.
28299         * m4/isc-posix.m4: New file, from gettext-0.11.5.
28300         * m4/lcmessage.m4: New file, from gettext-0.11.5.
28301         * m4/lib-ld.m4: New file, from gettext-0.11.5.
28302         * m4/lib-link.m4: New file, from gettext-0.11.5.
28303         * m4/lib-prefix.m4: New file, from gettext-0.11.5.
28304         * m4/progtest.m4: New file, from gettext-0.11.5.
28305         * m4/stdint_h.m4: New file, from gettext-0.11.5 with modifications.
28306         * m4/uintmax_t.m4: New file, from gettext-0.11.5 with modifications.
28307         * m4/ulonglong.m4: New file, from gettext-0.11.5 with modifications.
28308
28309         Module localcharset.
28310         * m4/localcharset.m4: New file.
28311
28312         Module hard-locale.
28313         * m4/hard-locale.m4: New file.
28314
28315         Module mbswidth.
28316         * m4/mbswidth.m4 (gl_MBSWIDTH): Renamed from jm_PREREQ_MBSWIDTH. Use
28317         onceonly macros.
28318         * m4/mbrtowc.m4: Add comment.
28319
28320         Module memcasecmp.
28321         * m4/memcasecmp.m4: New file.
28322
28323         Module memcoll.
28324         * m4/memcoll.m4: New file.
28325
28326         Module unicodeio.
28327         * m4/unicodeio.m4: New file.
28328
28329         Module rpmatch.
28330         * m4/rpmatch.m4: New file.
28331
28332         Module yesno.
28333         * m4/yesno.m4: New file.
28334
28335         Module exitfail.
28336         * m4/exitfail.m4: New file.
28337
28338         Module c-stack.
28339         * m4/c-stack.m4 (gl_C_STACK): New macro.
28340         (jm_PREREQ_C_STACK): Check for <sys/time.h>. Use onceonly macros.
28341
28342         Module error.
28343         * m4/error.m4 (gl_ERROR): New macro.
28344         (jm_PREREQ_ERROR): Use onceonly macros.
28345
28346         Module fatal.
28347         * m4/fatal.m4: New file.
28348
28349         Module getloadavg.
28350         * m4/getloadavg.m4 (AC_FUNC_GETLOADAVG): Use onceonly macros.
28351         (gl_FUNC_GETLOADAVG, gl_PREREQ_GETLOADAVG): New macros.
28352
28353         Module getpagesize.
28354         * m4/getpagesize.m4: New file.
28355
28356         Module getusershell.
28357         * m4/getusershell.m4: New file.
28358
28359         Module physmem.
28360         * m4/physmem.m4: New file.
28361
28362         Module posixver.
28363         * m4/posixver.m4: New file.
28364
28365         Module quotearg.
28366         * m4/quotearg.m4: New file.
28367
28368         Module quote.
28369         * m4/quote.m4: New file.
28370
28371         Module readutmp.
28372         * m4/readutmp.m4: New file, based on jm_PREREQ_READUTMP from prereq.m4.
28373
28374         Module sig2str.
28375         * m4/sig2str.m4: New file.
28376
28377         Other.
28378         * m4/longlong.m4 (jm_AC_TYPE_UNSIGNED_LONG_LONG): Remove, moved to
28379         ulonglong.m4.
28380         * m4/intmax_t.m4: New file.
28381         * m4/d-type.m4: Indentation.
28382         * m4/jm-macros.m4: Update.
28383         * m4/prereq.m4 (jm_PREREQ): Update.
28384         (jm_PREREQ_ADDEXT): Remove, obsoleted by backupfile.m4.
28385         (jm_PREREQ_CANON_HOST): Remove, obsoleted by canon-host.m4.
28386         (jm_PREREQ_DIRNAME): Remove, obsoleted by dirname.m4.
28387         (jm_PREREQ_EXCLUDE): Remove, obsoleted by exclude.m4.
28388         (jm_PREREQ_GETPAGESIZE): Remove, obsoleted by getpagesize.m4.
28389         (jm_PREREQ_HARD_LOCALE): Remove, obsoleted by hard-locale.m4.
28390         (jm_PREREQ_HASH): Remove, obsoleted by hash.m4.
28391         (jm_PREREQ_HUMAN): Remove, obsoleted by human.m4.
28392         (jm_PREREQ_MEMCHR): Remove, obsoleted by memchr.m4.
28393         (jm_PREREQ_PHYSMEM): Remove, obsoleted by physmem.m4.
28394         (jm_PREREQ_POSIXVER): Remove, obsoleted by posixver.m4.
28395         (jm_PREREQ_QUOTEARG): Remove, obsoleted by quotearg.m4.
28396         (jm_PREREQ_READUTMP): Remove, obsoleted by readutmp.m4.
28397         (jm_PREREQ_REGEX): Remove, obsoleted by regex.m4.
28398         (jm_PREREQ_STRNLEN): Remove, obsoleted by strnlen.m4.
28399         (jm_PREREQ_TEMPNAME): Remove, obsoleted by mkstemp.m4.
28400         (jm_PREREQ_XGETCWD): Remove, obsoleted by xgetcwd.m4.
28401         (jm_PREREQ_XREADLINK): Remove, obsoleted by xreadlink.m4.
28402         * m4/readdir.m4 (jm_FUNC_READDIR): Use onceonly macros.
28403
28404 2002-12-24  Bruno Haible  <bruno@clisp.org>
28405
28406         * MODULES.txt: Update according to m4/ changes.
28407
28408         Module gettext.
28409         * config.rpath: New file, from gettext-0.11.5.
28410
28411         * modules/*: New module descriptions.
28412         * gnulib-tool: New file.
28413         * MODULES.html.sh: New file.
28414
28415 2002-12-21  Karl Berry  <karl@gnu.org>
28416
28417         * doc/fdl.texi: update to version 1.2.
28418
28419 2002-12-19  Karl Berry  <karl@gnu.org>
28420
28421         * config/config.guess: update from prep.
28422
28423 2002-12-18  Bruno Haible  <bruno@clisp.org>
28424
28425         * m4/strftime.m4 (_jm_STRFTIME_PREREQS): Don't test for localtime_r.
28426         * m4/jm-mktime.m4 (jm_FUNC_MKTIME): Likewise.
28427
28428 2002-12-17  Bruno Haible  <bruno@clisp.org>
28429
28430         * m4/mbswidth.m4 (jm_PREREQ_MBSWIDTH): Remove checks for limits.h,
28431         stdlib.h, string.h.
28432
28433 2002-12-17  Bruno Haible  <bruno@clisp.org>
28434
28435         * lib/canon-host.c (strdup): Remove unused declaration.
28436
28437         * lib/fsusage.c: Include full_read.h.
28438         (get_fs_usage): Use full_read instead of safe_read.
28439
28440         * lib/utime.c (utime_null): Use SAFE_READ_ERROR.
28441
28442 2002-12-12  Karl Berry  <karl@gnu.org>
28443
28444         * config/config.guess: update from prep.
28445
28446 2002-12-11  Bruno Haible  <bruno@clisp.org>
28447
28448         * m4/setenv.m4: New file, from gettext-0.11.5.
28449
28450 2002-12-11  Bruno Haible  <bruno@clisp.org>
28451
28452         * lib/setenv.h: Rewritten to cope with systems that have setenv() but
28453         not unsetenv().
28454         * lib/setenv.c, unsetenv.c: Taken from glibc-2.2.4 with the following
28455         modifications:
28456
28457         2002-12-11  Bruno Haible  <bruno@clisp.org>
28458
28459                 * setenv.c (alloca): Fall back to malloc.
28460                 (freea): New macro.
28461                 (setenv): Use freea() to free memory allocated with alloca().
28462
28463         2002-11-13  Bruno Haible  <bruno@clisp.org>
28464
28465                 * setenv.c (compar_fn_t, __add_to_environ, setenv): Use ANSI C
28466                 function declarations.
28467                 * unsetenv.c (unsetenv): Likewise.
28468
28469         2002-03-04  Bruno Haible  <bruno@clisp.org>
28470
28471                 Portability to AIX 4.3.3.
28472                 * unsetenv.c: New file, extracted from setenv.c.
28473                 * setenv.c: Move the unsetenv() function to unsetenv.c.
28474
28475         2001-12-20  Bruno Haible  <bruno@clisp.org>
28476
28477                 * setenv.c (__add_to_environ): Don't call realloc(NULL,...),
28478                 use malloc instead. For SunOS 4.
28479
28480         2001-12-11  Bruno Haible  <bruno@clisp.org>
28481
28482                 * setenv.c: Declare alloca.
28483                 (compar_fn_t): New typedef.
28484                 (KNOWN_VALUE, STORE_VALUE): Use it.
28485
28486         * lib/Makefile.am (libfetish_a_SOURCES): Add setenv.c, unsetenv.c,
28487         setenv.h.
28488
28489 2002-12-10  Paul Eggert  <eggert@twinsun.com>
28490
28491         Port exclude.c and exclude.h to more non-GNU systems, e.g. Solaris 7.
28492         * lib/exclude.h (EXCLUDE_ANCHORED, EXCLUDE_INCLUDE, EXCLUDE_WILDCARDS):
28493         Choose values that are less likely to collide with system fnmatch
28494         options.
28495         * lib/exclude.c (FNM_CASEFOLD, FNM_LEADING_DIR): Define to 0 if not
28496         defined (e.g., a pure POSIX system).
28497         (EXCLUDE_macros_do_not_collide_with_FNM_macros): Use FNM_PATHNAME
28498         instead of FNM_FILE_NAME, for compatibility with pure POSIX sytems.
28499
28500 2002-12-06  Paul Eggert  <eggert@twinsun.com>
28501
28502         Undo the 2001-07-02 change for jm-glibc-io, as it was too much of
28503         a pain in practice to deal with generated m4 files.  This change
28504         goes together with the 2002-12-04 unlocked-io.h change in ../lib.
28505
28506         * m4/Makefile.am.in (Makefile.am): Don't mention jm-glibc-io.m4n
28507         and jm-glibc-io.m4, as they are no longer a special case.
28508         * m4/jm-glibc-io.m4: Rename from jm-glibc-io.m4n, and remove the
28509         kludge and the auto-generation stuff.  Check only whether the
28510         functions are declared, not whether they exist, since older hosts
28511         that don't declare the functions can't use the optimization anyway.
28512
28513 2002-12-06  Jim Meyering  <jim@meyering.net>
28514
28515         * lib/error.c: Be consistent: change `#ifndef _LIBC' to `#if !_LIBC'.
28516
28517         Merge in changes from libc's misc/error.c, in preparation
28518         for the merge of gnulib's changes back into libc.
28519
28520         * lib/error.c (_): Define only if not already defined.
28521         Move definition to follow all #include directives.
28522         Include unlocked-io.h only if !_LIBC.
28523         [_LIBC]: Include <libio/libioP.h>.
28524         [USE_IN_LIBIO]: Include <libio/iolibio.h>
28525         (fflush): Tweak definition to use INTUSE.
28526         (putc): Define.
28527
28528 2002-12-05  Paul Eggert  <eggert@twinsun.com>
28529
28530         * lib/alloca.c [defined emacs]: Include "lisp.h".
28531         (xalloc_die) [defined emacs]: New macro.
28532         (free) [defined emacs && defined EMACS_FREE]: Define to EMACS_FREE.
28533         [! defined emacs]: Include <xalloc.h>.
28534         (POINTER_TYPE) [!defined POINTER_TYPE]: New macro.
28535         (pointer): Typedef to POINTER_TYPE *.
28536         (malloc): Remove decl; we now always use xmalloc.
28537         (alloca): Use old-style definition, since Emacs needs this.
28538         Check for arithmetic overflow when computing combined size.
28539
28540 2002-12-04  Paul Eggert  <eggert@twinsun.com>
28541
28542         Do not generate unlocked-io.h automatically, since it's easier to
28543         maintain it by hand.
28544
28545         * lib/unlocked-io.h: New file, from GNU diffutils,
28546         but with proper copyright notice and attribution.
28547         * lib/gen-uio: Remove.
28548         * lib/Makefile.am: Add copyright notice.
28549         (libfetish_a_SOURCES): Add unlocked-io.h.
28550         (BUILT_SOURCES, all-local): Remove unlocked-io.h.
28551         (DISTCLEANFILES, io_functions): Remove macros.
28552         (EXTRA_DIST): Remove gen_uio.
28553         (unlocked-io.h): Remove rule.
28554
28555 2002-12-04  Jim Meyering  <jim@meyering.net>
28556
28557         Reflect the fact that stat.c and lstat.c are no longer generated.
28558         * lib/Makefile.am (BUILT_SOURCES): Remove stat.c and lstat.c.
28559         (DISTCLEANFILES): Likewise.
28560         (EXTRA_DIST): Likewise.
28561         (all_local): Don't depend on stat.c or lstat.c.
28562         (stat.c, lstat.c): Remove rules.
28563         (EXTRA_DIST): Remove xstat.in.
28564
28565         * lib/xstat.in: Remove file.  Contents moved into stat.c.
28566         * lib/stat.c: New file.  Contents mostly from xstat.in.
28567         * lib/stat.c: Rework so that it may serve to define rpl_lstat, too.
28568         * lib/lstat.c: New file. Simply #define LSTAT and include stat.c.
28569
28570         * lib/safe-read.c: Rework so that it may serve to define safe_write,
28571         too.
28572         * lib/safe-write.c: Simply #define SAFE_WRITE and include safe-read.c.
28573
28574 2002-12-03  Jim Meyering  <jim@meyering.net>
28575
28576         * lib/safe-read.c, safe-write.c: Change variable names and comments,
28577         but not semantics, to minimize the differences between these two files.
28578         (safe_read): Change comment to mention SAFE_READ_ERROR.
28579
28580         * lib/safe-read.c (IS_EINTR): Define.
28581         (safe_read): Use IS_EINTR in place of in-function cpp directives.
28582
28583 2002-12-02  Jim Meyering  <jim@meyering.net>
28584
28585         * lib/safe-read.c (EINTR): Define.
28586         (CHAR_BIT, TYPE_SIGNED, TYPE_MINIMUM, TYPE_MAXIMUM): Define.
28587         (INT_MAX): Provide fallback.
28588         (safe_read): Rewrite to iterate IFF the read fails with EINTR.
28589
28590         * lib/safe-read.h (SAFE_READ_ERROR): Define.
28591
28592 2002-12-02  Bruno Haible  <bruno@clisp.org>
28593
28594         * lib/safe-write.c (CHAR_BIT, TYPE_SIGNED, TYPE_MINIMUM, TYPE_MAXIMUM):
28595         Define, taken from safe-read.c.
28596         (INT_MAX): Provide fallback.
28597         (safe_write): Rewrite to iterate IFF the write fails with EINTR.
28598         * lib/safe-write.h (SAFE_WRITE_ERROR): Define.
28599
28600         * lib/safe-read.c (EINTR): Remove definition.
28601         (safe_read): Don't use EINTR if it is absent.
28602
28603 2002-12-01  Jim Meyering  <jim@meyering.net>
28604
28605         * lib/safe-read.c: (safe_read): Also exit the loop when read returns
28606         zero.
28607         (CHAR_BIT, TYPE_SIGNED, TYPE_MINIMUM, TYPE_MAXIMUM, INT_MAX): Define.
28608
28609 2002-11-27  Paul Eggert  <eggert@twinsun.com>
28610
28611         * lib/hash.c (hash_lookup, hash_get_first, hash_get_next,
28612         hash_find_entry, hash_rehash): Replace `if (limit <= value) abort ();'
28613         with `if (! (value < limit)) abort ();', for readability.
28614
28615 2002-11-26  Karl Berry  <karl@gnu.org>
28616
28617         * lib/strdup.c: copy from libc again, with jim's ok.
28618         * lib/.cppi-disable: re-add strdup.c
28619
28620 2002-11-25  Karl Berry  <karl@gnu.org>
28621
28622         * lib/strtoll.c: copy from libc, meaning we now #include <strtol.c>
28623         instead of "strtol.c".
28624
28625 2002-11-25  Karl Berry  <karl@gnu.org>
28626
28627         * config/install-sh: update from automake for variable quoting, $0 in
28628         error msgs, etc.
28629
28630         * config/srclist.txt ($LIBCSRC/time/mktime.c lib gpl): new entry.
28631         * config/srclist.txt ($LIBCSRC/sysdeps/generic/strtoll.c lib gpl): new
28632         entry.
28633
28634 2002-11-25  Jim Meyering  <jim@meyering.net>
28635
28636         * lib/mktime.c: Sync from libc, now that it has the latest fix.
28637
28638 2002-11-24  Karl Berry  <karl@gnu.org>
28639
28640         * lib/error.c, getopt.c, getopt.h, getopt1.c, obstack.c, regex.c,
28641         regex.h, strdup.c, strtoll.c, tempname.c: change license to gpl.
28642
28643 2002-11-24  Jim Meyering  <jim@meyering.net>
28644
28645         Update from coreutils:
28646
28647         * lib/mktime.c: Merge in changes from libc.
28648
28649         Avoid a link-time failure on some Linux systems.
28650         * lib/mktime.c (STATIC): Define to be empty (_LIBC) or `static'
28651         (otherwise).
28652         (__mon_yday): Declare with the STATIC attribute.
28653         (__mktime_internal): Likewise.
28654         Based on a report from Greg Schafer.
28655
28656 2002-11-23  Jim Meyering  <jim@meyering.net>
28657
28658         * lib/sig2str.c (str2signum, sig2str): Avoid a warning from gcc:
28659         Use `unsigned', not `int', as type of index.
28660
28661         * lib/xstat.in [@BEGIN_LSTAT_ONLY@]: Include <string.h>.
28662
28663         * lib/fsusage.c: Remove unneeded parentheses around operands of
28664         `defined'.
28665
28666 2002-11-22  Paul Eggert  <eggert@twinsun.com>
28667
28668         * lib/quotearg.h: Allow multiple inclusion by surrounding with
28669         "#ifndef QUOTEARG_H_".  Include <stddef.h>, for size_t,
28670         so that we can be included first.
28671         (PARAMS): Remove; we now assume C89 or later.  All uses removed.
28672         * lib/quotearg.c: Include quotearg.h immediately after config.h.
28673         No need to include stddef.h or sys/types.h any more.
28674         Surround local include files with "", not "<>".
28675         Assume HAVE_LIMITS_H unconditionally, as we assume C89.
28676         Similarly, assume HAVE_C_BACKSLASH_A, CHAR_BIT, UCHAR_MAX, UINT_MAX,
28677         HAVE_STDLIB_H, HAVE_STRING_H, STDC_HEADERS.
28678         (HAVE_MBSINIT): Undef if !HAVE_MBRTOWC.
28679         (mbsinit): Define to 1 if !defined mbsinit && !HAVE_MBSINIT.
28680         (ISPRINT): Remove; no longer needed now that we assume C89.
28681
28682         (clone_quoting_options, quotearg_buffer, quotearg_n_options):
28683         Preserve errno.
28684
28685         (quotearg_buffer_restyled, quotearg_n, quotearg_n_style,
28686         quotearg_char): Use SIZE_MAX rather than
28687         (size_t) -1 when we are talking about "infinity".
28688
28689         (quotearg_buffer_restyled): Fix bug when quoting trigraphs.
28690
28691 2002-11-22  Paul Eggert  <eggert@twinsun.com>
28692
28693         * lib/hash.c: Avoid use of <assert.h>, as the GNU Coding Standards
28694         hint that one should use `if (! x) abort ();' rather than `assert
28695         (x);', and anyway it's one less thing to worry about configuring.
28696         (hash_lookup, hash_get_first, hash_get_next, hash_find_entry,
28697         hash_rehash, hash_insert): Use abort rather than assert.
28698
28699 2002-11-22  Bruno Haible  <bruno@clisp.org>
28700
28701         * lib/safe-read.h: Assume C89. Add comments.
28702         (safe_read): Change return type to size_t.
28703         * lib/safe-read.c (safe_read): Change return type to size_t. Handle
28704         byte counts > SSIZE_MAX correctly.
28705         * lib/safe-write.h: New file.
28706         * lib/safe-write.c: New file.
28707         * lib/full-read.h: New file.
28708         * lib/full-read.c: New file.
28709         * lib/full-write.h: Assume C89. Add comments.
28710         * lib/full-write.c: Include safe-write.h.
28711         (full_write): Rewritten to use safe_write.
28712         Suggested by Jim Meyering and Paul Eggert.
28713
28714 2002-11-21  Jim Meyering  <jim@meyering.net>
28715
28716         * lib/strdup.c (strdup): Tweak comment and initial #if/#include.
28717
28718         Merge in changes from the coreutils.
28719
28720         2002-09-25  Paul Eggert  <eggert@twinsun.com>
28721         * lib/fsusage.c [! HAVE_INTTYPES_H && HAVE_STDINT_H] Include
28722         <stdint.h>.
28723         (UINTMAX_MAX) [!defined UINTMAX_MAX]: New macro.
28724         (PROPAGATE_ALL_ONES): Work even if X is unsigned and narrower than
28725         int.  Work more efficiently if X is the same width as uintmax_t.
28726         Do not compare X to -1, to avoid bogus compiler warning.
28727         (get_fs_usage): (uintmax_t) -1 -> UINTMAX_MAX to avoid a cast.
28728         Don't assume that f_frsize and f_bsize are the same type.
28729
28730         * lib/mountlist.c: #undef MNT_IGNORE before defining it, to avoid
28731         warning on FreeBSD.
28732
28733         * lib/makepath.c (make_path): Restore umask *before* creating the final
28734         component.
28735         (make_path): Minor reformatting.
28736
28737         * lib/xmalloc.c: Adjust to work with new autoconf macros,
28738         AC_FUNC_MALLOC and AC_FUNC_REALLOC: test #ifndef
28739         HAVE_MALLOC/HAVE_REALLOC.
28740
28741         * lib/mountlist.h (ME_DUMMY): Don't count entries of type `auto' as
28742         dummy ones.  At least on GNU/Linux systems, `auto' means something
28743         else.
28744         From Michael Stone.
28745
28746 2002-11-21  Bruno Haible  <bruno@clisp.org>
28747
28748         Remove case insensitive option matching.
28749         * lib/argmatch.h (argcasematch): Remove declaration.
28750         (ARGCASEMATCH): Remove macro.
28751         (__xargmatch_internal): Remove case_sensitive argument.
28752         (XARGMATCH): Update.
28753         (XARGCASEMATCH): Remove macro.
28754         * lib/argmatch.c (argmatch): Renamed from __argmatch_internal. Remove
28755         case_sensitive argument.
28756         (argcasematch): Remove function.
28757         (__xargmatch_internal): Remove case_sensitive argument.
28758         (main): Use XARGMATCH instead of XARGCASEMATCH.
28759
28760         * lib/xmalloc.c: Change compile-time error message. Add comment about
28761         required autoconf version.
28762
28763 2002-11-20  Paul Eggert  <eggert@twinsun.com>
28764
28765         Merge argmatch cleanups from Bison.  Assume C89.
28766
28767         * lib/argmatch.c: Include config.h here, not in argmatch.h.
28768         Include stdlib.h, for EXIT_FAILURE.
28769         Always include <string.h>, since we assume C89.
28770         (EXIT_FAILURE): Remove pre-C89 bug workaround.
28771         * lib/argmatch.h: Do not include <config.h> or <sys/types.h>.
28772         Include <stddef.h> instead, since it's all we need for size_t.
28773         (PARAMS): Remove.  All uses removed.
28774         (ARRAY_CARDINALITY): Do not bother to #undef.
28775         (ARRAY_CARDINALITY, ARGMATCH, ARGCASEMATCH, invalid_arg,
28776         ARGMATCH_VALID, XARGMATCH, XARGCASEMATCH):
28777         Remove unnecessary parentheses.
28778         (ARGMATCH_VALID, XARGMATCH, XARGCASEMATCH):
28779         Insert necessary parentheses.
28780         (ARGMATCH_CONSTRAINT, ARGMATCH_VERIFY): New macros.
28781         (ARGMATCH_ASSERT): Use ARGMATCH_CONSTRAINT.
28782
28783 2002-11-19  Bruno Haible  <bruno@clisp.org>
28784
28785         * lib/mbswidth.c: Include mbswidth.h right at the beginning.
28786         * lib/mbswidth.h: Include <stddef.h>, for size_t.
28787
28788         * lib/mbswidth.h (PARAMS): Remove macro.
28789         (mbswidth, mbsnwidth): Use ANSI C function declarations.
28790         * lib/mbswidth.c (mbswidth, mbsnwidth): Likewise.
28791
28792         * lib/gcd.h (PARAMS): Remove macro.
28793         (gcd): Use ANSI C function declarations.
28794         * lib/gcd.c (gcd): Likewise.
28795
28796 2002-11-15  Bruno Haible  <bruno@clisp.org>
28797
28798         * lib/strcspn.c: Include <stddef.h>.
28799         (strcspn): Use ANSI C function declaration. Change return type to
28800         size_t. Use NULL.
28801         * lib/strpbrk.c: Minimize diffs to glibc. Include <stddef.h>.
28802         (strpbrk): Use NULL.
28803         * lib/strpbrk.h (PARAMS): Remove macro.
28804         (strpbrk): Use ANSI C function declaration.
28805         * lib/strstr.c: Don't include <sys/types.h>.
28806         * lib/strstr.h (PARAMS): Remove macro.
28807         (strstr): Use ANSI C function declarations.
28808
28809 2002-11-14  Karl Berry  <karl@gnu.org>
28810
28811         * config/mkinstalldirs: `do' on separate line, instead of
28812         `for var; do'.
28813
28814 2002-11-06  Bruno Haible  <bruno@clisp.org>
28815
28816         * lib/gcd.h (gcd): Change argument type to 'unsigned long'.
28817         * lib/gcd.c (gcd): Likewise.
28818
28819 2002-11-05  Bruno Haible  <bruno@clisp.org>
28820
28821         * lib/gcd.h: New file, from gettext-0.11.5.
28822         * lib/gcd.c: New file, from gettext-0.11.5.
28823
28824 2002-11-05  Bruno Haible  <bruno@clisp.org>
28825
28826         * lib/error.c [!_LIBC]: Include gettext.h instead of <libintl.h>.
28827         * lib/getopt.c [!_LIBC]: Include gettext.h instead of <libintl.h>.
28828         * lib/obstack.c [!_LIBC]: Include gettext.h instead of <libintl.h>.
28829         * lib/regex.c [!_LIBC]: Include gettext.h instead of <libintl.h>.
28830
28831         * lib/argmatch.c: Include gettext.h instead of <locale.h> and
28832         <libintl.h>.
28833         * lib/makepath.c: Include gettext.h instead of <locale.h> and
28834         <libintl.h>.
28835
28836         * lib/closeout.c: Include gettext.h instead of <libintl.h>.
28837         * lib/human.c: Include gettext.h instead of <libintl.h>.
28838         * lib/quotearg.c: Include gettext.h instead of <libintl.h>.
28839         * lib/rpmatch.c: Include gettext.h instead of <libintl.h>.
28840         * lib/unicodeio.c: Include gettext.h instead of <libintl.h>.
28841         * lib/userspec.c: Include gettext.h instead of <libintl.h>.
28842         * lib/version-etc.c: Include gettext.h instead of <libintl.h>.
28843         * lib/xmalloc.c: Include gettext.h instead of <libintl.h>.
28844         (textdomain): Remove definition.
28845         * lib/xmemcoll.c: Include gettext.h instead of <libintl.h>.
28846
28847         * lib/long-options.c: Remove include of <libintl.h> and definition of
28848         _.
28849         * lib/same.c: Remove include of <libintl.h> and definition of _.
28850
28851 2002-11-04  Owen Taylor  <otaylor@redhat.com>
28852
28853         * lib/config.charset: A few additions for Solaris.
28854
28855 2002-11-04  Bruno Haible  <haible@clisp.cons.org>
28856
28857         Make it possible to build libcharset with CC=gcc CFLAGS="-x c++".
28858         * lib/localcharset.c (locale_charset): Declare as extern "C".
28859
28860 2002-11-04  Bruno Haible  <haible@clisp.cons.org>
28861
28862         * lib/config.charset: msdos in uk_UA uses CP1125.
28863
28864 2002-11-04  Bruno Haible  <bruno@clisp.org>
28865
28866         * lib/stpcpy.h: New file, from GNU gettext-0.11.5.
28867         * lib/strcase.h: New file, from GNU gettext-0.11.5.
28868         * lib/strpbrk.h: New file, from GNU gettext-0.11.5.
28869         * lib/strstr.h: New file, from GNU gettext-0.11.5.
28870         * lib/xgetcwd.h: New file, from GNU gettext-0.11.5.
28871
28872 2002-11-04  Bruno Haible  <bruno@clisp.org>
28873
28874         * lib/localcharset.c (locale_charset): Don't return an empty string.
28875
28876 2002-11-04  Bruno Haible  <bruno@clisp.org>
28877
28878         * lib/localcharset.c (get_charset_aliases): Add more Windows specific
28879         aliases.
28880
28881 2002-11-04  Bruno Haible  <bruno@clisp.org>
28882
28883         * lib/config.charset: Update for newest glibc. Add canonical names
28884         ISO-8859-14, KOI8-T, TCVN5712-1, GEORGIAN-PS.
28885
28886 2002-11-04  Bruno Haible  <bruno@clisp.org>
28887
28888         * lib/config.charset: Add support for NetBSD.
28889
28890 2002-11-04  Bruno Haible  <bruno@clisp.org>
28891
28892         * lib/config.charset [msdosdjgpp]: For Russian, use CP866.
28893
28894 2002-11-01  Bruno Haible  <bruno@clisp.org>
28895
28896         * configure.in: Add AC_CONFIG_AUX_DIR call.
28897         (AC_OUTPUT): Add m4/Makefile, lib/Makefile. Remove doc/Makefile,
28898         test/Makefile.
28899         * Makefile.in (subdirs): Add m4, lib. Remove doc, test.
28900
28901 2002-09-28  Karl Berry  <karl@gnu.org>
28902
28903         * config/srclist.txt: can't copy install-sh/mkinstalldirs from
28904         installed automake until the next release, since changes have been
28905         made.
28906
28907 2002-09-25  Karl Berry  <karl@gnu.org>
28908
28909         * lib/strdup.c: copy from libc/string (via ../config/srclist*).
28910         * lib/getopt*: copy from libc/posix.
28911         * lib/gettext.h: copy from gettext.
28912         * lib/.cppi-disable: add strdup.c, gettext.h.
28913
28914 2002-09-25  Karl Berry  <karl@gnu.org>
28915
28916         * config/srclist.txt: enable gettext.h check.
28917         * config/config.{guess,sub}: update from prep.
28918         * config/depcomp, install-sh, mdate-sh, missing, mkinstalldirs: update
28919                 from automake 1.6.3.
28920         See srclist*.
28921
28922 2002-08-23  Stefan Monnier  <monnier@cs.yale.edu>
28923
28924         * regex.c (PATFETCH): Remove the translating fetch.
28925         (PATFETCH_RAW): Rename to PATFETCH.
28926         (set_image_of_range): New fun.
28927         (SET_RANGE_TABLE_WORK_AREA): Use it.
28928         (regex_compile): Don't translate the pattern chars so eagerly.
28929         Only do it when inserting an `exactn' bytecode or when handling
28930         a char-range.
28931         (mutually_exclusive_p): Avoid empty statement.
28932
28933 2002-07-06  Jim Meyering  <meyering@lucent.com>
28934
28935         * m4/README: Don't mention Makefile.am.in.
28936         Outline how I've tested changes to .m4 files.  Yep, it's a pain.
28937
28938 2002-07-01  Jim Meyering  <meyering@lucent.com>
28939
28940         * lib/c-stack.c: Include sys/time.h.
28941         From Volker Borchert.
28942
28943 2002-06-26  Paul Eggert  <eggert@twinsun.com>
28944
28945         * m4/fnmatch.m4 (_AC_LIBOBJ_FNMATCH): Check for btowc.
28946
28947 2002-06-26  Paul Eggert  <eggert@twinsun.com>
28948
28949         * lib/fnmatch.c, fnmatch_loop.c (WIDE_CHAR_SUPPORT):
28950         New macro.  Use it uniformly instead of
28951         (defined HAVE_WCTYPE_H && defined HAVE_WCHAR_H).
28952         It also uses HAVE_BTOWC, to fix a porting bug on Solaris 2.5.1
28953         reported by Vin Shelton.
28954
28955 2002-06-22  Paul Eggert  <eggert@twinsun.com>
28956
28957         * lib/c-stack.h (segv_handler, c_stack_action) [! defined SA_SIGINFO]:
28958         Do not assume SA_SIGINFO behavior.
28959         Bug reported by Jim Meyering on NetBSD 1.5.2.
28960
28961 2002-06-22  Jim Meyering  <meyering@lucent.com>
28962
28963         * m4/c-stack.m4: New file, from diffutils-2.8.2.
28964         * m4/prereq.m4 (jm_PREREQ): Add jm_PREREQ_C_STACK.
28965
28966         * m4/jm-macros.m4 (jm_CHECK_ALL_TYPES): Don't require AC__GNU_SOURCE,
28967         now that configure.ac uses AC_GNU_SOURCE.
28968         (jm_MACROS): Rename: jm_FUNC_FNMATCH to AC_FUNC_FNMATCH_GNU.
28969         * m4/prereq.m4 (jm_PREREQ_EXCLUDE): Likewise, wrt jm_FUNC_FNMATCH.
28970
28971         Update to latest tools.  Suggestions from Paul Eggert.
28972         * m4/stdbool.m4: New file, from diffutils-2.8.2.
28973         * m4/gnu-source.m4: Update from diffutils-2.8.2.
28974         * m4/fnmatch.m4: Likewise.
28975         * m4/prereq.m4: Change each use of AC_CHECK_HEADERS(stdbool.h)
28976         to AC_HEADER_STDBOOL
28977
28978 2002-06-22  Jim Meyering  <meyering@lucent.com>
28979
28980         * lib/fnmatch.c (ISASCII, ISPRINT): Undefine, to avoid warning about
28981         redefinition due to Solaris 2.6's definition in /usr/include/sys/euc.h.
28982
28983 2002-06-22  Jim Meyering  <meyering@lucent.com>
28984
28985         * lib/c-stack.c, lib/c-stack.h: New files, from diffutils-2.8.2.
28986
28987         * lib/exitfail.c, exitfail.h: Likewise.
28988         * lib/Makefile.am (libfetish_a_SOURCES): Add exitfail.c and exitfail.h.
28989
28990         * lib/Makefile.am (libfetish_a_SOURCES): Add fnmatch_.h in place
28991         of fnmatch.h.
28992         (EXTRA_DIST): Add fnmatch_loop.c.
28993         (libfetish_a_SOURCES): Add c-stack.c and c-stack.h.
28994
28995         * lib/fnmatch_loop.c: New file, from diffutils-2.8.2.
28996         * lib/fnmatch.c: Update from diffutils-2.8.2.
28997         * lib/fnmatch_.h: New file.  From diffutils-2.8.2.
28998         * lib/fnmatch.h: Remove file.
28999
29000 2002-06-21  Jim Meyering  <meyering@lucent.com>
29001
29002         * m4/c-bs-a.m4: Add comment, from diffutils-2.8.2.
29003         * m4/mbrtowc.m4: Likewise.
29004
29005         * m4/mbstate_t.m4: Update from diffutils-2.8.2.
29006         * m4/mbswidth.m4: Reflect name change:
29007         s/AC_MBSTATE_T/AC_TYPE_MBSTATE_T.
29008         * m4/prereq.m4 (jm_PREREQ_QUOTEARG): Likewise.
29009
29010         * m4/lib-link.m4: Update from gettext-0.11.2.
29011         * m4/gettext.m4: Likewise.
29012
29013         * m4/jm-macros.m4 (jm_CHECK_ALL_HEADERS): Check for hurd.h.
29014         From Alfred M. Szmidt.
29015
29016 2002-06-18  Paul Eggert  <eggert@twinsun.com>
29017
29018         * lib/file-type.h: Report an error if neither S_ISREG nor
29019         S_IFREG is defined, instead of using a test specific to glibc
29020         2.2.  This should be safe, since POSIX requires S_ISREG and
29021         Unix Version 7 had S_IFREG.  We don't need to check for
29022         <sys/types.h> since we don't use any symbols that it defines.
29023
29024 2002-06-15  Richard Dawe  <richdawe@bigfoot.com>
29025
29026         * lib/Makefile.am (lstat.c, stat.c, .sin.sed): Use t-$@, rather than
29027         $@-t, so that each temporary file name is unique and valid in the first
29028         8 characters, for operation under DOS.
29029
29030 2002-06-15  Paul Eggert  <eggert@twinsun.com>
29031
29032         * m4/jm-macros.m4 (jm_CHECK_ALL_TYPES): Check for st_author.
29033
29034 2002-06-15  Jim Meyering  <meyering@lucent.com>
29035
29036         Work even with DJGPP 2.03, which lacks support for symlinks.
29037         From Richard Dawe.
29038         * lib/xstat.in (S_ISLNK): Define to 0 if neither S_ISLNK nor S_IFLNK
29039         is defined.
29040         * lib/lchown.c (S_ISLNK): Likewise.
29041
29042 2002-06-15  Jim Meyering  <meyering@lucent.com>
29043
29044         * lib/file-type.h (FILE_TYPE_H): Guard entire contents with #ifndef.
29045         For GNU libc 2.2 and newer, ensure that <sys/types.h> and <sys/stat.h>
29046         have been included before this file.
29047
29048 2002-06-14  Jim Meyering  <meyering@lucent.com>
29049
29050         * lib/file-type.h: Use the version from diffutils-2.8.2.
29051         * lib/file-type.c: Likewise.
29052
29053 2002-06-07  Jim Meyering  <meyering@lucent.com>
29054
29055         * m4/prereq.m4 (jm_PREREQ_STAT): Check for sys/param.h and sys/mount.h.
29056         They're needed at least for NetBSD 1.5.2.
29057         ($statxfs_includes): Include those same headers.
29058         ($statxfs_includes): Include sys/vfs.h if available.
29059         ($statxfs_includes): Likewise for sys/statvfs.h.
29060         Check for the following members in both structs statfs and statvfs:
29061         f_basetype, f_type, f_fsid.__val, f_namemax, f_namelen.
29062
29063 2002-06-01  Jim Meyering  <meyering@lucent.com>
29064
29065         * m4/d-type.m4 (jm_CHECK_TYPE_STRUCT_DIRENT_D_TYPE): Rename macro:
29066         s/D_TYPE_IN_DIRENT/HAVE_STRUCT_DIRENT_D_TYPE/.
29067
29068 2002-05-28  Jim Meyering  <meyering@lucent.com>
29069
29070         * m4/readdir.m4 (jm_FUNC_READDIR): Undefine `mkdir', not `rmdir'.
29071         Reported by Volker Borchert.
29072
29073 2002-05-27  Jim Meyering  <meyering@lucent.com>
29074
29075         Fix a problem seen only on nonconforming systems whereby ls.c's
29076         use of localtime, and then of gettimeofday would cause trouble:
29077         the localtime call used to initialize rpl_gettimeofday's save
29078         mechanism would clobber ls's current local time information so
29079         that in any long listing the first file would always be listed
29080         with date 1970-01-01.  Analysis by Volker Borchert.
29081
29082         * lib/gettimeofday.c (localtime): Undefine.
29083         (rpl_localtime): New function.
29084
29085 2002-05-27  Jim Meyering  <meyering@lucent.com>
29086
29087         * m4/gettimeofday.m4 (AC_FUNC_GETTIMEOFDAY_CLOBBER): Also replace
29088         localtime.
29089
29090         * m4/readdir.m4 (jm_FUNC_READDIR): Undefine `rmdir' so we don't try to
29091         use the replacement function; it wouldn't resolve at link time.
29092         Reported by Volker Borchert.
29093
29094 2002-05-22  Jim Meyering  <meyering@lucent.com>
29095
29096         * lib/Makefile.am (libfetish_a_SOURCES): Add file-type.c and
29097         file-type.h.
29098         * lib/file-type.h: New file.
29099         * lib/file-type.c (file_type): New file/function.  Extracted from
29100         diffutils.
29101
29102 2002-04-30  Jim Meyering  <meyering@lucent.com>
29103
29104         * m4/prereq.m4 (jm_PREREQ): Add jm_PREREQ_STAT.
29105
29106 2002-04-29  Paul Eggert  <eggert@twinsun.com>
29107
29108         * m4/prereq.m4 (jm_PREREQ_SIG2STR): Remove; all callers changed.
29109
29110 2002-04-29  Paul Eggert  <eggert@twinsun.com>
29111
29112         * m4/prereq.m4 (jm_PREREQ_HARD_LOCALE): Check for stdlib.h.
29113         Do not check for alloca.h (no longer used) or stdbool.h (was never
29114         used?).  Add AM_C_PROTOTYPES since hard-locale.h uses it.
29115
29116 2002-04-29  Paul Eggert  <eggert@twinsun.com>
29117
29118         * lib/hard-locale.c: Upgrade to version used in GNU Diffutils 2.8.1.
29119
29120 2002-04-29  Jim Meyering  <meyering@lucent.com>
29121
29122         * m4/jm-macros.m4 (jm_MACROS): Remove use of AC_FUNC_STRNLEN.
29123         * m4/prereq.m4: Add jm_PREREQ_STRNLEN.
29124         Use AC_FUNC_STRNLEN here instead.
29125
29126         * m4/jm-macros.m4: Don't AC_REQUIRE([AC_PROG_CC_STDC]).
29127         With autoconf-2.53a, it's part of AC_PROG_CC.
29128
29129 2002-04-28  Paul Eggert  <eggert@twinsun.com>
29130
29131         * m4/jm-macros.m4 (jm_MACROS): Add AC_REPLACE_FUNCS(sig2str).
29132         * m4/prereq.m4 (jm_PREREQ): Add jm_PREREQ_SIG2STR.
29133
29134 2002-04-28  Paul Eggert  <eggert@twinsun.com>
29135
29136         * lib/sig2str.h, lib/sig2str.c: New files.
29137         * lib/Makefile.am (libfetish_a_SOURCES): Add sig2str.h.
29138
29139 2002-04-28  Paul Eggert  <eggert@twinsun.com>
29140
29141         * lib/sig2str.h (SIGNUM_BOUND): Do not use WTERMSIG, to avoid
29142         depending on <sys/wait.h> and WTERMSIG.  Default to 64 instead
29143         of 127, since 64 is the largest conceivable number for ancient
29144         nonstandard hosts.
29145         * lib/sig2str.c: Do not include <sys/wait.h>; no longer needed.
29146
29147 2002-04-28  Jim Meyering  <meyering@lucent.com>
29148
29149         * lib/sig2str.c (WTERMSIG): Remove definition (unused).
29150
29151 2002-04-24  Jim Meyering  <meyering@lucent.com>
29152
29153         * m4/prereq.m4 (jm_PREREQ_HARD_LOCALE): New macro.
29154         (jm_PREREQ): Use it.
29155
29156         * m4/getloadavg.m4: Check for these headers: locale.h unistd.h
29157         mach/mach.h fcntl.h.
29158         Check for this function: setlocale.
29159
29160 2002-04-24  Jim Meyering  <meyering@lucent.com>
29161
29162         * lib/gettext.h: New file, from Gettext.
29163         * lib/Makefile.am (INCLUDES): Remove -I../intl.
29164         (libfetish_a_SOURCES): Add gettext.h.
29165
29166 2002-04-16  Jim Meyering  <meyering@lucent.com>
29167
29168         * m4/prereq.m4 (jm_PREREQ_READUTMP): Also check for these members:
29169         ut_pid, ut_id, ut_exit.
29170
29171 2002-04-16  Jim Meyering  <meyering@lucent.com>
29172
29173         * lib/readutmp.h (UT_TYPE): Remove definition (now in who.c).
29174         (HAVE_STRUCT_XTMP_UT_EXIT, HAVE_STRUCT_XTMP_UT_ID): Define.
29175         (HAVE_STRUCT_XTMP_UT_PID, HAVE_STRUCT_XTMP_UT_TYPE): Define.
29176
29177 2002-04-12  Jim Meyering  <meyering@lucent.com>
29178
29179         * m4/ls-mntd-fs.m4 (checking for getmntinfo function...): Remove
29180         now-bogus check for f_type in sys/mount.h.  Instead, just test for the
29181         existence of the getmntinfo function.  Needed for Darwin 5.3.
29182
29183         * m4/dirfd.m4 (UTILS_FUNC_DIRFD): Also detect when dirfd is a macro.
29184         This is necessary at least on Darwin 5.3.
29185
29186         * m4/jm-macros.m4: Don't AC_REPLACE(strnlen), now that we use
29187         AC_FUNC_STRNLEN.  Otherwise, we'd end up putting two copies of
29188         strnlen.o in the library, and that makes some versions of ranlib
29189         object.
29190
29191 2002-04-12  Jim Meyering  <meyering@lucent.com>
29192
29193         * lib/dirfd.h (dirfd): Elide prototype if dirfd is a macro.
29194
29195 2002-04-09  Jim Meyering  <meyering@lucent.com>
29196
29197         * m4/malloc.m4: (jm_FUNC_MALLOC): Change the `checking ...' message
29198         to be more precise.  Rather than saying we're checking whether the
29199         function `works', say what we're testing.
29200         * m4/realloc.m4 (jm_FUNC_REALLOC): Likewise.
29201         Reported by Bruno Haible.
29202
29203 2002-03-10  Jim Meyering  <meyering@lucent.com>
29204
29205         * lib/makepath.c (make_path): Remove a comma from a diagnostic.
29206         Suggestion from Santiago Vila.
29207
29208 2002-03-08  Jim Meyering  <meyering@lucent.com>
29209
29210         * lib/rename.c: Mention that this wrapper is needed also on
29211         mips-dec-ultrix4.4 systems.
29212
29213 2002-03-02  Jim Meyering  <meyering@lucent.com>
29214
29215         * lib/gettime.c (gettime): Test HAVE_CLOCK_GETTIME,
29216         not HAVE_CLOCK_SETTIME.
29217
29218 2002-02-27  Paul Eggert  <eggert@twinsun.com>
29219
29220         * m4/jm-macros.m4 (jm_MACROS): Do not replace stime; no longer used.
29221         Check for clock_settime.
29222
29223 2002-02-27  Paul Eggert  <eggert@twinsun.com>
29224
29225         * lib/nanosleep.h: Rename to....
29226         * lib/timespec.h: New name for nanosleep.h.  All uses changed.
29227
29228         * lib/gettime.c: New file.
29229         * lib/settime.c: New file.
29230         * lib/stime.c: Remove.
29231
29232         * lib/Makefile.am (libfetish_a_SOURCES): Add gettime.c, settime.c,
29233         timespec.h.  Remove nanosleep.h.
29234
29235 2002-02-25  Paul Eggert  <eggert@twinsun.com>
29236
29237         * m4/acl.m4: New file.
29238         * m4/jm-macros.m4 (jm_MACROS): Require AC_FUNC_ACL.
29239         Do not check for acl or sys/acl.h, as AC_FUNC_ACL does that now.
29240
29241 2002-02-25  Paul Eggert  <eggert@twinsun.com>
29242
29243         * lib/acl.c, lib/acl.h: New files.
29244         * lib/Makefile.am (libfetish_a_SOURCES): Add acl.h, acl.c.
29245
29246 2002-02-24  Jim Meyering  <meyering@lucent.com>
29247
29248         * lib/strnlen.c (strnlen): Define-away/undef so that an inconsistent
29249         prototype in string.h (on at least AIX4.3.2.0 w/gcc-2.95.3) doesn't
29250         cause trouble.  Reported by Nelson Beebe.
29251
29252 2002-02-23  Paul Eggert  <eggert@twinsun.com>
29253
29254         * lib/path-concat.c (xpath_concat): Reorder code to pacify
29255         compilers that don't know that xalloc_die never returns.
29256
29257 2002-02-20  Jim Meyering  <meyering@lucent.com>
29258
29259         * lib/getdate.c: Regenerate using bison-1.33.
29260
29261 2002-02-17  Jim Meyering  <meyering@lucent.com>
29262
29263         * config/config.guess (main): Don't use `head -1'; it's no longer
29264         portable. Use `sed 1q' instead.
29265
29266 2002-02-16  gettextize  <bug-gnu-gettext@gnu.org>
29267
29268         * m4/codeset.m4: Upgrade to gettext-0.11.
29269         * m4/gettext.m4: Upgrade to gettext-0.11.
29270         * m4/glibc21.m4: Upgrade to gettext-0.11.
29271         * m4/iconv.m4: Upgrade to gettext-0.11.
29272         * m4/isc-posix.m4: Upgrade to gettext-0.11.
29273         * m4/lcmessage.m4: Upgrade to gettext-0.11.
29274         * m4/lib-ld.m4: New file, from gettext-0.11.
29275         * m4/lib-link.m4: New file, from gettext-0.11.
29276         * m4/lib-prefix.m4: New file, from gettext-0.11.
29277         * m4/progtest.m4: Upgrade to gettext-0.11.
29278
29279 2002-02-15  Paul Eggert  <eggert@twinsun.com>
29280
29281         * m4/prereq.m4 (jm_PREREQ_POSIXVER): New macro.
29282         (jm_PREREQ): Use it.
29283
29284 2002-02-15  Paul Eggert  <eggert@twinsun.com>
29285
29286         * lib/posixver.c, lib/posixver.h: New files.
29287         * lib/Makefile.am (libfetish_a_SOURCES): Add them.
29288
29289 2002-02-02  Paul Eggert  <eggert@twinsun.com>
29290             Bruno Haible  <bruno@clisp.org>
29291
29292         * lib/unicodeio.h (print_unicode_char): Add exit_on_error argument.
29293         (fwrite_success_callback): New declaration.
29294         * lib/unicodeio.c (unicode_to_mb): New function, extracted from
29295         print_unicode_char. Call failure callback instead of error.
29296         (fwrite_success_callback): New function.
29297         (exit_failure_callback): New function.
29298         (fallback_failure_callback): New function.
29299         (print_unicode_char): Call unicode_to_mb.
29300
29301 2002-01-26  Jim Meyering  <meyering@lucent.com>
29302
29303         * m4/jm-macros.m4 (jm_MACROS): Require autoconf-2.52g.
29304         * m4/strnlen.m4: Remove file, now that it's part of autoconf.
29305
29306 2002-01-26  Jim Meyering  <meyering@lucent.com>
29307
29308         * lib/Makefile.am (getdate$U.o): Depend on unlocked-io.h.
29309
29310 2002-01-22  Paul Eggert  <eggert@twinsun.com>
29311
29312         * m4/jm-macros.m4 (jm_MACROS): Require AC_FUNC_FSEEKO.
29313
29314 2002-01-22  Jim Meyering  <meyering@lucent.com>
29315
29316         * lib/Makefile.am (Makefile): Don't depend on $(BUILT_SOURCES).
29317         Otherwise, some versions of automake would omit the rule that makes
29318         Makefile from Makefile.in.
29319
29320 2002-01-21  Paul Eggert  <eggert@twinsun.com>
29321
29322         * lib/xmemcoll.h, lib/xmemcoll.c: New files.
29323         * lib/Makefile.am (libfetish_a_SOURCES): Add them.
29324         * lib/memcoll.c: Include errno.h, and declare errno if not defined.
29325         (memcoll): Set errno to zero if there is no error.
29326
29327         * lib/quotearg.c (quotearg_buffer_restyled):
29328         Fix bug with quoting buffers containing NUL when backslashing escapes.
29329         This bug was exposed by the other changes in this patch.
29330         (quotearg_n_options): New arg ARGSIZE.
29331         All callers changed.
29332         (quoting_options_from_style): New function.
29333         (quotearg_n_style): Use it.
29334         (quotearg_n_style_mem): New function.
29335
29336         * lib/quotearg.h (quotearg_n_style_mem): New function.
29337
29338 2002-01-19  Jim Meyering  <meyering@lucent.com>
29339
29340         * m4/jm-macros.m4 (jm_MACROS): Use AC_FUNC_STRNLEN.
29341         Remove useless quotes: DF_PROG="df".
29342         * m4/strnlen.m4: New file.
29343
29344 2002-01-16  Paul Eggert  <eggert@twinsun.com>
29345
29346         * lib/backupfile.c (ISDIGIT): Comment fix.
29347         * lib/getdate.y (ISDIGIT): Likewise.
29348         * lib/posixtm.c (ISDIGIT, year): Likewise.
29349         * lib/strverscmp.c (ISDIGIT): Likewise.
29350         * lib/userspec.c (ISDIGIT): Likewise.
29351
29352 2002-01-16  Jim Meyering  <meyering@lucent.com>
29353
29354         * lib/getdate.y: Add three semicolons, each just before a closing
29355         brace. Bison (as of version 1.31) no longer papers over that mistake.
29356
29357 2002-01-05  Jim Meyering  <meyering@lucent.com>
29358
29359         * lib/version-etc.c (version_etc_copyright): Update copyright year.
29360
29361 2001-12-19  Paul Eggert  <eggert@twinsun.com>
29362
29363         * lib/closeout.c (close_stdout_status): If ferror (stdout), do
29364         not silently exit merely because the output buffer happens to
29365         have nothing pending.
29366
29367 2001-12-18  Paul Eggert  <eggert@twinsun.com>
29368
29369         See the big note in ../ChangeLog.
29370         * lib/human.c (suffixes): Prefer K to k for 1024.
29371         (generate_suffix_backwards): New function.
29372         (human_readable_inexact): Use it.
29373         * lib/xstrtol.c (__xstrtol): If there is no number but there
29374         is a valid suffix, assume 1.  "MB" now means decimal, "MiB" binary.
29375         Accept 'K' as well as 'k'.
29376
29377 2001-12-15  Jim Meyering  <meyering@lucent.com>
29378
29379         * lib/regex.h (__restrict_arr): Update from libc.
29380
29381         * lib/mountlist.h (ME_REMOTE): Recognize file systems of type smbfs
29382         as `remote' if the name starts with `//'.  Suggested by Michael Stone.
29383         (STREQ): Define.
29384
29385 2001-12-14  Jim Meyering  <meyering@lucent.com>
29386
29387         * m4/jm-macros.m4 (jm_MACROS): Check for iswspace.
29388         Suggestion from Bruno Haible.
29389
29390 2001-12-10  Jim Meyering  <meyering@lucent.com>
29391
29392         * lib/linebuffer.c: Remove explicit declarations of xmalloc and
29393         xrealloc, Instead, include "xalloc.h".
29394         (initbuffer): Don't cast xmalloc return value to char*.
29395         (readline): Reword comment.
29396         Don't cast xrealloc return value to char*
29397         Return NULL, not 0.
29398
29399 2001-12-09  Jim Meyering  <meyering@lucent.com>
29400
29401         * lib/modechange.c (mode_compile): Add cast to avoid pedantic warning
29402         about `signed and unsigned type in conditional expression'.
29403         * lib/posixtm.c (posix_time_parse): Likewise.
29404
29405         * lib/xreadlink.c (xreadlink): Add cast to avoid a pedantic warning.
29406
29407         * lib/readtokens.c (readtoken): Declare an index to be of type unsigned
29408         to avoid a pedantic warning.
29409
29410         * lib/getstr.c: Don't include assert.h.
29411         (getstr): Remove warning-evoking assertions.
29412         Return -1 if offset parameter is out of bounds.
29413         Change the type of a local from int to size_t.
29414
29415         * lib/strftime.c (my_strftime_localtime_r): Include this function
29416         definition in the `#if ! HAVE_TM_GMTOFF' block.
29417
29418         * lib/xgethostname.c: Remove declarations of xmalloc and xrealloc.
29419         Include xalloc.h instead.
29420
29421 2001-12-02  Jim Meyering  <meyering@lucent.com>
29422
29423         * lib/tempname.c: Don't declare getenv, thus reverting the change of
29424         2001-11-18.  It's no longer necessary, now that stdlib.h is always
29425         included.
29426
29427         * lib/regex.c [!__BOUNDED_POINTERS__]: Define away __bounded,
29428         __unbounded, and __ptrvalue.  Reported by Uwe H. Steinfeld.
29429
29430 2001-11-30  Akim Demaille  <akim@epita.fr>
29431
29432         * lib/xstrdup.c: Include xalloc.h, so that xstrdup is declared
29433         before being defined.
29434
29435 2001-11-27  Paul Eggert  <eggert@twinsun.com>
29436
29437         * lib/quotearg.h (quotearg_n, quotearg_n_style):
29438         First arg is int, not unsigned.
29439         * lib/quotearg.c (quotearg_n, quotearg_n_style): Likewise.
29440         (SIZE_MAX, UINT_MAX): New macros.
29441         (quotearg_n_options): Abort if N is negative.
29442         Avoid overflow check on hosts where size_t is 64 bits and int
29443         is 32 bits, as overflow is impossible there.
29444         Fix off-by-one typo that caused unnecessary reallocation.
29445
29446 2001-11-27  Jim Meyering  <meyering@lucent.com>
29447
29448         * lib/tempname.c: Merge with version from libc.
29449         * lib/regex.c: Likewise.
29450
29451         * lib/tempname.c: Include stdlib.h unconditionally.  On some old
29452         systems for which STDC_HEADERS is 0, it was not included, resulting in
29453         a warning about an integer-to-pointer conversion problem with getenv.
29454         Reported by Volker Borchert.
29455
29456 2001-11-26  Jim Meyering  <meyering@lucent.com>
29457
29458         * lib/gtod.h: Remove file.
29459         * lib/Makefile.am (libfetish_a_SOURCES): Remove gtod.h.
29460         * lib/gettimeofday.c: Don't include gtod.h.
29461         (GTOD_init): Remove function.
29462         (rpl_gettimeofday): Do its job here instead, rather than aborting.
29463         Suggestion from Volker Borchert.
29464
29465 2001-11-23  Jim Meyering  <meyering@lucent.com>
29466
29467         * lib/hash.h (struct hash_table): Don't define here.  Merely declare
29468         it.
29469         * lib/hash.c (struct hash_table): Define it here instead.
29470
29471 2001-11-22  Jim Meyering  <meyering@lucent.com>
29472
29473         * lib/hash.h: Bracket contents of file with #ifndef HASH_H_ ... #endif.
29474
29475 2001-11-20  Jim Meyering  <meyering@lucent.com>
29476
29477         * m4/mkstemp.m4 (UTILS_FUNC_MKSTEMP): Update comment to reflect that
29478         SunOS 4.1.4 and Solaris 2.5.1 lose, too.
29479
29480 2001-11-19  Jim Meyering  <meyering@lucent.com>
29481
29482         * m4/mkstemp.m4 (UTILS_FUNC_MKSTEMP): Don't bother with a temporary
29483         directory.  Use "conftestXXXXXX" as the template.
29484         Suggestion from Paul Eggert.
29485
29486         * m4/mkstemp.m4 (UTILS_FUNC_MKSTEMP): Close each descriptor
29487         immediately, so the test doesn't mistakenly hit the max-open-files
29488         limit.
29489
29490 2001-11-18  Paul Eggert  <eggert@twinsun.com>
29491
29492         * lib/tempname.c (TMP_MAX): Remove; no longer needed.
29493         (TEMPORARIES): New macro.
29494         (__gen_tempname): Use TEMPORARIES rather than TMP_MAX.  This
29495         removes an artificial limitation (e.g. HP-UX 10.20, where
29496         TMP_MAX is 17576).
29497
29498 2001-11-18  Jim Meyering  <meyering@lucent.com>
29499
29500         * m4/prereq.m4 (jm_PREREQ_TEMPNAME): Check for declaration of getenv.
29501
29502 2001-11-18  Jim Meyering  <meyering@lucent.com>
29503
29504         * lib/tempname.c [!HAVE_DECL_GETENV]: Declare getenv to avoid warning
29505         on SunOS 4.
29506
29507         * lib/Makefile.am (Makefile): Depend on $(BUILT_SOURCES), so those
29508         files will be created before anything else.
29509
29510 2001-11-17  Paul Eggert  <eggert@twinsun.com>
29511
29512         * m4/jm-winsz1.m4 (jm_WINSIZE_IN_PTEM): Do not define
29513         WINSIZE_IN_PTEM if <termios.h> defines struct winsize.
29514
29515 2001-11-17  Jim Meyering  <meyering@lucent.com>
29516
29517         * m4/mkstemp.m4 (UTILS_FUNC_MKSTEMP): New file and macro.
29518         Prompted by a report from Bob Proulx.
29519
29520         * m4/jm-macros.m4 (jm_MACROS): Don't test for mkstemp here.
29521         Instead, require UTILS_FUNC_MKSTEMP.
29522
29523 2001-11-17  Jim Meyering  <meyering@lucent.com>
29524
29525         * m4/jm-macros.m4 (jm_MACROS): Remove code to set POW_LIBM.
29526         Now, that's done as part of AC_FUNC_STRTOD.
29527
29528 2001-11-17  Jim Meyering  <meyering@lucent.com>
29529
29530         * lib/modechange.c (mode_adjust): Fix error introduced on 1999-04-26
29531         that made e.g., `chmod a=,o=w,g=o F' cause F to be group readable
29532         rather than group writable.  Patch by Juan F. Codagnone.
29533
29534         * lib/readtokens.c: Remove explicit declarations of xmalloc and
29535         xrealloc, Instead, include "xalloc.h".
29536
29537         * lib/mountlist.c: Include unlocked-io.h after all system headers.
29538         Remove explicit declarations of xmalloc, xrealloc,
29539         and xstrdup.  Instead, include "xalloc.h".
29540
29541         * lib/argmatch.c, closeout.c, error.c, exclude.c: Include
29542         unlocked-io.h.
29543         * lib/fatal.c, getdate.y, getpass.c, getstr.c, getusershell.c:
29544         Likewise.
29545         * lib/mountlist.c, posixtm.c, readtokens.c, readutmp.c: Likewise.
29546
29547         * lib/regex.c, sha.c, version-etc.c, yesno.c: Likewise.
29548         Reported by Padraig Brady.
29549
29550         * lib/mkstemp.c: #undef mkstemp.
29551         Include config.h.
29552         (rpl_mkstemp): Rename from mkstemp.
29553         Protoize.
29554
29555 2001-11-16  Jim Meyering  <meyering@lucent.com>
29556
29557         * lib/physmem.c [HAVE_SYS_PSTAT_H]: Include <sys/pstat.h>.
29558         (physmem_total) [HAVE_PSTAT_GETSTATIC]: If sysconf couldn't be used to
29559         determine the amount of total physical memory, use pstat_getstatic.
29560         HPUX-11 doesn't define _SC_PHYS_PAGES.
29561         (physmem_available) [HAVE_PSTAT_GETSTATIC && HAVE_PSTAT_GETDYNAMIC]:
29562         If sysconf couldn't be used to determine the amount of available
29563         physical memory, use both pstat_getstatic and pstat_getdynamic.
29564         Based on a patch from Bob Proulx.
29565
29566 2001-11-10  Jim Meyering  <meyering@lucent.com>
29567
29568         * m4/prereq.m4 (jm_PREREQ_PHYSMEM): New function.
29569         (jm_PREREQ): Use it.
29570
29571 2001-11-09  Jim Meyering  <meyering@lucent.com>
29572
29573         * m4/jm-macros.m4: Require autoconf-2.52f.
29574         (AC_FUNC_ERROR_AT_LINE, AC_FUNC_OBSTACK, AC_FUNC_STRTOD):
29575         Use these AC_-prefixed names, not the AM_-prefixed ones.
29576
29577         * m4/afs.m4 (jm_AFS): Quote the body.  Patch by Akim Demaille.
29578
29579 2001-11-05  Jim Meyering  <meyering@lucent.com>
29580
29581         * lib/xstat.in (slash_aware_lstat): Correct a misleading comment.
29582
29583 2001-11-04  Jim Meyering  <meyering@lucent.com>
29584
29585         * m4/fpending.m4: Remove unused cruft that saved, set, and restored
29586         $DEFS.
29587
29588 2001-11-03  Jim Meyering  <meyering@lucent.com>
29589
29590         * m4/jm-glibc-io.m4n (jm_FUNC_GLIBC_UNLOCKED_IO): Quote first arg
29591         of AC_DEFUN.
29592
29593         * m4/dirfd.m4 (UTILS_FUNC_DIRFD): Rework so dirfd.c doesn't have to
29594         know the name of the variable in the macro definition.
29595
29596 2001-11-03  Jim Meyering  <meyering@lucent.com>
29597
29598         * lib/argmatch.h (ARGMATCH_TO_ARGUMENT): Remove casts of first two args
29599         in argmatch_to_argument call.
29600
29601         * lib/dirfd.c (dirfd): Reflect the fact that DIR_TO_FD now takes an
29602         argument.
29603
29604         * lib/hash.c (hash_clear): Fix a bug that could lead to an infloop or
29605         e.g., a fault due to an attempt to free a NULL pointer.
29606
29607 2001-11-01  Jim Meyering  <meyering@lucent.com>
29608
29609         * m4/dirfd.m4 (UTILS_FUNC_DIRFD): New macro.
29610         * m4/jm-macros.m4 (jm_MACROS): Require UTILS_FUNC_DIRFD.
29611
29612 2001-11-01  Jim Meyering  <meyering@lucent.com>
29613
29614         * lib/dirfd.c, lib/dirfd.h: New files.
29615         * lib/Makefile.am (libfetish_a_SOURCES): Add dirfd.h.
29616
29617         * lib/hash.c (hash_print) [TESTING]: Clean up.
29618
29619 2001-10-22  Paul Eggert  <eggert@twinsun.com>
29620
29621         * lib/hard-locale.c (alloca): Define to __builtin_alloca if __GNUC__,
29622         to avoid a warning if -Wall.
29623
29624 2001-10-22  Jeff Bailey  <jbailey@outpost.dnsalias.org>
29625
29626         * README: New file
29627         * doc/*: Add COPYING, COPYING.LIB, COPYING.DOC, fdl.texi
29628         (per RMS's instructions, this is now the canonical source)
29629         * lgpl/, gpl/: New directories.
29630
29631 2001-10-21  Paul Eggert  <eggert@twinsun.com>
29632
29633         * lib/regex.c (uintptr_t): Remove macro and decl; it's config.h's job.
29634
29635 2001-10-21  Jim Meyering  <meyering@lucent.com>
29636
29637         * lib/obstack.c (_): Honor the setting of ENABLE_NLS.  Otherwise,
29638         this code would end up calling gettext even in packages built
29639         with --disable-nls.
29640         * lib/getopt.c (_): Likewise.
29641         * lib/regex.c (_): Likewise.
29642
29643 2001-10-20  Paul Eggert  <eggert@twinsun.com>
29644
29645         * m4/error.m4 (jm_PREREQ_ERROR):
29646         Do not invoke AC_CHECK_FUNCS with strerror_r, as
29647         AC_FUNC_STRERROR_R does that.
29648         Check for strerror declaration.
29649
29650         * m4/strerror_r.m4: Add copyright notice, as nontrivial m4 files
29651         are supposed to have them these days.
29652         (AC_FUNC_STRERROR_R): Always do char* test, so that it gets cached.
29653         Merge changes from latest Autoconf CVS.
29654         Rename ac_cv_func_strerror_r_works to ac_cv_func_strerror_r_char_p,
29655         and rename HAVE_WORKING_STRERROR_R to STRERROR_R_CHAR_P, since
29656         POSIX decided to standardize on the int flavor of strerror_r.
29657
29658 2001-10-20  Paul Eggert  <eggert@twinsun.com>
29659
29660         * lib/error.c (strerror_r): Do not declare unless !_LIBC.
29661         Do not check for HAVE_DECL_STRERROR_R missing unless STRERROR_R_CHAR_P.
29662         Use strerror_r that is only a macro, even if it is not a function.
29663         (strerror): Check for HAVE_DECL_STRERROR before declaring.
29664         (private_strerror): Use prototypes, not old-style function definition.
29665         (print_errno_message): New function.
29666         Support the POSIX 'int'-flavored strerror_r, as well as the traditional
29667         char*-flavored one.
29668         (error_tail, error, error_at_line): Use it.
29669
29670 2001-10-11  Jim Meyering  <meyering@lucent.com>
29671
29672         * lib/argmatch.c (argmatch_invalid): Use quotearg_n_style (0, ...
29673         and quote_n (1, ... to avoid clobbering a buffer.
29674
29675 2001-10-05  Jim Meyering  <meyering@lucent.com>
29676
29677         * lib/Makefile.am: (libfetish_a_SOURCES): Add hash-pjw.c and
29678         hash-pjw.h.
29679         * lib/hash-pjw.c: New file (factored out of fileutils' remove.c).
29680         * lib/hash-pjw.h: New file.
29681
29682 2001-09-30  Jim Meyering  <meyering@lucent.com>
29683
29684         * m4/ls-mntd-fs.m4 (jm_LIST_MOUNTED_FILESYSTEMS): See if
29685         `struct fsstat' has the `f_fstypename' member.
29686         Use that to define FS_TYPE, which is now used to make
29687         the getfsstat link test tighter.
29688
29689 2001-09-30  Jim Meyering  <meyering@lucent.com>
29690
29691         * lib/mountlist.c [MOUNTED_GETFSSTAT]:
29692         Include <sys/ucred.h>, for Apple Darwin.
29693         Include sys/mount.h and sys/fs_types.h only if available.
29694         (FS_TYPE): Define.
29695         (read_filesystem_list): Use FS_TYPE.
29696
29697 2001-09-29  Paul Eggert  <eggert@twinsun.com>
29698
29699         * lib/exclude.c (excluded_filename): 0 -> false, since it's
29700         a boolean context.
29701
29702 2001-09-29  Jim Meyering  <meyering@lucent.com>
29703
29704         * m4/ls-mntd-fs.m4 (jm_LIST_MOUNTED_FILESYSTEMS)
29705         [one-argument getmntent function]): Include stdio.h before mntent.h.
29706         SunOS 4.1.x needs it for the declaration of `FILE'.
29707         Patch by Volker Borchert.
29708
29709         * m4/ls-mntd-fs.m4 (jm_LIST_MOUNTED_FILESYSTEMS)
29710         Check for these headers: sys/param.h sys/ucred.h sys/mount.h
29711         sys/fs_types.h, and make the link-test for getfsstat guard #include
29712         directives with appropriate #if HAVE_*_H tests so that we can
29713         detect getfsstat on Apple Darwin1.3.7 systems.
29714         Reported by Nelson Beebe.
29715         Fix harmless typo in cache variable name: s/getsstat/getfsstat/.
29716
29717 2001-09-28  Paul Eggert  <eggert@twinsun.com>
29718
29719         Fix bug reported by Petter Reinholdtsen for HP-UX 10.20, which
29720         #defines strtoimax.  Also treat the other strto* functions
29721         like strtoimax.
29722
29723         * m4/xstrtoimax.m4 (jm_AC_PREREQ_XSTRTOIMAX):
29724         Check for strtoul and strtoumax,
29725         as those declarations are made even in the signed case.
29726         * m4/xstrtoumax.m4 (jm_AC_PREREQ_XSTRTOUMAX):
29727         Likewise, for strtol and strtoimax.
29728
29729 2001-09-28  Paul Eggert  <eggert@twinsun.com>
29730
29731         Fix bug reported by Petter Reinholdtsen for HP-UX 10.20, which
29732         #defines strtoimax.  Also treat the other strto* functions
29733         like strtoimax.
29734
29735         * lib/xstrtol.c (strtol): Do not declare if HAVE_DECL_STRTOL.
29736         (strtoul): Do not declare if HAVE_DECL_STRTOUL.
29737         (strtoimax, strtoumax): Do not declare if already defined as a macro.
29738
29739 2001-09-26  Jim Meyering  <meyering@lucent.com>
29740
29741         Most macros in unlocked-io.h had the wrong number of arguments.
29742         * lib/gen-uio: New script.
29743         (USE_UNLOCKED_IO): Define to 1 if not already defined.
29744         * lib/unlocked-io.hin: Remove file.
29745         * lib/Makefile.am (unlocked-io.h): Rewrite to use a separate script,
29746         rather than trying to embed it here.
29747         (EXTRA_DIST): Add gen-uio.  Remove unlocked-io.hin
29748         Reported by Padraig Brady.
29749
29750 2001-09-25  Volker Borchert  <bt@teknon.de>
29751
29752         * lib/gettimeofday.c (rpl_gettimeofday): Declare local variable
29753         `result'.
29754
29755 2001-09-24  Jim Meyering  <meyering@lucent.com>
29756
29757         * m4/gettext.m4: Use the version from gettext-0.10.40, not CVS.
29758
29759 2001-09-23  Jim Meyering  <meyering@lucent.com>
29760
29761         * m4/ls-mntd-fs.m4 (jm_LIST_MOUNTED_FILESYSTEMS): Add a compile-test
29762         instead of the mere test for existence of mntent.h.  The latter
29763         would get a false-positive on AIX 3.4 systems.
29764         In the outer getmntent if-block, don't die if neither of the getmntent
29765         tests succeeds.  Instead, just fall through and continue with the
29766         remaining tests.
29767
29768 2001-09-23  Jim Meyering  <meyering@lucent.com>
29769
29770         * lib/mountlist.c: Remove useless parentheses in #if directives.
29771         (MOUNTED) [!defined MOUNTED]: Define to _PATH_MOUNTED, for when
29772         the deprecated MOUNTED symbol is no longer defined in mntent.h.
29773
29774 2001-09-22  Jim Meyering  <meyering@lucent.com>
29775
29776         * m4/gettext.m4: New file.  From gettext.
29777         * m4/lcmessage.m4: Sync with gettext -- this changes only comments.
29778         * m4/progtest.m4: Likewise
29779         * m4/isc-posix.m4: Decrement serial number to sync with gettext.
29780         * m4/glibc21.m4: Likewise.
29781
29782         * m4/libintl.m4: Remove.  No longer used.
29783
29784 2001-09-22  Jim Meyering  <meyering@lucent.com>
29785
29786         * lib/localcharset.c: Update from latest gettext.
29787         * lib/config.charset: Likewise.
29788
29789 2001-09-20  Jim Meyering  <meyering@lucent.com>
29790
29791         * m4/xstrtoimax.m4 (jm_AC_PREREQ_XSTRTOIMAX): Check for declaration of
29792         strtoimax.
29793         * m4/xstrtoumax.m4 (jm_AC_PREREQ_XSTRTOUMAX): Check for declaration of
29794         strtoumax.
29795
29796 2001-09-20  Jim Meyering  <meyering@lucent.com>
29797
29798         * lib/xstrtol.c (strtoimax): Guard declaration with
29799         `#if !HAVE_DECL_STRTOIMAX', rather than just `#ifndef strtoimax'.
29800         The latter fails because some systems (at least rs6000-ibm-aix4.3.3.0)
29801         have their own, conflicting declaration of strtoimax in sys/inttypes.h.
29802         (strtoumax): Likewise, for completeness (it wasn't necessary).
29803
29804 2001-09-17  Paul Eggert  <eggert@twinsun.com>
29805
29806         * lib/strtoimax.c (HAVE_LONG_LONG):
29807         Redefine to HAVE_UNSIGNED_LONG_LONG if unsigned.
29808         (strtoimax): Use sizeof (long), not sizeof strtol (ptr, endptr, base),
29809         to work around bug in IBM C compiler.
29810
29811 2001-09-17  Jim Meyering  <meyering@lucent.com>
29812
29813         * m4/chown.m4, fstypename.m4, getgroups.m4, gettimeofday.m4,
29814         * m4/jm-mktime.m4, lstat.m4, malloc.m4, memcmp.m4, mkdir-slash.m4,
29815         * m4/nanosleep.m4, putenv.m4, readdir.m4, realloc.m4, rename.m4,
29816         * m4/st_dm_mode.m4, stat.m4, strerror_r.m4, timespec.m4, utimbuf.m4,
29817         * m4/utimes.m4: Use AC_DEFINE rather than AC_DEFINE_UNQUOTED,
29818         whenever the right hand side need not be expanded by the shell.
29819
29820 2001-09-16  Paul Eggert  <eggert@twinsun.com>
29821
29822         * m4/fnmatch.m4 (jm_FUNC_FNMATCH): Remove test for GNU C
29823         library.  It's not correct, as some older glibcs are buggy.
29824         fnmatch wasn't fixed until glibc 2.2.
29825
29826         Use AC_DEFINE, not AC_DEFINE_UNQUOTED, as there's no
29827         special shell magic here.
29828
29829 2001-09-16  Jim Meyering  <meyering@lucent.com>
29830
29831         * m4/mkdir-slash.m4 (UTILS_FUNC_MKDIR_TRAILING_SLASH): New file/macro.
29832         * m4/jm-macros.m4: Require it.
29833
29834 2001-09-16  Jim Meyering  <meyering@lucent.com>
29835
29836         * lib/mkdir.c: New file.
29837
29838 2001-09-15  Jim Meyering  <meyering@lucent.com>
29839
29840         * m4/jm-macros.m4: Check for help2man.
29841
29842 2001-09-11  Jim Meyering  <meyering@lucent.com>
29843
29844         * m4/host-os.m4 (UTILS_HOST_OS): New file/macro.
29845         The body, by Paul Eggert, was moved here from configure.in.
29846         * m4/jm-macros.m4: Require UTILS_HOST_OS.
29847
29848 2001-09-04  Paul Eggert  <eggert@twinsun.com>
29849
29850         * m4/prereq.m4 (jm_PREREQ_XREADLINK): New macro.
29851         (jm_PREREQ): Use it.
29852
29853 2001-09-04  Paul Eggert  <eggert@twinsun.com>
29854
29855         * lib/xreadlink.c (xreadlink): Omit size_t* arg.  All uses changed.
29856         Use ssize_t, not int, to store result of readlink.
29857         Check for ssize_t overflow as well as size_t overflow,
29858         as POSIX says the result of readlink is implementation-defined
29859         when ssize_t overflows.
29860         Remove unnecessary cast to char*.
29861         Use free+malloc instead of realloc, as the storage doesn't need
29862         to be preserved and it's clearer and can be more efficient that way.
29863         (SIZE_MAX, SSIZE_MAX): New macros, if <limits.h> doesn't declare.
29864         * lib/xreadlink.h (xreadlink): Update prototype.
29865
29866 2001-09-04  Paul Eggert  <eggert@twinsun.com>
29867
29868         * lib/xgetcwd.c: Revert some of the previous change; intead,
29869         fix the HAVE_GETCWD_NULL code to behave more like the
29870         !HAVE_GETCWD_NULL code used to.
29871
29872         Include "xalloc.h".
29873         (xgetcwd): Do not return NULL when memory is exhausted; instead,
29874         invoke xalloc_die.
29875
29876 2001-09-03  Paul Eggert  <eggert@twinsun.com>
29877
29878         * m4/prereq.m4 (jm_PREREQ_XGETCWD): Check for limits.h and
29879         sys/param.h, as pathmax.h includes them.
29880
29881 2001-09-03  Paul Eggert  <eggert@twinsun.com>
29882
29883         * m4/prereq.m4 (jm_PREREQ): Add jm_PREREQ_XGETCWD.
29884         (jm_PREREQ_XGETCWD): New macro.
29885
29886         * m4/getcwd.m4: New file.
29887
29888 2001-09-03  Paul Eggert  <eggert@twinsun.com>
29889
29890         * lib/xgetcwd.c: Fix the !HAVE_GETCWD_NULL code to behave more
29891         like the HAVE_GETCWD_NULL code.
29892         Include pathmax.h if not HAVE_GETCWD.
29893         Do not include xalloc.h.
29894         (INITIAL_BUFFER_SIZE): New symbol.
29895         Do not use xmalloc / xrealloc, since the caller is responsible for
29896         handling errors.  Preserve errno around `free' during failure.
29897         Do not overrun buffer when using getwd.
29898
29899 2001-09-03  Paul Eggert  <eggert@twinsun.com>
29900
29901         * lib/xgetcwd.c (xgetcwd): Use HAVE_GETCWD_NULL, not (defined
29902         __GLIBC__ && __GLIBC__ >= 2), to decide whether to use
29903         getcwd (NULL, 0).
29904
29905 2001-09-03  Paul Eggert  <eggert@twinsun.com>
29906
29907         * lib/exclude.c (fnmatch_no_wildcards): Fix confusion between
29908         usage of FNM_CASEFOLD and FNM_LEADING_DIR.  The bug was
29909         spotted by Jim Meyering.
29910
29911 2001-09-03  Jim Meyering  <meyering@lucent.com>
29912
29913         * lib/xreadlink.c (xreadlink): Preserve errno around `free' during
29914         failure.
29915
29916 2001-09-02  Jim Meyering  <meyering@lucent.com>
29917
29918         * lib/error.c: Update from GNU libc.
29919
29920 2001-09-01  Jim Meyering  <meyering@lucent.com>
29921
29922         * m4/jm-macros.m4 (jm_MACROS): Check for canonicalize_file_name.
29923         Used by df.
29924
29925 2001-09-01  Jim Meyering  <meyering@lucent.com>
29926
29927         * lib/xreadlink.c: New file.
29928         * lib/xreadlink.h: New file.
29929         * lib/Makefile.am (libfetish_a_SOURCES): Add xreadlink.c and
29930         xreadlink.h.
29931
29932         * lib/regex.c (uintptr_t) [!_LIBC]: Define to private_uintptr_t, so it
29933         doesn't conflict with sparc Solaris 7's definition in
29934         /usr/include/sys/int_types.h.
29935
29936         * lib/exclude.c: Use `""', not `<>' to #include non-system header
29937         files.
29938         (fnmatch_no_wildcards): Rewrite not to use function names, strcasecmp
29939         and strncasecmp as r-values.  Unixware didn't have declarations.
29940
29941 2001-08-31  Paul Eggert  <eggert@twinsun.com>
29942
29943         * lib/xstrtol.h: Add copyright notice.
29944         (_DECLARE_XSTRTOL): Improve quality of diagnostic for
29945         LONGINT_INVALID_SUFFIX_CHAR.
29946
29947 2001-08-31  Paul Eggert  <eggert@twinsun.com>
29948
29949         * lib/xstrtol.c (strtoimax): New decl.
29950
29951 2001-08-31  Paul Eggert  <eggert@twinsun.com>
29952
29953         * lib/xgetcwd.c: Don't include pathmax.h.
29954         Include stdlib.h and unistd.h if available.
29955         Include xalloc.h.
29956         (xmalloc, xstrdup, free): Remove decls.
29957         (xgetcwd): Don't assume sizes fit in unsigned.
29958         Check for overflow when computing sizes.
29959         Simplify reallocation code.
29960
29961 2001-08-31  Paul Eggert  <eggert@twinsun.com>
29962
29963         * lib/savedir.c (savedir): Remove size parameter, as POSIX says that
29964         a directory's st_size can have an arbitrary value, so the old
29965         usage could waste an arbitrary amount of memory.  All uses
29966         changed.
29967         * lib/savedir.h: Update prototype.
29968
29969 2001-08-31  Paul Eggert  <eggert@twinsun.com>
29970
29971         * lib/Makefile.am (libfetish_a_SOURCES): Remove strtoxmax.c.
29972
29973         * lib/strtoimax.c: Renamed from strtoxmax.c, removing the
29974         old strtoimax.c.
29975
29976         Also, make the following further changes to make this file's
29977         configuration more similar to that of strtol.c:
29978         (UNSIGNED): Renamed from STRTOUXMAX_UNSIGNED.  All uses changed.
29979         (strtoumax, uintmax_t, strtoull, strtol): Remove.
29980         (intmax_t, strtoimax, strtol, strtoll): New macros, if UNSIGNED.
29981         (strtoimax): Renamed from strtoumax.  All uses of unsigned values
29982         changed to signed values.
29983
29984         And make the following changes as well:
29985         Fix copyright notice, as 1999 was missing.
29986         (verify): New macro.
29987         (strtoimax): Check sizes at compile-time, not run-time.
29988         Prefer strtol to strtoll if both work.
29989         (main): Remove; it was not that useful and was a pain to maintain.
29990
29991         * lib/strtoumax.c: Include strtoimax.c, not strtouxmax.c.
29992
29993 2001-08-31  Jim Meyering  <meyering@lucent.com>
29994
29995         * lib/xgetcwd.c (xgetcwd): Reorganize to avoid some duplication.
29996         Use an initial, malloc'd, buffer of length 128 rather than
29997         a statically allocated one of length 1024.
29998
29999 2001-08-30  Paul Eggert  <eggert@twinsun.com>
30000
30001         Simplify code, partly by assuming autoconf 2.52 semantics.
30002
30003         * m4/Makefile.am (EXTRA_DIST): Remove uintmax_t.m4.
30004
30005         * m4/inttypes.m4 (AC_PREREQ): Bump to 2.52.
30006         (jm_AC_HEADER_INTTYPES_H): Remove; now done by autoconf in 2.52.
30007         All uses removed.
30008         (jm_AC_TYPE_INTMAX_T, jm_AC_TYPE_UINTMAX_T):
30009         Move AC_REQUIRE to next-to-top level, to avoid confusion.
30010         Use 2.52's AC_CHECK_TYPE instead of merely looking for the header.
30011         * m4/prereq.m4 (jm_PREREQ_HUMAN): Don't require
30012         jm_AC_HEADER_INTTYPES_H.
30013         * m4/jm-macros.m4 (jm_MACROS): Likewise.
30014
30015         * m4/uintmax_t.m4: Remove, as it duplicates inttypes.m4.
30016
30017         * m4/xstrtoimax.m4 (jm_AC_PREREQ_XSTRTOIMAX):
30018         Quote first arg of AC_DEFUN.
30019         Require jm_AC_TYPE_UINTMAX_T and jm_AC_TYPE_UNSIGNED_LONG_LONG
30020         since they are needed to parse the include file even if we need
30021         only xstrtoimax.  Simplify logic behind the args to AC_REPLACE.
30022         * m4/xstrtoumax.m4 (jm_AC_PREREQ_XSTRTOUMAX): Likewise,
30023         but with opposite signedness.
30024
30025 2001-08-30  Paul Eggert  <eggert@twinsun.com>
30026
30027         Merge 'exclude' changes from tar 1.13.22.
30028         This fixes one or two unlikely storage allocation overflow bugs,
30029         but doesn't change user-visible behavior otherwise.
30030
30031 2001-08-30  Paul Eggert  <eggert@twinsun.com>
30032
30033         * m4/prereq.m4 (jm_PREREQ): Add jm_PREREQ_EXCLUDE.
30034         (jm_PREREQ_EXCLUDE): New macro.
30035
30036 2001-08-30  Paul Eggert  <eggert@twinsun.com>
30037
30038         * lib/quotearg.c: BSD/OS 4.1 wchar.h requires FILE and struct
30039         tm to be declared.
30040
30041 2001-08-30  Paul Eggert  <eggert@twinsun.com>
30042
30043         * lib/hash.c: Remove '2001' from copyright notice.
30044
30045 2001-08-30  Paul Eggert  <eggert@twinsun.com>
30046
30047         * lib/full-write.h: New file.
30048         * lib/Makefile.am (libfetish_a_SOURCES): Add full-write.h.
30049         * lib/full-write.c: Correct credits, as cccp.c no longer
30050         exists and anyway it was so heavily changed from the old cccp
30051         code as to be unrecognizable.  Include full-write.h.
30052         (full_write) Return size_t, with short writes meaning failure.
30053         All callers changed.  This fixes a bug with large buffers
30054         on 64-bit hosts.
30055         * lib/utime.c: Include full-write.h.
30056
30057 2001-08-30  Paul Eggert  <eggert@twinsun.com>
30058
30059         * lib/exclude.c (bool): Declare, perhaps by including stdbool.h.
30060         (<sys/types.h>): Include only if HAVE_SYS_TYPES_H.
30061         (<stdlib.h>, <string.h>, <strings.h>, <inttypes.h>, <stdint.h>):
30062         Include if available.
30063         (<xalloc.h>): Include
30064         (SIZE_MAX): Define if <stdint.h> or <inttypes.h> doesn't.
30065         (verify): New macro.  Use it to verify that EXCLUDE macros do not
30066         collide with FNM macros.
30067         (struct patopts): New struct.
30068         (struct exclude): Use it, as exclude patterns now come with options.
30069         (new_exclude): Support above changes.
30070         (new_exclude, add_exclude_file):
30071         Initial size must now be a power of two to simplify overflow checking.
30072         (free_exclude, fnmatch_no_wildcards): New function.
30073         (excluded_filename): No longer requires options arg, as the options
30074         are determined by add_exclude.  Now returns bool, not int.
30075         (excluded_filename, add_exclude):
30076         Add support for the fancy new exclusion options.
30077         (add_exclude, add_exclude_file): Now takes int options arg.
30078         Check for arithmetic overflow when computing sizes.
30079         (add_exclude_file): xrealloc might modify errno, so don't
30080         realloc until after errno might be used.
30081
30082         * lib/exclude.h (EXCLUDE_ANCHORED, EXCLUDE_INCLUDE,EXCLUDE_WILDCARDS):
30083         New macros.
30084         (free_exclude): New decl.
30085         (add_exclude, add_exclude_file): Now takes int options arg.
30086         (excluded_filename): No longer requires options arg, as the options
30087         are determined by add_exclude.  Now returns bool, not int.
30088
30089 2001-08-30  Paul Eggert  <eggert@twinsun.com>
30090
30091         * lib/alloca.c (alloca): Arg is of type size_t, not unsigned.
30092
30093 2001-08-27  Jim Meyering  <meyering@lucent.com>
30094
30095         * lib/Makefile.am (libfetish_a_SOURCES): Add strtoxmax.c
30096
30097         * lib/version-etc.c (N_): Remove definition.
30098         Revert most of last change.
30099         Instead, simply don't mark the `Copyright...' string for translation.
30100         Based on advice from Paul Eggert.
30101
30102         * lib/strtoxmax.c: Tweak comment.
30103
30104 2001-08-26  Jim Meyering  <meyering@lucent.com>
30105
30106         * m4/jm-macros.m4: Require jm_AC_PREREQ_XSTRTOIMAX.
30107
30108         * m4/xstrtoimax.m4: New file.
30109         * m4/xstrtoumax.m4: Add comments explaining why we
30110         AC_REPLACE_FUNCS(strtol).
30111
30112 2001-08-26  Jim Meyering  <meyering@lucent.com>
30113
30114         * lib/version-etc.c (version_etc_copyright_fmt): Replace literal year
30115         of copyright with `%s' so translators don't get an untranslated
30116         message in 2002.
30117         (COPYRIGHT_YEAR): Define.
30118         (version_etc): Use fprintf rather than fputs.
30119         Suggestion from Ulrich Drepper.
30120
30121         * lib/Makefile.am (libfetish_a_SOURCES): Add xstrtoimax.c.
30122
30123         * lib/strtoll.c: New file, from GNU libc.
30124         * lib/xstrtoimax.c: New file.
30125
30126         * lib/xstrtol.h: Add xstrtoimax.
30127         * lib/strtoumax.c: New file.  Simply include "strtoumax.c".
30128         * lib/strtoimax.c: New file.  Likewise, but first define
30129         STRTOUXMAX_SIGNED.
30130
30131         * lib/strtoumax.c: Factor to work both for unsigned and signed types,
30132         ...
30133         * lib/strtoxmax.c: ... then renamed to this.
30134
30135 2001-08-18  Paul Eggert  <eggert@twinsun.com>
30136
30137         * m4/inttypes.m4: Add AC_PREREQ(2.13).
30138         (jm_AC_HEADER_INTTYPES_H): Test for intmax_t, too.
30139         (jm_AC_TYPE_INTMAX_T): New macro.
30140         (jm_AC_TYPE_UINTMAX_T): Moved here from uintmax_t.m4.
30141
30142         * m4/longlong.m4 (jm_AC_TYPE_LONG_LONG): New macro.
30143
30144         * m4/longlong.m4: Renamed from ulonglong.m4.
30145         * m4/inttypes.m4: Renamed from inttypes_h.m4.
30146         * m4/uintmax_t.m4: Removed.
30147
30148 2001-08-13  Paul Eggert  <eggert@twinsun.com>
30149
30150         * lib/Makefile.am (unlocked-io.h): Do not append "_unlocked" twice.
30151         Port to Solaris 8, where 'sed' requires a space after the 'r'
30152         command, and where sh dislikes "$/".  Clean up the spacing a bit.
30153         Redirect output to $tmp just once.
30154
30155 2001-08-12  Paul Eggert  <eggert@sic.twinsun.com>
30156
30157         * lib/addext.c (<errno.h>): Include.
30158         (errno): Declare if not defined.
30159         (addext): Work correctly when pathconf returns -1 and leaves
30160         errno alone because there is no limit.  Also, work even if
30161         pathconf returns a value greater than SIZE_MAX.
30162
30163 2001-08-12  Jim Meyering  <meyering@lucent.com>
30164
30165         * m4/afs.m4, assert.m4, bison.m4, check-decl.m4, chown.m4, d-ino.m4,
30166         d-type.m4, dos.m4, error.m4, fnmatch.m4, fpending.m4, fstypename.m4,
30167         fsusage.m4, ftruncate.m4, getgroups.m4, glibc.m4, gnu-source.m4,
30168         group-member.m4, jm-glibc-io.m4, jm-macros.m4, jm-mktime.m4,
30169         jm-winsz1.m4, jm-winsz2.m4, lchown.m4, lib-check.m4, libintl.m4,
30170         link-follow.m4, ls-mntd-fs.m4, lstat.m4, malloc.m4, mbrtowc.m4,
30171         mbstate_t.m4, mbswidth.m4, memcmp.m4, nanosleep.m4, perl.m4,
30172         prereq.m4, putenv.m4, readdir.m4, realloc.m4, regex.m4, rename.m4,
30173         rmdir-errno.m4, search-libs.m4, st_dm_mode.m4, st_mtim.m4, stat.m4,
30174         strftime.m4, timespec.m4, unlink-busy.m4, uptime.m4, utimbuf.m4,
30175         utime.m4, utimes.m4, xstrtoumax.m4:
30176         Quote the first argument in each use of AC_DEFUN.
30177
30178 2001-08-12  Jim Meyering  <meyering@lucent.com>
30179
30180         * lib/xgetcwd.c (xgetcwd) [defined __GLIBC__ && __GLIBC__ >= 2]:
30181         Simply `return getcwd (NULL, 0);'.
30182         [! (defined __GLIBC__ && __GLIBC__ >= 2)]:
30183         Use 1300 as initial value for length, not PATH_MAX.
30184
30185         * lib/pathmax.h: Clean up cpp syntax.
30186
30187 2001-08-12  Jim Meyering  <meyering@lucent.com>
30188
30189         * lib/gettimeofday.c: New file.
30190         * lib/gtod.h: New file.
30191         * lib/Makefile.am (libfetish_a_SOURCES): Add gtod.h.
30192
30193 2001-08-05  Jim Meyering  <meyering@lucent.com>
30194
30195         * m4/jm-macros.m4: Require autoconf-2.52.
30196
30197 2001-08-04  Jim Meyering  <meyering@lucent.com>
30198
30199         * lib/error.h (__attribute__): Remove `|| __STRICT_ANSI__' from #if
30200         stmt, to get in sync with glibc.
30201
30202 2001-08-03  Paul Eggert  <eggert@twinsun.com>
30203
30204         The following changes are from gettext 0.10.39 as maintained by
30205         Bruno Haible.
30206
30207         * lib/mbswidth.h (MBSW_REJECT_UNPRINTABLE, MBSW_REJECT_INVALID):
30208         Renamed from MBSW_ACCEPT_UNPRINTABLE and MBSW_ACCEPT_INVALID
30209         with inverted sense.  All uses changed.
30210
30211         * lib/mbswidth.c: Don't include <limits.h>.
30212         Include <stdlib.h> and <string.h> unconditionally.
30213         (iswcntrl, mbsinit, ISCNTRL): New macros.
30214         (mbsnwidth): Use K&R style function declarations.
30215         Don't bother checking for MB_LEN_MAX == 1, since the compiler
30216         can optimize it when MB_CUR_MAX == 1.
30217         The width of control characters is zero, not 1.
30218
30219 2001-08-03  Paul Eggert  <eggert@twinsun.com>
30220
30221         The following changes are from gettext 0.10.39 as maintained by
30222         Bruno Haible, except that getline.m4 continues to use AC_LIBOBJ.
30223
30224         * m4/codeset.m4: Upgrade to serial AM1.
30225         (AM_LANGINFO_CODESET): Renamed from jm_LANGINFO_CODESET;
30226         all uses changed.  Quote first arg of AC_DEFUN.
30227         (am_cv_langinfo_codeset): Renamed from jm_cv_langinfo_codeset.
30228
30229         * m4/iconv.m4: Upgrade to serial AM2.
30230         (AM_ICONV): Renamed from jm_ICONV; all uses changed.
30231         Add --with-libconv-prefix.
30232         Quote first arg of AC_DEFUN.  Add description for ICONV_CONST.
30233         (am_cv_func_iconv): Renamed from jm_cv_func_iconv.
30234         (am_cv_lib_iconv): Renamed from jm_cv_lib_iconv.
30235         (am_cv_proto_iconv): Renamed from jm_cv_proto_iconv.
30236         * m4/jm-macros.m4 (jm_MACROS): Reflect s/jm_/AM_/ renamings.
30237
30238         * m4/c-bs-a.m4 (AC_C_BACKSLASH_A): Quote first arg of AC_DEFUN.
30239         * m4/getline.m4 (AM_FUNC_GETLINE): Likewise.
30240         * m4/glibc21.m4 (jm_GLIBC21): Likewise.
30241         * m4/inttypes_h.m4 (jm_AC_HEADER_INTTYPES_H): Likewise.
30242         * m4/isc-posix.m4 (AC_ISC_POSIX): Likewise.
30243         * m4/lcmessage.m4 (AM_LC_MESSAGES): Likewise.
30244         * m4/progtest.m4 (AM_PATH_PROG_WITH_TEST): Likewise.
30245         * m4/uintmax_t.m4 (jm_AC_TYPE_UINTMAX_T): Likewise.
30246         * m4/ulonglong.m4 (jm_AC_TYPE_UNSIGNED_LONG_LONG): Likewise.
30247
30248         * m4/getline.m4 (AM_FUNC_GETLINE): Don't bother checking for
30249         string.h any more.
30250
30251         * m4/progtest.m4 (AM_PATH_PROG_WITH_TEST): If not found, print "no",
30252         not the default value.
30253
30254         2001-06-25  Bruno Haible  <haible@clisp.cons.org>
30255         * m4/mbswidth.m4 (jm_PREREQ_MBSWIDTH): Don't require AM_C_PROTOTYPES.
30256         Also check for mbsinit.  Needed for SCO 3.2v5.0.2.
30257         Also include <string.h>; this is where AIX 3.2.5 declares wcwidth.
30258         Also check for iswcntrl, used for wcwidth fallback.
30259         Use AC_TRY_COMPILE to emulate AC_CHECK_DECLS, for portability
30260         to Autoconf 2.13.
30261
30262 2001-08-03  Jim Meyering  <meyering@lucent.com>
30263
30264         * m4/mbrtowc.m4 (jm_FUNC_MBRTOWC): Use `#include', not `@%:@include',
30265         as it was in the original.  Reported by Paul Eggert.
30266
30267 2001-07-16  Jim Meyering  <meyering@lucent.com>
30268
30269         * m4/gettimeofday.m4: New file.
30270         Prompted by a report from Bernhard Baehr.
30271
30272 2001-07-15  Jim Meyering  <meyering@lucent.com>
30273
30274         * m4/Makefile.am.in (Makefile.am): Remove most of the unlocked-io.h
30275         stuff. Now it's in ../Makefile.cfg.
30276
30277 2001-07-15  Jim Meyering  <meyering@lucent.com>
30278
30279         * lib/Makefile.am (EXTRA_DIST): Add unlocked-io.hin.
30280         (BUILT_SOURCES): Add unlocked-io.h.
30281         (io_functions): Define.
30282         (unlocked-io.h): New rule.
30283         (DISTCLEANFILES): Add unlocked-io.h.
30284         (all-local): Depend on unlocked-io.h, to ensure it is created.
30285
30286         * lib/unlocked-io.hin: New file
30287
30288         * lib/regex.c: Update from glibc.
30289
30290 2001-07-05  Jim Meyering  <meyering@lucent.com>
30291
30292         * lib/Makefile.am (noinst_HEADERS): Remove definition, per new automake
30293         recommendation.
30294         (libfetish_a_SOURCES): Put all .h files here instead.
30295         Remove a thus-exposed (better checks in automake) duplicate and
30296         two unnecessary .h files.
30297
30298 2001-07-04  Jim Meyering  <meyering@lucent.com>
30299
30300         * m4/Makefile.am.in (glibc-io.struct): New target.  Rework the code
30301         that generates jm-glibc-io.m4 so that it doesn't trigger any make
30302         distcheck failure.
30303
30304 2001-07-02  Jim Meyering  <meyering@lucent.com>
30305
30306         The following changes were prompted by suggestions from Bruno Haible.
30307
30308         * m4/jm-glibc-io.m4n: New file, the template from which jm-glibc-io.m4
30309         is now generated.
30310         * m4/Makefile.am.in (Makefile.am): Include jm-glibc-io.m4n in emitted
30311         definition of EXTRA_DIST.
30312         (Makefile.am): Emit the dependency, `all-local: jm-glibc-io.m4' to
30313         ensure that the generated file is created/updated whenever the list
30314         of $(unlocked_functions) is changed.
30315         (jm-glibc-io.m4): New rule.
30316         (unlocked-io.h): New rule -- currently unused.
30317
30318 2001-06-24  Jim Meyering  <meyering@lucent.com>
30319
30320         * m4/regex.m4 (jm_INCLUDED_REGEX): Use a quadrigraph to represent an
30321         unmatched right bracket, rather than kludging it with an extra,
30322         falsely-matching quote in a comment.  Patch by Akim Demaille.
30323
30324 2001-06-11  Jim Meyering  <meyering@lucent.com>
30325
30326         * lib/regex.c: Update from GNU libc.
30327
30328 2001-05-27  Jim Meyering  <meyering@lucent.com>
30329
30330         * m4/prereq.m4 (jm_PREREQ_READUTMP): Check for ut_type in struct utmpx.
30331         Check for ut_type in struct utmp.
30332
30333 2001-05-27  Jim Meyering  <meyering@lucent.com>
30334
30335         * lib/readutmp.h (UT_TYPE): Define.
30336
30337 2001-05-24  Jim Meyering  <meyering@lucent.com>
30338
30339         * lib/argmatch.c: Include "quote.h".
30340         (argmatch_invalid): Remove explicit `' quotes.  Instead, use the
30341         quote function.  Reported by Göran Uddeborg.
30342
30343 2001-05-22  Jim Meyering  <meyering@lucent.com>
30344
30345         * m4/strftime.m4 (_jm_STRFTIME_PREREQS): Don't use AC_LIBOBJ(strftime),
30346         now that we use the package-supplied version unconditionally.
30347         (jm_FUNC_STRFTIME): Don't replace strftime, for the same reason.
30348
30349 2001-05-21  Jim Meyering  <meyering@lucent.com>
30350
30351         * m4/regex.m4: Change a couple backticks to single quotes to avoid
30352         shell syntax errors.
30353
30354 2001-05-21  Alexandre Duret-Lutz  <duret_g@epita.fr>
30355
30356         * m4/dos.m4 (jm_AC_DOS): Check for _WIN32, __WIN32__, and __MSDOS__.
30357
30358 2001-05-20  Paul Eggert  <eggert@twinsun.com>
30359
30360         * m4/strftime.m4 (jm_FUNC_GNU_STRFTIME):
30361         Don't bother to check library strftime, since
30362         we'll be using our own my_strftime function anyway.
30363         Define my_strftime instead of strftime.
30364
30365 2001-05-20  Alexandre Duret-Lutz  <duret_g@epita.fr>
30366
30367         * lib/dirname.c (dir_name): Compute append_dot using path, not newpath
30368         which is not yet declared.
30369
30370 2001-05-15  Jim Meyering  <meyering@lucent.com>
30371
30372         * m4/regex.m4: Use proper quoting so brackets appear in the test
30373         program.
30374         Reported by, and with help from, Bruno Haible.
30375
30376 2001-05-13  Jim Meyering  <meyering@lucent.com>
30377
30378         * m4/jm-macros.m4 (major_t, minor_t): Define to unsigned int if
30379         undefined.
30380
30381 2001-05-11  Paul Eggert  <eggert@twinsun.com>
30382
30383         dirname code cleanup.  base_name now behaves more compatibly
30384         with POSIX basename when given file names that have trailing
30385         slashes, and similarly for dir_name.  Add new primitives
30386         base_len and dir_len.  Put the directory-name-related decls
30387         into dirname.h.
30388
30389         * lib/addext.c (ISSLASH, base_name): Remove; now in dirname.h.
30390         * lib/backupfile.c (base_name): Likewise.
30391         * lib/basename.c (FILESYSTEM_PREFIX_LEN, PARAMS, ISSLASH): Likewise.
30392         * lib/dirname.c (FILESYSTEM_PREFIX_LEN, ISSLASH): Likewise.
30393         * lib/makepath.c (strip_trailing_slashes): Likewise.
30394         * lib/path-concat.c (DIRECTORY_SEPARATOR, FILESYSTEM_PREFIX_LEN,
30395         ISSLASH): Likewise.
30396         * lib/rename.c (strip_trailing_slashes): Likewise.
30397         * lib/same.c (base_name): Likewise.
30398         * lib/stripslash.c (ISSLASH): Likewise.
30399
30400         * lib/addext.c: Include <dirname.h> after size_t is defined.
30401         * lib/backupfile.c: Likewise.
30402
30403         * lib/addext.c (addext): Use base_len to trim redundant
30404         trailing slashes instead of doing it ourselves.
30405         But do not trim the last slash if it is not redundant.
30406
30407         * lib/backupfile.c (find_backup_file_name,
30408         max_backup_version): Use base_len instead of rolling it ourselves.
30409         Handle the case of "" and (on DOS) "C:" correctly.
30410
30411         * lib/basename.c: Do not include <stdio.h>, <assert.h>; no longer
30412         needed. Include <string.h>, <dirname.h>.
30413         (base_name): Allow file names ending in slashes, other than names
30414         that are all slashes.  In this case, return the basename followed
30415         by the slashes.  This is more general, and can be used in places
30416         where the original base_name purposely had an assertion failure.
30417         (base_len): New function.
30418
30419         * lib/dirname.c: Include <string.h> instead of <stdlib.h>.
30420         Do not include <assert.h>; no longer needed.
30421         Include xalloc.h.
30422         (memrchr): Remove decl.
30423         (dir_name_r): Remove.
30424         (dir_len): Renamed from dirlen.  All callers changed.
30425         Rewrite in terms of base_name, for simplicity and consistency.
30426         (dir_name): Never return NULL.  All callers changed.
30427         Do not include <stdlib.h> in test program; no longer needed.
30428         return 0; is fine for test program.
30429
30430         * lib/dirname.h (DIRECTORY_SEPARATOR, ISSLASH, FILESYSTEM_PREFIX_LEN):
30431         New macros.
30432         (base_name, base_len, dir_len, strip_trailing_slashes): New decls.
30433
30434         * lib/path-concat.c (path_concat): Use base_len to compute
30435         base length, not strlen; this means we cannot rely on memcpy
30436         to null-terminate.
30437
30438         * lib/same.c (STREQ): Remove.
30439         (same_name): Handle the case where the basename ends in trailing '/'.
30440
30441         * lib/stripslash.c (strip_trailing_slashes): Return nonzero if
30442         a slash was stripped.  Do not strip the last slash after a
30443         file system prefix.
30444
30445 2001-05-11  Paul Eggert  <eggert@twinsun.com>
30446
30447         * lib/Makefile.am (libfetish_a_SOURCES):
30448         Add strftime.c, since we now compile it on all hosts.
30449
30450         * lib/strftime.c (my_strftime):
30451         Define to nstrftime if emacs, but only if my_strftime is not defined.
30452         (extra_args, extra_args_spec, extra_args_spec_iso): Rename from
30453         ut_argument, ut_argument_spec, ut_argument_spec_iso, respectively.
30454         Add one more extra argument: a nanoseconds value.
30455         All uses changed.
30456         (ns): New macro.
30457         (my_strftime function): Add %N format.
30458         (emacs_strftimeu): Renamed from emacs_strftime,
30459         with extra ut argument.
30460
30461 2001-05-09  Paul Eggert  <eggert@twinsun.com>
30462
30463         * m4/jm-macros.m4 (jm_MACROS): Do not check for fseeko; no longer used.
30464
30465 2001-04-21  Jim Meyering  <meyering@lucent.com>
30466
30467         * m4/rmdir-errno.m4: Write to a new file, so that a restrictive umask
30468         doesn't interfere.
30469
30470 2001-04-21  Alexandre Duret-Lutz  <duret_g@epita.fr>
30471
30472         * m4/ftruncate.m4: Check for chsize.
30473         Link with ftruncate.o unconditionally if ftruncate is missing.
30474         This was required when cross-compiling to i586-mingw32msvc.
30475
30476 2001-04-08  Jim Meyering  <meyering@lucent.com>
30477
30478         * lib/getdate.y (get_date): Set tm_isdst to -1 to ensure that it is
30479         recomputed; that's necessary when the offset spans a DST transition.
30480         Patch by David J. MacKenzie.  Reported by Hon-Yin Kok.
30481
30482 2001-04-02  Jim Meyering  <meyering@lucent.com>
30483
30484         * lib/regex.h, regex.c: Update from GNU libc.
30485
30486 2001-03-24  Jim Meyering  <meyering@lucent.com>
30487
30488         * m4/jm-macros.m4: Require autoconf-2.49d.
30489
30490 2001-03-20  Bruno Haible  <haible@clisp.cons.org>
30491
30492         * m4/iconv.m4 (jm_ICONV): Recommend GNU libiconv.
30493
30494 2001-03-19  Paul Eggert  <eggert@twinsun.com>
30495
30496         * lib/version-etc.c (version_etc_copyright): Update to 2001.
30497
30498 2001-03-17  Jim Meyering  <meyering@lucent.com>
30499
30500         * m4/memcmp.m4 (jm_AC_FUNC_MEMCMP): Remove my copy of AC_FUNC_MEMCMP,
30501         now that the version in autoconf is equivalent.
30502         (jm_FUNC_MEMCMP): Adjust to use AC_FUNC_MEMCMP.
30503
30504         * m4/error.m4 (jm_PREREQ_ERROR): Invoke AC_FUNC_STRERROR_R.
30505         Suggestion from Akim Demaille.
30506
30507         * m4/prereq.m4 (jm_PREREQ): Add jm_PREREQ_TEMPNAME.
30508         (jm_PREREQ_TEMPNAME): New function.
30509
30510 2001-03-16  Paul Eggert  <eggert@twinsun.com>
30511
30512         * lib/tempname.c (uint64_t): Define to uintmax_t if
30513         not defined, and if UINT64_MAX is not defined.
30514         Required at least for Vax Ultrix4.3, which doesn't define uint64_t.
30515         Reported by John David Anglin.
30516
30517 2001-03-15  Bruno Haible  <haible@clisp.cons.org>
30518
30519         * lib/localcharset.c (locale_charset): Allow wildcard syntax. Also
30520         resolve alias if codeset is empty.
30521         * lib/config.charset (BeOS): Use wildcard syntax.
30522
30523 2001-03-13  Jim Meyering  <meyering@lucent.com>
30524
30525         * lib/path-concat.c (path_concat)
30526         [FILESYSTEM_ACCEPTS_DRIVE_LETTER_PREFIX]: Don't insert a backslash when
30527         concatenating e.g., `C:' and `foo'.
30528         From Bruno Haible.
30529
30530 2001-03-06  Bruno Haible  <haible@clisp.cons.org>
30531
30532         * lib/localcharset.c (locale_charset): Don't use
30533         setlocale(LC_CTYPE,NULL). Don't return NULL.
30534         * lib/unicodeio.c (print_unicode_char): Simplify accordingly.
30535
30536 2001-03-06  Bruno Haible  <haible@clisp.cons.org>
30537
30538         * lib/config.charset: Update for FreeBSD 4.2 and OSF/1 5.1. Add
30539         support for DOS/DJGPP.
30540
30541 2001-03-01  Paul Eggert  <eggert@twinsun.com>
30542
30543         * m4/jm-macros.m4 (jm_MACROS): Use mkstemp replacement if the system
30544         lacks mkstemp.  Compile our own tempname.c if we compile our own
30545         mkstemp.c, as mkstemp relies on tempname.
30546
30547 2001-03-01  Jim Meyering  <meyering@lucent.com>
30548
30549         * m4/dos.m4 (jm_AC_DOS): Remove extra backslashes, now that
30550         AH_VERBATIM really does output its argument verbatim.
30551
30552 2001-02-28  Paul Eggert  <eggert@twinsun.com>
30553
30554         * lib/Makefile.am (libfetish_a_SOURCES):
30555         Add dup-safer.c, fopen-safer.c.
30556         (noinst_HEADERS): Add stdio-safer.h, unistd-safer.h.
30557
30558         * lib/dup-safer.c, lib/fopen-safer.c, lib/stdio-safer.h:
30559         * lib/unistd-safer.h: New files.
30560
30561 2001-02-25  Paul Eggert  <eggert@twinsun.com>
30562
30563         The mkstemp replacement is taken from glibc 2.2.2, with some
30564         portability fixes for use outside glibc, as follows:
30565
30566         * lib/tempname.c (struct_stat64): New macro.
30567         (direxists, __gen_tempname): Use it.
30568         This avoids a portability problem with Solaris 8.
30569
30570         * lib/tempname.c (<config.h>): Include if HAVE_CONFIG_H.
30571         (<stddef.h>, <stdint.h>, <string.h>):
30572         Include only if STDC_HEADERS || _LIBC.
30573         (<fcntl.h>): Include only if HAVE_FCNTL_H || _LIBC.
30574         (<unistd.h>): Include only if HAVE_UNISTD_H || _LIBC.
30575         (<sys/time.h>): Include only if HAVE_SYS_TIME_H || _LIBC.
30576         (__set_errno): Define this macro if <errno.h> doesn't.
30577         (P_tmpdir, TMP_MAX, __GT_FILE, __GT_BIGFILE, __GT_DIR, __GT_NOCREATE):
30578         Define these macros if <stdio.h> doesn't.
30579         (S_ISDIR, S_IRUSR, S_IWUSR, S_IXUSR):
30580         Define these macros if <sys/stat.h>
30581         doesn't.  Ignore <sys/stat.h> S_ISDIR if STAT_MACROS_BROKEN.
30582         (stat64, __getpid, __gettimeofday, __mkdir, __open, __open64, lxstat64,
30583         __xstat64): Define if not _LIBC.
30584         (__secure_getenv): Define if ! (HAVE___SECURE_GETENV || _LIBC).
30585         (__gen_tempname): Invoke gettimeofday only if
30586         HAVE_GETTIMEOFDAY || _LIBC;
30587         otherwise, fall back on plain "time".
30588         Use macros like S_IRUSR | S_IWUSR rather than octal values like 0600.
30589
30590         * lib/mkstemp.c (__GT_FILE): Define to zero if not defined.
30591
30592         * lib/mkstemp.c, lib/tempname.c: New files, taken from glibc 2.2.2.
30593
30594 2001-02-18  Paul Eggert  <eggert@twinsun.com>
30595
30596         * m4/jm-macros.m4 (jm_CHECK_ALL_HEADERS): Check for sys/resource.h.
30597
30598 2001-02-17  Paul Eggert  <eggert@twinsun.com>
30599
30600         * m4/mbrtowc.m4: New file, defining jm_FUNC_MBRTOWC.
30601         * m4/mbswidth.m4 (jm_PREREQ_MBSWIDTH):
30602         Use jm_FUNC_MBRTOWC, not AC_CHECK_FUNCS(mbrtowc).
30603         * m4/prereq.m4 (jm_PREREQ_QUOTEARG): Likewise.
30604
30605 2001-02-17  Paul Eggert  <eggert@twinsun.com>
30606
30607         * lib/mbswidth.c, quotearg.c (mbrtowc, mbsinit):
30608         Remove workaround macros for hosts that have mbrtowc but not
30609         mbstate_t, as we now insist on proper declarations for both
30610         before using mbrtowc.
30611
30612 2001-02-17  Jim Meyering  <meyering@lucent.com>
30613
30614         * m4/ls-mntd-fs.m4 (jm_LIST_MOUNTED_FILESYSTEMS): Don't check for
30615         getmntent via AC_CHECK_FUNCS, since that would get a `no' and disrupt
30616         further attempts by AC_FUNC_GETMNTENT to check with e.g., -lgen on
30617         UnixWare 7.1.1.
30618
30619         * m4/mbrtowc.m4 (jm_FUNC_MBRTOWC): Adapt to use AC_CACHE_CHECK etc.,
30620         rather than AC_CACHE_VAL.
30621
30622 2001-02-17  Jim Meyering  <meyering@lucent.com>
30623
30624         * lib/strtoul.c: Sync from GNU libc.  Use double quotes, not <...>
30625         around included file name.
30626
30627         * lib/strnlen.c (__strnlen): Merge in a change from GNU libc.
30628
30629         * lib/strftime.c: Update from GNU libc (the only changes were to
30630         comments).
30631
30632 2001-02-17  Jim Meyering  <meyering@lucent.com>
30633
30634         * lib/regex.c: Update from libc.
30635
30636 2001-02-17  Bruno Haible  <haible@clisp.cons.org>
30637
30638         * lib/mbswidth.h (mbswidth): Also define as macro, to avoid prototype
30639         clash.
30640
30641 2001-02-16  Paul Eggert  <eggert@twinsun.com>
30642
30643         * lib/alloca.c (malloc): Undef before defining, since stdlib.h
30644         may have defined it.  Needed for Encore Umax-3.0.9.16b systems.
30645         Reported by Mark Hounschell via Paul Eggert.
30646
30647 2001-02-07  Jim Meyering  <meyering@lucent.com>
30648
30649         * m4/regex.m4 (jm_INCLUDED_REGEX): Add a test for the latest bug.
30650
30651 2001-02-05  Jim Meyering  <meyering@lucent.com>
30652
30653         * m4/jm-macros.m4: Require autoconf-2.14d (not yet released), because
30654         it includes the patch required for `large file' support with at least
30655         HP-UX's 10.20 /bin/cc.
30656
30657 2001-02-03  Jim Meyering  <meyering@lucent.com>
30658
30659         * m4/ls-mntd-fs.m4 (jm_LIST_MOUNTED_FILESYSTEMS): Restore prior use of
30660         AS_IF, now that it works once again (mysteriously).
30661         * m4/fsusage.m4 (jm_FILE_SYSTEM_USAGE): Likewise.
30662
30663 2001-01-30  Jim Meyering  <meyering@lucent.com>
30664
30665         Don't use filenames that are 8.3-equivalent to "conftest" on DOS.
30666         * m4/chown.m4: Rename conftestchown to conftest.chown.
30667         * m4/rename.m4: s/conftestdir/conftest.d1/ and
30668         s/conftestdir2/conftest.d2/.
30669         * m4/utimes.m4: s/conftestdata/conftest.data/
30670         Inspired by Pavel Roskin's change in autoconf.
30671
30672 2001-01-30  Bruno Haible  <haible@clisp.cons.org>
30673
30674         * lib/config.charset: Update for FreeBSD 4.2.
30675
30676 2001-01-27  Jim Meyering  <meyering@lucent.com>
30677
30678         * m4/ls-mntd-fs.m4 (jm_LIST_MOUNTED_FILESYSTEMS): Open-code what was
30679         a use of AS_IF.
30680         * m4/fsusage.m4 (jm_FILE_SYSTEM_USAGE): Likewise.
30681
30682 2001-01-26  Jim Meyering  <meyering@lucent.com>
30683
30684         * m4/prereq.m4 (jm_PREREQ_QUOTEARG): Check for stddef.h, now that
30685         quotearg.c includes it.
30686
30687 2001-01-26  Jim Meyering  <meyering@lucent.com>
30688
30689         * lib/quotearg.c: Include stddef.h.
30690         * lib/quote.c: Include stddef.h.
30691         Reported by Axel Kittenberger.
30692
30693         * lib/xmalloc.c [HAVE_DONE_WORKING_MALLOC_CHECK]: Enclose error-evoking
30694         line in double quotes so that it evokes a better diagnostic.
30695         [HAVE_DONE_WORKING_REALLOC_CHECK]: Likewise.
30696         Reported by Axel Kittenberger.
30697
30698 2001-01-24  Stefan Monnier  <monnier@cs.yale.edu>
30699
30700         * regex.c (mutually_exclusive_p): Don't blindly handle `charset_not'
30701         as if it was a `charset'.
30702
30703 2001-01-21  Bruno Haible  <haible@clisp.cons.org>
30704
30705         * m4/iconv.m4 (jm_ICONV): Also check whether the iconv declaration
30706         has const.
30707
30708 2001-01-21  Bruno Haible  <haible@clisp.cons.org>
30709
30710         * lib/unicodeio.c (print_unicode_char): Cast the second iconv() arg,
30711         to avoid a warning.  Add back 'const' to inptr.
30712
30713 2001-01-20  Jim Meyering  <meyering@lucent.com>
30714
30715         Be sure that headers are checked before used in code compiled
30716         for the type checks.
30717         * m4/jm-macros.m4 (jm_MACROS): Remove all header checks.
30718         In place of that, invoke jm_CHECK_ALL_TYPES.
30719         (jm_CHECK_ALL_HEADERS): New functions with the above checks.
30720         (jm_CHECK_ALL_TYPES): Require jm_CHECK_ALL_HEADERS.
30721         Alan Iwi reported a build failure on an f300-fujitsu-uxpv4.1_ES;
30722         The check for ssize_t was mistakenly run before the test for unistd.h.
30723
30724         The configure-time check for stdbool.h was missing.
30725         * m4/prereq.m4 (jm_PREREQ): Add jm_PREREQ_HASH.
30726         (jm_PREREQ_HASH): New function.
30727
30728 2001-01-17  Jim Meyering  <meyering@lucent.com>
30729
30730         * m4/fsusage.m4 (jm_FILE_SYSTEM_USAGE): Use AS_IF, not AS_IFELSE,
30731         for autoconf-2.49c.
30732         * m4/ls-mntd-fs.m4 (jm_LIST_MOUNTED_FILESYSTEMS): Likewise.
30733
30734 2001-01-16  Jim Meyering  <meyering@lucent.com>
30735
30736         * lib/basename.c: Include <stdio.h>, needed by assert on SunOS 4.
30737         From Bruno Haible.
30738
30739 2001-01-14  Jim Meyering  <meyering@lucent.com>
30740
30741         * m4/rename.m4: Use temporary directories named conftestdir{,2}, not
30742         foo and bar.  Create conftestdir/ in the script, not in the C code.
30743         Remove directories in the script, not in the C code.
30744         Remove conftestdir{,2} before trying to create the directory.
30745         Make the entire configure script fail if the mkdir fails.
30746
30747 2001-01-14  Jim Meyering  <meyering@lucent.com>
30748
30749         * lib/rename.c: New file.  From Volker Borchert.
30750         Include stdlib.h, string.h or strings.h, and xalloc.h.
30751         Use strip_trailing_slashes rather than open-coding it.
30752
30753 2001-01-03  Paul Eggert  <eggert@twinsun.com>
30754
30755         * lib/strftime.c: Sync with glibc time/strftime.c 1.81.
30756
30757 2001-01-03  Jim Meyering  <meyering@lucent.com>
30758
30759         * lib/unicodeio.c (print_unicode_char): Remove `const' from declaration
30760         of local `inptr' to avoid warning with some system declarations of
30761         iconv.
30762
30763 2001-01-02  Volker Borchert  <bt@teknon.de>
30764
30765         * m4/rename.m4: New file.
30766         * m4/jm-macros.m4 (jm_MACROS): Require vb_FUNC_RENAME.
30767
30768 2001-01-01  Jim Meyering  <meyering@lucent.com>
30769
30770         * m4/prereq.m4 (jm_PREREQ_READUTMP): Include utmp.h (if available),
30771         even on systems with utmpx.h.  It's necessary for the declaration of
30772         utmp's ut_user member.  Reported by Andreas Jaeger.
30773
30774         * m4/check-decl.m4 (jm_CHECK_DECLS): Include grp.h and pwd.h if
30775         available. They are required for the declarations of getgrgid and
30776         getpwuid resp.
30777         (_jm_DECL_HEADERS): Check for grp.h and pwd.h.
30778         Reported by Andreas Jaeger.
30779
30780 2001-01-01  Alexandre Duret-Lutz  <duret_g@epita.fr>
30781
30782         * m4/libintl.m4 (AM_GNU_GETTEXT): Define MKINSTALLDIRS by
30783         expanding the value of $ac_aux_dir, as in AM_MISSING_HAS_RUN,
30784         so `make install' also works in VPATH builds.
30785
30786 2000-12-31  Alexandre Duret-Lutz  <duret_g@epita.fr>
30787
30788         * m4/libintl.m4 (AM_WITH_NLS): When using AC_CONFIG_AUX_DIR,
30789         prepend $(top_srcdir) to the value of MKINSTALLDIRS so that it
30790         can be used in subdirectories.
30791
30792 2000-12-29  Paul Eggert  <eggert@twinsun.com>
30793
30794         * lib/modechange.c: Do not assume that mode_t uses the
30795         traditional octal encoding.  E.g. "chmod 1 FOO" should set
30796         the other-execute bit of FOO even if S_IXOTH != 1.
30797
30798         (SUID, SGID, SVTX, RUSR, WUSR, XUSR, RGRP, WGRP, XGRP, ROTH,
30799         WOTH, XOTH, ALLM): New macros.
30800         (S_ISUID, S_ISGID, S_ISVTX, S_IRUSR, S_IWUSR, S_IXUSR,
30801          S_IRGRP, S_IWGRP, S_IXGRP, S_IROTH, S_IWOTH, S_IXOTH):
30802         Use them.
30803         (S_ISGID): Fix typo; it was defaulting to the same value as S_ISUID.
30804         (S_IRWXU, S_IRWXG, S_IRWXO): Specify defaults in terms of the above.
30805         (mode_compile):
30806         No need to use uintmax_t; unsigned long is long enough.
30807         Don't bother to get suffix since we don't use it.
30808
30809 2000-12-26  Jim Meyering  <meyering@lucent.com>
30810
30811         * m4/dos.m4 (jm_AC_DOS): Rewrite (though it's still a stub) to work
30812         better with autoheader.
30813
30814 2000-12-24  Jim Meyering  <meyering@lucent.com>
30815
30816         * lib/hash.c (is_prime): Return explicit boolean values.
30817         (hash_get_first): Return NULL to appease Irix5.6's 89.
30818         Reported by Nelson Beebe.
30819
30820 2000-12-19  Bruno Haible  <haible@clisp.cons.org>
30821
30822         * lib/localcharset.c (locale_charset): Add support for Win32.
30823
30824 2000-12-18  Paul Eggert  <eggert@twinsun.com>
30825
30826         * lib/physmem.h, lib/physmem.c: New files.
30827
30828         * lib/Makefile.am (libfetish_a_SOURCES): Add physmem.c.
30829         (noinst_HEADERS): Add physmem.h.
30830
30831         * lib/xstrtol.c (__xstrtol): Add undocumented suffixes 'g' and
30832         't' for compatibility with Solaris 8 sort.
30833
30834 2000-12-18  Bruno Haible  <haible@clisp.cons.org>
30835
30836         * lib/config.charset: Add support for BeOS.
30837
30838 2000-12-17  Jim Meyering  <meyering@lucent.com>
30839
30840         * m4/dos.m4 (jm_AC_DOS): New file and macro.
30841         * m4/jm-macros.m4 (jm_MACROS): Require jm_AC_DOS.
30842
30843 2000-12-16  Jim Meyering  <meyering@lucent.com>
30844
30845         This bug had a serious impact on chown: `chown N:M FILE' (for integer
30846         N and M) would have treated it like `chown N:N FILE'.
30847
30848         * lib/userspec.c (parse_user_spec): Fix typo: s/u/g/.
30849
30850 2000-12-16  Jim Meyering  <meyering@lucent.com>
30851
30852         * lib/getusershell.c [!SHELLS_FILE && __DJGPP__]: Define
30853         SHELLS_FILE to a file name that's useful on djgpp systems.
30854         Include stdlib.h.
30855         (ADDITIONAL_DEFAULT_SHELLS): Define.
30856         (default_shells): Prepend ADDITIONAL_DEFAULT_SHELLS.
30857         Based mostly on a patch from Prashant TR.
30858
30859 2000-12-16  Bruno Haible  <haible@clisp.cons.org>
30860
30861         * lib/config.charset: Add ISO-8859-3, BIG5HKSCS, GB18030, JOHAB,
30862         VISCII, CP874, CP949, CP950, CP1250, CP1253, CP1254, CP1255, CP1256,
30863         CP1257 to the list of canonical encodings. Rename EUC-CN to GB2312.
30864
30865 2000-12-08  Andreas Schwab  <schwab@suse.de>
30866
30867         * lib/mbswidth.c (mbsnwidth): Don't loop endlessly when called with an
30868         invalid mulitbyte sequence and with the MBSW_ACCEPT_INVALID flag set.
30869
30870 2000-12-07  Jim Meyering  <meyering@lucent.com>
30871
30872         * lib/stripslash.c (ISSLASH): Define.
30873         (strip_trailing_slashes): Use ISSLASH rather than comparing against
30874         `/'.
30875         From Prashant TR.
30876
30877         * lib/dirname.c (FILESYSTEM_PREFIX_LEN): Define.
30878         (dir_name_r): Declare this function as static.
30879         [BACKSLASH_IS_PATH_SEPARATOR]: Fix a bug that'd
30880         manifest itself on a name containing a mix of slashes and
30881         backslashes.
30882         Make this function work with names starting with a DOS-style
30883         drive letter and colon prefix.
30884         (dir_name): Append `.' if necessary.
30885         Based mostly on patches from Prashant TR and Eli Zaretskii.
30886
30887         * lib/dirname.h (dir_name_r): Remove prototype.
30888
30889 2000-12-06  Paul Eggert  <eggert@twinsun.com>
30890
30891         * m4/off_t-format.m4: Remove this file.
30892         * m4/jm-macros.m4 (jm_MACROS): Remove jm_SYS_OFF_T_PRINTF_FORMAT.
30893
30894 2000-12-06  Jim Meyering  <meyering@lucent.com>
30895
30896         * m4/xstrtoumax.m4 (jm_AC_PREREQ_XSTRTOUMAX): If we need the
30897         replacement strtoull, we may well need the replacement strtoul, too.
30898         Check for declarations of strtoul and strtoull.
30899         Check for strtol.  Mainly as a cue to cause automake to include
30900         strtol.c -- that file is included by each of strtoul.c and strtoull.c.
30901         Check for limits.h -- strtol.c needs it.
30902
30903 2000-12-05  Jim Meyering  <meyering@lucent.com>
30904
30905         * lib/dirname.c (dir_name_r): Add `const' in a few local declarations.
30906
30907 2000-12-04  Jim Meyering  <meyering@lucent.com>
30908
30909         * lib/path-concat.c: [!HAVE_DECL_MALLOC]: Declare malloc.
30910         Also include memory.h, stdlib.h, unistd.h if appropriate.
30911         Reported by Andreas Jaeger (conflicting declaration of malloc).
30912
30913 2000-12-02  Jim Meyering  <meyering@lucent.com>
30914
30915         * m4/off_t-format.m4 (OFF_T_PRINTF_FORMAT_STRING): New file/macro.
30916         * m4/jm-macros.m4 (jm_MACROS): require it.
30917
30918 2000-12-02  Jim Meyering  <meyering@lucent.com>
30919
30920         * lib/closeout.h: Make idempotent, to avoid some obscure warnings.
30921
30922 2000-12-01  Paul Eggert  <eggert@twinsun.com>
30923
30924         * lib/memrchr.c: Include <config.h> before any system include file.
30925
30926 2000-11-30  Jim Meyering  <meyering@lucent.com>
30927
30928         * m4/jm-macros.m4 (jm_MACROS): Check for stdint.h.
30929
30930 2000-11-30  Jim Meyering  <meyering@lucent.com>
30931
30932         * m4/getloadavg.m4: s/ifval/m4_ifval/ to accommodate new autoconf.
30933
30934 2000-11-29  Paul Eggert  <eggert@twinsun.com>
30935
30936         * lib/dirname.c (dir_name_r): Fix typo: int -> size_t.
30937
30938 2000-11-26  Jim Meyering  <meyering@lucent.com>
30939
30940         * lib/memcoll.c: Include sys/types.h.  From Werner Almesberger.
30941
30942 2000-11-22  Paul Eggert  <eggert@twinsun.com>
30943
30944         * lib/strftime.c (my_strftime): Do not invoke mbrlen with a
30945         size of (size_t) -1; it's not portable.
30946
30947 2000-11-17  Jim Meyering  <meyering@lucent.com>
30948
30949         * lib/strstr.c: Update from GNU libc.
30950
30951 2000-11-17  Akim Demaille  <akim@epita.fr>
30952
30953         * lib/obstack.h: Formatting changes.
30954         (obstack_grow, obstack_grow0): Don't cast WHERE at all: that would
30955         prevent type checking.
30956         (obstack_ptr_grow, obstack_ptr_grow_fast): When assigning, don't
30957         cast the value to (void *): assigning a `foo *' to a `void *'
30958         variable is valid.
30959         (obstack_int_grow, obstack_int_grow_fast): Don't cast AINT to int.
30960
30961 2000-11-16  Jim Meyering  <meyering@lucent.com>
30962
30963         * lib/strverscmp.c: Incorporate weak-alias-related changes from glibc.
30964
30965 2000-11-11  Jim Meyering  <meyering@lucent.com>
30966
30967         * lib/error.c: Add a couple #includes, merging from GNU libc version.
30968
30969 2000-11-10  Jim Meyering  <meyering@lucent.com>
30970
30971         * lib/obstack.h: Update from GNU libc.
30972         * lib/obstack.c: Likewise.
30973
30974 2000-11-08  Bruno Haible  <haible@clisp.cons.org>
30975
30976         * m4/jm-macros.m4 (jm_MACROS): Add test for wcrtomb.
30977
30978 2000-11-06  Paul Eggert  <eggert@twinsun.com>
30979
30980         * lib/getusershell.c (setusershell): Use rewind rather than
30981         fseek/fseeko, to avoid configuration hassles with fseeko.
30982         Don't bother opening SHELLS_FILE if shellstream is NULL;
30983         it's not necessary.
30984
30985 2000-11-05  Jim Meyering  <meyering@lucent.com>
30986
30987         * lib/makepath.h (make_dir): Declare.
30988         * lib/makepath.c (make_dir): Remove `static' attribute.
30989         Tweak a comment.
30990
30991 2000-11-04  Jim Meyering  <meyering@lucent.com>
30992
30993         * m4/regex.m4: Use the `m4_' prefix on `syscmd' and `m4_sysval'.
30994
30995 2000-11-04  Alexandre Duret-Lutz  <duret_g@epita.fr>
30996
30997         * lib/hash.c (hash_get_next): Fix a thinko:  when ENTRY is the
30998         last one in a bucket, advance to the next bucket.
30999
31000 2000-11-02  Vesselin Atanasov  <vesselin@bgnet.bg>
31001
31002         * lib/fnmatch.c: Do not comment out all the code if we are using
31003         the GNU C library, because in some cases we are replacing buggy
31004         code in the GNU C library itself.
31005
31006 2000-10-30  Stefan Monnier  <monnier@cs.yale.edu>
31007
31008         * regex.c (re_iswctype, re_wctype_to_bit): Fix braino.
31009         (regex_compile): Catch bogus \(\1\).
31010
31011 2000-10-30  Paul Eggert  <eggert@twinsun.com>
31012
31013         * lib/fnmatch.c (FOLD): Do not assume that characters are unsigned.
31014         (fnmatch): Fix some FNM_FILE_NAME and FNM_LEADING_DIR bugs,
31015         e.g. fnmatch("d*/*1", "d/s/1", FNM_FILE_NAME) incorrectly yielded zero.
31016
31017 2000-10-30  Paul Eggert  <eggert@twinsun.com>
31018
31019         * lib/error.h, getline.h, modechange.h:
31020         Remove "2000" from Copyright line, as the file hasn't been
31021         changed this year other than in the copyright notice.
31022
31023         * lib/xalloc.h: Add "2000" to Copyright line, as this file
31024         was changed this year.
31025
31026 2000-10-29  Jim Meyering  <meyering@lucent.com>
31027
31028         * m4/fsusage.m4: s/AC_SHELL_IFELSE/AS_IFELSE/ to match autoconf
31029         renaming.
31030         * m4/ls-mntd-fs.m4: Likewise
31031
31032 2000-10-29  Jim Meyering  <meyering@lucent.com>
31033
31034         * lib/xstat.in: Fix grammar in comment.
31035
31036 2000-10-29  Greg Louis  <glouis@dynamicro.on.ca>
31037
31038         * lib/regex.h (__restrict_arr): Move definition out of #ifndef block.
31039         Required because egcs-2.91.66 (aka 1.1.2) defines __restrict, but
31040         doesn't define __restrict_arr.
31041
31042 2000-10-28  Jim Meyering  <meyering@lucent.com>
31043
31044         * m4/prereq.m4 (jm_PREREQ): Add jm_PREREQ_MEMCHR.
31045         (jm_PREREQ_MEMCHR): New function.
31046
31047 2000-10-28  Jim Meyering  <meyering@lucent.com>
31048
31049         * lib/memchr.c: Update from libc.
31050         Adjust for portability:
31051         [HAVE_STDLIB_H]: Include stdlib.h.
31052         [HAVE_BP_SYM_H || _LIBC]: Guard inclusion of bp-sym.h.
31053         Undef __memchr, too.
31054         [!weak_alias]: Define __memchr to memchr.
31055
31056         * lib/regex.c: Update from libc.
31057         * lib/regex.h: Likewise.
31058         * lib/getopt1.c: Likewise.
31059         * lib/memcmp.c: Likewise.
31060
31061         * lib/getusershell.c (setusershell) [HAVE_FSEEKO]: Use fseeko.
31062         Avoid using fseek, when possible -- it's broken by design.
31063         Patch by Ulrich Drepper.
31064
31065 2000-10-27  Stefan Monnier  <monnier@cs.yale.edu>
31066
31067         * regex.c (POP_FAILURE_REG_OR_COUNT, re_match_2_internal)
31068         (re_match_2_internal, re_match_2_internal, re_match_2_internal):
31069         Giving in to popular pressure to shut up the compiler with casts.
31070
31071 2000-10-26  Jim Meyering  <meyering@lucent.com>
31072
31073         * lib/strftime.c: Update from libc.
31074
31075 2000-10-25  Stefan Monnier  <monnier@cs.yale.edu>
31076
31077         * regex.c: More `unsigned char' -> `re_char' changes.
31078         Also change several `int' into `re_wchar_t'.
31079         (PATTERN_STACK_EMPTY, PUSH_PATTERN_OP, POP_PATTERN_OP): Remove.
31080         (PUSH_FAILURE_POINTER): Don't cast any more.
31081         (POP_FAILURE_REG_OR_COUNT): Remove the cast that strips `const'.
31082         We want GCC to complain, since this piece of code makes
31083         re_match non-reentrant, which *should* be fixed.
31084         (GET_BUFFER_SPACE): Use size_t rather than unsigned long.
31085         (EXTEND_BUFFER): Use RETALLOC.
31086         (SET_LIST_BIT): Don't cast.
31087         (re_wchar_t): New type.
31088         (re_iswctype, re_wctype_to_bit): Make it crystal clear to GCC
31089         that those two functions will always properly return.
31090         (IMMEDIATE_QUIT_CHECK): Cast to void.
31091         (analyse_first): Use recursion rather than an explicit stack.
31092         (re_compile_fastmap): Can't fail anymore.
31093         (re_search_2): Don't check re_compile_fastmap for failure.
31094         (PUSH_NUMBER): Renamed from PUSH_FAILURE_COUNT.
31095         Now also sets the new value (passed in a new argument).
31096         (re_match_2_internal): Use it.
31097         Also, use a new var `reg' of type size_t when looping through regs
31098         rather than reuse the inappropriate `mcnt'.
31099
31100 2000-10-25  Jim Meyering  <meyering@lucent.com>
31101
31102         * lib/obstack.c: Update from libc.
31103
31104 2000-10-24  Kenichi Handa  <handa@etl.go.jp>
31105
31106         * regex.c (regex_compile): Change the way of handling a range from
31107         a char less than 256 to a char not less than 256.
31108
31109 2000-10-24  Andrew Innes  <andrewi@gnu.org>
31110
31111         * regex.c (IMMEDIATE_QUIT_CHECK): New macro, which does QUIT on
31112         NT-Emacs only.
31113         (re_match_2_internal): Use IMMEDIATE_QUIT_CHECK instead of QUIT,
31114         so that re_search functions only quit when callers expect them to.
31115
31116 2000-10-23  Jim Meyering  <meyering@lucent.com>
31117
31118         * lib/hard-locale.c (hard_locale): Revert last change -- it was simply
31119         wrong.  That set_locale call must not have any side effects.
31120         From Paul Eggert.
31121
31122 2000-10-22  Jim Meyering  <meyering@lucent.com>
31123
31124         * lib/md5.c (md5_process_block) [OP]: Use `rol', not CYCLIC.
31125         [CYCLIC]: Remove now-unused definition.
31126
31127         * lib/save-cwd.c (O_DIRECTORY): Define, if needed.
31128         (save_cwd) [HAVE_FCHDIR]: Use O_DIRECTORY when opening ".".
31129         Suggestion from Ulrich Drepper.
31130
31131 2000-10-21  Jim Meyering  <meyering@lucent.com>
31132
31133         * m4/check-decl.m4 (jm_CHECK_DECLS): Also check for memrchr.
31134         * m4/prereq.m4 (jm_PREREQ_DIRNAME): New macro.
31135         * m4/jm-macros.m4 (AC_REPLACE_FUNCS): Add memrchr.
31136
31137 2000-10-21  Jim Meyering  <meyering@lucent.com>
31138
31139         * lib/dirname.c (memrchr): Declare if necessary.
31140         (dir_name): Remove the restriction that there be no
31141         trailing slashes.  Now, this code skips past them, effectively
31142         ignoring them.
31143         [TEST_DIRNAME] (main): New unit tests.
31144
31145         * lib/memrchr.c: New file from GNU libc.
31146         Undef __memrchr, too.
31147         [!weak_alias]: Define __memrchr to memrchr.
31148         Guard weak_alias use with `#ifdef weak_alias'.
31149
31150 2000-10-21  Jim Meyering  <meyering@lucent.com>
31151
31152         * lib/dirname.c (dir_name_r): New function, factored out of dir_name.
31153         (dir_name): Use dir_name_r.
31154         * lib/dirname.h (dir_name_r): Declare it.
31155
31156 2000-10-17  Jim Meyering  <meyering@lucent.com>
31157
31158         * lib/quote.h (PARAMS): Define and use.
31159         Reported by Akim Demaille.
31160
31161         * lib/getopt.c: Update from libc.
31162
31163 2000-10-16  Jim Meyering  <meyering@lucent.com>
31164
31165         * lib/hard-locale.c (hard_locale): Use "", not 0 as 2nd arg to
31166         setlocale.
31167         From Jan Fedak.
31168
31169 2000-10-15  Stefan Monnier  <monnier@cs.yale.edu>
31170
31171         * regex.c (WIDE_CHAR_SUPPORT): Define if _LIBC as well.
31172
31173 2000-09-25  Jim Meyering  <meyering@lucent.com>
31174
31175         * lib/md5.h (rol): Define (from GnuPG).
31176
31177         * lib/sha.c: Give credit (GnuPG) where due.
31178         (M): Use rol rather than open-coding it.
31179         Add a FIXME comment.
31180
31181 2000-09-21  Jim Meyering  <meyering@lucent.com>
31182
31183         * lib/userspec.c (parse_user_spec): Remove debugging printf I'd added.
31184         Reported by Michael Stone.
31185
31186 2000-09-20  Jim Meyering  <meyering@lucent.com>
31187
31188         * lib/Makefile.am (libfetish_a_SOURCES): Add sha.c.
31189         (noinst_HEADERS): Add sha.h.
31190         Based on code from Scott G. Miller and from GnuPG.
31191
31192 2000-09-18  Jim Meyering  <meyering@lucent.com>
31193
31194         * m4/getloadavg.m4 (AC_FUNC_GETLOADAVG): Restore the initial value of
31195         LIBS. Otherwise, everyone ends up linking with -lelf for some
31196         configurations.
31197         Reported by Mike Stone.
31198
31199 2000-09-15  Jim Meyering  <meyering@lucent.com>
31200
31201         * lib/regex.c: Update from libc.
31202
31203 2000-09-10  Jim Meyering  <meyering@lucent.com>
31204
31205         * lib/getopt.c (_getopt_internal): Update from glibc.
31206
31207 2000-09-09  Jim Meyering  <meyering@lucent.com>
31208
31209         * lib/quotearg.c: Rename ISASCII to IN_CTYPE_DOMAIN, so people don't
31210         think it should be used as a general replacement for isascii.
31211         * lib/fnmatch.c: Likewise.
31212         * lib/mbswidth.c: Likewise
31213         * lib/regex.c: Likewise.
31214
31215         Don't use atoi.
31216         * lib/userspec.c: Include sys/param.h and limits.h.
31217         Include xstrtol.h.
31218         (CHAR_BIT, TYPE_SIGNED, TYPE_MINIMUM, TYPE_MAXIMUM): Define.
31219         (UID_T_MAX, GID_T_MAX, MAXUID, MAXGID): Define.
31220         (parse_user_spec): Use xstrtoul, not atoi when converting numeric
31221         UID, GID.  Check range.
31222
31223 2000-09-06  Jim Meyering  <meyering@lucent.com>
31224
31225         * lib/getopt.c (_getopt_internal): Update from glibc.
31226
31227 2000-08-30  Jim Meyering  <meyering@lucent.com>
31228
31229         * lib/strftime.c: Merge in changes from GNU libc.
31230
31231 2000-08-26  Jim Meyering  <meyering@lucent.com>
31232
31233         * m4/jm-macros.m4: Use jm_FUNC_FPENDING.
31234         * m4/fpending.m4: New file.
31235
31236 2000-08-26  Jim Meyering  <meyering@lucent.com>
31237
31238         * lib/closeout.c: Include "__fpending.h".
31239         (close_stdout_status): Return right away if there's nothing to flush.
31240
31241         * lib/Makefile.am (noinst_HEADERS): Add __fpending.h.
31242         * lib/__fpending.c: New file.
31243         * lib/__fpending.h: New file.
31244
31245 2000-08-20  Jim Meyering  <meyering@lucent.com>
31246
31247         * m4/check-decl.m4: Include utmp.h `#if HAVE_UTMP_H', rather than
31248         `#if !HAVE_UTMPX_H'.  The latter would lose on systems with neither
31249         utmp.h nor utmpx.h.  Reported by Eli Zaretskii.
31250
31251 2000-08-11  J. David Anglin  <dave@hiauly1.hia.nrc.ca>
31252
31253         Improve fileutils installation on systems where running
31254         programs (like install) can't be unlinked.
31255         * m4/unlink-busy.m4 (jm_FUNC_UNLINK_BUSY_TEXT): New file/macro.
31256         * m4/jm-macros.m4: Use jm_FUNC_UNLINK_BUSY_TEXT.
31257
31258 2000-08-07  Paul Eggert  <eggert@twinsun.com>
31259
31260         Standardize on "memory exhausted" instead of "Memory exhausted"
31261         or "virtual memory exhausted".
31262         * lib/obstack.c (print_and_abort): Use "memory exhausted", not
31263         "virtual memory exhausted".
31264         * lib/same.c (same_name): Invoke xalloc_die instead of printing
31265         our own message.
31266         * lib/userspec.c (parse_user_spec): Likewise.
31267         * lib/bumpalloc.h: comment fix
31268         * lib/same.c, userspec.c: Include xalloc.h.
31269
31270         * lib/xalloc.h (xalloc_msg_memory_exhausted): Now char const[],
31271         not char *const and pointing to a constant array.
31272         * lib/xmalloc.c (xalloc_msg_memory_exhausted): Likewise.
31273         (xrealloc): Comment fix.
31274
31275         * lib/userspec.c (parse_user_spec):
31276         Don't translate a message until just before returning,
31277         to avoid unnecessary translation.
31278
31279 2000-08-07  Jim Meyering  <meyering@lucent.com>
31280
31281         * lib/addext.c, argmatch.c, argmatch.h, backupfile.h, bumpalloc.h,
31282         chown.c, diacrit.h, dirname.h, dup2.c, exclude.h, fileblocks.c,
31283         fnmatch.c, fnmatch.h, fsusage.c, fsusage.h, getdate.h,
31284         getgroups.c, gethostname.c, getopt.h, group-member.c,
31285         hard-locale.c, hash.h, isdir.c, lchown.c, linebuffer.c,
31286         linebuffer.h, long-options.h, malloc.c, md5.c, md5.h, memchr.c,
31287         memcmp.c, memcoll.c, memset.c, mktime.c, modechange.h, obstack.h,
31288         pathmax.h, realloc.c, rmdir.c, safe-read.c, save-cwd.c, stime.c,
31289         stpcpy.c, strcasecmp.c, strcspn.c, strdup.c, stripslash.c,
31290         strstr.c, strtod.c, strtol.c, strtoul.c, strtoull.c, strtoumax.c,
31291         utime.c, version-etc.h, xalloc.h, xstrdup.c, xstrtoumax.c,
31292         yesno.c: Back out Copyright date changes for each file with no change
31293         this year.  This eases coordination with other programs using the same
31294         source code modules.  From Paul Eggert.
31295
31296 2000-08-06  Paul Eggert  <eggert@twinsun.com>
31297
31298         * m4/mbstate_t.m4 (AC_MBSTATE_T): Define mbstate_t to be int,
31299         not char, for compatibility with glibc 2.1.3 strftime.c.
31300
31301 2000-08-03  Greg McGary  <greg@mcgary.org>
31302
31303         * lib/regex.c (SET_HIGH_BOUND, MOVE_BUFFER_POINTER,
31304         ELSE_EXTEND_BUFFER_HIGH_BOUND): New macros.
31305         (EXTEND_BUFFER): Use them.
31306
31307 2000-08-01  Jim Meyering  <meyering@lucent.com>
31308
31309         * lib/dirname.c (ISSLASH): Define.
31310         (BACKSLASH_IS_PATH_SEPARATOR): Define.
31311         (dir_name) [BACKSLASH_IS_PATH_SEPARATOR]: Handle the case in which
31312         both `\' and `/' may be use as path separators.
31313         Based on a patch from Prashant TR.
31314
31315 2000-07-31  Paul Eggert  <eggert@twinsun.com>
31316
31317         * lib/quotearg.c (quotearg_n_options): Don't make the initial
31318         slot vector a constant, since it might get modified.
31319
31320 2000-07-31  Jim Meyering  <meyering@lucent.com>
31321
31322         * lib/xmalloc.c: Use `virtual memory exhausted', not
31323         `Memory exhausted'.
31324         * lib/obstack.c (print_and_abort): Likewise.
31325
31326 2000-07-30  Paul Eggert  <eggert@twinsun.com>
31327
31328         * lib/quotearg.c (quotearg_n_options): Preallocate a slot 0
31329         buffer, so that the caller can always quote one small
31330         component of a "memory exhausted" message in slot 0.
31331         From a suggestion by Jim Meyering.
31332
31333 2000-07-30  Jim Meyering  <meyering@lucent.com>
31334
31335         * lib/makepath.c (make_path): Quote the other instance, too.
31336
31337         * lib/quotearg.c (N_STATIC_SLOTVECS): Define.
31338         (STATIC_BUF_SIZE): Define.
31339         (quotearg_n_options): Use only statically allocated storage when
31340         N < N_STATIC_SLOTVECS and the length of the quoted result is smaller
31341         than STATIC_BUF_SIZE.
31342
31343 2000-07-29  Jim Meyering  <meyering@lucent.com>
31344
31345         * lib/diacrit.c (diacrit_diac): Use __MSDOS__ in favor of MSDOS.
31346         * lib/dirname.c (dir_name): Likewise.
31347
31348         * lib/basename.c (base_name): Use ISSLASH rather than comparing against
31349         `/'.
31350
31351         * lib/dirname.c (dir_name) [MSDOS]: Declare `lim' to be const.
31352         (dir_name): Assert that there are no trailing slashes.
31353
31354 2000-07-29  Bruno Haible  <haible@clisp.cons.org>
31355
31356         * lib/mbswidth.h (mbswidth): Add a flags argument.
31357         (mbswidth): New declaration.
31358         (MBSW_ACCEPT_INVALID, MBSW_ACCEPT_UNPRINTABLE): New macros.
31359         * lib/mbswidth.c (mbswidth): Add a flags argument.
31360         (mbsnwidth): New function.
31361
31362 2000-07-24  Jim Meyering  <meyering@lucent.com>
31363
31364         * lib/mbswidth.c: Remove useless #else.  From Bruno Haible.
31365
31366 2000-07-23  Paul Eggert  <eggert@twinsun.com>
31367
31368         * m4/mbswidth.m4 (jm_PREREQ_MBSWIDTH): Check for wcwidth declaration.
31369
31370 2000-07-23  Paul Eggert  <eggert@twinsun.com>
31371
31372         * lib/quotearg.c: Streamline by invoking multibyte code only if needed.
31373         <wchar.h>: Include only if HAVE_MBRTOWC && 1 < MB_LEN_MAX.
31374         (MB_CUR_MAX): Redefine to 1 if ! (HAVE_MBRTOWC && 1 < MB_LEN_MAX).
31375         (quotearg_buffer_restyled): If a unibyte locale, don't bother to
31376         invoke multibyte primitives.
31377
31378 2000-07-23  Paul Eggert  <eggert@twinsun.com>
31379
31380         * lib/quotearg.c:
31381         Include <wchar.h> even if ! (HAVE_MBRTOWC && 1 < MB_LEN_MAX),
31382         so that mbstate_t is always defined.
31383
31384         Do not inspect MB_LEN_MAX, since it's incorrectly defined to
31385         be 1 in at least one GCC installation, and this configuration
31386         error is likely to be common.  Ignoring MB_LEN_MAX hurts
31387         performance on hosts that have mbrtowc but have only unibyte
31388         locales, but I assume these hosts are rare.
31389
31390 2000-07-23  Paul Eggert  <eggert@twinsun.com>
31391
31392         * lib/mbswidth.c (_XOPEN_SOURCE):
31393         Don't define; this causes problems on Solaris 7.
31394         (wcwidth) [!HAVE_DECL_WCWIDTH]: Declare.
31395
31396 2000-07-23  Jim Meyering  <meyering@lucent.com>
31397
31398         * m4/check-decl.m4 (jm_CHECK_DECLS): Check for declarations of these,
31399         too: getgrgid, getpwuid, getuid.
31400
31401 2000-07-23  Jim Meyering  <meyering@lucent.com>
31402
31403         * lib/basename.c (base_name): Add an assertion.
31404
31405 2000-07-23  Bruno Haible  <haible@clisp.cons.org>
31406
31407         * lib/quotearg.c: When the system forces us to redefine mbstate_t,
31408         shadow its mbsinit function.
31409
31410 2000-07-17  Bruno Haible  <haible@clisp.cons.org>
31411
31412         * lib/mbswidth.h: New file.
31413         * lib/mbswidth.c: New file.
31414         * lib/Makefile.am (libfetish_a_SOURCES): Add mbswidth.c.
31415         (noinst_HEADERS): Add mbswidth.h.
31416
31417 2000-07-17  Bruno Haible  <haible@clisp.cons.org>
31418
31419         * lib/config.charset: Add support for FreeBSD. Improve support for
31420         HP-UX and IRIX 6.
31421
31422 2000-07-16  Bruno Haible  <haible@clisp.cons.org>
31423
31424         * m4/mbswidth.m4: New file.
31425         * m4/prereq.m4 (jm_PREREQ): Call jm_PREREQ_MBSWIDTH.
31426
31427 2000-07-15  Jim Meyering  <meyering@lucent.com>
31428
31429         * lib/makepath.c: Include quote.h.
31430         (make_path): Convert "`%s'" in format strings to "%s", and wrap each
31431         corresponding argument in a `quote (...)' call.
31432         Give better diagnostics.
31433
31434         * lib/Makefile.am (libfetish_a_SOURCES): Add quote.c.
31435         (noinst_HEADERS): Add quote.h.
31436
31437         * lib/quote.c (quote, quote_n): New file.  Two functions taken verbatim
31438         from tar's src/misc.c.
31439         * lib/quote.h: New file.  Prototypes for same.
31440
31441 2000-07-14  Paul Eggert  <eggert@twinsun.com>
31442
31443         From a suggestion by Bruno Haible.
31444         * lib/quotearg.c (mbrtowc): Do not use HAVE_WCHAR_H in the definition.
31445         Use defined mbstate_t, not HAVE_MBSTATE_T_OBJECT,
31446         to decide whether to define the BeOS workaround macro;
31447         this adjusts to the change to AC_MBSTATE_T.
31448
31449 2000-07-14  Jim Meyering  <meyering@lucent.com>
31450
31451         * m4/xstrtoumax.m4 (jm_AC_PREREQ_XSTRTOUMAX): Require
31452         jm_AC_TYPE_UINTMAX_T.
31453
31454 2000-07-13  Paul Eggert  <eggert@twinsun.com>
31455
31456         * lib/quotearg.h (enum quoting style): New enum clocale_quoting_style.
31457
31458         * lib/quotearg.c (quoting_style_args, quoting_style_vals,
31459         quotearg_buffer_restyled): Add support for
31460         clocale_quoting_style.  Undo previous change to
31461         locale_quoting_style behavior, and undo the "{LEFT QUOTATION MARK}"
31462         and "{RIGHT QUOTATION MARK}" msgids.
31463
31464 2000-07-10  Paul Eggert  <eggert@twinsun.com>
31465
31466         From a suggestion by Bruno Haible.
31467         * m4/mbstate_t.m4 (AC_MBSTATE_T):
31468         Renamed from AC_MBSTATE_T_OBJECT.  All uses changed.
31469         Change from a two-part test, which defines both HAVE_MBSTATE_T_OBJECT
31470         and mbstate_t, to a single-part test that simply defines mbstate_t.
31471         * m4/prereq.m4 (jm_PREREQ_QUOTEARG):
31472         s/AC_MBSTATE_T_OBJECT/AC_MBSTATE_T/.
31473
31474 2000-07-10  Jim Meyering  <meyering@lucent.com>
31475
31476         * m4/strerror_r.m4: Mirror the correction made in autoconf.
31477
31478         * m4/gnu-source.m4: Output to confdefs.h directly.
31479         Suggestion from Akim Demaille.
31480
31481 2000-07-09  Paul Eggert  <eggert@twinsun.com>
31482
31483         The old behavior of quoting `like this' doesn't look good with
31484         newer, ISO-style fonts.  See:
31485         http://www.cl.cam.ac.uk/~mgk25/ucs/quotes.html
31486
31487         Instead, quote "like this" by default.  Let the translator
31488         tailor the locale-specific quoting behavior by providing
31489         translations for {LEFT QUOTATION MARK} and {RIGHT QUOTATION MARK}.
31490
31491         * lib/quotearg.c (N_): New macro.
31492         (gettext_default): New function.
31493         (quotearg_buffer_restyled): Use
31494         gettext_default ("{LEFT QUOTATION MARK}", "\"") for left quote, and
31495         gettext_default ("{RIGHT QUOTATION MARK}", "\"") for right quote.
31496
31497 2000-07-09  Jim Meyering  <meyering@lucent.com>
31498
31499         * m4/jm-macros.m4 (jm_MACROS): Add a test to see if -lm is required
31500         to link seq.  If so, set SEQ_LIBM to -lm.  From Bruno Haible.
31501
31502         * m4/gnu-source.m4 (AC__GNU_SOURCE): New file/macro.
31503         * m4/jm-macros.m4 (jm_CHECK_ALL_TYPES): Require it.
31504
31505 2000-07-09  Jim Meyering  <meyering@lucent.com>
31506
31507         * lib/Most files: Update copyright dates to include 2000.
31508
31509 2000-07-08  Jim Meyering  <meyering@lucent.com>
31510
31511         * lib/xgethostname.c (ENAMETOOLONG): Define to an unlikely value
31512         if not defined.
31513         (xgethostname): Remove now-unnecessary #ifdef.
31514         Move declaration of `err' into loop where it's used.
31515
31516 2000-07-05  Paul Eggert  <eggert@twinsun.com>
31517         and Bruno Haible  <haible@clisp.cons.org>
31518
31519         * m4/mbstate_t.m4 (AC_MBSTATE_T_OBJECT): Test for mbstate_t
31520         only if the test for an object-type mbstate_t fails.  This
31521         prevents us from mistakenly reporting that mbstate_t is a
31522         system object type after we "#define mbstate_t int" to work
31523         around its lack.
31524
31525 2000-07-05  Paul Eggert  <eggert@twinsun.com>
31526         and Bruno Haible  <haible@clisp.cons.org>
31527
31528         * lib/quotearg.c (mbrtowc): Declare returned type, since BeOS doesn't.
31529
31530 2000-07-05  Bruno Haible  <haible@clisp.cons.org>
31531
31532         * m4/strerror_r.m4 (AC_FUNC_STRERROR_R): Pass a reasonably large buffer
31533         to strerror_r.
31534         Include <ctype.h> for use of isalpha.
31535
31536 2000-07-05  Bruno Haible  <haible@clisp.cons.org>
31537
31538         * lib/xgethostname.c (xgethostname): Protect against the SunOS 5.5 bug
31539         by allocating a larger buffer. Test the gethostname return value for
31540         being >= 0, not == 0, for BeOS.  Don't exhaust memory if gethostname
31541         returns an error and ENAMETOOLONG isn't defined.
31542
31543 2000-07-05  Bruno Haible  <haible@clisp.cons.org>
31544
31545         * lib/quotearg.c (struct quoting_options): Simplify quote_these_too
31546         dimension.
31547
31548 2000-07-04  Jim Meyering  <meyering@lucent.com>
31549
31550         * m4/fsusage.m4 (jm_FILE_SYSTEM_USAGE): Use plain old `echo' instead
31551         of the deprecated AC_CHECKING.
31552
31553 2000-07-04  Jim Meyering  <meyering@lucent.com>
31554
31555         * lib/strndup.c: [!HAVE_DECL_STRNLEN]: Declare strnlen.
31556         Reported by Bruno Haible.
31557
31558 2000-07-04  Jim Meyering  <meyering@lucent.com>
31559
31560         * lib/quotearg.c: Make inclusion of <wchar.h> independent of whether
31561         HAVE_MBRTOWC is set.  Required at least for irix-5.6, which
31562         lacks mbrtowc.
31563
31564 2000-07-03  Paul Eggert  <eggert@twinsun.com>
31565
31566         * m4/mbstate_t.m4 (AC_MBSTATE_T_OBJECT): Port to autoconf 2.13.
31567         Add AC_CHECK_HEADERS(stdlib.h), since we use HAVE_STDLIB_H.
31568
31569 2000-07-03  Paul Eggert  <eggert@twinsun.com>
31570         and Bruno Haible  <haible@clisp.cons.org>
31571
31572         * lib/quotearg.c (mbrtowc):
31573         Assign to *pwc, and return 1 only if result is nonzero.
31574         (iswprint): Use ISPRINT when substituting our own mbrtowc.
31575
31576 2000-07-03  Jim Meyering  <meyering@lucent.com>
31577
31578         * m4/check-decl.m4 (AC_CHECK_DECLS): Add strnlen.
31579
31580 2000-07-03  Jim Meyering  <meyering@lucent.com>
31581
31582         * lib/readutmp.h: [HAVE_UTMPX_H]: Include <utmp.h> if HAVE_UTMP_H.
31583         This is necessary to get a definition of e.g., UTMP_FILE on
31584         HP-UX 10.20.
31585         From Bob Proulx.
31586
31587 2000-07-02  Jim Meyering  <meyering@lucent.com>
31588
31589         * m4/mbstate_t.m4: Also define mbstate_t, if necessary.
31590
31591         * m4/chown.m4: Replace each use of AC_SUBST(LIBOBJS)/LIBOBJS=... with
31592         AC_LIBOBJ(function_name).
31593         * m4/chown.m4: Likewise.
31594         * m4/fnmatch.m4: Likewise.
31595         * m4/ftruncate.m4: Likewise.
31596         * m4/getgroups.m4: Likewise.
31597         * m4/getline.m4: Likewise.
31598         * m4/group-member.m4: Likewise.
31599         * m4/jm-macros.m4: Likewise.
31600         * m4/lstat.m4: Likewise.
31601         * m4/malloc.m4: Likewise.
31602         * m4/memcmp.m4: Likewise.
31603         * m4/nanosleep.m4: Likewise.
31604         * m4/putenv.m4: Likewise.
31605         * m4/realloc.m4: Likewise.
31606         * m4/regex.m4: Likewise.
31607         * m4/stat.m4: Likewise.
31608         * m4/strftime.m4: Likewise.
31609
31610 2000-07-02  Jim Meyering  <meyering@lucent.com>
31611
31612         * lib/quotearg.c (mbstate_t): Don't define here.
31613
31614 2000-07-02  Jim Meyering  <meyering@lucent.com>
31615
31616         * lib/nanosleep.c (SIGCONT): Define if not already defined.
31617
31618 2000-07-01  Jim Meyering  <meyering@lucent.com>
31619
31620         * m4/uptime.m4: Put double quotes around use of $cross_compiling.
31621
31622 2000-07-01  Jim Meyering  <meyering@lucent.com>
31623
31624         * m4/ls-mntd-fs.m4: Remove a `FIXME' comment and fix the associated
31625         problem.
31626
31627 2000-07-01  Bruno Haible  <haible@clisp.cons.org>
31628
31629         * m4/ls-mntd-fs.m4 (jm_LIST_MOUNTED_FILESYSTEMS): Rename BeOS specific
31630         macro from MOUNTED_NEXT_DEV to MOUNTED_FS_STAT_DEV.
31631
31632 2000-07-01  Bruno Haible  <haible@clisp.cons.org>
31633
31634         * lib/mountlist.c: Use MOUNTED_FS_STAT_DEV instead of MOUNTED_NEXT_DEV,
31635         per change in ../m4/ls-mntd-fs.m4.
31636         (read_filesystem_list): Ignore symbolic links.
31637
31638 2000-06-29  Jim Meyering  <meyering@lucent.com>
31639
31640         * lib/same.c: Include <string.h> or <strings.h>, as appropriate,
31641         for declaration of strcmp.
31642
31643         * lib/long-options.c: Include <stdlib.h>, for declaration of exit.
31644
31645         * lib/mountlist.c (fsp_to_string) [HAVE_F_FSTYPENAME_IN_STATFS]:
31646         Avoid warning by casting result to `char *' to remove `const'.
31647
31648 2000-06-28  Jim Meyering  <meyering@lucent.com>
31649
31650         * m4/mbstate_t.m4: Use stdlib.h, not stdio.h.  The latter is not
31651         included by quotearg.c, for which we perform this test.  From
31652         Bruno Haible.
31653
31654 2000-06-27  Bruno Haible  <haible@clisp.cons.org>
31655
31656         * m4/check-decl.m4 (_jm_DECL_HEADERS): Check for utmp.h as well.
31657         * m4/prereq.m4 (jm_PREREQ_READUTMP): Likewise. If either <utmp.h> or
31658         <utmpx.h> exists, put readutmp.o into LIBOBJS.
31659
31660 2000-06-27  Bruno Haible  <haible@clisp.cons.org>
31661
31662         * lib/Makefile.am (libfetish_a_SOURCES): Remove readutmp.c.
31663
31664 2000-06-26  Paul Eggert  <eggert@twinsun.com>
31665
31666         savedir now sets errno on failure and invokes xmalloc to get memory.
31667         Fix a couple of other minor bugs while we're at it.
31668
31669         * lib/savedir.c (<unistd.h>): Do not include; there's no need.
31670         (NAMLEN): Remove macro.
31671         (malloc, realloc): Remove decls.
31672         (stpcpy): Likewise.
31673         ("xalloc.h"): Include.
31674         (NAME_SIZE_DEFAULT): New macro.
31675         (savedir): Use xmalloc / xrealloc to allocate memory.
31676         Use NAME_SIZE_DEFAULT if name_size is negative or overflows to zero.
31677         Skip "" directory entries.
31678         Use strlen to calculate directory entry length, since the old method
31679         is rarely used these days and isn't worth supporting.
31680         Don't use a pointer after freeing it.
31681         Check for integer overflow when calculating allocation size.
31682         Use memcpy to copy entries, instead of stpcpy.
31683         Set errno properly when returning NULL.
31684         Check for readdir error.
31685
31686 2000-06-26  Jim Meyering  <meyering@lucent.com>
31687
31688         * lib/posixtm.c [HAVE_STDLIB_H]: Include stdlib.h, for decl of abort.
31689
31690 2000-06-25  Jim Meyering  <meyering@lucent.com>
31691
31692         * m4/mbstate_t.m4: Include stdio.h before wchar.h to work around
31693         Linux header bug when _XOPEN_SOURCE is defined to 500.
31694
31695 2000-06-25  Bruno Haible  <haible@clisp.cons.org>
31696
31697         * lib/unicodeio.c (print_unicode_char): Work around ansi2knr
31698         deficiency.
31699
31700 2000-06-25  Bruno Haible  <haible@clisp.cons.org>
31701
31702         * lib/getusershell.c (xmalloc, xrealloc): Remove functions.
31703         Include xalloc.h.
31704         Don't include <stdlib.h>.  Don't declare malloc, realloc.
31705
31706 2000-06-24  Jim Meyering  <meyering@lucent.com>
31707
31708         * m4/strerror_r.m4: Revive this file -- to try out an experimental
31709         version of AC_FUNC_STRERROR_R that may work even on BeOS, a system
31710         for which strerror does return char*, but which lacks a conveniently
31711         accessible declaration of the function.  If the compile-test says
31712         strerror_r doesn't work, then resort to a `run'-test that works on
31713         BeOS and segfaults on DEC Unix.
31714
31715 2000-06-24  Jim Meyering  <meyering@lucent.com>
31716
31717         * lib/error.c [!HAVE_DECL_STRERROR_R]: Declare strerror_r.
31718
31719 2000-06-23  Paul Eggert  <eggert@twinsun.com>
31720
31721         * m4/mbstate_t.m4: New file, defining AC_MBSTATE_T_OBJECT.
31722         * m4/prereq.m4 (jm_PREREQ_QUOTEARG): Use it.  Add check for iswprint.
31723
31724 2000-06-23  Paul Eggert  <eggert@twinsun.com>
31725
31726         * lib/quotearg.c: Include <wctype.h> after <wchar.h>, for Solaris 2.5.
31727         (mbrtowc, mbstate_t): Define substitutes if
31728         HAVE_MBRTOWC && HAVE_WCHAR_H && !HAVE_MBSTATE_T_OBJECT.
31729         (iswprint): Define to 1 if !defined iswprint && !HAVE_ISWPRINT,
31730         not if ! (HAVE_MBRTOWC && HAVE_WCHAR_H).
31731
31732 2000-06-23  Jim Meyering  <meyering@lucent.com>
31733
31734         * m4/afs.m4: Add missing AC_MSG_RESULT.
31735         Reported by Bruno Haible.
31736
31737         * m4/fsusage.m4: s/AC_MSG_CHECKING/AC_CHECKING/.
31738         Suggestion from Bruno Haible.
31739
31740 2000-06-23  Jim Meyering  <meyering@lucent.com>
31741
31742         * lib/getpass.c: New file, from Bruno Haible.  Required for BeOS.
31743
31744 2000-06-21  Jim Meyering  <meyering@lucent.com>
31745
31746         * m4/jm-macros.m4 (AC_REPLACE_FUNCS): Add getpass.
31747
31748 2000-06-21  Jim Meyering  <meyering@lucent.com>
31749
31750         * lib/Makefile.am (libfetish_a_SOURCES): Add getstr.c.
31751         (noinst_HEADERS): Add getstr.h.
31752
31753         * lib/getline.c (getstr): Move into a separate file.
31754         * lib/getstr.c (getstr): New file, extracted from getline.c, with
31755         the following changes: new parameter, delim2; both delim[12]
31756         parameters have type `int', not `char'.  The latter would lose
31757         with 8-bit delimiters.
31758         * lib/getstr.h: New file.
31759
31760 2000-06-21  Bruno Haible  <haible@clisp.cons.org>
31761
31762         * lib/xgetcwd.c (xgetcwd): If the required pathname length is smaller
31763         than 1024, return a memory chunk of least possible size, instead
31764         of size PATH_MAX + 2. In the loop, increment the size proportionally.
31765         Use free/xmalloc instead of xrealloc to avoid copying for very long
31766         paths.
31767
31768 2000-06-21  Bruno Haible  <haible@clisp.cons.org>
31769
31770         * lib/path-concat.c (path_concat): Don't access dir[-1] if dir is
31771         the empty string.
31772
31773 2000-06-21  Bruno Haible  <haible@clisp.cons.org>
31774
31775         * lib/canon-host.c (canon_host): Use malloc and memcpy to copy an
31776         address, not strdup.  Include <stdlib.h> and don't declare free().
31777
31778 2000-06-19  Jim Meyering  <meyering@lucent.com>
31779
31780         * lib/getloadavg.c [HAVE_NLIST_H] (NLIST_STRUCT): Define.
31781
31782 2000-06-18  Jim Meyering  <meyering@lucent.com>
31783
31784         * m4/jm-macros.m4 (AC_REPLACE_FUNCS): Remove mkdir.
31785
31786         * m4/link-follow.m4 (jm_AC_FUNC_LINK_FOLLOWS_SYMLINK): Change the
31787         `checking whether...' message to be consistent with that of the
31788         lstat test.
31789
31790 2000-06-18  Jim Meyering  <meyering@lucent.com>
31791
31792         * lib/mkdir.c: Remove file, due mainly to copyright incompatibility.
31793         Besides, these days every porting target provides a mkdir function.
31794
31795         * lib/strnlen.c: Include memory.h, string.h, and/or strings.h as
31796         needed. (this snippet comes from src/system.h).
31797
31798 2000-06-16  Bruno Haible  <haible@clisp.cons.org>
31799
31800         * m4/glibc21.m4 (jm_GLIBC21): Define GLIBC21 for Makefiles, not for C.
31801
31802 2000-06-15  Paul Eggert  <eggert@twinsun.com>
31803
31804         * lib/human.c (adjust_value): New function.
31805         (human_readable_inexact): Apply rounding style even when
31806         printing approximate values.
31807
31808 2000-06-14  Paul Eggert  <eggert@twinsun.com>
31809
31810         * lib/human.c (human_readable_inexact): Allow an input block
31811         size that is not a multiple of the output block size, and vice versa.
31812         Reported by Piergiorgio Sartor.
31813
31814 2000-06-14  Paul Eggert  <eggert@twinsun.com>
31815
31816         * lib/getdate.y (get_date): Apply relative times after time
31817         zone indicator, not before.  Reported by Todd A. Jacobs.
31818
31819 2000-06-13  Jim Meyering  <meyering@lucent.com>
31820
31821         * lib/Makefile.am (all-local): Depend on lstat.c and stat.c.
31822
31823         * lib/xstat.in [!HAVE_DECL_FREE]: Declare free in lstat.c.
31824
31825 2000-06-12  Paul Eggert  <eggert@twinsun.com>
31826
31827         * lib/xstat.in: Include <stdlib.h> in lstat, to declare "free".
31828
31829 2000-06-12  Jim Meyering  <meyering@lucent.com>
31830
31831         * m4/getloadavg.m4 (AM_FUNC_GETLOADAVG): Replace with
31832         AC_FUNC_GETLOADAVG from autoconf, and tweak the latter to accept an
31833         optional argument.
31834         * m4/jm-macros.m4: s/AM_FUNC_GETLOADAVG/AC_FUNC_GETLOADAVG/, and supply
31835         the optional argument, `lib'.
31836
31837 2000-06-08  Jim Meyering  <meyering@lucent.com>
31838
31839         * m4/largefile.m4: Remove file (now that it's part of autoconf).
31840
31841 2000-06-04  Paul Eggert  <eggert@twinsun.com>
31842
31843         Rewrite largefile configuration so that we don't need to run
31844         getconf and don't need AC_CANONICAL_HOST.  [I'm leaving the use of
31845         AC_CANONICAL_HOST in configure.in -- jmm]
31846
31847         * m4/largefile.m4 (AC_SYS_LARGEFILE_FLAGS,
31848         AC_SYS_LARGEFILE_SPACE_APPEND): Remove.
31849         (AC_SYS_LARGEFILE_TEST_INCLUDES): New macro.
31850         (AC_SYS_LARGEFILE_MACRO_VALUE): Change arguments from
31851         CODE-TO-SET-DEFAULT to VALUE, INCLUDES, FUNCTION-BODY.
31852         All uses changed.
31853         Instead of inspecting the output of getconf, try to compile the
31854         test program without and with the macro definition.
31855         (AC_SYS_LARGEFILE): Do not require AC_CANONICAL_HOST or check
31856         for getconf.  Instead, check for the needed flags by compiling
31857         test programs.
31858
31859 2000-06-04  Paul Eggert  <eggert@twinsun.com>
31860
31861         * lib/strnlen.c: Include <config.h> if HAVE_CONFIG_H.
31862
31863 2000-06-04  Jim Meyering  <meyering@lucent.com>
31864
31865         * lib/getugroups.c (getugroups): Cast -1 to gid_t, for systems like
31866         SunOS 4.1.4 for which gid_t is an unsigned type.
31867
31868 2000-06-03  Jim Meyering  <meyering@lucent.com>
31869
31870         * m4/prereq.m4 (jm_PREREQ_HUMAN): Use []-quoted list in AC_CHECK_DECLS,
31871         now that autoconf requires that.
31872
31873         * m4/jm-glibc-io.m4: Add a kludge to make autoheader emit the required
31874         #undefs.  E.g., #undef HAVE_DECL_FERROR_UNLOCKED.
31875         Use []-quoted list in AC_CHECK_DECLS, now that autoconf requires that.
31876
31877 2000-06-03  Jim Meyering  <meyering@lucent.com>
31878
31879         * lib/strnlen.c [!HAVE_DECL_MEMCHR]: Declare memchr.
31880
31881 2000-06-03  Bruno Haible  <haible@clisp.cons.org>
31882
31883         * m4/glibc21.m4: New file.
31884         * m4/jm-macros.m4 (jm_MACROS): Call jm_GLIBC21.
31885
31886 2000-06-03  Bruno Haible  <haible@clisp.cons.org>
31887
31888         * lib/Makefile.am (install-exec-local): On systems with glibc-2.1 or
31889         newer, don't install charset.alias.
31890         * lib/config.charset: Change the Linux/glibc rules so they become empty
31891         on glibc-2.1 or newer.
31892
31893 2000-06-02  Jim Meyering  <meyering@lucent.com>
31894
31895         * lib/mountlist.c: Back out last change.  Instead, do this...
31896         * lib/mountlist.c (read_filesystem_list) [MOUNTED_VMOUNT]: Set the
31897         me_dummy member using the same `ignore'-testing code.
31898         * lib/mountlist.h (ME_DUMMY): Add `autofs' to the list of ignored
31899         fs_type strings.
31900         From Mark D. Roth.
31901
31902 2000-05-29  Jim Meyering  <meyering@lucent.com>
31903
31904         * lib/mountlist.c (read_filesystem_list) [MOUNTED_VMOUNT]: Ignore
31905         mounts with the `ignore' attribute.  Based on a patch from
31906         Mark D. Roth.
31907
31908 2000-05-28  Jim Meyering  <meyering@lucent.com>
31909
31910         * m4/jm-macros.m4 (AC_FUNC_LSTAT_FOLLOWS_SLASHED_SYMLINK): Rename from
31911         jm_FUNC_LSTAT_FOLLOWS_SLASHED_SYMLINK.
31912         * m4/stat.m4: Likewise.
31913         * m4/lstat.m4: Likewise.
31914         * m4/lstat-slash.m4: Remove file (absorbed into autoconf).
31915
31916         * m4/jm-macros.m4 (AC_FUNC_STRERROR_R): Rename from jm_FUNC_STRERROR_R.
31917         * m4/strerror_r.m4: Remove file (absorbed into autoconf).
31918
31919 2000-05-26  Jim Meyering  <meyering@lucent.com>
31920
31921         * m4/uptime.m4: Use `$cross_compiling', not `$ac_cv_prog_cc_cross'.
31922
31923 2000-05-24  Jim Meyering  <meyering@lucent.com>
31924
31925         * m4/prereq.m4: Use []-quoted list in AC_CHECK_MEMBERS, now that
31926         autoconf requires that.
31927         * m4/lib-check.m4: Likewise.
31928         * m4/jm-macros.m4: Likewise.
31929         * m4/strftime.m4: Likewise.
31930
31931         * m4/check-decl.m4 (jm_CHECK_DECLS): Use []-quoted list in
31932         AC_CHECK_DECLS, now that autoconf requires that.
31933
31934 2000-05-22  Jim Meyering  <meyering@lucent.com>
31935
31936         * m4/stat.m4: Require jm_FUNC_LSTAT_FOLLOWS_SLASHED_SYMLINK.
31937         * m4/lstat.m4: Likewise.
31938
31939 2000-05-22  Jim Meyering  <meyering@lucent.com>
31940
31941         * lib/makepath.c: Remove old, now-unnecessary `#ifdef __MSDOS__' block.
31942
31943 2000-05-20  Jim Meyering  <meyering@lucent.com>
31944
31945         * m4/prereq.m4 (jm_PREREQ_HUMAN): New macro.
31946         (jm_PREREQ): Use it.
31947
31948 2000-05-18  Jim Meyering  <meyering@lucent.com>
31949
31950         * lib/hash.c (hash_rehash): Fix a nasty bug: copy the free entry list
31951         back, too, since it may have been modified by allocate_entry.
31952         (hash_delete): Rewrite to use neither the assignment operator
31953         nor the comma operator in an if-expression.
31954
31955 2000-05-15  Paul Eggert  <eggert@twinsun.com>
31956
31957         * lib/closeout.c:
31958         <sys/stat.h>, <sys/types.h>, <unistd.h>, (STDOUT_FILENO):
31959         Remove; no longer needed.
31960         "quotearg.h": Add include.
31961         (file_name): Do not bother to explicitly initialize to NULL; it's less
31962         efficient on some hosts.
31963         (close_stdout_status): Remove test as to whether stdout was already
31964         closed; it breaks for the case "echo x | sort >&-".
31965         Quote file name colons.
31966         Do not assume that _("write error") lacks format strings.
31967
31968 2000-05-15  Jim Meyering  <meyering@lucent.com>
31969
31970         * lib/version-etc.c (version_etc_copyright): Update the copyright
31971         string used in all --version output.
31972
31973 2000-05-14  Jim Meyering  <meyering@lucent.com>
31974
31975         * lib/closeout.c (close_stdout_set_file_name): New function.
31976         (close_stdout_status): Use new file-scoped global.
31977         Return right away if fstat says the stdout file descriptor is invalid.
31978         * lib/closeout.h (close_stdout_set_file_name): Declare.
31979
31980 2000-05-10  Jim Meyering  <meyering@lucent.com>
31981
31982         * lib/closeout.c [default_exit_status]: New file-scoped variable.
31983         (close_stdout_set_status): New function.
31984         * lib/closeout.h (close_stdout_set_status): Declare.
31985
31986 2000-05-09  Jim Meyering  <meyering@lucent.com>
31987
31988         * m4/gettext.m4: Rename this...
31989         * m4/libintl.m4: ...to this.
31990
31991 2000-05-08  Jim Meyering  <meyering@lucent.com>
31992
31993         * lib/long-options.c: Don't include closeout.h.
31994         (parse_long_options): Don't call close_stdout for --version.
31995
31996 2000-05-06  Paul Eggert  <eggert@twinsun.com>
31997
31998         * m4/largefile.m4 (AC_SYS_LARGEFILE): Define _XOPEN_SOURCE to
31999         be 500, instead of _GNU_SOURCE to be 1, to work around glibc
32000         2.1.3 bug.  This avoids a clash when files like regex.c define
32001         _GNU_SOURCE.
32002
32003 2000-05-06  Jim Meyering  <meyering@lucent.com>
32004
32005         * m4/jm-macros.m4 (AC_REPLACE_FUNCS): Add atexit.
32006         (AC_REPLACE_FUNCS): Add strnlen.
32007
32008         * m4/rmdir-errno.m4 (fetish_FUNC_RMDIR_NOTEMPTY): New macro and file.
32009         * m4/jm-macros.m4: Require fetish_FUNC_RMDIR_NOTEMPTY.
32010
32011         * m4/nanosleep.m4 (jm_FUNC_NANOSLEEP): Save and restore LIBS around
32012         AC_SEARCH_LIBS call for nanosleep.
32013         (LIB_NANOSLEEP): Set and AC_SUBST.
32014
32015 2000-05-06  Jim Meyering  <meyering@lucent.com>
32016
32017         * lib/strnlen.c: Undefine __strnlen and strnlen.
32018         [!weak_alias]: Define __strnlen to strnlen.
32019
32020         * lib/atexit.c: New file, from libiberty.
32021
32022 2000-05-06  Jim Meyering  <meyering@lucent.com>
32023
32024         * lib/closeout.c (close_stdout_status): Also check for errors on the
32025         stderr stream.
32026
32027 2000-05-05  Jim Meyering  <meyering@lucent.com>
32028
32029         * m4/jm-macros.m4 (jm_MACROS): Save and restore LIBS around
32030         AC_SEARCH_LIBS call for clock_gettime.
32031         (LIB_CLOCK_GETTIME): Set and AC_SUBST.
32032
32033         * m4/search-libs.m4: Update from autoconf.
32034
32035         su doesn't work on Solaris 2.6.
32036         * m4/lib-check.m4: When checking for struct spwd.sp_pwdp, also include
32037         <shadow.h>.  Reported by Dragos Harabor.
32038
32039 2000-05-05  Bruno Haible  <haible@clisp.cons.org>
32040
32041         * lib/localcharset.c (get_charset_aliases): Use malloc, realloc and
32042         memcpy instead of xmalloc, xrealloc, path_concat.
32043         (locale_charset): Treat empty environment variables as absent.
32044         (DIRECTORY_SEPARATOR, ISSLASH): New macros.
32045
32046 2000-05-04  Jim Meyering  <meyering@lucent.com>
32047
32048         * lib/getopt.c: Update from glibc.
32049         * lib/obstack.c: Likewise.
32050         * lib/obstack.h: Likewise.
32051         * lib/regex.c: Likewise.  NB: K&R compiler support is dropped for this
32052         file
32053
32054         * lib/regex.h: Likewise.
32055         * lib/strndup.c: Likewise.
32056         * lib/strnlen.c: New file, from glibc.
32057
32058 2000-05-03  Jim Meyering  <meyering@lucent.com>
32059
32060         * m4/check-decl.m4 (AC_CHECK_DECLS): Add strndup.
32061
32062 2000-05-02  Paul Eggert  <eggert@twinsun.com>
32063
32064         * m4/largefile.m4 (AC_SYS_LARGEFILE): Define _GNU_SOURCE if
32065         this is needed to make ftello visible (e.g. glibc 2.1.3).  Use
32066         compile-time test, rather than inspecting host and OS, to
32067         decide whether to define _LARGEFILE_SOURCE.
32068
32069 2000-05-01  Jim Meyering  <meyering@lucent.com>
32070
32071         * m4/fsusage.m4: Use AC_MSG_CHECKING instead of obsolete AC_CHECKING.
32072
32073         * m4/ls-mntd-fs.m4 (jm_LIST_MOUNTED_FILESYSTEMS): Add BeOS support.
32074         Based on a patch from Bruno Haible.
32075
32076 2000-05-01  Jim Meyering  <meyering@lucent.com>
32077
32078         * lib/full-write.c (full_write): Remove `FIXME' part of comment.
32079
32080 2000-04-29  Jim Meyering  <meyering@lucent.com>
32081
32082         * lib/path-concat.c: Declare strdup only if it's not defined.
32083         * lib/canon-host.c: Likewise.
32084
32085 2000-04-28  Jim Meyering  <meyering@lucent.com>
32086
32087         * lib/rpmatch.c [HAVE_LIMITS_H]: Include limits.h before regex.h to
32088         avoid redefinition warning on some systems (HPUX).  Otherwise, regex.h
32089         is included first, then limits.h is included by locale.h by libintl.h.
32090         From John David Anglin.
32091
32092 2000-04-25  Jim Meyering  <meyering@lucent.com>
32093
32094         * lib/makepath.c (S_IRWXUGO): Define.
32095         (make_path): Always perform explicit chmod if MODE specifies any
32096         of the `special' permission bits.  Prompted by a bug report against
32097         install from Mate Wierdl and Joost van Baal.
32098
32099 2000-04-18  Jim Meyering  <meyering@lucent.com>
32100
32101         * m4/prereq.m4 (jm_PREREQ_GETPAGESIZE): New macro.
32102         (jm_PREREQ): Use it.
32103
32104 2000-04-18  Jim Meyering  <meyering@lucent.com>
32105
32106         * lib/README: New file.
32107
32108         * lib/getpagesize.h [!getpagesize && HAVE_OS_H && B_PAGE_SIZE]: Define
32109         getpagesize.  For BeOS.  Based on a patch from Bruno Haible.
32110
32111 2000-04-17  Jim Meyering  <meyering@lucent.com>
32112
32113         Get it right :-)
32114         * m4/jm-macros.m4 (jm_CHECK_ALL_TYPES) [_GNU_SOURCE]: Emit the
32115         actual #define via AH_VERBATIM.  Don't need separate AC_DEFINE.
32116         Suggestion from Akim Demaille.
32117
32118 2000-04-17  Jim Meyering  <meyering@lucent.com>
32119
32120         * lib/strftime.c (my_strftime) [strftime]: Declare strftime here, since
32121         the definition of it to rpl_strftime also defined-away the system's
32122         declaration.
32123
32124 2000-04-15  Jim Meyering  <meyering@lucent.com>
32125
32126         Use `C' to denote so-called `contiguous' files, the same way
32127         that tar does.
32128         * lib/filemode.c (S_ISCTG) [!S_ISCTG && S_IFCTG]: Define.
32129         (ftypelet): Use S_ISCTG.
32130         From Michael Deutschmann.
32131
32132 2000-04-14  Jim Meyering  <meyering@lucent.com>
32133
32134         * m4/jm-macros.m4 (jm_CHECK_ALL_TYPES) [_GNU_SOURCE]: Use the one-arg
32135         form of AC_DEFINE.  Otherwise, the #ifndef in AH_VERBATIM gets
32136         clobbered.
32137
32138 2000-04-14  Jim Meyering  <meyering@lucent.com>
32139
32140         * lib/strftime.c (my_strftime) [#ifdef strftime]: Declare strftime.
32141
32142 2000-04-13  Jim Meyering  <meyering@lucent.com>
32143
32144         * m4/jm-macros.m4 (jm_CHECK_ALL_TYPES) [_GNU_SOURCE]: Use new
32145         AH_VERBATIM to insert required #ifndef into config.h.in.
32146         Suggestion from Akim Demaille.
32147
32148 2000-04-12  Jim Meyering  <meyering@lucent.com>
32149
32150         * m4/getloadavg.m4 (AM_FUNC_GETLOADAVG): Use AC_CHECK_HEADERS, not
32151         `AC_CHECK_HEADER' to check for locale.h.  Thanks to a report from
32152         Christian Krackowizer.
32153
32154         More code moved from ../configure.in into (jm_CHECK_ALL_TYPES).
32155         * m4/jm-macros.m4 (_GNU_SOURCE): Define.
32156         (AC_SYS_LARGEFILE): Require.
32157         (AM_C_PROTOTYPES): Require.
32158
32159 2000-04-08  Jim Meyering  <meyering@lucent.com>
32160
32161         * lib/Makefile.am (charset.alias): Use t-$@, not $@-t so the DOS 8.3
32162         names don't conflict.  Reported by Eli Zaretskii.
32163
32164 2000-04-07  Jim Meyering  <meyering@lucent.com>
32165
32166         * lib/putenv.c: Move inclusion of errno.h so it follows that of
32167         sys/types.h, to work around system header problems on AIX 3.2.5.
32168         From Bruno Haible.
32169
32170 2000-04-07  Bruno Haible  <haible@clisp.cons.org>
32171
32172         * lib/unicodeio.c (print_unicode_char): Avoid triggering Solaris iconv
32173         bug.  Deal with the different error behavior of Irix iconv.
32174
32175 2000-04-05  Paul Eggert  <eggert@twinsun.com>
32176
32177         * m4/largefile.m4 (AC_SYS_LARGEFILE_FLAGS): Don't use -n32 on
32178         IRIX if the installer said otherwise.
32179
32180 2000-04-05  Jim Meyering  <meyering@lucent.com>
32181
32182         Portability tweaks required for ultrix4.3.
32183         * m4/check-decl.m4 [!HAVE_UTMPX_H] (headers): Include <utmp.h>.
32184         (jm_CHECK_DECLS): Add getutent to the list of functions.
32185         (_jm_DECL_HEADERS): Add utmpx.h.
32186         From John David Anglin.
32187
32188         * m4/strftime.m4: Back out the 2000-04-02 change.
32189         Instead of that change, simply undefine putenv in the test program.
32190
32191 2000-04-05  Jim Meyering  <meyering@lucent.com>
32192
32193         Portability tweaks required for ultrix4.3.
32194         * lib/readutmp.h [HAVE_UTMPX_H && !HAVE_DECL_GETUTENT]: Declare
32195         getutent.
32196         * lib/readutmp.c: Include sys/types.h before sys/stat.h.
32197         * lib/canon-host.c: Declare strdup.
32198         * lib/path-concat.c: Likewise.
32199         From John David Anglin.
32200
32201 2000-04-04  Jim Meyering  <meyering@lucent.com>
32202
32203         Be more DOS 8.3-friendly.
32204         * lib/ref-add.sin: Renamed from ref-add.sed.in.
32205         * lib/ref-del.sin: Renamed from ref-del.sed.in.
32206         * lib/Makefile.am: Reflect renaming.
32207         Reported by Eli Zaretskii.
32208
32209         Use a temporary file name that won't clash with `charset.alias'
32210         in the DOS 8.3 name space.
32211         * lib/Makefile.am (charset_tmp): Define.
32212         (install-exec-local): Use $(charset_tmp) instead of $(charset_alias)-t.
32213         (uninstall-local): Likewise.
32214         Reported by Eli Zaretskii.
32215
32216 2000-04-03  Jim Meyering  <meyering@lucent.com>
32217
32218         * m4/gettext.m4: Fix typo in comment.
32219
32220         * m4/codeset.m4 (AC_CHECK_HEADERS): Add langinfo.h (moved here from
32221         textutils/configure.in).  Suggestion from Paul Eggert.
32222         (AC_CHECK_FUNCS): Add nl_langinfo.  (also from textutils/configure.in)
32223
32224 2000-04-02  Paul Eggert  <eggert@twinsun.com>
32225
32226         * m4/strftime.m4 (jm_FUNC_GNU_STRFTIME): Set TZ environment
32227         variable in the shell rather than using putenv, which isn't
32228         portable.  This avoids the configure-time inter-test dependency
32229         on the potentially-renamed putenv function.
32230
32231 2000-03-30  Paul Eggert  <eggert@twinsun.com>
32232
32233         * m4/jm-macros.m4 (jm_CHECK_ALL_TYPES): Include <sys/stat.h>
32234         before checking struct stat.st_blksize, so that
32235         HAVE_STRUCT_STAT_ST_BLKSIZE is defined correctly.
32236
32237 2000-03-29  Paul Eggert  <eggert@twinsun.com>
32238
32239         * m4/strftime.m4 (_jm_STRFTIME_PREREQS): Check for strftime,
32240         since strftime.c uses HAVE_STRFTIME to decide whether to use
32241         the underlying strftime.
32242
32243 2000-03-29  Paul Eggert  <eggert@twinsun.com>
32244
32245         * lib/time/strftime.c (my_strftime): Make sure we call the system
32246         strftime, not ourselves, when invoking the underlying strftime.
32247
32248 2000-03-24  Jim Meyering  <meyering@lucent.com>
32249
32250         * lib/Makefile.am (EXTRA_DIST): Add ref-add.sed.in and ref-del.sed.in.
32251         (charset_alias): Define.
32252         (install-exec-local): Factor out common code.
32253         (uninstall-local): Split lines longer than 80.
32254         (ref-add.sed, ref-del.sed): Remove rules... (do the following instead)
32255         (SUFFIXES): Define.
32256         (.sed.in.sed): New rule.  Don't redirect directly to $@.
32257         (CLEANFILES): Add ref-add.sed and ref-del.sed.
32258
32259 2000-03-19  Bruno Haible  <haible@clisp.cons.org>
32260
32261         * lib/config.charset: Output a line containing "Packages using this
32262         file".
32263         * lib/ref-add.sed.in, lib/ref-del.sed.in: New files.
32264         * lib/Makefile.am (install-exec-local, uninstall-local, ref-add.sed,
32265         ref-del.sed): New rules.
32266
32267 2000-03-17  Jim Meyering  <meyering@lucent.com>
32268
32269         * lib/unicodeio.c (<string.h>): Include only #if HAVE_STRING_H.
32270         Otherwise, include <strings.h>
32271
32272 2000-03-17  Bruno Haible  <haible@clisp.cons.org>
32273
32274         * lib/unicodeio.c (utf8_wctomb): New function.
32275         (print_unicode_char): Pass the Unicode character to iconv in UTF-8
32276         format instead of in UCS-4 with platform dependent endianness.
32277
32278 2000-03-10  Jim Meyering  <meyering@lucent.com>
32279
32280         * m4/lib-check.m4: Look for getspnam in -lgen, too.
32281         From Marco Franzen.
32282
32283 2000-03-07  Paul Eggert  <eggert@twinsun.com>
32284
32285         * lib/savedir.c (savedir): Work even if directory size is
32286         negative; this can happen with some screwy NFS configurations.
32287
32288 2000-03-06  Jim Meyering  <meyering@lucent.com>
32289
32290         * lib/localcharset.c (get_charset_aliases): Don't try to free file_name
32291         if it's NULL (because we ran out of memory).  From Bruno Haible.
32292
32293 2000-03-05  Jim Meyering  <meyering@lucent.com>
32294
32295         * lib/localcharset.c ("path-concat.h"): Include.
32296         (get_charset_aliases): Use path_concat instead of ANSI string
32297         concatenation.
32298
32299         * lib/unicodeio.h (PARAMS): Define.
32300         Use it to guard prototype.
32301
32302 2000-03-04  Jim Meyering  <meyering@lucent.com>
32303
32304         * m4/jm-macros.m4 (jm_CHECK_ALL_TYPES): Require AC_C_VOLATILE,
32305         for lib/localcharset.c.
32306
32307 2000-03-04  Jim Meyering  <meyering@lucent.com>
32308
32309         * lib/Makefile.am (install-exec-local): Create $(libdir) before
32310         installing into it.
32311         (uninstall-local): Uncomment this rule so `make distcheck' works
32312         once again.
32313
32314         * lib/unicodeio.c (<errno.h>): Include it.
32315         (errno): Declare if not defined.
32316
32317         * lib/localcharset.c: Add Bruno's comment justifying use of volatile.
32318
32319         * lib/config.charset: New version, incorporating remarks from a linux
32320         i18n mailing list.  From Bruno Haible.
32321
32322 2000-03-04  Bruno Haible  <haible@clisp.cons.org>
32323
32324         * m4/codeset.m4: New file.
32325         * m4/iconv.m4: New file.
32326         * m4/jm-macros.m4 (jm_MACROS): Call jm_LANGINFO_CODESET and jm_ICONV.
32327
32328 2000-03-03  Jim Meyering  <meyering@lucent.com>
32329
32330         * m4/regex.m4: Make sure re_compile_pattern accepts patterns like `{1'.
32331
32332 2000-03-02  Jim Meyering  <meyering@lucent.com>
32333
32334         * m4/timespec.m4: Require AC_HEADER_TIME before the cache check so
32335         the messages come out on separate lines.
32336
32337         * m4/jm-glibc-io.m4 (jm_FUNC_GLIBC_UNLOCKED_IO): Use AC_CHECK_DECLS,
32338         rather than jm_CHECK_DECLARATIONS.
32339         * m4/decl.m4: Remove now-unused file.
32340
32341         * m4/check-decl.m4 (AC_CHECK_DECLS): Add getlogin, ttyname, and
32342         geteuid.
32343
32344 2000-03-02  Jim Meyering  <meyering@lucent.com>
32345
32346         * lib/Makefile.am (EXTRA_DIST): Add config.charset.
32347
32348 2000-03-01  Jim Meyering  <meyering@lucent.com>
32349
32350         * lib/localcharset.c: Guard some #includes with `#if HAVE_...'.
32351         * lib/unicodeio.c: Likewise.
32352
32353 2000-03-01  Bruno Haible  <haible@clisp.cons.org>
32354
32355         * lib/config.charset: New file.
32356         * lib/localcharset.c: New file.
32357         * lib/unicodeio.h, lib/unicodeio.c: New files.
32358         * lib/Makefile.am (DEFS): Add -DLIBDIR=...
32359         (libfetish_a_SOURCES): Add localcharset.c and unicodeio.c.
32360         (noinst_HEADERS): Add unicodeio.h.
32361         (all-local, install-exec-local, charset.alias): New targets.
32362
32363 2000-02-28  Paul Eggert  <eggert@twinsun.com>
32364
32365         * lib/quotearg.c (ALERT_CHAR): New macro.
32366         (quotearg_buffer_restyled): Use it.
32367
32368 2000-02-27  Jim Meyering  <meyering@lucent.com>
32369
32370         * m4/check-decl.m4: Add getenv to the list.
32371
32372 2000-02-27  Jim Meyering  <meyering@lucent.com>
32373
32374         * lib/strtoumax.c: Fix typo in decl of strtoul: s/long long/long/.
32375         Guard declaration of strtoull also with `&& HAVE_UNSIGNED_LONG_LONG'.
32376
32377         * lib/backupfile.c: Guard inclusion of stdlib.h with
32378         `#if HAVE_STDLIB_H', not `#if STDC_HEADERS'.
32379         Declare malloc if needed.
32380
32381         * lib/backupfile.c: Use `#if !HAVE_DECL...' instead of
32382         `#ifndef HAVE_DECL..'
32383         now that autoconf always defines the HAVE_DECL_ symbols.
32384         * lib/human.c: Likewise.
32385         * lib/same.c: Likewise.
32386         * lib/strtoumax.c: Likewise.
32387
32388         * lib/backupfile.c: Arrange for cpp to fail if the configure-time
32389         declaration check was not run.
32390         * lib/hash.c: Likewise.
32391         * lib/human.c: Likewise.
32392         * lib/same.c: Likewise.
32393         * lib/strtoumax.c: Likewise.
32394
32395         * lib/userspec.c (parse_user_spec): If there is no `:' but there is a
32396         `.', then first look up the entire `.'-containing string as a login
32397         name.
32398
32399 2000-02-23  Jim Meyering  <meyering@lucent.com>
32400
32401         * m4/check-decl.m4: Now that we have the new AC_CHECK_DECLS, use it
32402         in place of my hack.
32403
32404 2000-02-18  Paul Eggert  <eggert@twinsun.com>
32405
32406         * lib/getdate.y: Handle two-digit years with leading zeros correctly.
32407         (textint): New typedef.
32408         (parser_control): Member year changed from int to textint.
32409         All uses changed.
32410         (YYSTYPE): Removed; replaced by %union with int and textint members.
32411         (tDAY, tDAY_UNIT, tDAYZONE, tHOUR_UNIT, tID, tLOCAL_ZONE, tMERIDIAN,
32412         tMINUTE_UNIT, tMONTH, tMONTH_UNIT tSEC_UNIT, tSNUMBER, tUNUMBER,
32413         tYEAR_UNIT, tZONE, o_merid): Now of type <intval>.
32414         (tSNUMBER, tUNUMBER): Now of type <textintval>.
32415         (date, number, to_year): Use width of number in digits, not its value,
32416         to determine whether it's a 2-digit year, or a 2-digit time.
32417         (yylex): Store number of digits of numeric tokens.
32418         Reported by John Kendall.
32419
32420         (parser_control): Changed from struct parser_control to typedef (for
32421         consistency).  All uses changed.
32422
32423         (tID): Removed; not used.
32424         (yylex): Return '?' for unknown identifiers, rather than (unused) tID.
32425
32426 2000-02-14  Paul Eggert  <eggert@twinsun.com>
32427
32428         * lib/getpagesize.h (getpagesize): Port to VMS for Alpha;
32429         adapted from changes to grep getpagesize.h by Martin P.J. Zinser.
32430
32431 2000-02-12  Jim Meyering  <meyering@lucent.com>
32432
32433         * lib/userspec.c (ISDIGIT): Define it.
32434         (isdigit): Remove definition.
32435         (is_number): Use ISDIGIT, not isdigit.
32436         <libintl.h>: Include.
32437         (_ and N_): Define.
32438         (parse_user_spec): Mark translatable strings.
32439
32440 2000-02-10  Jim Meyering  <meyering@lucent.com>
32441
32442         With these changes, nanosleep.[ch] are finally enough like the other
32443         lib/* replacement files to compile on a few more losing systems.
32444
32445         * lib/nanosleep.h: Don't include config.h.
32446         Remove prototype from declaration of nanosleep.
32447         (PARAMS): Remove now-unneeded definition.
32448         * lib/nanosleep.c: #undef nanosleep.
32449         (rpl_nanosleep): Rename from nanosleep.
32450
32451 2000-02-10  Jim Meyering  <meyering@lucent.com>
32452
32453         * m4/nanosleep.m4 (jm_FUNC_NANOSLEEP): Rename replacement function from
32454         gnu_nanosleep to rpl_nanosleep.
32455
32456 2000-02-09  Jim Meyering  <meyering@lucent.com>
32457
32458         * m4/lib-check.m4 (jm_LIB_CHECK): Fix typo: check for sp_pwdp in
32459         struct spwd, rather than in struct passwd.  Reported by Gaël Quéri.
32460
32461 2000-02-08  Akim Demaille  <akim@epita.fr>
32462
32463         * m4/largefile.m4 (AC_SYS_LARGEFILE_FLAGS): Quote square brackets with
32464         `[' and `]' and remove uses of `changequote'.
32465         (AC_SYS_LARGEFILE_MACRO_VALUE): Likewise.
32466         (AC_SYS_LARGEFILE): Likewise.
32467         * m4/gettext.m4 (AM_GNU_GETTEXT): Likewise.
32468         * m4/strftime.m4 (jm_FUNC_GNU_STRFTIME): Remove now-unnecessary use
32469         of changequote.
32470         * m4/regex.m4 (jm_INCLUDED_REGEX): Likewise.
32471         * m4/readdir.m4 (jm_FUNC_READDIR): Likewise
32472         * m4/memcmp.m4 (jm_AC_FUNC_MEMCMP): Likewise, and add `int' for main.
32473         * m4/getloadavg.m4 (AM_FUNC_GETLOADAVG): Likewise.
32474
32475 2000-02-05  Jim Meyering  <meyering@lucent.com>
32476
32477         * m4/jm-macros.m4 (jm_CHECK_ALL_TYPES): Require most macros.
32478         Remove explicit use of AC_HEADER_TIME.  It is required by
32479         jm_CHECK_TYPE_STRUCT_TIMESPEC.  Using AC_HEADER_TIME and
32480         `AC_REQUIRE'ing jm_CHECK_TYPE_STRUCT_TIMESPEC provoked a but
32481         in autoconf whereby the expansion of the latter ended up preceding
32482         the expansion of its prerequisite, AC_HEADER_TIME.
32483         Reported by Volker Borchert.
32484
32485 2000-02-03  Jim Meyering  <meyering@lucent.com>
32486
32487         * m4/prereq.m4 (jm_PREREQ_READUTMP): Check for utmpxname.
32488
32489 2000-02-03  Jim Meyering  <meyering@lucent.com>
32490
32491         * lib/readutmp.c (read_utmp): Guard with `#ifdef UTMP_NAME_FUNCTION',
32492         rather than with `#if HAVE_UTMPNAME'.
32493
32494 2000-02-02  Jim Meyering  <meyering@lucent.com>
32495
32496         * m4/prereq.m4 (jm_PREREQ_ADDEXT): Fix typo that resulted in no
32497         definition of HAVE_PATHCONF: s/AC_CHECK_FUNC/AC_CHECK_FUNCS/.
32498         Reported by Eli Zaretskii.
32499
32500 2000-02-01  Jim Meyering  <meyering@lucent.com>
32501
32502         * lib/readutmp.h (UT_USER): Add parens.  From Andreas Schwab.
32503
32504 2000-01-31  Jim Meyering  <meyering@lucent.com>
32505
32506         * m4/check-decl.m4 (jm_CHECK_DECLS): Add nanosleep to the list of
32507         functions.  Add the time.h and sys/time.h headers along with the
32508         AC_REQUIRE'ment of AC_HEADER_TIME.
32509
32510 2000-01-31  Jim Meyering  <meyering@lucent.com>
32511
32512         * lib/nanosleep.h (nanosleep): Guard declaration with
32513         `#if ! HAVE_DECL_NANOSLEEP'.
32514         Without this, OFS gets a redeclaration error for rpl_nanosleep, due to
32515         the declaration in that vendor's sys/timers.h.
32516         Reported by Christian Krackowizer.
32517
32518         * lib/quotearg.c (ISASCII): Add #undef and move definition to follow
32519         inclusion of wctype.h to work around Solaris 2.6 namespace pollution.
32520         (ISPRINT): Likewise.
32521         Reported by Tom Tromey.
32522
32523 2000-01-30  Jim Meyering  <meyering@lucent.com>
32524
32525         * m4/lib-check.m4: Clean up some kludgy old shadow password tests.
32526
32527         * m4/prereq.m4 (utmp_includes): Define.
32528         Check for ut_user and ut_name members in both struct utmpx
32529         and struct utmp.
32530
32531 2000-01-30  Jim Meyering  <meyering@lucent.com>
32532
32533         * lib/readutmp.c (extract_trimmed_name): Use UT_USER instead of
32534         hard-coding uses of ->ut_name.  The latter doesn't work with new Linux
32535         header files where only utmpx.ut_user is declared.
32536
32537         * lib/readutmp.h (UT_USER): Define.
32538
32539 2000-01-29  Jim Meyering  <meyering@lucent.com>
32540
32541         * m4/lib-check.m4: New file containing library-related checks from
32542         fileutils and sh-utils (textutils had none).
32543
32544 2000-01-28  Jim Meyering  <meyering@lucent.com>
32545
32546         * m4/perl.m4: Change format of warning message to look more like that
32547         from the missing script.  Suggestion from François Pinard.
32548
32549 2000-01-25  Jim Meyering  <meyering@lucent.com>
32550
32551         * m4/timespec.m4: Require AC_HEADER_TIME, and include sys/time.h as
32552         well as time.h in the compile check.
32553         * m4/nanosleep.m4: Require AC_HEADER_TIME rather than simply using it.
32554         Fix typo in cross-compiling case: s/yes/no/.
32555
32556 2000-01-23  Jim Meyering  <meyering@lucent.com>
32557
32558         * m4/jm-macros.m4: Move df-related tests here from
32559         fileutils/configure.in
32560
32561         * m4/ls-mntd-fs.m4: s/list_mounted_fs/ac_list_mounted_fs/
32562         (jm_LIST_MOUNTED_FILESYSTEMS): Take two parameters.
32563
32564         * m4/fsusage.m4: New file.  Extracted from fileutils/configure.in.
32565         s/space/ac_fsusage_space/.
32566         (jm_FILE_SYSTEM_USAGE): Take two parameters.
32567
32568         * m4/ftruncate.m4: New file (derived from part of
32569         fileutils/configure.in).
32570         * m4/jm-macros.m4 (jm_FUNC_FTRUNCATE): AC_REQUIRE it.
32571         (jm_CHECK_ALL_TYPES): Require AC_HEADER_MAJOR and AC_HEADER_DIRENT.
32572
32573         * m4/jm-macros.m4 (OPTIONAL_BIN_PROGS, OPTIONAL_BIN_ZCRIPTS, MAN):
32574         AC_SUBST these here, rather than just in sh-util/configure.in, so
32575         that the now-shared-by-fileutils-and-textutils lib/Makefile.am are
32576         all the same.
32577         (AM_FUNC_OBSTACK): Add (from fileutils/configure.in).
32578         (AC_CHECK_FUNCS): Merge all checks from fileutils, textutils, sh-utils.
32579         (AM_FUNC_STRTOD): Added (from textutils', sh-utils' configure.in).
32580         (AC_SUBST(POW_LIBM)): Likewise.
32581         (AC_SUBST(DF_PROG)): Moved from fileutils/configure.in.
32582
32583 2000-01-23  Jim Meyering  <meyering@lucent.com>
32584
32585         * lib/Makefile.am (libfetish_a_SOURCES): Remove explicit mention of
32586         obstack.c.
32587
32588 2000-01-22  Jim Meyering  <meyering@lucent.com>
32589
32590         * m4/jm-macros.m4: Call AC_PROG_CC_STDC just before AC_C_CONST.
32591
32592         * m4/prereq.m4 (jm_PREREQ_QUOTEARG): Add wctype.h.
32593
32594         * m4/jm-macros.m4 (AC_CHECK_HEADERS): Add checks from fileutils'
32595         configure.in
32596         (AC_CHECK_HEADERS): Likewise for sh-utils.
32597         (AC_CHECK_HEADERS): Likewise for textutils.
32598         Merge the three lists of headers.
32599
32600         * m4/prereq.m4 (jm_PREREQ_ADDEXT): New macro.  Parts moved here
32601         from fileutils' configure.in.
32602
32603         * m4/decl.m4: Remove kludgy `test -z $ac_...AC_CHECK_HEADERS(...)'
32604         code. Moved tests into their own function (_jm_DECL_HEADERS) in
32605         check-decl.m4.
32606
32607         * m4/check-decl.m4: Use #if rather than #ifdef.
32608         Add HAVE_DECL_STRTOUL and HAVE_DECL_STRTOULL.
32609         (jm_CHECK_DECLARATIONS): Add strtoul strtoull.
32610         (_jm_DECL_HEADERS): Define new function.
32611         (jm_CHECK_DECLARATIONS): Require it.
32612
32613 2000-01-22  Jim Meyering  <meyering@lucent.com>
32614
32615         * lib/strtoumax.c: [! HAVE_DECL_STRTOUL]: Declare strtoul.
32616         [! HAVE_DECL_STRTOULL]: Declare strtoull.
32617         Required for some AIX systems.  Reported by Christian Krackowizer.
32618         [TESTING] (main): New function.
32619
32620         1997-10-17  Eli Zaretskii  <eliz@is.elta.co.il>
32621         * lib/dirname.c (dir_name): Support for DOS-style file names with drive
32622         letters.
32623
32624         * lib/quotearg.c [HAVE_WCTYPE_H]: Include <wctype.h> for decl of
32625         iswprint.
32626
32627         * lib/strverscmp.c (ISDIGIT): Define.
32628         (strverscmp): Use ISDIGIT, not isdigit.
32629
32630 2000-01-19  Jim Meyering  <meyering@lucent.com>
32631
32632         * m4/nanosleep.m4 (jm_FUNC_NANOSLEEP): Include <sys/time.h>, too.
32633         Use AC_HEADER_TIME.  Volker Borchert reported that OpenBSD-2.3/sparc
32634         defines `struct timespec' in <sys/time.h>
32635
32636         * m4/c-bs-a.m4: Remove uses of changequote altogether.
32637         Thanks to Akim for explaining.
32638
32639 2000-01-17  Paul Eggert  <eggert@twinsun.com>
32640
32641         * lib/nanosleep.c (nanosleep):
32642         Don't use SA_INTERRUPT to decide whether to call sigaction, as
32643         POSIX.1 doesn't require SA_INTERRUPT and some systems
32644         (e.g. Solaris 7) don't define it.  Use SA_NOCLDSTOP instead;
32645         it's been part of POSIX.1 since day 1 (in 1988).
32646
32647 2000-01-17  Jim Meyering  <meyering@lucent.com>
32648
32649         * lib/interlock: Remove unused file.  Reported by François Pinard.
32650
32651 2000-01-16  Paul Eggert  <eggert@twinsun.com>
32652
32653         * lib/quotearg.c (quotearg_buffer_restyled): Do not quote
32654         alert, backslash, formfeed, and vertical tab unnecessarily in
32655         shell quoting style.
32656
32657 2000-01-16  Jim Meyering  <meyering@lucent.com>
32658
32659         * m4/jm-macros.m4: Require jm_FUNC_GROUP_MEMBER, jm_FUNC_PUTENV,
32660         AM_FUNC_ERROR_AT_LINE, jm_FUNC_GNU_STRFTIME, jm_FUNC_MKTIME,
32661         jm_FUNC_GETGROUPS AC_FUNC_VPRINTF, AC_FUNC_ALLOCA,
32662         AM_FUNC_GETLOADAVG, and jm_SYS_PROC_UPTIME.
32663
32664 2000-01-16  Jim Meyering  <meyering@lucent.com>
32665
32666         * m4/c-bs-a.m4: Use `changequote(<<,>>)', rather than `changequote(, )'
32667         because the latter didn't work.
32668
32669 2000-01-15  Jim Meyering  <meyering@lucent.com>
32670
32671         * m4/jm-macros.m4 (AC_REPLACE_FUNCS): Add gethostname and getusershell.
32672         (AC_REPLACE_FUNCS): Add memcpy and memset.
32673         Add these, too: stime strcspn stpcpy strstr strtol strtoul.
32674         Add strpbrk.
32675         Add these: euidaccess memcmp mkdir rmdir rpmatch strndup strverscmp.
32676
32677 2000-01-12  Jim Meyering  <meyering@lucent.com>
32678
32679         * m4/prereq.m4 (jm_PREREQ_CANON_HOST): New macro.
32680         (jm_PREREQ): Use it.
32681         (jm_PREREQ_READUTMP): New macro.
32682         (jm_PREREQ): Use it.
32683
32684 2000-01-11  Paul Eggert  <eggert@twinsun.com>
32685
32686         Quote multibyte characters correctly.
32687         * m4/c-bs-a.m4: New file.
32688         * m4/prereq.m4 (jm_PREREQ_QUOTEARG): New macro.
32689         (jm_PREREQ): Use it.
32690
32691 2000-01-11  Paul Eggert  <eggert@twinsun.com>
32692
32693         * m4/uintmax_t.m4: Port to autoconf 2.13.
32694
32695 2000-01-08  Jim Meyering  <meyering@ascend.com>
32696
32697         * m4/strerror_r.m4 (jm_FUNC_STRERROR_R): New file/macro.
32698         * m4/jm-macros.m4 (jm_FUNC_STRERROR_R): Require it.
32699
32700 2000-01-04  Jim Meyering  <meyering@ascend.com>
32701
32702         * m4/d-type.m4 (jm_CHECK_TYPE_STRUCT_DIRENT_D_TYPE): Rename from
32703         jm_STRUCT_DIRENT_D_TYPE.
32704         * m4/d-ino.m4 (jm_CHECK_TYPE_STRUCT_DIRENT_D_INO): Rename from
32705         jm_STRUCT_DIRENT_D_INO.
32706         * m4/utimbuf.m4 (jm_CHECK_TYPE_STRUCT_UTIMBUF): Rename from
32707         jm_STRUCT_UTIMBUF.
32708         * m4/jm-macros.m4: Reflect s/jm_STRUCT_/jm_CHECK_TYPE_STRUCT_/
32709         renamings.
32710         * m4/utime.m4: Likewise.
32711
32712         * m4/timespec.m4 (jm_CHECK_TYPE_STRUCT_TIMESPEC): New file, macro.
32713         * m4/jm-macros.m4 (jm_CHECK_TYPE_STRUCT_TIMESPEC): Require it.
32714
32715 2000-01-03  Paul Eggert  <eggert@twinsun.com>
32716
32717         * m4/nanosleep.m4 (jm_FUNC_NANOSLEEP): Search for nanosleep in -lrt
32718         (for Solaris 7) and in -lposix4 (for Solaris 2.5.1).
32719
32720 2000-01-02  Jim Meyering  <meyering@ascend.com>
32721
32722         * m4/search-libs.m4: Escape `$' in $3 of dnl comment.  I no longer
32723         remember if this is necessary.
32724
32725 1999-12-26  Jim Meyering  <meyering@ascend.com>
32726
32727         * m4/jm-macros.m4: Use it here.
32728         * m4/nanosleep.m4 (jm_FUNC_NANOSLEEP): New file/macro.
32729
32730 1999-12-23  Jim Meyering  <meyering@ascend.com>
32731
32732         * m4/jm-macros.m4: Check for clock_gettime (moved from
32733         fileutils/configure.in)
32734         Check for gettimeofday.
32735
32736 1999-12-20  Jim Meyering  <meyering@ascend.com>
32737
32738         * m4/strftime.m4: Remove kludge, now that I'm using the fixed
32739         autoconf-2.14a-1999-12-20.
32740
32741 1999-12-19  Jim Meyering  <meyering@ascend.com>
32742
32743         * m4/lstat-slash.m4: New file.
32744         * m4/jm-macros.m4: Use the new macro:
32745         jm_FUNC_LSTAT_FOLLOWS_SLASHED_SYMLINK.
32746
32747 1999-12-07  Jim Meyering  <meyering@ascend.com>
32748
32749         * m4/perl.m4: Require that File::Compare be available, too.
32750         Too many systems seem to lack it.
32751
32752         * m4/strftime.m4: Add checks for most of the cpp macros tested in
32753         GNU's strftime.c.  Prompted by a patch from Paul Eggert.
32754
32755 1999-11-18  Paul Eggert  <eggert@twinsun.com>
32756
32757         * m4/largefile.m4 (AC_SYS_LARGEFILE_FLAGS): Work around a
32758         problem with the QNX 4.25 shell, which doesn't propagate exit
32759         status of failed commands inside shell assignments.
32760
32761 1999-11-17  Jim Meyering  <meyering@ascend.com>
32762
32763         * m4/gettext.m4: Use new AC_CONFIG_LINKS in place of AC_LINK_FILES.
32764
32765 1999-11-07  Jim Meyering  <meyering@ascend.com>
32766
32767         * m4/getloadavg.m4: Add `, 1, [FIXME]' to each use of AC_DEFINE.
32768
32769 1999-11-06  Jim Meyering  <meyering@ascend.com>
32770
32771         * m4/link-follow.m4 (jm_AC_FUNC_LINK_FOLLOWS_SYMLINK): New file/macro.
32772         * m4/jm-macros.m4 (jm_MACROS): Use it here.
32773
32774 1999-11-05  Jim Meyering  <meyering@ascend.com>
32775
32776         * m4/jm-macros.m4 (jm_CHECK_ALL_TYPES): Move some tests from
32777         configure.in of textutils, fileutils, and sh-utils into this one
32778         (shared between those packages) file.
32779         Use `AC_CHECK_MEMBERS((struct stat.st_blksize))' instead of deprecated
32780         AC_STRUCT_ST_BLKSIZE.
32781
32782 1999-11-03  Jim Meyering  <meyering@ascend.com>
32783
32784         * m4/ssize_t.m4: Remove file.  No longer needed since the new version
32785         of AC_CHECK_TYPE checks includes unistd.h.
32786         * m4/jm-macros.m4: Use straight `AC_CHECK_TYPE(ssize_t, int)'.
32787         Suggestion from Akim Demaille.
32788
32789 1999-10-30  Jim Meyering  <meyering@ascend.com>
32790
32791         * m4/uintmax_t.m4: Require 2.14a.  Remove backslash before backtick in
32792         m4-quoted string.
32793         * m4/ls-mntd-fs.m4: Likewise.
32794         * m4/jm-macros.m4: Likewise.  Also, use AC_TYPE_SSIZE_T instead
32795         * m4/jm-winsz1.m4: Likewise.
32796
32797         * m4/const.m4: Remove file, since the fix made it into the experimental
32798         version of autoconf.
32799         * m4/mktime.m4: Likewise.
32800
32801         * m4/check-type.m4: Remove file, now that the latest version of
32802         AC_CHECK_TYPE takes a third arg to specify additional #includes.
32803
32804         * m4/ssize_t.m4: New file, requires experimental version of autoconf.
32805         * m4/jm-macros.m4: Use new AC_TYPE_SSIZE_T instead of my hacked
32806         AC_CHECK_TYPE.
32807
32808 1999-10-04  Jim Meyering  <meyering@ascend.com>
32809
32810         * m4/jm-macros.m4: Don't require autoconf-2.14.1.
32811
32812 1999-09-22  Paul Eggert  <eggert@twinsun.com>
32813
32814         * m4/largefile.m4 (AC_SYS_LARGEFILE_FLAGS): Work around GCC
32815         2.95.1 bug with HP-UX 10.20.
32816
32817 1999-09-17  Jim Meyering  <meyering@ascend.com>
32818
32819         * m4/jm-macros.m4 (AC_REPLACE_FUNCS): Add strdup.
32820         Paul Nevai reported a link failure on a NeXT CUBE with NeXTSTEP 3.3
32821         due to missing strdup (against sh-utils-2.0).
32822
32823 1999-08-29  Jim Meyering  <meyering@ascend.com>
32824
32825         * m4/jm-macros.m4: Require jm_BISON.
32826         * m4/bison.m4: New file.
32827
32828 1999-08-17  Paul Eggert  <eggert@twinsun.com>
32829
32830         * m4/largefile.m4 (AC_SYS_LARGEFILE): Fix typo: missing comma
32831         in value for _FILE_OFFSET_BITS, which broke ports to HP-UX 10.20.
32832
32833 1999-08-05  Jim Meyering  <meyering@ascend.com>
32834
32835         * m4/getline.m4: Rename test file from conftestdata to conftest.data
32836         to avoid conflicts with `conftest' on 8+3 filesystems.
32837         Suggestion from Eli Zaretskii.
32838
32839 1999-08-04  Jim Meyering  <meyering@ascend.com>
32840
32841         * m4/jm-macros.m4: Move a 4-line block of code from the configure.in of
32842         fileutils and sh-utils (textutils's getline test was inadequate).
32843         (AM_FUNC_GETLINE): Run this test.
32844         (AC_CHECK_FUNCS): Check for getdelim.
32845         Reported by Bob Proulx.
32846
32847 1999-08-02  Jim Meyering  <meyering@ascend.com>
32848
32849         * m4/jm-macros.m4: Add a comment.
32850
32851 1999-08-01  Paul Eggert  <eggert@twinsun.com>
32852
32853         * m4/xstrtoumax.m4 (jm_AC_PREREQ_XSTRTOUMAX): Check whether
32854         <inttypes.h> defines strtoumax as a macro (and not as a
32855         function).
32856
32857 1999-08-01  Paul Eggert  <eggert@twinsun.com>
32858
32859         * m4/ulonglong.m4 (jm_AC_TYPE_UNSIGNED_LONG_LONG): Make sure
32860         that we can shift, multiply and divide unsigned long long
32861         values; Ultrix cc can't do it.
32862
32863 1999-08-01  Paul Eggert  <eggert@twinsun.com>
32864
32865         * m4/mktime.m4: New file, which is a preview of what should appear
32866         in the next public autoconf release.
32867
32868 1999-08-01  Paul Eggert  <eggert@twinsun.com>
32869
32870         * m4/lfs.m4: Remove this file.
32871         * m4/largefile.m4: New file.  It contains the old contents of
32872         lfs.m4, except that all names with prefix AC_LFS have been
32873         changed to use the prefix AC_SYS_LARGEFILE instead, to be
32874         compatible with future autoconf versions.  Also, some minor m4
32875         quoting problems have been fixed.
32876
32877 1999-08-01  Paul Eggert  <eggert@twinsun.com>
32878
32879         * m4/gettext.m4 (AM_WITH_NLS): Remove unnecessary lines.
32880         Fix typo: $nls_cv_header_intl was misspelled as $nsl_cv_header_intl.
32881         (AM_GNU_GETTEXT): Fix problem with brackets and m4 quoting,
32882         and simplify the shell code.
32883
32884 1999-08-01  Jim Meyering  <meyering@ascend.com>
32885
32886         * m4/mktime.m4 (AC_FUNC_MKTIME): Undefine to avoid syntax errors from
32887         m4.
32888
32889 1999-07-20  Jim Meyering  <meyering@ascend.com>
32890
32891         * m4/jm-macros.m4 (AC_REPLACE_FUNCS): Add memmove.
32892
32893 1999-07-15  Jim Meyering  <meyering@ascend.com>
32894
32895         * m4/jm-macros.m4 (AC_CHECK_FUNCS): Check for getpagesize.
32896
32897 1999-05-22  Jim Meyering  <meyering@ascend.com>
32898
32899         * m4/jm-macros.m4 (AC_REPLACE_FUNCS): Add memchr.
32900
32901 1999-05-20  Jim Meyering  <meyering@ascend.com>
32902
32903         * m4/search-libs.m4 [AC_SEARCH_LIBS]: Quote name in undefine.
32904         Add a colon after each `then' in case $4 is empty.
32905
32906 1999-05-16  Jim Meyering  <meyering@ascend.com>
32907
32908         * m4/search-libs.m4: New file to override autoconf's AC_SEARCH_LIBS.
32909
32910 1999-05-10  Jim Meyering  <meyering@ascend.com>
32911
32912         * m4/jm-mktime.m4: Reflect renaming: AM_FUNC_MKTIME -> AC_FUNC_MKTIME.
32913
32914         * m4/jm-macros.m4: Require 2.14.1, since we use newly-renamed
32915         AC_FUNC_MKTIME.
32916
32917 1999-05-10  Andreas Schwab  <schwab@issan.cs.uni-dortmund.de>
32918
32919         * m4/jm-mktime.m4, putenv.m4: Fix typos in config.h comments.
32920
32921 1999-05-04  Paul Eggert  <eggert@twinsun.com>
32922
32923         * m4/lfs.m4 (AC_LFS): -n32, -o32, and -n64 should be in CFLAGS,
32924         not CPPFLAGS, so that linking works correctly in IRIX.
32925
32926 1999-04-30  Paul Eggert  <eggert@twinsun.com>
32927
32928         * m4/jm-macros.m4 (AC_REPLACE_FUNCS): Add dup2.
32929
32930 1999-04-20  Paul Eggert  <eggert@twinsun.com>
32931
32932         * m4/uintmax_t.m4 (jm_AC_TYPE_UINTMAX_T): Move unsigned long
32933         long check into new jm_AC_TYPE_UNSIGNED_LONG_LONG macro.
32934         * m4/jm-macros.m4 (jm_CHECK_ALL_TYPES): Require
32935         jm_AC_TYPE_UNSIGNED_LONG_LONG.
32936         * m4/ulonglong.m4 (jm_AC_TYPE_UNSIGNED_LONG_LONG): New file/macro.
32937
32938         * m4/lfs.m4: Port to AIX and HP-UX.  Support cross-compilation.
32939
32940 1999-04-20  Jim Meyering  <meyering@ascend.com>
32941
32942         * m4/xstrtoumax.m4: Require jm_AC_TYPE_UNSIGNED_LONG_LONG.
32943         AC_REPLACE xstroull if necessary.  From Paul Eggert.
32944         (AC_CHECK_FUNCS): Remove strtoull, strtoumax, strtouq.
32945
32946 1999-04-18  Jim Meyering  <meyering@ascend.com>
32947
32948         * m4/xstrtoumax.m4 (jm_AC_PREREQ_XSTRTOUMAX): New file/macro.
32949         * m4/jm-macros.m4: Use it.
32950
32951 1999-04-06  Jim Meyering  <meyering@ascend.com>
32952
32953         * m4/strftime.m4: Remove test for %f.
32954
32955 1999-03-29  Jim Meyering  <meyering@ascend.com>
32956
32957         * m4/jm-macros.m4 (jm_CHECK_ALL_TYPES): New macro, contains the
32958         superset of the AC_TYPE_* checks in the textutils, fileutils,
32959         and sh-utils, plus AC_TYPE_PID_T.  Paul Eggert suggested adding
32960         AC_TYPE_PID_T.
32961
32962 1999-03-28  Jim Meyering  <meyering@ascend.com>
32963
32964         * m4/jm-macros.m4: Define GNU_PACKAGE here.
32965         Be sure to AC_SUBST it, once again, so that @GNU_PACKAGE@ is
32966         replaced e.g., in the *.sh files of the sh-utils.
32967
32968 1999-03-20  Jim Meyering  <meyering@ascend.com>
32969
32970         * m4/jm-macros.m4: s/jm_WITH_REGEX/jm_INCLUDED_REGEX/.
32971         * m4/regex.m4 (jm_INCLUDED_REGEX): Rename from jm_WITH_REGEX.
32972         Don't depend on AM_GLIBC.  Suggestions from Alain Magloire.
32973
32974 1999-03-19  Jim Meyering  <meyering@ascend.com>
32975
32976         * m4/jm-winsz1.m4 (jm_WINSIZE_IN_PTEM): New macro.
32977
32978 1999-03-12  Jim Meyering  <meyering@ascend.com>
32979
32980         * m4/jm-macros.m4: Use AC_FUNC_SETVBUF_REVERSED.
32981
32982 1999-03-07  Jim Meyering  <meyering@ascend.com>
32983
32984         * m4/jm-glibc-io.m4: Use only those *_unlocked macros that are
32985         declared.
32986
32987 1999-02-17  Jim Meyering  <meyering@ascend.com>
32988
32989         * m4/gettext.m4 (AM_GNU_GETTEXT): Do `changequote' around use of
32990         brackets in macro definition.  From Eli Zaretskii and Alain Magloire.
32991
32992 1999-02-07  Jim Meyering  <meyering@ascend.com>
32993
32994         * m4/group-member.m4: New file -- extracted from sh-utils'
32995         configure.in.
32996
32997         1999-02-05  Eli Zaretskii  <eliz@is.elta.co.il>
32998         * m4/gettext.m4: Support DOS-style d:/foo/bar absolute file names.
32999
33000 1999-02-06  Jim Meyering  <meyering@ascend.com>
33001
33002         * m4/chown.m4: Use `AC_SUBST(LIBOBJS)' since we set LIBOBJS.
33003         * m4/fnmatch.m4: Likewise.
33004         * m4/getgroups.m4: Likewise.
33005         * m4/lstat.m4: Likewise.
33006         * m4/malloc.m4: Likewise.
33007         * m4/putenv.m4: Likewise.
33008         * m4/realloc.m4: Likewise.
33009         * m4/regex.m4: Likewise.
33010         * m4/stat.m4: Likewise.
33011         * m4/strftime.m4: Likewise.
33012         Suggestion from Alain Magloire.
33013
33014         * m4/chown.m4: Use `.$ac_objext', not `.o'.
33015         * m4/fnmatch.m4: Likewise.
33016         * m4/getgroups.m4: Likewise.
33017         * m4/getline.m4: Likewise.
33018         * m4/lstat.m4: Likewise.
33019         * m4/malloc.m4: Likewise.
33020         * m4/memcmp.m4: Likewise.
33021         * m4/putenv.m4: Likewise.
33022         * m4/realloc.m4: Likewise.
33023         * m4/regex.m4: Likewise.
33024         * m4/stat.m4: Likewise.
33025         * m4/strftime.m4: Likewise.
33026         Suggestion from Alain Magloire.
33027
33028         * m4/jm-macros.m4: Actually invoke jm_WITH_REGEX now that it requires
33029         an argument.
33030
33031         * m4/regex.m4: Add a run-time Test for proper operation of
33032         re_compile_pattern.
33033
33034 1999-01-31  Jim Meyering  <meyering@ascend.com>
33035
33036         * m4/getloadavg.m4: Check for locale.h and the function, setlocale.
33037
33038 1999-01-30  Jim Meyering  <meyering@ascend.com>
33039
33040         * m4/check-type.m4: Use 3-arg form of AC_DEFINE.
33041
33042         * m4/jm-mktime.m4: Make this a wrapper around the official
33043         AM_FUNC_MKTIME rather than my private copy, now that the official one
33044         is up to date.
33045         * m4/mktime.m4: Remove file.
33046
33047         * m4/getloadavg.m4: Use 3-arg form of AC_DEFINE.
33048         * m4/uptime.m4: Likewise.
33049         * m4/uintmax_t.m4: Likewise.
33050
33051 1999-01-28  Jim Meyering  <meyering@ascend.com>
33052
33053         * m4/jm-macros.m4: Use jm_AFS.
33054         * m4/afs.m4: New file (from fileutils' configure.in).
33055
33056         * m4/assert.m4: Use the 3-argument forms of AC_DEFINE* macros.
33057         * m4/chown.m4: Likewise.
33058         * m4/d-ino.m4: Likewise.
33059         * m4/d-type.m4: Likewise.
33060         * m4/fnmatch.m4: Likewise.
33061         * m4/getgroups.m4: Likewise.
33062         * m4/gettext.m4: Likewise.
33063         * m4/jm-mktime.m4: Likewise.
33064         * m4/jm-winsz2.m4: Likewise.
33065         * m4/lcmessage.m4: Likewise.
33066         * m4/ls-mntd-fs.m4: Likewise.
33067         * m4/malloc.m4: Likewise.
33068         * m4/memcmp.m4: Likewise.
33069         * m4/putenv.m4: Likewise.
33070         * m4/realloc.m4: Likewise.
33071         * m4/st_mtim.m4: Likewise.
33072         * m4/strftime.m4: Likewise.
33073
33074 1999-01-16  Jim Meyering  <meyering@ascend.com>
33075
33076         * m4/jm-macros.m4 (ARGMATCH_DIE): Define.
33077         (ARGMATCH_DIE_DECL): Define.
33078
33079 1999-01-12  Jim Meyering  <meyering@ascend.com>
33080
33081         * m4/Makefile.am.in: Rewrite to avoid using fmt.
33082         Reported by Lars Hecking.
33083
33084 1999-01-10  Jim Meyering  <meyering@ascend.com>
33085
33086         * m4/fstypename.m4: Use the new 3-arg form of AC_DEFINE instead of my
33087         gross kludge.
33088         * m4/inttypes_h.m4: Likewise.
33089         * m4/lstat.m4: Likewise.
33090         * m4/malloc.m4: Likewise.
33091         * m4/readdir.m4: Likewise.
33092         * m4/realloc.m4: Likewise.
33093         * m4/st_dm_mode.m4: Likewise.
33094         * m4/stat.m4: Likewise.
33095         * m4/utimbuf.m4: Likewise.
33096         * m4/utimes.m4: Likewise.
33097
33098         * m4/check-decl.m4: Use the new 3-arg form of AC_DEFINE instead of the
33099         AC_CHECK_FUNCS hack.  Now, it's still a hack, but at least the
33100         comments in config.h.in are meaningful.
33101
33102         * m4/jm-macros.m4: Require autoconf-2.13 here.
33103
33104         * m4/regex.m4: By default, don't use the included regex.c on systems
33105         with glibc 2.  Suggestion from Uli Drepper.
33106
33107 1999-01-02  Jim Meyering  <meyering@ascend.com>
33108
33109         * m4/jm-macros.m4: Replace strcasecmp and strncasecmp.
33110
33111 1998-12-18  Jim Meyering  <meyering@ascend.com>
33112
33113         * m4/Makefile.am.in (Makefile.am): Simplify rule.
33114         Based on a suggestion from Lars Hecking.
33115
33116 1998-11-16  Paul Eggert  <eggert@twinsun.com>
33117
33118         * m4/lfs.m4 (AC_LFS): Add support for HP-UX 10.20 and HP-UX 11.
33119
33120 1998-11-16  Jim Meyering  <meyering@ascend.com>
33121
33122         * m4/lfs.m4: Double-quote the `uname...` expression.
33123
33124 1998-11-14  Jim Meyering  <meyering@ascend.com>
33125
33126         * m4/lstat.m4: Correct comment.  POSIX does not permit it to succeed.
33127         * m4/stat.m4: Likewise.
33128
33129 1998-11-03  Jim Meyering  <meyering@ascend.com>
33130
33131         * m4/stat.m4: Rewrite to set HAVE_STAT_EMPTY_STRING_BUG.
33132         * m4/lstat.m4: Rewrite to set HAVE_LSTAT_EMPTY_STRING_BUG.
33133
33134 1998-10-18  Jim Meyering  <meyering@ascend.com>
33135
33136         * m4/check-decl.m4 (jm_CHECK_DECL_LOCALTIME_R): Remove macro.
33137
33138 1998-10-17  Jim Meyering  <meyering@ascend.com>
33139
33140         * m4/decl.m4 (jm_CHECK_DECLARATION): Don't hard-code which headers to
33141         include, though we still hard-code the `require'-like AC_CHECK_HEADERS
33142         calls for those previously hard-coded headers.  Instead, take a new
33143         parameter.
33144         (jm_CHECK_DECLARATIONS): Reflect interface change.
33145         * m4/check-decl.m4 (jm_CHECK_DECLS): Likewise.
33146         (jm_CHECK_DECL_LOCALTIME_R): New macro.
33147
33148         * m4/mktime.m4: Test for spring-forward gap before long-running test.
33149
33150 1998-10-14  Jim Meyering  <meyering@ascend.com>
33151
33152         * m4/mktime.m4: Use the more portable "TZ=PST8PDT,M4.1.0,M10.5.0"
33153         instead of "TZ=America/Vancouver".  From Paul Eggert.
33154
33155 1998-10-11  Jim Meyering  <meyering@ascend.com>
33156
33157         * m4/mktime.m4 (jm_AM_FUNC_MKTIME): New file and macro.
33158         This adds a test for a recently added compatibility fix for mktime.c.
33159         * m4/jm-mktime.m4: Require jm_AM_FUNC_MKTIME, not AM_FUNC_MKTIME.
33160
33161 1998-09-27  Jim Meyering  <meyering@ascend.com>
33162
33163         * m4/jm-macros.m4 (jm_MACROS): Require jm_FUNC_FNMATCH.
33164
33165         * m4/fnmatch.m4 (jm_FUNC_FNMATCH): New file/macro.  Extracted from
33166         ../configure.in, including a change from Gordon Matzigkeit to allow
33167         cross-compiling for the Hurd.
33168
33169         * m4/glibc.m4: New file/macro to test for the GNU C Library
33170         versions 1 and 2.  From Gordon Matzigkeit.
33171         Indent.
33172
33173 1998-09-21  Jim Meyering  <meyering@ascend.com>
33174
33175         * m4/chown.m4: Declare locals: before, after.  From Andries Brouwer.
33176
33177 1998-08-18  Paul Eggert  <eggert@twinsun.com>
33178
33179         Port nanosecond-resolution times to UnixWare 2.1.2 and
33180         pedantic Solaris 2.6.
33181
33182         * m4/st_mtim.m4 (AC_STRUCT_ST_MTIM_NSEC): Renamed from
33183         AC_STRUCT_ST_MTIM.
33184         * m4/st_mtim.m4 (AC_STRUCT_ST_MTIM_NSEC):
33185         Generate name of ns member, instead of just 1 or undef.
33186         Allow for UnixWare 2.1.2 and Solaris 2.6 if in pedantic mode.
33187
33188 1998-08-15  Jim Meyering  <meyering@ascend.com>
33189
33190         * m4/ssize_t.m4 (jm_TYPE_SSIZE_T): Remove file.
33191         * m4/check-type.m4: New file.  Replacement for AC_CHECK_TYPE.
33192         * m4/jm-macros.m4: Use the new AC_CHECK_TYPE(ssize_t, int)
33193         instead of jm_TYPE_SSIZE_T.
33194
33195 1998-08-12  Jim Meyering  <meyering@ascend.com>
33196
33197         * m4/st_dm_mode.m4: New file.  From Johan Danielsson.
33198
33199 1998-08-02  Jim Meyering  <meyering@ascend.com>
33200
33201         * m4/st_mtim.m4: Use hack to avoid having to put #undef HAVE_ST_MTIM
33202         in acconfig.h manually.
33203
33204 1998-07-31  Paul Eggert  <eggert@twinsun.com>
33205
33206         * m4/st_mtim.m4: New file.
33207
33208 1998-07-28  Jim Meyering  <meyering@ascend.com>
33209
33210         * m4/utimes.m4: Undef stat.
33211
33212 1998-07-25  Jim Meyering  <meyering@ascend.com>
33213
33214         * m4/utime.m4 (jm_FUNC_UTIME): New file and macro.
33215         * m4/utimes.m4 (jm_FUNC_UTIMES_NULL): New file and macro.
33216
33217 1998-07-09  Manfred Hollstein  <manfred@s-direktnet.de>
33218
33219         * m4/chown.m4 (jm_FUNC_CHOWN): Add a check to verify that the
33220         uid and gid actually remain unchanged.
33221
33222 1998-07-07  Jim Meyering  <meyering@ascend.com>
33223
33224         * m4/jm-glibc-io.m4: Remove fclose_unlocked.
33225
33226 1998-07-04  Jim Meyering  <meyering@ascend.com>
33227
33228         * m4/regex.m4: Use syscmd, ifelse, and sysval.  Mainly as an exercise
33229         to prove that this macro can be used in packages without regex.c.
33230
33231 1998-07-04  Andreas Schwab  <schwab@issan.informatik.uni-dortmund.de>
33232
33233         * m4/gettext.m4 (AM_WITH_NLS): Remove intl/libintl.h if <libintl.h>
33234         is to be used.
33235
33236 1998-07-03  Jim Meyering  <meyering@ascend.com>
33237
33238         * m4/gettext.m4: Add -lintl if it's found to be necessary.
33239
33240         * m4/gettext.m4: New file -- from gettext-0.10.35.
33241         * m4/lcmessage.m4: Likewise.
33242         * m4/progtest.m4: Likewise.
33243
33244         * m4/regex.m4 (jm_WITH_REGEX): New file and macro.
33245         * m4/jm-macros.m4: Require the new macro.
33246
33247 1998-06-29  Jim Meyering  <meyering@ascend.com>
33248
33249         * m4/fstypename.m4: Include sys/param.h.  NetBSD 1.3.1 requires this
33250         for the definition of NGROUPS (used in a system header included
33251         by sys/mount.h).
33252
33253 1998-06-28  Jim Meyering  <meyering@ascend.com>
33254
33255         * m4/ls-mntd-fs.m4: New file.
33256         * m4/fstypename.m4: New file.
33257
33258         * m4/jm-macros.m4: Require the new macro.
33259         * m4/jm-glibc-io.m4: New file.
33260
33261 1998-05-19  Jim Meyering  <meyering@ascend.com>
33262
33263         * m4/jm-macros.m4: Add jm_FUNC_LCHOWN.
33264         * m4/lchown.m4: New file.
33265
33266         * m4/Makefile.am.in: New file.
33267         * m4/Makefile.am (Makefile.am): Depend on Makefile.am.in.
33268
33269 1998-05-14  Jim Meyering  <meyering@ascend.com>
33270
33271         * m4/Makefile.am (EXTRA_DIST): Add them.
33272         * m4/jm-macros.m4: New file.
33273         * m4/utimbuf.m4: New file.
33274
33275 1998-05-12  Jim Meyering  <meyering@ascend.com>
33276
33277         * m4/Makefile.am (EXTRA_DIST): Add isc-posix.m4.
33278
33279 1998-05-11  Jim Meyering  <meyering@ascend.com>
33280
33281         * m4/isc-posix.m4: New file.
33282
33283 1998-05-10  Jim Meyering  <meyering@ascend.com>
33284
33285         * m4/jm-mktime.m4: Use AM_FUNC_MKTIME, now that it's up to date.
33286
33287 1998-05-09  Jim Meyering  <meyering@ascend.com>
33288
33289         * m4/Makefile.am (EXTRA_DIST): Add ssize_t.m4.
33290         (EXTRA_DIST): Remove mktime.m4, now that the new version is included
33291         with automake.
33292
33293         * m4/ssize_t.m4: New file.
33294         * m4/mktime.m4: Remove file -- the new automake has this now.
33295
33296 1998-04-26  Jim Meyering  <meyering@ascend.com>
33297
33298         * m4/assert.m4: New file.
33299         * m4/Makefile.am (EXTRA_DIST): Add assert.m4.
33300
33301 1998-04-05  Jim Meyering  <meyering@ascend.com>
33302
33303         * m4/prereq.m4 (jm_PREREQ_REGEX): New macro.
33304         (jm_PREREQ): Use it here.
33305
33306 1998-03-23  Jim Meyering  <meyering@eng.ascend.com>
33307
33308         * m4/inttypes_h.m4: Kludges so I don't have to add HAVE_INTTYPES_H
33309         in acconfig.h.
33310
33311 1998-03-15  Jim Meyering  <meyering@eng.ascend.com>
33312
33313         * m4/prereq.m4: New file.
33314         * m4/error.m4: New file.
33315         * m4/Makefile.am (EXTRA_DIST): Add error.m4 and prereq.m4.
33316
33317 1998-02-07  Jim Meyering  <meyering@eng.ascend.com>
33318
33319         * m4/getline.m4: Don't set am_cv_func_working_getline before the
33320         cache-check for the same variable -- that defeated the purpose of
33321         the test; the test program was never run.  This was a problem only
33322         on systems with losing getline functions -- HP-UX 10.20 is one.
33323         Reported by Bjorn Helgaas.
33324
33325 1998-02-06  Jim Meyering  <meyering@eng.ascend.com>
33326
33327         * m4/Makefile.am (EXTRA_DIST): Add perl.m4.
33328
33329 1998-01-10  Jim Meyering  <meyering@na-net.ornl.gov>
33330
33331         * m4/Makefile.am (EXTRA_DIST): Add const.m4.
33332
33333         * m4/const.m4: New file.  Use an initializer in this declaration
33334         typedef int charset[2]; const charset x;
33335         Reported by Bob Glickstein.
33336
33337 1997-12-21  Jim Meyering  <meyering@na-net.ornl.gov>
33338
33339         * m4/chown.m4: Fix reversed types on -1 args to chown.
33340         From Kaveh Ghazi.
33341
33342 1997-12-14  Jim Meyering  <meyering@na-net.ornl.gov>
33343
33344         * m4/check-decl.m4: s/DECLARATION_/DECL_/g.
33345         Add lseek and memchr.
33346
33347         * m4/decl.m4: s/HAVE_DECLARATION_/HAVE_DECL_/g.
33348         T.E.Dickey <dickey@clark.net> said that some older preprocessors
33349         have a 20-character limit on names.
33350
33351 1997-11-30  Jim Meyering  <meyering@na-net.ornl.gov>
33352
33353         * m4/inttypes_h.m4: New file.
33354         * m4/uintmax_t.m4: New file.
33355         * m4/Makefile.am (EXTRA_DIST): Add inttypes_h.m4 and uintmax_t.m4.
33356
33357 Copyright (C) 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007
33358   Free Software Foundation, Inc.
33359 Copying and distribution of this file, with or without modification,
33360 are permitted provided the copyright notice and this notice are preserved.