4a246468fd905201c4be0ad8e24c0695a4528985
[gnulib.git] / ChangeLog
1 2006-10-10  Bruno Haible  <bruno@clisp.org>
2
3         Make it possible to #define gcd to an alias.
4         * lib/gcd.c: Include config.h.
5
6 2006-10-10  Bruno Haible  <bruno@clisp.org>
7
8         Make it possible to #define c_isascii to an alias.
9         * lib/c-ctype.h: Don't define the macros if NO_C_CTYPE_MACROS is
10         defined. Undefine the macros before defining them, to avoid gcc
11         warnings.
12         * lib/c-ctype.c: Include config.h. Don't undefine the macros; instead,
13         define NO_C_CTYPE_MACROS early.
14
15 2006-10-10  Bruno Haible  <bruno@clisp.org>
16
17         Make it possible to #define set_program_name to an alias.
18         * lib/progname.c: Don't undefine set_program_name; instead, undefine
19         ENABLE_RELOCATABLE early.
20
21 2006-10-10  Paul Eggert  <eggert@cs.ucla.edu>
22
23         Port to Tandem NSK OSS, which has 64-bit signed int but at most
24         32-bit unsigned int.  Problem reported by Matthew Woehlke in:
25         http://lists.gnu.org/archive/html/bug-coreutils/2006-10/msg00062.html
26         More generally, don't assume that 64-bit signed int is available
27         if unsigned int is, and vice versa.
28         * lib/inttypes_.h (_PRIu64_PREFIX, _SCNu64_PREFIX): Depend on
29         unsigned symbols, not on their signed counterparts.
30         * lib/stdint_.h (uint64_t, uint_least64_t, uint_fast64_t, uintmax_t):
31         (UINT64_MAX, UINT_LEAST64_MAX, UINT_FAST64_MAX, UINTMAX_MAX):
32         (UINT64_C, UINTMAX_C):
33         Likewise.
34         * lib/strtoimax.c (strtoll): Depend on signed symbols, not their
35         unsigned counterparts.
36         (Have_long_long, Unsigned): New macros.
37         (Int): Renamed from INT.
38         (strtoimax): Use the new macros.
39         * m4/stdint.m4 (gl_STDINT_H): Require AC_TYPE_UNSIGNED_LONG_LONG_INT
40         and substitute HAVE_UNSIGNED_LONG_LONG_INT.
41         * modules/inttypes (inttypes.h): Substitute
42         HAVE_UNSIGNED_LONG_LONG_INT.
43         * modules/stdint (stdint.h): Likewise.
44         (Files): Add m4/ulonglong.m4.
45
46 2006-10-10  Bruno Haible  <bruno@clisp.org>
47
48         Fix a gcc -Wshadow warning.
49         * lib/gl_anyhash_list2.h (hash_resize): Rename local variable 'index'
50         to 'bucket'.
51         * lib/gl_anylinked_list2.h (gl_linked_search_from_to,
52         gl_linked_indexof_from_to): Likewise.
53         * lib/gl_linkedhash_list.c (add_to_bucket, remove_from_bucket):
54         Likewise.
55         * lib/gl_anytreehash_list1.h (add_to_bucket, remove_from_bucket):
56         Likewise.
57         * lib/gl_anytreehash_list2.h (gl_tree_search_from_to): Likewise.
58         Reported by Eric Blake.
59
60 2006-10-09  Paul Eggert  <eggert@cs.ucla.edu>
61
62         * lib/filemode.h [HAVE_DECL_STRMODE]: Include unistd.h too,
63         for NetBSD.  Problem reported by Bruno Haible.
64
65 2006-10-09  Jim Meyering  <jim@meyering.net>
66
67         * lib/lchown.c: Include <sys/stat.h> before "stat-macros.h".
68         Patch from Bruno Haible.
69
70 2006-10-09  Jim Meyering  <jim@meyering.net>
71
72         * lib/fts-cycle.c (leave_dir): When "leaving" a top level directory due
73         to FTS_SKIP, don't copy the parent's uninitialized dev/ino values.
74         Trigger with e.g., mkdir d && valgrind ./chmod u+rwx d d
75
76 2006-10-08  Paul Eggert  <eggert@cs.ucla.edu>
77
78         Don't include <config.h> twice; this doesn't work in some cases,
79         e.g., when config.h has "#define intmax_t long long int" and
80         we include <config.h>, <inttypes.h>, <config.h> in that order.
81         Problem reported by Matthew Woehlke in:
82         http://lists.gnu.org/archive/html/bug-coreutils/2006-10/msg00073.html
83         * lib/fprintftime.c: Don't include config.h or fprintftime.h.
84         * lib/fts-cycle.c: Don't include config.h.
85         * lib/strftime.c: Include fprintftime.h if FPRINTFTIME is defined.
86         * lib/xstrtoimax.c: Remove copyright notice since it's short tnow.
87         Don't include config.h or xstrtol.h.  Define STRTOL_T_MINIMUM
88         and STRTOL_T_MAXIMUM unconditionally, since we now assume gnulib
89         inttypes.h.
90         * lib/xstrtoumax.c: Likewise.
91         * lib/xstrtol.c: Include config.h and xstrtol.h after defining
92         __strtol and the like, so that this module is more like its siblings.
93         (STRTOL_T_MINIMUM, STRTOL_T_MAXIMUM) [! defined STRTOL_T_MINIMUM]:
94         Remove; no longer needed now that we assume gnulib inttypes.h.
95
96 2006-10-08  Bruno Haible  <bruno@clisp.org>
97
98         * doc/gnulib-tool.texi: Emphasize the drawbacks of the --symlink
99         option.
100
101 2006-10-07  Jim Meyering  <jim@meyering.net>
102
103         * modules/inttypes (inttypes.h): Revert what seems to have been
104         an inadvertent part of today's change: use "|", not "/" in the
105         substitution for the "/"-containing string, $(ABSOLUTE_INTTYPES_H).
106
107 2006-10-07  Bruno Haible  <bruno@clisp.org>
108
109         * modules/sublist: New file.
110
111 2006-10-07  Bruno Haible  <bruno@clisp.org>
112
113         * modules/alloca-opt (alloca.h): Add a "DO NOT EDIT" comment.
114         * modules/argz (argz.h): Likewise.
115         * modules/arpa_inet (arpa/inet.h): Likewise.
116         * modules/byteswap (byteswap.h): Likewise.
117         * modules/configmake (configmake.h): Likewise.
118         * modules/fcntl (fcntl.h): Likewise.
119         * modules/fnmatch (fnmatch.h): Likewise.
120         * modules/getopt (getopt.h): Likewise.
121         * modules/glob (glob.h): Likewise.
122         * modules/inttypes (inttypes.h): Likewise.
123         * modules/netinet_in (netinet/in.h): Likewise.
124         * modules/poll (poll.h): Likewise.
125         * modules/stdbool (stdbool.h): Likewise.
126         * modules/stdint (stdint.h): Likewise.
127         * modules/sys_select (sys/select.h): Likewise.
128         * modules/sys_socket (sys/socket.h): Likewise.
129         * modules/sys_stat (sys/stat.h): Likewise.
130         * modules/sysexits (sysexits.h): Likewise.
131         * modules/unistd (unistd.h): Likewise.
132         * gnulib-tool (func_emit_lib_Makefile_am, func_emit_tests_Makefile_am):
133         Add a "DO NOT EDIT" comment to the generated file.
134         (func_import): Likewise for gnulib-comp.m4.
135
136 2006-10-07  Bruno Haible  <bruno@clisp.org>
137
138         * lib/gl_sublist.h: New file.
139         * lib/gl_sublist.c: New file.
140
141 2006-10-06  Paul Eggert  <eggert@cs.ucla.edu>
142
143         * lib/mkancesdirs.c (mkancesdirs): Pass to MAKE_DIR both the full file
144         name (relative to the original working directory) and the file
145         name component (relative to the temporary working directory).  All
146         callers changed.
147         * lib/mkancesdirs.h (mkancesdirs): Adjust prototype to match.
148         * lib/mkdir-p.c (make_dir_parents): Likewise.
149         * lib/mkdir-p.h (make_dir_parents): Likewise.
150
151 2006-10-06  Eric Blake  <ebb9@byu.net>
152
153         Define several macros for use by the clean-temp module.
154         * m4/close-stream.m4 (gl_CLOSE_STREAM): Define GNULIB_CLOSE_STREAM.
155         * m4/fcntl-safer.m4 (gl_FCNTL_SAFER): Define GNULIB_FCNTL_SAFER.
156         * m4/stdio-safer.m4 (gl_FOPEN_SAFER): Define GNULIB_FOPEN_SAFER.
157
158         * lib/clean-temp.h (close_stream_temp): New declaration.
159         * lib/clean-temp.c (includes): Pull in headers according to what
160         other modules are in use.
161         (close_stream_temp) [GNULIB_CLOSE_STREAM]: New function.
162
163 2006-10-06  Bruno Haible  <bruno@clisp.org>
164
165         * lib/javacomp.c (write_temp_file): Use fopen_temp, fwriteerror_temp
166         instead of fopen, fwriteerror.
167
168 2006-10-06  Bruno Haible  <bruno@clisp.org>
169
170         * lib/clean-temp.h (cleanup_temp_file, cleanup_temp_subdir,
171         cleanup_temp_dir_contents, cleanup_temp_dir): Change return type to
172         int.
173         * lib/clean-temp.c (do_unlink, do_rmdir, cleanup_temp_file,
174         cleanup_temp_subdir, cleanup_temp_dir_contents, cleanup_temp_dir):
175         Return an error indicator.
176         Suggested by Eric Blake.
177
178 2006-10-06  Bruno Haible  <bruno@clisp.org>
179
180         * lib/clean-temp.c (PATH_MAX): Provide a fallback for GNU Hurd.
181         Reported by Eric Blake.
182
183 2006-10-06  Bruno Haible  <bruno@clisp.org>
184
185         * modules/closeout (Description): Mention stderr too.
186
187 2006-10-06  Bruno Haible  <bruno@clisp.org>
188         and Paul Eggert  <eggert@cs.ucla.edu>
189
190         * lib/closeout.c (close_stdout): Also close stderr.
191         * lib/closeout.h: Update comment.
192
193 2006-10-05  Paul Eggert  <eggert@cs.ucla.edu>
194
195         Fix some Darwin-7.9.0 porting problems reported by Bruno Haible in
196         <http://lists.gnu.org/archive/html/bug-coreutils/2006-10/msg00063.html>.
197         * lib/dirchownmod.c: Include lchown.h.
198         * lib/lchown.c: Don't include files that lchown.h now includes.
199         Don't declare chown, since lchown.h now does that.
200         * lib/lchown.h: Include errno.h, sys/types.h, unistd.h.
201         (lchown): Define to rpl_chown if lchown is declared but
202         does not exist.  Declare using a prototype if lchown is not
203         declared.  Add a copyright notice.
204         * lib/mkstemp.h: Include <unistd.h>.
205         * lib/openat.c: Include lchown.h.
206
207         * lib/fcntl_.h (O_NOFOLLOW): Don't depend on O_NOFOLLOW_IS_INEFFECTIVE;
208         we now test for that separately.
209         * lib/fts.c (fts_safe_changedir): Inspect HAVE_WORKING_O_NOFOLLOW
210         rather than O_NOFOLLOW, when testing whether it's possible to
211         avoid a race condition reliably.
212         * lib/savewd.c (savewd_chdir): Likewise.
213
214         Remove macros that are no longer needed now that stdint.h is
215         reliable.
216         * lib/fsusage.c (UINTMAX_MAX): Remove.
217         * lib/human.c (SIZE_MAX, UINTMAX_MAX): Remove.
218         * lib/utimecmp.c (SIZE_MAX): Remove.
219
220         * m4/lchown.m4 (gl_FUNC_LCHOWN): Check whether lchown is declared.
221
222         * m4/fcntl_h.m4 (gl_FCNTL_H): Define HAVE_WORKING_O_NOFOLLOW instead
223         of O_NOFOLLOW_IS_INEFFECTIVE.  Define HAVE_WORKING_O_NOATIME if
224         O_NOATIME works.
225
226 2006-10-05  Bruno Haible  <bruno@clisp.org>
227
228         * lib/gl_list.h (gl_sortedlist_search_from_to,
229         gl_sortedlist_indexof_from_to): New declarations.
230         (gl_list_implementation): New fields sortedlist_search_from_to,
231         sortedlist_indexof_from_to.
232         (gl_sortedlist_search_from_to, gl_sortedlist_indexof_from_to): New
233         inline functions.
234         * lib/gl_list.c (gl_sortedlist_search_from_to,
235         gl_sortedlist_indexof_from_to): New functions.
236         * lib/gl_array_list.c (gl_array_sortedlist_indexof_from_to): New
237         function.
238         (gl_array_sortedlist_indexof, gl_array_sortedlist_search): Use it.
239         (gl_array_sortedlist_search_from_to): New function.
240         (gl_array_list_implementation): Update.
241         * lib/gl_carray_list.c (gl_carray_sortedlist_indexof_from_to): New
242         function.
243         (gl_carray_sortedlist_indexof, gl_carray_sortedlist_search): Use it.
244         (gl_carray_sortedlist_search_from_to): New function.
245         (gl_carray_list_implementation): Update.
246         * lib/gl_anylinked_list2.h (gl_linked_sortedlist_search_from_to,
247         gl_linked_sortedlist_indexof_from_to): New functions.
248         * lib/gl_linked_list.c (gl_linked_list_implementation): Update.
249         * lib/gl_linkedhash_list.c (gl_linkedhash_list_implementation): Update.
250         * lib/gl_anytree_list2.h (gl_tree_sortedlist_search_from_to,
251         gl_tree_sortedlist_indexof_from_to): New functions.
252         * lib/gl_avltree_list.c (gl_avltree_list_implementation): Update.
253         * lib/gl_avltreehash_list.c (gl_avltreehash_list_implementation):
254         Update.
255         * lib/gl_rbtree_list.c (gl_rbtree_list_implementation): Update.
256         * lib/gl_rbtreehash_list.c (gl_avltreehash_list_implementation):
257         Update.
258
259 2006-10-05  Bruno Haible  <bruno@clisp.org>
260
261         * lib/gl_list.h (gl_list_search_from, gl_list_search_from_to,
262         gl_list_indexof_from, gl_list_indexof_from_to): New declarations.
263         (struct gl_list_implementation): Add fields search_from_to,
264         indexof_from_to. Remove fields search, indexof.
265         (gl_list_search): Use the search_from_to method.
266         (gl_list_search_from, gl_list_search_from_to): New functions.
267         (gl_list_indexof): Use the indexof_from_to method.
268         (gl_list_indexof_from, gl_list_indexof_from_to): New functions.
269         * lib/gl_list.c (gl_list_search): Use the search_from_to method.
270         (gl_list_search_from, gl_list_search_from_to): New functions.
271         (gl_list_indexof): Use the indexof_from_to method.
272         (gl_list_indexof_from, gl_list_indexof_from_to): New functions.
273         * lib/gl_array_list.c (gl_array_indexof_from_to): Renamed from
274         gl_array_indexof. Add start_index, end_index arguments.
275         (gl_array_search_from_to): Renamed from gl_array_search. Add
276         start_index, end_index arguments.
277         (gl_array_remove, gl_array_list_implementation): Update.
278         * lib/gl_carray_list.c (gl_carray_indexof_from_to): Renamed from
279         gl_carray_indexof. Add start_index, end_index arguments.
280         (gl_carray_search_from_to): Renamed from gl_carray_search. Add
281         start_index, end_index arguments.
282         (gl_carray_remove, gl_carray_list_implementation): Update.
283         * lib/gl_anylinked_list2.h (gl_linked_search_from_to): Renamed from
284         gl_linked_search. Add start_index, end_index arguments.
285         (gl_linked_indexof_from_to): Renamed from gl_linked_indexof. Add
286         start_index, end_index arguments.
287         (gl_linked_remove): Update.
288         * lib/gl_linked_list.c (gl_linked_list_implementation): Update.
289         * lib/gl_linkedhash_list.c (gl_linkedhash_list_implementation): Update.
290         * lib/gl_anytree_list1.h (iterstack_item_t): Change type of 'rightp'
291         field to 'size_t'.
292         * lib/gl_anytree_list2.h (gl_tree_search_from_to): Renamed from
293         gl_tree_search. Add start_index, end_index arguments.
294         (gl_tree_indexof_from_to): Renamed from gl_tree_indexof. Add
295         start_index, end_index arguments.
296         (gl_tree_remove): Update.
297         * lib/gl_avltree_list.c (gl_avltree_list_implementation): Update.
298         * lib/gl_rbtree_list.c (gl_rbtree_list_implementation): Update.
299         * lib/gl_anytreehash_list1.h (compare_position_threshold): New
300         function.
301         * lib/gl_anytreehash_list2.h (gl_tree_search_from_to): Renamed from
302         gl_tree_search. Add start_index, end_index arguments.
303         (gl_tree_indexof_from_to): Renamed from gl_tree_indexof. Add
304         start_index, end_index arguments.
305         * lib/gl_avltreehash_list.c (gl_avltreehash_list_implementation):
306         Update.
307         * lib/gl_rbtreehash_list.c (gl_rbtreehash_list_implementation): Update.
308
309 2006-10-05  Bruno Haible  <bruno@clisp.org>
310
311         * modules/fwriteerror (configure.ac): Define GNULIB_FWRITEERROR.
312
313         * lib/clean-temp.h (open_temp, fopen_temp, close_temp, fclose_temp,
314         fwriteerror_temp): New declarations.
315         * lib/clean-temp.c (uintptr_t): Provide fallback definition.
316         (descriptors): New variable.
317         (cleanup): First, close the descriptors.
318         (register_fd, unregister_fd, open_temp, fopen_temp, close_temp,
319         fclose_temp, fwriteerror_temp): New functions.
320
321 2006-10-04  Jim Meyering  <jim@meyering.net>
322
323         * lib/fts.c (fts_open): Tiny comment change.
324
325 2006-10-04  Bruno Haible  <bruno@clisp.org>
326
327         Make it possible to invoke AC_GNU_SOURCE after gl_LOCK_EARLY.
328         * m4/lock.m4 (gl_LOCK_EARLY_BODY): New macro, extracted code from
329         gl_LOCK_BODY.
330         (gl_LOCK_EARLY): Require gl_LOCK_EARLY_BODY, not gl_LOCK_BODY.
331         (gl_LOCK_BODY): Remove settings of CPPFLAGS, now done in
332         gl_LOCK_EARLY_BODY.
333         (gl_LOCK): Require gl_LOCK_BODY.
334
335 2006-10-04  Bruno Haible  <bruno@clisp.org>
336
337         * lib/gl_oset.h (gl_setelement_threshold_fn): New type.
338         (gl_oset_search_atleast): New declaration.
339         (struct gl_oset_implementation): Add field 'search_atleast'.
340         (gl_oset_search_atleast): New inline function.
341         * lib/gl_oset.c (gl_oset_search_atleast): New function.
342         * lib/gl_array_oset.c (gl_array_search_atleast): New function.
343         (gl_array_oset_implementation): Update.
344         * lib/gl_anytree_oset.h (gl_tree_search_atleast): New function.
345         * lib/gl_avltree_oset.c (gl_avltree_oset_implementation): Update.
346         * lib/gl_rbtree_oset.c (gl_rbtree_oset_implementation): Update.
347
348 2006-10-04  Bruno Haible  <bruno@clisp.org>
349
350         * lib/fatal-signal.c (fatal_signals) [WOE32]: Add the SIGBREAK signal.
351
352 2006-10-03  Bruno Haible  <bruno@clisp.org>
353
354         * lib/gl_rbtreehash_list.c (gl_rbtreehash_list_implementation): Renamed
355         from gl_avltreehash_list_implementation.
356
357 2006-10-03  Bruno Haible  <bruno@clisp.org>
358
359         * lib/gl_oset.c (gl_oset_add): Fix return type.
360
361 2006-10-02  Paolo Bonzini  <bonzini@gnu.org>  (tiny change)
362
363         * lib/quotearg.c (mbstate_t) [!HAVE_MBRTOWC]: #define to int.
364
365 2006-10-02  Eric Blake  <ebb9@byu.net>
366
367         * modules/strnlen (Depends-on): Add extensions.
368
369 2006-10-02  Eric Blake  <ebb9@byu.net>
370
371         * m4/extensions.m4 (gl_USE_SYSTEM_EXTENSIONS): Use autoconf's
372         definition in 2.60+.
373
374 2006-10-02  Dmitry V. Levin  <ldv@altlinux.org>
375
376         * lib/fts.c (fts_close, fts_build, fts_palloc): Remove redundant
377         checks.
378
379 2006-10-02  Bruno Haible  <bruno@clisp.org>
380
381         * gnulib-tool (func_emit_lib_Makefile_am): Don't add no-dependencies
382         to the AUTOMAKE_OPTIONS.
383         Reported by Jim Meyering.
384
385 2006-09-29  Paul Eggert  <eggert@cs.ucla.edu>
386
387         Work around bug in Solaris 10 /proc file system:
388         /proc/self/fd/NNN/.. isn't the parent directory of
389         the directory whose file descriptor is NNN.  This needs to
390         be worked around at run time, not compile time, since a
391         program might be built on Solaris 8, where things work, and
392         run on Solaris 10.
393         * lib/openat-priv.h (BUILD_PROC_NAME): Remove.  All callers changed
394         to use the following interface instead:
395         (OPENAT_BUFFER_SIZE): New macro.
396         (openat_proc_name): New function.
397         * lib/at-func.c (AT_FUNC_NAME): Adjust to above changes.
398         * lib/openat.c (openat_permissive, openat_needs_fchdir, fdopendir):
399         Likewise.
400         * lib/openat-proc.c: New file.
401         * modules/openat (Files): Add lib/openat-proc.c.
402         (Depends-on): Add same-inode, stdbool.
403         * m4/openat.m4 (gl_FUNC_OPENAT): Add AC_LIBOBJ(openat-proc).
404
405 2006-09-29  Bruno Haible  <bruno@clisp.org>
406
407         * lib/fwriteerror.h (fwriteerror_no_ebadf): New declaration.
408         * lib/(do_fwriteerror): Renamed from fwriteerror. Add ignore_ebadf
409         argument. Set stdout_closed before testing for ferror, not after.
410         (fwriteerror, fwriteerror_no_ebadf): New functions.
411
412 2006-09-28  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
413
414         * m4/intmax.m4 (gt_TYPE_INTMAX_T): Avoid unused variables warning.
415
416 2006-09-28  Paolo Bonzini  <bonzini@gnu.org>
417
418         * lib/poll.c (rpl_poll) [__APPLE__]: Use FIONREAD instead of MSG_PEEK.
419         * m4/poll.m4: Look for sys/ioctl.h and sys/filio.h.
420
421 2006-09-28  Jim Meyering  <jim@meyering.net>
422
423         * lib/mkdir-p.c: Include "dirchownmod.h", not "dirchownmod.c".
424         Include <unistd.h>.
425
426 2006-09-28  Bruno Haible  <bruno@clisp.org>
427
428         * modules/avltreehash-list (Depends-on): Add stdint, remove size_max.
429         * modules/linkedhash-list (Depends-on): Likewise.
430         * modules/rbtreehash-list (Depends-on): Likewise.
431
432 2006-09-28  Bruno Haible  <bruno@clisp.org>
433
434         * lib/strndup.h: Simplify the redefinition of strndup.
435         (_GL_CONCAT, _GL_XCONCAT, __STRNDUP_ID): Remove macros.
436         * m4/strndup.m4 (gl_FUNC_STRNDUP): Don't define __STRNDUP_PREFIX.
437
438 2006-09-28  Bruno Haible  <bruno@clisp.org>
439
440         * lib/gl_avltreehash_list.c: Include <stdint.h> instead of size_max.h.
441         * lib/gl_linkedhash_list.c: Likewise.
442         * lib/gl_rbtreehash_list.c: Likewise.
443
444 2006-09-27  Paul Eggert  <eggert@cs.ucla.edu>
445
446         * lib/canon-host.c (canon_host_r): Work around bug in Darwin 7.9.0
447         getaddrinfo.
448
449         * lib/__fpending.h: Don't include <stdio_ext.h> unless
450         HAVE_DECL___FPENDING.  This avoids a bug with lsbcc, where
451         it causes <stdio_ext.h> to cause a compile-time error.
452         Problem reported by Nelson H. F. Beebe.
453         * lib/getpass.c: Likewise, except for HAVE_DECL___FSETLOCKING instead
454         of HAVE_DECL___PENDING.
455
456         * m4/fpending.m4 (gl_FUNC_FPENDING): Check for stdio_ext at most once.
457         * m4/getpass.m4 (gl_PREREQ_GETPASS): Check for __fsetlocking's
458         declaration.
459
460 2006-09-27  Jim Meyering  <jim@meyering.net>
461
462         This file could end up with a definition for a function
463         named __strndup, rather than rpl_strndup on a system with
464         incomplete weak_alias support.
465         * lib/strndup.c (strndup): Rename from __strndup.
466         Remove #defines that used to map __strndup to strndup.
467         Don't use K&R prototypes.
468         Remove LIBC-related code, since this file is not sync'd with glibc.
469         * lib/strndup.h: Revamp, accordingly.
470         * m4/strndup.m4: Modernize.
471
472 2006-09-26  Paul Eggert  <eggert@cs.ucla.edu>
473
474         * modules/savewd (Depends-on): Add 'raise'.
475         * lib/savewd.c: Include <signal.h>, for 'raise'.
476
477 2006-09-26  Jim Meyering  <jim@meyering.net>
478
479         * m4/acl.m4 (AC_FUNC_ACL): Disable ACL support altogether
480         when we detect Darwin 8.7.0's acl_get_file bug.
481         Rearrange to perform the new (below) run-test while $LIBS
482         contains any acl-related library.  Set USE_ACL at the end.
483         (gl_ACL_GET_FILE): New function.
484
485 2006-09-26  Eric Blake  <ebb9@byu.net>
486
487         * lib/verror.c: Include <config.h> unconditionally.
488
489 2006-09-25  Paul Eggert  <eggert@cs.ucla.edu>
490
491         * modules/clock-time (Maintainer): Add self.
492         * modules/getlogin_r (Depends-on): Add extensions.
493
494 2006-09-25  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
495
496         * modules/clock-time: New module.
497         * modules/nanosleep (Depends-on): Add clock-time.
498         * modules/gethrxtime (Depends-on): Likewise.
499         * modules/gettime (Depends-on): Likewise.
500         * modules/settime (Depends-on): Likewise.
501
502         * modules/fts-lgpl: Depend on openat.
503         * modules/mkancesdirs: Depend on savewd.
504         * modules/mkdir-p: Likewise.
505
506 2006-09-25  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
507
508         * m4/host-os.m4 (gl_HOST_OS): Require AC_CANONICAL_HOST.
509
510         * m4/chdir-long.m4 (gl_FUNC_CHDIR_LONG): Rename cache variable from
511         `gl_have_arbitrary_file_name_length_limit' to
512         `gl_cv_have_arbitrary_file_name_length_limit', so that caching
513         actually works between configure runs.
514
515 2006-09-25  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
516             Bruno Haible  <bruno@clisp.org>
517
518         * m4/stpncpy.m4 (gl_FUNC_STPNCPY): Include <string.h>.
519
520 2006-09-25  Jim Meyering  <jim@meyering.net>
521
522         * m4/fcntl_h.m4 (gl_FCNTL_H): Fix typo in test for failed open.
523         This typo caused coreutils/tests/dd/misc to fail on Darwin 8.7.0.
524
525 2006-09-25  Eric Blake  <ebb9@byu.net>
526
527         * gnulib-tool (func_import, func_create_testdir): Fix typos in
528         exec's in 2006-09-18 patch when shuffling fds.
529
530 2006-09-25  Bruno Haible  <bruno@clisp.org>
531
532         * m4/getloadavg.m4 (gl_GETLOADAVG): Fix directory in error message.
533         Reported by Jim Meyering.
534
535 2006-09-24  Jim Meyering  <jim@meyering.net>
536
537         * m4/ls-mntd-fs.m4 (gl_LIST_MOUNTED_FILE_SYSTEMS): Don't use '>' to
538         compare a pointer against a literal "0".  That caused failures with
539         at least HP-UX's hpcc.
540
541 2006-09-22  Simon Josefsson  <jas@extundo.com>
542
543         * modules/gc-sha1:
544         * modules/gc-md4:
545         * modules/gc-hmac-sha1:
546         * modules/gc-hmac-md5:
547         * modules/gc-des:
548         * modules/gc-arcfour: Distribute more files.
549
550 2006-09-22  Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
551
552         * lib/gl_anylinked_list2.h [lint] (gl_linked_iterator)
553         (gl_linked_iterator_from_to): Initialize struct completely.
554         * lib/gl_anytree_list2.h [lint] (gl_tree_iterator): Likewise.
555         (gl_tree_iterator_from_to): Likewise
556         * lib/gl_anytree_oset.h [lint] (gl_tree_iterator): Likewise.
557         * lib/gl_array_list.c [lint] (gl_array_iterator)
558         (gl_array_iterator_from_to): Likewise.
559         * lib/gl_array_oset.c [lint] (gl_array_iterator): Likewise.
560         * lib/gl_carray_list.c [lint] (gl_carray_iterator)
561         (gl_carray_iterator_from_to): Likewise.
562
563         * lib/gc-gnulib.c [GC_USE_HMAC_SHA1]: include hmac.h for hmac_sha1.
564         * lib/md4.c (md4_process_block): Remove unused variable.
565         * lib/rijndael-api-fst.c (rijndaelBlockDecrypt): GCC suggests
566         parentheses for clarity.
567
568 2006-09-22  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
569
570         * modules/bison-i18n (Depends-on): Add gettext.
571
572 2006-09-22  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
573
574         * m4/fsusage.m4 (gl_STATFS_TRUNCATES): Avoid unused variable.
575         * m4/getdate.m4 (gl_C_COMPOUND_LITERALS): Likewise.
576         * m4/jm-winsz1.m4 (gl_HEADER_TIOCGWINSZ_IN_TERMIOS_H): Likewise;
577         also add missing comma that caused broken test.
578         * m4/link-follow.m4 (gl_AC_FUNC_LINK_FOLLOWS_SYMLINK): Include
579         stdlib.h, for `abort'.
580         * m4/ls-mntd-fs.m4 (gl_LIST_MOUNTED_FILE_SYSTEMS): Avoid unused
581         variables.
582         * m4/mkdir-slash.m4 (gl_FUNC_MKDIR_TRAILING_SLASH): Check for and
583         include unistd.h if present, for `rmdir'.
584         * m4/physmem.m4 (gl_SYS__SYSTEM_CONFIGURATION): Avoid unused
585         variables.
586         * m4/putenv.m4 (gl_FUNC_PUTENV): Rewrite using AC_RUN_IFELSE, and
587         in the process include standard headers for prototypes.
588         * m4/readutmp.m4 (gl_READUTMP): Require AC_GNU_SOURCE, so utmpxname
589         gets declared on GNU/Linux.
590         * m4/rmdir-errno.m4 (gl_FUNC_RMDIR_NOTEMPTY): Check for and include
591         unistd.h, for `rmdir'.
592         * m4/time_r.m4 (gl_TIME_R): Avoid unused variables.
593
594         * m4/fnmatch.m4 (_AC_FUNC_FNMATCH_IF): Avoid expression that is
595         always true.
596         * m4/strndup.m4 (gl_FUNC_STRNDUP): include stdlib.h, for `free'.
597
598         * m4/sockpfaf.m4 (gl_SOCKET_FAMILIES): Avoid gcc -Wall warnings.
599
600 2006-09-22  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
601
602         * gnulib-tool (func_version): Create output all at once.  This
603         may help avoid triggering unnecessary SIGPIPEs, and at any
604         rate it doesn't hurt.
605
606 2006-09-22  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
607             Bruno Haible  <bruno@clisp.org>
608
609         * m4/lock.m4 (gl_LOCK_BODY): Avoid unused variables warning.
610         * m4/mbswidth.m4 (gl_MBSWIDTH): Likewise.
611         * m4/signed.m4 (bh_C_SIGNED): Likewise.
612
613         * m4/vasprintf.m4 (gl_PREREQ_VASPRINTF_H): New macro.
614         (gl_FUNC_VASPRINTF): Invoke it.
615
616 2006-09-22  Bruno Haible  <bruno@clisp.org>
617
618         * m4/getloadavg.m4 (gl_GETLOADAVG): Expect the directory of
619         getloadavg.c as first argument.
620
621 2006-09-22  Bruno Haible  <bruno@clisp.org>
622
623         * gnulib-tool (func_import, func_create_testdir): Set gl_source_base
624         at the beginning of the gl_INIT macro.
625         * modules/getloadavg (configure.ac): Pass $gl_source_base to
626         gl_GETLOADAVG.
627
628 2006-09-22  Bruno Haible  <bruno@clisp.org>
629
630         * gnulib-tool (func_create_megatestdir): Don't include the config-h
631         module.
632         Suggested by Ralf Wildenhues.
633
634 2006-09-20  Paul Eggert  <eggert@cs.ucla.edu>
635
636         Import this patch from libc:
637
638         2006-09-06  Jakub Jelinek  <jakub@redhat.com>
639
640         * lib/regex_internal.c (re_string_reconstruct): Handle
641         offset < pstr->valid_raw_len && pstr->offsets_needed case.
642         Ensure no bytes read before raw_mbs array.  Pass a saved copy of
643         pstr->valid_len - 1 rather than pstr->valid_raw_len - 1 to
644         re_string_context_at.
645
646         * m4/regex.m4 (gl_REGEX): Check for locale.h, since the test
647         now requires it.
648         (gl_PREREQ_REGEX): Don't check for locale.h any more, since
649         gl_REGEX now does it for us.
650         (gl_REGEX): Add test taken from
651         http://sourceware.org/ml/libc-hacker/2006-09/msg00008.html.
652
653         * m4/mkstemp.m4 (gl_FUNC_MKSTEMP): Require AC_SYS_LARGEFILE.
654         Check that large offsets work.  Modernize Autoconf usages.
655         Prefer "yes" to mean a good thing rather than a bad.
656         Don't put "#define mkstemp" in config.h, as this might interfere
657         with standard system headers that "#define mkstemp mkstemp64".
658
659         * modules/mkstemp (Depends-on): Add extensions, so that
660         mkstemp is visible on some platforms.
661         (Makefile.am): Add mkstemp.h to EXTRA_DIST.
662         (Include): Change to "mkstemp.h" from <stdlib.h>.
663         (Files): Add mkstemp.h.
664
665         * lib/mkstemp.h: New file, since some standard headers
666         #define mkstemp.
667         * lib/mkstemp.c: Revamp to put the !_LIBC code together.
668         Include "mkstemp.h".
669         Make the _LIBC code resemble glibc original more,
670         e.g., use K&R style.
671         * lib/mkstemp-safer.c: Include "mkstemp.h" instead of <stdlib.h>.
672         (mkstemp): Remove, since mkstemp.h does this for us.
673         * lib/stdlib--.h: Include mkstemp.h.
674
675         Import this patch from libc:
676
677         2006-04-07  Ulrich Drepper  <drepper@redhat.com>
678
679         * lib/tempname.c (__gen_tempname): Change attempts_min
680         into a macro.  Use preprocessor to decide how to initialize
681         attempts [Coverity CID 67].
682
683 2006-09-20  Bruno Haible  <bruno@clisp.org>
684
685         * lib/mkdtemp.c: Import from libc.
686         2006-04-07  Ulrich Drepper  <drepper@redhat.com>
687                 * sysdeps/posix/tempname.c (__gen_tempname): Change
688                 attempts_min into a macro.  Use preprocessor to decide how to
689                 initialize attempts [Coverity CID 67].
690         2001-11-27  Paul Eggert  <eggert@twinsun.com>
691                 * sysdeps/posix/tempname.c (__gen_tempname): Try at least
692                 ATTEMPTS_MIN or TMP_MAX times, whichever is greater.
693
694 2006-09-19  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
695
696         * gnulib-tool (func_exit): New function, to allow to pass the
697         exit status portably through the trap.  Use everywhere.
698         (--help, --version): Signal a write error.
699         (trap): catch SIGPIPE, for write errors.
700         Exit at the end of the trap, with the correct exit status.
701
702 2006-09-19  Karl Berry  <karl@gnu.org>
703
704         * doc/gnulib.texi: note about the license texinfo files.
705
706 2006-09-19  Eric Blake  <ebb9@byu.net>
707
708         * gnulib-tool: Avoid space-tab.
709
710 2006-09-18  Paul Eggert  <eggert@cs.ucla.edu>
711
712         * lib/getaddrinfo.c (getaddrinfo) [defined HAVE_IPV6]: Fix typo
713         that prevented coreutils 6.1 from building.  Problem reported
714         by Petter Reinholdtsen.
715
716 2006-09-18  Paul Eggert  <eggert@cs.ucla.edu>
717
718         * gnulib-tool (avoidlist): Fix typo that broke options like
719         --avoid=lock that are used by coreutils bootstrap.
720
721 2006-09-18  Mark D. Baushke  <mdb@gnu.org>
722
723         * m4/inttypes.m4 (gl_INTTYPES_H): Quote "test" args
724         more systematically.
725
726 2006-09-18  Jim Meyering  <jim@meyering.net>
727
728         * lib/savewd.c (savewd_restore): Don't shadow: s/status/child_status/.
729
730 2006-09-18  Bruno Haible  <bruno@clisp.org>
731
732         * modules/inttypes (Files): Remove m4/inttypes-h.m4.
733
734 2006-09-18  Bruno Haible  <bruno@clisp.org>
735
736         * m4/inttypes-h.m4 (gl_HEADER_INTTYPES_H): Remove macro.
737         * m4/inttypes-pri.m4: Require autoconf >= 2.52.
738         (gt_INTTYPES_PRI): Invoke AC_CHECK_HEADERS on inttypes.h. Test
739         ac_cv_header_inttypes_h instead of gl_cv_header_inttypes_h.
740         * m4/gettext.m4: Require autoconf >= 2.52.
741         (gt_INTL_SUBDIR_CORE): Invoke AC_CHECK_HEADERS on inttypes.h.
742         * m4/inttypes.m4 (gl_INTTYPES_H): Test ac_cv_header_inttypes_h instead
743         of gl_cv_header_inttypes_h.
744
745 2006-09-18  Bruno Haible  <bruno@clisp.org>
746
747         * lib/javaversion.c: Include configmake.h.
748
749 2006-09-18  Bruno Haible  <bruno@clisp.org>
750
751         * gnulib-tool (func_import, func_create_testdir): Use exec tricks to
752         avoid that the while loops be executed in a subshell.
753
754 2006-09-18  Bruno Haible  <bruno@clisp.org>
755
756         * MODULES.html.sh (func_module): Break long lines.
757         Suggested by Bruce Korb <bkorb@gnu.org>.
758
759 2006-09-17  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
760
761         Speed up by a factor of 1.12.
762         * gnulib-tool (nl): New variable.
763         (func_import): Rewrite include directive extraction to only read each
764         directive once.
765
766 2006-09-17  Bruno Haible  <bruno@clisp.org>
767
768         * modules/javaversion (Makefile.am): Remove DEFS setting.
769         (Depends-on): Add configmake, for PKGDATADIR definition.
770
771 2006-09-17  Bruno Haible  <bruno@clisp.org>
772
773         * gnulib-tool (func_create_testdir): Rewrite all files at once.
774
775 2006-09-17  Bruno Haible  <bruno@clisp.org>
776
777         * gnulib-tool (func_append): New function, stolen from libtool.m4.
778         (func_modules_transitive_closure, func_modules_add_dummy,
779         func_modules_to_filelist, func_import, func_create_testdir,
780         func_create_megatestdir, ...): Use it wherever possible.
781         Suggested by Ralf Wildenhues.
782
783 2006-09-16  Karl Berry  <karl@gnu.org>
784
785         * doc/fdl.texi (ADDENDUM): switch to @heading from @appendixsubsec,
786         to avoid sectioning errors.
787         * doc/lgpl.texi, gpl.texi (Copying): downcase @unnumbered title.
788         [ifinfo]: blank line after @center-ed titles.
789         * doc/lgpl.texi (Library Copying): Rename main node to GNU LGPL.
790         Spell FSF address consistently with others.
791         (These changes approved by rms.)
792
793 2006-09-15  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
794
795         Speed up by a factor of 1.61.
796         * gnulib-tool (func_modules_transitive_closure): Rewrite to not check
797         already checked module names again.
798
799 2006-09-15  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
800
801         Speed up by a factor of 1.13.
802         * gnulib-tool (func_import): Rewrite all old_files at once; likewise
803         for new_files, and the input to func_add_or_update.
804
805 2006-09-15  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
806
807         * gnulib-tool (func_all_modules, func_modules_to_filelist, func_import,
808         func_create_testdir, ...): Change 'sort | uniq' to 'sort -u'.
809
810 2006-09-15  Paul Eggert  <eggert@cs.ucla.edu>
811
812         * modules/mkancesdirs (Depends-on): Add fcntl.
813         * modules/savewd: New file.
814         * MODULES.html.sh (File system functions): Add savewd.
815
816         * modules/configmake (Makefile.am): Add support for the
817         Automake-supplied PKGLIBDIR, PKGINCLUDEDIR, PKGDATADIR.
818
819 2006-09-15  Paul Eggert  <eggert@cs.ucla.edu>
820
821         * m4/savewd.m4: New file.
822
823 2006-09-15  Paul Eggert  <eggert@cs.ucla.edu>
824
825         * lib/dirchownmod.c: Don't include fcntl.h; no longer needed.
826         (dirchownmod): New arg FD.  All callers changed.
827         Use FD rather than opening the directory ourself, as opening is
828         now the caller's responsibility.
829         * lib/dirchownmod.h: Likewise.
830         * lib/mkancesdirs.c: Include <sys/types.h>, for portability to older
831         hosts that require <sys/types.h> before <sys/stat.h>.  Include
832         fcntl.h, savewd.h, and unistd.h, not dirname.h and stat-macros.h.
833         (test_dir): Remove.
834         (mkancesdirs): Return length of prefix of FILE that has already
835         been made, or -2 if there is a child doing the work.  Redo
836         algorithm so that it is O(N) rather than O(N**2).  Optimize away
837         ".", and treat ".." specially since it might stray back into
838         already-created areas.  Use a subprocess if necessary.  New arg
839         WD; all users changed.  MAKE_DIR function should now return 1
840         if it creates a directory that is not readable.  Return -2 if
841         a child process is spun off.
842         * lib/mkancesdirs.h: Include <stddef.h>, for ptrdiff_t.
843         Adjust signature to match code.
844         * lib/mkdir-p.c: Include dirname.h, for IS_ABSOLUTE_FILE_NAME.
845         (make_dir_parents): Use a subprocess if necessary.  New arg WD;
846         all users changed.
847         * lib/savewd.c, savewd.h: New files.
848
849 2006-09-15  Jim Meyering  <jim@meyering.net>
850
851         * modules/rename-dest-slash: New module.
852         * MODULES.html.sh (posix_compat): Add it here.
853
854         * modules/rename: Reflect vb_FUNC_RENAME -> gl_FUNC_RENAME change.
855
856 2006-09-15  Jim Meyering  <jim@meyering.net>
857
858         * m4/rename-dest-slash.m4 (gl_FUNC_RENAME_TRAILING_DEST_SLASH): New
859         file.
860
861         * m4/rename.m4 (gl_FUNC_RENAME): Rename from vb_FUNC_RENAME.
862
863 2006-09-15  Jim Meyering  <jim@meyering.net>
864
865         * lib/rename-dest-slash.c (has_trailing_slash): Use
866         FILE_SYSTEM_PREFIX_LEN, for non-POSIX systems.
867         (rpl_rename_dest_slash): Perform the cheaper trailing slash
868         test before testing whether SRC is a directory.
869         Suggestions from Bruno Haible.
870
871         Avoid a warning about an unused variable.
872         * lib/regex_internal.c (re_dfa_add_node): Move declaration of "type"
873         into the #ifdef block where it's used.
874
875         * lib/rename-dest-slash.c: New file.
876
877 2006-09-14  Bruno Haible  <bruno@clisp.org>
878
879         * lib/allocsa.c: Include <config.h> unconditionally.
880         * lib/asnprintf.c: Likewise.
881         * lib/asprintf.c: Likewise.
882         * lib/c-strcasecmp.c: Likewise.
883         * lib/c-strcasestr.c: Likewise.
884         * lib/c-strncasecmp.c: Likewise.
885         * lib/c-strstr.c: Likewise.
886         * lib/classpath.c: Likewise.
887         * lib/clean-temp.c: Likewise.
888         * lib/concatpath.c: Likewise.
889         * lib/copy-file.c: Likewise.
890         * lib/csharpcomp.c: Likewise.
891         * lib/csharpexec.c: Likewise.
892         * lib/execute.c: Likewise.
893         * lib/fatal-signal.c: Likewise.
894         * lib/findprog.c: Likewise.
895         * lib/fwriteerror.c: Likewise.
896         * lib/gl_array_list.c: Likewise.
897         * lib/gl_array_oset.c: Likewise.
898         * lib/gl_avltree_list.c: Likewise.
899         * lib/gl_avltree_oset.c: Likewise.
900         * lib/gl_avltreehash_list.c: Likewise.
901         * lib/gl_carray_list.c: Likewise.
902         * lib/gl_linked_list.c: Likewise.
903         * lib/gl_linkedhash_list.c: Likewise.
904         * lib/gl_list.c: Likewise.
905         * lib/gl_oset.c: Likewise.
906         * lib/gl_rbtree_list.c: Likewise.
907         * lib/gl_rbtree_oset.c: Likewise.
908         * lib/gl_rbtreehash_list.c: Likewise.
909         * lib/imaxabs.c: Likewise.
910         * lib/imaxdiv.c: Likewise.
911         * lib/javacomp.c: Likewise.
912         * lib/javaexec.c: Likewise.
913         * lib/javaversion.c: Likewise.
914         * lib/linebreak.c: Likewise.
915         * lib/localcharset.c: Likewise.
916         * lib/lock.c: Likewise.
917         * lib/mbchar.c: Likewise.
918         * lib/mbswidth.c: Likewise.
919         * lib/mkdtemp.c: Likewise.
920         * lib/pipe.c: Likewise.
921         * lib/printf-args.c: Likewise.
922         * lib/printf-parse.c: Likewise.
923         * lib/progname.c: Likewise.
924         * lib/progreloc.c: Likewise.
925         * lib/readlink.c: Likewise.
926         * lib/sh-quote.c: Likewise.
927         * lib/stpcpy.c: Likewise.
928         * lib/stpncpy.c: Likewise.
929         * lib/strcasecmp.c: Likewise.
930         * lib/strcasestr.c: Likewise.
931         * lib/strcspn.c: Likewise.
932         * lib/striconv.c: Likewise.
933         * lib/strncasecmp.c: Likewise.
934         * lib/strnlen1.c: Likewise.
935         * lib/strstr.c: Likewise.
936         * lib/strtok_r.c: Likewise.
937         * lib/tls.c: Likewise.
938         * lib/tmpdir.c: Likewise.
939         * lib/unicodeio.c: Likewise.
940         * lib/unsetenv.c: Likewise.
941         * lib/vasnprintf.c: Likewise.
942         * lib/vasprintf.c: Likewise.
943         * lib/wait-process.c: Likewise.
944         * lib/xallocsa.c: Likewise.
945         * lib/xsetenv.c: Likewise.
946         * lib/xstriconv.c: Likewise.
947
948 2006-09-13  Simon Josefsson  <jas@extundo.com>
949
950         * m4/getdate.m4: Don't AC_LIBOBJ([getdate]), automake takes care of
951         that internally, suggested by Ralf Wildenhues
952         <Ralf.Wildenhues@gmx.de>.
953
954 2006-09-13  Simon Josefsson  <jas@extundo.com>
955
956         * gnulib-tool (func_emit_lib_Makefile_am): Use $(LIBOBJS), not
957         @LIBOBJS@.
958         Suggested by Ralf Wildenhues <Ralf.Wildenhues@gmx.de>.
959
960 2006-09-13  Paul Eggert  <eggert@cs.ucla.edu>
961
962         * lib/_fpending.c: Include <config.h> unconditionally, since we no
963         longer worry about uses that don't define HAVE_CONFIG_H.
964         * lib/acl.c, lib/alloca.c, lib/argmatch.c, lib/atexit.c:
965         * lib/backupfile.c, lib/basename.c, lib/c-stack.c, lib/c-strtod.c:
966         * lib/calloc.c,lib/ canon-host.c, lib/canonicalize.c, lib/chdir-long.c:
967         * lib/chdir-safer.c, lib/chown.c, lib/cloexec.c, lib/close-stream.c:
968         * lib/closeout.c, lib/creat-safer.c, lib/cycle-check.c, lib/diacrit.c:
969         * lib/dirchownmod.c, lib/dirfd.c, lib/dirname.c, lib/dup-safer.c:
970         * lib/dup2.c, lib/error.c, lib/euidaccess.c, lib/exclude.c:
971         * lib/exitfail.c, lib/fchmodat.c, lib/fchown-stub.c, lib/fd-safer.c:
972         * lib/file-type.c, lib/fileblocks.c, lib/filemode.c, lib/filenamecat.c:
973         * lib/fnmatch.c, lib/fopen-safer.c, lib/fprintftime.c, lib/free.c:
974         * lib/fsusage.c, lib/ftruncate.c, lib/fts-cycle.c, lib/fts.c:
975         * lib/full-write.c, lib/gai_strerror.c, lib/getcwd.c, lib/getdate.y:
976         * lib/getdomainname.c, lib/getgroups.c, lib/gethostname.c:
977         * lib/gethrxtime.c, lib/getloadavg.c, lib/getlogin_r.c:
978         * lib/getndelim2.c, lib/getnline.c, lib/getopt.c, lib/getopt1.c:
979         * lib/getpass.c, lib/gettime.c, lib/gettimeofday.c, lib/getugroups.c:
980         * lib/getusershell.c, lib/glob.c, lib/group-member.c:
981         * lib/hard-locale.c, lib/hash-pjw.c, lib/hash.c, lib/human.c:
982         * lib/idcache.c, lib/inet_ntop.c, lib/inet_pton.c, lib/inttostr.c:
983         * lib/isdir.c, lib/lchown.c, lib/linebuffer.c, lib/long-options.c:
984         * lib/lstat.c, lib/malloc.c, lib/md5.c, lib/memcasecmp.c, lib/memchr.c:
985         * lib/memcmp.c, lib/memcoll.c, lib/memcpy.c, lib/memmove.c:
986         * lib/memrchr.c, lib/mkancesdirs.c, lib/mkdir-p.c, lib/mkdir.c:
987         * lib/mkdirat.c, lib/mkstemp-safer.c, lib/mkstemp.c, lib/modechange.c:
988         * lib/mountlist.c, lib/nanosleep.c, lib/obstack.c, lib/open-safer.c:
989         * lib/openat-die.c, lib/openat.c, lib/pagealign_alloc.c, lib/physmem.c:
990         * lib/pipe-safer.c, lib/posixtm.c, lib/posixver.c, lib/putenv.c:
991         * lib/quote.c, lib/quotearg.c, lib/raise.c, lib/readtokens.c:
992         * lib/readtokens0.c, lib/readutmp.c, lib/realloc.c, lib/regex.c:
993         * lib/rename.c, lib/rmdir.c, lib/rpmatch.c, lib/safe-read.c:
994         * lib/same.c, lib/save-cwd.c, lib/savedir.c, lib/setenv.c:
995         * lib/settime.c, lib/sha1.c, lib/sig2str.c, lib/snprintf.c:
996         * lib/strdup.c, lib/strerror.c, lib/strftime.c, lib/stripslash.c:
997         * lib/strndup.c, lib/strnlen.c, lib/strpbrk.c, lib/strtod.c:
998         * lib/strtoimax.c, lib/strtol.c, lib/strverscmp.c, lib/tempname.c:
999         * lib/time_r.c, lib/timegm.c, lib/tmpfile-safer.c, lib/unlinkdir.c:
1000         * lib/userspec.c, lib/utime.c, lib/utimecmp.c, lib/utimens.c:
1001         * lib/version-etc-fsf.c, lib/version-etc.c, lib/xalloc-die.c:
1002         * lib/xgetcwd.c, lib/xgethostname.c, lib/xmalloc.c, lib/xmemcoll.c:
1003         * lib/xnanosleep.c, lib/xreadlink.c, lib/xstrtod.c, lib/xstrtoimax.c:
1004         * lib/xstrtol.c, lib/xstrtoumax.c, lib/yesno.c:
1005         Likewise.
1006
1007 2006-09-13  Eric Blake  <ebb9@byu.net>
1008
1009         * lib/getopt.c: Fix typo in last commit.
1010
1011 2006-09-12  Sergey Poznyakoff  <gray@gnu.org.ua>
1012
1013         * lib/argp-help.c (argp_doc): Make sure NULL is not passed to
1014         dgettext.
1015
1016 2006-09-12  Jim Meyering  <jim@meyering.net>
1017
1018         * lib/nanosleep.c: Include <sys/types.h> before sys/select.h, to avoid
1019         compilation failure (due to use of pid_t in latter) on NetBSD 1.6.
1020         Reported by Nelson H. F. Beebe.
1021
1022 2006-09-10  Sergey Poznyakoff  <gray@gnu.org.ua>
1023
1024         * lib/argp-parse.c (__argp_parse) [!_LIBC]: Make sure
1025         program_invocation_name and program_invocation_short_name are
1026         initialized.
1027         * lib/argp-namefrob.h: Move declarations of program_invocation_name
1028         and program_invocation_short_name to argp.h, so they are visible
1029         to user programs.
1030         * lib/argp.h: Likewise
1031
1032 2006-09-10  Bruno Haible  <bruno@clisp.org>
1033
1034         * modules/mkdtemp (Files): Remove m4/ulonglong.m4, m4/stdint_h.m4,
1035         m4/inttypes_h.m4, m4/uintmax_t.m4.
1036
1037 2006-09-10  Bruno Haible  <bruno@clisp.org>
1038
1039         * m4/mkdtemp.m4 (gl_PREREQ_MKDTEMP): Don't require
1040         gl_AC_TYPE_UINTMAX_T.
1041
1042 2006-09-10  Bruno Haible  <bruno@clisp.org>
1043
1044         * lib/mkdtemp.c: Include <stdint.h> always. Don't include <inttypes.h>.
1045
1046 2006-09-09  Sergey Poznyakoff  <gray@gnu.org.ua>
1047
1048         * lib/argp.h (struct argp): Document the N_("..") "\v" N_("..")
1049         convention.  Text proposed by Bruno Haible.
1050         (struct argp_option): Document the use of N_() wrappers.
1051
1052         * lib/argp-help.c (argp_doc): Split the untranslated doc string on
1053         '\v', and translate the two parts separately, instead of feeding
1054         the whole string to gettext.  This allows to exclude
1055         '\v' from the strings visible to the translator by writing doc
1056         strings as N_("..") "\v" N_("..").
1057
1058 2006-09-09  Paul Eggert  <eggert@cs.ucla.edu>
1059
1060         * config/srclist.txt: Undo latest change; the bug was fixed.
1061
1062 2006-09-09  Bruno Haible  <bruno@clisp.org>
1063
1064         * gnulib-tool (func_emit_lib_Makefile_am): Eliminate lib_LDFLAGS
1065         assignments if building a library without libtool.
1066         (func_emit_tests_Makefile_am): Likewise. Handle lib_* variables as
1067         in func_emit_lib_Makefile_am.
1068         (func_import): When building a static library libfoo.a, arrange to
1069         define variables LIBFOO_LIBDEPS and LIBFOO_LTLIBDEPS.
1070         (func_create_testdir): Likewise.
1071         * modules/gc (configure.ac, Makefile.am): If building statically,
1072         augment gl_libdeps and gl_ltlibdeps instead of lib_LDFLAGS.
1073         * modules/iconvme (configure.ac, Makefile.am): Likewise.
1074         * modules/striconv (configure.ac, Makefile.am): Likewise.
1075         Based on a suggestion by Ralf Wildenhues.
1076
1077 2006-09-08  Paul Eggert  <eggert@cs.ucla.edu>
1078
1079         * m4/mktime.m4 (AC_FUNC_MKTIME): Sync from Autoconf.
1080         Check for unistd.h too, since Autoconf doesn't assume POSIX.
1081         Also:
1082
1083         2006-09-08  Paul Eggert  <eggert@cs.ucla.edu>
1084         Add year_2050_test to catch glibc bug 2821
1085         <http://sourceware.org/bugzilla/show_bug.cgi?id=2821>.
1086
1087         2006-08-15  Paul Eggert  <eggert@cs.ucla.edu>
1088         Prefer #ifdef to #if.
1089
1090         2006-04-02  Paul Eggert  <eggert@cs.ucla.edu>
1091         Return from 'main' instead of calling 'exit'.
1092
1093 2006-09-08  Paul Eggert  <eggert@cs.ucla.edu>
1094
1095         * lib/mktime.c (guess_time_tm): Fix bug where mktime
1096         returned the maximum time_t value rather than (time_t) -1.
1097         Problem originally reported by William Bardwell
1098         <http://sourceware.org/bugzilla/show_bug.cgi?id=2821>.
1099
1100         * lib/isapipe.h (HAVE_FIFO_PIPES) [!defined HAVE_FIFO_PIPES]:
1101         Moved to here ...
1102         * lib/isapipe.c (HAVE_FIFO_PIPES) [!defined HAVE_FIFO_PIPES]:
1103         ... from here.
1104
1105 2006-09-08  Paul Eggert  <eggert@cs.ucla.edu>
1106
1107         * config/srclist.txt: Temporarily comment out mktime.c until glibc bug
1108         2821 is fixed.
1109
1110 2006-09-08  Jim Meyering  <jim@meyering.net>
1111
1112         Don't make generated files read-only.  That would bother too many
1113         people.  However, do retain the ability to work when targets are
1114         read-only: remove the destination and temporary files before writing
1115         them (when generated via sed or echo), or by using the -f option for
1116         both cp and mv commands.  Suggestion to use -f from Paul Eggert.
1117         * modules/alloca-opt, modules/argz, modules/arpa_inet:
1118         * modules/byteswap, modules/configmake, modules/fcntl:
1119         * modules/fnmatch, modules/getopt, modules/glob, modules/inttypes:
1120         * modules/localcharset, modules/netinet_in, modules/poll:
1121         * modules/stdbool, modules/stdint, modules/sys_select:
1122         * modules/sys_socket, modules/sys_stat, modules/sysexits:
1123
1124 2006-09-08  Jim Meyering  <jim@meyering.net>
1125
1126         Avoid new build failure on FreeBSD 6.0.
1127         * m4/ls-mntd-fs.m4 (gl_LIST_MOUNTED_FILE_SYSTEMS): Include
1128         <sys/param.h> when testing whether getmntinfo uses statvfs.  Patch by
1129         Pavel Tsekov, in <http://savannah.gnu.org/bugs/?17643>.
1130
1131 2006-09-07  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
1132
1133         * m4/fsusage.m4 (gl_FILE_SYSTEM_USAGE): Don't use plain echo.
1134
1135 2006-09-07  Jim Meyering  <jim@meyering.net>
1136
1137         Fix global typo in last change: use chmod u-w, not chmod u-x.
1138         Spotted by Paul Eggert and Bruce Korb.
1139         * modules/alloca-opt, modules/argz, modules/arpa_inet:
1140         * modules/byteswap, modules/configmake, modules/fcntl:
1141         * modules/fnmatch, modules/getopt, modules/glob, modules/inttypes:
1142         * modules/localcharset, modules/netinet_in, modules/poll:
1143         * modules/stdbool, modules/stdint, modules/sys_select:
1144         * modules/sys_socket, modules/sys_stat, modules/sysexits:
1145
1146 2006-09-06  Jim Meyering  <jim@meyering.net>
1147
1148         Make generated files be read-only.
1149         * modules/alloca-opt (Makefile.am): Work also when $@ is read-only.
1150         Ensure that each generated file is now read-only.
1151         * modules/argz: Likewise.
1152         * modules/arpa_inet: Likewise.
1153         * modules/byteswap: Likewise.
1154         * modules/configmake: Likewise.
1155         * modules/fcntl: Likewise.
1156         * modules/fnmatch: Likewise.
1157         * modules/getopt: Likewise.
1158         * modules/glob: Likewise.
1159         * modules/inttypes: Likewise.
1160         * modules/netinet_in: Likewise.
1161         * modules/poll: Likewise.
1162         * modules/stdbool: Likewise.
1163         * modules/stdint: Likewise.
1164         * modules/sys_select: Likewise.
1165         * modules/sys_socket: Likewise.
1166         * modules/sys_stat: Likewise.
1167         * modules/sysexits: Likewise.
1168         * modules/localcharset: Same as above, but continue using temporary
1169         file named "t-$@" (why different?) rather than the "$@-t" used
1170         everywhere else.
1171
1172         * modules/sysexits (Makefile.am): Replace literal occurrences
1173         of "sysexit.h" more readable, and more consistent, "$@".
1174
1175 2006-09-06  Bruno Haible  <bruno@clisp.org>
1176
1177         * modules/striconv: New file.
1178         * modules/xstriconv: New file.
1179         * MODULES.html.sh (Internationalization functions): Add striconv,
1180         xstriconv.
1181
1182 2006-09-06  Bruno Haible  <bruno@clisp.org>
1183
1184         * modules/gc (Makefile.am): Augment lib_LDFLAGS, not lib_LIBADD.
1185         * modules/iconvme (Makefile.am): Likewise. Also handle the case of
1186         not using libtool correctly.
1187
1188 2006-09-06  Bruno Haible  <bruno@clisp.org>
1189
1190         * lib/striconv.h: New file.
1191         * lib/striconv.c: New file, merging iconvme.c with GNU gettext's
1192         iconvstring.c.
1193         * lib/xstriconv.h: New file.
1194         * lib/xstriconv.c: New file.
1195
1196 2006-09-06  Bruno Haible  <bruno@clisp.org>
1197
1198         * gnulib-tool (func_emit_lib_Makefile_am): Initialize also
1199         lib_..._LDFLAGS.
1200
1201 2006-09-05  Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
1202
1203         * lib/argz_.h: Sync from Libtool.
1204
1205         2006-09-04  George Bosilca <bosilca@cs.utk.edu>
1206                 and Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
1207
1208         * lib/libltdl/argz_.h: It's __cplusplus, not _cplusplus.
1209
1210 2006-09-05  Davide Angelocola <davide.angelocola@tiscali.it>
1211
1212         * modules/trim: New file.
1213
1214 2006-09-05  Davide Angelocola <davide.angelocola@tiscali.it>
1215
1216         * lib/trim.h: New file.
1217         * lib/trim.c: New file.
1218
1219 2006-09-05  Bruno Haible  <bruno@clisp.org>
1220
1221         * MODULES.html.sh (String handling): Add trim.
1222
1223 2006-09-04  Karl Berry  <karl@gnu.org>
1224
1225         * config/srclist.txt (signed.m4, gettext.m4): changes not propagated
1226         until next release.
1227
1228 2006-09-03  Bruno Haible  <bruno@clisp.org>
1229
1230         * m4/lib-link.m4 (AC_LIB_LINKFLAGS_BODY): Locate mingw shared libraries
1231         correctly.
1232
1233 2006-09-01  Paul Eggert  <eggert@cs.ucla.edu>
1234
1235         * m4/getloadavg.m4 (gl_GETLOADAVG): Use CONFIGURING_GETLOADAVG,
1236         not gl_GETLOADAVG.  Omit unneeded semicolons.
1237         Problems reported by Ralf Wildenhues in
1238         <http://lists.gnu.org/archive/html/bug-gnulib/2006-09/msg00000.html>.
1239         (gl_PREREQ_GETLOADAVG): Use AC_DEFUN, not m4_define.  Put
1240         at the end, which is the usual gnulib style.
1241
1242         * m4/fstypename.m4 (gl_FSTYPENAME): Use AC_CHECK_MEMBERS instead
1243         of doing all the work ourselves.
1244         * m4/fsusage.m4 (gl_PREREQ_FSUSAGE_EXTRA): Don't check for
1245         sys/statvfs.h since the code doesn't use HAVE_SYS_STATVFS_H.
1246
1247 2006-09-01  Paul Eggert  <eggert@cs.ucla.edu>
1248
1249         * lib/getloadavg.c: Use CONFIGURING_GETLOADAVG, not gl_GETLOADAVG.
1250         Problem reported by Ralf Wildenhues in
1251         <http://lists.gnu.org/archive/html/bug-gnulib/2006-09/msg00000.html>.
1252
1253         * lib/mountlist.c: All uses of HAVE_F_FSTYPENAME_IN_STATFS replaced by
1254         HAVE_STRUCT_STATFS_F_FSTYPENAME.
1255
1256 2006-09-01  Paul Eggert  <eggert@cs.ucla.edu>
1257
1258         * gnulib-tool (func_emit_lib_Makefile_am): Fix typos in
1259         yesterday's patch by changing test -n to test -z.
1260
1261 2006-08-31  Paul Eggert  <eggert@cs.ucla.edu>
1262
1263         * modules/getloadavg (Files): Add m4/getloadavg.m4.
1264         (configure.ac): AC_FUNC_GETLOADAVG -> gl_GETLOADAVG, as
1265         the former is now obsolescent.
1266
1267         * modules/chdir-long (Depends-on): Add fcntl.
1268
1269 2006-08-31  Paul Eggert  <eggert@cs.ucla.edu>
1270
1271         * m4/fnmatch.m4: Add comment that Autoconf AC_FUNC_FNMATCH is
1272         obsolescent, and programs should use gnulib instead.
1273         * m4/getloadavg.m4: New file, with contents taken from Autoconf
1274         but with prefixes changed.
1275
1276 2006-08-31  Paul Eggert  <eggert@cs.ucla.edu>
1277
1278         * lib/getloadavg.c [defined gl_GETLOADAVG]: Don't include config.h
1279         or stdbool.h, because they might not exist while configuring.
1280
1281         * lib/chdir-long.c: Include <fcntl.h>, for O_DIRECTORY.
1282         Don't include unistd.h or limits.h; not needed, since chdir-long.h
1283         does that for us.
1284         (O_DIRECTORY): Remove.
1285
1286 2006-08-31  Eric Blake  <ebb9@byu.net>
1287
1288         * gnulib-tool: Don't let emacs change spaces to TAB.
1289
1290 2006-08-31  Bruno Haible  <bruno@clisp.org>
1291
1292         * gnulib-tool: When calling func_import more than once, do it in a
1293         subshell.
1294         Reported by Eric Blake <ebb9@byu.net>.
1295
1296 2006-08-31  Bruno Haible  <bruno@clisp.org>
1297
1298         * gnulib-tool (nl): Remove variable.
1299         (sed_transform_lib_file): Use more robust test for config-h module.
1300         (func_import): Fix typo in 2006-08-25 patch.
1301
1302 2006-08-31  Bruno Haible  <bruno@clisp.org>
1303
1304         * gnulib-tool (func_emit_lib_Makefile_am): When --makefile-name was
1305         specified, augment Makefile.am variables instead of assigning them.
1306
1307 2006-08-30  Paul Eggert  <eggert@cs.ucla.edu>
1308
1309         Work around a bug in both the Linux and SunOS 64-bit kernels:
1310         nanosleep mishandles sleeps for longer than 2**31 seconds.
1311         Problem reported by Frank v Waveren in
1312         <http://lists.gnu.org/archive/html/bug-coreutils/2006-08/msg00298.html>.
1313         * m4/nanosleep.m4 (gl_FUNC_NANOSLEEP): Require gl_CLOCK_TIME.
1314         Check for nanosleep bug.
1315         (LIB_NANOSLEEP): Append clock_gettime library if needed.
1316
1317 2006-08-30  Paul Eggert  <eggert@cs.ucla.edu>
1318
1319         Work around a bug in both the Linux and SunOS 64-bit kernels:
1320         nanosleep mishandles sleeps for longer than 2**31 seconds.
1321         Problem reported by Frank v Waveren in
1322         <http://lists.gnu.org/archive/html/bug-coreutils/2006-08/msg00298.html>.
1323         * lib/nanosleep.c (BILLION): New constant.
1324         (getnow) [HAVE_BUG_BIG_NANOSLEEP]: New functions.
1325         (rpl_nanosleep) [HAVE_BUG_BIG_NANOSLEEP]: Completely new
1326         implementation.
1327
1328 2006-08-30  Paul Eggert  <eggert@cs.ucla.edu>
1329
1330         * modules/nanosleep (Depends-on): Add gettime.
1331
1332 2006-08-30  Paul Eggert  <eggert@cs.ucla.edu>
1333         and Simon Josefsson  <jas@extundo.com>
1334         and Oskar Liljeblad  <oskar@osk.mine.nu>
1335
1336         * MODULES.html.sh (Support for building documentation): Add gpl, lgpl.
1337         * gnulib-tool (func_import): New license type 'unmodifiable license
1338         text'.
1339         * modules/fdl: Use it.  Longer description.
1340         * module/gpl, module/lgpl: New files.
1341
1342 2006-08-30  Jim Meyering  <jim@meyering.net>
1343
1344         * lib/isapipe.c (isapipe): Rename local s/fd/fd_pair/ to avoid
1345         shadowing the parameter.
1346
1347 2006-08-29  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
1348
1349         Sync from Libtool:
1350
1351         2006-08-28  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
1352
1353         * lib/libltdl/argz.c: Use `#ifdef HAVE_CONFIG_H', to facilitate code
1354         sharing with gnulib.  Report by Eric Blake.
1355
1356 2006-08-29  Paul Eggert  <eggert@cs.ucla.edu>
1357
1358         * modules/isapipe: New file.
1359         * MODULES.html.sh (File descriptor based Input/Output): Add isapipe.
1360
1361 2006-08-29  Paul Eggert  <eggert@cs.ucla.edu>
1362
1363         * modules/configmake (Makefile.am): Add a comment, and omit
1364         the CONFIGMAKE_ prefix from generated macro names.  Suggested
1365         by Bruno Haible.
1366
1367 2006-08-29  Paul Eggert  <eggert@cs.ucla.edu>
1368
1369         * m4/isapipe.m4: New file.
1370
1371 2006-08-29  Paul Eggert  <eggert@cs.ucla.edu>
1372
1373         * lib/isapipe.c, isapipe.h: New files.
1374
1375 2006-08-29  Jim Meyering  <jim@meyering.net>
1376
1377         * modules/configmake (Makefile.am): Make configmake.h depend on
1378         Makefile.  Otherwise, a stale configmake.h could hang around.
1379
1380 2006-08-29  Eric Blake  <ebb9@byu.net>
1381
1382         * lib/error.c (error_at_line, print_errno_message): Match libc, after
1383         resolution of upstream bug 3044.
1384
1385 2006-08-29  Bruno Haible  <bruno@clisp.org>
1386
1387         * modules/localcharset (Depends-on): Add configmake.
1388         (Makefile.am): Remove setting of LIBDIR through DEFS.
1389
1390 2006-08-29  Bruno Haible  <bruno@clisp.org>
1391
1392         * lib/localcharset.c: Include configmake.h in order to get LIBDIR
1393         defined.
1394
1395 2006-08-28  Paul Eggert  <eggert@cs.ucla.edu>
1396
1397         * modules/fcntl: New file.
1398         * modules/chdir-safer (Depends-on): Add fcntl.
1399         * modules/fts: Likewise.
1400         * modules/mkdir-p: Likewise.
1401
1402         * modules/stdint (Makefile.am): Do not substitute ABSOLUTE_INTTYPES_H.
1403         This undoes the most recent change, since we're now addressing the
1404         problem in a different way.
1405
1406         * gnulib-tool (emit_lib_Makefile_am): Don't put $makefile_name
1407         into output, since the output might be called Makefile.am even
1408         if $makefile_name is something different.
1409         (func_import): Use $makefile_am rather than
1410         ${makefile_name-Makefile.am}, to fix a bug where makefile_name was
1411         empty.
1412
1413         * modules/inttypes (Files): Add m4/inttypes-h.m4.
1414
1415 2006-08-28  Paul Eggert  <eggert@cs.ucla.edu>
1416
1417         * m4/inttypes.m4 (gl_INTTYPES_H): Move ABSOLUTE_INTTYPES_H code here...
1418         * m4/stdint.m4 (gl_STDINT_H): ... from here.  This undoes the most
1419         recent change to stdint.m4, since we're now addressing the problem in a
1420         different way.
1421
1422 2006-08-28  Paul Eggert  <eggert@cs.ucla.edu>
1423
1424         * m4/fcntl_h.m4: New file.
1425
1426 2006-08-28  Paul Eggert  <eggert@cs.ucla.edu>
1427
1428         * lib/fcntl_.h: New file.
1429         * lib/chdir-safer.c (O_DIRECTORY, O_NOFOLLOW): Remove, now that we have
1430         the fcntl module.
1431         * lib/dirchownmod.c: Likewise.
1432         * lib/fts.c: Likewise.
1433
1434         * lib/inttypes_.h [defined _GL_JUST_INCLUDE_ABSOLUTE_INTTYPES_H]:
1435         Include @ABSOLUTE_INTTYPES_H@ if available, but do nothing else.
1436         * lib/stdint_.h (_GL_JUST_INCLUDE_ABSOLUTE_INTTYPES_H): Define
1437         just before including <inttypes.h>, to avoid circular inclusion.
1438
1439 2006-08-28  Jim Meyering  <jim@meyering.net>
1440
1441         * doc/visibility.texi: Actually read and correct the grammar of the
1442         sentence affected by yesterday's change.
1443
1444 2006-08-28  Eric Blake  <ebb9@byu.net>
1445
1446         * modules/inttypes (Makefile.am): Fix sed error when inttypes.h
1447         needs wrapper.
1448
1449 2006-08-28  Eric Blake  <ebb9@byu.net>
1450
1451         * m4/inttypes.m4 (gl_INTTYPES_H): Fix missing #endif.
1452
1453 2006-08-28  Eric Blake  <ebb9@byu.net>
1454
1455         * m4/codeset.m4 (AM_LANGINFO_CODESET): Avoid compiler warning.
1456
1457 2006-08-28  Bruno Haible  <bruno@clisp.org>
1458
1459         * modules/c-strstr: New file, from GNU gettext.
1460         * MODULES.html.sh (String handling): Add c-strstr.
1461
1462 2006-08-28  Bruno Haible  <bruno@clisp.org>
1463
1464         * m4/inttypes.m4 (gl_INTTYPES_H): Don't test for the existence of SCNX*
1465         macros.
1466         Reported by Eric Blake.
1467
1468 2006-08-28  Bruno Haible  <bruno@clisp.org>
1469
1470         * lib/vasnprintf.c (EOVERFLOW): Remove definition.
1471         (VASNPRINTF): Return a string of length > INT_MAX without failing.
1472         * lib/vasprintf.c: Include errno.h, limits.h.
1473         (EOVERFLOW): New fallback definition.
1474         (vasprintf): Test here whether the string length is > INT_MAX.
1475         * lib/vsnprintf.c: Include errno.h, limits.h.
1476         (EOVERFLOW): New fallback definition.
1477         (vsnprintf): Fix bug when generated string was too long for the buffer.
1478         Test here whether the string length is > INT_MAX.
1479
1480 2006-08-28  Bruno Haible  <bruno@clisp.org>
1481
1482         * lib/inttypes_.h (SCNX*): Remove definitions.
1483         Reported by Eric Blake.
1484
1485 2006-08-28  Bruno Haible  <bruno@clisp.org>
1486
1487         * lib/c-strstr.h: New file, from GNU gettext.
1488         * lib/c-strstr.c: New file, from GNU gettext.
1489
1490 2006-08-28  Bruno Haible  <bruno@clisp.org>
1491
1492         * gnulib-tool: Reorder some statements.
1493
1494 2006-08-28  Bruno Haible  <bruno@clisp.org>
1495
1496         * gnulib-tool: New option --makefile-name.
1497         (func_emit_lib_Makefile_am, func_emit_tests_Makefile_am): Use
1498         $makefile_name.
1499         (func_import): Write $makefile_name to the cache file, and read it from
1500         there unless explicitly specified. Use $makefile_name as file name
1501         instead of Makefile.am. Adjust the recommendations accordingly.
1502
1503 2006-08-28  Bruno Haible  <bruno@clisp.org>
1504
1505         * gnulib-tool (func_verify_module): Check against misapplying patch.
1506
1507 2006-08-28  Bruno Haible  <bruno@clisp.org>
1508
1509         * gnulib-tool (func_relativize, func_relconcat): New functions.
1510         Give an error if --local-dir is given with --update.
1511         Remove trailing slashes from $local_gnulib_dir.
1512         (func_import): Store the relativized $local_gnulib_dir in
1513         gnulib-cache.m4, and read it from there if not specified explicitly.
1514
1515 2006-08-28  Bruno Haible  <bruno@clisp.org>
1516
1517         * gnulib-tool (func_get_tests_module): Don't assume that $gnulib_dir
1518         is the current directory. Respect also $local_gnulib_dir.
1519
1520 2006-08-28  Bruno Haible  <bruno@clisp.org>
1521             Simon Josefsson  <jas@extundo.com>
1522
1523         BeOS portability.
1524         * lib/getaddrinfo.c (PF_INET, PF_UNSPEC): New macros.
1525
1526 2006-08-27  Jim Meyering  <jim@meyering.net>
1527
1528         * doc/visibility.texi: Remove duplicate word: "pointer".
1529
1530 2006-08-26  Bruno Haible  <bruno@clisp.org>
1531
1532         * modules/inttypes (Files): Add lib/inttypes_.h, remove lib/inttypes.h.
1533         Add m4/inttypes.m4, remove m4/_inttypes_h.m4 and m4/include_next.m4.
1534         (Makefile.am): Create inttypes.h from inttypes_.h.
1535         * modules/stdint (Makefile.am): Substitute also ABSOLUTE_INTTYPES_H.
1536
1537         * modules/imaxabs: New file.
1538
1539         * modules/imaxdiv: New file.
1540
1541 2006-08-26  Bruno Haible  <bruno@clisp.org>
1542
1543         * m4/inttypes.m4: New file.
1544         * m4/_inttypes_h.m4: Remove file.
1545         * m4/inttypes-pri.m4 (gt_INTTYPES_PRI): Also AC_SUBST
1546         PRI_MACROS_BROKEN.
1547         * m4/stdint.m4 (gl_STDINT_H): Define also ABSOLUTE_INTTYPES_H.
1548
1549         * m4/imaxabs.m4: New file.
1550
1551         * m4/imaxdiv.m4: New file.
1552
1553 2006-08-26  Bruno Haible  <bruno@clisp.org>
1554
1555         * lib/inttypes_.h: New file.
1556         * lib/inttypes.h: Remove file.
1557         * lib/stdint_.h: Include <inttypes.h> through its absolute filename.
1558
1559         * lib/imaxabs.c: New file.
1560
1561         * lib/imaxdiv.c: New file.
1562
1563 2006-08-25  Paul Eggert  <eggert@cs.ucla.edu>
1564
1565         New config-h module, so that "make" output needn't be cluttered
1566         by -DHAVE_CONFIG_H.
1567         * MODULES.html.sh (Support for building libraries and executables):
1568         Add config-h.
1569         * modules/config-h: New file.
1570         * gnulib-tool (nl, sed_transform_lib_file): New vars.
1571         (func_import): Turn "#ifdef HAVE_CONFIG_H" to "#if 1" if
1572         the config-h module is used.
1573
1574         New configmake module, so that "make" output needn't be cluttered
1575         by fluff like '-DLIBDIR=\"/usr/local/lib\"'.
1576         * MODULES.html.sh (Support for building libraries and executables):
1577         Add configmake.
1578         * modules/configmake: New file.
1579
1580 2006-08-25  Paul Eggert  <eggert@cs.ucla.edu>
1581
1582         * m4/config-h.m4: New file.
1583
1584 2006-08-24  Paul Eggert  <eggert@cs.ucla.edu>
1585
1586         * config/srclist.txt: Add elisp-comp.
1587
1588 2006-08-24  Paul Eggert  <eggert@cs.ucla.edu>
1589
1590         * MODULES.html.sh (Support for building libraries and executables):
1591         Add elisp-comp.
1592         * build-aux/elisp-comp: New file.
1593         * modules/elisp-comp: New file.
1594
1595 2006-08-24  Bruno Haible <bruno@clisp.org>
1596
1597         * gnulib-tool (func_create_testdir): Use non-default values of
1598         sourcebase and m4base.
1599
1600 2006-08-24  Bruno Haible <bruno@clisp.org>
1601
1602         * MODULES.html.sh (Compatibility checks for POSIX:2001 functions: Fix
1603         HTML structure.
1604
1605 2006-08-23  Paul Eggert  <eggert@cs.ucla.edu>
1606
1607         * modules/openat (Depends-on): Add lchown.
1608
1609 2006-08-23  Bruno Haible <bruno@clisp.org>
1610
1611         * gnulib-tool (func_import, func_create_testdir): Emit an invocation
1612         of gl_LOCK_EARLY instead of gl_LOCK.
1613
1614 2006-08-23  Bruno Haible  <bruno@clisp.org>
1615
1616         * m4/lock.m4 (gl_LOCK_BODY): Change the default value of gl_use_threads
1617         on OSF/1 to no.
1618         Reported by Stephen Cartwright <sgcartwr@ucalgary.ca>.
1619
1620 2006-08-23  Bruno Haible  <bruno@clisp.org>
1621
1622         * m4/fsusage.m4 (gl_FILE_SYSTEM_USAGE): Don't consider BeOS statvfs
1623         as unusable.
1624
1625         * m4/lock.m4 (gl_LOCK_EARLY): Renamed from gl_LOCK.
1626         (gl_LOCK_BODY): Remove gl_PREREQ_LOCK invocation.
1627         (gl_LOCK): New macro.
1628
1629 2006-08-22  Simon Josefsson  <jas@extundo.com>
1630
1631         * modules/gc-md5 (Makefile.am): Need to add md5.h, after changes
1632         to md5 module.
1633
1634 2006-08-22  Simon Josefsson  <jas@extundo.com>
1635
1636         * MODULES.html.sh: Add "Support for maintaining and release
1637         projects".
1638
1639         * build-aux/gnupload: New file, from coreutils.
1640
1641 2006-08-22  Paul Eggert  <eggert@cs.ucla.edu>
1642
1643         Avoid the need for AC_LIBSOURCES in m4 macros.
1644         * modules/arcfour (EXTRA_DIST): Add arcfour.h.
1645         * modules/arctwo (EXTRA_DIST): Add arctwo.h.
1646         * modules/check-version (EXTRA_DIST): Add check-version.h.
1647         * modules/crc (EXTRA_DIST): Add crc.h.
1648         * modules/des (EXTRA_DIST): Add des.h.
1649         * modules/gc (EXTRA_DIST): Add gc.h.
1650         * modules/getdelim (EXTRA_DIST): Add getdelim.h.
1651         * modules/getline (EXTRA_DIST): Add getline.h.
1652         * modules/getlogin_r (EXTRA_DIST): Add getlogin_r.h.
1653         * modules/hmac-md5 (EXTRA_DIST): Add hmac.h.
1654         * modules/hmac-sha1 (EXTRA_DIST): Add hmac.h.
1655         * modules/md2 (EXTRA_DIST): Add md2.h.
1656         * modules/md4 (EXTRA_DIST): Add md4.h.
1657         * modules/pagealign_alloc (EXTRA_DIST): Add pagealign_alloc.h.
1658         * modules/read-file (EXTRA_DIST): Add read-file.h.
1659         * modules/readline (EXTRA_DIST): Add readline.h.
1660         * modules/rijndael (EXTRA_DIST): Add rijndael-alg-fst.h,
1661         rijndael-api-fst.h.
1662
1663 2006-08-22  Paul Eggert  <eggert@cs.ucla.edu>
1664
1665         * m4/rijndael.m4 (gl_ARCFOUR):
1666         * m4/arctwo.m4 (gl_ARCTWO):
1667         * m4/check-version.m4 (gl_CHECK_VERSION):
1668         * m4/crc.m4 (gl_CRC):
1669         * m4/des.m4 (gl_DES):
1670         * m4/gc-pbkdf2-sha1.m4 (gl_GC_PBKDF2_SHA1):
1671         * m4/gc.m4 (gl_GC):
1672         * m4/getdelim.m4 (gl_FUNC_GETDELIM):
1673         * m4/getline.m4 (gl_FUNC_GETLINE):
1674         * m4/getlogin_r.m4 (gl_GETLOGIN_R_SUBSTITUTE):
1675         * m4/hmac-md5.m4 (gl_HMAC_MD5):
1676         * m4/hmac-sha1.m4 (gl_HMAC_SHA1):
1677         * m4/md2.m4 (gl_MD2):
1678         * m4/md4.m4 (gl_MD4):
1679         * m4/pagealign_alloc.m4 (gl_PAGEALIGN_ALLOC):
1680         * m4/read-file.m4 (gl_FUNC_READ_FILE):
1681         * m4/readline.m4 (gl_FUNC_READLINE):
1682         * m4/rijndael.m4 (gl_RIJNDAEL):
1683         Don't use AC_LIBSOURCES; instead, rely on the files in ../modules/
1684         to get the necessary .h files and whatnot.
1685
1686 2006-08-22  Paul Eggert  <eggert@cs.ucla.edu>
1687
1688         * config/srclist.txt: Remove gnupload, since coreutils now syncs from
1689         gnulib rather than the other way around.
1690         * config/srclistvars.sh (COREUTILS): Remove.
1691
1692 2006-08-22  Jim Meyering  <jim@meyering.net>
1693
1694         * modules/mkdir-p (Makefile.am): Fix typo: s/lib+SOURCES/lib_SOURCES/.
1695
1696         * modules/getpass-gnu (Makefile.am): Add getpass.h to EXTRA_DIST.
1697
1698 2006-08-22  Eric Blake  <ebb9@byu.net>
1699
1700         * modules/regexprops-generic: New file.
1701         * MODULES.html.sh (Support for building documentation): List it.
1702
1703 2006-08-22  Eric Blake  <ebb9@byu.net>
1704
1705         * m4/stdint_h.m4 (gl_AC_HEADER_STDINT_H): Avoid compiler warning.
1706         * m4/inttypes_h.m4 (gl_AC_HEADER_INTTYPES_H): Likewise.
1707         * m4/longlong.m4 (AC_TYPE_LONG_LONG_INT): Likewise.
1708         * m4/intmax_t.m4 (gt_AC_TYPE_INTMAX_T): Likewise.
1709
1710 2006-08-22  Bruno Haible <bruno@clisp.org>
1711
1712         * gnulib-tool (func_emit_lib_Makefile_am): Don't treat lib_LIBRARIES
1713         and lib_LTLIBRARIES like the other lib_* variables.
1714
1715 2006-08-22  Bruno Haible <bruno@clisp.org>
1716
1717         * build-aux/x-to-1.in: New file, from GNU gettext.
1718
1719 2006-08-22  Bruno Haible  <bruno@clisp.org>
1720
1721         * m4/readutmp.m4 (gl_READUTMP): Compile readutmp.c only if <utmp.h> or
1722         <utmpx.h> exists.
1723
1724 2006-08-22  Bruno Haible  <bruno@clisp.org>
1725
1726         * lib/readutmp.h: Skip most definitions if neither <utmp.h> nor
1727         <utmpx.h> exists.
1728
1729 2006-08-21  Paul Eggert  <eggert@cs.ucla.edu>
1730
1731         BeOS portability.
1732         * lib/dirchownmod.c (dirchownmod): Don't use fchmod if it doesn't
1733         exist.
1734         Problem reported by Bruno Haible.
1735
1736 2006-08-21  Paul Eggert  <eggert@cs.ucla.edu>
1737
1738         Avoid the need for AC_LIBSOURCES in m4 macros.
1739         * modules/acl (EXTRA_DIST): Add acl.h.
1740         * modules/argmatch (Files): Add m4/argmatch.m4.
1741         (configure.ac): Add gl_ARGMATCH.
1742         (EXTRA_DIST): Renamed from lib_SOURCES, for
1743         consistency with the other modules.  Remove argmatch.c.
1744         * modules/backupfile (EXTRA_DIST): Add backupfile.h.
1745         * modules/c-strtod (EXTRA_DIST): Add c-strtod.h.
1746         * modules/c-strtold (EXTRA_DIST): Add c-strtod.c, c-strtod.h.
1747         * modules/canonhost (EXTRA_DIST): Add c-canonhost.h.
1748         * modules/canonicalize (EXTRA_DIST): Add canonicalize.h.
1749         * modules/chdir-long (EXTRA_DIST): Add chdir-long.h.
1750         * modules/chdir-safer (EXTRA_DIST): Add chdir-safer.h.
1751         * modules/cloexec (EXTRA_DIST): Add cloexec.h.
1752         * modules/close-stream (EXTRA_DIST): Add close-stream.h.
1753         * modules/closeout (EXTRA_DIST): Add closeout.h.
1754         * modules/cycle-check (EXTRA_DIST): Add cycle-check.h.
1755         * modules/dev-ino (EXTRA_DIST): Add dev-ino.h.
1756         * modules/dirfd (EXTRA_DIST): Add dirfd.h.
1757         * modules/dirname (EXTRA_DIST): Renamed from lib_SOURCES.  Add
1758         dirname.h; remove basename.c and stripslash.c.
1759         * modules/exclude (EXTRA_DIST): Add exclude.h.
1760         * modules/exitfail (EXTRA_DIST): Add exitfail.h.
1761         * modules/fcntl-safer (EXTRA_DIST): Add fcntl-safer.h fcntl--.h.
1762         * modules/file-type (EXTRA_DIST): Add file-type.h.
1763         * modules/filemode (EXTRA_DIST): Add filemode.h.
1764         * modules/filenamecat (EXTRA_DIST): Add filenamecat.h.
1765         * modules/fopen-safer (EXTRA_DIST): Add stdio-safer.h stdio--.h.
1766         * modules/fpending (EXTRA_DIST): Add __fpending.h.
1767         * modules/fprintftime (EXTRA_DIST): Add fprintftime.h.
1768         * modules/fsusage (EXTRA_DIST): Add fsusage.h.
1769         * modules/fts (EXTRA_DIST): Add fts_.h fts-cycle.c.
1770         * modules/getcwd (EXTRA_DIST): Add getcwd.h.
1771         * modules/getdate (EXTRA_DIST): Add getdate.c.
1772         * modules/gethrxtime (EXTRA_DIST): Add gethrxtime.h xtime.h.
1773         * modules/getpagesize (EXTRA_DIST): Add getpagesize.h.
1774         * modules/getpass (EXTRA_DIST): Add getpass.h.
1775         * modules/glob (EXTRA_DIST): Add glob_.h glob-libc.h.
1776         * modules/group-member (EXTRA_DIST): Add group-member.h.
1777         * modules/hard-locale (EXTRA_DIST): Add hard-locale.h.
1778         * modules/hash (EXTRA_DIST): Add hash.h.
1779         * modules/human (EXTRA_DIST): Add human.h.
1780         * modules/inttypes (EXTRA_DIST): Add inttypes.h.
1781         * modules/lchmod (EXTRA_DIST): Add lchmod.h.
1782         * modules/lchown (EXTRA_DIST): Add lchown.h.
1783         * modules/long-options (EXTRA_DIST): Add long-options.h.
1784         * modules/lstat (EXTRA_DIST): Add lstat.h.
1785         * modules/md5 (EXTRA_DIST): Add memcasecmp.h.
1786         * modules/memcoll (EXTRA_DIST): Add memcoll.h.
1787         * modules/mempcpy (EXTRA_DIST): Add mempcpy.h.
1788         * modules/memrchr (EXTRA_DIST): Add memrchr.h.
1789         * modules/memxor (EXTRA_DIST): Add memxor.h.
1790         * modules/mkancesdirs (EXTRA_DIST): Add mkancesdirs.h.
1791         * modules/mkdir-p (EXTRA_DIST): Add modechange.h.
1792         * modules/mountlist (EXTRA_DIST): Add mountlist.h.
1793         * modules/openat (EXTRA_DIST): Add at-func.c openat.h openat-priv.h.
1794         * modules/pathmax (EXTRA_DIST): Add pathmax.h.
1795         * modules/physmem (EXTRA_DIST): Add physmem.h.
1796         * modules/posixtm (EXTRA_DIST): Add posixtm.h.
1797         * modules/posixver (EXTRA_DIST): Add posixver.h.
1798         * modules/quote (EXTRA_DIST): Add quote.h.
1799         * modules/quotearg (EXTRA_DIST): Add quotearg.h.
1800         * modules/readtokens (EXTRA_DIST): Add readtokens.h.
1801         * modules/readutmp (EXTRA_DIST): Add readutmp.h.
1802         * modules/regex (EXTRA_DIST): Add regcomp.c regex.h regex_internal.c
1803         regex_internal.h regexec.c.
1804         * modules/safe-read (EXTRA_DIST): Add safe-read.h.
1805         * modules/safe-write (EXTRA_DIST): Add safe-write.h.
1806         * modules/same (EXTRA_DIST): Add same.h.
1807         * modules/same-inode (EXTRA_DIST): Add same-inode.h.
1808         * modules/save-cwd (EXTRA_DIST): Add save-cwd.h.
1809         * modules/savedir (EXTRA_DIST): Add savedir.h.
1810         * modules/sha1 (EXTRA_DIST): Add sha1.h.
1811         * modules/sig2str (EXTRA_DIST): Add sig2str.h.
1812         * modules/stat-macros (EXTRA_DIST): Add stat-macros.h.
1813         * modules/stat-time (EXTRA_DIST): Add stat-time.h.
1814         * modules/stdlib-safer (EXTRA_DIST): Add stdlib-safer.h stdlib--.h.
1815         * modules/strdup (EXTRA_DIST): Add strdup.h.
1816         * modules/strftime (EXTRA_DIST): Add strftime.h.
1817         * modules/strndup (EXTRA_DIST): Add strndup.h.
1818         * modules/strnlen (EXTRA_DIST): Add strnlen.h.
1819         * modules/strverscmp (EXTRA_DIST): Add strverscmp.h.
1820         * modules/time_r (EXTRA_DIST): Add time_r.h.
1821         * modules/timespec (EXTRA_DIST): Add timespec.h.
1822         * modules/tmpfile-safer (EXTRA_DIST): Add stdio-safer.h stdio--.h.
1823         * modules/unistd-safer (EXTRA_DIST): Add unistd-safer.h unistd--.h.
1824         * modules/unlinkdir (EXTRA_DIST): Add unlinkdir.h.
1825         * modules/unlocked-io (EXTRA_DIST): Add unlocked-io.h.
1826         * modules/userspec (EXTRA_DIST): Add userspec.h.
1827         * modules/utimecmp (EXTRA_DIST): Add utimecmp.h.
1828         * modules/utimens (EXTRA_DIST): Add utimens.h.
1829         * modules/xalloc (EXTRA_DIST): Add xalloc.h.
1830         * modules/xgetcwd (EXTRA_DIST): Add xgetcwd.h.
1831         * modules/xnanosleep (EXTRA_DIST): Add xnanosleep.h.
1832         * modules/xreadlink (EXTRA_DIST): Add xreadlink.h.
1833         * modules/xstrtod (EXTRA_DIST): Add xstrtod.h.
1834         * modules/xstrtol (EXTRA_DIST): Add xstrtol.h.
1835         * modules/xstrtold (EXTRA_DIST): Add xstrtod.c xstrtod.h.
1836         * modules/yesno (EXTRA_DIST): Add yesno.h.
1837
1838 2006-08-21  Paul Eggert  <eggert@cs.ucla.edu>
1839
1840         * m4/mkdir-p.m4 (gl_MKDIR_PARENTS): Check for fchmod.
1841
1842         * m4/argmatch.m4: New file, from coreutils with AC_LIBSOURCES removed.
1843         * m4/dev-ino.m4, same-inode.m4: Remove.
1844
1845         * m4/_inttypes_h.m4 (gl_INTTYPES_H):
1846         * m4/acl.m4 (AC_FUNC_ACL):
1847         * m4/backupfile.m4 (gl_BACKUPFILE):
1848         * m4/c-strtod.m4 (gl_C99_STRTOLD):
1849         * m4/canon-host.m4 (gl_CANON_HOST):
1850         * m4/canonicalize.m4 (AC_FUNC_CANONICALIZE_FILE_NAME):
1851         * m4/chdir-long.m4 (gl_FUNC_CHDIR_LONG):
1852         * m4/chdir-safer.m4 (gl_CHDIR_SAFER):
1853         * m4/cloexec.m4 (gl_CLOEXEC):
1854         * m4/close-stream.m4 (gl_CLOSE_STREAM):
1855         * m4/closeout.m4 (gl_CLOSEOUT):
1856         * m4/dirfd.m4 (gl_FUNC_DIRFD):
1857         * m4/dirname.m4 (gl_DIRNAME):
1858         * m4/exclude.m4 (gl_EXCLUDE):
1859         * m4/exitfail.m4 (gl_EXITFAIL):
1860         * m4/fcntl-safer.m4 (gl_FCNTL_SAFER):
1861         * m4/file-type.m4 (gl_FILE_TYPE):
1862         * m4/filemode.m4 (gl_FILEMODE):
1863         * m4/filenamecat.m4 (gl_FILE_NAME_CONCAT):
1864         * m4/fpending.m4 (gl_FUNC_FPENDING):
1865         * m4/fprintftime.m4 (gl_FPRINTFTIME):
1866         * m4/fts.m4 (gl_FUNC_FTS):
1867         * m4/getcwd.m4 (gl_FUNC_GETCWD_NULL):
1868         * m4/getdate.m4 (gl_GETDATE):
1869         * m4/gethrxtime.m4 (gl_GETHRXTIME):
1870         * m4/getpagesize.m4 (gl_GETPAGESIZE):
1871         * m4/getpass.m4 (gl_FUNC_GETPASS):
1872         * m4/gettime.m4 (gl_GETTIME):
1873         * m4/getugroups.m4 (gl_GETUGROUPS):
1874         * m4/glob.m4 (gl_GLOB_SUBSTITUTE):
1875         * m4/group-member.m4 (gl_FUNC_GROUP_MEMBER):
1876         * m4/hard-locale.m4 (gl_HARD_LOCALE):
1877         * m4/hash.m4 (gl_HASH):
1878         * m4/idcache.m4 (gl_IDCACHE):
1879         * m4/lchmod.m4 (gl_FUNC_LCHMOD):
1880         * m4/lchown.m4 (gl_FUNC_LCHOWN):
1881         * m4/long-options.m4 (gl_LONG_OPTIONS):
1882         * m4/lstat.m4 (gl_FUNC_LSTAT):
1883         * m4/md5.m4 (gl_MD5):
1884         * m4/memcasecmp.m4 (gl_MEMCASECMP):
1885         * m4/memcoll.m4 (gl_MEMCOLL):
1886         * m4/mempcpy.m4 (gl_FUNC_MEMPCPY):
1887         * m4/memrchr.m4 (gl_FUNC_MEMRCHR):
1888         * m4/memxor.m4 (gl_MEMXOR):
1889         * m4/mkancesdirs.m4 (gl_MKANCESDIRS):
1890         * m4/mkdir-p.m4 (gl_MKDIR_PARENTS):
1891         * m4/modechange.m4 (gl_MODECHANGE):
1892         * m4/mountlist.m4 (gl_MOUNTLIST):
1893         * m4/nanosleep.m4 (gl_FUNC_NANOSLEEP):
1894         * m4/openat.m4 (gl_FUNC_OPENAT):
1895         * m4/pathmax.m4 (gl_PATHMAX):
1896         * m4/physmem.m4 (gl_PHYSMEM):
1897         * m4/posixtm.m4 (gl_POSIXTM):
1898         * m4/posixver.m4 (gl_POSIXVER):
1899         * m4/quote.m4 (gl_QUOTE):
1900         * m4/quotearg.m4 (gl_QUOTEARG):
1901         * m4/readtokens.m4 (gl_READTOKENS):
1902         * m4/readutmp.m4 (gl_READUTMP):
1903         * m4/regex.m4 (gl_REGEX):
1904         * m4/safe-read.m4 (gl_SAFE_READ):
1905         * m4/safe-write.m4 (gl_SAFE_WRITE):
1906         * m4/same.m4 (gl_SAME):
1907         * m4/save-cwd.m4 (gl_SAVE_CWD):
1908         * m4/savedir.m4 (gl_SAVEDIR):
1909         * m4/settime.m4 (gl_SETTIME):
1910         * m4/sha1.m4 (gl_SHA1):
1911         * m4/sig2str.m4 (gl_FUNC_SIG2STR):
1912         * m4/stat-macros.m4 (gl_STAT_MACROS):
1913         * m4/stat-time.m4 (gl_STAT_TIME):
1914         * m4/stdio-safer.m4 (gl_FOPEN_SAFER):
1915         * m4/stdlib-safer.m4 (gl_STDLIB_SAFER):
1916         * m4/strdup.m4 (gl_FUNC_STRDUP):
1917         * m4/strftime.m4 (gl_FUNC_GNU_STRFTIME):
1918         * m4/strndup.m4 (gl_FUNC_STRNDUP):
1919         * m4/strnlen.m4 (gl_FUNC_STRNLEN):
1920         * m4/strverscmp.m4 (gl_FUNC_STRVERSCMP):
1921         * m4/time_r.m4 (gl_TIME_R):
1922         * m4/timespec.m4 (gl_TIMESPEC):
1923         * m4/unistd-safer.m4 (gl_UNISTD_SAFER):
1924         * m4/unlinkdir.m4 (gl_UNLINKDIR):
1925         * m4/unlocked-io.m4 (gl_FUNC_GLIBC_UNLOCKED_IO):
1926         * m4/userspec.m4 (gl_USERSPEC):
1927         * m4/utimecmp.m4 (gl_UTIMECMP):
1928         * m4/utimens.m4 (gl_UTIMENS):
1929         * m4/xalloc.m4 (gl_XALLOC):
1930         * m4/xgetcwd.m4 (gl_XGETCWD):
1931         * m4/xnanosleep.m4 (gl_XNANOSLEEP):
1932         * m4/xreadlink.m4 (gl_XREADLINK):
1933         * m4/xstrtod.m4 (gl_XSTRTOD):
1934         * m4/yesno.m4 (gl_YESNO):
1935         Don't use AC_LIBSOURCES; instead, rely on the files in ../modules/
1936         to get the necessary .h files and whatnot.
1937
1938 2006-08-21  Mark D. Baushke  <mdb@gnu.org>
1939             Bruno Haible <bruno@clisp.org>
1940
1941         * gnulib-tool (func_verify_module): Work around Sun's non-POSIX 1003.2
1942         /bin/sh understanding of '!' conditional negation.
1943
1944 2006-08-21  Jim Meyering  <jim@meyering.net>
1945
1946         * modules/openat (Depends-on): Really alphabetize.
1947
1948         * modules/acl (Depends-on): Add error and quote.
1949
1950         * check-module (find_included_lib_files): Add at-func.c to the
1951         ok-to-include-more-than-once white list.
1952
1953         * modules/openat (Depends-on): Add lstat.  Alphabetize.
1954
1955 2006-08-21  Bruno Haible <bruno@clisp.org>
1956
1957         * gnulib-tool (func_emit_lib_Makefile_am, func_emit_tests_Makefile_am):
1958         Emit a pkgdata_DATA variable only if some snippets add contents to it.
1959         Reported by Martin Lambers <marlam@marlam.de>.
1960
1961 2006-08-21  Bruno Haible <bruno@clisp.org>
1962
1963         * gnulib-tool (func_emit_lib_Makefile_am): If the snippets already
1964         specify an installation location, don't emit a noinst_LIBRARIES or
1965         noinst_LTLIBRARIES assignment.
1966
1967 2006-08-21  Bruno Haible  <bruno@clisp.org>
1968
1969         BeOS portability.
1970         * modules/mbchar (Include): Don't test HAVE_WCTYPE_H any more, since
1971         BeOS has mbrtowc() but no <wctype.h>.
1972
1973 2006-08-21  Bruno Haible  <bruno@clisp.org>
1974
1975         BeOS portability.
1976         * m4/mbchar.m4 (gl_MBCHAR): Compile mbchar.c also if <wctype.h> doesn't
1977         exist.
1978
1979 2006-08-21  Bruno Haible  <bruno@clisp.org>
1980
1981         BeOS portability.
1982         * lib/mbchar.h: Include <wctype.h> only if it exists.
1983
1984 2006-08-20  Paul Eggert  <eggert@cs.ucla.edu>
1985
1986         Remove files that are no longer needed by their respective modules.
1987         * m4/obstack.m4: Remove.
1988         * m4/strerror_r.m4: Remove.
1989         * m4/uint32_t.m4: Remove.
1990         * m4/uintptr_t.m4: Remove.
1991         * m4/ullong_max.m4: Remove.
1992         * m4/xstrtoimax.m4: Remove.
1993         * m4/xstrtoumax.m4: Remove.
1994
1995         * m4/cycle-check.m4 (gl_CYCLE_CHECK): Do not require
1996         gl_AC_TYPE_UINTMAX_T, gl_STRUCT_DEV_INO, or gl_SAME_INODE, since gnulib
1997         dependencies now capture this.
1998
1999         * m4/cycle-check.m4 (gl_CYCLE_CHECK):
2000         Do not use AC_LIBSOURCES, since gnulib modules now do this.
2001         * m4/fsusage.m4 (gl_FSUSAGE): Likewise.
2002         * m4/human.m4 (gl_HUMAN): Likewise.
2003         * m4/inttostr.m4 (gl_INTTOSTR): Likewise.
2004         * m4/xstrtol.m4 (gl_XSTRTOL): Likewise.
2005
2006         * m4/filemode.m4 (gl_FILEMODE): Require AC_STRUCT_ST_DM_MODE.
2007
2008         * m4/filemode.m4 (gl_PREREQ_FSUSAGE_EXTRA): Do not require
2009         gl_AC_TYPE_INTMAX_T or gl_AC_TYPE_UINTMAX_T, since we now require
2010         stdint.
2011         * m4/human.m4 (gl_HUMAN): Likewise.
2012         * m4/inttostr.m4 (gl_PREREQ_INTTOSTR): Likewise.
2013         * m4/mkstemp.m4 (gl_PREREQ_TEMPNAME): Likewise.
2014         * m4/strtoimax.m4 (gl_PREREQ_STRTOIMAX): Likewise.
2015         * m4/strtoumax.m4 (gl_PREREQ_STRTOUMAX): Likewise.
2016         * m4/xstrtol (gl_XSTRTOL): Likewise.
2017
2018         * m4/gethrxtime.m4 (gl_XTIME): gl_AC_TYPE_LONG_LONG ->
2019         AC_TYPE_LONG_LONG_INT.
2020         * m4/strtoimax.m4 (gl_PREREQ_STRTOIMAX): Likewise.
2021         * m4/strtoll.m4 (gl_FUNC_STRTOLL): Likewise.
2022         * m4/strtoull.m4 (gl_FUNC_STRTOULL): Likewise, for unsigned long.
2023         * m4/strtoumax.m4 (gl_PREREQ_STRTOUMAX): Likewise.
2024
2025         * m4/human.m4 (gl_HUMAN): Do not require AM_STDBOOL_H since we depend
2026         on stdbool.
2027
2028         * m4/xstrtol.m4 (gl_PREREQ_XSTRTOL_H, gl_PREREQ_XSTRTOL): Remove.
2029         (gl_PREREQ_XSTRTOUL): Remove.
2030
2031         * m4/ls-mntd-fs.m4 (gl_LIST_MOUNTED_FILE_SYSTEMS): Check for hasmntopt.
2032
2033         * m4/posixver.m4: Fix comment since head -1 now works even in POSIX
2034         mode.
2035
2036 2006-08-20  Paul Eggert  <eggert@cs.ucla.edu>
2037
2038         Add and change modules to make it easier for coreutils to use
2039         gnulib-tool.
2040         * modules/backupfile (Files): Remove m4/d-ino.m4.
2041         (Depends-on): Add d-ino.
2042         * modules/cycle-check (Depends-on): Add stdint.
2043         (lib_SOURCES): Add cycle-check.h.
2044         * modules/d-ino: New module.
2045         * modules/d-type: New module.
2046         * modules/error (Files): Remove m4/strerror_r.m4.
2047         * modules/filemode (Files): Add m4/st_dm_mode.m4.
2048         * modules/fsuage (Files): Remove m4/ulonglong.m4, m4/stdint_h.m4,
2049         m4/inttypes_h.m4, m4/uintmax_t.m4.
2050         (Depends-on): Add stdint.
2051         (lib_SOURCES): Add fsusage.h.
2052         * modules/getcwd (Files): Remove d-ino.m4.
2053         (Depends-on): Add d-ino.
2054         * modules/getndelim2 (Depends-on): Add stdint.
2055         * modules/glob (Files): Remove m4/d-type.m4.
2056         (Depends-on): Add d-type.
2057         * modules/host-os: New module.
2058         * modules/human (Files):  Remove m4/ulonglong.m4, m4/stdint_h.m4,
2059         m4/inttypes_h.m4, m4/uintmax_t.m4.
2060         * Depends-on: Add stdint.
2061         (lib_SOURCES): Add human.h.
2062         * modules/inttostr (Files): Remove m4/intmax_t.m4,
2063         m4/inttostr.m4, m4/inttypes_h.m4, m4/longlong.m4, m4/stdint_h.m4,
2064         m4/uintmax_t.m4, m4/ulonglong.m4.
2065         (Depends-on): Add stdint.
2066         (EXTRA_DIST): Add inttostr.h.
2067         * modules/lchmod: New module.
2068         * modules/link-follow: New module.
2069         * modules/mkdir-p (Files): Remove lib/lchmod.h, m4/lchmod.m4.
2070         (Depends-on): Add lchmod.
2071         * modules/mkstemp (Files): Remove m4/ulonglong.m4,
2072         m4/stdint_h.m4, m4/inttypes_h.m4, m4/uintmax_t.m4.
2073         (Depends-on): Add stdint.
2074         * modules/obstack (Files): Remove m4/inttypes_h.m4, m4/obstack.m4,
2075         m4/stdint_h.m4, m4/uintmax_t.m4, m4/ulonglong.m4.
2076         (Depends-on): Add stdint.
2077         (configure.ac): Change gl_OBSTACK to AC_FUNC_OBSTACK.
2078         * modules/perl: New module.
2079         * modules/regex (Depends-on): Add stdint.
2080         * modules/rmdir-errno: New module.
2081         * modules/strtoimax (Files): Remove m4/stdint_h.m4, m4/inttypes_h.m4,
2082         m4/intmax_t.m4.
2083         (Depends-on): Add stdint.
2084         * modules/strtoumax (Files): Remove m4/stdint_h.m4, m4/inttypes_h.m4,
2085         m4/uintmax_t.m4.
2086         (Depends-on): Add stdint.
2087         * modules/unlink-busy: New module.
2088         * modules/utimecmp (Depends-on): Add stdint.
2089         * modules/uptime: New module.
2090         * modules/winsz-ioctl: New module.
2091         * modules/winsz-termios: New module.
2092         * modules/xnanosleep (Depends-on): Add nanosleep.
2093         * modules/ullong_max: Remove.
2094         * modules/xstrtoimax (Files): Remove m4/xstrtoimax.m4.
2095         (configure.ac): Remove gl_XSTRTOIMAX; no action needed now.
2096         * modules/xstrtol (Files): Remove m4/ulonglong.m4, m4/longlong.m4,
2097         m4/stdint_h.m4, m4/inttypes_h.m4, m4/uintmax_t.m4, m4/intmax_t.m4.
2098         (Depends-on): Add inttypes.
2099         (lib_SOURCES): Add xstrtol.h.
2100         * modules/xstrtoumax (Files): Remove m4/xstrtoumax.m4.
2101         (configure.ac): Remove gl_XSTRTOUMAX; no action needed now.
2102         * MODULES.html.sh: Move 'assert' into the assert section.
2103         Move 'dummy' into the linking section.
2104         Remove ullong_max.
2105         Add section for compatibility checks for POSIX:2001 functions,
2106         and put d-ino, d-type, link-follow, rmdir-errno, unlink-busy,
2107         winsz-ioctl, and winsz-termios into it.
2108         Add lchmod.
2109         Add top-level Misc section and put host-os, perl, and uptime
2110         into it.
2111
2112 2006-08-20  Paul Eggert  <eggert@cs.ucla.edu>
2113
2114         * lib/cycle-check.h: Include <stdint.h> unconditionally, since we
2115         now assume the stdint module.  Do not include inttypes.h.
2116         * lib/fsusage.h: Likewise.
2117         * lib/getndelim2.c: Likewise.
2118         * lib/human.h: Likewise.
2119         * lib/inttostr.h: Likewise.
2120         * lib/obstack.c: Likewise.
2121         * lib/regex_internal.h: Likewise.
2122         * lib/tempname.c: Likewise.
2123         * lib/utimecmp.c: Likewise.
2124         * lib/xstrtol.h: Likewise.
2125
2126         * lib/stat_.h: Fix typo: HAVE_FUNC_LSTAT -> HAVE_LSTAT.
2127
2128         * lib/strtoimax.c: Adjust to macro name changes in Autoconf,
2129         e.g., HAVE_LONG_LONG -> HAVE_LONG_LONG_INT.
2130         * lib/xtime.h: Likewise.
2131
2132 2006-08-19  Paul Eggert  <eggert@cs.ucla.edu>
2133
2134         * modules/openat (Files): Add lib/fchmodat.c.
2135         Fixes problem reported by Jay Youngman.
2136
2137 2006-08-19  Paul Eggert  <eggert@cs.ucla.edu>
2138
2139         * lib/fchmodat.c: New file, from coreutils.  This was inadvertently
2140         omitted in the 2006-08-17 update.  Problem reported by Jay Youngman.
2141
2142 2006-08-18  Paul Eggert  <eggert@cs.ucla.edu>
2143             Bruno Haible  <bruno@clisp.org>
2144
2145         * m4/bison-i18n.m4 (BISON_I18N): Also handle the case where yacc exists
2146         and is a script that invokes bison. Tighten the code. Add comments.
2147
2148 2006-08-18  Jim Meyering  <jim@meyering.net>
2149
2150         * m4/gethrxtime.m4 (gl_PREREQ_GETHRXTIME): Also check for
2151         CLOCK_REALTIME, since gethrxtime may revert to using clock_gettime via
2152         gettime.c.  Gabor Z. Papp reported that gethrxtime-using programs
2153         failed to link due to unresolved clock_gettime on a linux-2.4.x system.
2154
2155 2006-08-18  Bruno Haible  <bruno@clisp.org>
2156
2157         * modules/bison-i18n: New file.
2158         * MODULES.html.sh (Internationalization functions): Add it.
2159
2160 2006-08-18  Bruno Haible  <bruno@clisp.org>
2161
2162         * m4/ls-mntd-fs.m4 (gl_LIST_MOUNTED_FILE_SYSTEMS): Also check for
2163         sys/statvfs.h. When getmntinfo was found, check its declaration and
2164         set either MOUNTED_GETMNTINFO or MOUNTED_GETMNTINFO2 depending on it.
2165
2166 2006-08-18  Bruno Haible  <bruno@clisp.org>
2167
2168         * m4/bison-i18n.m4: New file, from bison.
2169
2170 2006-08-18  Bruno Haible  <bruno@clisp.org>
2171
2172         * lib/mountlist.c [MOUNTED_GETMNTINFO2]: Include sys/statvfs.h.
2173         (ME_DUMMY): Treat "kernfs" as a dummy.
2174         (read_file_system_list) [MOUNTED_GETMNTINFO2]: Implement.
2175
2176 2006-08-17  Paul Eggert  <eggert@cs.ucla.edu>
2177
2178         Update from coreutils.
2179
2180         2006-08-15  Jim Meyering  <jim@meyering.net>
2181
2182         * m4/openat.m4 (gl_FUNC_OPENAT): Add at-func.c via AC_LIBSOURCES.
2183
2184         2006-01-17  Jim Meyering  <jim@meyering.net>
2185
2186         * m4/fts.m4 (gl_FUNC_FTS_CORE): Depend on gl_FUNC_OPENAT.
2187
2188         2006-01-11  Jim Meyering  <jim@meyering.net>
2189
2190         * m4/openat.m4 (gl_FUNC_OPENAT): Require and compile fchmodat.c.
2191         Check for the lchmod function.
2192
2193 2006-08-17  Paul Eggert  <eggert@cs.ucla.edu>
2194
2195         Update from coreutils.
2196
2197         * lib/__fpending.h: Add copyright notice.
2198         * lib/fprintftime.h: Likewise.
2199         * lib/savedir.c: Use (C) in copyright notice.
2200         * lib/savedir.h: Likewise.
2201
2202         2006-08-15  Jim Meyering  <jim@meyering.net>
2203
2204         * lib/at-func.c: New file, with the logic of all emulated at-functions.
2205         * lib/openat-priv.h: Include <errno.h> and define ENOSYS,
2206         in support of the EXPECTED_ERRNO macro.
2207         * lib/openat.c (fstatat, unlinkat, fchownat): Remove function
2208         definitions.  Instead, define the appropriate symbols and include
2209         "at-func.c".
2210         * lib/mkdirat.c (mkdirat): Likewise.
2211         * lib/fchmodat.c (fchmodat): Likewise.
2212         (ENOSYS): Remove definition.
2213         * lib/openat.c: Don't include <errno.h>, now that "openat-priv.h" does
2214         it.  Don't include "unistd--.h" -- it wasn't ever used.
2215
2216         2006-01-17  Jim Meyering  <jim@meyering.net>
2217
2218         Rewrite fts.c not to change the current working directory,
2219         by using openat, fstatat, fdopendir, etc..
2220
2221         * lib/fts.c [! _LIBC]: Include "openat.h" and "unistd--.h".
2222         (HAVE_OPENAT_SUPPORT): Define.
2223         [_LIBC] (fchdir): Don't undef or define; no longer used.
2224         (FCHDIR): Define in terms of cwd_advance_fd rather than fchdir.
2225         Now, this `function' always succeeds, and consumes its file descriptor
2226         parameter -- so callers must not close such FDs.  Update callers.
2227         (diropen_fd, opendirat, cwd_advance_fd): New functions.
2228         (diropen): Add parameter, SP.  Adjust all callers.
2229         Implement using diropen_fd, rather than open.
2230         (fts_open): Initialize new member, fts_cwd_fd.
2231         Remove fts_rft-setting code.
2232         (fts_close): Close fts_cwd_fd, if necessary.
2233         (__opendir2): Define in terms of opendir or opendirat,
2234         depending on whether the FST_NOCHDIR flag is set.
2235         (fts_build): Since fts_safe_changedir consumes its FD, and since
2236         this code must do `closedir(dirp)', dup the dirfd(dirp) argument,
2237         and close the dup'd file descriptor upon failure.
2238         (fts_stat): Use fstatat(...AT_SYMLINK_NOFOLLOW) in place of lstat.
2239         (fts_safe_changedir): Tweak semantics to reflect that this function
2240         now calls cwd_advance_fd and hence consumes its FD argument.
2241         * lib/fts_.h [struct FTS] (fts_cwd_fd): New member.
2242         [struct FTS] (fts_rft): Remove now-unused member.
2243         [struct FTS] (fts_cycle.state): Improve comment.
2244
2245         * lib/openat.c (openat_needs_fchdir): New function.
2246         * lib/openat.h (openat_needs_fchdir): Declare it.
2247
2248 2006-08-16  Paul Eggert  <eggert@cs.ucla.edu>
2249
2250         * lib/memcoll.c (memcoll): Set errno = 0 in the shortcut case, too.
2251         Problem and fix reported by Pádraig Brady in
2252         <http://lists.gnu.org/archive/html/bug-coreutils/2006-08/msg00099.html>.
2253
2254 2006-08-15  Paul Eggert  <eggert@cs.ucla.edu>
2255
2256         * modules/cycle-check (configure.ac): Add gl_CYCLE_CHECK.
2257
2258 2006-08-15  Paul Eggert  <eggert@cs.ucla.edu>
2259
2260         * lib/memcoll.c (memcoll): Optimize for the common case where the
2261         arguments are bytewise equal.
2262
2263 2006-08-15  Paul Eggert  <eggert@cs.ucla.edu>
2264
2265         * doc/regexprops-generic.texi: Add a copyright notice.
2266
2267 2006-08-15  Bruno Haible  <bruno@clisp.org>
2268
2269         * modules/tmpdir (License): Change to LGPL.
2270
2271 2006-08-15  Bruno Haible  <bruno@clisp.org>
2272
2273         * gnulib-tool (func_all_modules, func_verify_module): COPYING is not a
2274         module.
2275
2276 2006-08-14  Simon Josefsson  <jas@extundo.com>
2277
2278         * config/srclist.txt: Add gnupload.
2279
2280 2006-08-14  Paul Eggert  <eggert@cs.ucla.edu>
2281
2282         Change copyright notice from LGPL 2 to GPL 2, since that's the
2283         standard form used in the gnulib repository.
2284         * tests/test-lock.c: Likewise.
2285         * tests/test-stdint.c: Likewise.
2286         * tests/test-tls.c: Likewise.
2287
2288         * users.txt: Add bison, diffutils, libprelude, prelude-lml,
2289         prelude-manager.  User shorter URLs for GNU projects, without '?'.
2290         Add copyright notice.
2291
2292         * check-module: Add copyright notice.  Output a copyright
2293         notice if "--version" is specified.
2294         * modules/COPYING: New file.
2295         * tests/test-getaddrinfo.c: Add copyright notice.
2296         * tests/test-verify.c: Likewise.
2297
2298 2006-08-14  Paul Eggert  <eggert@cs.ucla.edu>
2299
2300         Change copyright notice from LGPL 2 to GPL 2, since that's the
2301         standard form used in the gnulib repository.
2302         * lib/lock.c: LGPL -> GPL.
2303         * lib/lock.h: Likewise.
2304         * lib/strnlen1.c: Likewise.
2305         * lib/strnlen1.h: Likewise.
2306         * lib/tls.c: Likewise.
2307         * lib/tls.h: Likewise.
2308         * lib/tmpdir.c: Likewise.
2309
2310         * lib/TODO: Remove; this belongs only in coreutils.
2311
2312 2006-08-14  Paul Eggert  <eggert@cs.ucla.edu>
2313
2314         Add copyright notices to long-enough files that lack them, since
2315         otherwise the files aren't clearly free.  Use the same notice that
2316         getdate.texi already uses.
2317         * doc/alloca-opt.texi: Add copyright notice.
2318         * doc/alloca.texi: Likewise.
2319         * doc/ctime.texi: Likewise.
2320         * doc/functions.texi: Likewise.
2321         * doc/gcd.texi: Likewise.
2322         * doc/gnulib-tool.texi: Likewise.
2323         * doc/inet_ntoa.texi: Likewise.
2324         * doc/visibility.texi: Likewise.
2325
2326         * doc/getdate.texi: Update FDL version from 1.1 to 1.2.
2327         * doc/quote.texi: Add copyright notice.
2328
2329         * doc/solaris-versions: Add SunOS 5.10, SunOS 1.x, SunOS 4.0, SunOS
2330         4.0.x, SunOS 4.1.1.1, SunOS 4.1.1_U1, SunOS 4.1.3B.  SunOS 4.1.3
2331         was Solaris 1.1A.  Remove space before B in Solaris 1.1.1B.
2332         Mention SunOS 5.11.  Mention that everything before SunOS 5.7
2333         is now obsolete, and give a pointer to the Sun list.
2334         Add copyright notice.
2335
2336 2006-08-14  Paul Eggert  <eggert@cs.ucla.edu>
2337
2338         * config/srclistvars.sh: Add copyright notice.
2339
2340 2006-08-14  Eric Blake  <ebb9@byu.net>
2341
2342         Import the following change from libc:
2343
2344         2006-08-12  Ulrich Drepper  <drepper@redhat.com>
2345
2346         Upstream bug 2997.
2347         * lib/misc/error.c: Add space between program name and message if file
2348         name is missing.
2349
2350 2006-08-12  Karl Berry  <karl@gnu.org>
2351
2352         * config/srclist.txt (ssize_t.m4, sig_atomic_t.m4, signalblocking.m4):
2353         remove, these originate in gnulib now.
2354
2355 2006-08-11  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
2356
2357         * doc/Makefile (standards.info standards.html standards.dvi):
2358         Also depend on make-stds.texi.
2359
2360 2006-08-11  Paul Eggert  <eggert@cs.ucla.edu>
2361
2362         * lib/pipe-safer.c (pipe_safer): Fix misspelling: HAVE_FUNC_PIPE ->
2363         HAVE_PIPE.  Fix a file descriptor leak when fd_safer fails.
2364
2365         * lib/regex_internal.c (re_string_skip_chars): Don't assume WEOF fits
2366         in wchar_t.  Problem reported by Eric Blake.
2367
2368         * lib/snprintf.c (snprintf): memcpy LEN bytes, not SIZE - 1, when
2369         LEN is smaller than SIZE.  Suggested by Bruno Haible.
2370         Also, help the compiler to keep LEN in a register.
2371
2372 2006-08-11  Eric Blake  <ebb9@byu.net>
2373
2374         * users.txt: Sort.  Add tar.
2375
2376 2006-08-11  Bruno Haible  <bruno@clisp.org>
2377
2378         * users.txt: New file.
2379
2380 2006-08-11  Bruno Haible  <bruno@clisp.org>
2381
2382         * m4/wcwidth.m4 (gl_FUNC_WCWIDTH): Include <stdio.h> and <time.h>
2383         before <wchar.h>. Needed for OSF/1 and BSD/OS.
2384
2385 2006-08-10  Paul Eggert  <eggert@cs.ucla.edu>
2386
2387         * modules/snprintf (Depends-on): Remove minmax.
2388         (Maintainer): Add self and Bruno.
2389
2390 2006-08-10  Paul Eggert  <eggert@cs.ucla.edu>
2391
2392         * lib/.cppi-disable: Add snprintf.h, socket_.h.
2393         * lib/snprintf.c: Include <errno.h> and <limits.h>.
2394         (EOVERFLOW): Define if the system does not.
2395         Do not include "minmax.h"; it wasn't used.
2396         (snprintf): Don't assume size_t promotes to an unsigned type.
2397         Fix bug when generated string was too long for the buffer: the
2398         buffer's contents are supposed to be the initial prefix of the
2399         output.  Don't assume vasnprintf returns EOVERFLOW if the size
2400         exceeds INT_MAX; do the check ourselves.
2401
2402         Import the following changes from libc:
2403
2404         2006-06-02  Jakub Jelinek  <jakub@redhat.com>
2405
2406         * lib/posix/regex_internal.c (re_string_skip_chars): If no character
2407         has been converted at all, set *last_wc to WEOF.  If mbrtowc failed,
2408         set wc to the byte which couldn't be converted.
2409         (re_string_reconstruct): Don't clear valid_raw_len before calling
2410         re_string_skip_chars.  If wc is WEOF after re_string_skip_chars, set
2411         tip_context using re_string_context_at.
2412
2413         2006-05-02  Ulrich Drepper  <drepper@redhat.com>
2414
2415         * lib/posix/regex.h: g++ still cannot handled [restrict].
2416
2417         2006-04-21  Ulrich Drepper  <drepper@redhat.com>
2418
2419         * lib/posix/regex.h: Remove special handling for VMS.
2420
2421 2006-08-10  Jim Meyering  <jim@meyering.net>
2422
2423         * modules/same-inode: New module.
2424         * modules/dev-ino: New module.
2425         * modules/cycle-check: Depend on these modules, rather than simply
2426         including their .h files.
2427         (Makefile.am): Don't list cycle-check.[ch] here, now that they're
2428         required via m4/cycle-check.m4.
2429         * modules/same: Depend on new same-inode module, rather than
2430         including same-inode.h.
2431         * modules/chdir-safer: New file.
2432
2433         * modules/chown (Depends-on): Add stat-macros.
2434
2435 2006-08-10  Jim Meyering  <jim@meyering.net>
2436
2437         * m4/cycle-check.m4: New file.
2438         Require gl_STRUCT_DEV_INO and gl_SAME_INODE.
2439         * m4/dev-ino.m4, same-inode.m4: New files.
2440
2441 2006-08-10  Eric Blake  <ebb9@byu.net>
2442
2443         * modules/verror (Depends-on): Remove bogus gl_VERROR that snuck
2444         in from original proposal.
2445
2446 2006-08-10  Eric Blake  <ebb9@byu.net>
2447         and Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
2448
2449         * gnulib-tool (func_import): Detect unexpanded macros in gnulib
2450         namespace.
2451
2452 2006-08-10  Bruno Haible  <bruno@clisp.org>
2453
2454         * gnulib-tool (func_create_testdir): Detect unexpanded macros here
2455         as well.
2456
2457 2006-08-09  Paul Eggert  <eggert@cs.ucla.edu>
2458
2459         Sync from coreutils.
2460
2461         2006-07-19  Mike Frysinger  <vapier@gentoo.org>
2462
2463         * lib/mountlist.c [ME_REMOTE]: Filter out cifs.
2464         Reported by Toralf Förster in <http://bugs.gentoo.org/141012>.
2465
2466 2006-08-09  Paul Eggert  <eggert@cs.ucla.edu>
2467
2468         * modules/restrict: Remove; no longer needed now that we assume
2469         Autoconf 2.59 or later.
2470         * MODULES.html.sh: Remove 'restrict'.
2471         * modules/argp (Depends-on): Remove 'restrict'.
2472         * modules/base64 (Depends-on): Likewise.
2473         * modules/gc (Depends-on): Likewise.
2474         * modules/getaddrinfo (Depends-on): Likewise.
2475         * modules/glob (Depends-on): Likewise.
2476         * modules/inet_ntop (Depends-on): Likewise.
2477         * modules/inet_pton (Depends-on): Likewise.
2478         * modules/memxor (Depends-on): Likewise.
2479         * modules/regex (Depends-on): Likewise.
2480         * modules/strtok_r (Depends-on): Likewise.
2481         * modules/time_r (Depends-on): Likewise.
2482
2483 2006-08-09  Paul Eggert  <eggert@cs.ucla.edu>
2484
2485         * m4/argp.m4 (gl_ARGP): Require AC_C_RESTRICT.
2486         * m4/gc.m4 (gl_PREREQ_GC): Likewise.
2487         * m4/glob.m4 (gl_PREREQ_GLOB): Likewise.
2488         * m4/inet_ntop.m4 (gl_PREREQ_INET_NTOP): Likewise.
2489         * m4/inet_pton.m4 (gl_PREREQ_INET_PTON): Likewise.
2490         * m4/memxor.m4 (gl_MEMXOR): Likewise.
2491         * m4/restrict.m4: Remove; no longer needed.  All remaining uses of
2492         gl_C_RESTRICT replaced by AC_C_RESTRICT.
2493
2494         Merge from coreutils.
2495         * m4/regex.m4 (gl_PREREQ_REGEX): Require AC_C_RESTRICT, not
2496         gl_C_RESTRICT, now that we assume Autoconf 2.59 or later.
2497         * m4/strtok_r.m4 (gl_FUNC_STRTOK_R): Likewise.
2498         * m4/time_r.m4 (gl_TIME_R): Likewise.
2499
2500 2006-08-09  Karl Berry  <karl@gnu.org>
2501
2502         * config/srclist.txt: no more gettext-tools, per Bruno.
2503
2504 2006-08-08  Eric Blake  <ebb9@byu.net>
2505
2506         * modules/verror: New module.
2507         * MODULES.html.sh: Document it.
2508
2509 2006-08-08  Eric Blake  <ebb9@byu.net>
2510
2511         * lib/verror.h, verror.c: New files.
2512
2513 2006-08-08  Eric Blake  <ebb9@byu.net>
2514
2515         * lib/verror.c (verror_at_line): Work around glibc bug 2997, so that
2516         verror_at_line output complies with GNU Coding Standards even when
2517         file is NULL.
2518
2519 2006-08-07  Bruno Haible  <bruno@clisp.org>
2520
2521         * lib/allocsa.h (sa_alignof) [_AIX]: Also consider 'long long' in newer
2522         versions of AIX.
2523         Reported by Ralf Wildenhues.
2524
2525 2006-08-07  Bruno Haible  <bruno@clisp.org>
2526
2527         * gnulib-tool (func_create_testdir): Wrap the set of autoconf snippets
2528         in an AC_DEFUN. Needed so that the autoconf snippets can use
2529         AC_REQUIRE.
2530
2531 2006-08-06  Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
2532
2533         * gnulib-tool (func_emit_lib_Makefile_am, func_emit_tests_Makefile_am):
2534         Initialize pkgdata_DATA.
2535         * modules/javaversion (Makefile.am): Add to pkgdata_DATA, rather than
2536         overriding it.
2537
2538 2006-08-06  Eric Blake  <ebb9@byu.net>
2539
2540         * lib/error.h: Fold in some upstream changes from glibc.
2541         * lib/error.c: Likewise.
2542
2543 2006-08-04  Bruno Haible  <bruno@clisp.org>
2544
2545         * gnulib-tool (func_emit_lib_Makefile_am, func_emit_tests_Makefile_am):
2546         Make the mostlyclean-local rule depend on mostlyclean-generic.
2547         Reported by Jim Meyering. Solution suggested by Ralf Wildenhues.
2548
2549 2006-07-31  Bruno Haible  <bruno@clisp.org>
2550
2551         * m4/localcharset.m4 (gl_LOCALCHARSET): Remove tests for <stddef.h>,
2552         <stdlib.h>, <string.h>.
2553
2554 2006-07-30  Bruno Haible  <bruno@clisp.org>
2555
2556         * modules/readlink (License): Change to LGPL.
2557
2558 2006-07-30  Bruno Haible  <bruno@clisp.org>
2559
2560         * modules/javaversion (Makefile.am): Distribute javaversion.java and
2561         javaversion.class. Also install javaversion.class in $(pkgdatadir) and
2562         set PKGDATADIR to point to it.
2563
2564 2006-07-30  Bruno Haible  <bruno@clisp.org>
2565
2566         * modules/csharpexec (configure.ac): Comment out macro invocation.
2567         * modules/javaexec (configure.ac): Likewise.
2568         * modules/javacomp-script (configure.ac): Likewise.
2569
2570         * modules/csharpcomp-script (configure.ac): Use AC_REQUIRE.
2571
2572 2006-07-30  Bruno Haible  <bruno@clisp.org>
2573
2574         * modules/clean-temp (Depends-on): Add linkedhash-list, remove
2575         linked-list.
2576
2577 2006-07-30  Bruno Haible  <bruno@clisp.org>
2578
2579         * m4/wcwidth.m4 (gl_FUNC_WCWIDTH): Assume <string.h> exists.
2580
2581 2006-07-30  Bruno Haible  <bruno@clisp.org>
2582
2583         * gnulib-tool (func_emit_lib_Makefile_am, func_emit_tests_Makefile_am):
2584         Initialize MOSTLYCLEANFILES to core and *.stackdump, so that core dumps
2585         get removed.
2586
2587 2006-07-29  Bruno Haible  <bruno@clisp.org>
2588
2589         Make it possible for gnulib-tool to work with locally modified or
2590         augmented gnulib repositories.
2591         * gnulib-tool (func_usage): Document --local-dir option.
2592         (local_gnulib_dir): New variable.
2593         Handle --local-dir option.
2594         (func_lookup_file): New function.
2595         (func_all_modules, func_verify_module): Look also in $local_gnulib_dir.
2596         (func_get_description, func_get_filelist, func_get_description,
2597         func_get_filelist, func_get_dependencies, func_get_autoconf_snippet,
2598         func_get_automake_snippet, func_get_include_directive,
2599         func_get_license, func_get_maintainer): Use func_lookup_file.
2600         (func_import, func_create_testdir): Use func_lookup_file.
2601
2602 2006-07-29  Bruno Haible  <bruno@clisp.org>
2603
2604         * modules/setenv (Depends-on): Add unistd.
2605
2606 2006-07-29  Bruno Haible  <bruno@clisp.org>
2607
2608         * lib/setenv.c: Undo unintended modification done on 2006-02-27.
2609
2610 2006-07-29  Bruno Haible  <bruno@clisp.org>
2611
2612         * lib/localcharset.c: Assume <stddef.h>, <stdlib.h>, <string.h> exist.
2613
2614 2006-07-29  Bruno Haible  <bruno@clisp.org>
2615
2616         * gnulib-tool (import, update): If there is no Makefile.am, look at
2617         aclocal.m4, instead of bailing out.
2618
2619 2006-07-29  Bruno Haible  <bruno@clisp.org>
2620
2621         * gnulib-tool (func_usage): Revert most of the 2006-07-15 change.
2622         Categorize the options by when they are useful.
2623
2624 2006-07-29  Bruno Haible  <bruno@clisp.org>
2625
2626         * gnulib-tool (func_usage): Document option --no-libtool.
2627         Handle option --no-libtool.
2628         (func_emit_lib_Makefile_am, func_emit_tests_Makefile_am): Update
2629         for changed semantics of $libtool variable.
2630         (func_import): Likewise. If libtool is not used, show this through
2631         an option --no-libtool.
2632         (func_create_testdir): Update.
2633
2634 2006-07-29  Bruno Haible  <bruno@clisp.org>
2635
2636         * gnulib-tool (func_import): Extend error message about missing
2637         --doc-base.
2638
2639 2006-07-29  Bruno Haible  <bruno@clisp.org>
2640
2641         * gnulib-tool (func_import): Don't create the $docbase directory if
2642         there is no file to store there.
2643
2644 2006-07-29  Bruno Haible  <bruno@clisp.org>
2645
2646         * gnulib-tool (autoconf_minversion): If a --dir option is given and
2647         relevant, look for configure.ac there, not in the current directory.
2648         Also use a simple search for AC_PREREQ, not "autoconf --trace".
2649
2650 2006-07-29  Bruno Haible  <bruno@clisp.org>
2651
2652         * gnulib-tool (SORT): New variable.
2653         (func_usage): Undocument --assume-autoconf option.
2654         Remove --assume-autoconf option handling.
2655         (autoconf_minversion): Determine from the contents of configure.ac.
2656         (func_import): Remove autoconf_minversion handling.
2657         Suggested by Eric Blake.
2658
2659 2006-07-29  Bruno Haible  <bruno@clisp.org>
2660
2661         * doc/gnulib-tool.texi (gl_LIBTOOL): Mention --no-libtool option.
2662
2663 2006-07-29  Bruno Haible  <bruno@clisp.org>
2664
2665         * config/srclist.txt (*setenv.[ch]): Remove rules.
2666
2667 2006-07-28  Yoann Vandoorselaere <yoann.v@prelude-ids.com>
2668
2669         * m4/inet_pton.m4, inet_ntop.m4: Check for netinet/in.h too.
2670
2671 2006-07-28  Yoann Vandoorselaere <yoann.v@prelude-ids.com>
2672
2673         * lib/inet_ntop.h, inet_pton.h: Need to include netinet/in.h before
2674         arpa/inet.h.
2675
2676 2006-07-28  Simon Josefsson  <jas@extundo.com>
2677
2678         * modules/inet_ntop (Depends-on): Depend on arpa_inet.
2679         * modules/inet_pton (Depends-on): Likewise.
2680
2681 2006-07-28  Simon Josefsson  <jas@extundo.com>
2682
2683         * m4/netinet_in_h.m4: New file.
2684
2685 2006-07-28  Simon Josefsson  <jas@extundo.com>
2686
2687         * lib/inet_ntop.h, inet_pton.h: No need to guard netinet/in.h
2688         #include's.
2689
2690 2006-07-28  Simon Josefsson  <jas@extundo.com>
2691
2692         * lib/inet_ntop.h, inet_pton.h: No need to guard arpa/inet.h
2693         #include's.
2694
2695 2006-07-28  Paul Eggert  <eggert@cs.ucla.edu>
2696
2697         * lib/modechange.c (mode_compile): Numeric modes now affect setuid and
2698         setgid on directories only if they set these bits.
2699         * lib/modechange.h: Remove obsolete comment about masks.
2700
2701 2006-07-28  Eric Blake  <ebb9@byu.net>
2702
2703         * lib/regex_internal.h (struct re_dfa_t) [!_LIBC]: Avoid invalid C89
2704         macro expansion.
2705
2706 2006-07-28  Bruno Haible <bruno@clisp.org>
2707
2708         * lib/inet_ntop.h, inet_pton.h: Use #if HAVE* instead of #ifdef HAVE*.
2709
2710 2006-07-28  Bruno Haible  <bruno@clisp.org>
2711
2712         * m4/mbchar.m4 (gl_MBCHAR): Also test for iswcntrl.
2713
2714 2006-07-28  Bruno Haible  <bruno@clisp.org>
2715
2716         * lib/mbchar.h (iswalnum, iswalpha, iswblank, iswcntrl, iswdigit,
2717         iswgraph, iswlower, iswprint, iswpunct, iswspace, iswupper, iswxdigit):
2718         Define fallbacks.
2719         Avoids link error on FreeBSD 4.x.
2720         Reported by Yoann Vandoorselaere <yoann.v@prelude-ids.com>.
2721
2722         * lib/wcwidth.h (iswprint): Assume an ASCII compatible wide character
2723         encoding.
2724         * lib/mbswidth.c (iswcntrl): Likewise.
2725
2726 2006-07-27  Bruno Haible  <bruno@clisp.org>
2727
2728         * m4/stdint.m4 (gl_STDINT_H): Define __STDC_CONSTANT_MACROS during the
2729         test.
2730
2731 2006-07-27  Bruno Haible  <bruno@clisp.org>
2732
2733         * lib/stdint_.h (INT*_C, UINT*_C) [C++]: Define these if
2734         __STDC_CONSTANT_MACROS is defined, not if __STDC_LIMIT_MACROS is
2735         defined.
2736
2737 2006-07-26  Eric Blake  <ebb9@byu.net>
2738
2739         * m4/unistd-safer.m4 (gl_UNISTD_SAFER): Check for missing pipe.
2740
2741 2006-07-26  Eric Blake  <ebb9@byu.net>
2742
2743         * lib/mkstemp-safer.c [! HAVE_MKSTEMP]: Add prototype for platforms
2744         like mingw that lack mkstemp.
2745         * lib/pipe-safer.c (pipe_safer) [!HAVE_FUNC_PIPE]: Provide fallback to
2746         avoid compilation warning on mingw.
2747
2748 2006-07-26  Bruno Haible  <bruno@clisp.org>
2749
2750         * m4/stdint.m4 (gl_STDINT_H): Also verify the existence of the macros
2751         INT*_MIN, INT_LEAST*_MAX, INT_LEAST*_MIN, UINT_LEAST*_MAX,
2752         INT_FAST*_MIN, INTPTR_MIN.
2753
2754 2006-07-25  Bruno Haible  <bruno@clisp.org>
2755
2756         * modules/version-etc (Depends-on): Add stdarg.
2757
2758 2006-07-25  Bruno Haible  <bruno@clisp.org>
2759
2760         * m4/stdint.m4 (gl_INTEGER_TYPE_SUFFIX): Avoid 'eval' in front of
2761         complex commands.
2762
2763 2006-07-25  Bruno Haible  <bruno@clisp.org>
2764
2765         * lib/version-etc.c (version_etc_va): Use va_copy, assumed to be
2766         defined in <stdarg.h> or config.h.
2767
2768 2006-07-24  Paul Eggert  <eggert@cs.ucla.edu>
2769
2770         * m4/stdio-safer.m4 (gl_FOPEN_SAFER, gl_TMPFILE_SAFER): New macros.
2771         (gl_STDIO_SAFER): Remove.
2772
2773 2006-07-24  Paul Eggert  <eggert@cs.ucla.edu>
2774
2775         * MODULES.html.sh (File stream based Input/Output):
2776         Add fopen-safer, tmpfile-safer; remove stdio-safer.
2777         * modules/getusershell (Depends-on): Change stdio-safer to fopen-safer.
2778         * modules/fopen-safer, modules/tmpfile-safer: New files.
2779         * modules/stdio-safer: Remove.
2780
2781 2006-07-24  Bruno Haible  <bruno@clisp.org>
2782
2783         * modules/tmpdir: New file.
2784         * MODULES.html.sh (File system functions): Add it.
2785
2786 2006-07-24  Bruno Haible  <bruno@clisp.org>
2787
2788         * modules/javacomp (Depends-on): Add unistd, javaversion, binary-io,
2789         getline, pathname, fwriteerror, clean-temp, xvasprintf, strstr.
2790
2791 2006-07-24  Bruno Haible  <bruno@clisp.org>
2792
2793         * modules/clean-temp: New file.
2794
2795 2006-07-24  Bruno Haible  <bruno@clisp.org>
2796
2797         * m4/tmpdir.m4: New file, from GNU gettext.
2798
2799 2006-07-24  Bruno Haible  <bruno@clisp.org>
2800
2801         * lib/tmpdir.h: New file, from GNU gettext.
2802         * lib/tmpdir.c: New file, from GNU gettext.
2803
2804 2006-07-24  Bruno Haible  <bruno@clisp.org>
2805
2806         * lib/clean-temp.h: New file, from GNU gettext.
2807         * lib/clean-temp.c: New file, from GNU gettext.
2808
2809 2006-07-23  Eric Blake  <ebb9@byu.net>
2810
2811         * modules/stdio-safer (Files): Add tmpfile-safer.c.
2812         (Depends-on): Add binary-io.
2813
2814 2006-07-23  Eric Blake  <ebb9@byu.net>
2815
2816         * m4/stdio-safer.m4 (gl_STDIO_SAFER): Add tmpfile-safer.c.
2817
2818 2006-07-23  Eric Blake  <ebb9@byu.net>
2819
2820         * lib/tmpfile-safer.c: New file.
2821         * lib/stdio-safer.h (fopen_safer): Add prototype.
2822         * lib/stdio--.h (tmpfile): Make safer.
2823
2824 2006-07-23  Bruno Haible  <bruno@clisp.org>
2825
2826         * lib/gl_anylinked_list2.h (ASYNCSAFE): New macro.
2827         (gl_linked_add_first, gl_linked_add_last, gl_linked_add_before,
2828         gl_linked_add_after, gl_linked_add_at, gl_linked_remove_node,
2829         gl_linked_remove_at): Use it.
2830
2831 2006-07-22  Yoann Vandoorselaere <yoann.v@prelude-ids.com>
2832         and Simon Josefsson <jas@extundo.com>
2833
2834         * lib/getaddrinfo.h (AI_PASSIVE): Make sure it is defined.
2835
2836         * lib/getaddrinfo.c (getaddrinfo): Support AI_PASSIVE.
2837
2838 2006-07-22  Paul Eggert  <eggert@cs.ucla.edu>
2839
2840         * modules/close-stream: New file.
2841         * modules/closeout (Description): Make it clear that it exits
2842         with a diagnostic on error.
2843         (Depends-on): Add close-stream.  Remove fpending, stdbool.
2844         * MODULES.html.sh (File stream based Input/Output): Add close-stream.
2845
2846 2006-07-22  Paul Eggert  <eggert@cs.ucla.edu>
2847
2848         * m4/close-stream.m4: New file.
2849
2850 2006-07-22  Paul Eggert  <eggert@cs.ucla.edu>
2851
2852         * lib/close-stream.c, close-stream.h: New files.
2853
2854 2006-07-22  Bruno Haible  <bruno@clisp.org>
2855
2856         Merge from GNU gettext 0.15.
2857
2858         2006-05-01  Bruno Haible  <bruno@clisp.org>
2859
2860                 * build-aux/javacomp.sh.in: Update for changed javacomp.m4.
2861
2862         2006-07-22  Bruno Haible  <bruno@clisp.org>
2863
2864                 * modules/javaversion: New file.
2865                 * MODULES.html.sh (Java): Add javaversion.
2866
2867         2006-03-12  Bruno Haible  <bruno@clisp.org>
2868
2869                 * build-aux/javaexec.sh.in: Update for changed javaexec.m4.
2870
2871         2005-12-04  Bruno Haible  <bruno@clisp.org>
2872
2873                 * build-aux/csharpexec.sh.in: Add support for 'clix' launcher
2874                 (untested).
2875
2876         2006-06-21  Bruno Haible  <bruno@clisp.org>
2877
2878                 Avoid warnings from recent versions of mcs.
2879                 * build-aux/csharpcomp.sh.in (options_mcs): Don't use options
2880                 -o, -L, -r any more. Use options documented since mcs-1.0
2881                 instead. Similarly for -g.
2882
2883         2005-12-04  Bruno Haible  <bruno@clisp.org>
2884
2885                 * build-aux/csharpcomp.sh.in: Suffix for resources is
2886                 .resources, not .resource.
2887
2888         2005-07-09  Bruno Haible  <bruno@clisp.org>
2889
2890                 * build-aux/csharpcomp.sh.in (options_csc): For -l option,
2891                 add a .dll suffix.
2892                 Reported by Mark Junker <mjscod@gmx.de>.
2893
2894         2006-07-22  Bruno Haible  <bruno@clisp.org>
2895
2896                 * modules/gettext: Upgrade to gettext-0.15.
2897                 (Files): Remove m4/isc-posix.m4. Add m4/lock.m4,
2898                 m4/visibility.m4.
2899                 Replace m4/inttypes.m4 with m4/inttypes-h.m4.
2900
2901 2006-07-22  Bruno Haible  <bruno@clisp.org>
2902
2903         Merge from GNU gettext 0.15.
2904
2905         2006-03-25  Bruno Haible  <bruno@clisp.org>
2906
2907                 * lib-link.m4 (AC_LIB_LINKFLAGS_FROM_LIBS): New macro.
2908
2909         2006-07-21  Bruno Haible  <bruno@clisp.org>
2910
2911                 * javacomp.m4 (gt_JAVACOMP): Convert target_version "null" to
2912                 "1.1".
2913
2914         2006-05-09  Bruno Haible  <bruno@clisp.org>
2915
2916                 * javacomp.m4 (gt_JAVACOMP): On Cygwin, set
2917                 CLASSPATH_SEPARATOR to a semicolon. Use CLASSPATH_SEPARATOR
2918                 for the conftestver execution.
2919
2920         2006-05-01  Bruno Haible  <bruno@clisp.org>
2921
2922                 * javacomp.m4 (gt_JAVACOMP): Accept a source-version and an
2923                 optional target-version argument. Verify that the compiler
2924                 groks source of the specified source-version, or add -source
2925                 option as necessary. Verify that the compiler produces
2926                 bytecode in the specified target-version, or add -target and
2927                 -source options as necessary. Make the result of the test
2928                 available as variable CONF_JAVAC. Also log error output in
2929                 config.log.
2930
2931         2006-03-11  Bruno Haible  <bruno@clisp.org>
2932
2933                 * javacomp.m4 (gt_JAVACOMP): Treat gcj-4.x like gcj-3.x.
2934
2935         2006-05-09  Bruno Haible  <bruno@clisp.org>
2936
2937                 * javaexec.m4 (gt_JAVAEXEC): On Cygwin, set
2938                 CLASSPATH_SEPARATOR to a semicolon.
2939
2940         2006-03-12  Bruno Haible  <bruno@clisp.org>
2941
2942                 * javaexec.m4 (gt_JAVAEXEC): Make the result of the test
2943                 available as variable CONF_JAVA, for subsequent autoconf
2944                 tests. Also log error output in config.log.
2945
2946         2006-07-19  Bruno Haible  <bruno@clisp.org>
2947
2948                 * getline.m4 (AM_FUNC_GETLINE): When cross-compiling, assume
2949                 that getline works on glibc2 systems. Needed to avoid trouble
2950                 in relocatable.c.
2951                 Reported by Nils Magnus Larsgard <nmlarsgaard@atmel.no>.
2952
2953         2005-12-04  Bruno Haible  <bruno@clisp.org>
2954
2955                 * csharpexec.m4 (gt_CSHARPEXEC): Add support for 'clix'
2956                 launcher (untested).
2957
2958         2005-12-04  Bruno Haible  <bruno@clisp.org>
2959
2960                 * csharpcomp.m4 (gt_CSHARPCOMP): Also set CSHARPCOMPFLAGS.
2961
2962         2006-07-22  Bruno Haible  <bruno@clisp.org>
2963
2964                 * gettext.m4: Update from GNU gettext-0.15.
2965                 * nls.m4: Likewise.
2966                 * po.m4: Likewise.
2967                 * inttypes-pri.m4: Likewise.
2968                 * inttypes-h.m4: Renamed from inttypes.m4.
2969                 (gl_HEADER_INTTYPES_H): Renamed from gt_HEADER_INTTYPES_H.
2970
2971 2006-07-22  Bruno Haible  <bruno@clisp.org>
2972
2973         Merge from GNU gettext 0.15.
2974
2975         2005-07-05  Bruno Haible  <bruno@clisp.org>
2976
2977                 * printf-args.c (printf_fetchargs): Work around broken
2978                 definition of wint_t on mingw.
2979
2980         2005-02-12  Bruno Haible  <bruno@clisp.org>
2981
2982                 * xallocsa.h: Add extern "C" for C++.
2983
2984         2006-05-17  Bruno Haible  <bruno@clisp.org>
2985
2986                 Cygwin portability.
2987                 * progreloc.c (WIN32_NATIVE): Renamed from WIN32.
2988
2989         2006-04-30  Bruno Haible  <bruno@clisp.org>
2990
2991                 * progreloc.c: Include <mach-o/dyld.h> if available.
2992                 (find_executable): Use _NSGetExecutablePath when possible.
2993
2994         2006-05-06  Charles Wilson  <cygwin@cwilson.fastmail.fm>
2995
2996                 * progreloc.c (maybe_executable) [CYGWIN]: Use the access()
2997                 function.
2998
2999         2005-12-29  Bruno Haible  <bruno@clisp.org>
3000
3001                 * progreloc.c (set_program_name_and_installdir): Fix
3002                 compilation error.
3003
3004         2005-12-04  Bruno Haible  <bruno@clisp.org>
3005
3006                 Cygwin portability.
3007                 * progreloc.c: Include <windows.h> also on Cygwin.
3008                 (find_executable): Add support for Cygwin.
3009                 (set_program_name_and_installdir): Handle also platforms with
3010                 nonempty EXEEXT.
3011
3012         2006-07-11  Bruno Haible  <bruno@clisp.org>
3013
3014                 * javacomp.c: Fix a comment.
3015                 Reported by Jim Meyering.
3016
3017         2006-04-30  Bruno Haible  <bruno@clisp.org>
3018
3019                 * javacomp.h (compile_java_class): Add source_version,
3020                 target_version arguments.
3021                 * javacomp.c: Rewritten to choose only a compiler that
3022                 respects the specified source_version and target_version.
3023
3024         2006-06-27  Bruno Haible  <bruno@clisp.org>
3025
3026                 Assume correct S_ISDIR macro.
3027                 * mkdtemp.c: Remove test of STAT_MACROS_BROKEN.
3028
3029         2006-07-22  Bruno Haible  <bruno@clisp.org>
3030
3031                 * javaversion.h: New file, from GNU gettext.
3032                 * javaversion.c: New file, from GNU gettext.
3033                 * javaversion.java: New file, from GNU gettext.
3034                 * javaversion.class: New file, from GNU gettext.
3035
3036         2006-05-17  Bruno Haible  <bruno@clisp.org>
3037
3038                 Cygwin portability.
3039                 * javaexec.c (execute_java_class): Test for jview program
3040                 also on Cygwin.
3041
3042         2006-04-09  Bruno Haible  <bruno@clisp.org>
3043
3044                 * fatal-signal.c: Don't include string.h.
3045                 (at_fatal_signal): Use a copying loop instead of memcpy.
3046
3047         2005-12-04  Bruno Haible  <bruno@clisp.org>
3048
3049                 * csharpexec.c: Add support for 'clix' launcher (untested).
3050                 (execute_csharp_using_sscli): New function.
3051                 (execute_csharp_program): Call it.
3052
3053         2006-06-21  Bruno Haible  <bruno@clisp.org>
3054
3055                 Avoid warnings from recent versions of mcs.
3056                 * csharpcomp.c (compile_csharp_using_mono): Don't use options
3057                 -o, -L, -r any more. Use options documented since mcs-1.0
3058                 instead. Similarly for -g.
3059
3060         2005-07-09  Bruno Haible  <bruno@clisp.org>
3061
3062                 * csharpcomp.c (compile_csharp_using_sscli): For -l option,
3063                 add a .dll suffix.
3064                 Reported by Mark Junker <mjscod@gmx.de>.
3065
3066         2006-06-17  Bruno Haible  <bruno@clisp.org>
3067
3068                 * config.charset: Update for NetBSD 3.0.
3069
3070         2006-05-17  Bruno Haible  <bruno@clisp.org>
3071
3072                 Cygwin portability.
3073                 * localcharset.c (WIN32_NATIVE): Renamed from WIN32.
3074
3075         2006-05-16  Bruno Haible  <bruno@clisp.org>
3076
3077                 * localcharset.c [CYGWIN]: Include <windows.h>.
3078                 (get_charset_aliases): For Cygwin, return the same CPxxx
3079                 aliases list as under WIN32.
3080                 (locale_charset) [CYGWIN]: Try to retrieve the encoding from
3081                 the environment variables. Fall back to GetACP().
3082
3083         2006-04-05  Bruno Haible  <bruno@clisp.org>
3084
3085                 * config.charset: Update Juan Manuel Guerrero's address.
3086
3087         2005-02-12  Bruno Haible  <bruno@clisp.org>
3088
3089                 * allocsa.h: Add extern "C" for C++.
3090
3091         2005-02-10  Bruno Haible  <bruno@clisp.org>
3092
3093                 * allocsa.h (sa_alignof): Define differently with AIX xlc, to
3094                 avoid a bug of this compiler on AIX 3.2.5 dealing with enums.
3095
3096         2006-07-22  Bruno Haible  <bruno@clisp.org>
3097
3098                 * gettext.h: Update to GNU gettext-0.15.
3099
3100 2006-07-22  Bruno Haible  <bruno@clisp.org>
3101
3102         * config/srclist.txt: Resync printf-args.c, vasnprintf.c,
3103         localcharset.c, mkdtemp.c, config.rpath, lib-ld.m4, lib-link.m4,
3104         lib-prefix.m4, longdouble.m4, ssize_t.m4.
3105
3106 2006-07-21  Eric Blake  <ebb9@byu.net>
3107
3108         * modules/stdlib-safer: New file.
3109         * MODULES.html.sh (File stream based Input/Output): Add
3110         stdlib-safer.
3111
3112 2006-07-21  Eric Blake  <ebb9@byu.net>
3113
3114         * lib/stdlib-safer.h: New file from coreutils, required by
3115         stdlib--.h.
3116
3117 2006-07-20  Paul Eggert  <eggert@cs.ucla.edu>
3118
3119         * gnulib-tool (func_usage): Document --assume-autoconf='latest-stable'.
3120
3121 2006-07-20  Bruno Haible  <bruno@clisp.org>
3122
3123         * gnulib-tool: Recognize new option --assume-autoconf.
3124         (autoconf_minversion): New variable.
3125         (func_get_filelist): Use it to decide whether to add onceonly_2_57.m4.
3126
3127 2006-07-20  Bruno Haible  <bruno@clisp.org>
3128
3129         * MODULES.html.sh (func_all_modules): Add a missing func_begin_table.
3130
3131 2006-07-19  Derek R. Price  <derek@ximbiot.com>
3132
3133         * lib/getaddrinfo.h: Don't define unimplemented AI_* flags.
3134         Reindent and repaginate.
3135
3136 2006-07-19  Derek Price  <derek@ximbiot.com>
3137
3138         * doc/gnulib.texi (Libtool and Windows):  Eliminate passive voice.
3139         Correct grammar.
3140
3141 2006-07-17  Bruno Haible  <bruno@clisp.org>
3142
3143         * modules/list: New file.
3144         * modules/array-list: New file.
3145         * modules/carray-list, modules/carray-list-tests: New files.
3146         * modules/linked-list, modules/linked-list-tests: New files.
3147         * modules/avltree-list, modules/avltree-list-tests: New files.
3148         * modules/rbtree-list, modules/rbtree-list-tests: New files.
3149         * modules/linkedhash-list, modules/linkedhash-list-tests: New files.
3150         * modules/avltreehash-list, modules/avltreehash-list-tests: New files.
3151         * modules/rbtreehash-list, modules/rbtreehash-list-tests: New files.
3152         * modules/oset: New file.
3153         * modules/array-oset: New file.
3154         * modules/avltree-oset, modules/avltree-oset-tests: New files.
3155         * modules/rbtree-oset, rbtree-oset-tests: New files.
3156         * tests/test-carray_list.c: New file.
3157         * tests/test-linked_list.c: New file.
3158         * tests/test-avltree_list.c: New file.
3159         * tests/test-rbtree_list.c: New file.
3160         * tests/test-linkedhash_list.c: New file.
3161         * tests/test-avltreehash_list.c: New file.
3162         * tests/test-rbtreehash_list.c: New file.
3163         * tests/test-avltree_oset.c: New file.
3164         * tests/test-rbtree_oset.c: New file.
3165         * MODULES.html.sh (Container data structures): New section.
3166
3167 2006-07-17  Bruno Haible  <bruno@clisp.org>
3168
3169         * m4/gl_list.m4: New file.
3170
3171 2006-07-17  Bruno Haible  <bruno@clisp.org>
3172
3173         * lib/gl_list.h: New file.
3174         * lib/gl_list.c: New file.
3175         * lib/gl_array_list.h: New file.
3176         * lib/gl_array_list.c: New file.
3177         * lib/gl_carray_list.h: New file.
3178         * lib/gl_carray_list.c: New file.
3179         * lib/gl_linked_list.h: New file.
3180         * lib/gl_linked_list.c: New file.
3181         * lib/gl_anylinked_list1.h: New file.
3182         * lib/gl_anylinked_list2.h: New file.
3183         * lib/gl_avltree_list.h: New file.
3184         * lib/gl_avltree_list.c: New file.
3185         * lib/gl_anyavltree_list1.h: New file.
3186         * lib/gl_anyavltree_list2.h: New file.
3187         * lib/gl_rbtree_list.h: New file.
3188         * lib/gl_rbtree_list.c: New file.
3189         * lib/gl_anyrbtree_list1.h: New file.
3190         * lib/gl_anyrbtree_list2.h: New file.
3191         * lib/gl_anytree_list1.h: New file.
3192         * lib/gl_anytree_list2.h: New file.
3193         * lib/gl_linkedhash_list.h: New file.
3194         * lib/gl_linkedhash_list.c: New file.
3195         * lib/gl_anyhash_list1.h: New file.
3196         * lib/gl_anyhash_list2.h: New file.
3197         * lib/gl_avltreehash_list.h: New file.
3198         * lib/gl_avltreehash_list.c: New file.
3199         * lib/gl_rbtreehash_list.h: New file.
3200         * lib/gl_rbtreehash_list.c: New file.
3201         * lib/gl_anytreehash_list1.h: New file.
3202         * lib/gl_anytreehash_list2.h: New file.
3203
3204         * lib/gl_oset.h: New file.
3205         * lib/gl_oset.c: New file.
3206         * lib/gl_array_oset.h: New file.
3207         * lib/gl_array_oset.c: New file.
3208         * lib/gl_avltree_oset.h: New file.
3209         * lib/gl_avltree_oset.c: New file.
3210         * lib/gl_rbtree_oset.h: New file.
3211         * lib/gl_rbtree_oset.c: New file.
3212         * lib/gl_anytree_oset.h: New file.
3213
3214 2006-07-16  Paul Eggert  <eggert@cs.ucla.edu>
3215
3216         * m4/mkancesdirs.m4: New file.
3217         * m4/mkdir-p.m4 (gl_MKDIR_PARENTS): Mention dirchownmod.c,
3218         dirchownmod.h.  Don't require AC_FUNC_ALLOCA, gl_AFS, gl_CHDIR_SAFER;
3219         no longer needed.  Require gl_FUNC_LCHOWN, since dirchownmod.c needs
3220         it.
3221
3222 2006-07-16  Paul Eggert  <eggert@cs.ucla.edu>
3223
3224         * lib/dirchownmod.c, dirchownmod.h, mkancesdirs.c, mkancesdirs.h:
3225         New files.
3226         * lib/mkdir-p.c: Don't include alloca.h, stdio.h, sys/types.h,
3227         unistd.h, string.h, chdir-safer.h, dirname.h, lchmod.h, lchown.h,
3228         save-cwd.h.  Instead, include dirchownmod.h and mkancesdirs.h.
3229         (make_dir_parents): New args MAKE_ANCESTOR, OPTIONS, ANNOUNCE,
3230         MODE_BITS.  Remove options VERBOSE_FMT_STRING, CWD_ERRNO.  All
3231         callers changed.  Revamp internals significantly, by not
3232         attempting to create directories that are temporarily more
3233         permissive than the final results.  Do not attempt to use
3234         save_cwd/restore_cwd; it isn't worth it for mkdir and install.
3235         This removes some race conditions, fixes some bugs, and simplifies
3236         things.  Use new dirchownmod function to do owner and mode changes.
3237         * lib/mkdir-p.h: Likewise.
3238         * lib/modechange.c (octal_to_mode): New function.
3239         (struct mode_change): New member mentioned.
3240         (make_node_op_equals): New arg mentioned.  All callers changed.
3241         (mode_compile): Keep track of which mode bits the user has explicitly
3242         mentioned.
3243         (mode_adjust): New arg DIR, so that we implement the X op correctly.
3244         New arg PMODE_BITS, to keep track of which mode bits the user
3245         mentioned; it treats S_ISUID and S_ISGID speciall.
3246         All callers changed.
3247         * lib/modechange.h: Likewise.
3248
3249 2006-07-16  Paul Eggert  <eggert@cs.ucla.edu>
3250
3251         * MODULES.html.sh: Add mkancestors.
3252         * modules/mkancesdirs: New module.
3253         * modules/mkdir-p (Files): Remove lib/chdir-safer.c, lib/chdir-safer.h,
3254         lib/same-inode.h, m4/afs.m4, m4/chdir-safer.m4.
3255         The chdir-safer and afs files are now orphans; I'll remove them
3256         unless someone speaks up.
3257         Add lib/dirchownmod.c, lib/dirchownmod.h.
3258         (Depends-on): Remove alloca, chown, save-cwd, dirname.
3259         Add lchown, mkancesdirs.
3260         (Maintainer): Add self.
3261
3262 2006-07-15  Karl Berry  <karl@gnu.org>
3263
3264         * gnulib-tool: help message wording/arrangement.
3265
3266 2006-07-14  Simon Josefsson  <jas@extundo.com>
3267
3268         * doc/gnulib.texi (Libtool and Windows): New section.
3269
3270 2006-07-12  Simon Josefsson  <jas@extundo.com>
3271
3272         * modules/gendocs (License): Fix license, approved by Karl.
3273
3274 2006-07-12  Eric Blake  <ebb9@byu.net>
3275
3276         * MODULES.html.sh: Add gendocs.
3277
3278 2006-07-11  Eric Blake  <ebb9@byu.net>
3279
3280         * modules/fdl: New module, to install doc/fdl.texi.
3281         * MODULES.html.sh: Add new section for documentation modules.
3282         * gnulib-tool: Avoid space-tab.
3283         (--doc-base): New option, to manage files from doc.
3284
3285 2006-07-11  Eric Blake  <ebb9@byu.net>
3286
3287         * m4/absolute-header.m4: Fix comments to match recent change.
3288
3289 2006-07-11  Eric Blake  <ebb9@byu.net>
3290
3291         * gnulib-tool: List --doc-base before --tests-base.
3292
3293 2006-07-11  Derek R. Price  <derek@ximbiot.com>
3294
3295         * lib/glob.c: s/NAMLEN/_D_EXACT_NAMLEN/.
3296
3297 2006-07-11  Bruno Haible  <bruno@clisp.org>
3298
3299         * README: Mention where to put documentation.
3300
3301 2006-07-10  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
3302
3303         * doc/functions.texi, gnulib-tool.texi, gnulib.texi: Fix some typos.
3304
3305 2006-07-10  Paul Eggert  <eggert@cs.ucla.edu>
3306
3307         * m4/sys_stat_h.m4 (gl_HEADER_SYS_STAT_H): Like today's change
3308         to stdint.m4.
3309
3310 2006-07-10  Paul Eggert  <eggert@cs.ucla.edu>
3311
3312         * m4/stdint.m4 (gl_STDINT_H): Like yesterday's change to
3313         absolute-header.m4.  Also, set ABSOLUTE_STDINT_H to a string
3314         "no/such/file/stdint.h" when there is no such file, so that
3315         the resulting C code can be parsed by dodgy compilers.
3316         Problems reported by Bob Proulx.
3317
3318 2006-07-10  Derek R. Price  <derek@ximbiot.com>
3319
3320         * lib/backupfile.c, dirfd.h, fts.c, getcwd.c, glob.c, glob_.h:
3321         Ignore the obsolescent !HAVE_DIRENT_H case.  Consolidate NAMLEN
3322         macros into the GNU _D_EXACT_NAMLEN.
3323         * lib/savedir.c:  Likewise.
3324         (savedirstream): Use _D_EXACT_NAMLEN in preference to strlen.
3325
3326 2006-07-10  Derek R. Price  <derek@ximbiot.com>
3327         and Paul Eggert  <eggert@cs.ucla.edu>
3328
3329         * m4/backupfile.m4, d-ino.m4, d-type.m4, dirfd.m4, fts.m4, getcwd.m4:
3330         * m4/savedir.m4:
3331         Ignore the obsolescent !HAVE_DIRENT_H case.  Consolidate NAMLEN
3332         macros into the GNU _D_EXACT_NAMLEN.
3333
3334 2006-07-09  Paul Eggert  <eggert@cs.ucla.edu>
3335
3336         * m4/absolute-header.m4 (gl_ABSOLUTE_HEADER): Use "" rather than <>
3337         around the absolute name, to work around a problem with the HP-UX
3338         11.23 native C compiler, reported by Bob Proulx.
3339
3340 2006-07-09  Paul Eggert  <eggert@cs.ucla.edu>
3341
3342         * doc/maintain.texi, make-stds.texi: Sync from
3343         <http://savannah.gnu.org/projects/gnustandards>.
3344
3345 2006-07-09  Paul Eggert  <eggert@cs.ucla.edu>
3346
3347         * build-aux/depcomp, build-aux/install-sh: Sync from Automake.
3348
3349 2006-07-09  Jim Meyering  <jim@meyering.net>
3350
3351         * m4/glob.m4: Remove a doubled word in a comment.
3352
3353 2006-07-09  Jim Meyering  <jim@meyering.net>
3354
3355         * lib/argp-pv.c: Remove a doubled word in a comment.
3356         * lib/check-version.c (check_version): Likewise.
3357         * lib/javacomp.c (compile_java_class): Likewise.
3358
3359 2006-07-08  Paul Eggert  <eggert@cs.ucla.edu>
3360
3361         * gnulib-tool (func_get_filelist): Don't echo m4/onceonly_2_57.m4,
3362         for the benefit of people using Autoconf 2.60.  If you want to
3363         support older Autoconf versions you can copy m4/onceonly_2_57.m4
3364         (or m4/onceonly.m4, if pre-2.57) manually.
3365
3366 2006-07-08  Jim Meyering  <jim@meyering.net>
3367
3368         * m4/link-follow.m4: Remove one of two adjacent "whether"s in a
3369         comment.
3370         * m4/getopt.m4: Remove one of two adjacent "your"s in a comment.
3371         * m4/regex.m4 (gl_REGEX): Remove one of two adjacent "the"s in a
3372         comment.
3373
3374 2006-07-08  Jim Meyering  <jim@meyering.net>
3375
3376         * lib/getndelim2.h (getndelim2): Remove doubled "after" in comment.
3377
3378 2006-07-07  Simon Josefsson  <jas@extundo.com>
3379
3380         * tests/test-crc.c: Change expected crc value, the test vector
3381         were probably computed using the old broken crc.c?
3382
3383 2006-07-06  Simon Josefsson  <jas@extundo.com>
3384
3385         * modules/sys_socket (Files): Add m4/sockpfaf.m4 (this module is
3386         now the canonical place for the M4 file).
3387
3388         * modules/getaddrinfo (Files): Remove m4/sockpfaf.m4, we get it
3389         from the sys_socket dependency now.
3390
3391         * modules/inet_pton (Files): Ditto.
3392
3393         * modules/inet_ntop (Files): Ditto.
3394
3395 2006-07-06  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>  (tiny change)
3396
3397         * modules/getusershell (configure.ac): Use gl_FUNC_GETUSERSHELL,
3398         not gl_PREREQ_GETUSERSHELL.
3399
3400 2006-07-06  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
3401
3402         * m4/_inttypes_h.m4 (gl_INTTYPES_H): Use AC_CHECK_DECLS_ONCE
3403         with only one argument, for Autoconf 2.60.
3404         * m4/fileblocks.m4 (gl_PREREQ_FILEBLOCKS): AC_CHECK_DECLS_ONCE may
3405         expand to nothing, so add a shell command to avoid syntax error.
3406         * m4/getpass.m4 (gl_PREREQ_GETPASS): Likewise.
3407
3408 2006-07-06  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
3409
3410         * lib/strtod.c (strtod): cast the argument of tolower to unsigned char.
3411
3412 2006-07-06  Paul Eggert  <eggert@cs.ucla.edu>
3413
3414         * m4/fnmatch.m4 (_AC_LIBOBJ_FNMATCH): Don't check for getenv decl;
3415         no longer needed.  Check for isblank decl.
3416         * m4/mkstemp.m4 (gl_PREREQ_TEMPNAME): Don't check for getenv decl.
3417         * m4/regex.m4 (gl_PREREQ_REGEX): Dheck for isblank decl instead
3418         of existence.
3419
3420 2006-07-06  Paul Eggert  <eggert@cs.ucla.edu>
3421
3422         * lib/getloadavg.c: Use __VMS, not VMS.
3423         * lib/getopt.c: Likewise.
3424         * lib/getpagesize.h: Likewise.
3425         * lib/glob.c: Remove most VMS cruft; it hasn't been tested for a while
3426         and probably does not work.
3427
3428 2006-07-06  Paul Eggert  <eggert@cs.ucla.edu>
3429
3430         * lib/.cppi-disable: Add wcwidth.
3431         * lib/fnmatch.c (ISBLANK): Remove.  All uses changed to isblank.
3432         (isblank) [! (defined isblank || HAVE_DECL_ISBLANK)]: New macro.
3433         (ISGRAPH): Remove.  All uses changed to isgraph.
3434         (FOLD) [!defined _LIBC]: Remove special case.
3435         * lib/getdate.y (lookup_word): Remove no-longer-needed call to islower.
3436         * lib/regex_internal.h (isblank): Depend on HAVE_DECL_ISBLANK, not
3437         HAVE_ISBLANK.
3438         * lib/strftime.c (TOLOWER, TOUPPER) [!defined _LIBC]: Remove special
3439         case.
3440
3441 2006-07-06  Jim Hyslop  <jhyslop@dreampossible.ca>  (tiny change)
3442
3443         * lib/getaddrinfo.c: Changes to compile under MSVC6: changed
3444         '#if WIN32_NATIVE' to '#ifdef' & moved WSAAPI macro inside
3445         brackets.  Other minor changes to suppress some compiler
3446         warnings.
3447
3448 2006-07-06  Derek R. Price  <derek@ximbiot.com>
3449         and Paul Eggert  <eggert@cs.ucla.edu>
3450
3451         * m4/backupfile.m4 (gl_BACKUPFILE): Check for dirent.h, instead
3452         of invoking obsolescent AC_HEADER_DIRENT macro.
3453         * m4/d-ino.m4 (gl_CHECK_TYPE_STRUCT_DIRENT_D_INO): Likewise.
3454         * m4/d-type.m4 (gl_CHECK_TYPE_STRUCT_DIRENT_D_TYPE): Likewise.
3455         * m4/dirfd.m4 (gl_FUNC_DIRFD): Likewise.
3456         * m4/fts.m4 (gl_FUNC_FTS_CORE): Likewise.
3457         * m4/getcwd.m4 (gl_PREREQ_GETCWD): Likewise.
3458         * m4/glob.m4 (gl_PREREQ_GLOB): Likewise.
3459         * m4/savedir.m4 (gl_SAVEDIR): Likewise.
3460         * m4/readdir.m4: Remove; no longer needed.
3461
3462 2006-07-06  Derek R. Price  <derek@ximbiot.com>
3463         and Paul Eggert  <eggert@cs.ucla.edu>
3464
3465         * lib/backupfile.c [HAVE_DIRENT_H && ! HAVE_NDIR_H]:
3466         Don't worry about this obsolete case any more.
3467         (HAVE_DIR): Remove.  All uses removed; we now assume you can read
3468         directories.
3469         * lib/dirfd.h [HAVE_DIRENT_H && ! HAVE_NDIR_H]: Don't
3470         worry about this obsolete case any more.
3471         * lib/fts.c: Likewise.
3472         * lib/getcwd.c: Likewise.
3473         * lib/glob.h: Likewise.
3474         * lib/savedir.c: Likewise.
3475
3476 2006-07-05  Paul Eggert  <eggert@cs.ucla.edu>
3477
3478         * m4/xstrtol.m4 (gl_PREREQ_XSTRTOL): Use AC_CHECK_DECLS_ONCE
3479         rather than AC_CHECK_DECLS for strtoimax and strtoumax.
3480         * m4/getusershell.m4 (gl_PREREQ_GETUSERSHELL): Remove; no longer
3481         needed.
3482         All uses removed.
3483         * m4/strtol.m4 (gl_PREREQ_STRTOL): Likewise.
3484         * m4/strtoul.m4 (gl_PREREQ_STRTOUL): Likewise.
3485         * m4/exclude.m4 (gl_EXCLUDE): Don't check for isascii; no longer
3486         needed.
3487         * m4/getdate.m4 (gl_GETDATE): Likewise.
3488         * m4/getusershell.m4 (gl_PREREQ_GETUSERSHELL): Likewise.
3489         * m4/memcasecmp.m4 (gl_MEMCASECMP): Likewise.
3490         * m4/strtod.m4 (gl_FUNC_STRTOD): Likewise.
3491         * m4/strtol.m4 (gl_PREREQ_STRTOL): Likewise.
3492         * m4/strtoul.m4 (gl_PREREQ_STRTOUL): Likewise.
3493         * m4/xstrtol.m4 (gl_PREREQ_XSTRTOL): Likewise.
3494         * m4/exclude.m4 (gl_EXCLUDE): Don't require AC_C_INLINE; no longer
3495         needed.
3496
3497 2006-07-05  Paul Eggert  <eggert@cs.ucla.edu>
3498
3499         * lib/memcasecmp.c: Include <limits.h>.
3500         (memcasecmp): Don't assume UCHAR_MAX <= INT_MAX.
3501         * lib/strtod.c (strtod): Don't assume isspace works on negative chars.
3502         Don't assume isdigit succeeds only on '0' through '9'.
3503
3504 2006-07-05  Eric Blake  <ebb9@byu.net>
3505
3506         * modules/getaddrinfo (Depends-on): Add snprintf.
3507
3508 2006-07-05  Eric Blake  <ebb9@byu.net>
3509
3510         * m4/sockpfaf.m4 (gl_SOCKET_FAMILIES): Use gl_HEADER_SYS_SOCKET
3511         to avoid 'header present but could not be compiled' on cygwin.
3512
3513 2006-07-05  Eric Blake  <ebb9@byu.net>
3514
3515         * lib/getaddrinfo.h (NI_NUMERICHOST, NI_NUMERICSERV): Define if
3516         missing from netdb.h.
3517         * lib/getaddrinfo.c (includes): Include inet_ntop and snprintf.
3518
3519 2006-07-05  Derek R. Price  <derek@ximbiot.com>
3520
3521         * m4/calloc.m4 (_AC_FUNC_CALLOC_IF): Don't require AC_HEADER_STDC;
3522         no longer needed.
3523         * m4/exclude.m4 (gl_EXCLUDE): Likewise.
3524         * m4/getdate.m4 (gl_GETDATE): Likewise.
3525         * m4/getusershell.m4 (gl_PREREQ_GETUSERSHELL): Likewise.
3526         * m4/memcasecmp.m4 (gl_MEMCASECMP): Likewise.
3527         * m4/strtod.m4 (gl_FUNC_STRTOD): Likewise.
3528         * m4/strtol.m4 (gl_PREREQ_STRTOL): Likewise.
3529         * m4/xstrtol.m4 (gl_PREREQ_XSTRTOL): Likewise.
3530
3531 2006-07-05  Derek R. Price  <derek@ximbiot.com>
3532
3533         * lib/exclude.c (IN_CTYPE_DOMAIN, is_space): Remove; no longer needed.
3534         All uses of is_space replaced by isspace.
3535         * lib/exit.h: Don't talk about STDC_HEADERS.
3536         * lib/fnmatch.c (ISASCII): Remove; no longer needed.  All uses removed.
3537         (ISPRINT, ISDIGIT, ISALNUM, ISALPHA, ISCNTRL, ISLOWER, ISPUNCT):
3538         (ISSPACE, ISUPPER, ISXDIGIT): Remove; no longer needed.  All uses
3539         replaced by isprint etc.
3540         * lib/getdate.y (IN_CTYPE_DOMAIN, ISSPACE, ISALPHA, ISLOWER): Likewise.
3541         * lib/getusershell.c (IN_CTYPE_DOMAIN, ISSPACE): Likewise.
3542         * lib/memcasecmp.c (IN_CTYPE_DOMAIN, ISLOWER, TOUPPER): Likewise.
3543         * lib/strtod.c (IN_CTYPE_DOMAIN, ISSPACE, ISDIGIT, TOLOWER): Likewise.
3544         * lib/strtol.c (IN_CTYPE_DOMAIN): Likewise.
3545         * lib/xstrtol.c (IN_CTYPE_DOMAIN, ISSPACE): Likewise.
3546
3547 2006-07-05  Bruno Haible  <bruno@clisp.org>
3548
3549         * m4/strndup.m4 (gl_FUNC_STRNDUP): When cross-compiling, check whether
3550         the function exists, before testing against AIX.
3551         Reported by Martin Lambers <marlam@marlam.de>.
3552
3553 2006-07-04  Paul Eggert  <eggert@cs.ucla.edu>
3554
3555         * modules/cycle-check (lib_SOURCES): Add same-inode.h.
3556         From Mark D. Baushke.
3557
3558 2006-07-04  Paul Eggert  <eggert@cs.ucla.edu>
3559
3560         * m4/absolute-header.m4 (gl_ABSOLUTE_HEADER): Prepend three slashes
3561         to the absolute name, not just one, to bypass Sun C 5.8's
3562         "warning: #include of /usr/include/... may be non-portable".
3563
3564 2006-07-04  Eric Blake  <ebb9@byu.net>
3565
3566         * modules/dirname-tests: New test module.
3567         * tests/test-dirname.c: New file, replacing dirname.c
3568         TEST_DIRNAME section that was recently deleted.
3569
3570 2006-07-04  Bruno Haible  <bruno@clisp.org>
3571
3572         Assume ANSI C header files and <ctype.h> functions.
3573         * lib/mbswidth.c (IN_CTYPE_DOMAIN, ISPRINT, ISCNTRL): Remove macros.
3574         (mbsnwidth): Use isprint, iscntrl instead.
3575
3576 2006-07-03  Paul Eggert  <eggert@cs.ucla.edu>
3577
3578         Merge from coreutils.
3579         * MODULES.html.sh: Add xstrtold.
3580         * modules/xstrtold: New file.
3581         * modules/cycle-check (Files): Add lib/same-inode.h.
3582         * modules/dirname (Files): Add m4/double-slash-root.m4.
3583         * modules/getcwd (Files): Add m4/getcwd-abort-bug.m4.
3584         * modules/mkdir-p (Files): Add lib/same-inode.h.
3585         * modules/same (Files): Add lib/same-inode.h.
3586
3587 2006-07-03  Paul Eggert  <eggert@cs.ucla.edu>
3588
3589         * m4/absolute-header.m4: Renamed from full-header-path.m4.
3590         This is to keep the terminology clean; POSIX talks about
3591         "absolute pathnames", not "full pathnames", but the GNU
3592         Coding Standards say to use "path" for something else;
3593         so use "absolute" to keep both sides happy.
3594         (gl_ABSOLUTE_HEADER): Renamed from gl_FULL_HEADER_PATH.
3595         Set gl_absolute_header, not gl_full_header_path.
3596         Set gl_cv_absolute_<header>, not gl_full_path_<header>.
3597         Define ABSOLUTE_<HEADER>, not FULL_PATH_<HEADER>.
3598         All uses changed.
3599
3600         Merge from coreutils.
3601
3602         2006-06-30  Paul Eggert  <eggert@cs.ucla.edu>
3603
3604         * m4/c-strtod.m4 (gl_C_STRTOLD): Add c-strtod.c to LIBSOURCES.
3605         Require gl_USE_SYSTEM_EXTENSIONS, not gl_C_STRTOD, since we don't
3606         want to require the building of c-strtod.o.
3607         * m4/lib-check.m4 (cu_LIB_CHECK): Remove SEQ_LIBM, since seq no longer
3608         needs -lm directly.
3609         * m4/xstrtod.m4 (gl_XSTRTOLD): New macro.
3610
3611         2006-06-19  Paul Eggert  <eggert@cs.ucla.edu>
3612
3613         * m4/lib-ignore.m4 (gl_IGNORE_UNUSED_LIBRARIES): Prefer binutils's
3614         --as-needed option if available.  Problem reported by Albert Chin in
3615         <http://lists.gnu.org/archive/html/bug-gnulib/2006-06/msg00114.html>.
3616         However, use -Wl,--as-needed, not bare --as-needed, since HP-UX 11.11
3617         cc merely issues a bunch of annoying warnings for --as-needed
3618         (this problem was reported by Bob Proulx).  Also, try linking with
3619         -lm to detect a bug in binutils 2.16 (this problem was reported
3620         by Ralf Wildenhues).
3621
3622         2006-06-18  Jim Meyering  <jim@meyering.net>
3623
3624         Test for a bug that causes glibc's getcwd to suffer a failed assertion.
3625         * m4/getcwd-abort-bug.m4 (gl_FUNC_GETCWD_ABORT_BUG): New file and
3626         macro.
3627         * m4/getcwd.m4 (gl_FUNC_GETCWD): If we detect support for getcwd_null,
3628         also check for glibc-2.4's abort-inducing bug.
3629
3630         * m4/getcwd-path-max.m4 (gl_FUNC_GETCWD_PATH_MAX): Fix typo.
3631         Low-probability clean-up should be to use rmdir to get rid of
3632         the just-created directory, not unlink.
3633
3634         * m4/ftruncate.m4 (gl_FUNC_FTRUNCATE): If ftruncate is missing, make
3635         configure fail, and request a bug report to inform us about it.
3636         Add a comment that, barring reports to the contrary, in 2007 we'll
3637         assume ftruncate is universally available.
3638
3639         2006-04-17  Paul Eggert  <eggert@cs.ucla.edu>
3640
3641         * m4/filemode.m4 (gl_FILEMODE): Check for strmode declaration.
3642
3643         2006-03-12  Jim Meyering  <jim@meyering.net>
3644
3645         * m4/chdir-safer.m4 (gl_CHDIR_SAFER): Add same-inode.h to the list.
3646         * m4/cycle-check.m4 (gl_CYCLE_CHECK): Likewise.
3647         * m4/same.m4 (gl_SAME): Likewise.
3648         * m4/root-dev-ino.m4 (gl_ROOT_DEV_INO): Likewise.
3649
3650         2006-03-11  Eric Blake  <ebb9@byu.net>
3651
3652         * m4/double-slash-root.m4: New file, provides gl_DOUBLE_SLASH_ROOT.
3653         * m4/dirname.m4 (gl_DIRNAME): Use gl_DOUBLE_SLASH_ROOT.
3654         * m4/dos.m4 (FILE_SYSTEM_PREFIX_LEN): Move from here to dirname.h.
3655         (FILE_SYSTEM_DRIVE_PREFIX_CAN_BE_RELATIVE): New define.
3656
3657 2006-07-03  Paul Eggert  <eggert@cs.ucla.edu>
3658
3659         * lib/stdint_.h: Include <sys/types.h> after @FULL_PATH_STDINT_H@, for
3660         MacOS X 10.4.6.  Don't mention <sys/int_types.h>.  Problems
3661         reported by Mark D. Baushke, one in
3662         <http://lists.gnu.org/archive/html/bug-gnulib/2006-07/msg00015.html>.
3663
3664         Merge from coreutils.
3665
3666         * lib/.cppi-disable: Add stdint_.h.
3667         * lib/.cvsignore: Add stdint.h.
3668
3669         2006-06-30  Paul Eggert  <eggert@cs.ucla.edu>
3670
3671         * lib/xstrtod.c (XSTRTOD, DOUBLE): New macros, so that we can support
3672         both double and long double versions.
3673         (XSTRTOD): Renamed from xstrtod.  Use DOUBLE internally.
3674         * lib/xstrtold.c: New file.
3675         * lib/xstrtod.h (xstrtold): New decl.
3676
3677         2006-05-22  Paul Eggert  <eggert@cs.ucla.edu>
3678
3679         * lib/filemode.c (setst): Remove.
3680         (strmode): Rewrite to avoid setst.  This makes the code shorter,
3681         (arguably) clearer, and the generated code is a bit smaller on my
3682         Debian GNU/Linux stable x86 host.
3683
3684         2006-04-17  Paul Eggert  <eggert@cs.ucla.edu>
3685
3686         * lib/filemode.c: Include "filemode.h" first, to test the interface.
3687         Assume that filemode.h includes sys/types.h and sys/stat.h.
3688         (HAVE_ST_DM_MODE): New macro, moved here from ls.c.
3689         (ftypelet): Reorder to put common cases first, for efficiency.
3690         Add 'P', 'w'.  Remove 'M', since it's now the caller's responsibility
3691         to do 'M'.
3692         (strmode): Renamed from mode_string, and now stores 12 bytes instead
3693         of 10, for compatibility with FreeBSD.  All callers changed.
3694         (filemodestring): Now stores 12 bytes instead of 10, and sets file
3695         types that can't be deduced solely from st_mode.  First arg is now a
3696         const pointer.
3697         * lib/filemode.h (HAVE_DECL_STRMODE): Include <string.h> for strmode.
3698         (strmode): Renamed from mode_string.
3699         (filemodestring): New decl.
3700         * lib/stat-macros.h: Don't undef S_ISDOOR, since it's never buggy.
3701         (S_ISDOOR): Don't bother with S_IFDOOR, since that code is never
3702         needed.
3703         (S_ISPORT, S_ISWHT): New macros, if not already defined.
3704
3705         2006-04-12  Paul Eggert  <eggert@cs.ucla.edu>
3706
3707         * lib/fsusage.c: Don't include <inttypes.h> or <stdint.h>, since
3708         fsusage.h now does that.  Include fsusage.h first, to test interface.
3709         Prefer statvfs if it works, since it's blessed by POSIX.  Attempt
3710         at most one method (the old code could have generated decls that
3711         didn't conform to C89, not that this was ever exercised).
3712         * lib/fsusage.h: Include <inttypes.h> and <stdint.h> if they exist.
3713
3714         2006-03-19  Jim Meyering  <jim@meyering.net>
3715
3716         Work even in a chroot where d_ino values for entries in "/"
3717         don't match the stat.st_ino values for the same names.
3718         * lib/getcwd.c (__getcwd): When no d_ino value matches the target inode
3719         number, iterate through all entries again, using lstat instead.
3720         Reported by Kenshi Muto in http://bugs.debian.org/355810, and by
3721         Zouhir Hafidi in https://bugzilla.redhat.com/bugzilla/190656.
3722
3723         * lib/getcwd.c (__getcwd): Clarify a comment.
3724         Use memcpy in place of a call to strcpy.
3725
3726         2006-03-12  Jim Meyering  <jim@meyering.net>
3727
3728         * lib/fts-cycle.c (leave_dir): If cycle-check's saved dev-ino pair
3729         matches that of the current directory (which we're about to chdir ".."
3730         out of), then save the dev-ino of the parent, instead.
3731
3732         * lib/same-inode.h (SAME_INODE): New file/macro.
3733         * lib/chdir-safer.c (SAME_INODE): Remove definition.
3734         Include "same-inode.h", instead.
3735         * lib/same.c: Likewise.
3736         * lib/cycle-check.h: Include "same-inode.h".
3737         (CYCLE_CHECK_REFLECT_CHDIR_UP): Define.
3738         * lib/cycle-check.c (SAME_INODE): Remove definition.
3739         * lib/root-dev-ino.h: Include "same-inode.h".
3740
3741         2006-03-11  Eric Blake  <ebb9@byu.net>
3742
3743         * lib/same.c (same_name): s/base_name/last_component/
3744         * lib/backupfile.c (check_extension, numbered_backup): Likewise.
3745         * lib/filenamecat.c (file_name_concat): Likewise.
3746
3747         2006-03-11  Eric Blake  <ebb9@byu.net>,
3748                     Paul Eggert  <eggert@cs.ucla.edu>
3749
3750         * lib/dirname.h (FILE_SYSTEM_PREFIX_LEN): Move here from dos.m4.
3751         [FILE_SYSTEM_ACCEPTS_DRIVE_LETTER_PREFIX]: Don't treat 1: as a
3752         drive prefix.
3753         (IS_ABSOLUTE_FILE_NAME): Treat all drive letters as absolute on
3754         platforms like cygwin with FILE_SYSTEM_DRIVE_PREFIX_IS_ABSOLUTE.
3755         (last_component): New method.
3756         * lib/dirname.c (dir_len): Determine when drive letters need a
3757         subsequent slash.  Preserve // when it is special.
3758         (dir_name): Don't append dot when drive letter is absolute.
3759         [TEST_DIRNAME]: Move into a full-blown gnulib test.
3760         * lib/basename.c (base_name): New semantics - malloc the result.
3761         Preserve // when it is special.  Preserve relative files that look
3762         like drive letters.
3763         (base_len): Preserve // when it is special.
3764         (last_component): New method, similar to old base_name semantics.
3765         * lib/stripslash.c (strip_trailing_slashes): Use last_component, not
3766         base_name.  Strip redundant slashes from ///.
3767
3768 2006-07-03  Jim Meyering  <jim@meyering.net>
3769
3770         * lib/cycle-check.h (CYCLE_CHECK_REFLECT_CHDIR_UP): Abort if this
3771         macro is used before the first cycle_check call.
3772
3773 2006-07-03  Eric Blake  <ebb9@byu.net>
3774
3775         * modules/dirname (Depends-on): Add xstrndup.
3776
3777 2006-07-02  Paul Eggert  <eggert@cs.ucla.edu>
3778
3779         * m4/stdint.m4 (gl_STDINT_H): Use more-mnemonic identifiers for
3780         test cases, so that config.log is a bit easier to follow.
3781
3782 2006-07-02  Paul Eggert  <eggert@cs.ucla.edu>
3783
3784         * lib/stdint_.h (intmax_t, uintmax_t): Prefer long to long long if
3785         both are 64 bits, since this seems to be the tradition, and this
3786         prevents gcc -Wformat from warning about usages with PRIuMAX.  If
3787         we ever run into a host that prefers long long to long in this
3788         case, we'll need another configure-time test.  Problem reported by
3789         Jim Meyering.
3790
3791 2006-07-02  Eric Blake  <ebb9@byu.net>
3792
3793         * m4/wcwidth.m4 (gl_FUNC_WCWIDTH): Simplify by using AC_CHECK_DECLS.
3794
3795 2006-07-01  Paul Eggert  <eggert@cs.ucla.edu>
3796
3797         * modules/inttypes (Depends-on): No longer depends on stdint.
3798         * modules/stdint (Description): Say more about assumptions.
3799         Say that the fast types might differ.  Say macros are used.
3800         (Files): Remove m4/size_max.m4, m4/wchar_t.m4.  Add m4/longlong.m4.
3801         (Makefile.am): Revise list of substituted symbols to match
3802         new stdint.m4.
3803         * modules/stdint-tests (Files): Add m4/wchar_t.m4, m4/wint_t.m4.
3804         (configure.ac): Add gt_TYPE_WCHAR_T, gt_TYPE_WINT_T.
3805         * tests/test-stdint.c (verify_same_types)
3806         [! (__GNUC__ >= 2 && DO_PEDANTIC)]: Put in a decl, so that
3807         the code conforms to C99/C89.
3808         Test for WCHAR_MIN and WCHAR_MAX only if HAVE_WCHAR_T.
3809         Test for WINT_MIN and WINT_MAX only if HAVE_WINT_T.
3810
3811 2006-07-01  Paul Eggert  <eggert@cs.ucla.edu>
3812
3813         * m4/longlong.m4 (AC_TYPE_LONG_LONG_INT): Backport from Autoconf 2.60,
3814         but fix a bug, by requiring at least 64 bits.
3815         * m4/ulonglong.m4 (AC_TYPE_UNSIGNED_LONG_LONG_INT): Likewise.
3816         * m4/longlong.m4 (gl_AC_TYPE_LONG_LONG): Now just call
3817         AC_TYPE_LONG_LONG_INT.  This macro is obsolete and will go soon.
3818         * m4/ulonglong.m4 (gl_AC_TYPE_UNSIGNED_LONG_LONG) Likewise.
3819
3820         * m4/stdint.m4 (gl_STDINT_H): Rewrite to accommodate stdint_.h
3821         changes.  Make 2.59 a prerequisite.  Check and substitute for
3822         HAVE_LONG_LONG_INT.  Rely on Autoconf to check for stdint.h and
3823         inttypes.h.  Do not use special include files; just use the
3824         defaults.  Check for sys/inttypes.h and sys/bitypes.h in the usual
3825         way now.  Remove no-longer-needed tests for HAVE_LONG_64BIT,
3826         HAVE_LONG_LONG_64BIT, int8_t, int16_t, int32_t, int64_t, uint8_t,
3827         uint16_t, uint32_t uint64_t, int_least8_t, int_least16_t,
3828         int_least32_t, int_least64_t, uint_least8_t, uint_least16_t,
3829         uint_least32_t, uint_least64_t, int_fast8_t, int_fast16_t,
3830         int_fast32_t, int_fast64_t, uint_fast8_t uint_fast16_t,
3831         uint_fast32_t, uint_fast64_t, intptr_t, uintptr_t, intmax_t,
3832         uintmax_t, INT8_MIN, INT8_MAX, UINT8_MAX, INT16_MIN, INT16_MAX,
3833         UINT16_MAX, INT32_MIN, INT32_MAX, UINT32_MAX, INT64_MIN,
3834         INT64_MAX, UINT64_MAX, INT_LEAST8_MIN, INT_LEAST8_MAX,
3835         UINT_LEAST8_MAX, INT_LEAST16_MIN, INT_LEAST16_MAX,
3836         UINT_LEAST16_MAX, INT_LEAST32_MIN, INT_LEAST32_MAX,
3837         UINT_LEAST32_MAX, INT_LEAST64_MIN, INT_LEAST64_MAX,
3838         UINT_LEAST64_MAX, INT_FAST8_MIN, INT_FAST8_MAX, UINT_FAST8_MAX,
3839         INT_FAST16_MIN, INT_FAST16_MAX, UINT_FAST16_MAX, INT_FAST32_MIN,
3840         INT_FAST32_MAX, UINT_FAST32_MAX, INT_FAST64_MIN, INT_FAST64_MAX,
3841         UINT_FAST64_MAX, INTPTR_MIN, INTPTR_MAX, UINTPTR_MAX, INTMAX_MIN,
3842         INTMAX_MAX, UINTMAX_MAX, PTRDIFF_MIN, PTRDIFF_MAX, SIG_ATOMIC_MIN,
3843         SIG_ATOMIC_MAX, SIZE_MAX, WCHAR_MIN, WCHAR_MAX, WINT_MIN,
3844         WINT_MAX.  Check for C99 conformance more strictly, by detecting
3845         bugs in glibc 2.4, Solaris 10, and OpenBSD 3.9.  On the other hand do
3846         not check for things that C99 does not require, e.g., int8_t.  If
3847         a test isn't needed unless <stdint.h> isn't working, and is
3848         unlikely to be needed for any other reason, then don't do it
3849         unless <stdint.h> isn't working.  Do not check for ptrdiff_t or
3850         size_t, since we assume C89 freestanding at least.  Do not check
3851         for sig_atomic_t, wchar_t, or wint_t, since the code now does
3852         the right thing even if the types are not defined.  Instead use:
3853         (gl_STDINT_TYPE_PROPERTIES): New macro.
3854         (gl_HEADER_STDINT_H, gl_HEADER_INTTYPES_H): Remove.  Don't bother
3855         testing whether <sys/types.h> clashes, as Autoconf does this for
3856         us now.  All uses removed.
3857         (gl_STDINT_CHECK_TYPES, gl_STDINT_MISSING_BOUND):
3858         (gl_STDINT_MISSING_BOUNDS, gl_STDINT_MISSING_BOUNDS2):
3859         (gl_CHECK_TYPE_SAME):
3860         Remove; no longer needed.
3861         (gl_STDINT_BITSIZEOF): Don't bother to check whether the type
3862         exists, since we'll return 0 anyway in that case.
3863         (gl_INTEGER_TYPE_SUFFIX, gl_STDINT_INCLUDES): New macros.
3864
3865 2006-07-01  Paul Eggert  <eggert@cs.ucla.edu>
3866
3867         * lib/stdint_.h (_GL_STDINT_H): Renamed from _STDINT_H, to avoid
3868         possible collision with system files.
3869         (<stdio.h>, <time.h>, <wchar.h>) [defined __cplusplus && ! defined
3870         __STDC_CONSTANT_MACROS)]: Do not include, since we don't need
3871         WCHAR_MIN and WCHAR_MAX in this case.
3872         (<stddef.h>): Do not include; no longer needed.
3873         (<sys/types.h>): Include if @HAVE_SYS_TYPES_H@, not if
3874         (defined(__OpenBSD__) || defined(__bsdi__) || defined(__sgi)).
3875         (<sys/inttypes.h>): Include if @HAVE_SYS_INTTYPES_H@ &&
3876         !@HAVE_INTTYPES_H@, not if (defined(__FreeBSD__)
3877         && (__FreeBSD__ >= 3) && (__FreeBSD__ <= 4)).
3878         (__STDINT_H__) [@HAVE_STDINT_H@ && defined __sgi && ! defined
3879         __c99]: Define, to work around IRIX <stdint.h> incompatibility.
3880         (@FULL_PATH_STDINT_H@) [!(defined(__sgi) && @HAVE_INTTYPES_H@ &&
3881         !defined(__c99))]: Include in this case too, since it's harmless
3882         now.
3883         (<inttypes.h>) [@HAVE_INTTYPES_H@]: Include, since it's no longer
3884         dangerous to do so.
3885         (@FULL_PATH_INTTYPES_H@) [(defined(__hpux) || defined(_AIX)) &&
3886         @HAVE_INTTYPES_H@]: Do not include, since we now include <inttypes.h>.
3887         (_STDINT_MIN, _STDINT_MAX): New macros.
3888         (int8_t, uint8_t, int16_t, uint16_t, int32_t, uint32_t, int64_t):
3889         (uint64_t, int_least8_t, uint_least8_t, int_least16_t):
3890         (uint_least16_t, int_least32_t, uint_least32_t, int_least64_t):
3891         (uint_least64_t, int_fast8_t, uint_fast8_t, int_fast16_t):
3892         (uint_fast16_t, int_fast32_t, uint_fast32_t, int_fast64_t):
3893         (uint_fast64_t, intptr_t, uintptr_t, intmax_t, uintmax_t): Now
3894         macros, not typedefs; this simplifies things quite a bit.
3895         Use long int for all types narrower than int64_t.
3896         (intmax_t, uintmax_t, INTMAX_C, UINTMAX_C):
3897         Define in terms of long long int or int64_t or long int,
3898         not int64_t or int32_t.  This saves some compile-time testing.
3899         (INT8_MIN, INT8_MAX, UINT8_MAX, INT16_MIN, INT16_MAX, UINT16_MAX):
3900         (INT32_MIN, INT32_MAX, UINT32_MAX, INT64_MIN, INT64_MAX):
3901         (UINT64_MAX, INT_LEAST8_MIN, INT_LEAST8_MAX, UINT_LEAST8_MAX):
3902         (INT_LEAST16_MIN, INT_LEAST16_MAX, UINT_LEAST16_MAX):
3903         (INT_LEAST32_MIN, INT_LEAST32_MAX, UINT_LEAST32_MAX):
3904         (INT_LEAST64_MIN, INT_LEAST64_MAX, UINT_LEAST64_MAX, INT_FAST8_MIN):
3905         (INT_FAST8_MAX, UINT_FAST8_MAX, INT_FAST16_MIN, INT_FAST16_MAX):
3906         (UINT_FAST16_MAX, INT_FAST32_MIN, INT_FAST32_MAX, UINT_FAST32_MAX):
3907         (INT_FAST64_MIN, INT_FAST64_MAX, UINT_FAST64_MAX, INTPTR_MIN):
3908         (INTPTR_MAX, UINTPTR_MAX, INTMAX_MIN, INTMAX_MAX, UINTMAX_MAX):
3909         (PTRDIFF_MIN, PTRDIFF_MAX, SIG_ATOMIC_MIN, SIG_ATOMIC_MAX):
3910         (SIZE_MAX, WCHAR_MIN, WCHAR_MAX, WINT_MIN, WINT_MAX):
3911         undef any previous version and define our own version, for
3912         simplicity and consistency with the new macros for types.
3913         (PTRDIFF_MIN, PTRDIFF_MAX, SIG_ATOMIC_MIN, SIG_ATOMIC_MAX):
3914         (SIZE_MAX, WCHAR_MIN, WCHAR_MAX, WINT_MIN, WINT_MAX):
3915         Simplify definitions by using _STDINT_MIN and _STDINT_MAX
3916         where appropriate.  Rely on new symbols @PTRDIFF_T_SUFFIX@,
3917         @SIG_ATOMIC_T_SUFFIX@, @SIZE_T_SUFFIX@, @WCHAR_T_SUFFIX@,
3918         @WINT_T_SUFFIX@ to keep things simple here.
3919         (UINT8_C, UINT16_C, UINT32_C, INT64_C, UINT64_C):
3920         Simplify by assuming typical 8/16/32/64 host, since we're
3921         already doing that elsewhere anyway.
3922         Use (LONG_MAX >> 31 >> 31 == 1) rather than @HAVE_LONG_64BIT@,
3923         and assume long long int is 64 bits if available.  This
3924         speeds up 'configure'.
3925
3926 2006-07-01  Eric Blake  <ebb9@byu.net>
3927
3928         * m4/stdarg.m4 (gl_STDARG_H): Use proper AH_VERBATIM.
3929         Reported by Andreas Buening.
3930
3931 2006-07-01  Eric Blake  <ebb9@byu.net>
3932
3933         * m4/stdarg.m4 (gl_STDARG_H): Properly parenthesize gl_va_copy.
3934
3935 2006-06-30  Jim Hyslop <jhyslop@dreampossible.ca>  (tiny change)
3936
3937         * lib/getaddrinfo.c: fixed typo
3938
3939 2006-06-29  Jim Meyering  <jim@meyering.net>
3940
3941         * modules/strftime (Maintainer): Add my name, since with the
3942         FPRINTFTIME changes strftime.c has forked from glibc.
3943
3944 2006-06-29  Eric Blake  <ebb9@byu.net>
3945
3946         * m4/sys_stat_h.m4 (gl_HEADER_SYS_STAT_H): Use AC_C_INLINE.
3947
3948 2006-06-29  Eric Blake  <ebb9@byu.net>
3949
3950         * m4/sys_stat_h.m4 (gl_HEADER_SYS_STAT_H): New file.
3951
3952 2006-06-29  Eric Blake  <ebb9@byu.net>
3953
3954         * lib/stat_.h: New file.
3955
3956 2006-06-29  Eric Blake  <ebb9@byu.net>
3957
3958         * lib/stat_.h (rpl_mkdir): Declare inline, to avoid warnings about
3959         unused static function.
3960
3961 2006-06-29  Eric Blake  <ebb9@byu.net>
3962
3963         * doc/functions.texi (Function Portability): Document missing lstat
3964         on mingw.
3965
3966 2006-06-29  Eric Blake  <ebb9@byu.net>
3967
3968         * MODULES.html.sh: Add sys_stat.
3969         * modules/sys_stat: New module.
3970         * modules/mkstemp (Depends-on): Add sys_stat.
3971
3972 2006-06-29  Derek R. Price  <derek@ximbiot.com>
3973
3974         * m4/strftime.m4: Don't call AC_FUNC_STRFTIME.
3975
3976 2006-06-29  Derek R. Price  <derek@ximbiot.com>
3977
3978         * m4/c-bs-a.m4: Removed.
3979
3980 2006-06-29  Derek R. Price  <derek@ximbiot.com>
3981
3982         * lib/strftime.c: Assume strftime() exists.
3983
3984 2006-06-29  Derek Price  <derek@ximbiot.com>
3985
3986         * modules/c-bs-a: Removed - \a is C89.
3987         * MODULES.html.sh: Remove c-bs-a.
3988
3989 2006-06-29  Bruno Haible  <bruno@clisp.org>
3990
3991         * modules/wcwidth (License): Change to LGPL.
3992
3993 2006-06-28  Simon Josefsson  <jas@extundo.com>
3994
3995         * tests/test-getaddrinfo.c: Test getnameinfo too.  Call WSAStartup
3996         on _WIN32.
3997
3998         * modules/getaddrinfo (Depends-on): Add inet_ntop, needed by
3999         getnameinfo.
4000
4001 2006-06-28  Simon Josefsson  <jas@extundo.com>
4002
4003         * m4/getaddrinfo.m4: Look for getnameinfo prototypes too.
4004
4005 2006-06-28  Simon Josefsson  <jas@extundo.com>
4006
4007         * lib/getaddrinfo.c: Try to load ws2_32.dll on Windows, to find the
4008         functions there.  It will succeed on Windows XP, but on Windows
4009         2000 and (presumably) earlier, it will fail, and use the internal
4010         re-implementation.
4011         (use_win32_p): New function.
4012         (getaddrinfo): Use strtoul on servname, to support numeric ports.
4013         Support AI_NUMERICSERV to disable getservbyname.
4014         (getnameinfo): New function, only supports
4015         NI_NUMERICHOST|NI_NUMERICSERV for now.
4016
4017         * lib/getaddrinfo.h: Test and check for AI_* flags separately, MinGW
4018         only have some of them.  Add AI_NUMERICSERV.  Add prototype for
4019         getnameinfo.
4020
4021 2006-06-28  Eric Blake  <ebb9@byu.net>
4022
4023         * modules/wcwidth: New file.
4024         * modules/mbchar (Depends-on): Add wcwidth.
4025         * modules/mbswidth (Depends-on): Add wcwidth.
4026         * MODULES.html.sh: Add wcwidth.
4027
4028 2006-06-28  Eric Blake  <ebb9@byu.net>
4029
4030         * m4/mbswidth.m4 (gl_MBSDWIDTH): Move wcwidth from here...
4031         * m4/wcwidth.m4 (gl_FUNC_WCWIDTH): ...to this new file.
4032
4033 2006-06-28  Eric Blake  <ebb9@byu.net>
4034
4035         * lib/xvasprintf.h: Fix comments.
4036
4037 2006-06-28  Eric Blake  <ebb9@byu.net>
4038
4039         * lib/mbchar.h (wcwidth): Include wcwidth.h.
4040         * lib/mbswidth.c (wcwidth): Move from here...
4041         * lib/wcwidth.h: ...to this new file.
4042
4043 2006-06-28  Derek R. Price  <derek@ximbiot.com>
4044
4045         * m4/savedir.m4: Remove AC_FUNC_CLOSEDIR_VOID requirement.
4046
4047         * m4/fnmatch.m4 (_AC_LIBOBJ_FNMATCH): Don't require AC_C_CONST, since
4048         it's obsolete.
4049         * m4/strftime.m4 (gl_FUNC_GNU_STRFTIME): Likewise.
4050
4051 2006-06-28  Derek R. Price  <derek@ximbiot.com>
4052
4053         * lib/savedir.c (CLOSEDIR): Remove.  All uses changed to closedir.
4054         Autoconf 2.60 says this stuff was obsolete.
4055
4056 2006-06-28  Bruno Haible  <bruno@clisp.org>
4057
4058         * modules/wcwidth (Files): Add m4/wchar_t.m4.
4059
4060 2006-06-28  Bruno Haible  <bruno@clisp.org>
4061
4062         * m4/wcwidth.m4 (gl_FUNC_WCWIDTH): Also require AC_C_INLINE and
4063         gt_TYPE_WCHAR_T.
4064
4065 2006-06-28  Bruno Haible  <bruno@clisp.org>
4066
4067         * lib/wcwidth.h: Declare nothing if !HAVE_WCHAR_T. Provide a fallback
4068         declaration for wcwidth.
4069         * lib/mbswidth.c: Restore the includes of <wchar.h> and <wctypes.h>.
4070
4071 2006-06-28  Bruno Haible  <bruno@clisp.org>
4072
4073         * lib/mkdtemp.c [MINGW]: Include <io.h>.
4074         (mkdir): Define using _mkdir.
4075
4076 2006-06-28  Bruno Haible  <bruno@clisp.org>
4077
4078         * lib/getaddrinfo.h: Fix POSIX URL.
4079         * lib/getaddrinfo.c (WIN32_NATIVE): New macro. Use it instead of
4080         _WIN32.
4081         (use_win32_p): Make static.
4082         (getaddrinfo): Reject service name if it is empty or does not consist
4083         solely of decimal digits, or if its value is > 65535.
4084         (getnameinfo): Remove useless casts.
4085
4086 2006-06-27  Simon Josefsson  <jas@extundo.com>
4087
4088         * modules/sys_select: New file, suggested by Bruno Haible, Paul
4089         Eggert and Martin Lambers.
4090
4091 2006-06-27  Simon Josefsson  <jas@extundo.com>
4092
4093         * m4/sys_select_h.m4: New file, suggested by Bruno Haible, Paul
4094         Eggert and Martin Lambers.
4095
4096 2006-06-27  Bruno Haible  <bruno@clisp.org>
4097
4098         * m4/stdint.m4 (gl_STDINT_BITSIZEOF): For nonexistent types, set the
4099         result to 0, not to empty.
4100         Reported by Martin Neitzel <neitzel@sco.gaertner.de>.
4101
4102 2006-06-27  Bruno Haible  <bruno@clisp.org>
4103
4104         * lib/stdint_.h (intmax_t, uintmax_t): Undefine before typedef.
4105
4106 2006-06-26  Simon Josefsson  <jas@extundo.com>
4107
4108         * m4/inet_ntop.m4: Don't check for sys/types.h, we assume it is
4109         present.
4110
4111 2006-06-26  Paul Eggert  <eggert@cs.ucla.edu>
4112
4113         * lib/base64.c (B64): Use _ as the formal parameter, not x, to avoid
4114         bug in IBM C V6 for AIX.  Problem reported by Larry Jones in
4115         <http://lists.gnu.org/archive/html/bug-gnulib/2006-06/msg00181.html>.
4116
4117 2006-06-26  Mark D. Baushke  <mdb@gnu.org>
4118
4119         * m4/stdint.m4 (gl_STDINT_H): Treat BSD/OS like OpenBSD.
4120
4121 2006-06-26  Bruno Haible  <bruno@clisp.org>
4122
4123         * modules/stdint (Makefile.am): Also substitute HAVE_WCHAR_H.
4124
4125 2006-06-26  Bruno Haible  <bruno@clisp.org>
4126
4127         * m4/stdint.m4 (gl_STDINT_H): Test also for <wchar.h>.
4128
4129 2006-06-26  Bruno Haible  <bruno@clisp.org>
4130
4131         * m4/stdint.m4 (gl_STDINT_H): Don't include <stdint.h> when using the
4132         SGI C compiler in pre-C99 mode.
4133         Suggested by Mark D. Baushke and Larry Jones.
4134
4135 2006-06-26  Bruno Haible  <bruno@clisp.org>
4136
4137         * lib/stdint_.h: Include <wchar.h> if necessary for WCHAR_MIN or
4138         WCHAR_MAX.
4139         Reported by Mark D. Baushke and Larry Jones.
4140
4141 2006-06-26  Bruno Haible  <bruno@clisp.org>
4142
4143         * lib/stdint_.h: Don't include <stdint.h> when using the SGI C compiler
4144         in pre-C99 mode.
4145         Suggested by Mark D. Baushke and Larry Jones.
4146
4147 2006-06-23  Simon Josefsson  <jas@extundo.com>
4148             Bruno Haible  <bruno@clisp.org>
4149
4150         * gnulib-tool (func_emit_lib_Makefile_am): Define MOSTLYCLEANDIRS.
4151         Emit mostlyclean-local rule.
4152         (func_emit_tests_Makefile_am): Likewise.
4153         * modules/sys_socket (Makefile.am): Use MOSTLYCLEANDIRS.
4154
4155 2006-06-23  Mark D. Baushke  <mdb@gnu.org>
4156
4157         * lib/stdint_.h: Treat BSD/OS like OpenBSD.
4158
4159 2006-06-23  Bruno Haible  <bruno@clisp.org>
4160
4161         * tests/test-stdint.c: Update to match ISO C 99 Technical
4162         Corrigendum 1.
4163
4164 2006-06-23  Bruno Haible  <bruno@clisp.org>
4165
4166         * m4/stdint.m4 (gl_STDINT_H): Treat IRIX like OpenBSD.
4167
4168 2006-06-23  Bruno Haible  <bruno@clisp.org>
4169
4170         * lib/stdint_.h: Treat IRIX like OpenBSD.
4171
4172 2006-06-23  Bruno Haible  <bruno@clisp.org>
4173
4174         * lib/stdint_.h (UINT8_C, UINT16_C, UINT32_C): Define according to
4175         ISO C 99 Technical Corrigendum 1.
4176
4177 2006-06-22  Simon Josefsson  <jas@extundo.com>
4178
4179         * m4/sockpfaf.m4: Include winsock2.h too, to make it work under
4180         MinGW.
4181
4182 2006-06-22  Paul Eggert  <eggert@cs.ucla.edu>
4183
4184         * lib/glob.c (collated_compare): Remove 'const' uses that weren't
4185         needed.  Some compiler complained about some of them.  Problem reported
4186         by Larry Jones in
4187         <http://lists.gnu.org/archive/html/bug-gnulib/2006-06/msg00172.html>.
4188
4189 2006-06-21  Simon Josefsson  <jas@extundo.com>
4190
4191         * tests/test-getaddrinfo.c: New file.
4192
4193         * modules/getaddrinfo-tests: New file.
4194
4195         * MODULES.html.sh: Add inet_pton.
4196
4197         * modules/inet_pton: New file.
4198
4199 2006-06-21  Simon Josefsson  <jas@extundo.com>
4200
4201         * m4/getaddrinfo.m4: Don't define WINVER.  Look for gethostbyname in
4202         -lws2_32 too.  Fixes getaddrinfo on Windows 2000, with the price
4203         of using the (limited) gnulib implementation on Windows XP.
4204
4205         * m4/inet_pton.m4: New file.
4206
4207 2006-06-21  Simon Josefsson  <jas@extundo.com>
4208
4209         * lib/getaddrinfo.c (getaddrinfo): Set ai_family in the return
4210         variable.
4211
4212         * lib/socket_.h: Don't define WINVER.
4213
4214         * lib/inet_pton.h, inet_pton.c: New file, taken from glibc but
4215         slightly modified to work in gnulib.
4216
4217 2006-06-21  Simon Josefsson  <jas@extundo.com>
4218
4219         * doc/gnulib.texi (Windows sockets): Add.
4220
4221 2006-06-21  Paul Eggert  <eggert@cs.ucla.edu>
4222
4223         * lib/read-file.c (fread_file): Start with buffer allocation of
4224         0 bytes rather than 1 byte; this simplifies the code.
4225         Don't invoke feof; it's not needed.  Refactor to avoid duplicate
4226         code to free buffer and save/restore errno.
4227         (internal_read_file): Remove unused local.
4228
4229 2006-06-20  Paul Eggert  <eggert@cs.ucla.edu>
4230
4231         * lib/openat.c (openat): Use ?:, not if, to work around GCC bug 4210
4232         <http://gcc.gnu.org/bugzilla/show_bug.cgi?id=4210>.
4233         Problem reported by Denis Excoffier in
4234         <http://lists.gnu.org/archive/html/bug-tar/2006-06/msg00023.html>.
4235
4236 2006-06-19  Yoann Vandoorselaere <yoann.v@prelude-ids.com>
4237
4238         * modules/sys_socket, modules/socklen: Include sys/types since
4239         FreeBSD 4.x's sys/socket.h needs it.
4240
4241 2006-06-19  Simon Josefsson  <jas@extundo.com>
4242
4243         * lib/inet_ntop.c: Always build inet_ntop4, since inet_ntop6 calls it.
4244
4245 2006-06-19  Paul Eggert  <eggert@cs.ucla.edu>
4246
4247         * lib/alloca_.h (alloca) [defined alloca]: Don't define or declare.
4248
4249 2006-06-19  Bruno Haible  <bruno@clisp.org>
4250
4251         * m4/stdint.m4 (gl_STDINT_H): Enclose the values of FULL_PATH_STDINT_H
4252         and FULL_PATH_INTTYPES_H in angle brackets.
4253         Reported by Mark D. Baushke <mdb@gnu.org>.
4254
4255 2006-06-17  Eric Blake  <ebb9@byu.net>
4256
4257         * m4/rmdir-errno.m4 (gl_FUNC_FMDIR_NOTEMPTY): Assume errno.h declares
4258         errno.
4259
4260 2006-06-17  Bruno Haible  <bruno@clisp.org>
4261
4262         * m4/stdint.m4 (gl_STDINT_H) [FreeBSD >= 5]: Don't include
4263         <sys/inttypes.h>.
4264
4265 2006-06-17  Bruno Haible  <bruno@clisp.org>
4266
4267         * m4/setenv.m4 (gl_PREREQ_SETENV, gl_PREREQ_UNSETENV): Remove test
4268         whether errno is declared. Assume <errno.h> declares errno.
4269
4270 2006-06-17  Bruno Haible  <bruno@clisp.org>
4271
4272         * lib/stdint_.h [FreeBSD >= 5]: Don't include <sys/inttypes.h>.
4273
4274 2006-06-17  Bruno Haible  <bruno@clisp.org>
4275
4276         * lib/stdint_.h (_UINT8_T, _UINT32_T, _UINT64_T): New macros. Fixes a
4277         problem on Solaris 2.5.1.
4278
4279 2006-06-16  Eric Blake  <ebb9@byu.net>
4280
4281         * lib/unsetenv.c [!defined errno]: Assume errno.h declares errno.
4282         * lib/unicodeio.c [!defined errno]: Likewise.
4283         * lib/strtol.c [!defined errno]: Likewise.
4284         * lib/strtod.c [!defined errno]: Likewise.
4285
4286 2006-06-15  Eric Blake  <ebb9@byu.net>
4287
4288         * m4/ssize_t.m4 (gt_TYPE_SSIZE_T): Work in spite of -Werror.
4289
4290 2006-06-15  Eric Blake  <ebb9@byu.net>
4291
4292         * config/srclist.txt (ssize_t.m4): Lose sync.
4293
4294 2006-06-15  Bruno Haible  <bruno@clisp.org>
4295
4296         * modules/stdint (Files): Include m4/full-header-path.m4,
4297         m4/size_max.m4, m4/wchar_t.m4.
4298         (Makefile.am): Many more substitutions.
4299         * modules/stdint-tests: New file.
4300         * tests/test-stdint.c: New file.
4301
4302 2006-06-15  Bruno Haible  <bruno@clisp.org>
4303
4304         * m4/stdint.m4 (gl_STDINT_H): Rewritten to produce a complete stdint.h.
4305         (gl_HEADER_STDINT_H, gl_HEADER_INTTYPES_H, gl_STDINT_CHECK_TYPES,
4306         gl_STDINT_MISSING_BOUND, gl_STDINT_MISSING_BOUNDS,
4307         gl_STDINT_MISSING_BOUNDS2, gl_STDINT_BITSIZEOF, gl_CHECK_TYPES_SIGNED,
4308         gl_CHECK_TYPE_SAME): New macros.
4309
4310 2006-06-15  Bruno Haible  <bruno@clisp.org>
4311
4312         * m4/size_max.m4 (gl_SIZE_MAX): Make it work also when cross-compiling.
4313
4314 2006-06-15  Bruno Haible  <bruno@clisp.org>
4315
4316         * lib/stdint_.h: Rewritten to be fully auto-configured.
4317         Fixes bug on HP-UX/IA64.
4318
4319 2006-06-11  Paul Eggert  <eggert@cs.ucla.edu>
4320
4321         * lib/getdate.y (__attribute__): Don't define if already defined.
4322         Problem reported by Larry Jones.
4323         * lib/utimens.c (__attribute__): Likewise.
4324
4325 2006-06-04  Paul Eggert  <eggert@cs.ucla.edu>
4326
4327         * lib/regexec.c (group_nodes_into_DFAstates): Fix a buffer overrun
4328         reported by Andreas Schwab.
4329
4330 2006-05-30  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
4331             Bruno Haible  <bruno@clisp.org>
4332
4333         * m4/strndup.m4 (gl_FUNC_STRNDUP): Replace the AC_REPLACE_FUNCS with a
4334         check for the declaration of strnlen and a run test that exposes the
4335         AIX 5.1 strnlen bug.  In the failure case, #define strndup to
4336         rpl_strndup.
4337
4338 2006-05-30  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
4339             Bruno Haible  <bruno@clisp.org>
4340
4341         * lib/strndup.c (strndup) [!_LIBC]: Don't undefine macro definition.
4342
4343 2006-05-28  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
4344
4345         * m4/c-strtod.m4 (gl_C99_STRTOLD): Use a link test rather than a
4346         compile test, for Tru64 4.0D.
4347
4348 2006-05-28  Karl Berry  <karl@gnu.org>
4349
4350         * config/srclist.txt (printf-args.c): lose sync.
4351
4352 2006-05-26  Martin Lambers  <marlam@marlam.de>
4353
4354         * lib/getpass.c: Updates the test for the native W32 API, and adds
4355         missing includes, thus fixing compilation warnings.
4356
4357 2006-05-25  Sergey Poznyakoff  <gray@gnu.org.ua>
4358
4359         * lib/exclude.c (exclude_fnmatch): New function.
4360         (excluded_file_name): Call exclude_fnmatch.
4361         * lib/exclude.h (excluded_file_name): New prototype
4362
4363 2006-05-25  Paul Eggert  <eggert@cs.ucla.edu>
4364
4365         * lib/tempname.c (small_open, large_open): New macros.
4366         (__open, __open64) [!_LIBC]: Remove.
4367         (__gen_tempname): Use small_open and large_open instead of __open
4368         and __open64.  This fixes a portability bug on HP-UX 11.11i
4369         reported by Simon Wing-Tang in
4370         <http://lists.gnu.org/archive/html/bug-coreutils/2006-05/msg00114.html>.
4371
4372 2006-05-24  Bruno Haible  <bruno@clisp.org>
4373
4374         * lib/printf-args.c (printf_fetchargs): Turn NULL pointers for
4375         TYPE_STRING and TYPE_WIDE_STRING into a non-NULL replacement.
4376         Reported by Thorsten Maerz <torte@netztorte.de> via
4377         Aaron Stone <aaron@serendipity.cx>.
4378
4379 2006-05-19  Paul Eggert  <eggert@cs.ucla.edu>
4380
4381         * m4/nanosleep.m4 (gl_FUNC_NANOSLEEP): Rename cache variables to use
4382         gl_ rather than jm_.  Link, don't run, so that cross-compiles are
4383         allowed.  Check that resulting type is arithmetic.  Move AC_REQUIRE
4384         and AC_CHECK_HEADERS_ONCE outside of AC_CACHE_CHECK, since they're
4385         not really conditional on the cache.
4386         (gl_PREREQ_NANOSLEEP): Check for sys/select.h.
4387
4388 2006-05-19  Paul Eggert  <eggert@cs.ucla.edu>
4389
4390         * lib/nanosleep.c [HAVE_SYS_SELECT_H]: Include <sys/select.h>.
4391         Use the usual Autoconf way to include <time.h> and/or sys/time.h.
4392         (my_usleep): Don't mishandle maximum value.
4393
4394 2006-05-19  Jim Meyering  <jim@meyering.net>
4395
4396         * lib/getugroups.c: Correct an outdated comment.  From Bruno Haible.
4397
4398 2006-05-17  Bruno Haible  <bruno@clisp.org>
4399
4400         Cygwin portability.
4401         * lib/classpath.c (PATH_SEPARATOR) [CYGWIN]: Define as ':'.
4402
4403 2006-05-17  Bruno Haible  <bruno@clisp.org>
4404
4405         * lib/stdint_.h: Fix recognition of Cygwin.
4406
4407 2006-05-15  Bruno Haible  <bruno@clisp.org>
4408
4409         * build-aux/config.rpath: Improve support for Sun C 5.9 on Linux, based
4410         on libtool patch by Ralf Wildenhues.
4411
4412 2006-05-14  Paul Eggert  <eggert@cs.ucla.edu>
4413
4414         * m4/stdbool.m4 (AC_HEADER_STDBOOL): Fix overly-picky
4415         test for C99 conformance; (bool) 0.5 is an integer constant
4416         expression, but (bool) -0.5 is not.  Problem reported by Fedor
4417         Sergeev in <http://forum.sun.com/jive/thread.jspa?threadID=96202>.
4418
4419 2006-05-11  Simon Josefsson  <jas@extundo.com>
4420
4421         * m4/xvasprintf.m4: Fix obvious typo.
4422
4423 2006-05-11  Jim Meyering  <jim@meyering.net>
4424
4425         * lib/sha1.c (sha1_buffer): Correct comment: s/MD5/SHA1/.  From
4426         James Lemley.
4427
4428 2006-05-10  Simon Josefsson  <jas@extundo.com>
4429
4430         * lib/md4.c: Typo fix, update copyright years.
4431         (K1, K2): Don't use L because it turn computations into 64-bit on
4432         64-bit platforms.
4433
4434 2006-05-10  Paul Eggert  <eggert@cs.ucla.edu>
4435
4436         * lib/crc.c (crc32_update): Remove unnecessary L suffix.
4437         * lib/md4.c (rol): Cast right-shift arg to uint32_t to prevent
4438         unwanted sign propagation, e.g., on hosts with 64-bit int.
4439         There still are some problems with reeelly weird theoretical hosts
4440         (e.g., 33-bit int) but it's not worth worrying about now.
4441         * lib/sha1.c (rol): Likewise.
4442         (K1, K2, K3, K4): Remove unnecessary L suffix.
4443
4444 2006-05-10  Bruno Haible  <bruno@clisp.org>
4445
4446         * lib/des.c: Cast to avoid warnings.
4447
4448 2006-05-09  Bruno Haible  <bruno@clisp.org>
4449
4450         * modules/xvasprintf (Files): Add m4/xvasprintf.m4.
4451         (Depends-on): Depend also on xsize, stdarg.
4452         (configure.ac): Add gl_XVASPRINTF.
4453
4454 2006-05-09  Bruno Haible  <bruno@clisp.org>
4455
4456         * m4/xvasprintf.m4: New file.
4457
4458 2006-05-09  Bruno Haible  <bruno@clisp.org>
4459
4460         * lib/xvasprintf.c: Include limits.h, string.h, xsize.h.
4461         (EOVERFLOW): Define fallback value.
4462         (xstrcat): New function.
4463         (xvasprintf): Recognize the special case of a string concatenation.
4464
4465 2006-05-08  Eric Blake  <ebb9@byu.net>
4466
4467         * gnulib-tool (func_version): Base copyright year on CVS date.
4468         (func_emit_copyright_notice): New function.
4469         (func_emit_lib_Makefile_am): Use it.
4470         (func_emit_tests_Makefile_am): Likewise.
4471         (func_import): Likewise.
4472
4473 2006-05-08  Bruno Haible  <bruno@clisp.org>
4474
4475         * modules/stdarg: New file.
4476         * MODULES.html.sh (func_all_modules): Add section for <stdarg.h>.
4477
4478 2006-05-08  Bruno Haible  <bruno@clisp.org>
4479
4480         * m4/stdarg.m4: New file, from GNU gettext.
4481
4482 2006-05-08  Bruno Haible  <bruno@clisp.org>
4483
4484         * config/srclist.txt (build-aux/config.rpath): different from latest
4485         release.
4486
4487 2006-05-08  Bruno Haible  <bruno@clisp.org>
4488
4489         * build-aux/config.rpath: Add support for Sun C 5.9 on Linux.
4490
4491 2006-05-05  Jim Meyering  <jim@meyering.net>
4492
4493         * m4/warning.m4: New file, derived from bison's file by the same name.
4494
4495 2006-05-03  Bruno Haible  <bruno@clisp.org>
4496
4497         * lib/stdint_.h: Shorter URL.
4498         * lib/inttypes.h: Likewise.
4499
4500 2006-05-02  Paul Eggert  <eggert@cs.ucla.edu>
4501
4502         * modules/inttypes (Maintainer): Change from Derek Price to 'all'.
4503
4504 2006-05-02  Paul Eggert  <eggert@cs.ucla.edu>
4505
4506         * lib/verify.h: Document the internals better.  Most of this change
4507         was written by Bruno Haible.
4508
4509 2006-05-02  Paul Eggert  <eggert@cs.ucla.edu>
4510
4511         * doc/verify.texi: New file, partly based on a proposal by
4512         Bruno Haible.
4513
4514 2006-05-02  Bruno Haible  <bruno@clisp.org>
4515
4516         * m4/full-header-path.m4 (gl_FULL_HEADER_PATH): Move the include_next
4517         test from here...
4518         * m4/_inttypes_h.m4 (gl_INTTYPES_H): ... to here.
4519
4520 2006-04-29  Bruno Haible  <bruno@clisp.org>
4521
4522         * lib/gcd.c: Use WORD_T and GCD instead of unsigned long and gcd.
4523         Suggested by Oskar Liljeblad <oskar@osk.mine.nu>.
4524
4525 2006-04-29  Bruno Haible  <bruno@clisp.org>
4526
4527         * gnulib-tool: Make --update option actually work.
4528
4529 2006-04-29  Bruno Haible  <bruno@clisp.org>
4530
4531         * doc/gcd.texi: New file.
4532         * doc/gnulib.texi: Include it.
4533
4534 2006-04-25  Paul Eggert  <eggert@cs.ucla.edu>
4535
4536         * lib/getdate.y (get_date): When adding relative date, start with the
4537         initial time, not with the result of the first mktime call.
4538
4539 2006-04-25  Bruno Haible  <bruno@clisp.org>
4540
4541         * gnulib-tool (func_import): Output the include directives in three
4542         blocks, sorted separately.
4543         Reported by Ben Pfaff <blp@cs.stanford.edu>.
4544
4545 2006-04-24  Paul Eggert  <eggert@cs.ucla.edu>
4546
4547         * m4/unlink-busy.m4 (gl_FUNC_UNLINK_BUSY_TEXT): Use prototype
4548         to define main with arguments, for C++.  Reported by Eric Blake.
4549         * m4/c-stack.m4 (AC_SYS_XSI_STACK_OVERFLOW_HEURISTIC):
4550         Prefer 'int main ()' to 'int main (void)', for C++.
4551         * m4/getcwd-path-max.m4 (gl_FUNC_GETCWD_PATH_MAX): Likewise.
4552         * m4/fsusage.m4 (gl_FILE_SYSTEM_USAGE): Specify a return type
4553         for 'main', for C99 and C++.
4554
4555 2006-04-24  Paul Eggert  <eggert@cs.ucla.edu>
4556
4557         * m4/fsusage.m4 (gl_FILE_SYSTEM_USAGE): Use return, not exit.
4558         Don't assume that exit status -1 is valid.
4559         * m4/nanosleep.m4 (gl_FUNC_NANOSLEEP): Likewise.
4560         * m4/putenv.m4 (gl_FUNC_PUTENV): Likewise.
4561         * m4/rmdir-errno.m4 (gl_FUNC_RMDIR_NOTEMPTY): Likewise.
4562         * m4/readdir.m4 (GL_FUNC_READDIR): Include <stdlib.h>.
4563         * m4/rename.m4 (vb_FUNC_RENAME): Likewise.
4564         * m4/unlink-busy.m4 (gl_FUNC_UNLINK_BUSY_TEXT): Use AC_RUN_IFELSE,
4565         not AC_TRY_RUN.  Use return, not exit.  Don't assume that
4566         functions can be used without declaring them, or that you can
4567         exit with status -1.
4568         * m4/utimes-null.m4 (gl_FUNC_UTIMES_NULL): Likewise.
4569
4570 2006-04-24  Karl Berry  <karl@gnu.org>
4571
4572         * config/srclist.txt (longdouble.m4): sync lost.
4573
4574 2006-04-24  Eric Blake  <ebb9@byu.net>
4575
4576         * m4/strerror_r.m4 (AC_FUNC_STRERROR_R): Avoid unused variable warning.
4577
4578 2006-04-24  Bruno Haible  <bruno@clisp.org>
4579
4580         * m4/poll.m4 (gl_FUNC_POLL): When cross-compiling, reject also the
4581         poll() implementation in AIX.
4582         Reported by Ralf Wildenhues <Ralf.Wildenhues@gmx.de>.
4583
4584 2006-04-24  Bruno Haible  <bruno@clisp.org>
4585
4586         * m4/poll.m4 (gl_FUNC_POLL): Rearrange code, so that POLL_H gets
4587         assigned exactly once.
4588
4589 2006-04-23  Claudio Fontana  <claudio@gnu.org>
4590             Bruno Haible  <bruno@clisp.org>
4591
4592         * modules/gettext (Makefile.am): Add a -I flag for <libintl.h>.
4593         * gnulib-tool (func_emit_lib_Makefile_am): Emit empty default value
4594         for AM_CPPFLAGS.
4595
4596 2006-04-23  Bruno Haible  <bruno@clisp.org>
4597
4598         * modules/copy-file: Depend on unistd.
4599         * modules/execute: Likewise.
4600         * modules/fatal-signal: Likewise.
4601         * modules/findprog: Likewise.
4602         * modules/mkdtemp : Likewise.
4603         * modules/pipe: Likewise.
4604         * modules/wait-process: Likewise.
4605
4606 2006-04-23  Bruno Haible  <bruno@clisp.org>
4607
4608         * lib/fwriteerror.c (fwriteerror): Call fclose also when an error
4609         condition was already detected.
4610         Reported by Ben Pfaff <blp@cs.stanford.edu>.
4611
4612 2006-04-23  Bruno Haible  <bruno@clisp.org>
4613
4614         * lib/copy-file.c: Include <unistd.h> unconditionally.
4615         * lib/execute.c: Likewise.
4616         * lib/fatal-signal.c: Likewise.
4617         * lib/findprog.c: Likewise.
4618         * lib/mkdtemp.c: Likewise.
4619         * lib/pipe.h: Likewise.
4620         * lib/pipe.c: Likewise.
4621         * lib/wait-process.h: Likewise.
4622
4623 2006-04-23  Bruno Haible  <bruno@clisp.org>
4624
4625         * gnulib-tool (func_usage): Fix --import description. Document
4626         --update.
4627         (func_import): Create temporary file in a temporary directory, if
4628         --dry-run is specified. Silence errors from 'grep' when there are no
4629         m4 files in $m4dir.
4630         (func_create_testdir): Silence errors from 'grep' when there are no
4631         m4 files in $m4dir.
4632         Reported by Karl Berry <karl@freefriends.org>.
4633
4634 2006-04-20  Bruno Haible  <bruno@clisp.org>
4635
4636         * m4/argp.m4 (gl_ARGP): Don't call AC_CHECK_DECLS_ONCE with more than
4637         one argument, so that the code will be portable to Autoconf 2.60.
4638         * m4/getlogin_r.m4 (gl_PREREQ_GETLOGIN_R): Likewise.
4639         * m4/getpass.m4 (gl_PREREQ_GETPASS): Likewise.
4640         * m4/unlocked-io.m4 (gl_FUNC_GLIBC_UNLOCKED_IO): Likewise.
4641
4642 2006-04-19  Derek Price  <derek@ximbiot.com>
4643             Eric Blake  <ebb9@byu.net>
4644
4645         * m4/full-header-path.m4 (gl_FULL_HEADER_PATH): Use </full/path.h>
4646         rather than "/full/path.h".  Update comment to match.  Shorten &
4647         generalize m4_translit call via AS_TR_CPP.
4648
4649 2006-04-19  Derek Price  <derek@ximbiot.com>
4650             Eric Blake  <ebb9@byu.net>
4651
4652         * lib/inttypes.h: Correct grammar in comment.
4653
4654 2006-04-18  Derek Price  <derek@ximbiot.com>
4655             Paul Eggert  <eggert@cs.ucla.edu>
4656
4657         * modules/inttypes: New file.
4658         * modules/strtoimax, modules/strtoumax: Depend on inttypes.
4659
4660 2006-04-18  Derek Price  <derek@ximbiot.com>
4661             Paul Eggert  <eggert@cs.ucla.edu>
4662
4663         * m4/_inttypes_h.m4, full-header-path.m4, include_next: New files.
4664
4665 2006-04-18  Derek Price  <derek@ximbiot.com>
4666             Paul Eggert  <eggert@cs.ucla.edu>
4667
4668         * lib/inttypes.h: New file.
4669         * lib/strtoimax.c: Assume <inttypes.h>.
4670
4671 2006-04-15  Paul Eggert  <eggert@cs.ucla.edu>
4672
4673         * lib/utimens.c (futimens): glibc futimesat messes up if /proc
4674         isn't mounted.  Problem reported by Kir Kolyshkin.
4675
4676 2006-04-13  Paul Eggert  <eggert@cs.ucla.edu>
4677
4678         * lib/regcomp.c (init_dfa): Don't use wchar_t or wctype_t if
4679         RE_ENABLE_I18N is not defined.  Problem reported by Mark D. Baushke via
4680         Derek R. Price.
4681         * lib/regex.h (RE_DUP_MAX): Update comment to match current
4682         implementation.
4683
4684 2006-04-12  Eric Blake  <ebb9@byu.net>
4685
4686         * modules/time_r (Makefile.am): Remove lib_SOURCES line, as this
4687         is now done automatically by the corresponding Autoconf macro.
4688
4689 2006-04-11  Paul Eggert  <eggert@cs.ucla.edu>
4690
4691         * m4/time_r.m4 (gl_TIME_R): Add AC_LIBSOURCES for time_r.c and
4692         time_r.h.
4693
4694 2006-04-09  Paul Eggert  <eggert@cs.ucla.edu>
4695
4696         Merge regex changes from libc, removing some of our
4697         POSIX-conformance changes that were rejected and redoing them in a
4698         less-intrusive way.
4699
4700         * lib/regcomp.c (re_compile_internal, init_dfa):
4701         Length arg is now size_t, not Idx.  All uses changed.
4702         (peek_token): Forward decl now says internal_function.
4703         (__re_error_msgid, __re_error_msgid_idx):
4704         Now static rather than extern with attribute_hidden.
4705         (re_compile_pattern) [!defined _LIBC]: Use K&R-style defn.
4706         For some reason libc prefers K&R style defns for external functions.
4707         (regerror) [!defined _LIBC]: Likewise.
4708         (re_set_syntax, re_compile_fastmap, regcomp, regfree, re_comp):
4709         (seek_collating_symbol_entry, lookup_collation_sequence_value):
4710         (build_range_exp, build_collating_symbol):
4711         Use K&R-style defn.
4712         (re_compile_fastmap): Use '\0' to memset, not 0.
4713         (utf8_sb_map): Make the calculations more obvious.
4714         (init_dfa, parse_bracket_exp, build_charclass_op):
4715         Call calloc and cast result, as glibc does.
4716         (init_word_char, fetch_token, peek_token, peek_token_bracket):
4717         (build_range_exp, build_collating_symbol):
4718         Now internal functions.
4719
4720         * lib/regex.c [!defined _LIBC]: Allow compiling with C++ compilers.
4721
4722         * lib/regex.h (__USE_GNU_REGEX): New macro.  Don't depend on
4723         _REGEX_SOURCE any more; depend on _GNU_SOURCE instead.
4724         Don't depend on VMS; depend on __VMS instead, for POSIX
4725         namespace cleanness.
4726         (regoff_t): Define to ssize_t, not long int.
4727
4728         Remove the REG_ macros named below.  Instead, make the old names
4729         (e.g., RE_BACKSLASH_ESCAPE_IN_LISTS) visible only if
4730         __USE_GNU_REGEX.
4731         (REG_BACKSLASH_ESCAPE_IN_LISTS):
4732         (REG_BK_PLUS_QM, REG_CHAR_CLASSES, REG_CONTEXT_INDEP_ANCHORS):
4733         (REG_CONTEXT_INDEP_OPS, REG_CONTEXT_INVALID_OPS):
4734         (REG_DOT_NEWLINE, REG_DOT_NOT_NULL, REG_HAT_LISTS_NOT_NEWLINE):
4735         (REG_INTERVALS, REG_LIMITED_OPS, REG_NEWLINE_ALT):
4736         (REG_NO_BK_BRACES, REG_NO_BK_PARENS, REG_NO_BK_REFS):
4737         (REG_NO_BK_VBAR, REG_NO_EMPTY_RANGES):
4738         (REG_UNMATCHED_RIGHT_PAREN_ORD, REG_NO_POSIX_BACKTRACKING):
4739         (REG_NO_GNU_OPS, REG_DEBUG, REG_INVALID_INTERVAL_ORD):
4740         (REG_IGNORE_CASE, REG_CARET_ANCHORS_HERE):
4741         (REG_CONTEXT_INVALID_DUP, REG_NO_SUB, REG_SYNTAX_EMACS):
4742         (REG_SYNTAX_AWK, REG_SYNTAX_GNU_AWK, REG_SYNTAX_POSIX_AWK):
4743         (REG_SYNTAX_GREP, REG_SYNTAX_EGREP, REG_SYNTAX_POSIX_EGREP):
4744         (REG_SYNTAX_ED, REG_SYNTAX_SED, _REG_SYNTAX_POSIX_COMMON):
4745         (REG_SYNTAX_POSIX_BASIC, REG_SYNTAX_POSIX_MINIMAL_BASIC):
4746         (REG_SYNTAX_POSIX_EXTENDED, REG_SYNTAX_POSIX_MINIMAL_EXTENDED):
4747         (REG_DUP_MAX, REG_UNALLOCATED, REG_REALLOCATE, REG_FIXED):
4748         (REG_NREGS):
4749         Remove.  All uses replaced by the old RE_* names.
4750         (RE_BACKSLASH_ESCAPE_IN_LISTS):
4751         (RE_BK_PLUS_QM, RE_CHAR_CLASSES, RE_CONTEXT_INDEP_ANCHORS):
4752         (RE_CONTEXT_INDEP_OPS, RE_CONTEXT_INVALID_OPS):
4753         (RE_DOT_NEWLINE, RE_DOT_NOT_NULL, RE_HAT_LISTS_NOT_NEWLINE):
4754         (RE_INTERVALS, RE_LIMITED_OPS, RE_NEWLINE_ALT):
4755         (RE_NO_BK_BRACES, RE_NO_BK_PARENS, RE_NO_BK_REFS):
4756         (RE_NO_BK_VBAR, RE_NO_EMPTY_RANGES):
4757         (RE_UNMATCHED_RIGHT_PAREN_ORD, RE_NO_POSIX_BACKTRACKING):
4758         (RE_NO_GNU_OPS, RE_DEBUG, RE_INVALID_INTERVAL_ORD):
4759         (RE_IGNORE_CASE, RE_CARET_ANCHORS_HERE):
4760         (RE_CONTEXT_INVALID_DUP, RE_NO_SUB):
4761         Don't bother having these macros be independent of each others'
4762         values, since they no longer exist in the POSIX name space.
4763
4764         Rename the following member names back to their old names,
4765         unless !__USE_GNU_REGEX.  All uses changed back.
4766         (buffer): Renamed from re_buffer.
4767         (allocated): Renamed from re_allocated.
4768         (used): Renamed from re_used.
4769         (syntax): Renamed from re_syntax.
4770         (fastmap): Renamed from re_fastmap.
4771         (translate): Renamed from re_translate.
4772         (can_be_null): Renamed from re_can_be_null.
4773         (regs_allocated): Renamed from re_regs_allocated.
4774         (fastmap_accurate): Renamed from re_fastmap_accurate.
4775         (no_sub): Renamed from re_no_sub.
4776         (not_bol): Renamed from re_not_bol.
4777         (not_eol): Renamed from re_not_eol.
4778         (newline_anchor): Renamed from re_newline_anchor.
4779         (num_regs): Renamed from rm_num_regs.
4780         (start): Renamed from rm_start.
4781         (end): Renamed from rm_end.
4782
4783         (free_state): Move up a bit.
4784
4785         * lib/regex_internal.h (inline) [__GNUC__ < 3 && defined _LIBC]:
4786         #define to be empty.
4787         (ASCII_CHARS): New macro, replacing all uses of 0x80 and/or SBC_MAX / 2
4788         when that is what is intended.
4789         (SBC_MAX): Define to UCHAR_MAX + 1, not 256.
4790         (__re_error_msgid, __re_error_msgid_idx): Remove decls; not needed.
4791         (MAX): New macro.
4792         (re_xmalloc, re_calloc, re_xrealloc, re_x2realloc): Remove.
4793         All uses changed back to re_malloc, etc.  It's now the caller's
4794         responsibility to check for overflow; all callers changed.
4795         (re_alloc_oversized, re_x2alloc_oversized, re_xnmalloc, re_xnrealloc):
4796         (re_x2nrealloc): Remove.
4797         (free_state): Remove decl.
4798
4799         * lib/regexc.c (regexec, re_match, re_search, re_match_2, re_search_2):
4800         (re_set_registers, re_exec):
4801         Use K&R-style defn.
4802
4803         2006-01-31  Roland McGrath  <roland@redhat.com>
4804
4805         * lib/regcomp.c (calc_eclosure_iter): Remove dead variables.
4806         Reported by Mike Frysinger <vapier@gentoo.org>.
4807
4808         2006-01-15  Andreas Jaeger  <aj@suse.de>
4809
4810         [BZ #1950]
4811         * lib/regex_internal.c (re_string_reconstruct): Adjust for
4812         build_wcs_upper_buffer change.
4813         (build_wcs_upper_buffer): Change return type.
4814
4815         2005-12-10  Ulrich Drepper  <drepper@redhat.com>
4816
4817         * lib/regex_internal.h: Include <stdint.h> if available.
4818
4819         2005-12-06  Paolo Bonzini  <bonzini@gnu.org>
4820
4821         * lib/regex_internal.h (SIZE_MAX): Provide a default definition.
4822
4823         2005-10-14  Ulrich Drepper  <drepper@redhat.com>
4824
4825         * lib/regcomp.c: Adjust for changed secondary hash function.
4826
4827         2005-09-30  Ulrich Drepper  <drepper@redhat.com>
4828
4829         * lib/regex.h: Pretty printing.
4830         Clean up namespace a bit.
4831
4832         2005-09-30  Jakub Jelinek  <jakub@redhat.com>
4833
4834         * lib/regexec.c (update_cur_sifted_state, check_arrival,
4835         check_arrival_add_next_nodes): Avoid using uninitialized variable.
4836
4837         2005-09-06  Paul Eggert  <eggert@cs.ucla.edu>
4838                     Ulrich Drepper  <drepper@redhat.com>
4839
4840         [BZ #1302]
4841         * lib/regex_internal.h (bitset_t): Renamed from bitset.  All uses
4842         changed.
4843         (bitset_word_t): Renamed from bitset_word.  All uses changed.
4844
4845         2005-09-22  Ulrich Drepper  <drepper@redhat.com>
4846
4847         [BZ #281]
4848         * lib/regex.h: Define RE_TRANSLATE_TYPE as unsigned char *.
4849         * lib/regcomp.c: Remove unnecessary uses of
4850         unsigned RE_TRANSLATE_TYPE.
4851         * lib/regex_internal.h: Likewise.
4852         * lib/regex_internal.c: Likewise.
4853         * lib/regexec.c: Likewise.
4854         Based on a patch by Stepan Kasal <kasal@ucw.cz>.
4855
4856         2005-09-07  Ulrich Drepper  <drepper@redhat.com>
4857
4858         * lib/regexec.c (find_recover_state): Remove unnecessary
4859         initialization.
4860         (transit_state_bkref): Make DFA a const pointer.
4861         (get_subexp): Likewise.
4862         (check_arrival): Likewise.
4863         (update_cur_sifted_state): Likewise.
4864         (re_search_internal): Likewise.
4865         (prune_impossible_nodes): Likewise.
4866         (acquire_init_state_context): Likewise.
4867         (proceed_next_node): Likewise.
4868         (set_regs): Likewise.
4869         (free_fail_stack_return): Likewise.
4870         (check_arrival_expand_ecl): Mark DFA parameter as const.
4871         (check_arrival_expand_ecl_sub): Likewise.
4872         (check_subexp_limits): Likewise.
4873         (sub_epsilon_src_nodes):  Likewise.
4874         (add_epsilon_src_nodes):  Likewise.
4875         (merge_state_array): Likewise.
4876         (update_regs): Likewise.
4877         (build_trtable): Likewise.
4878         (sift_states_backward): Mark MCTX parameter as const.
4879         (build_sifted_states): Likewise.
4880         (update_cur_sifted_state): Likewise.
4881         (sift_states_mkref): Likewise.
4882         (check_arrival_expand_ecl): Mark eclosure as const.
4883         (check_dst_limits_calc_pos_1): Likewise.
4884         * lib/regex_internal.h (re_match_context_t): Make dfa a const
4885         pointer.
4886
4887         2005-09-06  Ulrich Drepper  <drepper@redhat.com>
4888
4889         * lib/regexec.c (merge_state_with_log): Define dfa as const pointer.
4890         (transit_state_sb): Likewise.
4891         (transit_state_mb): Likewise.
4892         (sift_states_iter_mb): Likewise.
4893         (check_arrival_add_next_nodes): Likewise.
4894         (check_node_accept_bytes): Change first parameter to pointer-to-const.
4895         [_LIBC] (re_search_2_stub): Use mempcpy.
4896
4897         * lib/regex_internal.c (re_string_reconstruct): Avoid calling
4898         mbrtowc for very simple UTF-8 case.
4899
4900         * lib/regex_internal.c (re_acquire_state): Make DFA pointer arg
4901         a pointer-to-const.
4902         (re_acquire_state_context): Likewise.
4903         * lib/regex_internal.h: Adjust prototypes.
4904
4905         * lib/regex.c: Prevent using C++ compilers.
4906
4907         * lib/regex_internal.c (re_acquire_state): Minor code rearrangement.
4908         (re_acquire_state_context): Likewise.
4909
4910 2006-04-09  Paul Eggert  <eggert@cs.ucla.edu>
4911
4912         * modules/regex (Depends-on): Add ssize_t.
4913
4914 2006-04-09  Paul Eggert  <eggert@cs.ucla.edu>
4915
4916         * m4/regex.m4 (gl_REGEX): Check for new glibc interface to
4917         translation table.
4918
4919 2006-04-09  Paul Eggert  <eggert@cs.ucla.edu>
4920
4921         * doc/gnulib-tool.texi (Modified imports): pathname -> file name.
4922
4923 2006-03-29  Mark D. Baushke  <mdb@gnu.org>
4924             Bruno Haible  <bruno@clisp.org>
4925
4926         * lib/stdint_.h: On OpenBSD, don't redefine types already included in
4927         <sys/types.h> and <inttypes.h>.
4928
4929 2006-03-25  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
4930
4931         * m4/argz.m4 (gl_FUNC_ARGZ): If we define `error_t', also define
4932         `__error_t_defined', so argp.h will not typedef the former.
4933
4934 2006-03-25  Paul Eggert  <eggert@cs.ucla.edu>
4935
4936         * m4/regex.m4 (gl_REGEX): Don't insist on REG_SYNTAX_POSIX_EGREP,
4937         REG_SYNTAX_EMACS, and REG_IGNORE_CASE.  Settle for the traditional
4938         glibc names.  Even if glibc is changed to conform to POSIX, the
4939         traditional names will be available anyway, since regex depends on
4940         the extensions module.  Also, fix a longstanding typo in the
4941         implementation of Spencer ERE test #75 from grep 2.3.  Problems
4942         reported by Emanuele Giaquinta.  Also, change sense of cached
4943         variable, so that the message makes sense.
4944
4945 2006-03-24  Simon Josefsson  <jas@extundo.com>
4946
4947         * lib/base64.c: Fix problems reported by Eric Blake <ebb9@byu.net>,
4948         including some doc fixes.
4949         (base64_encode_alloc): Fix +1 bug on allocation failures.
4950
4951 2006-03-24  Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
4952
4953         * lib/base64.c (base64_encode): Do not read past end of array with
4954         unsanitized input on systems with CHAR_BIT > 8.
4955
4956 2006-03-24  Eric Blake  <ebb9@byu.net>
4957
4958         * lib/time_r.c (copy_string_result): Remove, as it is no longer used.
4959
4960 2006-03-22  Karl Berry  <karl@gnu.org>
4961
4962         * config/srclist.txt (*setenv.[ch]): get from coreutils.
4963         * config/srclistvars.sh (COREUTILS): new var.
4964
4965 2006-03-17  Jim Meyering  <jim@meyering.net>
4966
4967         * m4/regex.m4 (gl_REGEX): Fix typo in last change:
4968         s/_REGEX_WIDE_OFFSETS/_REGEX_LARGE_OFFSETS/.
4969
4970 2006-03-16  Paul Eggert  <eggert@cs.ucla.edu>
4971
4972         * m4/regex.m4 (gl_REGEX): Don't check for off_t, since the code
4973         no longer needs it.  Instead, check that regoff_t is as least
4974         as wide as ptrdiff_t.
4975
4976         Don't define _REGEX_WIDE_OFFSETS unless using the included regex,
4977         so that our regex.h stays compatible with the installed regex.
4978         This is helpful for installers who configure --without-included-regex.
4979         Problem reported by Emanuele Giaquinta.
4980
4981 2006-03-16  Paul Eggert  <eggert@cs.ucla.edu>
4982
4983         * lib/regex.h (regoff_t) [defined _REGEX_LARGE_OFFSETS]:
4984         Typedef to long int, not to off_, as POSIX will likely change
4985         in that direction.
4986
4987 2006-03-15  Eric Blake  <ebb9@byu.net>
4988
4989         * m4/dirfd.m4 (gl_FUNC_DIRFD): Use AC_REQUIRE for AC_HEADER_DIRENT.
4990
4991 2006-03-13  Sergey Poznyakoff  <gray@gnu.org.ua>
4992
4993         * lib/argp-help.c (validate_uparams): Fix typo
4994         * lib/argp-parse.c (argp_default_options): Consistently begin help
4995         messages with a lowercase letter.
4996
4997 2006-03-11  Paul Eggert  <eggert@cs.ucla.edu>
4998
4999         * lib/time_r.h (asctime_r, ctime_r): Remove.  These functions can
5000         overrun buffers and shouldn't be used (much as gets shouldn't be
5001         used).
5002         * lib/time_r.c (asctime_r, ctime_r): Likewise.
5003
5004 2006-03-08  Simon Josefsson  <jas@extundo.com>
5005
5006         * m4/gc-random.m4: Permit 'no' as variable values and fix warnings,
5007         suggested by Ralf Wildenhues <Ralf.Wildenhues@gmx.de>.
5008
5009 2006-03-08  Simon Josefsson  <jas@extundo.com>
5010
5011         * m4/gc-random.m4: Call AC_CANONICAL_HOST and use $host_os instead of
5012         $target, suggested by Ralf Wildenhues <Ralf.Wildenhues@gmx.de>.
5013
5014 2006-03-08  Simon Josefsson  <jas@extundo.com>
5015
5016         * lib/gc-gnulib.c (randomize): Don't open files called 'no', they
5017         signal that configure disabled the device.
5018
5019 2006-03-08  Simon Josefsson  <jas@extundo.com>
5020
5021         * build-aux/maint.mk: Fix refresh-po, to handle no translated
5022         languages.
5023
5024 2006-03-07  Simon Josefsson  <jas@extundo.com>
5025
5026         * modules/getopt (Depends-on): Add unistd.
5027
5028         * modules/unistd: New file.
5029
5030 2006-03-07  Simon Josefsson  <jas@extundo.com>
5031
5032         * modules/gc-random: New file.
5033
5034 2006-03-07  Simon Josefsson  <jas@extundo.com>
5035
5036         * m4/unistd_h.m4: New file.
5037
5038 2006-03-07  Simon Josefsson  <jas@extundo.com>
5039
5040         * m4/readline.m4 (gl_FUNC_READLINE): Rewrite the cached part of the
5041         test to be side-effect free by storing the result in the cache
5042         variable gl_cv_lib_readline, and moving the assignment of
5043         LIBREADLINE and LTLIBREADLINE outside the COMMANDS-TO-SET-IT.
5044         From Ralf Wildenhues <Ralf.Wildenhues@gmx.de>.
5045
5046 2006-03-07  Simon Josefsson  <jas@extundo.com>
5047
5048         * m4/gc-random.m4: New file, mostly from gc.m4.  Warn instead of
5049         error on missing devices (the functions will return an error).
5050
5051         * m4/gc.m4: Move random stuff to gc-random.m4
5052
5053 2006-03-07  Simon Josefsson  <jas@extundo.com>
5054
5055         * lib/unistd_.h: New file.
5056
5057 2006-03-07  Simon Josefsson  <jas@extundo.com>
5058
5059         * lib/gc-libgcrypt.c, gc-gnulib.c: Use GC_USE_RANDOM.
5060
5061 2006-03-07  Paul Eggert  <eggert@cs.ucla.edu>
5062
5063         * m4/unistd_h.m4 (gl_HEADER_UNISTD): Rename, to match modules file.
5064         Problem reported by Juan Manuel Guerrero.
5065
5066 2006-03-07  Paul Eggert  <eggert@cs.ucla.edu>
5067
5068         * lib/c-stack.c: Include unistd.h unconditionally, since we now assume
5069         the unistd module.
5070         * lib/getlogin_r.c: Likewise.
5071         * lib/getlogin_r.h: Likewise.
5072         * lib/glob.c: Likewise.
5073         * lib/pagealign_alloc.c: Likewise.
5074         * lib/unistd_.h: Remove; no longer needed.
5075
5076 2006-03-07  Paul Eggert  <eggert@cs.ucla.edu>
5077
5078         * MODULES.html.sh (Support for systems lacking POSIX:2001):
5079         Add unistd.
5080         * modules/c-stack (Depends-on): Add unistd.
5081         * modules/getlogin_r: Likewise.
5082         * modules/glob: Likewise.
5083         * modules/pagealign_alloc: Likewise.
5084         * modules/unistd (Files): Remove lib/unistd_.h.
5085         (EXTRA_DIST): Remove.
5086         (unistd.h): Create using 'echo' rather than 'cp', so that we don't
5087         need unistd_.h.
5088         (MOSTLYCLEANFILES): Remove unistd.h-t.
5089
5090 2006-03-03  Simon Josefsson  <jas@extundo.com>
5091
5092         * build-aux/maint.mk: Add several syntax checks from CoreUtils.
5093
5094 2006-03-03  Simon Josefsson  <jas@extundo.com>
5095
5096         * build-aux/maint.mk: Add refresh-po rule, based on ideas from
5097         libidn and bison.
5098
5099 2006-03-03  Simon Josefsson  <jas@extundo.com>
5100
5101         * build-aux/maint.mk: Add indent target.
5102
5103 2006-03-03  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de> (tiny change)
5104
5105         * m4/poll.m4 (gl_FUNC_POLL): If we deem poll(2) unacceptable, use
5106         our replacement poll.h in any case, to avoid a differing
5107         declaration from a system header.  Seen on AIX.
5108
5109 2006-03-01  Simon Josefsson  <jas@extundo.com>
5110
5111         * lib/readline.c: Fix typo, tiny patch from Stepan Kasal
5112         <kasal@ucw.cz>.
5113
5114 2006-03-01  Paul Eggert  <eggert@cs.ucla.edu>
5115
5116         * modules/gettime (Depends-on): Add extensions module.
5117         * modules/nanosleep (Depends-on): Likewise.
5118         * modules/settime (Depends-on): Likewise.
5119
5120 2006-03-01  Paul Eggert  <eggert@cs.ucla.edu>
5121
5122         * m4/clock_time.m4 (gl_CLOCK_TIME): Require gl_USE_SYSTEM_EXTENSIONS,
5123         not merely AC_GNU_SOURCE, for the benefit of Solaris 10 when compiled
5124         pedantically.
5125         * m4/nanosleep.m4 (gl_FUNC_NANOSLEEP): Likewise.
5126         * m4/timespec.m4 (gl_TIMESPEC): Likewise.
5127
5128         * m4/extensions.m4 (gl_USE_SYSTEM_EXTENSIONS): Use "=" with "test",
5129         not "==".  Reported by Ralf Wildenhues.
5130
5131 2006-03-01  Karl Berry  <karl@gnu.org>
5132
5133         * doc/Copyright/request-*: new files, synced from gnuorg.
5134
5135 2006-03-01  Karl Berry  <karl@gnu.org>
5136
5137         * config/srclist.txt (Copyright/*): new entries.
5138
5139 2006-02-28  Simon Josefsson  <jas@extundo.com>
5140
5141         * lib/getopt.c: Protect #include of unistd.h, for MSVS.
5142
5143 2006-02-27  Simon Josefsson  <jas@extundo.com>
5144
5145         * lib/base64.h: Indent #define's.  From Jim Meyering
5146         <jim@meyering.net>.
5147
5148 2006-02-27  Jim Meyering  <jim@meyering.net>
5149
5150         Revert the change of 2006-02-24, so these files can continue
5151         to be sync'd from gettext.
5152         * lib/mkdtemp.c, setenv.c, unsetenv.c: *Un*-normalize inclusion
5153         of `config.h'.
5154
5155 2006-02-26  Paul Eggert  <eggert@cs.ucla.edu>
5156
5157         * modules/intprops: New file.
5158         * MODULES.html.sh (Numeric conversion functions <stdlib.h>):
5159         Add intprops.
5160         * modules/getloadavg (Files): Remove lib/intprops.h.
5161         (Depends-on): Add intprops.
5162         * modules/human: Likewise.
5163         * modules/inttostr: Likewise.
5164         * modules/openat: Likewise.
5165         * modules/sig2str: Likewise.
5166         * modules/userspec: Likewise.
5167         * modules/utimecmp: Likewise.
5168         * modules/xnanosleep: Likewise.
5169         * modules/xstrtol: Likewise.
5170
5171 2006-02-24  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>  (tiny changes)
5172
5173         * modules/xstrtod: Omit xstrtod.h, xstrtod.c; they're in LIB_SOURCES.
5174         * modules/lock-tests (TESTS): Use $(EXEEXT).
5175         * modules/tls-tests: Likewise.
5176         * modules/argp-tests: Likewise.
5177         (check_PROGRAMS): New var, replacing...
5178         (noinst_PROGRAMS, test_argp_SOURCES): Remove.
5179
5180 2006-02-24  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
5181
5182         * lib/mkdtemp.c, lib/setenv.c, lib/unsetenv.c: Normalize inclusion of
5183         `config.h'.
5184
5185 2006-02-24  Paul Eggert  <eggert@cs.ucla.edu>
5186
5187         * lib/glob.c: Say "invalid" rather than "illegal" in comments.
5188
5189 2006-02-22  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
5190
5191         Sync from coreutils.
5192         * m4/mkdir-p.m4 (gl_MKDIR_PARENTS): Require gl_FUNC_LCHMOD and
5193         gl_CHDIR_SAFER.
5194
5195 2006-02-22  Jim Meyering  <jim@meyering.net>
5196
5197         Sync from coreutils.
5198         * m4/chdir-safer.m4: New file.
5199
5200 2006-02-20  Paul Eggert  <eggert@cs.ucla.edu>
5201
5202         * lib/getcwd.c (AT_FDCWD): Work around a bug in Solaris 9 and 10, where
5203         AT_FDCWD exceeds INT_MAX.
5204         * lib/openat.h (AT_FDCWD): Likewise.
5205
5206 2006-02-17  Eric Blake  <address@hidden>
5207
5208         * m4/getaddrinfo.m4 (gl_GETADDRINFO): Fix caching error.
5209
5210 2006-02-16  Simon Josefsson  <jas@extundo.com>
5211
5212         * modules/getaddrinfo (Depends-on): Add sys_socket.
5213
5214 2006-02-15  Simon Josefsson  <jas@extundo.com>
5215
5216         * build-aux/maint.mk: Add dsyntax-check rule.
5217
5218 2006-02-15  Eric Blake  <ebb9@byu.net>
5219
5220         * m4/sys_socket_h.m4 (gl_HEADER_SYS_SOCKET): Don't attempt using
5221         winsock2.h or ws2tcpip.h when sys/socket.h is present. Fixes
5222         'present but cannot compile' warnings on cygwin.
5223         * m4/socklen.m4 (gl_TYPE_SOCKLEN_T): Use gl_HEADER_SYS_SOCKET.  Don't
5224         use ws2tcpip.h if sys/socket.h works.
5225         * m4/getaddrinfo.m4 (gl_PREREQ_GETADDRINFO): Use gl_HEADER_SYS_SOCKET.
5226         (gl_GETADDRINFO): Don't use ws2tcpip.h when sys/socket.h is present.
5227
5228 2006-02-14  Simon Josefsson  <jas@extundo.com>
5229
5230         * modules/maintainer-makefile (Files): Rename.
5231
5232         * build-aux/GNUmakefile: Rename Makefile.maint to maint.mk
5233         and (the local) Makefile.cfg to maint-cfg.mk.
5234
5235         * build-aux/Makefile.maint, build-aux/maint.mk: Renamed the former
5236         to the latter.
5237
5238         * modules/maintainer-makefile: New module.
5239
5240         * build-aux/Makefile.maint: New file, from GNU CoreUtils, although
5241         severaly stripped to make it possible to build it up from scratch
5242         with reliable tests.
5243
5244         * build-aux/GNUmakefile: New file, from GNU CoreUtils with some
5245         fixes to permit overriding the default actions when configure and
5246         makefile are not available.
5247
5248 2006-02-14  Paul Eggert  <eggert@cs.ucla.edu>
5249
5250         Sync from coreutils.
5251         * modules/lstat (Depends-on): Don't depend on xalloc.
5252         (License): Change from GPL to LGPL, since this is now simply a
5253         replacement for a libc function.
5254
5255 2006-02-14  Jim Meyering  <jim@meyering.net>
5256
5257         Sync from coreutils.
5258
5259         Eliminate the unwelcome (albeit unlikely) possibility of xmalloc
5260         failure on deficient systems, and simplify gnulib lgpl dependencies.
5261         * lib/lstat.c (rpl_lstat): Rewrite to use stat() in place of the
5262         xmalloc/lstat combination.  Based on a patch from Bruno Haible.
5263
5264         * lib/xalloc-die.c: Remove unused definition of N_.
5265
5266 2006-02-14  Jim Meyering  <jim@meyering.net>
5267
5268         Sync from coreutils.
5269         * m4/ls-mntd-fs.m4 (AC_FUNC_GETMNTENT): Invoke
5270         AC_CHECK_FUNCS(getmntent) unconditionally so that tests of
5271         $ac_cv_func_getmntent (e.g., in gl_LIST_MOUNTED_FILE_SYSTEMS) need not
5272         double-quote uses of that variable, to accommodate the rare case in
5273         which getmntent is available in none of the libraries checked.  This
5274         happens at least on FreeBSD 5.0.
5275
5276 2006-02-13  Simon Josefsson  <jas@extundo.com>
5277
5278         * gnulib-tool (Usage): Fix --import, from
5279         karl@freefriends.org (Karl Berry).
5280
5281 2006-02-13  Sergey Poznyakoff  <gray@gnu.org.ua>
5282
5283         * lib/argp-fmtstream.c: Restore another bugfix lost on 2005-12-12
5284
5285 2006-02-07  Sergey Poznyakoff  <gray@gnu.org.ua>
5286
5287         * lib/argp-namefrob.h: Restore changes accidentally lost during the
5288         "autoupdate" on 2005-12-12.
5289
5290 2006-02-07  Paul Eggert  <eggert@cs.ucla.edu>
5291
5292         * modules/closeout (Depends-on): Remove atexit.
5293
5294 2006-02-07  Paul Eggert  <eggert@cs.ucla.edu>
5295
5296         * lib/closeout.c (close_stdout): Don't assume 'bool' converts nonzero
5297         ints to 0 or 1, as this isn't true for the stdbool.h substitute.
5298
5299 2006-02-05  Paul Eggert  <eggert@cs.ucla.edu>
5300
5301         * m4/extensions.m4 (gl_USE_SYSTEM_EXTENSIONS): Don't #define
5302         __EXTENSIONS__ if this causes compilation to fail.  Problem
5303         reported by Nelson H. F. Beebe with Solaris 10 and Sun C 5.7
5304         c89 -D_XOPEN_SOURCE -D_XOPEN_SOURCE_EXTENDED.
5305
5306 2006-01-27  Paul Eggert  <eggert@cs.ucla.edu>
5307
5308         * lib/fnmatch.c (L_): Renamed from L, to work around a bug in
5309         Mac OS X 10.3.9 with GCC 3 reported by Claudio Fontana in
5310         <http://lists.gnu.org/archive/html/bug-gnulib/2006-01/msg00074.html>.
5311         All uses changed.
5312
5313 2006-01-26  Simon Josefsson  <jas@extundo.com>
5314
5315         * lib/socket_.h: Set WINVER to 0x0501, to make sure getaddrinfo
5316         prototype is visible on mingw32.
5317
5318         * lib/getaddrinfo.h: Define EAI_ADDRFAMILY and EAI_SYSTEM if not set,
5319         for mingw32.
5320
5321         * lib/gai_strerror.c, getaddrinfo.h: Protect netdb.h #include (for
5322         mingw32).
5323
5324 2006-01-26  Paul Eggert  <eggert@cs.ucla.edu>
5325
5326         * lib/fts.c (diropen): Open with O_NOCTTY | O_NONBLOCK too.  Don't
5327         attempt to open for write; this always fails, at least on POSIX
5328         hosts.  This reinstates the 2006-01-09 change, which was
5329         inadvertently removed.
5330
5331 2006-01-26  Bruno Haible  <bruno@clisp.org>
5332
5333         * gnulib-tool (func_import): Use "trap 'exit $?' instead of "trap :".
5334         Reported by Paul Eggert.
5335
5336 2006-01-26  Bruno Haible  <bruno@clisp.org>
5337             Paul Eggert  <eggert@cs.ucla.edu>
5338
5339         * lib/stdbool_.h (_Bool)
5340         [(! (defined __cplusplus || defined __BEOS__)
5341           && !defined __GNUC__
5342           && !(defined __HP_cc || defined __xlc__
5343                || (defined __SUNPRO_C && (__SUNPRO_C < 0x550 || __STDC__ == 1))
5344                || defined __sgi))]:
5345         #define to signed char in these cases too; this simplifies
5346         the code (so that we don't have to worry about HP-UX, AIX, SunPRO,
5347         etc., separately) and makes it more conservative.
5348
5349 2006-01-25  Simon Josefsson  <jas@extundo.com>
5350
5351         * m4/getaddrinfo.m4: Look for getaddrinfo inside ws2tcip.h and
5352         -lws2_32.  Protect sys/socket.h and netdb.h #include's.  Include
5353         ws2tcpip.h with WINVER=0x0501.  All for mingw32.
5354
5355 2006-01-25  Sergey Poznyakoff  <gray@gnu.org.ua>
5356
5357         * lib/argp-namefrob.h: Bugfix. Remove stray #
5358
5359 2006-01-25  Paul Eggert  <eggert@cs.ucla.edu>
5360
5361         * m4/stdbool.m4 (AC_HEADER_STDBOOL): Check for xlc bug if __GCC__ too,
5362         so that we test the test.
5363         Check for yet another HP-UX cc bug involving *bool |= bool.
5364
5365 2006-01-25  Karl Berry  <karl@gnu.org>
5366
5367         * config/srclist.txt (vasnprintf.c): sync lost.
5368
5369 2006-01-25  Jim Meyering  <jim@meyering.net>
5370
5371         Sync from the stable (b5) branch of coreutils:
5372
5373         * lib/fts.c (fts_children): Don't let close() clobber errno from
5374         failed fchdir().
5375
5376         * lib/fts.c (fts_stat): When following a symlink-to-directory,
5377         don't necessarily interpret stat-fails+lstat-succeeds as indicating
5378         a dangling symlink.  That can also happen at least for ELOOP.
5379         The fix: return FTS_SLNONE only when the stat errno is ENOENT.
5380         FYI, this bug predates the inclusion of fts.c in coreutils.
5381
5382         * lib/fts.c (fts_open): Put new maxarglen declaration and uses
5383         in their own block, so pre-c99 compilers don't object.
5384
5385         Avoid the double-free (first in fts_read, second in fts_close) that
5386         would occur when an `active' directory is made inaccessible (e.g.,
5387         via chmod a-x) during a traversal.
5388         * lib/fts.c (fts_read): After a failed fchdir, update sp->fts_cur
5389         before returning.  Reproduce this failure by
5390         mkdir -p a/b; cd a; chmod a-x . b
5391         Reported by Stavros Passas.
5392
5393 2006-01-25  Jim Meyering  <jim@meyering.net>
5394
5395         * lib/fileblocks.c: Remove more useless parentheses.
5396         * lib/readutmp.h: Likewise.
5397
5398 2006-01-25  Bruno Haible  <bruno@clisp.org>
5399
5400         * lib/stdbool_.h (_Bool) [IRIX cc]: Define as 'signed char', to avoid
5401         warnings.
5402         Reported by Paul Eggert.
5403
5404 2006-01-25  Bruno Haible  <bruno@clisp.org>
5405
5406         * gnulib-tool (func_import): Use "trap :" instead of "trap -" to get
5407         rid of a trap command. For Solaris sh.
5408         Reported by Mark D. Baushke <mdb@gnu.org>.
5409
5410 2006-01-24  Simon Josefsson  <jas@extundo.com>
5411
5412         * lib/socket_.h (SHUT_WR, SHUT_RDWR): Don't hardcode, suggested by
5413         Bruno.
5414
5415 2006-01-24  Karl Berry  <karl@gnu.org>
5416
5417         * config/srclist.txt (argp-namefrob.h): sync lost.
5418
5419 2006-01-24  Jim Meyering  <jim@meyering.net>
5420
5421         * modules/openat (Files): Add lib/intprops.h.
5422         From Mark D. Baushke.
5423
5424 2006-01-24  Jim Meyering  <jim@meyering.net>
5425
5426         * m4/openat.m4 (gl_FUNC_OPENAT): Add AC_LIBSOURCES([intprops.h]).
5427         Reported by Mark D. Baushke.
5428
5429 2006-01-24  Jim Meyering  <jim@meyering.net>
5430
5431         * lib/socket_.h: Remove useless parentheses in uses of cpp `defined'.
5432
5433 2006-01-24  Bruno Haible  <bruno@clisp.org>
5434
5435         * modules/strnlen (Maintainer): Change from glibc to all.
5436
5437 2006-01-24  Bruno Haible  <bruno@clisp.org>
5438
5439         * m4/stdbool.m4 (AC_HEADER_STDBOOL): Check for IBM and HP-UX bugs.
5440         Patch by Paul Eggert.
5441
5442 2006-01-24  Bruno Haible  <bruno@clisp.org>
5443
5444         * lib/stdbool_.h (_Bool) [__cplusplus]: Don't define if the compiler
5445         already has it.
5446         Report and patch by Albert Chin-A-Young  <china@thewrittenword.com> on
5447         2005-11-26.
5448
5449         * lib/stdbool_.h (_Bool) [HP-UX cc, AIX cc,xlc]: Define as
5450         'signed char' to avoid problems with the built-in _Bool type.
5451         Reported by Paul Eggert on 2005-11-26.
5452
5453 2006-01-24  Bruno Haible  <bruno@clisp.org>
5454
5455         * gnulib-tool (func_import): Avoid constructing complicated sed
5456         expressions inside backquote.
5457         Report and solution by Mark D. Baushke <mdb@gnu.org>.
5458
5459 2006-01-23  Ulrich Drepper  <drepper@redhat.com>
5460
5461         These changes imported from libc.
5462         * lib/getopt.c: Use __fxprintf instead of inline stream orientation
5463         test and two separate function calls.
5464         * lib/strndup.c (__strndup): Add libc_hidden_def.
5465
5466 2006-01-23  Simon Josefsson  <jas@extundo.com>
5467
5468         * modules/lock-tests: Use check_PROGRAMS instead of noinst_PROGRAMS.
5469         Remove the test_*_SOURCES variable: automake infers it by default.
5470         * modules/tls-tests: Likewise.
5471
5472 2006-01-23  Paul Eggert  <eggert@cs.ucla.edu>
5473
5474         Work around porting bugs reported by Dieter in
5475         <http://lists.gnu.org/archive/html/bug-bison/2006-01/msg00049.html>.
5476         * lib/getopt.c (_NOPROTO): Remove; no longer needed.
5477         Include <stdlib.h> and <unistd.h> in all environments; it's safe now.
5478         Include "getopt.h" first, to check interface.
5479         (getenv): Declare only if defined HAVE_DECL_GETENV &&
5480         !HAVE_DECL_GETENV.
5481         * lib/strndup.c [!_LIBC]: Include "strndup.h" to get prototype.
5482         (__strndup): Revert to K&R-style function dfns, the glibc style.
5483         * lib/strnlen.c: Don't claim it's taken from glibc; it's not.
5484         (strnlen, __strnlen): Remove #defines and #undefs; not needed.
5485         Include strnlen.h first, to get prototype properly.
5486         (strnlen): Renamed from __strnlen.
5487         Remove weak alias.
5488
5489 2006-01-23  Paul Eggert  <eggert@cs.ucla.edu>
5490
5491         * m4/getopt.m4 (gl_PREREQ_GETOPT): Check for getenv decl.
5492
5493 2006-01-23  Paul Eggert  <eggert@cs.ucla.edu>
5494
5495         * config/srclist.txt: Adjust to reflect glibc reorganization.
5496         This affects only comments.
5497
5498 2006-01-22  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>  (tiny change)
5499
5500          * gnulib-tool, build-aux/csharpcomp.sh.in: Do not pass `-q' to mktemp.
5501          Reported by Bruce Korb <bkorb@gnu.org>.
5502
5503 2006-01-22  Paul Eggert  <eggert@cs.ucla.edu>
5504
5505         * lib/quotearg.c (quotearg_buffer_restyled): Add "default: break;"
5506         to pacify gcc -Wswitch-default.
5507
5508 2006-01-22  Bruno Haible  <bruno@clisp.org>
5509
5510         * lib/vasnprintf.c (VASNPRINTF): In the computation of the size of the
5511         temporary buffer for sprintf, take into account the precision also
5512         for 'd', 'i', 'u', 'o', 'x', 'X'.
5513
5514 2006-01-21  Sergey Poznyakoff  <gray@gnu.org.ua>
5515
5516         * modules/argp-tests: New module
5517         * tests/test-argp.c: New file
5518         * tests/test-argp-2.sh: New file
5519
5520 2006-01-21  Sergey Poznyakoff  <gray@gnu.org.ua>
5521
5522         * lib/argp-help.c (usage_long_opt): Do not print DOC options.
5523         (__argp_base_name): Removed
5524         * lib/argp-namefrob.h (__argp_basename): Removed definition. Was a
5525         typo.
5526         (__argp_base_name): Provide macro definition or extern declaration
5527         depending on the configuration
5528
5529 2006-01-20  Simon Josefsson  <jas@extundo.com>
5530
5531         * modules/inet_ntop (Depends-on): Depend on sys_socket.
5532
5533 2006-01-20  Simon Josefsson  <jas@extundo.com>
5534
5535         * lib/inet_ntop.h: Unconditionally include sys/socket.h.
5536
5537 2006-01-20  Paul Eggert  <eggert@cs.ucla.edu>
5538
5539         * m4/lib-ignore.m4 (gl_IGNORE_UNUSED_LIBRARIES): Use -Wl,-z,ignore
5540         rather than -Xlinker -z -Xlinker ignore, as it's more portable.
5541         Suggested by Bruno Haible.
5542
5543 2006-01-20  Karl Berry  <karl@gnu.org>
5544
5545         * config/srclist.txt (argp-fmtstream.h, localcharset.c): comment out
5546         until changes propagate, I guess.
5547
5548 2006-01-19  Simon Josefsson  <jas@extundo.com>
5549
5550         * m4/socklen.m4: Look in ws2tcpip.h too, for mingw32.
5551
5552 2006-01-19  Simon Josefsson  <jas@extundo.com>
5553
5554         * lib/socket_.h: Map SHUT_RD, SHUT_WR, SHUT_RDWR correctly.
5555
5556 2006-01-19  Simon Josefsson  <jas@extundo.com>
5557
5558         * gnulib-tool: Set check_PROGRAMS.
5559
5560         * modules/arcfour-tests, modules/arctwo-tests, modules/crc-tests,
5561         modules/des-tests, modules/gc-arcfour-tests,
5562         modules/gc-arctwo-tests, modules/gc-des-tests,
5563         modules/gc-hmac-md5-tests, modules/gc-hmac-sha1-tests,
5564         modules/gc-md2-tests, modules/gc-md4-tests, modules/gc-md5-tests,
5565         modules/gc-pbkdf2-sha1-tests, modules/gc-rijndael-tests,
5566         modules/gc-sha1-tests, modules/gc-tests, modules/hmac-md5-tests,
5567         modules/hmac-sha1-tests, modules/md2-tests, modules/md4-tests,
5568         modules/md5-tests, modules/readline, modules/rijndael-tests: Use
5569         check_PROGRAMS instead of noinst_PROGRAMS to be able to remove
5570         test_*_SOURCES.
5571
5572 2006-01-18  Simon Josefsson  <jas@extundo.com>
5573
5574         * modules/socklen (Depends-on): Depend on sys_socket.
5575
5576 2006-01-18  Simon Josefsson  <jas@extundo.com>
5577
5578         * modules/arcfour-tests, modules/arctwo-tests, modules/crc-tests,
5579         modules/des-tests, modules/gc-arcfour-tests,
5580         modules/gc-arctwo-tests, modules/gc-des-tests,
5581         modules/gc-hmac-md5-tests, modules/gc-hmac-sha1-tests,
5582         modules/gc-md2-tests, modules/gc-md4-tests, modules/gc-md5-tests,
5583         modules/gc-pbkdf2-sha1-tests, modules/gc-rijndael-tests,
5584         modules/gc-sha1-tests, modules/gc-tests, modules/hmac-md5-tests,
5585         modules/hmac-sha1-tests, modules/md2-tests, modules/md4-tests,
5586         modules/md5-tests, modules/readline, modules/rijndael-tests: Add
5587         $(EXEEXT) to automake TESTS variable, for mingw32.
5588
5589 2006-01-17  Simon Josefsson  <jas@extundo.com>
5590
5591         * modules/socklen (Include): Need sys/socket.h.
5592
5593 2006-01-17  Bruno Haible  <bruno@clisp.org>
5594
5595         * modules/ssize_t (Include): Add <sys/types.h>.
5596
5597 2006-01-16  Paul Eggert  <eggert@cs.ucla.edu>
5598
5599         * m4/lib-ignore.m4 (gl_IGNORE_UNUSED_LIBRARIES): Don't use ldd, as
5600         it's not portable and it doesn't work with cross-compiles.
5601         Problem reported by Bruno Haible.  Fix missing-$ typo in
5602         'test "gl_cv_ignore_unused_libraries" ...' that prevented
5603         -zignore from being used with Sun's C compiler.
5604
5605 2006-01-12  Simon Josefsson  <jas@extundo.com>
5606
5607         * lib/base64.c: Fix warning, reported by Bruno Haible
5608         <bruno@clisp.org> and patch by Paul Eggert <eggert@CS.UCLA.EDU>.
5609
5610 2006-01-12  Bruno Haible  <bruno@clisp.org>
5611
5612         * modules/ldd: New file.
5613         * build-aux/ldd.sh.in: New file.
5614         * MODULES.html.sh (Support for building libraries and executables): Add
5615         ldd.
5616
5617 2006-01-12  Bruno Haible  <bruno@clisp.org>
5618
5619         * m4/ldd.m4: New file.
5620
5621 2006-01-12  Bruno Haible  <bruno@clisp.org>
5622
5623         * gnulib-tool (func_import, func_create_testdir): Don't go into an
5624         endless loop while replacing $auxdir with build-aux.
5625
5626 2006-01-11  Simon Josefsson  <jas@extundo.com>
5627
5628         * lib/stdint_.h (SIZE_MAX): Add missing (.
5629
5630 2006-01-11  Paul Eggert  <eggert@cs.ucla.edu>
5631
5632         Sync from coreutils.
5633         * lib/md5.c: Fix commentary typos.
5634         (alignof, UNALIGNED_P): No need for a GCC-specific version.
5635         * lib/md5.h (__attribute__): Remove; unused.
5636         * lib/sha1.c: Fix commentary to match md5 better.
5637         * lib/sha1.h (struct sha1_ctx): Use a word buffer, not a byte buffer,
5638         so that we don't need to worry about alignment.  All uses changed.
5639         This merges the 2005-10-28 md5 change into sha1.
5640
5641 2006-01-11  Jim Meyering  <jim@meyering.net>
5642
5643         Sync from coreutils.
5644         * lib/md5.c (OP): Fix spacing.
5645
5646 2006-01-11  Bruno Haible  <bruno@clisp.org>
5647
5648         Ensure automatic ordering between gl_LOCK and gl_ARGP.
5649         * m4/lock.m4 (gl_LOCK_BODY): Renamed from gl_LOCK.
5650         (gl_LOCK): New macro, requiring gl_LOCK_BODY.
5651
5652 2006-01-11  Bruno Haible  <bruno@clisp.org>
5653
5654         Ensure automatic ordering between gl_LOCK and gl_ARGP.
5655         * gnulib-tool (func_import, func_create_testdir): Put gl_LOCK into
5656         the "early" section as well.
5657
5658 2006-01-11  Bruno Haible  <bruno@clisp.org>
5659
5660         Avoid "ar: no archive members specified" error on MacOS X.
5661         * gnulib-tool (func_modules_add_dummy): New function.
5662         (func_import, func_create_testdir): Invoke it.
5663
5664 2006-01-11  Bruno Haible  <bruno@clisp.org>
5665
5666         * gnulib-tool (func_import, func_create_testdir): Replace build-aux
5667         with $auxdir in AC_CONFIG_FILES statements.
5668
5669 2006-01-11  Bruno Haible  <bruno@clisp.org>
5670
5671         * gnulib-tool (func_emit_lib_Makefile_am, func_emit_tests_Makefile_am):
5672         Initialize also noinst_HEADERS to empty.
5673
5674 2006-01-11  Bruno Haible  <bruno@clisp.org>
5675
5676         * gnulib-tool (AUTOMAKEPATH, AUTOCONF, ACLOCAL, AUTOMAKE): New
5677         variables.
5678         (func_create_megatestdir): Call aclocal, autoconf, automake here, not
5679         autoreconf.
5680
5681 2006-01-11  Bruno Haible  <bruno@clisp.org>
5682
5683         * gnulib-tool (AUTOCONF, ACLOCAL, AUTOMAKE, AUTORECONF): Make
5684         overridable by the user.
5685         Reported by Ralf Wildenhues <Ralf.Wildenhues@gmx.de>.
5686
5687 2006-01-10  Simon Josefsson  <jas@extundo.com>
5688
5689         * modules/sys_socket: New file.
5690
5691 2006-01-10  Simon Josefsson  <jas@extundo.com>
5692
5693         * m4/sys_socket_h.m4: New file.
5694
5695 2006-01-10  Simon Josefsson  <jas@extundo.com>
5696
5697         * lib/socket_.h: New file.
5698
5699 2006-01-10  Paul Eggert  <eggert@cs.ucla.edu>
5700
5701         * modules/readutmp (Maintainer): Add myself.
5702
5703 2006-01-10  Paul Eggert  <eggert@cs.ucla.edu>
5704
5705         * m4/memcoll.m4 (gl_MEMCOLL): Don't require AC_FUNC_MEMCMP, undoing
5706         the 2002-12-31 change.  Problem and fix reported by Bruno Haible.
5707         People who are still concerned with buggy memcmp implementations
5708         can invoke gl_FUNC_MEMCMP themselves.
5709
5710 2006-01-10  Paul Eggert  <eggert@cs.ucla.edu>
5711
5712         * lib/regex_internal.h (BITSET_WORD_BITS):
5713         Work around a bug in 64-bit PGC (before version 6.1-2), where the
5714         preprocessor mishandles large unsigned values as if they were signed.
5715         Problem reported by Claudio Fontana in
5716         <http://lists.gnu.org/archive/html/bug-gnulib/2005-12/msg00061.html>.
5717
5718 2006-01-10  Jim Meyering  <jim@meyering.net>
5719
5720         Avoid the double-free (first in fts_read, second in fts_close) that
5721         would occur when an `active' directory is made inaccessible (e.g.,
5722         via chmod a-x) during a traversal.
5723         * lib/fts.c (fts_read): After a failed fchdir, update sp->fts_cur
5724         before returning.  Reproduce this failure by
5725         mkdir -p a/b; cd a; chmod a-x . b
5726         Reported by Stavros Passas.
5727
5728         Sync from coreutils.
5729         * lib/sha1.c: Tweak grammar in a comment.
5730
5731 2006-01-10  Jim Meyering  <jim@meyering.net>
5732
5733         * m4/fpending.m4: Also include <stdio.h>, for Dragonfly.
5734         Patch by Joerg Sonnenberger.
5735
5736 2006-01-10  Bruno Haible  <bruno@clisp.org>
5737
5738         * modules/readutmp: Depend on module free.
5739         * modules/strtok_r: Depend on module restrict.
5740
5741 2006-01-10  Bruno Haible  <bruno@clisp.org>
5742
5743         * modules/gettext (configure.ac): Add an invocation of
5744         AM_GNU_GETTEXT_VERSION. Needed since autoreconf is used by gnulib-tool.
5745
5746 2006-01-10  Bruno Haible  <bruno@clisp.org>
5747
5748         * m4/localcharset.m4 (gl_LOCALCHARSET): Also test for getc_unlocked.
5749         Reported by Werner Lemberg <wl@gnu.org>.
5750
5751 2006-01-10  Bruno Haible  <bruno@clisp.org>
5752
5753         * lib/localcharset.c: Update from GNU gettext.
5754
5755 2006-01-10  Bruno Haible  <bruno@clisp.org>
5756
5757         * lib/argp.h (__const): Remove macro. Use const instead.
5758         * lib/argp-fmtstream.h (__const): Likewise.
5759         * lib/glob_.h (__const): Remove macro.
5760         * lib/glob-libc.h: Use const instead of __const.
5761
5762 2006-01-10  Bruno Haible  <bruno@clisp.org>
5763
5764         * gnulib-tool (func_emit_tests_Makefile_am): Emit an empty SUBDIR
5765         variable.
5766         Needed to avoid an automake error regarding the 'gettext' module.
5767
5768 2006-01-09  Simon Josefsson  <jas@extundo.com>
5769
5770         * modules/inet_ntop (Depends-on): Add restrict.
5771
5772 2006-01-09  Simon Josefsson  <jas@extundo.com>
5773
5774         * modules/gc-rijndael-tests (License): Put under LGPL.
5775
5776         * modules/gc-des-tests (License): Likewise.
5777
5778         * modules/gc-arcfour-tests (License): Likewise.
5779
5780         * modules/gc-arctwo-tests (License): Likewise.
5781
5782         * modules/gc-pbkdf2-sha1-tests (License): Likewise.
5783
5784         * modules/gc-hmac-sha1-tests (Files): Likewise.
5785
5786         * modules/gc-hmac-md5-tests (License): Likewise.
5787
5788         * modules/gc-sha1-tests (License): Likewise.
5789
5790         * modules/gc-md5-tests (License): Likewise.
5791
5792         * modules/gc-md4-tests (License): Likewise.
5793
5794         * modules/gc-md2-tests (License): Likewise.
5795
5796         * modules/gc-tests (License): Likewise.
5797
5798         * modules/des-tests (License): Likewise.
5799
5800         * modules/md4-tests (License): Likewise.
5801
5802         * modules/md2-tests (License): Likewise.
5803
5804 2006-01-09  Paul Eggert  <eggert@cs.ucla.edu>
5805
5806         Sync from coreutils:
5807
5808         * MODULES.html.sh (build_lib): New section, with new lib-ignore module.
5809         * modules/lib-ignore: New file.
5810         * modules/mkdir-p (Files): Add chdir-safer.c, chdir-safer.h, lchmod.h,
5811         chdir-safer.m4, lchmod.m4.
5812         * modules/openat: Add mkdirat.c, openat-priv.h.
5813
5814 2006-01-09  Paul Eggert  <eggert@cs.ucla.edu>
5815
5816         Sync from coreutils.
5817         * m4/lib-ignore.m4: New file.
5818         * m4/lchmod.m4: New file.
5819
5820 2006-01-09  Paul Eggert  <eggert@cs.ucla.edu>
5821
5822         Sync from coreutils.
5823         * lib/chdir-long.c (cdb_free): Don't bother trying to open directory
5824         for write access: POSIX says that must fail.
5825         * lib/fts.c (diropen): Likewise.
5826         * lib/save-cwd.c (save_cwd): Likewise.
5827         * lib/chdir-long.c (cdb_free): Open with O_NOCTTY | O_NONBLOCK as
5828         well, for minor improvements on hosts that lack O_DIRECTORY.
5829         * lib/chown.c (rpl_chown) [CHOWN_MODIFIES_SYMLINK]:
5830         Don't try O_WRONLY unless O_RDONLY failed wth EACCES.
5831         Fall back on chown if open failed with EACCES.
5832
5833         * lib/gettime.c (gettime) [!defined OK_TO_USE_1S_CLOCK]:
5834         Report an error at compile-time if only a 1-second nominal clock
5835         resolution is found.
5836
5837         * lib/lchmod.h: New file.
5838         * lib/mkdir-p.c: Include lchmod.h, lchown.h.
5839         (make_dir_parents): Use lchown rather than chown, and
5840         lchmod rather than chmod.
5841
5842         * lib/mountlist.c (ME_DUMMY): "none" and "proc" file systems are
5843         dummies too.  Problem with "none" reported by Bob Proulx.  Problem with
5844         "proc" reported by n0dalus.
5845
5846         * lib/mountlist.c: Include <limits.h>.
5847         (dev_from_mount_options)
5848         [defined MOUNTED_GETMNTENT1 || defined MOUNTED_GETMNTENT2]:
5849         New function.  It no longer assumes "dev=" has the System V meaning
5850         on Linux (since it doesn't).  It also parses "dev=" more carefully.
5851         (read_file_system_list)
5852         [defined MOUNTED_GETMNTENT1 || defined MOUNTED_GETMNTENT2]: Use it.
5853         MOUNTED_GETMNTENT2 is new here; the code didn't used to look for
5854         dev= in that case.
5855
5856         * lib/posixtm.h (PDS_PRE_2000): New macro.
5857         * lib/posixtm.c (year): Arg is now syntax_bits rather than
5858         allow_century.  All usages changed.  Reject dates outside the range
5859         1969-1999 if PDS_PRE_2000 is used.
5860
5861 2006-01-09  Paul Eggert  <eggert@cs.ucla.edu>
5862
5863         Sync from coreutils.
5864         * doc/getdate.texi (General date syntax): Invalid dates are rejected.
5865         (Time of day items): Mention the possibility of leap seconds.
5866         Problem reported by Dr. David Alan Gilbert.
5867
5868 2006-01-09  Jim Meyering  <jim@meyering.net>
5869
5870         Sync from coreutils.
5871
5872         * lib/version-etc.c (COPYRIGHT_YEAR): Update to 2006.
5873
5874         * lib/chdir-safer.h, chdir-safer.c: New files.
5875
5876         * lib/modechange.c (mode_compile): Reject an invalid mode string
5877         that starts with an octal digit.  From Andreas Gruenbacher.
5878
5879         * lib/openat.c: Include "fcntl--.h" and "unistd--.h", to map open
5880         and dup to open_safer and dup_safer, respectively.
5881         (openat_permissive): Fix typo in comment.
5882
5883         * lib/openat.c: Don't include <stdlib.h>, <unistd.h>, <fcntl.h>,
5884         "gettext.h"; either no longer needed or are guaranteed by openat.h.
5885         (_): Remove; no longer needed.
5886         (openat): Renamed from rpl_openat; no need for rpl_openat
5887         since openat.h renames openat for us.
5888         Replace most of the body with a call to openat_permissive,
5889         to avoid duplicate code.
5890         Port to (probably hypothetical) environments were mode_t is
5891         wider than int.
5892         (openat_permissive): Require mode arg, so that we can check
5893         types better.  Put it just after flags.  Change cwd failure
5894         indicator from pointer-to-bool to pointer-to-errno-value.
5895         All callers changed.
5896         Invoke openat_save_fail and/or openat_restore_fail if
5897         cwd_errno is null, so that openat can call us.
5898         (openat_permissive, fdopendir, fstatat, unlinkat):
5899         Simplify errno handling to avoid some duplicate code,
5900         as it's OK to set errno on success.
5901         * lib/openat.h: Revamp code so that function macros depend on
5902         __OPENAT_PREFIX only, not also on AT_FDCWD.
5903         (openat_ro): Remove.  Caller changed to use openat_permissive.
5904         (openat_permissive): Now a macro, if not a function.
5905         (openat_restore_fail, openat_save_fail): Now always functions,
5906         since mkdirat needs them even if __OPENAT_PREFIX is defined.
5907
5908         * lib/openat-priv.h: New file, defining macros used by mkdirat.c
5909         and openat.c.
5910         * lib/mkdirat.c: Include openat-priv.h.
5911         Remove definitions of macros defined therein.
5912         * lib/openat.c: Likewise.
5913
5914         * lib/mkdirat.c (mkdirat): New file and function.
5915         * lib/openat.h (mkdirat): Declare.
5916
5917         * lib/openat.c (fdopendir): Don't change errno when returning non-NULL.
5918
5919         * lib/openat.h (openat_permissive): Declare.
5920         (openat_ro): Define.
5921
5922         * lib/openat.c (EXPECTED_ERRNO): New macro.
5923         (openat_permissive): New function -- used in remove.c rewrite.
5924         (all functions): Set errno just before returning, only if there
5925         was an actual failure.
5926         Use EXPECTED_ERRNO rather than comparing against only ENOTDIR.
5927
5928         Emulate openat-family functions using Linux's procfs, if possible.
5929         Idea and some code based on Ulrich Drepper's glibc changes.
5930
5931         * lib/openat.c: (BUILD_PROC_NAME): New macro.
5932         Include <stdio.h>, <string.h>, "alloca.h" and "intprops.h".
5933         (rpl_openat): Emulate by trying to open /proc/self/fd/%d/%s,
5934         before falling back on save_cwd and restore_cwd.
5935         (fdopendir, fstatat, unlinkat): Likewise.
5936
5937         * lib/openat.c (fstatat, unlinkat): Perform the syscall directly,
5938         skipping the save_cwd...restore_cwd overhead, if FILE is absolute.
5939
5940         * lib/openat.c (rpl_openat): Use the promoted type (int), not mode_t,
5941         as second argument to va_arg.  Otherwise, some versions of gcc
5942         warn that `if this code is reached, the program will abort'.
5943
5944 2006-01-09  Jim Meyering  <jim@meyering.net>
5945
5946         Sync from coreutils.
5947         * m4/openat.m4 (gl_FUNC_OPENAT): Require and compile mkdirat.c.
5948         Require openat-priv.h.
5949
5950 2006-01-09  Bruno Haible  <bruno@clisp.org>
5951
5952         * modules/strnlen (Include): Use strnlen.h.
5953
5954 2006-01-09  Bruno Haible  <bruno@clisp.org>
5955
5956         * m4/stdint.m4 (gl_STDINT_H): Also test for <sys/bitypes.h>.
5957
5958 2006-01-09  Bruno Haible  <bruno@clisp.org>
5959
5960         * lib/sysexit_.h (EX_OK): New macro.
5961         Suggested by Martin Lambers <marlam@marlam.de>.
5962
5963 2006-01-09  Bruno Haible  <bruno@clisp.org>
5964
5965         * lib/stdint_.h: On Linux libc4 and libc5, include <sys/bitypes.h> and
5966         don't define _STDINT_H_NEED_SIGNED_INT_TYPES.
5967
5968 2006-01-09  Bruno Haible  <bruno@clisp.org>
5969
5970         * lib/stdint_.h (SIZE_MAX): Write the value without involving negative
5971         numbers.
5972
5973 2006-01-09  Bruno Haible  <bruno@clisp.org>
5974
5975         * lib/javacomp.sh.in: Move to ../build-aux/javacomp.sh.in.
5976         * lib/javaexec.sh.in: Move to ../build-aux/javaexec.sh.in.
5977         * lib/csharpcomp.sh.in: Move to ../build-aux/csharpcomp.sh.in.
5978         * lib/csharpexec.sh.in: Move to ../build-aux/csharpexec.sh.in.
5979
5980 2006-01-09  Bruno Haible  <bruno@clisp.org>
5981
5982         * build-aux/javacomp.sh.in: New file, moved from lib/.
5983         * modules/javacomp-script (Files): Update.
5984         (configure.ac): Add AC_CONFIG_FILES invocation.
5985         (EXTRA_DIST): Remove variable.
5986
5987         * build-aux/javaexec.sh.in: New file, moved from lib/.
5988         * modules/javaexec (Files): Update.
5989         (configure.ac): Add AC_CONFIG_FILES invocation.
5990         (EXTRA_DIST): Remove javaexec.sh.in.
5991
5992         * build-aux/csharpcomp.sh.in: New file, moved from lib/.
5993         * modules/csharpcomp-script (Files): Update.
5994         (configure.ac): Add AC_CONFIG_FILES invocation.
5995         (EXTRA_DIST): Remove variable.
5996
5997         * build-aux/csharpexec.sh.in: New file, moved from lib/.
5998         * modules/csharpexec (Files): Update.
5999         (configure.ac): Add AC_CONFIG_FILES invocation.
6000         (EXTRA_DIST): Remove csharpexec.sh.in.
6001
6002 2006-01-09  Andreas Gruenbacher  <agruen@suse.de>
6003
6004         Sync from coreutils.
6005
6006         Add POSIX ACL support
6007         * lib/acl.h (copy_acl, set_acl): Add declarations.
6008         * lib/acl.c (acl_entries): Add fallback implementation for POSIX ACL
6009         systems other than Linux.
6010         (chmod_or_fchmod): New function: use fchmod when possible,
6011         and chmod otherwise.
6012         (file_has_acl): Add a POSIX ACL implementation, with a
6013         Linux-specific subcase.
6014         (copy_acl): Add: copy an acl and S_ISUID, S_ISGID, and
6015         S_ISVTX from one file to another.  Fall back to fchmod/chmod when
6016         acls are unsupported.
6017         (set_acl): Add: set a file's acl and S_ISUID, S_ISGID, and
6018         S_ISVTX to a defined value.  Fall back to fchmod/chmod when acls
6019         are unsupported.
6020
6021 2006-01-09  Andreas Gruenbacher  <agruen@suse.de>
6022
6023         Sync from coreutils.
6024         * m4/acl.m4 (AC_FUNC_ACL): Add POSIX ACL and Linux-specific acl tests.
6025
6026 2006-01-07  Bruno Haible  <bruno@clisp.org>
6027
6028         * gnulib-tool (func_import): Add an AC_PROG_RANLIB dependency to
6029         gl_EARLY.
6030
6031 2006-01-04  Paul Eggert  <eggert@cs.ucla.edu>
6032
6033         * lib/strftime.c (tzname): Don't declare if it is already #defined.
6034         Problem reported for Mingw by Mark Junker.
6035
6036 2006-01-04  Paul Eggert  <eggert@cs.ucla.edu>
6037
6038         * README: Gnulib normally doesn't generate a tarball.
6039
6040 2006-01-03  Paul Eggert  <eggert@cs.ucla.edu>
6041
6042         * lib/xtime.h (xtime_make, xtime_nonnegative_nsec, xtime_nsec): Use
6043         long int, not int, for nanosecond counts, so that people who are
6044         used to POSIX struct timespec won't be surprised.  Reported by Jim
6045         Meyering.
6046
6047 2005-12-28  Bruno Haible  <bruno@clisp.org>
6048
6049         * build-aux/config.rpath: Update from GNU gettext.
6050
6051 2005-12-16  Jim Meyering  <jim@meyering.net>
6052
6053         * modules/fprintftime: New module.
6054         * MODULES.html.sh (Date and time <time.h>): Add fprintftime.
6055
6056 2005-12-16  Jim Meyering  <jim@meyering.net>
6057
6058         * m4/fprintftime.m4: New file.
6059
6060 2005-12-16  Jim Meyering  <jim@meyering.net>
6061
6062         * lib/fprintftime.c, fprintftime.h: New files.
6063
6064 2005-12-15  Simon Josefsson  <jas@extundo.com>
6065
6066         * modules/socklen (configure.ac): Fix M4 macro name, to align with
6067         new m4/socklen.m4.
6068
6069 2005-12-10  Sergey Poznyakoff  <gray@gnu.org.ua>
6070
6071         * m4/argp.m4: Define HAVE_DECL_PROGRAM_INVOCATION_NAME and
6072         HAVE_DECL_PROGRAM_INVOCATION_SHORT_NAME
6073
6074 2005-12-10  Sergey Poznyakoff  <gray@gnu.org.ua>
6075
6076         * lib/argp-fmtstream.c (__argp_fmtstream_update): Fix coredump
6077         * lib/argp-help.c (fill_in_uparams): Check if the constructed
6078         struct uparams is valid. Fall back to the default values if it is
6079         not.
6080
6081 2005-12-09  Sergey Poznyakoff  <gray@gnu.org.ua>
6082
6083         * modules/argp (Files): Add argp-pin.c
6084         (Depends-on): dirname
6085         (lib_SOURCES): Add argp-pin.c
6086
6087 2005-12-09  Sergey Poznyakoff  <gray@gnu.org.ua>
6088
6089         * m4/argp.m4:  Check if program_invocation_name and
6090         program_invocation_short_name are declared and define appropriate
6091         macros if they are not.
6092
6093 2005-12-09  Sergey Poznyakoff  <gray@gnu.org.ua>
6094
6095         * lib/argp-help.c (__argp_base_name): New function
6096         (__argp_short_program_name): Rewrite using __argp_base_name
6097         * lib/argp-namefrob.h: Define program_invocation_name and
6098         program_invocation_short_name if requested
6099         (__argp_base_name): Add prototype
6100         * lib/argp-parse.c (argp_def): Use gettext wrappers
6101         (argp_default_parser): Use __argp_base_name
6102         * lib/argp-pin.c: New file. Defines program_invocation_name and
6103         program_invocation_short_name on systems that lack them.
6104
6105 2005-12-07  Paul Eggert  <eggert@cs.ucla.edu>
6106
6107         * m4/stat-time.m4 (gl_STAT_TIME): Add check for
6108         TYPEOF_STRUCT_STAT_ST_ATIM_IS_STRUCT_TIMESPEC, to fix IRIX 5.3
6109         porting problem reported by Georg Schwarz in
6110         <http://lists.gnu.org/archive/html/bug-coreutils/2005-12/msg00083.html>.
6111
6112 2005-12-07  Paul Eggert  <eggert@cs.ucla.edu>
6113
6114         * lib/stat-time.h (STATE_TIMESPEC, STAT_TIMESPEC_NS): Add check for
6115         TYPEOF_STRUCT_STAT_ST_ATIM_IS_STRUCT_TIMESPEC, to fix IRIX 5.3
6116         porting problem reported by Georg Schwarz in
6117         <http://lists.gnu.org/archive/html/bug-coreutils/2005-12/msg00083.html>.
6118
6119 2005-12-05  Bruno Haible  <bruno@clisp.org>
6120
6121         * lib/csharpcomp.sh.in (options_csc): For -l option, add a .dll suffix.
6122         * lib/csharpcomp.c (compile_csharp_using_sscli): Likewise.
6123         Reported by Mark Junker <mjscod@gmx.de>.
6124
6125 2005-12-02  Paul Eggert  <eggert@cs.ucla.edu>
6126
6127         * m4/socklen.m4 (gl_TYPE_SOCKLEN_T): Renamed from gl_SOCKLEN_T.
6128         Use implementation from Albert Chin, with some
6129         comments/corrections by Stepan Kasal and myself.
6130
6131 2005-12-02  Bruno Haible  <bruno@clisp.org>
6132
6133         * gnulib-tool (func_import): Accept GPLed build tool modules when
6134         --lgpl is given.
6135         * modules/csharpcomp-script: New file.
6136         * modules/csharpcomp: Depend on it.
6137         * modules/javacomp-script: New file.
6138         * modules/javacomp: Depend on it.
6139         Suggested by Simon Josefsson.
6140
6141 2005-12-01  Paul Eggert  <eggert@cs.ucla.edu>
6142
6143         * m4/regex.m4 (gl_REGEX): Check whether off_t can be used in a switch
6144         statement, to work around an HP-UX 10.20 compiler bug reported by
6145         Peter O'Gorman.
6146
6147 2005-11-29  Paul Eggert  <eggert@cs.ucla.edu>
6148
6149         * modules/savedir (Depends-on): Add openat.
6150
6151 2005-11-29  Paul Eggert  <eggert@cs.ucla.edu>
6152
6153         * lib/stdint_.h (intmax_t) [defined intmax_t]: Do not declare.
6154         (uintmax_t) [defined uintmax_t]: Do not declare.
6155         (SIZE_MAX) [defined SIZE_MAX]: Do not define.
6156         This works around a problem if intmax_t.m4 and/or uintmax_t.m4
6157         and/or size_max.m4 are also used.  Problem reported by Mark D. Baushke.
6158         (SIZE_MAX): Define to ((size_t) -1), not (~(size_t)0), for the
6159         sake of portability to weird hosts that C allows (though we don't
6160         know of any practical examples).
6161
6162         * lib/savedir.h (fdsavedir): New decl.
6163         * lib/savedir.c (fdsavedir, savedirstream): New functions; the latter
6164         contains most of the former guts of savedir.
6165         (savedir): Use savedirstream.
6166         Include "openat.h".
6167
6168 2005-11-25  Paul Eggert  <eggert@cs.ucla.edu>
6169
6170         * modules/obstack (Files): Add m4/ulonglong.m4.
6171         Problem reported by Davide Angelocola.
6172
6173 2005-11-15  Paul Eggert  <eggert@cs.ucla.edu>
6174
6175         * lib/xstrtod.c: Don't bother with #pragma STDC FENV_ACCESS ON, as
6176         coreutils no longer futzes with rounding modes.
6177
6178 2005-11-14  Jim Meyering  <jim@meyering.net>
6179
6180         * lib/mkstemp-safer.c: Include <config.h>, required for possible
6181         replacement of mkstemp.
6182
6183 2005-11-10  Simon Josefsson  <jas@extundo.com>
6184
6185         * lib/readline.c: Remove EOL.
6186
6187 2005-11-10  Paul Eggert  <eggert@cs.ucla.edu>
6188
6189         * modules/gethrxtime (Depends-on): Add gettime.
6190
6191 2005-11-10  Paul Eggert  <eggert@cs.ucla.edu>
6192
6193         * m4/gethrxtime.m4 (gl_PREREQ_GETHRXTIME): Don't require AC_HEADER_TIME
6194         or gettimeofday; no longer needed.
6195
6196 2005-11-10  Paul Eggert  <eggert@cs.ucla.edu>
6197
6198         * lib/gethrxtime.c: Include "timespec.h" rather than the sys/time /
6199         time business.
6200         (gethrxtime) [! (HAVE_NANOUPTIME
6201         || (defined CLOCK_MONOTONIC && HAVE_CLOCK_GETTIME)
6202         || HAVE_MICROUPTIME)]: Fall back on gettime rather than rolling
6203         our own approximation.
6204
6205 2005-11-08  Eric Blake  <ebb9@byu.net>
6206
6207         * lib/inet_ntop.h: Use #if !, not #ifndef, for AC_CHECK_DECLS.
6208
6209 2005-11-08  Eric Blake  <ebb9@byu.net>
6210
6211         * lib/getaddrinfo.h: Use #if !, not #ifndef, for AC_CHECK_DECLS.
6212
6213 2005-11-04  Bruno Haible  <bruno@clisp.org>
6214
6215         * gnulib-tool: Implement --update mode.
6216
6217 2005-10-30  Paul Eggert  <eggert@cs.ucla.edu>
6218
6219         Fix porting problem reported by Theodoros V. Kalamatianos.
6220         * lib/utimens.c (futimens) [HAVE_WORKING_UTIMES && HAVE_FUTIMES]:
6221         Don't assume that futimes failing means we must fail.
6222
6223 2005-10-30  Paul Eggert  <eggert@cs.ucla.edu>
6224
6225         * m4/chdir-long.m4 (gl_FUNC_CHDIR_LONG): Revamp wording and local
6226         variables to suggest the intended function of the PATH_MAX check.
6227
6228 2005-10-30  Kean Johnston  <jkj@sco.com>
6229
6230         Trivial changes to support SCO systems.
6231         * m4/chdir-long.m4 (gl_FUNC_CHDIR_LONG): Check for MAXPATHLEN as well
6232         as PATH_MAX.
6233         * m4/fpending.m4 (gl_FUNC_FPENDING): Correct check for SCO systems,
6234         where __ptr is null when no I/O is pending.
6235
6236 2005-10-29  Paul Eggert  <eggert@cs.ucla.edu>
6237
6238         * lib/getcwd.c (__getcwd): Don't assume that system calls after readdir
6239         leave errno alone.  Problem reported by Dmitry V. Levin.
6240
6241 2005-10-28  Simon Josefsson  <jas@extundo.com>
6242
6243         * tests/test-gc-md4.c, tests/test-gc-md5.c, tests/test-gc-sha1.c:
6244         Test more.
6245
6246         * tests/test-gc-md2.c, tests/test-md2.c: New files.
6247
6248         * modules/md2, modules/md2-tests: New files.
6249
6250 2005-10-28  Simon Josefsson  <jas@extundo.com>
6251
6252         * m4/inet_ntop.m4: More tests.
6253
6254         * m4/gc-md2.m4, md2.m4: New file.
6255
6256 2005-10-28  Simon Josefsson  <jas@extundo.com>
6257
6258         * lib/inet_ntop.h, inet_ntop.c: Make it work under mingw32: Add
6259         "restrict" keywords, as per POSIX.  Protect the function
6260         declaration around HAVE_DECL_INET_NTOP rather than HAVE_INET_NTOP.
6261         Don't use K&R prototypes.  Check the sprintf return values.
6262         Re-define EAFNOSUPPORT if not present.  Indent.
6263
6264         * lib/md5.h, md5.c: Simplify buffer handling visavi alignment,
6265         suggested by Bruno Haible <bruno@clisp.org>.
6266
6267         * lib/gc-gnulib.c, gc-libgcrypt.c: Check calloc return value.
6268
6269         * lib/gc.h: Add MD2 and RMD160 length defines.  Add prototypes.
6270
6271         * lib/gc-libgcrypt.c: Add MD2 (which is not available through
6272         libgcrypt).
6273
6274         * lib/gc-gnulib.c: Add MD2.  Implement gc_hash_* API.
6275
6276         * lib/md2.h, md2.c: New files.
6277
6278 2005-10-28  Paul Eggert  <eggert@cs.ucla.edu>
6279
6280         * lib/savedir.c (savedir): Don't assume that xrealloc etc. leave
6281         errno alone.  Problem reported by Frederic Jolliton.
6282
6283 2005-10-27  Paul Eggert  <eggert@cs.ucla.edu>
6284
6285         * modules/verify (License): Change from GPL to LGPL.  This is a
6286         tiny module and there are apparently near-equivalents that are
6287         under the BSD license.
6288
6289 2005-10-24  Simon Josefsson  <jas@extundo.com>
6290
6291         * modules/sha1: Relicense to LGPL.
6292
6293 2005-10-24  Simon Josefsson  <jas@extundo.com>
6294
6295         * lib/md4.h: Shrink buffer size, now that we changed the type.
6296
6297 2005-10-23  Simon Josefsson  <jas@extundo.com>
6298
6299         * gnulib-tool (func_import): Fix --tests-base.
6300
6301 2005-10-22  Simon Josefsson  <jas@extundo.com>
6302
6303         * modules/arcfour (Depends-on): Need stdint.
6304
6305 2005-10-22  Simon Josefsson  <jas@extundo.com>
6306
6307         * m4/gc.m4: Don't be fooled by --disable-*random-device parameters,
6308         suggested by Bruno Haible <bruno@clisp.org>.  Fix error messages.
6309
6310 2005-10-22  Simon Josefsson  <jas@extundo.com>
6311
6312         * lib/md4.h, md4.c: Simplify buffer handling visavi alignment,
6313         suggested by Bruno Haible <bruno@clisp.org>.
6314
6315 2005-10-22  Simon Josefsson  <jas@extundo.com>
6316
6317         * lib/crc.h: Include stddef.h, for size_t.
6318
6319 2005-10-22  Simon Josefsson  <jas@extundo.com>
6320
6321         * lib/arcfour.h, arcfour.c: Use fixed size indices in the
6322         arcfour_context struct (simplify test vector testing in GNU
6323         Shishi).
6324
6325 2005-10-21  Simon Josefsson  <jas@extundo.com>
6326
6327         * modules/des, modules/des-tests: New files.
6328
6329         * modules/gc-des, modules/gc-des-tests: New files.
6330
6331         * tests/test-des.c, tests/test-gc-des.c: New file.
6332
6333 2005-10-21  Simon Josefsson  <jas@extundo.com>
6334
6335         * modules/arctwo, modules/arctwo-tests: New files.
6336
6337         * tests/test-arctwo.c: New file.
6338
6339         * modules/gc-arctwo, modules/gc-arctwo-tests: New files.
6340
6341         * tests/test-gc-arctwo.c: New file.
6342
6343 2005-10-21  Simon Josefsson  <jas@extundo.com>
6344
6345         * m4/gc.m4: Don't use libgcrypt if gcrypt.h isn't found, suggested by
6346         Bruno Haible <bruno@clisp.org>.
6347
6348         * m4/gc-des.m4: New file.
6349
6350 2005-10-21  Simon Josefsson  <jas@extundo.com>
6351
6352         * m4/arctwo.m4: New file.
6353
6354         * m4/gc-arctwo.m4: New file.
6355
6356 2005-10-21  Simon Josefsson  <jas@extundo.com>
6357
6358         * lib/rijndael-api-fst.c: Fix bugs in CBC mode for more than one
6359         block.
6360
6361 2005-10-21  Simon Josefsson  <jas@extundo.com>
6362
6363         * lib/hmac-md5.c (hmac_md5): Add comments, suggested by Bruno Haible
6364         <bruno@clisp.org>.
6365
6366         * lib/hmac-sha1.c (hmac_sha1): Likewise.
6367
6368         * lib/crc.c (crc32_update): Actually use crc parameter, suggested by
6369         Bruno Haible <bruno@clisp.org>.
6370
6371         * lib/crc.h: Include stdint.h directly, suggested by Bruno Haible
6372         <bruno@clisp.org>.
6373
6374 2005-10-21  Simon Josefsson  <jas@extundo.com>
6375
6376         * lib/gc-libgcrypt.c (gc_cipher_open): Handle ECB.
6377
6378 2005-10-21  Simon Josefsson  <jas@extundo.com>
6379
6380         * lib/gc-gnulib.c: Support ARCTWO in CBC mode.
6381
6382 2005-10-21  Simon Josefsson  <jas@extundo.com>
6383
6384         * lib/des.h, des.c: New files.
6385
6386         * lib/gc-gnulib.c: Support DES.c
6387
6388 2005-10-21  Simon Josefsson  <jas@extundo.com>
6389
6390         * lib/arctwo.h, arctwo.c: New files.
6391
6392         * lib/gc-gnulib.c: Support ARCTWO.
6393
6394 2005-10-21  Simon Josefsson  <jas@extundo.com>
6395
6396         * lib/arctwo.h (arctwo_setkey): Protect variable in CPP macro,
6397         suggested by Ralf Wildenhues <Ralf.Wildenhues@gmx.de>.
6398
6399 2005-10-21  Simon Josefsson  <jas@extundo.com>
6400
6401         * gnulib-tool (func_import, func_create_testdir): Define automake
6402         conditional GL_COND_LIBTOOL if libtool is used (to be used by modules
6403         Makefile.am snippet),
6404         suggested by Bruno Haible <bruno@clisp.org>.
6405
6406         * modules/gc (Makefile.am): Use it.
6407
6408 2005-10-21  Bruno Haible  <bruno@clisp.org>
6409
6410         * gnulib-tool (func_import, func_create_testdir): Add quoting to last
6411         patch.
6412
6413 2005-10-19  Simon Josefsson  <jas@extundo.com>
6414
6415         * tests/test-gc-rijndael.c: New file.
6416
6417         * modules/gc-rijndael, modules/gc-rijndael-test: New files.
6418
6419 2005-10-19  Simon Josefsson  <jas@extundo.com>
6420
6421         * tests/test-gc-md4.c, tests/test-gc-md5.c: Test gc_hash_buffer
6422         interface too.
6423
6424 2005-10-19  Simon Josefsson  <jas@extundo.com>
6425
6426         * tests/test-gc-arcfour.c: New file.
6427
6428         * modules/gc-arcfour, modules/gc-arcfour-tests: New files.
6429
6430 2005-10-19  Simon Josefsson  <jas@extundo.com>
6431
6432         * modules/gc-md4, modules/gc-md4-tests: New file.
6433
6434         * tests/test-gc-md4.c: New file.
6435
6436 2005-10-19  Simon Josefsson  <jas@extundo.com>
6437
6438         * m4/gc-md4.m4: New file.
6439
6440 2005-10-19  Simon Josefsson  <jas@extundo.com>
6441
6442         * m4/gc-hmac-md5.m4, gc-hmac-sha1.m4, gc-md4.m4,
6443         gc-md5.m4, gc-sha1.m4: Fix typo, suggested by Stepan Kasal
6444         <kasal@ucw.cz>.
6445
6446 2005-10-19  Simon Josefsson  <jas@extundo.com>
6447
6448         * m4/gc-arcfour.m4: New file.
6449
6450         * m4/gc-rijndael.m4: New file.
6451
6452 2005-10-19  Simon Josefsson  <jas@extundo.com>
6453
6454         * lib/gc.h, gc-gnulib.c, gc-libgcrypt.c: Support MD4.
6455
6456 2005-10-19  Simon Josefsson  <jas@extundo.com>
6457
6458         * lib/gc-gnulib.c: Support ARCFOUR.
6459
6460 2005-10-19  Simon Josefsson  <jas@extundo.com>
6461
6462         * lib/gc-gnulib.c: Implement gc_cipher_* API, currently only with AES
6463         support.
6464
6465         * lib/gc.h: Add ECB enum type.
6466
6467         * lib/hmac-md5.c, hmac-sha1.c: Include memxor.h.
6468
6469 2005-10-18  Simon Josefsson  <jas@extundo.com>
6470
6471         * tests/test-md5.c: New file.
6472
6473         * modules/md5-tests: New file.
6474
6475 2005-10-18  Simon Josefsson  <jas@extundo.com>
6476
6477         * tests/test-md4.c: New file.
6478
6479         * modules/md4, modules/md4-tests: New files.
6480
6481 2005-10-18  Simon Josefsson  <jas@extundo.com>
6482
6483         * m4/md4.m4: New file.
6484
6485 2005-10-18  Simon Josefsson  <jas@extundo.com>
6486
6487         * lib/md4.h, md4.c: New files, based on md5.?.
6488
6489 2005-10-17  Stepan Kasal  <kasal@ucw.cz>
6490
6491         * gnulib-tool (func_create_testdir): Omit the second check whether
6492         BUILT_SOURCES in nonempty.
6493
6494 2005-10-17  Simon Josefsson  <jas@extundo.com>
6495
6496         * tests/test-rijndael.c: New file.
6497
6498 2005-10-17  Simon Josefsson  <jas@extundo.com>
6499
6500         * modules/sha1: Depend on stdint instead of md5.
6501
6502         * modules/md5: Depend on stdint, remove uint32_t.
6503
6504 2005-10-17  Simon Josefsson  <jas@extundo.com>
6505
6506         * modules/gc-sha1-tests: New file.
6507
6508         * tests/test-gc-sha1.c: New file.
6509
6510 2005-10-17  Simon Josefsson  <jas@extundo.com>
6511
6512         * m4/md5.m4: Remove call to uint32_t.m4.
6513
6514 2005-10-17  Simon Josefsson  <jas@extundo.com>
6515
6516         * lib/sha1.c: Use uint32_t instead of md5_uint32.t
6517
6518         * lib/sha1.h: Use stdint.h and uint32_t instead of md5_uint32 from
6519         md5.h.
6520
6521         * lib/md5.c: Use uin32_t.  Fix non-gcc UNALIGNED_P macro.
6522
6523         * lib/md5.h: Use stdint.h and uint32_t.  Doc fix.
6524
6525 2005-10-17  Simon Josefsson  <jas@extundo.com>
6526
6527         * lib/gc.h, gc-libgcrypt.c: Add more hash types/functions.
6528
6529 2005-10-17  Simon Josefsson  <jas@extundo.com>
6530
6531         * lib/gc.h, gc-libgcrypt.c: Add ciphers.
6532
6533 2005-10-17  Simon Josefsson  <jas@extundo.com>
6534
6535         * lib/gc-libgcrypt.c (gc_hmac_sha1): Fix assert.
6536
6537         * lib/gc.h (gc_nonce, gc_pseudo_random, gc_random): Add prototypes.
6538
6539 2005-10-17  Bruno Haible  <bruno@clisp.org>
6540
6541         * m4/stdbool.m4 (AC_HEADER_STDBOOL): Change the return statement so
6542         that it can also be used in a test.
6543
6544 2005-10-16  Bruno Haible  <bruno@clisp.org>
6545
6546         * gnulib-tool (func_emit_tests_Makefile_am): Also define
6547         TESTS_ENVIRONMENT, so that individual tests can augment it.
6548
6549         * gnulib-tool (func_create_testdir): Use an intermediate target for
6550         building $(BUILT_SOURCES). Needed because BUILT_SOURCES can contain
6551         macros, like $(ALLOCA_H), which cannot be passed through the command
6552         line.
6553
6554 2005-10-15  Simon Josefsson  <jas@extundo.com>
6555
6556         * modules/rijndael-tests: New file.
6557
6558         * modules/rijndael: New file.
6559
6560 2005-10-15  Simon Josefsson  <jas@extundo.com>
6561
6562         * m4/rijndael.m4: New file.
6563
6564 2005-10-15  Simon Josefsson  <jas@extundo.com>
6565
6566         * lib/rijndael-api-fst.h, rijndael-api-fst.c: New files.
6567
6568         * lib/rijndael-alg-fst.h, rijndael-alg-fst.c: New files.
6569
6570 2005-10-14  Simon Josefsson  <jas@extundo.com>
6571
6572         * tests/test-arcfour.c: New file.
6573
6574         * modules/arcfour, modules/arcfour-tests: New files.
6575
6576 2005-10-14  Simon Josefsson  <jas@extundo.com>
6577
6578         * m4/arcfour.m4: New file.
6579
6580 2005-10-14  Simon Josefsson  <jas@extundo.com>
6581
6582         * lib/arcfour.h, arcfour.c: New files.
6583
6584 2005-10-14  Roland McGrath  <roland@redhat.com>
6585
6586         Import from libc.  [BZ #1331]
6587         * lib/obstack.h [!__STDC__] (obstack_int_grow_fast): Fix misnamed
6588         macro argument.
6589         Reported by Matej Vela <vela@debian.org>.
6590
6591 2005-10-14  Paul Eggert  <eggert@cs.ucla.edu>
6592
6593         * lib/obstack.c [defined _LIBC && defined USE_IN_LIBIO]: Don't
6594         include <wchar.h>; no longer needed.
6595
6596 2005-10-14  Paul Eggert  <eggert@cs.ucla.edu>
6597
6598         * config/srclist.txt: Add glibc bug 321 for obstack.c, obstack.h.
6599
6600 2005-10-14  Jakub Jelinek  <jakub@redhat.com>
6601         and  Ulrich Drepper  <drepper@redhat.com>
6602
6603         Import from libc.
6604         * lib/obstack.c (print_and_abort) [defined _LIBC]: Use __fxprintf
6605         instead of inline stream orientation test and two separate
6606         function calls.  Pay no attention to USE_IN_LIBIO.
6607
6608 2005-10-13  Simon Josefsson  <jas@extundo.com>
6609
6610         * modules/gc-hmac-md5-tests: New file.
6611
6612         * tests/test-gc-hmac-sha1.c: New file.
6613
6614         * tests/test-gc.c (main): Remove MD5 and HMAC-MD5 tests.
6615
6616         * modules/gc-hmac-md5-tests: New file.
6617
6618         * tests/test-gc-md5.c: New file.
6619
6620         * modules/gc-md5-tests: New file.
6621
6622 2005-10-13  Simon Josefsson  <jas@extundo.com>
6623
6624         * lib/gc-pbkdf2-sha1.c (gc_pbkdf2_sha1): Optimize CEIL computation.
6625         Move memory allocation outside of loop.
6626
6627 2005-10-13  Paul Eggert  <eggert@cs.ucla.edu>
6628
6629         * lib/mkdir-p.c (make_dir_parents): Don't report an error if an
6630         intermediate directory is in a read-only file system.  Problem
6631         reported by Eric Blake.
6632
6633 2005-10-13  Oskar Liljeblad  <oskar@osk.mine.nu>
6634
6635         * modules/human (Depends-on): Depend on xstrtoumax, not xstrtol.
6636
6637 2005-10-12  Simon Josefsson  <jas@extundo.com>
6638
6639         * tests/test-hmac-sha1.c: New file.
6640
6641         * modules/hmac-sha1-tests: New file.
6642
6643         * modules/hmac-sha1: New file.
6644
6645 2005-10-12  Simon Josefsson  <jas@extundo.com>
6646
6647         * modules/gc-sha1: New file.
6648
6649 2005-10-12  Simon Josefsson  <jas@extundo.com>
6650
6651         * modules/gc-pbkdf2-sha1, modules/gc-pbkdf2-sha1-tests: New files.
6652
6653         * tests/test-gc-pbkdf2-sha1.c: New file.
6654
6655 2005-10-12  Simon Josefsson  <jas@extundo.com>
6656
6657         * modules/gc-md5, modules/gc-hmac-md5: New files.
6658
6659         * modules/gc (Files): Remove md5, memxor and hmac files.
6660
6661 2005-10-12  Simon Josefsson  <jas@extundo.com>
6662
6663         * m4/gc-pbkdf2-sha1.m4: New file.
6664
6665         * m4/gc-hmac-sha1.m4: New file.
6666
6667         * m4/gc-sha1: New file.
6668
6669         * m4/hmac-sha1.m4: New file.
6670
6671 2005-10-12  Simon Josefsson  <jas@extundo.com>
6672
6673         * m4/gc-md5.m4, gc-hmac-md5: New files.
6674
6675         * m4/gc.m4: Don't call gl_MD5, gl_MEMXOR or gl_HMAC_MD5.
6676
6677 2005-10-12  Simon Josefsson  <jas@extundo.com>
6678
6679         * lib/gc.h, gc-gnulib.c, gc-libgcrypt.c: Use Gc_rc for return types,
6680         suggested by Bruno Haible <bruno@clisp.org>.
6681
6682 2005-10-12  Simon Josefsson  <jas@extundo.com>
6683
6684         * lib/gc.h, gc-gnulib.c, gc-libgcrypt.c: Support SHA-1.
6685
6686 2005-10-12  Simon Josefsson  <jas@extundo.com>
6687
6688         * lib/gc-pbkdf2-sha1.c: New file.
6689
6690         * lib/gc.h: Add gc_pbkdf2_sha1 prototype.
6691
6692 2005-10-12  Simon Josefsson  <jas@extundo.com>
6693
6694         * lib/gc-libgcrypt.c (gc_hmac_sha1): New function.
6695
6696         * lib/gc-gnulib.c (gc_hmac_sha1): New function.
6697
6698 2005-10-12  Simon Josefsson  <jas@extundo.com>
6699
6700         * lib/gc-gnulib.c: Condition MD5 and HMAC-MD5 use on GC_USE_MD5 and
6701         GC_USE_HMAC_MD5, respectively.
6702
6703         * lib/gc-libgcrypt.c (gc_md5): Fix assert call.
6704         (gc_md5): Fix typo.
6705
6706         * lib/gc.h (gc_hash_buffer): Use gc_hash in prototype.
6707
6708         * lib/gc-libgcrypt.c (gc_hash_buffer): Ditto.
6709
6710         * lib/gc-gnulib.c (gc_hash_buffer): Ditto.
6711
6712 2005-10-12  Bruno Haible  <bruno@clisp.org>
6713
6714         * m4/stdbool.m4 (gl_STDBOOL_H): Define as an alias of AM_STDBOOL_H.
6715         Reported by Stepan Kasal <kasal@ucw.cz>.
6716
6717 2005-10-11  Simon Josefsson  <jas@extundo.com>
6718
6719         * tests/test-crc.c: New file.
6720
6721         * modules/crc, modules/crc-tests: New files.
6722
6723 2005-10-11  Simon Josefsson  <jas@extundo.com>
6724
6725         * m4/crc.m4: New file.
6726
6727 2005-10-11  Simon Josefsson  <jas@extundo.com>
6728
6729         * lib/gc.h: Add gc_hash and gc_hash_buffer.
6730
6731         * lib/gc-gnulib.c (gc_hash_buffer): Add.  Reorder #include's.
6732
6733         * lib/gc-libgcrypt.c (gc_hash_buffer): Add.
6734
6735 2005-10-11  Simon Josefsson  <jas@extundo.com>
6736
6737         * lib/crc.h, crc.c: New files.
6738
6739         * lib/gc.h (gc_hash_buffer): Add doc.
6740
6741 2005-10-11  Bruno Haible  <bruno@clisp.org>
6742
6743         * modules/c-strcasestr: New file.
6744         * MODULES.html.sh (String handling <string.h>): Add c-strcasestr.
6745
6746 2005-10-11  Bruno Haible  <bruno@clisp.org>
6747
6748         * modules/c-strcase: New file.
6749         * MODULES.html.sh (String handling <string.h>): Add c-strcase.
6750
6751 2005-10-11  Bruno Haible  <bruno@clisp.org>
6752
6753         * lib/strcasecmp.c: Include limits.h.
6754         (strcasecmp): Avoid integer overflow on exotic platforms.
6755         * lib/strncasecmp.c: Include limits.h.
6756         (strncasecmp): Avoid integer overflow on exotic platforms.
6757         Reported by Paul Eggert.
6758
6759 2005-10-11  Bruno Haible  <bruno@clisp.org>
6760
6761         * lib/c-strcasestr.h: New file, from GNU gettext.
6762         * lib/c-strcasestr.c: New file, from GNU gettext.
6763
6764 2005-10-11  Bruno Haible  <bruno@clisp.org>
6765
6766         * lib/c-strcase.h: New file, from GNU gettext.
6767         * lib/c-strcasecmp.c: New file, from GNU gettext.
6768         * lib/c-strncasecmp.c: New file, from GNU gettext.
6769
6770 2005-10-10  Paul Eggert  <eggert@cs.ucla.edu>
6771
6772         * modules/mempcpy (License): GPL -> LGPL.
6773         * modules/strchrnul (License): Likewise.
6774         * modules/sysexits (License): Likewise.
6775
6776 2005-10-08  Simon Josefsson  <jas@extundo.com>
6777
6778         * config/srclist.txt: Bug 1423 is closed, but 1439 remains.
6779
6780 2005-10-07  Simon Josefsson  <jas@extundo.com>
6781
6782         * m4/memxor.m4: Remove gl_C_RESTRICT call.
6783
6784 2005-10-06  Simon Josefsson  <jas@extundo.com>
6785
6786         * tests/test-hmac-md5.c: New file.
6787
6788         * modules/hmac-md5-tests: New file.
6789
6790         * modules/hmac-md5: New file.
6791
6792 2005-10-06  Simon Josefsson  <jas@extundo.com>
6793
6794         * m4/hmac-md5.m4: New file.
6795
6796         * m4/memxor.m4: Require gl_C_RESTRICT.
6797
6798 2005-10-06  Simon Josefsson  <jas@extundo.com>
6799
6800         * lib/memxor.c (memxor): Avoid casts and warnings.
6801
6802 2005-10-06  Simon Josefsson  <jas@extundo.com>
6803
6804         * lib/hmac-md5.c: New file.
6805
6806         * lib/hmac.h: New file.
6807
6808 2005-10-06  Paul Eggert  <eggert@cs.ucla.edu>
6809
6810         * m4/stdbool.m4 (AC_HEADER_STDBOOL): Check that bool
6811         promotes to int, not unsigned int, to catch the AIX 5.3
6812         compiler bug.
6813
6814 2005-10-05  Simon Josefsson  <jas@extundo.com>
6815
6816         * modules/memxor: New file.
6817
6818         * modules/iconv (Files): Move config.rpath to havelib, it is used
6819         there.
6820
6821         * modules/havelib (Files): Add config.rpath.
6822
6823 2005-10-05  Simon Josefsson  <jas@extundo.com>
6824
6825         * m4/memxor.m4: New file.
6826
6827 2005-10-05  Simon Josefsson  <jas@extundo.com>
6828
6829         * lib/memxor.c (memxor): Fix compiler error.
6830
6831         * lib/md5.h (MD5_DIGEST_SIZE, MD5_BLOCK_SIZE): Add, see also
6832         <http://sourceware.org/bugzilla/show_bug.cgi?id=1423>.
6833
6834         * lib/memxor.h, memxor.c: New files.
6835
6836         * lib/getaddrinfo.h: Don't protect sys/types.h with HAVE_SYS_TYPES_H,
6837         we assume all systems have it, suggested by Jim Meyering
6838         <jim@meyering.net>.  Remove HAVE_SYS_SOCKET_H test too, to see if
6839         any systems lack sys/socket.h; mingw32 is known to lack it, but we
6840         don't support it yet anyway.  Also remove HAVE_NETDB_H test, for
6841         same reasons.
6842
6843 2005-10-05  Simon Josefsson  <jas@extundo.com>
6844
6845         * config/srclist.txt: Add glibc bug 1423 for md5.h.
6846
6847 2005-10-05  Paul Eggert  <eggert@cs.ucla.edu>
6848
6849         * m4/getaddrinfo.m4 (gl_PREREQ_GETADDRINFO): Don't check for
6850         sys/socket.h, netdb.h, sys/types.h; the checks areno longer
6851         needed, since the source code now assumes these .h files.
6852
6853 2005-10-05  Derek Price  <derek@ximbiot.com>
6854
6855         * lib/getdelim.c (SIZE_MAX): New macro, if not already defined.
6856
6857 2005-10-05  Bruno Haible  <bruno@clisp.org>
6858
6859         * modules/stdint (License): Change to LGPL.
6860
6861 2005-10-04  Simon Josefsson  <jas@extundo.com>
6862
6863         * lib/getaddrinfo.h: Move sys/types.h include first, reported by "Mark
6864         D. Baushke" <mdb@gnu.org>.
6865
6866 2005-10-04  Bruno Haible  <bruno@clisp.org>
6867
6868         * lib/verify.h (verify_true): Provide alternative definition for C++.
6869
6870 2005-10-03  Paul Eggert  <eggert@cs.ucla.edu>
6871
6872         * lib/getdelim.c: Include getdelim.h first.  Include <limits.h>.
6873         (SSIZE_MAX): New macro, if not already defined.
6874         (getdelim): Fix buffer overrun on 64-bit hosts with lines longer
6875         than 2 GiB.
6876
6877 2005-10-02  Paul Eggert  <eggert@cs.ucla.edu>
6878
6879         Sync from coreutils.
6880         * m4/openat.m4 (gl_FUNC_OPENAT): Check for fdopendir.
6881         * m4/ullong_max.m4 (gl_ULLONG_MAX): Simplify so that it merely
6882         defines ULONG_MAX_LT_ULLONG_MAX.  Thomas M.Ott reports that
6883         ULLONG_MAX doesn't work with 2.7.2.1.
6884
6885 2005-10-02  Paul Eggert  <eggert@cs.ucla.edu>
6886
6887         * modules/xreadlink (Makefile.am): Remove lib_SOURCES.
6888         From Ben Pfaff.
6889
6890         * modules/exclude (Depends-on): Depend on verify.
6891         * modules/strtoimax (Depends-on): Likewise.
6892         * modules/utimecmp (Depends-on): Likewise.
6893
6894 2005-10-02  Paul Eggert  <eggert@cs.ucla.edu>
6895
6896         * lib/exclude.c: Include verify.h.
6897         (verify): Remove.  All callers changed to use verify.h's version.
6898         * lib/strtoimax.c: Likewise.
6899         * lib/utimecmp.c: Likewis.e
6900
6901         Sync from coreutils.
6902         * lib/.cppi-disable: Add getaddrinfo.h, getdelim.h, getline.h,
6903         getpass.c, mbchar.h, mbuiter.h, strcase.h, strnlen.h, strnlen1.h.
6904         * lib/.cvsignore: Add fts.h, search.h, t-fpending.
6905         * lib/settime.c (settime): Fix { typo in previous patch.  Also, don't
6906         bother returning ENOSYS if settimeofday or stime fails; just let
6907         them return whatever errno they want to return.
6908         * lib/utimens.c: Include unistd.h, for dup2.
6909         (futimens): Fix typo: HAVE_FUTIMESAT was misspelled in an #if.
6910         (futimens) [! HAVE_FUTIMESAT]: If !file, set errno before returning -1.
6911
6912 2005-10-02  Jim Meyering  <jim@meyering.net>
6913
6914         Sync from coreutils.
6915         * m4/utimes.m4 (gl_FUNC_UTIMES): Detect the version of utimes
6916         from glibc-2.2.5 that fails for read-only files.
6917
6918 2005-10-02  Jim Meyering  <jim@meyering.net>
6919
6920         Sync from coreutils.
6921         * lib/fts-cycle.c [HAVE_CONFIG_H]: Include <config.h>.
6922         * lib/openat-die.c: Use `#ifdef HAVE_CONFIG_H', not
6923         `#if HAVE_CONFIG_H'.
6924         * lib/openat.c (fdopendir): Do not define if HAVE_FDOPENDIR.
6925         Remove AT_FDCWD test.
6926         Do not consume the fd unless successful.
6927         * lib/openat.h (fdopendir): Do not define if HAVE_FDOPENDIR.
6928         * lib/settime.c (settime): Move the HAVE_STIME block `up' into an #elif
6929         block, so that we don't even try to compile it if settimeofday is
6930         available.  This works around a compilation failure on OSF1 V5.1,
6931         due to stime requiring a `long int*' while tv_sec is `int'.
6932
6933 2005-10-02  Alfred M. Szmidt  <ams@gnu.org>
6934
6935         Sync from coreutils.
6936         * m4/chdir-long.m4 (gl_FUNC_CHDIR_LONG): Compare $gl_have_path...
6937         against `yes', rather than just testing for nonempty.
6938
6939 2005-10-01  Simon Josefsson  <jas@extundo.com>
6940
6941         * m4/getaddrinfo.m4: Include sys/types.h for sys/socket.h, on FreeBSD
6942         and Darwin.
6943
6944         * m4/getaddrinfo.m4: Use AC_GNU_SOURCE, GNU only declare getaddrinfo
6945         as an (POSIX) extension.  Check for sys/types.h, sys/socket.h, and
6946         netdb.h too, needed by getaddrinfo.h.  Check if getaddrinfo,
6947         freeaddrinfo and gai_strerror are declared by the POSIX headers.
6948         Check if struct addrinfo is declared.
6949
6950 2005-10-01  Simon Josefsson  <jas@extundo.com>
6951
6952         * lib/getaddrinfo.h: Protect #include's of sys/socket.h and netdb.h.
6953         Only define struct addrinfo if !HAVE_STRUCT_ADDRINFO.  Protect
6954         AI_* and EAI_* definitions.  Protect function declarations.
6955
6956 2005-10-01  Jim Meyering  <jim@meyering.net>
6957
6958         Sync from coreutils.
6959
6960         * m4/getaddrinfo.m4 (gl_GETADDRINFO): Look for getservbyname in these
6961         libraries [inet nsl socket xnet].  Nelson Beebe reported that with
6962         native cc on Solaris 7, getaddrinfo.c requires -lsocket.
6963         * m4/getaddrinfo.m4 (gl_GETADDRINFO): Check for gethostbyname
6964         in the inet and nsl libraries.  Required on Solaris 5.7.
6965
6966 2005-10-01  Jim Meyering  <jim@meyering.net>
6967
6968         Sync from coreutils.
6969         * m4/getaddrinfo.m4 (gl_GETADDRINFO): Check for gethostbyname
6970         in the inet and nsl libraries.  Required on Solaris 5.7.
6971
6972 2005-10-01  Eric Blake  <ebb9@byu.net>  (tiny change)
6973
6974         * lib/getdelim.c (getdelim): Remove unused variables.
6975
6976 2005-09-29  Paul Eggert  <eggert@cs.ucla.edu>
6977
6978         * lib/xtime.h (XTIME_PRECISION): Now of type int, not long long int,
6979         so that the code works even with ancient cpp.  Portability problem
6980         with GCC 2.7.2.1 reported by Thomas M.Ott.
6981
6982 2005-09-27  Paul Eggert  <eggert@cs.ucla.edu>
6983
6984         * modules/regex (Depends-on): Add strcase.
6985
6986         * modules/gethostname (Licence): Change from GPL to LGPL, since
6987         gethostname.c is a trivial implementation of a standard library
6988         function.
6989         * modules/poll (License): Change from GPL to LGPL, since it's
6990         derived from LGPL code.
6991
6992 2005-09-27  Jim Meyering  <jim@meyering.net>
6993
6994         * lib/getcwd.c: Change #ifdef<TAB>HAVE_CONFIG_H to #ifdef
6995         HAVE_CONFIG_H.
6996
6997         * lib/intprops.h (signed_type_or_expr__): Define.
6998         (INT_STRLEN_BOUND) [__GNUC__]: Use a slightly tighter bound
6999         for unsigned types.
7000
7001 2005-09-26  Paul Eggert  <eggert@cs.ucla.edu>
7002
7003         * lib/verify.h (verify_expr): Remove, replacing with:
7004         (verify_true): New macro that returns true instead of void.
7005         (verify_type__): Remove.
7006         (verify): Use verify_true rather than verify_type__.
7007
7008 2005-09-26  Bruno Haible  <bruno@clisp.org>
7009
7010         * modules/mbchar (Include): Mention that HAVE_WCHAR_H && HAVE_WCTYPE_H
7011         is necessary.
7012         (lib_SOURCES): Remove mbchar.c.
7013         * modules/mbfile (Include): Mention that HAVE_MBRTOWC is necessary.
7014         (Files): Add m4/mbrtowc.m4.
7015         * modules/mbiter: Likewise.
7016         * modules/mbuiter: Likewise.
7017
7018 2005-09-26  Bruno Haible  <bruno@clisp.org>
7019
7020         * m4/mbchar.m4 (gl_MBCHAR): Check for wchar.h and wctype.h. Don't
7021         compile mbchar.c if they are not both present.
7022         * m4/mbfile.m4 (gl_MBFILE): Require gl_FUNC_MBRTOWC.
7023         * m4/mbiter.m4 (gl_MBITER): Likewise.
7024         * m4/strstr.m4 (gl_PREREQ_STRSTR): Use AC_REQUIRE.
7025         * m4/strcasestr.m4 (gl_PREREQ_STRCASESTR): Likewise.
7026         * m4/strcase.m4 (gl_PREREQ_STRCASECMP): Likewise.
7027
7028 2005-09-25  Jim Meyering  <jim@meyering.net>
7029
7030         * modules/inet_ntop (Depends-on): Add socklen, since inet_ntop.c
7031         also uses socklen_t.
7032
7033 2005-09-24  Paul Eggert  <eggert@cs.ucla.edu>
7034
7035         * lib/utimens.c (ENOSYS): Define if not already defined.
7036         (futimens): Support having a null PATH if the file descriptor
7037         is nonnegative.
7038
7039         * lib/regex_internal.h (__GNUC_PREREQ, always_inline, inline, pure):
7040         Remove.
7041         (__attribute): Define to empty unless GCC 3.1 or later.
7042         This works around a core dump on OpenBSD 3.4, which has GCC
7043         2.95.3, which dumps core when given __attribute__(()).  It also
7044         simplifies other tests, since we really don't want to bother with
7045         worrying about which ancient version of GCC supported what.
7046         Original problem reported by Yoann Vandoorselaere, with part of
7047         the fix suggested by Derek Price.
7048
7049 2005-09-24  Jim Meyering  <jim@meyering.net>
7050
7051         * lib/verify.h (verify_type__): Use `unsigned int' as the bitfield type
7052         so we can once again use a positive bitfield width of 1 -- now we
7053         don't have to explain why we were using a bitfield width of 2.
7054
7055 2005-09-23  Paul Eggert  <eggert@cs.ucla.edu>
7056
7057         * m4/regex.m4 (gl_REGEX): If replacing, define regcomp to rpl_regcomp,
7058         and similarly for the other external symbols.  Problem reported
7059         by James Gallager.
7060
7061         * m4/fnmatch.m4 (_AC_FUNC_FNMATCH_IF): Catch Sun Studio 10u1 on Linux
7062         bug reported by Jim Meyering.
7063
7064         * m4/utimens.m4 (gl_UTIMENS): Check for futimesat.
7065         * m4/getaddrinfo.m4 (gl_PREREQ_GETADDRINFO): Undo previous change;
7066         not needed, since socklen is a prerequisite module.
7067
7068 2005-09-23  Paul Eggert  <eggert@cs.ucla.edu>
7069
7070         * lib/getaddrinfo.c [HAVE_NETINET_IN_H]: Include <netinet/in.h>.
7071         Problem reported by Eric Blake.
7072         (getaddrinfo): Initialize se so that it's not garbage.
7073         Redo internal storage allocation so that it doesn't make unportable
7074         assumptions about alignment.
7075         Fix a memory leak.
7076
7077         * lib/utimens.c (futimens): Use futimesat if available.
7078         Prefer it to futimes since it doesn't have the futimes bug.
7079
7080         * lib/verify.h (GL_CONCAT0, GL_CONCAT): Remove.
7081         (verify): Don't use the __LINE__ trick, as it doesn't work in general.
7082         Instead, declare a function that returns a pointer to an array,
7083         and use verify_type__ to declare the size of the array.
7084         Problem and germ of a solution reported by Bruno Haible.
7085         (verify_type__): Use 2, not 1, for bitfield size, to avoid
7086         a warning with Irix 6.5 cc.  Problem reported by Bruno Haible.
7087
7088 2005-09-23  Jim Meyering  <jim@meyering.net>
7089
7090         Sync from coreutils.
7091         Correct build failure (socklen_t not defined) on at least
7092         mips-sgi-irix6.5 and alphaev67-dec-osf5.1.
7093         * m4/getaddrinfo.m4 (gl_PREREQ_GETADDRINFO): Require gl_SOCKLEN_T.
7094
7095 2005-09-23  Jim Meyering  <jim@meyering.net>
7096
7097         * modules/getaddrinfo (Depends-on): Add socklen.
7098
7099 2005-09-23  Bruno Haible  <bruno@clisp.org>
7100
7101         * tests/test-verify.c: New file.
7102
7103 2005-09-22  Paul Eggert  <eggert@cs.ucla.edu>
7104
7105         Sync from coreutils.
7106
7107         * modules/argmatch (Depends-on): Add verify.
7108         * modules/getloadavg (Depends-on): Depend on fcntl-safer, not
7109         unistd-safer.
7110         * modules/save-cwd (Depends-on): Likewise.
7111
7112         * modules/openat (Files): Add lib/openat-die.c.
7113         (Depends-on): Remove error, exitfail.
7114         Add dirname.
7115
7116         * modules/verify: New file.
7117         * MODULES.html.sh (Diagnostics <assert.h>): New section,
7118         with "verify" module.
7119
7120 2005-09-22  Paul Eggert  <eggert@cs.ucla.edu>
7121
7122         Sync from coreutils.
7123
7124         * m4/backupfile.m4, calloc.m4, chown.m4, cloexec.m4, dup2.m4:
7125         * m4/fileblocks.m4, free.m4, ftruncate.m4, getcwd.m4, getpagesize.m4:
7126         * m4/getugroups.m4, group-member.m4, idcache.m4, link-follow.m4:
7127         * m4/mkstemp.m4, mktime.m4, mountlist.m4, nanosleep.m4, pathmax.m4:
7128         * m4/physmem.m4, posixver.m4, putenv.m4, safe-read.m4, same.m4:
7129         * m4/save-cwd.m4, stdio-safer.m4, unistd-safer.m4, unlinkdir.m4:
7130         * m4/userspec.m4, xgetcwd.m4, xreadlink.m4:
7131         Don't bother checking for string.h, stdlib.h, unistd.h.
7132         * m4/fts.m4 (gl_FUNC_FTS_CORE): Don't require
7133         AC_FUNC_LSTAT_FOLLOWS_SLASHED_SYMLINK; that's now the lstat
7134         module's job.
7135         * m4/jm-macros.m4 (gl_MACROS): Likewise.
7136         * m4/prereq.m4 (gl_PREREQ): Add gl_FUNC_LSTAT.
7137
7138         * m4/getdate.m4 (gl_C_COMPOUND_LITERALS): New macro.
7139         (gl_GETDATE): Use it.
7140
7141         * m4/mkdir-p.m4 (gl_MKDIR_PARENTS): Don't bother checking for unistd.h.
7142
7143 2005-09-22  Paul Eggert  <eggert@cs.ucla.edu>
7144
7145         Sync from coreutils.
7146
7147         * lib/.cppi-disable: Add regcomp.c, regex_internal.c, regex_internal.h,
7148         stat-time.h.
7149         * lib/argmatch.h: Include verify.h
7150         (ARGMATCH_VERIFY): Use verify rather than rolling our own.
7151         (ARGMATCH_ASSERT): Remove; unused.
7152         * lib/canonicalize.c: Assume STDC_HEADERS.
7153         * lib/exclude.c: Include "strcase.h".
7154         * lib/regex_internal.h [!defined _LIBC]: Likewise.
7155         * lib/getusershell.c: Include stdio--.h rather than stdio.h
7156         and stdio-safer.h.
7157         (getusershell): Call fopen, not fopen_safer.
7158         * lib/save-cwd.c: Include fcntl--.h rather than fcntl.h.
7159         Do not include unistd-safer.h.
7160         (save_cwd): Don't call fd_safer; no longer needed
7161         now that we include fcntl--.h.
7162
7163         * lib/getdate.y (relative_time): New type.
7164         (RELATIVE_TIME_0): New constant.
7165         (parser_control): Use relative_time instead of doing it ourselves.
7166         (%union): Add new relative_time rel member.
7167         (tYEAR_UNIT, tMONTH_UNIT, tHOUR_UNIT, tMINUTE_UNIT, tSEC_UNIT):
7168         Now typeless.
7169         (relunit, relunit_snumber): Now of type rel.
7170         (zone, rel, relunit, get_date): Adjust to above changes.
7171
7172         * lib/getloadavg.c: Include fcntl--.h rather than fcntl.h.
7173         Do not include unistd-safer.h.
7174         (getloadavg): Don't call fd_safer; no longer needed
7175         now that we include fcntl--.h.
7176
7177         * lib/mkdir-p.c (ENOSYS): Define to EEXIST if not defined.
7178         (make_dir_parents): Treat ENOSYS like EEXIST.
7179
7180         Improve quality of diagnostics on restore_cwd failure.
7181         * lib/mkdir-p.h (make_dir): Remove.  All uses replaced by mkdir.
7182         (make_dir_parents): Last arg is now int * (for errno), not bool *.
7183         * lib/mkdir-p.c (make_dir, make_dir_parents): Likewise.
7184         Rewrite "mkdir -p" algorithm to avoid the need for "stat"
7185         each time through the loop.  Do not diagnose restore_cwd failure;
7186         that is the caller's job (and perhaps the caller does not care).
7187
7188         * lib/mkdir-p.c (CLEANUP_CWD, CLEANUP): Remove.
7189         (make_dir_parents): Revamp to avoid need for CLEANUP_CWD, CLEANUP.
7190         If the file already exists but is not a directory, don't bother
7191         to try to make its parents.
7192         Close potential file descriptor leak if we can't chdir("/") (!).
7193         Don't always return true if chdir($PWD) fails; return true only
7194         if the requested action was done successfully (except for the
7195         chdir($PWD)).
7196         Don't log final directory unless we actually made it.
7197         Refactor to avoid duplicate code to fix up permissions.
7198         Don't attempt to fix up parent permissions if chdir($PWD) fails.
7199
7200         * lib/strftime.c (my_strftime): Rewrite the previous change slightly,
7201         to make it a bit faster and (I hope) clearer.
7202         * lib/strftime.c (my_strftime): Add support for %:z, %::z, %:::z.
7203         Fix bug in formats like %2N.
7204
7205         * lib/verify.h: New file.
7206
7207 2005-09-22  Paul Eggert  <eggert@cs.ucla.edu>
7208
7209         Sync from coreutils.
7210         * m4/getaddrinfo.m4 (gl_PREREQ_GETADDRINFO): Check for netinet/in.h.
7211
7212 2005-09-22  Jim Meyering  <jim@meyering.net>
7213
7214         Sync from coreutils.
7215
7216         * m4/lstat.m4 (gl_FUNC_LSTAT):
7217         Use AC_LIBSOURCES to require lstat.c and lstat.h.
7218         Remove obsolete comment.
7219         * m4/xreadlink.m4: Use AC_LIBSOURCES and AC_LIBOBJ.
7220         * m4/xstrtod.m4: Likewise.
7221
7222         * m4/openat.m4 (gl_FUNC_OPENAT): Add openat-die.c.
7223
7224 2005-09-22  Jim Meyering  <jim@meyering.net>
7225
7226         Sync from coreutils.
7227
7228         * lib/backupfile.c: Use ARGMATCH_VERIFY, just in case.
7229
7230         * lib/posixtm.c (posixtime) [lint]: Initialize *all* of tm0, not just
7231         the .tm_year member, since otherwise gcc-4.0 would now warn about
7232         tm_zone, tm_gmtoff, tm_isdst, tm_yday, tm_wday.
7233
7234         * lib/quotearg.c (quotearg_n_options): Change code to be suboptimal, in
7235         order to avoid an unsuppressible warning from gcc on 64-bit systems.
7236
7237         * lib/getdate.y (get_date): Undo part of the 2005-04-04 change, so that
7238         the command "date -d'2005-03-27 +1 day'" succeeds once again, even
7239         when run in a time zone for which daylight savings time is in effect
7240         for the starting date.
7241
7242         * lib/mkdir-p.c (make_dir_parents): Don't let a failed chdir($PWD)
7243         stop us from restricting permissions of just-created absolute-named
7244         directories.
7245         * lib/mkdir-p.c (CLEANUP_CWD): Return *true*, not false when failing
7246         to restore initial working directory.
7247         * lib/mkdir-p.c (make_dir_parents): New parameter:
7248         different_working_dir, to tell caller if/when we change the working
7249         directory and are unable to return to the initial one.
7250         * lib/mkdir-p.h (make_dir_parents): Update prototype.
7251         * lib/mkdir-p.c (CLEANUP_CWD): Change one more `return 1' to
7252         `return false'.  This fixes a bug introduced on 2004-07-30.
7253
7254         * lib/openat.c (fdopendir): Be sure to close the supplied
7255         file descriptor before returning.  This makes our replacement
7256         implementation a little closer to Solaris's, where fdopendir
7257         ties the file descriptor to the returned DIR* pointer.
7258         * lib/openat.c (unlinkat): New function.
7259         * lib/openat.h (unlinkat): Add prototype.
7260         * lib/openat-die.c (openat_save_fail): Rename from openat_save_die.
7261         (openat_restore_fail): Rename from openat_restore_die.
7262         * lib/openat.c, openat.h: Reflect s/_die/_fail/ renaming.
7263
7264         Provide an alternative to exiting immediately upon save_cwd or
7265         restore_cwd failure.  Now, an application can arrange e.g.,
7266         to perform a longjump in that case.
7267         * lib/openat.c: Include dirname.h.
7268         Use IS_ABSOLUTE_FILE_NAME rather than testing for leading slash.
7269         (rpl_openat, fdopendir, fstatat): Call openat_save_die
7270         and openat_restore_die rather than calling error directly.
7271         Don't include "error.h" or "exitfail.h"; they're no longer needed.
7272
7273         * lib/openat-die.c (openat_save_die, openat_restore_die): New file.
7274         * lib/openat.h (openat_save_die, openat_restore_die): Declare and
7275         define.
7276
7277         * lib/strftime.c [FPRINTFTIME] (fprintftime): Provide a new interface:
7278         size_t fprintftime (FILE *fp, char const *fmt, struct tm const *tm,
7279                             int utc, int nanoseconds);
7280         Background:
7281         date should not have to allocate a megabyte of virtual memory to
7282         handle a format argument like +%1048575T.  When implemented with
7283         strftime, it must allocate such a buffer, use strftime to fill it
7284         in, print it, then free it.
7285         With fprintftime, it simply prints everything and exits.
7286         With no need for memory allocation, that's one fewer way to fail.
7287         * lib/strftime.c (my_strftime): Parse the colons of %:::z *after* the
7288         optional field width, not before, so we accept %9:z, not %:9z.
7289         (my_strftime): Be sure to use L_('x') for literals.
7290
7291         * lib/backupfile.c, lib/canon-host.c, lib/canonicalize.c, lib/chown.c:
7292         * lib/cloexec.c, lib/dup-safer.c, lib/dup2.c, lib/euidaccess.c:
7293         * lib/fd-safer.c, lib/fileblocks.c, lib/fopen-safer.c, lib/fsusage.c:
7294         * lib/ftruncate.c, lib/getcwd.c, lib/getcwd.h, lib/getloadavg.c:
7295         * lib/getopt_.h, lib/getpagesize.h, lib/getugroups.c:
7296         * lib/group-member.c, lib/human.h, lib/idcache.c, lib/mkdir-p.c:
7297         * lib/mountlist.c, lib/nanosleep.c, lib/pathmax.h, lib/physmem.c:
7298         * lib/posixver.c, lib/putenv.c, lib/raise.c, lib/safe-read.c:
7299         * lib/same.c, lib/save-cwd.c, lib/setenv.c, lib/settime.c:
7300         * lib/tempname.c, lib/unlinkdir.c, lib/unsetenv.c, lib/userspec.c:
7301         * lib/xgethostname.c, lib/xreadlink.c:
7302         Assume HAVE_UNISTD_H, i.e., include <unistd.h> unconditionally.
7303
7304         * lib/chown.c, lib/cloexec.c, lib/dup-safer.c, lib/dup2.c:
7305         * lib/fsusage.c, lib/getcwd.c, lib/getloadavg.c, lib/mountlist.c:
7306         * lib/openat.h, lib/save-cwd.c, lib/tempname.c:
7307         Assume HAVE_FCNTL_H (i.e., include <fcntl.h> unconditionally,
7308         and don't include <sys/file.h>).
7309
7310 2005-09-22  Eric Blake  <ebb9@byu.net>  (tiny change)
7311
7312         Sync from coreutils.
7313
7314         * lib/getloadavg.c (getloadavg) [__CYGWIN__]: Port to cygwin.
7315         [__linux__]: Allocate a big enough buffer for /proc/loadavg.
7316         [!LDAV_DONE]: Avoid unused variable warning.
7317
7318 2005-09-21  Bruno Haible  <bruno@clisp.org>
7319
7320         * lib/unicodeio.h (unicode_to_mb): New declaration.
7321
7322 2005-09-20  Derek Price  <derek@ximbiot.com>
7323
7324         * lib/getaddrinfo.c: Don't include <netdb.h> included from
7325         getaddrinfo.h.
7326
7327 2005-09-20  Bruno Haible  <bruno@clisp.org>
7328
7329         * gnulib-tool: Remove trailing slashes from the values specified for
7330         --source-base, --m4-base, --tests-base, --aux-dir.
7331         Suggested by Simon Josefsson <jas@extundo.com>.
7332
7333 2005-09-20  Bruno Haible  <bruno@clisp.org>
7334
7335         * gnulib-tool (func_all_modules, func_modules_transitive_closure,
7336         func_modules_to_filelist, func_import, func_create_testdir): Make all
7337         sorting results locale-independent, so that gnulib-cache.m4 doesn't
7338         change when gnulib-tool is invoked in a different locale.
7339
7340 2005-09-19  Simon Josefsson  <jas@extundo.com>
7341
7342         * m4/socklen.m4: Fix typo.
7343
7344 2005-09-19  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
7345
7346         Use a consistent style for including <config.h>.
7347         * lib/__fpending.c, lib/acl.c, lib/argmatch.c, lib/argp-help.c,
7348         lib/argp-parse.c, lib/argp-pvh.c, lib/backupfile.c, lib/basename.c,
7349         lib/c-stack.c, lib/calloc.c, lib/check-version.c, lib/cloexec.c,
7350         lib/closeout.c, lib/copy-file.c, lib/creat-safer.c, lib/cycle-check.c,
7351         lib/dirfd.c, lib/dirname.c, lib/dup-safer.c, lib/dup2.c,
7352         lib/euidaccess.c, lib/exclude.c, lib/exitfail.c, lib/fatal-signal.c,
7353         lib/fd-safer.c, lib/file-type.c, lib/fileblocks.c, lib/filemode.c,
7354         lib/filenamecat.c, lib/findprog.c, lib/fnmatch.c, lib/fopen-safer.c,
7355         lib/free.c, lib/fsusage.c, lib/ftruncate.c, lib/full-write.c,
7356         lib/fwriteerror.c, lib/getaddrinfo.c, lib/getcwd.c, lib/getdelim.c,
7357         lib/getline.c, lib/getlogin_r.c, lib/getndelim2.c, lib/getnline.c,
7358         lib/getopt1.c, lib/getpass.c, lib/group-member.c, lib/hard-locale.c,
7359         lib/hash-pjw.c, lib/hash.c, lib/human.c, lib/idcache.c,
7360         lib/inet_ntop.c, lib/isdir.c, lib/long-options.c, lib/malloc.c,
7361         lib/memcasecmp.c, lib/memcmp.c, lib/memcoll.c, lib/memcpy.c,
7362         lib/memmove.c, lib/mkdir-p.c, lib/modechange.c, lib/mountlist.c,
7363         lib/open-safer.c, lib/physmem.c, lib/pipe-safer.c, lib/pipe.c,
7364         lib/poll.c, lib/posixver.c, lib/progname.c, lib/progreloc.c,
7365         lib/putenv.c, lib/quote.c, lib/quotearg.c, lib/readline.c,
7366         lib/readlink.c, lib/realloc.c, lib/regex.c, lib/rename.c, lib/rmdir.c,
7367         lib/rpmatch.c, lib/safe-read.c, lib/same.c, lib/save-cwd.c,
7368         lib/savedir.c, lib/sig2str.c, lib/strcspn.c, lib/strerror.c,
7369         lib/stripslash.c, lib/strncasecmp.c, lib/strndup.c, lib/strnlen.c,
7370         lib/strnlen1.c, lib/strsep.c, lib/strstr.c, lib/strtod.c,
7371         lib/strtoimax.c, lib/strtol.c, lib/strverscmp.c, lib/tempname.c,
7372         lib/time_r.c, lib/userspec.c, lib/utimecmp.c, lib/version-etc-fsf.c,
7373         lib/version-etc.c, lib/wait-process.c, lib/xalloc-die.c, lib/xgetcwd.c,
7374         lib/xmalloc.c, lib/xmemcoll.c, lib/xnanosleep.c, lib/xreadlink.c,
7375         lib/xsetenv.c, lib/xstrndup.c, lib/xstrtoimax.c, lib/xstrtol.c,
7376         lib/xstrtoumax.c, lib/yesno.c:
7377         Standardize inclusion of config.h.
7378         * lib/__fpending.h, lib/dirfd.h, lib/getdate.h, lib/human.h,
7379         lib/inttostr.h:  Removed inclusion of config.h from header files.
7380         * lib/inttostr.c:  Adjusted in-tree users.
7381         * lib/timespec.h: Remove superfluous warning to include config.h.
7382         * lib/atexit.c, lib/chdir-long.c, lib/chown.c, lib/fchown-stub.c,
7383         lib/getgroups.c, lib/gettimeofday.c, lib/lchown.c, lib/lstat.c,
7384         lib/mkdir.c, lib/mkstemp.c, lib/nanosleep.c, lib/openat.c, lib/raise.c,
7385         lib/readtokens0.c, lib/readutmp.c, lib/unlinkdir.c: Guard inclusion of
7386         config.h with HAVE_CONFIG_H.
7387
7388 2005-09-19  Jim Meyering  <jim@meyering.net>
7389
7390         * modules/pathmax (License): Change to LGPL.
7391
7392 2005-09-19  Derek Price  <derek@ximbiot.com>
7393
7394         * config/srclist.txt: glibc's glob.h is now in lib/glob-libc.h.
7395
7396 2005-09-19  Bruno Haible  <bruno@clisp.org>
7397
7398         * gnulib-tool (import): Provide default for --tests-base.
7399
7400 2005-09-19  Bruno Haible  <bruno@clisp.org>
7401
7402         * doc/quote.texi: New file, extracted from gnulib.texi.
7403         * doc/ctime.texi: New file, extracted from gnulib.texi.
7404         * doc/inet_ntoa.texi: New file, extracted from gnulib.texi.
7405         * doc/gnulib-tool.texi: New file, extracted from gnulib.texi.
7406         * doc/gnulib.texi: Include them.
7407
7408 2005-09-18  Bruno Haible  <bruno@clisp.org>
7409
7410         Portability fix.
7411         * gnulib-tool (func_readlink): New function.
7412         (func_ln_if_changed): Use it.
7413
7414 2005-09-18  Bruno Haible  <bruno@clisp.org>
7415
7416         * gnulib-tool: Support --with-tests also with --import.
7417         (func_emit_tests_Makefile_am): Use variables $m4base and $testsbase.
7418         (func_import): Use variables $testsbase and $inctests. Emit a
7419         gl_TESTS_BASE form into gnulib-cache.m4. Create $testsbase/Makefile.am.
7420         Remind the user to add AC_CONFIG_FILES($testsdir/Makefile) and
7421         SUBDIRS += $testsdir.
7422         (func_create_testdir): Update.
7423
7424 2005-09-18  Bruno Haible  <bruno@clisp.org>
7425
7426         * gnulib-tool: Revise --dry-run implementation. Use variable $doit
7427         instead of $dry_run.
7428         (func_cp_if_changed, func_mv_if_changed): Remove functions.
7429         (func_ln_if_changed): Don't handle dry-run here.
7430         (func_import): In dry-run mode, detect more precisely which actions
7431         would be performed, and don't use "...ing" verbs.
7432
7433 2005-09-18  Bruno Haible  <bruno@clisp.org>
7434
7435         * gnulib-tool (func_tmpdir): New function, taken from GNU gettextize.
7436         (func_import): Use join on two temporary files instead of three nested
7437         loops, in order to determine which files are new or old.
7438
7439 2005-09-18  Bruno Haible  <bruno@clisp.org>
7440
7441         * gnulib-tool (func_import): Comment out code that spits out the
7442         new files with --dry-run.
7443
7444 2005-09-18  Bruno Haible  <bruno@clisp.org>
7445
7446         * doc/gnulib.texi (Invoking gnulib-tool): 50% rewritten.
7447
7448 2005-09-16  Paul Eggert  <eggert@cs.ucla.edu>
7449
7450         * lib/stat-time.h: New file.
7451         * lib/timespec.h (ST_TIME_CMP_NS, ST_TIME_CMP, ATIME_CMP, CTIME_CMP):
7452         (MTIME_CMP, TIMESPEC_NS): Remove.  Now done by stat-time.h,
7453         in a different way.
7454         (timespec_cmp): New function.
7455         * lib/utimecmp.c: Include stat-time.h.
7456         (SYSCALL_RESOLUTION): Depend on whether various struct stat
7457         members exist, not on the obsolescent ST_MTIM_NSEC.
7458         (utimecmp): Use the new stat-time functions rater than TIMESPEC_NS.
7459
7460 2005-09-16  Paul Eggert  <eggert@cs.ucla.edu>
7461
7462         * config/srclist.txt: Remove glibc bug 1033 and uncomment mktime.c.
7463
7464 2005-09-16  Paul Eggert  <eggert@cs.ucla.edu>
7465
7466         * MODULES.html.sh (File system functions): Add stat-time.
7467         * modules/stat-time: New file.
7468         * modules/timespec (Files): Remove m4/st_mtim.m4; this
7469         is now done in a different way, by the stat-time module.
7470         * modules/utimecmp (Depends-on): Add stat-time.
7471
7472 2005-09-15  Paul Eggert  <eggert@cs.ucla.edu>
7473
7474         * m4/st_mtim.m4: Remove.  Superseded by...
7475         * m4/stat-time.m4: New file.
7476         * m4/timespec.m4 (gl_TIMESPEC): Require AC_C_INLINE.
7477         Do not invoke AC_STRUCT_ST_MTIM_NSEC; no longer needed.
7478
7479 2005-09-15  Derek Price  <derek@ximbiot.com>
7480
7481         * m4/strstr.m4 (gl_FUNC_STRSTR): Don't define strstr here.
7482
7483 2005-09-15  Derek Price  <derek@ximbiot.com>
7484
7485         * lib/regex_internal.h: Blank `pure' for GNUC < 3.
7486         * lib/regex_internal.c: Ditto, using this...
7487         (__GNUC_PREREQ): ...new macro.
7488         * lib/regcomp.c, regexec.c: Blank `always_inline' for GNUC < 3.1
7489         using...
7490         (__GNUC_PREREQ): ...this new macro.
7491
7492         * lib/strstr.h: Include string.h. Define strstr as a macro here.
7493
7494 2005-09-15  Derek Price  <derek@ximbiot.com>
7495             Paul Eggert  <eggert@cs.ucla.edu>
7496
7497         * lib/regcomp.c, regexec.c, regex_internal.c: Back out previous
7498         changes, consolidating in...
7499         * lib/regex_internal.h: ...this file.
7500
7501 2005-09-13  Jim Meyering  <jim@meyering.net>
7502
7503         * lib/canon-host.c: Filter through gnu indent and reword comments
7504         slightly.
7505         * lib/canon-host.h (ch_strerror_r): Tweak cpp indentation and spacing.
7506
7507 2005-09-13  Derek Price  <derek@ximbiot.com>
7508
7509         * lib/canon-host.c (canon_host_r): Set *cherror on memory allocation
7510         failure.
7511         Reported by Jim Meyering  <jim@meyering.net>.
7512
7513 2005-09-12  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>  (tiny change)
7514
7515         * lib/base64.c: Typo.
7516         (base64_encode): Put b64str in initialized data section.
7517
7518 2005-09-12  Paul Eggert  <eggert@cs.ucla.edu>
7519
7520         Merge glibc and coreutils changes into gnulib, plus a few
7521         extra fixes.
7522         * lib/md5.c: Use #error rather than a string.
7523         (CYCLIC): New macro, from glibc source.  Use it instead of rol.
7524         * lib/md5.h (__GNUC_PREREQ, __THROW): Define if not defined already.
7525         (__attribute__): Define to empty for non recent-GCC.
7526         (__md5_buffer, __md5_finish_ctx, __md5_init_ctx, __md5_process_block):
7527         (__md5_process_bytes, __md5_read_ctx, __md5_stream):
7528         Renamed from their non-__ counterparts, with new macros replacing
7529         them if not _LIBC.  Add __THROW attribute.
7530         (rol): Remove.
7531         (struct md5_ctx): Align buffer if using GCC.
7532         * lib/sha1.h (struct sha1_ctx): Likewise.
7533         * lib/sha1.c (SWAP): Renamed from the NOTSWAP.  All uses changed.
7534         The old name was backwards.
7535         (NOTSWAP): Remove; not used.
7536         (rol): New macro, moved here from md5.h.
7537         (sha1_process_block): Remove a FIXME that doesn't make sense.
7538
7539 2005-09-12  Derek Price  <derek@ximbiot.com>
7540
7541         Return usable errors from canon-host.
7542         * lib/canon-host.h: New file.
7543         * lib/canon-host.c (canon_host): Wrap...
7544         (canon_host_r): ...this new function, which now relies exclusively on
7545         getaddrinfo.
7546         (ch_strerror): New function.
7547         (last_cherror): New global.
7548         * lib/getaddrinfo.c: Move include of getaddrinfo.h first to test
7549         interface.
7550         (getaddrinfo): Add AI_CANONNAME functionality.  Don't do arithmetic on
7551         void *.
7552         (freeaddrinfo): Free ai->ai_canonname when set.
7553
7554 2005-09-12  Derek Price  <derek@ximbiot.com>
7555
7556         Make canon-host require getaddrinfo.
7557         * m4/canon-host.m4 (gl_CANON_HOST): Remove most dependencies.
7558         AC_LIBSOURCE canon-host.h.  Call...
7559         (gl_PREREQ_CANON_HOST): ...this new function, which requires
7560         gl_GETADDRINFO.
7561         * m4/getaddrinfo.m4 (gl_GETADDRINFO): Compile gai_strerror when needed.
7562
7563 2005-09-12  Derek Price  <derek@ximbiot.com>
7564
7565         * modules/canon-host: Add canon-host.h.  Depend on getaddrinfo.  Make
7566         LGPL.
7567         * modules/getaddrinfo: Add link to opengroup spec.  Depend on strdup.
7568
7569 2005-09-12  Derek Price  <derek@ximbiot.com>
7570
7571         * lib/gai_strerror.c: Include config.h when available.  Include
7572         getaddrinfo.h before other headers to test interface.
7573         Reported by Larry Jones <lawrence.jones@ugs.com>.
7574
7575 2005-09-12  Derek Price  <derek@ximbiot.com>
7576             Paul Eggert  <eggert@cs.ucla.edu>
7577
7578         * modules/glob (Files): Add glob-libc.h.
7579
7580 2005-09-12  Derek Price  <derek@ximbiot.com>
7581             Paul Eggert  <eggert@cs.ucla.edu>
7582
7583         * m4/glob.m4 (gl_GLOB_SUBSTITUTE): AC_LIBSOURCES for glob.c,
7584         glob_.h, glob-libc.h.
7585         (gl_PREREQ_GLOB): Remove _SYS_CDEFS_H hack; no longer needed.
7586
7587 2005-09-12  Derek Price  <derek@ximbiot.com>
7588             Paul Eggert  <eggert@cs.ucla.edu>
7589
7590         * lib/glob-libc.h: Renamed from glob_.h.  The new version is
7591         taken from libc's glob.h, except with '#ifdef __GLOB_GNULIB'
7592         protecting things that should be done only in gnulib contexts.
7593         * lib/glob_.h: New file, containing only the glob things needed for
7594         gnulib.
7595         (GLOB_PREFIX): Remove.  All uses changed to look for __GLOB_GNULIB.
7596         (__GLOB_CONCAT, __GLOB_XCONCAT, __GLOB_ID): Remove; no longer needed.
7597         (glob, globfree, glob_pattern_p): Now defined simply in terms of
7598         rpl_glob, rpl_globfree, rpl_glob_pattern_p.
7599         (__GLOB_GNULIB): New macro, to keep the glob.h changes clearer
7600         and to respect the namespace rules better.
7601
7602 2005-09-08  Simon Josefsson  <jas@extundo.com>
7603
7604         * modules/socklen: New file.
7605
7606 2005-09-08  Simon Josefsson  <jas@extundo.com>
7607
7608         * m4/socklen.m4: New file.
7609
7610 2005-09-08  Paul Eggert  <eggert@cs.ucla.edu>
7611
7612         * modules/utimens (Files): Add m4/utimbuf.m4, since
7613         m4/utimens.m4 requires gl_CHECK_TYPE_STRUCT_UTIMBUF.
7614         Reported by Sergey Poznyakoff.
7615
7616 2005-09-08  Paul Eggert  <eggert@cs.ucla.edu>
7617
7618         * lib/glob.c (glob, globfree, __glob_pattern_p): Use old-style function
7619         definitions, since that's the preferred style in glibc.
7620         Fix a minor spacing issue, and update copyright notice to match
7621         glibc's.
7622
7623 2005-09-08  Paul Eggert  <eggert@cs.ucla.edu>
7624
7625         * config/srclist.txt: Remove glibc bug 1061; it's been fixed.
7626
7627 2005-09-06  Simon Josefsson  <jas@extundo.com>
7628
7629         * lib/getpass.c (getpass): Fix typo, test for HAVE_TCSETATTR and not
7630         TCSETATTR.  Reported by Derek Price <derek@ximbiot.com>.
7631
7632 2005-09-06  Paul Eggert  <eggert@cs.ucla.edu>
7633
7634         * lib/regex_internal.h (bitset_not): Add parens to avoid gcc -Wall
7635         warning.
7636
7637 2005-09-06  Paul Eggert  <eggert@cs.ucla.edu>
7638
7639         * config/srclist.txt: Add glibc bug 1302.
7640
7641 2005-09-05  Paul Eggert  <eggert@cs.ucla.edu>
7642
7643         Change bitset word type from unsigned int to unsigned long int,
7644         as this has better performance on typical 64-bit hosts.
7645         Port bitset code to hosts with unusual word sizes.
7646         * lib/regcomp.c (build_equiv_class, build_charclass, build_range_exp):
7647         (build_collating_symbol):
7648         Prefer bitset to re_bitset_ptr_t in prototypes, when the actual
7649         argument is a bitset.  This is merely a style issue, but it makes
7650         it clearer that an entire array is expected.
7651         (re_compile_fastmap_iter, init_dfa, init_word_char, optimize_subexps):
7652         * lib/regcomp.c (lower_subexp, parse_bracket_exp, built_charclass_op):
7653         Port to the case where bitset_word is not the same as unsigned int.
7654         * lib/regex_internal.h (bitset_set, bitset_clear, bitset_contain):
7655         (bitset_not, bitset_merge, bitset_set_all, bitset_mask):
7656         Likewise.
7657         * lib/regexec.c (check_dst_limits_calc_pos_1,
7658         check_subexp_matching_top):
7659         (build_trtable, group_nodes_into_DFAstates):
7660         Likewise.
7661         * lib/regcomp.c (re_compile_fastmap_iter, utf8_sb_map, optimize_utf8):
7662         Don't assume that SBC_MAX is a multiple of BITSET_WORD_BITS.
7663         * lib/regex_internal.h (bitset_set_all, bitset_not): Likewise.
7664         * lib/regexec.c (group_nodes_into_DFAstates): Likewise.
7665         * lib/regcomp.c (utf8_sb_map): Don't assume UINT_MAX == 0xffffffff.
7666         * lib/regcomp.c (optimize_subexps, lower_subexp):
7667         Work even if bitset_word has holes in its bitwise representation.
7668         * lib/regex_internal.h (BITSET_WORD_BITS): Likewise.
7669         * lib/regexec.c (check_dst_limits_calc_pos_1,
7670         check_subexp_matching_top):
7671         Likewise.
7672         * lib/regex_internal.c (re_string_reconstruct):
7673         Don't assume UCHAR_MAX == 255.
7674         * lib/regex_internal.h (bitset_set_all): Likewise.
7675         * lib/regex_internal.h (BITSET_WORD_BITS): Renamed from UINT_BITS.
7676         All uses changed.
7677         (BITSET_WORDS): Renamed from BITSET_UINTS.  All uses changed.
7678         (bitset_word): New type, replacing 'unsigned int' for bitset uses.
7679         All uses changed.
7680         (BITSET_WORD_MAX): New macro.
7681         (bitset_set, bitset_clear, bitset_contain, bitset_empty):
7682         (bitset_set_all, bitset_copy):  Now inline functions, not macros.
7683         (bitset_empty, bitset_copy):
7684         Prefer sizeof (bitset) to multiplying it out ourselves.
7685         (bitset_not_merge): Remove; unused.
7686         (bitset_contain): Return bool, not unsigned int with one bit on.
7687         All callers changed.
7688         * lib/regexec.c (build_trtable): Don't assume bitset has no stricter
7689         alignment than re_node_set; do this by defining a new internal
7690         type struct dests_alloc and using it to allocate memory.
7691
7692 2005-09-05  Bruno Haible  <bruno@clisp.org>
7693
7694         * gnulib-tool (func_import): Fix comparison in handling of symbolic
7695         links.
7696
7697 2005-09-04  Martin Lambers <marlam@marlam.de>  (tiny change)
7698
7699         * modules/size_max (Makefile.am): Add size_max.h
7700
7701 2005-09-04  Derek Price  <derek@ximbiot.com>
7702
7703         * gnulib-tool (func_import): Fix reversed $symbolic logic.
7704
7705 2005-09-03  Simon Josefsson  <jas@extundo.com>
7706
7707         * gnulib-tool: Fix typo.
7708
7709 2005-09-03  Simon Josefsson  <jas@extundo.com>
7710
7711         * config/srclist.txt: Add glibc bug 1293.
7712
7713 2005-09-03  Derek Price  <derek@ximbiot.com>
7714
7715         * m4/getlogin_r (gl_GETLOGIN_R): Fix cut & paste error.
7716         From Larry Jones <lawrence.jones@ugs.com>.
7717
7718 2005-09-02  Simon Josefsson  <jas@extundo.com>
7719
7720         * modules/socklen: New file.
7721
7722 2005-09-02  Simon Josefsson  <jas@extundo.com>
7723
7724         * modules/havelib: New module.
7725
7726         * modules/gettext, modules/iconv, modules/lock, modules/readline:
7727         Use havelib.
7728
7729 2005-09-02  Paul Eggert  <eggert@cs.ucla.edu>
7730
7731         Check for arithmetic overflow when calculating sizes, to prevent
7732         some buffer-overflow issues.  These patches are conservative, in the
7733         sense that when I couldn't determine whether an overflow was possible,
7734         I inserted a run-time check.
7735         * lib/regex_internal.h (re_xmalloc, re_xrealloc, re_x2realloc): New
7736         macros.
7737         (SIZE_MAX) [!defined SIZE_MAX]: New macro.
7738         (re_alloc_oversized, re_x2alloc_oversized, re_xnmalloc):
7739         (re_xnrealloc, re_x2nrealloc): New inline functions.
7740         * lib/regcomp.c (init_dfa, analyze, build_range_exp,
7741         parse_bracket_exp):
7742         (build_equiv_class, build_charclass): Check for arithmetic overflow
7743         in size expression calculations.
7744         * lib/regex_internal.c (re_string_realloc_buffers):
7745         (build_wcs_upper_buffer, re_node_set_add_intersect):
7746         (re_node_set_init_union, re_node_set_insert, re_node_set_insert_last):
7747         (re_dfa_add_node, register_state): Likewise.
7748         * lib/regexec.c (re_search_stub, re_copy_regs, re_search_internal):
7749         (prune_impossible_nodes, push_fail_stack, set_regs, check_arrival):
7750         (build_trtable, extend_buffers, match_ctx_init, match_ctx_add_entry):
7751         (match_ctx_add_subtop, match_ctx_add_sublast): Likewise.
7752
7753 2005-09-02  Paul Eggert  <eggert@cs.ucla.edu>
7754
7755         * modules/inttostr (Files): Add m4/inttypes_h.m4, m4/stdint_h.m4,
7756         m4/ulonglong.m4.  Problem reported by Martin Lambers.
7757
7758 2005-09-02  Bruno Haible  <bruno@clisp.org>
7759
7760         Support for lib vs. lib64 distinction on biarch platforms.
7761         * m4/lib-prefix.m4 (AC_LIB_PREPARE_MULTILIB): New macro.
7762         (AC_LIB_PREFIX): Require it. Use $acl_libdirstem instead of 'lib'.
7763         * m4/lib-link.m4 (AC_LIB_LINKFLAGS_BODY): Likewise.
7764
7765 2005-09-02  Bruno Haible  <bruno@clisp.org>
7766
7767         * gnulib-tool (import): In the other first-use case, provide defaults
7768         as well.
7769
7770 2005-09-02  Bruno Haible  <bruno@clisp.org>
7771
7772         * config/srclist.txt: lib-link.m4 and lib-prefix.m4 currently have
7773         patches not yet found in the latest gettext release.
7774
7775 2005-09-01  Paul Eggert  <eggert@cs.ucla.edu>
7776
7777         * lib/glob.c (GET_LOGIN_NAME_MAX): Renamed from LOGIN_NAME_MAX,
7778         to avoid a collision with bits/local_lim.h in glibc.
7779         All uses changed.  Problem reported by Dmitry V. Levin in
7780         <http://sources.redhat.com/bugzilla/show_bug.cgi?id=1060>.
7781
7782         * lib/regex_internal.c (build_wcs_upper_buffer): Fix portability
7783         bugs in int versus size_t comparisons.
7784         (re_string_context_at): Fix bug where the code assumed that
7785         Idx is signed.
7786
7787         Use bool where appropriate.
7788         * lib/regcomp.c (re_set_fastmap): ICASE arg is bool, not int.
7789         All callers changed.
7790         (calc_eclosure_iter): Likewise, for ROOT arg.
7791         (parse_bracket_element): Likewise, for ACCEPT_HYPHEN arg.
7792         (build_charclass_op): Likewise, for NON_MATCH arg.
7793         * lib/regex_internal.c (re_string_allocate, re_string_construct):
7794         (re_string_construct_common): Likewise, for ICASE arg.
7795         * lib/regexec.c (re_search_2_stub, re_search_stub):
7796         Likewise, for RET_LEN arg.
7797         (check_matching): Likewise, for FL_LONGEST_MATCH arg.
7798         (set_regs): Likewise, for FL_BACKTRACK arg.
7799         * lib/regcomp.c (re_compile_fastmap_iter, optimize_utf8):
7800         (duplicate_node_closure, calc_inveclosure, calc_eclosure):
7801         (calc_eclosure_iter, parse_bracket_exp):
7802         Use bool for internal variables that are booleans.
7803         * lib/regexec.c (re_search_internal, check_matching,
7804         proceed_next_node):
7805         (set_regs, build_sifted_states, sift_states_bkref):
7806         (check_arrival_add_next_nodes, check_arrival_expand_ecl_sub):
7807         (expand_bkref_cache, build_trtable, group_nodes_into_DFAstates):
7808         (find_collation_sequence_value):
7809         Likewise.
7810         * lib/regex_internal.c (re_node_set_insert, re_node_set_insert_last):
7811         (re_node_set_compare):
7812         Return bool, not int. All callers changed.
7813         * lib/regexec.c (check_halt_node_context, check_dst_limits):
7814         (build_trtable, check_node_accept): Likewise.
7815         * lib/regex_internal.h: Include stdbool.h.
7816
7817         Fix bugs uncovered when converting to bool.
7818         * lib/regcomp.c (calc_eclosure_iter): Check for storage allocation
7819         failure instead of charging ahead blindly.
7820         * lib/regex_internal.c (register_state): Likewise.
7821         * lib/regexec.c (re_search_2_stub): Use simpler method than boolean
7822         for freeing internal storage.
7823         (group_nodes_into_DFA_states): Use unsigned int, not int, for
7824         bitset pieces used as boolean, to avoid undefined behavior
7825         on hosts that do int overflow checking.
7826
7827 2005-09-01  Paul Eggert  <eggert@cs.ucla.edu>
7828
7829         * config/srclist.txt: Add glibc bugs 1285-1287.
7830
7831 2005-09-01  Jim Meyering  <jim@meyering.net>
7832
7833         * m4/lchown.m4: Require gl_FUNC_CHOWN, for the definition of
7834         CHOWN_MODIFIES_SYMLINK, which is used by lchown.c.
7835         Require gl_STAT_MACROS, too.
7836
7837 2005-09-01  Bruno Haible  <bruno@clisp.org>
7838
7839         * gnulib-tool (import): In the first-use case, provide defaults.
7840
7841 2005-09-01  Bruno Haible  <bruno@clisp.org>
7842
7843         * gnulib-tool (func_import): Remove the .tmp files.
7844
7845 2005-09-01  Bruno Haible  <bruno@clisp.org>
7846
7847         * gnulib-tool (func_import): Fix handling of symbolic links.
7848
7849 2005-08-31  Paul Eggert  <eggert@cs.ucla.edu>
7850
7851         On 64-bit hosts (where size_t is 64 bits and int is 32 bits), the
7852         old glibc regex code mishandles strings longer than 2**31 bytes.
7853         This patch fixes this when the regex code is used in gnulib
7854         (i.e., outside glibc).
7855
7856         This patch should not affect the use of the regex code inside
7857         glibc.  No doubt this problem also needs to be handled for glibc
7858         as well, but the result will be an incompatible change to the
7859         glibc ABI, and the old ABI will have to be supported too.  That
7860         can be the the subject for another patch.
7861
7862         * lib/regex.h (_REGEX_LARGE_OFFSETS): New feature-test macro,
7863         governing whether the rest of this patch is active.  By default,
7864         the macro is disabled and the patch has no effect.
7865         (regoff_t) [defined _REGEX_LARGE_OFFSETS]: Define to off_t, not int.
7866         (__re_idx_t, __re_size_t, __re_long_size_t): New types.
7867         (struct re_pattern_buffer, re_search, re_search_2, re_match):
7868         (re_match_2, re_set_registers): Use the new types.
7869         * lib/regex_internal.h (Idx, re_hashval_t): New types.
7870         (REG_MISSING, REG_ERROR, REG_VALID_INDEX, REG_VALID_NONZERO_INDEX):
7871         New macros.
7872         (re_node_set, re_charset_t, re_token_t, re_string_realloc_buffers):
7873         (re_string_context_at, bin_tree_t, re_dfastate_t):
7874         (struct re_state_table_entry, state_array_t, re_sub_match_last_t):
7875         (re_sub_match_top_t, re_match_context_t, re_sift_context_t):
7876         (struct re_fail_stack_ent_t, struct re_fail_stack_t, struct re_dfa_t):
7877         (re_string_char_size_at, re_string_wchar_at):
7878         (re_string_elem_size_at):
7879         Use the new types and macros to port to 64-bit hosts.
7880         Use unsigned types for internal values, so that the code
7881         mostly works even for arrays larger than SSIZE_MAX.
7882         * lib/regcomp.c (re_compile_internal, init_dfa, duplicate_node):
7883         (search_duplicated_node, calc_eclosure_iter, fetch_number):
7884         (parse_reg_exp, parse_branch, parse_expression, parse_sub_exp):
7885         (build_equiv_class, build_charclass, re_compile_fastmap_iter):
7886         (free_dfa_content, create_initial_state, optimize_utf8, analyze):
7887         (optimize_subexps, calc_first, link_nfa_nodes, duplicate_node_closure):
7888         (calc_inveclosure, parse_dup_op, build_range_exp):
7889         (build_collating_symbol, parse_bracket_exp, build_charclass_op):
7890         (fetch_number, create_token_tree, mark_opt_subexp):
7891         Likewise.
7892         * lib/regex_internal.c (re_string_construct_common,
7893         create_ci_newstate):
7894         (create_cd_newstate, re_string_allocate, re_string_construct):
7895         (re_string_realloc_buffers, build_wcs_upper_buffer):
7896         (re_string_skip_chars, build_upper_buffer, re_string_translate_buffer):
7897         (re_string_reconstruct, re_string_peek_byte_case):
7898         (re_string_fetch_byte_case, re_string_context_at):
7899         (re_node_set_alloc, re_node_set_init_1, re_node_set_init_2):
7900         (re_node_set_init_copy, re_node_set_add_intersect):
7901         (re_node_set_init_union, re_node_set_merge, re_node_set_insert):
7902         (re_node_set_insert_last, re_node_set_compare, re_node_set_contains):
7903         (re_node_set_remove_at, re_dfa_add_node, calc_state_hash):
7904         (re_acquire_state, re_acquire_state_context, register_state):
7905         Likewise.
7906         * lib/regex.c (match_ctx_init, match_ctx_add_entry,
7907         search_cur_bkref_entry):
7908         (match_ctx_add_subtop, match_ctx_add_sublast, sift_ctx_init):
7909         (re_search_internal, re_search_2_stub, re_search_stub)
7910         (re_copy_regs, check_matching, check_halt_state_context, update_regs):
7911         (push_fail_stack, sift_states_iter_mb, build_sifted_states):
7912         (update_cur_sifted_state, check_dst_limits):
7913         (check_dst_limits_calc_pos_1, check_dst_limits_calc_pos):
7914         (check_subexp_limits, sift_states_bkref, merge_state_array):
7915         (check_subexp_matching_top, get_subexp, get_subexp_sub):
7916         (find_subexp_node, check_arrival, check_arrival_add_next_nodes):
7917         (check_arrival_expand_ecl, check_arrival_expand_ecl_sub):
7918         (expand_bkref_cache, check_node_accept_bytes):
7919         (group_nodes_into_DFAstates, check_node_accept, regexec, re_match):
7920         (re_search, re_match_2, re_search_2, prune_impossible_nodes):
7921         (acquire_init_state_context, check_halt_node_context):
7922         (proceed_next_node, pop_fail_stack, set_regs, free_fail_stack_return):
7923         (sift_states_backward, clean_state_log_if_needed):
7924         (sub_epsilon_src_nodes, add_epsilone_src_nodes, merge_state_with_log):
7925         (find_recover_state, transit_state_sb, transit_state_mb):
7926         (transit_state_bkref, build_trtable, match_ctx_clean):
7927         Likewise.
7928         * lib/regcomp.c (parse_dup_op): Add an extra test if Idx is unsigned,
7929         to work around an assumption that REG_MISSING is negative.
7930
7931         * lib/regcomp.c (re_comp) [defined _REGEX_RE_COMP || defined _LIBC]:
7932         (seek_collating_symbol_entry) [defined _LIBC]:
7933         (lookup_collation_sequence_value) [defined _LIBC]:
7934         (build_range_exp, build_collating_symbol) [defined _LIBC]:
7935         Use prototypes rather than old-style function definitions.
7936         * lib/regexec.c (re_exec) [defined _REGEX_RE_COMP || defined _LIBC]:
7937         (transit_state_sb) [0]:
7938         (find_collation_sequence_value) [defined _LIBC]: Likewise.
7939
7940         * lib/regexec.c (re_search_internal): Simplify update of rm_so and
7941         rm_eo.
7942
7943         * lib/regcomp.c (re_compile_fastmap_iter, init_dfa, init_word_char):
7944         (optimize_subexps, lower_subexp):
7945         Don't assume 1<<31 has defined behavior on hosts with 32-bit int,
7946         since the signed shift might overflow.  Use 1u<<31 instead.
7947         * lib/regex_internal.h (bitset_set, bitset_clear, bitset_contain):
7948         Likewise.
7949         * lib/regexec.c (check_dst_limits_calc_pos_1,
7950         check_subexp_matching_top): Likewise.
7951
7952         * lib/regcomp.c (optimize_subexps, lower_subexp):
7953         Use CHAR_BIT rather than 8, for clarity.
7954         * lib/regexec.c (check_dst_limits_calc_pos_1):
7955         (check_subexp_matching_top): Likewise.
7956         * lib/regcomp.c (init_dfa): Make table_size unsigned, so that we don't
7957         have to worry about portability issues when shifting it left.
7958         Remove no-longer-needed test for table_size > 0.
7959         * lib/regcomp.c (parse_sub_exp): Do not shift more bits than there are
7960         in a word, as the resulting behavior is undefined.
7961         * lib/regexec.c (check_dst_limits_calc_pos_1): Likewise;
7962         in one case, a <= should have been an <, and in another case the
7963         whole test was missing.
7964         * lib/regex_internal.h (BYTE_BITS): Remove.  All uses changed to
7965         the standard name CHAR_BIT.
7966         * lib/regexec.c (match_ctx_add_entry): Don't assume that ~0 == -1;
7967         this is not true on one's complement and signed-magnitude hosts.
7968
7969         * lib/regex_internal.h (re_sub_match_top_t): Remove unused member
7970         next_last_offset.
7971         (struct re_dfa_t): Remove unused member states_alloc.
7972         * lib/regcomp.c (init_dfa): Don't initialize unused members.
7973
7974 2005-08-31  Paul Eggert  <eggert@cs.ucla.edu>
7975
7976         * m4/regex.m4 (gl_REGEX): Require AC_SYS_LARGEFILE, Define
7977         _REGEX_LARGE_OFFSETS).  Test for regoff_t/off_t bug in 64-bit
7978         and large-file glibc and in 32-bit large-file Solaris.
7979
7980 2005-08-31  Paul Eggert  <eggert@cs.ucla.edu>
7981
7982         * lib/regex_internal.c (re_string_reconstruct): Don't assume buffer
7983         lengths fit in regoff_t; this isn't true if regoff_t is the same
7984         width as size_t.
7985         * lib/regex.c (re_search_internal): 5th arg is LAST_START
7986         (= START + RANGE) instead of RANGE.  This avoids overflow
7987         problems when regoff_t is the same width as size_t.
7988         All callers changed.
7989         (re_search_2_stub): Check for overflow when adding the
7990         sizes of the two strings.
7991         (re_search_stub): Check for overflow when adding START
7992         to RANGE; if it occurs, substitute the extreme value.
7993
7994 2005-08-31  Paul Eggert  <eggert@cs.ucla.edu>
7995
7996         * config/srclist.txt: Add glibc bugs 1273, 1278-1282, 1284.
7997
7998 2005-08-31  Jim Meyering  <jim@meyering.net>
7999
8000         * lib/regcomp.c (search_duplicated_node): Make first pointer arg
8001         a pointer-to-const.
8002         * lib/regex_internal.c (create_ci_newstate, create_cd_newstate):
8003         (register_state): Likewise.
8004         * lib/regexec.c (search_cur_bkref_entry, check_dst_limits):
8005         (check_dst_limits_calc_pos_1, check_dst_limits_calc_pos):
8006         (group_nodes_into_DFAstates): Likewise.
8007
8008 2005-08-31  Jim Meyering  <jim@meyering.net>
8009
8010         * check-module: Add a FIXME comment.
8011
8012 2005-08-31  Eric Blake  <ebb9@byu.net>
8013
8014         * modules/unistd-safer (Files): Add unistd--.h.
8015         * modules/stdio-safer (Files): Add stdio--.h.
8016
8017 2005-08-31  Derek Price  <derek@ximbiot.com>
8018
8019         * lib/getdelim.c (getdelim): Return EOF on EOF.
8020         Reported by Larry Jones <lawrence.jones@ugs.com>.
8021
8022 2005-08-31  Bruno Haible  <bruno@clisp.org>
8023
8024         Avoid unnecessary diffs in the generated lib/Makefile.am.
8025         * gnulib-tool (func_emit_lib_Makefile_am): Don't write the cmd into
8026         the generated files.
8027         (func_import): Don't set cmd.
8028
8029 2005-08-31  Bruno Haible  <bruno@clisp.org>
8030
8031         * lib/strstr.c: Include <stddef.h>, for NULL.
8032         * lib/strcasestr.c: Likewise.
8033         Reported by Yoann Vandoorselaere <yoann.v@prelude-ids.com>.
8034
8035 2005-08-31  Bruno Haible  <bruno@clisp.org>
8036
8037         * gnulib-tool: New option --macro-prefix.
8038         (func_import): Use macro_prefix.
8039         (import): Handle option --macro-prefix.
8040
8041 2005-08-31  Bruno Haible  <bruno@clisp.org>
8042
8043         * gnulib-tool (import): Rename most ac_* variables to cached_*.
8044         Also use new variables cached_lgpl, cached_libtool.
8045
8046 2005-08-31  Bruno Haible  <bruno@clisp.org>
8047
8048         * gnulib-tool (func_import): Require AC_GNU_SOURCE etc. instead of
8049         always instantiating them.
8050
8051 2005-08-31  Bruno Haible  <bruno@clisp.org>
8052
8053         * gnulib-tool (func_import): Read the previous cached settings
8054         from gnulib-cache.m4 and gnulib-comp.m4. Remove files that were
8055         earlier added by gnulib but are now dropped. Warn when a gnulib file
8056         overwrites a non-gnulib file.
8057
8058 2005-08-31  Bruno Haible  <bruno@clisp.org>
8059
8060         * gnulib-tool (func_import): Generate two files gnulib-cache.m4 and
8061         gnulib-comp.m4 instead of a single gnulib.m4, to make it easy for
8062         projects that don't keep autogenerated files in CVS. Put into
8063         actioncmd only the specified modules, not the transitive closure.
8064
8065 2005-08-31  Bruno Haible  <bruno@clisp.org>
8066
8067         * gnulib-tool (func_import): Fix defaulting of $libname and $libtool.
8068         Create directories that shall be filled.
8069         (import): Don't look for gl_* macros in configure.ac. Recurse across
8070         all directories containing a gnulib-cache.m4 files, if meaningful.
8071
8072 2005-08-31  Bruno Haible  <bruno@clisp.org>
8073
8074         * gnulib-tool (func_import): Emit also a stub for gl_LIBTOOL.
8075         (import): Set seen_libtool when we see gl_LIBTOOL.
8076
8077 2005-08-31  Bruno Haible  <bruno@clisp.org>
8078
8079         * gnulib-tool (func_import): Also copy m4/gnulib-tool.m4. Omit
8080         declaration macro definitions from generated gnulib.m4.
8081
8082 2005-08-30  "Oskar Liljeblad" <oskar@osk.mine.nu>
8083
8084         * lib/iconvme.h: Add prototype for iconv_alloc.
8085
8086 2005-08-29  Simon Josefsson  <jas@extundo.com>
8087
8088         * lib/iconvme.c: Fix errno.
8089
8090 2005-08-29  Bruno Haible  <bruno@clisp.org>
8091
8092         * gnulib-tool: Enclose all occurrences of $destdir in "...", so
8093         that it works when the directory contains spaces.
8094
8095 2005-08-29  Bruno Haible  <bruno@clisp.org>
8096
8097         * gnulib-tool (import): Avoid unnecessary spaces in $avoidlist.
8098
8099 2005-08-29  Bruno Haible  <bruno@clisp.org>
8100
8101         * gnulib-tool (func_import): Emit more comments into gnulib.m4.
8102         Emit more advice.
8103
8104 2005-08-29  Bruno Haible  <bruno@clisp.org>
8105         and Stepan Kasal  <kasal@ucw.cz>
8106
8107         * check-module: If more parameters are given, check each of them
8108         separately; add more exceptions, as noted by Jim Meyering.
8109         (check_module): New procedure.
8110         (%exempt_header): Now contains all exceptions.
8111
8112 2005-08-29  Ben Pfaff  <blp@cs.stanford.edu>
8113
8114         * modules/byteswap (Makefile.am): Fix rule to not assume GNU make.
8115
8116 2005-08-29  "Oskar Liljeblad" <oskar@osk.mine.nu>
8117
8118         * lib/iconvme.c: Split iconv_string into iconv_alloc.
8119
8120 2005-08-28  Bruno Haible  <bruno@clisp.org>
8121
8122         * m4/gnulib-tool.m4: New file.
8123
8124 2005-08-27  Jim Meyering  <jim@meyering.net>
8125
8126         * modules/unistd-safer (Files): Add pipe-safer.c.
8127         * modules/fcntl-safer (Files): Add creat-safer.c.
8128
8129 2005-08-27  Jim Meyering  <jim@meyering.net>
8130
8131         * m4/stdlib-safer.m4: New file.  From coreutils.
8132         * m4/stdio-safer.m4 (gl_STDIO_SAFER): Add stdio--.h.
8133         * m4/fcntl-safer.m4 (gl_FCNTL_SAFER): Add creat-safer.c to the
8134         AC_LIBSOURCES list and arrange to compile it via AC_LIBOBJ.
8135         * m4/unistd-safer.m4 (gl_UNISTD_SAFER): Likewise, add pipe-safer.c.
8136         Add pipe-safer.c and unistd--.h to the AC_LIBSOURCES list.
8137
8138 2005-08-27  Jim Meyering  <jim@meyering.net>
8139
8140         * lib/fopen-safer.c: Merge minor changes from coreutils.
8141         * lib/dup-safer.c: Likewise.
8142         * lib/fd-safer.c: Likewise.
8143
8144         Merge from coreutils.
8145         * lib/stdio--.h: New file.
8146         * lib/stdlib--.h: New file.
8147         * lib/mkstemp-safer.c: New file.
8148
8149         GNU tar needs these.
8150         * lib/pipe-safer.c: New file.
8151         * lib/creat-safer.c: New file.
8152         * lib/fcntl--.h (creat): Define to creat_safer.
8153         * lib/fcntl-safer.h: Include <sys/types.h> and declare creat_safer.
8154         * lib/unistd--.h (pipe): Define to pipe_safer.
8155         * lib/unistd-safer.h: Declare pipe_safer.
8156
8157 2005-08-26  Simon Josefsson  <jas@extundo.com>
8158
8159         * lib/getpass.c: Use _WIN32 instead of WIN32, suggested by Bruno
8160         Haible <bruno@clisp.org>.
8161
8162 2005-08-26  Paul Eggert  <eggert@cs.ucla.edu>
8163
8164         * lib/regex_internal.h: Remove all references to
8165         RE_NO_INTERNAL_PROTOTYPES; no longer neeeded now that we assume C89
8166         or better.
8167         (bitset_not, bitset_merge, bitset_not_merge):
8168         (bitset_mask, re_string_allocate, re_string_construct):
8169         (re_string_reconstruct, re_string_destruct, re_string_elem_size_at):
8170         (re_string_char_size_at, re_string_wchar_at, re_string_peek_byte_case):
8171         (re_string_fetch_byte_case, re_node_set_alloc, re_node_set_init_1):
8172         (re_node_set_init_2, re_node_set_init_copy, re_node_set_add_intersect):
8173         (re_node_set_init_union, re_node_set_merge, re_node_set_insert):
8174         (re_node_set_insert_last, re_node_set_compare, re_node_set_contains):
8175         (re_node_set_remove_at, re_dfa_add_node, re_acquire_state):
8176         (re_acquire_state_context):
8177         Remove unnecessary forward decls.
8178         (re_string_char_size_at, re_string_wchar_at, re_string_elem_size_at):
8179         Put __attribute at function definition,
8180         now that the function decl has been removed.
8181         * lib/regex_internal.c (re_string_peek_byte_case):
8182         (re_string_fetch_byte_case, re_node_set_compare, re_node_set_contains):
8183         Likewise.
8184
8185 2005-08-25  Stepan Kasal  <kasal@ucw.cz>
8186
8187         * m4/regex.m4: Add AC_PREREQ(2.50).
8188         (gl_REGEX): If --with-included-regex was given, skip the autodetection.
8189
8190 2005-08-25  Simon Josefsson  <jas@extundo.com>
8191
8192         * m4/getpass.m4: Check for termios.h, tcgetattr, tcsetattr, and
8193         __fsetlocking.
8194
8195 2005-08-25  Simon Josefsson  <jas@extundo.com>
8196
8197         * lib/getpass.c: Add WIN32 implementation.  Conditionalize use of
8198         termios.h, tcgetattr, tcsetattr and __fsetlocking.  Remove some
8199         GLIBC specific code.
8200
8201 2005-08-25  Paul Eggert  <eggert@cs.ucla.edu>
8202
8203         Make regex safe for g++.  This fixes one real bug (an "err"
8204         that should have been "*err").  g++ problem reported by
8205         Sam Steingold.
8206         * lib/regex_internal.h (re_calloc): New macro, consistent with
8207         re_malloc etc.  All callers of calloc changed to use re_calloc.
8208         * lib/regex_internal.c (build_wcs_upper_buffer): Return reg_errcode_t,
8209         not int.  All callers changed.
8210         * lib/regcomp.c (re_compile_fastmap_iter): Don't use
8211         alloca (mb_cur_max); just use an array of size MB_LEN_MAX.
8212         * lib/regexec.c (push_fail_stack): Use re_realloc, not realloc.
8213         (find_recover_state): Change "err" to "*err"; this fixes what
8214         appears to be a real bug.
8215         (check_arrival_expand_ecl_sub): Be consistent about reg_errcode_t
8216         versus int.
8217
8218 2005-08-25  Paul Eggert  <eggert@cs.ucla.edu>
8219
8220         * modules/regex (Depends-on): Add malloc, since the code
8221         assumes that !malloc(0) means failure.
8222
8223 2005-08-25  Paul Eggert  <eggert@cs.ucla.edu>
8224
8225         * lib/regexec.c (set_regs): Don't alloca with an unbounded size.
8226
8227         alloca modernization/simplification for regex.
8228         * lib/regex.c: Remove portability cruft for alloca.  This no longer
8229         needs to be at the start of the file, and can be moved into
8230         regex_internal.h and simplified.
8231         * lib/regex_internal.h: Include <alloca.h>.
8232         (__libc_use_alloca) [!defined _LIBC]: New macro.
8233         * lib/regexec.c (build_trtable): Remove "#ifdef _LIBC", since the code
8234         now works outside glibc.
8235
8236 2005-08-25  Paul Eggert  <eggert@cs.ucla.edu>
8237
8238         * config/srclist.txt: Add glibc bugs 1241, 1245.
8239
8240 2005-08-25  Jim Meyering  <jim@meyering.net>
8241
8242         * lib/open-safer.c: Include <config.h>.
8243         Otherwise, we'd lose LARGEFILE support in any file using
8244         e.g. "fcntl--.h"
8245
8246 2005-08-25  Bruno Haible  <bruno@clisp.org>
8247
8248         * m4/minmax.m4: Require autoconf 2.52.
8249         (gl_MINMAX_IN_HEADER): Add comments. Use m4_pushdef/m4_popdef instead
8250         of define/undefine. Use AS_TR_SH and AS_TR_CPP as more robust
8251         alternatives of translit over the alphabet.
8252         Based on a patch from Stepan Kasal <kasal@ucw.cz>.
8253
8254 2005-08-24  Simon Josefsson  <jas@extundo.com>
8255
8256         * tests/test-getpass.c: New file.
8257
8258 2005-08-24  Paul Eggert  <eggert@cs.ucla.edu>
8259
8260         * m4/regex.m4 (gl_REGEX): Use POSIX-compliant spellings when testing
8261         for GNU regex features.
8262
8263 2005-08-24  Paul Eggert  <eggert@cs.ucla.edu>
8264
8265         * lib/regcomp.c (regerror): 2nd arg is 'restrict', as per POSIX.
8266         * lib/regex.h (regerror): Likewise.
8267
8268         * lib/regex.c: Do not include <sys/types.h>, as POSIX no longer
8269         requires this.  (The code never needed it.)
8270
8271         * lib/regcomp.c, regex_internal.c, regex_internal.h, regexec.c:
8272         All uses of recently-renamed identifiers changed to use the new,
8273         POSIX-compliant names.  The code will build and run just fine
8274         without these changes, but it's better to eat our own dog food
8275         and use the standard-conforming names.
8276
8277         * lib/regex.h: Fix a multitude of POSIX name space violations.
8278         These changes have an effect only for programs that define
8279         _POSIX_C_SOURCE, _POSIX_SOURCE, or _XOPEN_SOURCE; they
8280         do not change anything for programs compiled in the normal way.
8281         Also, there is no effect on the ABI.
8282
8283         (_REGEX_SOURCE): New macro.
8284         Do not include <stddef.h> if _XOPEN_SOURCE and VMS are both
8285         defined and _GNU_SOURCE is not; this fixes a name space violation.
8286
8287         Rename the following macros to obey POSIX requirements.
8288         The old names are still visible as macros if _REGEX_SOURCE is defined.
8289         (REG_BACKSLASH_ESCAPE_IN_LISTS): renamed from
8290         RE_BACKSLASH_ESCAPE_IN_LISTS.
8291         (REG_BK_PLUS_QM): renamed from RE_BK_PLUS_QM.
8292         (REG_CHAR_CLASSES): renamed from RE_CHAR_CLASSES.
8293         (REG_CONTEXT_INDEP_ANCHORS): renamed from RE_CONTEXT_INDEP_ANCHORS.
8294         (REG_CONTEXT_INDEP_OPS): renamed from RE_CONTEXT_INDEP_OPS.
8295         (REG_CONTEXT_INVALID_OPS): renamed from RE_CONTEXT_INVALID_OPS.
8296         (REG_DOT_NEWLINE): renamed from RE_DOT_NEWLINE.
8297         (REG_DOT_NOT_NULL): renamed from RE_DOT_NOT_NULL.
8298         (REG_HAT_LISTS_NOT_NEWLINE): renamed from RE_HAT_LISTS_NOT_NEWLINE.
8299         (REG_INTERVALS): renamed from RE_INTERVALS.
8300         (REG_LIMITED_OPS): renamed from RE_LIMITED_OPS.
8301         (REG_NEWLINE_ALT): renamed from RE_NEWLINE_ALT.
8302         (REG_NO_BK_BRACES): renamed from RE_NO_BK_BRACES.
8303         (REG_NO_BK_PARENS): renamed from RE_NO_BK_PARENS.
8304         (REG_NO_BK_REFS): renamed from RE_NO_BK_REFS.
8305         (REG_NO_BK_VBAR): renamed from RE_NO_BK_VBAR.
8306         (REG_NO_EMPTY_RANGES): renamed from RE_NO_EMPTY_RANGES.
8307         (REG_UNMATCHED_RIGHT_PAREN_ORD): renamed from
8308         RE_UNMATCHED_RIGHT_PAREN_ORD.
8309         (REG_NO_POSIX_BACKTRACKING): renamed from RE_NO_POSIX_BACKTRACKING.
8310         (REG_NO_GNU_OPS): renamed from RE_NO_GNU_OPS.
8311         (REG_DEBUG): renamed from RE_DEBUG.
8312         (REG_INVALID_INTERVAL_ORD): renamed from RE_INVALID_INTERVAL_ORD.
8313         (REG_IGNORE_CASE): renamed from RE_ICASE.  This renaming is a bit
8314         unusual, since we can't clash with the POSIX REG_ICASE.
8315         (REG_CARET_ANCHORS_HERE): renamed from RE_CARET_ANCHORS_HERE.
8316         (REG_CONTEXT_INVALID_DUP): renamed from RE_CONTEXT_INVALID_DUP.
8317         (REG_NO_SUB): renamed from RE_NO_SUB.
8318         (REG_SYNTAX_EMACS): renamed from RE_SYNTAX_EMACS.
8319         (REG_SYNTAX_AWK): renamed from RE_SYNTAX_AWK.
8320         (REG_SYNTAX_GNU_AWK): renamed from RE_SYNTAX_GNU_AWK.
8321         (REG_SYNTAX_POSIX_AWK): renamed from RE_SYNTAX_POSIX_AWK.
8322         (REG_SYNTAX_GREP): renamed from RE_SYNTAX_GREP.
8323         (REG_SYNTAX_EGREP): renamed from RE_SYNTAX_EGREP.
8324         (REG_SYNTAX_POSIX_EGREP): renamed from RE_SYNTAX_POSIX_EGREP.
8325         (REG_SYNTAX_ED): renamed from RE_SYNTAX_ED.
8326         (REG_SYNTAX_SED): renamed from RE_SYNTAX_SED.
8327         (_REG_SYNTAX_POSIX_COMMON): renamed from _RE_SYNTAX_POSIX_COMMON.
8328         (REG_SYNTAX_POSIX_BASIC): renamed from RE_SYNTAX_POSIX_BASIC.
8329         (REG_SYNTAX_POSIX_MINIMAL_BASIC): renamed from
8330         RE_SYNTAX_POSIX_MINIMAL_BASIC.
8331         (REG_SYNTAX_POSIX_EXTENDED): renamed from RE_SYNTAX_POSIX_EXTENDED.
8332         (REG_SYNTAX_POSIX_MINIMAL_EXTENDED): renamed from
8333         RE_SYNTAX_POSIX_MINIMAL_EXTENDED.
8334         (REG_DUP_MAX): renamed from RE_DUP_MAX.  No need to undef it.
8335         (REG_UNALLOCATED): Renamed from REGS_UNALLOCATED.
8336         (REG_REALLOCATE): Renamed from REGS_REALLOCATE.
8337         (REG_FIXED): Renamed from REGS_FIXED.
8338         (REG_NREGS): Renamed from RE_NREGS.
8339
8340         (REG_ICASE, REG_NEWLINE, REG_NOSUB): Do not depend on the values
8341         of other REG_* macros, since POSIX says the user is allowed to
8342         #undef these macros selectively.
8343
8344         (reg_errcode_t): Update comment stating what other tables need
8345         to be consistent.
8346
8347         Rename the following enum values to obey POSIX requirements.
8348         The old names are still visible as macros.
8349         (_REG_ENOSYS): Renamed from REG_ENOSYS.  Define even if _XOPEN_SOURCE
8350         is not defined, since GNU is supposed to be a superset of POSIX as
8351         much as possible, and since we want reg_errcode_t to be a signed
8352         type for implementation consistency.
8353         (_REG_NOERROR): Renamed from REG_NOERROR.
8354         (_REG_NOMATCH): Renamed from REG_NOMATCH.
8355         (_REG_BADPAT): Renamed from REG_BADPAT.
8356         (_REG_ECOLLATE): Renamed from REG_ECOLLATE.
8357         (_REG_ECTYPE): Renamed from REG_ECTYPE.
8358         (_REG_EESCAPE): Renamed from REG_EESCAPE.
8359         (_REG_ESUBREG): Renamed from REG_ESUBREG.
8360         (_REG_EBRACK): Renamed from REG_EBRACK.
8361         (_REG_EPAREN): Renamed from REG_EPAREN.
8362         (_REG_EBRACE): Renamed from REG_EBRACE.
8363         (_REG_BADBR): Renamed from REG_BADBR.
8364         (_REG_ERANGE): Renamed from REG_ERANGE.
8365         (_REG_ESPACE): Renamed from REG_ESPACE.
8366         (_REG_BADRPT): Renamed from REG_BADRPT.
8367         (_REG_EEND): Renamed from REG_EEND.
8368         (_REG_ESIZE): Renamed from REG_ESIZE.
8369         (_REG_ERPAREN): Renamed from REG_ERPAREN.
8370         (REG_ENOSYS, REG_NOERROR, REG_NOMATCH, REG_BADPAT, REG_ECOLLATE):
8371         (REG_ECTYPE, REG_EESCAPE, REG_ESUBREG, REG_EBRACK, REG_EPAREN):
8372         (REG_EBRACE, REG_BADBR, REG_ERANGE, REG_ESPACE, REG_BADRPT, REG_EEND):
8373         (REG_ESIZE, REG_ERPAREN): Now macros, not enum constants.
8374
8375         (_REG_RE_NAME, _REG_RM_NAME): New macros.
8376         (REG_TRANSLATE_TYPE): Renamed from RE_TRANSLATE_TYPE.  All uses
8377         changed.  But support the old name if the new one is not defined
8378         and if _REGEX_SOURCE.
8379
8380         Change the following member names in struct re_pattern_buffer.
8381         The old names are still supported if !_REGEX_SOURCE.
8382         The new names are always supported, regardless of _REGEX_SOURCE.
8383         (re_buffer): Renamed from buffer.
8384         (re_allocated): Renamed from allocated.
8385         (re_used): Renamed from used.
8386         (re_syntax): Renamed from syntax.
8387         (re_fastmap): Renamed from fastmap.
8388         (re_translate): Renamed from translate.
8389         (re_can_be_null): Renamed from can_be_null.
8390         (re_regs_allocated): Renamed from regs_allocated.
8391         (re_fastmap_accurate): Renamed from fastmap_accurate.
8392         (re_no_sub): Renamed from no_sub.
8393         (re_not_bol): Renamed from not_bol.
8394         (re_not_eol): Renamed from not_eol.
8395         (re_newline_anchor): Renamed from newline_anchor.
8396
8397         Change the following member names in struct re_registers.
8398         The old names are still supported if !_REGEX_SOURCE.
8399         The new names are always supported, regardless of _REGEX_SOURCE.
8400         (rm_num_regs): Renamed from num_regs.
8401         (rm_start): Renamed from start.
8402         (rm_end): Renamed from end.
8403
8404         (re_set_syntax, re_compile_pattern, re_compile_fastmap):
8405         (re_search, re_search_2, re_match, re_match_2, re_set_registers):
8406         Prepend __ to parameter names.
8407
8408         Undo yesterday's changes.
8409
8410 2005-08-24  Paul Eggert  <eggert@cs.ucla.edu>
8411
8412         * config/srclist.txt: Remove glibc bug 1233 and add 1236, which
8413         supersedes it. Add glibc bugs 1237, 1238, 1240.  Comment out
8414         lib/regex.c.
8415
8416 2005-08-24  Jim Meyering  <jim@meyering.net>
8417
8418         Sync from coreutils.
8419         * m4/fcntl-safer.m4: New file.
8420
8421         * m4/xgetcwd.m4: Use AC_LIBSOURCES and AC_LIBOBJ to indicate source
8422         and object files for this module.
8423
8424 2005-08-24  Jim Meyering  <jim@meyering.net>
8425
8426         Sync from coreutils.
8427         * lib/fcntl--.h, fcntl-safer.h, open-safer.c: New files.
8428
8429 2005-08-24  Jim Meyering  <jim@meyering.net>
8430
8431         * modules/xgetcwd (Makefile.am): Remove `lib_SOURCES += ...' line,
8432         now that xgetcwd.m4 requires xgetcwd.c and xgetcwd.h.
8433
8434 2005-08-24  Jim Meyering  <jim@meyering.net>
8435
8436         * modules/fcntl-safer: New module.
8437         * modules/fts (Depends-on): Add fcntl-safer.
8438         * MODULES.html.sh (File descriptor based Input/Output):
8439         Add fcntl-safer.
8440
8441 2005-08-24  Bruno Haible  <bruno@clisp.org>
8442
8443         Support for unit test modules.
8444         * modules/README: Mention tests modules.
8445         * modules/TEMPLATE-TESTS: New file.
8446         * gnulib-tool: New options --extract-tests-module, --with-tests and
8447         --tests-base (unused for the moment).
8448         (testsbase, inctests): New variables.
8449         (func_all_modules): Exclude TEMPLATE-TESTS and *-tests.
8450         (func_verify_module): Exclude TEMPLATE-TESTS.
8451         (func_verify_nontests_module, func_verify_tests_module): New functions.
8452         (func_get_dependencies): Add implicit dependency for tests modules.
8453         (func_get_tests_module): New function.
8454         (func_modules_transitive_closure): When --with-tests was specified,
8455         include the unit tests as well, unless explicitly avoided.
8456         (func_emit_lib_Makefile_am): Ignore the tests modules here.
8457         (func_emit_tests_Makefile_am): New function.
8458         (func_create_testdir): When --with-tests was specified, emit a
8459         tests/ directory.
8460         * MODULES.html.sh (Future developments): Update.
8461
8462 2005-08-24  Bruno Haible  <bruno@clisp.org>
8463
8464         * modules/tls-tests: New file.
8465         * tests/test-tls.c: New file, from GNU gettext.
8466
8467 2005-08-24  Bruno Haible  <bruno@clisp.org>
8468
8469         * modules/lock-tests: New file.
8470         * tests/test-lock.c: New file, from GNU gettext.
8471
8472 2005-08-24  Bruno Haible  <bruno@clisp.org>
8473
8474         * lib/lock.h: Add multiple inclusion guard.
8475         * lib/tls.h: Add multiple inclusion guard.
8476
8477 2005-08-24  Bruno Haible  <bruno@clisp.org>
8478
8479         * gnulib-tool: Add support for the --aux-dir option to
8480         --create-testdir, --create-megatestdir, --test, --megatest.
8481         (func_create_testdir, func_create_megatestdir): Optionally emit a
8482         AC_CONFIG_AUX_DIR directive.
8483         (create-testdir, create-megatestdir, test, megatest): Provide a
8484         default value for $auxdir.
8485
8486 2005-08-24  Bruno Haible  <bruno@clisp.org>
8487
8488         * gnulib-tool (import): Use compound statement instead of subshell
8489         where possible.
8490
8491 2005-08-24  Bruno Haible  <bruno@clisp.org>
8492
8493         * gnulib-tool (import): Change --aux-dir default to "build-aux".
8494
8495 2005-08-24  Bruno Haible  <bruno@clisp.org>
8496
8497         * gnulib-tool (func_version): Update.
8498
8499 2005-08-24  Bruno Haible  <bruno@clisp.org>
8500
8501         * gnulib-tool (func_import, func_create_testdir,
8502         func_create_megatestdir): Quote all autoconf macro arguments.
8503
8504 2005-08-24  Bruno Haible  <bruno@clisp.org>
8505
8506         * gnulib-tool (func_create_megatestdir): Call autoreconf without the
8507         option --force, because --force causes the aclocal.m4 of each
8508         subdirectory to be newer than the corresponding config.h.in.
8509
8510 2005-08-23  Paul Eggert  <eggert@cs.ucla.edu>
8511
8512         * m4/regex.m4 (gl_INCLUDED_REGEX): Remove; no longer used.
8513         All contents moved to gl_REGEX.
8514         (gl_REGEX): Don't bother checking whether lib/regex.c exists;
8515         assume that it does.
8516
8517 2005-08-23  Paul Eggert  <eggert@cs.ucla.edu>
8518
8519         * lib/regex.h (REG_NOSYS)
8520         [!defined _XOPEN_SOURCE && 200112L <= _POSIX_C_SOURCE]:
8521         Define, since POSIX requires it as of 2001.
8522         (_REG_ENOSYS)
8523         [! (defined _XOPEN_SOURCE || 200112L <= _POSIX_C_SOURCE)]:
8524         New private symbol, used to keep the enum signed in all cases.
8525         * lib/regex.h (RE_NO_EMPTY_RANGES): Fix doc bug reported by James
8526         Youngman in
8527         <http://lists.gnu.org/archive/html/bug-gnulib/2005-07/msg00132.html>.
8528
8529         * lib/regex_internal.c (re_string_skip_chars, register_state):
8530         (calc_state_hash):
8531         Remove forward decls; no longer needed now that we use prototypes.
8532         * lib/regexec.c (acquire_init_state_context, check_halt_node_context):
8533         (proceed_next_node, pop_fail_stack, sub_epsilon_src_nodes):
8534         (clean_state_log_if_needed): Likewise.
8535
8536 2005-08-23  Paul Eggert  <eggert@cs.ucla.edu>
8537
8538         * config/srclist.txt: Add glibc bugs 1231-1233.
8539
8540 2005-08-20  Paul Eggert  <eggert@cs.ucla.edu>
8541
8542         Fix problems reported by Sam Steingold in
8543         <http://lists.gnu.org/archive/html/bug-gnulib/2005-08/msg00007.html>.
8544         * lib/regexec.c (sift_states_bkref): Fix portability bug: the code
8545         assumed that reg_errcode_t is a signed type, which is not
8546         necessarily true if _XOPEN_SOURCE is not defined.
8547         * lib/regex_internal.c (calc_state_hash): Put 'inline' before type,
8548         since some compilers warn about it otherwise.
8549
8550 2005-08-20  Paul Eggert  <eggert@cs.ucla.edu>
8551
8552         * lib/regcomp.c (create_initial_state): Remove duplicate decl.
8553         (init_word_char, create_initial_state, duplicate_node_closure):
8554         (fetch_token, peek_token_bracket, build_range_exp):
8555         (build_collating_symbol): Remove forward decls; no longer needed
8556         now that we use prototypes.
8557
8558         * lib/regcomp.c:
8559         (re_compile_pattern, re_set_syntax, re_compile_fastmap):
8560         (re_compile_fastmap_iter, regcomp, regerror, regfree):
8561         (re_compile_internal, init_dfa, init_word_char, free_workarea_compile):
8562         (create_initial_state, optimize_utf8, analyze, postorder, preorder):
8563         (optimize_subexps, lower_subexps, lower_subexp, calc_first, calc_next):
8564         (link_nfa_nodes, duplicate_node_closure, search_duplicated_node):
8565         (duplicate_node, calc_inveclosure, calc_eclosure, calc_eclosure_iter):
8566         (fetch_token, peek_token, peek_token_bracket, parse, parse_reg_exp):
8567         (parse_branch, parse_expression, parse_sub_exp, parse_dup_op):
8568         (build_range_exp, build_collating_symbol, parse_bracket_exp):
8569         (parse_bracket_element, parse_bracket_symbol, build_equiv_class):
8570         (build_charclass, build_charclass_op, fetch_number, create_tree):
8571         (create_token_tree, mark_opt_subexp, duplicate_tree):
8572         Use prototypes rather than old-style definitions.
8573
8574         * lib/regex_internal.c:
8575         (re_string_allocate, re_string_construct, re_string_realloc_buffers):
8576         (re_string_construct_common, build_wcs_buffer, build_wcs_upper_buffer):
8577         (re_string_skip_chars, build_upper_buffer, re_string_translate_buffer):
8578         (re_string_reconstruct, re_string_peek_byte_case):
8579         (re_string_fetch_byte_case, re_string_destruct, re_string_context_at):
8580         (re_node_set_alloc, re_node_set_init_1, re_node_set_init_2):
8581         (re_node_set_init_copy, re_node_set_add_intersect):
8582         (re_node_set_init_union, re_node_set_merge, re_node_set_insert):
8583         (re_node_set_insert_last, re_node_set_compare, re_node_set_contains):
8584         (re_node_set_remove_at, re_dfa_add_node, calc_state_hash):
8585         (re_acquire_state, re_acquire_state_context, register_state):
8586         (create_ci_newstate, create_cd_newstate, free_state):
8587         Likewise.
8588         * lib/regexec.c (regexec, re_match, re_search, re_match_2,
8589         re_search_2):
8590         (re_search_2_stub, re_search_stub, re_copy_regs, re_set_registers):
8591         (re_search_internal, prune_impossible_nodes):
8592         (acquire_init_state_context, check_matching, static):
8593         (check_halt_node_context, check_halt_state_context, proceed_next_node):
8594         (push_fail_stack, pop_fail_stack, set_regs, free_fail_stack_return):
8595         (update_regs, sift_states_backward, build_sifted_states):
8596         (clean_state_log_if_needed, merge_state_array):
8597         (update_cur_sifted_state, add_epsilon_src_nodes):
8598         (sub_epsilon_src_nodes, check_dst_limits, check_dst_limits_calc_pos_1):
8599         (check_dst_limits_calc_pos, check_subexp_limits, sift_states_bkref):
8600         (sift_states_iter_mb, transit_state, merge_state_with_log, static):
8601         (find_recover_state, check_subexp_matching_top, transit_state_mb):
8602         (transit_state_bkref, get_subexp, get_subexp_sub, find_subexp_node):
8603         (check_arrival, check_arrival_add_next_nodes):
8604         (check_arrival_expand_ecl, check_arrival_expand_ecl_sub):
8605         (expand_bkref_cache, build_trtable, group_nodes_into_DFAstates):
8606         (check_node_accept_bytes, check_node_accept, extend_buffers):
8607         (match_ctx_init, match_ctx_clean, match_ctx_free, match_ctx_add_entry):
8608         (search_cur_bkref_entry, match_ctx_add_subtop, match_ctx_add_sublast):
8609         (sift_ctx_init):
8610         Likewise.
8611
8612         * lib/regex_internal.h:
8613         (re_string_allocate, re_string_construct, re_string_reconstruct):
8614         (re_string_realloc_buffers, build_wcs_buffer, build_wcs_upper_buffer):
8615         (build_upper_buffer, re_string_translate_buffer, re_string_destruct):
8616         (re_string_elem_size_at, re_string_char_size_at, re_string_wchar_at):
8617         (re_string_context_at, re_string_peek_byte_case):
8618         (re_string_fetch_byte_case): Declare even if RE_NO_INTERNAL_PROTOTYPES
8619         is defined, since we now use prototypes always.
8620
8621         * lib/regex.h (_RE_ARGS): Remove.  No longer needed, since we assume
8622         C89 or better.  All uses removed.
8623
8624 2005-08-20  Paul Eggert  <eggert@cs.ucla.edu>
8625
8626         * config/srclist.txt: Add glibc bugs 1220-1227.
8627
8628 2005-08-20  Jim Meyering  <jim@meyering.net>
8629
8630         * lib/regexec.c (regexec, re_search_stub) [!_LIBC]: Omit declaration
8631         of unused local, dfa.
8632
8633 2005-08-20  Bruno Haible  <bruno@clisp.org>
8634
8635         * m4/regex.m4 (gl_PREREQ_REGEX): Require AC_GNU_SOURCE.
8636
8637 2005-08-19  Paul Eggert  <eggert@cs.ucla.edu>
8638
8639         * lib/regex_internal.c (re_string_realloc_buffers, re_node_set_insert):
8640         (re_node_set_insert_last, re_dfa_add_node):
8641         Rename local variables to avoid GCC shadowing warnings.
8642
8643 2005-08-19  Paul Eggert  <eggert@cs.ucla.edu>
8644
8645         * lib/regex_internal.c (re_acquire_state, re_acquire_state_context)
8646         [defined lint]: Suppress bogus uninitialized-variable warnings.
8647
8648         * lib/regcomp.c (duplicate_node): Return new index, not an error code,
8649         and let the caller return REG_ESPACE if out of space.  This
8650         removes an uninitialied-variable warning with GCC 4.0.1, and also
8651         avoids taking the address of a local variable.  All callers
8652         changed.
8653
8654 2005-08-19  Paul Eggert  <eggert@cs.ucla.edu>
8655
8656         * config/srclist.txt: Comment out $LIBCSRC/posix/regex_internal.c,
8657         $LIBCSRC/posix/regexec.c.
8658         Add glibc bug 1217 for regcomp.c.
8659
8660 2005-08-19  Jim Meyering  <jim@meyering.net>
8661
8662         * lib/regexec.c (proceed_next_node): Redo local variables to
8663         avoid GCC shadowing warnings.
8664
8665 2005-08-18  Bruno Haible  <bruno@clisp.org>
8666
8667         * lib/strstr.c (strstr): Fix return value in multibyte case.
8668         * lib/strcasestr.c (strcasestr): Likewise.
8669
8670 2005-08-17  Paul Eggert  <eggert@cs.ucla.edu>
8671
8672         * lib/regex.h: Remove useless space-before-tab.  From coreutils.
8673
8674 2005-08-17  Jim Meyering  <jim@meyering.net>
8675
8676         Make the %s format (seconds since the epoch) work for a negative
8677         number and when used with a zero-padded field width, e.g. %015s.
8678
8679         * lib/strftime.c (my_strftime): Move the `do_number_sign_and_padding'
8680         label so that it precedes the code to set `digits'.  Otherwise,
8681         %0Ns wouldn't work.  Before this change, `date -d @-22 +%05s' would
8682         print `00-22'.  Now, it prints `-0022', as it should.
8683
8684 2005-08-17  Bruno Haible  <bruno@clisp.org>
8685
8686         * modules/strstr (Files): Add m4/mbrtowc.m4.
8687         (Depends-on): Add mbuiter.
8688
8689 2005-08-17  Bruno Haible  <bruno@clisp.org>
8690
8691         * modules/strcasestr: New file.
8692         * MODULES.html.sh (String handling, based on ANSI C 89): Add
8693         strcasestr.
8694
8695 2005-08-17  Bruno Haible  <bruno@clisp.org>
8696
8697         * modules/strcase (Depends-on): Add mbuiter. Remove strnlen1, mbchar.
8698
8699 2005-08-17  Bruno Haible  <bruno@clisp.org>
8700
8701         * modules/mbuiter: New file.
8702         * MODULES.html.sh (Extended multibyte and wide character utilities):
8703         Add mbuiter.
8704
8705 2005-08-17  Bruno Haible  <bruno@clisp.org>
8706
8707         * m4/strstr.m4 (gl_FUNC_STRSTR): Use the replacement function always.
8708         (gl_PREREQ_STRSTR): Use gl_FUNC_MBRTOWC.
8709
8710 2005-08-17  Bruno Haible  <bruno@clisp.org>
8711
8712         * m4/strcasestr.m4: New file.
8713
8714 2005-08-17  Bruno Haible  <bruno@clisp.org>
8715
8716         * lib/strstr.h: Ignore HAVE_STRSTR, always declare the gnulib function.
8717         * lib/strstr.c: Completely rewritten, with multibyte locale support.
8718
8719 2005-08-17  Bruno Haible  <bruno@clisp.org>
8720
8721         * lib/strcasestr.h: New file.
8722         * lib/strcasestr.c: New file.
8723
8724 2005-08-17  Bruno Haible  <bruno@clisp.org>
8725
8726         * lib/strcasecmp.c: Use mbuiter.h.
8727
8728 2005-08-17  Bruno Haible  <bruno@clisp.org>
8729
8730         * lib/mbuiter.h: New file.
8731
8732 2005-08-16  Paul Eggert  <eggert@cs.ucla.edu>
8733
8734         * m4/getopt.m4 (gl_GETOPT_CHECK_HEADERS): Do not override the results
8735         of gl_GETOPT_SUBSTITUTE.  That way, if both gl_GETOPT_SUBSTITUTE
8736         and gl_GETOPT are both invoked via different paths (as happens
8737         with GNU tar CVS because it uses both argp and getopt), the former
8738         wins.
8739
8740 2005-08-16  Bruno Haible  <bruno@clisp.org>
8741
8742         * modules/tls: New file.
8743         * MODULES.html.sh (Multithreading): Add tls.
8744
8745 2005-08-16  Bruno Haible  <bruno@clisp.org>
8746
8747         * modules/strnlen1: New file.
8748         * MODULES.html.sh (String handling): Add strnlen1.
8749
8750 2005-08-16  Bruno Haible  <bruno@clisp.org>
8751
8752         * modules/strcase (Files): Add m4/mbrtowc.m4.
8753         (Depends-on): Add strnlen1, mbchar.
8754
8755 2005-08-16  Bruno Haible  <bruno@clisp.org>
8756
8757         * modules/mbiter: New file.
8758         * MODULES.html.sh (Extended multibyte and wide character utilities):
8759         Add mbiter.
8760
8761 2005-08-16  Bruno Haible  <bruno@clisp.org>
8762
8763         * modules/mbfile: New file.
8764         * MODULES.html.sh (Extended multibyte and wide character utilities):
8765         Add mbfile.
8766
8767 2005-08-16  Bruno Haible  <bruno@clisp.org>
8768
8769         * modules/mbchar: New file.
8770         * MODULES.html.sh (Extended multibyte and wide character utilities):
8771         New section.
8772
8773 2005-08-16  Bruno Haible  <bruno@clisp.org>
8774
8775         * m4/tls.m4: New file, from GNU gettext.
8776
8777 2005-08-16  Bruno Haible  <bruno@clisp.org>
8778
8779         * m4/strcase.m4 (gl_FUNC_STRCASECMP): Use the replacement function
8780         always.
8781         (gl_PREREQ_STRCASECMP): Use gl_FUNC_MBRTOWC.
8782
8783 2005-08-16  Bruno Haible  <bruno@clisp.org>
8784
8785         * m4/mbiter.m4: New file.
8786
8787 2005-08-16  Bruno Haible  <bruno@clisp.org>
8788
8789         * m4/mbfile.m4: New file.
8790
8791 2005-08-16  Bruno Haible  <bruno@clisp.org>
8792
8793         * m4/mbchar.m4: New file.
8794
8795 2005-08-16  Bruno Haible  <bruno@clisp.org>
8796
8797         * lib/tls.h: New file, from GNU gettext.
8798         * lib/tls.c: New file, from GNU gettext.
8799
8800 2005-08-16  Bruno Haible  <bruno@clisp.org>
8801
8802         * lib/strnlen1.h: New file.
8803         * lib/strnlen1.c: New file.
8804
8805 2005-08-16  Bruno Haible  <bruno@clisp.org>
8806
8807         * lib/strcasecmp.c (struct mbiter_multi): Remove at_end field.
8808         (mbi_init): Update.
8809         (mbi_avail, mbi_advance): Let the iteration end before the terminating
8810         NUL byte, not after it.
8811
8812 2005-08-16  Bruno Haible  <bruno@clisp.org>
8813
8814         * lib/strcase.h (strcasecmp): Add note in comments.
8815         * lib/strncasecmp.c: Use code from strcasecmp.c.
8816         * lib/strcasecmp.c: Use mbchar module. Define private mbiter variant.
8817         (strcasecmp): Work correctly in multibyte locales.
8818
8819 2005-08-16  Bruno Haible  <bruno@clisp.org>
8820
8821         * lib/mbiter.h: New file.
8822
8823 2005-08-16  Bruno Haible  <bruno@clisp.org>
8824
8825         * lib/mbfile.h: New file.
8826
8827 2005-08-16  Bruno Haible  <bruno@clisp.org>
8828
8829         * lib/mbchar.h: New file.
8830         * lib/mbchar.c: New file.
8831
8832 2005-08-16  Bruno Haible  <bruno@clisp.org>
8833
8834         * lib/mbchar.h (mb_cmp, mb_casecmp): Order the invalid characters after
8835         the valid ones. Makes the comparison operations transitive:
8836         cmp (a, b) < 0 && cmp (b, c) < 0 ==> cmp (a, c) < 0.
8837         * lib/strcasecmp.c (strcasecmp): Use mb_casecmp.
8838
8839 2005-08-15  Simon Josefsson  <jas@extundo.com>
8840
8841         * modules/ssize_t (License): Change to 'unlimited'.
8842
8843         * gnulib-tool (sed_extract_prog): Recognize 'unlimited' license.
8844
8845 2005-08-15  Paul Eggert  <eggert@cs.ucla.edu>
8846
8847         * config/srclist.txt: Comment out $LIBCSRC/posix/regex.h.
8848         Add comments for each pending glibc patch.
8849
8850 2005-08-15  Bruno Haible  <bruno@clisp.org>
8851
8852         * lib/regex.h (__restrict_arr): Don't define to __restrict if
8853         __cplusplus is defined.
8854
8855 2005-08-14  Jim Meyering  <jim@meyering.net>
8856
8857         Sync from coreutils.
8858
8859         * lib/fts-cycle.c (setup_dir, enter_dir, leave_dir, free_dir):
8860         Use the hash-table-based cycle-detection code not just when
8861         FTS_TIGHT_CYCLE_CHECK if specified, but also with FTS_LOGICAL.
8862         Reported by James Youngman in
8863         <http://lists.gnu.org/archive/html/bug-gnulib/2005-08/msg00011.html>.
8864         * lib/fts_.h: Mention that with FTS_LOGICAL, we use
8865         FTS_TIGHT_CYCLE_CHECK.
8866         * lib/fts.c (fts_cross_check) [FTS_DEBUG]:
8867         s/active_dir_ht/fts_cycle.ht/. This lets us compile with -DFTS_DEBUG,
8868         once again.
8869         * lib/fts.c [! _LIBC]: Include "lstat.h" rather than rolling our own.
8870         * lib/fts.c (fd_safer): Remove decl.
8871         Include fcntl--.h rather than unistd-safer.h
8872         (fts_safe_changedir): Don't call fd_safer; no longer needed
8873         now that we include fcntl--.h.
8874
8875 2005-08-12  Simon Josefsson  <jas@extundo.com>
8876
8877         * modules/getndelim2: Use ssize_t module.
8878         * modules/getnline: Likewise.
8879         * modules/safe-read: Likewise.
8880         * modules/xreadlink: Likewise.
8881
8882         * modules/ssize_t: New file.
8883
8884 2005-08-12  Simon Josefsson  <jas@extundo.com>
8885
8886         * m4/readline.m4: Look for termcap, curses or ncurses if required.
8887
8888 2005-08-12  Simon Josefsson  <jas@extundo.com>
8889
8890         * MODULES.html.sh (Support for systems lacking POSIX:2001): Add
8891         ssize_t.
8892
8893 2005-08-12  Simon Josefsson  <jas@extundo.com>
8894
8895         * MODULES.html.sh (Extra functions based on ANSI C 89: Misc): Add
8896         readline, getdelim and check_version.
8897         (Support for systems lacking ISO C 99: Sizes of integer types):
8898         Add size_max.
8899
8900 2005-08-12  Bruno Haible  <bruno@clisp.org>
8901
8902         * m4/readline.m4 (gl_FUNC_READLINE): Look for ncurses first.
8903
8904 2005-08-11  Simon Josefsson  <jas@extundo.com>
8905
8906         * modules/readline: New file.
8907
8908         * modules/strnlen (Files): Add strnlen.h.
8909
8910 2005-08-11  Simon Josefsson  <jas@extundo.com>
8911
8912         * m4/readline.m4: New file.
8913
8914 2005-08-11  Simon Josefsson  <jas@extundo.com>
8915
8916         * lib/readline.h, readline.c: New file.
8917
8918 2005-08-11  Simon Josefsson  <jas@extundo.com>
8919
8920         * doc/gnulib.texi (Initial import, Finishing touches): Mention
8921         gl_AVOID.
8922
8923 2005-08-11  Bruno Haible  <bruno@clisp.org>
8924
8925         * lib/strnlen.h (strnlen): Change parameter name to match comment.
8926
8927 2005-08-10  Stepan Kasal  <kasal@ucw.cz>
8928
8929         * m4/onceonly_2_57.m4: Really require Autoconf 2.57.
8930
8931 2005-08-10  Simon Josefsson  <jas@extundo.com>
8932
8933         * tests/test-iconvme.c: New file.
8934
8935 2005-08-10  Simon Josefsson  <jas@extundo.com>
8936
8937         * m4/strnlen.m4: New file.
8938
8939         * m4/strndup.m4: Don't check for strnlen declaration, done in
8940         strnlen.m4.
8941
8942 2005-08-10  Simon Josefsson  <jas@extundo.com>
8943
8944         * lib/strndup.c: Use strnlen.h.
8945
8946         * lib/strnlen.h: New file.
8947
8948 2005-08-08  Ralf Wildenhues <Ralf.Wildenhues@gmx.de>  (tiny change)
8949
8950         * README: Typos.
8951
8952 2005-08-02  Simon Josefsson  <jas@extundo.com>
8953
8954         * modules/readline: New file.
8955
8956 2005-08-02  Simon Josefsson  <jas@extundo.com>
8957
8958         * modules/getdelim: New file.
8959
8960         * modules/getline: Rewrite, don't use getndelim2.
8961
8962 2005-08-02  Simon Josefsson  <jas@extundo.com>
8963
8964         * m4/getline.m4: Separate out getdelim stuff into separate module.
8965
8966         * m4/getdelim.m4: New file.
8967
8968 2005-08-02  Simon Josefsson  <jas@extundo.com>
8969
8970         * lib/getline.h, getline.c: Rewrite.
8971
8972         * lib/getdelim.h, getdelim.c: New files, ported from glibc.
8973
8974 2005-07-31  Bruno Haible  <bruno@clisp.org>
8975
8976         * lib/lock.h (gl_lock_initializer): New macro.
8977         (gl_lock_define_initialized): Use it.
8978         (gl_rwlock_initializer): New macro.
8979         (gl_rwlock_define_initialized): Use it.
8980         (gl_recursive_lock_initializer): New macro.
8981         (gl_recursive_lock_define_initialized): Use it.
8982
8983 2005-07-30  Karl Berry  <karl@gnu.org>
8984
8985         * doc/gnulib.texi (Initial import): mention -I$(top_builddir)/lib.
8986         Report from Ben Pfaff, regarding getopt.
8987
8988 2005-07-26  Paul Eggert  <eggert@cs.ucla.edu>
8989
8990         Add support to getopt for Emacs, which doesn't use LIBOBJS in the
8991         normal way.
8992         * m4/getopt.m4 (gl_GETOPT_SUBSTITUTE_HEADER): New macro.
8993         (gl_GETOPT_SUBSTITUTE): Use it.  Invoke gl_PREREQ_GETOPT.
8994         (gl_GETOPT_IFELSE, gl_GETOPT_CHECK_HEADERS): New macros.
8995         (gl_GETOPT): Use the new macros.  Most of the implementation
8996         is moved to the new macros.  This is for programs like Emacs
8997         that don't want all the functionality of gl_GETOPT.
8998
8999 2005-07-26  Bruno Haible  <bruno@clisp.org>
9000
9001         * m4/lock.m4: Update from GNU gettext.
9002
9003 2005-07-26  Bruno Haible  <bruno@clisp.org>
9004
9005         * lib/lock.h: Update from GNU gettext.
9006         * lib/lock.c: Update from GNU gettext.
9007
9008 2005-07-25  Paul Eggert  <eggert@cs.ucla.edu>
9009
9010         * m4/regex.m4 (gl_INCLUDED_REGEX): Use AC_RUN_IFELSE instead of the
9011         obsolescent AC_TRY_RUN.  Include the default includes files, for
9012         'exit'.
9013
9014 2005-07-24  Bruno Haible  <bruno@clisp.org>
9015
9016         * modules/visibility: New file.
9017         * MODULES.html.sh (Misc): Add visibility.
9018
9019 2005-07-24  Bruno Haible  <bruno@clisp.org>
9020
9021         * m4/visibility.m4: New file.
9022
9023 2005-07-24  Bruno Haible  <bruno@clisp.org>
9024
9025         * doc/visibility.texi: New file.
9026
9027 2005-07-22  Bruno Haible  <bruno@clisp.org>
9028
9029         * modules/alloca-opt (Makefile.am): Remove explicit dependency on
9030         $(ALLOCA_H), redundant through BUILT_SOURCES.
9031         * modules/argz (Makefile.am): Remove explicit dependency on $(ARGZ_H),
9032         redundant through BUILT_SOURCES.
9033         * modules/byteswap (Makefile.am): Remove explicit dependency on
9034         $(BYTESWAP_H), redundant through BUILT_SOURCES.
9035         * modules/fnmatch (Makefile.am): Remove explicit dependency on
9036         $(FNMATCH_H), redundant through BUILT_SOURCES.
9037         * modules/getopt (Makefile.am): Remove explicit dependency on
9038         $(GETOPT_H), redundant through BUILT_SOURCES.
9039         * modules/glob (Makefile.am): Remove explicit dependency on $(GLOB_H),
9040         redundant through BUILT_SOURCES.
9041         * modules/poll (Makefile.am): Remove explicit dependency on $(POLL_H),
9042         redundant through BUILT_SOURCES.
9043         * modules/stdbool (Makefile.am): Remove explicit dependency on
9044         $(STDBOOL_H), redundant through BUILT_SOURCES.
9045         * modules/stdint (Makefile.am): Remove explicit dependency on
9046         $(STDINT_H), redundant through BUILT_SOURCES.
9047         * modules/sysexits (Makefile.am): Add $(SYSEXITS_H) to BUILT_SOURCES.
9048         Remove explicit dependency on $(SYSEXITS_H).
9049         Reported by Alexandre Duret-Lutz <adl@src.lip6.fr>.
9050
9051 2005-07-18  Simon Josefsson  <jas@extundo.com>
9052
9053         * lib/check-version.c (check_version): Accept identical versions too.
9054
9055 2005-07-18  Bruno Haible  <bruno@clisp.org>
9056
9057         * modules/lock: New file.
9058         * MODULES.html.sh (Multithreading): New section.
9059
9060 2005-07-18  Bruno Haible  <bruno@clisp.org>
9061
9062         * m4/lock.m4: New file, from GNU gettext.
9063
9064 2005-07-18  Bruno Haible  <bruno@clisp.org>
9065
9066         * lib/lock.h: New file, from GNU gettext.
9067         * lib/lock.c: New file, from GNU gettext.
9068
9069 2005-07-18  Bruno Haible  <bruno@clisp.org>
9070
9071         * lib/lock.h (gl_once_t): New type.
9072         (gl_once_define, gl_once): New macros.
9073         * lib/lock.c (fresh_once): New variable.
9074         (glthread_once, glthread_once_call, glthread_once_singlethreaded): New
9075         functions.
9076
9077 2005-07-16  Simon Josefsson  <jas@extundo.com>
9078
9079         * doc/gnulib.texi (Library version handling): Add ELF symbol collision
9080         workaround, suggested by Bruno.
9081
9082 2005-07-15  Paul Eggert  <eggert@cs.ucla.edu>
9083
9084         * modules/xalloc (Depends-on): Add xalloc-die.
9085         * modules/xvasprintf (Depends-on): Add xalloc-die.
9086
9087 2005-07-15  Paul Eggert  <eggert@cs.ucla.edu>
9088
9089         * lib/quotearg.c: Add translator comment suggested by Bruno Haible,
9090         with a minor change.
9091
9092 2005-07-15  Bruno Haible  <bruno@clisp.org>
9093
9094         * m4/poll.m4 (gl_FUNC_POLL): Check against MacOS X 10.4 poll() bug.
9095         When using lib/poll.c, define poll as rpl_poll.
9096
9097 2005-07-14  Paul Eggert  <eggert@cs.ucla.edu>
9098
9099         * modules/argp (Depends-on): Remove unlocked-io.
9100
9101 2005-07-14  Derek Price  <derek@ximbiot.com>
9102
9103         * m4/glob.m4 (gl_GLOB): Cache glob interface check result.  Add check
9104         for glob symlink bug.
9105
9106 2005-07-14  Bruno Haible  <bruno@clisp.org>
9107
9108         * m4/argp.m4 (gl_ARGP): Remove invocation of gl_FUNC_GLIBC_UNLOCKED_IO.
9109         Instead, test for *_unlocked function declarations directly.
9110
9111 2005-07-11  Simon Josefsson  <jas@extundo.com>
9112
9113         * modules/size_max: New file.
9114
9115         * modules/xsize: Depend on size_max module for size_max.m4.
9116
9117 2005-07-11  Simon Josefsson  <jas@extundo.com>
9118
9119         * lib/size_max.h: New file.
9120
9121 2005-07-11  Paul Eggert  <eggert@cs.ucla.edu>
9122
9123         * lib/version-etc-fsf.c (version_etc_copyright): Parameterize the
9124         copyright symbol and the year.
9125         * lib/version-etc.c (COPYRIGHT_YEAR): New constant.
9126         (version_etc_va): Use parameterized copyright notice.
9127         Reword to conform to the current GNU coding standards.
9128
9129 2005-07-11  Karl Berry  <karl@gnu.org>
9130
9131         * doc/gnulib.texi (Quoting): new node.
9132         (Initial import): more info, from Patrice.
9133
9134 2005-07-11  Bruno Haible  <bruno@clisp.org>
9135
9136         * gnulib-tool (func_usage): Document option --avoid.
9137         (Command line options): Handle --avoid.
9138         (func_acceptable): New function.
9139         (func_modules_transitive_closure): Use it.
9140
9141 2005-07-11  Bruno Haible  <bruno@clisp.org>
9142
9143         * MODULES.html.sh: Use shortcut URLs to the www.opengroup.org site.
9144         Reported by Jim Meyering.
9145
9146 2005-07-10  Bruno Haible  <bruno@clisp.org>
9147
9148         * m4/size_max.m4 (gl_SIZE_MAX): Cast ~(size_t)0 back to size_t.
9149         Needed when size_t is smaller than 'unsigned int'.
9150         Reported by Paul Eggert.
9151
9152 2005-07-09  Sergey Poznyakoff  <gray@gnu.org.ua>
9153
9154         * modules/argp (Depends-on): Add unlocked-io
9155
9156 2005-07-09  Sergey Poznyakoff  <gray@gnu.org.ua>
9157
9158         * lib/argp-namefrob.h: Include unlocked-io.h. Removed unnecessary
9159         block of defines.
9160
9161 2005-07-08  Paul Eggert  <eggert@cs.ucla.edu>
9162
9163         * config/srclist.txt: Comment out regcomp.c, since we have a porting
9164         fix now.
9165
9166 2005-07-08  Eric Blake  <ebb9@byu.net>  (tiny change)
9167        and  Paul Eggert  <eggert@cs.ucla.edu>
9168
9169         * lib/regcomp.c (init_dfa, build_range_exp): Store __btowc value
9170         in wint_t, not wchar_t.  Remove now-unnecessary cast.
9171
9172 2005-07-07  Paul Eggert  <eggert@cs.ucla.edu>
9173
9174         * modules/regex (Files): Add lib/regex_internal.c,
9175         lib/regex_internal.h, lib/regexec.c, lib/regcomp.c, m4/codeset.m4.
9176         (Depends-on): Add extensions.
9177         (Makefile.am): Remove lib_SOURCES; now done by m4 code.
9178
9179 2005-07-07  Paul Eggert  <eggert@cs.ucla.edu>
9180
9181         * m4/backupfile.m4 (gl_BACKUPFILE): Use AC_CHECK_FUNCS_ONCE on
9182         pathconf.
9183         * m4/same.m4 (gl_SAME): Likewise.
9184         Require AC_SYS_LONG_FILE_NAMES; bug reported by Gerrit P. Haase.
9185
9186         * m4/regex.m4: Adjust to new libc regex implementation.
9187         (gl_INCLUDED_REGEX): Add AC_LIBSOURCES for
9188         all the .c and .h parts of (the new) regex.
9189         Quote the m4 stuff better.
9190         Check for RE_ICASE bug of old gnulib.
9191         Check for REG_STARTEND of recent libc.
9192         Rename local variables from jm_* to gl_*.
9193         Quote operand of "test -f".
9194         Say "recent enough" version of libc, not "version 2".
9195         (gl_PREREQ_REGEX): Remove AC_FUNC_ALLOCA, since alloca is a
9196         prerequisite module.  Remove AC_HEADER_STDC; no longer needed.
9197         Check for locale.h, isblank, mbrtowc, wcrtomb, wcscoll.
9198         Remove check for btowc, isascii.
9199         Require AM_LANGINFO_CODESET.
9200
9201 2005-07-07  Paul Eggert  <eggert@cs.ucla.edu>
9202
9203         * lib/regex.c, regex.h: Sync from libc.
9204         * lib/regcomp.c, regexec_internal.c, regex_internal.h, regexec.c:
9205         New files, synced from libc, except that regex_internal.h
9206         currently has a small porting fix.
9207
9208 2005-07-07  Paul Eggert  <eggert@cs.ucla.edu>
9209
9210         * config/srclist.txt: Add regcomp.c, regex.c, regex.h,
9211         regex_internal.c, regexec.c.
9212         Add regex_internal.h too, but as a comment, since the libc version
9213         is currently broken in gnulib mode.
9214
9215 2005-07-06  Paul Eggert  <eggert@cs.ucla.edu>
9216
9217         Support programs like Emacs that use gnulib but not gettext.
9218         * MODULES.html.sh (Internationalization functions): Add gettext-h.
9219         * modules/gettext-h: New file.
9220         * modules/gettext (Files): Remove lib/gettext.h.
9221         (Depends-on): Add gettext-h.
9222         (Makefile.am): Remove lib_SOURCES.
9223         * modules/argmatch, modules/c-stack, modules/closeout:
9224         * modules/copy-file, modules/csharpcomp, modules/csharpexec:
9225         * modules/execute, modules/file-type, modules/getaddrinfo:
9226         * modules/getopt, modules/human, modules/javacomp:
9227         * modules/javaexec, modules/mkdir-p, modules/obstack:
9228         * modules/openat, modules/pagealign_alloc, modules/pipe:
9229         * modules/quotearg, modules/regex, modules/rpmatch:
9230         * modules/unicodeio, modules/userspec, modules/version-etc:
9231         * modules/wait-process, modules/xalloc-die, modules/xmemcoll:
9232         * modules/xsetenv:
9233         Depend on gettext-h, not gettext.
9234
9235 2005-07-05  Paul Eggert  <eggert@cs.ucla.edu>
9236
9237         * gnulib-tool (func_import): Add support for 'public domain' license.
9238         * modules/alloca, modules/atexit, modules/memmove:
9239         Now public domain, not GPL.
9240         * modules/dup2, modules/getpagesize, modules/malloc, modules/memset:
9241         * modules/realloc, modules/strerror, modules/strtod:
9242         Now LGPL, not GPL.
9243
9244 2005-07-05  Bruno Haible  <bruno@clisp.org>
9245
9246         * m4/mbrtowc.m4 (gl_FUNC_MBRTOWC): Upgrade to version from current
9247         autoconf CVS. Needed for mingw.
9248
9249 2005-07-03  Paul Eggert  <eggert@cs.ucla.edu>
9250
9251         Remove the dependency of the strftime module on the tzset module.
9252         * modules/strftime (Depends-on): Remove dependency on tzset.
9253
9254 2005-07-03  Paul Eggert  <eggert@cs.ucla.edu>
9255
9256         Remove the dependency of the strftime module on the tzset module.
9257         * m4/strftime.m4 (gl_FUNC_STRFTIME): Don't require
9258         gl_FUNC_TZSET_CLOBBER.
9259
9260 2005-07-03  Paul Eggert  <eggert@cs.ucla.edu>
9261
9262         Remove the dependency of the strftime module on the tzset module.
9263         * lib/strftime.c (my_strftime)
9264         [! defined _LIBC && ! HAVE_RUN_TZSET_TEST]:
9265         Copy the input structure, to work around some of the bug with
9266         Solaris 2.5.1 and Solaris 2.6.  If you still care about these old
9267         Solaris releases, you should also use the tzset module, but we won't
9268         require it as a dependency any more since we don't want LGPLed code
9269         to depend on GPLed code.
9270
9271 2005-07-02  Jim Meyering  <jim@meyering.net>
9272
9273         * m4/chown.m4, cloexec.m4, dup2.m4, fsusage.m4:
9274         * m4/getcwd-path-max.m4, getcwd.m4, mkstemp.m4, mountlist.m4:
9275         * m4/pagealign_alloc.m4, save-cwd.m4, unistd-safer.m4:
9276         Don't check for fcntl.h, and don't test for HAVE_FCNTL_H.
9277
9278 2005-07-02  Jim Meyering  <jim@meyering.net>
9279
9280         * lib/backupfile.c (backup_args): Change a `0' to NULL.
9281
9282 2005-07-01  Paul Eggert  <eggert@cs.ucla.edu>
9283
9284         * lib/xnanosleep.c: Include timespec.h, since OpenBSD 3.4 <time.h>
9285         declares only 'struct timespec;' (!).
9286
9287 2005-07-01  Jim Meyering  <jim@meyering.net>
9288
9289         * lib/chown.c, cloexec.c, dup-safer.c, dup2.c, fsusage.c, getcwd.c:
9290         * lib/getloadavg.c, mountlist.c, openat.h, pagealign_alloc.c:
9291         * lib/save-cwd.c, tempname.c:
9292         Assume HAVE_FCNTL_H (i.e., include <fcntl.h> unconditionally,
9293         and don't include <sys/file.h>).
9294
9295 2005-06-29  Jim Meyering  <jim@meyering.net>
9296
9297         * lib/mkdir-p.c (make_dir_parents): Don't apply sizeof to a hard-coded
9298         type name.  Use the variable name instead.
9299         * lib/idcache.c (getuser, getuidbyname, getgroup, getgidbyname):
9300         Likewise.
9301
9302 2005-06-28  Simon Josefsson  <jas@extundo.com>
9303
9304         * modules/check-version (Files): Add check-version.m4.
9305
9306 2005-06-28  Simon Josefsson  <jas@extundo.com>
9307
9308         * m4/check-version.m4: New file, suggested by Jim Meyering
9309         <jim@meyering.net>.
9310
9311 2005-06-28  Simon Josefsson  <jas@extundo.com>
9312
9313         * lib/check-version.h, check-version.c: New files.
9314
9315 2005-06-28  Simon Josefsson  <jas@extundo.com>
9316
9317         * lib/base64.c (base64_encode): Indent.  Rename 'b64' to avoid
9318         collision with global variable.  Better indentation.  Don't
9319         increment buffer pointer beyond buffer end.  Based on comments
9320         from Paul Eggert <eggert@cs.ucla.edu>.
9321
9322         * lib/base64.h: Indent.
9323
9324 2005-06-28  Simon Josefsson  <jas@extundo.com>
9325
9326         * doc/gnulib.texi (Library version handling): New section.
9327
9328 2005-06-28  Jim Meyering  <jim@meyering.net>
9329
9330         * check-module (find_included_lib_files): Hard-code another
9331         pair of exceptions: fts.c includes fts-cycle.c and unistd-safer.h
9332         but modules/fts-lgpl (correctly) does not list those files.
9333
9334         * modules/canonicalize (Files): Add lib/pathmax.h.
9335
9336 2005-06-25  Simon Josefsson  <jas@extundo.com>
9337
9338         * modules/check-version: New file.
9339
9340 2005-06-24  Paul Eggert  <eggert@cs.ucla.edu>
9341
9342         * lib/canon-host.c (canon-host): Append trailing "," to 0 in
9343         initializer of struct addrinfo, as an indication that we don't
9344         care how many members the structure has.
9345
9346 2005-06-24  Derek Price  <derek@ximbiot.com>
9347         and Bruno Haible  <bruno@clisp.org>
9348
9349         Remove stat module & update lstat.
9350         * m4/lstat.m4 (gl_FUNC_LSTAT): Drop AC_FUNC_LSTAT in favor of
9351         AC_FUNC_LSTAT_FOLLOWS_SLASHED_SYMLINK.
9352         * m4/stat.m4: Remove this file.
9353
9354 2005-06-24  Derek Price  <derek@ximbiot.com>
9355         and Bruno Haible  <bruno@clisp.org>
9356
9357         Remove stat module & update lstat.
9358         * lib/stat.c: Remove this file...
9359         (slash_aware_lstat): ...moving this content and its support...
9360         * lib/lstat.c (rpl_lstat): ...into here.
9361         * lib/lstat.h: New file.
9362
9363 2005-06-24  Derek Price  <derek@ximbiot.com>
9364         and Bruno Haible  <bruno@clisp.org>
9365
9366         Remove stat module & update lstat.
9367         * config/srclist.txt (libc sources): Remove stat.
9368
9369 2005-06-24  Derek Price  <derek@ximbiot.com>
9370         and Bruno Haible  <bruno@clisp.org>
9371
9372         Remove stat module & update lstat.
9373         * MODULES.html.sh (stat): Remove.
9374         * MODULES.html: Regenerated.
9375         * modules/lstat (Description): Correct function name.
9376         (Files): Add "lstat.h".
9377         (Depends-on): Remove stat, add xalloc, stat-macros.
9378         * modules/stat: Remove this file.
9379         (Include): Add "lstat.h", remove <sys/stat.h>.
9380
9381 2005-06-23  Paul Eggert  <eggert@cs.ucla.edu>
9382
9383         * lib/mktime.c: Include <string.h> even if !DEBUG.  (From glibc.)
9384         (ranged_convert): Don't save conversion in a temporary struct.
9385         This causes a warning with GCC 4.0.0, and anyway in the typical
9386         case it's not worth the extra 100 bytes or so of code.
9387         (ranged_convert, __mktime_internal): When calling a function via a
9388         pointer P, use P () rather than (*P) (), as we now assume C89 or
9389         better.
9390
9391 2005-06-22  Paul Eggert  <eggert@cs.ucla.edu>
9392
9393         * lib/readutmp.c (desirable_utmp_entry): Fix bug where "who -b" and
9394         "who -r" failed to give output.  Problem reported by Tim Waugh.
9395
9396         * lib/xmalloc.c (HAVE_GNU_CALLOC): New constant.
9397         (xcalloc): Use it to avoid needless tests.
9398         Problem reported by Jim Meyering.
9399
9400 2005-06-20  Derek Price  <derek@ximbiot.com>
9401
9402         * m4/bison.m4: Note that precious decls of YACC & YFLAGS will be
9403         unnecessary for Autoconfs > 2.59c.
9404
9405 2005-06-16  Sergey Poznyakoff  <gray@Mirddin.farlep.net>
9406
9407         * lib/argp.h (__option_is_short): Check upper limit of
9408         __key. Isprint() requires its argument to have the value
9409         of an unsigned char or EOF.
9410
9411 2005-06-16  Jim Meyering  <jim@meyering.net>
9412
9413         * lib/calloc.c (rpl_calloc): Allocate a 1-byte buffer (not 1xS or Nx1)
9414         when either N or S is zero.
9415
9416 2005-06-16  Derek Price  <derek@ximbiot.com>
9417
9418         * m4/bison.m4: Declare YACC & YFLAGS precious.
9419
9420 2005-06-10  Paul Eggert  <eggert@cs.ucla.edu>
9421
9422         * lib/fnmatch.c (fnmatch): If there is an encoding error in a
9423         multibyte string or pattern, fall back on unibyte matching.
9424         Problem reported by James Youngman.
9425
9426 2005-06-08  Bruno Haible  <bruno@clisp.org>
9427
9428         * modules/csharpcomp: New file.
9429         * MODULES.html.sh (C#): Add csharpcomp.
9430
9431 2005-06-08  Bruno Haible  <bruno@clisp.org>
9432
9433         * m4/csharpcomp.m4: New file, from GNU gettext.
9434
9435 2005-06-08  Bruno Haible  <bruno@clisp.org>
9436
9437         * lib/csharpcomp.h: New file, from GNU gettext.
9438         * lib/csharpcomp.c: New file, from GNU gettext.
9439         * lib/csharpcomp.sh.in: New file, from GNU gettext.
9440
9441 2005-06-08  Bruno Haible  <bruno@clisp.org>
9442
9443         * lib/binary-io.h (fileno): Undefine before defining it. Avoids a gcc
9444         warning on mingw.
9445
9446 2005-06-07  Derek Price  <derek@ximbiot.com>
9447
9448         Sync from CVS.
9449         * lib/glob_.h: Indent nested #ifdef.
9450
9451 2005-06-02  Paul Eggert  <eggert@cs.ucla.edu>
9452
9453         Sync from coreutils.
9454         Use "file name" when talking about file names, instead of "filename"
9455         or "path", as per the GNU coding standards.
9456         * lib/mkdir-p.c: Renamed from makepath.c.
9457         (make_dir_parents): Renamed from make_path.  All callers changed.
9458         * lib/mkdir-p.h: Likewise.  All includers changed.
9459         * lib/filenamecat.c: Renamed from path-concat.c.
9460         (file_name_concat): Renamed from path_concat.  All callers changed.
9461         [TEST_FILE_NAME_CONCAT]: Renamed from TEST_PATH_CONCAT.
9462         * lib/filenamecat.h: Likewise.  All includers changed.
9463         * lib/acl.c: Don't use "path" or "filename" to mean "file name"
9464         in comments or local variable names.
9465         * lib/basename.c: Likewise.
9466         * lib/canonicalize.c, canonicalize.h: Likewise.
9467         * lib/dirname.c, dirname.h: Likewise.
9468         * lib/euidaccess.c: Likewise.
9469         * lib/exclude.c: Likewise
9470         * lib/fnmatch_.h, fnmatch_loop.c: Likewise.
9471         * lib/fsusage.c, fsuage.h: Likewise.
9472         * lib/fts.c, fts_.h: Likewise.
9473         * lib/getcwd.c: Likewise.
9474         * lib/getloadavg.c: Likewise.
9475         * lib/mkstemp.c: Likewise.
9476         * lib/mountlist.c, mountlist.h: Likewise.
9477         * lib/openat.c, openat.h: Likewise.
9478         * lib/readlink-stub.c: Likewise.
9479         * lib/readutmp.c, readutmp.h: Likewise.
9480         * lib/rename.c: Likewise.
9481         * lib/rmdir.c: Likewise.
9482         * lib/same.c: Likewise.
9483         * lib/savedir.c: Likewise.
9484         * lib/stripslash.c: Likewise.
9485         * lib/tempname.c: Likewise.
9486         * lib/xreadlink.c: Likewise.
9487         * lib/exclude.c (excluded_file_name): Renamed from excluded_filename.
9488         All uses changed.
9489         * lib/exclude.h: Likewise.
9490
9491         * lib/euidaccess.c (getuid, getgid, getuid, getegid)
9492         [!defined _POSIX_VERSION]: Remove decls; not needed these days.
9493         * lib/idcache.c (getpwuid, getpwnam, getgrgid, getgrnam)
9494         [!defined _POSIX_VERSION]: Remove decls; not needed these days.
9495         * lib/pathmax.h: Include <limits.h> unconditionally, since other
9496         files have been getting away with it for years (MORE/BSD 4.3
9497         is extinct now).
9498         * lib/userspec.c (getpwnam, getgrnam, getgrgid)
9499         [!defined _POSIX_VERSION]: Remove decls; not needed these days.
9500
9501         * lib/pathmax.h (_POSIX_PATH_MAX) [!defined _POSIX_PATH_MAX]:
9502         Define to 256, not 255, as per modern POSIX.
9503
9504 2005-06-02  Paul Eggert  <eggert@cs.ucla.edu>
9505
9506         Sync from coreutils.
9507         Use "file name" when talking about file names, instead of "filename"
9508         or "path", as per the GNU coding standards.
9509         * MODULES.html.sh: mkdir-p renamed from makepath.
9510         filenamecat renamed from path-concat.
9511         * modules/filenamecat: Renamed from modules/path-concat.
9512         (Files): filenamecat.h and filenamecat.c renamed from
9513         path-concat.h and path-concat.c.
9514         (configure.ac): gl_FILE_NAME_CONCAT, not gl_PATH_CONCAT.
9515         (Include): filenamecat.h, not path-concat.h.
9516         * modules/mkdir-p: Renamed from modules/makepath.
9517         (Files): mkdir-p.h and mkdir-p.c renamed from makepath.h and
9518         makepath.c.
9519         (configure.ac): gl_MKDIR_PARENTS, not gl_MAKEPATH.
9520         (Include): mkdir-p.h, not makepath.h.
9521
9522 2005-06-02  Paul Eggert  <eggert@cs.ucla.edu>
9523
9524         Sync from coreutils.
9525         * m4/mkdir-p.m4: Renamed from makepath.m4.
9526         (gl_MKDIR_PARENTS): Renamed from gl_MAKEPATH.  All uses changed.
9527         Rename files from makepath.c to mkdir-p.c, and from
9528         makepath.h to mkdir-p.h.
9529         * m4/filenamecat.m4: Renamed from path-concat.m4.
9530         (gl_FILE_NAME_CONCAT): Renamed from gl_PATH_CONCAT.  All uses changed.
9531         Rename files from path-concat.c to filenamecat.c,
9532         and from path-concat.h to filenamecat.h.
9533         * m4/getcwd-path-max.m4: Don't use "path" or "filename" to mean
9534         "file name" in local variables or comments.
9535         * m4/rename.m4: Likewise.
9536
9537 2005-06-01  Bruno Haible  <bruno@clisp.org>
9538
9539         * modules/csharpexec: New file.
9540         * MODULES.html.sh (C#): New section.
9541
9542 2005-06-01  Bruno Haible  <bruno@clisp.org>
9543
9544         * m4/csharp.m4: New file, from GNU gettext.
9545         * m4/csharpexec.m4: New file, from GNU gettext.
9546
9547 2005-06-01  Bruno Haible  <bruno@clisp.org>
9548
9549         * lib/csharpexec.h: New file, from GNU gettext.
9550         * lib/csharpexec.c: New file, from GNU gettext.
9551         * lib/csharpexec.sh.in: New file, from GNU gettext.
9552
9553 2005-05-31  Derek Price  <derek@ximbiot.com>
9554             Paul Eggert  <eggert@cs.ucla.edu>
9555
9556         Sync from cvs.
9557         * m4/glob.m4: s/MISSING_SYS_CDEFS_H/_SYS_CDEFS_H/ and comment.
9558
9559 2005-05-31  Derek Price  <derek@ximbiot.com>
9560             Paul Eggert  <eggert@cs.ucla.edu>
9561
9562         Sync from cvs.
9563         * lib/glob_.h: s/MISSING_SYS_CDEFS_H/_SYS_CDEFS_H/ and comment.
9564
9565 2005-05-29  Derek Price  <derek@ximbiot.com>
9566
9567         * config/srclist.txt (glob_.h, glob.c): Add these files.
9568
9569 2005-05-29  Derek Price  <derek@ximbiot.com>
9570
9571         * MODULES.html.sh: Add glob to Enhanced POSIX.2001 section.
9572         * modules/glob: New file.
9573         * modules/getlogin_r: Add link to POSIX spec in description.
9574
9575 2005-05-29  Derek Price  <derek@ximbiot.com>
9576             Paul Eggert  <eggert@cs.ucla.edu>
9577
9578         * m4/glob.m4: New file.
9579
9580 2005-05-29  Derek Price  <derek@ximbiot.com>
9581             Paul Eggert  <eggert@cs.ucla.edu>
9582
9583         * lib/glob_.h, glob.c: New files.
9584
9585 2005-05-27  Paul Eggert  <eggert@cs.ucla.edu>
9586
9587         * modules/fts (Files): Remove m4/inttypes-pri.m4.
9588         * modules/fts-lgpl (Depends-on): Remove gettext.
9589
9590 2005-05-27  Paul Eggert  <eggert@cs.ucla.edu>
9591
9592         * m4/fts.m4 (gl_FUNC_FTS_CORE): Don't check for inttypes.h or stdint.h,
9593         and don't require gt_INTTYPES_PRI.
9594
9595 2005-05-27  Paul Eggert  <eggert@cs.ucla.edu>
9596
9597         * lib/getlogin_r.c (getlogin_r): Don't set errno to 0 on return.
9598
9599         * lib/fts.c: Don't worry about debugging on pre-C99-compatible hosts;
9600         the configuration hassle isn't worth it.
9601         Include inttypes.h and stdint.h unconditionally if FTS_DEBUG.
9602         (LONGEST_MODIFIER, PRIuMAX): Remove.
9603
9604 2005-05-27  Bruno Haible  <bruno@clisp.org>
9605
9606         * lib/getlogin_r.h: Remove second include of <stddef.h>.
9607
9608 2005-05-26  Paul Eggert  <eggert@cs.ucla.edu>
9609
9610         * m4/extensions.m4 (gl_USE_SYSTEM_EXTENSIONS): Define
9611         _POSIX_PTHREAD_SEMANTICS for Solaris.
9612
9613 2005-05-25  Derek Price  <derek@ximbiot.com>
9614
9615         * MODULES.html.sh: Add getlogin_r to POSIX.2001 support section.
9616
9617 2005-05-25  Derek Price  <derek@ximbiot.com>
9618             Paul Eggert  <eggert@cs.ucla.edu>
9619
9620         * modules/getlogin_r: New files.
9621
9622 2005-05-25  Derek Price  <derek@ximbiot.com>
9623             Paul Eggert  <eggert@cs.ucla.edu>
9624
9625         * m4/getlogin_r.m4: New files.
9626
9627 2005-05-25  Derek Price  <derek@ximbiot.com>
9628             Paul Eggert  <eggert@cs.ucla.edu>
9629
9630         * lib/getlogin_r.c, getlogin_r.h: New files.
9631
9632 2005-05-25  Bruno Haible  <bruno@clisp.org>
9633             Derek Price  <derek@ximbiot.com>
9634
9635         * lib/getlogin_r.h: Simplify API documentation.
9636
9637 2005-05-23  Derek Price  <derek@ximbiot.com>
9638
9639         * modules/minmax (Files): Add m4/minmax.m4.
9640         (configure.ac): Add gl_MINMAX.
9641
9642 2005-05-22  Paul Eggert  <eggert@cs.ucla.edu>
9643
9644         * lib/fts.c (fd_safer) [_LGPL_PACKAGE]: New static function,
9645         so that unistd-safer.h (GPL'ed code) need not be included.
9646
9647 2005-05-22  Bruno Haible  <bruno@clisp.org>
9648
9649         * m4/minmax.m4: New file.
9650         Based on a patch by Derek Price <derek@ximbiot.com>.
9651
9652 2005-05-22  Bruno Haible  <bruno@clisp.org>
9653
9654         * lib/stdint_.h (_STDINT_H_HAVE_INT64): New macro. Use it in #ifdefs.
9655         (INT64_MIN): Fix definition.
9656         Suggested by Paul Eggert <eggert@cs.ucla.edu>.
9657
9658         * lib/stdint_.h (_STDINT_H_NEED_SIGNED_INT_TYPES): Renamed from
9659         NEED_SIGNED_INT_TYPES.
9660
9661         * lib/stdint_.h (_STDINT_H_HAVE_SYSTEM_INTTYPES): Renamed from
9662         HAVE_SYSTEM_INTTYPES.
9663
9664 2005-05-22  Bruno Haible  <bruno@clisp.org>
9665
9666         * lib/minmax.h: Include <limits.h> only when it defines MIN, MAX.
9667         Also include <sys/param.h> if it defines MIN, MAX.
9668         Based on a patch by Derek Price <derek@ximbiot.com>.
9669
9670 2005-05-21  Jim Meyering  <jim@meyering.net>
9671
9672         * modules/fts (Files): Add m4/inttypes-pri.m4.
9673         (Depends-on): Add lstat and remove gettext.  Alphabetize.
9674
9675 2005-05-20  Paul Eggert  <eggert@cs.ucla.edu>
9676
9677         New fts module.
9678         * lib/fts.c: Don't include "cycle-check.h" or "hash.h".
9679         (setup_dir, free_dir): New functions.
9680         (enter_dir, leave_dir): Define trivial
9681         alternatives of _LGPL_PACKAGE.  Move to fts-cycle.c if !_LGPL_PACKAGE.
9682         (HT_INITIAL_SIZE, ENTER_DIR): Remove.  All uses removed.
9683         (LEAVE_DIR): Fix typo: pass Fts and Ent to leave_dir.
9684         (struct Active_dir, AD_compare, AD_hash, enter_dir, leave_dir):
9685         Move to fts-cycle.c.
9686         (fts_open): Use setup_dir.
9687         (fts_close): Use free_dir.
9688         (fts_read): Have just one copy of the ENTER_DIR code rather than three.
9689         This adds a label and some gotos, but the alternatives were messier.
9690         Check for memory allocation failure when entering a dir.
9691         (fts_stat) [_LGPL_PACKAGE]: Bring back glibc cycle detection code.
9692         * lib/fts_.h (_LGPL_PACKAGE) [defined _LIBC]: New macro.
9693         (FTS): New member fts_cycle, that is a union that contains the
9694         old active_dir_ht and cycle_state.  All uses changed to mention
9695         fts_cycle.ht and fts_cycle.state.
9696         * lib/fts-cycle.c: New file, containing GPL'ed code migrated out of
9697         fts.c, with the following changes:
9698         (setup_dir, free_dir): New functions.
9699         (enter_dir): Now returns bool.  Return true if successful, false
9700         if memory exhausted.  All callers changed.
9701         Do not bother partly cleaning up on
9702         memory allocation failure; that is free_dir's job.
9703         However, free ad if hash_insert fails, to avoid memory leak.
9704         (enter_dir, leave_dir): Accommodate change to FTS by inspecting
9705         fts->fts_options to see which union member to use.
9706
9707 2005-05-20  Paul Eggert  <eggert@cs.ucla.edu>
9708
9709         * m4/fts.m4 (gl_FUNC_FTS_CORE): Renamed from gl_FUNC_FTS.
9710         (gl_FUNC_FTS, gl_FUNC_FTS_LGPL): New macros.
9711
9712 2005-05-20  Paul Eggert  <eggert@cs.ucla.edu>
9713
9714         * MODULES.html.sh (File system functions): Add fts, fts-lgpl.
9715
9716 2005-05-20  Jim Meyering  <jim@meyering.net>
9717
9718         * lib/unlinkdir.h (cannot_unlink_dir) [UNLINK_CANNOT_UNLINK_DIR]:
9719         Now a macro, to pacify GCC.
9720
9721 2005-05-20  Eric Blake  <ebb9@byu.net>  (tiny change)
9722
9723         * m4/chown.m4 (gl_FUNC_CHOWN): Correct sense of test for honoring IDs
9724         of -1.
9725
9726 2005-05-20  Eric Blake  <ebb9@byu.net>  (tiny change)
9727
9728         * lib/chown.c (rpl_chown): Return -1 on failure.
9729
9730 2005-05-18  Paul Eggert  <eggert@cs.ucla.edu>
9731
9732         * m4/canonicalize.m4 (AC_FUNC_CANONICALIZE_FILE_NAME]):
9733         Don't check for stddef.h.
9734         * m4/fts.m4 (gl_FUNC_FTS): Don't require AC_HEADER_STDC, as we
9735         don't use its results.
9736         Don't check for fcntl.h, stddef.h, stdlib.h, string.h, unistd.h,
9737         since we include them unconditionally.  Don't require
9738         AM_STDBOOL_H, since stdbool is a prerequisite.
9739         Don't require AC_C_CONST, AC_TYPE_SIZE_T or check for ptrdiff_t
9740         since we assume C89 or better.
9741         Don't require AC_FUNC_CLOSEDIR_VOID, AC_FUNC_LSTAT, or AC_FUNC_STAT,
9742         as we don't use their results.
9743         Don't check for fchdir, memmove, memset, strrchr, as we use
9744         them unconditionally.
9745         * m4/gettimeofday.m4 (AC_FUNC_GETTIMEOFDAY_CLOBBER): Don't define
9746         GETTIMEOFDAY_CLOBBERS_LOCALTIME_BUFFER, since nobody uses it.
9747
9748 2005-05-18  Paul Eggert  <eggert@cs.ucla.edu>
9749
9750         * lib/canonicalize.c: Include canonicalize.h first, to test interface.
9751         Include <stddef.h> unconditionally, since we assume C89 now.
9752         All uses of PTR_INT_TYPE replaced by ptrdiff_t.
9753         * lib/fts.c: Include fts_.h first, to check interface.
9754         Do not include intprops.h; no longer needed.
9755         Include cycle-check.h and hash.h, since fts_.h no longer does.
9756         Remove unnecessary casts of closedir to void.
9757         (fts_build): Use a simpler method (not involving TYPE_SIGNED) to
9758         decide whether to decrement nlinks.
9759         * lib/fts_.h: Do not include hash.h or cycle-check.h; no longer needed.
9760         (FTS): Use struct hash_table * instead of Hash_table, so that
9761         we no longer need to include hash.h here.
9762
9763 2005-05-18  Jim Meyering  <jim@meyering.net>
9764
9765         * modules/dirfd (License): Change to LGPL.  Most of the code
9766         is already in the public domain.
9767
9768 2005-05-18  Jim Meyering  <jim@meyering.net>
9769
9770         * m4/fts.m4 (AC_LIBSOURCES): Add intprops.h to the list.
9771         Reported by Yoann Vandoorselaere.
9772
9773 2005-05-17  Jim Meyering  <jim@meyering.net>
9774
9775         * m4/fts.m4: New file, from coreutils.
9776
9777 2005-05-17  Jim Meyering  <jim@meyering.net>
9778
9779         * lib/fts.c, fts_.h: New files, from coreutils.
9780
9781 2005-05-14  Paul Eggert  <eggert@cs.ucla.edu>
9782
9783         Sync from coreutils.
9784         * m4/unlinkdir.m4: New file.
9785
9786 2005-05-14  Paul Eggert  <eggert@cs.ucla.edu>
9787
9788         Sync from coreutils.
9789         * lib/unlinkdir.c, unlinkdir.h: New files.
9790         * lib/gethrxtime.c, lib/gethrxtime.h, lib/getpass.h, lib/mountlist.h,
9791         lib/path-concat.c, lib/regex.h, lib/unlocked-io.h, lib/xtime.h:
9792         White space changes only.
9793         * lib/makepath.c (make_path): Port to hosts where leading "//" is
9794         special.
9795         * lib/yesno.c: Include getline.h, not ctype.h.
9796         (yesno): Don't remove leading white space; POSIX doesn't allow it.
9797         Use getline to remove arbitrary restriction on response length.
9798
9799 2005-05-14  Paul Eggert  <eggert@cs.ucla.edu>
9800
9801         * config/srclist-update: Spell out "Street" in FSF postal
9802         mail address; this is the style the FSF seems to prefer.
9803
9804         * build-aux/depcomp, build-aux/install-sh, build-aux/mdate-sh,
9805         build-aux/missing, build-aux/mkinstalldirs: Sync from Automake;
9806         this updates FSF postal mail address.
9807
9808         Sync from coreutils.
9809         * modules/unlinkdir: New file.
9810         * modules/yesno (Depends-on): Add getline.
9811         * MODULES.html.sh (File system functions): Add unlinkdir.
9812
9813 2005-05-13  Paul Eggert  <eggert@cs.ucla.edu>
9814
9815         * lib/byteswap_.h, lib/getsubopt.h, lib/iconvme.h, lib/strsep.c,
9816         lib/strsep.h:
9817         Change the initial comment to refer to GPL, not LGPL.
9818         gnulib-tool will change it to LGPL as needed.
9819
9820         * lib/__fpending.c, lib/acl.c, lib/acl.h, lib/alloca_.h, lib/allocsa.c,
9821         lib/allocsa.h, lib/argmatch.c, lib/argmatch.h, lib/argp-ba.c,
9822         lib/argp-eexst.c, lib/argp-fmtstream.c, lib/argp-fmtstream.h,
9823         lib/argp-fs-xinl.c, lib/argp-help.c, lib/argp-namefrob.h,
9824         lib/argp-parse.c, lib/argp-pv.c, lib/argp-pvh.c, lib/argp-xinl.c,
9825         lib/argp.h, lib/argz.c, lib/argz_.h, lib/asnprintf.c, lib/asprintf.c,
9826         lib/atanl.c, lib/backupfile.c, lib/backupfile.h, lib/base64.c,
9827         lib/base64.h, lib/basename.c, lib/binary-io.h, lib/byteswap_.h,
9828         lib/c-ctype.c, lib/c-ctype.h, lib/c-stack.c, lib/c-stack.h,
9829         lib/c-strtod.c, lib/calloc.c, lib/canon-host.c, lib/canonicalize.c,
9830         lib/canonicalize.h, lib/ceill.c, lib/chdir-long.c, lib/chdir-long.h,
9831         lib/chown.c, lib/classpath.c, lib/classpath.h, lib/cloexec.c,
9832         lib/closeout.c, lib/closeout.h, lib/concatpath.c, lib/config.charset,
9833         lib/copy-file.c, lib/copy-file.h, lib/cycle-check.c, lib/cycle-check.h,
9834         lib/diacrit.c, lib/diacrit.h, lib/dirfd.c, lib/dirfd.h, lib/dirname.c,
9835         lib/dirname.h, lib/dummy.c, lib/dup-safer.c, lib/dup2.c, lib/eealloc.h,
9836         lib/error.c, lib/error.h, lib/euidaccess.c, lib/exclude.c,
9837         lib/exclude.h, lib/execute.c, lib/execute.h, lib/exit.h,
9838         lib/exitfail.c, lib/exitfail.h, lib/expl.c, lib/fatal-signal.c,
9839         lib/fatal-signal.h, lib/fd-safer.c, lib/file-type.c, lib/file-type.h,
9840         lib/fileblocks.c, lib/filemode.c, lib/filemode.h, lib/findprog.c,
9841         lib/findprog.h, lib/floorl.c, lib/fnmatch.c, lib/fnmatch_.h,
9842         lib/fnmatch_loop.c, lib/fopen-safer.c, lib/free.c, lib/frexpl.c,
9843         lib/fsusage.c, lib/fsusage.h, lib/full-read.c, lib/full-read.h,
9844         lib/full-write.c, lib/full-write.h, lib/fwriteerror.c,
9845         lib/fwriteerror.h, lib/gai_strerror.c, lib/gcd.c, lib/gcd.h,
9846         lib/getaddrinfo.c, lib/getaddrinfo.h, lib/getcwd.c, lib/getcwd.h,
9847         lib/getdate.h, lib/getdate.y, lib/getdomainname.c, lib/getdomainname.h,
9848         lib/getgroups.c, lib/gethostname.c, lib/gethrxtime.c, lib/gethrxtime.h,
9849         lib/getline.c, lib/getline.h, lib/getloadavg.c, lib/getndelim2.c,
9850         lib/getndelim2.h, lib/getnline.c, lib/getnline.h, lib/getopt.c,
9851         lib/getopt1.c, lib/getopt_.h, lib/getopt_int.h, lib/getpagesize.h,
9852         lib/getpass.c, lib/getpass.h, lib/getsubopt.c, lib/getsubopt.h,
9853         lib/gettext.h, lib/gettime.c, lib/gettimeofday.c, lib/getugroups.c,
9854         lib/getusershell.c, lib/group-member.c, lib/group-member.h,
9855         lib/hard-locale.c, lib/hard-locale.h, lib/hash-pjw.c, lib/hash-pjw.h,
9856         lib/hash.c, lib/hash.h, lib/human.c, lib/human.h, lib/iconvme.c,
9857         lib/iconvme.h, lib/idcache.c, lib/inet_ntop.h, lib/intprops.h,
9858         lib/inttostr.c, lib/inttostr.h, lib/isdir.c, lib/javacomp.c,
9859         lib/javacomp.h, lib/javacomp.sh.in, lib/javaexec.c, lib/javaexec.h,
9860         lib/javaexec.sh.in, lib/lbrkprop.h, lib/lchown.c, lib/ldexpl.c,
9861         lib/linebreak.c, lib/linebreak.h, lib/linebuffer.c, lib/linebuffer.h,
9862         lib/localcharset.c, lib/localcharset.h, lib/logl.c, lib/long-options.c,
9863         lib/long-options.h, lib/lstat.c, lib/makepath.c, lib/makepath.h,
9864         lib/malloc.c, lib/mathl.h, lib/mbswidth.c, lib/mbswidth.h, lib/md5.c,
9865         lib/md5.h, lib/memcasecmp.c, lib/memcasecmp.h, lib/memchr.c,
9866         lib/memcmp.c, lib/memcoll.c, lib/memcoll.h, lib/memcpy.c, lib/memmem.c,
9867         lib/memmem.h, lib/mempcpy.c, lib/mempcpy.h, lib/memrchr.c,
9868         lib/memrchr.h, lib/memset.c, lib/minmax.h, lib/mkdir.c, lib/mkdtemp.c,
9869         lib/mkdtemp.h, lib/mkstemp.c, lib/mktime.c, lib/modechange.c,
9870         lib/modechange.h, lib/mountlist.c, lib/mountlist.h, lib/nanosleep.c,
9871         lib/obstack.c, lib/obstack.h, lib/openat.c, lib/openat.h,
9872         lib/pagealign_alloc.c, lib/pagealign_alloc.h, lib/path-concat.c,
9873         lib/path-concat.h, lib/pathmax.h, lib/pathname.h, lib/physmem.c,
9874         lib/physmem.h, lib/pipe.c, lib/pipe.h, lib/poll.c, lib/poll_.h,
9875         lib/posixtm.c, lib/posixtm.h, lib/posixver.c, lib/printf-args.c,
9876         lib/printf-args.h, lib/printf-parse.c, lib/printf-parse.h,
9877         lib/progname.c, lib/progname.h, lib/progreloc.c, lib/putenv.c,
9878         lib/quote.c, lib/quote.h, lib/quotearg.c, lib/quotearg.h, lib/raise.c,
9879         lib/readlink.c, lib/readtokens.c, lib/readtokens.h, lib/readtokens0.c,
9880         lib/readtokens0.h, lib/readutmp.c, lib/readutmp.h, lib/realloc.c,
9881         lib/ref-add.sin, lib/ref-del.sin, lib/regex.c, lib/regex.h,
9882         lib/rename.c, lib/rmdir.c, lib/rpmatch.c, lib/safe-read.c,
9883         lib/safe-read.h, lib/safe-write.c, lib/safe-write.h, lib/same.c,
9884         lib/same.h, lib/save-cwd.c, lib/save-cwd.h, lib/savedir.c,
9885         lib/savedir.h, lib/setenv.c, lib/setenv.h, lib/settime.c,
9886         lib/sh-quote.c, lib/sh-quote.h, lib/sha1.c, lib/sha1.h, lib/sig2str.c,
9887         lib/sig2str.h, lib/sincosl.c, lib/snprintf.c, lib/snprintf.h,
9888         lib/sqrtl.c, lib/stat-macros.h, lib/stat.c, lib/stdbool_.h,
9889         lib/stdint_.h, lib/stdio-safer.h, lib/stpcpy.c, lib/stpcpy.h,
9890         lib/stpncpy.c, lib/stpncpy.h, lib/strcase.h, lib/strcasecmp.c,
9891         lib/strchrnul.c, lib/strchrnul.h, lib/strcspn.c, lib/strdup.c,
9892         lib/strdup.h, lib/strerror.c, lib/strftime.c, lib/strftime.h,
9893         lib/stripslash.c, lib/strndup.c, lib/strndup.h, lib/strnlen.c,
9894         lib/strpbrk.c, lib/strpbrk.h, lib/strsep.c, lib/strsep.h, lib/strstr.c,
9895         lib/strstr.h, lib/strtod.c, lib/strtoimax.c, lib/strtok_r.c,
9896         lib/strtok_r.h, lib/strtol.c, lib/strtoll.c, lib/strtoul.c,
9897         lib/strtoull.c, lib/strverscmp.c, lib/strverscmp.h, lib/sysexit_.h,
9898         lib/tempname.c, lib/time_r.c, lib/time_r.h, lib/timegm.c, lib/timegm.h,
9899         lib/timespec.h, lib/trigl.c, lib/trigl.h, lib/ucs4-utf16.h,
9900         lib/ucs4-utf8.h, lib/unicodeio.c, lib/unicodeio.h, lib/unistd-safer.h,
9901         lib/unlocked-io.h, lib/unsetenv.c, lib/userspec.c, lib/utf16-ucs4.h,
9902         lib/utf8-ucs4.h, lib/utime.c, lib/utimecmp.c, lib/utimecmp.h,
9903         lib/utimens.c, lib/vasnprintf.c, lib/vasnprintf.h, lib/vasprintf.c,
9904         lib/vasprintf.h, lib/version-etc-fsf.c, lib/version-etc.c,
9905         lib/version-etc.h, lib/vsnprintf.c, lib/vsnprintf.h, lib/w32spawn.h,
9906         lib/wait-process.c, lib/wait-process.h, lib/xalloc-die.c, lib/xalloc.h,
9907         lib/xallocsa.c, lib/xallocsa.h, lib/xasprintf.c, lib/xgetcwd.c,
9908         lib/xgetcwd.h, lib/xgetdomainname.c, lib/xgetdomainname.h,
9909         lib/xgethostname.c, lib/xmalloc.c, lib/xmemcoll.c, lib/xnanosleep.c,
9910         lib/xreadlink.c, lib/xreadlink.h, lib/xsetenv.c, lib/xsetenv.h,
9911         lib/xsize.h, lib/xstrndup.c, lib/xstrndup.h, lib/xstrtod.c,
9912         lib/xstrtod.h, lib/xstrtoimax.c, lib/xstrtol.c, lib/xstrtol.h,
9913         lib/xstrtoumax.c, lib/xtime.h, lib/xvasprintf.c, lib/xvasprintf.h,
9914         lib/yesno.c, lib/yesno.h:
9915         Update FSF postal mail address.
9916
9917 2005-05-13  Paul Eggert  <eggert@cs.ucla.edu>
9918
9919         * MODULES.html.sh, README, gnulib-tool, tests/test-base64.c,
9920         tests/test-memmem.c, tests/test-stpncpy.c:
9921         Update FSF postal mail address.
9922
9923 2005-05-13  Bruno Haible  <bruno@clisp.org>
9924
9925         * lib/stdint_.h (int64_t, uint64_t, int_least64_t, uint_least64_t,
9926         int_fast64_t, uint_fast64_t, intmax_t, uintmax_t, INT64_MIN, INT64_MAX,
9927         UINT64_MAX, INT_LEAST64_MIN, INT_LEAST64_MAX, UINT_LEAST64_MAX,
9928         INT_FAST64_MIN, INT_FAST64_MAX, UINT_FAST64_MAX, INTMAX_MIN,
9929         INTMAX_MAX, UINTMAX_MAX, INT64_C, UINT64_C, INTMAX_C, UINTMAX_C):
9930         Add support for 64-bit integers in the MSVC compiler.
9931
9932 2005-05-12  Sergey Poznyakoff  <gray@Mirddin.farlep.net>
9933
9934         * modules/getdate (Makefile.am): Add getdate.c to EXTRA_DIST
9935
9936 2005-05-12  Eric Blake  <ebb9@byu.net>  (tiny change)
9937
9938         * gnulib-tool (func_import): Sort and uniquify recommended includes.
9939
9940 2005-05-11  Paul Eggert  <eggert@cs.ucla.edu>
9941
9942         * doc/getdate.texi (General date syntax): Don't say that date
9943         date --iso-8601=ns generates acceptable dates; it doesn't yet.
9944         Problem reported by Nic Ferrier.
9945
9946 2005-05-10  Yoann Vandoorselaere <yoann.v@prelude-ids.com>
9947
9948         * lib/getaddrinfo.c: Don't fail when SOCK_STREAM or SOCK_DGRAM are
9949         specified in ai_socktype. Fix invalid ai_protocol
9950         check. ai_protocol is usually set to 0 or depending on
9951         ai_family/ai_socktype to IPPROTO_TCP / IPPROTO_UDP.  Checking for
9952         SOCK_STREAM / SOCK_DGRAM in ai_protocol was invalid.  Set
9953         ai_socktype / ai_protocol in the returned addrinfo structure.
9954
9955 2005-05-10  Simon Josefsson  <jas@extundo.com>
9956
9957         * m4/getaddrinfo.m4: Look in libnsl/libsocket for getaddrinfo, from
9958         Yoann Vandoorselaere <yoann.v@prelude-ids.com>.
9959
9960 2005-05-10  Karl Berry  <karl@gnu.org>
9961
9962         * doc/fdl.texi, gpl.texi, lgpl.texi, COPYING: update FSF address
9963         (from http://www.gnu.org/licenses).
9964         * doc/COPYING.LIB: also rename to COPYING.LESSER.
9965         * doc/COPYING.DOC: remove; per rms, only needed in doc files, so
9966         fdl.texi suffices.
9967
9968 2005-05-10  Karl Berry  <karl@gnu.org>
9969
9970         * config/srclist.txt (COPYING.LESSER): rename from COPYING.LIB.
9971         (COPYING.DOC): remove.
9972
9973         * config/srclist-update: new FSF address.
9974
9975 2005-05-10  Derek Price  <derek@ximbiot.com>
9976
9977         * m4/getopt.m4 (gl_GETOPT): Check for Solaris 10 bug, not decl, when
9978         possible.
9979
9980 2005-05-09  Yoann Vandoorselaere <yoann.v@prelude-ids.com>
9981             Bruno Haible  <bruno@clisp.org>
9982
9983         * modules/inet_ntop: New file.
9984         * MODULES.html.sh (Support for systems lacking POSIX:2001): Add
9985         inet_ntop.
9986
9987 2005-05-09  Yoann Vandoorselaere <yoann.v@prelude-ids.com>
9988             Bruno Haible  <bruno@clisp.org>
9989
9990         * m4/inet_ntop.m4: New file.
9991
9992 2005-05-09  Yoann Vandoorselaere <yoann.v@prelude-ids.com>
9993             Bruno Haible  <bruno@clisp.org>
9994
9995         * lib/inet_ntop.h: New file.
9996         * lib/inet_ntop.c: New file, from glibc with modifications.
9997
9998 2005-05-09  Paul Eggert  <eggert@cs.ucla.edu>
9999
10000         * modules/time_r (License): Change to LGPL.
10001         * modules/extensions (License): Change to LGPL.  Actually,
10002         the license is more permissive than that, but currently gnulib-tool
10003         doesn't know how to handle more-permissive licenses.
10004
10005         * modules/stat-macros (Depends-on): Don't depend on stat-macros (!).
10006         Problem reported by Dave Love.
10007
10008 2005-05-08  Jim Meyering  <jim@meyering.net>
10009
10010         * lib/classpath.c (PATH_SEPARATOR): Remove insignificant trailing
10011         blank.
10012
10013 2005-05-06  Paul Eggert  <eggert@cs.ucla.edu>
10014
10015         * modules/argmatch (Depends-on): Add stdbool.
10016         * modules/backupfile (Depends-on): Likewise.
10017         * modules/chdir-long (Depends-on): Likewise.
10018         * modules/closeout (Depends-on): Likewise.
10019         * modules/cycle-check (Depends-on): Likewise.
10020         * modules/dirname (Depends-on): Likewise.
10021         * modules/fnmatch (Depends-on): Likewise.
10022         * modules/fsusage (Depends-on): Likewise.
10023         * modules/fwriteerror (Depends-on): Likewise.
10024         * modules/getcwd (Depends-on): Likewise.
10025         * modules/getloadavg (Depends-on): Likewise.
10026         * modules/hard-locale (Depends-on): Likewise.
10027         * modules/makepath (Depends-on): Likewise.
10028         * modules/mountlist (Depends-on): Likewise.
10029         * modules/nanosleep (Depends-on): Likewise.
10030         * modules/posixtm (Depends-on): Likewise.
10031         * modules/quotearg (Depends-on): Likewise.
10032         * modules/readtokens (Depends-on): Likewise.
10033         * modules/readtokens0 (Depends-on): Likewise.
10034         * modules/readutmp (Depends-on): Likewise.
10035         * modules/save-cwd (Depends-on): Likewise.
10036         * modules/strftime (Depends-on): Likewise.
10037         * modules/userspec (Depends-on): Likewise.
10038         * modules/utimecmp (Depends-on): Likewise.
10039         * modules/xgetcwd (Depends-on): Likewise.
10040         * modules/xnanosleep (Depends-on): Likewise.
10041         * modules/xstrtod (Depends-on): Likewise.
10042         * modules/yesno (Depends-on): Likewise.
10043
10044 2005-05-05  Paul Eggert  <eggert@cs.ucla.edu>
10045
10046         * m4/getopt.m4 (gl_GETOPT): Check for Solaris 10 getopt, and avoid
10047         needless checks.
10048
10049 2005-05-01  Paul Eggert  <eggert@cs.ucla.edu>
10050
10051         Merge from coreutils.  Among other things,
10052         add bulletproofing for cases where stdin, stdout, or stderr are closed.
10053         * lib/fd-safer.c: New file.
10054         * lib/fcntl-safer.h, open-safer.c: Remove.
10055         * lib/chdir-long.c: Fix comment "fetish" -> "coreutils".
10056         * lib/dup-safer.c: Include unistd-safer.h first.
10057         Don't include errno.h.
10058         (dup_safer) [!defined F_DUPFD]: Let fd_safer do the real work.
10059         * lib/file-type.h: Don't assume invoker included sys/stat.h first.
10060         * lib/file-type.c: Rely on file-type.h change.
10061         * lib/getloadavg.c: Include unistd-safer.h.
10062         (getloadavg): Use safer open.
10063         * lib/getusershell.c: Include "stdio-safer.h".
10064         (getusershell): Use safer fopen.
10065         * lib/long-options.c (long_options): Use NULL rather than 0.
10066         * lib/modechange.h (mode_free): Remove; all callers changed to invoke
10067         'free'.
10068         * lib/modechange.c: Likewise.
10069         xstrtol.h, stdbool.h, stddef.h: Don't include; no longer needed.
10070         (MODE_DONE): New constant.
10071         (struct mode_change): Remove 'next' member.
10072         (make_node_op_equals): New function; like the old one of the
10073         same name, except it allocates an array.
10074         (mode_compile, mode_create_from_ref): Use it.
10075         (mode_compile): Allocate result as an array, not a linked list.
10076         Parse octal string ourself, so that we catch mistakes like "+0".
10077         (mode_adjust): Arg is an array, not a linked list.
10078         * lib/modechange.c: Include stat-macros.h, xalloc.h.
10079         (S_ISDIR, S_ISUID, S_ISGID, S_ISVTX, S_IRUSR, S_IWUSR, S_IXUSR):
10080         (S_IRGRP, S_IWGRP, S_IXGRP, S_IROTH, S_IWOTH, S_IXOTH, S_IRXWU):
10081         (S_IRWXG, S_IRWXO, CHMOD_MODE_BITS):
10082         Remove.  This is now stat-macros.h's job.
10083         (talloc): Remove.  All callers replaced by xalloc, so that
10084         our invokers don't have to worry about reporting memory failures.
10085         (make_node_op_equals): Remove.
10086         (MODE_ORDINARY_CHAGE, MODE_X_IF_ANY_X, MODE_COPY_EXISTING):
10087         New constants.
10088         (struct mode_change): Moved here from modechange.h.
10089         (mode_append_entry): Remove.
10090         (mode_compile): Remove MASKED_OPS arg, since it encouraged
10091         apps to have incorrect behavior.  Use simpler algorithm for head
10092         and tail.  Don't futz with umask; that's now the job of mode_adjust.
10093         Detect more invalid usages rather than having somewhat-random behavior.
10094         Don't insert an "a=" action, as that leads to incorrect behavior.
10095         (mode_compile, mode_create_from_ref): Return NULL on error instead
10096         of an enum, since now there's only one way to have an error.  All
10097         callers changed.
10098         (mode_adjust): Accept new arg UMASK_VALUE, and interpret it
10099         at the correct time.  Simplify calculation of "+u" and its ilk.
10100         Don't mishandle "+X".
10101         (mode_free): Remove "register" and localize decls.
10102         * lib/modechange.h (MODE_X_IF_ANY_X, MODE_COPY_EXISTING):
10103         (struct mode_change): Move to modechange.c; callers don't
10104         need to see this stuff.
10105         (MODE_MASK_EQUALS, MODE_MASK_PLUS, MODE_MASK_MINUS, MODE_MASK_ALL):
10106         (MODE_INVALID, MODE_MEMORY_EXHAUSTED, MODE_BAD_REFERENCE): Remove.
10107         (mode_change, mode_adjust): Reflect the new signatures noted above.
10108         * lib/nanosleep.c (rpl_nanosleep): Include "timespec.h" before macros
10109         that might redefine system include files.
10110         (siginterrupt) [!HAVE_SIGINTERRUPT]: New macro.
10111         (my_usleep): Use NULL rather than (void *) 0.
10112         (rpl_nanosleep) [!defined SA_NOCLDSTOP]:
10113         Use siginterrupt to specify that system calls should be interrupted.
10114         (rpl_nanosleep): Move initialization of suspended closer to call of
10115         my_usleep.
10116         * lib/readutmp.h (read_utmp): New arg OPTIONS.  All uses changed.
10117         * lib/readutmp.c: Likewise.  Include signal.h, stdbool.h.
10118         (desirable_utmp_entry): New function.
10119         (read_utmp) [defined UTMP_NAME_FUNCTION]: Redo memory allocation
10120         using x2nrealloc, to simplify logic.
10121         (read_utmp) [!defined UTMP_NAME_FUNCTION]: Check for overflow in
10122         size calculation.  Do not assume utmp file is a regular file.
10123         * lib/readutmp.h (UT_PID): Moved here from ../src/who.c.
10124         (READ_UTMP_CHECK_PIDS): New constant.
10125         * lib/save-cwd.c: Include unistd-safer.h.
10126         (save_cwd): Use fd_safer.
10127         * lib/tempname.c (S_ISDIR, S_IRUSR, S_IRUSR, S_IWUSR, S_IXUSR): Remove.
10128         [!_LIBC] Include "stat-macros.h" instead.
10129         * lib/unistd-safer.h (fd_safer): New decl.
10130
10131 2005-05-01  Paul Eggert  <eggert@cs.ucla.edu>
10132
10133         * modules/getloadavg (Depends-on): Add unistd-safer.
10134         * modules/getusershell (Depends-on): Add stdio-safer.
10135         * modules/lstat (Depends-on): Remove xalloc.
10136         * modules/mkstemp (Depends-on): Add stat-macros.
10137         * modules/modechange (Depends-on): Remove xstrtol.
10138         Add stat-macros, xalloc.
10139         * modules/save-cwd (Depends-on): Add unistd-safer.
10140         * modules/stdio-safer (Makefile.am): Remove lib_SOURCES.
10141         * modules/unistd-safer (Files): Add lib/fd-safer.c
10142         (Makefile.am): Remove lib_SOURCES.
10143
10144         * MODULES.html.sh (Enhancements for POSIX:2001 functions):
10145         Remove fcntl-safer; unistd-safer supersedes it.
10146
10147 2005-05-01  Paul Eggert  <eggert@cs.ucla.edu>
10148
10149         * m4/euidaccess.m4 (gl_PREREQ_EUIDACCESS): Don't require
10150         AC_HEADER_STAT.
10151         * m4/lchown.m4 (gl_FUNC_CHOWN): Likewise.
10152         (gl_PREREQ_CHOWN): Remove.
10153         * m4/lstat.m4 (gl_FUNC_LSTAT): Require AC_FUNC_LSTAT instead of calling
10154         it.  Don't require AC_HEADER_STAT.
10155         (gl_PREREQ_LSTAT): Remove.
10156         * m4/mkstemp.m4 (gl_PREREQ_TEMPNAME): Check stdint.h only once.
10157         Don't require AC_HEADER_STAT.
10158         * m4/rmdir.m4 (gl_FUNC_RMDIR): Don't require AC_HEADER_STAT.
10159         (gl_PREREQ_RMDIR): Remove.
10160         * m4/canonicalize.m4 (AC_FUNC_CANONICALIZE_FILE_NAME): Don't
10161         mention stat-macros.h or AC_HEADER_STAT, since we'll make
10162         the stat-macros module a prerequisite.
10163         * m4/file-type.m4 (gl_FILE_TYPE): Likewise.
10164         * m4/filemode.m4 (gl_FILEMODE): Likewise.
10165         * m4/makepath.m4 (gl_MAKEPATH): Likewise.
10166         * m4/modechange.m4 (gl_MODECHANGE): Likewise.
10167         * m4/clock_time.m4 (gl_CLOCK_TIME): Use gl_ rather than fetish_ for
10168         variable names.
10169         * m4/rmdir-errno.m4 (gl_FUNC_RMDIR_NOTEMPTY): Renamed from
10170         fetish_FUNC_RMDIR_NOTEMPTY.  All uses changed.  Use gl_ for
10171         variable prefixes.
10172         * m4/fcntl-safer.m4: Remove.
10173         * m4/stdio-safer.m4 (gl_STDIO_SAFER): Use AC_LIBSOURCES and AC_LIBOBJ.
10174         * m4/unistd-safer.m4 (gl_UNISTD_SAFER): Likewise.
10175         Invoke gl_PREREQ_FD_SAFER.
10176         (gl_PREREQ_FD_SAFER): New macro.
10177         * m4/nanosleep.m4 (gl_PREREQ_NANOSLEEP): Check for siginterrupt.
10178         * m4/readutmp.m4 (gl_READUTMP): Require AC_C_INLINE.
10179         Use AC_CHECK_HEADERS_ONCE and AC_CHECK_FUNCS_ONCE when possible.
10180         Remove duplicate call to AC_LIBOBJ(readutmp).
10181         (gl_PREREQ_READUTMP): Remove.  All uses inlined.
10182
10183         * m4/mmap-anon.m4 (gl_FUNC_MMAP_ANON): Check for message, not for
10184         MAP_ANON.  Problem reported by Moriyoshi Koizumi to bug-cvs.
10185
10186 2005-05-01  Paul Eggert  <eggert@cs.ucla.edu>
10187
10188         * MODULES.html.sh (Misc): Add byteswap.
10189
10190 2005-05-01  Oskar Liljeblad  <oskar@osk.mine.nu>
10191
10192         * modules/getcwd (Depends-on): Add extensions.
10193         * modules/openat (Depends-on): Likewise.
10194
10195 2005-05-01  Oskar Liljeblad  <oskar@osk.mine.nu>
10196
10197         * modules/byteswap: New file.
10198
10199 2005-05-01  Oskar Liljeblad  <oskar@osk.mine.nu>
10200
10201         * m4/byteswap.m4: New file.
10202
10203 2005-05-01  Oskar Liljeblad  <oskar@osk.mine.nu>
10204
10205         * lib/byteswap_.h: New file.
10206
10207 2005-04-25  Karl Berry  <karl@gnu.org>
10208
10209         * m4/gettext.m4: Update from GNU gettext 0.14.4.
10210
10211 2005-04-25  Albert Chin  <china@thewrittenword.com>
10212
10213         * lib/regex.c: Include <stdio.h>, as a workaround to a Compaq Desktop
10214         Toolkit C bug.
10215
10216 2005-04-21  Oskar Liljeblad  <oskar@osk.mine.nu>
10217
10218         * gnulib-tool (Options): Add -s for --symlink/--symbolic.
10219         (func_ln_if_changed) Remove forcibly for no error message
10220         in case file does not exist.
10221
10222 2005-04-19  Simon Josefsson  <jas@extundo.com>
10223
10224         * gnulib-tool (Options): Make --symlink mean --symbolic.
10225
10226 2005-04-18  Oskar Liljeblad <oskar@osk.mine.nu>
10227
10228         * doc/gnulib.texi (Initial import): Fix.  Mention --aux-dir.
10229
10230 2005-04-16  Simon Josefsson  <jas@extundo.com>
10231
10232         * modules/getpass-gnu (Makefile.am): Don't mention getpass.h.
10233
10234 2005-04-15  Simon Josefsson  <jas@extundo.com>
10235
10236         * m4/getpass.m4 (gl_FUNC_GETPASS): Use AC_LIBSOURCES.
10237
10238 2005-04-15  Simon Josefsson  <jas@extundo.com>
10239
10240         * gnulib-tool: Rename --symlink to --symbolic.
10241
10242 2005-04-15  Oskar Liljeblad <oskar@osk.mine.nu>
10243
10244         * gnulib-tool: Add -s, --symlink option to gnulib-tool to make
10245         symbolic links to files instead of copying/moving.  Add --aux-dir,
10246         specifying directory relative --dir where auxiliary build tools
10247         are placed.
10248
10249 2005-04-14  Bruno Haible  <bruno@clisp.org>
10250
10251         * modules/allocsa (License): Change to LGPL.
10252         Requested by Yoann Vandoorselaere <yoann@prelude-ids.org>.
10253
10254 2005-04-13  Paul Eggert  <eggert@cs.ucla.edu>
10255
10256         * lib/getdate.y (zone): Allow relunit_snumber after tZONE, so
10257         that "UTC +1 second" continues to work.  Problem reported
10258         by Dmitry V. Levin.
10259         (relunit_snumber): New rule.
10260         (relunit): Use it.
10261
10262 2005-04-12  Paul Eggert  <eggert@cs.ucla.edu>
10263
10264         * lib/getdate.y (universal_time_zone_table): New constant.
10265         (time_zone_table): Remove GMT, UT, UTC entries; they're now in
10266         universal_time_zone_table.
10267         (lookup_zone): Prefer universal_time_zone_table to
10268         local_time_zone_table, so that "GMT" time stamps are allowed in
10269         London during the summer.  Problem reported by Ian Abbott.
10270
10271 2005-04-12  Jim Meyering  <jim@meyering.net>
10272
10273         * lib/human.c (humblock): Set *options even when returning due to
10274         xstrtoumax conversion failure.  Thanks to a used-uninitialized
10275         warning from gcc-4.
10276
10277 2005-04-09  Jim Meyering  <jim@meyering.net>
10278
10279         * lib/posixtm.c (posixtime) [lint]: Avoid spurious warning from gcc-4's
10280         -Wuninitialized: initialize tm0.tm_year.
10281
10282 2005-04-04  Paul Eggert  <eggert@cs.ucla.edu>
10283
10284         * lib/getdate.y (parser_control): rels_seen is now a boolean, not a
10285         count, since there's no maximum.  All uses changed.
10286         Add member dsts_seen.
10287         (local_zone): Accumulate dsts_seen rather than relying on tm_isdst
10288         not being INT_MAX.
10289         (get_date): Initialize dsts_seen, and check that it doesn't go over 1.
10290         Use pc_rels_seen to decide whther a date is absolute.
10291
10292         * lib/getdate.y (number): Don't overwrite year.
10293         (get_date): Initialize pc.year.digits to 0, not 4, to enable above
10294         check.
10295
10296 2005-04-02  Simon Josefsson  <jas@extundo.com>
10297
10298         * lib/getaddrinfo.h: Fix OpenBSD compilation failure, inspired by tiny
10299         patch from Yoann Vandoorselaere <yoann@prelude-ids.org>.
10300
10301 2005-03-28  Eric Blake  <ebb9@byu.net>  (tiny change)
10302
10303         * m4/getcwd-path-max.m4: Return success on systems such as Cygwin
10304         where no absolute path name can be longer than PATH_MAX.
10305
10306 2005-03-27  Jim Meyering  <jim@meyering.net>
10307
10308         * lib/argmatch.c: Clarify comment: null-terminated -> NULL-terminated.
10309
10310 2005-03-26  Paul Eggert  <eggert@cs.ucla.edu>
10311
10312         * lib/intprops.h (INT_STRLEN_BOUND, INT_BUFSIZE_BOUND):
10313         "one's complement" -> "ones' complement" in comment, as per Knuth.
10314         "value of type" -> "type or expression" in comment.
10315         * lib/mktime.c, strftime.c: Propagate intprops.h comment nits.
10316
10317 2005-03-26  Jim Meyering  <jim@meyering.net>
10318
10319         Comment nits.
10320         * lib/intprops.h: Add the apostrophe in `(one|two)'s complement'.
10321         Correct typos: s/or/of/.
10322
10323 2005-03-26  Jim Meyering  <jim@meyering.net>
10324
10325         * modules/check-include-files: Move to ../ and rename to...
10326         * check-module: ...this.
10327
10328 2005-03-25  Jim Meyering  <jim@meyering.net>
10329
10330         * modules/xvasprintf (Files): Add xalloc.h.
10331
10332 2005-03-23  Paul Eggert  <eggert@cs.ucla.edu>
10333
10334         * modules/gettext (Files): config/config.rpath ->
10335         build-aux/config.rpath
10336         * modules/iconv (Files): Likewise.
10337         Problem reported by Oskar Liljeblad.
10338
10339 2005-03-23  Jim Meyering  <jim@meyering.net>
10340
10341         * modules/check-include-files: New script to check for
10342         missing dependencies, multiple includes, etc.
10343
10344         * modules/c-strtold (Depends-on): Add xalloc.
10345         * modules/c-strtod (Depends-on): Add xalloc.
10346         * modules/hash (Depends-on): Add xalloc.
10347         (Files): Remove lib/xalloc.h.
10348
10349         * modules/gethrxtime (Files): Add lib/gethrxtime.h.
10350         * modules/userspec (Files): Add lib/inttostr.h.
10351
10352 2005-03-23  Jim Meyering  <jim@meyering.net>
10353
10354         * lib/canonicalize.c: Remove duplicate `#include "stat-macros.h"'.
10355
10356 2005-03-22  Jim Meyering  <jim@meyering.net>
10357
10358         * modules/stat-macros: New module.
10359         * modules/canonicalize, modules/euidaccess, modules/file-type,
10360         * modules/filemode, modules/lchown, modules/makepath,
10361         * modules/rmdir, modules/stat: Depend on new stat-macros module
10362         rather than listing lib/stat-macros.h manually.
10363         Don't add stat-macros.h to lib_SOURCES or list it in Files: section.
10364
10365 2005-03-22  Jim Meyering  <jim@meyering.net>
10366
10367         * m4/stat-macros.m4 (gl_STAT_MACROS): New file/macro.
10368
10369 2005-03-22  Bruno Haible  <bruno@clisp.org>
10370
10371         * config/srclist.txt: Replace target directory 'config' with
10372         'build-aux'.
10373         * config/config.guess, config.sub, config.rpath, depcomp, install-sh:
10374         * config/mdate-sh, missing, mkinstalldirs, texinfo.tex: Move to
10375         ../build-aux/.
10376
10377 2005-03-21  Paul Eggert  <eggert@cs.ucla.edu>
10378
10379         * modules/chdir-long (Depends-on): Add mempcpy.
10380
10381         * modules/acl, modules/backupfile, modules/c-strtod,
10382         modules/c-strtold, modules/canon-host, modules/canonicalize,
10383         modules/cloexec, modules/closeout, modules/dirfd, modules/dirname,
10384         modules/exclude, modules/exitfail, modules/file-type,
10385         modules/filemode, modules/fpending, modules/fsusage, modules/getcwd,
10386         modules/getdate, modules/getline, modules/getpagesize,
10387         modules/getpass, modules/getugroups, modules/group-member,
10388         modules/hard-locale, modules/hash, modules/human, modules/idcache,
10389         modules/inttostr, modules/long-options, modules/makepath,
10390         modules/md5, modules/memcasecmp, modules/memcoll,
10391         modules/modechange, modules/mountlist, modules/path-concat,
10392         modules/pathmax, modules/physmem, modules/posixtm, modules/posixver,
10393         modules/quote, modules/quotearg, modules/readtokens, modules/readutmp,
10394         modules/safe-read, modules/safe-write, modules/same, modules/savedir,
10395         modules/settime, modules/sha1, modules/sig2str, modules/strdup,
10396         modules/strftime, modules/strndup, modules/strverscmp,
10397         modules/timespec, modules/unlocked-io, modules/userspec,
10398         modules/utimecmp, modules/utimens, modules/xalloc, modules/xstrtol,
10399         modules/yesno:
10400         Remove lib_SOURCES line from Makefile.am section, as this is now
10401         done automatically by the corresponding Autoconf macro.
10402
10403 2005-03-21  Jim Meyering  <jim@meyering.net>
10404
10405         Changes imported from coreutils.
10406
10407         * lib/cycle-check.c: Don't include xalloc.h.
10408
10409         * lib/path-concat.c: Don't include assert.h.
10410         (path_concat): Remove assertion that would have triggered
10411         for ABASE starting with more than one slash.
10412         Reported by Andreas Schwab.
10413
10414         * lib/path-concat.c (path_concat): Set *BASE_IN_RESULT
10415         properly when ABASE is an absolute file name.
10416         Correct the description of this function.
10417         Include <assert.h>.
10418         Add an assertion and a test driver.
10419         This fixes a bug introduced on 2004-07-02.
10420         Andreas Schwab reported the resulting failure of cp --parents:
10421         http://lists.gnu.org/archive/html/bug-coreutils/2005-01/msg00130.html
10422
10423 2005-03-21  Jim Meyering  <jim@meyering.net>
10424
10425         * m4/chdir-long.m4 (gl_PREREQ_CHDIR_LONG): Invoke gl_FUNC_MEMRCHR.
10426         * m4/memrchr.m4 (gl_FUNC_MEMRCHR): Check for memrchr decl.
10427
10428 2005-03-21  Jim Meyering  <jim@meyering.net>
10429         and  Paul Eggert  <eggert@cs.ucla.edu>
10430
10431         * m4/acl.m4, m4/backupfile.m4, m4/c-strtod.m4, m4/canon-host.m4,
10432         m4/canonicalize.m4, m4/cloexec.m4, m4/closeout.m4, m4/dirfd.m4,
10433         m4/dirname.m4, m4/exclude.m4, m4/exitfail.m4, m4/file-type.m4,
10434         m4/filemode.m4, m4/fpending.m4, m4/fsusage.m4, m4/getcwd.m4,
10435         m4/getdate.m4, m4/getline.m4, m4/getpagesize.m4, m4/getpass.m4,
10436         m4/getugroups.m4, m4/group-member.m4, m4/hard-locale.m4, m4/hash.m4,
10437         m4/human.m4, m4/idcache.m4, m4/inttostr.m4, m4/long-options.m4,
10438         m4/makepath.m4, m4/md5.m4, m4/memcasecmp.m4, m4/memcoll.m4,
10439         m4/modechange.m4, m4/mountlist.m4, m4/nanosleep.m4, m4/path-concat.m4,
10440         m4/pathmax.m4, m4/physmem.m4, m4/posixtm.m4, m4/posixver.m4,
10441         m4/quote.m4, m4/quotearg.m4, m4/readtokens.m4, m4/readutmp.m4,
10442         m4/safe-read.m4, m4/safe-write.m4, m4/same.m4, m4/savedir.m4,
10443         m4/settime.m4, m4/sha1.m4, m4/sig2str.m4, m4/strdup.m4, m4/strftime.m4,
10444         m4/strndup.m4, m4/strverscmp.m4, m4/timespec.m4, m4/unlocked-io.m4,
10445         m4/userspec.m4, m4/utimecmp.m4, m4/utimens.m4, m4/xalloc.m4,
10446         m4/xnanosleep.m4, m4/xstrtol.m4, m4/yesno.m4:
10447         Use AC_LIBSOURCES and AC_LIBOBJ to indicate source and object files
10448         for these modules.
10449
10450 2005-03-18  Paul Eggert  <eggert@cs.ucla.edu>
10451
10452         * lib/strftime.c (my_strftime): If the underlying strftime returns 0
10453         (which shouldn't happen), generate nothing instead of returning 0
10454         immediately, so that nstrftime (NULL, ...) doesn't return 0.
10455
10456 2005-03-16  Bruno Haible  <bruno@clisp.org>
10457
10458         * modules/stdint (Makefile.am): Use HAVE_LONG_LONG_64BIT instead of
10459         HAVE_LONGLONG_64BIT.
10460
10461 2005-03-16  Bruno Haible  <bruno@clisp.org>
10462
10463         * m4/stdint.m4 (gl_STDINT_H): Define HAVE_LONG_LONG_64BIT instead of
10464         HAVE_LONGLONG_64BIT.
10465
10466 2005-03-16  Bruno Haible  <bruno@clisp.org>
10467
10468         * lib/stdint_.h: Use HAVE_LONG_LONG_64BIT instead of
10469         HAVE_LONGLONG_64BIT.
10470
10471 2005-03-15  Paul Eggert  <eggert@cs.ucla.edu>
10472
10473         * lib/strftime.c (my_strftime): Prepend space to format so that we can
10474         reliably distinguish strftime failure from empty output on POSIX
10475         hosts.
10476
10477 2005-03-15  Paul Eggert  <eggert@cs.ucla.edu>
10478
10479         * lib/iconvme.c (SIZE_MAX): New macro, if not already defined.
10480         (iconv_string): Don't guess a size-zero buffer, as that might cause
10481         buffer overrun.  Instead, avoid multiplying by MB_LEN_MAX if the
10482         result would be 'too large', where 'too large' is (heuristically)
10483         the square root of SIZE_MAX, divided by MB_LEN_MAX to allay
10484         overflow concerns.  This will prevent some unwanted malloc failures
10485         when the inputs are very large.
10486
10487 2005-03-15  Karl Berry  <karl@gnu.org>
10488
10489         * config/srclist.txt (config.rpath): from gettext.
10490         * config/config.rpath: update.
10491
10492 2005-03-15  Bruno Haible  <bruno@clisp.org>
10493
10494         * lib/regex.c (byte_re_match_2_internal): Rename local variable 'not'
10495         to 'negate'.
10496
10497         * lib/regex.c (byte_re_match_2_internal): Reduce scope of same_str_p
10498         variable.
10499
10500         * lib/regex.c (EXTEND_BUFFER, regcomp): Cast the realloc/malloc
10501         results.
10502
10503 2005-03-14  Simon Josefsson  <jas@extundo.com>
10504
10505         * lib/timegm.h: Use proper prototype CPP guards, reported by Dave Love
10506         <fx@gnu.org>.
10507
10508 2005-03-14  Paul Eggert  <eggert@cs.ucla.edu>
10509
10510         * lib/mktime.c (TYPE_TWOS_COMPLEMENT, TYPE_ONES_COMPLEMENT,
10511         TYPE_SIGNED_MAGNITUDE, TYPE_MINIMUM, TYPE_MAXIMUM): Sync from
10512         intprops.h.
10513         * lib/strtol.c: Likewise.
10514
10515 2005-03-14  Jim Meyering  <jim@meyering.net>
10516
10517         * lib/strftime.c (my_strftime) [HAVE_STRFTIME && ! (_NL_CURRENT
10518         && HAVE_STRUCT_ERA_ENTRY)]: Initialize the first byte of ubuf[]
10519         to be nonzero so that we (and caller) can detect the difference
10520         between a valid zero-length expansion and an error return, even
10521         when the underlying strftime fails before writing anything into
10522         that location.
10523
10524 2005-03-14  Bruno Haible  <bruno@clisp.org>
10525
10526         * m4/lib-link.m4, gettext.m4, nls.m4, po.m4:
10527         Update from GNU gettext 0.14.3.
10528
10529 2005-03-10  Jim Meyering  <jim@meyering.net>
10530
10531         * m4/save-cwd.m4 (gl_SAVE_CWD): Check for fchdir.
10532
10533 2005-03-10  Jim Meyering  <jim@meyering.net>
10534
10535         * lib/save-cwd.c [!HAVE_FCHDIR]: Define open, fchdir, and chdir_long
10536         so that this module works on systems without fchdir.
10537
10538 2005-03-09  Paul Eggert  <eggert@cs.ucla.edu>
10539
10540         Factor int-properties macros into a single file, except for
10541         glibc-related files.
10542         * lib/intprops.h: New file.
10543         * lib/getloadavg.c: Include it instead of limits.h.
10544         (INT_STRLEN_BOUND): Remove.
10545         * lib/human.c: Include intprops.h.
10546         (group_number): Use INT_STRLEN_BOUND instead of rolling it ourself.
10547         * lib/human.h (LONGEST_HUMAN_READABLE): Use 146/485 rather than
10548         302/1000.
10549         * lib/inttostr.h: Include intprops.h instead of limits.h.
10550         (INT_STRLEN_BOUND, INT_BUFSIZE_BOUND): Remove.
10551         * lib/mktime.c (TYPE_IS_INTEGER, TYPE_TWOS_COMPLEMENT): New macros,
10552         for consistency with intprops.h.
10553         (time_t_is_integer, twos_complement_arithmetic): Use them.
10554         * lib/sig2str.h: Include <signal.h>, intprops.h.
10555         (INT_STRLEN_BOUND): Remove.
10556         * lib/strftime.c (TYPE_SIGNED): Remove.
10557         (INT_STRLEN_BOUND): Switch to same implementation as intprops.h.
10558         * lib/strtol.c: Adjust comments to match intprops.h.
10559         * lib/userspec.c: Include intprops.h.
10560         (TYPE_SIGNED, TYPE_MINIMUM, TYPE_MAXIMUM): Remove.
10561         * lib/utimecmp.c, xnanosleep.c, xstrtol.c: Likewise.
10562         * lib/utimecmp.c (utimecmp): Use TYPE_IS_INTEGER, TYPE_TWOS_COMPLEMENT
10563         instead of rolling our own expressions.
10564         * lib/xstrtol.c: Include xstrtol.h first, to test interface.
10565
10566         * lib/strftime.c: Include <stdbool.h>.  Use bool where appropriate,
10567         instead of int.
10568         (my_strftime): Do not mishandle years close to INT_MAX, by doing
10569         the right thing even if adding 1900 would overflow.  Similarly
10570         for tm_mon + 1 and tm_yday + 1.
10571         Make %Y always equivalent to %C%y, and similarly for %G and %g.
10572         (DO_NUMBER, DO_NUMBER_SPACEPAD): Set digits to d, not a conditional.
10573         (DO_SIGNED_NUMBER): New macro.
10574         (my_strftime) [HAVE_TZNAME]: Don't dump core if tp->tm_dst > 1.
10575
10576 2005-03-07  Bruno Haible  <bruno@clisp.org>
10577
10578         * m4/mmap-anon.m4 (MAP_FILE, MAP_FAILED): Remove definitions.
10579
10580 2005-03-07  Bruno Haible  <bruno@clisp.org>
10581
10582         * lib/pagealign_alloc.c (MAP_FILE, MAP_FAILED): Define fallbacks.
10583
10584 2005-03-04  Derek R. Price  <derek@ximbiot.com>
10585
10586         * gnulib-tool (func_cp_if_changed, func_mv_if_changed): New functions.
10587         (func_import): Only replace files via --import when they have actually
10588         changed.
10589
10590 2005-03-03  Derek R. Price  <derek@ximbiot.com>
10591
10592         * m4/mmap-anon.m4: New file.
10593         * m4/pagealign_alloc.m4: New file.
10594
10595 2005-03-03  Derek R. Price  <derek@ximbiot.com>
10596             Bruno Haible  <bruno@clisp.org>
10597
10598         * modules/pagealign_alloc: New file.
10599         * MODULES.html.sh (Memory management functions): Add pagealign_alloc.
10600
10601 2005-03-03  Derek R. Price  <derek@ximbiot.com>
10602             Bruno Haible  <bruno@clisp.org>
10603
10604         * lib/pagealign_alloc.h: New file.
10605         * lib/pagealign_alloc.c: New file.
10606
10607 2005-03-03  Bruno Haible  <bruno@clisp.org>
10608
10609         * m4/inttypes.m4, isc-posix.m4, once-only.m4:
10610         Use an all-permissive copyright notice, recommended by RMS.
10611
10612 2005-03-02  Bruno Haible  <bruno@clisp.org>
10613
10614         * m4/stpncpy.m4 (gl_FUNC_STPNCPY): Undo the replacement here. Because
10615         of AIX, the replacement has to be done only after <string.h> is
10616         included, therefore not in config.h. stpncpy.h does the replacement,
10617         and stpncpy.c uses it.
10618
10619 2005-03-02  Bruno Haible  <bruno@clisp.org>
10620
10621         * lib/stpncpy.h (stpncpy): Define as a macro without arguments, so that
10622         stpncpy.c uses it.
10623
10624 2005-03-01  Paul Eggert  <eggert@cs.ucla.edu>
10625
10626         Remove workaround for bug in Linux kernel 2.6.8 or thereabouts.
10627         The workaround isn't strictly needed for POSIX conformance, and
10628         it's too much of a pain to configure and maintain.  We'll ask
10629         people to fix their kernels instead.
10630         * lib/xnanosleep.c: Don't include gethrxtime.h or xtime.h.
10631         (NANOSLEEP_BUG_WORKAROUND): Remove.
10632         (xnanosleep): Remove the workaround.
10633
10634 2005-03-01  Paul Eggert  <eggert@cs.ucla.edu>
10635
10636         * modules/gettime (Makefile.am): Remove lib_SOURCES line.
10637         Reported by Derek Price.
10638         (Include): Add "timespec.h".
10639
10640         * modules/xnanosleep (Depends-on): Remove gethrxtime.
10641
10642 2005-03-01  Paul Eggert  <eggert@cs.ucla.edu>
10643
10644         * m4/xnanosleep.m4 (gl_XNANOSLEEP): Remove configuration attempting
10645         to detect nanosleep bug.
10646
10647 2005-03-01  Bruno Haible  <bruno@clisp.org>
10648
10649         * lib/vasnprintf.c (EOVERFLOW): Define to a fallback if needed.
10650
10651 2005-02-26  Paul Eggert  <eggert@cs.ucla.edu>
10652
10653         * modules/gethrxtime: New file.
10654         * modules/xnanosleep (Files): Add m4/xnanosleep.m4.
10655         (Depends-on): Add gethrxtime.
10656         (configure.ac): Add gl_XNANOSLEEP.
10657         (Makefile.am): Remove lib_SOURCES line.
10658
10659 2005-02-25  Paul Eggert  <eggert@cs.ucla.edu>
10660
10661         * m4/gethrxtime.m4, xnanosleep.m4: New files.
10662         * m4/gettime.m4 (gl_GETTIME): Check for nanotime.
10663
10664 2005-02-25  Paul Eggert  <eggert@cs.ucla.edu>
10665
10666         * lib/gethrxtime.h, gethrxtime.c, xtime.h: New files.
10667         * lib/timespec.h (gettime): Return void, since it always
10668         succeeds now.  All uses changed.
10669         * lib/gettime.c (gettime) Likewise.
10670         [HAVE_NANOTIME]: Prefer nanotime.
10671         Assume gettimeofday succeeds, as POSIX requires.
10672         Assime time () succeeds, since other code already does.
10673         * lib/xnanosleep.c: Include xtime.h and gethrxtime.h, not xalloc.h.
10674         (timespec_subtract): Remove.
10675         (NANOSLEEP_BUG_WORKAROUND): New constant.
10676         (xnanosleep): Use gethrxtime rather than gettime; this simplifies
10677         things considerably.  Use it only on GNU/Linux hosts, since the
10678         workaround shouldn't be needed elsewhere.
10679
10680 2005-02-24  Bruno Haible  <bruno@clisp.org>
10681
10682         * modules/gettext (Files): Add m4/glibc2.m4.
10683
10684 2005-02-24  Bruno Haible  <bruno@clisp.org>
10685
10686         * m4/gettext.m4, intdiv0.m4, intmax.m4, inttypes-pri.m4, lcmessage.m4:
10687         * m4/lib-link.m4, lib-prefix.m4, nls.m4, po.m4, printf-posix.m4:
10688         * m4/progtest.m4:
10689         Update from GNU gettext 0.14.2.
10690         * m4/glibc2.m4: New file, from GNU gettext 0.14.2.
10691
10692 2005-02-24  Bruno Haible  <bruno@clisp.org>
10693
10694         * lib/localcharset.c: Update from GNU gettext 0.14.2.
10695         * lib/config.charset: Update from GNU gettext 0.14.2.
10696
10697 2005-02-24  Bruno Haible  <bruno@clisp.org>
10698
10699         * lib/gettext.h: Update from GNU gettext 0.14.2.
10700
10701 2005-02-23  Simon Josefsson  <jas@extundo.com>
10702
10703         * m4/iconvme.m4: New file.
10704
10705 2005-02-23  Jim Meyering  <jim@meyering.net>
10706
10707         * m4/extensions.m4 (gl_USE_SYSTEM_EXTENSIONS): Revert yesteday's
10708         change.
10709         Thanks to Bruno Haible for catching it.
10710
10711 2005-02-22  Simon Josefsson  <jas@extundo.com>
10712
10713         * modules/iconvme: New file.
10714
10715         * MODULES.html.sh: Add iconvme.
10716
10717 2005-02-22  Simon Josefsson  <jas@extundo.com>
10718
10719         * lib/iconvme.h, iconvme.c: New files, from libc.
10720
10721 2005-02-22  Simon Josefsson  <jas@extundo.com>
10722
10723         * config/srclist.txt: Sync iconvme.h, iconvme.c from libc.
10724
10725 2005-02-22  Jim Meyering  <jim@meyering.net>
10726
10727         * m4/extensions.m4 (gl_USE_SYSTEM_EXTENSIONS): Fix typo:
10728         s/ifndef/ifdef/.
10729
10730 2005-02-20  Neil Conway  <neilc@samurai.com>
10731
10732         * lib/xgethostname.c (xgethostname): Check for ENOMEM, which is
10733         returned by OSX/Darwin if the specified buffer is not large
10734         enough for the hostname.
10735
10736 2005-02-03  Sergey Poznyakoff  <gray@Mirddin.farlep.net>
10737
10738         * lib/argp-help.c (__argp_help): Create a fake struct argp_state and
10739         pass it to _help, otherwise the latter coredumps trying to
10740         dereference state.root_argp.
10741
10742 2005-02-03  Paul Eggert  <eggert@cs.ucla.edu>
10743
10744         * modules/chdir-long (Depends-on): Add memrchr.
10745         * modules/memrchr (Files): Add lib/memrchr.h.
10746         (Include): "memrchr.h".
10747
10748 2005-02-03  Paul Eggert  <eggert@cs.ucla.edu>
10749
10750         * m4/memrchr.m4 (gl_FUNC_MEMRCHR): Add AC_LIBSOURCES, for memrchr.h.
10751
10752 2005-02-03  Paul Eggert  <eggert@cs.ucla.edu>
10753
10754         * lib/memrchr.h: New file.
10755         * lib/chdir-long.c: Include it.
10756         * lib/memrchr.c [!defined _LIBC]: Include it rather than <string.h>
10757         Don't bother including stddef.h.
10758
10759 2005-02-01  Paul Eggert  <eggert@cs.ucla.edu>
10760
10761         * lib/mountlist.h (MOUNTLIST_H_): New macro, to protect against double
10762         inclusion.
10763         Include <sys/types.h>, for dev_t.
10764         (ME_DUMMY, ME_REMOTE): Move from here....
10765         * lib/mountlist.c (ME_DUMMY, ME_REMOTE): To here.
10766         (ME_DUMMY): Count "subfs" as a dummy.  Problem reported by
10767         Dmitry V. Levin.
10768         Include mountlist.h first, to test the interface.
10769
10770 2005-01-29  Bruno Haible  <bruno@clisp.org>
10771
10772         * lib/progname.c (program_name): Initialize.
10773         Needed when linking statically on MacOS X.
10774
10775 2005-01-28  Paul Eggert  <eggert@cs.ucla.edu>
10776
10777         Sync from coreutils.
10778         * modules/getloadavg (Files): Remove m4/getloadavg.m4.
10779         (Depends-on): Add c-strtod.
10780         (configure.ac): Replace gl_FUNC_GETLOADAVG with AC_FUNC_GETLOADAVG.
10781
10782 2005-01-28  Paul Eggert  <eggert@cs.ucla.edu>
10783
10784         Sync from coreutils.
10785         * m4/getloadavg.m4, glibc.m4, search-libs.m4: Remove.
10786
10787         Remove files that are specific to coreutils.
10788         * m4/check-decl.m4, jm-macros.m4, lib-check.m4, prereq.m4: Remove.
10789
10790 2005-01-28  Bruno Haible  <bruno@clisp.org>
10791
10792         * modules/javacomp: New file.
10793         * MODULES.html.sh (Java): Add javacomp.
10794
10795 2005-01-28  Bruno Haible  <bruno@clisp.org>
10796
10797         * m4/javacomp.m4: New file, from GNU gettext.
10798
10799 2005-01-28  Bruno Haible  <bruno@clisp.org>
10800
10801         * lib/javacomp.sh.in: New file, from GNU gettext.
10802         * lib/javacomp.h: New file, from GNU gettext.
10803         * lib/javacomp.c: New file, from GNU gettext.
10804
10805 2005-01-26  Simon Josefsson  <jas@extundo.com>
10806
10807         * lib/gai_strerror.c: Use GPL in header.
10808
10809 2005-01-26  Bruno Haible  <bruno@clisp.org>
10810
10811         * modules/javaexec: New file.
10812         * MODULES.html.sh (Java): Add javaexec.
10813
10814 2005-01-26  Bruno Haible  <bruno@clisp.org>
10815
10816         * m4/javaexec.m4: New file, from GNU gettext.
10817
10818 2005-01-26  Bruno Haible  <bruno@clisp.org>
10819
10820         * lib/javaexec.sh.in: New file, from GNU gettext.
10821         * lib/javaexec.h: New file, from GNU gettext.
10822         * lib/javaexec.c: New file, from GNU gettext.
10823
10824 2005-01-24  Sergey Poznyakoff  <gray@Mirddin.farlep.net>
10825
10826         * modules/lchown (Depends-on): Remove lchown.h
10827
10828 2005-01-24  Sergey Poznyakoff  <gray@Mirddin.farlep.net>
10829
10830         * m4/sysexits.m4 (gl_SYSEXITS): Reverted logic. SYSEXITS_H
10831         must be defined if the header file was not found, in order
10832         to provide a replacement. Reported by Todd Vierling <tv@duh.org>
10833
10834 2005-01-24  Sergey Poznyakoff  <gray@Mirddin.farlep.net>
10835
10836         * lib/argp-help.c (hol_entry_help): Avoid using non-constant
10837         initializers for struct pentry_state.
10838         (__argp_error): Check return value of __asprintf
10839         (__argp_failure): Translate error message
10840
10841         * lib/argp-parse.c: Removed braces around the expansion of N_()
10842
10843 2005-01-23  Paul Eggert  <eggert@cs.ucla.edu>
10844
10845         * m4/acl.m4, afs.m4, alloca.m4, argp.m4, assert.m4, atexit.m4,
10846         backupfile.m4, base64.m4, bison.m4, c-bs-a.m4, c-stack.m4,
10847         c-strtod.m4, calloc.m4, canon-host.m4, canonicalize.m4,
10848         clock_time.m4, cloexec.m4, closeout.m4, d-ino.m4, d-type.m4,
10849         dirfd.m4, dirname.m4, dos.m4, dup2.m4, error.m4, euidaccess.m4,
10850         exclude.m4, exitfail.m4, extensions.m4, fcntl-safer.m4,
10851         file-type.m4, fileblocks.m4, filemode.m4, fnmatch.m4, fpending.m4,
10852         free.m4, fstypename.m4, fsusage.m4, ftruncate.m4, getaddrinfo.m4,
10853         getcwd-path-max.m4, getcwd.m4, getdate.m4, getdomainname.m4,
10854         getgroups.m4, gethostname.m4, getline.m4, getndelim2.m4,
10855         getnline.m4, getopt.m4, getpagesize.m4, getpass.m4, getsubopt.m4,
10856         gettime.m4, gettimeofday.m4, getugroups.m4, getusershell.m4,
10857         group-member.m4, hard-locale.m4, hash.m4, host-os.m4, human.m4,
10858         idcache.m4, inttostr.m4, isdir.m4, jm-winsz1.m4, jm-winsz2.m4,
10859         link-follow.m4, long-options.m4, ls-mntd-fs.m4, lstat.m4,
10860         makepath.m4, mathl.m4, md5.m4, memcasecmp.m4, memchr.m4,
10861         memcmp.m4, memcoll.m4, memcpy.m4, memmem.m4, memmove.m4,
10862         memrchr.m4, memset.m4, mkdir-slash.m4, mkstemp.m4, mktime.m4,
10863         modechange.m4, mountlist.m4, nanosleep.m4, obstack.m4,
10864         path-concat.m4, pathmax.m4, perl.m4, physmem.m4, poll.m4,
10865         posixtm.m4, posixver.m4, putenv.m4, quote.m4, quotearg.m4,
10866         readdir.m4, readtokens.m4, readutmp.m4, regex.m4, rename.m4,
10867         restrict.m4, rmdir-errno.m4, rmdir.m4, rpmatch.m4, same.m4,
10868         savedir.m4, settime.m4, sha1.m4, sig2str.m4, snprintf.m4,
10869         sockpfaf.m4, st_dm_mode.m4, st_mtim.m4, stat.m4, stdint.m4,
10870         stdio-safer.m4, strchrnul.m4, strdup.m4, strerror.m4,
10871         strerror_r.m4, strftime.m4, strndup.m4, strnlen.m4, strsep.m4,
10872         strtod.m4, strtoimax.m4, strtok_r.m4, strtol.m4, strtoll.m4,
10873         strtoul.m4, strtoull.m4, strtoumax.m4, strverscmp.m4, sysexits.m4,
10874         time_r.m4, timegm.m4, timespec.m4, tm_gmtoff.m4, tzset.m4,
10875         uint32_t.m4, uintptr_t.m4, unistd-safer.m4, unlink-busy.m4,
10876         unlocked-io.m4, uptime.m4, userspec.m4, utimbuf.m4, utime.m4,
10877         utimecmp.m4, utimens.m4, utimes-null.m4, vsnprintf.m4, xalloc.m4,
10878         xgetcwd.m4, xreadlink.m4, xstrndup.m4, xstrtod.m4, xstrtoimax.m4,
10879         xstrtol.m4, xstrtoumax.m4, yesno.m4:
10880         Use an all-permissive copyright notice, recommended by RMS.
10881
10882 2005-01-21  Paul Eggert  <eggert@cs.ucla.edu>
10883
10884         * modules/chdir-long (Depends-on): Remove mempcpy.
10885
10886 2005-01-21  Jim Meyering  <jim@meyering.net>
10887
10888         * lib/openat.h (AT_SYMLINK_NOFOLLOW): Define to 4096, so it's the
10889         same value as for Solaris 9.
10890
10891         * lib/chdir-long.c (chdir_long): Rewrite to remove limitation on
10892         component length.  This included changing the parameter to be
10893         of type `char *' rather than `char const *'.
10894         * lib/chdir-long.h (chdir_long): Update prototype.
10895
10896         * lib/openat.c (fdopendir, fstatat): New functions.
10897         * lib/openat.h: Include headers required for use of DIR and struct
10898         stat.
10899         [AT_SYMLINK_NOFOLLOW]: Define.
10900         (fdopendir, fstatat): Add prototypes.
10901
10902 2005-01-21  Bruno Haible  <bruno@clisp.org>
10903
10904         * modules/classpath: New file.
10905         * MODULES.html.sh (Java): Add classpath.
10906
10907 2005-01-21  Bruno Haible  <bruno@clisp.org>
10908
10909         * lib/classpath.h: New file, from GNU gettext.
10910         * lib/classpath.c: New file, from GNU gettext.
10911
10912 2005-01-20  Simon Josefsson  <jas@extundo.com>
10913
10914         * modules/version-etc-fsf: New file.
10915
10916 2005-01-20  Simon Josefsson  <jas@extundo.com>
10917
10918         * lib/version-etc-fsf.c: New file, with version_etc_copyright.
10919         * lib/version-etc.c: Remove version_etc_copyright.
10920         * lib/version-etc.h (version_etc_copyright): Use [] instead of * in
10921         prototype, suggested by Paul Eggert <eggert@CS.UCLA.EDU>.
10922
10923 2005-01-20  Simon Josefsson  <jas@extundo.com>
10924
10925         * lib/base64.h (isbase64): Add.
10926
10927         * lib/base64.c (isb64): Rename to isbase64, use to_uchar instead of
10928         using a unsigned prototype, don't inline.
10929         (base64_decode): Use it.
10930
10931 2005-01-20  Paul Eggert  <eggert@cs.ucla.edu>
10932
10933         * m4/save-cwd.m4 (gl_SAVE_CWD): Remove check for fcntl; we now assume
10934         it.
10935
10936 2005-01-20  Paul Eggert  <eggert@cs.ucla.edu>
10937
10938         * lib/save-cwd.c (save_cwd): Remove code to support the case
10939         where fchdir is missing or flaky.
10940
10941 2005-01-20  Paul Eggert  <eggert@cs.ucla.edu>
10942
10943         * MODULES.html.sh (Command-line arguments): Add version-etc-fsf.
10944
10945 2005-01-19  Paul Eggert  <eggert@cs.ucla.edu>
10946
10947         * modules/mempcpy (Makefile.am): Remove mention of mempcpy.h;
10948         AC_LIBSOURCES now does this.
10949         * MODULES.html.sh (Sizes of integer types <limits.h>): New element,
10950         with new ullong_max module.
10951
10952 2005-01-19  Bruno Haible  <bruno@clisp.org>
10953
10954         * modules/sh-quote: New file.
10955         * MODULES.html.sh (Executing programs): Add sh-quote.
10956
10957 2005-01-19  Bruno Haible  <bruno@clisp.org>
10958
10959         * lib/sh-quote.h: New file, from GNU gettext.
10960         * lib/sh-quote.c: New file, from GNU gettext.
10961
10962 2005-01-18  Paul Eggert  <eggert@cs.ucla.edu>
10963
10964         Merge from coreutils.
10965         * m4/ullong_max.m4: New file.
10966         * m4/jm-macros.m4 (gl_MACROS): Require gl_ULLONG_MAX.
10967         (gl_MACROS): Assume localeconv exists.
10968
10969 2005-01-18  Paul Eggert  <eggert@cs.ucla.edu>
10970
10971         Merge changes from coreutils, as described below in several
10972         changelogs dated today.
10973
10974         * lib/save-cwd.c: Include "save-cwd.h" before other include files.
10975         (O_DIRECTORY): Remove; not needed here, since "." must be
10976         a directory.  All uses removed.
10977         (save_cwd): Use __sgi || __sun, not sun || __sun.  __sun is
10978         universal on Suns, and we also need to test for IRIX.
10979         Revamp code to use 'if' rather than '#if'.
10980         Avoid unnecessary comparison of cwd->desc to 0.
10981
10982         * lib/utimens.c (futimens): Robustify the previous patch, by checking
10983         for known valid error numbers rather than observed invalid ones.
10984
10985 2005-01-18  Paul Eggert  <eggert@cs.ucla.edu>
10986
10987         * modules/ullong_max: New file.
10988
10989         * modules/chdir-long, modules/openat: New files.
10990         * modules/save-cwd (Depends-on): Depend on chdir-long.
10991         (Makefile.am): Remove lib_SOURCES; now handled by AC_LIBSOURCES.
10992
10993 2005-01-18  Jim Meyering  <jim@meyering.net>
10994
10995         Merge from coreutils.
10996         * m4/chdir-long.m4, openat.m4: New files.
10997         * m4/save-cwd.m4 (gl_SAVE_CWD): Add AC_LIBSOURCES for save-cwd.c,
10998         save-cwd.h.  Add AC_LIBOBJ for save-cwd.
10999         * m4/chown.m4 (gl_FUNC_CHOWN): When cross-compiling, assume that chown
11000         is sane and DOES follow symlinks.  Besides, testing 20 different
11001         systems found no broken chown implementations.
11002         Prompted by a change in rsync's copy of this macro.
11003         * m4/jm-macros.m4 (gl_MACROS): Require gl_FUNC_CHDIR_LONG.
11004
11005         * m4/lchown.m4 (gl_FUNC_LCHOWN): Use AC_LIBSOURCES.
11006
11007         * m4/utimes.m4: Work around tests/touch/empty-file failure on a system
11008         (sparc64, Linux-2.4.28, glibc-2.3.3) that didn't honor utimes'
11009         NULL-means-set-to-current-time semantics.
11010         Remove temporary file immediately, rather than waiting
11011         for configure's at-exit trap code to do it.
11012
11013 2005-01-18  Jim Meyering  <jim@meyering.net>
11014
11015         * lib/version-etc.c (version_etc_copyright): Update copyright date.
11016
11017         * lib/utimens.c (futimens): Account for the fact that futimes
11018         can also fail with errno == ENOSYS or errno == ENOENT.
11019         Patch from Dmitry V. Levin.
11020
11021         Change the name of the robust chdir function from chdir to chdir_long.
11022         * lib/save-cwd.c: Include chdir-long.h rather than chdir.h.
11023         (restore_cwd): Use chdir_long, not chdir.
11024         * lib/chdir-long.c: Renamed from chdir.c.
11025         * lib/chdir-long.h: Renamed from chdir.h.
11026         [!defined PATH_MAX]: Define chdir_long to chdir on systems like the
11027         Hurd.
11028
11029 2005-01-18  Bruno Haible  <bruno@clisp.org>
11030
11031         * m4/allocsa.m4, m4/codeset.m4, m4/copy-file.m4, m4/eaccess.m4:
11032         * m4/eealloc.m4, m4/eoverflow.m4, m4/execute.m4, m4/fatal-signal.m4:
11033         * m4/findprog.m4, m4/glibc21.m4, m4/iconv.m4, m4/intmax_t.m4:
11034         * m4/inttypes_h.m4, m4/lib-ld.m4, m4/lib-link.m4, m4/lib-prefix.m4:
11035         * m4/linebreak.m4, m4/localcharset.m4, m4/longdouble.m4:
11036         * m4/longlong.m4, m4/mbrtowc.m4, m4/mbstate_t.m4, m4/mbswidth.m4:
11037         * m4/mkdtemp.m4, m4/pipe.m4, m4/readlink.m4, m4/safe-read.m4:
11038         * m4/safe-write.m4, m4/setenv.m4, m4/sig_atomic_t.m4:
11039         * m4/signalblocking.m4, m4/signed.m4, m4/size_max.m4, m4/ssize_t.m4:
11040         * m4/stdbool.m4, m4/stdint_h.m4, m4/stpcpy.m4, m4/stpncpy.m4:
11041         * m4/strcase.m4, m4/strcspn.m4, m4/strpbrk.m4, m4/strstr.m4:
11042         * m4/ucs4-utf.m4, m4/uintmax_t.m4, m4/ulonglong.m4, m4/unicodeio.m4:
11043         * m4/utf-ucs4.m4, m4/vasnprintf.m4, m4/vasprintf.m4:
11044         * m4/wait-process.m4, m4/wchar_t.m4, m4/wint_t.m4, m4/xsize.m4:
11045         Use an all-permissive copyright notice, recommended by RMS.
11046
11047 2005-01-18  Bob Proulx  <bob@proulx.com>
11048
11049         * lib/obstack.c [DEFAULT_ALIGNMENT]: Use an intermediate type to
11050         simplify offsetof() macro construct to avoid compile failure with
11051         native HP-UX 11.0 ANSI C compiler.
11052
11053 2005-01-17  Bruno Haible  <bruno@clisp.org>
11054
11055         * lib/stpncpy.c: Remove HAVE_STPNCPY and gnu_stpncpy renaming,
11056         redundant because stpncpy.m4 takes care of it.
11057
11058 2005-01-17  Bruno Haible  <bruno@clisp.org>
11059
11060         * lib/progreloc.c: Include xalloc.h instead of xmalloc.h.
11061
11062 2005-01-17  Bruno Haible  <bruno@clisp.org>
11063
11064         * lib/progreloc.c (xstrdup): Define as strdup if no xmalloc should be
11065         used.
11066
11067 2005-01-17  Bruno Haible  <bruno@clisp.org>
11068
11069         * lib/fwriteerror.h (fwriteerror): Change specification to include
11070         fclose.
11071         * lib/fwriteerror.c: Include <stdbool.h>.
11072         (fwriteerror): At the end, close the file stream. Record whether
11073         stdout was already closed.
11074
11075 2005-01-17  Bruno Haible  <bruno@clisp.org>
11076
11077         * lib/execute.c (environ): Declare if needed.
11078         * lib/pipe.c (environ): Likewise.
11079         Reported by Michael Schloh von Bennewitz <michael.schloh@cw.com>.
11080
11081 2005-01-11  Sergey Poznyakoff  <gray@Mirddin.farlep.net>
11082
11083         * modules/argp: Depend on vsnprintf
11084
11085 2005-01-10  Jim Meyering  <jim@meyering.net>
11086
11087         * modules/closeout (Depends-on): Add atexit.
11088
11089 2005-01-06  Bruno Haible  <bruno@clisp.org>
11090
11091         * m4/stpncpy.m4 (gl_FUNC_STPNCPY): Rename stpncpy to gnu_stpncpy here.
11092
11093 2005-01-04  Paul Eggert  <eggert@cs.ucla.edu>
11094
11095         * lib/human.c (SIZE_MAX, UINTMAX_MAX): Move these conditional
11096         definitions to be after all include files, to avoid collisions.
11097         Problem reported by Bob Proulx.
11098
11099 2005-01-04  Jim Meyering  <jim@meyering.net>
11100
11101         Changes imported from coreutils.
11102         * m4/mkstemp.m4 (gl_FUNC_MKSTEMP): Rather than using "conftestXXXXXX"
11103         as the mkstemp template, use a temporary directory and an
11104         8.3-friendly template to avoid trouble on systems like DJGPP.
11105         Reported by Juan M. Guerrero via Stepan Kasal.
11106         * m4/(gl_FUNC_MKSTEMP): Include <unistd.h> for the declaration of
11107         close. Remove the temporary directory right away, rather than waiting
11108         for configure's at-exit trap code to do it.
11109         Suggestion from Stepan Kasal.
11110
11111 2005-01-01  Simon Josefsson  <jas@extundo.com>
11112
11113         * gnulib-tool: Print #include directives when --import'ing.
11114
11115 2004-12-28  Simon Josefsson  <jas@extundo.com>
11116
11117         * tests/test-base64.c: Include required header files.  Remove
11118         unused variables.
11119
11120 2004-12-28  Paul Eggert  <eggert@cs.ucla.edu>
11121
11122         * modules/error (Depends-on): Remove gettext.
11123
11124 2004-12-28  Paul Eggert  <eggert@cs.ucla.edu>
11125
11126         * lib/error.c [!_LIBC && !ENABLE_NLS]: Do not include "gettext.h";
11127         not needed.  This removes a dependency on the gettext module.
11128         [defined _LIBC]: Do not include <libintl.h>; not needed.
11129
11130 2004-12-24  Paul Eggert  <eggert@cs.ucla.edu>
11131
11132         * m4/c-strtod.m4 (gl_C99_STRTOLD): New macro.
11133         (gl_C_STRTOD): Use it instead of AC_CHECK_DECLS_ONCE(strtold).
11134
11135 2004-12-24  Paul Eggert  <eggert@cs.ucla.edu>
11136
11137         * lib/c-strtod.c (STRTOD): Depend on HAVE_C99_STRTOLD, not
11138         HAVE_DECL_STRTOLD.
11139
11140 2004-12-23  Paul Eggert  <eggert@cs.ucla.edu>
11141
11142         * modules/getdate (Depends-on): Remove alloca-opt.
11143
11144 2004-12-23  Paul Eggert  <eggert@cs.ucla.edu>
11145
11146         * m4/getdate.m4 (gl_GETDATE): Remove AC_FUNC_ALLOCA.
11147
11148 2004-12-23  Paul Eggert  <eggert@cs.ucla.edu>
11149
11150         * lib/argp-parse.c: Include <stddef.h>.
11151         (alignof, alignto): New macros.
11152         (parser_init): Don't assume that void * is aligned sufficiently
11153         for struct option.
11154
11155         * lib/getdate.y (YYSTACK_USE_ALLOCA): Define to 0, since there's no
11156         need to extend the stack.
11157         (YYINITDEPTH): New macro, so that the initial stack isn't overly
11158         large.
11159
11160 2004-12-22  Sergey Poznyakoff  <gray@Mirddin.farlep.net>
11161
11162         * lib/argp-parse.c (parser_init): Avoid arithmetics on void pointers.
11163
11164 2004-12-19  Paul Eggert  <eggert@cs.ucla.edu>
11165
11166         * modules/regex (lib_SOURCES): Remove regex.c, undoing previous
11167         (2004-10-24) change.  Apparently this was a false alarm.
11168
11169         * modules/getdate: Depend on alloca-opt, not alloca.
11170
11171 2004-12-19  Paul Eggert  <eggert@cs.ucla.edu>
11172
11173         * lib/alloca_.h: Conditionalize on _GNULIB_ALLOCA_H, not _ALLOCA_H.
11174         Remove now-obsolete comment about AIX.
11175         * lib/getdate.y: Include <alloca.h> only if HAVE_ALLOCA.
11176         (YYSTACK_USE_ALLOCA): Define to 0 if !HAVE_ALLOCA.
11177         (YYMAXDEPTH): New macro.
11178
11179 2004-12-18  Simon Josefsson  <jas@extundo.com>
11180
11181         * modules/alloca: Depend on alloca-opt, instead of duplicating it.
11182
11183 2004-12-18  Bruno Haible  <bruno@clisp.org>
11184
11185         * m4/fatal-signal.m4 (gl_FATAL_SIGNAL): Also test for sigaction.
11186
11187 2004-12-18  Bruno Haible  <bruno@clisp.org>
11188
11189         * lib/fatal-signal.c (fatal_signals): Make non-const.
11190         (init_fatal_signals): New function.
11191         (uninstall_handlers, install_handlers): Ignore signals that were set to
11192         SIG_IGN.
11193         (at_fatal_signal): Call init_fatal_signals.
11194         (init_fatal_signal_set): Likewise. Ignore signals that were set to
11195         SIG_IGN.
11196         Reported by Paul Eggert.
11197
11198 2004-12-18  Bruno Haible  <bruno@clisp.org>
11199
11200         * doc/alloca.texi: New file.
11201         * doc/alloca-opt.texi: New file.
11202
11203 2004-12-17  Jim Meyering  <jim@meyering.net>
11204
11205         * config/install-sh: Use `(exit N); exit N', not `(exit N); exit'.
11206         Otherwise, install-sh could exit with improper exit status when
11207         exiting via a trapped interrupt.  Thanks to a report from Bob Proulx.
11208
11209 2004-12-16  Simon Josefsson  <jas@extundo.com>
11210
11211         * tests/test-base64.c: Add license.
11212
11213 2004-12-15  Stepan Kasal  <address@hidden>
11214
11215         * gnulib-tool (func_emit_lib_Makefile_am): Shorten a long sed command.
11216
11217 2004-12-12  Paul Eggert  <eggert@cs.ucla.edu>
11218
11219         * modules/getcwd (Files): Add m4/d-ino.m4.
11220         Suggested by Mark D. Baushke.
11221
11222 2004-12-08  Paul Eggert  <eggert@cs.ucla.edu>
11223
11224         * lib/getdate.y (textint): New member "negative".
11225         (time_zone_hhmm): New function.
11226         Expect 14 shift-reduce conflicts, not 13.
11227         (o_colon_minutes): New rule.
11228         (time, zone): Use it to add support for +HH:MM, UTC+HH:MM.
11229         (yylex): Set the "negative" member of signed numbers.
11230
11231 2004-12-08  Paul Eggert  <eggert@cs.ucla.edu>
11232
11233         * doc/getdate.texi (Time of day items, Time zone items):
11234         Describe new formats +00:00, UTC+00:00.
11235
11236 2004-12-07  Paul Eggert  <eggert@cs.ucla.edu>
11237
11238         * m4/ls-mntd-fs.m4 (AC_FUNC_GETMNTENT): Fix typo in previous change:
11239         spurious "-l"s.  Problem reported by Stepan Kasal.
11240
11241 2004-12-06  Paul Eggert  <eggert@cs.ucla.edu>
11242
11243         * m4/ls-mntd-fs.m4 (AC_FUNC_GETMNTENT): New macro, to work around bug
11244         in Autoconf 2.59.  Problem reported by Mark D. Baushke.
11245
11246 2004-12-04  Simon Josefsson  <jas@extundo.com>
11247
11248         * modules/getaddrinfo (License): Add LGPL, reported by Yoann
11249         Vandoorselaere <yoann@prelude-ids.org>.
11250
11251 2004-12-04  Paul Eggert  <eggert@cs.ucla.edu>
11252
11253         Changes imported from coreutils.
11254         * m4/hard-locale.m4 (gl_HARD_LOCALE): Assume locale.h and setlocale
11255         exist.
11256         * m4/human.m4 (gl_HUMAN): Assume locale.h and localeconv exist.
11257
11258 2004-12-04  Paul Eggert  <eggert@cs.ucla.edu>
11259
11260         Changes imported from coreutils.
11261         * lib/hard-locale.c: Assume <locale.h> exists.
11262         Include "strdup.h".
11263         (GLIBC_VERSION): New macro.
11264         (hard_locale): Assume setlocale exists.
11265         Rewrite to avoid #ifdef.
11266         Use strdup rather than malloc + strcpy.
11267         * lib/human.c: Assume <locale.h> exists.
11268         (human_readable): Assume localeconv exists.
11269
11270 2004-12-04  Paul Eggert  <eggert@cs.ucla.edu>
11271
11272         * modules/hard-locale (Depends-on): Add strdup.
11273
11274 2004-12-01  Jakub Jelinek  <jakub@redhat.com>
11275
11276         * lib/mktime.c (__mktime_internal): If SEC_REQUESTED != SEC,
11277         convert T2, not T.  (Imported from libc.)
11278
11279 2004-11-30  Simon Josefsson  <jas@extundo.com>
11280
11281         * modules/restrict (License): Change to LGPL.
11282
11283 2004-11-30  Simon Josefsson  <jas@extundo.com>
11284
11285         * m4/restrict.m4: Add copyright and copying conditions.
11286
11287 2004-11-30  Simon Josefsson  <jas@extundo.com>
11288
11289         * m4/base64.m4: New file.
11290
11291 2004-11-30  Simon Josefsson  <jas@extundo.com>
11292
11293         * MODULES.html.sh (Extra functions based on ANSI C 89): Add
11294         base64.
11295
11296         * tests/test-base64.c: New file.
11297
11298         * modules/base64: New file.
11299
11300 2004-11-30  Paul Eggert  <eggert@cs.ucla.edu>
11301
11302         * m4/getcwd-path-max.m4 (gl_FUNC_GETCWD_PATH_MAX):
11303         Define HAVE_PARTLY_WORKING_GETCWD if getcwd is partly working.
11304
11305         * m4/readutmp.m4 (gl_READUTMP): Don't check for sys/param.h.
11306
11307 2004-11-30  Paul Eggert  <eggert@cs.ucla.edu>
11308
11309         * lib/getcwd.c (is_ENAMETOOLONG): New macro.
11310         (__getcwd.c): Don't restore errno; glibc doesn't.
11311         [HAVE_PARTLY_WORKING_GETCWD && !defined AT_FDCWD]: Try system getcwd
11312         first, falling back to our code only if its results look suspicious.
11313         Ensure that the resulting buffer is only as large as necessary.
11314
11315         * lib/readutmp.c: Include readutmp.h first.
11316         Include <errno.h>, since readutmp.h no longer does that.
11317         * lib/readutmp.h: Don't include <errno.h>,
11318         <sys/param.h>, <time.h>; not needed to establish interface.
11319         (errno): Remove decl.
11320         (HAVE_STRUCT_XTMP_UT_TYPE): Remove; no longer needed.
11321         (UT_TYPE_EQ, UT_TYPE_NOT_DEFINED, UT_TYPE_BOOT_TIME,
11322         UT_TYPE_USER_PROCESS, IS_USER_PROCESS): New macros.
11323
11324 2004-11-28  Simon Josefsson  <jas@extundo.com>
11325
11326         * lib/base64.h, base64.c: New file.
11327
11328 2004-11-27  Paul Eggert  <eggert@cs.ucla.edu>
11329
11330         * lib/getcwd.h: New file, which I forgot to check in on 2004-11-25.
11331
11332 2004-11-26  Paul Eggert  <eggert@cs.ucla.edu>
11333
11334         * modules/getcwd (Files): Add lib/getcwd.h, m4/getcwd.m4.
11335         (Depends-on): Remove pathmax, same.  Add mempcpy.
11336         (configure.ac): GL_FUNC_GETCWD_PATH_MAX -> gl_FUNC_GETCWD.
11337         (Makefile.am): Append getcwd.h to lib_SOURCES.
11338         (Include): Add getcwd.h.
11339         (Maintainer): Change from Jim Meyering to "all, glibc",
11340         since getdate now uses intended-for-glibc code.
11341         * modules/xgetcwd (Files): Remove m4/getcwd.m4.
11342         (Depends-on): Depend on getcwd.  Do not depend on pathmax.
11343
11344 2004-11-25  Paul Eggert  <eggert@cs.ucla.edu>
11345
11346         Fix problems reported by Scott S. Tinsley for HP-UX 11.11 using
11347         HP's ANSI C compiler.
11348         * lib/fsusage.c (statvfs) [HAVE_SYS_STATVFS_H]: Remove decl.
11349         Declaring int functions causes warnings on some modern systems and
11350         shouldn't be needed to compile on ancient ones.
11351         * lib/same.c (MIN) [defined MIN]: Don't define, since it's already
11352         defined.
11353
11354         * lib/getcwd.c: Replace by a copy of glibc/sysdeps/posix/getcwd.c, but
11355         with the following changes.
11356         (__set_errno): Parenthesize properly.
11357         Include <stdbool.h>.
11358         (MIN, MAX, MATCHING_INO): New macros.
11359         (__getcwd): Define with prototype, not K&R form.
11360         Use heuristics to allocate default buffer on stack if possible.
11361         If AT_FDCWD is defined, use openat and fstatat to avoid O(N**2)
11362         behavior, and to avoid the PATH_MAX limit when computing
11363         ../../../../...
11364         Use MATCHING_INO to compare inode number to file.
11365         Check for arithmetic overflow in size calculations.
11366         Fix bug in reallocation of dot array that caused getcwd to fail
11367         on directories nested deeper than 75.
11368         Be more careful about saving errno on error.
11369         Do not use realloc; use only free+malloc, as this is a bit
11370         more flexible and avoids a needless copy operation.
11371         Do not inspect st_dev and st_ino for symbolic links; POSIX
11372         doesn't specify the latter.
11373         Check for closedir errors.
11374         Avoid needless casts.
11375         Use "#ifdef weak_alias" around weak_alias, to be like other
11376         glibc code.
11377         The following changes to getcwd.c have effect only when used in
11378         gnulib; they have no effect inside glibc proper.
11379         (#pragma alloca) [defined _AIX && !defined __GNUC__]: Remove,
11380         as alloca isn't used.
11381         (alloca, __alloca): Likewise.
11382         [!_LIBC]: Include "getcwd.h", "mempcpy.h".
11383         Include <stddef.h>, <stdlib.h>, <string.h>, <limits.h>
11384         unconditionally, as gnulib assumes C89 or better.
11385         Do not include <sys/param.h>.
11386         (errno) [!defined __GNU_LIBRARY__ && !defined STDC_HEADERS]: Remove
11387         no-longer-necessary 'extern int errno' decl; gnulib assumes C89 or
11388         better.
11389         (NULL) [!defined NULL]: Remove; we assume C89 or better.
11390         Include <dirent.h> in a way that is compatible with modern Autoconf.
11391         (_D_ALLOC_NAMELEN, _D_EXACT_NAMLEN):
11392         New macros, if not already defined.
11393         Include <unistd.h> if _LIBC, not if __GNU_LIBRARY__.
11394         Use "_LIBC", not "defined _LIBC", for consistency.
11395         (HAVE_MEMPCPY): Remove; no longer needed now that gnulib has
11396         a mempcpy module.
11397         (__lstat, __closedir, __opendir, __readdir) [!_LIBC]: New macros.
11398         (GETCWD_RETURN_TYPE): Remove.  All uses replaced by char *.
11399         * lib/xgetcwd.c: David MacKenzie's old code was removed, so give
11400         credit only to Jim Meyering and adjust the copyright dates.
11401         Do not include <limits.h>, <stdio.h>, <sys/types.h>,
11402         <stdlib.h>, <unistd.h>, "pathmax.h".
11403         Instead, include "xgetcwd.h" (first) and "getcwd.h".
11404         (INITIAL_BUFFER_SIZE): Remove.
11405         (xgetcwd): Rely on getcwd, since we now depend on a reliable one.
11406
11407 2004-11-25  Paul Eggert  <eggert@cs.ucla.edu>
11408
11409         * m4/getcwd-path-max.m4 (gl_FUNC_GETCWD_PATH_MAX): Renamed from
11410         GL_FUNC_GETCWD_PATH_MAX for consistency.  All uses changed.
11411         Use the _ONCE methods, for efficiency.
11412         Check for fcntl.h.  In test program, include <errno.h>
11413         and <fcntl.h> if available.  Remove old K&R cruft from
11414         test program.  Check for common errors in GNU/Linux,
11415         OpenBSD, and Solaris.  Just set gl_cv_func_getcwd_path_max;
11416         don't do AC_LIBOBJ, as that's getcwd.m4's job.
11417         * m4/getcwd.m4 (gl_FUNC_GETCWD_NULL): Renamed from
11418         AC_FUNC_GETCWD_NULL.  All used changed.  Change cache variable
11419         name accordingly.
11420         (gl_FUNC_GETCWD, gl_PREREQ_GETCWD): New macros.  Revamp to
11421         accommodate new getcwd.c.
11422         * m4/jm-macros.m4 (gl_MACROS): Don't require GL_FUNC_GETCWD_PATH_MAX.
11423         * m4/prereq.m4 (gl_PREREQ): Add gl_FUNC_MEMPCPY.
11424         * m4/xgetcwd.m4 (gl_XGETCWD): Replace with gl_FUNC_GETCWD, since
11425         that's all we need now.
11426
11427 2004-11-23  Sergey Poznyakoff  <gray@Mirddin.farlep.net>
11428
11429         * m4/argp.m4 (gl_ARGP): Require gl_GETOPT_SUBSTITUTE unconditionally:
11430         argp-parse.c depends on getopt internals, that means we should
11431         always use our getopt, to be on the safe side.
11432         * m4/getopt.m4 (gl_GETOPT): Check if GETOPT_H is already set, in
11433         order not to spoil the result of an eventual previous invocation
11434         of gl_GETOPT_SUBSTITUTE.
11435
11436 2004-11-23  Sergey Poznyakoff  <gray@Mirddin.farlep.net>
11437
11438         * lib/getopt_.h: Re-addition of __getopt_argv_const caused
11439         redefinition warnings. To avoid them, include the defines
11440         in `#if !defined __need_getopt ... #endif'. The only place
11441         where __getopt_argv_const is used is in definitions
11442         of getopt_long and getopt_long_only below, which are as well
11443         protected by `#ifndef __need_getopt'.
11444         [defined __GETOPT_PREFIX && !defined __need_getopt]: Undef
11445         __need_getopt after including <stdio.h> and <unistd.h> These
11446         headers might have defined it.
11447
11448 2004-11-23  Paul Eggert  <eggert@cs.ucla.edu>
11449
11450         * m4/utimens.m4 (gl_UTIMENS): Check for futimes function.
11451
11452 2004-11-23  Paul Eggert  <eggert@cs.ucla.edu>
11453
11454         * lib/utimens.c (__attribute__, ATTRIBUTE_UNUSED): New macros.
11455         (futimens): New function, which uses futimes if available.
11456         (futimens, utimens): Support timespec==NULL, with same semantics
11457         as utime and utimens.
11458         * lib/utimens.h (futimens): New decl.
11459
11460 2004-11-23  Jim Meyering  <jim@meyering.net>
11461
11462         * lib/getopt_.h: Remove trailing blanks.
11463
11464 2004-11-23  Jim Meyering  <jim@meyering.net>
11465
11466         * lib/__fpending.c: Add comment.
11467
11468 2004-11-22  Paul Eggert  <eggert@cs.ucla.edu>
11469
11470         * modules/canonicalize (Depends-on): Add xreadlink.
11471         Problem reported by James Youngman.
11472
11473 2004-11-20  Paul Eggert  <eggert@cs.ucla.edu>
11474
11475         * lib/getopt_.h (__GETOPT_CONCAT, __GETOPT_XCONCAT, __GETOPT_ID):
11476         New macros.
11477         (getopt, getopt_long, getopt_long_only, optarg, opterr, optind,
11478         optopt): Use them instead of invoking ## directly; otherwise, the
11479         symbols will be __GETOPT_PREFIXgetopt rather than rpl_getopt.
11480
11481 2004-11-19  Bruno Haible  <bruno@clisp.org>
11482
11483         * lib/strtok_r.c: Move comments from here...
11484         * lib/strtok_r.h: ... to here.
11485
11486 2004-11-17  Paul Eggert  <eggert@cs.ucla.edu>
11487
11488         * m4/calloc.m4 (_AC_FUNC_CALLOC_IF): Check for buggy calloc
11489         implementations that mishandle size_t overflow.
11490
11491 2004-11-17  Paul Eggert  <eggert@cs.ucla.edu>
11492
11493         * lib/realloc.c (rpl_realloc): Call 'free' if n==0, since realloc
11494         might fail.  Problem reported by Yoann Vandoorselaere.
11495         * lib/calloc.c (rpl_calloc): Defend against buggy calloc
11496         implementations that mishandle size_t overflow.
11497
11498 2004-11-16  Paul Eggert  <eggert@cs.ucla.edu>
11499
11500         * modules/canon-host (Depends-on): Add strdup.
11501
11502 2004-11-16  Paul Eggert  <eggert@cs.ucla.edu>
11503
11504         * m4/canon-host.m4 (gl_CANON_HOST): Check for getaddrinfo.
11505
11506 2004-11-16  Paul Eggert  <eggert@cs.ucla.edu>
11507
11508         * lib/canon-host.c: Include "strdup.h".
11509         (canon_host): Use getaddrinfo if available, so that IPv6 works.
11510         Use strdup instead of malloc/strcpy to duplicate strings.
11511
11512         * lib/human.h (LONGEST_HUMAN_READABLE): Add 1 for space before unit.
11513         (human_space_before_unit): New constant.
11514         * lib/human.c (human_readable): Support it.
11515
11516         * lib/xgetcwd.c: Include <limits.h>, for PATH_MAX.
11517         (xgetcwd): Set errno correctly when failing.
11518         Work around Solaris 9 bug: getcwd sets errno==ERANGE even though
11519         the failure is actually due to a PATH_MAX problem.
11520
11521         Further getopt changes to make it more likely that glibc will
11522         buy the changes back.
11523         * lib/getopt.c (POSIXLY_CORRECT): New constant.
11524         (getopt): Use it, so to preserve glibc semantic
11525         * lib/getopt1.c (getopt_long, getopt_long_only): Arg is char * const *
11526         when compiling for libc.
11527         * lib/getopt_.h (__getopt_argv_const): Bring it back.
11528         (getopt_long, getopt_long_only): Use it.
11529
11530         * lib/getopt.c (_getopt_initialize, _getopt_internal_r,
11531         _getopt_internal): New arg POSIXLY_CORRECT.  All callers changed.
11532         (getopt): Argv is now char * const *, as per standard.
11533         (_getopt_internal_r, _getopt_internal): Argv is now char **,
11534         not char *__getopt_argv_const *.
11535         * lib/getopt1.c (getopt_long, _getopt_long_r, getopt_long_only,
11536         _getopt_long_only_r): Likewise.
11537         * lib/getopt_.h (getopt, getopt_long, geopt_long_only): Likewise.
11538         * lib/getopt_int.h (_getopt_internal, _getopt_internal_r,
11539         _getopt_long_r, _getopt_long_only_r): Likewise.
11540         * lib/getopt_.h (__getopt_argv_const): Remove.
11541         (getopt): Argv is now char * const *, as per standard.
11542
11543         * lib/getdate.y (tORDINAL): New token.
11544         (day, relunit): Allow it for relative times.
11545         (relative_time_table): Use tORDINAL for ordinals.
11546
11547 2004-11-16  Paul Eggert  <eggert@cs.ucla.edu>
11548
11549         * doc/getdate.texi (General date syntax): "next" is 1, not 2.
11550         Document that "second" isn't allowed as an ordinal number.
11551
11552 2004-11-16  Jim Meyering  <jim@meyering.net>
11553
11554         * modules/closeout (Depends-on): Add fpending.
11555
11556 2004-11-15  Jim Meyering  <jim@meyering.net>
11557
11558         * lib/closeout.c: Include "__fpending.h" once again.
11559         Include <stdbool.h>.
11560         (close_stdout): Don't fail just because stdout was closed initially,
11561         since some programs don't write to stdout in the normal course of
11562         operation (other than --version and --help), and we don't want this
11563         function to make e.g. `touch file >&-' fail.
11564         But do fail if it was closed and someone has tried to write to it.
11565         E.g., `printf foo >&-' must fail.
11566
11567 2004-11-13  Jim Meyering  <jim@meyering.net>
11568
11569         * m4/jm-macros.m4: Do require gl_FUNC_FPENDING.
11570
11571 2004-11-12  Simon Josefsson  <jas@extundo.com>
11572
11573         * config/srclist.txt: Add strtok_r.c, glibc bought our changes, but a
11574         small doc fix is still pending.
11575
11576 2004-11-11  Simon Josefsson  <jas@extundo.com>
11577
11578         * modules/strtok_r: New file.
11579
11580         * MODULES.html.sh (Support for systems lacking POSIX:2001): Add
11581         strtok_r.
11582
11583 2004-11-11  Simon Josefsson  <jas@extundo.com>
11584
11585         * m4/strtok_r.m4: New file.
11586
11587         * m4/getopt.m4: Replace opterr.
11588
11589 2004-11-11  Simon Josefsson  <jas@extundo.com>
11590
11591         * lib/strtok_r.h, strtok_r.c: New file.
11592
11593 2004-11-11  Paul Eggert  <eggert@cs.ucla.edu>
11594
11595         * m4/getopt.m4 (gl_GETOPT_SUBSTITUTE): Define __GETOPT_PREFIX instead
11596         of replacing opterr, getopt, etc.  This should handle the
11597         powerpc-apple-darwin5.5 problem recently noted by Simon Josefsson.
11598
11599 2004-11-11  Paul Eggert  <eggert@cs.ucla.edu>
11600
11601         * lib/getopt_.h (__getopt_argv_const): New macro, to be used so that
11602         we can stop lying to compilers about the constness of argv when we
11603         are compiled outside glibc.
11604         (getopt, getopt_long, getopt_long_only): Use it.
11605         * lib/getopt.c (_getopt_initialize, _getopt_internal_r,
11606         _getopt_internal, getopt): Likewise.
11607         * lib/getopt1.c (getopt_long, _getopt_long_r, getopt_long_only,
11608         _getopt_long_only_r): Likewise.
11609         * lib/getopt_int.h (_getopt_internal, _getopt_internal_r,
11610         _getopt_long_r, _getopt_long_only_r): Likewise.
11611
11612         * lib/getopt_.h [defined __GETOPT_PREFIX && !defined __need_getopt]:
11613         Include <stdlib.h> and <stdio.h>, and <unistd.h> if available.
11614         Then rename getopt to __GETOPT_PREFIX##getopt, and so forth for
11615         the other external symbols.
11616         (getopt) [!defined __GNU_LIBRARY]: Use prototype, not old-style
11617         declaration, since the above renaming now works around collisions.
11618
11619 2004-11-11  Jim Meyering  <jim@meyering.net>
11620
11621         * lib/linebreak.c: Remove trailing blanks.
11622         * lib/alloca_.h: Likewise.
11623         * lib/acosl.c: Likewise.
11624         * lib/euidaccess.c: Likewise.
11625         * lib/allocsa.h: Likewise.
11626
11627 2004-11-10  Simon Josefsson  <jas@extundo.com>
11628
11629         * m4/getaddrinfo.m4: New file.
11630
11631 2004-11-10  Simon Josefsson  <jas@extundo.com>
11632
11633         * lib/getaddrinfo.h, getaddrinfo.c: New files.
11634
11635 2004-11-10  Simon Josefsson  <jas@extundo.com>
11636
11637         * MODULES.html.sh (Support for systems lacking POSIX:2001): Add
11638         getaddrinfo.
11639
11640         * modules/getaddrinfo: New file.
11641
11642 2004-11-10  Paul Eggert  <eggert@cs.ucla.edu>
11643
11644         * m4/prereq.m4 (gl_PREREQ): Require gt_FUNC_SETENV.
11645
11646 2004-11-10  Paul Eggert  <eggert@cs.ucla.edu>
11647
11648         * lib/mktime.c (SHR): New macro, which is a portable
11649         substitute for >> that should work even on Crays.
11650         (TIME_T_MIDPOINT, ydhms_diff, __mktime_internal): Use it.
11651         Problem reported by Mark D. Baushke in
11652         <http://lists.gnu.org/archive/html/bug-gnulib/2004-11/msg00071.html>.
11653         * lib/getdate.y (SHR): Likewise.
11654         (tm_diff): Use it.
11655         * lib/strftime.c (SHR): Likewise.
11656         (tm_diff): Use it.
11657         * lib/quotearg.c (struct quoting_options): Use unsigned int for
11658         quote_these_too, so that right shifts are well defined.  All uses
11659         changed.
11660
11661 2004-11-10  Jim Meyering  <jim@meyering.net>
11662
11663         Ensure that no close failure goes unreported.
11664         * lib/closeout.c (close_stdout): Always close stdout.  I.e., don't
11665         return early when it seems there's nothing to flush.
11666         Don't include __fpending.h.
11667
11668 2004-11-10  Jim Meyering  <jim@meyering.net>
11669
11670         * modules/closeout (Depends-on): Remove fpending.
11671
11672 2004-11-10  Jim Meyering  <jim@meyering.net>
11673
11674         * m4/jm-macros.m4 (gl_MACROS): Don't require gl_FUNC_FPENDING.
11675
11676 2004-11-09  Paul Eggert  <eggert@cs.ucla.edu>
11677
11678         * m4/strftime.m4 (_gl_STRFTIME_PREREQS): Remove.  Move its body to
11679         gl_FUNC_STRFTIME.
11680         (gl_FUNC_STRFTIME): Use AC_CHECK_FUNCS_ONCE and AC_CHECK_HEADERS_ONCE
11681         and AC_REQUIRE when possible, to avoid duplicate checks.
11682         Check for <wchar.h>.
11683
11684 2004-11-09  Paul Eggert  <eggert@cs.ucla.edu>
11685
11686         * lib/strftime.c (DO_MULTIBYTE): Check for wchar.h, too.
11687
11688 2004-11-09  Bruno Haible  <bruno@clisp.org>
11689
11690         * m4/sockpfaf.m4: New file.
11691
11692 2004-11-05  Bruno Haible  <bruno@clisp.org>
11693
11694         * lib/readlink.c: Include stddef.h, needed for size_t on Woe32.
11695         Reported by Mark D. Baushke <mdb@cvshome.org>.
11696
11697 2004-11-04  Bruno Haible  <bruno@clisp.org>
11698
11699         2004-09-11  Bruno Haible  <bruno@clisp.org>
11700                 * allocsa.valgrind: New file.
11701         2004-02-06  Bruno Haible  <bruno@clisp.org>
11702                 * allocsa.h (sa_alignof): Define differently with HP-UX cc, to
11703                 avoid a bug of this cc on HP-UX 10.20 dealing with enums.
11704                 Reported by Christopher Seip <chris.seip@hp.com>.
11705
11706 2004-11-04  Bruno Haible  <bruno@clisp.org>
11707
11708         * modules/allocsa (Files): Add lib/allocsa.valgrind.
11709         (Makefile.am): Distribute it.
11710
11711 2004-11-03  Paul Eggert  <eggert@cs.ucla.edu>
11712
11713         * lib/xreadlink.c (xreadlink): AIX and HP-UX readlink return -1
11714         with errno == ERANGE if the buffer is too small.
11715         Problem reported by Mark D. Baushke.
11716
11717 2004-11-03  Albert Chin <china@thewrittenword.com>
11718             Paul Eggert  <eggert@cs.ucla.edu>
11719
11720         * m4/uint32_t.m4 (gl_AC_TYPE_UINT32_T): When determining uint32_t
11721         equivalent, substitute $ac_type for equivalent type rather than
11722         blindly using uint32_t *always* which won't work if uint32_t is not
11723         available.  Define _UINT32_T to work around typedef of uint32_t if
11724         <sys/sched.h>, <pthread.h>, or <semaphore.h> used on Solaris
11725         2.5.1.
11726
11727 2004-11-02  Paul Eggert  <eggert@cs.ucla.edu>
11728
11729         * m4/jm-macros.m4: Sync from coreutils.
11730         (gl_MACROS): Check for mbrlen, for pathchk.
11731         (gl_CHECK_ALL_TYPES): Require AC_TYPE_MBSTATE_T, for pathchk.
11732
11733 2004-11-02  Paul Eggert  <eggert@cs.ucla.edu>
11734
11735         * lib/xreadlink.c (MAXSIZE): New macro.
11736         (xreadlink): Use it instead of SSIZE_MAX.  Ensure initial buffer
11737         size does not exceed MAXSIZE.  Avoid cast.
11738         As suggested by Mark D. Baushke in
11739         <http://lists.gnu.org/archive/html/bug-gnulib/2004-11/msg00009.html>,
11740         if readlink fails with buffer size just under MAXSIZE, try again
11741         with MAXSIZE.
11742
11743 2004-11-02  Paul Eggert  <eggert@cs.ucla.edu>
11744
11745         * config/srclist.txt: Add mktime.c; glibc bought all our changes.
11746
11747 2004-11-02  Derek R. Price  <derek@ximbiot.com>
11748         and  Paul Eggert  <eggert@cs.ucla.edu>
11749
11750         * lib/getdate.y [!TEST]: Include <stdio.h>, since we use sprintf now.
11751         (get_date): Overparenthesize to avoid GCC warning.
11752
11753 2004-11-02  Bruno Haible  <bruno@clisp.org>
11754
11755         * m4/setenv.m4 (gt_FUNC_SETENV): Define VOID_UNSETENV if unsetenv()
11756         returns void.
11757
11758 2004-11-02  Bruno Haible  <bruno@clisp.org>
11759
11760         * lib/setenv.h (unsetenv): Define as a macro if the system's unsetenv()
11761         function returns void.
11762
11763 2004-11-01  Paul Eggert  <eggert@cs.ucla.edu>
11764
11765         * m4/getpass.m4 (gl_PREREQ_GETPASS): Check for declarations of
11766         fflush_unlocked, flockfile, funlockfile, funlockfile,
11767         fputs_unlocked, putc_unlocked.
11768
11769 2004-11-01  Paul Eggert  <eggert@cs.ucla.edu>
11770
11771         * lib/getpass.c (fflush_unlocked, flockfile, funlockfile)
11772         (funlockfile, fputs_unlocked, putc_unlocked): Don't define if
11773         already declared.
11774
11775 2004-10-29  Paul Eggert  <eggert@cs.ucla.edu>
11776
11777         * modules/getdate (Files): Add doc/getdate.texi.
11778         (Depends-on): Add setenv, xalloc.
11779
11780 2004-10-29  Paul Eggert  <eggert@cs.ucla.edu>
11781
11782         * lib/getdate.y: Add support for TZ="foo" within a date string.
11783         Fix some bugs near time_t boundaries.  Reject dates with
11784         out-of-range components, e.g., "Sept 31".
11785         Include <stdlib.h>, "setenv.h", "xalloc.h".
11786         (ISDIGIT_LOCALE): Remove; unused.
11787         Note that the TZ and time functions used here are not reentrant.
11788         (mktime_ok, get_tz): New functions.
11789         (TZBUFSIZE): New constant.
11790         (get_date): Parse leading TZ="foo".  Reject out-of-range components;.
11791         This requires that we sometimes generate our own TZ="XXX..." setting.
11792
11793 2004-10-29  Paul Eggert  <eggert@cs.ucla.edu>
11794
11795         * doc/getdate.texi: New file, from coreutils with modifications for
11796         the new TZ parsing.
11797
11798 2004-10-27  Derek R. Price  <derek@ximbiot.com>
11799
11800         * lib/mktime.c (not_equal_tm): Remove redundant check.
11801
11802 2004-10-24  Paul Eggert  <eggert@cs.ucla.edu>
11803
11804         * modules/regex (lib_SOURCES): Add regex.c.
11805         Reported by James Youngman in
11806         <http://lists.gnu.org/archive/html/bug-gnulib/2004-10/msg00199.html>.
11807
11808 2004-10-24  Paul Eggert  <eggert@cs.ucla.edu>
11809
11810         * lib/getdate.y: Use Bison 1.875 features, and some minor
11811         code cleanups.  This change does not affect semantics.
11812         Don't include <stdlib.h>; no longer needed.
11813         Don't include unlocked-io.h; only the "#if TEST" code uses
11814         stdio, and performance isn't crucial there.
11815         (PC, YYLEX_PARAM, YYPARSE_PARAM): Remove; replaced by
11816         Bison 1.875 features as described below.
11817         All uses of "PC." replaced by "pc->".
11818         (YYSTYPE): Add a forward declaration.
11819         (yylex, yyerror): Use full prototypes in forward decls.
11820         Use "%pure-parser" rather than obsolescent "%pure_parser".
11821         Use %parse-param and %lex-param instead of obsolescent
11822         YYPARSE_PARAM and YYLEX_PARAM.
11823         (meridian_table, month_and_day_table, time_units_table,
11824         relative_time_table, time_zone_table, military_table,
11825         lookup_zone, lookup_word, get_date):
11826         Use NULL instead of 0 where appropriate.
11827         (to_hour): Avoid abort (), to avoid a dependency on
11828         stdlib.h.
11829         (yyerror, yylex): Now accepts parser_control * arg.
11830         (main) [TEST]: Use '\0' rather than 0 for char.
11831
11832 2004-10-22  Paul Eggert  <eggert@cs.ucla.edu>
11833
11834         * m4/getpagesize.m4 (gl_GETPAGESIZE): Check for <sys/param.h>.
11835
11836 2004-10-22  Paul Eggert  <eggert@cs.ucla.edu>
11837
11838         * lib/getpagesize.c (getpagesize): Don't assume <sys/param.h> exists.
11839         It's now the caller's responsibility to handle the case where
11840         !HAVE_GETPAGESIZE && !defined getpagesize.
11841
11842         * lib/mktime.c (leapyear): Arg is long int, not int.
11843
11844 2004-10-18  Paul Eggert  <eggert@cs.ucla.edu>
11845
11846         * lib/argp-fs-xinl.c, argp-xinl.c: Update from glibc.
11847
11848 2004-10-17  Paul Eggert  <eggert@cs.ucla.edu>
11849
11850         * gnulib-tool (func_emit_lib_Makefile_am): Fix typo: a $ was
11851         missing.  Problem reported by James Youngman.
11852
11853 2004-10-16  Simon Josefsson  <jas@extundo.com>
11854
11855         * gnulib-tool: Fix comments.  Fix parse problem.
11856         (func_emit_lib_Makefile_am): Don't hard code a in libgl_a_SOURCES.
11857
11858 2004-10-15  Paul Eggert  <eggert@cs.ucla.edu>
11859
11860         * m4/getopt.m4 (gl_GETOPT): Detect and reject the incompatible BSD
11861         implementation of getopt_long.  Problem reported by Alexander Taler in:
11862         http://lists.gnu.org/archive/html/bug-gnulib/2004-10/msg00103.html
11863
11864 2004-10-15  Bruno Haible  <bruno@clisp.org>
11865
11866         * gnulib-tool: Untabify. Initialize supplied_libname.
11867         (func_usage): More homogenous output.
11868         (func_modules_transitive_closure, func_modules_to_filelist,
11869         func_emit_lib_Makefile_am): New functions.
11870         (func_import): New function, extracted from big case statement. Use
11871         func_get_license, func_modules_transitive_closure,
11872         func_modules_to_filelist, func_emit_lib_Makefile_am. Initialize
11873         opt_lgpl. Don't use test -a, as it's not portable.
11874         (func_create_testdir): Use func_modules_transitive_closure,
11875         func_modules_to_filelist, func_emit_lib_Makefile_am.
11876
11877 2004-10-15  Bruno Haible  <bruno@clisp.org>
11878
11879         * gnulib-tool (func_import): Let gl_INIT define LTALLOCA when needed.
11880
11881 2004-10-15  Bruno Haible  <bruno@clisp.org>
11882
11883         * gnulib-tool (func_emit_lib_Makefile_am): Add markers to separate
11884         the portions belonging to each module.
11885         Suggested by Derek Robert Price <derek@ximbiot.com>.
11886
11887 2004-10-12  Simon Josefsson  <jas@extundo.com>
11888
11889         * lib/getpass.c (fflush_unlocked, flockfile, funlockfile)
11890         (fputs_unlocked, putc_unlocked) [!_LIBCS && !USE_UNLOCKED_IO]: Map
11891         to real functions.
11892
11893 2004-10-11  Yoann Vandoorselaere  <yoann@prelude-ids.org>
11894
11895         * modules/vsnprintf: New file.
11896
11897 2004-10-11  Yoann Vandoorselaere  <yoann@prelude-ids.org>
11898
11899         * m4/vsnprintf.m4: New file.
11900
11901 2004-10-11  Yoann Vandoorselaere  <yoann@prelude-ids.org>
11902
11903         * lib/vsnprintf.h: New file.
11904         * lib/vsnprintf.c: New file.
11905
11906 2004-10-11  Bruno Haible  <bruno@clisp.org>
11907
11908         * MODULES.html.sh (Support for systems lacking ISO C 99): Add
11909         vsnprintf.
11910
11911 2004-10-10  Paul Eggert  <eggert@cs.ucla.edu>
11912
11913         * config/srclistvars.sh: Add GNUSTANDARDS (for eggert only).
11914
11915 2004-10-07  Bruno Haible  <bruno@clisp.org>
11916
11917         * lib/snprintf.c (snprintf): Avoid a memory allocation if the result
11918         fits into the provided buffer.
11919
11920 2004-10-06  Paul Eggert  <eggert@cs.ucla.edu>
11921
11922         * lib/diacrit.c, diacrit.h: Add GPL notice.
11923
11924         * lib/atanl.c, logl.c: Add GPL notice, to match glibc's added LGPL
11925         notice.
11926         * lib/atanl.c (atanl): Keep the code as similar to glibc as possible.
11927         * lib/logl.c (logl): Keep the code as similar to glibc as possible.
11928         This avoids a potential constant-folding bug.
11929
11930 2004-10-05  Bruno Haible  <bruno@clisp.org>
11931
11932         * m4/strsep.m4 (gl_FUNC_STRSEP): Require AC_GNU_SOURCE. Don't check
11933         for the declaration of strsep.
11934
11935 2004-10-05  Bruno Haible  <bruno@clisp.org>
11936
11937         * lib/strsep.h: Don't declare strsep() if HAVE_STRSEP.
11938
11939 2004-10-04  Simon Josefsson  <jas@extundo.com>
11940
11941         * modules/memmem: New file.
11942         * tests/test-memmem.c: New file.
11943         * MODULES.html.sh (Extra functions based on ANSI C 89): Add memmem.
11944
11945 2004-10-04  Simon Josefsson  <jas@extundo.com>
11946
11947         * m4/memmem.m4: New file.
11948
11949 2004-10-04  Simon Josefsson  <jas@extundo.com>
11950
11951         * lib/memmem.h: New file.
11952         * lib/memmem.c: New file, taken from glibc.
11953
11954 2004-10-04  Simon Josefsson  <jas@extundo.com>
11955
11956         * lib/error.c, md5.c, regex.c: Use '#if USE_UNLOCKED_IO' instead of
11957         '#ifdef USE_UNLOCKED_IO'.
11958
11959 2004-10-04  Simon Josefsson  <jas@extundo.com>
11960
11961         * config/srclist.txt: Add memmem from glibc.
11962
11963 2004-10-04  Paul Eggert  <eggert@cs.ucla.edu>
11964
11965         * modules/xalloc (Files, Makefile.am): Remove xstrdup.c.
11966
11967         * modules/argmatch, modules/argp, modules/closeout, modules/error,
11968         modules/exclude, modules/getdate, modules/getline,
11969         modules/getndelim2, modules/getpass, modules/getpass-gnu,
11970         modules/getusershell, modules/linebuffer, modules/md5,
11971         modules/mountlist, modules/posixtm, modules/readtokens,
11972         modules/readutmp, modules/regex, modules/sha1,
11973         modules/version-etc, modules/yesno:
11974         Remove dependency on unlocked-io.
11975
11976 2004-10-04  Paul Eggert  <eggert@cs.ucla.edu>
11977
11978         * m4/xalloc.m4 (gl_PREREQ_XSTRDUP): Remove.  All uses removed.
11979
11980         * m4/unlocked-io.m4: Add copyright notice.
11981         (gl_FUNC_GLIBC_UNLOCKED_IO): Define USE_UNLOCKED_IO.
11982
11983 2004-10-04  Paul Eggert  <eggert@cs.ucla.edu>
11984
11985         * lib/xalloc.h (xmemdup): Renamed from xclone.  All uses changed.
11986         * lib/xmalloc.c (xmemdup): Likewise.
11987         * lib/xalloc.h (CCLONE, CLONE, NEW, XCALLOC, XMALLOC, XREALLOC,
11988         XFREE): Remove these long-obsolescent macros.
11989         * lib/xmalloc.c (xstrdup): Implementation moved here from xstrdup.c
11990         * lib/xstrdup.c: Remove.
11991
11992         * lib/regex.c (re_comp): Cast gettext return value to char *,
11993         Problem reported by Martin Neitzel via Mark D. Baushke.
11994
11995 2004-10-04  Paul Eggert  <eggert@cs.ucla.edu>
11996
11997         * lib/argmatch.c, closeout.c, error.c, exclude.c, getdate.y,
11998         getndelim2.c, getpass.c, getusershell.c, linebuffer.c,
11999         md5.c, mountlist.c, posixtm.c, readtokens.c, readutmp.c,
12000         regex.c, sha1.c, version-etc.c, yesno.c:
12001         Include "unlocked-io.h" only if USE_UNLOCKED_IO.
12002         * lib/unlocked-io.h: Don't worry about USE_UNLOCKED_IO; that's now
12003         the includer's responsibility.
12004
12005         Sync from coreutils.
12006
12007         * lib/modechange.c (mode_compile): Don't decrement a pointer that
12008         points to the start of a string, as the C Standard says the
12009         resulting behavior is undefined.
12010
12011         * lib/backupfile.h (enum backuptype): Rename none -> no_backups,
12012         simple -> simple_backups, numbered_existing ->
12013         numbered_existing_backups, numbered -> numbered_backups
12014         to avoid shadowing problems.  All uses changed.
12015         * lib/argmatch.c (enum backuptype) [defined TEST]: Likewise.
12016         * lib/backupfile.c (check_extension, numbered_backup):
12017         Rename locals to avoid shadowing 'basename'.
12018         * lib/backupfile.h (VALID_BACKUP_TYPE): Don't evaluate arg more than
12019         once.
12020
12021         * lib/.cppi-disable: Add getopt_.h, getopt_int.h.
12022         * lib/.cvsignore: Add getopt.h.
12023
12024 2004-10-04  Bruno Haible  <bruno@clisp.org>
12025
12026         * modules/README: New file.
12027         * gnulib-tool (func_all_modules, func_verify_module): modules/README is
12028         not a module.
12029
12030 2004-10-02  Jim Meyering  <jim@meyering.net>
12031
12032         * lib/dirfd.h, getpagesize.h: Add copyright notice.
12033
12034 2004-10-01  Yoann Vandoorselaere <yoann@prelude-ids.org>
12035
12036         * modules/strsep: New file.
12037
12038 2004-10-01  Yoann Vandoorselaere <yoann@prelude-ids.org>
12039
12040         * m4/strsep.m4: New file.
12041
12042 2004-10-01  Yoann Vandoorselaere <yoann@prelude-ids.org>
12043
12044         * lib/strsep.h: New file.
12045         * lib/strsep.c: New file.
12046
12047 2004-10-01  Simon Josefsson  <jas@extundo.com>
12048
12049         * lib/snprintf.c (snprintf): Handle size==0.
12050
12051 2004-10-01  Simon Josefsson  <jas@extundo.com>
12052             Bruno Haible  <bruno@clisp.org>
12053
12054         * lib/snprintf.c: Include <stdarg.h>, <stdlib.h>, <string.h>.
12055         (snprintf): Declare 'args'.
12056
12057 2004-10-01  Paul Eggert  <eggert@cs.ucla.edu>
12058
12059         * lib/snprintf.c: Remove comments as to why each header is needed.
12060
12061 2004-10-01  Bruno Haible  <bruno@clisp.org>
12062
12063         * MODULES.html.sh: Add strsep.
12064
12065 2004-09-30  Simon Josefsson  <jas@extundo.com>
12066
12067         * modules/snprintf: New file.
12068
12069 2004-09-30  Simon Josefsson  <jas@extundo.com>
12070
12071         * m4/snprintf.m4: New file.
12072
12073 2004-09-30  Simon Josefsson  <jas@extundo.com>
12074
12075         * lib/snprintf.h, snprintf.c: New files.
12076
12077 2004-09-30  Sergey Poznyakoff  <gray@Mirddin.farlep.net>
12078
12079         * lib/argp-help.c (canon_doc_option): Fixed coredump if *name==NULL
12080         (hol_entry_help): Never translate an empty string.
12081         Do not translate option tag (opt->name) if OPTION_NO_TRANS is set
12082         * lib/argp.h (OPTION_NO_TRANS): New option.
12083
12084 2004-09-30  Paul Eggert  <eggert@cs.ucla.edu>
12085
12086         * modules/argp (Maintainer): Replace Simon Josefsson
12087         by Sergey Poznyakoff.
12088
12089 2004-09-30  Paul Eggert  <eggert@cs.ucla.edu>
12090
12091         * config/srclist.txt: Comment-out argp/argp.h, until we get the argp
12092         changes merged back into glibc.
12093
12094 2004-09-30  Paul Eggert  <eggert@cs.ucla.edu>
12095
12096         * MODULES.html.sh (Support for systems lacking ISO C 99): Add snprintf.
12097
12098 2004-09-29  Oskar Liljeblad  <oskar@osk.mine.nu>
12099
12100         * lib/xvasprintf.c: Include xalloc.h.
12101         (xvasprintf): Use xalloc_die, not xmalloc_die.
12102
12103 2004-09-29  Bruno Haible  <bruno@clisp.org>
12104
12105         * modules/alloca-opt: New file, derived from modules/alloca.
12106         * modules/allocsa: Depend on alloca-opt instead of alloca.
12107         * modules/setenv: Likewise.
12108         * modules/vasnprintf: Likewise.
12109         * MODULES.html.sh: Add alloca-opt.
12110
12111 2004-09-28  Simon Josefsson  <jas@extundo.com>
12112
12113         * gnulib-tool: New parameter --lgpl, to asseert that modules are
12114         LGPL, and to replace license template from GPL to LGPL.
12115
12116 2004-09-28  Paul Eggert  <eggert@cs.ucla.edu>
12117
12118         * modules/dummy: Change license to LGPL.
12119
12120 2004-09-28  Paul Eggert  <eggert@cs.ucla.edu>
12121
12122         * lib/dummy.c: Change copyright notice to FSF, and license to GPL.
12123
12124 2004-09-24  Simon Josefsson  <jas@extundo.com>
12125
12126         * modules/minmax (License): Change from GPL to LGPL.
12127
12128 2004-09-23  Simon Josefsson  <jas@extundo.com>
12129
12130         * gnulib-tool (--import): Typo.
12131
12132 2004-09-23  Simon Josefsson  <jas@extundo.com>
12133
12134         * gnulib-tool (--import): Make sure *.m4 end up in m4/ by default.
12135
12136 2004-09-22  Bruno Haible  <bruno@clisp.org>
12137
12138         * modules/*: Add 'License' field.
12139         * gnulib-tool: Accept --extract-license option.
12140         (func_get_license): New function.
12141
12142 2004-09-21  Bruno Haible  <bruno@clisp.org>
12143
12144         * modules/vasnprintf (Files): Add m4/stdint_h.m4, m4/inttypes_h.m4.
12145         Reported by Simon Josefsson.
12146
12147 2004-09-20  Paul Eggert  <eggert@cs.ucla.edu>
12148
12149         * modules/inttostr (Files): Add m4/longlong.m4, since it uses
12150         gl_AC_TYPE_LONG_LONG.
12151
12152 2004-09-20  Paul Eggert  <eggert@cs.ucla.edu>
12153
12154         * config/srclist.txt: Add getsubopt.c, since libc bought our changes.
12155
12156 2004-09-18  Simon Josefsson  <jas@extundo.com>
12157         and  Paul Eggert  <eggert@cs.ucla.edu>
12158
12159         * gnulib-tool: Replace various ad-hoc automake/autoconf/aclocal
12160         calls with autoreconf.  Define GL_LIB.
12161
12162 2004-09-14  Karl Berry  <karl@gnu.org>
12163
12164         * config/srclist.txt: unsync setenv.c, sigh.
12165
12166 2004-09-13  Paul Eggert  <eggert@cs.ucla.edu>
12167
12168         * lib/argp-pvh.c (argp_program_version_hook): Provide initial value.
12169         Problem reported by Bruno Haible in:
12170         http://lists.gnu.org/archive/html/bug-tar/2004-09/msg00023.html
12171
12172 2004-09-13  Paul Eggert  <eggert@cs.ucla.edu>
12173
12174         * config/srclist.txt: Comment out argp-pvh.c.
12175
12176 2004-09-11  Paul Eggert  <eggert@cs.ucla.edu>
12177
12178         * lib/mempcpy.h: Wrap the entire include file inside #ifndef mempcpy,
12179         in case some system header has #define'd it.  Problem reported by
12180         Soeren D. Schulze in
12181         <http://lists.gnu.org/archive/html/bug-gnulib/2004-09/msg00017.html>.
12182
12183 2004-09-09  Karl Berry  <karl@gnu.org>
12184
12185         * regex.[ch]: delete from the root.  These were supposed to be
12186                 synced with emacs cvs, but this has not happened for about
12187                 a year, and anyway nothing else uses emacs regex.[ch].
12188                 bug-gnulib mail from Jeff Bailey, 9 Sep 2004 15:49:24 -0700.
12189                 lib/regex[.ch] is untouched.
12190
12191 2004-09-09  Bruno Haible  <bruno@clisp.org>
12192
12193         * modules/vasnprintf (Files): Add m4/eoverflow.m4.
12194
12195 2004-09-09  Bruno Haible  <bruno@clisp.org>
12196
12197         * m4/eoverflow.m4: New file, taken from GNU libiconv eilseq.m4 with
12198         modifications.
12199         * m4/vasnprintf.m4 (gl_FUNC_VASNPRINTF): Require gl_EOVERFLOW.
12200
12201 2004-09-08  Oskar Liljeblad  <oskar@osk.mine.nu>
12202
12203         * modules/xvasprintf: New file.
12204         * MODULES.html.sh (Extra functions based on ANSI C 89): Add vasprintf.
12205
12206 2004-09-08  Oskar Liljeblad  <oskar@osk.mine.nu>
12207
12208         * lib/xvasprintf.h: New file.
12209         * lib/xvasprintf.c: New file.
12210         * lib/xasprintf.c: New file.
12211
12212 2004-09-08  Bruno Haible  <bruno@clisp.org>
12213
12214         * m4/stdint.m4: New file, taken from GNU clisp with modifications.
12215
12216 2004-09-08  Bruno Haible  <bruno@clisp.org>
12217
12218         * lib/vasnprintf.c (VASNPRINTF): Signal EOVERFLOW if the resulting
12219         length is > INT_MAX.
12220         * lib/vasprintf.c (vasprintf): Don't test for length > INT_MAX any
12221         more.
12222
12223 2004-09-08  Bruno Haible  <bruno@clisp.org>
12224
12225         * lib/stdint_.h: New file, taken from GNU clisp.
12226
12227 2004-09-08  Bruno Haible  <bruno@clisp.org>
12228             Oskar Liljeblad  <oskar@osk.mine.nu>
12229
12230         * modules/stdint: New file.
12231         * MODULES.html.sh (Support for systems lacking ISO C 99): Add stdint.
12232
12233 2004-08-19  Paul Eggert  <eggert@cs.ucla.edu>
12234
12235         Import from coreutils.
12236         * lib/userspec.c: Don't use <alloca.h>, so that we don't use alloca on
12237         strings on unbounded length.  alloca's performance benefits aren't
12238         that important here.
12239         (V_STRDUP): Remove.
12240         (parse_with_separator): New function, with most of the internals
12241         of the old parse_user_spec.  Allow user to omit both user and group,
12242         for compatibility with FreeBSD.
12243         Clone only the user name, not the entire spec.
12244         Do not set *uid, *gid unless entirely successful.
12245         Avoid memory leak in some failing cases.
12246         Fix regression for USER.GROUP reported by Dmitry V. Levin in
12247         <http://lists.gnu.org/archive/html/bug-coreutils/2004-08/msg00102.html>
12248         (parse_user_spec): Rewrite to use parse_with_separator.
12249
12250 2004-08-19  Paul Eggert  <eggert@cs.ucla.edu>
12251
12252         * modules/userspec: Don't depend on alloca.
12253
12254 2004-08-19  Paul Eggert  <eggert@cs.ucla.edu>
12255
12256         * m4/userspec.m4 (gl_USERSPEC): Don't require AC_FUNC_ALLOCA.
12257
12258 2004-08-17  Paul Eggert  <eggert@cs.ucla.edu>
12259
12260         * MODULES.html.sh: Add xalloc-die, c-strtod, c-strtold, raise,
12261         readtokens0, getcwd, fcntl-safer, canonicalize, cycle-check,
12262         utimecmp, utimens, xnanosleep.  Rename sha to sha1.
12263
12264 2004-08-16  Simon Josefsson  <jas@extundo.com>
12265
12266         * gnulib-tool: Use sed instead of autoconf --trace, inspired by
12267         libtoolize behaviour by "Gary V. Vaughan" <gary@gnu.org>.
12268         Add --dry-run for --import.
12269         Let user provided command line parameters override configure.ac
12270         settings.
12271
12272 2004-08-12  Simon Josefsson  <jas@extundo.com>
12273
12274         * m4/getopt.m4 (gl_GETOPT_SUBSTITUTE): New macro,
12275         as discussed with Paul Eggert in threads rooted at
12276         <http://lists.gnu.org/archive/html/bug-gnulib/2004-06/msg00039.html>
12277         and
12278         <http://lists.gnu.org/archive/html/bug-gnulib/2004-07/msg00001.html>.
12279         Before, the test was empty, and relied on ELIDE_CODE in source
12280         code.)
12281         (gl_PREREQ_GETOPT): New macro.
12282         (gl_GETOPT): Use them.
12283
12284 2004-08-12  Simon Josefsson  <jas@extundo.com>
12285
12286         * lib/getopt.c, getopt1.c: Remove ELIDE_CODE hack.
12287         * lib/getopt_.h: Renamed from getopt.h.
12288
12289 2004-08-12  Simon Josefsson  <jas@extundo.com>
12290
12291         * gnulib-tool: Add --source-base, --m4-base, --libtool options.
12292         Change default library name from libfoo to libgnu.
12293         Now, if you have a configure.ac that says:
12294                 gl_SOURCE_BASE(gl)
12295                 gl_M4_BASE(gl/m4)
12296                 gl_MODULES(error getopt etcetera)
12297                 gl_INIT
12298         you can import all you need by running:
12299                 ../gnulib/gnulib-tool --import
12300
12301         * modules/getopt (Files): Rename getopt.h to getopt_.h.
12302         (Makefile.am): Rewrite, use logic from argz.
12303         (Include): Use <getopt.h> instead of "getopt.h".
12304
12305 2004-08-12  Paul Eggert  <eggert@cs.ucla.edu>
12306
12307         * modules/argp (Files): Add m4/unlocked-io.m4.
12308         (Depends-on): Add extensions.
12309
12310 2004-08-12  Paul Eggert  <eggert@cs.ucla.edu>
12311
12312         * m4/argp.m4 (gl_ARGP): Do not check for argp.h or argp_parse; nobody
12313         uses HAVE_ARGP_H or HAVE_ARGP_PARSE.
12314         Require gl_FUNC_GLIBC_UNLOCKED_IO, gl_USE_SYSTEM_EXTENSIONS.
12315         Check for program_invocation_name, program_invocation_short_name,
12316         flockfile, funlockfile, features.h, _getopt_long_only_r.
12317
12318 2004-08-12  Paul Eggert  <eggert@cs.ucla.edu>
12319
12320         * lib/argp-help.c, argp-parse.c: Use "gettext.h" instead of
12321         its complicated substitute.
12322         * lib/argp-help.c: Include <errno.h>, for program_invocation_short_name
12323         and program_invocation_name.
12324         (__argp_basename) [!_LIBC]: Remove; the only use was
12325         replaced by its body.
12326         (__argp_short_program_name): Change condition from
12327         !defined __argp_short_program_name to
12328         ! (defined _LIBC || HAVE_DECL_PROGRAM_INVOCATION_SHORT_NAME),
12329         to match argp-namefrob.h.
12330         (__argp_failure): Don't assume strerror_r returns char *.
12331         * lib/argp-parse.c (N_): Define unconditionally.
12332         (argp_default_options): Fill out initializers with 0 to avoid
12333         gcc warnings.
12334
12335 2004-08-12  Paul Eggert  <eggert@cs.ucla.edu>
12336
12337         * config/srclist.txt: Remove getopt.c, getopt.h (renamed to getopt_.h),
12338         getopt1.c.
12339
12340 2004-08-11  Paul Eggert  <eggert@cs.ucla.edu>
12341
12342         Merge from coreutils.
12343
12344         * m4/fnmatch.m4 (_AC_LIBOBJ_FNMATCH): Check for wmemchr and wmemcpy.
12345
12346         * m4/obstack.m4 (gl_PREREQ_OBSTACK): Require
12347         gl_AC_HEADER_INTTYPES_H, gl_AC_HEADER_STDINT_H, gl_AC_TYPE_UINTMAX_T.
12348
12349 2004-08-11  Paul Eggert  <eggert@cs.ucla.edu>
12350
12351         Merge from coreutils.
12352
12353         * lib/fnmatch.c (WIDE_CHAR_SUPPORT): Don't set to 1 if missing
12354         wmemchr or wmemcpy.  Problem reported by Robert Dahlem
12355         for Reliant Unix 5.43.
12356
12357         * lib/obstack.c: Include <inttypes.h> and <stdint.h> if available.
12358         (union fooround): Use uintmax_t, not long int.
12359         The rest is a merge from libc:
12360         [defined _LIBC]: Include <shlib-compat.h>.
12361         (_obstack) [defined _LIBC]: Remove after 2.3.4.
12362
12363         * lib/settime.c (settime): Recode to avoid warning with
12364         Sun Forte C 6U2.
12365
12366         * lib/strverscmp.c: Convert to UTF-8.
12367
12368 2004-08-11  Paul Eggert  <eggert@cs.ucla.edu>
12369
12370         * modules/obstack (Files): Add m4/inttypes_h.m4, m4/stdint_h.m4,
12371         m4/uintmax_t.m4.
12372
12373 2004-08-09  Paul Eggert  <eggert@cs.ucla.edu>
12374
12375         * modules/xalloc-die: New file.
12376         * modules/xalloc: Remove dependencies on error, gettext, exitfail.
12377
12378         * modules/md5 (Files): Add m4/uint32_t.m4.
12379         * modules/sha1: Renamed from modules/sha.
12380         (Files):
12381         Rename lib/sha.h to lib/sha1.h.
12382         Rename lib/sha.c to lib/sha1.c.
12383         Rename m4/sha.m4 to m4/sha1.m4.
12384         (lib_SOURCES): Likewise.
12385         (configure.ac): Rename gl_SHA to gl_SHA1.
12386         (Include): sha.h -> sha1.h.
12387
12388 2004-08-09  Paul Eggert  <eggert@cs.ucla.edu>
12389
12390         * m4/uint32_t.m4, uintptr_t.m4: New files.
12391         * m4/sha1.m4: Renamed from sha.m4.
12392         (gl_SHA1): Renamed from gl_SHA.  All uses changed.
12393
12394 2004-08-09  Paul Eggert  <eggert@cs.ucla.edu>
12395
12396         * lib/obstack.h (obstack_empty_p):
12397         Don't assume that chunk->contents is suitably aligned.
12398         * lib/obstack.c (_obstack_begin, _obstack_begin_1, _obstack_newchunk):
12399         Likewise. Problem reported by Benno in
12400         <http://sources.redhat.com/ml/libc-alpha/2004-08/msg00055.html>.
12401
12402         * lib/chown.c (rpl_chown): Work even if the file is writeable but not
12403         readable.  This could be improved further but it'd take some work.
12404
12405 2004-08-08  Simon Josefsson  <jas@extundo.com>
12406
12407         * modules/xgethostname (Depends-on): Remove exit and error (not
12408         used).
12409
12410         * modules/getpass-gnu: Add getpass.h.
12411         (Depends-on): Add stdbool.
12412         * modules/getpass: Add getpass.h.
12413
12414 2004-08-08  Simon Josefsson  <jas@extundo.com>
12415
12416         * m4/getpass.m4 (gl_FUNC_GETPASS, gl_FUNC_GETPASS_GNU):
12417         Check getpass declaration.
12418
12419 2004-08-08  Simon Josefsson  <jas@extundo.com>
12420
12421         * lib/xgethostname.c: Don't include error.h (not used).
12422
12423         * lib/getpass.h: Add.
12424         * lib/getpass.c: Include getpass.h first.
12425
12426 2004-08-08  Paul Eggert  <eggert@cs.ucla.edu>
12427
12428         * lib/xalloc-die.c: New files.
12429         * lib/xalloc.h (xalloc_fail_func, xalloc_msg_memory_exhausted): Remove.
12430         All uses removed.
12431         * lib/xmalloc.c (xalloc_fail_func, xalloc_msg_memory_exhausted):
12432         Likewise. Move inclusions of gettext.h, error.h, exitfail.h to
12433         xalloc-die.c.
12434         (_, N_, xalloc_die): Move to xalloc-die.c.
12435         * lib/userspec.c (parse_user_spaec): Use xstrdup rather than strdup,
12436         so that we needn't mess with xalloc_msg_memory_exhausted.
12437
12438         * lib/sha1.h: Renamed from sha.h.
12439         (SHA1_H): Renamed from _SHA_H.
12440         (sha1_ctx): Renamed from sha_ctx.
12441         (sha1_init_ctx): Renamed from sha_init_ctx.
12442         (sha1_process_block): Renamed from sha_process_block.
12443         (sha1_process_bytes): Renamed from sha_process_bytes.
12444         (sha1_finish_ctx): Renamed from sha_finish_ctx.
12445         (sha1_read_ctx): Renamed from sha_read_ctx.
12446         (sha1_stream): Renamed from sha_stream.
12447         (sha1_buffer): Renamed from sha_buffer.
12448         * lib/sha1.c: Likewise; renamed from sha.c.
12449         Do not include <sys/types.h>.
12450         Include <stddef.h> rather than <stdlib.h>.
12451
12452 2004-08-08  Bruno Haible  <bruno@clisp.org>
12453
12454         * lib/pathname.h (FILE_SYSTEM_PREFIX_LEN): Renamed from
12455         FILESYSTEM_PREFIX_LEN.
12456         * lib/progreloc.c: Likewise.
12457         * lib/concatpath.c (concatenated_pathname): Use FILE_SYSTEM_PREFIX_LEN.
12458
12459 2004-08-06  Simon Josefsson  <jas@extundo.com>
12460
12461         * modules/progname (Depends-on): Don't depend on stdbool.
12462
12463 2004-08-06  Simon Josefsson  <jas@extundo.com>
12464
12465         * modules/getsubopt: New file.
12466         * MODULES.html.sh (Support for systems lacking POSIX:2001): Add
12467         getsubopt.
12468
12469 2004-08-06  Paul Eggert  <eggert@cs.ucla.edu>
12470
12471         More merge from coreutils.
12472
12473         * m4/utimens.m4, utimecmp.m4: New files.
12474         * m4/backupfile.m4, euidacces.m4, acl.m4, afs.m4, calloc.m4, dirfd.m4,
12475         fsusage.m4, jm-macros.m4, ls-mntd-fs.m4, md5.m4, mountlist.m4,
12476         prereq.m4, sha.m4: Import changes from coreutils.
12477
12478 2004-08-06  Paul Eggert  <eggert@cs.ucla.edu>
12479
12480         More merge from coreutils.
12481         * modules/raise, modules/readtokens0, modules/utimens,
12482         modules/utimecmp, module/xnanosleep: New files.
12483         * modules/strftime: Add lib/strftime.h.
12484         Change include from <time.h> to "strftime.h".
12485         * modules/yesno: Add lib/yesno.h.
12486         * modules/backupfile: Remove lib/addext.c.
12487         * modules/euidaccess: Add stat-macros.h.
12488         * modules/canonicalize, modules/euidaccess,
12489         modules/filemode, modules/lchown, modules/makepath,
12490         modules/rmdir, modules/stat: Likewise.
12491
12492 2004-08-06  Paul Eggert  <eggert@cs.ucla.edu>
12493
12494         Merge from tar.
12495         * lib/argp-help.c (make_hol, hol_append): Don't assume that
12496         SIZE_MAX is a valid preprocessor constant.
12497         (__argp_basename): Change from "#ifndef _LIBC"
12498         to "#ifndef __argp_short_program_name", so that
12499         we don't compile these functions for tar.
12500
12501         More merges from coreutils.
12502         * lib/raise.c, lib/readtokens0.h, lib/readtokens0.c, lib/strftime.h,
12503         lib/utimens.h, lib/utimens.c, lib/utimecmp.h, lib/utimecmp.c,
12504         lib/xnanosleep.h, lib/xnanosleep.c, lib/yesno.h: New files.
12505         * lib/addext.c: Remove; no longer needed.
12506         * lib/yesno.c, lib/argmatch.h, lib/argmatch.c, lib/backupfile.h,
12507         lib/backupfile.c, lib/euidaccess.c, lib/filemode.c, lib/closeout.c,
12508         lib/dup2.c, lib/exclude.c, lib/fileblocks.c, lib/filemode.c,
12509         lib/fnmatch.c, lib/fnmtahc_loop.c, lib/fopen-safer.c, lib/fsusage.c,
12510         lib/fsusage.h, lib/ftruncate.c, lib/full-write.c, lib/getdate.y,
12511         lib/getloadavg.c, lib/getugroups.c, lib/hard-locale.c,
12512         lib/hard-locale.h, lib/hash.c, lib/human.c, lib/human.h, lib/lchown.c,
12513         lib/lchown.h, lib/makepath.c, lib/makepath.h, lib/md5.c, lib/md5.h,
12514         lib/memchr.c, lib/memcoll.c, lib/memrchr.c, lib/modechange.c,
12515         lib/modechange.h, lib/mountlist.c, lib/mountlist.h, lib/nanosleep.c,
12516         lib/posixtm.c, lib/putenv.c, quotearg.c, lib/quotearg.h,
12517         lib/readtokens.c, lib/readutmp.c, lib/readutmp.h, lib/rmdir.c,
12518         lib/safe-read.c, lib/save-cwd.c, lib/savedir.c, lib/setenv.c,
12519         lib/sig2str.c, lib/stat.c, lib/strtoimax.c, lib/strverscmp.c,
12520         lib/userspec.c, lib/utime.c, lib/version-etc.c., lib/xgethostname.c,
12521         lib/xmemcoll.c, lib/xreadlink.c, lib/xstrtod.c, lib/xstrtod.h,
12522         lib/xstrtoimax.c, lib/xstrtol.c, lib/xstrtol.h, lib/xstrtoumax.c:
12523         Import changes from coreutils.
12524
12525 2004-08-05  Simon Josefsson  <jas@extundo.com>
12526
12527         * m4/strdup.m4: Always run gl_PREREQ_STRDUP, since strdup.h need it.
12528
12529 2004-08-05  Simon Josefsson  <jas@extundo.com>
12530
12531         * m4/getsubopt.m4: New file.
12532
12533 2004-08-05  Paul Eggert  <eggert@cs.ucla.edu>
12534
12535         Merge from coreutils.
12536
12537         * m4/c-strtod.m4, canonicalize.m4, fcntl-safer.m4, getcwd-path-max.m4:
12538         New files.
12539
12540         * m4/dos.m4 (gl_AC_DOS): filesystem -> file system renaming.
12541         FILESYSTEM_PREFIX_LEN ->
12542         FILE_SYSTEM_PREFIX_LEN.
12543         FILESYSTEM_ACCEPTS_DRIVE_LETTER_PREFIX ->
12544         FILE_SYSTEM_ACCEPTS_DRIVE_LETTER_PREFIX.
12545         FILESYSTEM_BACKSLASH_IS_FILE_NAME_SEPARATOR ->
12546         FILE_SYSTEM_BACKSLASH_IS_FILE_NAME_SEPARATOR.
12547
12548         * m4/path-concat.m4 (gl_PATH_CONCAT): Don't require gl_AC_DOS, the
12549         prerequisite modules now handle the DOS stuff.
12550         Don't check for unistd.h.
12551
12552 2004-08-05  Paul Eggert  <eggert@cs.ucla.edu>
12553
12554         Merge from coreutils.
12555
12556         * lib/.gdb-history: Remove; this doesn't belong here.
12557
12558         * lib/c-strtod.c, c-strtod.h, c-strtold.c, cycle-check.c,
12559         cycle-check.h, dev-ino.h, canonicalize.h, canonicalize.c,
12560         fcntl-safer.h, fcntl-safer.c, getcwd.c: New files.
12561
12562         * lib/dirname.h: Include <stdbool.h>.
12563         (FILE_SYSTEM_PREFIX_LEN): Renamed from FILESYSTEM_PREFIX_LEN,
12564         for consistency with POSIX terminology.  All uses changed.
12565         (IS_ABSOLUTE_FILE_NAME, IS_RELATIVE_FILE_NAME): New macros.
12566         (strip_trailing_slashes): Use bool for booleans.
12567         * lib/stripslash.c (strip_trailing_slashes): Likewise.
12568
12569         * lib/error.c: Work around bug in OpenBSD 3.4 sterror_r: it
12570         sometimes returns a positive errno value even when it succeeds.
12571         (print_errno_message) [!LIBC]: Fall back on strerror if
12572         __strerror_r fails.
12573
12574         * lib/path-concat.c (mempcpy): Don't define if a system header defines
12575         it. Don't include stdio.h, stdlib.h, unistd.h, strdup.h.
12576         (longest_relative_suffix): New function.
12577         (path_concat): Use it.  Assume first argument is not NULL.
12578         Port to DOS.  Omit redundant separators.
12579         Report an error instead of returning NULL.
12580         Use mempcpy instead of memcpy.
12581         (xpath_concat): Remove: not declared or used.
12582
12583         * lib/same.h: Include <stdbool.h>
12584         (same_name): Return bool, not int.
12585         * lib/same.c (same_name): Likewise.
12586         (errno): Don't declare; we assume C89 or better now.
12587
12588         * lib/stat-macros (S_ISCTG, S_ISOFD, S_ISOFL): New macros,
12589         if not already defined.
12590
12591         * lib/xgetcwd.c (errno): Don't declare; we assume C89 or better now.
12592         * lib/dup-safer.c (errno): Likewise.
12593
12594 2004-08-05  Paul Eggert  <eggert@cs.ucla.edu>
12595
12596         Merge from coreutils.
12597         * modules/c-strtod, modules/c-strtold, modules/canonicalize,
12598         modules/cycle-check, modules/fcntl-safer, modules/getcwd: New files.
12599         * modules/path-concat: Don't depend on strdup.
12600
12601 2004-08-03  Simon Josefsson  <jas@extundo.com>
12602
12603         * lib/strdup.h: Only use HAVE_DECL_STRDUP if defined.
12604         * lib/progname.h: Don't include stdbool.h.
12605
12606 2004-08-03  Paul Eggert  <eggert@cs.ucla.edu>
12607
12608         * modules/fatal: Remove, as the "fatal" module wasn't used or working.
12609         * MODULES.html.sh (func_all_modules): Remove fatal.
12610
12611 2004-08-03  Paul Eggert  <eggert@cs.ucla.edu>
12612
12613         * m4/fatal.m4: Remove, as the "fatal" module wasn't used or working.
12614
12615 2004-08-03  Paul Eggert  <eggert@cs.ucla.edu>
12616
12617         * lib/fatal.c, fatal.h: Remove as the "fatal" module wasn't used or
12618         working.
12619
12620 2004-08-02  Simon Josefsson  <jas@extundo.com>
12621
12622         * lib/getsubopt.h: New file, with comments from Bruno Haible.
12623         * lib/getsubopt.c: New file, from glibc, but slightly modified based on
12624         suggestions from Paul Eggert <eggert@cs.ucla.edu>.
12625
12626 2004-08-01  Simon Josefsson  <jas@extundo.com>
12627
12628         * lib/xgetdomainname.c: Include stdlib.h, for free().
12629
12630 2004-07-19  Bruno Haible  <bruno@clisp.org>
12631
12632         * MODULES.html.sh (func_all_modules): Add dummy.
12633
12634 2004-07-16  Simon Josefsson  <jas@extundo.com>
12635
12636         * modules/dummy: New file.
12637
12638 2004-07-16  Simon Josefsson  <jas@extundo.com>
12639
12640         * lib/dummy.c: New file.
12641
12642 2004-07-16  Bruno Haible  <bruno@clisp.org>
12643
12644         * lib/backupfile.h: Add extern "C" for C++.
12645         * lib/closeout.h: Likewise.
12646         * lib/copy-file.h: Likewise.
12647         * lib/findprog.h: Likewise.
12648         * lib/full-write.h: Likewise.
12649         * lib/pathname.h: Likewise.
12650         * lib/progname.h: Likewise.
12651         * lib/stpcpy.h: Likewise.
12652         * lib/stpncpy.h: Likewise.
12653         * lib/strcase.h: Likewise.
12654         * lib/strstr.h: Likewise.
12655         * lib/xalloc.h: Likewise.
12656
12657         * lib/mbswidth.h: Add extern "C" for C++.
12658         Reported by Albert Chin-A-Young <china@thewrittenword.com>.
12659
12660 2004-07-13  Robert Millan  <robertmh@gnu.org>
12661
12662         * m4/host-os.m4: s/KNetBSD/kNetBSD/g and s/KFreeBSD/kFreeBSD/g.
12663
12664 2004-07-09  Simon Josefsson  <jas@extundo.com>
12665
12666         * lib/getndelim2.c: Include stddef.h, for ptrdiff_t.  (FreeBSD 4.9
12667         failed without this.)
12668
12669 2004-07-09  Paul Eggert  <eggert@cs.ucla.edu>
12670
12671         * modules/chown (Files): Add lib/fchown-stub.c, since
12672         gl_PREREQ_CHOWN invokes AC_LIBOBJ(fchown-stub).
12673
12674 2004-07-09  Paul Eggert  <eggert@cs.ucla.edu>
12675
12676         * lib/fchown-stub.c: New file.
12677
12678 2004-06-24  Jim Meyering  <jim@meyering.net>
12679
12680         * lib/obstack.h (obstack_base): Cast to (void *), per documentation.
12681
12682 2004-06-22  Paul Eggert  <eggert@cs.ucla.edu>
12683
12684         * modules/argz: Omit "#include".
12685
12686         * MODULES.html.sh (func_all_modules): Add calloc, to match
12687         2004-06-01 addition of calloc module.
12688
12689 2004-06-22  Paul Eggert  <eggert@cs.ucla.edu>
12690
12691         * m4/argz.m4: New file, which is autoupdated from libtool.
12692
12693 2004-06-22  Paul Eggert  <eggert@cs.ucla.edu>
12694
12695         * lib/argz.c, argz_.h: New files, which are autoupdated from libtool.
12696
12697 2004-06-22  Paul Eggert  <eggert@cs.ucla.edu>
12698
12699         * config/srclist-update: Don't insist on "USA." before the
12700         close-comment, as libtool omits the period and puts the */ on a
12701         separate line.
12702         * config/srclist.txt: Add argz.c, argz_.h, argz.m4.
12703         * config/srclistvars.sh: Add LIBTOOL (for eggert only).
12704
12705 2004-06-22  Gary V. Vaughan  <gary@gnu.org>
12706
12707         * modules/argz: New file.
12708         * MODULES.html.sh (func_all_modules): Add argz.
12709
12710 2004-06-12  Jim Meyering  <jim@meyering.net>
12711         and  Paul Eggert  <eggert@cs.ucla.edu>
12712
12713         * modules/hash (Files): Add lib/xalloc.h.
12714         * modules/pipe (Depends-on): Add wait-process.
12715         * modules/stat (Depends-on): Add xalloc.
12716         * modules/userspec (Files): Add lib/userspec.h.
12717         * modules/xstrto
12718
12719         Upgrade from gettext-0.13.
12720         * modules/gettext (Files): Add m4/intmax.m4, m4/longdouble.m4,
12721         m4/longlong.m4, m4/printf-posix.m4, m4/signed.m4, m4/size_max.m4,
12722         m4/wchar_t.m4, m4/wint_t.m4, m4/xsize.m4.
12723
12724 2004-06-10  Jim Meyering  <jim@meyering.net>
12725
12726         * lib/calloc.c: New file.
12727
12728 2004-06-06  Paul Eggert  <eggert@cs.ucla.edu>
12729
12730         * lib/getdate.y (yylex): Allow space between sign and number.
12731         Problem reported by Dan Jacobson.
12732
12733 2004-06-01  Paul Eggert  <eggert@cs.ucla.edu>
12734
12735         Merge from coreutils CVS.
12736
12737         * m4/backupfile.m4, dirname.m4, human.m4, inttypes.m4, longlong.m4,
12738         makepath.m4, memchr.m4, memcmp.m4, mountlist.m4, path-concat.m4,
12739         putenv.m4, quotearg.m4, readutmp.m4, strtoimax.m4, strtoll.m4,
12740         strtoull.m4, strtoumax.m4, ulonglong.m4, vasnprintf.m4,
12741         xstrtol.m4: Fix copyright date and/or serial number.
12742
12743         * m4/chown.m4 (gl_PREREQ_CHOWN): Check for fcntl.h.
12744         See if we need an fchown replacement.
12745         (gl_FUNC_CHOWN_FOLLOWS_SYMLINK): New macro.
12746         (gl_FUNC_CHOWN): Require gl_FUNC_CHOWN_FOLLOWS_SYMLINK,
12747         and use the replacement function if we detect either defect.
12748
12749         * m4/prereq.m4 (gl_PREREQ): Add gl_ALLOCSA, gl_CLOEXEC, gl_INTTOSTR,
12750         gl_UTIMECMP.
12751
12752 2004-06-01  Paul Eggert  <eggert@cs.ucla.edu>
12753         and  Jim Meyering  <jim@meyering.net>
12754
12755         Merge from coreutils CVS.
12756
12757         * lib/stat-macros.h: New file, with contents from file-type.h
12758         and coreutils' system.h.
12759         * lib/file-type.c: Include "stat-macros.h".
12760         * lib/file-type.h (file_type): Move all macro definitions to new file,
12761         stat-macros.h.
12762
12763         * lib/chown.c (rpl_chown) [CHOWN_FAILS_TO_HONOR_ID_OF_NEGATIVE_ONE]:
12764         Wrap old code with this conditional.
12765         [CHOWN_MODIFIES_SYMLINK]: Try to work around a chown
12766         function that does not dereference symlinks.
12767         * lib/lchown.c (lchown) [CHOWN_MODIFIES_SYMLINK]: Just call chown.
12768
12769         * lib/xreadlink.c: Include xreadlink.h first, to catch .h file
12770         dependency problems.
12771         (xreadlink): Accept new arg SIZE, for efficiency.
12772         All decls and uses changed.
12773         * lib/xreadlink.h: Include <stddef.h>, for size_t.
12774
12775         * lib/.cppi-disable: Add alloca_.h, allocsa.h, exit.h, getndelim2.h,
12776         gettext.h, localcharset.h, strdup.h, strndup.h, strtoul.c, time_r.h.
12777
12778         * lib/.cvsignore: Add alloca.h, fnmatch.h, poll.h, stdbool.h,
12779         sysexits.h.
12780
12781 2004-06-01  Jim Meyering  <jim@meyering.net>
12782
12783         * m4/calloc.m4: New file.
12784
12785 2004-05-31  Paul Eggert  <eggert@cs.ucla.edu>
12786
12787         * m4/stdbool.m4 (AC_HEADER_STDBOOL): Detect _Bool bug in HP aC++/ANSI
12788         C B3910B A.05.55 [Dec 04 2003].  Problem reported by Jim Meyering.
12789         Also, fix a typo in a diagnostic.
12790
12791 2004-05-30  Paul Eggert  <eggert@cs.ucla.edu>
12792
12793         * m4/xalloc.m4 (gl_PREREQ_XMALLOC): Do not require AC_FUNC_MALLOC
12794         or AC_FUNC_REALLOC.
12795
12796 2004-05-30  Paul Eggert  <eggert@cs.ucla.edu>
12797
12798         * lib/xmalloc.c (HAVE_MALLOC, HAVE_REALLOC): Do not require these
12799         macros to be defined.
12800         (xnmalloc_inline, xnrealloc_inline, xcalloc): Do not die if
12801         the allocator returns NULL because the requested size is zero.
12802
12803 2004-05-20  Paul Eggert  <eggert@cs.ucla.edu>
12804
12805         * lib/malloc/obstack.c (_obstack) [defined _LIBC]: Bring back this
12806         var.  Add comment explaining why libc still defines it.  This
12807         merges the following patch from glibc:
12808         http://sources.redhat.com/ml/libc-alpha/2004-05/msg00157.html
12809
12810 2004-05-20  Andreas Schwab  <schwab@suse.de>
12811
12812         * m4/free.m4: Replace free if it not known to work, not the other
12813         way round.
12814
12815 2004-05-19  Paul Eggert  <eggert@cs.ucla.edu>
12816
12817         * lib/obstack.c (_obstack): Remove unused variable.  It hasn't been
12818         present in glibc since revision 1.1 of this file.
12819         * lib/obstack.h (_obstack_free, obstack_1grow, obstack_1grow_fast,
12820         obstack_alignment_mask, obstack_alloc, obstack_base,
12821         obstack_blank, obstack_blank_fast, obstack_chunk_size,
12822         obstack_copy, obstack_copy0, obstack_finish, obstack_grow,
12823         obstack_grow0, obstack_init, obstack_int_grow,
12824         obstack_int_grow_fast, obstack_make_room, obstack_memory_used,
12825         obstack_next_free, obstack_object_size, obstack_ptr_grow,
12826         obstack_ptr_grow_fast, obstack_room): Remove declarations of
12827         nonexistent functions.
12828
12829 2004-05-18  Karl Berry  <karl@gnu.org>
12830
12831         * config/srclist.txt: break link for vasnprintf.c.
12832
12833 2004-05-17  Paul Eggert  <eggert@cs.ucla.edu>
12834
12835         Port obstack to the AS/400, where pointers are 16 bytes wide and
12836         you cannot cast an integer to a valid pointer.  This patch is
12837         currently waiting to be integrated into glibc; see
12838         <http://sources.redhat.com/ml/libc-alpha/2004-05/msg00073.html>.
12839
12840         * lib/obstack.h (__PTR_TO_INT, __INT_TO_PTR): Remove.
12841         All uses of __INT_TO_PTR (PTR_TO_INT ...) replaced by __PTR_ALIGN.
12842         (__BPTR_ALIGN, __PTR_ALIGN): New macros.
12843         (struct obstack): temp member is now a union of a pointer and
12844         an integer, instead of an integer.  All integer uses changed.
12845         This does not affect the physical layout of struct obstack,
12846         except on hosts (like the AS/400) where the size or alignment of
12847         void * is greater than that of ptrdiff_t.
12848         (obstack_finish) [! (defined __GNUC__ && defined __STDC__ &&
12849         __STDC__)]: Store temporary in pointer member of union, not
12850         integer member.
12851         * lib/obstack.c: Include <stddef.h>, for offsetof.
12852         (struct fooalign): Remove; it doesn't need a name.
12853         (union fooround): Change double to long double, and add void *.
12854         (DEFAULT_ALIGNMENT): Use offsetof to compute.
12855         (DEFAULT_ALIGNMENT, DEFAULT_ROUNDING): Now an enum constant,
12856         not a macro.  Hence the values are always int; so remove all
12857         casts-to-int in uses.
12858
12859 2004-05-17  Paul Eggert  <eggert@cs.ucla.edu>
12860
12861         * config/srclist.txt: Break link for argp-help.c and argp-parse.c until
12862         we can get this patch merged into glibc.
12863
12864 2004-05-17  Derek R. Price  <derek@ximbiot.com>
12865             Paul Eggert  <eggert@cs.ucla.edu>
12866
12867         * m4/argp: Depend on alloca.
12868
12869 2004-05-17  Derek R. Price  <derek@ximbiot.com>
12870             Paul Eggert  <eggert@cs.ucla.edu>
12871
12872         * lib/argp-help.c, argp-parse.c: Assume <alloca.h> rather than
12873         freecoding.
12874
12875 2004-05-17  Bruno Haible  <bruno@clisp.org>
12876
12877         * lib/vasnprintf.c (VASNPRINTF): Correctly handle the case of a
12878         precision that consists of a '.' followed by an empty digit string.
12879         Patch by Tor Lillqvist <tml@iki.fi>.
12880
12881 2004-05-16  Paul Eggert  <eggert@cs.ucla.edu>
12882
12883         * m4/alloca.m4 (gl_FUNC_ALLOCA): Define HAVE_ALLOCA_H always,
12884         for backward compatibility with older code.  We need our own
12885         alloca.h if _AIX is defined.  Define HAVE_ALLOCA if we discover
12886         it under some other name, and our alloca.h will define it.
12887
12888 2004-05-16  Paul Eggert  <eggert@cs.ucla.edu>
12889             Derek Price  <derek@ximbiot.com>
12890
12891         * lib/alloca.c: Include <alloca.h>, to get our interface.
12892         * lib/alloca_.h: Use __alloca on AIX, so that we don't have to
12893         include <alloca.h> first.  Use C89 prototype for alloca; this
12894         requires including <stddef.h> for size_t.  Use extern "C" if C++.
12895         Use #elif for simplicity, since we can assume C89 now.
12896         Don't try to source the system alloca.h since it will not be found
12897         and to prevent recursively including its replacement.
12898         * lib/fnmatch.c: Include <alloca.h> instead of opencoding.
12899         * lib/regex.c: Likewise.
12900
12901 2004-05-16  Derek Price  <derek@ximbiot.com>
12902             Paul Eggert  <eggert@cs.ucla.edu>
12903
12904         getline cleanup.  This changes the getndelim2 API: both order of
12905         arguments, and meaning of delim2 (now uses EOF, not 0, to indicate
12906         no delimiter).
12907
12908         * lib/getline.c: Don't include stddef.h or stdio.h, since our
12909         interface does that.
12910         (getline): Always use getdelim, so that we don't have two
12911         copies of this code.
12912         * lib/getndelim2.c: Include <limits.h>, <inttypes.h>, <stdint.h>
12913         if available.
12914         (PTRDIFF_MAX, SIZE_MAX, SSIZE_MAX): Define if not defined.
12915         (GETNDELIM2_MAXIMUM): New macro.
12916         (getndelim2): Reorder arguments.  delim==EOF now means no delimiter,
12917         instead of the old practice of delim2==0.  All callers changed.
12918         Return -1 on overflow, instead of returning junk.
12919         Do not set *linesize unless allocation succeeds.
12920         * lib/getndelim2.h: Do not include stddef.h; no longer needed, now
12921         that we include sys/types.h.
12922         * lib/getnline.h: Likewise.
12923         * lib/getndelim2.h (GETNLINE_NO_LIMIT): New macro.
12924         (getndelim2): Reorder arguments.
12925         * lib/getnline.c (getnline, getndelim):
12926         Don't discard the NMAX argument.
12927         (getnline): Invoke getndelim, to avoid code duplication.
12928         * lib/getnline.h (GETNLINE_NO_LIMIT): New macro, used instead
12929         of (size_t) -1 by callers of the getnline family.
12930
12931 2004-05-13  Paul Eggert  <eggert@cs.ucla.edu>
12932
12933         * m4/gettime.m4 (gl_GETTIME): Require gl_TIMESPEC.
12934         Check for gettimeofday.
12935         * m4/settime.m4 (gl_SETTIME): Require gl_TIMESPEC.
12936         Check for settimeofday, stime.
12937
12938 2004-05-13  Paul Eggert  <eggert@cs.ucla.edu>
12939
12940         * lib/nanosleep.c (suspended): Change its type from int to
12941         sig_atomic_t volatile.
12942         (first_call): Make it private to rpl_nanosleep, and have it
12943         be zero initially as that's a bit faster.
12944         (my_usleep): Round up fractional times instead of truncating them,
12945         as this is the usual meaning for 'sleep'.
12946
12947         * lib/gettime.c (gettime): Fall back on `time' if `gettimeofday'
12948         doesn't work.
12949         * lib/settime.c: Include <unistd.h>, for stime (on Solaris 8, anyway).
12950         (ENOSYS): Define if not defined.
12951         (settime): Fall back on stime if it exists and settimeofday fails.
12952         But don't bother with fallbacks if a method fails with errno == EPERM.
12953
12954 2004-05-11  Jim Meyering  <jim@meyering.net>
12955
12956         Prior to this change, the save_cwd caller required read access to the
12957         current directory on most systems (ones with the fchdir function).
12958
12959         * lib/save-cwd.c (save_cwd) [HAVE_FCHDIR]: If opening `.' read-only
12960         fails, try write-only, and finally, resort to using xgetcwd.
12961
12962 2004-05-06  Paul Eggert  <eggert@cs.ucla.edu>
12963
12964         * lib/obstack.c, obstack.h: Import changes from libc.
12965
12966 2004-04-28  Bruno Haible  <bruno@clisp.org>
12967
12968         * lib/findprog.c (find_in_path): Treat Cygwin like Windows, since it
12969         also implicitly appends .exe to executables.
12970         * lib/localcharset.c (ISSLASH): Treat Cygwin like Windows, since it now
12971         accepts Windows pathnames.
12972         * lib/pathname.h (ISSLASH, IS_PATH_WITH_DIR, FILESYSTEM_PREFIX_LEN):
12973         Treat Cygwin like Windows, since it now accepts Windows pathnames.
12974         * lib/progreloc.c (ISSLASH, IS_PATH_WITH_DIR, FILESYSTEM_PREFIX_LEN):
12975         Treat Cygwin like Windows, since it now accepts Windows pathnames.
12976         Reported by Derek Robert Price <derek@ximbiot.com>.
12977
12978 2004-04-21  Karl Berry  <karl@gnu.org>
12979
12980         * config/srclist.txt (localcharset.c): break sync.
12981
12982 2004-04-20  Paul Eggert  <eggert@twinsun.com>
12983
12984         * m4/host-os.m4: Add a copyright notice.
12985
12986 2004-04-20  Jim Meyering  <jim@meyering.net>
12987
12988         Change UTILS_ to gl_ in AC_DEFINE'd names.
12989         Change utils_- and jm_-prefixed variables, too.
12990         * m4/mkdir-slash.m4 (gl_FUNC_MKDIR_TRAILING_SLASH): Renamed from
12991         UTILS_FUNC_MKDIR_TRAILING_SLASH.
12992         * m4/mkstemp.m4 (gl_FUNC_MKSTEMP): Renamed from UTILS_FUNC_MKSTEP.
12993
12994         * m4/dirfd.m4 (gl_FUNC_DIRFD): Rename from UTILS_FUNC_DIRFD.
12995         Don't emit trailing blanks.
12996         Also rename jm_-prefixed variables to have gl_ prefix.
12997
12998         * m4/host-os.m4 (gl_HOST_OS): Rename from UTILS_HOST_OS.
12999         Also rename jm_-prefixed variables to have gl_ prefix.
13000
13001         * m4/jm-macros.m4: Reflect the renamings.
13002         * m4/prereq.m4: Likewise.
13003
13004 2004-04-20  Jim Meyering  <jim@meyering.net>
13005
13006         * lib/getndelim2.c (getndelim2): Upon realloc failure, don't leak
13007         memory.
13008
13009 2004-04-20  Jim Meyering  <jim@meyering.net>
13010             Bruno Haible  <bruno@clisp.org>
13011
13012         * lib/localcharset.c (get_charset_aliases) [!VMS && !WIN32]: Don't leak
13013         memory when realloc fails.
13014
13015 2004-04-19  Jim Meyering  <jim@meyering.net>
13016
13017         * m4/readutmp.m4 (gl_PREREQ_READUTMP): Require gl_FUNC_FREE,
13018         now that readutmp.c may call `free (0)'.
13019
13020 2004-04-19  Bruno Haible  <bruno@clisp.org>
13021
13022         * m4/mbrtowc.m4: Change jm_ to gl_ in cache variables as well.
13023         * m4/inttypes_h.m4: Likewise.
13024         * m4/stdint_h.m4: Likewise.
13025         * m4/intmax_t.m4: Likewise.
13026         * m4/uintmax_t.m4: Likewise.
13027
13028 2004-04-18  Jim Meyering  <jim@meyering.net>
13029
13030         * m4/prereq.m4: Don't forbid jm_ prefix.
13031
13032         * m4/afs.m4, m4/allocsa.m4, m4/assert.m4, m4/backupfile.m4:
13033         * m4/bison.m4, m4/check-decl.m4, m4/chown.m4, m4/d-ino.m4:
13034         * m4/d-type.m4, m4/dirname.m4, m4/dos.m4, m4/error.m4, m4/fpending.m4:
13035         * m4/fstypename.m4, m4/fsusage.m4, m4/ftruncate.m4, m4/getdate.m4:
13036         * m4/getgroups.m4, m4/gettext.m4, m4/glibc21.m4, m4/group-member.m4:
13037         * m4/human.m4, m4/intmax.m4, m4/intmax_t.m4, m4/inttostr.m4:
13038         * m4/inttypes.m4, m4/inttypes_h.m4, m4/jm-macros.m4, m4/jm-winsz1.m4:
13039         * m4/jm-winsz2.m4, m4/lchown.m4, m4/lib-check.m4, m4/link-follow.m4:
13040         * m4/localcharset.m4, m4/longlong.m4, m4/ls-mntd-fs.m4, m4/lstat.m4:
13041         * m4/makepath.m4, m4/mbrtowc.m4, m4/mbswidth.m4, m4/memchr.m4:
13042         * m4/memcmp.m4, m4/mkdtemp.m4, m4/mkstemp.m4, m4/mountlist.m4:
13043         * m4/nanosleep.m4, m4/path-concat.m4, m4/perl.m4, m4/prereq.m4:
13044         * m4/putenv.m4, m4/quotearg.m4, m4/regex.m4, m4/stat.m4:
13045         * m4/stdint_h.m4, m4/strftime.m4, m4/strtoimax.m4, m4/strtoll.m4:
13046         * m4/strtoull.m4, m4/strtoumax.m4, m4/timespec.m4, m4/uintmax_t.m4:
13047         * m4/ulonglong.m4, m4/unlink-busy.m4, m4/unlocked-io.m4, m4/uptime.m4,
13048         * m4/utimbuf.m4, m4/utime.m4, m4/utimes-null.m4, m4/vasnprintf.m4:
13049         * m4/xstrtoimax.m4, m4/xstrtol.m4, m4/xstrtoumax.m4:
13050         Change jm_ to gl_ in AC_DEFINE'd names. Update all uses.
13051
13052 2004-04-18  Jim Meyering  <jim@meyering.net>
13053
13054         * lib/readutmp.c (read_utmp) [UTMP_NAME_FUNCTION]: Upon realloc
13055         failure, don't leak memory and do call END_UTMP_ENT.
13056
13057 2004-04-16  Jim Meyering  <jim@meyering.net>
13058
13059         * m4/prereq.m4 (jm_PREREQ_STAT): Remove macro.  It is specific to
13060         coreutils' stat program.
13061         (gl_PREREQ): Don't require jm_PREREQ_STAT.
13062
13063 2004-04-11  Paul Eggert  <eggert@twinsun.com>
13064
13065         * lib/inttostr.h: Include <limits.h> unconditionally, since we assume
13066         C89.
13067         (CHAR_BIT): Remove, since we assume C89.
13068         Include <stdint.h> if available, as per current Autoconf CVS advice.
13069
13070 2004-03-31  Jim Meyering  <jim@meyering.net>
13071
13072         * m4/prereq.m4: Require AC_FUNC_MALLOC, not jm_FUNC_MALLOC.
13073         Require AC_FUNC_REALLOC, not jm_FUNC_REALLOC.
13074         * m4/xalloc.m4: Likewise.
13075
13076 2004-03-30  Paul Eggert  <eggert@twinsun.com>
13077
13078         Merge from coreutils.
13079
13080         * m4/inttostr.m4: New file.
13081         * m4/getdate.m4 (gl_GETDATE): Remove time-related stuff.
13082         Require AM_STDBOOL_H and gl_TIMESPEC instead.
13083         Require gl_CLOCK_TIME.
13084         * m4/clock_time.m4 (gl_CLOCK_TIME): Require AC_GNU_SOURCE.
13085
13086 2004-03-30  Paul Eggert  <eggert@twinsun.com>
13087
13088         * lib/cloexec.h, cloexec.c (set_cloexec_flag): Return int
13089         not bool, to be more consistent with Unix conventions.
13090         Suggested by Bruno Haible.
13091
13092         Merge from coreutils.
13093
13094         * lib/imaxtostr.c, inttostr.c, inttostr.h, offtostr.c, umaxtostr.c:
13095         New files.
13096
13097         * lib/getdate.h: Include stdbool.h, and timespec.h instead of
13098         the usual <time.h> dance.
13099         (get_date): Change signature to support fractional time stamps.
13100         All callers changed.
13101         * lib/getdate.y: Include "getdate.h" first, as we can now
13102         assume C89 and don't need to worry about 'const'.
13103         Similarly, include "unlocked-io.h" near start, not in middle.
13104         Include <limits.h>.
13105         (textint.value): Use long int rather than int.
13106         (textint.digits): Use size_t rather than int.
13107         (BILLION, LOG10_BILLION): New constants.
13108         (parser_control): New member rel_ns.  Members day_ordinal,
13109         time_zone, month, day, hour, minutes, rel_year, rel_month,
13110         rel_day, rel_hour, rel_minutes, rel_seconds
13111         are now long int, not int.  Member seconds is now struct timespec,
13112         not int.  New member timespec_seen.  Members dates_seen, days_seen,
13113         local_zones_seen, rels_seen, times_seen, zones_seen are now size_t,
13114         not int.
13115         (%union.intval): Now long int, not int.
13116         New member timespec.
13117         (tSDECIMAL_NUMBER, tUDECIMAL_NUMBER): New tokens.
13118         (seconds, signed_seconds, unsigned_seconds): New nonterminals.
13119         (spec): Now is a timespec or an item list.
13120         (timespec, items): New nonterminals.
13121         (time, rel, relunit, number, get_date):
13122         Add support for fractional seconds.
13123         (time): Fix bug: seconds weren't cleared in "00:00 +0000" syntax.
13124         (gmtime, localtime, mktime): Remove decls; not needed with C89.
13125         (to_hour): First arg is now long int, not int.
13126         (to_year): Returns long int, not int.
13127         Don't treat year -70 like 70.
13128         (tm_diff): Returns long int, not int.
13129         (lookup_word): Use bool instead of int when appropriate.
13130         (yylex): Use size_t for count, not int.
13131         Detect overflow when parsing large integer constants.
13132         Add support for fractions.
13133         (get_date): Make pointers 'const' if possible.
13134         Use more-portable code to detect integer overflow.
13135         (main) [TEST]: Adjust to above changes.  Test for localtime failure.
13136         Don't use ctime; it's not reliable if the year has >4 digits.
13137
13138         * lib/human.c (humblock): Inspect BLOCKSIZE if BLOCK_SIZE isn't set.
13139         This is for compatibility with BSD.
13140
13141         * lib/timespec.h (ST_TIME_CMP_NS, ST_TIME_CMP): Define.
13142         (ATIME_CMP, CTIME_CMP, MTIME_CMP, TIMESPEC_NS): Likewise.
13143         From coreutils' system.h.
13144
13145         * lib/userspec.c: Don't include "posixver.h".
13146         (parse_user_spec): Fall back on USER.GROUP parsing, regardless
13147         of POSIX version, as POSIX 1003.1-2001 allows that behavior as a
13148         compatible extension.  Simplify code by removing a boolean int
13149         that was always nonzero if a string was nonnull.
13150
13151 2004-03-30  Jim Meyering  <jim@meyering.net>
13152
13153         Merge from coreutils.
13154
13155         Avoid a configure-time warning about sys/ucred.h on OSF V4.0.
13156         * m4/ls-mntd-fs.m4: Test for sys/ucred.h separately, since
13157         on some systems one must include <grp.h> before it.
13158         Reported by Christian Krackowizer.
13159
13160 2004-03-30  Jim Meyering  <jim@meyering.net>
13161
13162         Merge from coreutils.
13163
13164         * lib/mountlist.c [HAVE_SYS_UCRED_H]: Include grp.h before sys/ucred.h.
13165
13166         * lib/readtokens.c (readtoken): Don't leak 64 bytes when reading
13167         an empty input stream.
13168
13169         * lib/readtokens.c: Include <stdbool.h>.
13170         (readtoken): Use `size_t' rather than int/long.
13171         All callers adjusted.
13172         Use `bool' rather than `int' where appropriate.
13173         Use memset rather than an explicit loop.
13174         Use x2nrealloc rather than xrealloc.
13175         Allow the use of `\0' as a delimiter.
13176         (readtokens): Likewise.
13177         * lib/readtokens.h (readtoken, readtokens): Update prototypes.
13178
13179 2004-03-30  Jim Meyering  <jim@meyering.net>
13180
13181         * m4/realloc.m4: Remove file, since now it does no more than
13182         AC_REQUIRE([AC_FUNC_REALLOC]), and that can be done via
13183         the `configure.ac' section of module/realloc.
13184         * m4/malloc.m4: Likewise, but for AC_FUNC_MALLOC.
13185
13186 2004-03-30  Bruno Haible  <bruno@clisp.org>
13187
13188         * lib/getloadavg.c (getloadavg): Don't assume setlocale returns
13189         nonnull.
13190
13191 2004-03-29  Paul Eggert  <eggert@twinsun.com>
13192
13193         Merge changes to getloadavg.c from coreutils and Emacs.
13194
13195         * lib/getloadavg.c [!defined HAVE_SETLOCALE] (setlocale):
13196         Define to an expression, not to the empty string.
13197         Include cloexec.h and xalloc.h.
13198         (getloadavg): Restore LC_NUMERIC locale after setting it temporarily.
13199         Use set_cloexec_flag rather than rolling our own.
13200         * lib/cloexec.c, cloexec.h: New files.
13201
13202 2004-03-29  Paul Eggert  <eggert@twinsun.com>
13203
13204         * m4/cloexec.m4: New file.
13205
13206 2004-03-18  Paul Eggert  <eggert@twinsun.com>
13207
13208         * lib/getopt.h: Sync with libc CVS.
13209
13210 2004-03-18  Paul Eggert  <eggert@twinsun.com>
13211             Bruno Haible  <bruno@clisp.org>
13212
13213         * m4/mbswidth.m4 (gl_MBSWIDTH): Also test whether <wchar.h> declares
13214         mbswidth.
13215
13216 2004-03-18  Paul Eggert  <eggert@twinsun.com>
13217             Bruno Haible  <bruno@clisp.org>
13218
13219         * lib/mbswidth.h: Include <wchar.h> only if
13220         HAVE_DECL_MBSWIDTH_IN_WCHAR_H, not on all platforms that have
13221         <wchar.h>.
13222         * lib/mbswidth.c: Include <stdio.h> and <time.h> before <wchar.h>.
13223
13224 2004-03-09  Paul Eggert  <eggert@twinsun.com>
13225
13226         * lib/argp-parse.c, getopt.c, getopt.h, getopt1.c:
13227         Sync with libc CVS.
13228         * lib/getopt_int.h: New file, also synced from libc.
13229
13230 2004-03-09  Paul Eggert  <eggert@twinsun.com>
13231
13232         * config/srclistvars.sh: Add GNUWWWLICENSES for eggert.
13233         * config/srclist.txt: Sync getopt with libc.  Add getopt_int.h.
13234         Bring back getopt.c, getopt.h, getopt1.c.
13235
13236 2004-03-07  Paul Eggert  <eggert@twinsun.com>
13237
13238         * m4/c-stack.m4 (gl_PREREQ_C_STACK): Renamed from jm_PREREQ_C_STACK.
13239         All uses changed.  Check for sa_sigaction member; this fixes
13240         a bug first reported by Jason Andrade in
13241         <http://mail.gnu.org/archive/html/bug-textutils/2003-03/msg00027.html>.
13242
13243 2004-03-07  Paul Eggert  <eggert@twinsun.com>
13244
13245         * lib/c-stack.c (SIGACTION_WORKS): New macro.  Use it instead of long
13246         '#if' expressions.  Unlike the code it replaces, it does not
13247         depend on (defined _SC_PAGESIZE).  However, it does depend on
13248         HAVE_STRUCT_SIGACTION_SA_SIGACTION; this last change fixes a bug
13249         first reported by Jason Andrade in
13250         <http://mail.gnu.org/archive/html/bug-textutils/2003-03/msg00027.html>.
13251
13252 2004-02-25  Simon Josefsson  <jas@extundo.com>
13253
13254         * m4/strdup.m4 (gl_PREREQ_STRDUP): Check whether strdup is declared.
13255
13256 2004-02-25  Simon Josefsson  <jas@extundo.com>
13257
13258         * lib/strdup.h: New file.
13259         * lib/strdup.c: Include it.
13260         * lib/path-concat.c: Include strdup.h. Drop strdup declaration.
13261         * lib/userspec.c: Include strdup.h. Drop strdup declaration.
13262
13263 2004-02-23  Karl Berry  <karl@gnu.org>
13264
13265         * doc/maintain.texi, standards.texi, make-stds.texi: new files
13266         (from fencepost.gnu.org:/gd/gnuorg).
13267
13268 2004-02-23  Karl Berry  <karl@gnu.org>
13269
13270         * config/srclistvars.sh (GNUORG) [karl]: redefine.
13271         * config/srclist.txt: add maintain/standards documents.
13272
13273 2004-02-18  Bruno Haible  <bruno@clisp.org>
13274
13275         * m4/xsize.m4 (gl_XSIZE): Require AC_C_INLINE.
13276         Reported by Derek Robert Price <derek@ximbiot.com>.
13277
13278 2004-02-16  Karl Berry  <karl@gnu.org>
13279
13280         * config/mkinstalldirs, install-sh: update from automake.
13281
13282 2004-02-06  Karl Berry  <karl@gnu.org>
13283
13284         * m4/po.m4: update from gettext 0.14.1.
13285
13286 2004-02-06  Karl Berry  <karl@gnu.org>
13287
13288         * lib/config.charset: update from gettext 0.14.1.
13289
13290 2004-02-05  Paul Eggert  <eggert@twinsun.com>
13291
13292         Add comments and code, prompted by suggestions from Bruno Haible
13293         for sh-quote.
13294         * lib/quotearg.h (quotearg_alloc): New decl.  Improve the comments
13295         describing the enum quoting_style values.
13296         * lib/quotearg.c (quotearg_alloc): New function.
13297         (quotearg_buffer_restyled): Treat lone { and } as special.
13298         Treat = as special.  Work around bug with older shells
13299         that "see" a '\' that is really the 2nd byte of a multibyte char.
13300         Quote empty string with shell_quoting_style.
13301
13302 2004-02-03  Bruno Haible  <bruno@clisp.org>
13303
13304         * m4/pipe.m4: New file, from GNU gettext.
13305
13306 2004-02-03  Bruno Haible  <bruno@clisp.org>
13307
13308         * lib/pipe.h: New file, from GNU gettext.
13309         * lib/pipe.c: New file, from GNU gettext.
13310
13311 2004-01-27  Bruno Haible  <bruno@clisp.org>
13312
13313         * m4/execute.m4: New file, from GNU gettext.
13314
13315 2004-01-27  Bruno Haible  <bruno@clisp.org>
13316
13317         * lib/execute.h: New file, from GNU gettext.
13318         * lib/execute.c: New file, from GNU gettext.
13319         * lib/w32spawn.h: New file, from GNU gettext.
13320
13321 2004-01-24  Paul Eggert  <eggert@twinsun.com>
13322
13323         Merge from diffutils.
13324
13325         * lib/file-type.c (file_type): Add typed memory objects.
13326         * lib/file-type.h (S_TYPEISTMO): New macro.
13327
13328         * lib/c-stack.h (c_stack_action): Remove argv argument.
13329         * lib/c-stack.c (c_stack_action): Likewise.  All uses changed.
13330         (die): Don't calculate message unless segv_action returns.
13331         (get_stack_location, min_address_from_argv, max_address_from_argv,
13332         volatile stack_base, volatile_stack_size): Remove.
13333         (segv_handler): If ! HAVE_XSI_STACK_OVERFLOW_HEURISTIC, assume
13334         that every segmentation violation is a stack overflow.  (Ouch!)
13335         See Debian bug 136249 (still outstanding) for more info about why
13336         HAVE_XSI_STACK_OVERFLOW_HEURISTIC fails on Linux kernels.
13337
13338 2004-01-24  Paul Eggert  <eggert@twinsun.com>
13339
13340         Exit-status fix from coreutils.
13341
13342         Use exit_failure consistently in place of EXIT_FAILURE,
13343         so that program exit statuses are consistent on failure.
13344
13345         * lib/argmatch.c (ARGMATCH_DIE) [! defined ARGMATCH_DIE]:
13346         Include "exitfail.h", and use exit_failure rather than EXIT_FAILURE.
13347         * lib/argmatch.h: Comment fix to match the above.
13348         * lib/obstack.c (obstack_exit_failure) [!defined _LIBC]:
13349         Now a macro referring to exit_failure, instead of a separate
13350         variable.  Include "exitfail.h" to get it.
13351         * lib/xstrtol.h: Include "exitfail.h".
13352         (STRTOL_FATAL_ERROR): Exit with status exit_failure, not 2.
13353
13354         * lib/long-options.c (parse_long_options): Use prototype
13355         for usage function arg.  Pass it EXIT_SUCCESS rather than 0,
13356         for clarity.
13357
13358 2004-01-21  Jim Meyering  <jim@meyering.net>
13359
13360         * lib/mktime.c (__mktime_internal) [!_LIBC]: Define to mktime_internal
13361         so as not to conflict with a different-sized __mktime_internal
13362         function in GNU libc.
13363         * lib/timegm.c (__mktime_internal) [!_LIBC]: Likewise.
13364         Problem building statically-linked `ls' reported by Michael Brunnbauer.
13365
13366 2004-01-20  Karl Berry  <karl@gnu.org>
13367
13368         * config/config.guess: update from config.
13369
13370         * config/srclistvars.sh: GNUWWWLICENSES for karl.
13371
13372 2004-01-20  Bruno Haible  <bruno@clisp.org>
13373
13374         Safer stack allocation.
13375         * lib/setenv.c: Include allocsa.h.
13376         (alloca): Remove fallback definition.
13377         (freea): Remove macro.
13378         (__add_to_environ) [!_LIBC]: Use allocsa instead of alloca. Use freesa
13379         instead of freea.
13380
13381 2004-01-20  Bruno Haible  <bruno@clisp.org>
13382
13383         * m4/eealloc.m4: New file, from GNU gettext.
13384
13385 2004-01-20  Bruno Haible  <bruno@clisp.org>
13386
13387         * m4/allocsa.m4: New file, from GNU gettext.
13388
13389 2004-01-20  Bruno Haible  <bruno@clisp.org>
13390
13391         * lib/xallocsa.h: New file, from GNU gettext.
13392         * lib/xallocsa.c: New file, from GNU gettext.
13393
13394 2004-01-20  Bruno Haible  <bruno@clisp.org>
13395
13396         * lib/wait-process.c: On Windows, include windows.h. Needed on mingw.
13397
13398 2004-01-20  Bruno Haible  <bruno@clisp.org>
13399
13400         * lib/wait-process.c (wait_subprocess): Add ignore_sigpipe argument.
13401         * lib/wait-process.c (wait_subprocess): Likewise. Handle SIGPIPE
13402         specially.
13403
13404 2004-01-20  Bruno Haible  <bruno@clisp.org>
13405
13406         * lib/wait-process.c (wait_process): Disable the 2003-10-31 waitid()
13407         patch.
13408
13409 2004-01-20  Bruno Haible  <bruno@clisp.org>
13410
13411         * lib/wait-process.c (cleanup_slaves): Use ANSI C declaration.
13412
13413 2004-01-20  Bruno Haible  <bruno@clisp.org>
13414
13415         * lib/eealloc.h: New file.
13416
13417 2004-01-20  Bruno Haible  <bruno@clisp.org>
13418
13419         * lib/binary-io.h: Avoid warnings on Cygwin.
13420
13421 2004-01-20  Bruno Haible  <bruno@clisp.org>
13422
13423         * lib/allocsa.h: New file, from GNU gettext.
13424         * lib/allocsa.c: New file, from GNU gettext.
13425
13426 2004-01-18  Karl Berry  <karl@gnu.org>
13427
13428         * doc/gpl.texi, lgpl.texi: new files.
13429
13430 2004-01-18  Karl Berry  <karl@gnu.org>
13431
13432         * config/srclistvars.sh (GNUWWWLICENSES): new variable.
13433         * config/srclist.txt ({fdl,gpl,lgpl}.text): get from there.
13434
13435 2004-01-15  Paul Eggert  <eggert@twinsun.com>
13436
13437         Merge from coreutils.
13438
13439         * m4/jm-macros.m4 (jm_CHECK_ALL_TYPES): Check for uintptr_t.
13440         * m4/posixver.m4 (gl_POSIXVER): Require gl_DEFAULT_POSIX2_VERSION.
13441         (gl_DEFAULT_POSIX2_VERSION): Move
13442         the documentation from 'configure' into 'config.hin',
13443         so that 'configure --help' isn't burdened by it and
13444         we don't have to worry about its formatting there.
13445         Reword the documentation so that it's more succinct
13446         and can be run together into a single paragraph.
13447         * m4/same.m4 (gl_SAME): Check for pathconf.
13448
13449 2004-01-15  Paul Eggert  <eggert@twinsun.com>
13450
13451         Merge from coreutils.
13452
13453         * lib/posixver.c: Include posixver.h.
13454
13455         * lib/same.c: Include <stdbool.h>, <limits.h>.
13456         (_POSIX_NAME_MAX): Define if not defined.
13457         (MIN): New macro.
13458         (same_name): If file names are silently truncated, report
13459         that the file names are the same if they are the same after
13460         the silent truncation.
13461
13462         * lib/xstrtod.h (xstrtod): Accept an extra arg, specifying the
13463         conversion function.
13464         * lib/xstrtod.c (xstrtod): Likewise.  All callers changed to
13465         include c-strtod.h and use c_strtod.  Don't include stdlib.h; no
13466         longer needed.
13467
13468 2004-01-15  Jim Meyering  <jim@meyering.net>
13469
13470         Merge from coreutils.
13471
13472         * m4/clock_time.m4 (gl_CLOCK_TIME): Don't set LIB_CLOCK_GETTIME
13473         if no library is required.
13474         * m4/jm-macros.m4: Don't require UTILS_SYS_OPEN_MAX.
13475         * m4/jm-macros.m4 (jm_MACROS): Require gl_FUNC_FREE.
13476         * m4/jm-macros.m4 (jm_MACROS): Require autoconf-2.58.
13477         (AC_LANG_SOURCE): Remove definition, now that we require autoconf-2.58.
13478         * m4/jm-macros.m4 (jm_MACROS): Don't require AC_FUNC_FTW.
13479         * m4/lib-check.m4 (jm_LIB_CHECK): Do not set LIB_CRYPT to the
13480         value, $ac_cv_search_crypt, if it's "none required".
13481         * m4/posixver.m4 (gl_DEFAULT_POSIX2_VERSION): New macro.
13482         * m4/prereq.m4 (jm_PREREQ): Require AC_FUNC_GETLOADAVG,
13483         not gl_FUNC_GETLOADAVG.
13484         * m4/prereq.m4 (jm_PREREQ): Require gl_READTOKENS, gl_MD5, gl_MAKEPATH,
13485         gl_LONG_OPTIONS, and gl_IDCACHE, gl_GETUGROUPS.
13486
13487 2004-01-15  Jim Meyering  <jim@meyering.net>
13488
13489         Merge from coreutils.
13490
13491         * lib/md5.h (rol) [__GNUC__ && __i386__]: Don't use `asm' code.  These
13492         days, gcc-3.x does better all by itself.  Patch from Dean Gaudet:
13493         http://mail.gnu.org/archive/html/bug-coreutils/2003-11/msg00144.html
13494
13495         * lib/posixver.c (DEFAULT_POSIX2_VERSION): Use definition of new,
13496         optional configure-time default.
13497
13498         * lib/version-etc.c (version_etc_copyright): Update copyright date.
13499
13500         * lib/xreadlink.c (xreadlink): Correct outdated comment.
13501
13502 2004-01-15  Alexandre Duret-Lutz  <adl@gnu.org>
13503
13504         Merge from coreutils.
13505
13506         * m4/nanosleep.m4 (jm_FUNC_NANOSLEEP): Do not set LIB_NANOSLEEP to the
13507         value, $ac_cv_search_nanosleep, if it's "none required".
13508
13509 2004-01-14  Paul Eggert  <eggert@twinsun.com>
13510
13511         * lib/fnmatch_loop.c (ALLOCA_LIMIT): Remove macro, which collided
13512         with like-named macro in fnmatch.c.
13513         (EXT): Use an internal constant instead.
13514
13515         Merge fnmatch patches from glibc.
13516         * lib/fnmatch.c (mbsinit): Remove define.
13517         Add libc_hidden_ver (__fnmatch, fnmatch).
13518         * lib/fnmatch_loop.c (FCT): Cast to int32_t and UCHAR when appropriate.
13519         Adjust to renaming of collseq_table_lookup to __collseq_table_lookup.
13520
13521 2004-01-14  Karl Berry  <karl@gnu.org>
13522
13523         * config/install-sh: update from automake.
13524
13525 2004-01-13  Karl Berry  <karl@gnu.org>
13526
13527         * config/install-sh: update from automake.
13528
13529 2004-01-09  Karl Berry  <karl@gnu.org>
13530
13531         * config/install-sh: update from automake.
13532
13533 2004-01-05  Karl Berry  <karl@gnu.org>
13534
13535         * config/config.{sub,guess}: update from config.
13536
13537 2003-12-31  Karl Berry  <karl@gnu.org>
13538
13539         * config/depcomp: update from automake.
13540
13541 2003-12-14  Karl Berry  <karl@gnu.org>
13542
13543         * lib/config.charset: update from gettext-runtime.
13544
13545 2003-12-03  Paul Eggert  <eggert@twinsun.com>
13546
13547         * lib/getgroups.c (getgroups): xmalloc takes one argument, not two.
13548         Bug reported by Alfred M. Szmidt.
13549
13550 2003-12-03  Bruno Haible  <bruno@clisp.org>
13551
13552         * m4/gettext.m4: Upgrade from gettext-0.13.
13553         * m4/po.m4: Upgrade from gettext-0.13.
13554         * m4/size_max.m4 (gl_SIZE_MAX): Don't use the _ONCE macros here.
13555         * m4/intmax.m4: New file, from gettext-0.13.
13556         * m4/printf-posix.m4: New file, from gettext-0.13.
13557
13558 2003-11-29  Karl Berry  <karl@gnu.org>
13559
13560         * lib/argp-{help.c,parse.c,namefrob.h}, argp.h: update from libc.
13561
13562 2003-11-25  Paul Eggert  <eggert@twinsun.com>
13563             Bruno Haible  <bruno@clisp.org>
13564
13565         * lib/printf-parse.h: Don't include sys/types.h.
13566         (ARG_NONE): New macro.
13567         (char_directive): Change type of *arg_index fields to size_t.
13568         * lib/printf-parse.c: Don't include sys/types.h.
13569         (SSIZE_MAX): Remove macro.
13570         (PRINTF_PARSE): Change the type of the arg_index variables to size_t.
13571         Remove unnecessary overflow check.
13572         * lib/vasnprintf.c (VASNPRINTF): Update for type change of *arg_index
13573         fields.
13574
13575 2003-11-25  Bruno Haible  <bruno@clisp.org>
13576
13577         * modules/vasnprintf (Files): Remove m4/ssize_t.m4.
13578
13579 2003-11-25  Bruno Haible  <bruno@clisp.org>
13580
13581         * m4/vasnprintf.m4 (gl_PREREQ_PRINTF_PARSE): Don't require
13582         gt_TYPE_SSIZE_T.
13583
13584 2003-11-24  Paul Eggert  <eggert@twinsun.com>
13585
13586         * modules/alloca: Remove dependency on xalloc.
13587
13588 2003-11-24  Paul Eggert  <eggert@twinsun.com>
13589
13590         * lib/alloca.c: Remove dependency on xalloc module.
13591         (xalloc_die): Remove.
13592         (memory_full) [!defined emacs]: New macro.
13593         [!defined emacs]: Don't include xalloc.h.
13594         (alloca): Invoke memory_full, not xalloc_die, if malloc fails or
13595         address arithmetic overflows.  Change datatypes a bit to avoid
13596         unnecessary casts.
13597
13598 2003-11-22  Jim Meyering  <jim@meyering.net>
13599
13600         * lib/xmalloc.c (x2nrealloc_inline): Fix typos in comments:
13601         s/size/size_t/.
13602
13603 2003-11-21  Karl Berry  <karl@gnu.org>
13604
13605         * config/config.{sub,guess}: update from config.
13606
13607 2003-11-18  Karl Berry  <karl@gnu.org>
13608
13609         * config/config.{sub,guess}: update from config.
13610
13611         * config/(printf-{parse,args}.[ch]): sync broken, sigh.
13612
13613 2003-11-17  Paul Eggert  <eggert@twinsun.com>
13614
13615         * README: Mention that S+T cannot overflow if S is the size of
13616         an existing object and T is sufficiently small.
13617
13618 2003-11-17  Jim Meyering  <jim@meyering.net>
13619
13620         On systems without utime and without a utimes function capable of
13621         dealing with a NULL struct utimbuf* argument, this utime replacement
13622         could -- in unusual circumstances -- leak a file descriptor.
13623         * lib/utime.c: Include <unistd.h> and <errno.h>.
13624         (utime_null): Be sure to close `fd' and to preserve errno.
13625         Reported by Geoff Collyer via Arnold Robbins.
13626
13627 2003-11-17  Bruno Haible  <bruno@clisp.org>
13628
13629         * modules/vasnprintf (Files): Add m4/ssize_t.m4.
13630         (Depends-on): Add xsize.
13631
13632 2003-11-17  Bruno Haible  <bruno@clisp.org>
13633
13634         * m4/vasnprintf.m4 (gl_PREREQ_PRINTF_PARSE): Require gt_TYPE_SSIZE_T.
13635
13636 2003-11-17  Bruno Haible  <bruno@clisp.org>
13637
13638         * lib/vasnprintf.c (alloca): Remove fallback definition.
13639         (freea): Remove definition.
13640         (VASNPRINTF): Use alloca only for small sizes, say <= 4000 bytes.
13641         Reported by Paul Eggert.
13642
13643 2003-11-16  Paul Eggert  <eggert@twinsun.com>
13644             Bruno Haible  <bruno@clisp.org>
13645
13646         Protect against address arithmetic overflow.
13647         * lib/printf-args.h: Include stddef.h.
13648         (arguments): Change type of field 'count' to size_t.
13649         * lib/printf-args.c (printf_fetchargs): Use size_t instead of
13650         'unsigned int' where appropriate.
13651         * lib/printf-parse.h: Include sys/types.h.
13652         (char_directive): Change type of *arg_index fields to ssize_t.
13653         (char_directives): Change type of fields 'count', max_*_length to
13654         size_t.
13655         * lib/printf-parse.c: Include sys/types.h and xsize.h.
13656         (SSIZE_MAX): Define fallback value.
13657         (PRINTF_PARSE): Use size_t instead of 'unsigned int' and ssize_t
13658         instead of 'int' where appropriate. Check a_allocated, d_allocated
13659         against overflow. Reject %m$ argument numbers > SSIZE_MAX + 1.
13660         * lib/vasnprintf.c: Include xsize.h.
13661         (VASNPRINTF): Use size_t instead of 'unsigned int' where appropriate.
13662         Check alloca, malloc, realloc, ENSURE_ALLOCATION arguments against
13663         overflow. Avoid wraparound when converting a width or precision from
13664         decimal to binary.
13665
13666 2003-11-16  Bruno Haible  <bruno@clisp.org>
13667
13668         Update from GNU gettext.
13669         * lib/printf-parse.c: Generalize to it can be compiled for wide
13670         strings.
13671         (PRINTF_PARSE, CHAR_T, DIRECTIVE, DIRECTIVES): New macros.
13672         * lib/vasnprintf.c: Generalize to it can be compiled for wide strings.
13673         (VASNPRINTF, CHAR_T, DIRECTIVE, DIRECTIVES, PRINTF_PARSE, USE_SNPRINTF,
13674         SNPRINTF): New macros.
13675         Don't include <alloca.h> if the file is used inside libintl.
13676         (local_wcslen): New function, for Solaris 2.5.1.
13677         (VASNPRINTF): Use it instead of wcslen.
13678
13679 2003-11-16  Bruno Haible  <bruno@clisp.org>
13680
13681         * lib/xsize.h (xmax): New function.
13682         (xsum, xsum3, xsum4): Declare as "pure" functions.
13683
13684 2003-11-12  Paul Eggert  <eggert@twinsun.com>
13685
13686         * modules/xalloc (Files): Undo latest change, since xalloc.h
13687         no longer needs SIZE_MAX or PTRDIFF_MAX.
13688
13689 2003-11-12  Paul Eggert  <eggert@twinsun.com>
13690
13691         * m4/xalloc.m4 (gl_PREREQ_XALLOC): Do not require gl_SIZE_MAX or
13692         gl_PTRDIFF_MAX.
13693
13694 2003-11-12  Paul Eggert  <eggert@twinsun.com>
13695
13696         * lib/xstrtol.c (__xstrtol): Remove "break" immediately after
13697         "return", to pacify some unknown compiler.  Problem reported
13698         by Joerg Schilling.
13699
13700 2003-11-12  Paul Eggert  <eggert@twinsun.com>
13701
13702         * lib/xalloc.h: Do not include <limits.h> or <stdint.h>.
13703         (xalloc_oversized): Use sizeof (ptrdiff_t) and sizeof (size_t) for
13704         the heuristic, rather than PTRDIFF_MAX and SIZE_MAX.  This
13705         heuristic is just as accurate as far as we know, and it removes a
13706         dependency on size_max.m4 and ptrdiff_max.m4.
13707
13708 2003-11-11  Bruno Haible  <bruno@clisp.org>
13709
13710         * modules/xsize (Files): Add m4/size_max.m4.
13711         * modules/xalloc (Files): Add m4/size_max.m4, m4/ptrdiff_max.m4.
13712
13713 2003-11-11  Bruno Haible  <bruno@clisp.org>
13714
13715         * m4/size_max.m4: New file.
13716         * m4/ptrdiff_max.m4: New file.
13717         * m4/xsize,m4 (gl_XSIZE): Require gl_SIZE_MAX.
13718         * m4/xalloc.m4 (gl_PREREQ_XALLOC): New macro.
13719         (gl_XALLOC): Invoke it.
13720
13721 2003-11-11  Bruno Haible  <bruno@clisp.org>
13722
13723         * lib/xsize.h (SIZE_MAX): Remove fallback definition.
13724         * lib/xalloc.h: Include limits.h. Assume SIZE_MAX and PTRDIFF_MAX are
13725         defined.
13726
13727 2003-11-10  Paul Eggert  <eggert@twinsun.com>
13728
13729         * lib/xalloc.h (xalloc_oversized): [! (defined PTRDIFF_MAX &&
13730         PTRDIFF_MAX < SIZE_MAX)]: Fix off-by-one error that would have
13731         rejected some allocations of exactly SIZE_MAX - 2 bytes.
13732         From Bruno Haible.
13733         [defined PTRDIFF_MAX && PTRDIFF_MAX < SIZE_MAX]: Use SIZE_MAX,
13734         not (size_t) -1, since it's defined here.
13735
13736 2003-11-09  Karl Berry  <karl@gnu.org>
13737
13738         * config/mkinstalldirs, depcomp, mdate-sh: update from automake.
13739
13740 2003-11-06  Paul Eggert  <eggert@twinsun.com>
13741
13742         * lib/xalloc.h [HAVE_STDINT_H]: Include <stdint.h>.
13743         (xalloc_oversized) [! (PTRDIFF_MAX < SIZE_MAX)]:
13744         Reject sizes of exactly SIZE_MAX bytes.
13745         * lib/xreadlink.c: Include "xalloc.h" before checking whether SIZE_MAX
13746         is defined, since "xalloc.h" now defines SIZE_MAX on modern hosts.
13747
13748 2003-11-05  Bruno Haible  <bruno@clisp.org>
13749
13750         * lib/xsize.h: Include limits.h, to avoid a possible collision with
13751         SIZE_MAX defined in <limits.h> on Solaris.
13752
13753 2003-11-04  Jim Meyering  <jim@meyering.net>
13754
13755         * modules/sysexits: Use the `$(VAR)' notation for AC_SUBST'd
13756         variable names, rather than @VAR@.
13757         * modules/poll: Likewise.
13758
13759 2003-11-04  Bruno Haible  <bruno@clisp.org>
13760
13761         * modules/xsize: New file.
13762         * modules/linebreak: Depend on xsize.
13763         * MODULES.html.sh (func_all_modules): Add xsize.
13764
13765 2003-11-04  Bruno Haible  <bruno@clisp.org>
13766
13767         * m4/xsize.m4: New file.
13768
13769 2003-11-04  Bruno Haible  <bruno@clisp.org>
13770
13771         * lib/xsize.h: New file.
13772         * lib/linebreak.c: Include xsize.h.
13773         (mbs_possible_linebreaks, mbs_width_linebreaks): Check malloc()
13774         argument for overflow.
13775         Suggested by Paul Eggert.
13776
13777 2003-11-03  Karl Berry  <karl@gnu.org>
13778
13779         * config/config.{guess,sub}: update from config.
13780
13781 2003-11-03  Jim Meyering  <jim@meyering.net>
13782
13783         * modules/userspec (lib_SOURCES): Add userspec.h.
13784         (Include): Add "userspec.h".
13785         Improve description.
13786
13787 2003-11-03  Jim Meyering  <jim@meyering.net>
13788
13789         * lib/userspec.c: Include "userspec.h".
13790         * lib/userspec.h: New file.
13791
13792 2003-11-03  Bruno Haible  <bruno@clisp.org>
13793
13794         * m4/wait-process.m4 (gl_WAIT_PROCESS): Also check for waitid.
13795
13796 2003-11-03  Bruno Haible  <bruno@clisp.org>
13797
13798         * lib/wait-process.c (wait_process): Use waitid with WNOWAIT if
13799         available, to avoid (extremely rare) race condition.
13800         Suggested by Paul Eggert.
13801
13802 2003-11-02  Karl Berry  <karl@gnu.org>
13803
13804         * config/srclist.txt (vasprintf.c): sync broken, sigh.
13805
13806 2003-10-31  Paul Eggert  <eggert@twinsun.com>
13807
13808         * lib/mountlist.h (struct mount_entry.me_type_malloced): New member.
13809         * lib/mountlist.c (SIZE_MAX): Define if not defined already.
13810         (read_filesystem_list): Set and use me_type_malloced.
13811         Use "sizeof *me" rather than "sizeof (struct mount_entry)" (or
13812         whatever the type happens to be), for brevity and consistency.
13813         Check for size calculation overflow on Alphas running OSF/1.
13814
13815 2003-10-31  Jim Meyering  <jim@meyering.net>
13816
13817         * lib/hash.c: Include "xalloc.h" for use of xalloc_oversized.
13818
13819         * lib/linebuffer.c: Include <string.h> for declaration of memset.
13820
13821 2003-10-30  Paul Eggert  <eggert@twinsun.com>
13822             Bruno Haible  <bruno@clisp.org>
13823
13824         * lib/vasprintf.c: Include <limits.h>, <stdlib.h>.
13825         (vasprintf): Fail if the resulting length doesn't fit in an 'int'.
13826
13827 2003-10-30  Paul Eggert  <eggert@cs.ucla.edu>
13828
13829         * m4/host-os.m4 (UTILS_HOST_OS): Change netbsd*-gnu pattern back to
13830         netbsd*-gnu*.  Suggested by Robert Millan.
13831
13832 2003-10-29  Paul Eggert  <eggert@twinsun.com>
13833
13834         * modules/group-member: Depend on stdbool.
13835
13836 2003-10-29  Paul Eggert  <eggert@twinsun.com>
13837
13838         * m4/xalloc.m4 (gl_XALLOC): Undo previous change.
13839
13840 2003-10-29  Paul Eggert  <eggert@twinsun.com>
13841
13842         * m4/host-os.m4 (UTILS_HOST_OS): Resurrect netbsd*-gnu.  Add comments
13843         to it, and to knetbsd*-gnu and kfreebsd*-gnu.  Remove the '*' from
13844         after the 'gnu' in these cases.  This fixes some bugs in the
13845         previous change, and is based on suggestions by Robert Millan.
13846
13847 2003-10-29  Paul Eggert  <eggert@twinsun.com>
13848
13849         * lib/xalloc.h (xalloc_oversized): Now a macro, not a function,
13850         so that it works even if SIZE_MAX < N.  Do not include <stdbool.h>;
13851         no longer needed.
13852         * lib/quotearg.c (quotearg_n_options): Use it.
13853         * lib/group-member.c: Include <stdbool.h>.
13854         (free_group_info): Arg is now const *; don't free arg.
13855         (get_group_info): Now returns bool and accepts struct group_info *,
13856         rather than returning a malloc'ed struct group_info *.
13857         All uses changed.  Check for overflow in internal size calculation.
13858
13859         * lib/getusershell.c (readname): Simplify the code by using x2nrealloc
13860         rather than xmalloc/xrealloc.
13861         * lib/linebuffer.c (initbuffer, readlinebuffer): Simplify the code by
13862         using x2realloc rather than xmalloc/xrealloc.  Also, fix a C
13863         conformance bug: the old code used a pointer after freeing the
13864         storage that it addressed.
13865         * lib/hash.c (hash_initialize): Simplify the code by using
13866         xalloc_oversized rather than doing it by hand.
13867         * lib/getgroups.c (getgroups): Don't use xrealloc, since we don't need
13868         the buffer preserved.  Use free and xmalloc instead.
13869         * lib/quotearg.c (quotearg_n_options): Likewise.
13870         Use a simpler test for size overflow.  Don't use xalloc_oversized
13871         because unsigned int might be wider than size_t (!); this suggests
13872         that we should switch from unsigned int to size_t for slot numbers.
13873
13874 2003-10-28  Paul Eggert  <eggert@twinsun.com>
13875
13876         * m4/host-os.m4 (UTILS_HOST_OS): Identify GNU/KFreeBSD and
13877         GNU/KNetBSD.  These implementations use glibc atop the FreeBSD and
13878         NetBSD kernels.  Requested by Richard Stallman.
13879
13880 2003-10-27  Paul Eggert  <eggert@twinsun.com>
13881
13882         * lib/exclude.c (new_exclude): Use xzalloc rather than xmalloc
13883         to allocate the returned structure.  Do not allocate a subarray,
13884         as x2nrealloc will do that.
13885         (add_exclude): Use x2nrealloc to reallocate ex->exclude,
13886         instead of xnrealloc.
13887         (add_exclude_file): Use x2realloc instead of malloc + xnrealloc.
13888
13889 2003-10-27  Bruno Haible  <bruno@clisp.org>
13890
13891         * lib/stdbool_.h: Better support for BeOS.
13892
13893 2003-10-26  Paul Eggert  <eggert@twinsun.com>
13894
13895         * m4/xalloc.m4 (gl_XALLOC): Requore AC_C_INLINE, since xalloc.h
13896         now uses inline.
13897
13898 2003-10-26  Paul Eggert  <eggert@twinsun.com>
13899
13900         * lib/xalloc.h (xalloc_oversized): New static inline function, for
13901         callers that want to do their own size-overflow checking.  Include
13902         <stdbool.h>, since xalloc_oversized returns bool.
13903         * lib/xalloc.c (array_size_overflow): Remove.  All callers changed
13904         to use xalloc_oversized.
13905
13906         Add two functions x2realloc, x2nrealloc, for programs that grow
13907         arrays dynamically by doubling their sizes.
13908         * lib/xalloc.h (x2realloc, x2nrealloc): New decls.
13909         * lib/xmalloc.c (x2nrealloc_inline, x2nrealloc, x2realloc):
13910         New functions.
13911
13912         Port to C99 semantics for 'inline' of external functions.
13913         Bug reported by Bruno Haible.
13914         * lib/xmalloc.c (xnmalloc_inline): New static inline function,
13915         with the old contents of xnmalloc.
13916         (xnmalloc, xmalloc): Use it.
13917         (xnrealloc_inline): New static inline function,
13918         with the old contents of xnrealloc.
13919         (xnrealloc, xrealloc): Use it.
13920
13921         * lib/alloc.c (alloca): xmalloc cannot return NULL, so don't test for
13922         that.
13923
13924 2003-10-26  Karl Berry  <karl@gnu.org>
13925
13926         * config/srclist.txt (COPYING.DOC): no longer available from
13927         /gd/gnuorg; don't know where the ultimate source is.
13928
13929 2003-10-25  Paul Eggert  <eggert@twinsun.com>
13930
13931         Fix several address-calculation bugs in the hash modules,
13932         plus some minor code cleanup.
13933
13934         * lib/hash.h: Include <stdbool.h>, for bool.
13935         * lib/hash.c: Don't include <stdbool.h>, since hash.h does it now.
13936         * lib/hash.h (Hash_hasher, hash_get_n_buckets, hash_get_n_buckets_used,
13937         hash_get_n_entries, hash_get_max_bucket_length,
13938         hash_get_entries, hash_do_for_each, hash_string, hash_initialize,
13939         hash_rehash): Use size_t rather than unsigned.
13940         * lib/hash.c (struct hash_table, hash_get_n_buckets,
13941         hash_get_n_buckets_used, hash_get_n_entries,
13942         hash_get_max_bucket_length, hash_table_ok, hash_print_statistics,
13943         hash_get_entries, hash_do_for_each, hash_string, is_prime,
13944         next_prime, hash_initialize, hash_rehash, hash_delete, hash_print):
13945         Likewise.
13946         (SIZE_MAX): Define if not defined.
13947         (hash_get_max_bucket_length, hash_table_ok, hash_lookup,
13948         hash_get_first, hash_get_next, hash_get_entries, hash_do_for_each,
13949         hash_print):
13950         Use const * when possible.
13951         (hash_string): Use (unsigned char) *P rather than *(unsigned char *) P.
13952         (check_tuning): Fix bug: if tuning parameters were very close to
13953         0 or 1, rounding errors could have caused subscript violations.
13954         (hash_initialize, allocate_entry, hash_print): Remove unnecessary cast.
13955         (hash_initialize): Add 'fail:' label
13956         to free table and return NULL, and use it to simplify code.
13957         Use calloc rather than clearing the storage ourself.
13958         (hash_initialize, hash_rehash): Check for arithmetic overflow in
13959         buffer size calculations.
13960         * lib/hash-pjw.h (hash_pjw): Use size_t, not unsigned.
13961         Include <stddef.h>, for size_t.
13962         * lib/hash-pjw.c (hash_pjw): Likewise.
13963         Switch to method described by Bruno Haible.
13964         Include <limits.h>, for CHAR_BIT.
13965         (SIZE_BITS): New macro.
13966
13967 2003-10-23  Paul Eggert  <eggert@twinsun.com>
13968
13969         * m4/getline.m4 (AM_FUNC_GETLINE):
13970         Don't include getndelim2.o twice into LIBOBJS; this breaks on some
13971         hosts.  Problem reported by Derek Robert Price in
13972         <http://mail.gnu.org/archive/html/bug-gnulib/2003-10/msg00092.html>.
13973         This patch can be withdrawn after Autoconf 2.58 is required for gnulib.
13974         * m4/getndelim2.m4 (gl_GETNDELIM2): Likewise.
13975
13976 2003-10-21  Paul Eggert  <eggert@twinsun.com>
13977
13978         * lib/getndelim2.c (getndelim2): When size calculation overflows,
13979         ceiling the allocation at NMAX bytes rather than silently
13980         discarding input bytes before NMAX is reached.  This makes
13981         a difference only if NMAX exceeds SIZE_MAX / 2.
13982
13983         * lib/obstack.c: Merge from glibc.
13984         [defined _LIBC]: Include <obstack.h>, not "obstack.h".
13985         Add libc_hidden_def (_obstack_newchunk).
13986         (_obstack_free) [! defined _LIBC]: Remove.
13987         [defined _LIBC]: Make a strong alias from obstack_free, rather than
13988         a clone of the function body.
13989         (fputs) [defined _LIBC && defined USE_IN_LIBIO]: Remove.
13990         [defined _LIBC && !defined USE_IN_LIBIO]: Include <libio/iolibio.h>.
13991
13992         * lib/obstack.h: Indenting cleanup, to make it easier to merge with
13993         glibc.
13994         (obstack_grow, obstack_grow0): Remove unnecessary parentheses around
13995         arg to memcpy.
13996
13997         * lib/obstack.h (obstack_1grow_fast): Properly parenthesize arg.
13998         (obstack_ptr_grow_fast, obstack_int_grow_fast):
13999         Don't use lvalue casts, as GCC plans to remove support for them
14000         in GCC 3.5.  Reported by Joseph S. Myers.  This bug
14001         was also present in the non-GCC version, indicating that this
14002         code had always been buggy and had never been widely used.
14003         (obstack_1grow, obstack_ptr_grow, obstack_int_grow, obstack_blank):
14004         Use the fast variant of each macro, rather than copying the
14005         definiens of the fast variant; that way, we'll be more likely to
14006         catch future bugs in the fast variants.
14007
14008 2003-10-20  Bruno Haible  <bruno@clisp.org>
14009
14010         * modules/wait-process: New file.
14011         * MODULES.html.sh (func_all_modules): Add wait-process.
14012
14013 2003-10-20  Bruno Haible  <bruno@clisp.org>
14014
14015         * m4/wait-process.m4: New file.
14016
14017 2003-10-20  Bruno Haible  <bruno@clisp.org>
14018
14019         * lib/wait-process.h: New file, from GNU gettext.
14020         * lib/wait-process.c: New file, from GNU gettext.
14021
14022 2003-10-19  Jim Meyering  <jim@meyering.net>
14023
14024         * lib/vasnprintf.c (vasnprintf): Work around losing snprintf on
14025         HPUX 10.20.
14026
14027 2003-10-18  Karl Berry  <karl@gnu.org>
14028
14029         * config/config.guess: update from config.
14030
14031 2003-10-16  Paul Eggert  <eggert@twinsun.com>
14032
14033         * lib/getgroups.c: Include <errno.h>, <stdlib.h>.
14034         (getgroups): First arg is int, not size_t.
14035         Don't let 'free' mangle errno.
14036
14037 2003-10-16  Paul Eggert  <eggert@twinsun.com>
14038
14039         * README: Mention that gnulib assumes that (foo *) NULL + 0 == NULL.
14040
14041 2003-10-16  Karl Berry  <karl@gnu.org>
14042
14043         * config/config.{guess,sub}: update from config.
14044
14045 2003-10-16  Jim Meyering  <jim@meyering.net>
14046
14047         * lib/xmalloc.c: Include <string.h>, for declarations of memset and
14048         memcpy.
14049
14050 2003-10-15  Paul Eggert  <eggert@twinsun.com>
14051
14052         * lib/exclude.c: Do not include <inttypes.h> or <stdint.h>.
14053         (SIZE_MAX): Remove.
14054         (new_exclude, add_exclude_file): Initial size no longer needs to
14055         be a power of 2.
14056         (add_exclude, add_exclude_file): Use xnrealloc instead of rolling
14057         our own address arithmetic overflow checking.
14058
14059         * lib/fnmatch.c (SIZE_MAX): Define if standard headers don't.
14060         (fnmatch): Do not alloca more than 2000 wide characters;
14061         instead, use malloc for large buffers.
14062         Check for address arithmetic overflow, and return -1
14063         with errno set to ENOMEM in that case.
14064         * lib/fnmatch_loop.c (ALLOCA_LIMIT): New macro.
14065         (NEW_PATTERN): Do not alloca more than 8000 bytes;
14066         instead, return -1.  Check for address arithmetic overflow.
14067
14068 2003-10-14  Paul Eggert  <eggert@twinsun.com>
14069
14070         Handle invalid suffixes and overflow independently, so that
14071         callers can treat them independently as needed.  Fix some bugs in
14072         suffix handling, e.g., "100k@" was not diagnosed as an invalid
14073         suffix for a human-readable blocksize.  The major caller-visible
14074         change is the addition of a new
14075         LONGINT_INVALID_SUFFIX_CHAR_WITH_OVERFLOW enum value, indicating
14076         that both overflow and suffix chars were found.
14077
14078         * lib/human.c (humblock): Don't check separately for invalid suffix
14079         char; that is xstrtoumax's job (now that its bug is fixed).
14080         * lib/xstrtoimax.c (STRTOL_T_MINIMUM, STRTOL_T_MAXIMUM) [defined
14081         INTMAX_MAX]: New macros.
14082         * lib/xstrtol.c (STRTOL_T_MINIMUM, STRTOL_T_MAXIMUM, TYPE_MINIMUM,
14083         TYPE_MAXIMUM): New macros.
14084         (bkm_scale, bkm_scale_by_power): Return strtol_error, not int.
14085         (bkm_scale, bkm_scale_by_power, __xstrtol): Return maximal values
14086         if overflow occurs, as it's what __strtol does and it's more useful
14087         in practice.
14088         (__xstrtol): If __strtol reports some error other than ERANGE,
14089         reflect it to the caller as LONGINT_INVALID.  If it reports
14090         ERANGE, continue the rest of parsing, and report LONGINT_OVERFLOW
14091         | LONGINT_INVALID_SUFFIX_CHAR if both errors occur.
14092         * lib/xstrtol.h (LONGINT_INVALID_SUFFIX_CHAR_WITH_OVERFLOW): New enum
14093         value.
14094         (_STRTOL_ERROR): Handle it.  Abort when given unknown error codes.
14095         * lib/xstrtoul.c (STRTOL_T_MINIMUM, STRTOL_T_MAXIMUM): New macros.
14096         * lib/xstrtoumax.c (STRTOL_T_MINIMUM, STRTOL_T_MAXIMUM)
14097         [defined UINTMAX_MAX]: New macros.
14098
14099 2003-10-14  Bruno Haible  <bruno@clisp.org>
14100
14101         * modules/fatal-signal: Add m4/sig_atomic_t.m4 to file list.
14102
14103 2003-10-14  Bruno Haible  <bruno@clisp.org>
14104
14105         * m4/sig_atomic_t: New file, from GNU gettext.
14106         * m4/fatal-signal.m4 (gl_FATAL_SIGNAL): Require gt_TYPE_SIG_ATOMIC_T.
14107
14108 2003-10-14  Bruno Haible  <bruno@clisp.org>
14109
14110         * lib/fatal-signal.h: Improved comments. Suggested by Paul Eggert.
14111         * lib/fatal-signal.c: Use sig_atomic_t. Suggested by Paul Eggert.
14112         Also use volatile where needed.
14113
14114 2003-10-12  Paul Eggert  <eggert@twinsun.com>
14115
14116         * modules/xalloc: Do not depend on 'exit'.  Depend on 'stdbool'.
14117         Change maintainer from Bruno Haible to 'all'.
14118
14119 2003-10-12  Paul Eggert  <eggert@twinsun.com>
14120
14121         * m4/xalloc.m4 (gl_PREREQ_XMALLOC): Require AC_C_INLINE.
14122
14123 2003-10-12  Paul Eggert  <eggert@twinsun.com>
14124
14125         * lib/xalloc.h (xnmalloc, xzalloc, xnrealloc, xclone): New decls.
14126         (XMALLOC, XCALLOC, XREALLOC, XFREE, CCLONE, CLONE): Deprecate,
14127         and define in terms of the other primitives.
14128         * lib/xmalloc.c: Include stdbool.h; do not include exit.h.
14129         (SIZE_MAX): Define if not already defined.
14130         (array_size_overflow): New function.
14131         (xalloc_die): Abort instead of exiting if 'error' returns.
14132         (xnmalloc, xnrealloc, xzalloc, xclone): New functions.
14133         (xmalloc, xrealloc): Use them.
14134         (xcalloc): Check for address arithmetic overflow.
14135         * lib/xstrdup.c (xstrdup): Use xclone, since memcpy should be
14136         a bit faster than strcpy.
14137
14138 2003-10-10  Simon Josefsson  <jas@extundo.com>
14139
14140         * modules/argp (Depends-on): Add restrict and strcase.
14141
14142 2003-10-10  Simon Josefsson  <jas@extundo.com>
14143
14144         * m4/argp.m4: Add AC_C_INLINE.
14145
14146 2003-10-08  Paul Eggert  <eggert@twinsun.com>
14147
14148         Merge getpass from libc, plus a few fixes.
14149
14150         * lib/getpass.c (HAVE_STDIO_EXT) [_LIBC]: Define to 1.
14151         Include <stdbool.h>.
14152         Include <stdio_ext.h> if HAVE_STDIO_H, otherwise define
14153         __fsetlocking to empty.
14154         [_LIBC]: Do not include "getline.h" or "unlocked-io.h", but
14155         do include <bits/libc-lock.h>.
14156         Do not include <fcntl.h>; not needed.
14157         [_LIBC]: Include <wchar.h>.
14158         (NOTCANCEL_MODE): New macro.
14159         (flockfile, funlockfile) [_LIBC]: New macros.
14160         (__libc_cleanup_push, __libc_cleanup_pop, __getline, __tcgetattr)
14161         [!_LIBC]: New macros.
14162         (call_fclose): New function.
14163         (getpass): Use it.  Save tty stream separately; this simplifies the
14164         code and makes it more reliable if stdin happens to equal stdout.
14165         Invoke __fsetlocking on tty.
14166         Handle thread cancellation if needed.
14167         Namespace cleanup (use __tcgetattr, __getline).
14168         Use bool for Booleans.
14169         [USE_IN_LIBIO]: Handle wide streams.
14170         [!_LIBC]: Unconditionally do the fseek, since we don't know what
14171         stream might go where.
14172
14173         * lib/unlocked-io.h: Include <stdio.h>, so that the caller
14174         doesn't have to include <stdio.h> before us.
14175         (clearerr_unlocked, feof_unlocked, ferror_unlocked,
14176         fflush_unlocked, fgets_unlocked, fputc_unlocked, fputs_unlocked,
14177         fread_unlocked, fwrite_unlocked, getc_unlocked, getchar_unlocked,
14178         putc_unlocked, putchar_unlocked): Define to the unlocked counterpart
14179         if not declared, so that we can use getpass.c code from libc without
14180         rewriting it.
14181         (flockfile, ftrylockfile, funlockfile): New macros.
14182
14183 2003-10-08  Paul Eggert  <eggert@twinsun.com>
14184
14185         * modules/getpass: Depend on stdbool.
14186
14187 2003-10-08  Paul Eggert  <eggert@twinsun.com>
14188
14189         * m4/getpass.m4 (gl_PREREQ_GETPASS): Check for stdio_ext.h.
14190
14191 2003-10-07  Karl Berry  <karl@gnu.org>
14192
14193         * config/config.{guess,sub}: update from config.
14194
14195 2003-10-06  Jim Meyering  <jim@meyering.net>
14196             Bruno Haible  <bruno@clisp.org>
14197
14198         This lets translators provide better translations for the
14199         "Written by ..." part of --version output.
14200         * lib/version-etc.h: Include stdarg.h.
14201         (version_etc_copyright): Declare as readonly.
14202         (version_etc): Make this function variadic with a NULL-terminated list
14203         of author name strings.
14204         (version_etc_va): New declaration.
14205         * lib/version-etc.c: Include stdarg.h, stdlib.h.
14206         (version_etc_copyright): Declare as readonly.
14207         (version_etc_va): New function. Provide a different translatable string
14208         for each possible number of authors < 10. Abbreviate when there are 10
14209         authors or more.
14210         (version_etc): Make this function variadic. Call version_etc_va.
14211         Suggestion from Gary V. Vaughan.
14212
14213         * lib/long-options.h (parse_long_options): Change prototype: the
14214         authors string is moved to the end and becomes variadic.
14215         * lib/long-options.c: Include stdarg.h.
14216         (parse_long_options): Make this function variadic, too.
14217         Call version_etc_va, not version_etc.
14218
14219 2003-10-06  Bruno Haible  <bruno@clisp.org>
14220
14221         * modules/version-etc-2: Remove file.
14222         * MODULES.html.sh (func_all_modules): Remove version-etc-2.
14223
14224 2003-10-06  Bruno Haible  <bruno@clisp.org>
14225
14226         * modules/fatal-signal: New file.
14227         * MODULES.html.sh (func_all_modules): Add fatal-signal.
14228
14229 2003-10-06  Bruno Haible  <bruno@clisp.org>
14230
14231         * m4/fatal-signal.m4: New file.
14232         * m4/signalblocking.m4: New file, from GNU gettext.
14233
14234 2003-10-06  Bruno Haible  <bruno@clisp.org>
14235
14236         * lib/version-etc-2.h: Remove file.
14237         * lib/version-etc-2.c: Remove file.
14238
14239 2003-10-06  Bruno Haible  <bruno@clisp.org>
14240
14241         * lib/fatal-signal.h: New file, from GNU gettext.
14242         * lib/fatal-signal.c: New file, from GNU gettext.
14243
14244 2003-10-05  Paul Eggert  <eggert@twinsun.com>
14245
14246         * README: Rework advice for preventing empty .o files.
14247         Don't recommend ELIDE constructs.  Recommend <stddef.h>,
14248         not <sys/types.h>.
14249
14250 2003-10-04  Karl Berry  <karl@gnu.org>
14251
14252         * lib/argp*: update from libc.
14253
14254 2003-10-04  Karl Berry  <karl@gnu.org>
14255
14256         * config/config.{guess,sub}: update from config.
14257
14258 2003-10-02  Bruno Haible  <bruno@clisp.org>
14259
14260         * modules/lchown (Include): Add lchown.h.
14261         * modules/time_r (Include): Use "..." syntax.
14262         * modules/xgetdomainname (Include): Add xgetdomainname.h.
14263
14264 2003-10-01  Simon Josefsson  <jas@extundo.com>
14265
14266         * MODULES.html.sh (func_all_modules): Move gethostname from section
14267         'based on' to section 'lacking' POSIX:2001.
14268
14269 2003-10-01  Larry Jones  <lawrence.jones@eds.com>
14270
14271         * lib/getpass.c (getpass): Use a no-op fseek when switching from input
14272         to output mode on the same stream.
14273
14274 2003-09-29  Paul Eggert  <eggert@twinsun.com>
14275
14276         * lib/strftime.c (tm_diff) [! HAVE_TM_GMTOFF]:
14277         Fix arg typo in previous patch.
14278
14279 2003-09-28  Jim Meyering  <jim@meyering.net>
14280
14281         * lib/error.c: Correct cpp indentation.
14282
14283 2003-09-27  Paul Eggert  <eggert@twinsun.com>
14284
14285         * modules/free: New file.
14286
14287 2003-09-27  Paul Eggert  <eggert@twinsun.com>
14288
14289         * m4/free.m4: New file.
14290
14291 2003-09-27  Paul Eggert  <eggert@twinsun.com>
14292
14293         * lib/minmax.h (MIN, MAX)
14294         [__STDC__ && defined __GNUC__ && __GNUC__ >= 2]:
14295         Omit the special code that used __typeof__, since we worry that
14296         it could be more trouble than it's worth.  See:
14297         http://mail.gnu.org/archive/html/bug-gnulib/2003-01/msg00090.html
14298         http://mail.gnu.org/archive/html/bug-gnulib/2003-01/msg00095.html
14299
14300         * lib/free.c: New file.
14301
14302 2003-09-27  Oskar Liljeblad  <oskar@osk.mine.nu>
14303
14304         Trivial fixes to Makefile.am parts of module listings.
14305         * modules/strstr: Append strstr.h to lib_SOURCES.
14306         * modules/strcase: Likewise, for strcase.h.
14307
14308 2003-09-27  Karl Berry  <karl@gnu.org>
14309
14310         * config/mkinstalldirs: update from automake.
14311
14312 2003-09-26  Paul Eggert  <eggert@twinsun.com>
14313
14314         * lib/error.c (SIZE_MAX) [!defined SIZE_MAX]: Define.
14315         (error_tail): Do not loop, reallocating temporary buffer, since
14316         the output cannot contain more wide characters than the input
14317         contains bytes, the size must be big enough already.  This avoids
14318         one potential size overflow calculation.  Check for size overflow
14319         when calculating temporary buffer size.  Free temporary buffer
14320         when done, if it was allocated with malloc; this plugs a memory
14321         leak.  Remove casts from void * to pointers, that are no longer
14322         needed now that we're assuming C89 or better.
14323
14324         Merge error changes from glibc.
14325
14326         * lib/error.c, error.h: Update copyright notice header to match glibc.
14327         * lib/error.c [defined _LIBC]: Include <errno.h>, <bits/libc-lock.h>.
14328         (error, error_at_line) [defined _LIBC && defined __libc_ptf_call]:
14329         Disable cancellation while printing error.
14330         * lib/error.h: Prepend __ to parameter names.
14331
14332 2003-09-26  Jim Meyering  <jim@meyering.net>
14333
14334         * lib/error.c (error_tail): Move some declarations
14335         into inner scope where the local variables are used.
14336
14337 2003-09-26  Bruno Haible  <bruno@clisp.org>
14338
14339         * m4/stpncpy.m4 (gl_FUNC_STPNCPY): Add comments about the AIX
14340         stpncpy().
14341         Don't define stpncpy through config.h; it's now done through stpncpy.h.
14342
14343 2003-09-26  Bruno Haible  <bruno@clisp.org>
14344
14345         * lib/stpncpy.h (gnu_stpncpy): New declaration.
14346         (stpncpy): Define as alias for gnu_stpncpy.
14347         * lib/stpncpy.c [!_LIBC]: Define gnu_stpncpy, not stpncpy.
14348
14349 2003-09-25  Simon Josefsson  <jas@extundo.com>
14350
14351         * lib/xgetdomainname.h: New file.
14352         * lib/xgetdomainname.c: New file.
14353
14354 2003-09-25  Simon Josefsson  <jas@extundo.com>
14355             Bruno Haible  <bruno@clisp.org>
14356
14357         * modules/getdomainname: New file.
14358         * modules/xgetdomainname: New file.
14359         * MODULES.html.sh (func_all_modules): Add getdomainname,
14360         xgetdomainname.
14361
14362 2003-09-25  Simon Josefsson  <jas@extundo.com>
14363             Bruno Haible  <bruno@clisp.org>
14364
14365         * m4/getdomainname.m4: New file.
14366
14367 2003-09-25  Simon Josefsson  <jas@extundo.com>
14368             Bruno Haible  <bruno@clisp.org>
14369
14370         * lib/getdomainname.h: New file.
14371         * lib/getdomainname.c: New file.
14372
14373 2003-09-25  Karl Berry  <karl@gnu.org>
14374
14375         * lib/argp-fmtstream.c, argp-help.c: update from libc.
14376
14377 2003-09-25  Karl Berry  <karl@gnu.org>
14378
14379         * config/install-sh: update from automake.
14380
14381 2003-09-25  Bruno Haible  <bruno@clisp.org>
14382
14383         * modules/version-etc-2: New file, from modules/version-etc with
14384         modifications.
14385         * MODULES.html.sh (func_all_modules): Add version-etc-2.
14386
14387 2003-09-25  Bruno Haible  <bruno@clisp.org>
14388
14389         * lib/version-etc-2.h: New file, from version-etc.h with modifications.
14390         * lib/version-etc-2.c: New file, from version-etc.c with modifications.
14391
14392 2003-09-24  Simon Josefsson  <jas@extundo.com>
14393
14394         * modules/xgethostname: Add xgethostname.h.
14395
14396 2003-09-24  Paul Eggert  <eggert@twinsun.com>
14397
14398         * lib/linebuffer.c (freebuffer): Don't free the argument, just
14399         the buffer associated with the argument.  Bug reported by
14400         Simon Josefsson.
14401
14402 2003-09-24  Paul Eggert  <eggert@twinsun.com>
14403
14404         * README: Document assumptions that 'int' is at least 32 bits
14405         wide, that integer arithmetic is 2's complement without overflow,
14406         that there are no holes in integer values, that adding sizes of
14407         two nonoverlapping objects can't overflow, and that all-bits-zero
14408         yields scalar zero.  Fix spelling and capitalization typos.
14409
14410 2003-09-19  Karl Berry  <karl@gnu.org>
14411
14412         * lib/argp.h: update from libc.
14413
14414 2003-09-17  Paul Eggert  <eggert@twinsun.com>
14415
14416         * m4/extensions.m4 (gl_USE_SYSTEM_EXTENSIONS): Call AC_BEFORE first,
14417         to avoid spurious warnings like "AC_RUN_IFELSE was called before
14418         gl_USE_SYSTEM_EXTENSIONS" from autoreconf.
14419
14420 2003-09-17  Paul Eggert  <eggert@twinsun.com>
14421
14422         * gnulib-tool: Use "test -h", not "test -L", for portability
14423         to Solaris 8 /bin/sh.  (This bug is fixed in Solaris 9.)
14424         (tags_regexp): Remove, since \| doesn't conform to POSIX.
14425         (sed_extract_prog): Issue s commands one-by-one, rather than
14426         using \| in one s command.
14427
14428 2003-09-16  Paul Eggert  <eggert@twinsun.com>
14429
14430         * lib/linebuffer.c (readlinebuffer): Return NULL immediately upon
14431         input error, instead of returning NULL the next time we are called
14432         (and therefore losing track of errno).
14433
14434 2003-09-16  Bruno Haible  <bruno@clisp.org>
14435
14436         * gnulib-tool (func_create_testdir): Warn about duplicated
14437         dependencies.
14438
14439 2003-09-15  Paul Eggert  <eggert@twinsun.com>
14440
14441         * modules/argmatch, modules/fatal, modules/obstack,
14442         modules/xalloc, modules/xgethostname: Sort dependencies by
14443         importance, not alphabetically.
14444
14445 2003-09-15  Paul Eggert  <eggert@twinsun.com>
14446
14447         * lib/getndelim2.c (getndelim2): Don't trash errno when a read
14448         fails, so that the caller gets the proper errno.
14449
14450         * lib/readutmp.c (read_utmp): Likewise.
14451         Check for fstat error.  Close stream and free storage
14452         when failing.
14453
14454 2003-09-14  Karl Berry  <karl@gnu.org>
14455
14456         * config/srclist.txt (strdup.c): disable for c89 changes.
14457
14458 2003-09-14  Jim Meyering  <jim@meyering.net>
14459
14460         * lib/getloadavg.c: Correct cpp indentation.
14461         * lib/strdup.c: Likewise.
14462         * lib/vasnprintf.c: Likewise.
14463
14464 2003-09-14  Bruno Haible  <bruno@clisp.org>
14465
14466         * modules/fwriteerror: New file.
14467         * MODULES.html.sh (func_all_modules): Add fwriteerror.
14468
14469 2003-09-14  Bruno Haible  <bruno@clisp.org>
14470
14471         * lib/fwriteerror.h: New file.
14472         * lib/fwriteerror.c: New file.
14473
14474 2003-09-12  Paul Eggert  <eggert@twinsun.com>
14475
14476         * modules/argmatch, modules/exitfail, modules/fatal, modules/obstack,
14477         modules/xgethostname, modules/xalloc: Depend on exit.
14478
14479 2003-09-12  Paul Eggert  <eggert@twinsun.com>
14480
14481         * m4/error.m4: Require AC_FUNC_STRERROR_R rather than invoking it.
14482
14483         * m4/extensions.m4 (gl_USE_SYSTEM_EXTENSIONS): Require AC_AIX
14484         and AC_MINIX, too, so that their extensions are available.
14485
14486         * m4/prereq.m4 (jm_PREREQ_ADDEXT): Remove.  All uses removed.
14487         This macro has been superseded by gl_BACKUPFILE.
14488
14489         More patches to assume C89 or better.
14490
14491         * m4/error.m4 (gl_ERROR): Don't check for vprintf.
14492
14493         * m4/check-decl.m4 (jm_CHECK_DECLS): Include <string.h>, <stdlib.h>
14494         unconditionally.
14495         * m4/closeout.m4 (gl_CLOSEOUT): Don't check for stdlib.h.
14496         * m4/gettimeofday.m4 (AC_FUNC_GETTIMEOFDAY_CLOBBER):
14497         Include <string.h>, <stdlib.h> unconditionally.
14498         * m4/lstat.m4 (gl_PREREQ_LSTAT): Don't check for stdlib.h, free.
14499         * m4/readdir.m4 (GL_FUNC_READDIR): Don't check for string.h.
14500         * m4/readutmp.m4 (gl_PREREQ_READUTMP): Don't check for standard C
14501         headers or for string.h.
14502         * m4/strtoumax.m4 (gl_PREREQ_STRTOUMAX): Don't check for stdlib.h
14503         or strtoul.
14504
14505         * m4/mkstemp.m4 (jm_PREREQ_TEMPNAME): Do not require standard C
14506         headers.
14507         * m4/strdup.m4 (gl_PREREQ_STRDUP): Likewise.
14508         * m4/userspec.m4 (gl_USERSPEC): Likewise.
14509         * m4/xalloc.m4 (gl_PREREQ_XMALLOC): Likewise.
14510         * m4/xstrtod.m4 (gl_XSTRTOD): Likewise.
14511         * m4/xstrtol.m4 (gl_PREREQ_XSTRTOL): Likewise.
14512         * m4/strftime.m4 (_jm_STRFTIME_PREREQS): Don't check for limits.h,
14513         memcpy, memset.
14514         (jm_FUNC_GNU_STRFTIME): Don't require standard C headers.
14515         * m4/strtod.m4 (gl_FUNC_STRTOD): Do not check for float.h.
14516         * m4/strtoimax.m4 (gl_PREREQ_STRTOIMAX): Do not check for stdlib.h,
14517         strtol.
14518         * m4/strtol.m4 (gl_FUNC_STRTOL): Do not check for limits.h.
14519         * m4/userspec.m4 (gl_USERSPEC): Do not check for string.h.
14520         * m4/xstrtol.m4 (gl_PREREQ_XSTRTOL): Do not check for string.h, strtol,
14521         strtoul.
14522
14523 2003-09-12  Paul Eggert  <eggert@twinsun.com>
14524
14525         * lib/argmatch.c, fatal.c, xgethostname.c, xmalloc.c: Include exit.h.
14526         * lib/obstack.c [!defined _LIBC]: Likewise.
14527         * lib/argmatch.c (EXIT_FAILURE): Remove; now done by exit.h
14528         * lib/exitfail.c, fatal.c, xgethostname.c, xmalloc.c: Likewise.
14529         * lib/exitfail.c: Don't include stdlib.h; no longer needed.
14530
14531         More changes to assume C89 or better.
14532
14533         * lib/error.c (error_tail): Assume vprintf.
14534
14535         * lib/argmatch.c (getenv): Remove decl.
14536         * lib/progreloc.c (get_full_program_name): Define via prototype.
14537         * lib/setenv.c (clearenv): Likewise.
14538         * lib/stpncpy.c: Do not include <string.h> or <sys/types.h>; not
14539         needed.
14540         * lib/strdup.c: Include <stdlib.h>, <string.h> unconditionally.
14541         (malloc, memcpy): Remove decls.
14542         * lib/strftime.c (HAVE_LIMITS_H, STDC_HEADERS) [defined _LIBC]: Remove.
14543         (HAVE_MEMCPY) [defined emacs && !defined HAVE_BCOPY]: Remove.
14544         Include <limits.h>, <stddef.h>, <stdlib.h>, <string.h> unconditionally.
14545         (memcpy): Remove macro.
14546         (MEMCPY) [!defined COMPILE_WIDE]: Define to memcpy unconditionally.
14547         (__P): Remove.  All uses removed.
14548         (PTR): Remove.  All uses changed to void *.
14549         (CHAR_BIT, NULL): Remove.
14550         (spaces, zeros, memset_space, memset_zero)
14551         [!defined memset && !defined HAVE_MEMSET && !defined _LIBC]:
14552         Remove.
14553         (LOCALE_PARAM, LOCALE_PARAM_DECL): Remove.
14554         (memcpy_lowcase, memcpy_uppcase, tm_diff, iso_week_days):
14555         Define with prototype.
14556         Remove now-unnecessary prototype decl.
14557         (extra_args_spec): Assume ANSI C.  All uses changed.
14558         (extra_args_spec_iso): Remove.
14559         (my_strftime, emacs_strftimeu): Define via prototype.
14560         * lib/strtod.c: Include <float.h>, <stdlib.h>, <string.h>
14561         unconditionally.
14562         (DBL_MAX, DBL_MIN, HUGE_VAL, NULL): Remove decls.
14563         * lib/strtoimax.c: Include <stdlib.h> unconditionally.
14564         (strtoul, strtol): Remove decls.
14565         * lib/strtol.c (STDC_HEADERS, HAVE_LIMITS_H, NULL, ULONG_MAX,
14566         LONG_MAX): Remove.
14567         Include <limits.h>, <stddef.h>, <stdlib.h>, <string.h> unconditionally.
14568         (LOCALE_PARAM_DECL): Remove.  All uses changed to LOCALE_PARAM_PROTO.
14569         (LOCALE_PARAM_PROTO): New macro.
14570         (INTERNAL, INTERNAL1, WEAKNAME): Assume ANSI C, not K&R.
14571         (INTERNAL (strtol), strtol): Define with a prototype.
14572         (PARAMS): Remove.  All uses removed.
14573         * lib/tempname.c: Include <string.h> unconditionally.
14574         * lib/userspec.c: Include <stdlib.h>, <string.h> unconditionally.
14575         * lib/xgethostname.c (main): Define with a prototype.
14576         * lib/xmalloc.c: Include "xalloc.h" first, to check interface.
14577         Include <stdlib.h> unconditionally.
14578         (calloc, malloc, realloc, free): Remove decls.
14579         * lib/xstrtod.c: Include "xstrtod.h" first, to check interface.
14580         Include <stdlib.h> unconditionally.  Sort include file names.
14581         (strtod): Remove.
14582         (xstrtod): Define with a prototype.
14583         * lib/xstrtol.c: Include <stdlib.h>, <string.h> unconditionally.
14584         (strtol, strtoul): Remove decls.
14585
14586 2003-09-11  Paul Eggert  <eggert@twinsun.com>
14587
14588         More patches to assume C89 or better.
14589         * m4/strndup.m4 (gl_PREREQ_STRNDUP): Remove STDC_HEADERS check.
14590         * m4/strnlen.m4 (gl_PREREQ_STRNLEN): Don't check for memory.h,
14591         string.h, memchr, STDC_HEADERS.
14592
14593 2003-09-11  Paul Eggert  <eggert@twinsun.com>
14594
14595         * lib/strndup.c: Don't include <stdio.h>, <sys/types.h>.
14596         Include <stdlib.h>, <string.h> unconditionally.
14597         Remove now-unnecessary cast to char *.
14598         * lib/strnlen.c: Include <string.h> unconditionally.
14599         * lib/yesno.c (yesno): Define with a prototype.
14600
14601 2003-09-11  Bruno Haible  <bruno@clisp.org>
14602
14603         * config/srclist.txt (setenv.c, unsetenv.c): Disable for the moment.
14604
14605 2003-09-10  Jim Meyering  <jim@meyering.net>
14606
14607         * lib/error.c: Correct indentation of cpp directives.
14608
14609 2003-09-10  Bruno Haible  <bruno@clisp.org>
14610
14611         * m4/strcspn.m4 (gl_PREREQ_STRCSPN): Remove <string.h> check.
14612         * m4/strpbrk.m4 (gl_PREREQ_STRPBRK): Remove <string.h> check.
14613         * m4/strstr.m4 (gl_PREREQ_STRSTR): Remove <string.h> check.
14614         * m4/unicodeio.m4 (gl_UNICODEIO): Remove <string.h> check.
14615         * m4/setenv.m4 (gl_PREREQ_SETENV, gl_PREREQ_UNSETENV): Remove
14616         <stdlib.h> and <string.h> checks.
14617         * m4/xreadlink.m4 (gl_XREADLINK): Remove <stdlib.h> check.
14618         * m4/yesno.m4 (gl_YESNO): Remove <stdlib.h> check.
14619
14620 2003-09-10  Bruno Haible  <bruno@clisp.org>
14621
14622         * lib/strcspn.c: Include <string.h> unconditionally.
14623         * lib/strpbrk.c: Include <string.h> unconditionally.
14624         * lib/strstr.c: Include <string.h> unconditionally.
14625         * lib/unicodeio.c: Include <string.h> unconditionally.
14626         * lib/setenv.c: Include <stdlib.h> and <string.h> unconditionally.
14627         * lib/unsetenv.c: Likewise.
14628         * lib/xreadlink.c: Include <stdlib.h> unconditionally.
14629         * lib/yesno.c: Include <stdlib.h> unconditionally.
14630         (rpmatch): Add prototype.
14631
14632 2003-09-09  Paul Eggert  <eggert@twinsun.com>
14633
14634         More patches to assume C89 or better.
14635         * m4/getcwd.m4 (AC_FUNC_GETCWD_NULL): Don't check for stdlib.h.
14636         * m4/getopt.m4 (gl_GETOPT): Don't check for string.h.
14637         * m4/getugroups.m4 (gl_GETUGROUPS): Do not check for standard C headers
14638         or for string.h.
14639         * m4/getusershell.m4 (gl_PREREQ_GETUSERSHELL): Do not check for
14640         stdlib.h.
14641         * m4/group-member.m4 (gl_PREREQ_GROUP_MEMBER): Do not require standard
14642         C headers.
14643         * m4/hard-locale.m4 (gl_HARD_LOCALE): Do not check for stdlib.h,
14644         string.h.
14645         * m4/hash.m4 (gl_HASH): Do not check for stdlib.h, malloc, free.
14646         * m4/human.m4 (gl_HUMAN): Do not check for stdlib.h, string.h, getenv.
14647         * m4/idcache.m4 (gl_IDCACHE): Do not check for standard C headers,
14648         or for string.h.
14649         * m4/long-options.m4 (gl_LONG_OPTIONS): Do not check for stdlib.h.
14650         * m4/makepath.m4 (gl_MAKEPATH): Do not check for string.h or standard
14651         C headers.
14652         * m4/md5.m4 (gl_MD5): Don't check for limits.h, standard C headers,
14653         memcpy.
14654         * m4/sha.m4 (gl_SHA): Don't check for standard Cheaders, memcpy.
14655         * m4/memchr.m4 (jm_PREREQ_MEMCHR): Don't check for limits.h, stdlib.h.
14656         * m4/memcmp.m4 (gl_PREREQ_MEMCMP): Don't check for string.h.
14657         * m4/memcoll.m4 (gl_MEMCOLL): Likewise.
14658         * m4/memrchr.c (gl_PREREQ_MEMRCHR): Don't check for limits.h.
14659         * m4/mkdir-slash.m4 (gl_PREREQ_MKDIR): Don't check for stdlib.h,
14660         string.h, free.
14661         * m4/mktime.m4 (gl_PREREQ_MKTIME): Don't check for standard C headers.
14662         * m4/modechange.m4 (gl_MODECHANGE): Don't check for standard C headers.
14663         * m4/mountlist.m4 (gl_PREREQ_MOUNTLIST_EXTRA): Don't check for standard
14664         C headers, or for string.h.
14665         * m4/obstack.m4 (gl_OBSTACK): Don't check for stddefe.h, string.h.
14666         (gl_PREREQ_OBSTACK): Don't check for stdlib.h.
14667         * m4/path-concat.m4 (gl_PATH_CONCAT): Don't check for standard C
14668         headers, memory.h, stdlib.h, string.h, strings.h.
14669         * m4/posixtm.m4 (gl_POSIXTM): Don't check for stdlib.h, string.h.
14670         * m4/posixver.m4 (gl_POSIXVER): Don't check for getenv.
14671         * m4/putenv.m4 (gl_PREREQ_PUTENV): Don't check for string.h, memcpy,
14672         strchr.
14673         * m4/readtokens.m4 (gl_READTOKENS): Don't check for standard C
14674         headers, memory.h, string.h.
14675         * m4/regex.m4 (jm_PREREQ_REGEX): Do not check for limits.h, string.h.
14676         * m4/rename.m4 (gl_PREREQ_RENAME): Do not check for stdlib.h, string.h,
14677         free.
14678         * m4/rpmatch.m4 (gl_PREREQ_RPMATCH): Don't check for standard C
14679         headers.
14680         * m4/same.m4 (gl_SAME): Don't check for stdlib.h, string.h, free.
14681         * m4/save-cwd.m4 (gl_SAVE_CWD): Don't check for standard C headers.
14682         * m4/savedir.m4 (gl_SAVEDIR): Don't check for standard C headers.
14683         * m4/strchrnul.m4 (gl_PREREQ_STRCHRNUL): Don't check for string.h.
14684         * m4/xgetcwd.m4 (gl_XGETCWD): Don't check for stdlib.h.
14685
14686 2003-09-09  Paul Eggert  <eggert@twinsun.com>
14687
14688         More K&R removal.
14689
14690         * lib/acosl.c (main): Use a prototype.
14691         * lib/asinl.c, cosl.c, expl.c, frexpl.c, ldexpl.c, sinl.c,
14692         tanl.c: Likewise.
14693
14694         * lib/getloadavg.c (getloadavg, main): Define via prototypes.
14695
14696         * lib/getopt.h (struct option.name): Assume C89, and use 'const'.
14697         (getopt, etopt_long, getopt_long_only, _getopt_internal)
14698         [defined __GNU_LIBRARY__]: Assume C89, so we can always declare
14699         with a prototype.
14700         * lib/getopt.c (const): Remove macro.
14701         Include <string.h> unconditionally.
14702         (my_index): Remove; all uses changed to strchr.
14703         (strlen): Remove decl.
14704         (exchange): Remove forward decl; no longer needed.
14705         (exchange, _getopt_initialize, _getopt_internal, getopt, main):
14706         Define with prototype.
14707         * lib/getopt1.c (const): Remove macro.
14708         (getopt_long, getopt_long_only, main): Define with prototype.
14709
14710         * lib/getugroups.c: Include <string.h> unconditionally.
14711
14712         * lib/getusershell.c: Include <stdlib.h> unconditionally.
14713         (getusershell, setusershell, endusershell, readname, main):
14714         Define with prototypes.
14715
14716         * lib/group-member.c: Include group-member.h first.
14717         Include <stdlib.h> unconditionally.
14718
14719         * lib/hard-locale.c: Include hard-locale.h first.
14720         Include <stdlib.h>, <string.h> unconditionally.
14721
14722         * lib/hash.c (free, malloc): Remove decls.
14723         Include <stdlib.h> unconditionally.
14724
14725         * lib/human.c: Include <stdlib.h>, <string.h> unconditionally.
14726         (getenv): Do not declare.
14727
14728         * lib/idcache.c: Include <string.h> unconditionally.
14729
14730         * lib/long-options.c: Include long-options.h first, to test interface.
14731         Include <stdlib.h> unconditionally.
14732
14733         * lib/makepath.c: Include makepath.h first, to test interface.
14734         Include <stdlib.h> and <string.h> unconditionally.
14735
14736         * lib/linebuffer.c: Include <stdlib.h>.
14737         (free): Remove decl.
14738
14739         * lib/malloc.c: Include <stdlib.h>, for malloc; don't bother with
14740         stddef.h. rpl_malloc returns void *, not char *.
14741         * lib/realloc.c (rpl_realloc): Likewise.  Also, define with a
14742         prototype.
14743
14744         * lib/md5.h: Include <limits.h> unconditionally.
14745         (UINT_MAX_32_BITS): Don't worry about non-__STDC__ case.
14746         (__P): Remove; all uses removed.
14747         * lib/md5.c: Include "md5.h" first.
14748         (md5_init_ctx, md5_read_ctx, md5_finish_ctx, md5_stream,
14749         md5_buffer, md5_process_bytes, md5_process_block):
14750         Define with prototypes.
14751         * lib/sha.h (__P): Remove all uses.  (It wasn't defined??)
14752         * lib/sha.c: Include "sha.h" first.
14753         Include <stdlib.h>, <string.h> unconditionally.
14754
14755         * lib/memchr.c (__ptr_t): Remove; all uses changed to void *.
14756         * lib/memcmp.c (__ptr_t): Likewise.
14757         * lib/memrchr.c (__ptr_t): Likewise.
14758         * lib/memchr.c, memcmp.c, memcoll.c, memrchr.c:
14759         Include <string.h> unconditionally.
14760         * lib/memchr.c, memrchr.c: Include <limits.h> unconditionally.
14761         * lib/memchr.c: Include <stdlib.h> unconditionally.
14762         * lib/memchr.c (LONG_MAX): Remove.
14763         * lib/memrchr.c (LONG_MAX): Likewise.
14764         * lib/memchr.c (__memchr): Define via a prototype.
14765         * lib/memrchr.c (__memrchr): Likewise.
14766         * lib/memcmp.c (__P): Remove, and remove all uses.
14767         (memcmp_bytes, memcmp_common_alignment, memcmp_not_common_alignment):
14768         Remove forward decls; no longer needed.
14769         * lib/memcpy.c, memmove.c, memset.c: Include <stddef.h>.
14770         Use types required by C89 in prototype.
14771
14772         * lib/mkdir.c: Include <stdlib.h>, <string.h> unconditionally.
14773         * lib/savedir.c: Likewise.
14774         * lib/mkdir.c (free): Remove decl.
14775         * lib/rmdir.c (rmdir): Define with a prototype.
14776         * lib/savedir.c: Include savedir.h first, to test interface.
14777
14778         * lib/mktime.c (STDC_HEADERS): Remove.
14779         Include <stdlib.h>, <string.h> unconditionally.
14780
14781         * lib/modechange.c: Include <stdlib.h> unconditionally.
14782         (malloc): Remove decl.
14783
14784         * lib/mountlist.c: Include <stdlib.h>, <string.h> unconditionally.
14785         (free): Remove decl.
14786
14787         * lib/obstack.h (PTR_INT_TYPE) [!defined __PTRDIFF_TYPE__]:
14788         Define to ptrdiff_t, without bothering to check HAVE_STDDEF_H.
14789         (This type really should be intptr_t, but that's a C99ism.)
14790         (_obstack_memcpy): Remove: all uses changed to memcpy.
14791         Include <string.h> unconditionally.
14792         (struct obstack): Assume __STDC__ for types of members
14793         chunkfun, freefun, extra_arg.
14794         (_obstack_newchunk, _obstack_free, _obstack_begin, _obstack_begin_1,
14795         _obstack_memory_used, obstack_alloc_failed_handler, obstack_init,
14796         obstack_begin, obstack_specify_allocation,
14797         obstack_specify_allocation_with_arg, obstack_chunkfun,
14798         obstack_freefun, obstack_free) [! (defined __STDC__ && __STDC__)]:
14799         Remove unprototyped decls and the macros that use them.
14800         * lib/obstack.c (POINTER): Remove.  All uses changed to void *.
14801         (obstack_alloc_failed_handler, CALL_CHUNKFUN, CALL_FREEFUN,
14802         _obstack_begin, _obstack_begin_1, _obstack_allocated_p)
14803         (defined __STDC__ && __STDC__)]:
14804         Remove nonprototyped code.
14805         Include <stdlib.h> unconditionally.
14806         (_obstack_begin, _obstack_begin_1, _obstack_newchunk,
14807         _obstack_allocated_p, _obstack_free, obstack_free,
14808         _obstack_memory_used, print_and_abort):
14809         Define using prototypes.
14810         (obstack_1grow, obstack_1grow_fast, obstack_alloc, obstack_base,
14811         obstack_blank, obstack_blank_fast, obstack_copy, obstack_copy0,
14812         obstack_finish, obstack_grow, obstack_grow0, obstack_make_room,
14813         obstack_next_free, obstack_object_size, obstack_room) [0]:
14814         Remove unused, unprototyped code.
14815
14816         * lib/path-concat.c: Include <stdlib.h>, <string.h> unconditionally.
14817
14818         * lib/physmem.c (physmem_total, physmem_available, main): Define
14819         with prototypes.
14820
14821         * lib/posixtm.c: Include <stdlib.h>, <string.h> unconditionally.
14822         (main): Define with a prototype.
14823
14824         * lib/posixver.c (getenv): Remove decl.
14825
14826         * lib/putenv.c (malloc): Returns void *, not char *.
14827         Include <string.h> unconditionally.
14828         (strchr, memcpy, NULL): Do not define.
14829
14830         * lib/readtokens.c: Include readtokens.h first, to test interface.
14831         Include <stdlib.h>, <string.h> unconditionally.
14832         (init_tokenbuffer): Define with a prototype.
14833
14834         * lib/regex.c (PARAMS): Remove.  All uses removed.
14835         All uses of _RE_ARGS removed, too.
14836         Include <stddef.h>, <stdlib.h>, <string.h>, <limits.h>
14837         unconditionally.
14838         (bzero): Assume memset exists.
14839         (memcmp, memcpy, NULL): Remove.
14840         (SIGN_EXTEND_CHAR): Remove; all uses replaced by casts to signed
14841         char, or assignments to local vars of type signed char.
14842         (init_syntax_once, PREFIX(extract_number_and_incr),
14843         PREFIX(print_partial_compiled_pattern),
14844         PREFIX(print_compiled_pattern), PREFIX(print_double_string),
14845         convert_mbs_to_wcs, print_fastmap, re_set_syntax,
14846         PREFIX(regex_grow_registers), PREFIX(regex_compile),
14847         PREFIX(store_op1), PREFIX(store_op2), PREFIX(insert_op1),
14848         PREFIX(insert_op2), PREFIX(at_begline_loc_p),
14849         PREFIX(at_endline_loc_p), group_in_compile_stack, insert_space,
14850         wcs_compile_range, byte_compile_range, truncate_wchar,
14851         PREFIX(re_compile_fastmap), re_compile_fastmap, re_set_registers,
14852         re_search, re_search_2, PREFIX(re_search_2), re_match, re_match_2,
14853         count_mbs_length, wcs_re_match_2_internal,
14854         byte_re_match_2_internal, PREFIX(group_match_null_string_p),
14855         PREFIX(alt_match_null_string_p),
14856         PREFIX(common_op_match_null_string_p), PREFIX(bcmp_translate),
14857         re_compile_pattern, re_comp, re_exec, regcomp, regexec, regerror,
14858         regfree, PREFIX(extract_number)): Define with prototype.  Remove
14859         now-unnecessary declaration, if any.
14860         (byte_compile_range, PREFIX(regex_compile), re_comp, re_exec,
14861         regcomp, regexec):
14862         Remove now-unnecessary casts among pointer types.
14863         * lib/regex.h (_RE_ARGS): Remove.  All uses removed.
14864
14865         * lib/rename.c: Include <stdlib.h>, <string.h> unconditionally.
14866         (free): Remove decl.
14867
14868         * lib/rpmatch.c: Include <stdlib.h> unconditionally.
14869
14870         * lib/same.c: Include <stdlib.h>, <string.h> unconditionally.
14871         (free): Remove decl.
14872
14873         * lib/save-cwd.c: Include <stdlib.h> unconditionally.
14874         * lib/xgetcwd.c: Likewise.
14875
14876         * lib/stat.c: Include <stdlib.h>, <string.h> unconditionally.
14877         (free): Remove decl.
14878
14879         * lib/strchrnul.c (strchrnul): Define with a prototype.
14880         Fix bug: c_in was not converted to char before searching.
14881
14882         The following changes are not K&R related:
14883
14884         * lib/group-member.h: Include <sys/types.h>, so that this file is
14885         self-contained.
14886         * lib/makepath.h: Likewise.
14887
14888         * lib/getusershell.c (readname, default_index, line_size, readname):
14889         Use size_t, not int, for sizes.
14890         (readname): If the size overflows, report an error instead of
14891         looping forever.
14892
14893 2003-09-09  Paul Eggert  <eggert@twinsun.com>
14894
14895         * config/srclist.txt: Do not get getopt.h, getopt1.c, or regex.h from
14896         libc.
14897
14898 2003-09-09  Paul Eggert  <eggert@twinsun.com>
14899
14900         * README: New section: portability guidelines.
14901
14902 2003-09-09  Derek Robert Price  <derek@ximbiot.com>
14903
14904         * m4/getndelim2.m4 (gl_PREREQ_GETNDELIM2): Assume stdlib.h per the
14905         C89 spec.
14906
14907 2003-09-09  Derek Robert Price  <derek@ximbiot.com>
14908
14909         * lib/getndelim2.c: Assume stdlib.h per the C89 spec.
14910
14911 2003-09-08  Paul Eggert  <eggert@twinsun.com>
14912
14913         Assume C89 or better; remove K&R cruft.
14914         A few of these changes were first proposed by Derek Robert Price
14915         in <http://mail.gnu.org/archive/html/bug-gnulib/2003-07/msg00105.html>.
14916
14917         * lib/addext.c: Include <string.h> unconditionally.
14918         * lib/backupfile.c: Include <string.h>, <stdlib.h> unconditionally.
14919         Don't declare getenv or malloc.
14920
14921         * lib/alloca.c: Include <string.h>, <stdlib.h> unconditionally.
14922         (POINTER_TYPE, pointer): Remove; all uses changed to void *.
14923         (NULL): Remove.
14924         (find_stack_direction, alloca): Use prototypes.
14925
14926         * lib/atexit.c (atexit): Define using a prototype.
14927
14928         * lib/basename.c, dirname.c, stripslash.c:
14929         Include <string.h> unconditionally.
14930
14931         * lib/bcopy.c: Include <stddef.h>.
14932         (bcopy): Define with prototype, using 'const' and 'void' and 'size_t'.
14933
14934         * lib/canon-host.c: Include <stdlib.h>, <string.h> unconditionally.
14935
14936         * lib/error.h (error, error_at_line, error_print_progname)
14937         [! (defined (__STDC__) && __STDC__)]: Remove decls.
14938         * lib/error.c: Include error.h first, to check interface.
14939         Include <stdarg.h>, <stdlib.h>, <string.h> unconditionally.
14940         (VA_START): Remove; all uses changeed to va_start.
14941         (exit, strerror): Remove decls.
14942         (error_print_progname): Prototype uncondionally.
14943         Don't include <errno.h>; no longer needed.
14944         (private_strerror): Remove.
14945         (error_tail): Always define.
14946         (error, error_at_line): Assume C89 or better; always use prototypes.
14947         * lib/fatal.c: Include "fatal.h" first, to test interface.
14948         Include <stdarg.h>, <stdlib.h>, <string.h> unconditionally.
14949         (VA_START): Remove; all uses changed to va_start.
14950         [! (HAVE_VPRINTF || HAVE_DOPRNT || _LIBC)]: Remove support for
14951         this case.
14952         (exit): Remove decl.
14953         (fatal): Prototype unconditionally.  Assume va_start works.
14954         Abort at end, to pacify gcc.
14955
14956         * lib/euidaccess.c (main): Define with a prototype.
14957
14958         * lib/exclude.c: Include <stdlib.h>, <string.h> unconditionally.
14959
14960         * lib/exitfail.c: Include <stdlib.h> unconditionally.
14961
14962         * lib/fnmatch_.h (__P): Remove.  All uses changed to assume
14963         prototypes.
14964         * lib/fnmatch.c: Include fnmatch.h first, to test interface.
14965         Include <string.h>, <stddef.h>, <stdlib.h> unconditionally.
14966         (getenv): Remove decl.
14967         (fnmatch): Define using a prototype.
14968         * lib/fnmatch_loop.c (FCT): Remove forward decl; no longer needed.
14969         (FCT): Define using a prototype.
14970
14971         * lib/getdate.y: Include <stdlib.h>, <string.h> unconditionally.
14972
14973         * lib/gethostname.c: Include <stddef.h>.
14974         (gethostname): Define with prototype.  Length is size_t, not int.
14975
14976 2003-09-08  Paul Eggert  <eggert@twinsun.com>
14977
14978         Assume C89 or better; remove K&R cruft.
14979         * m4/alloca.m4 (gl_PREREQ_ALLOCA): Don't check for stdlib.h, string.h.
14980         * m4/backupfile.m4 (gl_BACKUPFILE): Don't check for stdlib.h,
14981         string.h, getenv, malloc.
14982         * m4/dirname.m4 (gl_DIRNAME): Don't check for string.h or C standard
14983         headers.
14984         * m4/canon-host.m4 (gl_CANON_HOST): Don't check for string.h, stdlib.h.
14985         * m4/error.m4 (jm_PREREQ_ERROR): Do not require STDC headers, and
14986         do not check for strerror.
14987         * m4/exclude.m4: Do not check for stdlib.h, string.h, strings.h.
14988         * m4/exitfail.m4 (gl_EXITFAIL): Do not check for stdlib.h.
14989         * m4/fatal.m4 (gl_FATAL): Do not require STDC headers, and
14990         do not check for doprnt or vprintf.
14991         * m4/fnmatch.m4 (gl_PREREQ_FNMATCH_EXTRA): Remove.  All uses removed.
14992         * m4/getdate.m4 (gl_GETDATE): Don't check for stdlib.h or string.h.
14993
14994 2003-09-08  Paul Eggert  <eggert@twinsun.com>
14995
14996         * lib/getversion.c: Remove; was migrated to backupfile.c in 1997.
14997         getversion.c should have been removed then, but was accidentally
14998         preserved.
14999
15000         * lib/utime.c [!HAVE_UTIMES_NULL]: Include <sys/stat.h>, <fcntl.h>.
15001         (utime_null): Fix typo: 'st' was sometimes called 'sb'.
15002
15003 2003-09-08  Karl Berry  <karl@gnu.org>
15004
15005         * config/config.sub, config.guess, srclistvars.sh: update from savannah
15006                 config, forget about prep.
15007
15008         * config/depcomp, missing: update from automake.
15009
15010 2003-09-07  Paul Eggert  <eggert@twinsun.com>
15011
15012         * modules/time_r: Depend on 'restrict'.  Fix from Simon Josefsson in
15013         <http://mail.gnu.org/archive/html/bug-gnulib/2003-09/msg00028.html>.
15014
15015 2003-09-07  Paul Eggert  <eggert@twinsun.com>
15016
15017         * lib/time_r.c (gmtime_r, localtime_r): Fix silly typo: missing arg to
15018         copy_tm_result.  Bug reported by Simon Josefsson in
15019         <http://mail.gnu.org/archive/html/bug-gnulib/2003-09/msg00028.html>.
15020
15021 2003-09-06  Paul Eggert  <eggert@twinsun.com>
15022
15023         * m4/time_r.m4: New file.
15024         * m4/mktime.m4 (gl_PREREQ_MKTIME): Remove check for limits.h.
15025         * m4/timegm.m4 (gl_FUNC_TIMEGM): Assume that timegm is buggy if mktime
15026         is. Check for timegm declaration.
15027         (gl_PREREQ_TIMEGM): Require gl_FUNC_MKTIME.
15028         Do not check for gmtime_r.
15029         Replace mktime if __mktime_internal does not exist and if mktime
15030         hasn't been replaced already.
15031
15032 2003-09-06  Paul Eggert  <eggert@twinsun.com>
15033
15034         * lib/time_r.c, time_r.h: New files.
15035
15036         * lib/mktime.c (my_mktime_localtime_r): Remove; all uses changed to
15037         __localtime_r.
15038         (__localtime_r) [!defined _LIBC]: New macro.  Include <time_r.h>.
15039         (__mktime_internal) [!defined _LIBC]: Now extern, not static.
15040
15041         * lib/strftime.c (my_strftime_gmtime_r): Remove; all uses changed to
15042         __gmtime_r.
15043         (my_strftime_localtime_r): Remove; all uses changed to __localtime_r.
15044         (__gtime_r, __localtime_r) [!HAVE_TM_GMTOFF]: New macros.
15045         Include <time_r.h>.
15046
15047         * lib/timegm.c: Switch to glibc implementation, with the following
15048         changes:
15049         [defined HAVE_CONFIG_H]: Include <config.h>.
15050         [!defined _LIBC]: Include "timegm.h" rather than <time.h>.
15051         (__mktime_internal) [!defined _LIBC]: New decl.
15052         (__gmtime_r) [!defined _LIBC]: New macro and function.
15053         (timegm): Use a prototype, since gnulib assumes C89.
15054         Do not bother declaring tmp to be const, as it's not really usefu.
15055         * lib/timegm.h: Hoist "#include <time.h>" out of #ifdef.
15056         (timegm): Declare only if HAVE_DECL_TIMEGM.
15057
15058 2003-09-06  Paul Eggert  <eggert@twinsun.com>
15059
15060         * MODULES.html.sh (func_all_modules): Add time_r.
15061         * modules/time_r: New file.
15062         * modules/mktime, modules/strftime, modules/timegm: Depend on time_r.
15063         * modules/timegm: Depend on mktime.  Change maintainer to "all, glibc".
15064
15065 2003-09-03  Paul Eggert  <eggert@twinsun.com>
15066
15067         * lib/human.c (human_readable): Fix bug that rounded 10501 to 10k.
15068         Bug reported by Lute Kamstra in
15069         <http://mail.gnu.org/archive/html/bug-gnulib/2003-09/msg00003.html>.
15070
15071         * lib/getdate.y (relative_time_table): Use tDAY_UNIT for "tomorrow",
15072         "yesterday", "today", and "now" rather than tMINUTE_UNIT.  Of
15073         course with correspondingly smaller numbers for tomorrow and
15074         yesterday.  From Tadayoshi Funaba.  Originally installed into
15075         sh-utils on 1999-08-07, but the patch got lost (I guess during the
15076         coreutils merge?).
15077
15078 2003-08-31  Simon Josefsson  <jas@extundo.com>
15079
15080         * modules/timegm: New file.
15081         * MODULES.html.sh (func_all_modules): Add timegm.
15082
15083 2003-08-31  Simon Josefsson  <jas@extundo.com>
15084
15085         * m4/timegm.m4: New file.
15086
15087 2003-08-31  Simon Josefsson  <jas@extundo.com>
15088
15089         * lib/timegm.h: New file.
15090         * lib/timegm.c: New file.  Based on
15091         wget-1.8.2/src/http.c:mktime_from_utc.
15092
15093 2003-08-31  Karl Berry  <karl@gnu.org>
15094
15095         * lib/argp.h: update from libc.
15096
15097 2003-08-28  Bruno Haible  <bruno@clisp.org>
15098
15099         * m4/fnmatch.m4 (_AC_LIBOBJ_FNMATCH): Remove AC_DEFINE of fnmatch here.
15100         This avoids havoc on compilers for which '#define fnmatch rpl_fnmatch'
15101         followed by '#define fnmatch fnmatch_posix' gives an error.
15102
15103 2003-08-28  Bruno Haible  <bruno@clisp.org>
15104
15105         * lib/binary-io.h: Undefine O_BINARY before defining it. This avoids a
15106         warning on QNX, which defines O_BINARY to 000000.
15107
15108 2003-08-27  Jim Meyering  <jim@meyering.net>
15109
15110         * m4/mkstemp.m4: Require that the system mkstemp be able to create
15111         70 temporary files, not just 30.  Tru64 V4.0F's mkstemp function
15112         would fail after 32.  Reported by Danny Levinson.  Details here:
15113         http://mail.gnu.org/archive/html/bug-coreutils/2003-08/msg00124.html
15114
15115 2003-08-24  Bruno Haible  <bruno@clisp.org>
15116
15117         * lib/binary-io.h: Include <stdio.h>, to avoid a compilation error when
15118         MSVC7 <stdio.h> is included later.
15119
15120 2003-08-22  Simon Josefsson  <jas@extundo.com>
15121
15122         * modules/strndup (Makefile.am): Add strndup.h to lib_SOURCES.
15123
15124 2003-08-20  Karl Berry  <karl@gnu.org>
15125
15126         * m4/lib-ld.m4: serial 1003 from gettext, no changes besides serial.
15127
15128 2003-08-20  Bruno Haible  <bruno@clisp.org>
15129
15130         * modules/progname: New file.
15131         * MODULES.html.sh (func_all_modules): Add progname.
15132
15133 2003-08-20  Bruno Haible  <bruno@clisp.org>
15134
15135         * lib/progname.h: New file, from GNU gettext.
15136         * lib/progname.c: New file, from GNU gettext.
15137         * lib/progreloc.c: New file, from GNU gettext.
15138
15139 2003-08-19  Jim Meyering  <jim@meyering.net>
15140
15141         * m4/lib-ld.m4: Revert yesterday's change, per Bruno's request here:
15142         http://mail.gnu.org/archive/html/bug-gnulib/2003-08/msg00155.html
15143
15144 2003-08-19  Bruno Haible  <bruno@clisp.org>
15145
15146         * m4/xalloc.m4 (gl_PREREQ_XSTRDUP): Don't check for <string.h> any
15147         more.
15148
15149 2003-08-19  Bruno Haible  <bruno@clisp.org>
15150
15151         * lib/xstrdup.c: Assume <string.h> exists.
15152
15153 2003-08-18  Paul Eggert  <eggert@twinsun.com>
15154
15155         * modules/stdbool: Add BUILT_SOURCES.  Prefer $@ to target name
15156         in makefile rules.
15157
15158 2003-08-18  Jim Meyering  <jim@meyering.net>
15159
15160         * m4/getloadavg.m4: Use [\t ], not [ \t] (where \t is a literal TAB).
15161         * m4/lib-ld.m4: Likewise.
15162
15163 2003-08-18  Jim Meyering  <jim@meyering.net>
15164
15165         * lib/setenv.h: Indent nested cpp directive.
15166         * lib/vasnprintf.c: Remove trailing blanks.
15167
15168 2003-08-17  Simon Josefsson  <jas@extundo.com>
15169
15170         * modules/xstrndup: New file.
15171         * MODULES.html.sh (func_all_modules): Add xstrndup.
15172
15173 2003-08-17  Simon Josefsson  <jas@extundo.com>
15174
15175         * modules/argp: Fix autoconf macro name. Add more dependencies.
15176
15177 2003-08-17  Simon Josefsson  <jas@extundo.com>
15178
15179         * m4/xstrndup.m4: New file.
15180
15181 2003-08-17  Simon Josefsson  <jas@extundo.com>
15182
15183         * m4/argp.m4: New file.
15184
15185 2003-08-17  Simon Josefsson  <jas@extundo.com>
15186             Bruno Haible  <bruno@clisp.org>
15187
15188         * lib/xstrndup.h: New file.
15189         * lib/xstrndup.c: New file.
15190
15191 2003-08-17  Bruno Haible  <bruno@clisp.org>
15192
15193         * modules/strndup (Files, Include): Add lib/strndup.h.
15194
15195 2003-08-17  Bruno Haible  <bruno@clisp.org>
15196
15197         * modules/euidaccess (Files): Add lib/euidaccess.h.
15198
15199 2003-08-17  Bruno Haible  <bruno@clisp.org>
15200
15201         * lib/strndup.h: New file.
15202
15203 2003-08-17  Bruno Haible  <bruno@clisp.org>
15204
15205         * gnulib-tool (func_create_testdir): Handle gl_USE_SYSTEM_EXTENSIONS
15206         like AC_GNU_SOURCE.
15207         * modules/extensions (configure.ac): Comment out the invocation of
15208         gl_USE_SYSTEM_EXTENSIONS.
15209
15210 2003-08-16  Paul Eggert  <eggert@twinsun.com>
15211
15212         Merges from coreutils, etc.
15213         * m4/rpmatch.m4 (gl_PREREQ_RPMATCH): Insert ':' to prevent a syntax
15214         error in gl_FUNC_MATCH.  This fixes a bug I introduced on 2003-05-28.
15215         * m4/readlink.m4 (gl_PREREQ_READLINK): Renamed from gl_PREREQ_READLINE,
15216         fixing a typo.
15217         * m4/host-os.m4 (UTILS_HOST_OS): Add GNU/NetBSD, GNU/FreeBSD.
15218         * m4/hash.m4 (gl_HASH): Use AM_STDBOOL_H, not AC_HEADER_STDBOOL.
15219
15220 2003-08-16  Paul Eggert  <eggert@twinsun.com>
15221
15222         Document merge from coreutils.
15223         * modules/alloca: Append $(ALLOCA_H) to BUILT_SOURCES.
15224         * modules/fnmatch: Append $(FNMATCH_H) to BUILT_SOURCES.
15225         * modules/utime: Add m4/utimes-null.m4.
15226
15227 2003-08-16  Paul Eggert  <eggert@twinsun.com>
15228
15229         * lib/regex.h, strdup.c, strtoll.c, strtoul.c: Do not normalize white
15230         space, undoing this 2003-08-12 change:
15231         <http://mail.gnu.org/archive/html/bug-gnulib/2003-08/msg00080.html>
15232
15233 2003-08-16  Paul Eggert  <eggert@twinsun.com>
15234
15235         * config/srclist.txt: Get regex.h, strdup.c, strtoll.c,
15236         strtoul.c from libc, undoing this 2003-08-12 change:
15237         <http://mail.gnu.org/archive/html/bug-gnulib/2003-08/msg00080.html>
15238
15239 2003-08-16  Jim Meyering  <jim@meyering.net>
15240
15241         Merges from coreutils.
15242         * m4/readdir.m4 (GL_FUNC_READDIR): Change name to have GL_ (not jm_)
15243         prefix.  Adjust cache variables similarly.  Create 500 rather than
15244         just 300 files, to exercise bug on Darwin6.5, too.
15245         * m4/perl.m4 (jm_PERL): Use $am_missing_run, not undefined
15246         $missing_dir.
15247         * m4/jm-winsz1.m4: Require AC_SYS_POSIX_TERMIOS, not
15248         AM_SYS_POSIX_TERMIOS.
15249         Reported by mkc@mathdogs.com.
15250         Also change use of $am_cv_sys_posix_termios
15251         to $ac_cv_sys_posix_termios.  Reported by Andreas Schwab.
15252         * m4/getgroups.m4 (jm_FUNC_GETGROUPS): Rewrite to use AC_FUNC_GETGROUPS
15253         and (if needed) to call AC_LIBOBJ and to set GETGROUPS_LIB.
15254         * m4/fsusage.m4 [__GLIBC__]: GNU libc's statvfs stats each mount point
15255         in /proc/mounts until it finds one with matching device number.  This
15256         is unnecessary when the FILE argument *is* a mount point.  No stat call
15257         is necessary in that case.  So, disable the statvfs-testing code on
15258         systems with GNU libc.  Reported by Andrei Gaponenko via Tim Waugh
15259         as RedHat bug# 84846.
15260         * m4/c-stack.m4 (AC_SYS_XSI_STACK_OVERFLOW_HEURISTIC): Limit stack size
15261         to 1MB, so as not to render systems with no stack size limit (e.g.,
15262         linux-2.2.x) unusable.  Suggestion and code from Bruno Haible.
15263         Include <unistd.h>.  On some systems,
15264         it is required for the definition of _SC_PAGESIZE.
15265
15266 2003-08-16  Jim Meyering  <jim@meyering.net>
15267
15268         Merge from coreutils.
15269         * lib/xstrtoimax.c: #else #if -> #elif.
15270         * lib/xstrtoumax.c: Likewise.
15271
15272 2003-08-16  Jim Meyering  <jim@meyering.net>
15273
15274         * m4/utimes.m4 (gl_FUNC_UTIMES): New file.
15275         * m4/utimes.m4: Removed.
15276         * m4/utimes-null.m4: Renamed from utimes.m4.
15277
15278         * m4/c-stack.m4 (AC_SYS_XSI_STACK_OVERFLOW_HEURISTIC): Limit stack size
15279         to 1MB, so as not to render systems with no stack size limit (e.g.,
15280         linux-2.2.x) unusable.  Suggestion and code from Bruno Haible.
15281         Include <unistd.h>.  On some systems,
15282         it is required for the definition of _SC_PAGESIZE.
15283
15284 2003-08-16  Jim Meyering  <jim@meyering.net>
15285         and Paul Eggert  <eggert@cs.ucla.edu>
15286
15287         Merges from coreutils, etc.
15288
15289         * m4/jm-macros.m4 (AC_LANG_SOURCE(C)): New macro, undefine, then define
15290         using the latest version from cvs.  This avoids problems with #line
15291         directives using a vendor (Sun) compiler.
15292         (jm_MACROS): Bump prerequisite from 2.52g to 2.57.
15293         Don't set GETGROUPS_LIB here; now it's
15294         done via getgroups.m4's wrapper function.
15295         AC_SUBST OPTIONAL_BIN_PROGS, OPTIONAL_BIN_ZCRIPTS, and MAN here,
15296         rather than just in sh-util/configure.in, so that the
15297         now-shared-by-fileutils-and-textutils lib/Makefile.am are all the
15298         same.
15299         Use AC_CONFIG_LIBOBJ_DIR(lib) to tell the new
15300         AC_FUNC_GETLOADAVG where to find getloadavg.c.
15301         Require AC_FUNC_FTW, gt_INTTYPES_PRI, gl_CLOCK_TIME,
15302         UTILS_SYS_OPEN_MAX, GL_FUNC_GETCWD_PATH_MAX, GL_FUNC_READDIR,
15303         gl_FSUSAGE, gl_MOUNTLIST, AC_FUNC_CANONICALIZE_FILE_NAME.
15304         Remove code that is now done by the newly-required macros.
15305         Append $(EXEEXT) to DF_PROG.
15306         AC_LIBOBJ fchdir-stub if fchdir doesn't exist; similarly for fchown.
15307         Do not invoke or require the following here,
15308         since prereq.m4 or some gnulib .m4 now does this for us:
15309         gl_REGEX, UTILS_FUNC_MKDIR_TRAILING_SLASH, jm_BISON, gl_FUNC_MKTIME,
15310         jm_FUNC_LSTAT, jm_FUNC_STAT, jm_FUNC_REALLOC, jm_FUNC_MALLOC,
15311         jm_FUNC_NANOSLEEP, jm_FUNC_READDIR, jm_FUNC_MEMCMP,
15312         jm_FUNC_GLIBC_UNLOCKED_IO, AC_FUNC_FNMATCH_GNU, jm_FUNC_PUTENV,
15313         jm_AC_PREREQ_XSTRTOUMAX, jm_AC_PREREQ_XSTRTOIMAX,
15314         AC_FUNC_ERROR_AT_LINE, jm_FUNC_GNU_STRFTIME, AC_FUNC_VPRINTF,
15315         vb_FUNC_RENAME, UTILS_FUNC_MKSTEP, jm_FUNC_UTIME, AM_FUNC_GETLINE,
15316         AC_FUNC_OBSTACK.
15317         Do not replace the following functions, as this is now the job
15318         of some gnulib .m4: strcasecmp, strncasecmp, dup2, gethostname,
15319         getusershell, sig2str, strcspn, stpcpy, strstr, strtol, strtoul
15320         strpbrk, euidaccess, memcmp, rmdir, rpmatch, strndup, strverscmp,
15321         atexit getpass, strdup, getpagesize.
15322         Replace 'raise'.
15323         Do not check for the following functions, as this is now the job
15324         of some gnulib .m4: bcopy, canonicalize_file_name, fchdir, ftime,
15325         getcwd, getmntinfo, resolvepath.  But check for sysctl, setreuid,
15326         setregid.
15327         (jm_CHECK_ALL_HEADERS): Do not check for fenv.h.
15328         Check for sys/sysctl.h.
15329         (jm_CHECK_ALL_TYPES): Do not require AC_STRUCT_TM, AC_STRUCT_TIMEZONE,
15330         jm_CHECK_TYPE_STRUCT_TIMESPEC.  Invoke gt_TYPE_SSIZE_T instead
15331         of checking for ssize_t ourselves.
15332
15333         * m4/prereq.m4 (jm_PREREQ): Don't invoke macros; AC_REQUIRE them.
15334         Require every macro that gnulib/modules/* suggests for us.
15335         (jm_PREREQ_ADDEXT): New macro.
15336         (jm_PREREQ_STAT): Check for 'struct statfs' on Ultrix 4.4.
15337         Require jm_AC_TYPE_LONG_LONG instead of invoking it.
15338
15339         * m4/physmem.m4 (gl_SYS__SYSTEM_CONFIGURATION): New macro.
15340         (gl_PHYSMEM): Use it.
15341         Also check for `table' function.
15342         Check for new headers and functions.
15343         Add check for sys/sysmp.h.
15344         With suggestions from Kaveh Ghazi.
15345         Ignore headers that are present but cannot be compiled.  This
15346         avoids spurious warnings on Solaris 9 sparc with Forte Developer 7
15347         C 5.4.
15348
15349 2003-08-15  Paul Eggert  <eggert@twinsun.com>
15350
15351         Document merge from coreutils.
15352         * modules/userspec: Depend on posixver.
15353         * modules/strftime: Depend on tzset.
15354
15355 2003-08-15  Paul Eggert  <eggert@twinsun.com>
15356
15357         * lib/config.charset, ref-add.sin, ref-del.sin: Use three spaces,
15358         rather than tab, after '#' in shell-script copyright notices.
15359         Suggested by Bruno Haible.
15360
15361 2003-08-15  Paul Eggert  <eggert@twinsun.com>
15362
15363         * config/srclist-update: Use three spaces, rather than tab, after '#'
15364         in shell-script copyright notices.  Suggested by Bruno Haible.
15365         Remove unnecessary parenthesization in regular expression.
15366
15367 2003-08-15  Jim Meyering  <jim@meyering.net>
15368
15369         Merge from coreutils.
15370         * lib/xgethostname.c: Include <stdlib.h>.
15371         (xghostname): Don't exit for anything other than memory-related
15372         failure; just return NULL.
15373         * lib/userspec.c: Include "posixver.h".
15374         (parse_user_spec): Accept `.' as a separator only
15375         in pre-POSIX-200112 mode.
15376         * lib/strtoimax.c: Use #elif rather than #else #if.
15377         * lib/strftime.c (my_strftime) [!_LIBC && HAVE_TZNAME && HAVE_TZSET]:
15378         Remove function, now that we can rely on a working tzset function.
15379         [!_LIBC]: Ensure that the required autoconf test has been run.
15380         [!defined _NL_CURRENT && HAVE_STRFTIME]:
15381         Use underlying_strftime for %r.
15382         * lib/sha.c: Merge in some clean-up and optimization changes from
15383         glibc.
15384         * lib/sha.c (sha_stream) [BLOCKSIZE]: Move definition to top of file.
15385         Ensure that it is a multiple of 64.
15386         Rearrange loop exit tests so as to avoid performing an
15387         additional fread after encountering an error or EOF.
15388         * lib/realloc.c: Update copyright date.
15389
15390 2003-08-15  Jim Meyering  <jim@meyering.net>
15391         and Paul Eggert  <eggert@twinsun.com>
15392
15393         Merge from coreutils.
15394         * lib/readutmp.h (HAVE_UTMPX_H): Undef if struct utmp has the ut_exit
15395         member but strut utmpx does not.  Needed for AIX 4.3.3.
15396         (UT_EXIT_E_TERMINATION, UT_EXIT_E_EXIT): Define.
15397
15398 2003-08-15  Jim Meyering  <jim@meyering.net>
15399         and Paul Eggert  <eggert@cs.ucla.edu>
15400
15401         Merges from coreutils, etc.
15402         * m4/strftime.m4 (_jm_STRFTIME_PREREQS):
15403         Require gl_FUNC_TZSET_CLOBBER.
15404         * m4/readutmp.m4 (gl_READUTMP): Check for ut_exit.ut_exit,
15405         ut_exit.e_exit, ut_exit.ut_termination, and ut_exit.e_termination
15406         members.
15407
15408 2003-08-14  Paul Eggert  <eggert@twinsun.com>
15409
15410         Help the merge from coreutils.
15411         * m4/gettimeofday.m4 (gl_GETTIMEOFDAY_REPLACE_LOCALTIME): New macro.
15412         (AC_FUNC_GETTIMEOFDAY_CLOBBER): Use it.
15413         * m4/tzset.m4: Use it too.
15414
15415 2003-08-14  Paul Eggert  <eggert@twinsun.com>
15416
15417         * modules/tzset: New file.
15418
15419 2003-08-14  Jim Meyering  <jim@meyering.net>
15420
15421         Merges from coreutils.
15422         * modules/fnmatch: Use the `$(FNMATCH_H)' notation for AC_REPLACED
15423         variable names, rather than @FNMATCH_H@.
15424         * modules/alloca: Likewise for $(ALLOCA_H).
15425
15426         * modules/fnmatch (fnmatch.h): Use `$@' in the commands, in place of
15427         the three copies of the literal target, `fnmatch.h'.
15428         * modules/alloca (alloca.h): Likewise.
15429
15430 2003-08-14  Jim Meyering  <jim@meyering.net>
15431
15432         Merge from coreutils.
15433         * m4/tzset.m4: New file.
15434         * m4/ls-mntd-fs.m4 (jm_LIST_MOUNTED_FILESYSTEMS): Move the
15435         MOUNTED_VMOUNT test to precede the MOUNTED_GETMNTENT1 tests, since
15436         otherwise, AIX 5.1 systems would end up using the latter.
15437         MOUNTED_GETMNTENT1 support is inadequate on such systems: 1) detecting
15438         whether a file system is remote doesn't work  2) the MOUNTED_VMOUNT
15439         code reports the HOSTNAME:/MOUNT_POINT, while the MOUNTED_GETMNTENT1
15440         code reports merely /MOUNT_POINT.  Reported by Mike Jetzer.
15441
15442 2003-08-14  Jim Meyering  <jim@meyering.net>
15443
15444         Merge from coreutils.
15445         * lib/obstack.h: Whitespace changes.
15446         * lib/mountlist.c: Remove anachronistic casts of xmalloc, xrealloc,
15447         and xcalloc return values.
15448         (read_filesystem_list) [MOUNTED_GETFSSTAT]:
15449         Use MNT_NOWAIT, rather than MNT_WAIT.  Otherwise, `df DIR' could
15450         hang on OSF/1 5.1 for DIR on both local and remote file systems.
15451         Reported by (and fix confirmed by) Nelson H. F. Beebe.
15452         (read_filesystem_list) [MOUNTED_VMOUNT]: Detect any
15453         error from mntctl.
15454         Use mntctl's return value to drive the entry-processing loop, since
15455         we can't rely on the value of the vmt_length member in the last
15456         entry.  On some systems doing so could result in exhausting
15457         virtual memory.  Based in part on a patch from Mike Jetzer.
15458
15459 2003-08-14  Jim Meyering  <jim@meyering.net>
15460         and Paul Eggert  <eggert@twinsun.com>
15461
15462         Merges from coreutils, plus other fixes.
15463         * lib/physmem.c: Merge in portability changes from gcc/libiberty
15464         to support AIX, IRIX, Tru64, and Windows.  See the ChangeLog there
15465         for credits and details.  Thanks to Kaveh Ghazi for helping
15466         to keep these files in sync.
15467         (ARRAY_SIZE): Define it.
15468         (physmem_total, physmem_available): Add comments. From Kaveh Ghazi.
15469         * lib/memcasecmp.c: Remove unnecessary parentheses after 'defined'.
15470         (memcasecmp): Don't assume size_t fits in unsigned int.
15471         Remove casts and duplicate code.
15472         * lib/md5.c: Include <string.h> and <stdlib.h> unconditionally.
15473         (memcpy): Remove definition.
15474         Merge in some clean-up and optimization changes from glibc.
15475         [BLOCKSIZE]: Move definition to top of file.
15476         Ensure that it is a multiple of 64.
15477         Rearrange loop exit tests so as to avoid performing an
15478         additional fread after encountering an error or EOF.
15479         * lib/md5.h (md5_uintptr): Define.
15480         * lib/makepath.c (CLEANUP_CWD): Report an error if we failed to
15481         return to the initial working directory.  Preserve errno
15482         for caller.
15483         * lib/idcache.c: Include "xalloc.h".
15484         (xmalloc, xrealloc): Remove decls.
15485         (getuser): Remove casts no longer required in C89.
15486         * lib/human.c: Include stdio.h, for sprintf.
15487         * lib/group-member.c: Include "xalloc.h".
15488         (xmalloc, xrealloc): Remove decls.
15489         (get_group_info): Remove casts no longer required in C89.
15490         * lib/getusershell.c (readname): Remove casts no longer required in
15491         C89.
15492         * lib/gettimeofday.c (rpl_gmtime, rpl_tzset): New functions.
15493         * lib/getline.c: Whitespace fix, from coreutils.
15494
15495 2003-08-13  Paul Eggert  <eggert@twinsun.com>
15496
15497         * m4/exclude.m4 (gl_EXCLUDE): Require AC_C_INLINE, AC_HEADER_STDC.
15498         Check for isascii.
15499
15500         * m4/gettext.m4, iconv.m4, intdiv0.m4, inttypes-pri.m4, lib-link.m4,
15501         lib-prefix.m4, longdouble.m4, po.m4, progtest.m4, signed.m4:
15502         Undo previous (whitespace-only) change.
15503
15504 2003-08-13  Paul Eggert  <eggert@twinsun.com>
15505
15506         * lib/exclude.c: Include <ctype.h>
15507         (IN_CTYPE_DOMAIN): New macro.
15508         (is_space): New fn.
15509         (add_exclude_file): If LINE_END is a space, ignore trailing spaces
15510         and empty lines.
15511
15512         * lib/argp-help.c, argp-parse.c, config.charset, getopt.h:
15513         Undo previous (whitespace-only) change.
15514
15515 2003-08-13  Paul Eggert  <eggert@twinsun.com>
15516
15517         * config/srclist-update: Change update back to the old behavior,
15518         leaving whitespace alone.  Use one 'sed' command rather than a
15519         pipeline.
15520         (fixlicense): Now a variable, not a function.
15521         (remove_trailing_blanks): Remove.
15522         (fixfile): Don't invoke unexpand or cat, or remove trailing blanks.
15523         * config/config.guess, config.sub, install-sh, missing, texinfo.tex:
15524         Undo previous (whitespace-only) change.
15525
15526 2003-08-12  Paul Eggert  <eggert@twinsun.com>
15527
15528         Merge from coreutils.
15529         * modules/euidaccess: Add lib_SOURCES, include for new
15530         file euidaccess.h
15531
15532 2003-08-12  Paul Eggert  <eggert@twinsun.com>
15533
15534         * m4/gettext.m4, iconv.m4, intdiv0.m4, inttypes-pri.m4, lib-link.m4,
15535         lib-prefix.m4, longdouble.m4, po.m4, progtest.m4, signed.m4:
15536         Normalize leading white space and remove trailing white space.
15537
15538         Merge from coreutils
15539         * m4/euidaccess.m4 (gl_FUNC_EUIDACCESS): Check for euidaccess decl.
15540
15541         * m4/lib-ld.m4, lib-link.m4, lib-prefix.m4: Regenerate from gettext
15542         0.12.1.  These files are now being upgraded automatically by
15543         ../config/srclist-update.
15544
15545 2003-08-12  Paul Eggert  <eggert@twinsun.com>
15546
15547         * lib/argp-help.c, argp-parse.c, config.charset, getopt.h:
15548         Normalize leading white space and remove trailing white space.
15549         * lib/ref-add.sin, ref-del.sin: Use '#' before empty line in copyright
15550         notice, as per ../config/srclist-update.
15551
15552         Merge from coreutils.
15553         * lib/euidaccess.h: New file.
15554         * lib/euidaccess.c: Include it.
15555         * lib/.cppi-disable: Add printf-args.h, printf-parse.h, stdbool_.h,
15556         vasnprintf.h, vasprintf.h.  Remove strdup.c, gettext.h.
15557         * lib/regex.h, strdup.c, strtoll.c, strtoul.c: Normalize white space.
15558
15559 2003-08-12  Paul Eggert  <eggert@twinsun.com>
15560
15561         * config/srclist-update: Add copyright notice.
15562         (remove_id_lines, remove_trailing_blanks): New constants.
15563         (fixfile): Use them to normalize spacing a bit in copied files.
15564         * config/config.guess, config.sub, install-sh, missing, texinfo.tex:
15565         Normalize leading white space and remove trailing white space.
15566
15567         * config/texinfo.tex: Sync with texinfo.
15568
15569         * config/srclist.txt: Don't get regex.h, strdup.c, strtoll.c,
15570         strtoul.c from libc, to merge coreutils whitespace changes.
15571
15572         * config/srclist.txt: Get the following m4 files from gettext:
15573         codeset.m4, gettext.m4, glibc21.m4, iconv.m4, intdiv0.m4,
15574         inttypes-pri.m4, lcmessage.m4, lib-ld.m4, lib-link.m4, lib-prefix.m4,
15575         longdouble.m4, nls.m4, po.m4, progtest.m4, signed.m4, wchar_t.m4,
15576         wint_t.m4.
15577
15578 2003-08-12  Karl Berry  <karl@gnu.org>
15579
15580         * config/srclist.txt: can't sync vasnprintf.c any more, changes have
15581         been made.
15582
15583 2003-08-11  Paul Eggert  <eggert@twinsun.com>
15584
15585         * modules/gnu-source, m4/gnu-source.m4:
15586         Remove; we're assuming Autoconf 2.54 or later now.
15587         Suggested by Bruno Haible.
15588         * MODULES.html.sh (func_all_modules): Remove gnu-source.
15589
15590 2003-08-11  Bruno Haible  <bruno@clisp.org>
15591
15592         * m4/vasnprintf.m4 (gl_PREREQ_VASNPRINTF): Also check for wcslen.
15593
15594 2003-08-11  Bruno Haible  <bruno@clisp.org>
15595
15596         * lib/vasnprintf.c (local_wcslen): New function, for Solaris 2.5.1.
15597         (vasnprintf): Use it instead of wcslen.
15598
15599 2003-08-11  Bruno Haible  <bruno@clisp.org>
15600
15601         * lib/stdbool_.h (_Bool): Undo last change; instead use a negative enum
15602         value to ensure that _Bool promotes to int. Use #define for _Bool when
15603         using the Solaris C compiler. Adds comments suggested by Paul Eggert.
15604
15605 2003-08-10  Karl Berry  <karl@gnu.org>
15606
15607         * lib/regex.h: update from libc (whitespace fix).
15608
15609 2003-08-09  Paul Eggert  <eggert@twinsun.com>
15610
15611         Merge some files from coreutils.  These changes were
15612         originally made by Jim Meyering.
15613         * lib/acl.c: Include <sys/types.h> before <sys/stat.h>;
15614         many older Unixes require this.
15615         * lib/alloca.c (alloca): Remove cast to argument of free;
15616         no longer needed in C89.
15617         * lib/alloca_.h, regex.h: Fix white space to match
15618         what GNU indent does.
15619
15620 2003-08-09  Paul Eggert  <eggert@twinsun.com>
15621
15622         * m4/regex.m4 (jm_INCLUDED_REGEX): Change "\201" to "\371";
15623         apparently Emacs's Unicode mode got confused before my 2003-08-05
15624         checkin.
15625
15626 2003-08-08  Paul Eggert  <eggert@twinsun.com>
15627
15628         * m4/extensions.m4: New file.
15629         * m4/timespec.m4 (jm_CHECK_TYPE_STRUCT_TIMESPEC):
15630         Require gl_USE_SYSTEM_EXTENSIONS.
15631         * m4/unlocked-io.m4 (jm_FUNC_GLIBC_UNLOCKED_IO):
15632         Require gl_USE_SYSTEM_EXTENSIONS rather than AC_GNU_SOURCE.
15633
15634 2003-08-08  Paul Eggert  <eggert@twinsun.com>
15635
15636         * MODULES.html.sh (func_all_modules): Add extensions, gnu-source.
15637         * modules/extensions, modules/gnu-source: New files.
15638         * modules/timespec, modules/unlocked-io: Depend on extensions.
15639
15640 2003-08-07 Paul Eggert  <eggert@twinsun.com>
15641
15642         * modules/restrict: New file.
15643         * MODULES.html.sh (func_all_modules): Add restrict.
15644         * modules/regex: Depend on restrict.
15645
15646 2003-08-07  Paul Eggert  <eggert@twinsun.com>
15647
15648         * m4/restrict.m4: New file.
15649         * m4/regex.m4 (jm_PREREQ_REGEX): Add gl_C_RESTRICT.
15650
15651 2003-08-07  Bruno Haible  <bruno@clisp.org>
15652
15653         * modules/getndelim2 (Makefile.am): Add the files to EXTRA_DIST, not
15654         lib_SOURCES, because getndelim2.m4 now uses AC_LIBOBJ(getndelim2).
15655
15656 2003-08-07  Bruno Haible  <bruno@clisp.org>
15657
15658         * m4/getndelim2.m4 (gl_GETNDELIM2): Use AC_LIBOBJ(getndelim2). This
15659         makes the module 'getndelim2' compatible with the module 'getline'.
15660
15661 2003-08-05  Paul Eggert  <eggert@twinsun.com>
15662
15663         * m4/regex.m4 (jm_INCLUDED_REGEX): Replace a single non-ASCII
15664         byte with "\201" to avoid glitches when editing that source file
15665         with multi-gnome-terminal.
15666
15667 2003-08-05  Paul Eggert  <eggert@twinsun.com>
15668
15669         * lib/bumpalloc.h: Remove.
15670
15671 2003-08-05  Paul Eggert  <eggert@twinsun.com>
15672
15673         * MODULES.html.sh (func_all_modules): Remove bumpalloc.
15674         * modules/bumpalloc: Remove.
15675
15676 2003-08-04  Paul Eggert  <eggert@twinsun.com>
15677
15678         * lib/getloadavg.c: Change copyright notice and spacing to conform to
15679         GNU coding style.
15680
15681         Merge from coreutils.
15682         * lib/error.c [!USE_IN_LIBIO]: Omit this case; assume USE_IN_LIBIO is
15683         1. From glibc.
15684         * lib/getdate.y (date): Also accept dates like May-23-2003; suggestion
15685         from Karl Berry, implemented by Jim Meyering.
15686         * lib/getgroups.c: Include "xalloc.h" instead of declaring xalloc fns;
15687         from Dmitry V. Levin.
15688         Remove anachronistic cast of xrealloc.
15689         * lib/fnmatch_.h (__const): Remove.  Use 'const'.
15690         * lib/fnmatch_loop.c (NEW_PATTERN): Cast alloca return value to proper
15691         type. Otherwise, it wouldn't compile with at least /bin/cc on
15692         ymp-cray-unicos9.0.2.X.
15693         Combine two mostly-identical uses of alloca into one.
15694         Thanks to the Cray-Cyber project for access to a Cray Y-MP.
15695
15696 2003-08-04  Dave Love <d.love@dl.ac.uk>
15697
15698         [From Emacs.]
15699
15700         * lib/getloadavg.c: Check `__unix' as well as `unix'.  Use #ifdef, not
15701         #if.  Check HAVE_LIBKSTAT as well as LOAD_AVE_TYPE.  Check
15702         F_SETFD, not FD_SETFD.  Use HAVE_STRUCT_NLIST_N_UN_N_NAME, not
15703         obsolete NLIST_NAME_UNION.
15704         [__GNU__]: Undef BSD and FSCALE.
15705         [!NLIST_STRUCT]: Remove conditional definition of NLIST_STRUCT.
15706
15707 2003-08-03  Paul Eggert  <eggert@twinsun.com>
15708
15709         * lib/stdbool_.h (_Bool): Make it signed char, instead of
15710         an enum type, so that it's guaranteed to promote to int.  See:
15711         <http://mail.gnu.org/archive/html/bug-gnulib/2003-07/msg00124.html>
15712
15713 2003-08-03  Karl Berry  <karl@gnu.org>
15714
15715         * config/depcomp: update from automake.
15716
15717 2003-07-31  Paul Eggert  <eggert@twinsun.com>
15718
15719         * lib/strerror.c: Include config.h, limits.h.  Declare sprintf.
15720         (strerror): Don't assume that a printable int fits in 14 bytes.
15721
15722 2003-07-31  Bruno Haible  <bruno@clisp.org>
15723
15724         * modules/getpass-gnu: New file.
15725         * MODULES.html.sh (func_all_modules): Add getpass-gnu.
15726
15727 2003-07-31  Bruno Haible  <bruno@clisp.org>
15728
15729         * m4/getpass.m4 (gl_FUNC_GETPASS_GNU): New macro.
15730
15731 2003-07-24  Karl Berry  <karl@gnu.org>
15732
15733         * config/missing: update from automake.
15734
15735 2003-07-24  Derek Robert Price  <derek@ximbiot.com>
15736             Bruno Haible  <bruno@clisp.org>
15737
15738         * lib/getline.h (getline, getdelim): Change return type to ssize_t.
15739         * lib/getline.c (getline, getdelim): Likewise.
15740         Remove _GNU_SOURCE define; now it's defined in config.h through
15741         m4/getline.m4.
15742
15743 2003-07-23  Karl Berry  <karl@gnu.org>
15744
15745         * config/config.sub: update from prep.
15746
15747 2003-07-22  Paul Eggert  <eggert@twinsun.com>
15748
15749         * modules/xalloc (Depends-on): Add exitfail.
15750         * modules/xmemcoll: Likewise.
15751
15752 2003-07-22  Paul Eggert  <eggert@twinsun.com>
15753
15754         * lib/xalloc.h (XCALLOC, XREALLOC, CCLONE): Fix under- and
15755         over-parenthesization in macros.
15756
15757         Sync with coreutils.
15758
15759         * lib/xalloc.h (XMALLOC, XCALLOC, XREALLOC): Remove casts not
15760         required by C99.
15761
15762         Use `exit_failure' for xalloc and xmemcoll instead of their own
15763         private exit-failure variables.
15764         * lib/xalloc.h (xalloc_exit_failure): Remove.
15765         * lib/xmalloc.c: Likewise.  Include exitfail.h.
15766         (xalloc_die): Use exit_failure instead of xalloc_exit_failure.
15767         * lib/xmemcoll.h (xmemcoll_exit_failure): Remove.
15768         * lib/xmemcoll.c: Likewise.  Include exitfail.h.
15769         (xmemcoll): Use exit_failure instead of xalloc_exit_failure.
15770
15771 2003-07-20  Jim Meyering  <jim@meyering.net>
15772
15773         * modules/closeout (Depends-on): Add exitfail.
15774         Suggestion from Bruno Haible.
15775
15776 2003-07-19  Karl Berry  <karl@gnu.org>
15777
15778         * config/config.sub: update from prep.
15779
15780 2003-07-18  Paul Eggert  <eggert@twinsun.com>
15781
15782         * lib/closeout.h (close_stdout_set_status, close_stdout_status):
15783         Remove.
15784         * lib/closeout.c: Likewise.  Include "closeout.h" right after config.h,
15785         to test that it can stand by itself.  Include "exitfail.h".
15786         Clients should set exit_failure instead.
15787         (EXIT_FAILURE): Remove; no longer needed.  Do not include <stdlib.h>.
15788
15789 2003-07-18  Bruno Haible  <bruno@clisp.org>
15790
15791         * modules/getndelim2: New file.
15792         * modules/getline: Share files with module getndelim2.
15793         * modules/getnline: Depend on getndelim2 instead of sharing files with
15794         it. Add getnline.c to lib_SOURCES.
15795         * MODULES.html.sh (func_all_modules): Add getndelim2.
15796
15797 2003-07-18  Bruno Haible  <bruno@clisp.org>
15798
15799         * m4/getndelim2.m4: New file.
15800         * m4/getline.m4 (AM_FUNC_GETLINE): Add AC_LIBOBJ of getndelim2.c and
15801         invoke gl_PREREQ_GETNDELIM2.
15802         (gl_PREREQ_GETLINE): Drop AC_HEADER_STDC, now done by
15803         gl_PREREQ_GETNDELIM2.
15804         * m4/getnline.m4 (gl_GETNLINE): Drop AC_HEADER_STDC, now done by
15805         gl_GETNDELIM2.
15806
15807 2003-07-18  Bruno Haible  <bruno@clisp.org>
15808
15809         * lib/getndelim2.h: New file.
15810         * lib/getndelim2.c: Make into a module of its own. Include config.h,
15811         getndelim2.h.
15812         (getndelim2): Make non-static. Change return type to ssize_t.
15813         * lib/getline.h: Change argument names.
15814         * lib/getline.c: Include getndelim2.h instead of getndelim2.c.
15815         * lib/getnline.c: Include getndelim2.h.
15816
15817 2003-07-18  Andreas Schwab  <schwab@suse.de>
15818
15819         * lib/memcoll.c (memcoll) [!HAVE_STRCOLL]: Clear errno.
15820
15821 2003-07-17  Karl Berry  <karl@gnu.org>
15822
15823         * config/config.sub: update from prep.
15824
15825 2003-07-17  Bruno Haible  <bruno@clisp.org>
15826
15827         * modules/getnline: New file.
15828         * modules/getline: Add lib/getndelim2.c to source file list.
15829         * MODULES.html.sh (func_all_modules): Add getnline.
15830
15831 2003-07-17  Bruno Haible  <bruno@clisp.org>
15832
15833         * m4/getnline.m4: New file.
15834
15835 2003-07-17  Bruno Haible  <bruno@clisp.org>
15836
15837         * m4/Makefile.am.in: Remove file.
15838         * m4/Makefile.am: Remove file.
15839         * m4/Makefile.in: Remove file.
15840
15841 2003-07-17  Bruno Haible  <bruno@clisp.org>
15842
15843         * lib/getnline.h: New file.
15844         * lib/getnline.c: New file.
15845         * lib/getndelim2.c: New file, extracted from getline.c.
15846         (getndelim2): Renamed from getdelim2, with added nmax argument.
15847         * lib/getline.c: Include getndelim2.c.
15848         (getdelim2): Moved out to getndelim2.c.
15849         (getline, getdelim): Update.
15850
15851 2003-07-17  Bruno Haible  <bruno@clisp.org>
15852
15853         * lib/Makefile.am: Remove file.
15854         * lib/Makefile.in: Remove file.
15855
15856 2003-07-17  Bruno Haible  <bruno@clisp.org>
15857
15858         * configure.in: Remove file.
15859         * Makefile.in: Remove file.
15860
15861 2003-07-17  Bruno Haible  <bruno@clisp.org>
15862
15863         * MODULES.html.sh: Put the </BODY> right before </HTML>.
15864
15865 2003-07-16  Karl Berry  <karl@gnu.org>
15866
15867         * config/srclist-update: was running fixlicense twice, which caused
15868                 texinfo.tex to be nullified for some reason.  Simplify,
15869                 $gplsrc is no longer needed as far as I can see?
15870
15871 2003-07-16  Jim Meyering  <jim@meyering.net>
15872
15873         * modules/save-cwd: Depend on xgetcwd.  From Derek Price.
15874
15875 2003-07-15  Paul Eggert  <eggert@twinsun.com>
15876
15877         * config/srclist.txt: Get the following files from gettext-runtime/intl
15878         instead: config.charset, localcharset.c, localcharset.h, ref-add.sin,
15879         ref-del.sin.  From Bruno Haible.
15880         * config/srclist-update (fixfile): Change grep pattern again, since the
15881         previous fix didn't work (there was another trailing $).  Use
15882         '[$]' to escape the $s.
15883
15884 2003-07-15  Karl Berry  <karl@gnu.org>
15885
15886         * lib/vasnprintf.c: update from gettext.
15887
15888 2003-07-15  Karl Berry  <karl@gnu.org>
15889
15890         * config/srclist-update (fixfile): Change grep pattern, since 'Id'
15891         gets expanded when surrounded by '$'.
15892
15893 2003-07-15  Jim Meyering  <jim@meyering.net>
15894
15895         * modules/save-cwd: Don't depend on error.  From Derek Price.
15896
15897 2003-07-15  Jim Meyering  <jim@meyering.net>
15898
15899         * lib/makepath.c (make_path): Enclose diagnostic in _(...).
15900
15901 2003-07-14  Simon Josefsson  <jas@extundo.com>
15902
15903         * modules/mempcpy: New file.
15904         * MODULES.html.sh (func_all_modules): Add mempcpy.
15905
15906 2003-07-14  Simon Josefsson  <jas@extundo.com>
15907
15908         * m4/mempcpy.m4: New file.
15909
15910 2003-07-14  Simon Josefsson  <jas@extundo.com>
15911
15912         * lib/mempcpy.h: New file.
15913         * lib/mempcpy.c: New file.
15914
15915 2003-07-14  Paul Eggert  <eggert@twinsun.com>
15916
15917         * modules/getdate, modules/posixtm: Depend on mktime.
15918
15919 2003-07-14  Paul Eggert  <eggert@twinsun.com>
15920
15921         * lib/ceill.c, expl.c, floorl.c, frexpl.c, ldexpl.c, mathl.h,
15922         sincosl.c, sqrtl.c, trigl.c, trigl.h, poll.c, poll_.h, mkstemp.c,
15923         unicodeio.c, unicodeio.h, unlocked-io.h:
15924         Switch from LGPL to GPL.
15925
15926 2003-07-14  Paul Eggert  <eggert@twinsun.com>
15927
15928         * lib/asnprintf.c, asprintf.c, config.charset, gettext.h,
15929         localcharset.c, localcharset.h, mkdtemp.c, printf-args.c,
15930         printf-args.h, printf-parse.c, printf-parse.h, ref-add.sin,
15931         ref-del.sin, setenv.c, unsetenv.c, vasnprintf.c, vasnprintf.h,
15932         vasprintf.c, vasprintf.h: Regenerate.  These files are now being
15933         updated automatically by ../config/srclist-update.  This changes
15934         their license from LPGL to GPL.
15935
15936 2003-07-14  Paul Eggert  <eggert@twinsun.com>
15937
15938         * config/srclist.txt: Add tons more gettext files.  $GETTEXT is now
15939         assumed to refer to the root of the most recent stable gettext version.
15940         * config/srclistvars.sh: Add defaults for eggert.
15941         * config/srclist-update: Convert LGPL to GPL in shell scripts, too.
15942         Match "This program" as well as "The program".  This is needed
15943         for gettext.
15944
15945 2003-07-14  Jim Meyering  <jim@meyering.net>
15946
15947         Don't emit diagnostics.  Let callers do that.
15948         * lib/save-cwd.c: Don't include "error.h".
15949         (save_cwd): Don't call error.  Ensure that errno is valid
15950         when returning nonzero.
15951
15952         * lib/save-cwd.h (restore_cwd): Update prototype.
15953         * lib/save-cwd.c (restore_cwd): Remove two parameters.
15954         Simplify.  Don't call error upon failure.  Let callers do that.
15955         (save_cwd): Mention that Irix 5.3 has the same problem as SunOS 4
15956         when auditing is enabled.  But don't bother updating the #if.
15957
15958 2003-07-11  Alexandre Duret-Lutz  <adl@gnu.org>
15959
15960         * lib/obstack.h (__INT_TO_PTR): Revert change of 2003-03-13;
15961         it breaks C++ compilation.
15962         [!__GNUC__ || !__STDC__] (obstack_finish): Cast result to void*.
15963
15964 2003-07-10  Simon Josefsson  <jas@extundo.com>
15965
15966         * modules/strchrnul (Makefile.am): Add strchrnul.h.
15967
15968 2003-07-10  Jim Meyering  <jim@meyering.net>
15969
15970         * m4/clock_time.m4: Remove trailing blank.
15971         * m4/intmax_t.m4: Likewise.
15972
15973 2003-07-10  Jim Meyering  <jim@meyering.net>
15974
15975         * lib/vasnprintf.c: Remove trailing blanks.
15976         Make cpp indentation consistent.
15977
15978 2003-07-09  Paul Eggert  <eggert@twinsun.com>
15979
15980         * lib/alloca_.h, euidaccess.c, getpass.c, memrchr.c, obstack.h,
15981         posixver.c, strftime.c, strnlen.c, strverscmp.c:
15982         Switch from LGPL to GPL.
15983
15984 2003-07-09  Paul Eggert  <eggert@twinsun.com>
15985
15986         * config/srclist.txt: Sort sublists.  Add
15987         $LIBCSRC/sysdeps/generic/strtoul.c. In comments, add more libc files
15988         that differ from gnulib for one reason or another; we'd like this list
15989         to be smaller but for now let's document what we have.
15990
15991 2003-07-08  Paul Eggert  <eggert@twinsun.com>
15992
15993         * config/srclist-update: Port to POSIX 1003.1-2001 hosts by avoiding
15994         the use of GNU extensions.  Change "x=`eval echo $x`" to the shorter
15995         and sweeter "eval x=$x".
15996         * config/srclist.txt: Get lib/argp* from glibc.
15997
15998 2003-07-07  Paul Eggert  <eggert@twinsun.com>
15999
16000         * lib/mktime.c: Fix some boundary cases and remove need for floating
16001         point.
16002
16003         Issue a compile-time diagnostic if time_t is floating point, or if
16004         two's complement arithmetic is not in effect, or if arithmetic
16005         right shift does not propagate the sign.  These assumptions were
16006         all in the original code but they weren't checked.
16007
16008         (TIME_T_MIDPOINT, verify): New macros.
16009         (__isleap): Remove; it has integer overflow problems.
16010         (leapyear): New function, without those problems.
16011         (ydhms_tm_diff): Remove; splitting into two parts.
16012         (ydhms_diff): New function, containing the arithmetic part of
16013         the old ydhms_tm_diff function.  Issue a compile-time
16014         diagnostic if we are not using C99 integer division.
16015         Avoid casts when possible.
16016         (guess_time_tm): New function, containing the checking part of
16017         the old ydhms_tm_diff function.  Return the new value, rather than
16018         the difference between it and the old.  Accept a new argument T
16019         so that *T specifies the old value.  Check for overflow in the result.
16020
16021         (__mktime_internal): Use a time_t offset, not a long int offset.
16022         This undoes the 2003-06-04 change, which is no longer needed now
16023         that we have better overflow checking.
16024         (localtime_offset): Likewise.
16025
16026         (__mktime_internal): Avoid harmful overflow on hosts where time_t
16027         and long are 64-bit but int is only 32-bit.
16028         (ydhms_diff): Use long int to store year1 and yday1.
16029         Issue a compile-time diagnostic if long int is not wide enough.
16030
16031         (__mktime_internal): Use long int to store adjusted year and yday.
16032         Use plain C rather than preprocessor commands, if that doesn't
16033         affect efficiency.
16034         Check for overflow (and try to repair) after each probe
16035         rather than checking only at the very end.  This avoids some bugs
16036         (e.g., southern hemisphere, behind GMT, and GMT offset at minimum time
16037         does not equal GMT offset at maximum time).
16038         Use integer to check for overflow rather than floating point; this
16039         is more portable to non-IEEE hosts, and is a tad faster.
16040         When we detect that we are oscillating between two values,
16041         don't check whether tm_isdst has the requested value, since
16042         we already know the answer.  When tm_isdst has the wrong value,
16043         use a different heuristic to find the right one, based on the
16044         extreme values actually observed in practice in tz2003a,
16045         rather than the (overly optimistic) "previous 3 calendar quarters".
16046
16047         (not_equal_tm, print_tm, check_result): Use "const T" rather than
16048         "T const" to accommodate glibc style.
16049         (check_result): Use less-confusing report format.  "long" -> "long int.
16050         (main): Likewise.
16051         Don't loop if the iteration overflows time_t.
16052         Allow a negative step in the iteration.
16053
16054 2003-07-06  Karl Berry  <karl@gnu.org>
16055
16056         * config/depcomp: update from automake.
16057         * config/config.sub: update from prep.
16058
16059 2003-07-03  Karl Berry  <karl@gnu.org>
16060
16061         * config/config.guess: update from prep.
16062
16063 2003-07-01  Paul Eggert  <eggert@twinsun.com>
16064
16065         * m4/xreadlink.m4 (gl_XREADLINK): Don't check for sys/types.h, since
16066         xreadlink.c now includes it unconditionally.
16067
16068 2003-07-01  Paul Eggert  <eggert@twinsun.com>
16069
16070         * lib/xreadlink.c: Include <sys/types.h> unconditionally, instead of
16071         having it depend on HAVE_SYS_TYPES_H.
16072
16073 2003-07-01  Bruno Haible  <bruno@clisp.org>
16074
16075         * m4/ssize_t.m4 (gt_TYPE_SSIZE_T): Don't include <unistd.h>.
16076         <sys/types.h> should be sufficient.
16077         Reported by Paul Eggert.
16078
16079 2003-06-26  Karl Berry  <karl@gnu.org>
16080
16081         * config/depcomp: update from automake.
16082
16083 2003-06-26  Bruno Haible  <bruno@clisp.org>
16084
16085         * modules/human: Depend on module stdbool.
16086
16087 2003-06-25  Bruno Haible  <bruno@clisp.org>
16088
16089         * modules/readlink: New file.
16090         * modules/xreadlink: Depend on it.
16091         * MODULES.html.sh (func_all_modules): Add readlink.
16092
16093 2003-06-25  Bruno Haible  <bruno@clisp.org>
16094
16095         * m4/readlink.m4: New file.
16096
16097 2003-06-25  Bruno Haible  <bruno@clisp.org>
16098
16099         * lib/readlink.c: New file.
16100
16101 2003-06-22  Karl Berry  <karl@gnu.org>
16102
16103         * config/srclist.txt: update mkinstalldirs from automake.
16104         * config/mkinstalldirs: update.
16105
16106 2003-06-22  Bruno Haible  <bruno@clisp.org>
16107
16108         Portability to mingw32.
16109         * m4/ssize_t.m4: New file, from GNU gettext.
16110         * m4/safe-read.m4 (gl_PREREQ_SAFE_READ): Require gt_TYPE_SSIZE_T.
16111         * m4/xreadlink.m4 (gl_XREADLINK): Require gt_TYPE_SSIZE_T.
16112
16113 2003-06-22  Bruno Haible  <bruno@clisp.org>
16114
16115         * modules/safe-read: Add m4/ssize_t.m4.
16116         * modules/xreadlink: Add m4/ssize_t.m4.
16117
16118 2003-06-20  Bruno Haible  <bruno@clisp.org>
16119
16120         Assume C89, so PARAMS isn't needed.
16121         * lib/unicodeio.h (PARAMS): Remove.
16122         * lib/unicodeio.c: Don't use PARAMS.
16123
16124 2003-06-18  Karl Berry  <karl@gnu.org>
16125
16126         * config/config.{guess,sub}: update from prep.
16127
16128 2003-06-18  Jim Meyering  <jim@meyering.net>
16129
16130         Merge changes from coreutils.
16131         * lib/readutmp.c: Include <string.h> and <stdlib.h> unconditionally.
16132         Remove explicit declarations of xmalloc and realloc.
16133         Include xalloc.h.
16134         (read_utmp): Remove anachronistic cast of xmalloc.
16135
16136 2003-06-17  Paul Eggert  <eggert@twinsun.com>
16137
16138         Assume C89, so PARAMS isn't needed.
16139         * lib/backupfile.h (PARAMS): Remove.  All uses removed.
16140         * lib/closeout.h, lib/dirname.h, lib/filemode.h, lib/fsusage.h,
16141         lib/getdate.h, lib/getline.h, lib/group-member.h, lib/hard-locale.h,
16142         lib/hash.h, lib/linebuffer.h, lib/long-options.h, lib/makepath.h,
16143         lib/memcasecmp.h, lib/memcoll.h, lib/modechange.h, lib/mountlist.h,
16144         lib/path-concat.h, lib/physmem.h, lib/posixtm.h, lib/quote.h,
16145         lib/readutmp.h, lib/same.h, lib/save-cwd.h, lib/savedir.h,
16146         lib/stdio-safer.h, lib/strtoimax.c, lib/strverscmp.h,
16147         lib/unistd-safer.h, lib/version-etc.h, lib/xalloc.h, lib/xreadlink.h,
16148         lib/xstrtod.h, lib/xstrtol.h: Likewise.
16149         * lib/filemode.h, lib/hard-locale.h, lib/memcoll.h, lib/modechange.h,
16150         lib/physmem.h, lib/same.h, lib/strverscmp.h: Do not include config.h;
16151         no longer needed. Anyway, config.h should always be included before any
16152         other file.
16153
16154 2003-06-11  Simon Josefsson  <jas@extundo.com>
16155
16156         * modules/sysexits: New file.
16157         * MODULES.html.sh (func_all_modules): Add sysexits.
16158
16159 2003-06-11  Simon Josefsson  <jas@extundo.com>
16160
16161         * lib/sysexit_.h: New file.
16162
16163 2003-06-11  Derek Price  <derek@ximbiot.com>
16164
16165         * lib/stat.c [LSTAT]: Compile/use slash_aware_lstat only if it is
16166         necessary.
16167
16168 2003-06-11  Bruno Haible  <bruno@clisp.org>
16169
16170         * m4/sysexits.m4: New file.
16171
16172 2003-06-10  Simon Josefsson <jas@extundo.com>
16173
16174         * lib/argp.h: New file, from glibc.
16175         * lib/argp-ba.c: New file, from glibc.
16176         * lib/argp-eexst.c: New file, from glibc.
16177         * lib/argp-fmtstream.c: New file, from glibc.
16178         * lib/argp-fmtstream.h: New file, from glibc.
16179         * lib/argp-fs-xinl.c: New file, from glibc.
16180         * lib/argp-help.c: New file, from glibc.
16181         * lib/argp-namefrob.h: New file, from glibc.
16182         * lib/argp-parse.c: New file, from glibc.
16183         * lib/argp-pv.c: New file, from glibc.
16184         * lib/argp-pvh.c: New file, from glibc.
16185         * lib/argp-xinl.c: New file, from glibc.
16186
16187 2003-06-10  Simon Josefsson  <jas@extundo.com>
16188
16189         * modules/strchrnul: New file.
16190
16191 2003-06-10  Simon Josefsson  <jas@extundo.com>
16192
16193         * modules/argp: New file.
16194
16195 2003-06-10  Simon Josefsson  <jas@extundo.com>
16196
16197         * m4/strchrnul.m4: New file.
16198
16199 2003-06-10  Simon Josefsson  <jas@extundo.com>
16200
16201         * lib/strchrnul.h: New file.
16202         * lib/strchrnul.c: New file.
16203
16204 2003-06-10  Bruno Haible  <bruno@clisp.org>
16205
16206         * MODULES.html.sh (func_all_modules): Add strchrnul and argp.
16207
16208 2003-06-07  Karl Berry  <karl@gnu.org>
16209
16210         * config/config.{guess,sub}: update from prep.
16211
16212 2003-06-07  Jim Meyering  <jim@meyering.net>
16213
16214         * modules/strtod: Use $(...) notation, not @...@ for
16215         AC_REPLACE'd variables.
16216         * modules/localcharset: Likewise.
16217
16218 2003-06-07  Jim Meyering  <jim@meyering.net>
16219
16220         * lib/readtokens.h: Put `Free Software Foundation, Inc.'
16221         in place of my name in the copyright comment.
16222         Remove definition and uses of __P.
16223
16224         From coreutils.
16225         * lib/stat.c: Don't declare xmalloc explicitly.
16226         Instead, include "xalloc.h".
16227         * lib/readtokens.c (readtokens): Remove anachronistic casts of xmalloc,
16228         xrealloc, and xcalloc return values.
16229         * lib/xgetcwd.c (xgetcwd): Include "xgetcwd.h".
16230         Improve comment.
16231         * lib/xgetcwd.h: Remove definition/uses of PARAMS.
16232
16233 2003-06-07  Bruno Haible  <bruno@clisp.org>
16234
16235         * modules/poll (Makefile.am): Use explicit creation rule for poll.h, to
16236         avoid AC_CONFIG_LINKS.
16237         * modules/fnmatch (Makefile.am): Use explicit creation rule for
16238         fnmatch.h, to avoid AC_CONFIG_LINKS.
16239         * modules/alloca (Makefile.am): Make creation of alloca.h Ctrl-C safe.
16240
16241 2003-06-07  Bruno Haible  <bruno@clisp.org>
16242
16243         * m4/fnmatch.m4 (_AC_LIBOBJ_FNMATCH, gl_FUNC_FNMATCH_POSIX,
16244         gl_FUNC_FNMATCH_GNU): Set FNMATCH_H instead of invoking
16245         AC_CONFIG_LINKS. Needed to allow for a different name of the lib
16246         directory.
16247         * m4/poll.m4 (gl_FUNC_POLL): Set POLL_H instead of invoking
16248         AC_CONFIG_LINKS. Needed to allow for a different name of the lib
16249         directory.
16250
16251 2003-06-06  Jim Meyering  <jim@meyering.net>
16252
16253         Merge from coreutils.
16254         * lib/same.c: (same_name): Declare *_basename locals to be `const'.
16255         Consolidate declarations and initializations of *_base* locals.
16256
16257         Merge from coreutils.
16258         This avoids a core dump on systems without GNU putenv,
16259         when running `env -u SOME_ALREADY_UNSET_VARIABLE'.
16260         * lib/putenv.c (__set_errno, LOCK, UNLOCK): Define.
16261         (unsetenv): New static function, from GNU libc.
16262         (rpl_putenv): Use it.
16263
16264         * lib/modechange.c: Remove trailing blanks.
16265
16266         Merge from coreutils.
16267         * lib/fsusage.c: Remove declaration of statfs.
16268         It conflicted with one from OSF/1 5.1 in <sys/mount.h>.
16269
16270         * lib/posixtm.c: Include <stdbool.h> unconditionally.
16271
16272 2003-06-06  Jim Meyering  <jim@meyering.net>
16273
16274         * lib/stdbool_.h: Renamed from stdbool.h.in.
16275
16276 2003-06-06  Jim Meyering  <jim@meyering.net>
16277             Bruno Haible  <bruno@clisp.org>
16278
16279         * modules/stdbool: Reflect renaming: stdbool.h.in -> stdbool_.h.
16280         Adjust Makefile.am snippet not to redirect directly to target.
16281         Use $(STDBOOL_H) notation, not @STDBOOL_H@ for AC_REPLACE'd variables.
16282
16283 2003-06-05  Paul Eggert  <eggert@twinsun.com>
16284
16285         * lib/mktime.c (__mktime_internal): When resolving a tm_isdst
16286         mismatch, look in future quarters as well as past.  This fixes a
16287         bug when processing fall-backwards gaps immediately after a long
16288         period of daylight-saving time.
16289
16290         * lib/mktime.c: Assume freestanding C89 or better.
16291         (HAVE_LIMITS_H): Remove.  Assume it's 1.
16292         (__P): Remove; not used.
16293         (CHAR_BIT, INT_MIN, INT_MAX): Remove; <limits.h> defines them.
16294         (mktime, not_equal_tm, print_tm, check_result,
16295         main): Use prototypes.  Use const * where appropriate.
16296         (main): Fix typo in testing code that uncovered by above changes.
16297         (Local Variables): Remove -DHAVE_LIMITS_H from compile-command.
16298
16299 2003-06-04  Paul Eggert  <eggert@twinsun.com>
16300
16301         * m4/human.m4 (gl_HUMAN): Require AM_STDBOOL_H.  Check for
16302         locale.h, localeconv.  This merges changes from coreutils.
16303
16304         * m4/mktime.m4 (AC_FUNC_MKTIME): New macro, taken from Autoconf CVS.
16305         It can be removed after the next Autoconf is released.
16306         * m4/exclude.m4 (gl_EXCLUDE): Don't check for sys/types.h; no loner
16307         needed.
16308
16309 2003-06-04  Paul Eggert  <eggert@twinsun.com>
16310
16311         * lib/mktime.c: Fix Debian bug 177940
16312         <http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=177940>.
16313         (localtime_offset): Now long int, not time_t, because we want it
16314         to be guaranteed to be signed.  All uses changed.
16315         (__mktime_internal): If overflow would occur when adding offset,
16316         don't add it.
16317
16318         Merge 'human' changes from coreutils.  Rewrite to support
16319         locale-specific notations like thousands separators.
16320         * lib/human.c: Simplify authorship notice.
16321         Include human.h immediately after config.h.
16322         <sys/types.h>, <stdio.h>: Do not include; no longer needed.
16323         <limits.h>: Do not include, since human.h does.
16324         (SIZE_MAX, UINTMAX_MAX): New macros.
16325         <strings.h>: Include if HAVE_STRINGS_H, not if !HAVE_STRING_H.
16326         <locale.h>: Include if HAVE_LOCALE_H and HAVE_LOCALECONV.
16327         (HUMAN_READABLE_SUFFIX_LENGTH_MAX): New macro.
16328         (power_letter): Renamed from suffixes.
16329         (generate_suffix_backwards): Remove.
16330         (adjust_value): Now takes int style (because of human.h changes)
16331         and long double value (for greater precision on some platforms).
16332         (group_number): New function.
16333         (human_readable): Use it.  Use integer options, not enum.
16334         Put the options before the sizes in the arg list.
16335         Support all the new options.
16336         The old human_readable function has been removed;
16337         use inttostr.h instead.
16338         (human_readable, default_block_size, humblock):
16339         Use uintmax_t, not int, for block sizes.
16340         (human_readable_inexact, block_size_types): Remove.
16341         (block_size_opts): New constant.
16342         (human_options): Renamed from human_block_size, with new signature
16343         that allows block sizes up to UINTMAX_MAX.  All callers changed.
16344         * lib/human.h: Add copyright and authorship notice.
16345         Include <limits.h> and <stdbool.h> unconditionally.
16346         (PARAMS): Remove.  All uses removed.
16347         (LONGEST_HUMAN_READABLE): Add support for thousands separator.
16348         (enum human_inexact_style): Remove tag; now a nameless enum.
16349         (human_floor, human_ceiling, human_round_to_even): Now have
16350         values 2, 0, 1 rather than -1, 1, 0.
16351         (human_group_digits, human_suppress_point_zero, human_autoscale,
16352         human_base_1024, human_SI, human_B): New constants.
16353         (human_readable_inexact, human_block_size): Remove.
16354         (human_readable): Size args are now uintmax_t, not int.
16355         (human_options): New decl.
16356
16357         * lib/exclude.c: (new_exclude, add_exclude): Remove casts that are
16358         unnecessary now that we assume C89 or better.  This change
16359         imported from coreutils.
16360
16361         * lib/mktime.c (__mktime_internal): Do not reject negative timestamps
16362         arbitrarily.  This is the same patch as 2003-05-28, but it got lost
16363         in the 2003-05-30 sync from glibc.
16364
16365         .h files should stand alone, but we shouldn't include <sys/types.h>
16366         if we can get away with just <stddef.h>.
16367
16368         * lib/__fpending.h, addext.c, backupfile.c, exclude.c, getline.c,
16369         malloc.c, putenv.c, realloc.c, strcasecmp.c: Include <stddef.h>
16370         rather than <sys/types.h>, as we merely need size_t.
16371         * lib/dirname.h, memcoll.h, xalloc.h, xmemcoll.h: Include <stddef.h>,
16372         to get size_t.
16373         * lib/hash.h, linebuffer.h, readtokens.h, stdio-safer.h, version-etc.h:
16374         Include <stdio.h>, to get FILE.
16375         * lib/memcasecmp.c: Don't include <sys/types.h>, as we can assume
16376         memcasecmp.h has included <stddef.h> and all we need is size_t.
16377         * lib/memcoll.c: Include "memcoll.h", which gets us size_t and checks
16378         our interface, instead of including <sys/types.h>
16379
16380 2003-06-04  Paul Eggert  <eggert@twinsun.com>
16381
16382         * config/srclist.txt ($LIBCSRC/time/mktime.c lib gpl): Comment out for
16383         now, as glibc mktime is buggy on non-glibc systems.
16384
16385 2003-06-03  Karl Berry  <karl@gnu.org>
16386
16387         * config/config.sub: update from prep.
16388
16389 2003-06-02  Paul Eggert  <eggert@twinsun.com>
16390
16391         [from coreutils]
16392         Fix some minor time-related bugs with POSIX time arguments.
16393         Some valid time stamps were being rejected (notably -1, and
16394         time stamps before 1900 on 64-bit hosts).  And some invalid
16395         time stamps were being accepted, e.g. September 31.
16396
16397         * lib/posixtm.h (posixtime): Return bool instead of time_t, so
16398         that we can return (time_t) -1 successfully.
16399         * lib/posixtm.c: Likewise.
16400         [HAVE_STDBOOL_H]: Include <stdbool.h>.
16401         (bool, false, true) [!HAVE_STDBOOL_H]: New type.
16402         (t): Remove static var.
16403         (year, posix_time_parse): Now takes struct tm * arg to modify, instead
16404         of static var.  All uses changed.
16405         (year): Do not reject years before 1900; they can occur with
16406         64-bit time_t.
16407         (posix_time_parse): Do not check for out-of-range components;
16408         that is now the caller's responsibility, since our checks were
16409         only approximations.
16410         (posixtime): Use mktime to check for out-of-range components,
16411         since it knows them exactly.
16412         If mktime returns (time_t) -1, check whether an error actually occurred
16413         by invoking localtime on -1.
16414         (main) [TEST_POSIXTIME]: Check for input data errors, and report
16415         posixtime failures better.
16416         Improve the test data (in comments only).
16417
16418 2003-06-02  Karl Berry  <karl@gnu.org>
16419
16420         * config/mkinstalldirs (version): new variable.
16421         (--version): new option.
16422         (usage): improve message.
16423
16424 2003-05-30  Karl Berry  <karl@gnu.org>
16425
16426         * lib/mktime.c: update from libc.
16427
16428 2003-05-30  Bruno Haible  <bruno@clisp.org>
16429
16430         * modules/gettext: Add files m4/nls.m4 and m4/po.m4.
16431         * config/config.rpath: Upgrade to gettext-0.12.1.
16432
16433 2003-05-30  Bruno Haible  <bruno@clisp.org>
16434
16435         * m4/gettext.m4: Upgrade to gettext-0.12.1.
16436         * m4/nls.m4: New file, from gettext-0.12.1.
16437         * m4/po.m4: New file, from gettext-0.12.1.
16438         * m4/progtest.m4: Upgrade to gettext-0.12.1.
16439
16440 2003-05-30  Bruno Haible  <bruno@clisp.org>
16441
16442         * lib/config.charset: Upgrade to gettext-0.12.1 and libiconv-1.9.1.
16443         * lib/localcharset.h: Likewise.
16444         * lib/localcharset.c: Likewise.
16445
16446 2003-05-29  Karl Berry  <karl@gnu.org>
16447
16448         * config/config.rpath: update from gettext.
16449
16450 2003-05-28  Paul Eggert  <eggert@twinsun.com>
16451
16452         Assume the headers required for C89 freestanding compilers.
16453         * m4/backupfile.m4 (gl_BACKUPFILE): Don't check for limits.h.
16454         * m4/fsusage.m4 (gl_PREREQ_FSUSAGE_EXTRA): Likewise.
16455         * m4/human.m4 (gl_HUMAN): Likewise.
16456         * m4/pathmax.m4 (gl_PATHMAX): Likewise.
16457         * m4/rpmatch.m4 (gl_FUNC_RPMATCH): Likewise.
16458         * m4/userspec.m4 (gl_USERSPEC): Likewise.
16459         * m4/xreadlink.m4 (gl_XREADLINK): Likewise.
16460         * m4/xstrtol.m4 (gl_PREREQ_XSTRTOL): Likewise.
16461         * m4/quote.m4 (gl_QUOTE): Don't check for stddef.h.
16462
16463 2003-05-28  Paul Eggert  <eggert@twinsun.com>
16464
16465         Assume the headers required for C89 freestanding compilers.
16466         * lib/addext.c, lib/backupfile.c, lib/fsusage.c, lib/human.c,
16467         lib/pathmax.h, lib/rpmatch.c, lib/userspec.c, lib/xreadlink.c,
16468         lib/xstrtol.c: Include <limits.h> without checking for HAVE_LIMITS_H.
16469         * lib/backupfile.c, lib/fsusage.c, lib/hash.c, lib/human.c,
16470         lib/safe-read.c, lib/userspec.c, lib/xstrtol.c (CHAR_BIT): Don't
16471         define, since <limits.h> is guaranteed to do that.
16472         * lib/fatal.c: Include <stdarg.h> without checking for __STDC__.
16473         * lib/exclude.c: Include <stdbool.h> unconditionally.
16474         * lib/tempname.c: Include <stddef.h> unconditionally.
16475         * lib/hash.c: Include <limits.h>, since we no longer define CHAR_BIT.
16476         * lib/modechange.c, rpmatch.c (NULL): Don't define, since
16477         <stddef.h> does that.
16478         * lib/quote.c: Dont include <stddef.h> or <sys/types.h>; not needed.
16479         * lib/safe-read.c (INT_MAX): Don't define, since <limits.h> does that.
16480         * lib/safe-read.c (TYPE_MINIMUM, TYPE_MAXIMUM): Remove; no longer
16481         needed.
16482         * lib/xstrtol.c: Likewise.
16483         * lib/safe-read.c: Remove TYPE_SIGNED; no longer needed.
16484         * lib/savedir.c: Include <stddef.h> instead of defining NULL.
16485
16486         * lib/addext.c (addext): Use assignment rather than cast, to avoid
16487         warnings on some platforms.
16488
16489         * lib/mktime.c (__mktime_internal): Do not reject negative timestamps
16490         arbitrarily.
16491
16492 2003-05-26  Jim Meyering  <jim@meyering.net>
16493
16494         Merge in a change from coreutils:
16495         * m4/dirfd.m4 (UTILS_FUNC_DIRFD): Test the cache variable, not one
16496         that is guaranteed to be `no'.  Use `no_such_member' to indicate
16497         that condition, rather than `-1' which is slightly misleading.
16498         Change the name of the cache variable to have the gl_ prefix.
16499         Prompted by a patch from Richard Dawe for DJGPP.
16500
16501 2003-05-24  Karl Berry  <karl@gnu.org>
16502
16503         * config/config.guess: update from prep.
16504
16505 2003-05-22  Karl Berry  <karl@gnu.org>
16506
16507         * gnulib-tool (func_usage): =LIBRARY not =libRARY in help msg.
16508
16509 2003-05-20  Karl Berry  <karl@gnu.org>
16510
16511         * config/config.guess: update from prep.
16512
16513 2003-05-18  Karl Berry  <karl@gnu.org>
16514
16515         * config/srclistvars.sh (TEXMF): use TEXMFROOT instead, since TEXMF
16516         might actually be set by the user.
16517
16518         * config/depcomp, install-sh, mdate-sh: update from automake.
16519
16520 2003-05-17  Bruno Haible  <bruno@clisp.org>
16521
16522         * m4/dirfd.m4 (UTILS_FUNC_DIRFD): Fix a quoting bug leading to an
16523         invalid expansion for AC_EGREP_CPP.
16524         * m4/strtoimax.m4 (gl_FUNC_STRTOIMAX): Likewise.
16525         * m4/strtoumax.m4 (gl_FUNC_STRTOUMAX): Likewise.
16526         Suggested by Akim Demaille <akim@epita.fr> in
16527         http://mail.gnu.org/archive/html/bug-autoconf/2003-05/threads.html
16528
16529 2003-05-12  Jim Meyering  <jim@meyering.net>
16530
16531         * lib/strftime.c (my_strftime): Let the `-' (no-pad) flag affect
16532         the space-padded-by-default conversion specifiers, %e, %k, %l.
16533
16534 2003-05-12  Bruno Haible  <bruno@clisp.org>
16535
16536         * lib/linebreak.c (iconv_string_length): Don't return -1 just because
16537         the string is longer than 4 KB.
16538
16539 2003-05-11  Karl Berry  <karl@gnu.org>
16540
16541         * config/config.{guess,sub}: update from prep.
16542
16543 2003-05-09  Bruno Haible  <bruno@clisp.org>
16544
16545         * modules/error: Add m4/strerror_r.m4 to file list.
16546
16547 2003-05-03  Bruno Haible  <bruno@clisp.org>
16548
16549         Upgrade to Unicode-4.0.
16550         * lib/linebreak.c (nonspacing_table_data): Change width of U+00AD,
16551         U+0350..U+0357, U+035D..U+035F, U+0600..U+0603, U+0610..U+0615,
16552         U+0656..U+0658, U+0A01, U+0AE2..U+0AE3, U+0CBC, U+17B4..U+17B5,
16553         U+17DD, U+1920..U+1922, U+1927..U+192B, U+1932, U+1939..U+193B
16554         from 1 to 0. Change width of U+0CBF, U+0CC6, U+180E from 0 to 1.
16555         (uc_width): Change width of U+4DC0..U+4DFF from 2 to 1. Change width
16556         of U+2A6D7..U+2F7FF, U+2FA1E..U+2FFFD, U+30000..U+3FFFD from 1 to 2.
16557         Change width of U+E0100..U+E01EF from 1 to 0.
16558
16559 2003-04-25  Jim Meyering  <jim@meyering.net>
16560
16561         * lib/copy-file.c (copy_file_preserving): Declare buf_size to be
16562         of type size_t, not int.
16563
16564 2003-04-25  Bruno Haible  <bruno@clisp.org>
16565
16566         * lib/copy-file.c: Include <stddef.h>, for size_t.
16567
16568 2003-04-21  Paul Eggert  <eggert@twinsun.com>
16569
16570         * m4/error.m4 (gl_ERROR): Do not put under dynamic conditions some
16571         code which expansion is under static control.  Patch imported from
16572         Akim Demaille's patch to Bison; see
16573         <http://mail.gnu.org/archive/html/bison-patches/2003-03/msg00057.html>.
16574
16575 2003-04-14  Bruno Haible  <bruno@clisp.org>
16576
16577         * m4/error.m4 (jm_PREREQ_ERROR): Use AC_FUNC_VPRINTF.
16578
16579 2003-04-11  Jim Meyering  <jim@meyering.net>
16580
16581         Merge changes from Coreutils.
16582
16583         2003-03-22  Jim Meyering  <jim@meyering.net>
16584
16585         * lib/strftime.c (widen): Cast alloca return value to proper type.
16586
16587         2003-01-19  Ulrich Drepper  <drepper@redhat.com>
16588
16589         From GNU libc.
16590         * lib/strftime.c (my_strftime): Handle very large width
16591         specifications for numeric values correctly.  Improve checks for
16592         overflow.
16593
16594         2003-01-19  Jim Meyering  <jim@meyering.net>
16595
16596         * lib/strftime.c (widen) [COMPILE_WIDE]: Merge nearly-identical
16597         definitions.
16598         (nl_get_alt_digit) [! defined my_strftime]: Define.
16599         (my_strftime) [_NL_CURRENT]: Merge nearly-identical uses of
16600         _nl_get_alt_digit and _nl_get_walt_digit.
16601
16602         * lib/strftime.c (my_strftime): Merge in locale-related changes from
16603         libc. These changes have no effect outside of _LIBC.
16604
16605 2003-04-10  Bruno Haible  <bruno@clisp.org>
16606
16607         * modules/findprog: New file.
16608         * MODULES.html.sh (func_all_modules): Add it.
16609
16610 2003-04-10  Bruno Haible  <bruno@clisp.org>
16611
16612         * m4/findprog.m4: New file.
16613         * m4/eaccess.m4: New file.
16614
16615 2003-04-10  Bruno Haible  <bruno@clisp.org>
16616
16617         * lib/findprog.h: New file, from GNU gettext.
16618         * lib/findprog.c: New file, from GNU gettext.
16619
16620 2003-04-05  Jim Meyering  <jim@meyering.net>
16621
16622         Merge changes from Coreutils.
16623
16624         * lib/exclude.h (PARAMS): Remove definition and uses.
16625         * lib/exclude.c: Remove uses of `PARAMS'.
16626
16627         * lib/dirname.c [TEST_DIRNAME]: Update build instructions for test.
16628         Add test-cases for DOS filenames. Declare program_name.
16629         (main): Set up program_name.  Patch by Rich Dawe.
16630
16631         * lib/mountlist.c (read_filesystem_list) [MOUNTED_VMOUNT]: Detect any
16632         error from mntctl.
16633         Use mntctl's return value to drive the entry-processing loop, since
16634         we can't rely on the value of the vmt_length member in the last
16635         entry.  On some systems doing so could result in exhausting
16636         virtual memory.  Based in part on a patch from Mike Jetzer.
16637
16638 2003-04-04  Bruno Haible  <bruno@clisp.org>
16639
16640         * modules/linebreak: New file.
16641         * MODULES.html.sh (func_all_modules): Add it.
16642
16643 2003-04-04  Bruno Haible  <bruno@clisp.org>
16644
16645         * m4/linebreak.m4: New file.
16646
16647 2003-04-04  Bruno Haible  <bruno@clisp.org>
16648
16649         * lib/linebreak.h: New file, from GNU gettext.
16650         * lib/linebreak.c: New file, from GNU gettext with slight
16651         modifications.
16652         * lib/lbrkprop.h: New file, from GNU gettext.
16653
16654 2003-04-03  Bruno Haible  <bruno@clisp.org>
16655
16656         * modules/utf8-ucs4: New file.
16657         * modules/utf16-ucs4: New file.
16658         * modules/ucs4-utf8: New file.
16659         * modules/ucs4-utf16: New file.
16660         * MODULES.html.sh (func_all_modules): Add them.
16661
16662 2003-04-03  Bruno Haible  <bruno@clisp.org>
16663
16664         * m4/utf-ucs4.m4: New file.
16665         * m4/ucs4-utf.m4: New file.
16666
16667 2003-04-03  Bruno Haible  <bruno@clisp.org>
16668
16669         * lib/utf8-ucs4.h: New file, from GNU gettext.
16670         * lib/utf16-ucs4.h: New file, from GNU gettext.
16671         * lib/ucs4-utf8.h: New file, from GNU gettext.
16672         * lib/ucs4-utf16.h: New file, from GNU gettext.
16673
16674 2003-04-02  Bruno Haible  <bruno@clisp.org>
16675
16676         * modules/binary-io: New file.
16677         * MODULES.html.sh (func_all_modules): Add it.
16678
16679 2003-04-02  Bruno Haible  <bruno@clisp.org>
16680
16681         * lib/binary-io.h: New file, from GNU gettext.
16682
16683 2003-04-01  Bruno Haible  <bruno@clisp.org>
16684
16685         * modules/pathname: New file.
16686         * MODULES.html.sh (func_all_modules): Add it.
16687
16688 2003-04-01  Bruno Haible  <bruno@clisp.org>
16689
16690         * lib/pathname.h: New file, from GNU gettext.
16691         * lib/concatpath.c: New file, from GNU gettext.
16692
16693 2003-03-30  Bruno Haible  <bruno@clisp.org>
16694
16695         * m4/copy-file.m4 (gl_COPY_FILE): Add check for chown().
16696
16697 2003-03-30  Bruno Haible  <bruno@clisp.org>
16698
16699         * lib/copy-file.c (copy_file_preserving): Don't set owner if the
16700         function chown() doesn't exist.
16701
16702 2003-03-28  Bruno Haible  <bruno@clisp.org>
16703
16704         * modules/copy-file: New file.
16705         * MODULES.html.sh (func_all_modules): Add it.
16706
16707 2003-03-28  Bruno Haible  <bruno@clisp.org>
16708
16709         * m4/copy-file.m4: New file.
16710
16711 2003-03-28  Bruno Haible  <bruno@clisp.org>
16712
16713         * lib/copy-file.h: New file, from GNU gettext.
16714         * lib/copy-file.c: New file, from GNU gettext.
16715
16716 2003-03-18  Jim Meyering  <jim@meyering.net>
16717
16718         * lib/quote.c (quote_n): Fix typo in comment.
16719
16720 2003-03-18  Bruno Haible  <bruno@clisp.org>
16721
16722         * m4/onceonly.m4: Use m4_defn instead of defn, for better error
16723         checking.
16724         * m4/onceonly_2_57.m4: Likewise.
16725
16726 2003-03-17  Bruno Haible  <bruno@clisp.org>
16727
16728         * m4/onceonly.m4: Require autoconf 2.54 or newer.
16729         (m4_quote): Remove macro.
16730         * m4/onceonly_2_57.m4: Require autoconf 2.54 or newer.
16731
16732 2003-03-14  Jim Meyering  <jim@meyering.net>
16733
16734         Merge changes from Coreutils.
16735         * lib/obstack.h (obstack_object_size): Declare temporary, __o,
16736         to be const, in order to avoid warnings.
16737         (obstack_room): Likewise.
16738         (obstack_empty_p): Likewise.
16739
16740 2003-03-14  Bruno Haible  <bruno@clisp.org>
16741
16742         * m4/onceonly_2_57.m4 (AC_CHECK_HEADERS_ONCE, AC_CHECK_FUNCS_ONCE,
16743         AC_CHECK_DECLS_ONCE): Quote AC_FOREACH variable-expansions properly.
16744
16745 2003-03-13  Paul Eggert  <eggert@twinsun.com>
16746
16747         Merge changes from Bison.
16748         * lib/obstack.h: (__INT_TO_PTR) [__STDC__]: Cast result to
16749         (void *) to avoid diagnostic with native c89 on SGI IRIX 6.5
16750         when compiling Bison 1.875's `bitset bset = obstack_alloc
16751         (bobstack, bytes);'.  Problem reported by Nelson H. F. Beebe.
16752         * lib/hash.c: Include <stdbool.h> unconditionally.
16753
16754 2003-03-13  Paul Eggert  <eggert@twinsun.com>
16755
16756         * m4/onceonly.m4 (m4_quote): New macro.
16757         (AC_CHECK_HEADERS_ONCE, AC_CHECK_FUNCS_ONCE, AC_CHECK_DECLS_ONCE):
16758         Quote AC_FOREACH variable-expansions properly.
16759
16760 2003-03-13  Paul Eggert  <eggert@twinsun.com>
16761
16762         * doc/COPYING.DOC, fdl.texi: Sync with latest FSF version.
16763
16764 2003-03-09  Paul Eggert  <eggert@twinsun.com>
16765
16766         * lib/argmatch.c (EXIT_FAILURE): Define if the system doesn't.
16767         Reported by Bruce Becker; see:
16768         http://mail.gnu.org/archive/html/bug-bison/2003-03/msg00017.html
16769
16770 2003-03-03  Paul Eggert  <eggert@twinsun.com>
16771             Bruno Haible  <bruno@clisp.org>
16772
16773         * lib/mbswidth.h: Include <wchar.h>. Needed for UnixWare 7.1.1.
16774         Reported by John Hughes, see
16775         http://mail.gnu.org/archive/html/bug-bison/2003-02/msg00030.html
16776
16777 2003-02-20  Bruno Haible  <bruno@clisp.org>
16778
16779         * MODULES.html.sh (func_all_modules): Add poll.
16780
16781 2003-02-19  Paolo Bonzino  <bonzini@gnu.org>
16782
16783         * modules/poll: New file.
16784
16785 2003-02-19  Paolo Bonzino  <bonzini@gnu.org>
16786
16787         * lib/poll_.h: New file.
16788         * lib/poll.c: New file.
16789
16790 2003-02-19  Paolo Bonzini  <bonzini@gnu.org>
16791
16792         * m4/poll.m4: New file.
16793
16794 2003-02-18  Paolo Bonzino  <bonzini@gnu.org>
16795
16796         * modules/mathl: New file.
16797
16798 2003-02-18  Paolo Bonzino  <bonzini@gnu.org>
16799
16800         * lib/mathl.h: New file.
16801         * lib/acosl.c: New file.
16802         * lib/asinl.c: New file.
16803         * lib/atanl.c: New file.
16804         * lib/ceill.c: New file.
16805         * lib/cosl.c: New file.
16806         * lib/expl.c: New file.
16807         * lib/floorl.c: New file.
16808         * lib/frexpl.c: New file.
16809         * lib/ldexpl.c: New file.
16810         * lib/logl.c: New file.
16811         * lib/sincosl.c: New file.
16812         * lib/sinl.c: New file.
16813         * lib/sqrtl.c: New file.
16814         * lib/tanl.c: New file.
16815         * lib/trigl.c: New file.
16816         * lib/trigl.h: New file.
16817
16818 2003-02-18  Paolo Bonzini  <bonzini@gnu.org>
16819
16820         * m4/mathl.m4: New file.
16821
16822 2003-02-18  Bruno Haible  <bruno@clisp.org>
16823
16824         * MODULES.html.sh (func_all_modules): Add mathl.
16825
16826 2003-02-17  Bruno Haible  <bruno@clisp.org>
16827
16828         * modules/mkdtemp: New module.
16829         * MODULES.html.sh (func_all_modules): Add it.
16830
16831 2003-02-17  Bruno Haible  <bruno@clisp.org>
16832
16833         * m4/mkdtemp.m4: New file, from GNU gettext with modifications.
16834
16835 2003-02-17  Bruno Haible  <bruno@clisp.org>
16836
16837         * lib/mkdtemp.h: New file, from GNU gettext.
16838         * lib/mkdtemp.c: New file, from GNU gettext.
16839
16840 2003-02-02  Jim Meyering  <jim@meyering.net>
16841
16842         * m4/regex.m4 (jm_INCLUDED_REGEX): Detect broken re_search in
16843         e.g. glibc-2.2.93.
16844
16845 2003-01-31  Bruno Haible  <bruno@clisp.org>
16846
16847         * m4/rename.m4 (vb_FUNC_RENAME): Add a redirection from 'rename' to
16848         'rpl_rename'.
16849         * m4/strnlen.m4 (gl_FUNC_STRNLEN): Add a redirection from 'strnlen' to
16850         'rpl_strnlen'.
16851         * m4/strtod.m4 (gl_FUNC_STRTOD): Add a redirection from 'strtod' to
16852         'rpl_strtod'.
16853         * m4/utime.m4 (jm_FUNC_UTIME): Add a redirection from 'utime' to
16854         'rpl_utime'.
16855
16856 2003-01-31  Bruno Haible  <bruno@clisp.org>
16857
16858         * lib/rename.c: #undef rename before defining rpl_rename.
16859         * lib/strnlen.c: #undef strnlen, define rpl_strnlen instead of strnlen.
16860
16861 2003-01-30  Bruno Haible  <bruno@clisp.org>
16862
16863         * modules/vasnprintf, modules/vasprintf: New modules.
16864         * MODULES.html.sh (func_all_modules): Add them.
16865
16866 2003-01-30  Bruno Haible  <bruno@clisp.org>
16867
16868         * m4/signed.m4: New file, from GNU gettext.
16869         * m4/longdouble.m4: New file, from GNU gettext.
16870         * m4/wchar_t.m4: New file, from GNU gettext.
16871         * m4/wint_t.m4: New file, from GNU gettext.
16872         * m4/vasnprintf.m4: New file.
16873         * m4/vasprintf.m4: New file.
16874
16875 2003-01-30  Bruno Haible  <bruno@clisp.org>
16876
16877         * lib/printf-args.h: New file, from GNU gettext.
16878         * lib/printf-args.c: New file, from GNU gettext.
16879         * lib/printf-parse.h: New file, from GNU gettext.
16880         * lib/printf-parse.c: New file, from GNU gettext.
16881         * lib/vasnprintf.h: New file, from GNU gettext.
16882         * lib/vasnprintf.c: New file, from GNU gettext.
16883         * lib/asnprintf.c: New file, from GNU gettext.
16884         * lib/vasprintf.h: New file, from GNU gettext with modifications.
16885         * lib/vasprintf.c: New file, from GNU gettext.
16886         * lib/asprintf.c: New file, from GNU gettext.
16887
16888 2003-01-29  Bruno Haible  <bruno@clisp.org>
16889
16890         * modules/stpncpy: New module.
16891         * MODULES.html.sh (func_all_modules): Add it.
16892
16893 2003-01-29  Bruno Haible  <bruno@clisp.org>
16894
16895         * m4/stpncpy.m4: New file.
16896
16897 2003-01-29  Bruno Haible  <bruno@clisp.org>
16898
16899         * lib/stpncpy.h: New file, from GNU gettext with modifications.
16900         * lib/stpncpy.c: New file, from GNU gettext with modifications.
16901
16902 2003-01-28  Bruno Haible  <bruno@clisp.org>
16903
16904         * modules/c-ctype: New module.
16905         * MODULES.html.sh (func_all_modules): Add it.
16906
16907 2003-01-28  Bruno Haible  <bruno@clisp.org>
16908
16909         * lib/c-ctype.h: New file, from GNU gettext, with changes suggested by
16910         Paul Eggert.
16911         * lib/c-ctype.c: New file, from GNU gettext, with changes suggested by
16912         Paul Eggert.
16913
16914 2003-01-27  Bruno Haible  <bruno@clisp.org>
16915
16916         * modules/xsetenv: New module.
16917         * MODULES.html.sh (func_all_modules): Add it.
16918
16919 2003-01-27  Bruno Haible  <bruno@clisp.org>
16920
16921         * lib/xsetenv.h: New file, from GNU gettext.
16922         * lib/xsetenv.c: New file, from GNU gettext.
16923
16924 2003-01-23  Jim Meyering  <jim@meyering.net>
16925
16926         * m4/dirfd.m4 (UTILS_FUNC_DIRFD): Correct typo: s/-1/no/ that kept this
16927         from working on systems without dirfd (at least Irix and OSF1/Tru64).
16928
16929 2003-01-23  Bruno Haible  <bruno@clisp.org>
16930
16931         * modules/minmax: New module.
16932         * MODULES.html.sh (func_all_modules): Add it.
16933
16934 2003-01-23  Bruno Haible  <bruno@clisp.org>
16935
16936         * lib/minmax.h: New file, from GNU gettext, with comments from Paul
16937         Eggert.
16938
16939 2003-01-22  Bruno Haible  <bruno@clisp.org>
16940
16941         * modules/exit: New module.
16942         * MODULES.html.sh (func_all_modules): Add it.
16943
16944 2003-01-22  Bruno Haible  <bruno@clisp.org>
16945
16946         * lib/exit.h: New file, from GNU gettext.
16947
16948 2003-01-19  Bruno Haible  <bruno@clisp.org>
16949
16950         * gnulib-tool: Recognize option --extract-maintainer.
16951         (func_get_maintainer): New function.
16952         * modules/*: Add Maintainer entry.
16953
16954 2003-01-16  Jim Meyering  <jim@meyering.net>
16955
16956         * m4/regex.m4: The `regex' struct is both input and output.
16957         Initialize it before each use.  Patch by Tim Waugh.
16958
16959 2003-01-16  Bruno Haible  <bruno@clisp.org>
16960
16961         * MODULES.html.sh: Add a table of contents. Add the module name as
16962         leftmost column. Add hyperlinks.
16963
16964 2003-01-15  Bruno Haible  <bruno@clisp.org>
16965
16966         * m4/md5.m4 (gl_MD5): Require AC_C_INLINE.
16967
16968 2003-01-15  Bruno Haible  <bruno@clisp.org>
16969
16970         * m4/longlong.m4 (jm_AC_TYPE_LONG_LONG): Also test the LL suffix.
16971         * m4/ulonglong.m4 (jm_AC_TYPE_UNSIGNED_LONG_LONG): Also test the ULL
16972         suffix.
16973
16974 2003-01-15  Bruno Haible  <bruno@clisp.org>
16975
16976         * m4/alloca.m4 (gl_FUNC_ALLOCA): Invoke AC_EGREP_CPP prerequisites.
16977
16978 2003-01-15  Bruno Haible  <bruno@clisp.org>
16979
16980         * lib/stpcpy.h (stpcpy): Use ANSI C function declarations.
16981         * lib/strcase.h (strcasecmp, strncasecmp): Likewise.
16982
16983 2003-01-14  Jim Meyering  <jim@meyering.net>
16984
16985         * lib/same.c (same_name): Tweak a comment.
16986
16987 2003-01-14  Bruno Haible  <bruno@clisp.org>
16988
16989         * lib/same.c (same_name): Reorder tests so as to avoid calling stat()
16990         when a string comparison is sufficient.
16991
16992 2003-01-14  Bruno Haible  <bruno@clisp.org>
16993
16994         * lib/readtokens.c (readtoken): Cast character to 'unsigned char', not
16995         'unsigned int'.
16996
16997 2003-01-14  Bruno Haible  <bruno@clisp.org>
16998
16999         * lib/hash-pjw.c: Add comment about low quality of this function.
17000
17001 2003-01-13  Bruno Haible  <bruno@clisp.org>
17002
17003         * modules/stpcpy: Distribute lib/stpcpy.h.
17004         * modules/setenv: Depend on alloca. Distribute lib/setenv.h.
17005
17006 2003-01-13  Bruno Haible  <bruno@clisp.org>
17007
17008         * modules/*: Add a description.
17009         * modules/strpbrk: Fix Makefile.am snippet.
17010         * modules/strtoimax: Fix dependencies.
17011         * modules/strtoumax: Likewise.
17012
17013 2003-01-13  Bruno Haible  <bruno@clisp.org>
17014
17015         * gnulib-tool (func_create_testdir): Substitute lib_OBJECTS.
17016         * modules/alloca (Makefile.am): All object files depend on alloca.h.
17017         * modules/stdbool (Makefile.am): All object files depend on stdbool.h.
17018
17019 2003-01-13  Bruno Haible  <bruno@clisp.org>
17020
17021         * gnulib-tool (func_create_testdir): Store config/* files in the main
17022         directory.
17023         * config.rpath: Move to ...
17024         * config/config.rpath: ... here.
17025         * modules/gettext: Contains config/config.rpath, not config.rpath.
17026         * modules/iconv: Likewise.
17027
17028 2003-01-12  Paul Eggert  <eggert@twinsun.com>
17029
17030         Finish renaming getstr -> getdelim2 and readline -> readlinebuffer,
17031         to avoid collisions with libcurses and libreadline.
17032
17033         * m4/getstr.m4: Remove.
17034         * m4/getline.m4 (gl_PREREQ_GETLINE): Require AC_HEADER_STDC.
17035
17036 2003-01-12  Paul Eggert  <eggert@twinsun.com>
17037
17038         Finish renaming getstr -> getdelim2 and readline -> readlinebuffer,
17039         to avoid collisions with libcurses and libreadline.
17040
17041         * lib/Makefile.am (libfetish_a_SOURCES): Remove getstr.c, getstr.h.
17042         * lib/getstr.h, getstr.c: Remove.
17043         * lib/getline.c: Include "getline.h", to check interface.
17044         Move body of old getstr.c here: this defines MIN_CHUNK and
17045         declares getdelim2, which is renamed from getstr.
17046         (getline, getdelim): Adjust to renaming of getstr -> getdelim2.
17047
17048         * lib/linebuffer.c (readlinebuffer): Renamed from readline.
17049         All uses changed.
17050         * lib/linebuffer.h: Likewise.
17051         (readline): Remove backward-compatibility macro.
17052
17053 2003-01-12  Paul Eggert  <eggert@twinsun.com>
17054
17055         Finish renaming getstr -> getdelim2 and readline -> readlinebuffer,
17056         to avoid collisions with libcurses and libreadline.
17057         * getstr: Remove.
17058         * MODULES.html.sh: Remove getstr.
17059         * modules/getline: Depend on unlocked-io, not getstr.
17060
17061 2003-01-12  Jim Meyering  <jim@meyering.net>
17062
17063         * lib/makepath.c: Don't test HAVE_ERRNO_H.  It's not necessary.
17064
17065 2003-01-10  Bruno Haible  <bruno@clisp.org>
17066
17067         * modules/alloca: Change Makefile.am requirements. Simplify Include
17068         requirements. Add lib/alloca_.h to file list.
17069
17070 2003-01-10  Bruno Haible  <bruno@clisp.org>
17071
17072         * m4/alloca.m4 (gl_FUNC_ALLOCA): Also define ALLOCA_H.
17073
17074 2003-01-10  Bruno Haible  <bruno@clisp.org>
17075
17076         * lib/alloca_.h: New file.
17077         * lib/getdate.y: Unconditionally include alloca.h.
17078         * lib/makepath.c: Likewise.
17079         * lib/setenv.c: Likewise.
17080         * lib/userspec.c: Likewise.
17081
17082 2003-01-09  Karl Berry  <karl@gnu.org>
17083
17084         * MODULES.html.sh: include `dirname $0` in PATH, to find
17085         gnulib-tool.
17086
17087 2003-01-09  Bruno Haible  <bruno@clisp.org>
17088
17089         * modules/stdbool: Change configure.ac, Makefile.am requirements.
17090         Simplify Include requirements. Add lib/stdbool.h.in to file list.
17091
17092 2003-01-09  Bruno Haible  <bruno@clisp.org>
17093
17094         * m4/stdbool.m4 (AM_STDBOOL_H): New macro.
17095
17096 2003-01-09  Bruno Haible  <bruno@clisp.org>
17097
17098         * lib/stdbool.h.in: New file.
17099
17100 2003-01-09  Bruno Haible  <bruno@clisp.org>
17101
17102         * gnulib-tool (func_all_modules): Ignore files ending in ~.
17103         * MODULES.html.sh: Likewise.
17104
17105 2003-01-08  Jim Meyering  <jim@meyering.net>
17106
17107         * lib/full-write.c: Undefine and define-away `const' after inclusion
17108         of errno.h, not before.  Suggestion from Bruno Haible.
17109
17110 2003-01-08  Bruno Haible  <bruno@clisp.org>
17111
17112         * modules/full-read: Depend on full-write.
17113
17114 2003-01-08  Bruno Haible  <bruno@clisp.org>
17115
17116         * lib/safe-read.c: Include specification header first, to ensure its
17117         selfcontainedness.
17118         * lib/full-write.c: Likewise.
17119
17120 2003-01-07  Jim Meyering  <jim@meyering.net>
17121
17122         * lib/full-write.c: Rework so that it may serve to define full_read,
17123         too.
17124         * lib/full-read.c: Simply #define FULL_READ and include full-write.c.
17125
17126 2003-01-07  Bruno Haible  <bruno@clisp.org>
17127
17128         * lib/strtoimax.c: Include <stdint.h> as an alternative to
17129         <inttypes.h>.
17130         * lib/xstrtol.h: Likewise.
17131         * lib/xstrtoimax.c: Likewise.
17132         * lib/xstrtoumax.c: Likewise.
17133         * lib/human.h: Likewise.
17134
17135         * lib/tempname.c: Include <inttypes.h> too. Avoids a compilation error
17136         on systems that have <inttypes.h> but not <stdint.h>.
17137
17138 2003-01-07  Bruno Haible  <bruno@clisp.org>
17139
17140         * MODULES.html.sh: Add copyright notice.
17141         (missed_files): Omit CVS directory entries.
17142         (func_module): Make it work with sed-3.02.
17143         * MODULES.txt: Remove file.
17144
17145 2003-01-06  Jim Meyering  <jim@meyering.net>
17146
17147         * lib/version-etc.c: Update year in translatable copyright string.
17148
17149 2003-01-03  Karl Berry  <karl@gnu.org>
17150
17151         * config/config.{guess,sub}: update from prep.
17152
17153 2003-01-02  Karl Berry  <karl@gnu.org>
17154
17155         * doc/COPYING.DOC: belatedly updated to 1.2.
17156
17157 2003-01-01  Karl Berry  <karl@gnu.org>
17158
17159         * gnulib-tool (func_verify_module): report module name $module in
17160         error message, not $1.
17161         * gnulib-tool (create-testdir): don't complain if destdir couldn't
17162         be created, only if it doesn't exist.
17163         * gnulib-tool (last_checkin_date): don't expand the $Date here.
17164
17165 2002-12-31  Paul Eggert  <eggert@twinsun.com>
17166
17167         * m4/memcoll.m4 (gl_MEMCOLL): Require AC_FUNC_MEMCMP.
17168
17169 2002-12-31  Paul Eggert  <eggert@twinsun.com>
17170
17171         * lib/memcoll.c (memcoll): Fall back on a simple algorithm using
17172         memcmp if strcoll doesn't work.
17173
17174 2002-12-31  Bruno Haible  <bruno@clisp.org>
17175
17176         * lib/utime.c (utime_null): No need to call ftruncate if the file was
17177         nonempty.
17178
17179 2002-12-31  Bruno Haible  <bruno@clisp.org>
17180
17181         * lib/memcoll.c (STRCOLL): New macro.
17182         (memcoll): Use it.
17183
17184 2002-12-31  Bruno Haible  <bruno@clisp.org>
17185
17186         * lib/localcharset.h: New file.
17187         * lib/localcharset.c: Include it.
17188         * lib/unicodeio.c: Likewise.
17189
17190 2002-12-31  Bruno Haible  <bruno@clisp.org>
17191
17192         * lib/getstr.h (getstr): Define, to avoid clash with libcurses.
17193         * lib/linebuffer.h (readline): Define, to avoid clash with libreadline.
17194
17195 2002-12-31  Bruno Haible  <bruno@clisp.org>
17196
17197         * lib/getline.h: Include <stddef.h>, for size_t.
17198
17199         * lib/unicodeio.h: Include <stddef.h>, for size_t.
17200         * lib/unicodeio.c: Don't include <stddef.h>.
17201
17202 2002-12-31  Bruno Haible  <bruno@clisp.org>
17203
17204         * lib/getdate.y (get_date): Test HAVE_STRUCT_TM_TM_ZONE, not
17205         HAVE_TM_ZONE.
17206
17207 2002-12-24  Karl Berry  <karl@gnu.org>
17208
17209         * config/config.guess: update from prep.
17210
17211 2002-12-24  Bruno Haible  <bruno@clisp.org>
17212
17213         General infrasructure.
17214         * m4/README: Rewritten.
17215         * m4/onceonly.m4: New file.
17216         * m4/onceonly_2_57.m4: New file.
17217
17218         Module atexit.
17219         * m4/atexit.m4: New file.
17220
17221         Module strtod.
17222         * m4/strtod.m4: New file.
17223
17224         Module strtol.
17225         * m4/strtol.m4: New file.
17226
17227         Module strtoul.
17228         * m4/strtoul.m4: New file.
17229
17230         Module memchr.
17231         * m4/memchr.m4: New file.
17232
17233         Module memcmp.
17234         * m4/memcmp.m4 (gl_PREREQ_MEMCMP): New macro.
17235         (jm_FUNC_MEMCMP): Invoke it.
17236
17237         Module memcpy.
17238         * m4/memcpy.m4: New file.
17239
17240         Module memmove.
17241         * m4/memmove.m4: New file.
17242
17243         Module memset.
17244         * m4/memset.m4: New file.
17245
17246         Module strcspn.
17247         * m4/strcspn.m4: New file.
17248
17249         Module strpbrk.
17250         * m4/strpbrk.m4: New file.
17251
17252         Module strstr.
17253         * m4/strstr.m4: New file.
17254
17255         Module strerror.
17256         * m4/strerror.m4: New file.
17257
17258         Module mktime.
17259         * m4/mktime.m4: Renamed from jm-mktime.m4.
17260         (gl_PREREQ_MKTIME): New macro.
17261         (gl_FUNC_MKTIME): Renamed from jm_FUNC_MKTIME. Invoke gl_PREREQ_MKTIME.
17262
17263         Module malloc.
17264         * m4/malloc.m4 (gl_PREREQ_MALLOC): New macro.
17265         (jm_FUNC_MALLOC): Use AC_FUNC_MALLOC. Invoke gl_PREREQ_MALLOC.
17266         Don't define HAVE_DONE_WORKING_MALLOC_CHECK, since nothing uses it.
17267
17268         Module realloc.
17269         * m4/realloc.m4 (gl_PREREQ_REALLOC): New macro.
17270         (jm_FUNC_REALLOC): Use AC_FUNC_REALLOC. Invoke gl_PREREQ_REALLOC.
17271         Don't define HAVE_DONE_WORKING_REALLOC_CHECK, since nothing uses it.
17272
17273         Module strftime.
17274         * m4/tm_gmtoff.m4: New file, extracted from strftime.m4.
17275         * m4/strftime.m4 (_jm_STRFTIME_PREREQS): Use AC_FUNC_STRFTIME.
17276         Don't test for bcopy (we are not emacs). Invoke AC_TYPE_MBSTATE_T and
17277         gl_TM_GMTOFF.
17278         (_jm_STRFTIME_PREREQS, jm_FUNC_GNU_STRFTIME): Use onceonly macros.
17279
17280         Module xalloc.
17281         * m4/xalloc.m4: New file.
17282
17283         Module alloca.
17284         * m4/alloca.m4: New file.
17285
17286         Module putenv.
17287         * m4/putenv.m4 (gl_PREREQ_PUTENV): New macro.
17288         (jm_FUNC_PUTENV): Invoke it.
17289
17290         Module setenv.
17291         * m4/setenv.m4 (gt_FUNC_SETENV): New macro.
17292         (gt_CHECK_VAR_DECL): Fix quoting error that led to infinite loop in m4
17293         when invoked twice.
17294         (gt_PREREQ_SETENV, gt_PREREQ_UNSETENV): New macros, replacing old
17295         gt_FUNC_SETENV.
17296
17297         Module memrchr.
17298         * m4/memrchr.m4: New file.
17299
17300         Module stpcpy.
17301         * m4/stpcpy.m4: New file.
17302
17303         Module strcase.
17304         * m4/strcase.m4: New file.
17305
17306         Module strdup.
17307         * m4/strdup.m4: New file.
17308
17309         Module strnlen.
17310         * m4/strnlen.m4: New file.
17311
17312         Module strndup.
17313         * m4/strndup.m4: New file.
17314
17315         Module xstrtod.
17316         * m4/xstrtod.m4: New file.
17317
17318         Module xstrtol.
17319         * m4/xstrtol.m4: New file.
17320
17321         Module getdate.
17322         * m4/getdate.m4: New file.
17323
17324         Module unlocked-io.
17325         * m4/unlocked-io.m4: Renamed from jm-glibc-io.m4.
17326         (jm_FUNC_GLIBC_UNLOCKED_IO): Invoke AC_GNU_SOURCE. Use onceonly macros.
17327         * m4/jm-glibc-io.m4n: Remove file.
17328
17329         Module long-options.
17330         * m4/long-options.m4: New file.
17331
17332         Module md5.
17333         * m4/md5.m4: New file.
17334
17335         Module sha.
17336         * m4/sha.m4: New file.
17337
17338         Module getstr.
17339         * m4/getstr.m4: New file.
17340
17341         Module getline.
17342         * m4/getline.m4 (gl_PREREQ_GETLINE): New macro.
17343         (AM_FUNC_GETLINE): Invoke AC_GNU_SOURCE. Use <stdlib.h>, not
17344         <sys/types.h>, for size_t. Use the function name gnu_getline, not
17345         simply getline. Infoke gl_PREREQ_GETLINE.
17346
17347         Module obstack.
17348         * m4/obstack.m4: New file.
17349
17350         Module hash.
17351         * m4/hash.m4: New file.
17352
17353         Module readtokens.
17354         * m4/readtokens.m4: New file.
17355
17356         Module strverscmp.
17357         * m4/strverscmp.m4: New file.
17358
17359         Module stdbool.
17360         * m4/stdbool.m4 (AC_HEADER_STDBOOL): Add test for _Bool. Needed for
17361         OSF/1.
17362
17363         Module strtoll.
17364         * m4/strtoll.m4: New file.
17365
17366         Module strtoull.
17367         * m4/strtoull.m4: New file.
17368
17369         Module strtoimax.
17370         * m4/strtoimax.m4: New file.
17371
17372         Module strtoumax.
17373         * m4/strtoumax.m4: New file.
17374
17375         Module xstrtoimax.
17376         * m4/xstrtoimax.m4 (jm_XSTRTOIMAX): Renamed from
17377         jm_AC_PREREQ_XSTRTOIMAX.
17378         Moved the strtol prerequisites to strtol.m4.
17379         Moved the strtoll prerequisites to strtoll.m4.
17380         Moved the strtoimax prerequisites to strtoimax.m4.
17381
17382         Module xstrtoumax.
17383         * m4/xstrtoumax.m4 (jm_XSTRTOUMAX): Renamed from
17384         jm_AC_PREREQ_XSTRTOUMAX.
17385         Moved the strtoul prerequisites to strtoul.m4.
17386         Moved the strtoull prerequisites to strtoull.m4.
17387         Moved the strtoumax prerequisites to strtoumax.m4.
17388
17389         Module chown.
17390         * m4/chown.m4 (gl_PREREQ_CHOWN): New macro.
17391         (jm_FUNC_CHOWN): Use AC_FUNC_CHOWN. Invoke gl_PREREQ_CHOWN.
17392
17393         Module dup2.
17394         * m4/dup2.m4: New file.
17395
17396         Module ftruncate.
17397         * m4/ftruncate.m4 (gl_PREREQ_FTRUNCATE): New macro.
17398         (jm_FUNC_FTRUNCATE): Use AC_REPLACE_FUNCS. Invoke gl_PREREQ_FTRUNCATE.
17399
17400         Module getgroups.
17401         * m4/getgroups.m4 (gl_PREREQ_GETGROUPS): New macro.
17402         (jm_FUNC_GETGROUPS): Use AC_FUNC_GETGROUPS. Invoke gl_PREREQ_GETGROUPS.
17403
17404         Module gettimeofday.
17405         * m4/gettimeofday.m4 (gl_PREREQ_GETTIMEOFDAY): New macro.
17406         (AC_FUNC_GETTIMEOFDAY_CLOBBER): Use onceonly macros. Invoke
17407         gl_PREREQ_GETTIMEOFDAY.
17408
17409         Module mkdir.
17410         * m4/mkdir-slash.m4 (gl_PREREQ_MKDIR): New macro.
17411         (UTILS_FUNC_MKDIR_TRAILING_SLASH): Invoke gl_PREREQ_MKDIR.
17412
17413         Module mkstemp.
17414         * m4/mkstemp.m4 (gl_PREREQ_MKSTEMP): New macro.
17415         (jm_PREREQ_TEMPNAME): New macro, from prereq.m4. Also invoke
17416         jm_AC_TYPE_UINTMAX_T.
17417         (UTILS_FUNC_MKSTEMP): Invoke gl_PREREQ_MKSTEMP and jm_PREREQ_TEMPNAME.
17418
17419         Module stat.
17420         * m4/stat.m4 (gl_PREREQ_STAT): New macro.
17421         (jm_FUNC_STAT): Use AC_FUNC_STAT. Invoke gl_PREREQ_STAT.
17422
17423         Module lstat.
17424         * m4/lstat.m4 (gl_PREREQ_LSTAT): New macro.
17425         (jm_FUNC_LSTAT): Use AC_FUNC_LSTAT. Invoke gl_PREREQ_LSTAT.
17426
17427         Module timespec.
17428         * m4/timespec.m4 (gl_TIMESPEC): New macro.
17429         (jm_CHECK_TYPE_STRUCT_TIMESPEC): Add check for <sys/time.h>.
17430         * m4/st_mtim.m4: Indentation.
17431
17432         Module nanosleep.
17433         * m4/nanosleep.m4 (gl_PREREQ_NANOSLEEP): New macro.
17434         (jm_FUNC_NANOSLEEP): Add check for <sys/time.h>. Invoke
17435         gl_PREREQ_NANOSLEEP.
17436
17437         Module regex.
17438         * m4/regex.m4 (jm_PREREQ_REGEX): New macro.
17439         (jm_INCLUDED_REGEX): Invoke jm_PREREQ_REGEX.
17440         (gl_REGEX): New macro.
17441
17442         Module rename.
17443         * m4/rename.m4 (gl_PREREQ_RENAME): New macro.
17444         (vb_FUNC_RENAME): Invoke gl_PREREQ_RENAME.
17445
17446         Module rmdir.
17447         * m4/rmdir.m4: New file.
17448
17449         Module utime.
17450         * m4/utimbuf.m4 (jm_CHECK_TYPE_STRUCT_UTIMBUF): Use onceonly macros.
17451         * m4/utime.m4 (gl_PREREQ_UTIME): New macro.
17452         (jm_FUNC_UTIME): Invoke gl_PREREQ_UTIME.
17453
17454         Module dirname.
17455         * m4/dirname.m4: New file.
17456
17457         Module getopt.
17458         * m4/getopt.m4: New file.
17459
17460         Module unistd-safer.
17461         * m4/unistd-safer.m4: New file.
17462
17463         Module fnmatch.
17464         * m4/fnmatch.m4 (_AC_FUNC_FNMATCH_IF): Include <stdlib.h>, for exit()
17465         declaration.
17466         (gl_PREREQ_FNMATCH_EXTRA): New macro.
17467         (gl_FUNC_FNMATCH_POSIX): New macro.
17468         (gl_FUNC_FNMATCH_GNU): Renamed from AC_FUNC_FNMATCH_GNU. Invoke
17469         gl_PREREQ_FNMATCH_EXTRA. Use the function name gnu_fnmatch, not
17470         simply fnmatch.
17471
17472         Module exclude.
17473         * m4/exclude.m4: New file.
17474
17475         Module human.
17476         * m4/human.m4: New file.
17477
17478         Module acl.
17479         * m4/acl.m4: Nop.
17480
17481         Module backupfile.
17482         * m4/backupfile.m4: New file.
17483         * m4/d-ino.m4: Indentation.
17484
17485         Module fsusage.
17486         * m4/fsusage.m4 (gl_FSUSAGE): New macro.
17487         (jm_STATFS_TRUNCATES): New macro, from coreutils-4.5.4/configure.ac.
17488         (gl_PREREQ_FSUSAGE_EXTRA): New macro.
17489
17490         Module dirfd.
17491         * m4/dirfd.m4 (UTILS_FUNC_DIRFD): Invoke some AC_EGREP_CPP
17492         requirements.
17493
17494         Module euidaccess.
17495         * m4/euidaccess.m4: New file.
17496
17497         Module file-type.
17498         * m4/file-type.m4: New file.
17499
17500         Module fileblocks.
17501         * m4/fileblocks.m4: New file.
17502
17503         Module filemode.
17504         * m4/filemode.m4: New file.
17505
17506         Module isdir.
17507         * m4/isdir.m4: New file.
17508
17509         Module lchown.
17510         * m4/lchown.m4 (gl_PREREQ_LCHOWN): New macro.
17511         (jm_FUNC_LCHOWN): Invoke gl_PREREQ_LCHOWN.
17512
17513         Module makepath.
17514         * m4/makepath.m4: New file.
17515
17516         Module modechange.
17517         * m4/modechange.m4: New file.
17518
17519         Module mountlist.
17520         * m4/mountlist.m4: New file.
17521         * m4/ls-mntd-fs.m4 (jm_LIST_MOUNTED_FILESYSTEMS): Use onceonly macros.
17522         Indentation.
17523
17524         Module path-concat.
17525         * m4/path-concat.m4: New file.
17526
17527         Module pathmax.
17528         * m4/pathmax.m4: New file.
17529
17530         Module same.
17531         * m4/same.m4: New file.
17532
17533         Module save-cwd.
17534         * m4/save-cwd.m4: New file.
17535
17536         Module savedir.
17537         * m4/savedir.m4: New file.
17538
17539         Module xgetcwd.
17540         * m4/xgetcwd.m4: New file.
17541         * m4/getcwd.m4 (AC_FUNC_GETCWD_NULL): Use onceonly macros.
17542
17543         Module xreadlink.
17544         * m4/xreadlink.m4: New file.
17545
17546         Module safe-read.
17547         * m4/safe-read.m4: New file.
17548
17549         Module safe-write.
17550         * m4/safe-write.m4: New file.
17551
17552         Module closeout.
17553         * m4/closeout.m4: New file.
17554
17555         Module stdio-safer.
17556         * m4/stdio-safer.m4: New file.
17557
17558         Module getpass.
17559         * m4/getpass.m4: New file.
17560
17561         Module getugroups.
17562         * m4/getugroups.m4: New file.
17563
17564         Module group-member.
17565         * m4/group-member.m4 (gl_PREREQ_GROUP_MEMBER): New macro.
17566         (jm_FUNC_GROUP_MEMBER): Invoke AC_GNU_SOURCE, gl_PREREQ_GROUP_MEMBER.
17567
17568         Module idcache.
17569         * m4/idcache.m4: New file.
17570
17571         Module userspec.
17572         * m4/userspec.m4: New file.
17573
17574         Module gettime.
17575         * m4/clock_time.m4: New file.
17576         * m4/gettime.m4: New file.
17577
17578         Module settime.
17579         * m4/settime.m4: New file.
17580
17581         Module posixtm.
17582         * m4/posixtm.m4: New file.
17583
17584         Module gethostname.
17585         * m4/gethostname.m4: New file.
17586
17587         Module canon-host.
17588         * m4/canon-host.m4: New file.
17589
17590         Module gettext.
17591         * m4/codeset.m4: New file, from gettext-0.11.5.
17592         * m4/gettext.m4: New file, from gettext-0.11.5.
17593         * m4/glibc21.m4: New file, from gettext-0.11.5.
17594         * m4/iconv.m4: New file, from gettext-0.11.5.
17595         * m4/intdiv0.m4: New file, from gettext-0.11.5.
17596         * m4/inttypes-pri.m4: New file, from gettext-0.11.5.
17597         * m4/inttypes.m4: New file, from gettext-0.11.5.
17598         * m4/inttypes_h.m4: New file, from gettext-0.11.5 with modifications.
17599         * m4/isc-posix.m4: New file, from gettext-0.11.5.
17600         * m4/lcmessage.m4: New file, from gettext-0.11.5.
17601         * m4/lib-ld.m4: New file, from gettext-0.11.5.
17602         * m4/lib-link.m4: New file, from gettext-0.11.5.
17603         * m4/lib-prefix.m4: New file, from gettext-0.11.5.
17604         * m4/progtest.m4: New file, from gettext-0.11.5.
17605         * m4/stdint_h.m4: New file, from gettext-0.11.5 with modifications.
17606         * m4/uintmax_t.m4: New file, from gettext-0.11.5 with modifications.
17607         * m4/ulonglong.m4: New file, from gettext-0.11.5 with modifications.
17608
17609         Module localcharset.
17610         * m4/localcharset.m4: New file.
17611
17612         Module hard-locale.
17613         * m4/hard-locale.m4: New file.
17614
17615         Module mbswidth.
17616         * m4/mbswidth.m4 (gl_MBSWIDTH): Renamed from jm_PREREQ_MBSWIDTH. Use
17617         onceonly macros.
17618         * m4/mbrtowc.m4: Add comment.
17619
17620         Module memcasecmp.
17621         * m4/memcasecmp.m4: New file.
17622
17623         Module memcoll.
17624         * m4/memcoll.m4: New file.
17625
17626         Module unicodeio.
17627         * m4/unicodeio.m4: New file.
17628
17629         Module rpmatch.
17630         * m4/rpmatch.m4: New file.
17631
17632         Module yesno.
17633         * m4/yesno.m4: New file.
17634
17635         Module exitfail.
17636         * m4/exitfail.m4: New file.
17637
17638         Module c-stack.
17639         * m4/c-stack.m4 (gl_C_STACK): New macro.
17640         (jm_PREREQ_C_STACK): Check for <sys/time.h>. Use onceonly macros.
17641
17642         Module error.
17643         * m4/error.m4 (gl_ERROR): New macro.
17644         (jm_PREREQ_ERROR): Use onceonly macros.
17645
17646         Module fatal.
17647         * m4/fatal.m4: New file.
17648
17649         Module getloadavg.
17650         * m4/getloadavg.m4 (AC_FUNC_GETLOADAVG): Use onceonly macros.
17651         (gl_FUNC_GETLOADAVG, gl_PREREQ_GETLOADAVG): New macros.
17652
17653         Module getpagesize.
17654         * m4/getpagesize.m4: New file.
17655
17656         Module getusershell.
17657         * m4/getusershell.m4: New file.
17658
17659         Module physmem.
17660         * m4/physmem.m4: New file.
17661
17662         Module posixver.
17663         * m4/posixver.m4: New file.
17664
17665         Module quotearg.
17666         * m4/quotearg.m4: New file.
17667
17668         Module quote.
17669         * m4/quote.m4: New file.
17670
17671         Module readutmp.
17672         * m4/readutmp.m4: New file, based on jm_PREREQ_READUTMP from prereq.m4.
17673
17674         Module sig2str.
17675         * m4/sig2str.m4: New file.
17676
17677         Other.
17678         * m4/longlong.m4 (jm_AC_TYPE_UNSIGNED_LONG_LONG): Remove, moved to
17679         ulonglong.m4.
17680         * m4/intmax_t.m4: New file.
17681         * m4/d-type.m4: Indentation.
17682         * m4/jm-macros.m4: Update.
17683         * m4/prereq.m4 (jm_PREREQ): Update.
17684         (jm_PREREQ_ADDEXT): Remove, obsoleted by backupfile.m4.
17685         (jm_PREREQ_CANON_HOST): Remove, obsoleted by canon-host.m4.
17686         (jm_PREREQ_DIRNAME): Remove, obsoleted by dirname.m4.
17687         (jm_PREREQ_EXCLUDE): Remove, obsoleted by exclude.m4.
17688         (jm_PREREQ_GETPAGESIZE): Remove, obsoleted by getpagesize.m4.
17689         (jm_PREREQ_HARD_LOCALE): Remove, obsoleted by hard-locale.m4.
17690         (jm_PREREQ_HASH): Remove, obsoleted by hash.m4.
17691         (jm_PREREQ_HUMAN): Remove, obsoleted by human.m4.
17692         (jm_PREREQ_MEMCHR): Remove, obsoleted by memchr.m4.
17693         (jm_PREREQ_PHYSMEM): Remove, obsoleted by physmem.m4.
17694         (jm_PREREQ_POSIXVER): Remove, obsoleted by posixver.m4.
17695         (jm_PREREQ_QUOTEARG): Remove, obsoleted by quotearg.m4.
17696         (jm_PREREQ_READUTMP): Remove, obsoleted by readutmp.m4.
17697         (jm_PREREQ_REGEX): Remove, obsoleted by regex.m4.
17698         (jm_PREREQ_STRNLEN): Remove, obsoleted by strnlen.m4.
17699         (jm_PREREQ_TEMPNAME): Remove, obsoleted by mkstemp.m4.
17700         (jm_PREREQ_XGETCWD): Remove, obsoleted by xgetcwd.m4.
17701         (jm_PREREQ_XREADLINK): Remove, obsoleted by xreadlink.m4.
17702         * m4/readdir.m4 (jm_FUNC_READDIR): Use onceonly macros.
17703
17704 2002-12-24  Bruno Haible  <bruno@clisp.org>
17705
17706         * MODULES.txt: Update according to m4/ changes.
17707
17708         Module gettext.
17709         * config.rpath: New file, from gettext-0.11.5.
17710
17711         * modules/*: New module descriptions.
17712         * gnulib-tool: New file.
17713         * MODULES.html.sh: New file.
17714
17715 2002-12-21  Karl Berry  <karl@gnu.org>
17716
17717         * doc/fdl.texi: update to version 1.2.
17718
17719 2002-12-19  Karl Berry  <karl@gnu.org>
17720
17721         * config/config.guess: update from prep.
17722
17723 2002-12-18  Bruno Haible  <bruno@clisp.org>
17724
17725         * m4/strftime.m4 (_jm_STRFTIME_PREREQS): Don't test for localtime_r.
17726         * m4/jm-mktime.m4 (jm_FUNC_MKTIME): Likewise.
17727
17728 2002-12-17  Bruno Haible  <bruno@clisp.org>
17729
17730         * m4/mbswidth.m4 (jm_PREREQ_MBSWIDTH): Remove checks for limits.h,
17731         stdlib.h, string.h.
17732
17733 2002-12-17  Bruno Haible  <bruno@clisp.org>
17734
17735         * lib/canon-host.c (strdup): Remove unused declaration.
17736
17737         * lib/fsusage.c: Include full_read.h.
17738         (get_fs_usage): Use full_read instead of safe_read.
17739
17740         * lib/utime.c (utime_null): Use SAFE_READ_ERROR.
17741
17742 2002-12-12  Karl Berry  <karl@gnu.org>
17743
17744         * config/config.guess: update from prep.
17745
17746 2002-12-11  Bruno Haible  <bruno@clisp.org>
17747
17748         * m4/setenv.m4: New file, from gettext-0.11.5.
17749
17750 2002-12-11  Bruno Haible  <bruno@clisp.org>
17751
17752         * lib/setenv.h: Rewritten to cope with systems that have setenv() but
17753         not unsetenv().
17754         * lib/setenv.c, unsetenv.c: Taken from glibc-2.2.4 with the following
17755         modifications:
17756
17757         2002-12-11  Bruno Haible  <bruno@clisp.org>
17758
17759                 * setenv.c (alloca): Fall back to malloc.
17760                 (freea): New macro.
17761                 (setenv): Use freea() to free memory allocated with alloca().
17762
17763         2002-11-13  Bruno Haible  <bruno@clisp.org>
17764
17765                 * setenv.c (compar_fn_t, __add_to_environ, setenv): Use ANSI C
17766                 function declarations.
17767                 * unsetenv.c (unsetenv): Likewise.
17768
17769         2002-03-04  Bruno Haible  <bruno@clisp.org>
17770
17771                 Portability to AIX 4.3.3.
17772                 * unsetenv.c: New file, extracted from setenv.c.
17773                 * setenv.c: Move the unsetenv() function to unsetenv.c.
17774
17775         2001-12-20  Bruno Haible  <bruno@clisp.org>
17776
17777                 * setenv.c (__add_to_environ): Don't call realloc(NULL,...),
17778                 use malloc instead. For SunOS 4.
17779
17780         2001-12-11  Bruno Haible  <bruno@clisp.org>
17781
17782                 * setenv.c: Declare alloca.
17783                 (compar_fn_t): New typedef.
17784                 (KNOWN_VALUE, STORE_VALUE): Use it.
17785
17786         * lib/Makefile.am (libfetish_a_SOURCES): Add setenv.c, unsetenv.c,
17787         setenv.h.
17788
17789 2002-12-10  Paul Eggert  <eggert@twinsun.com>
17790
17791         Port exclude.c and exclude.h to more non-GNU systems, e.g. Solaris 7.
17792         * lib/exclude.h (EXCLUDE_ANCHORED, EXCLUDE_INCLUDE, EXCLUDE_WILDCARDS):
17793         Choose values that are less likely to collide with system fnmatch
17794         options.
17795         * lib/exclude.c (FNM_CASEFOLD, FNM_LEADING_DIR): Define to 0 if not
17796         defined (e.g., a pure POSIX system).
17797         (EXCLUDE_macros_do_not_collide_with_FNM_macros): Use FNM_PATHNAME
17798         instead of FNM_FILE_NAME, for compatibility with pure POSIX sytems.
17799
17800 2002-12-06  Paul Eggert  <eggert@twinsun.com>
17801
17802         Undo the 2001-07-02 change for jm-glibc-io, as it was too much of
17803         a pain in practice to deal with generated m4 files.  This change
17804         goes together with the 2002-12-04 unlocked-io.h change in ../lib.
17805
17806         * m4/Makefile.am.in (Makefile.am): Don't mention jm-glibc-io.m4n
17807         and jm-glibc-io.m4, as they are no longer a special case.
17808         * m4/jm-glibc-io.m4: Rename from jm-glibc-io.m4n, and remove the
17809         kludge and the auto-generation stuff.  Check only whether the
17810         functions are declared, not whether they exist, since older hosts
17811         that don't declare the functions can't use the optimization anyway.
17812
17813 2002-12-06  Jim Meyering  <jim@meyering.net>
17814
17815         * lib/error.c: Be consistent: change `#ifndef _LIBC' to `#if !_LIBC'.
17816
17817         Merge in changes from libc's misc/error.c, in preparation
17818         for the merge of gnulib's changes back into libc.
17819
17820         * lib/error.c (_): Define only if not already defined.
17821         Move definition to follow all #include directives.
17822         Include unlocked-io.h only if !_LIBC.
17823         [_LIBC]: Include <libio/libioP.h>.
17824         [USE_IN_LIBIO]: Include <libio/iolibio.h>
17825         (fflush): Tweak definition to use INTUSE.
17826         (putc): Define.
17827
17828 2002-12-05  Paul Eggert  <eggert@twinsun.com>
17829
17830         * lib/alloca.c [defined emacs]: Include "lisp.h".
17831         (xalloc_die) [defined emacs]: New macro.
17832         (free) [defined emacs && defined EMACS_FREE]: Define to EMACS_FREE.
17833         [! defined emacs]: Include <xalloc.h>.
17834         (POINTER_TYPE) [!defined POINTER_TYPE]: New macro.
17835         (pointer): Typedef to POINTER_TYPE *.
17836         (malloc): Remove decl; we now always use xmalloc.
17837         (alloca): Use old-style definition, since Emacs needs this.
17838         Check for arithmetic overflow when computing combined size.
17839
17840 2002-12-04  Paul Eggert  <eggert@twinsun.com>
17841
17842         Do not generate unlocked-io.h automatically, since it's easier to
17843         maintain it by hand.
17844
17845         * lib/unlocked-io.h: New file, from GNU diffutils,
17846         but with proper copyright notice and attribution.
17847         * lib/gen-uio: Remove.
17848         * lib/Makefile.am: Add copyright notice.
17849         (libfetish_a_SOURCES): Add unlocked-io.h.
17850         (BUILT_SOURCES, all-local): Remove unlocked-io.h.
17851         (DISTCLEANFILES, io_functions): Remove macros.
17852         (EXTRA_DIST): Remove gen_uio.
17853         (unlocked-io.h): Remove rule.
17854
17855 2002-12-04  Jim Meyering  <jim@meyering.net>
17856
17857         Reflect the fact that stat.c and lstat.c are no longer generated.
17858         * lib/Makefile.am (BUILT_SOURCES): Remove stat.c and lstat.c.
17859         (DISTCLEANFILES): Likewise.
17860         (EXTRA_DIST): Likewise.
17861         (all_local): Don't depend on stat.c or lstat.c.
17862         (stat.c, lstat.c): Remove rules.
17863         (EXTRA_DIST): Remove xstat.in.
17864
17865         * lib/xstat.in: Remove file.  Contents moved into stat.c.
17866         * lib/stat.c: New file.  Contents mostly from xstat.in.
17867         * lib/stat.c: Rework so that it may serve to define rpl_lstat, too.
17868         * lib/lstat.c: New file. Simply #define LSTAT and include stat.c.
17869
17870         * lib/safe-read.c: Rework so that it may serve to define safe_write,
17871         too.
17872         * lib/safe-write.c: Simply #define SAFE_WRITE and include safe-read.c.
17873
17874 2002-12-03  Jim Meyering  <jim@meyering.net>
17875
17876         * lib/safe-read.c, safe-write.c: Change variable names and comments,
17877         but not semantics, to minimize the differences between these two files.
17878         (safe_read): Change comment to mention SAFE_READ_ERROR.
17879
17880         * lib/safe-read.c (IS_EINTR): Define.
17881         (safe_read): Use IS_EINTR in place of in-function cpp directives.
17882
17883 2002-12-02  Jim Meyering  <jim@meyering.net>
17884
17885         * lib/safe-read.c (EINTR): Define.
17886         (CHAR_BIT, TYPE_SIGNED, TYPE_MINIMUM, TYPE_MAXIMUM): Define.
17887         (INT_MAX): Provide fallback.
17888         (safe_read): Rewrite to iterate IFF the read fails with EINTR.
17889
17890         * lib/safe-read.h (SAFE_READ_ERROR): Define.
17891
17892 2002-12-02  Bruno Haible  <bruno@clisp.org>
17893
17894         * lib/safe-write.c (CHAR_BIT, TYPE_SIGNED, TYPE_MINIMUM, TYPE_MAXIMUM):
17895         Define, taken from safe-read.c.
17896         (INT_MAX): Provide fallback.
17897         (safe_write): Rewrite to iterate IFF the write fails with EINTR.
17898         * lib/safe-write.h (SAFE_WRITE_ERROR): Define.
17899
17900         * lib/safe-read.c (EINTR): Remove definition.
17901         (safe_read): Don't use EINTR if it is absent.
17902
17903 2002-12-01  Jim Meyering  <jim@meyering.net>
17904
17905         * lib/safe-read.c: (safe_read): Also exit the loop when read returns
17906         zero.
17907         (CHAR_BIT, TYPE_SIGNED, TYPE_MINIMUM, TYPE_MAXIMUM, INT_MAX): Define.
17908
17909 2002-11-27  Paul Eggert  <eggert@twinsun.com>
17910
17911         * lib/hash.c (hash_lookup, hash_get_first, hash_get_next,
17912         hash_find_entry, hash_rehash): Replace `if (limit <= value) abort ();'
17913         with `if (! (value < limit)) abort ();', for readability.
17914
17915 2002-11-26  Karl Berry  <karl@gnu.org>
17916
17917         * lib/strdup.c: copy from libc again, with jim's ok.
17918         * lib/.cppi-disable: re-add strdup.c
17919
17920 2002-11-25  Karl Berry  <karl@gnu.org>
17921
17922         * lib/strtoll.c: copy from libc, meaning we now #include <strtol.c>
17923         instead of "strtol.c".
17924
17925 2002-11-25  Karl Berry  <karl@gnu.org>
17926
17927         * config/install-sh: update from automake for variable quoting, $0 in
17928         error msgs, etc.
17929
17930         * config/srclist.txt ($LIBCSRC/time/mktime.c lib gpl): new entry.
17931         * config/srclist.txt ($LIBCSRC/sysdeps/generic/strtoll.c lib gpl): new
17932         entry.
17933
17934 2002-11-25  Jim Meyering  <jim@meyering.net>
17935
17936         * lib/mktime.c: Sync from libc, now that it has the latest fix.
17937
17938 2002-11-24  Karl Berry  <karl@gnu.org>
17939
17940         * lib/error.c, getopt.c, getopt.h, getopt1.c, obstack.c, regex.c,
17941         regex.h, strdup.c, strtoll.c, tempname.c: change license to gpl.
17942
17943 2002-11-24  Jim Meyering  <jim@meyering.net>
17944
17945         Update from coreutils:
17946
17947         * lib/mktime.c: Merge in changes from libc.
17948
17949         Avoid a link-time failure on some Linux systems.
17950         * lib/mktime.c (STATIC): Define to be empty (_LIBC) or `static'
17951         (otherwise).
17952         (__mon_yday): Declare with the STATIC attribute.
17953         (__mktime_internal): Likewise.
17954         Based on a report from Greg Schafer.
17955
17956 2002-11-23  Jim Meyering  <jim@meyering.net>
17957
17958         * lib/sig2str.c (str2signum, sig2str): Avoid a warning from gcc:
17959         Use `unsigned', not `int', as type of index.
17960
17961         * lib/xstat.in [@BEGIN_LSTAT_ONLY@]: Include <string.h>.
17962
17963         * lib/fsusage.c: Remove unneeded parentheses around operands of
17964         `defined'.
17965
17966 2002-11-22  Paul Eggert  <eggert@twinsun.com>
17967
17968         * lib/quotearg.h: Allow multiple inclusion by surrounding with
17969         "#ifndef QUOTEARG_H_".  Include <stddef.h>, for size_t,
17970         so that we can be included first.
17971         (PARAMS): Remove; we now assume C89 or later.  All uses removed.
17972         * lib/quotearg.c: Include quotearg.h immediately after config.h.
17973         No need to include stddef.h or sys/types.h any more.
17974         Surround local include files with "", not "<>".
17975         Assume HAVE_LIMITS_H unconditionally, as we assume C89.
17976         Similarly, assume HAVE_C_BACKSLASH_A, CHAR_BIT, UCHAR_MAX, UINT_MAX,
17977         HAVE_STDLIB_H, HAVE_STRING_H, STDC_HEADERS.
17978         (HAVE_MBSINIT): Undef if !HAVE_MBRTOWC.
17979         (mbsinit): Define to 1 if !defined mbsinit && !HAVE_MBSINIT.
17980         (ISPRINT): Remove; no longer needed now that we assume C89.
17981
17982         (clone_quoting_options, quotearg_buffer, quotearg_n_options):
17983         Preserve errno.
17984
17985         (quotearg_buffer_restyled, quotearg_n, quotearg_n_style,
17986         quotearg_char): Use SIZE_MAX rather than
17987         (size_t) -1 when we are talking about "infinity".
17988
17989         (quotearg_buffer_restyled): Fix bug when quoting trigraphs.
17990
17991 2002-11-22  Paul Eggert  <eggert@twinsun.com>
17992
17993         * lib/hash.c: Avoid use of <assert.h>, as the GNU Coding Standards
17994         hint that one should use `if (! x) abort ();' rather than `assert
17995         (x);', and anyway it's one less thing to worry about configuring.
17996         (hash_lookup, hash_get_first, hash_get_next, hash_find_entry,
17997         hash_rehash, hash_insert): Use abort rather than assert.
17998
17999 2002-11-22  Bruno Haible  <bruno@clisp.org>
18000
18001         * lib/safe-read.h: Assume C89. Add comments.
18002         (safe_read): Change return type to size_t.
18003         * lib/safe-read.c (safe_read): Change return type to size_t. Handle
18004         byte counts > SSIZE_MAX correctly.
18005         * lib/safe-write.h: New file.
18006         * lib/safe-write.c: New file.
18007         * lib/full-read.h: New file.
18008         * lib/full-read.c: New file.
18009         * lib/full-write.h: Assume C89. Add comments.
18010         * lib/full-write.c: Include safe-write.h.
18011         (full_write): Rewritten to use safe_write.
18012         Suggested by Jim Meyering and Paul Eggert.
18013
18014 2002-11-21  Jim Meyering  <jim@meyering.net>
18015
18016         * lib/strdup.c (strdup): Tweak comment and initial #if/#include.
18017
18018         Merge in changes from the coreutils.
18019
18020         2002-09-25  Paul Eggert  <eggert@twinsun.com>
18021         * lib/fsusage.c [! HAVE_INTTYPES_H && HAVE_STDINT_H] Include
18022         <stdint.h>.
18023         (UINTMAX_MAX) [!defined UINTMAX_MAX]: New macro.
18024         (PROPAGATE_ALL_ONES): Work even if X is unsigned and narrower than
18025         int.  Work more efficiently if X is the same width as uintmax_t.
18026         Do not compare X to -1, to avoid bogus compiler warning.
18027         (get_fs_usage): (uintmax_t) -1 -> UINTMAX_MAX to avoid a cast.
18028         Don't assume that f_frsize and f_bsize are the same type.
18029
18030         * lib/mountlist.c: #undef MNT_IGNORE before defining it, to avoid
18031         warning on FreeBSD.
18032
18033         * lib/makepath.c (make_path): Restore umask *before* creating the final
18034         component.
18035         (make_path): Minor reformatting.
18036
18037         * lib/xmalloc.c: Adjust to work with new autoconf macros,
18038         AC_FUNC_MALLOC and AC_FUNC_REALLOC: test #ifndef
18039         HAVE_MALLOC/HAVE_REALLOC.
18040
18041         * lib/mountlist.h (ME_DUMMY): Don't count entries of type `auto' as
18042         dummy ones.  At least on GNU/Linux systems, `auto' means something
18043         else.
18044         From Michael Stone.
18045
18046 2002-11-21  Bruno Haible  <bruno@clisp.org>
18047
18048         Remove case insensitive option matching.
18049         * lib/argmatch.h (argcasematch): Remove declaration.
18050         (ARGCASEMATCH): Remove macro.
18051         (__xargmatch_internal): Remove case_sensitive argument.
18052         (XARGMATCH): Update.
18053         (XARGCASEMATCH): Remove macro.
18054         * lib/argmatch.c (argmatch): Renamed from __argmatch_internal. Remove
18055         case_sensitive argument.
18056         (argcasematch): Remove function.
18057         (__xargmatch_internal): Remove case_sensitive argument.
18058         (main): Use XARGMATCH instead of XARGCASEMATCH.
18059
18060         * lib/xmalloc.c: Change compile-time error message. Add comment about
18061         required autoconf version.
18062
18063 2002-11-20  Paul Eggert  <eggert@twinsun.com>
18064
18065         Merge argmatch cleanups from Bison.  Assume C89.
18066
18067         * lib/argmatch.c: Include config.h here, not in argmatch.h.
18068         Include stdlib.h, for EXIT_FAILURE.
18069         Always include <string.h>, since we assume C89.
18070         (EXIT_FAILURE): Remove pre-C89 bug workaround.
18071         * lib/argmatch.h: Do not include <config.h> or <sys/types.h>.
18072         Include <stddef.h> instead, since it's all we need for size_t.
18073         (PARAMS): Remove.  All uses removed.
18074         (ARRAY_CARDINALITY): Do not bother to #undef.
18075         (ARRAY_CARDINALITY, ARGMATCH, ARGCASEMATCH, invalid_arg,
18076         ARGMATCH_VALID, XARGMATCH, XARGCASEMATCH):
18077         Remove unnecessary parentheses.
18078         (ARGMATCH_VALID, XARGMATCH, XARGCASEMATCH):
18079         Insert necessary parentheses.
18080         (ARGMATCH_CONSTRAINT, ARGMATCH_VERIFY): New macros.
18081         (ARGMATCH_ASSERT): Use ARGMATCH_CONSTRAINT.
18082
18083 2002-11-19  Bruno Haible  <bruno@clisp.org>
18084
18085         * lib/mbswidth.c: Include mbswidth.h right at the beginning.
18086         * lib/mbswidth.h: Include <stddef.h>, for size_t.
18087
18088         * lib/mbswidth.h (PARAMS): Remove macro.
18089         (mbswidth, mbsnwidth): Use ANSI C function declarations.
18090         * lib/mbswidth.c (mbswidth, mbsnwidth): Likewise.
18091
18092         * lib/gcd.h (PARAMS): Remove macro.
18093         (gcd): Use ANSI C function declarations.
18094         * lib/gcd.c (gcd): Likewise.
18095
18096 2002-11-15  Bruno Haible  <bruno@clisp.org>
18097
18098         * lib/strcspn.c: Include <stddef.h>.
18099         (strcspn): Use ANSI C function declaration. Change return type to
18100         size_t. Use NULL.
18101         * lib/strpbrk.c: Minimize diffs to glibc. Include <stddef.h>.
18102         (strpbrk): Use NULL.
18103         * lib/strpbrk.h (PARAMS): Remove macro.
18104         (strpbrk): Use ANSI C function declaration.
18105         * lib/strstr.c: Don't include <sys/types.h>.
18106         * lib/strstr.h (PARAMS): Remove macro.
18107         (strstr): Use ANSI C function declarations.
18108
18109 2002-11-14  Karl Berry  <karl@gnu.org>
18110
18111         * config/mkinstalldirs: `do' on separate line, instead of
18112         `for var; do'.
18113
18114 2002-11-06  Bruno Haible  <bruno@clisp.org>
18115
18116         * lib/gcd.h (gcd): Change argument type to 'unsigned long'.
18117         * lib/gcd.c (gcd): Likewise.
18118
18119 2002-11-05  Bruno Haible  <bruno@clisp.org>
18120
18121         * lib/gcd.h: New file, from gettext-0.11.5.
18122         * lib/gcd.c: New file, from gettext-0.11.5.
18123
18124 2002-11-05  Bruno Haible  <bruno@clisp.org>
18125
18126         * lib/error.c [!_LIBC]: Include gettext.h instead of <libintl.h>.
18127         * lib/getopt.c [!_LIBC]: Include gettext.h instead of <libintl.h>.
18128         * lib/obstack.c [!_LIBC]: Include gettext.h instead of <libintl.h>.
18129         * lib/regex.c [!_LIBC]: Include gettext.h instead of <libintl.h>.
18130
18131         * lib/argmatch.c: Include gettext.h instead of <locale.h> and
18132         <libintl.h>.
18133         * lib/makepath.c: Include gettext.h instead of <locale.h> and
18134         <libintl.h>.
18135
18136         * lib/closeout.c: Include gettext.h instead of <libintl.h>.
18137         * lib/human.c: Include gettext.h instead of <libintl.h>.
18138         * lib/quotearg.c: Include gettext.h instead of <libintl.h>.
18139         * lib/rpmatch.c: Include gettext.h instead of <libintl.h>.
18140         * lib/unicodeio.c: Include gettext.h instead of <libintl.h>.
18141         * lib/userspec.c: Include gettext.h instead of <libintl.h>.
18142         * lib/version-etc.c: Include gettext.h instead of <libintl.h>.
18143         * lib/xmalloc.c: Include gettext.h instead of <libintl.h>.
18144         (textdomain): Remove definition.
18145         * lib/xmemcoll.c: Include gettext.h instead of <libintl.h>.
18146
18147         * lib/long-options.c: Remove include of <libintl.h> and definition of
18148         _.
18149         * lib/same.c: Remove include of <libintl.h> and definition of _.
18150
18151 2002-11-04  Owen Taylor  <otaylor@redhat.com>
18152
18153         * lib/config.charset: A few additions for Solaris.
18154
18155 2002-11-04  Bruno Haible  <haible@clisp.cons.org>
18156
18157         Make it possible to build libcharset with CC=gcc CFLAGS="-x c++".
18158         * lib/localcharset.c (locale_charset): Declare as extern "C".
18159
18160 2002-11-04  Bruno Haible  <haible@clisp.cons.org>
18161
18162         * lib/config.charset: msdos in uk_UA uses CP1125.
18163
18164 2002-11-04  Bruno Haible  <bruno@clisp.org>
18165
18166         * lib/stpcpy.h: New file, from GNU gettext-0.11.5.
18167         * lib/strcase.h: New file, from GNU gettext-0.11.5.
18168         * lib/strpbrk.h: New file, from GNU gettext-0.11.5.
18169         * lib/strstr.h: New file, from GNU gettext-0.11.5.
18170         * lib/xgetcwd.h: New file, from GNU gettext-0.11.5.
18171
18172 2002-11-04  Bruno Haible  <bruno@clisp.org>
18173
18174         * lib/localcharset.c (locale_charset): Don't return an empty string.
18175
18176 2002-11-04  Bruno Haible  <bruno@clisp.org>
18177
18178         * lib/localcharset.c (get_charset_aliases): Add more Windows specific
18179         aliases.
18180
18181 2002-11-04  Bruno Haible  <bruno@clisp.org>
18182
18183         * lib/config.charset: Update for newest glibc. Add canonical names
18184         ISO-8859-14, KOI8-T, TCVN5712-1, GEORGIAN-PS.
18185
18186 2002-11-04  Bruno Haible  <bruno@clisp.org>
18187
18188         * lib/config.charset: Add support for NetBSD.
18189
18190 2002-11-04  Bruno Haible  <bruno@clisp.org>
18191
18192         * lib/config.charset [msdosdjgpp]: For Russian, use CP866.
18193
18194 2002-11-01  Bruno Haible  <bruno@clisp.org>
18195
18196         * configure.in: Add AC_CONFIG_AUX_DIR call.
18197         (AC_OUTPUT): Add m4/Makefile, lib/Makefile. Remove doc/Makefile,
18198         test/Makefile.
18199         * Makefile.in (subdirs): Add m4, lib. Remove doc, test.
18200
18201 2002-09-28  Karl Berry  <karl@gnu.org>
18202
18203         * config/srclist.txt: can't copy install-sh/mkinstalldirs from
18204         installed automake until the next release, since changes have been
18205         made.
18206
18207 2002-09-25  Karl Berry  <karl@gnu.org>
18208
18209         * lib/strdup.c: copy from libc/string (via ../config/srclist*).
18210         * lib/getopt*: copy from libc/posix.
18211         * lib/gettext.h: copy from gettext.
18212         * lib/.cppi-disable: add strdup.c, gettext.h.
18213
18214 2002-09-25  Karl Berry  <karl@gnu.org>
18215
18216         * config/srclist.txt: enable gettext.h check.
18217         * config/config.{guess,sub}: update from prep.
18218         * config/depcomp, install-sh, mdate-sh, missing, mkinstalldirs: update
18219                 from automake 1.6.3.
18220         See srclist*.
18221
18222 2002-08-23  Stefan Monnier  <monnier@cs.yale.edu>
18223
18224         * regex.c (PATFETCH): Remove the translating fetch.
18225         (PATFETCH_RAW): Rename to PATFETCH.
18226         (set_image_of_range): New fun.
18227         (SET_RANGE_TABLE_WORK_AREA): Use it.
18228         (regex_compile): Don't translate the pattern chars so eagerly.
18229         Only do it when inserting an `exactn' bytecode or when handling
18230         a char-range.
18231         (mutually_exclusive_p): Avoid empty statement.
18232
18233 2002-07-06  Jim Meyering  <meyering@lucent.com>
18234
18235         * m4/README: Don't mention Makefile.am.in.
18236         Outline how I've tested changes to .m4 files.  Yep, it's a pain.
18237
18238 2002-07-01  Jim Meyering  <meyering@lucent.com>
18239
18240         * lib/c-stack.c: Include sys/time.h.
18241         From Volker Borchert.
18242
18243 2002-06-26  Paul Eggert  <eggert@twinsun.com>
18244
18245         * m4/fnmatch.m4 (_AC_LIBOBJ_FNMATCH): Check for btowc.
18246
18247 2002-06-26  Paul Eggert  <eggert@twinsun.com>
18248
18249         * lib/fnmatch.c, fnmatch_loop.c (WIDE_CHAR_SUPPORT):
18250         New macro.  Use it uniformly instead of
18251         (defined HAVE_WCTYPE_H && defined HAVE_WCHAR_H).
18252         It also uses HAVE_BTOWC, to fix a porting bug on Solaris 2.5.1
18253         reported by Vin Shelton.
18254
18255 2002-06-22  Paul Eggert  <eggert@twinsun.com>
18256
18257         * lib/c-stack.h (segv_handler, c_stack_action) [! defined SA_SIGINFO]:
18258         Do not assume SA_SIGINFO behavior.
18259         Bug reported by Jim Meyering on NetBSD 1.5.2.
18260
18261 2002-06-22  Jim Meyering  <meyering@lucent.com>
18262
18263         * m4/c-stack.m4: New file, from diffutils-2.8.2.
18264         * m4/prereq.m4 (jm_PREREQ): Add jm_PREREQ_C_STACK.
18265
18266         * m4/jm-macros.m4 (jm_CHECK_ALL_TYPES): Don't require AC__GNU_SOURCE,
18267         now that configure.ac uses AC_GNU_SOURCE.
18268         (jm_MACROS): Rename: jm_FUNC_FNMATCH to AC_FUNC_FNMATCH_GNU.
18269         * m4/prereq.m4 (jm_PREREQ_EXCLUDE): Likewise, wrt jm_FUNC_FNMATCH.
18270
18271         Update to latest tools.  Suggestions from Paul Eggert.
18272         * m4/stdbool.m4: New file, from diffutils-2.8.2.
18273         * m4/gnu-source.m4: Update from diffutils-2.8.2.
18274         * m4/fnmatch.m4: Likewise.
18275         * m4/prereq.m4: Change each use of AC_CHECK_HEADERS(stdbool.h)
18276         to AC_HEADER_STDBOOL
18277
18278 2002-06-22  Jim Meyering  <meyering@lucent.com>
18279
18280         * lib/fnmatch.c (ISASCII, ISPRINT): Undefine, to avoid warning about
18281         redefinition due to Solaris 2.6's definition in /usr/include/sys/euc.h.
18282
18283 2002-06-22  Jim Meyering  <meyering@lucent.com>
18284
18285         * lib/c-stack.c, c-stack.h: New files, from diffutils-2.8.2.
18286
18287         * lib/exitfail.c, exitfail.h: Likewise.
18288         * lib/Makefile.am (libfetish_a_SOURCES): Add exitfail.c and exitfail.h.
18289
18290         * lib/Makefile.am (libfetish_a_SOURCES): Add fnmatch_.h in place
18291         of fnmatch.h.
18292         (EXTRA_DIST): Add fnmatch_loop.c.
18293         (libfetish_a_SOURCES): Add c-stack.c and c-stack.h.
18294
18295         * lib/fnmatch_loop.c: New file, from diffutils-2.8.2.
18296         * lib/fnmatch.c: Update from diffutils-2.8.2.
18297         * lib/fnmatch_.h: New file.  From diffutils-2.8.2.
18298         * lib/fnmatch.h: Remove file.
18299
18300 2002-06-21  Jim Meyering  <meyering@lucent.com>
18301
18302         * m4/c-bs-a.m4: Add comment, from diffutils-2.8.2.
18303         * m4/mbrtowc.m4: Likewise.
18304
18305         * m4/mbstate_t.m4: Update from diffutils-2.8.2.
18306         * m4/mbswidth.m4: Reflect name change:
18307         s/AC_MBSTATE_T/AC_TYPE_MBSTATE_T.
18308         * m4/prereq.m4 (jm_PREREQ_QUOTEARG): Likewise.
18309
18310         * m4/lib-link.m4: Update from gettext-0.11.2.
18311         * m4/gettext.m4: Likewise.
18312
18313         * m4/jm-macros.m4 (jm_CHECK_ALL_HEADERS): Check for hurd.h.
18314         From Alfred M. Szmidt.
18315
18316 2002-06-18  Paul Eggert  <eggert@twinsun.com>
18317
18318         * lib/file-type.h: Report an error if neither S_ISREG nor
18319         S_IFREG is defined, instead of using a test specific to glibc
18320         2.2.  This should be safe, since POSIX requires S_ISREG and
18321         Unix Version 7 had S_IFREG.  We don't need to check for
18322         <sys/types.h> since we don't use any symbols that it defines.
18323
18324 2002-06-15  Richard Dawe  <richdawe@bigfoot.com>
18325
18326         * lib/Makefile.am (lstat.c, stat.c, .sin.sed): Use t-$@, rather than
18327         $@-t, so that each temporary file name is unique and valid in the first
18328         8 characters, for operation under DOS.
18329
18330 2002-06-15  Paul Eggert  <eggert@twinsun.com>
18331
18332         * m4/jm-macros.m4 (jm_CHECK_ALL_TYPES): Check for st_author.
18333
18334 2002-06-15  Jim Meyering  <meyering@lucent.com>
18335
18336         Work even with DJGPP 2.03, which lacks support for symlinks.
18337         From Richard Dawe.
18338         * lib/xstat.in (S_ISLNK): Define to 0 if neither S_ISLNK nor S_IFLNK
18339         is defined.
18340         * lib/lchown.c (S_ISLNK): Likewise.
18341
18342 2002-06-15  Jim Meyering  <meyering@lucent.com>
18343
18344         * lib/file-type.h (FILE_TYPE_H): Guard entire contents with #ifndef.
18345         For GNU libc 2.2 and newer, ensure that <sys/types.h> and <sys/stat.h>
18346         have been included before this file.
18347
18348 2002-06-14  Jim Meyering  <meyering@lucent.com>
18349
18350         * lib/file-type.h: Use the version from diffutils-2.8.2.
18351         * lib/file-type.c: Likewise.
18352
18353 2002-06-07  Jim Meyering  <meyering@lucent.com>
18354
18355         * m4/prereq.m4 (jm_PREREQ_STAT): Check for sys/param.h and sys/mount.h.
18356         They're needed at least for NetBSD 1.5.2.
18357         ($statxfs_includes): Include those same headers.
18358         ($statxfs_includes): Include sys/vfs.h if available.
18359         ($statxfs_includes): Likewise for sys/statvfs.h.
18360         Check for the following members in both structs statfs and statvfs:
18361         f_basetype, f_type, f_fsid.__val, f_namemax, f_namelen.
18362
18363 2002-06-01  Jim Meyering  <meyering@lucent.com>
18364
18365         * m4/d-type.m4 (jm_CHECK_TYPE_STRUCT_DIRENT_D_TYPE): Rename macro:
18366         s/D_TYPE_IN_DIRENT/HAVE_STRUCT_DIRENT_D_TYPE/.
18367
18368 2002-05-28  Jim Meyering  <meyering@lucent.com>
18369
18370         * m4/readdir.m4 (jm_FUNC_READDIR): Undefine `mkdir', not `rmdir'.
18371         Reported by Volker Borchert.
18372
18373 2002-05-27  Jim Meyering  <meyering@lucent.com>
18374
18375         Fix a problem seen only on nonconforming systems whereby ls.c's
18376         use of localtime, and then of gettimeofday would cause trouble:
18377         the localtime call used to initialize rpl_gettimeofday's save
18378         mechanism would clobber ls's current local time information so
18379         that in any long listing the first file would always be listed
18380         with date 1970-01-01.  Analysis by Volker Borchert.
18381
18382         * lib/gettimeofday.c (localtime): Undefine.
18383         (rpl_localtime): New function.
18384
18385 2002-05-27  Jim Meyering  <meyering@lucent.com>
18386
18387         * m4/gettimeofday.m4 (AC_FUNC_GETTIMEOFDAY_CLOBBER): Also replace
18388         localtime.
18389
18390         * m4/readdir.m4 (jm_FUNC_READDIR): Undefine `rmdir' so we don't try to
18391         use the replacement function; it wouldn't resolve at link time.
18392         Reported by Volker Borchert.
18393
18394 2002-05-22  Jim Meyering  <meyering@lucent.com>
18395
18396         * lib/Makefile.am (libfetish_a_SOURCES): Add file-type.c and
18397         file-type.h.
18398         * lib/file-type.h: New file.
18399         * lib/file-type.c (file_type): New file/function.  Extracted from
18400         diffutils.
18401
18402 2002-04-30  Jim Meyering  <meyering@lucent.com>
18403
18404         * m4/prereq.m4 (jm_PREREQ): Add jm_PREREQ_STAT.
18405
18406 2002-04-29  Paul Eggert  <eggert@twinsun.com>
18407
18408         * m4/prereq.m4 (jm_PREREQ_SIG2STR): Remove; all callers changed.
18409
18410 2002-04-29  Paul Eggert  <eggert@twinsun.com>
18411
18412         * m4/prereq.m4 (jm_PREREQ_HARD_LOCALE): Check for stdlib.h.
18413         Do not check for alloca.h (no longer used) or stdbool.h (was never
18414         used?).  Add AM_C_PROTOTYPES since hard-locale.h uses it.
18415
18416 2002-04-29  Paul Eggert  <eggert@twinsun.com>
18417
18418         * lib/hard-locale.c: Upgrade to version used in GNU Diffutils 2.8.1.
18419
18420 2002-04-29  Jim Meyering  <meyering@lucent.com>
18421
18422         * m4/jm-macros.m4 (jm_MACROS): Remove use of AC_FUNC_STRNLEN.
18423         * m4/prereq.m4: Add jm_PREREQ_STRNLEN.
18424         Use AC_FUNC_STRNLEN here instead.
18425
18426         * m4/jm-macros.m4: Don't AC_REQUIRE([AC_PROG_CC_STDC]).
18427         With autoconf-2.53a, it's part of AC_PROG_CC.
18428
18429 2002-04-28  Paul Eggert  <eggert@twinsun.com>
18430
18431         * m4/jm-macros.m4 (jm_MACROS): Add AC_REPLACE_FUNCS(sig2str).
18432         * m4/prereq.m4 (jm_PREREQ): Add jm_PREREQ_SIG2STR.
18433
18434 2002-04-28  Paul Eggert  <eggert@twinsun.com>
18435
18436         * lib/sig2str.h, sig2str.c: New files.
18437         * lib/Makefile.am (libfetish_a_SOURCES): Add sig2str.h.
18438
18439 2002-04-28  Paul Eggert  <eggert@twinsun.com>
18440
18441         * lib/sig2str.h (SIGNUM_BOUND): Do not use WTERMSIG, to avoid
18442         depending on <sys/wait.h> and WTERMSIG.  Default to 64 instead
18443         of 127, since 64 is the largest conceivable number for ancient
18444         nonstandard hosts.
18445         * lib/sig2str.c: Do not include <sys/wait.h>; no longer needed.
18446
18447 2002-04-28  Jim Meyering  <meyering@lucent.com>
18448
18449         * lib/sig2str.c (WTERMSIG): Remove definition (unused).
18450
18451 2002-04-24  Jim Meyering  <meyering@lucent.com>
18452
18453         * m4/prereq.m4 (jm_PREREQ_HARD_LOCALE): New macro.
18454         (jm_PREREQ): Use it.
18455
18456         * m4/getloadavg.m4: Check for these headers: locale.h unistd.h
18457         mach/mach.h fcntl.h.
18458         Check for this function: setlocale.
18459
18460 2002-04-24  Jim Meyering  <meyering@lucent.com>
18461
18462         * lib/gettext.h: New file, from Gettext.
18463         * lib/Makefile.am (INCLUDES): Remove -I../intl.
18464         (libfetish_a_SOURCES): Add gettext.h.
18465
18466 2002-04-16  Jim Meyering  <meyering@lucent.com>
18467
18468         * m4/prereq.m4 (jm_PREREQ_READUTMP): Also check for these members:
18469         ut_pid, ut_id, ut_exit.
18470
18471 2002-04-16  Jim Meyering  <meyering@lucent.com>
18472
18473         * lib/readutmp.h (UT_TYPE): Remove definition (now in who.c).
18474         (HAVE_STRUCT_XTMP_UT_EXIT, HAVE_STRUCT_XTMP_UT_ID): Define.
18475         (HAVE_STRUCT_XTMP_UT_PID, HAVE_STRUCT_XTMP_UT_TYPE): Define.
18476
18477 2002-04-12  Jim Meyering  <meyering@lucent.com>
18478
18479         * m4/ls-mntd-fs.m4 (checking for getmntinfo function...): Remove
18480         now-bogus check for f_type in sys/mount.h.  Instead, just test for the
18481         existence of the getmntinfo function.  Needed for Darwin 5.3.
18482
18483         * m4/dirfd.m4 (UTILS_FUNC_DIRFD): Also detect when dirfd is a macro.
18484         This is necessary at least on Darwin 5.3.
18485
18486         * m4/jm-macros.m4: Don't AC_REPLACE(strnlen), now that we use
18487         AC_FUNC_STRNLEN.  Otherwise, we'd end up putting two copies of
18488         strnlen.o in the library, and that makes some versions of ranlib
18489         object.
18490
18491 2002-04-12  Jim Meyering  <meyering@lucent.com>
18492
18493         * lib/dirfd.h (dirfd): Elide prototype if dirfd is a macro.
18494
18495 2002-04-09  Jim Meyering  <meyering@lucent.com>
18496
18497         * m4/malloc.m4: (jm_FUNC_MALLOC): Change the `checking ...' message
18498         to be more precise.  Rather than saying we're checking whether the
18499         function `works', say what we're testing.
18500         * m4/realloc.m4 (jm_FUNC_REALLOC): Likewise.
18501         Reported by Bruno Haible.
18502
18503 2002-03-10  Jim Meyering  <meyering@lucent.com>
18504
18505         * lib/makepath.c (make_path): Remove a comma from a diagnostic.
18506         Suggestion from Santiago Vila.
18507
18508 2002-03-08  Jim Meyering  <meyering@lucent.com>
18509
18510         * lib/rename.c: Mention that this wrapper is needed also on
18511         mips-dec-ultrix4.4 systems.
18512
18513 2002-03-02  Jim Meyering  <meyering@lucent.com>
18514
18515         * lib/gettime.c (gettime): Test HAVE_CLOCK_GETTIME,
18516         not HAVE_CLOCK_SETTIME.
18517
18518 2002-02-27  Paul Eggert  <eggert@twinsun.com>
18519
18520         * m4/jm-macros.m4 (jm_MACROS): Do not replace stime; no longer used.
18521         Check for clock_settime.
18522
18523 2002-02-27  Paul Eggert  <eggert@twinsun.com>
18524
18525         * lib/nanosleep.h: Rename to....
18526         * lib/timespec.h: New name for nanosleep.h.  All uses changed.
18527
18528         * lib/gettime.c: New file.
18529         * lib/settime.c: New file.
18530         * lib/stime.c: Remove.
18531
18532         * lib/Makefile.am (libfetish_a_SOURCES): Add gettime.c, settime.c,
18533         timespec.h.  Remove nanosleep.h.
18534
18535 2002-02-25  Paul Eggert  <eggert@twinsun.com>
18536
18537         * m4/acl.m4: New file.
18538         * m4/jm-macros.m4 (jm_MACROS): Require AC_FUNC_ACL.
18539         Do not check for acl or sys/acl.h, as AC_FUNC_ACL does that now.
18540
18541 2002-02-25  Paul Eggert  <eggert@twinsun.com>
18542
18543         * lib/acl.c, acl.h: New files.
18544         * lib/Makefile.am (libfetish_a_SOURCES): Add acl.h, acl.c.
18545
18546 2002-02-24  Jim Meyering  <meyering@lucent.com>
18547
18548         * lib/strnlen.c (strnlen): Define-away/undef so that an inconsistent
18549         prototype in string.h (on at least AIX4.3.2.0 w/gcc-2.95.3) doesn't
18550         cause trouble.  Reported by Nelson Beebe.
18551
18552 2002-02-23  Paul Eggert  <eggert@twinsun.com>
18553
18554         * lib/path-concat.c (xpath_concat): Reorder code to pacify
18555         compilers that don't know that xalloc_die never returns.
18556
18557 2002-02-20  Jim Meyering  <meyering@lucent.com>
18558
18559         * lib/getdate.c: Regenerate using bison-1.33.
18560
18561 2002-02-17  Jim Meyering  <meyering@lucent.com>
18562
18563         * config/config.guess (main): Don't use `head -1'; it's no longer
18564         portable. Use `sed 1q' instead.
18565
18566 2002-02-16  gettextize  <bug-gnu-gettext@gnu.org>
18567
18568         * m4/codeset.m4: Upgrade to gettext-0.11.
18569         * m4/gettext.m4: Upgrade to gettext-0.11.
18570         * m4/glibc21.m4: Upgrade to gettext-0.11.
18571         * m4/iconv.m4: Upgrade to gettext-0.11.
18572         * m4/isc-posix.m4: Upgrade to gettext-0.11.
18573         * m4/lcmessage.m4: Upgrade to gettext-0.11.
18574         * m4/lib-ld.m4: New file, from gettext-0.11.
18575         * m4/lib-link.m4: New file, from gettext-0.11.
18576         * m4/lib-prefix.m4: New file, from gettext-0.11.
18577         * m4/progtest.m4: Upgrade to gettext-0.11.
18578
18579 2002-02-15  Paul Eggert  <eggert@twinsun.com>
18580
18581         * m4/prereq.m4 (jm_PREREQ_POSIXVER): New macro.
18582         (jm_PREREQ): Use it.
18583
18584 2002-02-15  Paul Eggert  <eggert@twinsun.com>
18585
18586         * lib/posixver.c, posixver.h: New files.
18587         * lib/Makefile.am (libfetish_a_SOURCES): Add them.
18588
18589 2002-02-02  Paul Eggert  <eggert@twinsun.com>
18590             Bruno Haible  <bruno@clisp.org>
18591
18592         * lib/unicodeio.h (print_unicode_char): Add exit_on_error argument.
18593         (fwrite_success_callback): New declaration.
18594         * lib/unicodeio.c (unicode_to_mb): New function, extracted from
18595         print_unicode_char. Call failure callback instead of error.
18596         (fwrite_success_callback): New function.
18597         (exit_failure_callback): New function.
18598         (fallback_failure_callback): New function.
18599         (print_unicode_char): Call unicode_to_mb.
18600
18601 2002-01-26  Jim Meyering  <meyering@lucent.com>
18602
18603         * m4/jm-macros.m4 (jm_MACROS): Require autoconf-2.52g.
18604         * m4/strnlen.m4: Remove file, now that it's part of autoconf.
18605
18606 2002-01-26  Jim Meyering  <meyering@lucent.com>
18607
18608         * lib/Makefile.am (getdate$U.o): Depend on unlocked-io.h.
18609
18610 2002-01-22  Paul Eggert  <eggert@twinsun.com>
18611
18612         * m4/jm-macros.m4 (jm_MACROS): Require AC_FUNC_FSEEKO.
18613
18614 2002-01-22  Jim Meyering  <meyering@lucent.com>
18615
18616         * lib/Makefile.am (Makefile): Don't depend on $(BUILT_SOURCES).
18617         Otherwise, some versions of automake would omit the rule that makes
18618         Makefile from Makefile.in.
18619
18620 2002-01-21  Paul Eggert  <eggert@twinsun.com>
18621
18622         * lib/xmemcoll.h, xmemcoll.c: New files.
18623         * lib/Makefile.am (libfetish_a_SOURCES): Add them.
18624         * lib/memcoll.c: Include errno.h, and declare errno if not defined.
18625         (memcoll): Set errno to zero if there is no error.
18626
18627         * lib/quotearg.c (quotearg_buffer_restyled):
18628         Fix bug with quoting buffers containing NUL when backslashing escapes.
18629         This bug was exposed by the other changes in this patch.
18630         (quotearg_n_options): New arg ARGSIZE.
18631         All callers changed.
18632         (quoting_options_from_style): New function.
18633         (quotearg_n_style): Use it.
18634         (quotearg_n_style_mem): New function.
18635
18636         * lib/quotearg.h (quotearg_n_style_mem): New function.
18637
18638 2002-01-19  Jim Meyering  <meyering@lucent.com>
18639
18640         * m4/jm-macros.m4 (jm_MACROS): Use AC_FUNC_STRNLEN.
18641         Remove useless quotes: DF_PROG="df".
18642         * m4/strnlen.m4: New file.
18643
18644 2002-01-16  Paul Eggert  <eggert@twinsun.com>
18645
18646         * lib/backupfile.c (ISDIGIT): Comment fix.
18647         * lib/getdate.y (ISDIGIT): Likewise.
18648         * lib/posixtm.c (ISDIGIT, year): Likewise.
18649         * lib/strverscmp.c (ISDIGIT): Likewise.
18650         * lib/userspec.c (ISDIGIT): Likewise.
18651
18652 2002-01-16  Jim Meyering  <meyering@lucent.com>
18653
18654         * lib/getdate.y: Add three semicolons, each just before a closing
18655         brace. Bison (as of version 1.31) no longer papers over that mistake.
18656
18657 2002-01-05  Jim Meyering  <meyering@lucent.com>
18658
18659         * lib/version-etc.c (version_etc_copyright): Update copyright year.
18660
18661 2001-12-19  Paul Eggert  <eggert@twinsun.com>
18662
18663         * lib/closeout.c (close_stdout_status): If ferror (stdout), do
18664         not silently exit merely because the output buffer happens to
18665         have nothing pending.
18666
18667 2001-12-18  Paul Eggert  <eggert@twinsun.com>
18668
18669         See the big note in ../ChangeLog.
18670         * lib/human.c (suffixes): Prefer K to k for 1024.
18671         (generate_suffix_backwards): New function.
18672         (human_readable_inexact): Use it.
18673         * lib/xstrtol.c (__xstrtol): If there is no number but there
18674         is a valid suffix, assume 1.  "MB" now means decimal, "MiB" binary.
18675         Accept 'K' as well as 'k'.
18676
18677 2001-12-15  Jim Meyering  <meyering@lucent.com>
18678
18679         * lib/regex.h (__restrict_arr): Update from libc.
18680
18681         * lib/mountlist.h (ME_REMOTE): Recognize file systems of type smbfs
18682         as `remote' if the name starts with `//'.  Suggested by Michael Stone.
18683         (STREQ): Define.
18684
18685 2001-12-14  Jim Meyering  <meyering@lucent.com>
18686
18687         * m4/jm-macros.m4 (jm_MACROS): Check for iswspace.
18688         Suggestion from Bruno Haible.
18689
18690 2001-12-10  Jim Meyering  <meyering@lucent.com>
18691
18692         * lib/linebuffer.c: Remove explicit declarations of xmalloc and
18693         xrealloc, Instead, include "xalloc.h".
18694         (initbuffer): Don't cast xmalloc return value to char*.
18695         (readline): Reword comment.
18696         Don't cast xrealloc return value to char*
18697         Return NULL, not 0.
18698
18699 2001-12-09  Jim Meyering  <meyering@lucent.com>
18700
18701         * lib/modechange.c (mode_compile): Add cast to avoid pedantic warning
18702         about `signed and unsigned type in conditional expression'.
18703         * lib/posixtm.c (posix_time_parse): Likewise.
18704
18705         * lib/xreadlink.c (xreadlink): Add cast to avoid a pedantic warning.
18706
18707         * lib/readtokens.c (readtoken): Declare an index to be of type unsigned
18708         to avoid a pedantic warning.
18709
18710         * lib/getstr.c: Don't include assert.h.
18711         (getstr): Remove warning-evoking assertions.
18712         Return -1 if offset parameter is out of bounds.
18713         Change the type of a local from int to size_t.
18714
18715         * lib/strftime.c (my_strftime_localtime_r): Include this function
18716         definition in the `#if ! HAVE_TM_GMTOFF' block.
18717
18718         * lib/xgethostname.c: Remove declarations of xmalloc and xrealloc.
18719         Include xalloc.h instead.
18720
18721 2001-12-02  Jim Meyering  <meyering@lucent.com>
18722
18723         * lib/tempname.c: Don't declare getenv, thus reverting the change of
18724         2001-11-18.  It's no longer necessary, now that stdlib.h is always
18725         included.
18726
18727         * lib/regex.c [!__BOUNDED_POINTERS__]: Define away __bounded,
18728         __unbounded, and __ptrvalue.  Reported by Uwe H. Steinfeld.
18729
18730 2001-11-30  Akim Demaille  <akim@epita.fr>
18731
18732         * lib/xstrdup.c: Include xalloc.h, so that xstrdup is declared
18733         before being defined.
18734
18735 2001-11-27  Paul Eggert  <eggert@twinsun.com>
18736
18737         * lib/quotearg.h (quotearg_n, quotearg_n_style):
18738         First arg is int, not unsigned.
18739         * lib/quotearg.c (quotearg_n, quotearg_n_style): Likewise.
18740         (SIZE_MAX, UINT_MAX): New macros.
18741         (quotearg_n_options): Abort if N is negative.
18742         Avoid overflow check on hosts where size_t is 64 bits and int
18743         is 32 bits, as overflow is impossible there.
18744         Fix off-by-one typo that caused unnecessary reallocation.
18745
18746 2001-11-27  Jim Meyering  <meyering@lucent.com>
18747
18748         * lib/tempname.c: Merge with version from libc.
18749         * lib/regex.c: Likewise.
18750
18751         * lib/tempname.c: Include stdlib.h unconditionally.  On some old
18752         systems for which STDC_HEADERS is 0, it was not included, resulting in
18753         a warning about an integer-to-pointer conversion problem with getenv.
18754         Reported by Volker Borchert.
18755
18756 2001-11-26  Jim Meyering  <meyering@lucent.com>
18757
18758         * lib/gtod.h: Remove file.
18759         * lib/Makefile.am (libfetish_a_SOURCES): Remove gtod.h.
18760         * lib/gettimeofday.c: Don't include gtod.h.
18761         (GTOD_init): Remove function.
18762         (rpl_gettimeofday): Do its job here instead, rather than aborting.
18763         Suggestion from Volker Borchert.
18764
18765 2001-11-23  Jim Meyering  <meyering@lucent.com>
18766
18767         * lib/hash.h (struct hash_table): Don't define here.  Merely declare
18768         it.
18769         * lib/hash.c (struct hash_table): Define it here instead.
18770
18771 2001-11-22  Jim Meyering  <meyering@lucent.com>
18772
18773         * lib/hash.h: Bracket contents of file with #ifndef HASH_H_ ... #endif.
18774
18775 2001-11-20  Jim Meyering  <meyering@lucent.com>
18776
18777         * m4/mkstemp.m4 (UTILS_FUNC_MKSTEMP): Update comment to reflect that
18778         SunOS 4.1.4 and Solaris 2.5.1 lose, too.
18779
18780 2001-11-19  Jim Meyering  <meyering@lucent.com>
18781
18782         * m4/mkstemp.m4 (UTILS_FUNC_MKSTEMP): Don't bother with a temporary
18783         directory.  Use "conftestXXXXXX" as the template.
18784         Suggestion from Paul Eggert.
18785
18786         * m4/mkstemp.m4 (UTILS_FUNC_MKSTEMP): Close each descriptor
18787         immediately, so the test doesn't mistakenly hit the max-open-files
18788         limit.
18789
18790 2001-11-18  Paul Eggert  <eggert@twinsun.com>
18791
18792         * lib/tempname.c (TMP_MAX): Remove; no longer needed.
18793         (TEMPORARIES): New macro.
18794         (__gen_tempname): Use TEMPORARIES rather than TMP_MAX.  This
18795         removes an artificial limitation (e.g. HP-UX 10.20, where
18796         TMP_MAX is 17576).
18797
18798 2001-11-18  Jim Meyering  <meyering@lucent.com>
18799
18800         * m4/prereq.m4 (jm_PREREQ_TEMPNAME): Check for declaration of getenv.
18801
18802 2001-11-18  Jim Meyering  <meyering@lucent.com>
18803
18804         * lib/tempname.c [!HAVE_DECL_GETENV]: Declare getenv to avoid warning
18805         on SunOS 4.
18806
18807         * lib/Makefile.am (Makefile): Depend on $(BUILT_SOURCES), so those
18808         files will be created before anything else.
18809
18810 2001-11-17 Paul Eggert  <eggert@twinsun.com>
18811
18812         * m4/jm-winsz1.m4 (jm_WINSIZE_IN_PTEM): Do not define
18813         WINSIZE_IN_PTEM if <termios.h> defines struct winsize.
18814
18815 2001-11-17  Jim Meyering  <meyering@lucent.com>
18816
18817         * m4/mkstemp.m4 (UTILS_FUNC_MKSTEMP): New file and macro.
18818         Prompted by a report from Bob Proulx.
18819
18820         * m4/jm-macros.m4 (jm_MACROS): Don't test for mkstemp here.
18821         Instead, require UTILS_FUNC_MKSTEMP.
18822
18823 2001-11-17  Jim Meyering  <meyering@lucent.com>
18824
18825         * m4/jm-macros.m4 (jm_MACROS): Remove code to set POW_LIBM.
18826         Now, that's done as part of AC_FUNC_STRTOD.
18827
18828 2001-11-17  Jim Meyering  <meyering@lucent.com>
18829
18830         * lib/modechange.c (mode_adjust): Fix error introduced on 1999-04-26
18831         that made e.g., `chmod a=,o=w,g=o F' cause F to be group readable
18832         rather than group writable.  Patch by Juan F. Codagnone.
18833
18834         * lib/readtokens.c: Remove explicit declarations of xmalloc and
18835         xrealloc, Instead, include "xalloc.h".
18836
18837         * lib/mountlist.c: Include unlocked-io.h after all system headers.
18838         Remove explicit declarations of xmalloc, xrealloc,
18839         and xstrdup.  Instead, include "xalloc.h".
18840
18841         * lib/argmatch.c, closeout.c, error.c, exclude.c: Include
18842         unlocked-io.h.
18843         * lib/fatal.c, getdate.y, getpass.c, getstr.c, getusershell.c:
18844         Likewise.
18845         * lib/mountlist.c, posixtm.c, readtokens.c, readutmp.c: Likewise.
18846
18847         * lib/regex.c, sha.c, version-etc.c, yesno.c: Likewise.
18848         Reported by Padraig Brady.
18849
18850         * lib/mkstemp.c: #undef mkstemp.
18851         Include config.h.
18852         (rpl_mkstemp): Rename from mkstemp.
18853         Protoize.
18854
18855 2001-11-16  Jim Meyering  <meyering@lucent.com>
18856
18857         * lib/physmem.c [HAVE_SYS_PSTAT_H]: Include <sys/pstat.h>.
18858         (physmem_total) [HAVE_PSTAT_GETSTATIC]: If sysconf couldn't be used to
18859         determine the amount of total physical memory, use pstat_getstatic.
18860         HPUX-11 doesn't define _SC_PHYS_PAGES.
18861         (physmem_available) [HAVE_PSTAT_GETSTATIC && HAVE_PSTAT_GETDYNAMIC]:
18862         If sysconf couldn't be used to determine the amount of available
18863         physical memory, use both pstat_getstatic and pstat_getdynamic.
18864         Based on a patch from Bob Proulx.
18865
18866 2001-11-10  Jim Meyering  <meyering@lucent.com>
18867
18868         * m4/prereq.m4 (jm_PREREQ_PHYSMEM): New function.
18869         (jm_PREREQ): Use it.
18870
18871 2001-11-09  Jim Meyering  <meyering@lucent.com>
18872
18873         * m4/jm-macros.m4: Require autoconf-2.52f.
18874         (AC_FUNC_ERROR_AT_LINE, AC_FUNC_OBSTACK, AC_FUNC_STRTOD):
18875         Use these AC_-prefixed names, not the AM_-prefixed ones.
18876
18877         * m4/afs.m4 (jm_AFS): Quote the body.  Patch by Akim Demaille.
18878
18879 2001-11-05  Jim Meyering  <meyering@lucent.com>
18880
18881         * lib/xstat.in (slash_aware_lstat): Correct a misleading comment.
18882
18883 2001-11-04  Jim Meyering  <meyering@lucent.com>
18884
18885         * m4/fpending.m4: Remove unused cruft that saved, set, and restored
18886         $DEFS.
18887
18888 2001-11-03  Jim Meyering  <meyering@lucent.com>
18889
18890         * m4/jm-glibc-io.m4n (jm_FUNC_GLIBC_UNLOCKED_IO): Quote first arg
18891         of AC_DEFUN.
18892
18893         * m4/dirfd.m4 (UTILS_FUNC_DIRFD): Rework so dirfd.c doesn't have to
18894         know the name of the variable in the macro definition.
18895
18896 2001-11-03  Jim Meyering  <meyering@lucent.com>
18897
18898         * lib/argmatch.h (ARGMATCH_TO_ARGUMENT): Remove casts of first two args
18899         in argmatch_to_argument call.
18900
18901         * lib/dirfd.c (dirfd): Reflect the fact that DIR_TO_FD now takes an
18902         argument.
18903
18904         * lib/hash.c (hash_clear): Fix a bug that could lead to an infloop or
18905         e.g., a fault due to an attempt to free a NULL pointer.
18906
18907 2001-11-01  Jim Meyering  <meyering@lucent.com>
18908
18909         * m4/dirfd.m4 (UTILS_FUNC_DIRFD): New macro.
18910         * m4/jm-macros.m4 (jm_MACROS): Require UTILS_FUNC_DIRFD.
18911
18912 2001-11-01  Jim Meyering  <meyering@lucent.com>
18913
18914         * lib/dirfd.c, dirfd.h: New files.
18915         * lib/Makefile.am (libfetish_a_SOURCES): Add dirfd.h.
18916
18917         * lib/hash.c (hash_print) [TESTING]: Clean up.
18918
18919 2001-10-22  Paul Eggert  <eggert@twinsun.com>
18920
18921         * lib/hard-locale.c (alloca): Define to __builtin_alloca if __GNUC__,
18922         to avoid a warning if -Wall.
18923
18924 2001-10-22  Jeff Bailey  <jbailey@outpost.dnsalias.org>
18925
18926         * README: New file
18927         * doc/*: Add COPYING, COPYING.LIB, COPYING.DOC, fdl.texi
18928         (per RMS's instructions, this is now the canonical source)
18929         * lgpl/, gpl/: New directories.
18930
18931 2001-10-21  Paul Eggert  <eggert@twinsun.com>
18932
18933         * lib/regex.c (uintptr_t): Remove macro and decl; it's config.h's job.
18934
18935 2001-10-21  Jim Meyering  <meyering@lucent.com>
18936
18937         * lib/obstack.c (_): Honor the setting of ENABLE_NLS.  Otherwise,
18938         this code would end up calling gettext even in packages built
18939         with --disable-nls.
18940         * lib/getopt.c (_): Likewise.
18941         * lib/regex.c (_): Likewise.
18942
18943 2001-10-20  Paul Eggert  <eggert@twinsun.com>
18944
18945         * m4/error.m4 (jm_PREREQ_ERROR):
18946         Do not invoke AC_CHECK_FUNCS with strerror_r, as
18947         AC_FUNC_STRERROR_R does that.
18948         Check for strerror declaration.
18949
18950         * m4/strerror_r.m4: Add copyright notice, as nontrivial m4 files
18951         are supposed to have them these days.
18952         (AC_FUNC_STRERROR_R): Always do char* test, so that it gets cached.
18953         Merge changes from latest Autoconf CVS.
18954         Rename ac_cv_func_strerror_r_works to ac_cv_func_strerror_r_char_p,
18955         and rename HAVE_WORKING_STRERROR_R to STRERROR_R_CHAR_P, since
18956         POSIX decided to standardize on the int flavor of strerror_r.
18957
18958 2001-10-20  Paul Eggert  <eggert@twinsun.com>
18959
18960         * lib/error.c (strerror_r): Do not declare unless !_LIBC.
18961         Do not check for HAVE_DECL_STRERROR_R missing unless STRERROR_R_CHAR_P.
18962         Use strerror_r that is only a macro, even if it is not a function.
18963         (strerror): Check for HAVE_DECL_STRERROR before declaring.
18964         (private_strerror): Use prototypes, not old-style function definition.
18965         (print_errno_message): New function.
18966         Support the POSIX 'int'-flavored strerror_r, as well as the traditional
18967         char*-flavored one.
18968         (error_tail, error, error_at_line): Use it.
18969
18970 2001-10-11  Jim Meyering  <meyering@lucent.com>
18971
18972         * lib/argmatch.c (argmatch_invalid): Use quotearg_n_style (0, ...
18973         and quote_n (1, ... to avoid clobbering a buffer.
18974
18975 2001-10-05  Jim Meyering  <meyering@lucent.com>
18976
18977         * lib/Makefile.am: (libfetish_a_SOURCES): Add hash-pjw.c and
18978         hash-pjw.h.
18979         * lib/hash-pjw.c: New file (factored out of fileutils' remove.c).
18980         * lib/hash-pjw.h: New file.
18981
18982 2001-09-30  Jim Meyering  <meyering@lucent.com>
18983
18984         * m4/ls-mntd-fs.m4 (jm_LIST_MOUNTED_FILESYSTEMS): See if
18985         `struct fsstat' has the `f_fstypename' member.
18986         Use that to define FS_TYPE, which is now used to make
18987         the getfsstat link test tighter.
18988
18989 2001-09-30  Jim Meyering  <meyering@lucent.com>
18990
18991         * lib/mountlist.c [MOUNTED_GETFSSTAT]:
18992         Include <sys/ucred.h>, for Apple Darwin.
18993         Include sys/mount.h and sys/fs_types.h only if available.
18994         (FS_TYPE): Define.
18995         (read_filesystem_list): Use FS_TYPE.
18996
18997 2001-09-29  Paul Eggert  <eggert@twinsun.com>
18998
18999         * lib/exclude.c (excluded_filename): 0 -> false, since it's
19000         a boolean context.
19001
19002 2001-09-29  Jim Meyering  <meyering@lucent.com>
19003
19004         * m4/ls-mntd-fs.m4 (jm_LIST_MOUNTED_FILESYSTEMS)
19005         [one-argument getmntent function]): Include stdio.h before mntent.h.
19006         SunOS 4.1.x needs it for the declaration of `FILE'.
19007         Patch by Volker Borchert.
19008
19009         * m4/ls-mntd-fs.m4 (jm_LIST_MOUNTED_FILESYSTEMS)
19010         Check for these headers: sys/param.h sys/ucred.h sys/mount.h
19011         sys/fs_types.h, and make the link-test for getfsstat guard #include
19012         directives with appropriate #if HAVE_*_H tests so that we can
19013         detect getfsstat on Apple Darwin1.3.7 systems.
19014         Reported by Nelson Beebe.
19015         Fix harmless typo in cache variable name: s/getsstat/getfsstat/.
19016
19017 2001-09-28  Paul Eggert  <eggert@twinsun.com>
19018
19019         Fix bug reported by Petter Reinholdtsen for HP-UX 10.20, which
19020         #defines strtoimax.  Also treat the other strto* functions
19021         like strtoimax.
19022
19023         * m4/xstrtoimax.m4 (jm_AC_PREREQ_XSTRTOIMAX):
19024         Check for strtoul and strtoumax,
19025         as those declarations are made even in the signed case.
19026         * m4/xstrtoumax.m4 (jm_AC_PREREQ_XSTRTOUMAX):
19027         Likewise, for strtol and strtoimax.
19028
19029 2001-09-28  Paul Eggert  <eggert@twinsun.com>
19030
19031         Fix bug reported by Petter Reinholdtsen for HP-UX 10.20, which
19032         #defines strtoimax.  Also treat the other strto* functions
19033         like strtoimax.
19034
19035         * lib/xstrtol.c (strtol): Do not declare if HAVE_DECL_STRTOL.
19036         (strtoul): Do not declare if HAVE_DECL_STRTOUL.
19037         (strtoimax, strtoumax): Do not declare if already defined as a macro.
19038
19039 2001-09-26  Jim Meyering  <meyering@lucent.com>
19040
19041         Most macros in unlocked-io.h had the wrong number of arguments.
19042         * lib/gen-uio: New script.
19043         (USE_UNLOCKED_IO): Define to 1 if not already defined.
19044         * lib/unlocked-io.hin: Remove file.
19045         * lib/Makefile.am (unlocked-io.h): Rewrite to use a separate script,
19046         rather than trying to embed it here.
19047         (EXTRA_DIST): Add gen-uio.  Remove unlocked-io.hin
19048         Reported by Padraig Brady.
19049
19050 2001-09-25  Volker Borchert  <bt@teknon.de>
19051
19052         * lib/gettimeofday.c (rpl_gettimeofday): Declare local variable
19053         `result'.
19054
19055 2001-09-24  Jim Meyering  <meyering@lucent.com>
19056
19057         * m4/gettext.m4: Use the version from gettext-0.10.40, not CVS.
19058
19059 2001-09-23  Jim Meyering  <meyering@lucent.com>
19060
19061         * m4/ls-mntd-fs.m4 (jm_LIST_MOUNTED_FILESYSTEMS): Add a compile-test
19062         instead of the mere test for existence of mntent.h.  The latter
19063         would get a false-positive on AIX 3.4 systems.
19064         In the outer getmntent if-block, don't die if neither of the getmntent
19065         tests succeeds.  Instead, just fall through and continue with the
19066         remaining tests.
19067
19068 2001-09-23  Jim Meyering  <meyering@lucent.com>
19069
19070         * lib/mountlist.c: Remove useless parentheses in #if directives.
19071         (MOUNTED) [!defined MOUNTED]: Define to _PATH_MOUNTED, for when
19072         the deprecated MOUNTED symbol is no longer defined in mntent.h.
19073
19074 2001-09-22  Jim Meyering  <meyering@lucent.com>
19075
19076         * m4/gettext.m4: New file.  From gettext.
19077         * m4/lcmessage.m4: Sync with gettext -- this changes only comments.
19078         * m4/progtest.m4: Likewise
19079         * m4/isc-posix.m4: Decrement serial number to sync with gettext.
19080         * m4/glibc21.m4: Likewise.
19081
19082         * m4/libintl.m4: Remove.  No longer used.
19083
19084 2001-09-22  Jim Meyering  <meyering@lucent.com>
19085
19086         * lib/localcharset.c: Update from latest gettext.
19087         * lib/config.charset: Likewise.
19088
19089 2001-09-20  Jim Meyering  <meyering@lucent.com>
19090
19091         * m4/xstrtoimax.m4 (jm_AC_PREREQ_XSTRTOIMAX): Check for declaration of
19092         strtoimax.
19093         * m4/xstrtoumax.m4 (jm_AC_PREREQ_XSTRTOUMAX): Check for declaration of
19094         strtoumax.
19095
19096 2001-09-20  Jim Meyering  <meyering@lucent.com>
19097
19098         * lib/xstrtol.c (strtoimax): Guard declaration with
19099         `#if !HAVE_DECL_STRTOIMAX', rather than just `#ifndef strtoimax'.
19100         The latter fails because some systems (at least rs6000-ibm-aix4.3.3.0)
19101         have their own, conflicting declaration of strtoimax in sys/inttypes.h.
19102         (strtoumax): Likewise, for completeness (it wasn't necessary).
19103
19104 2001-09-17  Paul Eggert  <eggert@twinsun.com>
19105
19106         * lib/strtoimax.c (HAVE_LONG_LONG):
19107         Redefine to HAVE_UNSIGNED_LONG_LONG if unsigned.
19108         (strtoimax): Use sizeof (long), not sizeof strtol (ptr, endptr, base),
19109         to work around bug in IBM C compiler.
19110
19111 2001-09-17  Jim Meyering  <meyering@lucent.com>
19112
19113         * m4/chown.m4, fstypename.m4, getgroups.m4, gettimeofday.m4,
19114         * m4/jm-mktime.m4, lstat.m4, malloc.m4, memcmp.m4, mkdir-slash.m4,
19115         * m4/nanosleep.m4, putenv.m4, readdir.m4, realloc.m4, rename.m4,
19116         * m4/st_dm_mode.m4, stat.m4, strerror_r.m4, timespec.m4, utimbuf.m4,
19117         * m4/utimes.m4: Use AC_DEFINE rather than AC_DEFINE_UNQUOTED,
19118         whenever the right hand side need not be expanded by the shell.
19119
19120 2001-09-16  Paul Eggert  <eggert@twinsun.com>
19121
19122         * m4/fnmatch.m4 (jm_FUNC_FNMATCH): Remove test for GNU C
19123         library.  It's not correct, as some older glibcs are buggy.
19124         fnmatch wasn't fixed until glibc 2.2.
19125
19126         Use AC_DEFINE, not AC_DEFINE_UNQUOTED, as there's no
19127         special shell magic here.
19128
19129 2001-09-16  Jim Meyering  <meyering@lucent.com>
19130
19131         * m4/mkdir-slash.m4 (UTILS_FUNC_MKDIR_TRAILING_SLASH): New file/macro.
19132         * m4/jm-macros.m4: Require it.
19133
19134 2001-09-16  Jim Meyering  <meyering@lucent.com>
19135
19136         * lib/mkdir.c: New file.
19137
19138 2001-09-15  Jim Meyering  <meyering@lucent.com>
19139
19140         * m4/jm-macros.m4: Check for help2man.
19141
19142 2001-09-11  Jim Meyering  <meyering@lucent.com>
19143
19144         * m4/host-os.m4 (UTILS_HOST_OS): New file/macro.
19145         The body, by Paul Eggert, was moved here from configure.in.
19146         * m4/jm-macros.m4: Require UTILS_HOST_OS.
19147
19148 2001-09-04  Paul Eggert  <eggert@twinsun.com>
19149
19150         * m4/prereq.m4 (jm_PREREQ_XREADLINK): New macro.
19151         (jm_PREREQ): Use it.
19152
19153 2001-09-04  Paul Eggert  <eggert@twinsun.com>
19154
19155         * lib/xreadlink.c (xreadlink): Omit size_t* arg.  All uses changed.
19156         Use ssize_t, not int, to store result of readlink.
19157         Check for ssize_t overflow as well as size_t overflow,
19158         as POSIX says the result of readlink is implementation-defined
19159         when ssize_t overflows.
19160         Remove unnecessary cast to char*.
19161         Use free+malloc instead of realloc, as the storage doesn't need
19162         to be preserved and it's clearer and can be more efficient that way.
19163         (SIZE_MAX, SSIZE_MAX): New macros, if <limits.h> doesn't declare.
19164         * lib/xreadlink.h (xreadlink): Update prototype.
19165
19166 2001-09-04  Paul Eggert  <eggert@twinsun.com>
19167
19168         * lib/xgetcwd.c: Revert some of the previous change; intead,
19169         fix the HAVE_GETCWD_NULL code to behave more like the
19170         !HAVE_GETCWD_NULL code used to.
19171
19172         Include "xalloc.h".
19173         (xgetcwd): Do not return NULL when memory is exhausted; instead,
19174         invoke xalloc_die.
19175
19176 2001-09-03  Paul Eggert  <eggert@twinsun.com>
19177
19178         * m4/prereq.m4 (jm_PREREQ_XGETCWD): Check for limits.h and
19179         sys/param.h, as pathmax.h includes them.
19180
19181 2001-09-03  Paul Eggert  <eggert@twinsun.com>
19182
19183         * m4/prereq.m4 (jm_PREREQ): Add jm_PREREQ_XGETCWD.
19184         (jm_PREREQ_XGETCWD): New macro.
19185
19186         * m4/getcwd.m4: New file.
19187
19188 2001-09-03  Paul Eggert  <eggert@twinsun.com>
19189
19190         * lib/xgetcwd.c: Fix the !HAVE_GETCWD_NULL code to behave more
19191         like the HAVE_GETCWD_NULL code.
19192         Include pathmax.h if not HAVE_GETCWD.
19193         Do not include xalloc.h.
19194         (INITIAL_BUFFER_SIZE): New symbol.
19195         Do not use xmalloc / xrealloc, since the caller is responsible for
19196         handling errors.  Preserve errno around `free' during failure.
19197         Do not overrun buffer when using getwd.
19198
19199 2001-09-03  Paul Eggert  <eggert@twinsun.com>
19200
19201         * lib/xgetcwd.c (xgetcwd): Use HAVE_GETCWD_NULL, not (defined
19202         __GLIBC__ && __GLIBC__ >= 2), to decide whether to use
19203         getcwd (NULL, 0).
19204
19205 2001-09-03  Paul Eggert  <eggert@twinsun.com>
19206
19207         * lib/exclude.c (fnmatch_no_wildcards): Fix confusion between
19208         usage of FNM_CASEFOLD and FNM_LEADING_DIR.  The bug was
19209         spotted by Jim Meyering.
19210
19211 2001-09-03  Jim Meyering  <meyering@lucent.com>
19212
19213         * lib/xreadlink.c (xreadlink): Preserve errno around `free' during
19214         failure.
19215
19216 2001-09-02  Jim Meyering  <meyering@lucent.com>
19217
19218         * lib/error.c: Update from GNU libc.
19219
19220 2001-09-01  Jim Meyering  <meyering@lucent.com>
19221
19222         * m4/jm-macros.m4 (jm_MACROS): Check for canonicalize_file_name.
19223         Used by df.
19224
19225 2001-09-01  Jim Meyering  <meyering@lucent.com>
19226
19227         * lib/xreadlink.c: New file.
19228         * lib/xreadlink.h: New file.
19229         * lib/Makefile.am (libfetish_a_SOURCES): Add xreadlink.c and
19230         xreadlink.h.
19231
19232         * lib/regex.c (uintptr_t) [!_LIBC]: Define to private_uintptr_t, so it
19233         doesn't conflict with sparc Solaris 7's definition in
19234         /usr/include/sys/int_types.h.
19235
19236         * lib/exclude.c: Use `""', not `<>' to #include non-system header
19237         files.
19238         (fnmatch_no_wildcards): Rewrite not to use function names, strcasecmp
19239         and strncasecmp as r-values.  Unixware didn't have declarations.
19240
19241 2001-08-31  Paul Eggert  <eggert@twinsun.com>
19242
19243         * lib/xstrtol.h: Add copyright notice.
19244         (_DECLARE_XSTRTOL): Improve quality of diagnostic for
19245         LONGINT_INVALID_SUFFIX_CHAR.
19246
19247 2001-08-31  Paul Eggert  <eggert@twinsun.com>
19248
19249         * lib/xstrtol.c (strtoimax): New decl.
19250
19251 2001-08-31  Paul Eggert  <eggert@twinsun.com>
19252
19253         * lib/xgetcwd.c: Don't include pathmax.h.
19254         Include stdlib.h and unistd.h if available.
19255         Include xalloc.h.
19256         (xmalloc, xstrdup, free): Remove decls.
19257         (xgetcwd): Don't assume sizes fit in unsigned.
19258         Check for overflow when computing sizes.
19259         Simplify reallocation code.
19260
19261 2001-08-31  Paul Eggert  <eggert@twinsun.com>
19262
19263         * lib/savedir.c (savedir): Remove size parameter, as POSIX says that
19264         a directory's st_size can have an arbitrary value, so the old
19265         usage could waste an arbitrary amount of memory.  All uses
19266         changed.
19267         * lib/savedir.h: Update prototype.
19268
19269 2001-08-31  Paul Eggert  <eggert@twinsun.com>
19270
19271         * lib/Makefile.am (libfetish_a_SOURCES): Remove strtoxmax.c.
19272
19273         * lib/strtoimax.c: Renamed from strtoxmax.c, removing the
19274         old strtoimax.c.
19275
19276         Also, make the following further changes to make this file's
19277         configuration more similar to that of strtol.c:
19278         (UNSIGNED): Renamed from STRTOUXMAX_UNSIGNED.  All uses changed.
19279         (strtoumax, uintmax_t, strtoull, strtol): Remove.
19280         (intmax_t, strtoimax, strtol, strtoll): New macros, if UNSIGNED.
19281         (strtoimax): Renamed from strtoumax.  All uses of unsigned values
19282         changed to signed values.
19283
19284         And make the following changes as well:
19285         Fix copyright notice, as 1999 was missing.
19286         (verify): New macro.
19287         (strtoimax): Check sizes at compile-time, not run-time.
19288         Prefer strtol to strtoll if both work.
19289         (main): Remove; it was not that useful and was a pain to maintain.
19290
19291         * lib/strtoumax.c: Include strtoimax.c, not strtouxmax.c.
19292
19293 2001-08-31  Jim Meyering  <meyering@lucent.com>
19294
19295         * lib/xgetcwd.c (xgetcwd): Reorganize to avoid some duplication.
19296         Use an initial, malloc'd, buffer of length 128 rather than
19297         a statically allocated one of length 1024.
19298
19299 2001-08-30  Paul Eggert  <eggert@twinsun.com>
19300
19301         Simplify code, partly by assuming autoconf 2.52 semantics.
19302
19303         * m4/Makefile.am (EXTRA_DIST): Remove uintmax_t.m4.
19304
19305         * m4/inttypes.m4 (AC_PREREQ): Bump to 2.52.
19306         (jm_AC_HEADER_INTTYPES_H): Remove; now done by autoconf in 2.52.
19307         All uses removed.
19308         (jm_AC_TYPE_INTMAX_T, jm_AC_TYPE_UINTMAX_T):
19309         Move AC_REQUIRE to next-to-top level, to avoid confusion.
19310         Use 2.52's AC_CHECK_TYPE instead of merely looking for the header.
19311         * m4/prereq.m4 (jm_PREREQ_HUMAN): Don't require
19312         jm_AC_HEADER_INTTYPES_H.
19313         * m4/jm-macros.m4 (jm_MACROS): Likewise.
19314
19315         * m4/uintmax_t.m4: Remove, as it duplicates inttypes.m4.
19316
19317         * m4/xstrtoimax.m4 (jm_AC_PREREQ_XSTRTOIMAX):
19318         Quote first arg of AC_DEFUN.
19319         Require jm_AC_TYPE_UINTMAX_T and jm_AC_TYPE_UNSIGNED_LONG_LONG
19320         since they are needed to parse the include file even if we need
19321         only xstrtoimax.  Simplify logic behind the args to AC_REPLACE.
19322         * m4/xstrtoumax.m4 (jm_AC_PREREQ_XSTRTOUMAX): Likewise,
19323         but with opposite signedness.
19324
19325 2001-08-30  Paul Eggert  <eggert@twinsun.com>
19326
19327         Merge 'exclude' changes from tar 1.13.22.
19328         This fixes one or two unlikely storage allocation overflow bugs,
19329         but doesn't change user-visible behavior otherwise.
19330
19331 2001-08-30  Paul Eggert  <eggert@twinsun.com>
19332
19333         * m4/prereq.m4 (jm_PREREQ): Add jm_PREREQ_EXCLUDE.
19334         (jm_PREREQ_EXCLUDE): New macro.
19335
19336 2001-08-30  Paul Eggert  <eggert@twinsun.com>
19337
19338         * lib/quotearg.c: BSD/OS 4.1 wchar.h requires FILE and struct
19339         tm to be declared.
19340
19341 2001-08-30  Paul Eggert  <eggert@twinsun.com>
19342
19343         * lib/hash.c: Remove '2001' from copyright notice.
19344
19345 2001-08-30  Paul Eggert  <eggert@twinsun.com>
19346
19347         * lib/full-write.h: New file.
19348         * lib/Makefile.am (libfetish_a_SOURCES): Add full-write.h.
19349         * lib/full-write.c: Correct credits, as cccp.c no longer
19350         exists and anyway it was so heavily changed from the old cccp
19351         code as to be unrecognizable.  Include full-write.h.
19352         (full_write) Return size_t, with short writes meaning failure.
19353         All callers changed.  This fixes a bug with large buffers
19354         on 64-bit hosts.
19355         * lib/utime.c: Include full-write.h.
19356
19357 2001-08-30  Paul Eggert  <eggert@twinsun.com>
19358
19359         * lib/exclude.c (bool): Declare, perhaps by including stdbool.h.
19360         (<sys/types.h>): Include only if HAVE_SYS_TYPES_H.
19361         (<stdlib.h>, <string.h>, <strings.h>, <inttypes.h>, <stdint.h>):
19362         Include if available.
19363         (<xalloc.h>): Include
19364         (SIZE_MAX): Define if <stdint.h> or <inttypes.h> doesn't.
19365         (verify): New macro.  Use it to verify that EXCLUDE macros do not
19366         collide with FNM macros.
19367         (struct patopts): New struct.
19368         (struct exclude): Use it, as exclude patterns now come with options.
19369         (new_exclude): Support above changes.
19370         (new_exclude, add_exclude_file):
19371         Initial size must now be a power of two to simplify overflow checking.
19372         (free_exclude, fnmatch_no_wildcards): New function.
19373         (excluded_filename): No longer requires options arg, as the options
19374         are determined by add_exclude.  Now returns bool, not int.
19375         (excluded_filename, add_exclude):
19376         Add support for the fancy new exclusion options.
19377         (add_exclude, add_exclude_file): Now takes int options arg.
19378         Check for arithmetic overflow when computing sizes.
19379         (add_exclude_file): xrealloc might modify errno, so don't
19380         realloc until after errno might be used.
19381
19382         * lib/exclude.h (EXCLUDE_ANCHORED, EXCLUDE_INCLUDE,EXCLUDE_WILDCARDS):
19383         New macros.
19384         (free_exclude): New decl.
19385         (add_exclude, add_exclude_file): Now takes int options arg.
19386         (excluded_filename): No longer requires options arg, as the options
19387         are determined by add_exclude.  Now returns bool, not int.
19388
19389 2001-08-30  Paul Eggert  <eggert@twinsun.com>
19390
19391         * lib/alloca.c (alloca): Arg is of type size_t, not unsigned.
19392
19393 2001-08-27  Jim Meyering  <meyering@lucent.com>
19394
19395         * lib/Makefile.am (libfetish_a_SOURCES): Add strtoxmax.c
19396
19397         * lib/version-etc.c (N_): Remove definition.
19398         Revert most of last change.
19399         Instead, simply don't mark the `Copyright...' string for translation.
19400         Based on advice from Paul Eggert.
19401
19402         * lib/strtoxmax.c: Tweak comment.
19403
19404 2001-08-26  Jim Meyering  <meyering@lucent.com>
19405
19406         * m4/jm-macros.m4: Require jm_AC_PREREQ_XSTRTOIMAX.
19407
19408         * m4/xstrtoimax.m4: New file.
19409         * m4/xstrtoumax.m4: Add comments explaining why we
19410         AC_REPLACE_FUNCS(strtol).
19411
19412 2001-08-26  Jim Meyering  <meyering@lucent.com>
19413
19414         * lib/version-etc.c (version_etc_copyright_fmt): Replace literal year
19415         of copyright with `%s' so translators don't get an untranslated
19416         message in 2002.
19417         (COPYRIGHT_YEAR): Define.
19418         (version_etc): Use fprintf rather than fputs.
19419         Suggestion from Ulrich Drepper.
19420
19421         * lib/Makefile.am (libfetish_a_SOURCES): Add xstrtoimax.c.
19422
19423         * lib/strtoll.c: New file, from GNU libc.
19424         * lib/xstrtoimax.c: New file.
19425
19426         * lib/xstrtol.h: Add xstrtoimax.
19427         * lib/strtoumax.c: New file.  Simply include "strtoumax.c".
19428         * lib/strtoimax.c: New file.  Likewise, but first define
19429         STRTOUXMAX_SIGNED.
19430
19431         * lib/strtoumax.c: Factor to work both for unsigned and signed types,
19432         ...
19433         * lib/strtoxmax.c: ... then renamed to this.
19434
19435 2001-08-18  Paul Eggert  <eggert@twinsun.com>
19436
19437         * m4/inttypes.m4: Add AC_PREREQ(2.13).
19438         (jm_AC_HEADER_INTTYPES_H): Test for intmax_t, too.
19439         (jm_AC_TYPE_INTMAX_T): New macro.
19440         (jm_AC_TYPE_UINTMAX_T): Moved here from uintmax_t.m4.
19441
19442         * m4/longlong.m4 (jm_AC_TYPE_LONG_LONG): New macro.
19443
19444         * m4/longlong.m4: Renamed from ulonglong.m4.
19445         * m4/inttypes.m4: Renamed from inttypes_h.m4.
19446         * m4/uintmax_t.m4: Removed.
19447
19448 2001-08-13  Paul Eggert  <eggert@twinsun.com>
19449
19450         * lib/Makefile.am (unlocked-io.h): Do not append "_unlocked" twice.
19451         Port to Solaris 8, where 'sed' requires a space after the 'r'
19452         command, and where sh dislikes "$/".  Clean up the spacing a bit.
19453         Redirect output to $tmp just once.
19454
19455 2001-08-12  Paul Eggert  <eggert@sic.twinsun.com>
19456
19457         * lib/addext.c (<errno.h>): Include.
19458         (errno): Declare if not defined.
19459         (addext): Work correctly when pathconf returns -1 and leaves
19460         errno alone because there is no limit.  Also, work even if
19461         pathconf returns a value greater than SIZE_MAX.
19462
19463 2001-08-12  Jim Meyering  <meyering@lucent.com>
19464
19465         * m4/afs.m4, assert.m4, bison.m4, check-decl.m4, chown.m4, d-ino.m4,
19466         d-type.m4, dos.m4, error.m4, fnmatch.m4, fpending.m4, fstypename.m4,
19467         fsusage.m4, ftruncate.m4, getgroups.m4, glibc.m4, gnu-source.m4,
19468         group-member.m4, jm-glibc-io.m4, jm-macros.m4, jm-mktime.m4,
19469         jm-winsz1.m4, jm-winsz2.m4, lchown.m4, lib-check.m4, libintl.m4,
19470         link-follow.m4, ls-mntd-fs.m4, lstat.m4, malloc.m4, mbrtowc.m4,
19471         mbstate_t.m4, mbswidth.m4, memcmp.m4, nanosleep.m4, perl.m4,
19472         prereq.m4, putenv.m4, readdir.m4, realloc.m4, regex.m4, rename.m4,
19473         rmdir-errno.m4, search-libs.m4, st_dm_mode.m4, st_mtim.m4, stat.m4,
19474         strftime.m4, timespec.m4, unlink-busy.m4, uptime.m4, utimbuf.m4,
19475         utime.m4, utimes.m4, xstrtoumax.m4:
19476         Quote the first argument in each use of AC_DEFUN.
19477
19478 2001-08-12  Jim Meyering  <meyering@lucent.com>
19479
19480         * lib/xgetcwd.c (xgetcwd) [defined __GLIBC__ && __GLIBC__ >= 2]:
19481         Simply `return getcwd (NULL, 0);'.
19482         [! (defined __GLIBC__ && __GLIBC__ >= 2)]:
19483         Use 1300 as initial value for length, not PATH_MAX.
19484
19485         * lib/pathmax.h: Clean up cpp syntax.
19486
19487 2001-08-12  Jim Meyering  <meyering@lucent.com>
19488
19489         * lib/gettimeofday.c: New file.
19490         * lib/gtod.h: New file.
19491         * lib/Makefile.am (libfetish_a_SOURCES): Add gtod.h.
19492
19493 2001-08-05  Jim Meyering  <meyering@lucent.com>
19494
19495         * m4/jm-macros.m4: Require autoconf-2.52.
19496
19497 2001-08-04  Jim Meyering  <meyering@lucent.com>
19498
19499         * lib/error.h (__attribute__): Remove `|| __STRICT_ANSI__' from #if
19500         stmt, to get in sync with glibc.
19501
19502 2001-08-03  Paul Eggert  <eggert@twinsun.com>
19503
19504         The following changes are from gettext 0.10.39 as maintained by
19505         Bruno Haible.
19506
19507         * lib/mbswidth.h (MBSW_REJECT_UNPRINTABLE, MBSW_REJECT_INVALID):
19508         Renamed from MBSW_ACCEPT_UNPRINTABLE and MBSW_ACCEPT_INVALID
19509         with inverted sense.  All uses changed.
19510
19511         * lib/mbswidth.c: Don't include <limits.h>.
19512         Include <stdlib.h> and <string.h> unconditionally.
19513         (iswcntrl, mbsinit, ISCNTRL): New macros.
19514         (mbsnwidth): Use K&R style function declarations.
19515         Don't bother checking for MB_LEN_MAX == 1, since the compiler
19516         can optimize it when MB_CUR_MAX == 1.
19517         The width of control characters is zero, not 1.
19518
19519 2001-08-03  Paul Eggert  <eggert@twinsun.com>
19520
19521         The following changes are from gettext 0.10.39 as maintained by
19522         Bruno Haible, except that getline.m4 continues to use AC_LIBOBJ.
19523
19524         * m4/codeset.m4: Upgrade to serial AM1.
19525         (AM_LANGINFO_CODESET): Renamed from jm_LANGINFO_CODESET;
19526         all uses changed.  Quote first arg of AC_DEFUN.
19527         (am_cv_langinfo_codeset): Renamed from jm_cv_langinfo_codeset.
19528
19529         * m4/iconv.m4: Upgrade to serial AM2.
19530         (AM_ICONV): Renamed from jm_ICONV; all uses changed.
19531         Add --with-libconv-prefix.
19532         Quote first arg of AC_DEFUN.  Add description for ICONV_CONST.
19533         (am_cv_func_iconv): Renamed from jm_cv_func_iconv.
19534         (am_cv_lib_iconv): Renamed from jm_cv_lib_iconv.
19535         (am_cv_proto_iconv): Renamed from jm_cv_proto_iconv.
19536         * m4/jm-macros.m4 (jm_MACROS): Reflect s/jm_/AM_/ renamings.
19537
19538         * m4/c-bs-a.m4 (AC_C_BACKSLASH_A): Quote first arg of AC_DEFUN.
19539         * m4/getline.m4 (AM_FUNC_GETLINE): Likewise.
19540         * m4/glibc21.m4 (jm_GLIBC21): Likewise.
19541         * m4/inttypes_h.m4 (jm_AC_HEADER_INTTYPES_H): Likewise.
19542         * m4/isc-posix.m4 (AC_ISC_POSIX): Likewise.
19543         * m4/lcmessage.m4 (AM_LC_MESSAGES): Likewise.
19544         * m4/progtest.m4 (AM_PATH_PROG_WITH_TEST): Likewise.
19545         * m4/uintmax_t.m4 (jm_AC_TYPE_UINTMAX_T): Likewise.
19546         * m4/ulonglong.m4 (jm_AC_TYPE_UNSIGNED_LONG_LONG): Likewise.
19547
19548         * m4/getline.m4 (AM_FUNC_GETLINE): Don't bother checking for
19549         string.h any more.
19550
19551         * m4/progtest.m4 (AM_PATH_PROG_WITH_TEST): If not found, print "no",
19552         not the default value.
19553
19554         2001-06-25  Bruno Haible  <haible@clisp.cons.org>
19555         * m4/mbswidth.m4 (jm_PREREQ_MBSWIDTH): Don't require AM_C_PROTOTYPES.
19556         Also check for mbsinit.  Needed for SCO 3.2v5.0.2.
19557         Also include <string.h>; this is where AIX 3.2.5 declares wcwidth.
19558         Also check for iswcntrl, used for wcwidth fallback.
19559         Use AC_TRY_COMPILE to emulate AC_CHECK_DECLS, for portability
19560         to Autoconf 2.13.
19561
19562 2001-08-03  Jim Meyering  <meyering@lucent.com>
19563
19564         * m4/mbrtowc.m4 (jm_FUNC_MBRTOWC): Use `#include', not `@%:@include',
19565         as it was in the original.  Reported by Paul Eggert.
19566
19567 2001-07-16  Jim Meyering  <meyering@lucent.com>
19568
19569         * m4/gettimeofday.m4: New file.
19570         Prompted by a report from Bernhard Baehr.
19571
19572 2001-07-15  Jim Meyering  <meyering@lucent.com>
19573
19574         * m4/Makefile.am.in (Makefile.am): Remove most of the unlocked-io.h
19575         stuff. Now it's in ../Makefile.cfg.
19576
19577 2001-07-15  Jim Meyering  <meyering@lucent.com>
19578
19579         * lib/Makefile.am (EXTRA_DIST): Add unlocked-io.hin.
19580         (BUILT_SOURCES): Add unlocked-io.h.
19581         (io_functions): Define.
19582         (unlocked-io.h): New rule.
19583         (DISTCLEANFILES): Add unlocked-io.h.
19584         (all-local): Depend on unlocked-io.h, to ensure it is created.
19585
19586         * lib/unlocked-io.hin: New file
19587
19588         * lib/regex.c: Update from glibc.
19589
19590 2001-07-05  Jim Meyering  <meyering@lucent.com>
19591
19592         * lib/Makefile.am (noinst_HEADERS): Remove definition, per new automake
19593         recommendation.
19594         (libfetish_a_SOURCES): Put all .h files here instead.
19595         Remove a thus-exposed (better checks in automake) duplicate and
19596         two unnecessary .h files.
19597
19598 2001-07-04  Jim Meyering  <meyering@lucent.com>
19599
19600         * m4/Makefile.am.in (glibc-io.struct): New target.  Rework the code
19601         that generates jm-glibc-io.m4 so that it doesn't trigger any make
19602         distcheck failure.
19603
19604 2001-07-02  Jim Meyering  <meyering@lucent.com>
19605
19606         The following changes were prompted by suggestions from Bruno Haible.
19607
19608         * m4/jm-glibc-io.m4n: New file, the template from which jm-glibc-io.m4
19609         is now generated.
19610         * m4/Makefile.am.in (Makefile.am): Include jm-glibc-io.m4n in emitted
19611         definition of EXTRA_DIST.
19612         (Makefile.am): Emit the dependency, `all-local: jm-glibc-io.m4' to
19613         ensure that the generated file is created/updated whenever the list
19614         of $(unlocked_functions) is changed.
19615         (jm-glibc-io.m4): New rule.
19616         (unlocked-io.h): New rule -- currently unused.
19617
19618 2001-06-24  Jim Meyering  <meyering@lucent.com>
19619
19620         * m4/regex.m4 (jm_INCLUDED_REGEX): Use a quadrigraph to represent an
19621         unmatched right bracket, rather than kludging it with an extra,
19622         falsely-matching quote in a comment.  Patch by Akim Demaille.
19623
19624 2001-06-11  Jim Meyering  <meyering@lucent.com>
19625
19626         * lib/regex.c: Update from GNU libc.
19627
19628 2001-05-27  Jim Meyering  <meyering@lucent.com>
19629
19630         * m4/prereq.m4 (jm_PREREQ_READUTMP): Check for ut_type in struct utmpx.
19631         Check for ut_type in struct utmp.
19632
19633 2001-05-27  Jim Meyering  <meyering@lucent.com>
19634
19635         * lib/readutmp.h (UT_TYPE): Define.
19636
19637 2001-05-24  Jim Meyering  <meyering@lucent.com>
19638
19639         * lib/argmatch.c: Include "quote.h".
19640         (argmatch_invalid): Remove explicit `' quotes.  Instead, use the
19641         quote function.  Reported by Göran Uddeborg.
19642
19643 2001-05-22  Jim Meyering  <meyering@lucent.com>
19644
19645         * m4/strftime.m4 (_jm_STRFTIME_PREREQS): Don't use AC_LIBOBJ(strftime),
19646         now that we use the package-supplied version unconditionally.
19647         (jm_FUNC_STRFTIME): Don't replace strftime, for the same reason.
19648
19649 2001-05-21  Jim Meyering  <meyering@lucent.com>
19650
19651         * m4/regex.m4: Change a couple backticks to single quotes to avoid
19652         shell syntax errors.
19653
19654 2001-05-21  Alexandre Duret-Lutz  <duret_g@epita.fr>
19655
19656         * m4/dos.m4 (jm_AC_DOS): Check for _WIN32, __WIN32__, and __MSDOS__.
19657
19658 2001-05-20  Paul Eggert  <eggert@twinsun.com>
19659
19660         * m4/strftime.m4 (jm_FUNC_GNU_STRFTIME):
19661         Don't bother to check library strftime, since
19662         we'll be using our own my_strftime function anyway.
19663         Define my_strftime instead of strftime.
19664
19665 2001-05-20  Alexandre Duret-Lutz  <duret_g@epita.fr>
19666
19667         * lib/dirname.c (dir_name): Compute append_dot using path, not newpath
19668         which is not yet declared.
19669
19670 2001-05-15  Jim Meyering  <meyering@lucent.com>
19671
19672         * m4/regex.m4: Use proper quoting so brackets appear in the test
19673         program.
19674         Reported by, and with help from, Bruno Haible.
19675
19676 2001-05-13  Jim Meyering  <meyering@lucent.com>
19677
19678         * m4/jm-macros.m4 (major_t, minor_t): Define to unsigned int if
19679         undefined.
19680
19681 2001-05-11  Paul Eggert  <eggert@twinsun.com>
19682
19683         dirname code cleanup.  base_name now behaves more compatibly
19684         with POSIX basename when given file names that have trailing
19685         slashes, and similarly for dir_name.  Add new primitives
19686         base_len and dir_len.  Put the directory-name-related decls
19687         into dirname.h.
19688
19689         * lib/addext.c (ISSLASH, base_name): Remove; now in dirname.h.
19690         * lib/backupfile.c (base_name): Likewise.
19691         * lib/basename.c (FILESYSTEM_PREFIX_LEN, PARAMS, ISSLASH): Likewise.
19692         * lib/dirname.c (FILESYSTEM_PREFIX_LEN, ISSLASH): Likewise.
19693         * lib/makepath.c (strip_trailing_slashes): Likewise.
19694         * lib/path-concat.c (DIRECTORY_SEPARATOR, FILESYSTEM_PREFIX_LEN,
19695         ISSLASH): Likewise.
19696         * lib/rename.c (strip_trailing_slashes): Likewise.
19697         * lib/same.c (base_name): Likewise.
19698         * lib/stripslash.c (ISSLASH): Likewise.
19699
19700         * lib/addext.c: Include <dirname.h> after size_t is defined.
19701         * lib/backupfile.c: Likewise.
19702
19703         * lib/addext.c (addext): Use base_len to trim redundant
19704         trailing slashes instead of doing it ourselves.
19705         But do not trim the last slash if it is not redundant.
19706
19707         * lib/backupfile.c (find_backup_file_name,
19708         max_backup_version): Use base_len instead of rolling it ourselves.
19709         Handle the case of "" and (on DOS) "C:" correctly.
19710
19711         * lib/basename.c: Do not include <stdio.h>, <assert.h>; no longer
19712         needed. Include <string.h>, <dirname.h>.
19713         (base_name): Allow file names ending in slashes, other than names
19714         that are all slashes.  In this case, return the basename followed
19715         by the slashes.  This is more general, and can be used in places
19716         where the original base_name purposely had an assertion failure.
19717         (base_len): New function.
19718
19719         * lib/dirname.c: Include <string.h> instead of <stdlib.h>.
19720         Do not include <assert.h>; no longer needed.
19721         Include xalloc.h.
19722         (memrchr): Remove decl.
19723         (dir_name_r): Remove.
19724         (dir_len): Renamed from dirlen.  All callers changed.
19725         Rewrite in terms of base_name, for simplicity and consistency.
19726         (dir_name): Never return NULL.  All callers changed.
19727         Do not include <stdlib.h> in test program; no longer needed.
19728         return 0; is fine for test program.
19729
19730         * lib/dirname.h (DIRECTORY_SEPARATOR, ISSLASH, FILESYSTEM_PREFIX_LEN):
19731         New macros.
19732         (base_name, base_len, dir_len, strip_trailing_slashes): New decls.
19733
19734         * lib/path-concat.c (path_concat): Use base_len to compute
19735         base length, not strlen; this means we cannot rely on memcpy
19736         to null-terminate.
19737
19738         * lib/same.c (STREQ): Remove.
19739         (same_name): Handle the case where the basename ends in trailing '/'.
19740
19741         * lib/stripslash.c (strip_trailing_slashes): Return nonzero if
19742         a slash was stripped.  Do not strip the last slash after a
19743         file system prefix.
19744
19745 2001-05-11  Paul Eggert  <eggert@twinsun.com>
19746
19747         * lib/Makefile.am (libfetish_a_SOURCES):
19748         Add strftime.c, since we now compile it on all hosts.
19749
19750         * lib/strftime.c (my_strftime):
19751         Define to nstrftime if emacs, but only if my_strftime is not defined.
19752         (extra_args, extra_args_spec, extra_args_spec_iso): Rename from
19753         ut_argument, ut_argument_spec, ut_argument_spec_iso, respectively.
19754         Add one more extra argument: a nanoseconds value.
19755         All uses changed.
19756         (ns): New macro.
19757         (my_strftime function): Add %N format.
19758         (emacs_strftimeu): Renamed from emacs_strftime,
19759         with extra ut argument.
19760
19761 2001-05-09  Paul Eggert  <eggert@twinsun.com>
19762
19763         * m4/jm-macros.m4 (jm_MACROS): Do not check for fseeko; no longer used.
19764
19765 2001-04-21  Jim Meyering  <meyering@lucent.com>
19766
19767         * m4/rmdir-errno.m4: Write to a new file, so that a restrictive umask
19768         doesn't interfere.
19769
19770 2001-04-21  Alexandre Duret-Lutz  <duret_g@epita.fr>
19771
19772         * m4/ftruncate.m4: Check for chsize.
19773         Link with ftruncate.o unconditionally if ftruncate is missing.
19774         This was required when cross-compiling to i586-mingw32msvc.
19775
19776 2001-04-08  Jim Meyering  <meyering@lucent.com>
19777
19778         * lib/getdate.y (get_date): Set tm_isdst to -1 to ensure that it is
19779         recomputed; that's necessary when the offset spans a DST transition.
19780         Patch by David J. MacKenzie.  Reported by Hon-Yin Kok.
19781
19782 2001-04-02  Jim Meyering  <meyering@lucent.com>
19783
19784         * lib/regex.h, regex.c: Update from GNU libc.
19785
19786 2001-03-24  Jim Meyering  <meyering@lucent.com>
19787
19788         * m4/jm-macros.m4: Require autoconf-2.49d.
19789
19790 2001-03-20  Bruno Haible  <haible@clisp.cons.org>
19791
19792         * m4/iconv.m4 (jm_ICONV): Recommend GNU libiconv.
19793
19794 2001-03-19  Paul Eggert  <eggert@twinsun.com>
19795
19796         * lib/version-etc.c (version_etc_copyright): Update to 2001.
19797
19798 2001-03-17  Jim Meyering  <meyering@lucent.com>
19799
19800         * m4/memcmp.m4 (jm_AC_FUNC_MEMCMP): Remove my copy of AC_FUNC_MEMCMP,
19801         now that the version in autoconf is equivalent.
19802         (jm_FUNC_MEMCMP): Adjust to use AC_FUNC_MEMCMP.
19803
19804         * m4/error.m4 (jm_PREREQ_ERROR): Invoke AC_FUNC_STRERROR_R.
19805         Suggestion from Akim Demaille.
19806
19807         * m4/prereq.m4 (jm_PREREQ): Add jm_PREREQ_TEMPNAME.
19808         (jm_PREREQ_TEMPNAME): New function.
19809
19810 2001-03-16  Paul Eggert  <eggert@twinsun.com>
19811
19812         * lib/tempname.c (uint64_t): Define to uintmax_t if
19813         not defined, and if UINT64_MAX is not defined.
19814         Required at least for Vax Ultrix4.3, which doesn't define uint64_t.
19815         Reported by John David Anglin.
19816
19817 2001-03-15  Bruno Haible  <haible@clisp.cons.org>
19818
19819         * lib/localcharset.c (locale_charset): Allow wildcard syntax. Also
19820         resolve alias if codeset is empty.
19821         * lib/config.charset (BeOS): Use wildcard syntax.
19822
19823 2001-03-13  Jim Meyering  <meyering@lucent.com>
19824
19825         * lib/path-concat.c (path_concat)
19826         [FILESYSTEM_ACCEPTS_DRIVE_LETTER_PREFIX]: Don't insert a backslash when
19827         concatenating e.g., `C:' and `foo'.
19828         From Bruno Haible.
19829
19830 2001-03-06  Bruno Haible  <haible@clisp.cons.org>
19831
19832         * lib/localcharset.c (locale_charset): Don't use
19833         setlocale(LC_CTYPE,NULL). Don't return NULL.
19834         * lib/unicodeio.c (print_unicode_char): Simplify accordingly.
19835
19836 2001-03-06  Bruno Haible  <haible@clisp.cons.org>
19837
19838         * lib/config.charset: Update for FreeBSD 4.2 and OSF/1 5.1. Add
19839         support for DOS/DJGPP.
19840
19841 2001-03-01  Paul Eggert  <eggert@twinsun.com>
19842
19843         * m4/jm-macros.m4 (jm_MACROS): Use mkstemp replacement if the system
19844         lacks mkstemp.  Compile our own tempname.c if we compile our own
19845         mkstemp.c, as mkstemp relies on tempname.
19846
19847 2001-03-01  Jim Meyering  <meyering@lucent.com>
19848
19849         * m4/dos.m4 (jm_AC_DOS): Remove extra backslashes, now that
19850         AH_VERBATIM really does output its argument verbatim.
19851
19852 2001-02-28  Paul Eggert  <eggert@twinsun.com>
19853
19854         * lib/Makefile.am (libfetish_a_SOURCES):
19855         Add dup-safer.c, fopen-safer.c.
19856         (noinst_HEADERS): Add stdio-safer.h, unistd-safer.h.
19857
19858         * lib/dup-safer.c, lib/fopen-safer.c, lib/stdio-safer.h,
19859         lib/unistd-safer.h: New files.
19860
19861 2001-02-25  Paul Eggert  <eggert@twinsun.com>
19862
19863         The mkstemp replacement is taken from glibc 2.2.2, with some
19864         portability fixes for use outside glibc, as follows:
19865
19866         * lib/tempname.c (struct_stat64): New macro.
19867         (direxists, __gen_tempname): Use it.
19868         This avoids a portability problem with Solaris 8.
19869
19870         * lib/tempname.c (<config.h>): Include if HAVE_CONFIG_H.
19871         (<stddef.h>, <stdint.h>, <string.h>):
19872         Include only if STDC_HEADERS || _LIBC.
19873         (<fcntl.h>): Include only if HAVE_FCNTL_H || _LIBC.
19874         (<unistd.h>): Include only if HAVE_UNISTD_H || _LIBC.
19875         (<sys/time.h>): Include only if HAVE_SYS_TIME_H || _LIBC.
19876         (__set_errno): Define this macro if <errno.h> doesn't.
19877         (P_tmpdir, TMP_MAX, __GT_FILE, __GT_BIGFILE, __GT_DIR, __GT_NOCREATE):
19878         Define these macros if <stdio.h> doesn't.
19879         (S_ISDIR, S_IRUSR, S_IWUSR, S_IXUSR):
19880         Define these macros if <sys/stat.h>
19881         doesn't.  Ignore <sys/stat.h> S_ISDIR if STAT_MACROS_BROKEN.
19882         (stat64, __getpid, __gettimeofday, __mkdir, __open, __open64, lxstat64,
19883         __xstat64): Define if not _LIBC.
19884         (__secure_getenv): Define if ! (HAVE___SECURE_GETENV || _LIBC).
19885         (__gen_tempname): Invoke gettimeofday only if
19886         HAVE_GETTIMEOFDAY || _LIBC;
19887         otherwise, fall back on plain "time".
19888         Use macros like S_IRUSR | S_IWUSR rather than octal values like 0600.
19889
19890         * lib/mkstemp.c (__GT_FILE): Define to zero if not defined.
19891
19892         * lib/mkstemp.c, tempname.c: New files, taken from glibc 2.2.2.
19893
19894 2001-02-18  Paul Eggert  <eggert@twinsun.com>
19895
19896         * m4/jm-macros.m4 (jm_CHECK_ALL_HEADERS): Check for sys/resource.h.
19897
19898 2001-02-17  Paul Eggert  <eggert@twinsun.com>
19899
19900         * m4/mbrtowc.m4: New file, defining jm_FUNC_MBRTOWC.
19901         * m4/mbswidth.m4 (jm_PREREQ_MBSWIDTH):
19902         Use jm_FUNC_MBRTOWC, not AC_CHECK_FUNCS(mbrtowc).
19903         * m4/prereq.m4 (jm_PREREQ_QUOTEARG): Likewise.
19904
19905 2001-02-17  Paul Eggert  <eggert@twinsun.com>
19906
19907         * lib/mbswidth.c, quotearg.c (mbrtowc, mbsinit):
19908         Remove workaround macros for hosts that have mbrtowc but not
19909         mbstate_t, as we now insist on proper declarations for both
19910         before using mbrtowc.
19911
19912 2001-02-17  Jim Meyering  <meyering@lucent.com>
19913
19914         * m4/ls-mntd-fs.m4 (jm_LIST_MOUNTED_FILESYSTEMS): Don't check for
19915         getmntent via AC_CHECK_FUNCS, since that would get a `no' and disrupt
19916         further attempts by AC_FUNC_GETMNTENT to check with e.g., -lgen on
19917         UnixWare 7.1.1.
19918
19919         * m4/mbrtowc.m4 (jm_FUNC_MBRTOWC): Adapt to use AC_CACHE_CHECK etc.,
19920         rather than AC_CACHE_VAL.
19921
19922 2001-02-17  Jim Meyering  <meyering@lucent.com>
19923
19924         * lib/strtoul.c: Sync from GNU libc.  Use double quotes, not <...>
19925         around included file name.
19926
19927         * lib/strnlen.c (__strnlen): Merge in a change from GNU libc.
19928
19929         * lib/strftime.c: Update from GNU libc (the only changes were to
19930         comments).
19931
19932 2001-02-17  Jim Meyering  <meyering@lucent.com>
19933
19934         * lib/regex.c: Update from libc.
19935
19936 2001-02-17  Bruno Haible  <haible@clisp.cons.org>
19937
19938         * lib/mbswidth.h (mbswidth): Also define as macro, to avoid prototype
19939         clash.
19940
19941 2001-02-16  Paul Eggert  <eggert@twinsun.com>
19942
19943         * lib/alloca.c (malloc): Undef before defining, since stdlib.h
19944         may have defined it.  Needed for Encore Umax-3.0.9.16b systems.
19945         Reported by Mark Hounschell via Paul Eggert.
19946
19947 2001-02-07  Jim Meyering  <meyering@lucent.com>
19948
19949         * m4/regex.m4 (jm_INCLUDED_REGEX): Add a test for the latest bug.
19950
19951 2001-02-05  Jim Meyering  <meyering@lucent.com>
19952
19953         * m4/jm-macros.m4: Require autoconf-2.14d (not yet released), because
19954         it includes the patch required for `large file' support with at least
19955         HP-UX's 10.20 /bin/cc.
19956
19957 2001-02-03  Jim Meyering  <meyering@lucent.com>
19958
19959         * m4/ls-mntd-fs.m4 (jm_LIST_MOUNTED_FILESYSTEMS): Restore prior use of
19960         AS_IF, now that it works once again (mysteriously).
19961         * m4/fsusage.m4 (jm_FILE_SYSTEM_USAGE): Likewise.
19962
19963 2001-01-30  Jim Meyering  <meyering@lucent.com>
19964
19965         Don't use filenames that are 8.3-equivalent to "conftest" on DOS.
19966         * m4/chown.m4: Rename conftestchown to conftest.chown.
19967         * m4/rename.m4: s/conftestdir/conftest.d1/ and
19968         s/conftestdir2/conftest.d2/.
19969         * m4/utimes.m4: s/conftestdata/conftest.data/
19970         Inspired by Pavel Roskin's change in autoconf.
19971
19972 2001-01-30  Bruno Haible  <haible@clisp.cons.org>
19973
19974         * lib/config.charset: Update for FreeBSD 4.2.
19975
19976 2001-01-27  Jim Meyering  <meyering@lucent.com>
19977
19978         * m4/ls-mntd-fs.m4 (jm_LIST_MOUNTED_FILESYSTEMS): Open-code what was
19979         a use of AS_IF.
19980         * m4/fsusage.m4 (jm_FILE_SYSTEM_USAGE): Likewise.
19981
19982 2001-01-26  Jim Meyering  <meyering@lucent.com>
19983
19984         * m4/prereq.m4 (jm_PREREQ_QUOTEARG): Check for stddef.h, now that
19985         quotearg.c includes it.
19986
19987 2001-01-26  Jim Meyering  <meyering@lucent.com>
19988
19989         * lib/quotearg.c: Include stddef.h.
19990         * lib/quote.c: Include stddef.h.
19991         Reported by Axel Kittenberger.
19992
19993         * lib/xmalloc.c [HAVE_DONE_WORKING_MALLOC_CHECK]: Enclose error-evoking
19994         line in double quotes so that it evokes a better diagnostic.
19995         [HAVE_DONE_WORKING_REALLOC_CHECK]: Likewise.
19996         Reported by Axel Kittenberger.
19997
19998 2001-01-24  Stefan Monnier  <monnier@cs.yale.edu>
19999
20000         * regex.c (mutually_exclusive_p): Don't blindly handle `charset_not'
20001         as if it was a `charset'.
20002
20003 2001-01-21  Bruno Haible  <haible@clisp.cons.org>
20004
20005         * m4/iconv.m4 (jm_ICONV): Also check whether the iconv declaration
20006         has const.
20007
20008 2001-01-21  Bruno Haible  <haible@clisp.cons.org>
20009
20010         * lib/unicodeio.c (print_unicode_char): Cast the second iconv() arg,
20011         to avoid a warning.  Add back 'const' to inptr.
20012
20013 2001-01-20  Jim Meyering  <meyering@lucent.com>
20014
20015         Be sure that headers are checked before used in code compiled
20016         for the type checks.
20017         * m4/jm-macros.m4 (jm_MACROS): Remove all header checks.
20018         In place of that, invoke jm_CHECK_ALL_TYPES.
20019         (jm_CHECK_ALL_HEADERS): New functions with the above checks.
20020         (jm_CHECK_ALL_TYPES): Require jm_CHECK_ALL_HEADERS.
20021         Alan Iwi reported a build failure on an f300-fujitsu-uxpv4.1_ES;
20022         The check for ssize_t was mistakenly run before the test for unistd.h.
20023
20024         The configure-time check for stdbool.h was missing.
20025         * m4/prereq.m4 (jm_PREREQ): Add jm_PREREQ_HASH.
20026         (jm_PREREQ_HASH): New function.
20027
20028 2001-01-17  Jim Meyering  <meyering@lucent.com>
20029
20030         * m4/fsusage.m4 (jm_FILE_SYSTEM_USAGE): Use AS_IF, not AS_IFELSE,
20031         for autoconf-2.49c.
20032         * m4/ls-mntd-fs.m4 (jm_LIST_MOUNTED_FILESYSTEMS): Likewise.
20033
20034 2001-01-16  Jim Meyering  <meyering@lucent.com>
20035
20036         * lib/basename.c: Include <stdio.h>, needed by assert on SunOS 4.
20037         From Bruno Haible.
20038
20039 2001-01-14  Jim Meyering  <meyering@lucent.com>
20040
20041         * m4/rename.m4: Use temporary directories named conftestdir{,2}, not
20042         foo and bar.  Create conftestdir/ in the script, not in the C code.
20043         Remove directories in the script, not in the C code.
20044         Remove conftestdir{,2} before trying to create the directory.
20045         Make the entire configure script fail if the mkdir fails.
20046
20047 2001-01-14  Jim Meyering  <meyering@lucent.com>
20048
20049         * lib/rename.c: New file.  From Volker Borchert.
20050         Include stdlib.h, string.h or strings.h, and xalloc.h.
20051         Use strip_trailing_slashes rather than open-coding it.
20052
20053 2001-01-03  Paul Eggert  <eggert@twinsun.com>
20054
20055         * lib/strftime.c: Sync with glibc time/strftime.c 1.81.
20056
20057 2001-01-03  Jim Meyering  <meyering@lucent.com>
20058
20059         * lib/unicodeio.c (print_unicode_char): Remove `const' from declaration
20060         of local `inptr' to avoid warning with some system declarations of
20061         iconv.
20062
20063 2001-01-02  Volker Borchert  <bt@teknon.de>
20064
20065         * m4/rename.m4: New file.
20066         * m4/jm-macros.m4 (jm_MACROS): Require vb_FUNC_RENAME.
20067
20068 2001-01-01  Jim Meyering  <meyering@lucent.com>
20069
20070         * m4/prereq.m4 (jm_PREREQ_READUTMP): Include utmp.h (if available),
20071         even on systems with utmpx.h.  It's necessary for the declaration of
20072         utmp's ut_user member.  Reported by Andreas Jaeger.
20073
20074         * m4/check-decl.m4 (jm_CHECK_DECLS): Include grp.h and pwd.h if
20075         available. They are required for the declarations of getgrgid and
20076         getpwuid resp.
20077         (_jm_DECL_HEADERS): Check for grp.h and pwd.h.
20078         Reported by Andreas Jaeger.
20079
20080 2001-01-01  Alexandre Duret-Lutz  <duret_g@epita.fr>
20081
20082         * m4/libintl.m4 (AM_GNU_GETTEXT): Define MKINSTALLDIRS by
20083         expanding the value of $ac_aux_dir, as in AM_MISSING_HAS_RUN,
20084         so `make install' also works in VPATH builds.
20085
20086 2000-12-31  Alexandre Duret-Lutz  <duret_g@epita.fr>
20087
20088         * m4/libintl.m4 (AM_WITH_NLS): When using AC_CONFIG_AUX_DIR,
20089         prepend $(top_srcdir) to the value of MKINSTALLDIRS so that it
20090         can be used in subdirectories.
20091
20092 2000-12-29  Paul Eggert  <eggert@twinsun.com>
20093
20094         * lib/modechange.c: Do not assume that mode_t uses the
20095         traditional octal encoding.  E.g. "chmod 1 FOO" should set
20096         the other-execute bit of FOO even if S_IXOTH != 1.
20097
20098         (SUID, SGID, SVTX, RUSR, WUSR, XUSR, RGRP, WGRP, XGRP, ROTH,
20099         WOTH, XOTH, ALLM): New macros.
20100         (S_ISUID, S_ISGID, S_ISVTX, S_IRUSR, S_IWUSR, S_IXUSR,
20101          S_IRGRP, S_IWGRP, S_IXGRP, S_IROTH, S_IWOTH, S_IXOTH):
20102         Use them.
20103         (S_ISGID): Fix typo; it was defaulting to the same value as S_ISUID.
20104         (S_IRWXU, S_IRWXG, S_IRWXO): Specify defaults in terms of the above.
20105         (mode_compile):
20106         No need to use uintmax_t; unsigned long is long enough.
20107         Don't bother to get suffix since we don't use it.
20108
20109 2000-12-26  Jim Meyering  <meyering@lucent.com>
20110
20111         * m4/dos.m4 (jm_AC_DOS): Rewrite (though it's still a stub) to work
20112         better with autoheader.
20113
20114 2000-12-24  Jim Meyering  <meyering@lucent.com>
20115
20116         * lib/hash.c (is_prime): Return explicit boolean values.
20117         (hash_get_first): Return NULL to appease Irix5.6's 89.
20118         Reported by Nelson Beebe.
20119
20120 2000-12-19  Bruno Haible  <haible@clisp.cons.org>
20121
20122         * lib/localcharset.c (locale_charset): Add support for Win32.
20123
20124 2000-12-18  Paul Eggert  <eggert@twinsun.com>
20125
20126         * lib/physmem.h, physmem.c: New files.
20127
20128         * lib/Makefile.am (libfetish_a_SOURCES): Add physmem.c.
20129         (noinst_HEADERS): Add physmem.h.
20130
20131         * lib/xstrtol.c (__xstrtol): Add undocumented suffixes 'g' and
20132         't' for compatibility with Solaris 8 sort.
20133
20134 2000-12-18  Bruno Haible  <haible@clisp.cons.org>
20135
20136         * lib/config.charset: Add support for BeOS.
20137
20138 2000-12-17  Jim Meyering  <meyering@lucent.com>
20139
20140         * m4/dos.m4 (jm_AC_DOS): New file and macro.
20141         * m4/jm-macros.m4 (jm_MACROS): Require jm_AC_DOS.
20142
20143 2000-12-16  Jim Meyering  <meyering@lucent.com>
20144
20145         This bug had a serious impact on chown: `chown N:M FILE' (for integer
20146         N and M) would have treated it like `chown N:N FILE'.
20147
20148         * lib/userspec.c (parse_user_spec): Fix typo: s/u/g/.
20149
20150 2000-12-16  Jim Meyering  <meyering@lucent.com>
20151
20152         * lib/getusershell.c [!SHELLS_FILE && __DJGPP__]: Define
20153         SHELLS_FILE to a file name that's useful on djgpp systems.
20154         Include stdlib.h.
20155         (ADDITIONAL_DEFAULT_SHELLS): Define.
20156         (default_shells): Prepend ADDITIONAL_DEFAULT_SHELLS.
20157         Based mostly on a patch from Prashant TR.
20158
20159 2000-12-16  Bruno Haible  <haible@clisp.cons.org>
20160
20161         * lib/config.charset: Add ISO-8859-3, BIG5HKSCS, GB18030, JOHAB,
20162         VISCII, CP874, CP949, CP950, CP1250, CP1253, CP1254, CP1255, CP1256,
20163         CP1257 to the list of canonical encodings. Rename EUC-CN to GB2312.
20164
20165 2000-12-08  Andreas Schwab  <schwab@suse.de>
20166
20167         * lib/mbswidth.c (mbsnwidth): Don't loop endlessly when called with an
20168         invalid mulitbyte sequence and with the MBSW_ACCEPT_INVALID flag set.
20169
20170 2000-12-07  Jim Meyering  <meyering@lucent.com>
20171
20172         * lib/stripslash.c (ISSLASH): Define.
20173         (strip_trailing_slashes): Use ISSLASH rather than comparing against
20174         `/'.
20175         From Prashant TR.
20176
20177         * lib/dirname.c (FILESYSTEM_PREFIX_LEN): Define.
20178         (dir_name_r): Declare this function as static.
20179         [BACKSLASH_IS_PATH_SEPARATOR]: Fix a bug that'd
20180         manifest itself on a name containing a mix of slashes and
20181         backslashes.
20182         Make this function work with names starting with a DOS-style
20183         drive letter and colon prefix.
20184         (dir_name): Append `.' if necessary.
20185         Based mostly on patches from Prashant TR and Eli Zaretskii.
20186
20187         * lib/dirname.h (dir_name_r): Remove prototype.
20188
20189 2000-12-06  Paul Eggert  <eggert@twinsun.com>
20190
20191         * m4/off_t-format.m4: Remove this file.
20192         * m4/jm-macros.m4 (jm_MACROS): Remove jm_SYS_OFF_T_PRINTF_FORMAT.
20193
20194 2000-12-06  Jim Meyering  <meyering@lucent.com>
20195
20196         * m4/xstrtoumax.m4 (jm_AC_PREREQ_XSTRTOUMAX): If we need the
20197         replacement strtoull, we may well need the replacement strtoul, too.
20198         Check for declarations of strtoul and strtoull.
20199         Check for strtol.  Mainly as a cue to cause automake to include
20200         strtol.c -- that file is included by each of strtoul.c and strtoull.c.
20201         Check for limits.h -- strtol.c needs it.
20202
20203 2000-12-05  Jim Meyering  <meyering@lucent.com>
20204
20205         * lib/dirname.c (dir_name_r): Add `const' in a few local declarations.
20206
20207 2000-12-04  Jim Meyering  <meyering@lucent.com>
20208
20209         * lib/path-concat.c: [!HAVE_DECL_MALLOC]: Declare malloc.
20210         Also include memory.h, stdlib.h, unistd.h if appropriate.
20211         Reported by Andreas Jaeger (conflicting declaration of malloc).
20212
20213 2000-12-02  Jim Meyering  <meyering@lucent.com>
20214
20215         * m4/off_t-format.m4 (OFF_T_PRINTF_FORMAT_STRING): New file/macro.
20216         * m4/jm-macros.m4 (jm_MACROS): require it.
20217
20218 2000-12-02  Jim Meyering  <meyering@lucent.com>
20219
20220         * lib/closeout.h: Make idempotent, to avoid some obscure warnings.
20221
20222 2000-12-01  Paul Eggert  <eggert@twinsun.com>
20223
20224         * lib/memrchr.c: Include <config.h> before any system include file.
20225
20226 2000-11-30  Jim Meyering  <meyering@lucent.com>
20227
20228         * m4/jm-macros.m4 (jm_MACROS): Check for stdint.h.
20229
20230 2000-11-30  Jim Meyering  <meyering@lucent.com>
20231
20232         * m4/getloadavg.m4: s/ifval/m4_ifval/ to accommodate new autoconf.
20233
20234 2000-11-29  Paul Eggert  <eggert@twinsun.com>
20235
20236         * lib/dirname.c (dir_name_r): Fix typo: int -> size_t.
20237
20238 2000-11-26  Jim Meyering  <meyering@lucent.com>
20239
20240         * lib/memcoll.c: Include sys/types.h.  From Werner Almesberger.
20241
20242 2000-11-22  Paul Eggert  <eggert@twinsun.com>
20243
20244         * lib/strftime.c (my_strftime): Do not invoke mbrlen with a
20245         size of (size_t) -1; it's not portable.
20246
20247 2000-11-17  Jim Meyering  <meyering@lucent.com>
20248
20249         * lib/strstr.c: Update from GNU libc.
20250
20251 2000-11-17  Akim Demaille  <akim@epita.fr>
20252
20253         * lib/obstack.h: Formatting changes.
20254         (obstack_grow, obstack_grow0): Don't cast WHERE at all: that would
20255         prevent type checking.
20256         (obstack_ptr_grow, obstack_ptr_grow_fast): When assigning, don't
20257         cast the value to (void *): assigning a `foo *' to a `void *'
20258         variable is valid.
20259         (obstack_int_grow, obstack_int_grow_fast): Don't cast AINT to int.
20260
20261 2000-11-16  Jim Meyering  <meyering@lucent.com>
20262
20263         * lib/strverscmp.c: Incorporate weak-alias-related changes from glibc.
20264
20265 2000-11-11  Jim Meyering  <meyering@lucent.com>
20266
20267         * lib/error.c: Add a couple #includes, merging from GNU libc version.
20268
20269 2000-11-10  Jim Meyering  <meyering@lucent.com>
20270
20271         * lib/obstack.h: Update from GNU libc.
20272         * lib/obstack.c: Likewise.
20273
20274 2000-11-08  Bruno Haible  <haible@clisp.cons.org>
20275
20276         * m4/jm-macros.m4 (jm_MACROS): Add test for wcrtomb.
20277
20278 2000-11-06  Paul Eggert  <eggert@twinsun.com>
20279
20280         * lib/getusershell.c (setusershell): Use rewind rather than
20281         fseek/fseeko, to avoid configuration hassles with fseeko.
20282         Don't bother opening SHELLS_FILE if shellstream is NULL;
20283         it's not necessary.
20284
20285 2000-11-05  Jim Meyering  <meyering@lucent.com>
20286
20287         * lib/makepath.h (make_dir): Declare.
20288         * lib/makepath.c (make_dir): Remove `static' attribute.
20289         Tweak a comment.
20290
20291 2000-11-04  Jim Meyering  <meyering@lucent.com>
20292
20293         * m4/regex.m4: Use the `m4_' prefix on `syscmd' and `m4_sysval'.
20294
20295 2000-11-04  Alexandre Duret-Lutz  <duret_g@epita.fr>
20296
20297         * lib/hash.c (hash_get_next): Fix a thinko:  when ENTRY is the
20298         last one in a bucket, advance to the next bucket.
20299
20300 2000-11-02  Vesselin Atanasov  <vesselin@bgnet.bg>
20301
20302         * lib/fnmatch.c: Do not comment out all the code if we are using
20303         the GNU C library, because in some cases we are replacing buggy
20304         code in the GNU C library itself.
20305
20306 2000-10-30  Stefan Monnier  <monnier@cs.yale.edu>
20307
20308         * regex.c (re_iswctype, re_wctype_to_bit): Fix braino.
20309         (regex_compile): Catch bogus \(\1\).
20310
20311 2000-10-30  Paul Eggert  <eggert@twinsun.com>
20312
20313         * lib/fnmatch.c (FOLD): Do not assume that characters are unsigned.
20314         (fnmatch): Fix some FNM_FILE_NAME and FNM_LEADING_DIR bugs,
20315         e.g. fnmatch("d*/*1", "d/s/1", FNM_FILE_NAME) incorrectly yielded zero.
20316
20317 2000-10-30  Paul Eggert  <eggert@twinsun.com>
20318
20319         * lib/error.h, getline.h, modechange.h:
20320         Remove "2000" from Copyright line, as the file hasn't been
20321         changed this year other than in the copyright notice.
20322
20323         * lib/xalloc.h: Add "2000" to Copyright line, as this file
20324         was changed this year.
20325
20326 2000-10-29  Jim Meyering  <meyering@lucent.com>
20327
20328         * m4/fsusage.m4: s/AC_SHELL_IFELSE/AS_IFELSE/ to match autoconf
20329         renaming.
20330         * m4/ls-mntd-fs.m4: Likewise
20331
20332 2000-10-29  Jim Meyering  <meyering@lucent.com>
20333
20334         * lib/xstat.in: Fix grammar in comment.
20335
20336 2000-10-29  Greg Louis  <glouis@dynamicro.on.ca>
20337
20338         * lib/regex.h (__restrict_arr): Move definition out of #ifndef block.
20339         Required because egcs-2.91.66 (aka 1.1.2) defines __restrict, but
20340         doesn't define __restrict_arr.
20341
20342 2000-10-28  Jim Meyering  <meyering@lucent.com>
20343
20344         * m4/prereq.m4 (jm_PREREQ): Add jm_PREREQ_MEMCHR.
20345         (jm_PREREQ_MEMCHR): New function.
20346
20347 2000-10-28  Jim Meyering  <meyering@lucent.com>
20348
20349         * lib/memchr.c: Update from libc.
20350         Adjust for portability:
20351         [HAVE_STDLIB_H]: Include stdlib.h.
20352         [HAVE_BP_SYM_H || _LIBC]: Guard inclusion of bp-sym.h.
20353         Undef __memchr, too.
20354         [!weak_alias]: Define __memchr to memchr.
20355
20356         * lib/regex.c: Update from libc.
20357         * lib/regex.h: Likewise.
20358         * lib/getopt1.c: Likewise.
20359         * lib/memcmp.c: Likewise.
20360
20361         * lib/getusershell.c (setusershell) [HAVE_FSEEKO]: Use fseeko.
20362         Avoid using fseek, when possible -- it's broken by design.
20363         Patch by Ulrich Drepper.
20364
20365 2000-10-27  Stefan Monnier  <monnier@cs.yale.edu>
20366
20367         * regex.c (POP_FAILURE_REG_OR_COUNT, re_match_2_internal)
20368         (re_match_2_internal, re_match_2_internal, re_match_2_internal):
20369         Giving in to popular pressure to shut up the compiler with casts.
20370
20371 2000-10-26  Jim Meyering  <meyering@lucent.com>
20372
20373         * lib/strftime.c: Update from libc.
20374
20375 2000-10-25  Stefan Monnier  <monnier@cs.yale.edu>
20376
20377         * regex.c: More `unsigned char' -> `re_char' changes.
20378         Also change several `int' into `re_wchar_t'.
20379         (PATTERN_STACK_EMPTY, PUSH_PATTERN_OP, POP_PATTERN_OP): Remove.
20380         (PUSH_FAILURE_POINTER): Don't cast any more.
20381         (POP_FAILURE_REG_OR_COUNT): Remove the cast that strips `const'.
20382         We want GCC to complain, since this piece of code makes
20383         re_match non-reentrant, which *should* be fixed.
20384         (GET_BUFFER_SPACE): Use size_t rather than unsigned long.
20385         (EXTEND_BUFFER): Use RETALLOC.
20386         (SET_LIST_BIT): Don't cast.
20387         (re_wchar_t): New type.
20388         (re_iswctype, re_wctype_to_bit): Make it crystal clear to GCC
20389         that those two functions will always properly return.
20390         (IMMEDIATE_QUIT_CHECK): Cast to void.
20391         (analyse_first): Use recursion rather than an explicit stack.
20392         (re_compile_fastmap): Can't fail anymore.
20393         (re_search_2): Don't check re_compile_fastmap for failure.
20394         (PUSH_NUMBER): Renamed from PUSH_FAILURE_COUNT.
20395         Now also sets the new value (passed in a new argument).
20396         (re_match_2_internal): Use it.
20397         Also, use a new var `reg' of type size_t when looping through regs
20398         rather than reuse the inappropriate `mcnt'.
20399
20400 2000-10-25  Jim Meyering  <meyering@lucent.com>
20401
20402         * lib/obstack.c: Update from libc.
20403
20404 2000-10-24  Kenichi Handa  <handa@etl.go.jp>
20405
20406         * regex.c (regex_compile): Change the way of handling a range from
20407         a char less than 256 to a char not less than 256.
20408
20409 2000-10-24  Andrew Innes  <andrewi@gnu.org>
20410
20411         * regex.c (IMMEDIATE_QUIT_CHECK): New macro, which does QUIT on
20412         NT-Emacs only.
20413         (re_match_2_internal): Use IMMEDIATE_QUIT_CHECK instead of QUIT,
20414         so that re_search functions only quit when callers expect them to.
20415
20416 2000-10-23  Jim Meyering  <meyering@lucent.com>
20417
20418         * lib/hard-locale.c (hard_locale): Revert last change -- it was simply
20419         wrong.  That set_locale call must not have any side effects.
20420         From Paul Eggert.
20421
20422 2000-10-22  Jim Meyering  <meyering@lucent.com>
20423
20424         * lib/md5.c (md5_process_block) [OP]: Use `rol', not CYCLIC.
20425         [CYCLIC]: Remove now-unused definition.
20426
20427         * lib/save-cwd.c (O_DIRECTORY): Define, if needed.
20428         (save_cwd) [HAVE_FCHDIR]: Use O_DIRECTORY when opening ".".
20429         Suggestion from Ulrich Drepper.
20430
20431 2000-10-21  Jim Meyering  <meyering@lucent.com>
20432
20433         * m4/check-decl.m4 (jm_CHECK_DECLS): Also check for memrchr.
20434         * m4/prereq.m4 (jm_PREREQ_DIRNAME): New macro.
20435         * m4/jm-macros.m4 (AC_REPLACE_FUNCS): Add memrchr.
20436
20437 2000-10-21  Jim Meyering  <meyering@lucent.com>
20438
20439         * lib/dirname.c (memrchr): Declare if necessary.
20440         (dir_name): Remove the restriction that there be no
20441         trailing slashes.  Now, this code skips past them, effectively
20442         ignoring them.
20443         [TEST_DIRNAME] (main): New unit tests.
20444
20445         * lib/memrchr.c: New file from GNU libc.
20446         Undef __memrchr, too.
20447         [!weak_alias]: Define __memrchr to memrchr.
20448         Guard weak_alias use with `#ifdef weak_alias'.
20449
20450 2000-10-21  Jim Meyering  <meyering@lucent.com>
20451
20452         * lib/dirname.c (dir_name_r): New function, factored out of dir_name.
20453         (dir_name): Use dir_name_r.
20454         * lib/dirname.h (dir_name_r): Declare it.
20455
20456 2000-10-17  Jim Meyering  <meyering@lucent.com>
20457
20458         * lib/quote.h (PARAMS): Define and use.
20459         Reported by Akim Demaille.
20460
20461         * lib/getopt.c: Update from libc.
20462
20463 2000-10-16  Jim Meyering  <meyering@lucent.com>
20464
20465         * lib/hard-locale.c (hard_locale): Use "", not 0 as 2nd arg to
20466         setlocale.
20467         From Jan Fedak.
20468
20469 2000-10-15  Stefan Monnier  <monnier@cs.yale.edu>
20470
20471         * regex.c (WIDE_CHAR_SUPPORT): Define if _LIBC as well.
20472
20473 2000-09-25  Jim Meyering  <meyering@lucent.com>
20474
20475         * lib/md5.h (rol): Define (from GnuPG).
20476
20477         * lib/sha.c: Give credit (GnuPG) where due.
20478         (M): Use rol rather than open-coding it.
20479         Add a FIXME comment.
20480
20481 2000-09-21  Jim Meyering  <meyering@lucent.com>
20482
20483         * lib/userspec.c (parse_user_spec): Remove debugging printf I'd added.
20484         Reported by Michael Stone.
20485
20486 2000-09-20  Jim Meyering  <meyering@lucent.com>
20487
20488         * lib/Makefile.am (libfetish_a_SOURCES): Add sha.c.
20489         (noinst_HEADERS): Add sha.h.
20490         Based on code from Scott G. Miller and from GnuPG.
20491
20492 2000-09-18  Jim Meyering  <meyering@lucent.com>
20493
20494         * m4/getloadavg.m4 (AC_FUNC_GETLOADAVG): Restore the initial value of
20495         LIBS. Otherwise, everyone ends up linking with -lelf for some
20496         configurations.
20497         Reported by Mike Stone.
20498
20499 2000-09-15  Jim Meyering  <meyering@lucent.com>
20500
20501         * lib/regex.c: Update from libc.
20502
20503 2000-09-10  Jim Meyering  <meyering@lucent.com>
20504
20505         * lib/getopt.c (_getopt_internal): Update from glibc.
20506
20507 2000-09-09  Jim Meyering  <meyering@lucent.com>
20508
20509         * lib/quotearg.c: Rename ISASCII to IN_CTYPE_DOMAIN, so people don't
20510         think it should be used as a general replacement for isascii.
20511         * lib/fnmatch.c: Likewise.
20512         * lib/mbswidth.c: Likewise
20513         * lib/regex.c: Likewise.
20514
20515         Don't use atoi.
20516         * lib/userspec.c: Include sys/param.h and limits.h.
20517         Include xstrtol.h.
20518         (CHAR_BIT, TYPE_SIGNED, TYPE_MINIMUM, TYPE_MAXIMUM): Define.
20519         (UID_T_MAX, GID_T_MAX, MAXUID, MAXGID): Define.
20520         (parse_user_spec): Use xstrtoul, not atoi when converting numeric
20521         UID, GID.  Check range.
20522
20523 2000-09-06  Jim Meyering  <meyering@lucent.com>
20524
20525         * lib/getopt.c (_getopt_internal): Update from glibc.
20526
20527 2000-08-30  Jim Meyering  <meyering@lucent.com>
20528
20529         * lib/strftime.c: Merge in changes from GNU libc.
20530
20531 2000-08-26  Jim Meyering  <meyering@lucent.com>
20532
20533         * m4/jm-macros.m4: Use jm_FUNC_FPENDING.
20534         * m4/fpending.m4: New file.
20535
20536 2000-08-26  Jim Meyering  <meyering@lucent.com>
20537
20538         * lib/closeout.c: Include "__fpending.h".
20539         (close_stdout_status): Return right away if there's nothing to flush.
20540
20541         * lib/Makefile.am (noinst_HEADERS): Add __fpending.h.
20542         * lib/__fpending.c: New file.
20543         * lib/__fpending.h: New file.
20544
20545 2000-08-20  Jim Meyering  <meyering@lucent.com>
20546
20547         * m4/check-decl.m4: Include utmp.h `#if HAVE_UTMP_H', rather than
20548         `#if !HAVE_UTMPX_H'.  The latter would lose on systems with neither
20549         utmp.h nor utmpx.h.  Reported by Eli Zaretskii.
20550
20551 2000-08-11  J. David Anglin  <dave@hiauly1.hia.nrc.ca>
20552
20553         Improve fileutils installation on systems where running
20554         programs (like install) can't be unlinked.
20555         * m4/unlink-busy.m4 (jm_FUNC_UNLINK_BUSY_TEXT): New file/macro.
20556         * m4/jm-macros.m4: Use jm_FUNC_UNLINK_BUSY_TEXT.
20557
20558 2000-08-07  Paul Eggert  <eggert@twinsun.com>
20559
20560         Standardize on "memory exhausted" instead of "Memory exhausted"
20561         or "virtual memory exhausted".
20562         * lib/obstack.c (print_and_abort): Use "memory exhausted", not
20563         "virtual memory exhausted".
20564         * lib/same.c (same_name): Invoke xalloc_die instead of printing
20565         our own message.
20566         * lib/userspec.c (parse_user_spec): Likewise.
20567         * lib/bumpalloc.h: comment fix
20568         * lib/same.c, userspec.c: Include xalloc.h.
20569
20570         * lib/xalloc.h (xalloc_msg_memory_exhausted): Now char const[],
20571         not char *const and pointing to a constant array.
20572         * lib/xmalloc.c (xalloc_msg_memory_exhausted): Likewise.
20573         (xrealloc): Comment fix.
20574
20575         * lib/userspec.c (parse_user_spec):
20576         Don't translate a message until just before returning,
20577         to avoid unnecessary translation.
20578
20579 2000-08-07  Jim Meyering  <meyering@lucent.com>
20580
20581         * lib/addext.c, argmatch.c, argmatch.h, backupfile.h, bumpalloc.h,
20582         chown.c, diacrit.h, dirname.h, dup2.c, exclude.h, fileblocks.c,
20583         fnmatch.c, fnmatch.h, fsusage.c, fsusage.h, getdate.h,
20584         getgroups.c, gethostname.c, getopt.h, group-member.c,
20585         hard-locale.c, hash.h, isdir.c, lchown.c, linebuffer.c,
20586         linebuffer.h, long-options.h, malloc.c, md5.c, md5.h, memchr.c,
20587         memcmp.c, memcoll.c, memset.c, mktime.c, modechange.h, obstack.h,
20588         pathmax.h, realloc.c, rmdir.c, safe-read.c, save-cwd.c, stime.c,
20589         stpcpy.c, strcasecmp.c, strcspn.c, strdup.c, stripslash.c,
20590         strstr.c, strtod.c, strtol.c, strtoul.c, strtoull.c, strtoumax.c,
20591         utime.c, version-etc.h, xalloc.h, xstrdup.c, xstrtoumax.c,
20592         yesno.c: Back out Copyright date changes for each file with no change
20593         this year.  This eases coordination with other programs using the same
20594         source code modules.  From Paul Eggert.
20595
20596 2000-08-06  Paul Eggert  <eggert@twinsun.com>
20597
20598         * m4/mbstate_t.m4 (AC_MBSTATE_T): Define mbstate_t to be int,
20599         not char, for compatibility with glibc 2.1.3 strftime.c.
20600
20601 2000-08-03  Greg McGary  <greg@mcgary.org>
20602
20603         * lib/regex.c (SET_HIGH_BOUND, MOVE_BUFFER_POINTER,
20604         ELSE_EXTEND_BUFFER_HIGH_BOUND): New macros.
20605         (EXTEND_BUFFER): Use them.
20606
20607 2000-08-01  Jim Meyering  <meyering@lucent.com>
20608
20609         * lib/dirname.c (ISSLASH): Define.
20610         (BACKSLASH_IS_PATH_SEPARATOR): Define.
20611         (dir_name) [BACKSLASH_IS_PATH_SEPARATOR]: Handle the case in which
20612         both `\' and `/' may be use as path separators.
20613         Based on a patch from Prashant TR.
20614
20615 2000-07-31  Paul Eggert  <eggert@twinsun.com>
20616
20617         * lib/quotearg.c (quotearg_n_options): Don't make the initial
20618         slot vector a constant, since it might get modified.
20619
20620 2000-07-31  Jim Meyering  <meyering@lucent.com>
20621
20622         * lib/xmalloc.c: Use `virtual memory exhausted', not
20623         `Memory exhausted'.
20624         * lib/obstack.c (print_and_abort): Likewise.
20625
20626 2000-07-30  Paul Eggert  <eggert@twinsun.com>
20627
20628         * lib/quotearg.c (quotearg_n_options): Preallocate a slot 0
20629         buffer, so that the caller can always quote one small
20630         component of a "memory exhausted" message in slot 0.
20631         From a suggestion by Jim Meyering.
20632
20633 2000-07-30  Jim Meyering  <meyering@lucent.com>
20634
20635         * lib/makepath.c (make_path): Quote the other instance, too.
20636
20637         * lib/quotearg.c (N_STATIC_SLOTVECS): Define.
20638         (STATIC_BUF_SIZE): Define.
20639         (quotearg_n_options): Use only statically allocated storage when
20640         N < N_STATIC_SLOTVECS and the length of the quoted result is smaller
20641         than STATIC_BUF_SIZE.
20642
20643 2000-07-29  Jim Meyering  <meyering@lucent.com>
20644
20645         * lib/diacrit.c (diacrit_diac): Use __MSDOS__ in favor of MSDOS.
20646         * lib/dirname.c (dir_name): Likewise.
20647
20648         * lib/basename.c (base_name): Use ISSLASH rather than comparing against
20649         `/'.
20650
20651         * lib/dirname.c (dir_name) [MSDOS]: Declare `lim' to be const.
20652         (dir_name): Assert that there are no trailing slashes.
20653
20654 2000-07-29  Bruno Haible  <haible@clisp.cons.org>
20655
20656         * lib/mbswidth.h (mbswidth): Add a flags argument.
20657         (mbswidth): New declaration.
20658         (MBSW_ACCEPT_INVALID, MBSW_ACCEPT_UNPRINTABLE): New macros.
20659         * lib/mbswidth.c (mbswidth): Add a flags argument.
20660         (mbsnwidth): New function.
20661
20662 2000-07-24  Jim Meyering  <meyering@lucent.com>
20663
20664         * lib/mbswidth.c: Remove useless #else.  From Bruno Haible.
20665
20666 2000-07-23  Paul Eggert  <eggert@twinsun.com>
20667
20668         * m4/mbswidth.m4 (jm_PREREQ_MBSWIDTH): Check for wcwidth declaration.
20669
20670 2000-07-23  Paul Eggert  <eggert@twinsun.com>
20671
20672         * lib/quotearg.c: Streamline by invoking multibyte code only if needed.
20673         <wchar.h>: Include only if HAVE_MBRTOWC && 1 < MB_LEN_MAX.
20674         (MB_CUR_MAX): Redefine to 1 if ! (HAVE_MBRTOWC && 1 < MB_LEN_MAX).
20675         (quotearg_buffer_restyled): If a unibyte locale, don't bother to
20676         invoke multibyte primitives.
20677
20678 2000-07-23  Paul Eggert  <eggert@twinsun.com>
20679
20680         * lib/quotearg.c:
20681         Include <wchar.h> even if ! (HAVE_MBRTOWC && 1 < MB_LEN_MAX),
20682         so that mbstate_t is always defined.
20683
20684         Do not inspect MB_LEN_MAX, since it's incorrectly defined to
20685         be 1 in at least one GCC installation, and this configuration
20686         error is likely to be common.  Ignoring MB_LEN_MAX hurts
20687         performance on hosts that have mbrtowc but have only unibyte
20688         locales, but I assume these hosts are rare.
20689
20690 2000-07-23  Paul Eggert  <eggert@twinsun.com>
20691
20692         * lib/mbswidth.c (_XOPEN_SOURCE):
20693         Don't define; this causes problems on Solaris 7.
20694         (wcwidth) [!HAVE_DECL_WCWIDTH]: Declare.
20695
20696 2000-07-23  Jim Meyering  <meyering@lucent.com>
20697
20698         * m4/check-decl.m4 (jm_CHECK_DECLS): Check for declarations of these,
20699         too: getgrgid, getpwuid, getuid.
20700
20701 2000-07-23  Jim Meyering  <meyering@lucent.com>
20702
20703         * lib/basename.c (base_name): Add an assertion.
20704
20705 2000-07-23  Bruno Haible  <clisp.cons.org>
20706
20707         * lib/quotearg.c: When the system forces us to redefine mbstate_t,
20708         shadow its mbsinit function.
20709
20710 2000-07-17  Bruno Haible  <haible@clisp.cons.org>
20711
20712         * lib/mbswidth.h: New file.
20713         * lib/mbswidth.c: New file.
20714         * lib/Makefile.am (libfetish_a_SOURCES): Add mbswidth.c.
20715         (noinst_HEADERS): Add mbswidth.h.
20716
20717 2000-07-17  Bruno Haible  <haible@clisp.cons.org>
20718
20719         * lib/config.charset: Add support for FreeBSD. Improve support for
20720         HP-UX and IRIX 6.
20721
20722 2000-07-16  Bruno Haible  <haible@clisp.cons.org>
20723
20724         * m4/mbswidth.m4: New file.
20725         * m4/prereq.m4 (jm_PREREQ): Call jm_PREREQ_MBSWIDTH.
20726
20727 2000-07-15  Jim Meyering  <meyering@lucent.com>
20728
20729         * lib/makepath.c: Include quote.h.
20730         (make_path): Convert "`%s'" in format strings to "%s", and wrap each
20731         corresponding argument in a `quote (...)' call.
20732         Give better diagnostics.
20733
20734         * lib/Makefile.am (libfetish_a_SOURCES): Add quote.c.
20735         (noinst_HEADERS): Add quote.h.
20736
20737         * lib/quote.c (quote, quote_n): New file.  Two functions taken verbatim
20738         from tar's src/misc.c.
20739         * lib/quote.h: New file.  Prototypes for same.
20740
20741 2000-07-14  Paul Eggert  <eggert@twinsun.com>
20742
20743         From a suggestion by Bruno Haible.
20744         * lib/quotearg.c (mbrtowc): Do not use HAVE_WCHAR_H in the definition.
20745         Use defined mbstate_t, not HAVE_MBSTATE_T_OBJECT,
20746         to decide whether to define the BeOS workaround macro;
20747         this adjusts to the change to AC_MBSTATE_T.
20748
20749 2000-07-14  Jim Meyering  <meyering@lucent.com>
20750
20751         * m4/xstrtoumax.m4 (jm_AC_PREREQ_XSTRTOUMAX): Require
20752         jm_AC_TYPE_UINTMAX_T.
20753
20754 2000-07-13  Paul Eggert  <eggert@twinsun.com>
20755
20756         * lib/quotearg.h (enum quoting style): New enum clocale_quoting_style.
20757
20758         * lib/quotearg.c (quoting_style_args, quoting_style_vals,
20759         quotearg_buffer_restyled): Add support for
20760         clocale_quoting_style.  Undo previous change to
20761         locale_quoting_style behavior, and undo the "{LEFT QUOTATION MARK}"
20762         and "{RIGHT QUOTATION MARK}" msgids.
20763
20764 2000-07-10  Paul Eggert  <eggert@twinsun.com>
20765
20766         From a suggestion by Bruno Haible.
20767         * m4/mbstate_t.m4 (AC_MBSTATE_T):
20768         Renamed from AC_MBSTATE_T_OBJECT.  All uses changed.
20769         Change from a two-part test, which defines both HAVE_MBSTATE_T_OBJECT
20770         and mbstate_t, to a single-part test that simply defines mbstate_t.
20771         * m4/prereq.m4 (jm_PREREQ_QUOTEARG):
20772         s/AC_MBSTATE_T_OBJECT/AC_MBSTATE_T/.
20773
20774 2000-07-10  Jim Meyering  <meyering@lucent.com>
20775
20776         * m4/strerror_r.m4: Mirror the correction made in autoconf.
20777
20778         * m4/gnu-source.m4: Output to confdefs.h directly.
20779         Suggestion from Akim Demaille.
20780
20781 2000-07-09  Paul Eggert  <eggert@twinsun.com>
20782
20783         The old behavior of quoting `like this' doesn't look good with
20784         newer, ISO-style fonts.  See:
20785         http://www.cl.cam.ac.uk/~mgk25/ucs/quotes.html
20786
20787         Instead, quote "like this" by default.  Let the translator
20788         tailor the locale-specific quoting behavior by providing
20789         translations for {LEFT QUOTATION MARK} and {RIGHT QUOTATION MARK}.
20790
20791         * lib/quotearg.c (N_): New macro.
20792         (gettext_default): New function.
20793         (quotearg_buffer_restyled): Use
20794         gettext_default ("{LEFT QUOTATION MARK}", "\"") for left quote, and
20795         gettext_default ("{RIGHT QUOTATION MARK}", "\"") for right quote.
20796
20797 2000-07-09  Jim Meyering  <meyering@lucent.com>
20798
20799         * m4/jm-macros.m4 (jm_MACROS): Add a test to see if -lm is required
20800         to link seq.  If so, set SEQ_LIBM to -lm.  From Bruno Haible.
20801
20802         * m4/gnu-source.m4 (AC__GNU_SOURCE): New file/macro.
20803         * m4/jm-macros.m4 (jm_CHECK_ALL_TYPES): Require it.
20804
20805 2000-07-09  Jim Meyering  <meyering@lucent.com>
20806
20807         * lib/Most files: Update copyright dates to include 2000.
20808
20809 2000-07-08  Jim Meyering  <meyering@lucent.com>
20810
20811         * lib/xgethostname.c (ENAMETOOLONG): Define to an unlikely value
20812         if not defined.
20813         (xgethostname): Remove now-unnecessary #ifdef.
20814         Move declaration of `err' into loop where it's used.
20815
20816 2000-07-05  Paul Eggert  <eggert@twinsun.com>
20817         and Bruno Haible  <haible@clisp.cons.org>
20818
20819         * m4/mbstate_t.m4 (AC_MBSTATE_T_OBJECT): Test for mbstate_t
20820         only if the test for an object-type mbstate_t fails.  This
20821         prevents us from mistakenly reporting that mbstate_t is a
20822         system object type after we "#define mbstate_t int" to work
20823         around its lack.
20824
20825 2000-07-05  Paul Eggert  <eggert@twinsun.com>
20826         and Bruno Haible  <haible@clisp.cons.org>
20827
20828         * lib/quotearg.c (mbrtowc): Declare returned type, since BeOS doesn't.
20829
20830 2000-07-05  Bruno Haible  <haible@clisp.cons.org>
20831
20832         * m4/strerror_r.m4 (AC_FUNC_STRERROR_R): Pass a reasonably large buffer
20833         to strerror_r.
20834         Include <ctype.h> for use of isalpha.
20835
20836 2000-07-05  Bruno Haible  <haible@clisp.cons.org>
20837
20838         * lib/xgethostname.c (xgethostname): Protect against the SunOS 5.5 bug
20839         by allocating a larger buffer. Test the gethostname return value for
20840         being >= 0, not == 0, for BeOS.  Don't exhaust memory if gethostname
20841         returns an error and ENAMETOOLONG isn't defined.
20842
20843 2000-07-05  Bruno Haible  <haible@clisp.cons.org>
20844
20845         * lib/quotearg.c (struct quoting_options): Simplify quote_these_too
20846         dimension.
20847
20848 2000-07-04  Jim Meyering  <meyering@lucent.com>
20849
20850         * m4/fsusage.m4 (jm_FILE_SYSTEM_USAGE): Use plain old `echo' instead
20851         of the deprecated AC_CHECKING.
20852
20853 2000-07-04  Jim Meyering  <meyering@lucent.com>
20854
20855         * lib/strndup.c: [!HAVE_DECL_STRNLEN]: Declare strnlen.
20856         Reported by Bruno Haible.
20857
20858 2000-07-04  Jim Meyering  <meyering@lucent.com>
20859
20860         * lib/quotearg.c: Make inclusion of <wchar.h> independent of whether
20861         HAVE_MBRTOWC is set.  Required at least for irix-5.6, which
20862         lacks mbrtowc.
20863
20864 2000-07-03  Paul Eggert  <eggert@twinsun.com>
20865
20866         * m4/mbstate_t.m4 (AC_MBSTATE_T_OBJECT): Port to autoconf 2.13.
20867         Add AC_CHECK_HEADERS(stdlib.h), since we use HAVE_STDLIB_H.
20868
20869 2000-07-03  Paul Eggert  <eggert@twinsun.com>
20870         and Bruno Haible  <haible@clisp.cons.org>
20871
20872         * lib/quotearg.c (mbrtowc):
20873         Assign to *pwc, and return 1 only if result is nonzero.
20874         (iswprint): Use ISPRINT when substituting our own mbrtowc.
20875
20876 2000-07-03  Jim Meyering  <meyering@lucent.com>
20877
20878         * m4/check-decl.m4 (AC_CHECK_DECLS): Add strnlen.
20879
20880 2000-07-03  Jim Meyering  <meyering@lucent.com>
20881
20882         * lib/readutmp.h: [HAVE_UTMPX_H]: Include <utmp.h> if HAVE_UTMP_H.
20883         This is necessary to get a definition of e.g., UTMP_FILE on
20884         HP-UX 10.20.
20885         From Bob Proulx.
20886
20887 2000-07-02  Jim Meyering  <meyering@lucent.com>
20888
20889         * m4/mbstate_t.m4: Also define mbstate_t, if necessary.
20890
20891         * m4/chown.m4: Replace each use of AC_SUBST(LIBOBJS)/LIBOBJS=... with
20892         AC_LIBOBJ(function_name).
20893         * m4/chown.m4: Likewise.
20894         * m4/fnmatch.m4: Likewise.
20895         * m4/ftruncate.m4: Likewise.
20896         * m4/getgroups.m4: Likewise.
20897         * m4/getline.m4: Likewise.
20898         * m4/group-member.m4: Likewise.
20899         * m4/jm-macros.m4: Likewise.
20900         * m4/lstat.m4: Likewise.
20901         * m4/malloc.m4: Likewise.
20902         * m4/memcmp.m4: Likewise.
20903         * m4/nanosleep.m4: Likewise.
20904         * m4/putenv.m4: Likewise.
20905         * m4/realloc.m4: Likewise.
20906         * m4/regex.m4: Likewise.
20907         * m4/stat.m4: Likewise.
20908         * m4/strftime.m4: Likewise.
20909
20910 2000-07-02  Jim Meyering  <meyering@lucent.com>
20911
20912         * lib/quotearg.c (mbstate_t): Don't define here.
20913
20914 2000-07-02  Jim Meyering  <meyering@lucent.com>
20915
20916         * lib/nanosleep.c (SIGCONT): Define if not already defined.
20917
20918 2000-07-01  Jim Meyering  <meyering@lucent.com>
20919
20920         * m4/uptime.m4: Put double quotes around use of $cross_compiling.
20921
20922 2000-07-01  Jim Meyering  <meyering@lucent.com>
20923
20924         * m4/ls-mntd-fs.m4: Remove a `FIXME' comment and fix the associated
20925         problem.
20926
20927 2000-07-01  Bruno Haible  <haible@clisp.cons.org>
20928
20929         * m4/ls-mntd-fs.m4 (jm_LIST_MOUNTED_FILESYSTEMS): Rename BeOS specific
20930         macro from MOUNTED_NEXT_DEV to MOUNTED_FS_STAT_DEV.
20931
20932 2000-07-01  Bruno Haible  <haible@clisp.cons.org>
20933
20934         * lib/mountlist.c: Use MOUNTED_FS_STAT_DEV instead of MOUNTED_NEXT_DEV,
20935         per change in ../m4/ls-mntd-fs.m4.
20936         (read_filesystem_list): Ignore symbolic links.
20937
20938 2000-06-29  Jim Meyering  <meyering@lucent.com>
20939
20940         * lib/same.c: Include <string.h> or <strings.h>, as appropriate,
20941         for declaration of strcmp.
20942
20943         * lib/long-options.c: Include <stdlib.h>, for declaration of exit.
20944
20945         * lib/mountlist.c (fsp_to_string) [HAVE_F_FSTYPENAME_IN_STATFS]:
20946         Avoid warning by casting result to `char *' to remove `const'.
20947
20948 2000-06-28  Jim Meyering  <meyering@lucent.com>
20949
20950         * m4/mbstate_t.m4: Use stdlib.h, not stdio.h.  The latter is not
20951         included by quotearg.c, for which we perform this test.  From
20952         Bruno Haible.
20953
20954 2000-06-27  Bruno Haible  <haible@clisp.cons.org>
20955
20956         * m4/check-decl.m4 (_jm_DECL_HEADERS): Check for utmp.h as well.
20957         * m4/prereq.m4 (jm_PREREQ_READUTMP): Likewise. If either <utmp.h> or
20958         <utmpx.h> exists, put readutmp.o into LIBOBJS.
20959
20960 2000-06-27  Bruno Haible  <haible@clisp.cons.org>
20961
20962         * lib/Makefile.am (libfetish_a_SOURCES): Remove readutmp.c.
20963
20964 2000-06-26  Paul Eggert  <eggert@twinsun.com>
20965
20966         savedir now sets errno on failure and invokes xmalloc to get memory.
20967         Fix a couple of other minor bugs while we're at it.
20968
20969         * lib/savedir.c (<unistd.h>): Do not include; there's no need.
20970         (NAMLEN): Remove macro.
20971         (malloc, realloc): Remove decls.
20972         (stpcpy): Likewise.
20973         ("xalloc.h"): Include.
20974         (NAME_SIZE_DEFAULT): New macro.
20975         (savedir): Use xmalloc / xrealloc to allocate memory.
20976         Use NAME_SIZE_DEFAULT if name_size is negative or overflows to zero.
20977         Skip "" directory entries.
20978         Use strlen to calculate directory entry length, since the old method
20979         is rarely used these days and isn't worth supporting.
20980         Don't use a pointer after freeing it.
20981         Check for integer overflow when calculating allocation size.
20982         Use memcpy to copy entries, instead of stpcpy.
20983         Set errno properly when returning NULL.
20984         Check for readdir error.
20985
20986 2000-06-26  Jim Meyering  <meyering@lucent.com>
20987
20988         * lib/posixtm.c [HAVE_STDLIB_H]: Include stdlib.h, for decl of abort.
20989
20990 2000-06-25  Jim Meyering  <meyering@lucent.com>
20991
20992         * m4/mbstate_t.m4: Include stdio.h before wchar.h to work around
20993         Linux header bug when _XOPEN_SOURCE is defined to 500.
20994
20995 2000-06-25  Bruno Haible  <haible@clisp.cons.org>
20996
20997         * lib/unicodeio.c (print_unicode_char): Work around ansi2knr
20998         deficiency.
20999
21000 2000-06-25  Bruno Haible  <haible@clisp.cons.org>
21001
21002         * lib/getusershell.c (xmalloc, xrealloc): Remove functions.
21003         Include xalloc.h.
21004         Don't include <stdlib.h>.  Don't declare malloc, realloc.
21005
21006 2000-06-24  Jim Meyering  <meyering@lucent.com>
21007
21008         * m4/strerror_r.m4: Revive this file -- to try out an experimental
21009         version of AC_FUNC_STRERROR_R that may work even on BeOS, a system
21010         for which strerror does return char*, but which lacks a conveniently
21011         accessible declaration of the function.  If the compile-test says
21012         strerror_r doesn't work, then resort to a `run'-test that works on
21013         BeOS and segfaults on DEC Unix.
21014
21015 2000-06-24  Jim Meyering  <meyering@lucent.com>
21016
21017         * lib/error.c [!HAVE_DECL_STRERROR_R]: Declare strerror_r.
21018
21019 2000-06-23  Paul Eggert  <eggert@twinsun.com>
21020
21021         * m4/mbstate_t.m4: New file, defining AC_MBSTATE_T_OBJECT.
21022         * m4/prereq.m4 (jm_PREREQ_QUOTEARG): Use it.  Add check for iswprint.
21023
21024 2000-06-23  Paul Eggert  <eggert@twinsun.com>
21025
21026         * lib/quotearg.c: Include <wctype.h> after <wchar.h>, for Solaris 2.5.
21027         (mbrtowc, mbstate_t): Define substitutes if
21028         HAVE_MBRTOWC && HAVE_WCHAR_H && !HAVE_MBSTATE_T_OBJECT.
21029         (iswprint): Define to 1 if !defined iswprint && !HAVE_ISWPRINT,
21030         not if ! (HAVE_MBRTOWC && HAVE_WCHAR_H).
21031
21032 2000-06-23  Jim Meyering  <meyering@lucent.com>
21033
21034         * m4/afs.m4: Add missing AC_MSG_RESULT.
21035         Reported by Bruno Haible.
21036
21037         * m4/fsusage.m4: s/AC_MSG_CHECKING/AC_CHECKING/.
21038         Suggestion from Bruno Haible.
21039
21040 2000-06-23  Jim Meyering  <meyering@lucent.com>
21041
21042         * lib/getpass.c: New file, from Bruno Haible.  Required for BeOS.
21043
21044 2000-06-21  Jim Meyering  <meyering@lucent.com>
21045
21046         * m4/jm-macros.m4 (AC_REPLACE_FUNCS): Add getpass.
21047
21048 2000-06-21  Jim Meyering  <meyering@lucent.com>
21049
21050         * lib/Makefile.am (libfetish_a_SOURCES): Add getstr.c.
21051         (noinst_HEADERS): Add getstr.h.
21052
21053         * lib/getline.c (getstr): Move into a separate file.
21054         * lib/getstr.c (getstr): New file, extracted from getline.c, with
21055         the following changes: new parameter, delim2; both delim[12]
21056         parameters have type `int', not `char'.  The latter would lose
21057         with 8-bit delimiters.
21058         * lib/getstr.h: New file.
21059
21060 2000-06-21  Bruno Haible  <haible@clisp.cons.org>
21061
21062         * lib/xgetcwd.c (xgetcwd): If the required pathname length is smaller
21063         than 1024, return a memory chunk of least possible size, instead
21064         of size PATH_MAX + 2. In the loop, increment the size proportionally.
21065         Use free/xmalloc instead of xrealloc to avoid copying for very long
21066         paths.
21067
21068 2000-06-21  Bruno Haible  <haible@clisp.cons.org>
21069
21070         * lib/path-concat.c (path_concat): Don't access dir[-1] if dir is
21071         the empty string.
21072
21073 2000-06-21  Bruno Haible  <haible@clisp.cons.org>
21074
21075         * lib/canon-host.c (canon_host): Use malloc and memcpy to copy an
21076         address, not strdup.  Include <stdlib.h> and don't declare free().
21077
21078 2000-06-19  Jim Meyering  <meyering@lucent.com>
21079
21080         * lib/getloadavg.c [HAVE_NLIST_H] (NLIST_STRUCT): Define.
21081
21082 2000-06-18  Jim Meyering  <meyering@lucent.com>
21083
21084         * m4/jm-macros.m4 (AC_REPLACE_FUNCS): Remove mkdir.
21085
21086         * m4/link-follow.m4 (jm_AC_FUNC_LINK_FOLLOWS_SYMLINK): Change the
21087         `checking whether...' message to be consistent with that of the
21088         lstat test.
21089
21090 2000-06-18  Jim Meyering  <meyering@lucent.com>
21091
21092         * lib/mkdir.c: Remove file, due mainly to copyright incompatibility.
21093         Besides, these days every porting target provides a mkdir function.
21094
21095         * lib/strnlen.c: Include memory.h, string.h, and/or strings.h as
21096         needed. (this snippet comes from src/system.h).
21097
21098 2000-06-16  Bruno Haible  <haible@clisp.cons.org>
21099
21100         * m4/glibc21.m4 (jm_GLIBC21): Define GLIBC21 for Makefiles, not for C.
21101
21102 2000-06-15  Paul Eggert  <eggert@twinsun.com>
21103
21104         * lib/human.c (adjust_value): New function.
21105         (human_readable_inexact): Apply rounding style even when
21106         printing approximate values.
21107
21108 2000-06-14  Paul Eggert  <eggert@twinsun.com>
21109
21110         * lib/human.c (human_readable_inexact): Allow an input block
21111         size that is not a multiple of the output block size, and vice versa.
21112         Reported by Piergiorgio Sartor.
21113
21114 2000-06-14  Paul Eggert  <eggert@twinsun.com>
21115
21116         * lib/getdate.y (get_date): Apply relative times after time
21117         zone indicator, not before.  Reported by Todd A. Jacobs.
21118
21119 2000-06-13  Jim Meyering  <meyering@lucent.com>
21120
21121         * lib/Makefile.am (all-local): Depend on lstat.c and stat.c.
21122
21123         * lib/xstat.in [!HAVE_DECL_FREE]: Declare free in lstat.c.
21124
21125 2000-06-12  Paul Eggert  <eggert@twinsun.com>
21126
21127         * lib/xstat.in: Include <stdlib.h> in lstat, to declare "free".
21128
21129 2000-06-12  Jim Meyering  <meyering@lucent.com>
21130
21131         * m4/getloadavg.m4 (AM_FUNC_GETLOADAVG): Replace with
21132         AC_FUNC_GETLOADAVG from autoconf, and tweak the latter to accept an
21133         optional argument.
21134         * m4/jm-macros.m4: s/AM_FUNC_GETLOADAVG/AC_FUNC_GETLOADAVG/, and supply
21135         the optional argument, `lib'.
21136
21137 2000-06-08  Jim Meyering  <meyering@lucent.com>
21138
21139         * m4/largefile.m4: Remove file (now that it's part of autoconf).
21140
21141 2000-06-04  Paul Eggert  <eggert@twinsun.com>
21142
21143         Rewrite largefile configuration so that we don't need to run
21144         getconf and don't need AC_CANONICAL_HOST.  [I'm leaving the use of
21145         AC_CANONICAL_HOST in configure.in -- jmm]
21146
21147         * m4/largefile.m4 (AC_SYS_LARGEFILE_FLAGS,
21148         AC_SYS_LARGEFILE_SPACE_APPEND): Remove.
21149         (AC_SYS_LARGEFILE_TEST_INCLUDES): New macro.
21150         (AC_SYS_LARGEFILE_MACRO_VALUE): Change arguments from
21151         CODE-TO-SET-DEFAULT to VALUE, INCLUDES, FUNCTION-BODY.
21152         All uses changed.
21153         Instead of inspecting the output of getconf, try to compile the
21154         test program without and with the macro definition.
21155         (AC_SYS_LARGEFILE): Do not require AC_CANONICAL_HOST or check
21156         for getconf.  Instead, check for the needed flags by compiling
21157         test programs.
21158
21159 2000-06-04  Paul Eggert  <eggert@twinsun.com>
21160
21161         * lib/strnlen.c: Include <config.h> if HAVE_CONFIG_H.
21162
21163 2000-06-04  Jim Meyering  <meyering@lucent.com>
21164
21165         * lib/getugroups.c (getugroups): Cast -1 to gid_t, for systems like
21166         SunOS 4.1.4 for which gid_t is an unsigned type.
21167
21168 2000-06-03  Jim Meyering  <meyering@lucent.com>
21169
21170         * m4/prereq.m4 (jm_PREREQ_HUMAN): Use []-quoted list in AC_CHECK_DECLS,
21171         now that autoconf requires that.
21172
21173         * m4/jm-glibc-io.m4: Add a kludge to make autoheader emit the required
21174         #undefs.  E.g., #undef HAVE_DECL_FERROR_UNLOCKED.
21175         Use []-quoted list in AC_CHECK_DECLS, now that autoconf requires that.
21176
21177 2000-06-03  Jim Meyering  <meyering@lucent.com>
21178
21179         * lib/strnlen.c [!HAVE_DECL_MEMCHR]: Declare memchr.
21180
21181 2000-06-03  Bruno Haible  <haible@clisp.cons.org>
21182
21183         * m4/glibc21.m4: New file.
21184         * m4/jm-macros.m4 (jm_MACROS): Call jm_GLIBC21.
21185
21186 2000-06-03  Bruno Haible  <haible@clisp.cons.org>
21187
21188         * lib/Makefile.am (install-exec-local): On systems with glibc-2.1 or
21189         newer, don't install charset.alias.
21190         * lib/config.charset: Change the Linux/glibc rules so they become empty
21191         on glibc-2.1 or newer.
21192
21193 2000-06-02  Jim Meyering  <meyering@lucent.com>
21194
21195         * lib/mountlist.c: Back out last change.  Instead, do this...
21196         * lib/mountlist.c (read_filesystem_list) [MOUNTED_VMOUNT]: Set the
21197         me_dummy member using the same `ignore'-testing code.
21198         * lib/mountlist.h (ME_DUMMY): Add `autofs' to the list of ignored
21199         fs_type strings.
21200         From Mark D. Roth.
21201
21202 2000-05-29  Jim Meyering  <meyering@lucent.com>
21203
21204         * lib/mountlist.c (read_filesystem_list) [MOUNTED_VMOUNT]: Ignore
21205         mounts with the `ignore' attribute.  Based on a patch from
21206         Mark D. Roth.
21207
21208 2000-05-28  Jim Meyering  <meyering@lucent.com>
21209
21210         * m4/jm-macros.m4 (AC_FUNC_LSTAT_FOLLOWS_SLASHED_SYMLINK): Rename from
21211         jm_FUNC_LSTAT_FOLLOWS_SLASHED_SYMLINK.
21212         * m4/stat.m4: Likewise.
21213         * m4/lstat.m4: Likewise.
21214         * m4/lstat-slash.m4: Remove file (absorbed into autoconf).
21215
21216         * m4/jm-macros.m4 (AC_FUNC_STRERROR_R): Rename from jm_FUNC_STRERROR_R.
21217         * m4/strerror_r.m4: Remove file (absorbed into autoconf).
21218
21219 2000-05-26  Jim Meyering  <meyering@lucent.com>
21220
21221         * m4/uptime.m4: Use `$cross_compiling', not `$ac_cv_prog_cc_cross'.
21222
21223 2000-05-24  Jim Meyering  <meyering@lucent.com>
21224
21225         * m4/prereq.m4: Use []-quoted list in AC_CHECK_MEMBERS, now that
21226         autoconf requires that.
21227         * m4/lib-check.m4: Likewise.
21228         * m4/jm-macros.m4: Likewise.
21229         * m4/strftime.m4: Likewise.
21230
21231         * m4/check-decl.m4 (jm_CHECK_DECLS): Use []-quoted list in
21232         AC_CHECK_DECLS, now that autoconf requires that.
21233
21234 2000-05-22  Jim Meyering  <meyering@lucent.com>
21235
21236         * m4/stat.m4: Require jm_FUNC_LSTAT_FOLLOWS_SLASHED_SYMLINK.
21237         * m4/lstat.m4: Likewise.
21238
21239 2000-05-22  Jim Meyering  <meyering@lucent.com>
21240
21241         * lib/makepath.c: Remove old, now-unnecessary `#ifdef __MSDOS__' block.
21242
21243 2000-05-20  Jim Meyering  <meyering@lucent.com>
21244
21245         * m4/prereq.m4 (jm_PREREQ_HUMAN): New macro.
21246         (jm_PREREQ): Use it.
21247
21248 2000-05-18  Jim Meyering  <meyering@lucent.com>
21249
21250         * lib/hash.c (hash_rehash): Fix a nasty bug: copy the free entry list
21251         back, too, since it may have been modified by allocate_entry.
21252         (hash_delete): Rewrite to use neither the assignment operator
21253         nor the comma operator in an if-expression.
21254
21255 2000-05-15  Paul Eggert  <eggert@twinsun.com>
21256
21257         * lib/closeout.c:
21258         <sys/stat.h>, <sys/types.h>, <unistd.h>, (STDOUT_FILENO):
21259         Remove; no longer needed.
21260         "quotearg.h": Add include.
21261         (file_name): Do not bother to explicitly initialize to NULL; it's less
21262         efficient on some hosts.
21263         (close_stdout_status): Remove test as to whether stdout was already
21264         closed; it breaks for the case "echo x | sort >&-".
21265         Quote file name colons.
21266         Do not assume that _("write error") lacks format strings.
21267
21268 2000-05-15  Jim Meyering  <meyering@lucent.com>
21269
21270         * lib/version-etc.c (version_etc_copyright): Update the copyright
21271         string used in all --version output.
21272
21273 2000-05-14  Jim Meyering  <meyering@lucent.com>
21274
21275         * lib/closeout.c (close_stdout_set_file_name): New function.
21276         (close_stdout_status): Use new file-scoped global.
21277         Return right away if fstat says the stdout file descriptor is invalid.
21278         * lib/closeout.h (close_stdout_set_file_name): Declare.
21279
21280 2000-05-10  Jim Meyering  <meyering@lucent.com>
21281
21282         * lib/closeout.c [default_exit_status]: New file-scoped variable.
21283         (close_stdout_set_status): New function.
21284         * lib/closeout.h (close_stdout_set_status): Declare.
21285
21286 2000-05-09  Jim Meyering  <meyering@lucent.com>
21287
21288         * m4/gettext.m4: Rename this...
21289         * m4/libintl.m4: ...to this.
21290
21291 2000-05-08  Jim Meyering  <meyering@lucent.com>
21292
21293         * lib/long-options.c: Don't include closeout.h.
21294         (parse_long_options): Don't call close_stdout for --version.
21295
21296 2000-05-06  Paul Eggert  <eggert@twinsun.com>
21297
21298         * m4/largefile.m4 (AC_SYS_LARGEFILE): Define _XOPEN_SOURCE to
21299         be 500, instead of _GNU_SOURCE to be 1, to work around glibc
21300         2.1.3 bug.  This avoids a clash when files like regex.c define
21301         _GNU_SOURCE.
21302
21303 2000-05-06  Jim Meyering  <meyering@lucent.com>
21304
21305         * m4/jm-macros.m4 (AC_REPLACE_FUNCS): Add atexit.
21306         (AC_REPLACE_FUNCS): Add strnlen.
21307
21308         * m4/rmdir-errno.m4 (fetish_FUNC_RMDIR_NOTEMPTY): New macro and file.
21309         * m4/jm-macros.m4: Require fetish_FUNC_RMDIR_NOTEMPTY.
21310
21311         * m4/nanosleep.m4 (jm_FUNC_NANOSLEEP): Save and restore LIBS around
21312         AC_SEARCH_LIBS call for nanosleep.
21313         (LIB_NANOSLEEP): Set and AC_SUBST.
21314
21315 2000-05-06  Jim Meyering  <meyering@lucent.com>
21316
21317         * lib/strnlen.c: Undefine __strnlen and strnlen.
21318         [!weak_alias]: Define __strnlen to strnlen.
21319
21320         * lib/atexit.c: New file, from libiberty.
21321
21322 2000-05-06  Jim Meyering  <meyering@lucent.com>
21323
21324         * lib/closeout.c (close_stdout_status): Also check for errors on the
21325         stderr stream.
21326
21327 2000-05-05  Jim Meyering  <meyering@lucent.com>
21328
21329         * m4/jm-macros.m4 (jm_MACROS): Save and restore LIBS around
21330         AC_SEARCH_LIBS call for clock_gettime.
21331         (LIB_CLOCK_GETTIME): Set and AC_SUBST.
21332
21333         * m4/search-libs.m4: Update from autoconf.
21334
21335         su doesn't work on Solaris 2.6.
21336         * m4/lib-check.m4: When checking for struct spwd.sp_pwdp, also include
21337         <shadow.h>.  Reported by Dragos Harabor.
21338
21339 2000-05-05  Bruno Haible  <haible@clisp.cons.org>
21340
21341         * lib/localcharset.c (get_charset_aliases): Use malloc, realloc and
21342         memcpy instead of xmalloc, xrealloc, path_concat.
21343         (locale_charset): Treat empty environment variables as absent.
21344         (DIRECTORY_SEPARATOR, ISSLASH): New macros.
21345
21346 2000-05-04  Jim Meyering  <meyering@lucent.com>
21347
21348         * lib/getopt.c: Update from glibc.
21349         * lib/obstack.c: Likewise.
21350         * lib/obstack.h: Likewise.
21351         * lib/regex.c: Likewise.  NB: K&R compiler support is dropped for this
21352         file
21353
21354         * lib/regex.h: Likewise.
21355         * lib/strndup.c: Likewise.
21356         * lib/strnlen.c: New file, from glibc.
21357
21358 2000-05-03  Jim Meyering  <meyering@lucent.com>
21359
21360         * m4/check-decl.m4 (AC_CHECK_DECLS): Add strndup.
21361
21362 2000-05-02  Paul Eggert  <eggert@twinsun.com>
21363
21364         * m4/largefile.m4 (AC_SYS_LARGEFILE): Define _GNU_SOURCE if
21365         this is needed to make ftello visible (e.g. glibc 2.1.3).  Use
21366         compile-time test, rather than inspecting host and OS, to
21367         decide whether to define _LARGEFILE_SOURCE.
21368
21369 2000-05-01  Jim Meyering  <meyering@lucent.com>
21370
21371         * m4/fsusage.m4: Use AC_MSG_CHECKING instead of obsolete AC_CHECKING.
21372
21373         * m4/ls-mntd-fs.m4 (jm_LIST_MOUNTED_FILESYSTEMS): Add BeOS support.
21374         Based on a patch from Bruno Haible.
21375
21376 2000-05-01  Jim Meyering  <meyering@lucent.com>
21377
21378         * lib/full-write.c (full_write): Remove `FIXME' part of comment.
21379
21380 2000-04-29  Jim Meyering  <meyering@lucent.com>
21381
21382         * lib/path-concat.c: Declare strdup only if it's not defined.
21383         * lib/canon-host.c: Likewise.
21384
21385 2000-04-28  Jim Meyering  <meyering@lucent.com>
21386
21387         * lib/rpmatch.c [HAVE_LIMITS_H]: Include limits.h before regex.h to
21388         avoid redefinition warning on some systems (HPUX).  Otherwise, regex.h
21389         is included first, then limits.h is included by locale.h by libintl.h.
21390         From John David Anglin.
21391
21392 2000-04-25  Jim Meyering  <meyering@lucent.com>
21393
21394         * lib/makepath.c (S_IRWXUGO): Define.
21395         (make_path): Always perform explicit chmod if MODE specifies any
21396         of the `special' permission bits.  Prompted by a bug report against
21397         install from Mate Wierdl and Joost van Baal.
21398
21399 2000-04-18  Jim Meyering  <meyering@lucent.com>
21400
21401         * m4/prereq.m4 (jm_PREREQ_GETPAGESIZE): New macro.
21402         (jm_PREREQ): Use it.
21403
21404 2000-04-18  Jim Meyering  <meyering@lucent.com>
21405
21406         * lib/README: New file.
21407
21408         * lib/getpagesize.h [!getpagesize && HAVE_OS_H && B_PAGE_SIZE]: Define
21409         getpagesize.  For BeOS.  Based on a patch from Bruno Haible.
21410
21411 2000-04-17  Jim Meyering  <meyering@lucent.com>
21412
21413         Get it right :-)
21414         * m4/jm-macros.m4 (jm_CHECK_ALL_TYPES) [_GNU_SOURCE]: Emit the
21415         actual #define via AH_VERBATIM.  Don't need separate AC_DEFINE.
21416         Suggestion from Akim Demaille.
21417
21418 2000-04-17  Jim Meyering  <meyering@lucent.com>
21419
21420         * lib/strftime.c (my_strftime) [strftime]: Declare strftime here, since
21421         the definition of it to rpl_strftime also defined-away the system's
21422         declaration.
21423
21424 2000-04-15  Jim Meyering  <meyering@lucent.com>
21425
21426         Use `C' to denote so-called `contiguous' files, the same way
21427         that tar does.
21428         * lib/filemode.c (S_ISCTG) [!S_ISCTG && S_IFCTG]: Define.
21429         (ftypelet): Use S_ISCTG.
21430         From Michael Deutschmann.
21431
21432 2000-04-14  Jim Meyering  <meyering@lucent.com>
21433
21434         * m4/jm-macros.m4 (jm_CHECK_ALL_TYPES) [_GNU_SOURCE]: Use the one-arg
21435         form of AC_DEFINE.  Otherwise, the #ifndef in AH_VERBATIM gets
21436         clobbered.
21437
21438 2000-04-14  Jim Meyering  <meyering@lucent.com>
21439
21440         * lib/strftime.c (my_strftime) [#ifdef strftime]: Declare strftime.
21441
21442 2000-04-13  Jim Meyering  <meyering@lucent.com>
21443
21444         * m4/jm-macros.m4 (jm_CHECK_ALL_TYPES) [_GNU_SOURCE]: Use new
21445         AH_VERBATIM to insert required #ifndef into config.h.in.
21446         Suggestion from Akim Demaille.
21447
21448 2000-04-12  Jim Meyering  <meyering@lucent.com>
21449
21450         * m4/getloadavg.m4 (AM_FUNC_GETLOADAVG): Use AC_CHECK_HEADERS, not
21451         `AC_CHECK_HEADER' to check for locale.h.  Thanks to a report from
21452         Christian Krackowizer.
21453
21454         More code moved from ../configure.in into (jm_CHECK_ALL_TYPES).
21455         * m4/jm-macros.m4 (_GNU_SOURCE): Define.
21456         (AC_SYS_LARGEFILE): Require.
21457         (AM_C_PROTOTYPES): Require.
21458
21459 2000-04-08  Jim Meyering  <meyering@lucent.com>
21460
21461         * lib/Makefile.am (charset.alias): Use t-$@, not $@-t so the DOS 8.3
21462         names don't conflict.  Reported by Eli Zaretskii.
21463
21464 2000-04-07  Jim Meyering  <meyering@lucent.com>
21465
21466         * lib/putenv.c: Move inclusion of errno.h so it follows that of
21467         sys/types.h, to work around system header problems on AIX 3.2.5.
21468         From Bruno Haible.
21469
21470 2000-04-07  Bruno Haible  <haible@clisp.cons.org>
21471
21472         * lib/unicodeio.c (print_unicode_char): Avoid triggering Solaris iconv
21473         bug.  Deal with the different error behavior of Irix iconv.
21474
21475 2000-04-05  Paul Eggert  <eggert@twinsun.com>
21476
21477         * m4/largefile.m4 (AC_SYS_LARGEFILE_FLAGS): Don't use -n32 on
21478         IRIX if the installer said otherwise.
21479
21480 2000-04-05  Jim Meyering  <meyering@lucent.com>
21481
21482         Portability tweaks required for ultrix4.3.
21483         * m4/check-decl.m4 [!HAVE_UTMPX_H] (headers): Include <utmp.h>.
21484         (jm_CHECK_DECLS): Add getutent to the list of functions.
21485         (_jm_DECL_HEADERS): Add utmpx.h.
21486         From John David Anglin.
21487
21488         * m4/strftime.m4: Back out the 2000-04-02 change.
21489         Instead of that change, simply undefine putenv in the test program.
21490
21491 2000-04-05  Jim Meyering  <meyering@lucent.com>
21492
21493         Portability tweaks required for ultrix4.3.
21494         * lib/readutmp.h [HAVE_UTMPX_H && !HAVE_DECL_GETUTENT]: Declare
21495         getutent.
21496         * lib/readutmp.c: Include sys/types.h before sys/stat.h.
21497         * lib/canon-host.c: Declare strdup.
21498         * lib/path-concat.c: Likewise.
21499         From John David Anglin.
21500
21501 2000-04-04  Jim Meyering  <meyering@lucent.com>
21502
21503         Be more DOS 8.3-friendly.
21504         * lib/ref-add.sin: Renamed from ref-add.sed.in.
21505         * lib/ref-del.sin: Renamed from ref-del.sed.in.
21506         * lib/Makefile.am: Reflect renaming.
21507         Reported by Eli Zaretskii.
21508
21509         Use a temporary file name that won't clash with `charset.alias'
21510         in the DOS 8.3 name space.
21511         * lib/Makefile.am (charset_tmp): Define.
21512         (install-exec-local): Use $(charset_tmp) instead of $(charset_alias)-t.
21513         (uninstall-local): Likewise.
21514         Reported by Eli Zaretskii.
21515
21516 2000-04-03  Jim Meyering  <meyering@lucent.com>
21517
21518         * m4/gettext.m4: Fix typo in comment.
21519
21520         * m4/codeset.m4 (AC_CHECK_HEADERS): Add langinfo.h (moved here from
21521         textutils/configure.in).  Suggestion from Paul Eggert.
21522         (AC_CHECK_FUNCS): Add nl_langinfo.  (also from textutils/configure.in)
21523
21524 2000-04-02  Paul Eggert  <eggert@twinsun.com>
21525
21526         * m4/strftime.m4 (jm_FUNC_GNU_STRFTIME): Set TZ environment
21527         variable in the shell rather than using putenv, which isn't
21528         portable.  This avoids the configure-time inter-test dependency
21529         on the potentially-renamed putenv function.
21530
21531 2000-03-30  Paul Eggert  <eggert@twinsun.com>
21532
21533         * m4/jm-macros.m4 (jm_CHECK_ALL_TYPES): Include <sys/stat.h>
21534         before checking struct stat.st_blksize, so that
21535         HAVE_STRUCT_STAT_ST_BLKSIZE is defined correctly.
21536
21537 2000-03-29  Paul Eggert  <eggert@twinsun.com>
21538
21539         * m4/strftime.m4 (_jm_STRFTIME_PREREQS): Check for strftime,
21540         since strftime.c uses HAVE_STRFTIME to decide whether to use
21541         the underlying strftime.
21542
21543 2000-03-29  Paul Eggert  <eggert@twinsun.com>
21544
21545         * lib/time/strftime.c (my_strftime): Make sure we call the system
21546         strftime, not ourselves, when invoking the underlying strftime.
21547
21548 2000-03-24  Jim Meyering  <meyering@lucent.com>
21549
21550         * lib/Makefile.am (EXTRA_DIST): Add ref-add.sed.in and ref-del.sed.in.
21551         (charset_alias): Define.
21552         (install-exec-local): Factor out common code.
21553         (uninstall-local): Split lines longer than 80.
21554         (ref-add.sed, ref-del.sed): Remove rules... (do the following instead)
21555         (SUFFIXES): Define.
21556         (.sed.in.sed): New rule.  Don't redirect directly to $@.
21557         (CLEANFILES): Add ref-add.sed and ref-del.sed.
21558
21559 2000-03-19  Bruno Haible  <haible@clisp.cons.org>
21560
21561         * lib/config.charset: Output a line containing "Packages using this
21562         file".
21563         * lib/ref-add.sed.in, ref-del.sed.in: New files.
21564         * lib/Makefile.am (install-exec-local, uninstall-local, ref-add.sed,
21565         ref-del.sed): New rules.
21566
21567 2000-03-17  Jim Meyering  <meyering@lucent.com>
21568
21569         * lib/unicodeio.c (<string.h>): Include only #if HAVE_STRING_H.
21570         Otherwise, include <strings.h>
21571
21572 2000-03-17  Bruno Haible  <haible@clisp.cons.org>
21573
21574         * lib/unicodeio.c (utf8_wctomb): New function.
21575         (print_unicode_char): Pass the Unicode character to iconv in UTF-8
21576         format instead of in UCS-4 with platform dependent endianness.
21577
21578 2000-03-10  Jim Meyering  <meyering@lucent.com>
21579
21580         * m4/lib-check.m4: Look for getspnam in -lgen, too.
21581         From Marco Franzen.
21582
21583 2000-03-07  Paul Eggert  <eggert@twinsun.com>
21584
21585         * lib/savedir.c (savedir): Work even if directory size is
21586         negative; this can happen with some screwy NFS configurations.
21587
21588 2000-03-06  Jim Meyering  <meyering@lucent.com>
21589
21590         * lib/localcharset.c (get_charset_aliases): Don't try to free file_name
21591         if it's NULL (because we ran out of memory).  From Bruno Haible.
21592
21593 2000-03-05  Jim Meyering  <meyering@lucent.com>
21594
21595         * lib/localcharset.c ("path-concat.h"): Include.
21596         (get_charset_aliases): Use path_concat instead of ANSI string
21597         concatenation.
21598
21599         * lib/unicodeio.h (PARAMS): Define.
21600         Use it to guard prototype.
21601
21602 2000-03-04  Jim Meyering  <meyering@lucent.com>
21603
21604         * m4/jm-macros.m4 (jm_CHECK_ALL_TYPES): Require AC_C_VOLATILE,
21605         for lib/localcharset.c.
21606
21607 2000-03-04  Jim Meyering  <meyering@lucent.com>
21608
21609         * lib/Makefile.am (install-exec-local): Create $(libdir) before
21610         installing into it.
21611         (uninstall-local): Uncomment this rule so `make distcheck' works
21612         once again.
21613
21614         * lib/unicodeio.c (<errno.h>): Include it.
21615         (errno): Declare if not defined.
21616
21617         * lib/localcharset.c: Add Bruno's comment justifying use of volatile.
21618
21619         * lib/config.charset: New version, incorporating remarks from a linux
21620         i18n mailing list.  From Bruno Haible.
21621
21622 2000-03-04  Bruno Haible  <haible@clisp.cons.org>
21623
21624         * m4/codeset.m4: New file.
21625         * m4/iconv.m4: New file.
21626         * m4/jm-macros.m4 (jm_MACROS): Call jm_LANGINFO_CODESET and jm_ICONV.
21627
21628 2000-03-03  Jim Meyering  <meyering@lucent.com>
21629
21630         * m4/regex.m4: Make sure re_compile_pattern accepts patterns like `{1'.
21631
21632 2000-03-02  Jim Meyering  <meyering@lucent.com>
21633
21634         * m4/timespec.m4: Require AC_HEADER_TIME before the cache check so
21635         the messages come out on separate lines.
21636
21637         * m4/jm-glibc-io.m4 (jm_FUNC_GLIBC_UNLOCKED_IO): Use AC_CHECK_DECLS,
21638         rather than jm_CHECK_DECLARATIONS.
21639         * m4/decl.m4: Remove now-unused file.
21640
21641         * m4/check-decl.m4 (AC_CHECK_DECLS): Add getlogin, ttyname, and
21642         geteuid.
21643
21644 2000-03-02  Jim Meyering  <meyering@lucent.com>
21645
21646         * lib/Makefile.am (EXTRA_DIST): Add config.charset.
21647
21648 2000-03-01  Jim Meyering  <meyering@lucent.com>
21649
21650         * lib/localcharset.c: Guard some #includes with `#if HAVE_...'.
21651         * lib/unicodeio.c: Likewise.
21652
21653 2000-03-01  Bruno Haible  <haible@clisp.cons.org>
21654
21655         * lib/config.charset: New file.
21656         * lib/localcharset.c: New file.
21657         * lib/unicodeio.h, unicodeio.c: New files.
21658         * lib/Makefile.am (DEFS): Add -DLIBDIR=...
21659         (libfetish_a_SOURCES): Add localcharset.c and unicodeio.c.
21660         (noinst_HEADERS): Add unicodeio.h.
21661         (all-local, install-exec-local, charset.alias): New targets.
21662
21663 2000-02-28  Paul Eggert  <eggert@twinsun.com>
21664
21665         * lib/quotearg.c (ALERT_CHAR): New macro.
21666         (quotearg_buffer_restyled): Use it.
21667
21668 2000-02-27  Jim Meyering  <meyering@lucent.com>
21669
21670         * m4/check-decl.m4: Add getenv to the list.
21671
21672 2000-02-27  Jim Meyering  <meyering@lucent.com>
21673
21674         * lib/strtoumax.c: Fix typo in decl of strtoul: s/long long/long/.
21675         Guard declaration of strtoull also with `&& HAVE_UNSIGNED_LONG_LONG'.
21676
21677         * lib/backupfile.c: Guard inclusion of stdlib.h with
21678         `#if HAVE_STDLIB_H', not `#if STDC_HEADERS'.
21679         Declare malloc if needed.
21680
21681         * lib/backupfile.c: Use `#if !HAVE_DECL...' instead of
21682         `#ifndef HAVE_DECL..'
21683         now that autoconf always defines the HAVE_DECL_ symbols.
21684         * lib/human.c: Likewise.
21685         * lib/same.c: Likewise.
21686         * lib/strtoumax.c: Likewise.
21687
21688         * lib/backupfile.c: Arrange for cpp to fail if the configure-time
21689         declaration check was not run.
21690         * lib/hash.c: Likewise.
21691         * lib/human.c: Likewise.
21692         * lib/same.c: Likewise.
21693         * lib/strtoumax.c: Likewise.
21694
21695         * lib/userspec.c (parse_user_spec): If there is no `:' but there is a
21696         `.', then first look up the entire `.'-containing string as a login
21697         name.
21698
21699 2000-02-23  Jim Meyering  <meyering@lucent.com>
21700
21701         * m4/check-decl.m4: Now that we have the new AC_CHECK_DECLS, use it
21702         in place of my hack.
21703
21704 2000-02-18  Paul Eggert  <eggert@twinsun.com>
21705
21706         * lib/getdate.y: Handle two-digit years with leading zeros correctly.
21707         (textint): New typedef.
21708         (parser_control): Member year changed from int to textint.
21709         All uses changed.
21710         (YYSTYPE): Removed; replaced by %union with int and textint members.
21711         (tDAY, tDAY_UNIT, tDAYZONE, tHOUR_UNIT, tID, tLOCAL_ZONE, tMERIDIAN,
21712         tMINUTE_UNIT, tMONTH, tMONTH_UNIT tSEC_UNIT, tSNUMBER, tUNUMBER,
21713         tYEAR_UNIT, tZONE, o_merid): Now of type <intval>.
21714         (tSNUMBER, tUNUMBER): Now of type <textintval>.
21715         (date, number, to_year): Use width of number in digits, not its value,
21716         to determine whether it's a 2-digit year, or a 2-digit time.
21717         (yylex): Store number of digits of numeric tokens.
21718         Reported by John Kendall.
21719
21720         (parser_control): Changed from struct parser_control to typedef (for
21721         consistency).  All uses changed.
21722
21723         (tID): Removed; not used.
21724         (yylex): Return '?' for unknown identifiers, rather than (unused) tID.
21725
21726 2000-02-14  Paul Eggert  <eggert@twinsun.com>
21727
21728         * lib/getpagesize.h (getpagesize): Port to VMS for Alpha;
21729         adapted from changes to grep getpagesize.h by Martin P.J. Zinser.
21730
21731 2000-02-12  Jim Meyering  <meyering@lucent.com>
21732
21733         * lib/userspec.c (ISDIGIT): Define it.
21734         (isdigit): Remove definition.
21735         (is_number): Use ISDIGIT, not isdigit.
21736         <libintl.h>: Include.
21737         (_ and N_): Define.
21738         (parse_user_spec): Mark translatable strings.
21739
21740 2000-02-10  Jim Meyering  <meyering@lucent.com>
21741
21742         With these changes, nanosleep.[ch] are finally enough like the other
21743         lib/* replacement files to compile on a few more losing systems.
21744
21745         * lib/nanosleep.h: Don't include config.h.
21746         Remove prototype from declaration of nanosleep.
21747         (PARAMS): Remove now-unneeded definition.
21748         * lib/nanosleep.c: #undef nanosleep.
21749         (rpl_nanosleep): Rename from nanosleep.
21750
21751 2000-02-10  Jim Meyering  <meyering@lucent.com>
21752
21753         * m4/nanosleep.m4 (jm_FUNC_NANOSLEEP): Rename replacement function from
21754         gnu_nanosleep to rpl_nanosleep.
21755
21756 2000-02-09  Jim Meyering  <meyering@lucent.com>
21757
21758         * m4/lib-check.m4 (jm_LIB_CHECK): Fix typo: check for sp_pwdp in
21759         struct spwd, rather than in struct passwd.  Reported by Gaël Quéri.
21760
21761 2000-02-08  Akim Demaille  <akim@epita.fr>
21762
21763         * m4/largefile.m4 (AC_SYS_LARGEFILE_FLAGS): Quote square brackets with
21764         `[' and `]' and remove uses of `changequote'.
21765         (AC_SYS_LARGEFILE_MACRO_VALUE): Likewise.
21766         (AC_SYS_LARGEFILE): Likewise.
21767         * m4/gettext.m4 (AM_GNU_GETTEXT): Likewise.
21768         * m4/strftime.m4 (jm_FUNC_GNU_STRFTIME): Remove now-unnecessary use
21769         of changequote.
21770         * m4/regex.m4 (jm_INCLUDED_REGEX): Likewise.
21771         * m4/readdir.m4 (jm_FUNC_READDIR): Likewise
21772         * m4/memcmp.m4 (jm_AC_FUNC_MEMCMP): Likewise, and add `int' for main.
21773         * m4/getloadavg.m4 (AM_FUNC_GETLOADAVG): Likewise.
21774
21775 2000-02-05  Jim Meyering  <meyering@lucent.com>
21776
21777         * m4/jm-macros.m4 (jm_CHECK_ALL_TYPES): Require most macros.
21778         Remove explicit use of AC_HEADER_TIME.  It is required by
21779         jm_CHECK_TYPE_STRUCT_TIMESPEC.  Using AC_HEADER_TIME and
21780         `AC_REQUIRE'ing jm_CHECK_TYPE_STRUCT_TIMESPEC provoked a but
21781         in autoconf whereby the expansion of the latter ended up preceding
21782         the expansion of its prerequisite, AC_HEADER_TIME.
21783         Reported by Volker Borchert.
21784
21785 2000-02-03  Jim Meyering  <meyering@lucent.com>
21786
21787         * m4/prereq.m4 (jm_PREREQ_READUTMP): Check for utmpxname.
21788
21789 2000-02-03  Jim Meyering  <meyering@lucent.com>
21790
21791         * lib/readutmp.c (read_utmp): Guard with `#ifdef UTMP_NAME_FUNCTION',
21792         rather than with `#if HAVE_UTMPNAME'.
21793
21794 2000-02-02  Jim Meyering  <meyering@lucent.com>
21795
21796         * m4/prereq.m4 (jm_PREREQ_ADDEXT): Fix typo that resulted in no
21797         definition of HAVE_PATHCONF: s/AC_CHECK_FUNC/AC_CHECK_FUNCS/.
21798         Reported by Eli Zaretskii.
21799
21800 2000-02-01  Jim Meyering  <meyering@lucent.com>
21801
21802         * lib/readutmp.h (UT_USER): Add parens.  From Andreas Schwab.
21803
21804 2000-01-31  Jim Meyering  <meyering@lucent.com>
21805
21806         * m4/check-decl.m4 (jm_CHECK_DECLS): Add nanosleep to the list of
21807         functions.  Add the time.h and sys/time.h headers along with the
21808         AC_REQUIRE'ment of AC_HEADER_TIME.
21809
21810 2000-01-31  Jim Meyering  <meyering@lucent.com>
21811
21812         * lib/nanosleep.h (nanosleep): Guard declaration with
21813         `#if ! HAVE_DECL_NANOSLEEP'.
21814         Without this, OFS gets a redeclaration error for rpl_nanosleep, due to
21815         the declaration in that vendor's sys/timers.h.
21816         Reported by Christian Krackowizer.
21817
21818         * lib/quotearg.c (ISASCII): Add #undef and move definition to follow
21819         inclusion of wctype.h to work around Solaris 2.6 namespace pollution.
21820         (ISPRINT): Likewise.
21821         Reported by Tom Tromey.
21822
21823 2000-01-30  Jim Meyering  <meyering@lucent.com>
21824
21825         * m4/lib-check.m4: Clean up some kludgy old shadow password tests.
21826
21827         * m4/prereq.m4 (utmp_includes): Define.
21828         Check for ut_user and ut_name members in both struct utmpx
21829         and struct utmp.
21830
21831 2000-01-30  Jim Meyering  <meyering@lucent.com>
21832
21833         * lib/readutmp.c (extract_trimmed_name): Use UT_USER instead of
21834         hard-coding uses of ->ut_name.  The latter doesn't work with new Linux
21835         header files where only utmpx.ut_user is declared.
21836
21837         * lib/readutmp.h (UT_USER): Define.
21838
21839 2000-01-29  Jim Meyering  <meyering@lucent.com>
21840
21841         * m4/lib-check.m4: New file containing library-related checks from
21842         fileutils and sh-utils (textutils had none).
21843
21844 2000-01-28  Jim Meyering  <meyering@lucent.com>
21845
21846         * m4/perl.m4: Change format of warning message to look more like that
21847         from the missing script.  Suggestion from François Pinard.
21848
21849 2000-01-25  Jim Meyering  <meyering@lucent.com>
21850
21851         * m4/timespec.m4: Require AC_HEADER_TIME, and include sys/time.h as
21852         well as time.h in the compile check.
21853         * m4/nanosleep.m4: Require AC_HEADER_TIME rather than simply using it.
21854         Fix typo in cross-compiling case: s/yes/no/.
21855
21856 2000-01-23  Jim Meyering  <meyering@lucent.com>
21857
21858         * m4/jm-macros.m4: Move df-related tests here from
21859         fileutils/configure.in
21860
21861         * m4/ls-mntd-fs.m4: s/list_mounted_fs/ac_list_mounted_fs/
21862         (jm_LIST_MOUNTED_FILESYSTEMS): Take two parameters.
21863
21864         * m4/fsusage.m4: New file.  Extracted from fileutils/configure.in.
21865         s/space/ac_fsusage_space/.
21866         (jm_FILE_SYSTEM_USAGE): Take two parameters.
21867
21868         * m4/ftruncate.m4: New file (derived from part of
21869         fileutils/configure.in).
21870         * m4/jm-macros.m4 (jm_FUNC_FTRUNCATE): AC_REQUIRE it.
21871         (jm_CHECK_ALL_TYPES): Require AC_HEADER_MAJOR and AC_HEADER_DIRENT.
21872
21873         * m4/jm-macros.m4 (OPTIONAL_BIN_PROGS, OPTIONAL_BIN_ZCRIPTS, MAN):
21874         AC_SUBST these here, rather than just in sh-util/configure.in, so
21875         that the now-shared-by-fileutils-and-textutils lib/Makefile.am are
21876         all the same.
21877         (AM_FUNC_OBSTACK): Add (from fileutils/configure.in).
21878         (AC_CHECK_FUNCS): Merge all checks from fileutils, textutils, sh-utils.
21879         (AM_FUNC_STRTOD): Added (from textutils', sh-utils' configure.in).
21880         (AC_SUBST(POW_LIBM)): Likewise.
21881         (AC_SUBST(DF_PROG)): Moved from fileutils/configure.in.
21882
21883 2000-01-23  Jim Meyering  <meyering@lucent.com>
21884
21885         * lib/Makefile.am (libfetish_a_SOURCES): Remove explicit mention of
21886         obstack.c.
21887
21888 2000-01-22  Jim Meyering  <meyering@lucent.com>
21889
21890         * m4/jm-macros.m4: Call AC_PROG_CC_STDC just before AC_C_CONST.
21891
21892         * m4/prereq.m4 (jm_PREREQ_QUOTEARG): Add wctype.h.
21893
21894         * m4/jm-macros.m4 (AC_CHECK_HEADERS): Add checks from fileutils'
21895         configure.in
21896         (AC_CHECK_HEADERS): Likewise for sh-utils.
21897         (AC_CHECK_HEADERS): Likewise for textutils.
21898         Merge the three lists of headers.
21899
21900         * m4/prereq.m4 (jm_PREREQ_ADDEXT): New macro.  Parts moved here
21901         from fileutils' configure.in.
21902
21903         * m4/decl.m4: Remove kludgy `test -z $ac_...AC_CHECK_HEADERS(...)'
21904         code. Moved tests into their own function (_jm_DECL_HEADERS) in
21905         check-decl.m4.
21906
21907         * m4/check-decl.m4: Use #if rather than #ifdef.
21908         Add HAVE_DECL_STRTOUL and HAVE_DECL_STRTOULL.
21909         (jm_CHECK_DECLARATIONS): Add strtoul strtoull.
21910         (_jm_DECL_HEADERS): Define new function.
21911         (jm_CHECK_DECLARATIONS): Require it.
21912
21913 2000-01-22  Jim Meyering  <meyering@lucent.com>
21914
21915         * lib/strtoumax.c: [! HAVE_DECL_STRTOUL]: Declare strtoul.
21916         [! HAVE_DECL_STRTOULL]: Declare strtoull.
21917         Required for some AIX systems.  Reported by Christian Krackowizer.
21918         [TESTING] (main): New function.
21919
21920         1997-10-17  Eli Zaretskii  <eliz@is.elta.co.il>
21921         * lib/dirname.c (dir_name): Support for DOS-style file names with drive
21922         letters.
21923
21924         * lib/quotearg.c [HAVE_WCTYPE_H]: Include <wctype.h> for decl of
21925         iswprint.
21926
21927         * lib/strverscmp.c (ISDIGIT): Define.
21928         (strverscmp): Use ISDIGIT, not isdigit.
21929
21930 2000-01-19  Jim Meyering  <meyering@lucent.com>
21931
21932         * m4/nanosleep.m4 (jm_FUNC_NANOSLEEP): Include <sys/time.h>, too.
21933         Use AC_HEADER_TIME.  Volker Borchert reported that OpenBSD-2.3/sparc
21934         defines `struct timespec' in <sys/time.h>
21935
21936         * m4/c-bs-a.m4: Remove uses of changequote altogether.
21937         Thanks to Akim for explaining.
21938
21939 2000-01-17  Paul Eggert  <eggert@twinsun.com>
21940
21941         * lib/nanosleep.c (nanosleep):
21942         Don't use SA_INTERRUPT to decide whether to call sigaction, as
21943         POSIX.1 doesn't require SA_INTERRUPT and some systems
21944         (e.g. Solaris 7) don't define it.  Use SA_NOCLDSTOP instead;
21945         it's been part of POSIX.1 since day 1 (in 1988).
21946
21947 2000-01-17  Jim Meyering  <meyering@lucent.com>
21948
21949         * lib/interlock: Remove unused file.  Reported by François Pinard.
21950
21951 2000-01-16  Paul Eggert  <eggert@twinsun.com>
21952
21953         * lib/quotearg.c (quotearg_buffer_restyled): Do not quote
21954         alert, backslash, formfeed, and vertical tab unnecessarily in
21955         shell quoting style.
21956
21957 2000-01-16  Jim Meyering  <meyering@lucent.com>
21958
21959         * m4/jm-macros.m4: Require jm_FUNC_GROUP_MEMBER, jm_FUNC_PUTENV,
21960         AM_FUNC_ERROR_AT_LINE, jm_FUNC_GNU_STRFTIME, jm_FUNC_MKTIME,
21961         jm_FUNC_GETGROUPS AC_FUNC_VPRINTF, AC_FUNC_ALLOCA,
21962         AM_FUNC_GETLOADAVG, and jm_SYS_PROC_UPTIME.
21963
21964 2000-01-16  Jim Meyering  <meyering@lucent.com>
21965
21966         * m4/c-bs-a.m4: Use `changequote(<<,>>)', rather than `changequote(, )'
21967         because the latter didn't work.
21968
21969 2000-01-15  Jim Meyering  <meyering@lucent.com>
21970
21971         * m4/jm-macros.m4 (AC_REPLACE_FUNCS): Add gethostname and getusershell.
21972         (AC_REPLACE_FUNCS): Add memcpy and memset.
21973         Add these, too: stime strcspn stpcpy strstr strtol strtoul.
21974         Add strpbrk.
21975         Add these: euidaccess memcmp mkdir rmdir rpmatch strndup strverscmp.
21976
21977 2000-01-12  Jim Meyering  <meyering@lucent.com>
21978
21979         * m4/prereq.m4 (jm_PREREQ_CANON_HOST): New macro.
21980         (jm_PREREQ): Use it.
21981         (jm_PREREQ_READUTMP): New macro.
21982         (jm_PREREQ): Use it.
21983
21984 2000-01-11  Paul Eggert  <eggert@twinsun.com>
21985
21986         Quote multibyte characters correctly.
21987         * m4/c-bs-a.m4: New file.
21988         * m4/prereq.m4 (jm_PREREQ_QUOTEARG): New macro.
21989         (jm_PREREQ): Use it.
21990
21991 2000-01-11  Paul Eggert  <eggert@twinsun.com>
21992
21993         * m4/uintmax_t.m4: Port to autoconf 2.13.
21994
21995 2000-01-08  Jim Meyering  <meyering@ascend.com>
21996
21997         * m4/strerror_r.m4 (jm_FUNC_STRERROR_R): New file/macro.
21998         * m4/jm-macros.m4 (jm_FUNC_STRERROR_R): Require it.
21999
22000 2000-01-04  Jim Meyering  <meyering@ascend.com>
22001
22002         * m4/d-type.m4 (jm_CHECK_TYPE_STRUCT_DIRENT_D_TYPE): Rename from
22003         jm_STRUCT_DIRENT_D_TYPE.
22004         * m4/d-ino.m4 (jm_CHECK_TYPE_STRUCT_DIRENT_D_INO): Rename from
22005         jm_STRUCT_DIRENT_D_INO.
22006         * m4/utimbuf.m4 (jm_CHECK_TYPE_STRUCT_UTIMBUF): Rename from
22007         jm_STRUCT_UTIMBUF.
22008         * m4/jm-macros.m4: Reflect s/jm_STRUCT_/jm_CHECK_TYPE_STRUCT_/
22009         renamings.
22010         * m4/utime.m4: Likewise.
22011
22012         * m4/timespec.m4 (jm_CHECK_TYPE_STRUCT_TIMESPEC): New file, macro.
22013         * m4/jm-macros.m4 (jm_CHECK_TYPE_STRUCT_TIMESPEC): Require it.
22014
22015 2000-01-03  Paul Eggert  <eggert@twinsun.com>
22016
22017         * m4/nanosleep.m4 (jm_FUNC_NANOSLEEP): Search for nanosleep in -lrt
22018         (for Solaris 7) and in -lposix4 (for Solaris 2.5.1).
22019
22020 2000-01-02  Jim Meyering  <meyering@ascend.com>
22021
22022         * m4/search-libs.m4: Escape `$' in $3 of dnl comment.  I no longer
22023         remember if this is necessary.
22024
22025 1999-12-26  Jim Meyering  <meyering@ascend.com>
22026
22027         * m4/jm-macros.m4: Use it here.
22028         * m4/nanosleep.m4 (jm_FUNC_NANOSLEEP): New file/macro.
22029
22030 1999-12-23  Jim Meyering  <meyering@ascend.com>
22031
22032         * m4/jm-macros.m4: Check for clock_gettime (moved from
22033         fileutils/configure.in)
22034         Check for gettimeofday.
22035
22036 1999-12-20  Jim Meyering  <meyering@ascend.com>
22037
22038         * m4/strftime.m4: Remove kludge, now that I'm using the fixed
22039         autoconf-2.14a-1999-12-20.
22040
22041 1999-12-19  Jim Meyering  <meyering@ascend.com>
22042
22043         * m4/lstat-slash.m4: New file.
22044         * m4/jm-macros.m4: Use the new macro:
22045         jm_FUNC_LSTAT_FOLLOWS_SLASHED_SYMLINK.
22046
22047 1999-12-07  Jim Meyering  <meyering@ascend.com>
22048
22049         * m4/perl.m4: Require that File::Compare be available, too.
22050         Too many systems seem to lack it.
22051
22052         * m4/strftime.m4: Add checks for most of the cpp macros tested in
22053         GNU's strftime.c.  Prompted by a patch from Paul Eggert.
22054
22055 1999-11-18  Paul Eggert  <eggert@twinsun.com>
22056
22057         * m4/largefile.m4 (AC_SYS_LARGEFILE_FLAGS): Work around a
22058         problem with the QNX 4.25 shell, which doesn't propagate exit
22059         status of failed commands inside shell assignments.
22060
22061 1999-11-17  Jim Meyering  <meyering@ascend.com>
22062
22063         * m4/gettext.m4: Use new AC_CONFIG_LINKS in place of AC_LINK_FILES.
22064
22065 1999-11-07  Jim Meyering  <meyering@ascend.com>
22066
22067         * m4/getloadavg.m4: Add `, 1, [FIXME]' to each use of AC_DEFINE.
22068
22069 1999-11-06  Jim Meyering  <meyering@ascend.com>
22070
22071         * m4/link-follow.m4 (jm_AC_FUNC_LINK_FOLLOWS_SYMLINK): New file/macro.
22072         * m4/jm-macros.m4 (jm_MACROS): Use it here.
22073
22074 1999-11-05  Jim Meyering  <meyering@ascend.com>
22075
22076         * m4/jm-macros.m4 (jm_CHECK_ALL_TYPES): Move some tests from
22077         configure.in of textutils, fileutils, and sh-utils into this one
22078         (shared between those packages) file.
22079         Use `AC_CHECK_MEMBERS((struct stat.st_blksize))' instead of deprecated
22080         AC_STRUCT_ST_BLKSIZE.
22081
22082 1999-11-03  Jim Meyering  <meyering@ascend.com>
22083
22084         * m4/ssize_t.m4: Remove file.  No longer needed since the new version
22085         of AC_CHECK_TYPE checks includes unistd.h.
22086         * m4/jm-macros.m4: Use straight `AC_CHECK_TYPE(ssize_t, int)'.
22087         Suggestion from Akim Demaille.
22088
22089 1999-10-30  Jim Meyering  <meyering@ascend.com>
22090
22091         * m4/uintmax_t.m4: Require 2.14a.  Remove backslash before backtick in
22092         m4-quoted string.
22093         * m4/ls-mntd-fs.m4: Likewise.
22094         * m4/jm-macros.m4: Likewise.  Also, use AC_TYPE_SSIZE_T instead
22095         * m4/jm-winsz1.m4: Likewise.
22096
22097         * m4/const.m4: Remove file, since the fix made it into the experimental
22098         version of autoconf.
22099         * m4/mktime.m4: Likewise.
22100
22101         * m4/check-type.m4: Remove file, now that the latest version of
22102         AC_CHECK_TYPE takes a third arg to specify additional #includes.
22103
22104         * m4/ssize_t.m4: New file, requires experimental version of autoconf.
22105         * m4/jm-macros.m4: Use new AC_TYPE_SSIZE_T instead of my hacked
22106         AC_CHECK_TYPE.
22107
22108 1999-10-04  Jim Meyering  <meyering@ascend.com>
22109
22110         * m4/jm-macros.m4: Don't require autoconf-2.14.1.
22111
22112 1999-09-22  Paul Eggert  <eggert@twinsun.com>
22113
22114         * m4/largefile.m4 (AC_SYS_LARGEFILE_FLAGS): Work around GCC
22115         2.95.1 bug with HP-UX 10.20.
22116
22117 1999-09-17  Jim Meyering  <meyering@ascend.com>
22118
22119         * m4/jm-macros.m4 (AC_REPLACE_FUNCS): Add strdup.
22120         Paul Nevai reported a link failure on a NeXT CUBE with NeXTSTEP 3.3
22121         due to missing strdup (against sh-utils-2.0).
22122
22123 1999-08-29  Jim Meyering  <meyering@ascend.com>
22124
22125         * m4/jm-macros.m4: Require jm_BISON.
22126         * m4/bison.m4: New file.
22127
22128 1999-08-17  Paul Eggert  <eggert@twinsun.com>
22129
22130         * m4/largefile.m4 (AC_SYS_LARGEFILE): Fix typo: missing comma
22131         in value for _FILE_OFFSET_BITS, which broke ports to HP-UX 10.20.
22132
22133 1999-08-05  Jim Meyering  <meyering@ascend.com>
22134
22135         * m4/getline.m4: Rename test file from conftestdata to conftest.data
22136         to avoid conflicts with `conftest' on 8+3 filesystems.
22137         Suggestion from Eli Zaretskii.
22138
22139 1999-08-04  Jim Meyering  <meyering@ascend.com>
22140
22141         * m4/jm-macros.m4: Move a 4-line block of code from the configure.in of
22142         fileutils and sh-utils (textutils's getline test was inadequate).
22143         (AM_FUNC_GETLINE): Run this test.
22144         (AC_CHECK_FUNCS): Check for getdelim.
22145         Reported by Bob Proulx.
22146
22147 1999-08-02  Jim Meyering  <meyering@ascend.com>
22148
22149         * m4/jm-macros.m4: Add a comment.
22150
22151 1999-08-01  Paul Eggert  <eggert@twinsun.com>
22152
22153         * m4/xstrtoumax.m4 (jm_AC_PREREQ_XSTRTOUMAX): Check whether
22154         <inttypes.h> defines strtoumax as a macro (and not as a
22155         function).
22156
22157 1999-08-01  Paul Eggert  <eggert@twinsun.com>
22158
22159         * m4/ulonglong.m4 (jm_AC_TYPE_UNSIGNED_LONG_LONG): Make sure
22160         that we can shift, multiply and divide unsigned long long
22161         values; Ultrix cc can't do it.
22162
22163 1999-08-01  Paul Eggert  <eggert@twinsun.com>
22164
22165         * m4/mktime.m4: New file, which is a preview of what should appear
22166         in the next public autoconf release.
22167
22168 1999-08-01  Paul Eggert  <eggert@twinsun.com>
22169
22170         * m4/lfs.m4: Remove this file.
22171         * m4/largefile.m4: New file.  It contains the old contents of
22172         lfs.m4, except that all names with prefix AC_LFS have been
22173         changed to use the prefix AC_SYS_LARGEFILE instead, to be
22174         compatible with future autoconf versions.  Also, some minor m4
22175         quoting problems have been fixed.
22176
22177 1999-08-01  Paul Eggert  <eggert@twinsun.com>
22178
22179         * m4/gettext.m4 (AM_WITH_NLS): Remove unnecessary lines.
22180         Fix typo: $nls_cv_header_intl was misspelled as $nsl_cv_header_intl.
22181         (AM_GNU_GETTEXT): Fix problem with brackets and m4 quoting,
22182         and simplify the shell code.
22183
22184 1999-08-01  Jim Meyering  <meyering@ascend.com>
22185
22186         * m4/mktime.m4 (AC_FUNC_MKTIME): Undefine to avoid syntax errors from
22187         m4.
22188
22189 1999-07-20  Jim Meyering  <meyering@ascend.com>
22190
22191         * m4/jm-macros.m4 (AC_REPLACE_FUNCS): Add memmove.
22192
22193 1999-07-15  Jim Meyering  <meyering@ascend.com>
22194
22195         * m4/jm-macros.m4 (AC_CHECK_FUNCS): Check for getpagesize.
22196
22197 1999-05-22  Jim Meyering  <meyering@ascend.com>
22198
22199         * m4/jm-macros.m4 (AC_REPLACE_FUNCS): Add memchr.
22200
22201 1999-05-20  Jim Meyering  <meyering@ascend.com>
22202
22203         * m4/search-libs.m4 [AC_SEARCH_LIBS]: Quote name in undefine.
22204         Add a colon after each `then' in case $4 is empty.
22205
22206 1999-05-16  Jim Meyering  <meyering@ascend.com>
22207
22208         * m4/search-libs.m4: New file to override autoconf's AC_SEARCH_LIBS.
22209
22210 1999-05-10  Jim Meyering  <meyering@ascend.com>
22211
22212         * m4/jm-mktime.m4: Reflect renaming: AM_FUNC_MKTIME -> AC_FUNC_MKTIME.
22213
22214         * m4/jm-macros.m4: Require 2.14.1, since we use newly-renamed
22215         AC_FUNC_MKTIME.
22216
22217 1999-05-10  Andreas Schwab  <schwab@issan.cs.uni-dortmund.de>
22218
22219         * m4/jm-mktime.m4, putenv.m4: Fix typos in config.h comments.
22220
22221 1999-05-04  Paul Eggert  <eggert@twinsun.com>
22222
22223         * m4/lfs.m4 (AC_LFS): -n32, -o32, and -n64 should be in CFLAGS,
22224         not CPPFLAGS, so that linking works correctly in IRIX.
22225
22226 1999-04-30  Paul Eggert  <eggert@twinsun.com>
22227
22228         * m4/jm-macros.m4 (AC_REPLACE_FUNCS): Add dup2.
22229
22230 1999-04-20  Paul Eggert  <eggert@twinsun.com>
22231
22232         * m4/uintmax_t.m4 (jm_AC_TYPE_UINTMAX_T): Move unsigned long
22233         long check into new jm_AC_TYPE_UNSIGNED_LONG_LONG macro.
22234         * m4/jm-macros.m4 (jm_CHECK_ALL_TYPES): Require
22235         jm_AC_TYPE_UNSIGNED_LONG_LONG.
22236         * m4/ulonglong.m4 (jm_AC_TYPE_UNSIGNED_LONG_LONG): New file/macro.
22237
22238         * m4/lfs.m4: Port to AIX and HP-UX.  Support cross-compilation.
22239
22240 1999-04-20  Jim Meyering  <meyering@ascend.com>
22241
22242         * m4/xstrtoumax.m4: Require jm_AC_TYPE_UNSIGNED_LONG_LONG.
22243         AC_REPLACE xstroull if necessary.  From Paul Eggert.
22244         (AC_CHECK_FUNCS): Remove strtoull, strtoumax, strtouq.
22245
22246 1999-04-18  Jim Meyering  <meyering@ascend.com>
22247
22248         * m4/xstrtoumax.m4 (jm_AC_PREREQ_XSTRTOUMAX): New file/macro.
22249         * m4/jm-macros.m4: Use it.
22250
22251 1999-04-06  Jim Meyering  <meyering@ascend.com>
22252
22253         * m4/strftime.m4: Remove test for %f.
22254
22255 1999-03-29  Jim Meyering  <meyering@ascend.com>
22256
22257         * m4/jm-macros.m4 (jm_CHECK_ALL_TYPES): New macro, contains the
22258         superset of the AC_TYPE_* checks in the textutils, fileutils,
22259         and sh-utils, plus AC_TYPE_PID_T.  Paul Eggert suggested adding
22260         AC_TYPE_PID_T.
22261
22262 1999-03-28  Jim Meyering  <meyering@ascend.com>
22263
22264         * m4/jm-macros.m4: Define GNU_PACKAGE here.
22265         Be sure to AC_SUBST it, once again, so that @GNU_PACKAGE@ is
22266         replaced e.g., in the *.sh files of the sh-utils.
22267
22268 1999-03-20  Jim Meyering  <meyering@ascend.com>
22269
22270         * m4/jm-macros.m4: s/jm_WITH_REGEX/jm_INCLUDED_REGEX/.
22271         * m4/regex.m4 (jm_INCLUDED_REGEX): Rename from jm_WITH_REGEX.
22272         Don't depend on AM_GLIBC.  Suggestions from Alain Magloire.
22273
22274 1999-03-19  Jim Meyering  <meyering@ascend.com>
22275
22276         * m4/jm-winsz1.m4 (jm_WINSIZE_IN_PTEM): New macro.
22277
22278 1999-03-12  Jim Meyering  <meyering@ascend.com>
22279
22280         * m4/jm-macros.m4: Use AC_FUNC_SETVBUF_REVERSED.
22281
22282 1999-03-07  Jim Meyering  <meyering@ascend.com>
22283
22284         * m4/jm-glibc-io.m4: Use only those *_unlocked macros that are
22285         declared.
22286
22287 1999-02-17  Jim Meyering  <meyering@ascend.com>
22288
22289         * m4/gettext.m4 (AM_GNU_GETTEXT): Do `changequote' around use of
22290         brackets in macro definition.  From Eli Zaretskii and Alain Magloire.
22291
22292 1999-02-07  Jim Meyering  <meyering@ascend.com>
22293
22294         * m4/group-member.m4: New file -- extracted from sh-utils'
22295         configure.in.
22296
22297         1999-02-05  Eli Zaretskii  <eliz@is.elta.co.il>
22298         * m4/gettext.m4: Support DOS-style d:/foo/bar absolute file names.
22299
22300 1999-02-06  Jim Meyering  <meyering@ascend.com>
22301
22302         * m4/chown.m4: Use `AC_SUBST(LIBOBJS)' since we set LIBOBJS.
22303         * m4/fnmatch.m4: Likewise.
22304         * m4/getgroups.m4: Likewise.
22305         * m4/lstat.m4: Likewise.
22306         * m4/malloc.m4: Likewise.
22307         * m4/putenv.m4: Likewise.
22308         * m4/realloc.m4: Likewise.
22309         * m4/regex.m4: Likewise.
22310         * m4/stat.m4: Likewise.
22311         * m4/strftime.m4: Likewise.
22312         Suggestion from Alain Magloire.
22313
22314         * m4/chown.m4: Use `.$ac_objext', not `.o'.
22315         * m4/fnmatch.m4: Likewise.
22316         * m4/getgroups.m4: Likewise.
22317         * m4/getline.m4: Likewise.
22318         * m4/lstat.m4: Likewise.
22319         * m4/malloc.m4: Likewise.
22320         * m4/memcmp.m4: Likewise.
22321         * m4/putenv.m4: Likewise.
22322         * m4/realloc.m4: Likewise.
22323         * m4/regex.m4: Likewise.
22324         * m4/stat.m4: Likewise.
22325         * m4/strftime.m4: Likewise.
22326         Suggestion from Alain Magloire.
22327
22328         * m4/jm-macros.m4: Actually invoke jm_WITH_REGEX now that it requires
22329         an argument.
22330
22331         * m4/regex.m4: Add a run-time Test for proper operation of
22332         re_compile_pattern.
22333
22334 1999-01-31  Jim Meyering  <meyering@ascend.com>
22335
22336         * m4/getloadavg.m4: Check for locale.h and the function, setlocale.
22337
22338 1999-01-30  Jim Meyering  <meyering@ascend.com>
22339
22340         * m4/check-type.m4: Use 3-arg form of AC_DEFINE.
22341
22342         * m4/jm-mktime.m4: Make this a wrapper around the official
22343         AM_FUNC_MKTIME rather than my private copy, now that the official one
22344         is up to date.
22345         * m4/mktime.m4: Remove file.
22346
22347         * m4/getloadavg.m4: Use 3-arg form of AC_DEFINE.
22348         * m4/uptime.m4: Likewise.
22349         * m4/uintmax_t.m4: Likewise.
22350
22351 1999-01-28  Jim Meyering  <meyering@ascend.com>
22352
22353         * m4/jm-macros.m4: Use jm_AFS.
22354         * m4/afs.m4: New file (from fileutils' configure.in).
22355
22356         * m4/assert.m4: Use the 3-argument forms of AC_DEFINE* macros.
22357         * m4/chown.m4: Likewise.
22358         * m4/d-ino.m4: Likewise.
22359         * m4/d-type.m4: Likewise.
22360         * m4/fnmatch.m4: Likewise.
22361         * m4/getgroups.m4: Likewise.
22362         * m4/gettext.m4: Likewise.
22363         * m4/jm-mktime.m4: Likewise.
22364         * m4/jm-winsz2.m4: Likewise.
22365         * m4/lcmessage.m4: Likewise.
22366         * m4/ls-mntd-fs.m4: Likewise.
22367         * m4/malloc.m4: Likewise.
22368         * m4/memcmp.m4: Likewise.
22369         * m4/putenv.m4: Likewise.
22370         * m4/realloc.m4: Likewise.
22371         * m4/st_mtim.m4: Likewise.
22372         * m4/strftime.m4: Likewise.
22373
22374 1999-01-16  Jim Meyering  <meyering@ascend.com>
22375
22376         * m4/jm-macros.m4 (ARGMATCH_DIE): Define.
22377         (ARGMATCH_DIE_DECL): Define.
22378
22379 1999-01-12  Jim Meyering  <meyering@ascend.com>
22380
22381         * m4/Makefile.am.in: Rewrite to avoid using fmt.
22382         Reported by Lars Hecking.
22383
22384 1999-01-10  Jim Meyering  <meyering@ascend.com>
22385
22386         * m4/fstypename.m4: Use the new 3-arg form of AC_DEFINE instead of my
22387         gross kludge.
22388         * m4/inttypes_h.m4: Likewise.
22389         * m4/lstat.m4: Likewise.
22390         * m4/malloc.m4: Likewise.
22391         * m4/readdir.m4: Likewise.
22392         * m4/realloc.m4: Likewise.
22393         * m4/st_dm_mode.m4: Likewise.
22394         * m4/stat.m4: Likewise.
22395         * m4/utimbuf.m4: Likewise.
22396         * m4/utimes.m4: Likewise.
22397
22398         * m4/check-decl.m4: Use the new 3-arg form of AC_DEFINE instead of the
22399         AC_CHECK_FUNCS hack.  Now, it's still a hack, but at least the
22400         comments in config.h.in are meaningful.
22401
22402         * m4/jm-macros.m4: Require autoconf-2.13 here.
22403
22404         * m4/regex.m4: By default, don't use the included regex.c on systems
22405         with glibc 2.  Suggestion from Uli Drepper.
22406
22407 1999-01-02  Jim Meyering  <meyering@ascend.com>
22408
22409         * m4/jm-macros.m4: Replace strcasecmp and strncasecmp.
22410
22411 1998-12-18  Jim Meyering  <meyering@ascend.com>
22412
22413         * m4/Makefile.am.in (Makefile.am): Simplify rule.
22414         Based on a suggestion from Lars Hecking.
22415
22416 1998-11-16  Paul Eggert  <eggert@twinsun.com>
22417
22418         * m4/lfs.m4 (AC_LFS): Add support for HP-UX 10.20 and HP-UX 11.
22419
22420 1998-11-16  Jim Meyering  <meyering@ascend.com>
22421
22422         * m4/lfs.m4: Double-quote the `uname...` expression.
22423
22424 1998-11-14  Jim Meyering  <meyering@ascend.com>
22425
22426         * m4/lstat.m4: Correct comment.  POSIX does not permit it to succeed.
22427         * m4/stat.m4: Likewise.
22428
22429 1998-11-03  Jim Meyering  <meyering@ascend.com>
22430
22431         * m4/stat.m4: Rewrite to set HAVE_STAT_EMPTY_STRING_BUG.
22432         * m4/lstat.m4: Rewrite to set HAVE_LSTAT_EMPTY_STRING_BUG.
22433
22434 1998-10-18  Jim Meyering  <meyering@ascend.com>
22435
22436         * m4/check-decl.m4 (jm_CHECK_DECL_LOCALTIME_R): Remove macro.
22437
22438 1998-10-17  Jim Meyering  <meyering@ascend.com>
22439
22440         * m4/decl.m4 (jm_CHECK_DECLARATION): Don't hard-code which headers to
22441         include, though we still hard-code the `require'-like AC_CHECK_HEADERS
22442         calls for those previously hard-coded headers.  Instead, take a new
22443         parameter.
22444         (jm_CHECK_DECLARATIONS): Reflect interface change.
22445         * m4/check-decl.m4 (jm_CHECK_DECLS): Likewise.
22446         (jm_CHECK_DECL_LOCALTIME_R): New macro.
22447
22448         * m4/mktime.m4: Test for spring-forward gap before long-running test.
22449
22450 1998-10-14  Jim Meyering  <meyering@ascend.com>
22451
22452         * m4/mktime.m4: Use the more portable "TZ=PST8PDT,M4.1.0,M10.5.0"
22453         instead of "TZ=America/Vancouver".  From Paul Eggert.
22454
22455 1998-10-11  Jim Meyering  <meyering@ascend.com>
22456
22457         * m4/mktime.m4 (jm_AM_FUNC_MKTIME): New file and macro.
22458         This adds a test for a recently added compatibility fix for mktime.c.
22459         * m4/jm-mktime.m4: Require jm_AM_FUNC_MKTIME, not AM_FUNC_MKTIME.
22460
22461 1998-09-27  Jim Meyering  <meyering@ascend.com>
22462
22463         * m4/jm-macros.m4 (jm_MACROS): Require jm_FUNC_FNMATCH.
22464
22465         * m4/fnmatch.m4 (jm_FUNC_FNMATCH): New file/macro.  Extracted from
22466         ../configure.in, including a change from Gordon Matzigkeit to allow
22467         cross-compiling for the Hurd.
22468
22469         * m4/glibc.m4: New file/macro to test for the GNU C Library
22470         versions 1 and 2.  From Gordon Matzigkeit.
22471         Indent.
22472
22473 1998-09-21  Jim Meyering  <meyering@ascend.com>
22474
22475         * m4/chown.m4: Declare locals: before, after.  From Andries Brouwer.
22476
22477 1998-08-18  Paul Eggert  <eggert@twinsun.com>
22478
22479         Port nanosecond-resolution times to UnixWare 2.1.2 and
22480         pedantic Solaris 2.6.
22481
22482         * m4/st_mtim.m4 (AC_STRUCT_ST_MTIM_NSEC): Renamed from
22483         AC_STRUCT_ST_MTIM.
22484         * m4/st_mtim.m4 (AC_STRUCT_ST_MTIM_NSEC):
22485         Generate name of ns member, instead of just 1 or undef.
22486         Allow for UnixWare 2.1.2 and Solaris 2.6 if in pedantic mode.
22487
22488 1998-08-15  Jim Meyering  <meyering@ascend.com>
22489
22490         * m4/ssize_t.m4 (jm_TYPE_SSIZE_T): Remove file.
22491         * m4/check-type.m4: New file.  Replacement for AC_CHECK_TYPE.
22492         * m4/jm-macros.m4: Use the new AC_CHECK_TYPE(ssize_t, int)
22493         instead of jm_TYPE_SSIZE_T.
22494
22495 1998-08-12  Jim Meyering  <meyering@ascend.com>
22496
22497         * m4/st_dm_mode.m4: New file.  From Johan Danielsson.
22498
22499 1998-08-02  Jim Meyering  <meyering@ascend.com>
22500
22501         * m4/st_mtim.m4: Use hack to avoid having to put #undef HAVE_ST_MTIM
22502         in acconfig.h manually.
22503
22504 1998-07-31  Paul Eggert  <eggert@twinsun.com>
22505
22506         * m4/st_mtim.m4: New file.
22507
22508 1998-07-28  Jim Meyering  <meyering@ascend.com>
22509
22510         * m4/utimes.m4: Undef stat.
22511
22512 1998-07-25  Jim Meyering  <meyering@ascend.com>
22513
22514         * m4/utime.m4 (jm_FUNC_UTIME): New file and macro.
22515         * m4/utimes.m4 (jm_FUNC_UTIMES_NULL): New file and macro.
22516
22517 1998-07-09  Manfred Hollstein  <manfred@s-direktnet.de>
22518
22519         * m4/chown.m4 (jm_FUNC_CHOWN): Add a check to verify that the
22520         uid and gid actually remain unchanged.
22521
22522 1998-07-07  Jim Meyering  <meyering@ascend.com>
22523
22524         * m4/jm-glibc-io.m4: Remove fclose_unlocked.
22525
22526 1998-07-04  Jim Meyering  <meyering@ascend.com>
22527
22528         * m4/regex.m4: Use syscmd, ifelse, and sysval.  Mainly as an exercise
22529         to prove that this macro can be used in packages without regex.c.
22530
22531 1998-07-04  Andreas Schwab  <schwab@issan.informatik.uni-dortmund.de>
22532
22533         * m4/gettext.m4 (AM_WITH_NLS): Remove intl/libintl.h if <libintl.h>
22534         is to be used.
22535
22536 1998-07-03  Jim Meyering  <meyering@ascend.com>
22537
22538         * m4/gettext.m4: Add -lintl if it's found to be necessary.
22539
22540         * m4/gettext.m4: New file -- from gettext-0.10.35.
22541         * m4/lcmessage.m4: Likewise.
22542         * m4/progtest.m4: Likewise.
22543
22544         * m4/regex.m4 (jm_WITH_REGEX): New file and macro.
22545         * m4/jm-macros.m4: Require the new macro.
22546
22547 1998-06-29  Jim Meyering  <meyering@ascend.com>
22548
22549         * m4/fstypename.m4: Include sys/param.h.  NetBSD 1.3.1 requires this
22550         for the definition of NGROUPS (used in a system header included
22551         by sys/mount.h).
22552
22553 1998-06-28  Jim Meyering  <meyering@ascend.com>
22554
22555         * m4/ls-mntd-fs.m4: New file.
22556         * m4/fstypename.m4: New file.
22557
22558         * m4/jm-macros.m4: Require the new macro.
22559         * m4/jm-glibc-io.m4: New file.
22560
22561 1998-05-19  Jim Meyering  <meyering@ascend.com>
22562
22563         * m4/jm-macros.m4: Add jm_FUNC_LCHOWN.
22564         * m4/lchown.m4: New file.
22565
22566         * m4/Makefile.am.in: New file.
22567         * m4/Makefile.am (Makefile.am): Depend on Makefile.am.in.
22568
22569 1998-05-14  Jim Meyering  <meyering@ascend.com>
22570
22571         * m4/Makefile.am (EXTRA_DIST): Add them.
22572         * m4/jm-macros.m4: New file.
22573         * m4/utimbuf.m4: New file.
22574
22575 1998-05-12  Jim Meyering  <meyering@ascend.com>
22576
22577         * m4/Makefile.am (EXTRA_DIST): Add isc-posix.m4.
22578
22579 1998-05-11  Jim Meyering  <meyering@ascend.com>
22580
22581         * m4/isc-posix.m4: New file.
22582
22583 1998-05-10  Jim Meyering  <meyering@ascend.com>
22584
22585         * m4/jm-mktime.m4: Use AM_FUNC_MKTIME, now that it's up to date.
22586
22587 1998-05-09  Jim Meyering  <meyering@ascend.com>
22588
22589         * m4/Makefile.am (EXTRA_DIST): Add ssize_t.m4.
22590         (EXTRA_DIST): Remove mktime.m4, now that the new version is included
22591         with automake.
22592
22593         * m4/ssize_t.m4: New file.
22594         * m4/mktime.m4: Remove file -- the new automake has this now.
22595
22596 1998-04-26  Jim Meyering  <meyering@ascend.com>
22597
22598         * m4/assert.m4: New file.
22599         * m4/Makefile.am (EXTRA_DIST): Add assert.m4.
22600
22601 1998-04-05  Jim Meyering  <meyering@ascend.com>
22602
22603         * m4/prereq.m4 (jm_PREREQ_REGEX): New macro.
22604         (jm_PREREQ): Use it here.
22605
22606 1998-03-23  Jim Meyering  <meyering@eng.ascend.com>
22607
22608         * m4/inttypes_h.m4: Kludges so I don't have to add HAVE_INTTYPES_H
22609         in acconfig.h.
22610
22611 1998-03-15  Jim Meyering  <meyering@eng.ascend.com>
22612
22613         * m4/prereq.m4: New file.
22614         * m4/error.m4: New file.
22615         * m4/Makefile.am (EXTRA_DIST): Add error.m4 and prereq.m4.
22616
22617 1998-02-07  Jim Meyering  <meyering@eng.ascend.com>
22618
22619         * m4/getline.m4: Don't set am_cv_func_working_getline before the
22620         cache-check for the same variable -- that defeated the purpose of
22621         the test; the test program was never run.  This was a problem only
22622         on systems with losing getline functions -- HP-UX 10.20 is one.
22623         Reported by Bjorn Helgaas.
22624
22625 1998-02-06  Jim Meyering  <meyering@eng.ascend.com>
22626
22627         * m4/Makefile.am (EXTRA_DIST): Add perl.m4.
22628
22629 1998-01-10  Jim Meyering  <meyering@na-net.ornl.gov>
22630
22631         * m4/Makefile.am (EXTRA_DIST): Add const.m4.
22632
22633         * m4/const.m4: New file.  Use an initializer in this declaration
22634         typedef int charset[2]; const charset x;
22635         Reported by Bob Glickstein.
22636
22637 1997-12-21  Jim Meyering  <meyering@na-net.ornl.gov>
22638
22639         * m4/chown.m4: Fix reversed types on -1 args to chown.
22640         From Kaveh Ghazi.
22641
22642 1997-12-14  Jim Meyering  <meyering@na-net.ornl.gov>
22643
22644         * m4/check-decl.m4: s/DECLARATION_/DECL_/g.
22645         Add lseek and memchr.
22646
22647         * m4/decl.m4: s/HAVE_DECLARATION_/HAVE_DECL_/g.
22648         T.E.Dickey <dickey@clark.net> said that some older preprocessors
22649         have a 20-character limit on names.
22650
22651 1997-11-30  Jim Meyering  <meyering@na-net.ornl.gov>
22652
22653         * m4/inttypes_h.m4: New file.
22654         * m4/uintmax_t.m4: New file.
22655         * m4/Makefile.am (EXTRA_DIST): Add inttypes_h.m4 and uintmax_t.m4.
22656
22657 Copyright (C) 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006
22658   Free Software Foundation, Inc.
22659 Copying and distribution of this file, with or without modification,
22660 are permitted provided the copyright notice and this notice are preserved.