32baef9064d120cd91de8c99c90a6609e5c98dfc
[gnulib.git] / ChangeLog
1 2006-10-09  Jim Meyering  <jim@meyering.net>
2
3         * lib/lchown.c: Include <sys/stat.h> before "stat-macros.h".
4         Patch from Bruno Haible.
5
6 2006-10-09  Jim Meyering  <jim@meyering.net>
7
8         * lib/fts-cycle.c (leave_dir): When "leaving" a top level directory due
9         to FTS_SKIP, don't copy the parent's uninitialized dev/ino values.
10         Trigger with e.g., mkdir d && valgrind ./chmod u+rwx d d
11
12 2006-10-08  Paul Eggert  <eggert@cs.ucla.edu>
13
14         Don't include <config.h> twice; this doesn't work in some cases,
15         e.g., when config.h has "#define intmax_t long long int" and
16         we include <config.h>, <inttypes.h>, <config.h> in that order.
17         Problem reported by Matthew Woehlke in:
18         http://lists.gnu.org/archive/html/bug-coreutils/2006-10/msg00073.html
19         * lib/fprintftime.c: Don't include config.h or fprintftime.h.
20         * lib/fts-cycle.c: Don't include config.h.
21         * lib/strftime.c: Include fprintftime.h if FPRINTFTIME is defined.
22         * lib/xstrtoimax.c: Remove copyright notice since it's short tnow.
23         Don't include config.h or xstrtol.h.  Define STRTOL_T_MINIMUM
24         and STRTOL_T_MAXIMUM unconditionally, since we now assume gnulib
25         inttypes.h.
26         * lib/xstrtoumax.c: Likewise.
27         * lib/xstrtol.c: Include config.h and xstrtol.h after defining
28         __strtol and the like, so that this module is more like its siblings.
29         (STRTOL_T_MINIMUM, STRTOL_T_MAXIMUM) [! defined STRTOL_T_MINIMUM]:
30         Remove; no longer needed now that we assume gnulib inttypes.h.
31
32 2006-10-08  Bruno Haible  <bruno@clisp.org>
33
34         * doc/gnulib-tool.texi: Emphasize the drawbacks of the --symlink option.
35
36 2006-10-07  Jim Meyering  <jim@meyering.net>
37
38         * modules/inttypes (inttypes.h): Revert what seems to have been
39         an inadvertent part of today's change: use "|", not "/" in the
40         substitution for the "/"-containing string, $(ABSOLUTE_INTTYPES_H).
41
42 2006-10-07  Bruno Haible  <bruno@clisp.org>
43
44         * modules/sublist: New file.
45
46 2006-10-07  Bruno Haible  <bruno@clisp.org>
47
48         * modules/alloca-opt (alloca.h): Add a "DO NOT EDIT" comment.
49         * modules/argz (argz.h): Likewise.
50         * modules/arpa_inet (arpa/inet.h): Likewise.
51         * modules/byteswap (byteswap.h): Likewise.
52         * modules/configmake (configmake.h): Likewise.
53         * modules/fcntl (fcntl.h): Likewise.
54         * modules/fnmatch (fnmatch.h): Likewise.
55         * modules/getopt (getopt.h): Likewise.
56         * modules/glob (glob.h): Likewise.
57         * modules/inttypes (inttypes.h): Likewise.
58         * modules/netinet_in (netinet/in.h): Likewise.
59         * modules/poll (poll.h): Likewise.
60         * modules/stdbool (stdbool.h): Likewise.
61         * modules/stdint (stdint.h): Likewise.
62         * modules/sys_select (sys/select.h): Likewise.
63         * modules/sys_socket (sys/socket.h): Likewise.
64         * modules/sys_stat (sys/stat.h): Likewise.
65         * modules/sysexits (sysexits.h): Likewise.
66         * modules/unistd (unistd.h): Likewise.
67         * gnulib-tool (func_emit_lib_Makefile_am, func_emit_tests_Makefile_am):
68         Add a "DO NOT EDIT" comment to the generated file.
69         (func_import): Likewise for gnulib-comp.m4.
70
71 2006-10-07  Bruno Haible  <bruno@clisp.org>
72
73         * lib/gl_sublist.h: New file.
74         * lib/gl_sublist.c: New file.
75
76 2006-10-06  Paul Eggert  <eggert@cs.ucla.edu>
77
78         * lib/mkancesdirs.c (mkancesdirs): Pass to MAKE_DIR both the full file
79         name (relative to the original working directory) and the file
80         name component (relative to the temporary working directory).  All
81         callers changed.
82         * lib/mkancesdirs.h (mkancesdirs): Adjust prototype to match.
83         * lib/mkdir-p.c (make_dir_parents): Likewise.
84         * lib/mkdir-p.h (make_dir_parents): Likewise.
85
86 2006-10-06  Eric Blake  <ebb9@byu.net>
87
88         Define several macros for use by the clean-temp module.
89         * m4/close-stream.m4 (gl_CLOSE_STREAM): Define GNULIB_CLOSE_STREAM.
90         * m4/fcntl-safer.m4 (gl_FCNTL_SAFER): Define GNULIB_FCNTL_SAFER.
91         * m4/stdio-safer.m4 (gl_FOPEN_SAFER): Define GNULIB_FOPEN_SAFER.
92
93         * lib/clean-temp.h (close_stream_temp): New declaration.
94         * lib/clean-temp.c (includes): Pull in headers according to what
95         other modules are in use.
96         (close_stream_temp) [GNULIB_CLOSE_STREAM]: New function.
97
98 2006-10-06  Bruno Haible  <bruno@clisp.org>
99
100         * lib/javacomp.c (write_temp_file): Use fopen_temp, fwriteerror_temp
101         instead of fopen, fwriteerror.
102
103 2006-10-06  Bruno Haible  <bruno@clisp.org>
104
105         * lib/clean-temp.h (cleanup_temp_file, cleanup_temp_subdir,
106         cleanup_temp_dir_contents, cleanup_temp_dir): Change return type to
107         int.
108         * lib/clean-temp.c (do_unlink, do_rmdir, cleanup_temp_file,
109         cleanup_temp_subdir, cleanup_temp_dir_contents, cleanup_temp_dir):
110         Return an error indicator.
111         Suggested by Eric Blake.
112
113 2006-10-06  Bruno Haible  <bruno@clisp.org>
114
115         * lib/clean-temp.c (PATH_MAX): Provide a fallback for GNU Hurd.
116         Reported by Eric Blake.
117
118 2006-10-06  Bruno Haible  <bruno@clisp.org>
119
120         * modules/closeout (Description): Mention stderr too.
121
122 2006-10-06  Bruno Haible  <bruno@clisp.org>
123         and Paul Eggert  <eggert@cs.ucla.edu>
124
125         * lib/closeout.c (close_stdout): Also close stderr.
126         * lib/closeout.h: Update comment.
127
128 2006-10-05  Paul Eggert  <eggert@cs.ucla.edu>
129
130         Fix some Darwin-7.9.0 porting problems reported by Bruno Haible in
131         <http://lists.gnu.org/archive/html/bug-coreutils/2006-10/msg00063.html>.
132         * lib/dirchownmod.c: Include lchown.h.
133         * lib/lchown.c: Don't include files that lchown.h now includes.
134         Don't declare chown, since lchown.h now does that.
135         * lib/lchown.h: Include errno.h, sys/types.h, unistd.h.
136         (lchown): Define to rpl_chown if lchown is declared but
137         does not exist.  Declare using a prototype if lchown is not
138         declared.  Add a copyright notice.
139         * lib/mkstemp.h: Include <unistd.h>.
140         * lib/openat.c: Include lchown.h.
141
142         * lib/fcntl_.h (O_NOFOLLOW): Don't depend on O_NOFOLLOW_IS_INEFFECTIVE;
143         we now test for that separately.
144         * lib/fts.c (fts_safe_changedir): Inspect HAVE_WORKING_O_NOFOLLOW
145         rather than O_NOFOLLOW, when testing whether it's possible to
146         avoid a race condition reliably.
147         * lib/savewd.c (savewd_chdir): Likewise.
148
149         Remove macros that are no longer needed now that stdint.h is
150         reliable.
151         * lib/fsusage.c (UINTMAX_MAX): Remove.
152         * lib/human.c (SIZE_MAX, UINTMAX_MAX): Remove.
153         * lib/utimecmp.c (SIZE_MAX): Remove.
154
155         * m4/lchown.m4 (gl_FUNC_LCHOWN): Check whether lchown is declared.
156
157         * m4/fcntl_h.m4 (gl_FCNTL_H): Define HAVE_WORKING_O_NOFOLLOW instead
158         of O_NOFOLLOW_IS_INEFFECTIVE.  Define HAVE_WORKING_O_NOATIME if
159         O_NOATIME works.
160
161 2006-10-05  Bruno Haible  <bruno@clisp.org>
162
163         * lib/gl_list.h (gl_sortedlist_search_from_to,
164         gl_sortedlist_indexof_from_to): New declarations.
165         (gl_list_implementation): New fields sortedlist_search_from_to,
166         sortedlist_indexof_from_to.
167         (gl_sortedlist_search_from_to, gl_sortedlist_indexof_from_to): New
168         inline functions.
169         * lib/gl_list.c (gl_sortedlist_search_from_to,
170         gl_sortedlist_indexof_from_to): New functions.
171         * lib/gl_array_list.c (gl_array_sortedlist_indexof_from_to): New function.
172         (gl_array_sortedlist_indexof, gl_array_sortedlist_search): Use it.
173         (gl_array_sortedlist_search_from_to): New function.
174         (gl_array_list_implementation): Update.
175         * lib/gl_carray_list.c (gl_carray_sortedlist_indexof_from_to): New function.
176         (gl_carray_sortedlist_indexof, gl_carray_sortedlist_search): Use it.
177         (gl_carray_sortedlist_search_from_to): New function.
178         (gl_carray_list_implementation): Update.
179         * lib/gl_anylinked_list2.h (gl_linked_sortedlist_search_from_to,
180         gl_linked_sortedlist_indexof_from_to): New functions.
181         * lib/gl_linked_list.c (gl_linked_list_implementation): Update.
182         * lib/gl_linkedhash_list.c (gl_linkedhash_list_implementation): Update.
183         * lib/gl_anytree_list2.h (gl_tree_sortedlist_search_from_to,
184         gl_tree_sortedlist_indexof_from_to): New functions.
185         * lib/gl_avltree_list.c (gl_avltree_list_implementation): Update.
186         * lib/gl_avltreehash_list.c (gl_avltreehash_list_implementation): Update.
187         * lib/gl_rbtree_list.c (gl_rbtree_list_implementation): Update.
188         * lib/gl_rbtreehash_list.c (gl_avltreehash_list_implementation): Update.
189
190 2006-10-05  Bruno Haible  <bruno@clisp.org>
191
192         * lib/gl_list.h (gl_list_search_from, gl_list_search_from_to,
193         gl_list_indexof_from, gl_list_indexof_from_to): New declarations.
194         (struct gl_list_implementation): Add fields search_from_to,
195         indexof_from_to. Remove fields search, indexof.
196         (gl_list_search): Use the search_from_to method.
197         (gl_list_search_from, gl_list_search_from_to): New functions.
198         (gl_list_indexof): Use the indexof_from_to method.
199         (gl_list_indexof_from, gl_list_indexof_from_to): New functions.
200         * lib/gl_list.c (gl_list_search): Use the search_from_to method.
201         (gl_list_search_from, gl_list_search_from_to): New functions.
202         (gl_list_indexof): Use the indexof_from_to method.
203         (gl_list_indexof_from, gl_list_indexof_from_to): New functions.
204         * lib/gl_array_list.c (gl_array_indexof_from_to): Renamed from
205         gl_array_indexof. Add start_index, end_index arguments.
206         (gl_array_search_from_to): Renamed from gl_array_search. Add
207         start_index, end_index arguments.
208         (gl_array_remove, gl_array_list_implementation): Update.
209         * lib/gl_carray_list.c (gl_carray_indexof_from_to): Renamed from
210         gl_carray_indexof. Add start_index, end_index arguments.
211         (gl_carray_search_from_to): Renamed from gl_carray_search. Add
212         start_index, end_index arguments.
213         (gl_carray_remove, gl_carray_list_implementation): Update.
214         * lib/gl_anylinked_list2.h (gl_linked_search_from_to): Renamed from
215         gl_linked_search. Add start_index, end_index arguments.
216         (gl_linked_indexof_from_to): Renamed from gl_linked_indexof. Add
217         start_index, end_index arguments.
218         (gl_linked_remove): Update.
219         * lib/gl_linked_list.c (gl_linked_list_implementation): Update.
220         * lib/gl_linkedhash_list.c (gl_linkedhash_list_implementation): Update.
221         * lib/gl_anytree_list1.h (iterstack_item_t): Change type of 'rightp' field
222         to 'size_t'.
223         * lib/gl_anytree_list2.h (gl_tree_search_from_to): Renamed from
224         gl_tree_search. Add start_index, end_index arguments.
225         (gl_tree_indexof_from_to): Renamed from gl_tree_indexof. Add
226         start_index, end_index arguments.
227         (gl_tree_remove): Update.
228         * lib/gl_avltree_list.c (gl_avltree_list_implementation): Update.
229         * lib/gl_rbtree_list.c (gl_rbtree_list_implementation): Update.
230         * lib/gl_anytreehash_list1.h (compare_position_threshold): New function.
231         * lib/gl_anytreehash_list2.h (gl_tree_search_from_to): Renamed from
232         gl_tree_search. Add start_index, end_index arguments.
233         (gl_tree_indexof_from_to): Renamed from gl_tree_indexof. Add
234         start_index, end_index arguments.
235         * lib/gl_avltreehash_list.c (gl_avltreehash_list_implementation): Update.
236         * lib/gl_rbtreehash_list.c (gl_rbtreehash_list_implementation): Update.
237
238 2006-10-05  Bruno Haible  <bruno@clisp.org>
239
240         * modules/fwriteerror (configure.ac): Define GNULIB_FWRITEERROR.
241
242         * lib/clean-temp.h (open_temp, fopen_temp, close_temp, fclose_temp,
243         fwriteerror_temp): New declarations.
244         * lib/clean-temp.c (uintptr_t): Provide fallback definition.
245         (descriptors): New variable.
246         (cleanup): First, close the descriptors.
247         (register_fd, unregister_fd, open_temp, fopen_temp, close_temp,
248         fclose_temp, fwriteerror_temp): New functions.
249
250 2006-10-04  Jim Meyering  <jim@meyering.net>
251
252         * lib/fts.c (fts_open): Tiny comment change.
253
254 2006-10-04  Bruno Haible  <bruno@clisp.org>
255
256         Make it possible to invoke AC_GNU_SOURCE after gl_LOCK_EARLY.
257         * m4/lock.m4 (gl_LOCK_EARLY_BODY): New macro, extracted code from
258         gl_LOCK_BODY.
259         (gl_LOCK_EARLY): Require gl_LOCK_EARLY_BODY, not gl_LOCK_BODY.
260         (gl_LOCK_BODY): Remove settings of CPPFLAGS, now done in
261         gl_LOCK_EARLY_BODY.
262         (gl_LOCK): Require gl_LOCK_BODY.
263
264 2006-10-04  Bruno Haible  <bruno@clisp.org>
265
266         * lib/gl_oset.h (gl_setelement_threshold_fn): New type.
267         (gl_oset_search_atleast): New declaration.
268         (struct gl_oset_implementation): Add field 'search_atleast'.
269         (gl_oset_search_atleast): New inline function.
270         * lib/gl_oset.c (gl_oset_search_atleast): New function.
271         * lib/gl_array_oset.c (gl_array_search_atleast): New function.
272         (gl_array_oset_implementation): Update.
273         * lib/gl_anytree_oset.h (gl_tree_search_atleast): New function.
274         * lib/gl_avltree_oset.c (gl_avltree_oset_implementation): Update.
275         * lib/gl_rbtree_oset.c (gl_rbtree_oset_implementation): Update.
276
277 2006-10-04  Bruno Haible  <bruno@clisp.org>
278
279         * lib/fatal-signal.c (fatal_signals) [WOE32]: Add the SIGBREAK signal.
280
281 2006-10-03  Bruno Haible  <bruno@clisp.org>
282
283         * lib/gl_rbtreehash_list.c (gl_rbtreehash_list_implementation): Renamed
284         from gl_avltreehash_list_implementation.
285
286 2006-10-03  Bruno Haible  <bruno@clisp.org>
287
288         * lib/gl_oset.c (gl_oset_add): Fix return type.
289
290 2006-10-02  Paolo Bonzini  <bonzini@gnu.org>  (tiny change)
291
292         * lib/quotearg.c (mbstate_t) [!HAVE_MBRTOWC]: #define to int.
293
294 2006-10-02  Eric Blake  <ebb9@byu.net>
295
296         * modules/strnlen (Depends-on): Add extensions.
297
298 2006-10-02  Eric Blake  <ebb9@byu.net>
299
300         * m4/extensions.m4 (gl_USE_SYSTEM_EXTENSIONS): Use autoconf's
301         definition in 2.60+.
302
303 2006-10-02  Dmitry V. Levin  <ldv@altlinux.org>
304
305         * lib/fts.c (fts_close, fts_build, fts_palloc): Remove redundant checks.
306
307 2006-10-02  Bruno Haible  <bruno@clisp.org>
308
309         * gnulib-tool (func_emit_lib_Makefile_am): Don't add no-dependencies
310         to the AUTOMAKE_OPTIONS.
311         Reported by Jim Meyering.
312
313 2006-09-29  Paul Eggert  <eggert@cs.ucla.edu>
314
315         Work around bug in Solaris 10 /proc file system:
316         /proc/self/fd/NNN/.. isn't the parent directory of
317         the directory whose file descriptor is NNN.  This needs to
318         be worked around at run time, not compile time, since a
319         program might be built on Solaris 8, where things work, and
320         run on Solaris 10.
321         * lib/openat-priv.h (BUILD_PROC_NAME): Remove.  All callers changed
322         to use the following interface instead:
323         (OPENAT_BUFFER_SIZE): New macro.
324         (openat_proc_name): New function.
325         * lib/at-func.c (AT_FUNC_NAME): Adjust to above changes.
326         * lib/openat.c (openat_permissive, openat_needs_fchdir, fdopendir):
327         Likewise.
328         * lib/openat-proc.c: New file.
329         * modules/openat (Files): Add lib/openat-proc.c.
330         (Depends-on): Add same-inode, stdbool.
331         * m4/openat.m4 (gl_FUNC_OPENAT): Add AC_LIBOBJ(openat-proc).
332
333 2006-09-29  Bruno Haible  <bruno@clisp.org>
334
335         * lib/fwriteerror.h (fwriteerror_no_ebadf): New declaration.
336         * lib/(do_fwriteerror): Renamed from fwriteerror. Add ignore_ebadf
337         argument. Set stdout_closed before testing for ferror, not after.
338         (fwriteerror, fwriteerror_no_ebadf): New functions.
339
340 2006-09-28  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
341
342         * m4/intmax.m4 (gt_TYPE_INTMAX_T): Avoid unused variables warning.
343
344 2006-09-28  Paolo Bonzini  <bonzini@gnu.org>
345
346         * lib/poll.c (rpl_poll) [__APPLE__]: Use FIONREAD instead of MSG_PEEK.
347         * m4/poll.m4: Look for sys/ioctl.h and sys/filio.h.
348
349 2006-09-28  Jim Meyering  <jim@meyering.net>
350
351         * lib/mkdir-p.c: Include "dirchownmod.h", not "dirchownmod.c".
352         Include <unistd.h>.
353
354 2006-09-28  Bruno Haible  <bruno@clisp.org>
355
356         * modules/avltreehash-list (Depends-on): Add stdint, remove size_max.
357         * modules/linkedhash-list (Depends-on): Likewise.
358         * modules/rbtreehash-list (Depends-on): Likewise.
359
360 2006-09-28  Bruno Haible  <bruno@clisp.org>
361
362         * lib/strndup.h: Simplify the redefinition of strndup.
363         (_GL_CONCAT, _GL_XCONCAT, __STRNDUP_ID): Remove macros.
364         * m4/strndup.m4 (gl_FUNC_STRNDUP): Don't define __STRNDUP_PREFIX.
365
366 2006-09-28  Bruno Haible  <bruno@clisp.org>
367
368         * lib/gl_avltreehash_list.c: Include <stdint.h> instead of size_max.h.
369         * lib/gl_linkedhash_list.c: Likewise.
370         * lib/gl_rbtreehash_list.c: Likewise.
371
372 2006-09-27  Paul Eggert  <eggert@cs.ucla.edu>
373
374         * lib/canon-host.c (canon_host_r): Work around bug in Darwin 7.9.0
375         getaddrinfo.
376
377         * lib/__fpending.h: Don't include <stdio_ext.h> unless
378         HAVE_DECL___FPENDING.  This avoids a bug with lsbcc, where
379         it causes <stdio_ext.h> to cause a compile-time error.
380         Problem reported by Nelson H. F. Beebe.
381         * lib/getpass.c: Likewise, except for HAVE_DECL___FSETLOCKING instead
382         of HAVE_DECL___PENDING.
383
384         * m4/fpending.m4 (gl_FUNC_FPENDING): Check for stdio_ext at most once.
385         * m4/getpass.m4 (gl_PREREQ_GETPASS): Check for __fsetlocking's declaration.
386
387 2006-09-27  Jim Meyering  <jim@meyering.net>
388
389         This file could end up with a definition for a function
390         named __strndup, rather than rpl_strndup on a system with
391         incomplete weak_alias support.
392         * lib/strndup.c (strndup): Rename from __strndup.
393         Remove #defines that used to map __strndup to strndup.
394         Don't use K&R prototypes.
395         Remove LIBC-related code, since this file is not sync'd with glibc.
396         * lib/strndup.h: Revamp, accordingly.
397         * m4/strndup.m4: Modernize.
398
399 2006-09-26  Paul Eggert  <eggert@cs.ucla.edu>
400
401         * modules/savewd (Depends-on): Add 'raise'.
402         * lib/savewd.c: Include <signal.h>, for 'raise'.
403
404 2006-09-26  Jim Meyering  <jim@meyering.net>
405
406         * m4/acl.m4 (AC_FUNC_ACL): Disable ACL support altogether
407         when we detect Darwin 8.7.0's acl_get_file bug.
408         Rearrange to perform the new (below) run-test while $LIBS
409         contains any acl-related library.  Set USE_ACL at the end.
410         (gl_ACL_GET_FILE): New function.
411
412 2006-09-26  Eric Blake  <ebb9@byu.net>
413
414         * lib/verror.c: Include <config.h> unconditionally.
415
416 2006-09-25  Paul Eggert  <eggert@cs.ucla.edu>
417
418         * modules/clock-time (Maintainer): Add self.
419         * modules/getlogin_r (Depends-on): Add extensions.
420
421 2006-09-25  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
422
423         * modules/clock-time: New module.
424         * modules/nanosleep (Depends-on): Add clock-time.
425         * modules/gethrxtime (Depends-on): Likewise.
426         * modules/gettime (Depends-on): Likewise.
427         * modules/settime (Depends-on): Likewise.
428
429         * modules/fts-lgpl: Depend on openat.
430         * modules/mkancesdirs: Depend on savewd.
431         * modules/mkdir-p: Likewise.
432
433 2006-09-25  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
434
435         * m4/host-os.m4 (gl_HOST_OS): Require AC_CANONICAL_HOST.
436
437         * m4/chdir-long.m4 (gl_FUNC_CHDIR_LONG): Rename cache variable from
438         `gl_have_arbitrary_file_name_length_limit' to
439         `gl_cv_have_arbitrary_file_name_length_limit', so that caching
440         actually works between configure runs.
441
442 2006-09-25  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
443             Bruno Haible  <bruno@clisp.org>
444
445         * m4/stpncpy.m4 (gl_FUNC_STPNCPY): Include <string.h>.
446
447 2006-09-25  Jim Meyering  <jim@meyering.net>
448
449         * m4/fcntl_h.m4 (gl_FCNTL_H): Fix typo in test for failed open.
450         This typo caused coreutils/tests/dd/misc to fail on Darwin 8.7.0.
451
452 2006-09-25  Eric Blake  <ebb9@byu.net>
453
454         * gnulib-tool (func_import, func_create_testdir): Fix typos in
455         exec's in 2006-09-18 patch when shuffling fds.
456
457 2006-09-25  Bruno Haible  <bruno@clisp.org>
458
459         * m4/getloadavg.m4 (gl_GETLOADAVG): Fix directory in error message.
460         Reported by Jim Meyering.
461
462 2006-09-24  Jim Meyering  <jim@meyering.net>
463
464         * m4/ls-mntd-fs.m4 (gl_LIST_MOUNTED_FILE_SYSTEMS): Don't use '>' to
465         compare a pointer against a literal "0".  That caused failures with
466         at least HP-UX's hpcc.
467
468 2006-09-22  Simon Josefsson  <jas@extundo.com>
469
470         * modules/gc-sha1:
471         * modules/gc-md4:
472         * modules/gc-hmac-sha1:
473         * modules/gc-hmac-md5:
474         * modules/gc-des:
475         * modules/gc-arcfour: Distribute more files.
476
477 2006-09-22  Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
478
479         * lib/gl_anylinked_list2.h [lint] (gl_linked_iterator)
480         (gl_linked_iterator_from_to): Initialize struct completely.
481         * lib/gl_anytree_list2.h [lint] (gl_tree_iterator): Likewise.
482         (gl_tree_iterator_from_to): Likewise
483         * lib/gl_anytree_oset.h [lint] (gl_tree_iterator): Likewise.
484         * lib/gl_array_list.c [lint] (gl_array_iterator)
485         (gl_array_iterator_from_to): Likewise.
486         * lib/gl_array_oset.c [lint] (gl_array_iterator): Likewise.
487         * lib/gl_carray_list.c [lint] (gl_carray_iterator)
488         (gl_carray_iterator_from_to): Likewise.
489
490         * lib/gc-gnulib.c [GC_USE_HMAC_SHA1]: include hmac.h for hmac_sha1.
491         * lib/md4.c (md4_process_block): Remove unused variable.
492         * lib/rijndael-api-fst.c (rijndaelBlockDecrypt): GCC suggests
493         parentheses for clarity.
494
495 2006-09-22  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
496
497         * modules/bison-i18n (Depends-on): Add gettext.
498
499 2006-09-22  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
500
501         * m4/fsusage.m4 (gl_STATFS_TRUNCATES): Avoid unused variable.
502         * m4/getdate.m4 (gl_C_COMPOUND_LITERALS): Likewise.
503         * m4/jm-winsz1.m4 (gl_HEADER_TIOCGWINSZ_IN_TERMIOS_H): Likewise;
504         also add missing comma that caused broken test.
505         * m4/link-follow.m4 (gl_AC_FUNC_LINK_FOLLOWS_SYMLINK): Include
506         stdlib.h, for `abort'.
507         * m4/ls-mntd-fs.m4 (gl_LIST_MOUNTED_FILE_SYSTEMS): Avoid unused
508         variables.
509         * m4/mkdir-slash.m4 (gl_FUNC_MKDIR_TRAILING_SLASH): Check for and
510         include unistd.h if present, for `rmdir'.
511         * m4/physmem.m4 (gl_SYS__SYSTEM_CONFIGURATION): Avoid unused
512         variables.
513         * m4/putenv.m4 (gl_FUNC_PUTENV): Rewrite using AC_RUN_IFELSE, and
514         in the process include standard headers for prototypes.
515         * m4/readutmp.m4 (gl_READUTMP): Require AC_GNU_SOURCE, so utmpxname
516         gets declared on GNU/Linux.
517         * m4/rmdir-errno.m4 (gl_FUNC_RMDIR_NOTEMPTY): Check for and include
518         unistd.h, for `rmdir'.
519         * m4/time_r.m4 (gl_TIME_R): Avoid unused variables.
520
521         * m4/fnmatch.m4 (_AC_FUNC_FNMATCH_IF): Avoid expression that is
522         always true.
523         * m4/strndup.m4 (gl_FUNC_STRNDUP): include stdlib.h, for `free'.
524
525         * m4/sockpfaf.m4 (gl_SOCKET_FAMILIES): Avoid gcc -Wall warnings.
526
527 2006-09-22  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
528
529         * gnulib-tool (func_version): Create output all at once.  This
530         may help avoid triggering unnecessary SIGPIPEs, and at any
531         rate it doesn't hurt.
532
533 2006-09-22  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
534             Bruno Haible  <bruno@clisp.org>
535
536         * m4/lock.m4 (gl_LOCK_BODY): Avoid unused variables warning.
537         * m4/mbswidth.m4 (gl_MBSWIDTH): Likewise.
538         * m4/signed.m4 (bh_C_SIGNED): Likewise.
539
540         * m4/vasprintf.m4 (gl_PREREQ_VASPRINTF_H): New macro.
541         (gl_FUNC_VASPRINTF): Invoke it.
542
543 2006-09-22  Bruno Haible  <bruno@clisp.org>
544
545         * m4/getloadavg.m4 (gl_GETLOADAVG): Expect the directory of getloadavg.c
546         as first argument.
547
548 2006-09-22  Bruno Haible  <bruno@clisp.org>
549
550         * gnulib-tool (func_import, func_create_testdir): Set gl_source_base
551         at the beginning of the gl_INIT macro.
552         * modules/getloadavg (configure.ac): Pass $gl_source_base to
553         gl_GETLOADAVG.
554
555 2006-09-22  Bruno Haible  <bruno@clisp.org>
556
557         * gnulib-tool (func_create_megatestdir): Don't include the config-h
558         module.
559         Suggested by Ralf Wildenhues.
560
561 2006-09-20  Paul Eggert  <eggert@cs.ucla.edu>
562
563         Import this patch from libc:
564
565         2006-09-06  Jakub Jelinek  <jakub@redhat.com>
566
567         * lib/regex_internal.c (re_string_reconstruct): Handle
568         offset < pstr->valid_raw_len && pstr->offsets_needed case.
569         Ensure no bytes read before raw_mbs array.  Pass a saved copy of
570         pstr->valid_len - 1 rather than pstr->valid_raw_len - 1 to
571         re_string_context_at.
572
573         * m4/regex.m4 (gl_REGEX): Check for locale.h, since the test
574         now requires it.
575         (gl_PREREQ_REGEX): Don't check for locale.h any more, since
576         gl_REGEX now does it for us.
577         (gl_REGEX): Add test taken from
578         http://sourceware.org/ml/libc-hacker/2006-09/msg00008.html.
579
580         * m4/mkstemp.m4 (gl_FUNC_MKSTEMP): Require AC_SYS_LARGEFILE.
581         Check that large offsets work.  Modernize Autoconf usages.
582         Prefer "yes" to mean a good thing rather than a bad.
583         Don't put "#define mkstemp" in config.h, as this might interfere
584         with standard system headers that "#define mkstemp mkstemp64".
585
586         * modules/mkstemp (Depends-on): Add extensions, so that
587         mkstemp is visible on some platforms.
588         (Makefile.am): Add mkstemp.h to EXTRA_DIST.
589         (Include): Change to "mkstemp.h" from <stdlib.h>.
590         (Files): Add mkstemp.h.
591
592         * lib/mkstemp.h: New file, since some standard headers
593         #define mkstemp.
594         * lib/mkstemp.c: Revamp to put the !_LIBC code together.
595         Include "mkstemp.h".
596         Make the _LIBC code resemble glibc original more,
597         e.g., use K&R style.
598         * lib/mkstemp-safer.c: Include "mkstemp.h" instead of <stdlib.h>.
599         (mkstemp): Remove, since mkstemp.h does this for us.
600         * lib/stdlib--.h: Include mkstemp.h.
601
602         Import this patch from libc:
603
604         2006-04-07  Ulrich Drepper  <drepper@redhat.com>
605
606         * lib/tempname.c (__gen_tempname): Change attempts_min
607         into a macro.  Use preprocessor to decide how to initialize
608         attempts [Coverity CID 67].
609
610 2006-09-20  Bruno Haible  <bruno@clisp.org>
611
612         * lib/mkdtemp.c: Import from libc.
613         2006-04-07  Ulrich Drepper  <drepper@redhat.com>
614                 * sysdeps/posix/tempname.c (__gen_tempname): Change
615                 attempts_min into a macro.  Use preprocessor to decide how to
616                 initialize attempts [Coverity CID 67].
617         2001-11-27  Paul Eggert  <eggert@twinsun.com>
618                 * sysdeps/posix/tempname.c (__gen_tempname): Try at least
619                 ATTEMPTS_MIN or TMP_MAX times, whichever is greater.
620
621 2006-09-19  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
622
623         * gnulib-tool (func_exit): New function, to allow to pass the
624         exit status portably through the trap.  Use everywhere.
625         (--help, --version): Signal a write error.
626         (trap): catch SIGPIPE, for write errors.
627         Exit at the end of the trap, with the correct exit status.
628
629 2006-09-19  Karl Berry  <karl@gnu.org>
630
631         * doc/gnulib.texi: note about the license texinfo files.
632
633 2006-09-19  Eric Blake  <ebb9@byu.net>
634
635         * gnulib-tool: Avoid space-tab.
636
637 2006-09-18  Paul Eggert  <eggert@cs.ucla.edu>
638
639         * lib/getaddrinfo.c (getaddrinfo) [defined HAVE_IPV6]: Fix typo
640         that prevented coreutils 6.1 from building.  Problem reported
641         by Petter Reinholdtsen.
642
643 2006-09-18  Paul Eggert  <eggert@cs.ucla.edu>
644
645         * gnulib-tool (avoidlist): Fix typo that broke options like
646         --avoid=lock that are used by coreutils bootstrap.
647
648 2006-09-18  Mark D. Baushke  <mdb@gnu.org>
649
650         * m4/inttypes.m4 (gl_INTTYPES_H): Quote "test" args
651         more systematically.
652
653 2006-09-18  Jim Meyering  <jim@meyering.net>
654
655         * lib/savewd.c (savewd_restore): Don't shadow: s/status/child_status/.
656
657 2006-09-18  Bruno Haible  <bruno@clisp.org>
658
659         * modules/inttypes (Files): Remove m4/inttypes-h.m4.
660
661 2006-09-18  Bruno Haible  <bruno@clisp.org>
662
663         * m4/inttypes-h.m4 (gl_HEADER_INTTYPES_H): Remove macro.
664         * m4/inttypes-pri.m4: Require autoconf >= 2.52.
665         (gt_INTTYPES_PRI): Invoke AC_CHECK_HEADERS on inttypes.h. Test
666         ac_cv_header_inttypes_h instead of gl_cv_header_inttypes_h.
667         * m4/gettext.m4: Require autoconf >= 2.52.
668         (gt_INTL_SUBDIR_CORE): Invoke AC_CHECK_HEADERS on inttypes.h.
669         * m4/inttypes.m4 (gl_INTTYPES_H): Test ac_cv_header_inttypes_h instead
670         of gl_cv_header_inttypes_h.
671
672 2006-09-18  Bruno Haible  <bruno@clisp.org>
673
674         * lib/javaversion.c: Include configmake.h.
675
676 2006-09-18  Bruno Haible  <bruno@clisp.org>
677
678         * gnulib-tool (func_import, func_create_testdir): Use exec tricks to
679         avoid that the while loops be executed in a subshell.
680
681 2006-09-18  Bruno Haible  <bruno@clisp.org>
682
683         * MODULES.html.sh (func_module): Break long lines.
684         Suggested by Bruce Korb <bkorb@gnu.org>.
685
686 2006-09-17  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
687
688         Speed up by a factor of 1.12.
689         * gnulib-tool (nl): New variable.
690         (func_import): Rewrite include directive extraction to only read each
691         directive once.
692
693 2006-09-17  Bruno Haible  <bruno@clisp.org>
694
695         * modules/javaversion (Makefile.am): Remove DEFS setting.
696         (Depends-on): Add configmake, for PKGDATADIR definition.
697
698 2006-09-17  Bruno Haible  <bruno@clisp.org>
699
700         * gnulib-tool (func_create_testdir): Rewrite all files at once.
701
702 2006-09-17  Bruno Haible  <bruno@clisp.org>
703
704         * gnulib-tool (func_append): New function, stolen from libtool.m4.
705         (func_modules_transitive_closure, func_modules_add_dummy,
706         func_modules_to_filelist, func_import, func_create_testdir,
707         func_create_megatestdir, ...): Use it wherever possible.
708         Suggested by Ralf Wildenhues.
709
710 2006-09-16  Karl Berry  <karl@gnu.org>
711
712         * doc/fdl.texi (ADDENDUM): switch to @heading from @appendixsubsec,
713         to avoid sectioning errors.
714         * doc/lgpl.texi, gpl.texi (Copying): downcase @unnumbered title.
715         [ifinfo]: blank line after @center-ed titles.
716         * doc/lgpl.texi (Library Copying): Rename main node to GNU LGPL.
717         Spell FSF address consistently with others.
718         (These changes approved by rms.)
719
720 2006-09-15  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
721
722         Speed up by a factor of 1.61.
723         * gnulib-tool (func_modules_transitive_closure): Rewrite to not check
724         already checked module names again.
725
726 2006-09-15  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
727
728         Speed up by a factor of 1.13.
729         * gnulib-tool (func_import): Rewrite all old_files at once; likewise
730         for new_files, and the input to func_add_or_update.
731
732 2006-09-15  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
733
734         * gnulib-tool (func_all_modules, func_modules_to_filelist, func_import,
735         func_create_testdir, ...): Change 'sort | uniq' to 'sort -u'.
736
737 2006-09-15  Paul Eggert  <eggert@cs.ucla.edu>
738
739         * modules/mkancesdirs (Depends-on): Add fcntl.
740         * modules/savewd: New file.
741         * MODULES.html.sh (File system functions): Add savewd.
742
743         * modules/configmake (Makefile.am): Add support for the
744         Automake-supplied PKGLIBDIR, PKGINCLUDEDIR, PKGDATADIR.
745
746 2006-09-15  Paul Eggert  <eggert@cs.ucla.edu>
747
748         * m4/savewd.m4: New file.
749
750 2006-09-15  Paul Eggert  <eggert@cs.ucla.edu>
751
752         * lib/dirchownmod.c: Don't include fcntl.h; no longer needed.
753         (dirchownmod): New arg FD.  All callers changed.
754         Use FD rather than opening the directory ourself, as opening is
755         now the caller's responsibility.
756         * lib/dirchownmod.h: Likewise.
757         * lib/mkancesdirs.c: Include <sys/types.h>, for portability to older
758         hosts that require <sys/types.h> before <sys/stat.h>.  Include
759         fcntl.h, savewd.h, and unistd.h, not dirname.h and stat-macros.h.
760         (test_dir): Remove.
761         (mkancesdirs): Return length of prefix of FILE that has already
762         been made, or -2 if there is a child doing the work.  Redo
763         algorithm so that it is O(N) rather than O(N**2).  Optimize away
764         ".", and treat ".." specially since it might stray back into
765         already-created areas.  Use a subprocess if necessary.  New arg
766         WD; all users changed.  MAKE_DIR function should now return 1
767         if it creates a directory that is not readable.  Return -2 if
768         a child process is spun off.
769         * lib/mkancesdirs.h: Include <stddef.h>, for ptrdiff_t.
770         Adjust signature to match code.
771         * lib/mkdir-p.c: Include dirname.h, for IS_ABSOLUTE_FILE_NAME.
772         (make_dir_parents): Use a subprocess if necessary.  New arg WD;
773         all users changed.
774         * lib/savewd.c, savewd.h: New files.
775
776 2006-09-15  Jim Meyering  <jim@meyering.net>
777
778         * modules/rename-dest-slash: New module.
779         * MODULES.html.sh (posix_compat): Add it here.
780
781         * modules/rename: Reflect vb_FUNC_RENAME -> gl_FUNC_RENAME change.
782
783 2006-09-15  Jim Meyering  <jim@meyering.net>
784
785         * m4/rename-dest-slash.m4 (gl_FUNC_RENAME_TRAILING_DEST_SLASH): New file.
786
787         * m4/rename.m4 (gl_FUNC_RENAME): Rename from vb_FUNC_RENAME.
788
789 2006-09-15  Jim Meyering  <jim@meyering.net>
790
791         * lib/rename-dest-slash.c (has_trailing_slash): Use
792         FILE_SYSTEM_PREFIX_LEN, for non-POSIX systems.
793         (rpl_rename_dest_slash): Perform the cheaper trailing slash
794         test before testing whether SRC is a directory.
795         Suggestions from Bruno Haible.
796
797         Avoid a warning about an unused variable.
798         * lib/regex_internal.c (re_dfa_add_node): Move declaration of "type"
799         into the #ifdef block where it's used.
800
801         * lib/rename-dest-slash.c: New file.
802
803 2006-09-14  Bruno Haible  <bruno@clisp.org>
804
805         * lib/allocsa.c: Include <config.h> unconditionally.
806         * lib/asnprintf.c: Likewise.
807         * lib/asprintf.c: Likewise.
808         * lib/c-strcasecmp.c: Likewise.
809         * lib/c-strcasestr.c: Likewise.
810         * lib/c-strncasecmp.c: Likewise.
811         * lib/c-strstr.c: Likewise.
812         * lib/classpath.c: Likewise.
813         * lib/clean-temp.c: Likewise.
814         * lib/concatpath.c: Likewise.
815         * lib/copy-file.c: Likewise.
816         * lib/csharpcomp.c: Likewise.
817         * lib/csharpexec.c: Likewise.
818         * lib/execute.c: Likewise.
819         * lib/fatal-signal.c: Likewise.
820         * lib/findprog.c: Likewise.
821         * lib/fwriteerror.c: Likewise.
822         * lib/gl_array_list.c: Likewise.
823         * lib/gl_array_oset.c: Likewise.
824         * lib/gl_avltree_list.c: Likewise.
825         * lib/gl_avltree_oset.c: Likewise.
826         * lib/gl_avltreehash_list.c: Likewise.
827         * lib/gl_carray_list.c: Likewise.
828         * lib/gl_linked_list.c: Likewise.
829         * lib/gl_linkedhash_list.c: Likewise.
830         * lib/gl_list.c: Likewise.
831         * lib/gl_oset.c: Likewise.
832         * lib/gl_rbtree_list.c: Likewise.
833         * lib/gl_rbtree_oset.c: Likewise.
834         * lib/gl_rbtreehash_list.c: Likewise.
835         * lib/imaxabs.c: Likewise.
836         * lib/imaxdiv.c: Likewise.
837         * lib/javacomp.c: Likewise.
838         * lib/javaexec.c: Likewise.
839         * lib/javaversion.c: Likewise.
840         * lib/linebreak.c: Likewise.
841         * lib/localcharset.c: Likewise.
842         * lib/lock.c: Likewise.
843         * lib/mbchar.c: Likewise.
844         * lib/mbswidth.c: Likewise.
845         * lib/mkdtemp.c: Likewise.
846         * lib/pipe.c: Likewise.
847         * lib/printf-args.c: Likewise.
848         * lib/printf-parse.c: Likewise.
849         * lib/progname.c: Likewise.
850         * lib/progreloc.c: Likewise.
851         * lib/readlink.c: Likewise.
852         * lib/sh-quote.c: Likewise.
853         * lib/stpcpy.c: Likewise.
854         * lib/stpncpy.c: Likewise.
855         * lib/strcasecmp.c: Likewise.
856         * lib/strcasestr.c: Likewise.
857         * lib/strcspn.c: Likewise.
858         * lib/striconv.c: Likewise.
859         * lib/strncasecmp.c: Likewise.
860         * lib/strnlen1.c: Likewise.
861         * lib/strstr.c: Likewise.
862         * lib/strtok_r.c: Likewise.
863         * lib/tls.c: Likewise.
864         * lib/tmpdir.c: Likewise.
865         * lib/unicodeio.c: Likewise.
866         * lib/unsetenv.c: Likewise.
867         * lib/vasnprintf.c: Likewise.
868         * lib/vasprintf.c: Likewise.
869         * lib/wait-process.c: Likewise.
870         * lib/xallocsa.c: Likewise.
871         * lib/xsetenv.c: Likewise.
872         * lib/xstriconv.c: Likewise.
873
874 2006-09-13  Simon Josefsson  <jas@extundo.com>
875
876         * m4/getdate.m4: Don't AC_LIBOBJ([getdate]), automake takes care of
877         that internally, suggested by Ralf Wildenhues
878         <Ralf.Wildenhues@gmx.de>.
879
880 2006-09-13  Simon Josefsson  <jas@extundo.com>
881
882         * gnulib-tool (func_emit_lib_Makefile_am): Use $(LIBOBJS), not
883         @LIBOBJS@.
884         Suggested by Ralf Wildenhues <Ralf.Wildenhues@gmx.de>.
885
886 2006-09-13  Paul Eggert  <eggert@cs.ucla.edu>
887
888         * lib/_fpending.c: Include <config.h> unconditionally, since we no
889         longer worry about uses that don't define HAVE_CONFIG_H.
890         * lib/acl.c, alloca.c, argmatch.c, atexit.c, backupfile.c:
891         * lib/basename.c, c-stack.c, c-strtod.c, calloc.c, canon-host.c:
892         * lib/canonicalize.c, chdir-long.c, chdir-safer.c, chown.c:
893         * lib/cloexec.c, close-stream.c, closeout.c, creat-safer.c:
894         * lib/cycle-check.c, diacrit.c, dirchownmod.c, dirfd.c, dirname.c:
895         * lib/dup-safer.c, dup2.c, error.c, euidaccess.c, exclude.c:
896         * lib/exitfail.c, fchmodat.c, fchown-stub.c, fd-safer.c:
897         * lib/file-type.c, fileblocks.c, filemode.c, filenamecat.c:
898         * lib/fnmatch.c, fopen-safer.c, fprintftime.c, free.c, fsusage.c:
899         * lib/ftruncate.c, fts-cycle.c, fts.c, full-write.c, gai_strerror.c:
900         * lib/getcwd.c, getdate.y, getdomainname.c, getgroups.c:
901         * lib/gethostname.c, gethrxtime.c, getloadavg.c, getlogin_r.c:
902         * lib/getndelim2.c, getnline.c, getopt.c, getopt1.c, getpass.c:
903         * lib/gettime.c, gettimeofday.c, getugroups.c, getusershell.c:
904         * lib/glob.c, group-member.c, hard-locale.c, hash-pjw.c, hash.c:
905         * lib/human.c, idcache.c, inet_ntop.c, inet_pton.c, inttostr.c:
906         * lib/isdir.c, lchown.c, linebuffer.c, long-options.c, lstat.c:
907         * lib/malloc.c, md5.c, memcasecmp.c, memchr.c, memcmp.c, memcoll.c:
908         * lib/memcpy.c, memmove.c, memrchr.c, mkancesdirs.c, mkdir-p.c:
909         * lib/mkdir.c, mkdirat.c, mkstemp-safer.c, mkstemp.c, modechange.c:
910         * lib/mountlist.c, nanosleep.c, obstack.c, open-safer.c:
911         * lib/openat-die.c, openat.c, pagealign_alloc.c, physmem.c:
912         * lib/pipe-safer.c, posixtm.c, posixver.c, putenv.c, quote.c:
913         * lib/quotearg.c, raise.c, readtokens.c, readtokens0.c, readutmp.c:
914         * lib/realloc.c, regex.c, rename.c, rmdir.c, rpmatch.c, safe-read.c:
915         * lib/same.c, save-cwd.c, savedir.c, setenv.c, settime.c, sha1.c:
916         * lib/sig2str.c, snprintf.c, strdup.c, strerror.c, strftime.c:
917         * lib/stripslash.c, strndup.c, strnlen.c, strpbrk.c, strtod.c:
918         * lib/strtoimax.c, strtol.c, strverscmp.c, tempname.c, time_r.c:
919         * lib/timegm.c, tmpfile-safer.c, unlinkdir.c, userspec.c, utime.c:
920         * lib/utimecmp.c, utimens.c, version-etc-fsf.c, version-etc.c:
921         * lib/xalloc-die.c, xgetcwd.c, xgethostname.c, xmalloc.c:
922         * lib/xmemcoll.c, xnanosleep.c, xreadlink.c, xstrtod.c:
923         * lib/xstrtoimax.c, xstrtol.c, xstrtoumax.c, yesno.c:
924         Likewise.
925
926 2006-09-13  Eric Blake  <ebb9@byu.net>
927
928         * lib/getopt.c: Fix typo in last commit.
929
930 2006-09-12  Sergey Poznyakoff  <gray@gnu.org.ua>
931
932         * lib/argp-help.c (argp_doc): Make sure NULL is not passed to
933         dgettext.
934
935 2006-09-12  Jim Meyering  <jim@meyering.net>
936
937         * lib/nanosleep.c: Include <sys/types.h> before sys/select.h, to avoid
938         compilation failure (due to use of pid_t in latter) on NetBSD 1.6.
939         Reported by Nelson H. F. Beebe.
940
941 2006-09-10  Sergey Poznyakoff  <gray@gnu.org.ua>
942
943         * lib/argp-parse.c (__argp_parse) [!_LIBC]: Make sure
944         program_invocation_name and program_invocation_short_name are
945         initialized.
946         * lib/argp-namefrob.h: Move declarations of program_invocation_name
947         and program_invocation_short_name to argp.h, so they are visible
948         to user programs.
949         * lib/argp.h: Likewise
950
951 2006-09-10  Bruno Haible  <bruno@clisp.org>
952
953         * modules/mkdtemp (Files): Remove m4/ulonglong.m4, m4/stdint_h.m4,
954         m4/inttypes_h.m4, m4/uintmax_t.m4.
955
956 2006-09-10  Bruno Haible  <bruno@clisp.org>
957
958         * m4/mkdtemp.m4 (gl_PREREQ_MKDTEMP): Don't require gl_AC_TYPE_UINTMAX_T.
959
960 2006-09-10  Bruno Haible  <bruno@clisp.org>
961
962         * lib/mkdtemp.c: Include <stdint.h> always. Don't include <inttypes.h>.
963
964 2006-09-09  Sergey Poznyakoff  <gray@gnu.org.ua>
965
966         * lib/argp.h (struct argp): Document the N_("..") "\v" N_("..")
967         convention.  Text proposed by Bruno Haible.
968         (struct argp_option): Document the use of N_() wrappers.
969
970         * lib/argp-help.c (argp_doc): Split the untranslated doc string on '\v',
971         and translate the two parts separately, instead of feeding
972         the whole string to gettext.  This allows to exclude
973         '\v' from the strings visible to the translator by writing doc
974         strings as N_("..") "\v" N_("..").
975
976 2006-09-09  Paul Eggert  <eggert@cs.ucla.edu>
977
978         * config/srclist.txt: Undo latest change; the bug was fixed.
979
980 2006-09-09  Bruno Haible  <bruno@clisp.org>
981
982         * gnulib-tool (func_emit_lib_Makefile_am): Eliminate lib_LDFLAGS
983         assignments if building a library without libtool.
984         (func_emit_tests_Makefile_am): Likewise. Handle lib_* variables as
985         in func_emit_lib_Makefile_am.
986         (func_import): When building a static library libfoo.a, arrange to
987         define variables LIBFOO_LIBDEPS and LIBFOO_LTLIBDEPS.
988         (func_create_testdir): Likewise.
989         * modules/gc (configure.ac, Makefile.am): If building statically,
990         augment gl_libdeps and gl_ltlibdeps instead of lib_LDFLAGS.
991         * modules/iconvme (configure.ac, Makefile.am): Likewise.
992         * modules/striconv (configure.ac, Makefile.am): Likewise.
993         Based on a suggestion by Ralf Wildenhues.
994
995 2006-09-08  Paul Eggert  <eggert@cs.ucla.edu>
996
997         * m4/mktime.m4 (AC_FUNC_MKTIME): Sync from Autoconf.
998         Check for unistd.h too, since Autoconf doesn't assume POSIX.
999         Also:
1000
1001         2006-09-08  Paul Eggert  <eggert@cs.ucla.edu>
1002         Add year_2050_test to catch glibc bug 2821
1003         <http://sourceware.org/bugzilla/show_bug.cgi?id=2821>.
1004
1005         2006-08-15  Paul Eggert  <eggert@cs.ucla.edu>
1006         Prefer #ifdef to #if.
1007
1008         2006-04-02  Paul Eggert  <eggert@cs.ucla.edu>
1009         Return from 'main' instead of calling 'exit'.
1010
1011 2006-09-08  Paul Eggert  <eggert@cs.ucla.edu>
1012
1013         * lib/mktime.c (guess_time_tm): Fix bug where mktime
1014         returned the maximum time_t value rather than (time_t) -1.
1015         Problem originally reported by William Bardwell
1016         <http://sourceware.org/bugzilla/show_bug.cgi?id=2821>.
1017
1018         * lib/isapipe.h (HAVE_FIFO_PIPES) [!defined HAVE_FIFO_PIPES]:
1019         Moved to here ...
1020         * lib/isapipe.c (HAVE_FIFO_PIPES) [!defined HAVE_FIFO_PIPES]:
1021         ... from here.
1022
1023 2006-09-08  Paul Eggert  <eggert@cs.ucla.edu>
1024
1025         * config/srclist.txt: Temporarily comment out mktime.c until glibc bug
1026         2821 is fixed.
1027
1028 2006-09-08  Jim Meyering  <jim@meyering.net>
1029
1030         Don't make generated files read-only.  That would bother too many
1031         people.  However, do retain the ability to work when targets are
1032         read-only: remove the destination and temporary files before writing
1033         them (when generated via sed or echo), or by using the -f option for
1034         both cp and mv commands.  Suggestion to use -f from Paul Eggert.
1035         * modules/alloca-opt, modules/argz, modules/arpa_inet:
1036         * modules/byteswap, modules/configmake, modules/fcntl:
1037         * modules/fnmatch, modules/getopt, modules/glob, modules/inttypes:
1038         * modules/localcharset, modules/netinet_in, modules/poll:
1039         * modules/stdbool, modules/stdint, modules/sys_select:
1040         * modules/sys_socket, modules/sys_stat, modules/sysexits:
1041
1042 2006-09-08  Jim Meyering  <jim@meyering.net>
1043
1044         Avoid new build failure on FreeBSD 6.0.
1045         * m4/ls-mntd-fs.m4 (gl_LIST_MOUNTED_FILE_SYSTEMS): Include <sys/param.h>
1046         when testing whether getmntinfo uses statvfs.  Patch by Pavel Tsekov,
1047         in <http://savannah.gnu.org/bugs/?17643>.
1048
1049 2006-09-07  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
1050
1051         * m4/fsusage.m4 (gl_FILE_SYSTEM_USAGE): Don't use plain echo.
1052
1053 2006-09-07  Jim Meyering  <jim@meyering.net>
1054
1055         Fix global typo in last change: use chmod u-w, not chmod u-x.
1056         Spotted by Paul Eggert and Bruce Korb.
1057         * modules/alloca-opt, modules/argz, modules/arpa_inet:
1058         * modules/byteswap, modules/configmake, modules/fcntl:
1059         * modules/fnmatch, modules/getopt, modules/glob, modules/inttypes:
1060         * modules/localcharset, modules/netinet_in, modules/poll:
1061         * modules/stdbool, modules/stdint, modules/sys_select:
1062         * modules/sys_socket, modules/sys_stat, modules/sysexits:
1063
1064 2006-09-06  Jim Meyering  <jim@meyering.net>
1065
1066         Make generated files be read-only.
1067         * modules/alloca-opt (Makefile.am): Work also when $@ is read-only.
1068         Ensure that each generated file is now read-only.
1069         * modules/argz: Likewise.
1070         * modules/arpa_inet: Likewise.
1071         * modules/byteswap: Likewise.
1072         * modules/configmake: Likewise.
1073         * modules/fcntl: Likewise.
1074         * modules/fnmatch: Likewise.
1075         * modules/getopt: Likewise.
1076         * modules/glob: Likewise.
1077         * modules/inttypes: Likewise.
1078         * modules/netinet_in: Likewise.
1079         * modules/poll: Likewise.
1080         * modules/stdbool: Likewise.
1081         * modules/stdint: Likewise.
1082         * modules/sys_select: Likewise.
1083         * modules/sys_socket: Likewise.
1084         * modules/sys_stat: Likewise.
1085         * modules/sysexits: Likewise.
1086         * modules/localcharset: Same as above, but continue using temporary
1087         file named "t-$@" (why different?) rather than the "$@-t" used
1088         everywhere else.
1089
1090         * modules/sysexits (Makefile.am): Replace literal occurrences
1091         of "sysexit.h" more readable, and more consistent, "$@".
1092
1093 2006-09-06  Bruno Haible  <bruno@clisp.org>
1094
1095         * modules/striconv: New file.
1096         * modules/xstriconv: New file.
1097         * MODULES.html.sh (Internationalization functions): Add striconv,
1098         xstriconv.
1099
1100 2006-09-06  Bruno Haible  <bruno@clisp.org>
1101
1102         * modules/gc (Makefile.am): Augment lib_LDFLAGS, not lib_LIBADD.
1103         * modules/iconvme (Makefile.am): Likewise. Also handle the case of
1104         not using libtool correctly.
1105
1106 2006-09-06  Bruno Haible  <bruno@clisp.org>
1107
1108         * lib/striconv.h: New file.
1109         * lib/striconv.c: New file, merging iconvme.c with GNU gettext's
1110         iconvstring.c.
1111         * lib/xstriconv.h: New file.
1112         * lib/xstriconv.c: New file.
1113
1114 2006-09-06  Bruno Haible  <bruno@clisp.org>
1115
1116         * gnulib-tool (func_emit_lib_Makefile_am): Initialize also
1117         lib_..._LDFLAGS.
1118
1119 2006-09-05  Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
1120
1121         * lib/argz_.h: Sync from Libtool.
1122
1123         2006-09-04  George Bosilca <bosilca@cs.utk.edu>
1124                 and Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
1125
1126         * lib/libltdl/argz_.h: It's __cplusplus, not _cplusplus.
1127
1128 2006-09-05  Davide Angelocola <davide.angelocola@tiscali.it>
1129
1130         * modules/trim: New file.
1131
1132 2006-09-05  Davide Angelocola <davide.angelocola@tiscali.it>
1133
1134         * lib/trim.h: New file.
1135         * lib/trim.c: New file.
1136
1137 2006-09-05  Bruno Haible  <bruno@clisp.org>
1138
1139         * MODULES.html.sh (String handling): Add trim.
1140
1141 2006-09-04  Karl Berry  <karl@gnu.org>
1142
1143         * config/srclist.txt (signed.m4, gettext.m4): changes not propagated
1144         until next release.
1145
1146 2006-09-03  Bruno Haible  <bruno@clisp.org>
1147
1148         * m4/lib-link.m4 (AC_LIB_LINKFLAGS_BODY): Locate mingw shared libraries
1149         correctly.
1150
1151 2006-09-01  Paul Eggert  <eggert@cs.ucla.edu>
1152
1153         * m4/getloadavg.m4 (gl_GETLOADAVG): Use CONFIGURING_GETLOADAVG,
1154         not gl_GETLOADAVG.  Omit unneeded semicolons.
1155         Problems reported by Ralf Wildenhues in
1156         <http://lists.gnu.org/archive/html/bug-gnulib/2006-09/msg00000.html>.
1157         (gl_PREREQ_GETLOADAVG): Use AC_DEFUN, not m4_define.  Put
1158         at the end, which is the usual gnulib style.
1159
1160         * m4/fstypename.m4 (gl_FSTYPENAME): Use AC_CHECK_MEMBERS instead
1161         of doing all the work ourselves.
1162         * m4/fsusage.m4 (gl_PREREQ_FSUSAGE_EXTRA): Don't check for
1163         sys/statvfs.h since the code doesn't use HAVE_SYS_STATVFS_H.
1164
1165 2006-09-01  Paul Eggert  <eggert@cs.ucla.edu>
1166
1167         * lib/getloadavg.c: Use CONFIGURING_GETLOADAVG, not gl_GETLOADAVG.
1168         Problem reported by Ralf Wildenhues in
1169         <http://lists.gnu.org/archive/html/bug-gnulib/2006-09/msg00000.html>.
1170
1171         * lib/mountlist.c: All uses of HAVE_F_FSTYPENAME_IN_STATFS replaced by
1172         HAVE_STRUCT_STATFS_F_FSTYPENAME.
1173
1174 2006-09-01  Paul Eggert  <eggert@cs.ucla.edu>
1175
1176         * gnulib-tool (func_emit_lib_Makefile_am): Fix typos in
1177         yesterday's patch by changing test -n to test -z.
1178
1179 2006-08-31  Paul Eggert  <eggert@cs.ucla.edu>
1180
1181         * modules/getloadavg (Files): Add m4/getloadavg.m4.
1182         (configure.ac): AC_FUNC_GETLOADAVG -> gl_GETLOADAVG, as
1183         the former is now obsolescent.
1184
1185         * modules/chdir-long (Depends-on): Add fcntl.
1186
1187 2006-08-31  Paul Eggert  <eggert@cs.ucla.edu>
1188
1189         * m4/fnmatch.m4: Add comment that Autoconf AC_FUNC_FNMATCH is
1190         obsolescent, and programs should use gnulib instead.
1191         * m4/getloadavg.m4: New file, with contents taken from Autoconf
1192         but with prefixes changed.
1193
1194 2006-08-31  Paul Eggert  <eggert@cs.ucla.edu>
1195
1196         * lib/getloadavg.c [defined gl_GETLOADAVG]: Don't include config.h
1197         or stdbool.h, because they might not exist while configuring.
1198
1199         * lib/chdir-long.c: Include <fcntl.h>, for O_DIRECTORY.
1200         Don't include unistd.h or limits.h; not needed, since chdir-long.h
1201         does that for us.
1202         (O_DIRECTORY): Remove.
1203
1204 2006-08-31  Eric Blake  <ebb9@byu.net>
1205
1206         * gnulib-tool: Don't let emacs change spaces to TAB.
1207
1208 2006-08-31  Bruno Haible  <bruno@clisp.org>
1209
1210         * gnulib-tool: When calling func_import more than once, do it in a
1211         subshell.
1212         Reported by Eric Blake <ebb9@byu.net>.
1213
1214 2006-08-31  Bruno Haible  <bruno@clisp.org>
1215
1216         * gnulib-tool (nl): Remove variable.
1217         (sed_transform_lib_file): Use more robust test for config-h module.
1218         (func_import): Fix typo in 2006-08-25 patch.
1219
1220 2006-08-31  Bruno Haible  <bruno@clisp.org>
1221
1222         * gnulib-tool (func_emit_lib_Makefile_am): When --makefile-name was
1223         specified, augment Makefile.am variables instead of assigning them.
1224
1225 2006-08-30  Paul Eggert  <eggert@cs.ucla.edu>
1226
1227         Work around a bug in both the Linux and SunOS 64-bit kernels:
1228         nanosleep mishandles sleeps for longer than 2**31 seconds.
1229         Problem reported by Frank v Waveren in
1230         <http://lists.gnu.org/archive/html/bug-coreutils/2006-08/msg00298.html>.
1231         * m4/nanosleep.m4 (gl_FUNC_NANOSLEEP): Require gl_CLOCK_TIME.
1232         Check for nanosleep bug.
1233         (LIB_NANOSLEEP): Append clock_gettime library if needed.
1234
1235 2006-08-30  Paul Eggert  <eggert@cs.ucla.edu>
1236
1237         Work around a bug in both the Linux and SunOS 64-bit kernels:
1238         nanosleep mishandles sleeps for longer than 2**31 seconds.
1239         Problem reported by Frank v Waveren in
1240         <http://lists.gnu.org/archive/html/bug-coreutils/2006-08/msg00298.html>.
1241         * lib/nanosleep.c (BILLION): New constant.
1242         (getnow) [HAVE_BUG_BIG_NANOSLEEP]: New functions.
1243         (rpl_nanosleep) [HAVE_BUG_BIG_NANOSLEEP]: Completely new implementation.
1244
1245 2006-08-30  Paul Eggert  <eggert@cs.ucla.edu>
1246
1247         * modules/nanosleep (Depends-on): Add gettime.
1248
1249 2006-08-30  Paul Eggert  <eggert@cs.ucla.edu>
1250         and Simon Josefsson  <jas@extundo.com>
1251         and Oskar Liljeblad  <oskar@osk.mine.nu>
1252
1253         * MODULES.html.sh (Support for building documentation): Add gpl, lgpl.
1254         * gnulib-tool (func_import): New license type 'unmodifiable license
1255         text'.
1256         * modules/fdl: Use it.  Longer description.
1257         * module/gpl, module/lgpl: New files.
1258
1259 2006-08-30  Jim Meyering  <jim@meyering.net>
1260
1261         * lib/isapipe.c (isapipe): Rename local s/fd/fd_pair/ to avoid shadowing
1262         the parameter.
1263
1264 2006-08-29  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
1265
1266         Sync from Libtool:
1267
1268         2006-08-28  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
1269
1270         * lib/libltdl/argz.c: Use `#ifdef HAVE_CONFIG_H', to facilitate code
1271         sharing with gnulib.  Report by Eric Blake.
1272
1273 2006-08-29  Paul Eggert  <eggert@cs.ucla.edu>
1274
1275         * modules/isapipe: New file.
1276         * MODULES.html.sh (File descriptor based Input/Output): Add isapipe.
1277
1278 2006-08-29  Paul Eggert  <eggert@cs.ucla.edu>
1279
1280         * modules/configmake (Makefile.am): Add a comment, and omit
1281         the CONFIGMAKE_ prefix from generated macro names.  Suggested
1282         by Bruno Haible.
1283
1284 2006-08-29  Paul Eggert  <eggert@cs.ucla.edu>
1285
1286         * m4/isapipe.m4: New file.
1287
1288 2006-08-29  Paul Eggert  <eggert@cs.ucla.edu>
1289
1290         * lib/isapipe.c, isapipe.h: New files.
1291
1292 2006-08-29  Jim Meyering  <jim@meyering.net>
1293
1294         * modules/configmake (Makefile.am): Make configmake.h depend on
1295         Makefile.  Otherwise, a stale configmake.h could hang around.
1296
1297 2006-08-29  Eric Blake  <ebb9@byu.net>
1298
1299         * lib/error.c (error_at_line, print_errno_message): Match libc, after
1300         resolution of upstream bug 3044.
1301
1302 2006-08-29  Bruno Haible  <bruno@clisp.org>
1303
1304         * modules/localcharset (Depends-on): Add configmake.
1305         (Makefile.am): Remove setting of LIBDIR through DEFS.
1306
1307 2006-08-29  Bruno Haible  <bruno@clisp.org>
1308
1309         * lib/localcharset.c: Include configmake.h in order to get LIBDIR defined.
1310
1311 2006-08-28  Paul Eggert  <eggert@cs.ucla.edu>
1312
1313         * modules/fcntl: New file.
1314         * modules/chdir-safer (Depends-on): Add fcntl.
1315         * modules/fts: Likewise.
1316         * modules/mkdir-p: Likewise.
1317
1318         * modules/stdint (Makefile.am): Do not substitute ABSOLUTE_INTTYPES_H.
1319         This undoes the most recent change, since we're now addressing the
1320         problem in a different way.
1321
1322         * gnulib-tool (emit_lib_Makefile_am): Don't put $makefile_name
1323         into output, since the output might be called Makefile.am even
1324         if $makefile_name is something different.
1325         (func_import): Use $makefile_am rather than
1326         ${makefile_name-Makefile.am}, to fix a bug where makefile_name was
1327         empty.
1328
1329         * modules/inttypes (Files): Add m4/inttypes-h.m4.
1330
1331 2006-08-28  Paul Eggert  <eggert@cs.ucla.edu>
1332
1333         * m4/inttypes.m4 (gl_INTTYPES_H): Move ABSOLUTE_INTTYPES_H code here...
1334         * m4/stdint.m4 (gl_STDINT_H): ... from here.  This undoes the most recent
1335         change to stdint.m4, since we're now addressing the problem in a
1336         different way.
1337
1338 2006-08-28  Paul Eggert  <eggert@cs.ucla.edu>
1339
1340         * m4/fcntl_h.m4: New file.
1341
1342 2006-08-28  Paul Eggert  <eggert@cs.ucla.edu>
1343
1344         * lib/fcntl_.h: New file.
1345         * lib/chdir-safer.c (O_DIRECTORY, O_NOFOLLOW): Remove, now that we have
1346         the fcntl module.
1347         * lib/dirchownmod.c: Likewise.
1348         * lib/fts.c: Likewise.
1349
1350         * lib/inttypes_.h [defined _GL_JUST_INCLUDE_ABSOLUTE_INTTYPES_H]:
1351         Include @ABSOLUTE_INTTYPES_H@ if available, but do nothing else.
1352         * lib/stdint_.h (_GL_JUST_INCLUDE_ABSOLUTE_INTTYPES_H): Define
1353         just before including <inttypes.h>, to avoid circular inclusion.
1354
1355 2006-08-28  Jim Meyering  <jim@meyering.net>
1356
1357         * doc/visibility.texi: Actually read and correct the grammar of the
1358         sentence affected by yesterday's change.
1359
1360 2006-08-28  Eric Blake  <ebb9@byu.net>
1361
1362         * modules/inttypes (Makefile.am): Fix sed error when inttypes.h
1363         needs wrapper.
1364
1365 2006-08-28  Eric Blake  <ebb9@byu.net>
1366
1367         * m4/inttypes.m4 (gl_INTTYPES_H): Fix missing #endif.
1368
1369 2006-08-28  Eric Blake  <ebb9@byu.net>
1370
1371         * m4/codeset.m4 (AM_LANGINFO_CODESET): Avoid compiler warning.
1372
1373 2006-08-28  Bruno Haible  <bruno@clisp.org>
1374
1375         * modules/c-strstr: New file, from GNU gettext.
1376         * MODULES.html.sh (String handling): Add c-strstr.
1377
1378 2006-08-28  Bruno Haible  <bruno@clisp.org>
1379
1380         * m4/inttypes.m4 (gl_INTTYPES_H): Don't test for the existence of SCNX*
1381         macros.
1382         Reported by Eric Blake.
1383
1384 2006-08-28  Bruno Haible  <bruno@clisp.org>
1385
1386         * lib/vasnprintf.c (EOVERFLOW): Remove definition.
1387         (VASNPRINTF): Return a string of length > INT_MAX without failing.
1388         * lib/vasprintf.c: Include errno.h, limits.h.
1389         (EOVERFLOW): New fallback definition.
1390         (vasprintf): Test here whether the string length is > INT_MAX.
1391         * lib/vsnprintf.c: Include errno.h, limits.h.
1392         (EOVERFLOW): New fallback definition.
1393         (vsnprintf): Fix bug when generated string was too long for the buffer.
1394         Test here whether the string length is > INT_MAX.
1395
1396 2006-08-28  Bruno Haible  <bruno@clisp.org>
1397
1398         * lib/inttypes_.h (SCNX*): Remove definitions.
1399         Reported by Eric Blake.
1400
1401 2006-08-28  Bruno Haible  <bruno@clisp.org>
1402
1403         * lib/c-strstr.h: New file, from GNU gettext.
1404         * lib/c-strstr.c: New file, from GNU gettext.
1405
1406 2006-08-28  Bruno Haible  <bruno@clisp.org>
1407
1408         * gnulib-tool: Reorder some statements.
1409
1410 2006-08-28  Bruno Haible  <bruno@clisp.org>
1411
1412         * gnulib-tool: New option --makefile-name.
1413         (func_emit_lib_Makefile_am, func_emit_tests_Makefile_am): Use
1414         $makefile_name.
1415         (func_import): Write $makefile_name to the cache file, and read it from
1416         there unless explicitly specified. Use $makefile_name as file name
1417         instead of Makefile.am. Adjust the recommendations accordingly.
1418
1419 2006-08-28  Bruno Haible  <bruno@clisp.org>
1420
1421         * gnulib-tool (func_verify_module): Check against misapplying patch.
1422
1423 2006-08-28  Bruno Haible  <bruno@clisp.org>
1424
1425         * gnulib-tool (func_relativize, func_relconcat): New functions.
1426         Give an error if --local-dir is given with --update.
1427         Remove trailing slashes from $local_gnulib_dir.
1428         (func_import): Store the relativized $local_gnulib_dir in
1429         gnulib-cache.m4, and read it from there if not specified explicitly.
1430
1431 2006-08-28  Bruno Haible  <bruno@clisp.org>
1432
1433         * gnulib-tool (func_get_tests_module): Don't assume that $gnulib_dir
1434         is the current directory. Respect also $local_gnulib_dir.
1435
1436 2006-08-28  Bruno Haible  <bruno@clisp.org>
1437             Simon Josefsson  <jas@extundo.com>
1438
1439         BeOS portability.
1440         * lib/getaddrinfo.c (PF_INET, PF_UNSPEC): New macros.
1441
1442 2006-08-27  Jim Meyering  <jim@meyering.net>
1443
1444         * doc/visibility.texi: Remove duplicate word: "pointer".
1445
1446 2006-08-26  Bruno Haible  <bruno@clisp.org>
1447
1448         * modules/inttypes (Files): Add lib/inttypes_.h, remove lib/inttypes.h.
1449         Add m4/inttypes.m4, remove m4/_inttypes_h.m4 and m4/include_next.m4.
1450         (Makefile.am): Create inttypes.h from inttypes_.h.
1451         * modules/stdint (Makefile.am): Substitute also ABSOLUTE_INTTYPES_H.
1452
1453         * modules/imaxabs: New file.
1454
1455         * modules/imaxdiv: New file.
1456
1457 2006-08-26  Bruno Haible  <bruno@clisp.org>
1458
1459         * m4/inttypes.m4: New file.
1460         * m4/_inttypes_h.m4: Remove file.
1461         * m4/inttypes-pri.m4 (gt_INTTYPES_PRI): Also AC_SUBST PRI_MACROS_BROKEN.
1462         * m4/stdint.m4 (gl_STDINT_H): Define also ABSOLUTE_INTTYPES_H.
1463
1464         * m4/imaxabs.m4: New file.
1465
1466         * m4/imaxdiv.m4: New file.
1467
1468 2006-08-26  Bruno Haible  <bruno@clisp.org>
1469
1470         * lib/inttypes_.h: New file.
1471         * lib/inttypes.h: Remove file.
1472         * lib/stdint_.h: Include <inttypes.h> through its absolute filename.
1473
1474         * lib/imaxabs.c: New file.
1475
1476         * lib/imaxdiv.c: New file.
1477
1478 2006-08-25  Paul Eggert  <eggert@cs.ucla.edu>
1479
1480         New config-h module, so that "make" output needn't be cluttered
1481         by -DHAVE_CONFIG_H.
1482         * MODULES.html.sh (Support for building libraries and executables):
1483         Add config-h.
1484         * modules/config-h: New file.
1485         * gnulib-tool (nl, sed_transform_lib_file): New vars.
1486         (func_import): Turn "#ifdef HAVE_CONFIG_H" to "#if 1" if
1487         the config-h module is used.
1488
1489         New configmake module, so that "make" output needn't be cluttered
1490         by fluff like '-DLIBDIR=\"/usr/local/lib\"'.
1491         * MODULES.html.sh (Support for building libraries and executables):
1492         Add configmake.
1493         * modules/configmake: New file.
1494
1495 2006-08-25  Paul Eggert  <eggert@cs.ucla.edu>
1496
1497         * m4/config-h.m4: New file.
1498
1499 2006-08-24  Paul Eggert  <eggert@cs.ucla.edu>
1500
1501         * config/srclist.txt: Add elisp-comp.
1502
1503 2006-08-24  Paul Eggert  <eggert@cs.ucla.edu>
1504
1505         * MODULES.html.sh (Support for building libraries and executables):
1506         Add elisp-comp.
1507         * build-aux/elisp-comp: New file.
1508         * modules/elisp-comp: New file.
1509
1510 2006-08-24  Bruno Haible <bruno@clisp.org>
1511
1512         * gnulib-tool (func_create_testdir): Use non-default values of
1513         sourcebase and m4base.
1514
1515 2006-08-24  Bruno Haible <bruno@clisp.org>
1516
1517         * MODULES.html.sh (Compatibility checks for POSIX:2001 functions: Fix
1518         HTML structure.
1519
1520 2006-08-23  Paul Eggert  <eggert@cs.ucla.edu>
1521
1522         * modules/openat (Depends-on): Add lchown.
1523
1524 2006-08-23  Bruno Haible <bruno@clisp.org>
1525
1526         * gnulib-tool (func_import, func_create_testdir): Emit an invocation
1527         of gl_LOCK_EARLY instead of gl_LOCK.
1528
1529 2006-08-23  Bruno Haible  <bruno@clisp.org>
1530
1531         * m4/lock.m4 (gl_LOCK_BODY): Change the default value of gl_use_threads
1532         on OSF/1 to no.
1533         Reported by Stephen Cartwright <sgcartwr@ucalgary.ca>.
1534
1535 2006-08-23  Bruno Haible  <bruno@clisp.org>
1536
1537         * m4/fsusage.m4 (gl_FILE_SYSTEM_USAGE): Don't consider BeOS statvfs
1538         as unusable.
1539
1540         * m4/lock.m4 (gl_LOCK_EARLY): Renamed from gl_LOCK.
1541         (gl_LOCK_BODY): Remove gl_PREREQ_LOCK invocation.
1542         (gl_LOCK): New macro.
1543
1544 2006-08-22  Simon Josefsson  <jas@extundo.com>
1545
1546         * modules/gc-md5 (Makefile.am): Need to add md5.h, after changes
1547         to md5 module.
1548
1549 2006-08-22  Simon Josefsson  <jas@extundo.com>
1550
1551         * MODULES.html.sh: Add "Support for maintaining and release
1552         projects".
1553
1554         * build-aux/gnupload: New file, from coreutils.
1555
1556 2006-08-22  Paul Eggert  <eggert@cs.ucla.edu>
1557
1558         Avoid the need for AC_LIBSOURCES in m4 macros.
1559         * modules/arcfour (EXTRA_DIST): Add arcfour.h.
1560         * modules/arctwo (EXTRA_DIST): Add arctwo.h.
1561         * modules/check-version (EXTRA_DIST): Add check-version.h.
1562         * modules/crc (EXTRA_DIST): Add crc.h.
1563         * modules/des (EXTRA_DIST): Add des.h.
1564         * modules/gc (EXTRA_DIST): Add gc.h.
1565         * modules/getdelim (EXTRA_DIST): Add getdelim.h.
1566         * modules/getline (EXTRA_DIST): Add getline.h.
1567         * modules/getlogin_r (EXTRA_DIST): Add getlogin_r.h.
1568         * modules/hmac-md5 (EXTRA_DIST): Add hmac.h.
1569         * modules/hmac-sha1 (EXTRA_DIST): Add hmac.h.
1570         * modules/md2 (EXTRA_DIST): Add md2.h.
1571         * modules/md4 (EXTRA_DIST): Add md4.h.
1572         * modules/pagealign_alloc (EXTRA_DIST): Add pagealign_alloc.h.
1573         * modules/read-file (EXTRA_DIST): Add read-file.h.
1574         * modules/readline (EXTRA_DIST): Add readline.h.
1575         * modules/rijndael (EXTRA_DIST): Add rijndael-alg-fst.h,
1576         rijndael-api-fst.h.
1577
1578 2006-08-22  Paul Eggert  <eggert@cs.ucla.edu>
1579
1580         * m4/rijndael.m4 (gl_ARCFOUR):
1581         * m4/arctwo.m4 (gl_ARCTWO):
1582         * m4/check-version.m4 (gl_CHECK_VERSION):
1583         * m4/crc.m4 (gl_CRC):
1584         * m4/des.m4 (gl_DES):
1585         * m4/gc-pbkdf2-sha1.m4 (gl_GC_PBKDF2_SHA1):
1586         * m4/gc.m4 (gl_GC):
1587         * m4/getdelim.m4 (gl_FUNC_GETDELIM):
1588         * m4/getline.m4 (gl_FUNC_GETLINE):
1589         * m4/getlogin_r.m4 (gl_GETLOGIN_R_SUBSTITUTE):
1590         * m4/hmac-md5.m4 (gl_HMAC_MD5):
1591         * m4/hmac-sha1.m4 (gl_HMAC_SHA1):
1592         * m4/md2.m4 (gl_MD2):
1593         * m4/md4.m4 (gl_MD4):
1594         * m4/pagealign_alloc.m4 (gl_PAGEALIGN_ALLOC):
1595         * m4/read-file.m4 (gl_FUNC_READ_FILE):
1596         * m4/readline.m4 (gl_FUNC_READLINE):
1597         * m4/rijndael.m4 (gl_RIJNDAEL):
1598         Don't use AC_LIBSOURCES; instead, rely on the files in ../modules/
1599         to get the necessary .h files and whatnot.
1600
1601 2006-08-22  Paul Eggert  <eggert@cs.ucla.edu>
1602
1603         * config/srclist.txt: Remove gnupload, since coreutils now syncs from
1604         gnulib rather than the other way around.
1605         * config/srclistvars.sh (COREUTILS): Remove.
1606
1607 2006-08-22  Jim Meyering  <jim@meyering.net>
1608
1609         * modules/mkdir-p (Makefile.am): Fix typo: s/lib+SOURCES/lib_SOURCES/.
1610
1611         * modules/getpass-gnu (Makefile.am): Add getpass.h to EXTRA_DIST.
1612
1613 2006-08-22  Eric Blake  <ebb9@byu.net>
1614
1615         * modules/regexprops-generic: New file.
1616         * MODULES.html.sh (Support for building documentation): List it.
1617
1618 2006-08-22  Eric Blake  <ebb9@byu.net>
1619
1620         * m4/stdint_h.m4 (gl_AC_HEADER_STDINT_H): Avoid compiler warning.
1621         * m4/inttypes_h.m4 (gl_AC_HEADER_INTTYPES_H): Likewise.
1622         * m4/longlong.m4 (AC_TYPE_LONG_LONG_INT): Likewise.
1623         * m4/intmax_t.m4 (gt_AC_TYPE_INTMAX_T): Likewise.
1624
1625 2006-08-22  Bruno Haible <bruno@clisp.org>
1626
1627         * gnulib-tool (func_emit_lib_Makefile_am): Don't treat lib_LIBRARIES
1628         and lib_LTLIBRARIES like the other lib_* variables.
1629
1630 2006-08-22  Bruno Haible <bruno@clisp.org>
1631
1632         * build-aux/x-to-1.in: New file, from GNU gettext.
1633
1634 2006-08-22  Bruno Haible  <bruno@clisp.org>
1635
1636         * m4/readutmp.m4 (gl_READUTMP): Compile readutmp.c only if <utmp.h> or
1637         <utmpx.h> exists.
1638
1639 2006-08-22  Bruno Haible  <bruno@clisp.org>
1640
1641         * lib/readutmp.h: Skip most definitions if neither <utmp.h> nor
1642         <utmpx.h> exists.
1643
1644 2006-08-21  Paul Eggert  <eggert@cs.ucla.edu>
1645
1646         BeOS portability.
1647         * lib/dirchownmod.c (dirchownmod): Don't use fchmod if it doesn't exist.
1648         Problem reported by Bruno Haible.
1649
1650 2006-08-21  Paul Eggert  <eggert@cs.ucla.edu>
1651
1652         Avoid the need for AC_LIBSOURCES in m4 macros.
1653         * modules/acl (EXTRA_DIST): Add acl.h.
1654         * modules/argmatch (Files): Add m4/argmatch.m4.
1655         (configure.ac): Add gl_ARGMATCH.
1656         (EXTRA_DIST): Renamed from lib_SOURCES, for
1657         consistency with the other modules.  Remove argmatch.c.
1658         * modules/backupfile (EXTRA_DIST): Add backupfile.h.
1659         * modules/c-strtod (EXTRA_DIST): Add c-strtod.h.
1660         * modules/c-strtold (EXTRA_DIST): Add c-strtod.c, c-strtod.h.
1661         * modules/canonhost (EXTRA_DIST): Add c-canonhost.h.
1662         * modules/canonicalize (EXTRA_DIST): Add canonicalize.h.
1663         * modules/chdir-long (EXTRA_DIST): Add chdir-long.h.
1664         * modules/chdir-safer (EXTRA_DIST): Add chdir-safer.h.
1665         * modules/cloexec (EXTRA_DIST): Add cloexec.h.
1666         * modules/close-stream (EXTRA_DIST): Add close-stream.h.
1667         * modules/closeout (EXTRA_DIST): Add closeout.h.
1668         * modules/cycle-check (EXTRA_DIST): Add cycle-check.h.
1669         * modules/dev-ino (EXTRA_DIST): Add dev-ino.h.
1670         * modules/dirfd (EXTRA_DIST): Add dirfd.h.
1671         * modules/dirname (EXTRA_DIST): Renamed from lib_SOURCES.  Add
1672         dirname.h; remove basename.c and stripslash.c.
1673         * modules/exclude (EXTRA_DIST): Add exclude.h.
1674         * modules/exitfail (EXTRA_DIST): Add exitfail.h.
1675         * modules/fcntl-safer (EXTRA_DIST): Add fcntl-safer.h fcntl--.h.
1676         * modules/file-type (EXTRA_DIST): Add file-type.h.
1677         * modules/filemode (EXTRA_DIST): Add filemode.h.
1678         * modules/filenamecat (EXTRA_DIST): Add filenamecat.h.
1679         * modules/fopen-safer (EXTRA_DIST): Add stdio-safer.h stdio--.h.
1680         * modules/fpending (EXTRA_DIST): Add __fpending.h.
1681         * modules/fprintftime (EXTRA_DIST): Add fprintftime.h.
1682         * modules/fsusage (EXTRA_DIST): Add fsusage.h.
1683         * modules/fts (EXTRA_DIST): Add fts_.h fts-cycle.c.
1684         * modules/getcwd (EXTRA_DIST): Add getcwd.h.
1685         * modules/getdate (EXTRA_DIST): Add getdate.c.
1686         * modules/gethrxtime (EXTRA_DIST): Add gethrxtime.h xtime.h.
1687         * modules/getpagesize (EXTRA_DIST): Add getpagesize.h.
1688         * modules/getpass (EXTRA_DIST): Add getpass.h.
1689         * modules/glob (EXTRA_DIST): Add glob_.h glob-libc.h.
1690         * modules/group-member (EXTRA_DIST): Add group-member.h.
1691         * modules/hard-locale (EXTRA_DIST): Add hard-locale.h.
1692         * modules/hash (EXTRA_DIST): Add hash.h.
1693         * modules/human (EXTRA_DIST): Add human.h.
1694         * modules/inttypes (EXTRA_DIST): Add inttypes.h.
1695         * modules/lchmod (EXTRA_DIST): Add lchmod.h.
1696         * modules/lchown (EXTRA_DIST): Add lchown.h.
1697         * modules/long-options (EXTRA_DIST): Add long-options.h.
1698         * modules/lstat (EXTRA_DIST): Add lstat.h.
1699         * modules/md5 (EXTRA_DIST): Add memcasecmp.h.
1700         * modules/memcoll (EXTRA_DIST): Add memcoll.h.
1701         * modules/mempcpy (EXTRA_DIST): Add mempcpy.h.
1702         * modules/memrchr (EXTRA_DIST): Add memrchr.h.
1703         * modules/memxor (EXTRA_DIST): Add memxor.h.
1704         * modules/mkancesdirs (EXTRA_DIST): Add mkancesdirs.h.
1705         * modules/mkdir-p (EXTRA_DIST): Add modechange.h.
1706         * modules/mountlist (EXTRA_DIST): Add mountlist.h.
1707         * modules/openat (EXTRA_DIST): Add at-func.c openat.h openat-priv.h.
1708         * modules/pathmax (EXTRA_DIST): Add pathmax.h.
1709         * modules/physmem (EXTRA_DIST): Add physmem.h.
1710         * modules/posixtm (EXTRA_DIST): Add posixtm.h.
1711         * modules/posixver (EXTRA_DIST): Add posixver.h.
1712         * modules/quote (EXTRA_DIST): Add quote.h.
1713         * modules/quotearg (EXTRA_DIST): Add quotearg.h.
1714         * modules/readtokens (EXTRA_DIST): Add readtokens.h.
1715         * modules/readutmp (EXTRA_DIST): Add readutmp.h.
1716         * modules/regex (EXTRA_DIST): Add regcomp.c regex.h regex_internal.c regex_internal.h regexec.c.
1717         * modules/safe-read (EXTRA_DIST): Add safe-read.h.
1718         * modules/safe-write (EXTRA_DIST): Add safe-write.h.
1719         * modules/same (EXTRA_DIST): Add same.h.
1720         * modules/same-inode (EXTRA_DIST): Add same-inode.h.
1721         * modules/save-cwd (EXTRA_DIST): Add save-cwd.h.
1722         * modules/savedir (EXTRA_DIST): Add savedir.h.
1723         * modules/sha1 (EXTRA_DIST): Add sha1.h.
1724         * modules/sig2str (EXTRA_DIST): Add sig2str.h.
1725         * modules/stat-macros (EXTRA_DIST): Add stat-macros.h.
1726         * modules/stat-time (EXTRA_DIST): Add stat-time.h.
1727         * modules/stdlib-safer (EXTRA_DIST): Add stdlib-safer.h stdlib--.h.
1728         * modules/strdup (EXTRA_DIST): Add strdup.h.
1729         * modules/strftime (EXTRA_DIST): Add strftime.h.
1730         * modules/strndup (EXTRA_DIST): Add strndup.h.
1731         * modules/strnlen (EXTRA_DIST): Add strnlen.h.
1732         * modules/strverscmp (EXTRA_DIST): Add strverscmp.h.
1733         * modules/time_r (EXTRA_DIST): Add time_r.h.
1734         * modules/timespec (EXTRA_DIST): Add timespec.h.
1735         * modules/tmpfile-safer (EXTRA_DIST): Add stdio-safer.h stdio--.h.
1736         * modules/unistd-safer (EXTRA_DIST): Add unistd-safer.h unistd--.h.
1737         * modules/unlinkdir (EXTRA_DIST): Add unlinkdir.h.
1738         * modules/unlocked-io (EXTRA_DIST): Add unlocked-io.h.
1739         * modules/userspec (EXTRA_DIST): Add userspec.h.
1740         * modules/utimecmp (EXTRA_DIST): Add utimecmp.h.
1741         * modules/utimens (EXTRA_DIST): Add utimens.h.
1742         * modules/xalloc (EXTRA_DIST): Add xalloc.h.
1743         * modules/xgetcwd (EXTRA_DIST): Add xgetcwd.h.
1744         * modules/xnanosleep (EXTRA_DIST): Add xnanosleep.h.
1745         * modules/xreadlink (EXTRA_DIST): Add xreadlink.h.
1746         * modules/xstrtod (EXTRA_DIST): Add xstrtod.h.
1747         * modules/xstrtol (EXTRA_DIST): Add xstrtol.h.
1748         * modules/xstrtold (EXTRA_DIST): Add xstrtod.c xstrtod.h.
1749         * modules/yesno (EXTRA_DIST): Add yesno.h.
1750
1751 2006-08-21  Paul Eggert  <eggert@cs.ucla.edu>
1752
1753         * m4/mkdir-p.m4 (gl_MKDIR_PARENTS): Check for fchmod.
1754
1755         * m4/argmatch.m4: New file, from coreutils with AC_LIBSOURCES removed.
1756         * m4/dev-ino.m4, same-inode.m4: Remove.
1757
1758         * m4/_inttypes_h.m4 (gl_INTTYPES_H):
1759         * m4/acl.m4 (AC_FUNC_ACL):
1760         * m4/backupfile.m4 (gl_BACKUPFILE):
1761         * m4/c-strtod.m4 (gl_C99_STRTOLD):
1762         * m4/canon-host.m4 (gl_CANON_HOST):
1763         * m4/canonicalize.m4 (AC_FUNC_CANONICALIZE_FILE_NAME):
1764         * m4/chdir-long.m4 (gl_FUNC_CHDIR_LONG):
1765         * m4/chdir-safer.m4 (gl_CHDIR_SAFER):
1766         * m4/cloexec.m4 (gl_CLOEXEC):
1767         * m4/close-stream.m4 (gl_CLOSE_STREAM):
1768         * m4/closeout.m4 (gl_CLOSEOUT):
1769         * m4/dirfd.m4 (gl_FUNC_DIRFD):
1770         * m4/dirname.m4 (gl_DIRNAME):
1771         * m4/exclude.m4 (gl_EXCLUDE):
1772         * m4/exitfail.m4 (gl_EXITFAIL):
1773         * m4/fcntl-safer.m4 (gl_FCNTL_SAFER):
1774         * m4/file-type.m4 (gl_FILE_TYPE):
1775         * m4/filemode.m4 (gl_FILEMODE):
1776         * m4/filenamecat.m4 (gl_FILE_NAME_CONCAT):
1777         * m4/fpending.m4 (gl_FUNC_FPENDING):
1778         * m4/fprintftime.m4 (gl_FPRINTFTIME):
1779         * m4/fts.m4 (gl_FUNC_FTS):
1780         * m4/getcwd.m4 (gl_FUNC_GETCWD_NULL):
1781         * m4/getdate.m4 (gl_GETDATE):
1782         * m4/gethrxtime.m4 (gl_GETHRXTIME):
1783         * m4/getpagesize.m4 (gl_GETPAGESIZE):
1784         * m4/getpass.m4 (gl_FUNC_GETPASS):
1785         * m4/gettime.m4 (gl_GETTIME):
1786         * m4/getugroups.m4 (gl_GETUGROUPS):
1787         * m4/glob.m4 (gl_GLOB_SUBSTITUTE):
1788         * m4/group-member.m4 (gl_FUNC_GROUP_MEMBER):
1789         * m4/hard-locale.m4 (gl_HARD_LOCALE):
1790         * m4/hash.m4 (gl_HASH):
1791         * m4/idcache.m4 (gl_IDCACHE):
1792         * m4/lchmod.m4 (gl_FUNC_LCHMOD):
1793         * m4/lchown.m4 (gl_FUNC_LCHOWN):
1794         * m4/long-options.m4 (gl_LONG_OPTIONS):
1795         * m4/lstat.m4 (gl_FUNC_LSTAT):
1796         * m4/md5.m4 (gl_MD5):
1797         * m4/memcasecmp.m4 (gl_MEMCASECMP):
1798         * m4/memcoll.m4 (gl_MEMCOLL):
1799         * m4/mempcpy.m4 (gl_FUNC_MEMPCPY):
1800         * m4/memrchr.m4 (gl_FUNC_MEMRCHR):
1801         * m4/memxor.m4 (gl_MEMXOR):
1802         * m4/mkancesdirs.m4 (gl_MKANCESDIRS):
1803         * m4/mkdir-p.m4 (gl_MKDIR_PARENTS):
1804         * m4/modechange.m4 (gl_MODECHANGE):
1805         * m4/mountlist.m4 (gl_MOUNTLIST):
1806         * m4/nanosleep.m4 (gl_FUNC_NANOSLEEP):
1807         * m4/openat.m4 (gl_FUNC_OPENAT):
1808         * m4/pathmax.m4 (gl_PATHMAX):
1809         * m4/physmem.m4 (gl_PHYSMEM):
1810         * m4/posixtm.m4 (gl_POSIXTM):
1811         * m4/posixver.m4 (gl_POSIXVER):
1812         * m4/quote.m4 (gl_QUOTE):
1813         * m4/quotearg.m4 (gl_QUOTEARG):
1814         * m4/readtokens.m4 (gl_READTOKENS):
1815         * m4/readutmp.m4 (gl_READUTMP):
1816         * m4/regex.m4 (gl_REGEX):
1817         * m4/safe-read.m4 (gl_SAFE_READ):
1818         * m4/safe-write.m4 (gl_SAFE_WRITE):
1819         * m4/same.m4 (gl_SAME):
1820         * m4/save-cwd.m4 (gl_SAVE_CWD):
1821         * m4/savedir.m4 (gl_SAVEDIR):
1822         * m4/settime.m4 (gl_SETTIME):
1823         * m4/sha1.m4 (gl_SHA1):
1824         * m4/sig2str.m4 (gl_FUNC_SIG2STR):
1825         * m4/stat-macros.m4 (gl_STAT_MACROS):
1826         * m4/stat-time.m4 (gl_STAT_TIME):
1827         * m4/stdio-safer.m4 (gl_FOPEN_SAFER):
1828         * m4/stdlib-safer.m4 (gl_STDLIB_SAFER):
1829         * m4/strdup.m4 (gl_FUNC_STRDUP):
1830         * m4/strftime.m4 (gl_FUNC_GNU_STRFTIME):
1831         * m4/strndup.m4 (gl_FUNC_STRNDUP):
1832         * m4/strnlen.m4 (gl_FUNC_STRNLEN):
1833         * m4/strverscmp.m4 (gl_FUNC_STRVERSCMP):
1834         * m4/time_r.m4 (gl_TIME_R):
1835         * m4/timespec.m4 (gl_TIMESPEC):
1836         * m4/unistd-safer.m4 (gl_UNISTD_SAFER):
1837         * m4/unlinkdir.m4 (gl_UNLINKDIR):
1838         * m4/unlocked-io.m4 (gl_FUNC_GLIBC_UNLOCKED_IO):
1839         * m4/userspec.m4 (gl_USERSPEC):
1840         * m4/utimecmp.m4 (gl_UTIMECMP):
1841         * m4/utimens.m4 (gl_UTIMENS):
1842         * m4/xalloc.m4 (gl_XALLOC):
1843         * m4/xgetcwd.m4 (gl_XGETCWD):
1844         * m4/xnanosleep.m4 (gl_XNANOSLEEP):
1845         * m4/xreadlink.m4 (gl_XREADLINK):
1846         * m4/xstrtod.m4 (gl_XSTRTOD):
1847         * m4/yesno.m4 (gl_YESNO):
1848         Don't use AC_LIBSOURCES; instead, rely on the files in ../modules/
1849         to get the necessary .h files and whatnot.
1850
1851 2006-08-21  Mark D. Baushke  <mdb@gnu.org>
1852             Bruno Haible <bruno@clisp.org>
1853
1854         * gnulib-tool (func_verify_module): Work around Sun's non-POSIX 1003.2
1855         /bin/sh understanding of '!' conditional negation.
1856
1857 2006-08-21  Jim Meyering  <jim@meyering.net>
1858
1859         * modules/openat (Depends-on): Really alphabetize.
1860
1861         * modules/acl (Depends-on): Add error and quote.
1862
1863         * check-module (find_included_lib_files): Add at-func.c to the
1864         ok-to-include-more-than-once white list.
1865
1866         * modules/openat (Depends-on): Add lstat.  Alphabetize.
1867
1868 2006-08-21  Bruno Haible <bruno@clisp.org>
1869
1870         * gnulib-tool (func_emit_lib_Makefile_am, func_emit_tests_Makefile_am):
1871         Emit a pkgdata_DATA variable only if some snippets add contents to it.
1872         Reported by Martin Lambers <marlam@marlam.de>.
1873
1874 2006-08-21  Bruno Haible <bruno@clisp.org>
1875
1876         * gnulib-tool (func_emit_lib_Makefile_am): If the snippets already
1877         specify an installation location, don't emit a noinst_LIBRARIES or
1878         noinst_LTLIBRARIES assignment.
1879
1880 2006-08-21  Bruno Haible  <bruno@clisp.org>
1881
1882         BeOS portability.
1883         * modules/mbchar (Include): Don't test HAVE_WCTYPE_H any more, since
1884         BeOS has mbrtowc() but no <wctype.h>.
1885
1886 2006-08-21  Bruno Haible  <bruno@clisp.org>
1887
1888         BeOS portability.
1889         * m4/mbchar.m4 (gl_MBCHAR): Compile mbchar.c also if <wctype.h> doesn't
1890         exist.
1891
1892 2006-08-21  Bruno Haible  <bruno@clisp.org>
1893
1894         BeOS portability.
1895         * lib/mbchar.h: Include <wctype.h> only if it exists.
1896
1897 2006-08-20  Paul Eggert  <eggert@cs.ucla.edu>
1898
1899         Remove files that are no longer needed by their respective modules.
1900         * m4/obstack.m4: Remove.
1901         * m4/strerror_r.m4: Remove.
1902         * m4/uint32_t.m4: Remove.
1903         * m4/uintptr_t.m4: Remove.
1904         * m4/ullong_max.m4: Remove.
1905         * m4/xstrtoimax.m4: Remove.
1906         * m4/xstrtoumax.m4: Remove.
1907
1908         * m4/cycle-check.m4 (gl_CYCLE_CHECK): Do not require gl_AC_TYPE_UINTMAX_T,
1909         gl_STRUCT_DEV_INO, or gl_SAME_INODE, since gnulib dependencies now
1910         capture this.
1911
1912         * m4/cycle-check.m4 (gl_CYCLE_CHECK):
1913         Do not use AC_LIBSOURCES, since gnulib modules now do this.
1914         * m4/fsusage.m4 (gl_FSUSAGE): Likewise.
1915         * m4/human.m4 (gl_HUMAN): Likewise.
1916         * m4/inttostr.m4 (gl_INTTOSTR): Likewise.
1917         * m4/xstrtol.m4 (gl_XSTRTOL): Likewise.
1918
1919         * m4/filemode.m4 (gl_FILEMODE): Require AC_STRUCT_ST_DM_MODE.
1920
1921         * m4/filemode.m4 (gl_PREREQ_FSUSAGE_EXTRA): Do not require
1922         gl_AC_TYPE_INTMAX_T or gl_AC_TYPE_UINTMAX_T, since we now require
1923         stdint.
1924         * m4/human.m4 (gl_HUMAN): Likewise.
1925         * m4/inttostr.m4 (gl_PREREQ_INTTOSTR): Likewise.
1926         * m4/mkstemp.m4 (gl_PREREQ_TEMPNAME): Likewise.
1927         * m4/strtoimax.m4 (gl_PREREQ_STRTOIMAX): Likewise.
1928         * m4/strtoumax.m4 (gl_PREREQ_STRTOUMAX): Likewise.
1929         * m4/xstrtol (gl_XSTRTOL): Likewise.
1930
1931         * m4/gethrxtime.m4 (gl_XTIME): gl_AC_TYPE_LONG_LONG ->
1932         AC_TYPE_LONG_LONG_INT.
1933         * m4/strtoimax.m4 (gl_PREREQ_STRTOIMAX): Likewise.
1934         * m4/strtoll.m4 (gl_FUNC_STRTOLL): Likewise.
1935         * m4/strtoull.m4 (gl_FUNC_STRTOULL): Likewise, for unsigned long.
1936         * m4/strtoumax.m4 (gl_PREREQ_STRTOUMAX): Likewise.
1937
1938         * m4/human.m4 (gl_HUMAN): Do not require AM_STDBOOL_H since we depend
1939         on stdbool.
1940
1941         * m4/xstrtol.m4 (gl_PREREQ_XSTRTOL_H, gl_PREREQ_XSTRTOL): Remove.
1942         (gl_PREREQ_XSTRTOUL): Remove.
1943
1944         * m4/ls-mntd-fs.m4 (gl_LIST_MOUNTED_FILE_SYSTEMS): Check for hasmntopt.
1945
1946         * m4/posixver.m4: Fix comment since head -1 now works even in POSIX mode.
1947
1948 2006-08-20  Paul Eggert  <eggert@cs.ucla.edu>
1949
1950         Add and change modules to make it easier for coreutils to use
1951         gnulib-tool.
1952         * modules/backupfile (Files): Remove m4/d-ino.m4.
1953         (Depends-on): Add d-ino.
1954         * modules/cycle-check (Depends-on): Add stdint.
1955         (lib_SOURCES): Add cycle-check.h.
1956         * modules/d-ino: New module.
1957         * modules/d-type: New module.
1958         * modules/error (Files): Remove m4/strerror_r.m4.
1959         * modules/filemode (Files): Add m4/st_dm_mode.m4.
1960         * modules/fsuage (Files): Remove m4/ulonglong.m4, m4/stdint_h.m4,
1961         m4/inttypes_h.m4, m4/uintmax_t.m4.
1962         (Depends-on): Add stdint.
1963         (lib_SOURCES): Add fsusage.h.
1964         * modules/getcwd (Files): Remove d-ino.m4.
1965         (Depends-on): Add d-ino.
1966         * modules/getndelim2 (Depends-on): Add stdint.
1967         * modules/glob (Files): Remove m4/d-type.m4.
1968         (Depends-on): Add d-type.
1969         * modules/host-os: New module.
1970         * modules/human (Files):  Remove m4/ulonglong.m4, m4/stdint_h.m4,
1971         m4/inttypes_h.m4, m4/uintmax_t.m4.
1972         * Depends-on: Add stdint.
1973         (lib_SOURCES): Add human.h.
1974         * modules/inttostr (Files): Remove m4/intmax_t.m4,
1975         m4/inttostr.m4, m4/inttypes_h.m4, m4/longlong.m4, m4/stdint_h.m4,
1976         m4/uintmax_t.m4, m4/ulonglong.m4.
1977         (Depends-on): Add stdint.
1978         (EXTRA_DIST): Add inttostr.h.
1979         * modules/lchmod: New module.
1980         * modules/link-follow: New module.
1981         * modules/mkdir-p (Files): Remove lib/lchmod.h, m4/lchmod.m4.
1982         (Depends-on): Add lchmod.
1983         * modules/mkstemp (Files): Remove m4/ulonglong.m4,
1984         m4/stdint_h.m4, m4/inttypes_h.m4, m4/uintmax_t.m4.
1985         (Depends-on): Add stdint.
1986         * modules/obstack (Files): Remove m4/inttypes_h.m4, m4/obstack.m4,
1987         m4/stdint_h.m4, m4/uintmax_t.m4, m4/ulonglong.m4.
1988         (Depends-on): Add stdint.
1989         (configure.ac): Change gl_OBSTACK to AC_FUNC_OBSTACK.
1990         * modules/perl: New module.
1991         * modules/regex (Depends-on): Add stdint.
1992         * modules/rmdir-errno: New module.
1993         * modules/strtoimax (Files): Remove m4/stdint_h.m4, m4/inttypes_h.m4,
1994         m4/intmax_t.m4.
1995         (Depends-on): Add stdint.
1996         * modules/strtoumax (Files): Remove m4/stdint_h.m4, m4/inttypes_h.m4,
1997         m4/uintmax_t.m4.
1998         (Depends-on): Add stdint.
1999         * modules/unlink-busy: New module.
2000         * modules/utimecmp (Depends-on): Add stdint.
2001         * modules/uptime: New module.
2002         * modules/winsz-ioctl: New module.
2003         * modules/winsz-termios: New module.
2004         * modules/xnanosleep (Depends-on): Add nanosleep.
2005         * modules/ullong_max: Remove.
2006         * modules/xstrtoimax (Files): Remove m4/xstrtoimax.m4.
2007         (configure.ac): Remove gl_XSTRTOIMAX; no action needed now.
2008         * modules/xstrtol (Files): Remove m4/ulonglong.m4, m4/longlong.m4,
2009         m4/stdint_h.m4, m4/inttypes_h.m4, m4/uintmax_t.m4, m4/intmax_t.m4.
2010         (Depends-on): Add inttypes.
2011         (lib_SOURCES): Add xstrtol.h.
2012         * modules/xstrtoumax (Files): Remove m4/xstrtoumax.m4.
2013         (configure.ac): Remove gl_XSTRTOUMAX; no action needed now.
2014         * MODULES.html.sh: Move 'assert' into the assert section.
2015         Move 'dummy' into the linking section.
2016         Remove ullong_max.
2017         Add section for compatibility checks for POSIX:2001 functions,
2018         and put d-ino, d-type, link-follow, rmdir-errno, unlink-busy,
2019         winsz-ioctl, and winsz-termios into it.
2020         Add lchmod.
2021         Add top-level Misc section and put host-os, perl, and uptime
2022         into it.
2023
2024 2006-08-20  Paul Eggert  <eggert@cs.ucla.edu>
2025
2026         * lib/cycle-check.h: Include <stdint.h> unconditionally, since we
2027         now assume the stdint module.  Do not include inttypes.h.
2028         * lib/fsusage.h: Likewise.
2029         * lib/getndelim2.c: Likewise.
2030         * lib/human.h: Likewise.
2031         * lib/inttostr.h: Likewise.
2032         * lib/obstack.c: Likewise.
2033         * lib/regex_internal.h: Likewise.
2034         * lib/tempname.c: Likewise.
2035         * lib/utimecmp.c: Likewise.
2036         * lib/xstrtol.h: Likewise.
2037
2038         * lib/stat_.h: Fix typo: HAVE_FUNC_LSTAT -> HAVE_LSTAT.
2039
2040         * lib/strtoimax.c: Adjust to macro name changes in Autoconf,
2041         e.g., HAVE_LONG_LONG -> HAVE_LONG_LONG_INT.
2042         * lib/xtime.h: Likewise.
2043
2044 2006-08-19  Paul Eggert  <eggert@cs.ucla.edu>
2045
2046         * modules/openat (Files): Add lib/fchmodat.c.
2047         Fixes problem reported by Jay Youngman.
2048
2049 2006-08-19  Paul Eggert  <eggert@cs.ucla.edu>
2050
2051         * lib/fchmodat.c: New file, from coreutils.  This was inadvertently
2052         omitted in the 2006-08-17 update.  Problem reported by Jay Youngman.
2053
2054 2006-08-18  Paul Eggert  <eggert@cs.ucla.edu>
2055             Bruno Haible  <bruno@clisp.org>
2056
2057         * m4/bison-i18n.m4 (BISON_I18N): Also handle the case where yacc exists
2058         and is a script that invokes bison. Tighten the code. Add comments.
2059
2060 2006-08-18  Jim Meyering  <jim@meyering.net>
2061
2062         * m4/gethrxtime.m4 (gl_PREREQ_GETHRXTIME): Also check for CLOCK_REALTIME,
2063         since gethrxtime may revert to using clock_gettime via gettime.c.
2064         Gabor Z. Papp reported that gethrxtime-using programs failed to
2065         link due to unresolved clock_gettime on a linux-2.4.x system.
2066
2067 2006-08-18  Bruno Haible  <bruno@clisp.org>
2068
2069         * modules/bison-i18n: New file.
2070         * MODULES.html.sh (Internationalization functions): Add it.
2071
2072 2006-08-18  Bruno Haible  <bruno@clisp.org>
2073
2074         * m4/ls-mntd-fs.m4 (gl_LIST_MOUNTED_FILE_SYSTEMS): Also check for
2075         sys/statvfs.h. When getmntinfo was found, check its declaration and
2076         set either MOUNTED_GETMNTINFO or MOUNTED_GETMNTINFO2 depending on it.
2077
2078 2006-08-18  Bruno Haible  <bruno@clisp.org>
2079
2080         * m4/bison-i18n.m4: New file, from bison.
2081
2082 2006-08-18  Bruno Haible  <bruno@clisp.org>
2083
2084         * lib/mountlist.c [MOUNTED_GETMNTINFO2]: Include sys/statvfs.h.
2085         (ME_DUMMY): Treat "kernfs" as a dummy.
2086         (read_file_system_list) [MOUNTED_GETMNTINFO2]: Implement.
2087
2088 2006-08-17  Paul Eggert  <eggert@cs.ucla.edu>
2089
2090         Update from coreutils.
2091
2092         2006-08-15  Jim Meyering  <jim@meyering.net>
2093
2094         * m4/openat.m4 (gl_FUNC_OPENAT): Add at-func.c via AC_LIBSOURCES.
2095
2096         2006-01-17  Jim Meyering  <jim@meyering.net>
2097
2098         * m4/fts.m4 (gl_FUNC_FTS_CORE): Depend on gl_FUNC_OPENAT.
2099
2100         2006-01-11  Jim Meyering  <jim@meyering.net>
2101
2102         * m4/openat.m4 (gl_FUNC_OPENAT): Require and compile fchmodat.c.
2103         Check for the lchmod function.
2104
2105 2006-08-17  Paul Eggert  <eggert@cs.ucla.edu>
2106
2107         Update from coreutils.
2108
2109         * lib/__fpending.h: Add copyright notice.
2110         * lib/fprintftime.h: Likewise.
2111         * lib/savedir.c: Use (C) in copyright notice.
2112         * lib/savedir.h: Likewise.
2113
2114         2006-08-15  Jim Meyering  <jim@meyering.net>
2115
2116         * lib/at-func.c: New file, with the logic of all emulated at-functions.
2117         * lib/openat-priv.h: Include <errno.h> and define ENOSYS,
2118         in support of the EXPECTED_ERRNO macro.
2119         * lib/openat.c (fstatat, unlinkat, fchownat): Remove function definitions.
2120         Instead, define the appropriate symbols and include "at-func.c".
2121         * lib/mkdirat.c (mkdirat): Likewise.
2122         * lib/fchmodat.c (fchmodat): Likewise.
2123         (ENOSYS): Remove definition.
2124         * lib/openat.c: Don't include <errno.h>, now that "openat-priv.h" does it.
2125         Don't include "unistd--.h" -- it wasn't ever used.
2126
2127         2006-01-17  Jim Meyering  <jim@meyering.net>
2128
2129         Rewrite fts.c not to change the current working directory,
2130         by using openat, fstatat, fdopendir, etc..
2131
2132         * lib/fts.c [! _LIBC]: Include "openat.h" and "unistd--.h".
2133         (HAVE_OPENAT_SUPPORT): Define.
2134         [_LIBC] (fchdir): Don't undef or define; no longer used.
2135         (FCHDIR): Define in terms of cwd_advance_fd rather than fchdir.
2136         Now, this `function' always succeeds, and consumes its file descriptor
2137         parameter -- so callers must not close such FDs.  Update callers.
2138         (diropen_fd, opendirat, cwd_advance_fd): New functions.
2139         (diropen): Add parameter, SP.  Adjust all callers.
2140         Implement using diropen_fd, rather than open.
2141         (fts_open): Initialize new member, fts_cwd_fd.
2142         Remove fts_rft-setting code.
2143         (fts_close): Close fts_cwd_fd, if necessary.
2144         (__opendir2): Define in terms of opendir or opendirat,
2145         depending on whether the FST_NOCHDIR flag is set.
2146         (fts_build): Since fts_safe_changedir consumes its FD, and since
2147         this code must do `closedir(dirp)', dup the dirfd(dirp) argument,
2148         and close the dup'd file descriptor upon failure.
2149         (fts_stat): Use fstatat(...AT_SYMLINK_NOFOLLOW) in place of lstat.
2150         (fts_safe_changedir): Tweak semantics to reflect that this function
2151         now calls cwd_advance_fd and hence consumes its FD argument.
2152         * lib/fts_.h [struct FTS] (fts_cwd_fd): New member.
2153         [struct FTS] (fts_rft): Remove now-unused member.
2154         [struct FTS] (fts_cycle.state): Improve comment.
2155
2156         * lib/openat.c (openat_needs_fchdir): New function.
2157         * lib/openat.h (openat_needs_fchdir): Declare it.
2158
2159 2006-08-16  Paul Eggert  <eggert@cs.ucla.edu>
2160
2161         * lib/memcoll.c (memcoll): Set errno = 0 in the shortcut case, too.
2162         Problem and fix reported by Pádraig Brady in
2163         <http://lists.gnu.org/archive/html/bug-coreutils/2006-08/msg00099.html>.
2164
2165 2006-08-15  Paul Eggert  <eggert@cs.ucla.edu>
2166
2167         * modules/cycle-check (configure.ac): Add gl_CYCLE_CHECK.
2168
2169 2006-08-15  Paul Eggert  <eggert@cs.ucla.edu>
2170
2171         * lib/memcoll.c (memcoll): Optimize for the common case where the
2172         arguments are bytewise equal.
2173
2174 2006-08-15  Paul Eggert  <eggert@cs.ucla.edu>
2175
2176         * doc/regexprops-generic.texi: Add a copyright notice.
2177
2178 2006-08-15  Bruno Haible  <bruno@clisp.org>
2179
2180         * modules/tmpdir (License): Change to LGPL.
2181
2182 2006-08-15  Bruno Haible  <bruno@clisp.org>
2183
2184         * gnulib-tool (func_all_modules, func_verify_module): COPYING is not a
2185         module.
2186
2187 2006-08-14  Simon Josefsson  <jas@extundo.com>
2188
2189         * config/srclist.txt: Add gnupload.
2190
2191 2006-08-14  Paul Eggert  <eggert@cs.ucla.edu>
2192
2193         Change copyright notice from LGPL 2 to GPL 2, since that's the
2194         standard form used in the gnulib repository.
2195         * tests/test-lock.c: Likewise.
2196         * tests/test-stdint.c: Likewise.
2197         * tests/test-tls.c: Likewise.
2198
2199         * users.txt: Add bison, diffutils, libprelude, prelude-lml,
2200         prelude-manager.  User shorter URLs for GNU projects, without '?'.
2201         Add copyright notice.
2202
2203         * check-module: Add copyright notice.  Output a copyright
2204         notice if "--version" is specified.
2205         * modules/COPYING: New file.
2206         * tests/test-getaddrinfo.c: Add copyright notice.
2207         * tests/test-verify.c: Likewise.
2208
2209 2006-08-14  Paul Eggert  <eggert@cs.ucla.edu>
2210
2211         Change copyright notice from LGPL 2 to GPL 2, since that's the
2212         standard form used in the gnulib repository.
2213         * lib/lock.c: LGPL -> GPL.
2214         * lib/lock.h: Likewise.
2215         * lib/strnlen1.c: Likewise.
2216         * lib/strnlen1.h: Likewise.
2217         * lib/tls.c: Likewise.
2218         * lib/tls.h: Likewise.
2219         * lib/tmpdir.c: Likewise.
2220
2221         * lib/TODO: Remove; this belongs only in coreutils.
2222
2223 2006-08-14  Paul Eggert  <eggert@cs.ucla.edu>
2224
2225         Add copyright notices to long-enough files that lack them, since
2226         otherwise the files aren't clearly free.  Use the same notice that
2227         getdate.texi already uses.
2228         * doc/alloca-opt.texi: Add copyright notice.
2229         * doc/alloca.texi: Likewise.
2230         * doc/ctime.texi: Likewise.
2231         * doc/functions.texi: Likewise.
2232         * doc/gcd.texi: Likewise.
2233         * doc/gnulib-tool.texi: Likewise.
2234         * doc/inet_ntoa.texi: Likewise.
2235         * doc/visibility.texi: Likewise.
2236
2237         * doc/getdate.texi: Update FDL version from 1.1 to 1.2.
2238         * doc/quote.texi: Add copyright notice.
2239
2240         * doc/solaris-versions: Add SunOS 5.10, SunOS 1.x, SunOS 4.0, SunOS
2241         4.0.x, SunOS 4.1.1.1, SunOS 4.1.1_U1, SunOS 4.1.3B.  SunOS 4.1.3
2242         was Solaris 1.1A.  Remove space before B in Solaris 1.1.1B.
2243         Mention SunOS 5.11.  Mention that everything before SunOS 5.7
2244         is now obsolete, and give a pointer to the Sun list.
2245         Add copyright notice.
2246
2247 2006-08-14  Paul Eggert  <eggert@cs.ucla.edu>
2248
2249         * config/srclistvars.sh: Add copyright notice.
2250
2251 2006-08-14  Eric Blake  <ebb9@byu.net>
2252
2253         Import the following change from libc:
2254
2255         2006-08-12  Ulrich Drepper  <drepper@redhat.com>
2256
2257         Upstream bug 2997.
2258         * lib/misc/error.c: Add space between program name and message if file
2259         name is missing.
2260
2261 2006-08-12  Karl Berry  <karl@gnu.org>
2262
2263         * config/srclist.txt (ssize_t.m4, sig_atomic_t.m4, signalblocking.m4):
2264         remove, these originate in gnulib now.
2265
2266 2006-08-11  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
2267
2268         * doc/Makefile (standards.info standards.html standards.dvi):
2269         Also depend on make-stds.texi.
2270
2271 2006-08-11  Paul Eggert  <eggert@cs.ucla.edu>
2272
2273         * lib/pipe-safer.c (pipe_safer): Fix misspelling: HAVE_FUNC_PIPE ->
2274         HAVE_PIPE.  Fix a file descriptor leak when fd_safer fails.
2275
2276         * lib/regex_internal.c (re_string_skip_chars): Don't assume WEOF fits
2277         in wchar_t.  Problem reported by Eric Blake.
2278
2279         * lib/snprintf.c (snprintf): memcpy LEN bytes, not SIZE - 1, when
2280         LEN is smaller than SIZE.  Suggested by Bruno Haible.
2281         Also, help the compiler to keep LEN in a register.
2282
2283 2006-08-11  Eric Blake  <ebb9@byu.net>
2284
2285         * users.txt: Sort.  Add tar.
2286
2287 2006-08-11  Bruno Haible  <bruno@clisp.org>
2288
2289         * users.txt: New file.
2290
2291 2006-08-11  Bruno Haible  <bruno@clisp.org>
2292
2293         * m4/wcwidth.m4 (gl_FUNC_WCWIDTH): Include <stdio.h> and <time.h> before
2294         <wchar.h>. Needed for OSF/1 and BSD/OS.
2295
2296 2006-08-10  Paul Eggert  <eggert@cs.ucla.edu>
2297
2298         * modules/snprintf (Depends-on): Remove minmax.
2299         (Maintainer): Add self and Bruno.
2300
2301 2006-08-10  Paul Eggert  <eggert@cs.ucla.edu>
2302
2303         * lib/.cppi-disable: Add snprintf.h, socket_.h.
2304         * lib/snprintf.c: Include <errno.h> and <limits.h>.
2305         (EOVERFLOW): Define if the system does not.
2306         Do not include "minmax.h"; it wasn't used.
2307         (snprintf): Don't assume size_t promotes to an unsigned type.
2308         Fix bug when generated string was too long for the buffer: the
2309         buffer's contents are supposed to be the initial prefix of the
2310         output.  Don't assume vasnprintf returns EOVERFLOW if the size
2311         exceeds INT_MAX; do the check ourselves.
2312
2313         Import the following changes from libc:
2314
2315         2006-06-02  Jakub Jelinek  <jakub@redhat.com>
2316
2317         * lib/posix/regex_internal.c (re_string_skip_chars): If no character has
2318         been converted at all, set *last_wc to WEOF.  If mbrtowc failed, set wc
2319         to the byte which couldn't be converted.
2320         (re_string_reconstruct): Don't clear valid_raw_len before calling
2321         re_string_skip_chars.  If wc is WEOF after re_string_skip_chars, set
2322         tip_context using re_string_context_at.
2323
2324         2006-05-02  Ulrich Drepper  <drepper@redhat.com>
2325
2326         * lib/posix/regex.h: g++ still cannot handled [restrict].
2327
2328         2006-04-21  Ulrich Drepper  <drepper@redhat.com>
2329
2330         * lib/posix/regex.h: Remove special handling for VMS.
2331
2332 2006-08-10  Jim Meyering  <jim@meyering.net>
2333
2334         * modules/same-inode: New module.
2335         * modules/dev-ino: New module.
2336         * modules/cycle-check: Depend on these modules, rather than simply
2337         including their .h files.
2338         (Makefile.am): Don't list cycle-check.[ch] here, now that they're
2339         required via m4/cycle-check.m4.
2340         * modules/same: Depend on new same-inode module, rather than
2341         including same-inode.h.
2342         * modules/chdir-safer: New file.
2343
2344         * modules/chown (Depends-on): Add stat-macros.
2345
2346 2006-08-10  Jim Meyering  <jim@meyering.net>
2347
2348         * m4/cycle-check.m4: New file.
2349         Require gl_STRUCT_DEV_INO and gl_SAME_INODE.
2350         * m4/dev-ino.m4, same-inode.m4: New files.
2351
2352 2006-08-10  Eric Blake  <ebb9@byu.net>
2353
2354         * modules/verror (Depends-on): Remove bogus gl_VERROR that snuck
2355         in from original proposal.
2356
2357 2006-08-10  Eric Blake  <ebb9@byu.net>
2358         and Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
2359
2360         * gnulib-tool (func_import): Detect unexpanded macros in gnulib
2361         namespace.
2362
2363 2006-08-10  Bruno Haible  <bruno@clisp.org>
2364
2365         * gnulib-tool (func_create_testdir): Detect unexpanded macros here
2366         as well.
2367
2368 2006-08-09  Paul Eggert  <eggert@cs.ucla.edu>
2369
2370         Sync from coreutils.
2371
2372         2006-07-19  Mike Frysinger  <vapier@gentoo.org>
2373
2374         * lib/mountlist.c [ME_REMOTE]: Filter out cifs.
2375         Reported by Toralf Förster in <http://bugs.gentoo.org/141012>.
2376
2377 2006-08-09  Paul Eggert  <eggert@cs.ucla.edu>
2378
2379         * modules/restrict: Remove; no longer needed now that we assume
2380         Autoconf 2.59 or later.
2381         * MODULES.html.sh: Remove 'restrict'.
2382         * modules/argp (Depends-on): Remove 'restrict'.
2383         * modules/base64 (Depends-on): Likewise.
2384         * modules/gc (Depends-on): Likewise.
2385         * modules/getaddrinfo (Depends-on): Likewise.
2386         * modules/glob (Depends-on): Likewise.
2387         * modules/inet_ntop (Depends-on): Likewise.
2388         * modules/inet_pton (Depends-on): Likewise.
2389         * modules/memxor (Depends-on): Likewise.
2390         * modules/regex (Depends-on): Likewise.
2391         * modules/strtok_r (Depends-on): Likewise.
2392         * modules/time_r (Depends-on): Likewise.
2393
2394 2006-08-09  Paul Eggert  <eggert@cs.ucla.edu>
2395
2396         * m4/argp.m4 (gl_ARGP): Require AC_C_RESTRICT.
2397         * m4/gc.m4 (gl_PREREQ_GC): Likewise.
2398         * m4/glob.m4 (gl_PREREQ_GLOB): Likewise.
2399         * m4/inet_ntop.m4 (gl_PREREQ_INET_NTOP): Likewise.
2400         * m4/inet_pton.m4 (gl_PREREQ_INET_PTON): Likewise.
2401         * m4/memxor.m4 (gl_MEMXOR): Likewise.
2402         * m4/restrict.m4: Remove; no longer needed.  All remaining uses of
2403         gl_C_RESTRICT replaced by AC_C_RESTRICT.
2404
2405         Merge from coreutils.
2406         * m4/regex.m4 (gl_PREREQ_REGEX): Require AC_C_RESTRICT, not
2407         gl_C_RESTRICT, now that we assume Autoconf 2.59 or later.
2408         * m4/strtok_r.m4 (gl_FUNC_STRTOK_R): Likewise.
2409         * m4/time_r.m4 (gl_TIME_R): Likewise.
2410
2411 2006-08-09  Karl Berry  <karl@gnu.org>
2412
2413         * config/srclist.txt: no more gettext-tools, per Bruno.
2414
2415 2006-08-08  Eric Blake  <ebb9@byu.net>
2416
2417         * modules/verror: New module.
2418         * MODULES.html.sh: Document it.
2419
2420 2006-08-08  Eric Blake  <ebb9@byu.net>
2421
2422         * lib/verror.h, verror.c: New files.
2423
2424 2006-08-08  Eric Blake  <ebb9@byu.net>
2425
2426         * lib/verror.c (verror_at_line): Work around glibc bug 2997, so that
2427         verror_at_line output complies with GNU Coding Standards even when
2428         file is NULL.
2429
2430 2006-08-07  Bruno Haible  <bruno@clisp.org>
2431
2432         * lib/allocsa.h (sa_alignof) [_AIX]: Also consider 'long long' in newer
2433         versions of AIX.
2434         Reported by Ralf Wildenhues.
2435
2436 2006-08-07  Bruno Haible  <bruno@clisp.org>
2437
2438         * gnulib-tool (func_create_testdir): Wrap the set of autoconf snippets
2439         in an AC_DEFUN. Needed so that the autoconf snippets can use
2440         AC_REQUIRE.
2441
2442 2006-08-06  Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
2443
2444         * gnulib-tool (func_emit_lib_Makefile_am, func_emit_tests_Makefile_am):
2445         Initialize pkgdata_DATA.
2446         * modules/javaversion (Makefile.am): Add to pkgdata_DATA, rather than
2447         overriding it.
2448
2449 2006-08-06  Eric Blake  <ebb9@byu.net>
2450
2451         * lib/error.h: Fold in some upstream changes from glibc.
2452         * lib/error.c: Likewise.
2453
2454 2006-08-04  Bruno Haible  <bruno@clisp.org>
2455
2456         * gnulib-tool (func_emit_lib_Makefile_am, func_emit_tests_Makefile_am):
2457         Make the mostlyclean-local rule depend on mostlyclean-generic.
2458         Reported by Jim Meyering. Solution suggested by Ralf Wildenhues.
2459
2460 2006-07-31  Bruno Haible  <bruno@clisp.org>
2461
2462         * m4/localcharset.m4 (gl_LOCALCHARSET): Remove tests for <stddef.h>,
2463         <stdlib.h>, <string.h>.
2464
2465 2006-07-30  Bruno Haible  <bruno@clisp.org>
2466
2467         * modules/readlink (License): Change to LGPL.
2468
2469 2006-07-30  Bruno Haible  <bruno@clisp.org>
2470
2471         * modules/javaversion (Makefile.am): Distribute javaversion.java and
2472         javaversion.class. Also install javaversion.class in $(pkgdatadir) and
2473         set PKGDATADIR to point to it.
2474
2475 2006-07-30  Bruno Haible  <bruno@clisp.org>
2476
2477         * modules/csharpexec (configure.ac): Comment out macro invocation.
2478         * modules/javaexec (configure.ac): Likewise.
2479         * modules/javacomp-script (configure.ac): Likewise.
2480
2481         * modules/csharpcomp-script (configure.ac): Use AC_REQUIRE.
2482
2483 2006-07-30  Bruno Haible  <bruno@clisp.org>
2484
2485         * modules/clean-temp (Depends-on): Add linkedhash-list, remove
2486         linked-list.
2487
2488 2006-07-30  Bruno Haible  <bruno@clisp.org>
2489
2490         * m4/wcwidth.m4 (gl_FUNC_WCWIDTH): Assume <string.h> exists.
2491
2492 2006-07-30  Bruno Haible  <bruno@clisp.org>
2493
2494         * gnulib-tool (func_emit_lib_Makefile_am, func_emit_tests_Makefile_am):
2495         Initialize MOSTLYCLEANFILES to core and *.stackdump, so that core dumps
2496         get removed.
2497
2498 2006-07-29  Bruno Haible  <bruno@clisp.org>
2499
2500         Make it possible for gnulib-tool to work with locally modified or
2501         augmented gnulib repositories.
2502         * gnulib-tool (func_usage): Document --local-dir option.
2503         (local_gnulib_dir): New variable.
2504         Handle --local-dir option.
2505         (func_lookup_file): New function.
2506         (func_all_modules, func_verify_module): Look also in $local_gnulib_dir.
2507         (func_get_description, func_get_filelist, func_get_description,
2508         func_get_filelist, func_get_dependencies, func_get_autoconf_snippet,
2509         func_get_automake_snippet, func_get_include_directive,
2510         func_get_license, func_get_maintainer): Use func_lookup_file.
2511         (func_import, func_create_testdir): Use func_lookup_file.
2512
2513 2006-07-29  Bruno Haible  <bruno@clisp.org>
2514
2515         * modules/setenv (Depends-on): Add unistd.
2516
2517 2006-07-29  Bruno Haible  <bruno@clisp.org>
2518
2519         * lib/setenv.c: Undo unintended modification done on 2006-02-27.
2520
2521 2006-07-29  Bruno Haible  <bruno@clisp.org>
2522
2523         * lib/localcharset.c: Assume <stddef.h>, <stdlib.h>, <string.h> exist.
2524
2525 2006-07-29  Bruno Haible  <bruno@clisp.org>
2526
2527         * gnulib-tool (import, update): If there is no Makefile.am, look at
2528         aclocal.m4, instead of bailing out.
2529
2530 2006-07-29  Bruno Haible  <bruno@clisp.org>
2531
2532         * gnulib-tool (func_usage): Revert most of the 2006-07-15 change.
2533         Categorize the options by when they are useful.
2534
2535 2006-07-29  Bruno Haible  <bruno@clisp.org>
2536
2537         * gnulib-tool (func_usage): Document option --no-libtool.
2538         Handle option --no-libtool.
2539         (func_emit_lib_Makefile_am, func_emit_tests_Makefile_am): Update
2540         for changed semantics of $libtool variable.
2541         (func_import): Likewise. If libtool is not used, show this through
2542         an option --no-libtool.
2543         (func_create_testdir): Update.
2544
2545 2006-07-29  Bruno Haible  <bruno@clisp.org>
2546
2547         * gnulib-tool (func_import): Extend error message about missing
2548         --doc-base.
2549
2550 2006-07-29  Bruno Haible  <bruno@clisp.org>
2551
2552         * gnulib-tool (func_import): Don't create the $docbase directory if
2553         there is no file to store there.
2554
2555 2006-07-29  Bruno Haible  <bruno@clisp.org>
2556
2557         * gnulib-tool (autoconf_minversion): If a --dir option is given and
2558         relevant, look for configure.ac there, not in the current directory.
2559         Also use a simple search for AC_PREREQ, not "autoconf --trace".
2560
2561 2006-07-29  Bruno Haible  <bruno@clisp.org>
2562
2563         * gnulib-tool (SORT): New variable.
2564         (func_usage): Undocument --assume-autoconf option.
2565         Remove --assume-autoconf option handling.
2566         (autoconf_minversion): Determine from the contents of configure.ac.
2567         (func_import): Remove autoconf_minversion handling.
2568         Suggested by Eric Blake.
2569
2570 2006-07-29  Bruno Haible  <bruno@clisp.org>
2571
2572         * doc/gnulib-tool.texi (gl_LIBTOOL): Mention --no-libtool option.
2573
2574 2006-07-29  Bruno Haible  <bruno@clisp.org>
2575
2576         * config/srclist.txt (*setenv.[ch]): Remove rules.
2577
2578 2006-07-28  Yoann Vandoorselaere <yoann.v@prelude-ids.com>
2579
2580         * m4/inet_pton.m4, inet_ntop.m4: Check for netinet/in.h too.
2581
2582 2006-07-28  Yoann Vandoorselaere <yoann.v@prelude-ids.com>
2583
2584         * lib/inet_ntop.h, inet_pton.h: Need to include netinet/in.h before
2585         arpa/inet.h.
2586
2587 2006-07-28  Simon Josefsson  <jas@extundo.com>
2588
2589         * modules/inet_ntop (Depends-on): Depend on arpa_inet.
2590         * modules/inet_pton (Depends-on): Likewise.
2591
2592 2006-07-28  Simon Josefsson  <jas@extundo.com>
2593
2594         * m4/netinet_in_h.m4: New file.
2595
2596 2006-07-28  Simon Josefsson  <jas@extundo.com>
2597
2598         * lib/inet_ntop.h, inet_pton.h: No need to guard netinet/in.h
2599         #include's.
2600
2601 2006-07-28  Simon Josefsson  <jas@extundo.com>
2602
2603         * lib/inet_ntop.h, inet_pton.h: No need to guard arpa/inet.h
2604         #include's.
2605
2606 2006-07-28  Paul Eggert  <eggert@cs.ucla.edu>
2607
2608         * lib/modechange.c (mode_compile): Numeric modes now affect setuid and
2609         setgid on directories only if they set these bits.
2610         * lib/modechange.h: Remove obsolete comment about masks.
2611
2612 2006-07-28  Eric Blake  <ebb9@byu.net>
2613
2614         * lib/regex_internal.h (struct re_dfa_t) [!_LIBC]: Avoid invalid C89
2615         macro expansion.
2616
2617 2006-07-28  Bruno Haible <bruno@clisp.org>
2618
2619         * lib/inet_ntop.h, inet_pton.h: Use #if HAVE* instead of #ifdef HAVE*.
2620
2621 2006-07-28  Bruno Haible  <bruno@clisp.org>
2622
2623         * m4/mbchar.m4 (gl_MBCHAR): Also test for iswcntrl.
2624
2625 2006-07-28  Bruno Haible  <bruno@clisp.org>
2626
2627         * lib/mbchar.h (iswalnum, iswalpha, iswblank, iswcntrl, iswdigit, iswgraph,
2628         iswlower, iswprint, iswpunct, iswspace, iswupper, iswxdigit): Define
2629         fallbacks.
2630         Avoids link error on FreeBSD 4.x.
2631         Reported by Yoann Vandoorselaere <yoann.v@prelude-ids.com>.
2632
2633         * lib/wcwidth.h (iswprint): Assume an ASCII compatible wide character
2634         encoding.
2635         * lib/mbswidth.c (iswcntrl): Likewise.
2636
2637 2006-07-27  Bruno Haible  <bruno@clisp.org>
2638
2639         * m4/stdint.m4 (gl_STDINT_H): Define __STDC_CONSTANT_MACROS during the
2640         test.
2641
2642 2006-07-27  Bruno Haible  <bruno@clisp.org>
2643
2644         * lib/stdint_.h (INT*_C, UINT*_C) [C++]: Define these if
2645         __STDC_CONSTANT_MACROS is defined, not if __STDC_LIMIT_MACROS is
2646         defined.
2647
2648 2006-07-26  Eric Blake  <ebb9@byu.net>
2649
2650         * m4/unistd-safer.m4 (gl_UNISTD_SAFER): Check for missing pipe.
2651
2652 2006-07-26  Eric Blake  <ebb9@byu.net>
2653
2654         * lib/mkstemp-safer.c [! HAVE_MKSTEMP]: Add prototype for platforms
2655         like mingw that lack mkstemp.
2656         * lib/pipe-safer.c (pipe_safer) [!HAVE_FUNC_PIPE]: Provide fallback to
2657         avoid compilation warning on mingw.
2658
2659 2006-07-26  Bruno Haible  <bruno@clisp.org>
2660
2661         * m4/stdint.m4 (gl_STDINT_H): Also verify the existence of the macros
2662         INT*_MIN, INT_LEAST*_MAX, INT_LEAST*_MIN, UINT_LEAST*_MAX,
2663         INT_FAST*_MIN, INTPTR_MIN.
2664
2665 2006-07-25  Bruno Haible  <bruno@clisp.org>
2666
2667         * modules/version-etc (Depends-on): Add stdarg.
2668
2669 2006-07-25  Bruno Haible  <bruno@clisp.org>
2670
2671         * m4/stdint.m4 (gl_INTEGER_TYPE_SUFFIX): Avoid 'eval' in front of complex
2672         commands.
2673
2674 2006-07-25  Bruno Haible  <bruno@clisp.org>
2675
2676         * lib/version-etc.c (version_etc_va): Use va_copy, assumed to be defined in
2677         <stdarg.h> or config.h.
2678
2679 2006-07-24  Paul Eggert  <eggert@cs.ucla.edu>
2680
2681         * m4/stdio-safer.m4 (gl_FOPEN_SAFER, gl_TMPFILE_SAFER): New macros.
2682         (gl_STDIO_SAFER): Remove.
2683
2684 2006-07-24  Paul Eggert  <eggert@cs.ucla.edu>
2685
2686         * MODULES.html.sh (File stream based Input/Output):
2687         Add fopen-safer, tmpfile-safer; remove stdio-safer.
2688         * modules/getusershell (Depends-on): Change stdio-safer to fopen-safer.
2689         * modules/fopen-safer, modules/tmpfile-safer: New files.
2690         * modules/stdio-safer: Remove.
2691
2692 2006-07-24  Bruno Haible  <bruno@clisp.org>
2693
2694         * modules/tmpdir: New file.
2695         * MODULES.html.sh (File system functions): Add it.
2696
2697 2006-07-24  Bruno Haible  <bruno@clisp.org>
2698
2699         * modules/javacomp (Depends-on): Add unistd, javaversion, binary-io,
2700         getline, pathname, fwriteerror, clean-temp, xvasprintf, strstr.
2701
2702 2006-07-24  Bruno Haible  <bruno@clisp.org>
2703
2704         * modules/clean-temp: New file.
2705
2706 2006-07-24  Bruno Haible  <bruno@clisp.org>
2707
2708         * m4/tmpdir.m4: New file, from GNU gettext.
2709
2710 2006-07-24  Bruno Haible  <bruno@clisp.org>
2711
2712         * lib/tmpdir.h: New file, from GNU gettext.
2713         * lib/tmpdir.c: New file, from GNU gettext.
2714
2715 2006-07-24  Bruno Haible  <bruno@clisp.org>
2716
2717         * lib/clean-temp.h: New file, from GNU gettext.
2718         * lib/clean-temp.c: New file, from GNU gettext.
2719
2720 2006-07-23  Eric Blake  <ebb9@byu.net>
2721
2722         * modules/stdio-safer (Files): Add tmpfile-safer.c.
2723         (Depends-on): Add binary-io.
2724
2725 2006-07-23  Eric Blake  <ebb9@byu.net>
2726
2727         * m4/stdio-safer.m4 (gl_STDIO_SAFER): Add tmpfile-safer.c.
2728
2729 2006-07-23  Eric Blake  <ebb9@byu.net>
2730
2731         * lib/tmpfile-safer.c: New file.
2732         * lib/stdio-safer.h (fopen_safer): Add prototype.
2733         * lib/stdio--.h (tmpfile): Make safer.
2734
2735 2006-07-23  Bruno Haible  <bruno@clisp.org>
2736
2737         * lib/gl_anylinked_list2.h (ASYNCSAFE): New macro.
2738         (gl_linked_add_first, gl_linked_add_last, gl_linked_add_before,
2739         gl_linked_add_after, gl_linked_add_at, gl_linked_remove_node,
2740         gl_linked_remove_at): Use it.
2741
2742 2006-07-22  Yoann Vandoorselaere <yoann.v@prelude-ids.com>
2743         and Simon Josefsson <jas@extundo.com>
2744
2745         * lib/getaddrinfo.h (AI_PASSIVE): Make sure it is defined.
2746
2747         * lib/getaddrinfo.c (getaddrinfo): Support AI_PASSIVE.
2748
2749 2006-07-22  Paul Eggert  <eggert@cs.ucla.edu>
2750
2751         * modules/close-stream: New file.
2752         * modules/closeout (Description): Make it clear that it exits
2753         with a diagnostic on error.
2754         (Depends-on): Add close-stream.  Remove fpending, stdbool.
2755         * MODULES.html.sh (File stream based Input/Output): Add close-stream.
2756
2757 2006-07-22  Paul Eggert  <eggert@cs.ucla.edu>
2758
2759         * m4/close-stream.m4: New file.
2760
2761 2006-07-22  Paul Eggert  <eggert@cs.ucla.edu>
2762
2763         * lib/close-stream.c, close-stream.h: New files.
2764
2765 2006-07-22  Bruno Haible  <bruno@clisp.org>
2766
2767         Merge from GNU gettext 0.15.
2768
2769         2006-05-01  Bruno Haible  <bruno@clisp.org>
2770
2771                 * build-aux/javacomp.sh.in: Update for changed javacomp.m4.
2772
2773         2006-07-22  Bruno Haible  <bruno@clisp.org>
2774
2775                 * modules/javaversion: New file.
2776                 * MODULES.html.sh (Java): Add javaversion.
2777
2778         2006-03-12  Bruno Haible  <bruno@clisp.org>
2779
2780                 * build-aux/javaexec.sh.in: Update for changed javaexec.m4.
2781
2782         2005-12-04  Bruno Haible  <bruno@clisp.org>
2783
2784                 * build-aux/csharpexec.sh.in: Add support for 'clix' launcher
2785                 (untested).
2786
2787         2006-06-21  Bruno Haible  <bruno@clisp.org>
2788
2789                 Avoid warnings from recent versions of mcs.
2790                 * build-aux/csharpcomp.sh.in (options_mcs): Don't use options
2791                 -o, -L, -r any more. Use options documented since mcs-1.0
2792                 instead. Similarly for -g.
2793
2794         2005-12-04  Bruno Haible  <bruno@clisp.org>
2795
2796                 * build-aux/csharpcomp.sh.in: Suffix for resources is
2797                 .resources, not .resource.
2798
2799         2005-07-09  Bruno Haible  <bruno@clisp.org>
2800
2801                 * build-aux/csharpcomp.sh.in (options_csc): For -l option,
2802                 add a .dll suffix.
2803                 Reported by Mark Junker <mjscod@gmx.de>.
2804
2805         2006-07-22  Bruno Haible  <bruno@clisp.org>
2806
2807                 * modules/gettext: Upgrade to gettext-0.15.
2808                 (Files): Remove m4/isc-posix.m4. Add m4/lock.m4,
2809                 m4/visibility.m4.
2810                 Replace m4/inttypes.m4 with m4/inttypes-h.m4.
2811
2812 2006-07-22  Bruno Haible  <bruno@clisp.org>
2813
2814         Merge from GNU gettext 0.15.
2815
2816         2006-03-25  Bruno Haible  <bruno@clisp.org>
2817
2818                 * lib-link.m4 (AC_LIB_LINKFLAGS_FROM_LIBS): New macro.
2819
2820         2006-07-21  Bruno Haible  <bruno@clisp.org>
2821
2822                 * javacomp.m4 (gt_JAVACOMP): Convert target_version "null" to
2823                 "1.1".
2824
2825         2006-05-09  Bruno Haible  <bruno@clisp.org>
2826
2827                 * javacomp.m4 (gt_JAVACOMP): On Cygwin, set
2828                 CLASSPATH_SEPARATOR to a semicolon. Use CLASSPATH_SEPARATOR
2829                 for the conftestver execution.
2830
2831         2006-05-01  Bruno Haible  <bruno@clisp.org>
2832
2833                 * javacomp.m4 (gt_JAVACOMP): Accept a source-version and an
2834                 optional target-version argument. Verify that the compiler
2835                 groks source of the specified source-version, or add -source
2836                 option as necessary. Verify that the compiler produces
2837                 bytecode in the specified target-version, or add -target and
2838                 -source options as necessary. Make the result of the test
2839                 available as variable CONF_JAVAC. Also log error output in
2840                 config.log.
2841
2842         2006-03-11  Bruno Haible  <bruno@clisp.org>
2843
2844                 * javacomp.m4 (gt_JAVACOMP): Treat gcj-4.x like gcj-3.x.
2845
2846         2006-05-09  Bruno Haible  <bruno@clisp.org>
2847
2848                 * javaexec.m4 (gt_JAVAEXEC): On Cygwin, set
2849                 CLASSPATH_SEPARATOR to a semicolon.
2850
2851         2006-03-12  Bruno Haible  <bruno@clisp.org>
2852
2853                 * javaexec.m4 (gt_JAVAEXEC): Make the result of the test
2854                 available as variable CONF_JAVA, for subsequent autoconf
2855                 tests. Also log error output in config.log.
2856
2857         2006-07-19  Bruno Haible  <bruno@clisp.org>
2858
2859                 * getline.m4 (AM_FUNC_GETLINE): When cross-compiling, assume
2860                 that getline works on glibc2 systems. Needed to avoid trouble
2861                 in relocatable.c.
2862                 Reported by Nils Magnus Larsgard <nmlarsgaard@atmel.no>.
2863
2864         2005-12-04  Bruno Haible  <bruno@clisp.org>
2865
2866                 * csharpexec.m4 (gt_CSHARPEXEC): Add support for 'clix'
2867                 launcher (untested).
2868
2869         2005-12-04  Bruno Haible  <bruno@clisp.org>
2870
2871                 * csharpcomp.m4 (gt_CSHARPCOMP): Also set CSHARPCOMPFLAGS.
2872
2873         2006-07-22  Bruno Haible  <bruno@clisp.org>
2874
2875                 * gettext.m4: Update from GNU gettext-0.15.
2876                 * nls.m4: Likewise.
2877                 * po.m4: Likewise.
2878                 * inttypes-pri.m4: Likewise.
2879                 * inttypes-h.m4: Renamed from inttypes.m4.
2880                 (gl_HEADER_INTTYPES_H): Renamed from gt_HEADER_INTTYPES_H.
2881
2882 2006-07-22  Bruno Haible  <bruno@clisp.org>
2883
2884         Merge from GNU gettext 0.15.
2885
2886         2005-07-05  Bruno Haible  <bruno@clisp.org>
2887
2888                 * printf-args.c (printf_fetchargs): Work around broken
2889                 definition of wint_t on mingw.
2890
2891         2005-02-12  Bruno Haible  <bruno@clisp.org>
2892
2893                 * xallocsa.h: Add extern "C" for C++.
2894
2895         2006-05-17  Bruno Haible  <bruno@clisp.org>
2896
2897                 Cygwin portability.
2898                 * progreloc.c (WIN32_NATIVE): Renamed from WIN32.
2899
2900         2006-04-30  Bruno Haible  <bruno@clisp.org>
2901
2902                 * progreloc.c: Include <mach-o/dyld.h> if available.
2903                 (find_executable): Use _NSGetExecutablePath when possible.
2904
2905         2006-05-06  Charles Wilson  <cygwin@cwilson.fastmail.fm>
2906
2907                 * progreloc.c (maybe_executable) [CYGWIN]: Use the access()
2908                 function.
2909
2910         2005-12-29  Bruno Haible  <bruno@clisp.org>
2911
2912                 * progreloc.c (set_program_name_and_installdir): Fix
2913                 compilation error.
2914
2915         2005-12-04  Bruno Haible  <bruno@clisp.org>
2916
2917                 Cygwin portability.
2918                 * progreloc.c: Include <windows.h> also on Cygwin.
2919                 (find_executable): Add support for Cygwin.
2920                 (set_program_name_and_installdir): Handle also platforms with
2921                 nonempty EXEEXT.
2922
2923         2006-07-11  Bruno Haible  <bruno@clisp.org>
2924
2925                 * javacomp.c: Fix a comment.
2926                 Reported by Jim Meyering.
2927
2928         2006-04-30  Bruno Haible  <bruno@clisp.org>
2929
2930                 * javacomp.h (compile_java_class): Add source_version,
2931                 target_version arguments.
2932                 * javacomp.c: Rewritten to choose only a compiler that
2933                 respects the specified source_version and target_version.
2934
2935         2006-06-27  Bruno Haible  <bruno@clisp.org>
2936
2937                 Assume correct S_ISDIR macro.
2938                 * mkdtemp.c: Remove test of STAT_MACROS_BROKEN.
2939
2940         2006-07-22  Bruno Haible  <bruno@clisp.org>
2941
2942                 * javaversion.h: New file, from GNU gettext.
2943                 * javaversion.c: New file, from GNU gettext.
2944                 * javaversion.java: New file, from GNU gettext.
2945                 * javaversion.class: New file, from GNU gettext.
2946
2947         2006-05-17  Bruno Haible  <bruno@clisp.org>
2948
2949                 Cygwin portability.
2950                 * javaexec.c (execute_java_class): Test for jview program
2951                 also on Cygwin.
2952
2953         2006-04-09  Bruno Haible  <bruno@clisp.org>
2954
2955                 * fatal-signal.c: Don't include string.h.
2956                 (at_fatal_signal): Use a copying loop instead of memcpy.
2957
2958         2005-12-04  Bruno Haible  <bruno@clisp.org>
2959
2960                 * csharpexec.c: Add support for 'clix' launcher (untested).
2961                 (execute_csharp_using_sscli): New function.
2962                 (execute_csharp_program): Call it.
2963
2964         2006-06-21  Bruno Haible  <bruno@clisp.org>
2965
2966                 Avoid warnings from recent versions of mcs.
2967                 * csharpcomp.c (compile_csharp_using_mono): Don't use options
2968                 -o, -L, -r any more. Use options documented since mcs-1.0
2969                 instead. Similarly for -g.
2970
2971         2005-07-09  Bruno Haible  <bruno@clisp.org>
2972
2973                 * csharpcomp.c (compile_csharp_using_sscli): For -l option,
2974                 add a .dll suffix.
2975                 Reported by Mark Junker <mjscod@gmx.de>.
2976
2977         2006-06-17  Bruno Haible  <bruno@clisp.org>
2978
2979                 * config.charset: Update for NetBSD 3.0.
2980
2981         2006-05-17  Bruno Haible  <bruno@clisp.org>
2982
2983                 Cygwin portability.
2984                 * localcharset.c (WIN32_NATIVE): Renamed from WIN32.
2985
2986         2006-05-16  Bruno Haible  <bruno@clisp.org>
2987
2988                 * localcharset.c [CYGWIN]: Include <windows.h>.
2989                 (get_charset_aliases): For Cygwin, return the same CPxxx
2990                 aliases list as under WIN32.
2991                 (locale_charset) [CYGWIN]: Try to retrieve the encoding from
2992                 the environment variables. Fall back to GetACP().
2993
2994         2006-04-05  Bruno Haible  <bruno@clisp.org>
2995
2996                 * config.charset: Update Juan Manuel Guerrero's address.
2997
2998         2005-02-12  Bruno Haible  <bruno@clisp.org>
2999
3000                 * allocsa.h: Add extern "C" for C++.
3001
3002         2005-02-10  Bruno Haible  <bruno@clisp.org>
3003
3004                 * allocsa.h (sa_alignof): Define differently with AIX xlc, to
3005                 avoid a bug of this compiler on AIX 3.2.5 dealing with enums.
3006
3007         2006-07-22  Bruno Haible  <bruno@clisp.org>
3008
3009                 * gettext.h: Update to GNU gettext-0.15.
3010
3011 2006-07-22  Bruno Haible  <bruno@clisp.org>
3012
3013         * config/srclist.txt: Resync printf-args.c, vasnprintf.c, localcharset.c,
3014         mkdtemp.c, config.rpath, lib-ld.m4, lib-link.m4, lib-prefix.m4,
3015         longdouble.m4, ssize_t.m4.
3016
3017 2006-07-21  Eric Blake  <ebb9@byu.net>
3018
3019         * modules/stdlib-safer: New file.
3020         * MODULES.html.sh (File stream based Input/Output): Add
3021         stdlib-safer.
3022
3023 2006-07-21  Eric Blake  <ebb9@byu.net>
3024
3025         * lib/stdlib-safer.h: New file from coreutils, required by
3026         stdlib--.h.
3027
3028 2006-07-20  Paul Eggert  <eggert@cs.ucla.edu>
3029
3030         * gnulib-tool (func_usage): Document --assume-autoconf='latest-stable'.
3031
3032 2006-07-20  Bruno Haible  <bruno@clisp.org>
3033
3034         * gnulib-tool: Recognize new option --assume-autoconf.
3035         (autoconf_minversion): New variable.
3036         (func_get_filelist): Use it to decide whether to add onceonly_2_57.m4.
3037
3038 2006-07-20  Bruno Haible  <bruno@clisp.org>
3039
3040         * MODULES.html.sh (func_all_modules): Add a missing func_begin_table.
3041
3042 2006-07-19  Derek R. Price  <derek@ximbiot.com>
3043
3044         * lib/getaddrinfo.h: Don't define unimplemented AI_* flags.
3045         Reindent and repaginate.
3046
3047 2006-07-19  Derek Price  <derek@ximbiot.com>
3048
3049         * doc/gnulib.texi (Libtool and Windows):  Eliminate passive voice.  Correct
3050         grammar.
3051
3052 2006-07-17  Bruno Haible  <bruno@clisp.org>
3053
3054         * modules/list: New file.
3055         * modules/array-list: New file.
3056         * modules/carray-list, modules/carray-list-tests: New files.
3057         * modules/linked-list, modules/linked-list-tests: New files.
3058         * modules/avltree-list, modules/avltree-list-tests: New files.
3059         * modules/rbtree-list, modules/rbtree-list-tests: New files.
3060         * modules/linkedhash-list, modules/linkedhash-list-tests: New files.
3061         * modules/avltreehash-list, modules/avltreehash-list-tests: New files.
3062         * modules/rbtreehash-list, modules/rbtreehash-list-tests: New files.
3063         * modules/oset: New file.
3064         * modules/array-oset: New file.
3065         * modules/avltree-oset, modules/avltree-oset-tests: New files.
3066         * modules/rbtree-oset, rbtree-oset-tests: New files.
3067         * tests/test-carray_list.c: New file.
3068         * tests/test-linked_list.c: New file.
3069         * tests/test-avltree_list.c: New file.
3070         * tests/test-rbtree_list.c: New file.
3071         * tests/test-linkedhash_list.c: New file.
3072         * tests/test-avltreehash_list.c: New file.
3073         * tests/test-rbtreehash_list.c: New file.
3074         * tests/test-avltree_oset.c: New file.
3075         * tests/test-rbtree_oset.c: New file.
3076         * MODULES.html.sh (Container data structures): New section.
3077
3078 2006-07-17  Bruno Haible  <bruno@clisp.org>
3079
3080         * m4/gl_list.m4: New file.
3081
3082 2006-07-17  Bruno Haible  <bruno@clisp.org>
3083
3084         * lib/gl_list.h: New file.
3085         * lib/gl_list.c: New file.
3086         * lib/gl_array_list.h: New file.
3087         * lib/gl_array_list.c: New file.
3088         * lib/gl_carray_list.h: New file.
3089         * lib/gl_carray_list.c: New file.
3090         * lib/gl_linked_list.h: New file.
3091         * lib/gl_linked_list.c: New file.
3092         * lib/gl_anylinked_list1.h: New file.
3093         * lib/gl_anylinked_list2.h: New file.
3094         * lib/gl_avltree_list.h: New file.
3095         * lib/gl_avltree_list.c: New file.
3096         * lib/gl_anyavltree_list1.h: New file.
3097         * lib/gl_anyavltree_list2.h: New file.
3098         * lib/gl_rbtree_list.h: New file.
3099         * lib/gl_rbtree_list.c: New file.
3100         * lib/gl_anyrbtree_list1.h: New file.
3101         * lib/gl_anyrbtree_list2.h: New file.
3102         * lib/gl_anytree_list1.h: New file.
3103         * lib/gl_anytree_list2.h: New file.
3104         * lib/gl_linkedhash_list.h: New file.
3105         * lib/gl_linkedhash_list.c: New file.
3106         * lib/gl_anyhash_list1.h: New file.
3107         * lib/gl_anyhash_list2.h: New file.
3108         * lib/gl_avltreehash_list.h: New file.
3109         * lib/gl_avltreehash_list.c: New file.
3110         * lib/gl_rbtreehash_list.h: New file.
3111         * lib/gl_rbtreehash_list.c: New file.
3112         * lib/gl_anytreehash_list1.h: New file.
3113         * lib/gl_anytreehash_list2.h: New file.
3114
3115         * lib/gl_oset.h: New file.
3116         * lib/gl_oset.c: New file.
3117         * lib/gl_array_oset.h: New file.
3118         * lib/gl_array_oset.c: New file.
3119         * lib/gl_avltree_oset.h: New file.
3120         * lib/gl_avltree_oset.c: New file.
3121         * lib/gl_rbtree_oset.h: New file.
3122         * lib/gl_rbtree_oset.c: New file.
3123         * lib/gl_anytree_oset.h: New file.
3124
3125 2006-07-16  Paul Eggert  <eggert@cs.ucla.edu>
3126
3127         * m4/mkancesdirs.m4: New file.
3128         * m4/mkdir-p.m4 (gl_MKDIR_PARENTS): Mention dirchownmod.c, dirchownmod.h.
3129         Don't require AC_FUNC_ALLOCA, gl_AFS, gl_CHDIR_SAFER; no longer needed.
3130         Require gl_FUNC_LCHOWN, since dirchownmod.c needs it.
3131
3132 2006-07-16  Paul Eggert  <eggert@cs.ucla.edu>
3133
3134         * lib/dirchownmod.c, dirchownmod.h, mkancesdirs.c, mkancesdirs.h:
3135         New files.
3136         * lib/mkdir-p.c: Don't include alloca.h, stdio.h, sys/types.h,
3137         unistd.h, string.h, chdir-safer.h, dirname.h, lchmod.h, lchown.h,
3138         save-cwd.h.  Instead, include dirchownmod.h and mkancesdirs.h.
3139         (make_dir_parents): New args MAKE_ANCESTOR, OPTIONS, ANNOUNCE,
3140         MODE_BITS.  Remove options VERBOSE_FMT_STRING, CWD_ERRNO.  All
3141         callers changed.  Revamp internals significantly, by not
3142         attempting to create directories that are temporarily more
3143         permissive than the final results.  Do not attempt to use
3144         save_cwd/restore_cwd; it isn't worth it for mkdir and install.
3145         This removes some race conditions, fixes some bugs, and simplifies
3146         things.  Use new dirchownmod function to do owner and mode changes.
3147         * lib/mkdir-p.h: Likewise.
3148         * lib/modechange.c (octal_to_mode): New function.
3149         (struct mode_change): New member mentioned.
3150         (make_node_op_equals): New arg mentioned.  All callers changed.
3151         (mode_compile): Keep track of which mode bits the user has explicitly
3152         mentioned.
3153         (mode_adjust): New arg DIR, so that we implement the X op correctly.
3154         New arg PMODE_BITS, to keep track of which mode bits the user
3155         mentioned; it treats S_ISUID and S_ISGID speciall.
3156         All callers changed.
3157         * lib/modechange.h: Likewise.
3158
3159 2006-07-16  Paul Eggert  <eggert@cs.ucla.edu>
3160
3161         * MODULES.html.sh: Add mkancestors.
3162         * modules/mkancesdirs: New module.
3163         * modules/mkdir-p (Files): Remove lib/chdir-safer.c, lib/chdir-safer.h,
3164         lib/same-inode.h, m4/afs.m4, m4/chdir-safer.m4.
3165         The chdir-safer and afs files are now orphans; I'll remove them
3166         unless someone speaks up.
3167         Add lib/dirchownmod.c, lib/dirchownmod.h.
3168         (Depends-on): Remove alloca, chown, save-cwd, dirname.
3169         Add lchown, mkancesdirs.
3170         (Maintainer): Add self.
3171
3172 2006-07-15  Karl Berry  <karl@gnu.org>
3173
3174         * gnulib-tool: help message wording/arrangement.
3175
3176 2006-07-14  Simon Josefsson  <jas@extundo.com>
3177
3178         * doc/gnulib.texi (Libtool and Windows): New section.
3179
3180 2006-07-12  Simon Josefsson  <jas@extundo.com>
3181
3182         * modules/gendocs (License): Fix license, approved by Karl.
3183
3184 2006-07-12  Eric Blake  <ebb9@byu.net>
3185
3186         * MODULES.html.sh: Add gendocs.
3187
3188 2006-07-11  Eric Blake  <ebb9@byu.net>
3189
3190         * modules/fdl: New module, to install doc/fdl.texi.
3191         * MODULES.html.sh: Add new section for documentation modules.
3192         * gnulib-tool: Avoid space-tab.
3193         (--doc-base): New option, to manage files from doc.
3194
3195 2006-07-11  Eric Blake  <ebb9@byu.net>
3196
3197         * m4/absolute-header.m4: Fix comments to match recent change.
3198
3199 2006-07-11  Eric Blake  <ebb9@byu.net>
3200
3201         * gnulib-tool: List --doc-base before --tests-base.
3202
3203 2006-07-11  Derek R. Price  <derek@ximbiot.com>
3204
3205         * lib/glob.c: s/NAMLEN/_D_EXACT_NAMLEN/.
3206
3207 2006-07-11  Bruno Haible  <bruno@clisp.org>
3208
3209         * README: Mention where to put documentation.
3210
3211 2006-07-10  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
3212
3213         * doc/functions.texi, gnulib-tool.texi, gnulib.texi: Fix some typos.
3214
3215 2006-07-10  Paul Eggert  <eggert@cs.ucla.edu>
3216
3217         * m4/sys_stat_h.m4 (gl_HEADER_SYS_STAT_H): Like today's change
3218         to stdint.m4.
3219
3220 2006-07-10  Paul Eggert  <eggert@cs.ucla.edu>
3221
3222         * m4/stdint.m4 (gl_STDINT_H): Like yesterday's change to
3223         absolute-header.m4.  Also, set ABSOLUTE_STDINT_H to a string
3224         "no/such/file/stdint.h" when there is no such file, so that
3225         the resulting C code can be parsed by dodgy compilers.
3226         Problems reported by Bob Proulx.
3227
3228 2006-07-10  Derek R. Price  <derek@ximbiot.com>
3229
3230         * lib/backupfile.c, dirfd.h, fts.c, getcwd.c, glob.c, glob_.h:
3231         Ignore the obsolescent !HAVE_DIRENT_H case.  Consolidate NAMLEN
3232         macros into the GNU _D_EXACT_NAMLEN.
3233         * lib/savedir.c:  Likewise.
3234         (savedirstream): Use _D_EXACT_NAMLEN in preference to strlen.
3235
3236 2006-07-10  Derek R. Price  <derek@ximbiot.com>
3237         and Paul Eggert  <eggert@cs.ucla.edu>
3238
3239         * m4/backupfile.m4, d-ino.m4, d-type.m4, dirfd.m4, fts.m4, getcwd.m4:
3240         * m4/savedir.m4:
3241         Ignore the obsolescent !HAVE_DIRENT_H case.  Consolidate NAMLEN
3242         macros into the GNU _D_EXACT_NAMLEN.
3243
3244 2006-07-09  Paul Eggert  <eggert@cs.ucla.edu>
3245
3246         * m4/absolute-header.m4 (gl_ABSOLUTE_HEADER): Use "" rather than <>
3247         around the absolute name, to work around a problem with the HP-UX
3248         11.23 native C compiler, reported by Bob Proulx.
3249
3250 2006-07-09  Paul Eggert  <eggert@cs.ucla.edu>
3251
3252         * doc/maintain.texi, make-stds.texi: Sync from
3253         <http://savannah.gnu.org/projects/gnustandards>.
3254
3255 2006-07-09  Paul Eggert  <eggert@cs.ucla.edu>
3256
3257         * build-aux/depcomp, build-aux/install-sh: Sync from Automake.
3258
3259 2006-07-09  Jim Meyering  <jim@meyering.net>
3260
3261         * m4/glob.m4: Remove a doubled word in a comment.
3262
3263 2006-07-09  Jim Meyering  <jim@meyering.net>
3264
3265         * lib/argp-pv.c: Remove a doubled word in a comment.
3266         * lib/check-version.c (check_version): Likewise.
3267         * lib/javacomp.c (compile_java_class): Likewise.
3268
3269 2006-07-08  Paul Eggert  <eggert@cs.ucla.edu>
3270
3271         * gnulib-tool (func_get_filelist): Don't echo m4/onceonly_2_57.m4,
3272         for the benefit of people using Autoconf 2.60.  If you want to
3273         support older Autoconf versions you can copy m4/onceonly_2_57.m4
3274         (or m4/onceonly.m4, if pre-2.57) manually.
3275
3276 2006-07-08  Jim Meyering  <jim@meyering.net>
3277
3278         * m4/link-follow.m4: Remove one of two adjacent "whether"s in a comment.
3279         * m4/getopt.m4: Remove one of two adjacent "your"s in a comment.
3280         * m4/regex.m4 (gl_REGEX): Remove one of two adjacent "the"s in a comment.
3281
3282 2006-07-08  Jim Meyering  <jim@meyering.net>
3283
3284         * lib/getndelim2.h (getndelim2): Remove doubled "after" in comment.
3285
3286 2006-07-07  Simon Josefsson  <jas@extundo.com>
3287
3288         * tests/test-crc.c: Change expected crc value, the test vector
3289         were probably computed using the old broken crc.c?
3290
3291 2006-07-06  Simon Josefsson  <jas@extundo.com>
3292
3293         * modules/sys_socket (Files): Add m4/sockpfaf.m4 (this module is
3294         now the canonical place for the M4 file).
3295
3296         * modules/getaddrinfo (Files): Remove m4/sockpfaf.m4, we get it
3297         from the sys_socket dependency now.
3298
3299         * modules/inet_pton (Files): Ditto.
3300
3301         * modules/inet_ntop (Files): Ditto.
3302
3303 2006-07-06  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>  (tiny change)
3304
3305         * modules/getusershell (configure.ac): Use gl_FUNC_GETUSERSHELL,
3306         not gl_PREREQ_GETUSERSHELL.
3307
3308 2006-07-06  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
3309
3310         * m4/_inttypes_h.m4 (gl_INTTYPES_H): Use AC_CHECK_DECLS_ONCE
3311         with only one argument, for Autoconf 2.60.
3312         * m4/fileblocks.m4 (gl_PREREQ_FILEBLOCKS): AC_CHECK_DECLS_ONCE may
3313         expand to nothing, so add a shell command to avoid syntax error.
3314         * m4/getpass.m4 (gl_PREREQ_GETPASS): Likewise.
3315
3316 2006-07-06  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
3317
3318         * lib/strtod.c (strtod): cast the argument of tolower to unsigned char.
3319
3320 2006-07-06  Paul Eggert  <eggert@cs.ucla.edu>
3321
3322         * m4/fnmatch.m4 (_AC_LIBOBJ_FNMATCH): Don't check for getenv decl;
3323         no longer needed.  Check for isblank decl.
3324         * m4/mkstemp.m4 (gl_PREREQ_TEMPNAME): Don't check for getenv decl.
3325         * m4/regex.m4 (gl_PREREQ_REGEX): Dheck for isblank decl instead
3326         of existence.
3327
3328 2006-07-06  Paul Eggert  <eggert@cs.ucla.edu>
3329
3330         * lib/getloadavg.c: Use __VMS, not VMS.
3331         * lib/getopt.c: Likewise.
3332         * lib/getpagesize.h: Likewise.
3333         * lib/glob.c: Remove most VMS cruft; it hasn't been tested for a while and
3334         probably does not work.
3335
3336 2006-07-06  Paul Eggert  <eggert@cs.ucla.edu>
3337
3338         * lib/.cppi-disable: Add wcwidth.
3339         * lib/fnmatch.c (ISBLANK): Remove.  All uses changed to isblank.
3340         (isblank) [! (defined isblank || HAVE_DECL_ISBLANK)]: New macro.
3341         (ISGRAPH): Remove.  All uses changed to isgraph.
3342         (FOLD) [!defined _LIBC]: Remove special case.
3343         * lib/getdate.y (lookup_word): Remove no-longer-needed call to islower.
3344         * lib/regex_internal.h (isblank): Depend on HAVE_DECL_ISBLANK, not
3345         HAVE_ISBLANK.
3346         * lib/strftime.c (TOLOWER, TOUPPER) [!defined _LIBC]: Remove special case.
3347
3348 2006-07-06  Jim Hyslop  <jhyslop@dreampossible.ca>  (tiny change)
3349
3350         * lib/getaddrinfo.c: Changes to compile under MSVC6: changed
3351         '#if WIN32_NATIVE' to '#ifdef' & moved WSAAPI macro inside
3352         brackets.  Other minor changes to suppress some compiler
3353         warnings.
3354
3355 2006-07-06  Derek R. Price  <derek@ximbiot.com>
3356         and Paul Eggert  <eggert@cs.ucla.edu>
3357
3358         * m4/backupfile.m4 (gl_BACKUPFILE): Check for dirent.h, instead
3359         of invoking obsolescent AC_HEADER_DIRENT macro.
3360         * m4/d-ino.m4 (gl_CHECK_TYPE_STRUCT_DIRENT_D_INO): Likewise.
3361         * m4/d-type.m4 (gl_CHECK_TYPE_STRUCT_DIRENT_D_TYPE): Likewise.
3362         * m4/dirfd.m4 (gl_FUNC_DIRFD): Likewise.
3363         * m4/fts.m4 (gl_FUNC_FTS_CORE): Likewise.
3364         * m4/getcwd.m4 (gl_PREREQ_GETCWD): Likewise.
3365         * m4/glob.m4 (gl_PREREQ_GLOB): Likewise.
3366         * m4/savedir.m4 (gl_SAVEDIR): Likewise.
3367         * m4/readdir.m4: Remove; no longer needed.
3368
3369 2006-07-06  Derek R. Price  <derek@ximbiot.com>
3370         and Paul Eggert  <eggert@cs.ucla.edu>
3371
3372         * lib/backupfile.c [HAVE_DIRENT_H && ! HAVE_NDIR_H]:
3373         Don't worry about this obsolete case any more.
3374         (HAVE_DIR): Remove.  All uses removed; we now assume you can read
3375         directories.
3376         * lib/dirfd.h [HAVE_DIRENT_H && ! HAVE_NDIR_H]: Don't
3377         worry about this obsolete case any more.
3378         * lib/fts.c: Likewise.
3379         * lib/getcwd.c: Likewise.
3380         * lib/glob.h: Likewise.
3381         * lib/savedir.c: Likewise.
3382
3383 2006-07-05  Paul Eggert  <eggert@cs.ucla.edu>
3384
3385         * m4/xstrtol.m4 (gl_PREREQ_XSTRTOL): Use AC_CHECK_DECLS_ONCE
3386         rather than AC_CHECK_DECLS for strtoimax and strtoumax.
3387         * m4/getusershell.m4 (gl_PREREQ_GETUSERSHELL): Remove; no longer needed.
3388         All uses removed.
3389         * m4/strtol.m4 (gl_PREREQ_STRTOL): Likewise.
3390         * m4/strtoul.m4 (gl_PREREQ_STRTOUL): Likewise.
3391         * m4/exclude.m4 (gl_EXCLUDE): Don't check for isascii; no longer needed.
3392         * m4/getdate.m4 (gl_GETDATE): Likewise.
3393         * m4/getusershell.m4 (gl_PREREQ_GETUSERSHELL): Likewise.
3394         * m4/memcasecmp.m4 (gl_MEMCASECMP): Likewise.
3395         * m4/strtod.m4 (gl_FUNC_STRTOD): Likewise.
3396         * m4/strtol.m4 (gl_PREREQ_STRTOL): Likewise.
3397         * m4/strtoul.m4 (gl_PREREQ_STRTOUL): Likewise.
3398         * m4/xstrtol.m4 (gl_PREREQ_XSTRTOL): Likewise.
3399         * m4/exclude.m4 (gl_EXCLUDE): Don't require AC_C_INLINE; no longer
3400         needed.
3401
3402 2006-07-05  Paul Eggert  <eggert@cs.ucla.edu>
3403
3404         * lib/memcasecmp.c: Include <limits.h>.
3405         (memcasecmp): Don't assume UCHAR_MAX <= INT_MAX.
3406         * lib/strtod.c (strtod): Don't assume isspace works on negative chars.
3407         Don't assume isdigit succeeds only on '0' through '9'.
3408
3409 2006-07-05  Eric Blake  <ebb9@byu.net>
3410
3411         * modules/getaddrinfo (Depends-on): Add snprintf.
3412
3413 2006-07-05  Eric Blake  <ebb9@byu.net>
3414
3415         * m4/sockpfaf.m4 (gl_SOCKET_FAMILIES): Use gl_HEADER_SYS_SOCKET
3416         to avoid 'header present but could not be compiled' on cygwin.
3417
3418 2006-07-05  Eric Blake  <ebb9@byu.net>
3419
3420         * lib/getaddrinfo.h (NI_NUMERICHOST, NI_NUMERICSERV): Define if
3421         missing from netdb.h.
3422         * lib/getaddrinfo.c (includes): Include inet_ntop and snprintf.
3423
3424 2006-07-05  Derek R. Price  <derek@ximbiot.com>
3425
3426         * m4/calloc.m4 (_AC_FUNC_CALLOC_IF): Don't require AC_HEADER_STDC;
3427         no longer needed.
3428         * m4/exclude.m4 (gl_EXCLUDE): Likewise.
3429         * m4/getdate.m4 (gl_GETDATE): Likewise.
3430         * m4/getusershell.m4 (gl_PREREQ_GETUSERSHELL): Likewise.
3431         * m4/memcasecmp.m4 (gl_MEMCASECMP): Likewise.
3432         * m4/strtod.m4 (gl_FUNC_STRTOD): Likewise.
3433         * m4/strtol.m4 (gl_PREREQ_STRTOL): Likewise.
3434         * m4/xstrtol.m4 (gl_PREREQ_XSTRTOL): Likewise.
3435
3436 2006-07-05  Derek R. Price  <derek@ximbiot.com>
3437
3438         * lib/exclude.c (IN_CTYPE_DOMAIN, is_space): Remove; no longer needed.
3439         All uses of is_space replaced by isspace.
3440         * lib/exit.h: Don't talk about STDC_HEADERS.
3441         * lib/fnmatch.c (ISASCII): Remove; no longer needed.  All uses removed.
3442         (ISPRINT, ISDIGIT, ISALNUM, ISALPHA, ISCNTRL, ISLOWER, ISPUNCT):
3443         (ISSPACE, ISUPPER, ISXDIGIT): Remove; no longer needed.  All uses
3444         replaced by isprint etc.
3445         * lib/getdate.y (IN_CTYPE_DOMAIN, ISSPACE, ISALPHA, ISLOWER): Likewise.
3446         * lib/getusershell.c (IN_CTYPE_DOMAIN, ISSPACE): Likewise.
3447         * lib/memcasecmp.c (IN_CTYPE_DOMAIN, ISLOWER, TOUPPER): Likewise.
3448         * lib/strtod.c (IN_CTYPE_DOMAIN, ISSPACE, ISDIGIT, TOLOWER): Likewise.
3449         * lib/strtol.c (IN_CTYPE_DOMAIN): Likewise.
3450         * lib/xstrtol.c (IN_CTYPE_DOMAIN, ISSPACE): Likewise.
3451
3452 2006-07-05  Bruno Haible  <bruno@clisp.org>
3453
3454         * m4/strndup.m4 (gl_FUNC_STRNDUP): When cross-compiling, check whether
3455         the function exists, before testing against AIX.
3456         Reported by Martin Lambers <marlam@marlam.de>.
3457
3458 2006-07-04  Paul Eggert  <eggert@cs.ucla.edu>
3459
3460         * modules/cycle-check (lib_SOURCES): Add same-inode.h.
3461         From Mark D. Baushke.
3462
3463 2006-07-04  Paul Eggert  <eggert@cs.ucla.edu>
3464
3465         * m4/absolute-header.m4 (gl_ABSOLUTE_HEADER): Prepend three slashes
3466         to the absolute name, not just one, to bypass Sun C 5.8's
3467         "warning: #include of /usr/include/... may be non-portable".
3468
3469 2006-07-04  Eric Blake  <ebb9@byu.net>
3470
3471         * modules/dirname-tests: New test module.
3472         * tests/test-dirname.c: New file, replacing dirname.c
3473         TEST_DIRNAME section that was recently deleted.
3474
3475 2006-07-04  Bruno Haible  <bruno@clisp.org>
3476
3477         Assume ANSI C header files and <ctype.h> functions.
3478         * lib/mbswidth.c (IN_CTYPE_DOMAIN, ISPRINT, ISCNTRL): Remove macros.
3479         (mbsnwidth): Use isprint, iscntrl instead.
3480
3481 2006-07-03  Paul Eggert  <eggert@cs.ucla.edu>
3482
3483         Merge from coreutils.
3484         * MODULES.html.sh: Add xstrtold.
3485         * modules/xstrtold: New file.
3486         * modules/cycle-check (Files): Add lib/same-inode.h.
3487         * modules/dirname (Files): Add m4/double-slash-root.m4.
3488         * modules/getcwd (Files): Add m4/getcwd-abort-bug.m4.
3489         * modules/mkdir-p (Files): Add lib/same-inode.h.
3490         * modules/same (Files): Add lib/same-inode.h.
3491
3492 2006-07-03  Paul Eggert  <eggert@cs.ucla.edu>
3493
3494         * m4/absolute-header.m4: Renamed from full-header-path.m4.
3495         This is to keep the terminology clean; POSIX talks about
3496         "absolute pathnames", not "full pathnames", but the GNU
3497         Coding Standards say to use "path" for something else;
3498         so use "absolute" to keep both sides happy.
3499         (gl_ABSOLUTE_HEADER): Renamed from gl_FULL_HEADER_PATH.
3500         Set gl_absolute_header, not gl_full_header_path.
3501         Set gl_cv_absolute_<header>, not gl_full_path_<header>.
3502         Define ABSOLUTE_<HEADER>, not FULL_PATH_<HEADER>.
3503         All uses changed.
3504
3505         Merge from coreutils.
3506
3507         2006-06-30  Paul Eggert  <eggert@cs.ucla.edu>
3508
3509         * m4/c-strtod.m4 (gl_C_STRTOLD): Add c-strtod.c to LIBSOURCES.
3510         Require gl_USE_SYSTEM_EXTENSIONS, not gl_C_STRTOD, since we don't
3511         want to require the building of c-strtod.o.
3512         * m4/lib-check.m4 (cu_LIB_CHECK): Remove SEQ_LIBM, since seq no longer
3513         needs -lm directly.
3514         * m4/xstrtod.m4 (gl_XSTRTOLD): New macro.
3515
3516         2006-06-19  Paul Eggert  <eggert@cs.ucla.edu>
3517
3518         * m4/lib-ignore.m4 (gl_IGNORE_UNUSED_LIBRARIES): Prefer binutils's
3519         --as-needed option if available.  Problem reported by Albert Chin in
3520         <http://lists.gnu.org/archive/html/bug-gnulib/2006-06/msg00114.html>.
3521         However, use -Wl,--as-needed, not bare --as-needed, since HP-UX 11.11
3522         cc merely issues a bunch of annoying warnings for --as-needed
3523         (this problem was reported by Bob Proulx).  Also, try linking with
3524         -lm to detect a bug in binutils 2.16 (this problem was reported
3525         by Ralf Wildenhues).
3526
3527         2006-06-18  Jim Meyering  <jim@meyering.net>
3528
3529         Test for a bug that causes glibc's getcwd to suffer a failed assertion.
3530         * m4/getcwd-abort-bug.m4 (gl_FUNC_GETCWD_ABORT_BUG): New file and macro.
3531         * m4/getcwd.m4 (gl_FUNC_GETCWD): If we detect support for getcwd_null,
3532         also check for glibc-2.4's abort-inducing bug.
3533
3534         * m4/getcwd-path-max.m4 (gl_FUNC_GETCWD_PATH_MAX): Fix typo.
3535         Low-probability clean-up should be to use rmdir to get rid of
3536         the just-created directory, not unlink.
3537
3538         * m4/ftruncate.m4 (gl_FUNC_FTRUNCATE): If ftruncate is missing, make
3539         configure fail, and request a bug report to inform us about it.
3540         Add a comment that, barring reports to the contrary, in 2007 we'll
3541         assume ftruncate is universally available.
3542
3543         2006-04-17  Paul Eggert  <eggert@cs.ucla.edu>
3544
3545         * m4/filemode.m4 (gl_FILEMODE): Check for strmode declaration.
3546
3547         2006-03-12  Jim Meyering  <jim@meyering.net>
3548
3549         * m4/chdir-safer.m4 (gl_CHDIR_SAFER): Add same-inode.h to the list.
3550         * m4/cycle-check.m4 (gl_CYCLE_CHECK): Likewise.
3551         * m4/same.m4 (gl_SAME): Likewise.
3552         * m4/root-dev-ino.m4 (gl_ROOT_DEV_INO): Likewise.
3553
3554         2006-03-11  Eric Blake  <ebb9@byu.net>
3555
3556         * m4/double-slash-root.m4: New file, provides gl_DOUBLE_SLASH_ROOT.
3557         * m4/dirname.m4 (gl_DIRNAME): Use gl_DOUBLE_SLASH_ROOT.
3558         * m4/dos.m4 (FILE_SYSTEM_PREFIX_LEN): Move from here to dirname.h.
3559         (FILE_SYSTEM_DRIVE_PREFIX_CAN_BE_RELATIVE): New define.
3560
3561 2006-07-03  Paul Eggert  <eggert@cs.ucla.edu>
3562
3563         * lib/stdint_.h: Include <sys/types.h> after @FULL_PATH_STDINT_H@, for
3564         MacOS X 10.4.6.  Don't mention <sys/int_types.h>.  Problems
3565         reported by Mark D. Baushke, one in
3566         <http://lists.gnu.org/archive/html/bug-gnulib/2006-07/msg00015.html>.
3567
3568         Merge from coreutils.
3569
3570         * lib/.cppi-disable: Add stdint_.h.
3571         * lib/.cvsignore: Add stdint.h.
3572
3573         2006-06-30  Paul Eggert  <eggert@cs.ucla.edu>
3574
3575         * lib/xstrtod.c (XSTRTOD, DOUBLE): New macros, so that we can support
3576         both double and long double versions.
3577         (XSTRTOD): Renamed from xstrtod.  Use DOUBLE internally.
3578         * lib/xstrtold.c: New file.
3579         * lib/xstrtod.h (xstrtold): New decl.
3580
3581         2006-05-22  Paul Eggert  <eggert@cs.ucla.edu>
3582
3583         * lib/filemode.c (setst): Remove.
3584         (strmode): Rewrite to avoid setst.  This makes the code shorter,
3585         (arguably) clearer, and the generated code is a bit smaller on my
3586         Debian GNU/Linux stable x86 host.
3587
3588         2006-04-17  Paul Eggert  <eggert@cs.ucla.edu>
3589
3590         * lib/filemode.c: Include "filemode.h" first, to test the interface.
3591         Assume that filemode.h includes sys/types.h and sys/stat.h.
3592         (HAVE_ST_DM_MODE): New macro, moved here from ls.c.
3593         (ftypelet): Reorder to put common cases first, for efficiency.
3594         Add 'P', 'w'.  Remove 'M', since it's now the caller's responsibility
3595         to do 'M'.
3596         (strmode): Renamed from mode_string, and now stores 12 bytes instead
3597         of 10, for compatibility with FreeBSD.  All callers changed.
3598         (filemodestring): Now stores 12 bytes instead of 10, and sets file types
3599         that can't be deduced solely from st_mode.  First arg is now a const
3600         pointer.
3601         * lib/filemode.h (HAVE_DECL_STRMODE): Include <string.h> for strmode.
3602         (strmode): Renamed from mode_string.
3603         (filemodestring): New decl.
3604         * lib/stat-macros.h: Don't undef S_ISDOOR, since it's never buggy.
3605         (S_ISDOOR): Don't bother with S_IFDOOR, since that code is never needed.
3606         (S_ISPORT, S_ISWHT): New macros, if not already defined.
3607
3608         2006-04-12  Paul Eggert  <eggert@cs.ucla.edu>
3609
3610         * lib/fsusage.c: Don't include <inttypes.h> or <stdint.h>, since
3611         fsusage.h now does that.  Include fsusage.h first, to test interface.
3612         Prefer statvfs if it works, since it's blessed by POSIX.  Attempt
3613         at most one method (the old code could have generated decls that
3614         didn't conform to C89, not that this was ever exercised).
3615         * lib/fsusage.h: Include <inttypes.h> and <stdint.h> if they exist.
3616
3617         2006-03-19  Jim Meyering  <jim@meyering.net>
3618
3619         Work even in a chroot where d_ino values for entries in "/"
3620         don't match the stat.st_ino values for the same names.
3621         * lib/getcwd.c (__getcwd): When no d_ino value matches the target inode
3622         number, iterate through all entries again, using lstat instead.
3623         Reported by Kenshi Muto in http://bugs.debian.org/355810, and by
3624         Zouhir Hafidi in https://bugzilla.redhat.com/bugzilla/190656.
3625
3626         * lib/getcwd.c (__getcwd): Clarify a comment.
3627         Use memcpy in place of a call to strcpy.
3628
3629         2006-03-12  Jim Meyering  <jim@meyering.net>
3630
3631         * lib/fts-cycle.c (leave_dir): If cycle-check's saved dev-ino pair matches
3632         that of the current directory (which we're about to chdir ".." out of),
3633         then save the dev-ino of the parent, instead.
3634
3635         * lib/same-inode.h (SAME_INODE): New file/macro.
3636         * lib/chdir-safer.c (SAME_INODE): Remove definition.
3637         Include "same-inode.h", instead.
3638         * lib/same.c: Likewise.
3639         * lib/cycle-check.h: Include "same-inode.h".
3640         (CYCLE_CHECK_REFLECT_CHDIR_UP): Define.
3641         * lib/cycle-check.c (SAME_INODE): Remove definition.
3642         * lib/root-dev-ino.h: Include "same-inode.h".
3643
3644         2006-03-11  Eric Blake  <ebb9@byu.net>
3645
3646         * lib/same.c (same_name): s/base_name/last_component/
3647         * lib/backupfile.c (check_extension, numbered_backup): Likewise.
3648         * lib/filenamecat.c (file_name_concat): Likewise.
3649
3650         2006-03-11  Eric Blake  <ebb9@byu.net>,
3651                     Paul Eggert  <eggert@cs.ucla.edu>
3652
3653         * lib/dirname.h (FILE_SYSTEM_PREFIX_LEN): Move here from dos.m4.
3654         [FILE_SYSTEM_ACCEPTS_DRIVE_LETTER_PREFIX]: Don't treat 1: as a
3655         drive prefix.
3656         (IS_ABSOLUTE_FILE_NAME): Treat all drive letters as absolute on
3657         platforms like cygwin with FILE_SYSTEM_DRIVE_PREFIX_IS_ABSOLUTE.
3658         (last_component): New method.
3659         * lib/dirname.c (dir_len): Determine when drive letters need a
3660         subsequent slash.  Preserve // when it is special.
3661         (dir_name): Don't append dot when drive letter is absolute.
3662         [TEST_DIRNAME]: Move into a full-blown gnulib test.
3663         * lib/basename.c (base_name): New semantics - malloc the result.
3664         Preserve // when it is special.  Preserve relative files that look
3665         like drive letters.
3666         (base_len): Preserve // when it is special.
3667         (last_component): New method, similar to old base_name semantics.
3668         * lib/stripslash.c (strip_trailing_slashes): Use last_component, not
3669         base_name.  Strip redundant slashes from ///.
3670
3671 2006-07-03  Jim Meyering  <jim@meyering.net>
3672
3673         * lib/cycle-check.h (CYCLE_CHECK_REFLECT_CHDIR_UP): Abort if this
3674         macro is used before the first cycle_check call.
3675
3676 2006-07-03  Eric Blake  <ebb9@byu.net>
3677
3678         * modules/dirname (Depends-on): Add xstrndup.
3679
3680 2006-07-02  Paul Eggert  <eggert@cs.ucla.edu>
3681
3682         * m4/stdint.m4 (gl_STDINT_H): Use more-mnemonic identifiers for
3683         test cases, so that config.log is a bit easier to follow.
3684
3685 2006-07-02  Paul Eggert  <eggert@cs.ucla.edu>
3686
3687         * lib/stdint_.h (intmax_t, uintmax_t): Prefer long to long long if
3688         both are 64 bits, since this seems to be the tradition, and this
3689         prevents gcc -Wformat from warning about usages with PRIuMAX.  If
3690         we ever run into a host that prefers long long to long in this
3691         case, we'll need another configure-time test.  Problem reported by
3692         Jim Meyering.
3693
3694 2006-07-02  Eric Blake  <ebb9@byu.net>
3695
3696         * m4/wcwidth.m4 (gl_FUNC_WCWIDTH): Simplify by using AC_CHECK_DECLS.
3697
3698 2006-07-01  Paul Eggert  <eggert@cs.ucla.edu>
3699
3700         * modules/inttypes (Depends-on): No longer depends on stdint.
3701         * modules/stdint (Description): Say more about assumptions.
3702         Say that the fast types might differ.  Say macros are used.
3703         (Files): Remove m4/size_max.m4, m4/wchar_t.m4.  Add m4/longlong.m4.
3704         (Makefile.am): Revise list of substituted symbols to match
3705         new stdint.m4.
3706         * modules/stdint-tests (Files): Add m4/wchar_t.m4, m4/wint_t.m4.
3707         (configure.ac): Add gt_TYPE_WCHAR_T, gt_TYPE_WINT_T.
3708         * tests/test-stdint.c (verify_same_types)
3709         [! (__GNUC__ >= 2 && DO_PEDANTIC)]: Put in a decl, so that
3710         the code conforms to C99/C89.
3711         Test for WCHAR_MIN and WCHAR_MAX only if HAVE_WCHAR_T.
3712         Test for WINT_MIN and WINT_MAX only if HAVE_WINT_T.
3713
3714 2006-07-01  Paul Eggert  <eggert@cs.ucla.edu>
3715
3716         * m4/longlong.m4 (AC_TYPE_LONG_LONG_INT): Backport from Autoconf 2.60,
3717         but fix a bug, by requiring at least 64 bits.
3718         * m4/ulonglong.m4 (AC_TYPE_UNSIGNED_LONG_LONG_INT): Likewise.
3719         * m4/longlong.m4 (gl_AC_TYPE_LONG_LONG): Now just call
3720         AC_TYPE_LONG_LONG_INT.  This macro is obsolete and will go soon.
3721         * m4/ulonglong.m4 (gl_AC_TYPE_UNSIGNED_LONG_LONG) Likewise.
3722
3723         * m4/stdint.m4 (gl_STDINT_H): Rewrite to accommodate stdint_.h
3724         changes.  Make 2.59 a prerequisite.  Check and substitute for
3725         HAVE_LONG_LONG_INT.  Rely on Autoconf to check for stdint.h and
3726         inttypes.h.  Do not use special include files; just use the
3727         defaults.  Check for sys/inttypes.h and sys/bitypes.h in the usual
3728         way now.  Remove no-longer-needed tests for HAVE_LONG_64BIT,
3729         HAVE_LONG_LONG_64BIT, int8_t, int16_t, int32_t, int64_t, uint8_t,
3730         uint16_t, uint32_t uint64_t, int_least8_t, int_least16_t,
3731         int_least32_t, int_least64_t, uint_least8_t, uint_least16_t,
3732         uint_least32_t, uint_least64_t, int_fast8_t, int_fast16_t,
3733         int_fast32_t, int_fast64_t, uint_fast8_t uint_fast16_t,
3734         uint_fast32_t, uint_fast64_t, intptr_t, uintptr_t, intmax_t,
3735         uintmax_t, INT8_MIN, INT8_MAX, UINT8_MAX, INT16_MIN, INT16_MAX,
3736         UINT16_MAX, INT32_MIN, INT32_MAX, UINT32_MAX, INT64_MIN,
3737         INT64_MAX, UINT64_MAX, INT_LEAST8_MIN, INT_LEAST8_MAX,
3738         UINT_LEAST8_MAX, INT_LEAST16_MIN, INT_LEAST16_MAX,
3739         UINT_LEAST16_MAX, INT_LEAST32_MIN, INT_LEAST32_MAX,
3740         UINT_LEAST32_MAX, INT_LEAST64_MIN, INT_LEAST64_MAX,
3741         UINT_LEAST64_MAX, INT_FAST8_MIN, INT_FAST8_MAX, UINT_FAST8_MAX,
3742         INT_FAST16_MIN, INT_FAST16_MAX, UINT_FAST16_MAX, INT_FAST32_MIN,
3743         INT_FAST32_MAX, UINT_FAST32_MAX, INT_FAST64_MIN, INT_FAST64_MAX,
3744         UINT_FAST64_MAX, INTPTR_MIN, INTPTR_MAX, UINTPTR_MAX, INTMAX_MIN,
3745         INTMAX_MAX, UINTMAX_MAX, PTRDIFF_MIN, PTRDIFF_MAX, SIG_ATOMIC_MIN,
3746         SIG_ATOMIC_MAX, SIZE_MAX, WCHAR_MIN, WCHAR_MAX, WINT_MIN,
3747         WINT_MAX.  Check for C99 conformance more strictly, by detecting
3748         bugs in glibc 2.4, Solaris 10, and OpenBSD 3.9.  On the other hand do
3749         not check for things that C99 does not require, e.g., int8_t.  If
3750         a test isn't needed unless <stdint.h> isn't working, and is
3751         unlikely to be needed for any other reason, then don't do it
3752         unless <stdint.h> isn't working.  Do not check for ptrdiff_t or
3753         size_t, since we assume C89 freestanding at least.  Do not check
3754         for sig_atomic_t, wchar_t, or wint_t, since the code now does
3755         the right thing even if the types are not defined.  Instead use:
3756         (gl_STDINT_TYPE_PROPERTIES): New macro.
3757         (gl_HEADER_STDINT_H, gl_HEADER_INTTYPES_H): Remove.  Don't bother
3758         testing whether <sys/types.h> clashes, as Autoconf does this for
3759         us now.  All uses removed.
3760         (gl_STDINT_CHECK_TYPES, gl_STDINT_MISSING_BOUND):
3761         (gl_STDINT_MISSING_BOUNDS, gl_STDINT_MISSING_BOUNDS2):
3762         (gl_CHECK_TYPE_SAME):
3763         Remove; no longer needed.
3764         (gl_STDINT_BITSIZEOF): Don't bother to check whether the type
3765         exists, since we'll return 0 anyway in that case.
3766         (gl_INTEGER_TYPE_SUFFIX, gl_STDINT_INCLUDES): New macros.
3767
3768 2006-07-01  Paul Eggert  <eggert@cs.ucla.edu>
3769
3770         * lib/stdint_.h (_GL_STDINT_H): Renamed from _STDINT_H, to avoid
3771         possible collision with system files.
3772         (<stdio.h>, <time.h>, <wchar.h>) [defined __cplusplus && ! defined
3773         __STDC_CONSTANT_MACROS)]: Do not include, since we don't need
3774         WCHAR_MIN and WCHAR_MAX in this case.
3775         (<stddef.h>): Do not include; no longer needed.
3776         (<sys/types.h>): Include if @HAVE_SYS_TYPES_H@, not if
3777         (defined(__OpenBSD__) || defined(__bsdi__) || defined(__sgi)).
3778         (<sys/inttypes.h>): Include if @HAVE_SYS_INTTYPES_H@ &&
3779         !@HAVE_INTTYPES_H@, not if (defined(__FreeBSD__)
3780         && (__FreeBSD__ >= 3) && (__FreeBSD__ <= 4)).
3781         (__STDINT_H__) [@HAVE_STDINT_H@ && defined __sgi && ! defined
3782         __c99]: Define, to work around IRIX <stdint.h> incompatibility.
3783         (@FULL_PATH_STDINT_H@) [!(defined(__sgi) && @HAVE_INTTYPES_H@ &&
3784         !defined(__c99))]: Include in this case too, since it's harmless
3785         now.
3786         (<inttypes.h>) [@HAVE_INTTYPES_H@]: Include, since it's no longer
3787         dangerous to do so.
3788         (@FULL_PATH_INTTYPES_H@) [(defined(__hpux) || defined(_AIX)) &&
3789         @HAVE_INTTYPES_H@]: Do not include, since we now include <inttypes.h>.
3790         (_STDINT_MIN, _STDINT_MAX): New macros.
3791         (int8_t, uint8_t, int16_t, uint16_t, int32_t, uint32_t, int64_t):
3792         (uint64_t, int_least8_t, uint_least8_t, int_least16_t):
3793         (uint_least16_t, int_least32_t, uint_least32_t, int_least64_t):
3794         (uint_least64_t, int_fast8_t, uint_fast8_t, int_fast16_t):
3795         (uint_fast16_t, int_fast32_t, uint_fast32_t, int_fast64_t):
3796         (uint_fast64_t, intptr_t, uintptr_t, intmax_t, uintmax_t): Now
3797         macros, not typedefs; this simplifies things quite a bit.
3798         Use long int for all types narrower than int64_t.
3799         (intmax_t, uintmax_t, INTMAX_C, UINTMAX_C):
3800         Define in terms of long long int or int64_t or long int,
3801         not int64_t or int32_t.  This saves some compile-time testing.
3802         (INT8_MIN, INT8_MAX, UINT8_MAX, INT16_MIN, INT16_MAX, UINT16_MAX):
3803         (INT32_MIN, INT32_MAX, UINT32_MAX, INT64_MIN, INT64_MAX):
3804         (UINT64_MAX, INT_LEAST8_MIN, INT_LEAST8_MAX, UINT_LEAST8_MAX):
3805         (INT_LEAST16_MIN, INT_LEAST16_MAX, UINT_LEAST16_MAX):
3806         (INT_LEAST32_MIN, INT_LEAST32_MAX, UINT_LEAST32_MAX):
3807         (INT_LEAST64_MIN, INT_LEAST64_MAX, UINT_LEAST64_MAX, INT_FAST8_MIN):
3808         (INT_FAST8_MAX, UINT_FAST8_MAX, INT_FAST16_MIN, INT_FAST16_MAX):
3809         (UINT_FAST16_MAX, INT_FAST32_MIN, INT_FAST32_MAX, UINT_FAST32_MAX):
3810         (INT_FAST64_MIN, INT_FAST64_MAX, UINT_FAST64_MAX, INTPTR_MIN):
3811         (INTPTR_MAX, UINTPTR_MAX, INTMAX_MIN, INTMAX_MAX, UINTMAX_MAX):
3812         (PTRDIFF_MIN, PTRDIFF_MAX, SIG_ATOMIC_MIN, SIG_ATOMIC_MAX):
3813         (SIZE_MAX, WCHAR_MIN, WCHAR_MAX, WINT_MIN, WINT_MAX):
3814         undef any previous version and define our own version, for
3815         simplicity and consistency with the new macros for types.
3816         (PTRDIFF_MIN, PTRDIFF_MAX, SIG_ATOMIC_MIN, SIG_ATOMIC_MAX):
3817         (SIZE_MAX, WCHAR_MIN, WCHAR_MAX, WINT_MIN, WINT_MAX):
3818         Simplify definitions by using _STDINT_MIN and _STDINT_MAX
3819         where appropriate.  Rely on new symbols @PTRDIFF_T_SUFFIX@,
3820         @SIG_ATOMIC_T_SUFFIX@, @SIZE_T_SUFFIX@, @WCHAR_T_SUFFIX@,
3821         @WINT_T_SUFFIX@ to keep things simple here.
3822         (UINT8_C, UINT16_C, UINT32_C, INT64_C, UINT64_C):
3823         Simplify by assuming typical 8/16/32/64 host, since we're
3824         already doing that elsewhere anyway.
3825         Use (LONG_MAX >> 31 >> 31 == 1) rather than @HAVE_LONG_64BIT@,
3826         and assume long long int is 64 bits if available.  This
3827         speeds up 'configure'.
3828
3829 2006-07-01  Eric Blake  <ebb9@byu.net>
3830
3831         * m4/stdarg.m4 (gl_STDARG_H): Use proper AH_VERBATIM.
3832         Reported by Andreas Buening.
3833
3834 2006-07-01  Eric Blake  <ebb9@byu.net>
3835
3836         * m4/stdarg.m4 (gl_STDARG_H): Properly parenthesize gl_va_copy.
3837
3838 2006-06-30  Jim Hyslop <jhyslop@dreampossible.ca>  (tiny change)
3839
3840         * lib/getaddrinfo.c: fixed typo
3841
3842 2006-06-29  Jim Meyering  <jim@meyering.net>
3843
3844         * modules/strftime (Maintainer): Add my name, since with the
3845         FPRINTFTIME changes strftime.c has forked from glibc.
3846
3847 2006-06-29  Eric Blake  <ebb9@byu.net>
3848
3849         * m4/sys_stat_h.m4 (gl_HEADER_SYS_STAT_H): Use AC_C_INLINE.
3850
3851 2006-06-29  Eric Blake  <ebb9@byu.net>
3852
3853         * m4/sys_stat_h.m4 (gl_HEADER_SYS_STAT_H): New file.
3854
3855 2006-06-29  Eric Blake  <ebb9@byu.net>
3856
3857         * lib/stat_.h: New file.
3858
3859 2006-06-29  Eric Blake  <ebb9@byu.net>
3860
3861         * lib/stat_.h (rpl_mkdir): Declare inline, to avoid warnings about
3862         unused static function.
3863
3864 2006-06-29  Eric Blake  <ebb9@byu.net>
3865
3866         * doc/functions.texi (Function Portability): Document missing lstat
3867         on mingw.
3868
3869 2006-06-29  Eric Blake  <ebb9@byu.net>
3870
3871         * MODULES.html.sh: Add sys_stat.
3872         * modules/sys_stat: New module.
3873         * modules/mkstemp (Depends-on): Add sys_stat.
3874
3875 2006-06-29  Derek R. Price  <derek@ximbiot.com>
3876
3877         * m4/strftime.m4: Don't call AC_FUNC_STRFTIME.
3878
3879 2006-06-29  Derek R. Price  <derek@ximbiot.com>
3880
3881         * m4/c-bs-a.m4: Removed.
3882
3883 2006-06-29  Derek R. Price  <derek@ximbiot.com>
3884
3885         * lib/strftime.c: Assume strftime() exists.
3886
3887 2006-06-29  Derek Price  <derek@ximbiot.com>
3888
3889         * modules/c-bs-a: Removed - \a is C89.
3890         * MODULES.html.sh: Remove c-bs-a.
3891
3892 2006-06-29  Bruno Haible  <bruno@clisp.org>
3893
3894         * modules/wcwidth (License): Change to LGPL.
3895
3896 2006-06-28  Simon Josefsson  <jas@extundo.com>
3897
3898         * tests/test-getaddrinfo.c: Test getnameinfo too.  Call WSAStartup
3899         on _WIN32.
3900
3901         * modules/getaddrinfo (Depends-on): Add inet_ntop, needed by
3902         getnameinfo.
3903
3904 2006-06-28  Simon Josefsson  <jas@extundo.com>
3905
3906         * m4/getaddrinfo.m4: Look for getnameinfo prototypes too.
3907
3908 2006-06-28  Simon Josefsson  <jas@extundo.com>
3909
3910         * lib/getaddrinfo.c: Try to load ws2_32.dll on Windows, to find the
3911         functions there.  It will succeed on Windows XP, but on Windows
3912         2000 and (presumably) earlier, it will fail, and use the internal
3913         re-implementation.
3914         (use_win32_p): New function.
3915         (getaddrinfo): Use strtoul on servname, to support numeric ports.
3916         Support AI_NUMERICSERV to disable getservbyname.
3917         (getnameinfo): New function, only supports
3918         NI_NUMERICHOST|NI_NUMERICSERV for now.
3919
3920         * lib/getaddrinfo.h: Test and check for AI_* flags separately, MinGW
3921         only have some of them.  Add AI_NUMERICSERV.  Add prototype for
3922         getnameinfo.
3923
3924 2006-06-28  Eric Blake  <ebb9@byu.net>
3925
3926         * modules/wcwidth: New file.
3927         * modules/mbchar (Depends-on): Add wcwidth.
3928         * modules/mbswidth (Depends-on): Add wcwidth.
3929         * MODULES.html.sh: Add wcwidth.
3930
3931 2006-06-28  Eric Blake  <ebb9@byu.net>
3932
3933         * m4/mbswidth.m4 (gl_MBSDWIDTH): Move wcwidth from here...
3934         * m4/wcwidth.m4 (gl_FUNC_WCWIDTH): ...to this new file.
3935
3936 2006-06-28  Eric Blake  <ebb9@byu.net>
3937
3938         * lib/xvasprintf.h: Fix comments.
3939
3940 2006-06-28  Eric Blake  <ebb9@byu.net>
3941
3942         * lib/mbchar.h (wcwidth): Include wcwidth.h.
3943         * lib/mbswidth.c (wcwidth): Move from here...
3944         * lib/wcwidth.h: ...to this new file.
3945
3946 2006-06-28  Derek R. Price  <derek@ximbiot.com>
3947
3948         * m4/savedir.m4: Remove AC_FUNC_CLOSEDIR_VOID requirement.
3949
3950         * m4/fnmatch.m4 (_AC_LIBOBJ_FNMATCH): Don't require AC_C_CONST, since
3951         it's obsolete.
3952         * m4/strftime.m4 (gl_FUNC_GNU_STRFTIME): Likewise.
3953
3954 2006-06-28  Derek R. Price  <derek@ximbiot.com>
3955
3956         * lib/savedir.c (CLOSEDIR): Remove.  All uses changed to closedir.
3957         Autoconf 2.60 says this stuff was obsolete.
3958
3959 2006-06-28  Bruno Haible  <bruno@clisp.org>
3960
3961         * modules/wcwidth (Files): Add m4/wchar_t.m4.
3962
3963 2006-06-28  Bruno Haible  <bruno@clisp.org>
3964
3965         * m4/wcwidth.m4 (gl_FUNC_WCWIDTH): Also require AC_C_INLINE and
3966         gt_TYPE_WCHAR_T.
3967
3968 2006-06-28  Bruno Haible  <bruno@clisp.org>
3969
3970         * lib/wcwidth.h: Declare nothing if !HAVE_WCHAR_T. Provide a fallback
3971         declaration for wcwidth.
3972         * lib/mbswidth.c: Restore the includes of <wchar.h> and <wctypes.h>.
3973
3974 2006-06-28  Bruno Haible  <bruno@clisp.org>
3975
3976         * lib/mkdtemp.c [MINGW]: Include <io.h>.
3977         (mkdir): Define using _mkdir.
3978
3979 2006-06-28  Bruno Haible  <bruno@clisp.org>
3980
3981         * lib/getaddrinfo.h: Fix POSIX URL.
3982         * lib/getaddrinfo.c (WIN32_NATIVE): New macro. Use it instead of _WIN32.
3983         (use_win32_p): Make static.
3984         (getaddrinfo): Reject service name if it is empty or does not consist
3985         solely of decimal digits, or if its value is > 65535.
3986         (getnameinfo): Remove useless casts.
3987
3988 2006-06-27  Simon Josefsson  <jas@extundo.com>
3989
3990         * modules/sys_select: New file, suggested by Bruno Haible, Paul
3991         Eggert and Martin Lambers.
3992
3993 2006-06-27  Simon Josefsson  <jas@extundo.com>
3994
3995         * m4/sys_select_h.m4: New file, suggested by Bruno Haible, Paul
3996         Eggert and Martin Lambers.
3997
3998 2006-06-27  Bruno Haible  <bruno@clisp.org>
3999
4000         * m4/stdint.m4 (gl_STDINT_BITSIZEOF): For nonexistent types, set the
4001         result to 0, not to empty.
4002         Reported by Martin Neitzel <neitzel@sco.gaertner.de>.
4003
4004 2006-06-27  Bruno Haible  <bruno@clisp.org>
4005
4006         * lib/stdint_.h (intmax_t, uintmax_t): Undefine before typedef.
4007
4008 2006-06-26  Simon Josefsson  <jas@extundo.com>
4009
4010         * m4/inet_ntop.m4: Don't check for sys/types.h, we assume it is
4011         present.
4012
4013 2006-06-26  Paul Eggert  <eggert@cs.ucla.edu>
4014
4015         * lib/base64.c (B64): Use _ as the formal parameter, not x, to avoid
4016         bug in IBM C V6 for AIX.  Problem reported by Larry Jones in
4017         <http://lists.gnu.org/archive/html/bug-gnulib/2006-06/msg00181.html>.
4018
4019 2006-06-26  Mark D. Baushke  <mdb@gnu.org>
4020
4021         * m4/stdint.m4 (gl_STDINT_H): Treat BSD/OS like OpenBSD.
4022
4023 2006-06-26  Bruno Haible  <bruno@clisp.org>
4024
4025         * modules/stdint (Makefile.am): Also substitute HAVE_WCHAR_H.
4026
4027 2006-06-26  Bruno Haible  <bruno@clisp.org>
4028
4029         * m4/stdint.m4 (gl_STDINT_H): Test also for <wchar.h>.
4030
4031 2006-06-26  Bruno Haible  <bruno@clisp.org>
4032
4033         * m4/stdint.m4 (gl_STDINT_H): Don't include <stdint.h> when using the
4034         SGI C compiler in pre-C99 mode.
4035         Suggested by Mark D. Baushke and Larry Jones.
4036
4037 2006-06-26  Bruno Haible  <bruno@clisp.org>
4038
4039         * lib/stdint_.h: Include <wchar.h> if necessary for WCHAR_MIN or
4040         WCHAR_MAX.
4041         Reported by Mark D. Baushke and Larry Jones.
4042
4043 2006-06-26  Bruno Haible  <bruno@clisp.org>
4044
4045         * lib/stdint_.h: Don't include <stdint.h> when using the SGI C compiler
4046         in pre-C99 mode.
4047         Suggested by Mark D. Baushke and Larry Jones.
4048
4049 2006-06-23  Simon Josefsson  <jas@extundo.com>
4050             Bruno Haible  <bruno@clisp.org>
4051
4052         * gnulib-tool (func_emit_lib_Makefile_am): Define MOSTLYCLEANDIRS.
4053         Emit mostlyclean-local rule.
4054         (func_emit_tests_Makefile_am): Likewise.
4055         * modules/sys_socket (Makefile.am): Use MOSTLYCLEANDIRS.
4056
4057 2006-06-23  Mark D. Baushke  <mdb@gnu.org>
4058
4059         * lib/stdint_.h: Treat BSD/OS like OpenBSD.
4060
4061 2006-06-23  Bruno Haible  <bruno@clisp.org>
4062
4063         * tests/test-stdint.c: Update to match ISO C 99 Technical
4064         Corrigendum 1.
4065
4066 2006-06-23  Bruno Haible  <bruno@clisp.org>
4067
4068         * m4/stdint.m4 (gl_STDINT_H): Treat IRIX like OpenBSD.
4069
4070 2006-06-23  Bruno Haible  <bruno@clisp.org>
4071
4072         * lib/stdint_.h: Treat IRIX like OpenBSD.
4073
4074 2006-06-23  Bruno Haible  <bruno@clisp.org>
4075
4076         * lib/stdint_.h (UINT8_C, UINT16_C, UINT32_C): Define according to
4077         ISO C 99 Technical Corrigendum 1.
4078
4079 2006-06-22  Simon Josefsson  <jas@extundo.com>
4080
4081         * m4/sockpfaf.m4: Include winsock2.h too, to make it work under
4082         MinGW.
4083
4084 2006-06-22  Paul Eggert  <eggert@cs.ucla.edu>
4085
4086         * lib/glob.c (collated_compare): Remove 'const' uses that weren't needed.
4087         Some compiler complained about some of them.  Problem reported by
4088         Larry Jones in
4089         <http://lists.gnu.org/archive/html/bug-gnulib/2006-06/msg00172.html>.
4090
4091 2006-06-21  Simon Josefsson  <jas@extundo.com>
4092
4093         * tests/test-getaddrinfo.c: New file.
4094
4095         * modules/getaddrinfo-tests: New file.
4096
4097         * MODULES.html.sh: Add inet_pton.
4098
4099         * modules/inet_pton: New file.
4100
4101 2006-06-21  Simon Josefsson  <jas@extundo.com>
4102
4103         * m4/getaddrinfo.m4: Don't define WINVER.  Look for gethostbyname in
4104         -lws2_32 too.  Fixes getaddrinfo on Windows 2000, with the price
4105         of using the (limited) gnulib implementation on Windows XP.
4106
4107         * m4/inet_pton.m4: New file.
4108
4109 2006-06-21  Simon Josefsson  <jas@extundo.com>
4110
4111         * lib/getaddrinfo.c (getaddrinfo): Set ai_family in the return
4112         variable.
4113
4114         * lib/socket_.h: Don't define WINVER.
4115
4116         * lib/inet_pton.h, inet_pton.c: New file, taken from glibc but
4117         slightly modified to work in gnulib.
4118
4119 2006-06-21  Simon Josefsson  <jas@extundo.com>
4120
4121         * doc/gnulib.texi (Windows sockets): Add.
4122
4123 2006-06-21  Paul Eggert  <eggert@cs.ucla.edu>
4124
4125         * lib/read-file.c (fread_file): Start with buffer allocation of
4126         0 bytes rather than 1 byte; this simplifies the code.
4127         Don't invoke feof; it's not needed.  Refactor to avoid duplicate
4128         code to free buffer and save/restore errno.
4129         (internal_read_file): Remove unused local.
4130
4131 2006-06-20  Paul Eggert  <eggert@cs.ucla.edu>
4132
4133         * lib/openat.c (openat): Use ?:, not if, to work around GCC bug 4210
4134         <http://gcc.gnu.org/bugzilla/show_bug.cgi?id=4210>.
4135         Problem reported by Denis Excoffier in
4136         <http://lists.gnu.org/archive/html/bug-tar/2006-06/msg00023.html>.
4137
4138 2006-06-19  Yoann Vandoorselaere <yoann.v@prelude-ids.com>
4139
4140         * modules/sys_socket, modules/socklen: Include sys/types since
4141         FreeBSD 4.x's sys/socket.h needs it.
4142
4143 2006-06-19  Simon Josefsson  <jas@extundo.com>
4144
4145         * lib/inet_ntop.c: Always build inet_ntop4, since inet_ntop6 calls it.
4146
4147 2006-06-19  Paul Eggert  <eggert@cs.ucla.edu>
4148
4149         * lib/alloca_.h (alloca) [defined alloca]: Don't define or declare.
4150
4151 2006-06-19  Bruno Haible  <bruno@clisp.org>
4152
4153         * m4/stdint.m4 (gl_STDINT_H): Enclose the values of FULL_PATH_STDINT_H
4154         and FULL_PATH_INTTYPES_H in angle brackets.
4155         Reported by Mark D. Baushke <mdb@gnu.org>.
4156
4157 2006-06-17  Eric Blake  <ebb9@byu.net>
4158
4159         * m4/rmdir-errno.m4 (gl_FUNC_FMDIR_NOTEMPTY): Assume errno.h declares
4160         errno.
4161
4162 2006-06-17  Bruno Haible  <bruno@clisp.org>
4163
4164         * m4/stdint.m4 (gl_STDINT_H) [FreeBSD >= 5]: Don't include
4165         <sys/inttypes.h>.
4166
4167 2006-06-17  Bruno Haible  <bruno@clisp.org>
4168
4169         * m4/setenv.m4 (gl_PREREQ_SETENV, gl_PREREQ_UNSETENV): Remove test
4170         whether errno is declared. Assume <errno.h> declares errno.
4171
4172 2006-06-17  Bruno Haible  <bruno@clisp.org>
4173
4174         * lib/stdint_.h [FreeBSD >= 5]: Don't include <sys/inttypes.h>.
4175
4176 2006-06-17  Bruno Haible  <bruno@clisp.org>
4177
4178         * lib/stdint_.h (_UINT8_T, _UINT32_T, _UINT64_T): New macros. Fixes a
4179         problem on Solaris 2.5.1.
4180
4181 2006-06-16  Eric Blake  <ebb9@byu.net>
4182
4183         * lib/unsetenv.c [!defined errno]: Assume errno.h declares errno.
4184         * lib/unicodeio.c [!defined errno]: Likewise.
4185         * lib/strtol.c [!defined errno]: Likewise.
4186         * lib/strtod.c [!defined errno]: Likewise.
4187
4188 2006-06-15  Eric Blake  <ebb9@byu.net>
4189
4190         * m4/ssize_t.m4 (gt_TYPE_SSIZE_T): Work in spite of -Werror.
4191
4192 2006-06-15  Eric Blake  <ebb9@byu.net>
4193
4194         * config/srclist.txt (ssize_t.m4): Lose sync.
4195
4196 2006-06-15  Bruno Haible  <bruno@clisp.org>
4197
4198         * modules/stdint (Files): Include m4/full-header-path.m4,
4199         m4/size_max.m4, m4/wchar_t.m4.
4200         (Makefile.am): Many more substitutions.
4201         * modules/stdint-tests: New file.
4202         * tests/test-stdint.c: New file.
4203
4204 2006-06-15  Bruno Haible  <bruno@clisp.org>
4205
4206         * m4/stdint.m4 (gl_STDINT_H): Rewritten to produce a complete stdint.h.
4207         (gl_HEADER_STDINT_H, gl_HEADER_INTTYPES_H, gl_STDINT_CHECK_TYPES,
4208         gl_STDINT_MISSING_BOUND, gl_STDINT_MISSING_BOUNDS,
4209         gl_STDINT_MISSING_BOUNDS2, gl_STDINT_BITSIZEOF, gl_CHECK_TYPES_SIGNED,
4210         gl_CHECK_TYPE_SAME): New macros.
4211
4212 2006-06-15  Bruno Haible  <bruno@clisp.org>
4213
4214         * m4/size_max.m4 (gl_SIZE_MAX): Make it work also when cross-compiling.
4215
4216 2006-06-15  Bruno Haible  <bruno@clisp.org>
4217
4218         * lib/stdint_.h: Rewritten to be fully auto-configured.
4219         Fixes bug on HP-UX/IA64.
4220
4221 2006-06-11  Paul Eggert  <eggert@cs.ucla.edu>
4222
4223         * lib/getdate.y (__attribute__): Don't define if already defined.
4224         Problem reported by Larry Jones.
4225         * lib/utimens.c (__attribute__): Likewise.
4226
4227 2006-06-04  Paul Eggert  <eggert@cs.ucla.edu>
4228
4229         * lib/regexec.c (group_nodes_into_DFAstates): Fix a buffer overrun
4230         reported by Andreas Schwab.
4231
4232 2006-05-30  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
4233             Bruno Haible  <bruno@clisp.org>
4234
4235         * m4/strndup.m4 (gl_FUNC_STRNDUP): Replace the AC_REPLACE_FUNCS with a
4236         check for the declaration of strnlen and a run test that exposes the
4237         AIX 5.1 strnlen bug.  In the failure case, #define strndup to
4238         rpl_strndup.
4239
4240 2006-05-30  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
4241             Bruno Haible  <bruno@clisp.org>
4242
4243         * lib/strndup.c (strndup) [!_LIBC]: Don't undefine macro definition.
4244
4245 2006-05-28  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
4246
4247         * m4/c-strtod.m4 (gl_C99_STRTOLD): Use a link test rather than a
4248         compile test, for Tru64 4.0D.
4249
4250 2006-05-28  Karl Berry  <karl@gnu.org>
4251
4252         * config/srclist.txt (printf-args.c): lose sync.
4253
4254 2006-05-26  Martin Lambers  <marlam@marlam.de>
4255
4256         * lib/getpass.c: Updates the test for the native W32 API, and adds
4257         missing includes, thus fixing compilation warnings.
4258
4259 2006-05-25  Sergey Poznyakoff  <gray@gnu.org.ua>
4260
4261         * lib/exclude.c (exclude_fnmatch): New function.
4262         (excluded_file_name): Call exclude_fnmatch.
4263         * lib/exclude.h (excluded_file_name): New prototype
4264
4265 2006-05-25  Paul Eggert  <eggert@cs.ucla.edu>
4266
4267         * lib/tempname.c (small_open, large_open): New macros.
4268         (__open, __open64) [!_LIBC]: Remove.
4269         (__gen_tempname): Use small_open and large_open instead of __open
4270         and __open64.  This fixes a portability bug on HP-UX 11.11i
4271         reported by Simon Wing-Tang in
4272         <http://lists.gnu.org/archive/html/bug-coreutils/2006-05/msg00114.html>.
4273
4274 2006-05-24  Bruno Haible  <bruno@clisp.org>
4275
4276         * lib/printf-args.c (printf_fetchargs): Turn NULL pointers for
4277         TYPE_STRING and TYPE_WIDE_STRING into a non-NULL replacement.
4278         Reported by Thorsten Maerz <torte@netztorte.de> via
4279         Aaron Stone <aaron@serendipity.cx>.
4280
4281 2006-05-19  Paul Eggert  <eggert@cs.ucla.edu>
4282
4283         * m4/nanosleep.m4 (gl_FUNC_NANOSLEEP): Rename cache variables to use
4284         gl_ rather than jm_.  Link, don't run, so that cross-compiles are
4285         allowed.  Check that resulting type is arithmetic.  Move AC_REQUIRE
4286         and AC_CHECK_HEADERS_ONCE outside of AC_CACHE_CHECK, since they're
4287         not really conditional on the cache.
4288         (gl_PREREQ_NANOSLEEP): Check for sys/select.h.
4289
4290 2006-05-19  Paul Eggert  <eggert@cs.ucla.edu>
4291
4292         * lib/nanosleep.c [HAVE_SYS_SELECT_H]: Include <sys/select.h>.
4293         Use the usual Autoconf way to include <time.h> and/or sys/time.h.
4294         (my_usleep): Don't mishandle maximum value.
4295
4296 2006-05-19  Jim Meyering  <jim@meyering.net>
4297
4298         * lib/getugroups.c: Correct an outdated comment.  From Bruno Haible.
4299
4300 2006-05-17  Bruno Haible  <bruno@clisp.org>
4301
4302         Cygwin portability.
4303         * lib/classpath.c (PATH_SEPARATOR) [CYGWIN]: Define as ':'.
4304
4305 2006-05-17  Bruno Haible  <bruno@clisp.org>
4306
4307         * lib/stdint_.h: Fix recognition of Cygwin.
4308
4309 2006-05-15  Bruno Haible  <bruno@clisp.org>
4310
4311         * build-aux/config.rpath: Improve support for Sun C 5.9 on Linux, based
4312         on libtool patch by Ralf Wildenhues.
4313
4314 2006-05-14  Paul Eggert  <eggert@cs.ucla.edu>
4315
4316         * m4/stdbool.m4 (AC_HEADER_STDBOOL): Fix overly-picky
4317         test for C99 conformance; (bool) 0.5 is an integer constant
4318         expression, but (bool) -0.5 is not.  Problem reported by Fedor
4319         Sergeev in <http://forum.sun.com/jive/thread.jspa?threadID=96202>.
4320
4321 2006-05-11  Simon Josefsson  <jas@extundo.com>
4322
4323         * m4/xvasprintf.m4: Fix obvious typo.
4324
4325 2006-05-11  Jim Meyering  <jim@meyering.net>
4326
4327         * lib/sha1.c (sha1_buffer): Correct comment: s/MD5/SHA1/.  From James Lemley.
4328
4329 2006-05-10  Simon Josefsson  <jas@extundo.com>
4330
4331         * lib/md4.c: Typo fix, update copyright years.
4332         (K1, K2): Don't use L because it turn computations into 64-bit on
4333         64-bit platforms.
4334
4335 2006-05-10  Paul Eggert  <eggert@cs.ucla.edu>
4336
4337         * lib/crc.c (crc32_update): Remove unnecessary L suffix.
4338         * lib/md4.c (rol): Cast right-shift arg to uint32_t to prevent
4339         unwanted sign propagation, e.g., on hosts with 64-bit int.
4340         There still are some problems with reeelly weird theoretical hosts
4341         (e.g., 33-bit int) but it's not worth worrying about now.
4342         * lib/sha1.c (rol): Likewise.
4343         (K1, K2, K3, K4): Remove unnecessary L suffix.
4344
4345 2006-05-10  Bruno Haible  <bruno@clisp.org>
4346
4347         * lib/des.c: Cast to avoid warnings.
4348
4349 2006-05-09  Bruno Haible  <bruno@clisp.org>
4350
4351         * modules/xvasprintf (Files): Add m4/xvasprintf.m4.
4352         (Depends-on): Depend also on xsize, stdarg.
4353         (configure.ac): Add gl_XVASPRINTF.
4354
4355 2006-05-09  Bruno Haible  <bruno@clisp.org>
4356
4357         * m4/xvasprintf.m4: New file.
4358
4359 2006-05-09  Bruno Haible  <bruno@clisp.org>
4360
4361         * lib/xvasprintf.c: Include limits.h, string.h, xsize.h.
4362         (EOVERFLOW): Define fallback value.
4363         (xstrcat): New function.
4364         (xvasprintf): Recognize the special case of a string concatenation.
4365
4366 2006-05-08  Eric Blake  <ebb9@byu.net>
4367
4368         * gnulib-tool (func_version): Base copyright year on CVS date.
4369         (func_emit_copyright_notice): New function.
4370         (func_emit_lib_Makefile_am): Use it.
4371         (func_emit_tests_Makefile_am): Likewise.
4372         (func_import): Likewise.
4373
4374 2006-05-08  Bruno Haible  <bruno@clisp.org>
4375
4376         * modules/stdarg: New file.
4377         * MODULES.html.sh (func_all_modules): Add section for <stdarg.h>.
4378
4379 2006-05-08  Bruno Haible  <bruno@clisp.org>
4380
4381         * m4/stdarg.m4: New file, from GNU gettext.
4382
4383 2006-05-08  Bruno Haible  <bruno@clisp.org>
4384
4385         * config/srclist.txt (build-aux/config.rpath): different from latest release.
4386
4387 2006-05-08  Bruno Haible  <bruno@clisp.org>
4388
4389         * build-aux/config.rpath: Add support for Sun C 5.9 on Linux.
4390
4391 2006-05-05  Jim Meyering  <jim@meyering.net>
4392
4393         * m4/warning.m4: New file, derived from bison's file by the same name.
4394
4395 2006-05-03  Bruno Haible  <bruno@clisp.org>
4396
4397         * lib/stdint_.h: Shorter URL.
4398         * lib/inttypes.h: Likewise.
4399
4400 2006-05-02  Paul Eggert  <eggert@cs.ucla.edu>
4401
4402         * modules/inttypes (Maintainer): Change from Derek Price to 'all'.
4403
4404 2006-05-02  Paul Eggert  <eggert@cs.ucla.edu>
4405
4406         * lib/verify.h: Document the internals better.  Most of this change
4407         was written by Bruno Haible.
4408
4409 2006-05-02  Paul Eggert  <eggert@cs.ucla.edu>
4410
4411         * doc/verify.texi: New file, partly based on a proposal by Bruno Haible.
4412
4413 2006-05-02  Bruno Haible  <bruno@clisp.org>
4414
4415         * m4/full-header-path.m4 (gl_FULL_HEADER_PATH): Move the include_next
4416         test from here...
4417         * m4/_inttypes_h.m4 (gl_INTTYPES_H): ... to here.
4418
4419 2006-04-29  Bruno Haible  <bruno@clisp.org>
4420
4421         * lib/gcd.c: Use WORD_T and GCD instead of unsigned long and gcd.
4422         Suggested by Oskar Liljeblad <oskar@osk.mine.nu>.
4423
4424 2006-04-29  Bruno Haible  <bruno@clisp.org>
4425
4426         * gnulib-tool: Make --update option actually work.
4427
4428 2006-04-29  Bruno Haible  <bruno@clisp.org>
4429
4430         * doc/gcd.texi: New file.
4431         * doc/gnulib.texi: Include it.
4432
4433 2006-04-25  Paul Eggert  <eggert@cs.ucla.edu>
4434
4435         * lib/getdate.y (get_date): When adding relative date, start with the
4436         initial time, not with the result of the first mktime call.
4437
4438 2006-04-25  Bruno Haible  <bruno@clisp.org>
4439
4440         * gnulib-tool (func_import): Output the include directives in three
4441         blocks, sorted separately.
4442         Reported by Ben Pfaff <blp@cs.stanford.edu>.
4443
4444 2006-04-24  Paul Eggert  <eggert@cs.ucla.edu>
4445
4446         * m4/unlink-busy.m4 (gl_FUNC_UNLINK_BUSY_TEXT): Use prototype
4447         to define main with arguments, for C++.  Reported by Eric Blake.
4448         * m4/c-stack.m4 (AC_SYS_XSI_STACK_OVERFLOW_HEURISTIC):
4449         Prefer 'int main ()' to 'int main (void)', for C++.
4450         * m4/getcwd-path-max.m4 (gl_FUNC_GETCWD_PATH_MAX): Likewise.
4451         * m4/fsusage.m4 (gl_FILE_SYSTEM_USAGE): Specify a return type
4452         for 'main', for C99 and C++.
4453
4454 2006-04-24  Paul Eggert  <eggert@cs.ucla.edu>
4455
4456         * m4/fsusage.m4 (gl_FILE_SYSTEM_USAGE): Use return, not exit.
4457         Don't assume that exit status -1 is valid.
4458         * m4/nanosleep.m4 (gl_FUNC_NANOSLEEP): Likewise.
4459         * m4/putenv.m4 (gl_FUNC_PUTENV): Likewise.
4460         * m4/rmdir-errno.m4 (gl_FUNC_RMDIR_NOTEMPTY): Likewise.
4461         * m4/readdir.m4 (GL_FUNC_READDIR): Include <stdlib.h>.
4462         * m4/rename.m4 (vb_FUNC_RENAME): Likewise.
4463         * m4/unlink-busy.m4 (gl_FUNC_UNLINK_BUSY_TEXT): Use AC_RUN_IFELSE,
4464         not AC_TRY_RUN.  Use return, not exit.  Don't assume that
4465         functions can be used without declaring them, or that you can
4466         exit with status -1.
4467         * m4/utimes-null.m4 (gl_FUNC_UTIMES_NULL): Likewise.
4468
4469 2006-04-24  Karl Berry  <karl@gnu.org>
4470
4471         * config/srclist.txt (longdouble.m4): sync lost.
4472
4473 2006-04-24  Eric Blake  <ebb9@byu.net>
4474
4475         * m4/strerror_r.m4 (AC_FUNC_STRERROR_R): Avoid unused variable warning.
4476
4477 2006-04-24  Bruno Haible  <bruno@clisp.org>
4478
4479         * m4/poll.m4 (gl_FUNC_POLL): When cross-compiling, reject also the poll()
4480         implementation in AIX.
4481         Reported by Ralf Wildenhues <Ralf.Wildenhues@gmx.de>.
4482
4483 2006-04-24  Bruno Haible  <bruno@clisp.org>
4484
4485         * m4/poll.m4 (gl_FUNC_POLL): Rearrange code, so that POLL_H gets
4486         assigned exactly once.
4487
4488 2006-04-23  Claudio Fontana  <claudio@gnu.org>
4489             Bruno Haible  <bruno@clisp.org>
4490
4491         * modules/gettext (Makefile.am): Add a -I flag for <libintl.h>.
4492         * gnulib-tool (func_emit_lib_Makefile_am): Emit empty default value
4493         for AM_CPPFLAGS.
4494
4495 2006-04-23  Bruno Haible  <bruno@clisp.org>
4496
4497         * modules/copy-file: Depend on unistd.
4498         * modules/execute: Likewise.
4499         * modules/fatal-signal: Likewise.
4500         * modules/findprog: Likewise.
4501         * modules/mkdtemp : Likewise.
4502         * modules/pipe: Likewise.
4503         * modules/wait-process: Likewise.
4504
4505 2006-04-23  Bruno Haible  <bruno@clisp.org>
4506
4507         * lib/fwriteerror.c (fwriteerror): Call fclose also when an error
4508         condition was already detected.
4509         Reported by Ben Pfaff <blp@cs.stanford.edu>.
4510
4511 2006-04-23  Bruno Haible  <bruno@clisp.org>
4512
4513         * lib/copy-file.c: Include <unistd.h> unconditionally.
4514         * lib/execute.c: Likewise.
4515         * lib/fatal-signal.c: Likewise.
4516         * lib/findprog.c: Likewise.
4517         * lib/mkdtemp.c: Likewise.
4518         * lib/pipe.h: Likewise.
4519         * lib/pipe.c: Likewise.
4520         * lib/wait-process.h: Likewise.
4521
4522 2006-04-23  Bruno Haible  <bruno@clisp.org>
4523
4524         * gnulib-tool (func_usage): Fix --import description. Document --update.
4525         (func_import): Create temporary file in a temporary directory, if
4526         --dry-run is specified. Silence errors from 'grep' when there are no
4527         m4 files in $m4dir.
4528         (func_create_testdir): Silence errors from 'grep' when there are no
4529         m4 files in $m4dir.
4530         Reported by Karl Berry <karl@freefriends.org>.
4531
4532 2006-04-20  Bruno Haible  <bruno@clisp.org>
4533
4534         * m4/argp.m4 (gl_ARGP): Don't call AC_CHECK_DECLS_ONCE with more than
4535         one argument, so that the code will be portable to Autoconf 2.60.
4536         * m4/getlogin_r.m4 (gl_PREREQ_GETLOGIN_R): Likewise.
4537         * m4/getpass.m4 (gl_PREREQ_GETPASS): Likewise.
4538         * m4/unlocked-io.m4 (gl_FUNC_GLIBC_UNLOCKED_IO): Likewise.
4539
4540 2006-04-19  Derek Price  <derek@ximbiot.com>
4541             Eric Blake  <ebb9@byu.net>
4542
4543         * m4/full-header-path.m4 (gl_FULL_HEADER_PATH): Use </full/path.h> rather
4544         than "/full/path.h".  Update comment to match.  Shorten & generalize
4545         m4_translit call via AS_TR_CPP.
4546
4547 2006-04-19  Derek Price  <derek@ximbiot.com>
4548             Eric Blake  <ebb9@byu.net>
4549
4550         * lib/inttypes.h: Correct grammar in comment.
4551
4552 2006-04-18  Derek Price  <derek@ximbiot.com>
4553             Paul Eggert  <eggert@cs.ucla.edu>
4554
4555         * modules/inttypes: New file.
4556         * modules/strtoimax, modules/strtoumax: Depend on inttypes.
4557
4558 2006-04-18  Derek Price  <derek@ximbiot.com>
4559             Paul Eggert  <eggert@cs.ucla.edu>
4560
4561         * m4/_inttypes_h.m4, full-header-path.m4, include_next: New files.
4562
4563 2006-04-18  Derek Price  <derek@ximbiot.com>
4564             Paul Eggert  <eggert@cs.ucla.edu>
4565
4566         * lib/inttypes.h: New file.
4567         * lib/strtoimax.c: Assume <inttypes.h>.
4568
4569 2006-04-15  Paul Eggert  <eggert@cs.ucla.edu>
4570
4571         * lib/utimens.c (futimens): glibc futimesat messes up if /proc
4572         isn't mounted.  Problem reported by Kir Kolyshkin.
4573
4574 2006-04-13  Paul Eggert  <eggert@cs.ucla.edu>
4575
4576         * lib/regcomp.c (init_dfa): Don't use wchar_t or wctype_t if RE_ENABLE_I18N
4577         is not defined.  Problem reported by Mark D. Baushke via Derek R. Price.
4578         * lib/regex.h (RE_DUP_MAX): Update comment to match current implementation.
4579
4580 2006-04-12  Eric Blake  <ebb9@byu.net>
4581
4582         * modules/time_r (Makefile.am): Remove lib_SOURCES line, as this
4583         is now done automatically by the corresponding Autoconf macro.
4584
4585 2006-04-11  Paul Eggert  <eggert@cs.ucla.edu>
4586
4587         * m4/time_r.m4 (gl_TIME_R): Add AC_LIBSOURCES for time_r.c and time_r.h.
4588
4589 2006-04-09  Paul Eggert  <eggert@cs.ucla.edu>
4590
4591         Merge regex changes from libc, removing some of our
4592         POSIX-conformance changes that were rejected and redoing them in a
4593         less-intrusive way.
4594
4595         * lib/regcomp.c (re_compile_internal, init_dfa):
4596         Length arg is now size_t, not Idx.  All uses changed.
4597         (peek_token): Forward decl now says internal_function.
4598         (__re_error_msgid, __re_error_msgid_idx):
4599         Now static rather than extern with attribute_hidden.
4600         (re_compile_pattern) [!defined _LIBC]: Use K&R-style defn.
4601         For some reason libc prefers K&R style defns for external functions.
4602         (regerror) [!defined _LIBC]: Likewise.
4603         (re_set_syntax, re_compile_fastmap, regcomp, regfree, re_comp):
4604         (seek_collating_symbol_entry, lookup_collation_sequence_value):
4605         (build_range_exp, build_collating_symbol):
4606         Use K&R-style defn.
4607         (re_compile_fastmap): Use '\0' to memset, not 0.
4608         (utf8_sb_map): Make the calculations more obvious.
4609         (init_dfa, parse_bracket_exp, build_charclass_op):
4610         Call calloc and cast result, as glibc does.
4611         (init_word_char, fetch_token, peek_token, peek_token_bracket):
4612         (build_range_exp, build_collating_symbol):
4613         Now internal functions.
4614
4615         * lib/regex.c [!defined _LIBC]: Allow compiling with C++ compilers.
4616
4617         * lib/regex.h (__USE_GNU_REGEX): New macro.  Don't depend on
4618         _REGEX_SOURCE any more; depend on _GNU_SOURCE instead.
4619         Don't depend on VMS; depend on __VMS instead, for POSIX
4620         namespace cleanness.
4621         (regoff_t): Define to ssize_t, not long int.
4622
4623         Remove the REG_ macros named below.  Instead, make the old names
4624         (e.g., RE_BACKSLASH_ESCAPE_IN_LISTS) visible only if
4625         __USE_GNU_REGEX.
4626         (REG_BACKSLASH_ESCAPE_IN_LISTS):
4627         (REG_BK_PLUS_QM, REG_CHAR_CLASSES, REG_CONTEXT_INDEP_ANCHORS):
4628         (REG_CONTEXT_INDEP_OPS, REG_CONTEXT_INVALID_OPS):
4629         (REG_DOT_NEWLINE, REG_DOT_NOT_NULL, REG_HAT_LISTS_NOT_NEWLINE):
4630         (REG_INTERVALS, REG_LIMITED_OPS, REG_NEWLINE_ALT):
4631         (REG_NO_BK_BRACES, REG_NO_BK_PARENS, REG_NO_BK_REFS):
4632         (REG_NO_BK_VBAR, REG_NO_EMPTY_RANGES):
4633         (REG_UNMATCHED_RIGHT_PAREN_ORD, REG_NO_POSIX_BACKTRACKING):
4634         (REG_NO_GNU_OPS, REG_DEBUG, REG_INVALID_INTERVAL_ORD):
4635         (REG_IGNORE_CASE, REG_CARET_ANCHORS_HERE):
4636         (REG_CONTEXT_INVALID_DUP, REG_NO_SUB, REG_SYNTAX_EMACS):
4637         (REG_SYNTAX_AWK, REG_SYNTAX_GNU_AWK, REG_SYNTAX_POSIX_AWK):
4638         (REG_SYNTAX_GREP, REG_SYNTAX_EGREP, REG_SYNTAX_POSIX_EGREP):
4639         (REG_SYNTAX_ED, REG_SYNTAX_SED, _REG_SYNTAX_POSIX_COMMON):
4640         (REG_SYNTAX_POSIX_BASIC, REG_SYNTAX_POSIX_MINIMAL_BASIC):
4641         (REG_SYNTAX_POSIX_EXTENDED, REG_SYNTAX_POSIX_MINIMAL_EXTENDED):
4642         (REG_DUP_MAX, REG_UNALLOCATED, REG_REALLOCATE, REG_FIXED):
4643         (REG_NREGS):
4644         Remove.  All uses replaced by the old RE_* names.
4645         (RE_BACKSLASH_ESCAPE_IN_LISTS):
4646         (RE_BK_PLUS_QM, RE_CHAR_CLASSES, RE_CONTEXT_INDEP_ANCHORS):
4647         (RE_CONTEXT_INDEP_OPS, RE_CONTEXT_INVALID_OPS):
4648         (RE_DOT_NEWLINE, RE_DOT_NOT_NULL, RE_HAT_LISTS_NOT_NEWLINE):
4649         (RE_INTERVALS, RE_LIMITED_OPS, RE_NEWLINE_ALT):
4650         (RE_NO_BK_BRACES, RE_NO_BK_PARENS, RE_NO_BK_REFS):
4651         (RE_NO_BK_VBAR, RE_NO_EMPTY_RANGES):
4652         (RE_UNMATCHED_RIGHT_PAREN_ORD, RE_NO_POSIX_BACKTRACKING):
4653         (RE_NO_GNU_OPS, RE_DEBUG, RE_INVALID_INTERVAL_ORD):
4654         (RE_IGNORE_CASE, RE_CARET_ANCHORS_HERE):
4655         (RE_CONTEXT_INVALID_DUP, RE_NO_SUB):
4656         Don't bother having these macros be independent of each others'
4657         values, since they no longer exist in the POSIX name space.
4658
4659         Rename the following member names back to their old names,
4660         unless !__USE_GNU_REGEX.  All uses changed back.
4661         (buffer): Renamed from re_buffer.
4662         (allocated): Renamed from re_allocated.
4663         (used): Renamed from re_used.
4664         (syntax): Renamed from re_syntax.
4665         (fastmap): Renamed from re_fastmap.
4666         (translate): Renamed from re_translate.
4667         (can_be_null): Renamed from re_can_be_null.
4668         (regs_allocated): Renamed from re_regs_allocated.
4669         (fastmap_accurate): Renamed from re_fastmap_accurate.
4670         (no_sub): Renamed from re_no_sub.
4671         (not_bol): Renamed from re_not_bol.
4672         (not_eol): Renamed from re_not_eol.
4673         (newline_anchor): Renamed from re_newline_anchor.
4674         (num_regs): Renamed from rm_num_regs.
4675         (start): Renamed from rm_start.
4676         (end): Renamed from rm_end.
4677
4678         (free_state): Move up a bit.
4679
4680         * lib/regex_internal.h (inline) [__GNUC__ < 3 && defined _LIBC]:
4681         #define to be empty.
4682         (ASCII_CHARS): New macro, replacing all uses of 0x80 and/or SBC_MAX / 2
4683         when that is what is intended.
4684         (SBC_MAX): Define to UCHAR_MAX + 1, not 256.
4685         (__re_error_msgid, __re_error_msgid_idx): Remove decls; not needed.
4686         (MAX): New macro.
4687         (re_xmalloc, re_calloc, re_xrealloc, re_x2realloc): Remove.
4688         All uses changed back to re_malloc, etc.  It's now the caller's
4689         responsibility to check for overflow; all callers changed.
4690         (re_alloc_oversized, re_x2alloc_oversized, re_xnmalloc, re_xnrealloc):
4691         (re_x2nrealloc): Remove.
4692         (free_state): Remove decl.
4693
4694         * lib/regexc.c (regexec, re_match, re_search, re_match_2, re_search_2):
4695         (re_set_registers, re_exec):
4696         Use K&R-style defn.
4697
4698         2006-01-31  Roland McGrath  <roland@redhat.com>
4699
4700         * lib/regcomp.c (calc_eclosure_iter): Remove dead variables.
4701         Reported by Mike Frysinger <vapier@gentoo.org>.
4702
4703         2006-01-15  Andreas Jaeger  <aj@suse.de>
4704
4705         [BZ #1950]
4706         * lib/regex_internal.c (re_string_reconstruct): Adjust for
4707         build_wcs_upper_buffer change.
4708         (build_wcs_upper_buffer): Change return type.
4709
4710         2005-12-10  Ulrich Drepper  <drepper@redhat.com>
4711
4712         * lib/regex_internal.h: Include <stdint.h> if available.
4713
4714         2005-12-06  Paolo Bonzini  <bonzini@gnu.org>
4715
4716         * lib/regex_internal.h (SIZE_MAX): Provide a default definition.
4717
4718         2005-10-14  Ulrich Drepper  <drepper@redhat.com>
4719
4720         * lib/regcomp.c: Adjust for changed secondary hash function.
4721
4722         2005-09-30  Ulrich Drepper  <drepper@redhat.com>
4723
4724         * lib/regex.h: Pretty printing.
4725         Clean up namespace a bit.
4726
4727         2005-09-30  Jakub Jelinek  <jakub@redhat.com>
4728
4729         * lib/regexec.c (update_cur_sifted_state, check_arrival,
4730         check_arrival_add_next_nodes): Avoid using uninitialized variable.
4731
4732         2005-09-06  Paul Eggert  <eggert@cs.ucla.edu>
4733                     Ulrich Drepper  <drepper@redhat.com>
4734
4735         [BZ #1302]
4736         * lib/regex_internal.h (bitset_t): Renamed from bitset.  All uses changed.
4737         (bitset_word_t): Renamed from bitset_word.  All uses changed.
4738
4739         2005-09-22  Ulrich Drepper  <drepper@redhat.com>
4740
4741         [BZ #281]
4742         * lib/regex.h: Define RE_TRANSLATE_TYPE as unsigned char *.
4743         * lib/regcomp.c: Remove unnecessary uses of
4744         unsigned RE_TRANSLATE_TYPE.
4745         * lib/regex_internal.h: Likewise.
4746         * lib/regex_internal.c: Likewise.
4747         * lib/regexec.c: Likewise.
4748         Based on a patch by Stepan Kasal <kasal@ucw.cz>.
4749
4750         2005-09-07  Ulrich Drepper  <drepper@redhat.com>
4751
4752         * lib/regexec.c (find_recover_state): Remove unnecessary
4753         initialization.
4754         (transit_state_bkref): Make DFA a const pointer.
4755         (get_subexp): Likewise.
4756         (check_arrival): Likewise.
4757         (update_cur_sifted_state): Likewise.
4758         (re_search_internal): Likewise.
4759         (prune_impossible_nodes): Likewise.
4760         (acquire_init_state_context): Likewise.
4761         (proceed_next_node): Likewise.
4762         (set_regs): Likewise.
4763         (free_fail_stack_return): Likewise.
4764         (check_arrival_expand_ecl): Mark DFA parameter as const.
4765         (check_arrival_expand_ecl_sub): Likewise.
4766         (check_subexp_limits): Likewise.
4767         (sub_epsilon_src_nodes):  Likewise.
4768         (add_epsilon_src_nodes):  Likewise.
4769         (merge_state_array): Likewise.
4770         (update_regs): Likewise.
4771         (build_trtable): Likewise.
4772         (sift_states_backward): Mark MCTX parameter as const.
4773         (build_sifted_states): Likewise.
4774         (update_cur_sifted_state): Likewise.
4775         (sift_states_mkref): Likewise.
4776         (check_arrival_expand_ecl): Mark eclosure as const.
4777         (check_dst_limits_calc_pos_1): Likewise.
4778         * lib/regex_internal.h (re_match_context_t): Make dfa a const
4779         pointer.
4780
4781         2005-09-06  Ulrich Drepper  <drepper@redhat.com>
4782
4783         * lib/regexec.c (merge_state_with_log): Define dfa as const pointer.
4784         (transit_state_sb): Likewise.
4785         (transit_state_mb): Likewise.
4786         (sift_states_iter_mb): Likewise.
4787         (check_arrival_add_next_nodes): Likewise.
4788         (check_node_accept_bytes): Change first parameter to pointer-to-const.
4789         [_LIBC] (re_search_2_stub): Use mempcpy.
4790
4791         * lib/regex_internal.c (re_string_reconstruct): Avoid calling
4792         mbrtowc for very simple UTF-8 case.
4793
4794         * lib/regex_internal.c (re_acquire_state): Make DFA pointer arg
4795         a pointer-to-const.
4796         (re_acquire_state_context): Likewise.
4797         * lib/regex_internal.h: Adjust prototypes.
4798
4799         * lib/regex.c: Prevent using C++ compilers.
4800
4801         * lib/regex_internal.c (re_acquire_state): Minor code rearrangement.
4802         (re_acquire_state_context): Likewise.
4803
4804 2006-04-09  Paul Eggert  <eggert@cs.ucla.edu>
4805
4806         * modules/regex (Depends-on): Add ssize_t.
4807
4808 2006-04-09  Paul Eggert  <eggert@cs.ucla.edu>
4809
4810         * m4/regex.m4 (gl_REGEX): Check for new glibc interface to
4811         translation table.
4812
4813 2006-04-09  Paul Eggert  <eggert@cs.ucla.edu>
4814
4815         * doc/gnulib-tool.texi (Modified imports): pathname -> file name.
4816
4817 2006-03-29  Mark D. Baushke  <mdb@gnu.org>
4818             Bruno Haible  <bruno@clisp.org>
4819
4820         * lib/stdint_.h: On OpenBSD, don't redefine types already included in
4821         <sys/types.h> and <inttypes.h>.
4822
4823 2006-03-25  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
4824
4825         * m4/argz.m4 (gl_FUNC_ARGZ): If we define `error_t', also define
4826         `__error_t_defined', so argp.h will not typedef the former.
4827
4828 2006-03-25  Paul Eggert  <eggert@cs.ucla.edu>
4829
4830         * m4/regex.m4 (gl_REGEX): Don't insist on REG_SYNTAX_POSIX_EGREP,
4831         REG_SYNTAX_EMACS, and REG_IGNORE_CASE.  Settle for the traditional
4832         glibc names.  Even if glibc is changed to conform to POSIX, the
4833         traditional names will be available anyway, since regex depends on
4834         the extensions module.  Also, fix a longstanding typo in the
4835         implementation of Spencer ERE test #75 from grep 2.3.  Problems
4836         reported by Emanuele Giaquinta.  Also, change sense of cached
4837         variable, so that the message makes sense.
4838
4839 2006-03-24  Simon Josefsson  <jas@extundo.com>
4840
4841         * lib/base64.c: Fix problems reported by Eric Blake <ebb9@byu.net>,
4842         including some doc fixes.
4843         (base64_encode_alloc): Fix +1 bug on allocation failures.
4844
4845 2006-03-24  Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
4846
4847         * lib/base64.c (base64_encode): Do not read past end of array with
4848         unsanitized input on systems with CHAR_BIT > 8.
4849
4850 2006-03-24  Eric Blake  <ebb9@byu.net>
4851
4852         * lib/time_r.c (copy_string_result): Remove, as it is no longer used.
4853
4854 2006-03-22  Karl Berry  <karl@gnu.org>
4855
4856         * config/srclist.txt (*setenv.[ch]): get from coreutils.
4857         * config/srclistvars.sh (COREUTILS): new var.
4858
4859 2006-03-17  Jim Meyering  <jim@meyering.net>
4860
4861         * m4/regex.m4 (gl_REGEX): Fix typo in last change:
4862         s/_REGEX_WIDE_OFFSETS/_REGEX_LARGE_OFFSETS/.
4863
4864 2006-03-16  Paul Eggert  <eggert@cs.ucla.edu>
4865
4866         * m4/regex.m4 (gl_REGEX): Don't check for off_t, since the code
4867         no longer needs it.  Instead, check that regoff_t is as least
4868         as wide as ptrdiff_t.
4869
4870         Don't define _REGEX_WIDE_OFFSETS unless using the included regex,
4871         so that our regex.h stays compatible with the installed regex.
4872         This is helpful for installers who configure --without-included-regex.
4873         Problem reported by Emanuele Giaquinta.
4874
4875 2006-03-16  Paul Eggert  <eggert@cs.ucla.edu>
4876
4877         * lib/regex.h (regoff_t) [defined _REGEX_LARGE_OFFSETS]:
4878         Typedef to long int, not to off_, as POSIX will likely change
4879         in that direction.
4880
4881 2006-03-15  Eric Blake  <ebb9@byu.net>
4882
4883         * m4/dirfd.m4 (gl_FUNC_DIRFD): Use AC_REQUIRE for AC_HEADER_DIRENT.
4884
4885 2006-03-13  Sergey Poznyakoff  <gray@gnu.org.ua>
4886
4887         * lib/argp-help.c (validate_uparams): Fix typo
4888         * lib/argp-parse.c (argp_default_options): Consistently begin help
4889         messages with a lowercase letter.
4890
4891 2006-03-11  Paul Eggert  <eggert@cs.ucla.edu>
4892
4893         * lib/time_r.h (asctime_r, ctime_r): Remove.  These functions can
4894         overrun buffers and shouldn't be used (much as gets shouldn't be
4895         used).
4896         * lib/time_r.c (asctime_r, ctime_r): Likewise.
4897
4898 2006-03-08  Simon Josefsson  <jas@extundo.com>
4899
4900         * m4/gc-random.m4: Permit 'no' as variable values and fix warnings,
4901         suggested by Ralf Wildenhues <Ralf.Wildenhues@gmx.de>.
4902
4903 2006-03-08  Simon Josefsson  <jas@extundo.com>
4904
4905         * m4/gc-random.m4: Call AC_CANONICAL_HOST and use $host_os instead of
4906         $target, suggested by Ralf Wildenhues <Ralf.Wildenhues@gmx.de>.
4907
4908 2006-03-08  Simon Josefsson  <jas@extundo.com>
4909
4910         * lib/gc-gnulib.c (randomize): Don't open files called 'no', they
4911         signal that configure disabled the device.
4912
4913 2006-03-08  Simon Josefsson  <jas@extundo.com>
4914
4915         * build-aux/maint.mk: Fix refresh-po, to handle no translated
4916         languages.
4917
4918 2006-03-07  Simon Josefsson  <jas@extundo.com>
4919
4920         * modules/getopt (Depends-on): Add unistd.
4921
4922         * modules/unistd: New file.
4923
4924 2006-03-07  Simon Josefsson  <jas@extundo.com>
4925
4926         * modules/gc-random: New file.
4927
4928 2006-03-07  Simon Josefsson  <jas@extundo.com>
4929
4930         * m4/unistd_h.m4: New file.
4931
4932 2006-03-07  Simon Josefsson  <jas@extundo.com>
4933
4934         * m4/readline.m4 (gl_FUNC_READLINE): Rewrite the cached part of the
4935         test to be side-effect free by storing the result in the cache
4936         variable gl_cv_lib_readline, and moving the assignment of
4937         LIBREADLINE and LTLIBREADLINE outside the COMMANDS-TO-SET-IT.
4938         From Ralf Wildenhues <Ralf.Wildenhues@gmx.de>.
4939
4940 2006-03-07  Simon Josefsson  <jas@extundo.com>
4941
4942         * m4/gc-random.m4: New file, mostly from gc.m4.  Warn instead of
4943         error on missing devices (the functions will return an error).
4944
4945         * m4/gc.m4: Move random stuff to gc-random.m4
4946
4947 2006-03-07  Simon Josefsson  <jas@extundo.com>
4948
4949         * lib/unistd_.h: New file.
4950
4951 2006-03-07  Simon Josefsson  <jas@extundo.com>
4952
4953         * lib/gc-libgcrypt.c, gc-gnulib.c: Use GC_USE_RANDOM.
4954
4955 2006-03-07  Paul Eggert  <eggert@cs.ucla.edu>
4956
4957         * m4/unistd_h.m4 (gl_HEADER_UNISTD): Rename, to match modules file.
4958         Problem reported by Juan Manuel Guerrero.
4959
4960 2006-03-07  Paul Eggert  <eggert@cs.ucla.edu>
4961
4962         * lib/c-stack.c: Include unistd.h unconditionally, since we now assume
4963         the unistd module.
4964         * lib/getlogin_r.c: Likewise.
4965         * lib/getlogin_r.h: Likewise.
4966         * lib/glob.c: Likewise.
4967         * lib/pagealign_alloc.c: Likewise.
4968         * lib/unistd_.h: Remove; no longer needed.
4969
4970 2006-03-07  Paul Eggert  <eggert@cs.ucla.edu>
4971
4972         * MODULES.html.sh (Support for systems lacking POSIX:2001):
4973         Add unistd.
4974         * modules/c-stack (Depends-on): Add unistd.
4975         * modules/getlogin_r: Likewise.
4976         * modules/glob: Likewise.
4977         * modules/pagealign_alloc: Likewise.
4978         * modules/unistd (Files): Remove lib/unistd_.h.
4979         (EXTRA_DIST): Remove.
4980         (unistd.h): Create using 'echo' rather than 'cp', so that we don't
4981         need unistd_.h.
4982         (MOSTLYCLEANFILES): Remove unistd.h-t.
4983
4984 2006-03-03  Simon Josefsson  <jas@extundo.com>
4985
4986         * build-aux/maint.mk: Add several syntax checks from CoreUtils.
4987
4988 2006-03-03  Simon Josefsson  <jas@extundo.com>
4989
4990         * build-aux/maint.mk: Add refresh-po rule, based on ideas from
4991         libidn and bison.
4992
4993 2006-03-03  Simon Josefsson  <jas@extundo.com>
4994
4995         * build-aux/maint.mk: Add indent target.
4996
4997 2006-03-03  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de> (tiny change)
4998
4999         * m4/poll.m4 (gl_FUNC_POLL): If we deem poll(2) unacceptable, use
5000         our replacement poll.h in any case, to avoid a differing
5001         declaration from a system header.  Seen on AIX.
5002
5003 2006-03-01  Simon Josefsson  <jas@extundo.com>
5004
5005         * lib/readline.c: Fix typo, tiny patch from Stepan Kasal
5006         <kasal@ucw.cz>.
5007
5008 2006-03-01  Paul Eggert  <eggert@cs.ucla.edu>
5009
5010         * modules/gettime (Depends-on): Add extensions module.
5011         * modules/nanosleep (Depends-on): Likewise.
5012         * modules/settime (Depends-on): Likewise.
5013
5014 2006-03-01  Paul Eggert  <eggert@cs.ucla.edu>
5015
5016         * m4/clock_time.m4 (gl_CLOCK_TIME): Require gl_USE_SYSTEM_EXTENSIONS,
5017         not merely AC_GNU_SOURCE, for the benefit of Solaris 10 when compiled
5018         pedantically.
5019         * m4/nanosleep.m4 (gl_FUNC_NANOSLEEP): Likewise.
5020         * m4/timespec.m4 (gl_TIMESPEC): Likewise.
5021
5022         * m4/extensions.m4 (gl_USE_SYSTEM_EXTENSIONS): Use "=" with "test",
5023         not "==".  Reported by Ralf Wildenhues.
5024
5025 2006-03-01  Karl Berry  <karl@gnu.org>
5026
5027         * doc/Copyright/request-*: new files, synced from gnuorg.
5028
5029 2006-03-01  Karl Berry  <karl@gnu.org>
5030
5031         * config/srclist.txt (Copyright/*): new entries.
5032
5033 2006-02-28  Simon Josefsson  <jas@extundo.com>
5034
5035         * lib/getopt.c: Protect #include of unistd.h, for MSVS.
5036
5037 2006-02-27  Simon Josefsson  <jas@extundo.com>
5038
5039         * lib/base64.h: Indent #define's.  From Jim Meyering
5040         <jim@meyering.net>.
5041
5042 2006-02-27  Jim Meyering  <jim@meyering.net>
5043
5044         Revert the change of 2006-02-24, so these files can continue
5045         to be sync'd from gettext.
5046         * lib/mkdtemp.c, setenv.c, unsetenv.c: *Un*-normalize inclusion
5047         of `config.h'.
5048
5049 2006-02-26  Paul Eggert  <eggert@cs.ucla.edu>
5050
5051         * modules/intprops: New file.
5052         * MODULES.html.sh (Numeric conversion functions <stdlib.h>):
5053         Add intprops.
5054         * modules/getloadavg (Files): Remove lib/intprops.h.
5055         (Depends-on): Add intprops.
5056         * modules/human: Likewise.
5057         * modules/inttostr: Likewise.
5058         * modules/openat: Likewise.
5059         * modules/sig2str: Likewise.
5060         * modules/userspec: Likewise.
5061         * modules/utimecmp: Likewise.
5062         * modules/xnanosleep: Likewise.
5063         * modules/xstrtol: Likewise.
5064
5065 2006-02-24  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>  (tiny changes)
5066
5067         * modules/xstrtod: Omit xstrtod.h, xstrtod.c; they're in LIB_SOURCES.
5068         * modules/lock-tests (TESTS): Use $(EXEEXT).
5069         * modules/tls-tests: Likewise.
5070         * modules/argp-tests: Likewise.
5071         (check_PROGRAMS): New var, replacing...
5072         (noinst_PROGRAMS, test_argp_SOURCES): Remove.
5073
5074 2006-02-24  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
5075
5076         * lib/mkdtemp.c, setenv.c, unsetenv.c: Normalize inclusion of `config.h'.
5077
5078 2006-02-24  Paul Eggert  <eggert@cs.ucla.edu>
5079
5080         * lib/glob.c: Say "invalid" rather than "illegal" in comments.
5081
5082 2006-02-22  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
5083
5084         Sync from coreutils.
5085         * m4/mkdir-p.m4 (gl_MKDIR_PARENTS): Require gl_FUNC_LCHMOD and
5086         gl_CHDIR_SAFER.
5087
5088 2006-02-22  Jim Meyering  <jim@meyering.net>
5089
5090         Sync from coreutils.
5091         * m4/chdir-safer.m4: New file.
5092
5093 2006-02-20  Paul Eggert  <eggert@cs.ucla.edu>
5094
5095         * lib/getcwd.c (AT_FDCWD): Work around a bug in Solaris 9 and 10, where
5096         AT_FDCWD exceeds INT_MAX.
5097         * lib/openat.h (AT_FDCWD): Likewise.
5098
5099 2006-02-17  Eric Blake  <address@hidden>
5100
5101         * m4/getaddrinfo.m4 (gl_GETADDRINFO): Fix caching error.
5102
5103 2006-02-16  Simon Josefsson  <jas@extundo.com>
5104
5105         * modules/getaddrinfo (Depends-on): Add sys_socket.
5106
5107 2006-02-15  Simon Josefsson  <jas@extundo.com>
5108
5109         * build-aux/maint.mk: Add dsyntax-check rule.
5110
5111 2006-02-15  Eric Blake  <ebb9@byu.net>
5112
5113         * m4/sys_socket_h.m4 (gl_HEADER_SYS_SOCKET): Don't attempt using
5114         winsock2.h or ws2tcpip.h when sys/socket.h is present. Fixes
5115         'present but cannot compile' warnings on cygwin.
5116         * m4/socklen.m4 (gl_TYPE_SOCKLEN_T): Use gl_HEADER_SYS_SOCKET.  Don't
5117         use ws2tcpip.h if sys/socket.h works.
5118         * m4/getaddrinfo.m4 (gl_PREREQ_GETADDRINFO): Use gl_HEADER_SYS_SOCKET.
5119         (gl_GETADDRINFO): Don't use ws2tcpip.h when sys/socket.h is present.
5120
5121 2006-02-14  Simon Josefsson  <jas@extundo.com>
5122
5123         * modules/maintainer-makefile (Files): Rename.
5124
5125         * build-aux/GNUmakefile: Rename Makefile.maint to maint.mk
5126         and (the local) Makefile.cfg to maint-cfg.mk.
5127
5128         * build-aux/Makefile.maint, build-aux/maint.mk: Renamed the former
5129         to the latter.
5130
5131         * modules/maintainer-makefile: New module.
5132
5133         * build-aux/Makefile.maint: New file, from GNU CoreUtils, although
5134         severaly stripped to make it possible to build it up from scratch
5135         with reliable tests.
5136
5137         * build-aux/GNUmakefile: New file, from GNU CoreUtils with some
5138         fixes to permit overriding the default actions when configure and
5139         makefile are not available.
5140
5141 2006-02-14  Paul Eggert  <eggert@cs.ucla.edu>
5142
5143         Sync from coreutils.
5144         * modules/lstat (Depends-on): Don't depend on xalloc.
5145         (License): Change from GPL to LGPL, since this is now simply a
5146         replacement for a libc function.
5147
5148 2006-02-14  Jim Meyering  <jim@meyering.net>
5149
5150         Sync from coreutils.
5151
5152         Eliminate the unwelcome (albeit unlikely) possibility of xmalloc
5153         failure on deficient systems, and simplify gnulib lgpl dependencies.
5154         * lib/lstat.c (rpl_lstat): Rewrite to use stat() in place of the
5155         xmalloc/lstat combination.  Based on a patch from Bruno Haible.
5156
5157         * lib/xalloc-die.c: Remove unused definition of N_.
5158
5159 2006-02-14  Jim Meyering  <jim@meyering.net>
5160
5161         Sync from coreutils.
5162         * m4/ls-mntd-fs.m4 (AC_FUNC_GETMNTENT): Invoke AC_CHECK_FUNCS(getmntent)
5163         unconditionally so that tests of $ac_cv_func_getmntent (e.g., in
5164         gl_LIST_MOUNTED_FILE_SYSTEMS) need not double-quote uses of that
5165         variable, to accommodate the rare case in which getmntent is
5166         available in none of the libraries checked.  This happens at
5167         least on FreeBSD 5.0.
5168
5169 2006-02-13  Simon Josefsson  <jas@extundo.com>
5170
5171         * gnulib-tool (Usage): Fix --import, from
5172         karl@freefriends.org (Karl Berry).
5173
5174 2006-02-13  Sergey Poznyakoff  <gray@gnu.org.ua>
5175
5176         * lib/argp-fmtstream.c: Restore another bugfix lost on 2005-12-12
5177
5178 2006-02-07  Sergey Poznyakoff  <gray@gnu.org.ua>
5179
5180         * lib/argp-namefrob.h: Restore changes accidentally lost during the
5181         "autoupdate" on 2005-12-12.
5182
5183 2006-02-07  Paul Eggert  <eggert@cs.ucla.edu>
5184
5185         * modules/closeout (Depends-on): Remove atexit.
5186
5187 2006-02-07  Paul Eggert  <eggert@cs.ucla.edu>
5188
5189         * lib/closeout.c (close_stdout): Don't assume 'bool' converts nonzero
5190         ints to 0 or 1, as this isn't true for the stdbool.h substitute.
5191
5192 2006-02-05  Paul Eggert  <eggert@cs.ucla.edu>
5193
5194         * m4/extensions.m4 (gl_USE_SYSTEM_EXTENSIONS): Don't #define
5195         __EXTENSIONS__ if this causes compilation to fail.  Problem
5196         reported by Nelson H. F. Beebe with Solaris 10 and Sun C 5.7
5197         c89 -D_XOPEN_SOURCE -D_XOPEN_SOURCE_EXTENDED.
5198
5199 2006-01-27  Paul Eggert  <eggert@cs.ucla.edu>
5200
5201         * lib/fnmatch.c (L_): Renamed from L, to work around a bug in
5202         Mac OS X 10.3.9 with GCC 3 reported by Claudio Fontana in
5203         <http://lists.gnu.org/archive/html/bug-gnulib/2006-01/msg00074.html>.
5204         All uses changed.
5205
5206 2006-01-26  Simon Josefsson  <jas@extundo.com>
5207
5208         * lib/socket_.h: Set WINVER to 0x0501, to make sure getaddrinfo
5209         prototype is visible on mingw32.
5210
5211         * lib/getaddrinfo.h: Define EAI_ADDRFAMILY and EAI_SYSTEM if not set,
5212         for mingw32.
5213
5214         * lib/gai_strerror.c, getaddrinfo.h: Protect netdb.h #include (for
5215         mingw32).
5216
5217 2006-01-26  Paul Eggert  <eggert@cs.ucla.edu>
5218
5219         * lib/fts.c (diropen): Open with O_NOCTTY | O_NONBLOCK too.  Don't
5220         attempt to open for write; this always fails, at least on POSIX
5221         hosts.  This reinstates the 2006-01-09 change, which was
5222         inadvertently removed.
5223
5224 2006-01-26  Bruno Haible  <bruno@clisp.org>
5225
5226         * gnulib-tool (func_import): Use "trap 'exit $?' instead of "trap :".
5227         Reported by Paul Eggert.
5228
5229 2006-01-26  Bruno Haible  <bruno@clisp.org>
5230             Paul Eggert  <eggert@cs.ucla.edu>
5231
5232         * lib/stdbool_.h (_Bool)
5233         [(! (defined __cplusplus || defined __BEOS__)
5234           && !defined __GNUC__
5235           && !(defined __HP_cc || defined __xlc__
5236                || (defined __SUNPRO_C && (__SUNPRO_C < 0x550 || __STDC__ == 1))
5237                || defined __sgi))]:
5238         #define to signed char in these cases too; this simplifies
5239         the code (so that we don't have to worry about HP-UX, AIX, SunPRO,
5240         etc., separately) and makes it more conservative.
5241
5242 2006-01-25  Simon Josefsson  <jas@extundo.com>
5243
5244         * m4/getaddrinfo.m4: Look for getaddrinfo inside ws2tcip.h and
5245         -lws2_32.  Protect sys/socket.h and netdb.h #include's.  Include
5246         ws2tcpip.h with WINVER=0x0501.  All for mingw32.
5247
5248 2006-01-25  Sergey Poznyakoff  <gray@gnu.org.ua>
5249
5250         * lib/argp-namefrob.h: Bugfix. Remove stray #
5251
5252 2006-01-25  Paul Eggert  <eggert@cs.ucla.edu>
5253
5254         * m4/stdbool.m4 (AC_HEADER_STDBOOL): Check for xlc bug if __GCC__ too,
5255         so that we test the test.
5256         Check for yet another HP-UX cc bug involving *bool |= bool.
5257
5258 2006-01-25  Karl Berry  <karl@gnu.org>
5259
5260         * config/srclist.txt (vasnprintf.c): sync lost.
5261
5262 2006-01-25  Jim Meyering  <jim@meyering.net>
5263
5264         Sync from the stable (b5) branch of coreutils:
5265
5266         * lib/fts.c (fts_children): Don't let close() clobber errno from
5267         failed fchdir().
5268
5269         * lib/fts.c (fts_stat): When following a symlink-to-directory,
5270         don't necessarily interpret stat-fails+lstat-succeeds as indicating
5271         a dangling symlink.  That can also happen at least for ELOOP.
5272         The fix: return FTS_SLNONE only when the stat errno is ENOENT.
5273         FYI, this bug predates the inclusion of fts.c in coreutils.
5274
5275         * lib/fts.c (fts_open): Put new maxarglen declaration and uses
5276         in their own block, so pre-c99 compilers don't object.
5277
5278         Avoid the double-free (first in fts_read, second in fts_close) that
5279         would occur when an `active' directory is made inaccessible (e.g.,
5280         via chmod a-x) during a traversal.
5281         * lib/fts.c (fts_read): After a failed fchdir, update sp->fts_cur
5282         before returning.  Reproduce this failure by
5283         mkdir -p a/b; cd a; chmod a-x . b
5284         Reported by Stavros Passas.
5285
5286 2006-01-25  Jim Meyering  <jim@meyering.net>
5287
5288         * lib/fileblocks.c: Remove more useless parentheses.
5289         * lib/readutmp.h: Likewise.
5290
5291 2006-01-25  Bruno Haible  <bruno@clisp.org>
5292
5293         * lib/stdbool_.h (_Bool) [IRIX cc]: Define as 'signed char', to avoid
5294         warnings.
5295         Reported by Paul Eggert.
5296
5297 2006-01-25  Bruno Haible  <bruno@clisp.org>
5298
5299         * gnulib-tool (func_import): Use "trap :" instead of "trap -" to get
5300         rid of a trap command. For Solaris sh.
5301         Reported by Mark D. Baushke <mdb@gnu.org>.
5302
5303 2006-01-24  Simon Josefsson  <jas@extundo.com>
5304
5305         * lib/socket_.h (SHUT_WR, SHUT_RDWR): Don't hardcode, suggested by
5306         Bruno.
5307
5308 2006-01-24  Karl Berry  <karl@gnu.org>
5309
5310         * config/srclist.txt (argp-namefrob.h): sync lost.
5311
5312 2006-01-24  Jim Meyering  <jim@meyering.net>
5313
5314         * modules/openat (Files): Add lib/intprops.h.
5315         From Mark D. Baushke.
5316
5317 2006-01-24  Jim Meyering  <jim@meyering.net>
5318
5319         * m4/openat.m4 (gl_FUNC_OPENAT): Add AC_LIBSOURCES([intprops.h]).
5320         Reported by Mark D. Baushke.
5321
5322 2006-01-24  Jim Meyering  <jim@meyering.net>
5323
5324         * lib/socket_.h: Remove useless parentheses in uses of cpp `defined'.
5325
5326 2006-01-24  Bruno Haible  <bruno@clisp.org>
5327
5328         * modules/strnlen (Maintainer): Change from glibc to all.
5329
5330 2006-01-24  Bruno Haible  <bruno@clisp.org>
5331
5332         * m4/stdbool.m4 (AC_HEADER_STDBOOL): Check for IBM and HP-UX bugs.
5333         Patch by Paul Eggert.
5334
5335 2006-01-24  Bruno Haible  <bruno@clisp.org>
5336
5337         * lib/stdbool_.h (_Bool) [__cplusplus]: Don't define if the compiler already
5338         has it.
5339         Report and patch by Albert Chin-A-Young  <china@thewrittenword.com> on
5340         2005-11-26.
5341
5342         * lib/stdbool_.h (_Bool) [HP-UX cc, AIX cc,xlc]: Define as 'signed char'
5343         to avoid problems with the built-in _Bool type.
5344         Reported by Paul Eggert on 2005-11-26.
5345
5346 2006-01-24  Bruno Haible  <bruno@clisp.org>
5347
5348         * gnulib-tool (func_import): Avoid constructing complicated sed
5349         expressions inside backquote.
5350         Report and solution by Mark D. Baushke <mdb@gnu.org>.
5351
5352 2006-01-23  Ulrich Drepper  <drepper@redhat.com>
5353
5354         These changes imported from libc.
5355         * lib/getopt.c: Use __fxprintf instead of inline stream orientation
5356         test and two separate function calls.
5357         * lib/strndup.c (__strndup): Add libc_hidden_def.
5358
5359 2006-01-23  Simon Josefsson  <jas@extundo.com>
5360
5361         * modules/lock-tests: Use check_PROGRAMS instead of noinst_PROGRAMS.
5362         Remove the test_*_SOURCES variable: automake infers it by default.
5363         * modules/tls-tests: Likewise.
5364
5365 2006-01-23  Paul Eggert  <eggert@cs.ucla.edu>
5366
5367         Work around porting bugs reported by Dieter in
5368         <http://lists.gnu.org/archive/html/bug-bison/2006-01/msg00049.html>.
5369         * lib/getopt.c (_NOPROTO): Remove; no longer needed.
5370         Include <stdlib.h> and <unistd.h> in all environments; it's safe now.
5371         Include "getopt.h" first, to check interface.
5372         (getenv): Declare only if defined HAVE_DECL_GETENV &&
5373         !HAVE_DECL_GETENV.
5374         * lib/strndup.c [!_LIBC]: Include "strndup.h" to get prototype.
5375         (__strndup): Revert to K&R-style function dfns, the glibc style.
5376         * lib/strnlen.c: Don't claim it's taken from glibc; it's not.
5377         (strnlen, __strnlen): Remove #defines and #undefs; not needed.
5378         Include strnlen.h first, to get prototype properly.
5379         (strnlen): Renamed from __strnlen.
5380         Remove weak alias.
5381
5382 2006-01-23  Paul Eggert  <eggert@cs.ucla.edu>
5383
5384         * m4/getopt.m4 (gl_PREREQ_GETOPT): Check for getenv decl.
5385
5386 2006-01-23  Paul Eggert  <eggert@cs.ucla.edu>
5387
5388         * config/srclist.txt: Adjust to reflect glibc reorganization.
5389         This affects only comments.
5390
5391 2006-01-22  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>  (tiny change)
5392
5393          * gnulib-tool, build-aux/csharpcomp.sh.in: Do not pass `-q' to mktemp.
5394          Reported by Bruce Korb <bkorb@gnu.org>.
5395
5396 2006-01-22  Paul Eggert  <eggert@cs.ucla.edu>
5397
5398         * lib/quotearg.c (quotearg_buffer_restyled): Add "default: break;"
5399         to pacify gcc -Wswitch-default.
5400
5401 2006-01-22  Bruno Haible  <bruno@clisp.org>
5402
5403         * lib/vasnprintf.c (VASNPRINTF): In the computation of the size of the
5404         temporary buffer for sprintf, take into account the precision also
5405         for 'd', 'i', 'u', 'o', 'x', 'X'.
5406
5407 2006-01-21  Sergey Poznyakoff  <gray@gnu.org.ua>
5408
5409         * modules/argp-tests: New module
5410         * tests/test-argp.c: New file
5411         * tests/test-argp-2.sh: New file
5412
5413 2006-01-21  Sergey Poznyakoff  <gray@gnu.org.ua>
5414
5415         * lib/argp-help.c (usage_long_opt): Do not print DOC options.
5416         (__argp_base_name): Removed
5417         * lib/argp-namefrob.h (__argp_basename): Removed definition. Was a
5418         typo.
5419         (__argp_base_name): Provide macro definition or extern declaration
5420         depending on the configuration
5421
5422 2006-01-20  Simon Josefsson  <jas@extundo.com>
5423
5424         * modules/inet_ntop (Depends-on): Depend on sys_socket.
5425
5426 2006-01-20  Simon Josefsson  <jas@extundo.com>
5427
5428         * lib/inet_ntop.h: Unconditionally include sys/socket.h.
5429
5430 2006-01-20  Paul Eggert  <eggert@cs.ucla.edu>
5431
5432         * m4/lib-ignore.m4 (gl_IGNORE_UNUSED_LIBRARIES): Use -Wl,-z,ignore
5433         rather than -Xlinker -z -Xlinker ignore, as it's more portable.
5434         Suggested by Bruno Haible.
5435
5436 2006-01-20  Karl Berry  <karl@gnu.org>
5437
5438         * config/srclist.txt (argp-fmtstream.h, localcharset.c): comment out
5439         until changes propagate, I guess.
5440
5441 2006-01-19  Simon Josefsson  <jas@extundo.com>
5442
5443         * m4/socklen.m4: Look in ws2tcpip.h too, for mingw32.
5444
5445 2006-01-19  Simon Josefsson  <jas@extundo.com>
5446
5447         * lib/socket_.h: Map SHUT_RD, SHUT_WR, SHUT_RDWR correctly.
5448
5449 2006-01-19  Simon Josefsson  <jas@extundo.com>
5450
5451         * gnulib-tool: Set check_PROGRAMS.
5452
5453         * modules/arcfour-tests, modules/arctwo-tests, modules/crc-tests,
5454         modules/des-tests, modules/gc-arcfour-tests,
5455         modules/gc-arctwo-tests, modules/gc-des-tests,
5456         modules/gc-hmac-md5-tests, modules/gc-hmac-sha1-tests,
5457         modules/gc-md2-tests, modules/gc-md4-tests, modules/gc-md5-tests,
5458         modules/gc-pbkdf2-sha1-tests, modules/gc-rijndael-tests,
5459         modules/gc-sha1-tests, modules/gc-tests, modules/hmac-md5-tests,
5460         modules/hmac-sha1-tests, modules/md2-tests, modules/md4-tests,
5461         modules/md5-tests, modules/readline, modules/rijndael-tests: Use
5462         check_PROGRAMS instead of noinst_PROGRAMS to be able to remove
5463         test_*_SOURCES.
5464
5465 2006-01-18  Simon Josefsson  <jas@extundo.com>
5466
5467         * modules/socklen (Depends-on): Depend on sys_socket.
5468
5469 2006-01-18  Simon Josefsson  <jas@extundo.com>
5470
5471         * modules/arcfour-tests, modules/arctwo-tests, modules/crc-tests,
5472         modules/des-tests, modules/gc-arcfour-tests,
5473         modules/gc-arctwo-tests, modules/gc-des-tests,
5474         modules/gc-hmac-md5-tests, modules/gc-hmac-sha1-tests,
5475         modules/gc-md2-tests, modules/gc-md4-tests, modules/gc-md5-tests,
5476         modules/gc-pbkdf2-sha1-tests, modules/gc-rijndael-tests,
5477         modules/gc-sha1-tests, modules/gc-tests, modules/hmac-md5-tests,
5478         modules/hmac-sha1-tests, modules/md2-tests, modules/md4-tests,
5479         modules/md5-tests, modules/readline, modules/rijndael-tests: Add
5480         $(EXEEXT) to automake TESTS variable, for mingw32.
5481
5482 2006-01-17  Simon Josefsson  <jas@extundo.com>
5483
5484         * modules/socklen (Include): Need sys/socket.h.
5485
5486 2006-01-17  Bruno Haible  <bruno@clisp.org>
5487
5488         * modules/ssize_t (Include): Add <sys/types.h>.
5489
5490 2006-01-16  Paul Eggert  <eggert@cs.ucla.edu>
5491
5492         * m4/lib-ignore.m4 (gl_IGNORE_UNUSED_LIBRARIES): Don't use ldd, as
5493         it's not portable and it doesn't work with cross-compiles.
5494         Problem reported by Bruno Haible.  Fix missing-$ typo in
5495         'test "gl_cv_ignore_unused_libraries" ...' that prevented
5496         -zignore from being used with Sun's C compiler.
5497
5498 2006-01-12  Simon Josefsson  <jas@extundo.com>
5499
5500         * lib/base64.c: Fix warning, reported by Bruno Haible
5501         <bruno@clisp.org> and patch by Paul Eggert <eggert@CS.UCLA.EDU>.
5502
5503 2006-01-12  Bruno Haible  <bruno@clisp.org>
5504
5505         * modules/ldd: New file.
5506         * build-aux/ldd.sh.in: New file.
5507         * MODULES.html.sh (Support for building libraries and executables): Add
5508         ldd.
5509
5510 2006-01-12  Bruno Haible  <bruno@clisp.org>
5511
5512         * m4/ldd.m4: New file.
5513
5514 2006-01-12  Bruno Haible  <bruno@clisp.org>
5515
5516         * gnulib-tool (func_import, func_create_testdir): Don't go into an
5517         endless loop while replacing $auxdir with build-aux.
5518
5519 2006-01-11  Simon Josefsson  <jas@extundo.com>
5520
5521         * lib/stdint_.h (SIZE_MAX): Add missing (.
5522
5523 2006-01-11  Paul Eggert  <eggert@cs.ucla.edu>
5524
5525         Sync from coreutils.
5526         * lib/md5.c: Fix commentary typos.
5527         (alignof, UNALIGNED_P): No need for a GCC-specific version.
5528         * lib/md5.h (__attribute__): Remove; unused.
5529         * lib/sha1.c: Fix commentary to match md5 better.
5530         * lib/sha1.h (struct sha1_ctx): Use a word buffer, not a byte buffer,
5531         so that we don't need to worry about alignment.  All uses changed.
5532         This merges the 2005-10-28 md5 change into sha1.
5533
5534 2006-01-11  Jim Meyering  <jim@meyering.net>
5535
5536         Sync from coreutils.
5537         * lib/md5.c (OP): Fix spacing.
5538
5539 2006-01-11  Bruno Haible  <bruno@clisp.org>
5540
5541         Ensure automatic ordering between gl_LOCK and gl_ARGP.
5542         * m4/lock.m4 (gl_LOCK_BODY): Renamed from gl_LOCK.
5543         (gl_LOCK): New macro, requiring gl_LOCK_BODY.
5544
5545 2006-01-11  Bruno Haible  <bruno@clisp.org>
5546
5547         Ensure automatic ordering between gl_LOCK and gl_ARGP.
5548         * gnulib-tool (func_import, func_create_testdir): Put gl_LOCK into
5549         the "early" section as well.
5550
5551 2006-01-11  Bruno Haible  <bruno@clisp.org>
5552
5553         Avoid "ar: no archive members specified" error on MacOS X.
5554         * gnulib-tool (func_modules_add_dummy): New function.
5555         (func_import, func_create_testdir): Invoke it.
5556
5557 2006-01-11  Bruno Haible  <bruno@clisp.org>
5558
5559         * gnulib-tool (func_import, func_create_testdir): Replace build-aux
5560         with $auxdir in AC_CONFIG_FILES statements.
5561
5562 2006-01-11  Bruno Haible  <bruno@clisp.org>
5563
5564         * gnulib-tool (func_emit_lib_Makefile_am, func_emit_tests_Makefile_am):
5565         Initialize also noinst_HEADERS to empty.
5566
5567 2006-01-11  Bruno Haible  <bruno@clisp.org>
5568
5569         * gnulib-tool (AUTOMAKEPATH, AUTOCONF, ACLOCAL, AUTOMAKE): New
5570         variables.
5571         (func_create_megatestdir): Call aclocal, autoconf, automake here, not
5572         autoreconf.
5573
5574 2006-01-11  Bruno Haible  <bruno@clisp.org>
5575
5576         * gnulib-tool (AUTOCONF, ACLOCAL, AUTOMAKE, AUTORECONF): Make
5577         overridable by the user.
5578         Reported by Ralf Wildenhues <Ralf.Wildenhues@gmx.de>.
5579
5580 2006-01-10  Simon Josefsson  <jas@extundo.com>
5581
5582         * modules/sys_socket: New file.
5583
5584 2006-01-10  Simon Josefsson  <jas@extundo.com>
5585
5586         * m4/sys_socket_h.m4: New file.
5587
5588 2006-01-10  Simon Josefsson  <jas@extundo.com>
5589
5590         * lib/socket_.h: New file.
5591
5592 2006-01-10  Paul Eggert  <eggert@cs.ucla.edu>
5593
5594         * modules/readutmp (Maintainer): Add myself.
5595
5596 2006-01-10  Paul Eggert  <eggert@cs.ucla.edu>
5597
5598         * m4/memcoll.m4 (gl_MEMCOLL): Don't require AC_FUNC_MEMCMP, undoing
5599         the 2002-12-31 change.  Problem and fix reported by Bruno Haible.
5600         People who are still concerned with buggy memcmp implementations
5601         can invoke gl_FUNC_MEMCMP themselves.
5602
5603 2006-01-10  Paul Eggert  <eggert@cs.ucla.edu>
5604
5605         * lib/regex_internal.h (BITSET_WORD_BITS):
5606         Work around a bug in 64-bit PGC (before version 6.1-2), where the
5607         preprocessor mishandles large unsigned values as if they were signed.
5608         Problem reported by Claudio Fontana in
5609         <http://lists.gnu.org/archive/html/bug-gnulib/2005-12/msg00061.html>.
5610
5611 2006-01-10  Jim Meyering  <jim@meyering.net>
5612
5613         Avoid the double-free (first in fts_read, second in fts_close) that
5614         would occur when an `active' directory is made inaccessible (e.g.,
5615         via chmod a-x) during a traversal.
5616         * lib/fts.c (fts_read): After a failed fchdir, update sp->fts_cur
5617         before returning.  Reproduce this failure by
5618         mkdir -p a/b; cd a; chmod a-x . b
5619         Reported by Stavros Passas.
5620
5621         Sync from coreutils.
5622         * lib/sha1.c: Tweak grammar in a comment.
5623
5624 2006-01-10  Jim Meyering  <jim@meyering.net>
5625
5626         * m4/fpending.m4: Also include <stdio.h>, for Dragonfly.
5627         Patch by Joerg Sonnenberger.
5628
5629 2006-01-10  Bruno Haible  <bruno@clisp.org>
5630
5631         * modules/readutmp: Depend on module free.
5632         * modules/strtok_r: Depend on module restrict.
5633
5634 2006-01-10  Bruno Haible  <bruno@clisp.org>
5635
5636         * modules/gettext (configure.ac): Add an invocation of
5637         AM_GNU_GETTEXT_VERSION. Needed since autoreconf is used by gnulib-tool.
5638
5639 2006-01-10  Bruno Haible  <bruno@clisp.org>
5640
5641         * m4/localcharset.m4 (gl_LOCALCHARSET): Also test for getc_unlocked.
5642         Reported by Werner Lemberg <wl@gnu.org>.
5643
5644 2006-01-10  Bruno Haible  <bruno@clisp.org>
5645
5646         * lib/localcharset.c: Update from GNU gettext.
5647
5648 2006-01-10  Bruno Haible  <bruno@clisp.org>
5649
5650         * lib/argp.h (__const): Remove macro. Use const instead.
5651         * lib/argp-fmtstream.h (__const): Likewise.
5652         * lib/glob_.h (__const): Remove macro.
5653         * lib/glob-libc.h: Use const instead of __const.
5654
5655 2006-01-10  Bruno Haible  <bruno@clisp.org>
5656
5657         * gnulib-tool (func_emit_tests_Makefile_am): Emit an empty SUBDIR
5658         variable.
5659         Needed to avoid an automake error regarding the 'gettext' module.
5660
5661 2006-01-09  Simon Josefsson  <jas@extundo.com>
5662
5663         * modules/inet_ntop (Depends-on): Add restrict.
5664
5665 2006-01-09  Simon Josefsson  <jas@extundo.com>
5666
5667         * modules/gc-rijndael-tests (License): Put under LGPL.
5668
5669         * modules/gc-des-tests (License): Likewise.
5670
5671         * modules/gc-arcfour-tests (License): Likewise.
5672
5673         * modules/gc-arctwo-tests (License): Likewise.
5674
5675         * modules/gc-pbkdf2-sha1-tests (License): Likewise.
5676
5677         * modules/gc-hmac-sha1-tests (Files): Likewise.
5678
5679         * modules/gc-hmac-md5-tests (License): Likewise.
5680
5681         * modules/gc-sha1-tests (License): Likewise.
5682
5683         * modules/gc-md5-tests (License): Likewise.
5684
5685         * modules/gc-md4-tests (License): Likewise.
5686
5687         * modules/gc-md2-tests (License): Likewise.
5688
5689         * modules/gc-tests (License): Likewise.
5690
5691         * modules/des-tests (License): Likewise.
5692
5693         * modules/md4-tests (License): Likewise.
5694
5695         * modules/md2-tests (License): Likewise.
5696
5697 2006-01-09  Paul Eggert  <eggert@cs.ucla.edu>
5698
5699         Sync from coreutils:
5700
5701         * MODULES.html.sh (build_lib): New section, with new lib-ignore module.
5702         * modules/lib-ignore: New file.
5703         * modules/mkdir-p (Files): Add chdir-safer.c, chdir-safer.h, lchmod.h,
5704         chdir-safer.m4, lchmod.m4.
5705         * modules/openat: Add mkdirat.c, openat-priv.h.
5706
5707 2006-01-09  Paul Eggert  <eggert@cs.ucla.edu>
5708
5709         Sync from coreutils.
5710         * m4/lib-ignore.m4: New file.
5711         * m4/lchmod.m4: New file.
5712
5713 2006-01-09  Paul Eggert  <eggert@cs.ucla.edu>
5714
5715         Sync from coreutils.
5716         * lib/chdir-long.c (cdb_free): Don't bother trying to open directory
5717         for write access: POSIX says that must fail.
5718         * lib/fts.c (diropen): Likewise.
5719         * lib/save-cwd.c (save_cwd): Likewise.
5720         * lib/chdir-long.c (cdb_free): Open with O_NOCTTY | O_NONBLOCK as
5721         well, for minor improvements on hosts that lack O_DIRECTORY.
5722         * lib/chown.c (rpl_chown) [CHOWN_MODIFIES_SYMLINK]:
5723         Don't try O_WRONLY unless O_RDONLY failed wth EACCES.
5724         Fall back on chown if open failed with EACCES.
5725
5726         * lib/gettime.c (gettime) [!defined OK_TO_USE_1S_CLOCK]:
5727         Report an error at compile-time if only a 1-second nominal clock
5728         resolution is found.
5729
5730         * lib/lchmod.h: New file.
5731         * lib/mkdir-p.c: Include lchmod.h, lchown.h.
5732         (make_dir_parents): Use lchown rather than chown, and
5733         lchmod rather than chmod.
5734
5735         * lib/mountlist.c (ME_DUMMY): "none" and "proc" file systems are dummies
5736         too.  Problem with "none" reported by Bob Proulx.  Problem with
5737         "proc" reported by n0dalus.
5738
5739         * lib/mountlist.c: Include <limits.h>.
5740         (dev_from_mount_options)
5741         [defined MOUNTED_GETMNTENT1 || defined MOUNTED_GETMNTENT2]:
5742         New function.  It no longer assumes "dev=" has the System V meaning
5743         on Linux (since it doesn't).  It also parses "dev=" more carefully.
5744         (read_file_system_list)
5745         [defined MOUNTED_GETMNTENT1 || defined MOUNTED_GETMNTENT2]: Use it.
5746         MOUNTED_GETMNTENT2 is new here; the code didn't used to look for
5747         dev= in that case.
5748
5749         * lib/posixtm.h (PDS_PRE_2000): New macro.
5750         * lib/posixtm.c (year): Arg is now syntax_bits rather than allow_century.
5751         All usages changed.  Reject dates outside the range 1969-1999 if
5752         PDS_PRE_2000 is used.
5753
5754 2006-01-09  Paul Eggert  <eggert@cs.ucla.edu>
5755
5756         Sync from coreutils.
5757         * doc/getdate.texi (General date syntax): Invalid dates are rejected.
5758         (Time of day items): Mention the possibility of leap seconds.
5759         Problem reported by Dr. David Alan Gilbert.
5760
5761 2006-01-09  Jim Meyering  <jim@meyering.net>
5762
5763         Sync from coreutils.
5764
5765         * lib/version-etc.c (COPYRIGHT_YEAR): Update to 2006.
5766
5767         * lib/chdir-safer.h, chdir-safer.c: New files.
5768
5769         * lib/modechange.c (mode_compile): Reject an invalid mode string
5770         that starts with an octal digit.  From Andreas Gruenbacher.
5771
5772         * lib/openat.c: Include "fcntl--.h" and "unistd--.h", to map open
5773         and dup to open_safer and dup_safer, respectively.
5774         (openat_permissive): Fix typo in comment.
5775
5776         * lib/openat.c: Don't include <stdlib.h>, <unistd.h>, <fcntl.h>,
5777         "gettext.h"; either no longer needed or are guaranteed by openat.h.
5778         (_): Remove; no longer needed.
5779         (openat): Renamed from rpl_openat; no need for rpl_openat
5780         since openat.h renames openat for us.
5781         Replace most of the body with a call to openat_permissive,
5782         to avoid duplicate code.
5783         Port to (probably hypothetical) environments were mode_t is
5784         wider than int.
5785         (openat_permissive): Require mode arg, so that we can check
5786         types better.  Put it just after flags.  Change cwd failure
5787         indicator from pointer-to-bool to pointer-to-errno-value.
5788         All callers changed.
5789         Invoke openat_save_fail and/or openat_restore_fail if
5790         cwd_errno is null, so that openat can call us.
5791         (openat_permissive, fdopendir, fstatat, unlinkat):
5792         Simplify errno handling to avoid some duplicate code,
5793         as it's OK to set errno on success.
5794         * lib/openat.h: Revamp code so that function macros depend on
5795         __OPENAT_PREFIX only, not also on AT_FDCWD.
5796         (openat_ro): Remove.  Caller changed to use openat_permissive.
5797         (openat_permissive): Now a macro, if not a function.
5798         (openat_restore_fail, openat_save_fail): Now always functions,
5799         since mkdirat needs them even if __OPENAT_PREFIX is defined.
5800
5801         * lib/openat-priv.h: New file, defining macros used by mkdirat.c
5802         and openat.c.
5803         * lib/mkdirat.c: Include openat-priv.h.
5804         Remove definitions of macros defined therein.
5805         * lib/openat.c: Likewise.
5806
5807         * lib/mkdirat.c (mkdirat): New file and function.
5808         * lib/openat.h (mkdirat): Declare.
5809
5810         * lib/openat.c (fdopendir): Don't change errno when returning non-NULL.
5811
5812         * lib/openat.h (openat_permissive): Declare.
5813         (openat_ro): Define.
5814
5815         * lib/openat.c (EXPECTED_ERRNO): New macro.
5816         (openat_permissive): New function -- used in remove.c rewrite.
5817         (all functions): Set errno just before returning, only if there
5818         was an actual failure.
5819         Use EXPECTED_ERRNO rather than comparing against only ENOTDIR.
5820
5821         Emulate openat-family functions using Linux's procfs, if possible.
5822         Idea and some code based on Ulrich Drepper's glibc changes.
5823
5824         * lib/openat.c: (BUILD_PROC_NAME): New macro.
5825         Include <stdio.h>, <string.h>, "alloca.h" and "intprops.h".
5826         (rpl_openat): Emulate by trying to open /proc/self/fd/%d/%s,
5827         before falling back on save_cwd and restore_cwd.
5828         (fdopendir, fstatat, unlinkat): Likewise.
5829
5830         * lib/openat.c (fstatat, unlinkat): Perform the syscall directly,
5831         skipping the save_cwd...restore_cwd overhead, if FILE is absolute.
5832
5833         * lib/openat.c (rpl_openat): Use the promoted type (int), not mode_t,
5834         as second argument to va_arg.  Otherwise, some versions of gcc
5835         warn that `if this code is reached, the program will abort'.
5836
5837 2006-01-09  Jim Meyering  <jim@meyering.net>
5838
5839         Sync from coreutils.
5840         * m4/openat.m4 (gl_FUNC_OPENAT): Require and compile mkdirat.c.
5841         Require openat-priv.h.
5842
5843 2006-01-09  Bruno Haible  <bruno@clisp.org>
5844
5845         * modules/strnlen (Include): Use strnlen.h.
5846
5847 2006-01-09  Bruno Haible  <bruno@clisp.org>
5848
5849         * m4/stdint.m4 (gl_STDINT_H): Also test for <sys/bitypes.h>.
5850
5851 2006-01-09  Bruno Haible  <bruno@clisp.org>
5852
5853         * lib/sysexit_.h (EX_OK): New macro.
5854         Suggested by Martin Lambers <marlam@marlam.de>.
5855
5856 2006-01-09  Bruno Haible  <bruno@clisp.org>
5857
5858         * lib/stdint_.h: On Linux libc4 and libc5, include <sys/bitypes.h> and
5859         don't define _STDINT_H_NEED_SIGNED_INT_TYPES.
5860
5861 2006-01-09  Bruno Haible  <bruno@clisp.org>
5862
5863         * lib/stdint_.h (SIZE_MAX): Write the value without involving negative
5864         numbers.
5865
5866 2006-01-09  Bruno Haible  <bruno@clisp.org>
5867
5868         * lib/javacomp.sh.in: Move to ../build-aux/javacomp.sh.in.
5869         * lib/javaexec.sh.in: Move to ../build-aux/javaexec.sh.in.
5870         * lib/csharpcomp.sh.in: Move to ../build-aux/csharpcomp.sh.in.
5871         * lib/csharpexec.sh.in: Move to ../build-aux/csharpexec.sh.in.
5872
5873 2006-01-09  Bruno Haible  <bruno@clisp.org>
5874
5875         * build-aux/javacomp.sh.in: New file, moved from lib/.
5876         * modules/javacomp-script (Files): Update.
5877         (configure.ac): Add AC_CONFIG_FILES invocation.
5878         (EXTRA_DIST): Remove variable.
5879
5880         * build-aux/javaexec.sh.in: New file, moved from lib/.
5881         * modules/javaexec (Files): Update.
5882         (configure.ac): Add AC_CONFIG_FILES invocation.
5883         (EXTRA_DIST): Remove javaexec.sh.in.
5884
5885         * build-aux/csharpcomp.sh.in: New file, moved from lib/.
5886         * modules/csharpcomp-script (Files): Update.
5887         (configure.ac): Add AC_CONFIG_FILES invocation.
5888         (EXTRA_DIST): Remove variable.
5889
5890         * build-aux/csharpexec.sh.in: New file, moved from lib/.
5891         * modules/csharpexec (Files): Update.
5892         (configure.ac): Add AC_CONFIG_FILES invocation.
5893         (EXTRA_DIST): Remove csharpexec.sh.in.
5894
5895 2006-01-09  Andreas Gruenbacher  <agruen@suse.de>
5896
5897         Sync from coreutils.
5898
5899         Add POSIX ACL support
5900         * lib/acl.h (copy_acl, set_acl): Add declarations.
5901         * lib/acl.c (acl_entries): Add fallback implementation for POSIX ACL
5902         systems other than Linux.
5903         (chmod_or_fchmod): New function: use fchmod when possible,
5904         and chmod otherwise.
5905         (file_has_acl): Add a POSIX ACL implementation, with a
5906         Linux-specific subcase.
5907         (copy_acl): Add: copy an acl and S_ISUID, S_ISGID, and
5908         S_ISVTX from one file to another.  Fall back to fchmod/chmod when
5909         acls are unsupported.
5910         (set_acl): Add: set a file's acl and S_ISUID, S_ISGID, and
5911         S_ISVTX to a defined value.  Fall back to fchmod/chmod when acls
5912         are unsupported.
5913
5914 2006-01-09  Andreas Gruenbacher  <agruen@suse.de>
5915
5916         Sync from coreutils.
5917         * m4/acl.m4 (AC_FUNC_ACL): Add POSIX ACL and Linux-specific acl tests.
5918
5919 2006-01-07  Bruno Haible  <bruno@clisp.org>
5920
5921         * gnulib-tool (func_import): Add an AC_PROG_RANLIB dependency to
5922         gl_EARLY.
5923
5924 2006-01-04  Paul Eggert  <eggert@cs.ucla.edu>
5925
5926         * lib/strftime.c (tzname): Don't declare if it is already #defined.
5927         Problem reported for Mingw by Mark Junker.
5928
5929 2006-01-04  Paul Eggert  <eggert@cs.ucla.edu>
5930
5931         * README: Gnulib normally doesn't generate a tarball.
5932
5933 2006-01-03  Paul Eggert  <eggert@cs.ucla.edu>
5934
5935         * lib/xtime.h (xtime_make, xtime_nonnegative_nsec, xtime_nsec): Use
5936         long int, not int, for nanosecond counts, so that people who are
5937         used to POSIX struct timespec won't be surprised.  Reported by Jim
5938         Meyering.
5939
5940 2005-12-28  Bruno Haible  <bruno@clisp.org>
5941
5942         * build-aux/config.rpath: Update from GNU gettext.
5943
5944 2005-12-16  Jim Meyering  <jim@meyering.net>
5945
5946         * modules/fprintftime: New module.
5947         * MODULES.html.sh (Date and time <time.h>): Add fprintftime.
5948
5949 2005-12-16  Jim Meyering  <jim@meyering.net>
5950
5951         * m4/fprintftime.m4: New file.
5952
5953 2005-12-16  Jim Meyering  <jim@meyering.net>
5954
5955         * lib/fprintftime.c, fprintftime.h: New files.
5956
5957 2005-12-15  Simon Josefsson  <jas@extundo.com>
5958
5959         * modules/socklen (configure.ac): Fix M4 macro name, to align with
5960         new m4/socklen.m4.
5961
5962 2005-12-10  Sergey Poznyakoff  <gray@gnu.org.ua>
5963
5964         * m4/argp.m4: Define HAVE_DECL_PROGRAM_INVOCATION_NAME and
5965         HAVE_DECL_PROGRAM_INVOCATION_SHORT_NAME
5966
5967 2005-12-10  Sergey Poznyakoff  <gray@gnu.org.ua>
5968
5969         * lib/argp-fmtstream.c (__argp_fmtstream_update): Fix coredump
5970         * lib/argp-help.c (fill_in_uparams): Check if the constructed
5971         struct uparams is valid. Fall back to the default values if it is
5972         not.
5973
5974 2005-12-09  Sergey Poznyakoff  <gray@gnu.org.ua>
5975
5976         * modules/argp (Files): Add argp-pin.c
5977         (Depends-on): dirname
5978         (lib_SOURCES): Add argp-pin.c
5979
5980 2005-12-09  Sergey Poznyakoff  <gray@gnu.org.ua>
5981
5982         * m4/argp.m4:  Check if program_invocation_name and
5983         program_invocation_short_name are declared and define appropriate
5984         macros if they are not.
5985
5986 2005-12-09  Sergey Poznyakoff  <gray@gnu.org.ua>
5987
5988         * lib/argp-help.c (__argp_base_name): New function
5989         (__argp_short_program_name): Rewrite using __argp_base_name
5990         * lib/argp-namefrob.h: Define program_invocation_name and
5991         program_invocation_short_name if requested
5992         (__argp_base_name): Add prototype
5993         * lib/argp-parse.c (argp_def): Use gettext wrappers
5994         (argp_default_parser): Use __argp_base_name
5995         * lib/argp-pin.c: New file. Defines program_invocation_name and
5996         program_invocation_short_name on systems that lack them.
5997
5998 2005-12-07  Paul Eggert  <eggert@cs.ucla.edu>
5999
6000         * m4/stat-time.m4 (gl_STAT_TIME): Add check for
6001         TYPEOF_STRUCT_STAT_ST_ATIM_IS_STRUCT_TIMESPEC, to fix IRIX 5.3
6002         porting problem reported by Georg Schwarz in
6003         <http://lists.gnu.org/archive/html/bug-coreutils/2005-12/msg00083.html>.
6004
6005 2005-12-07  Paul Eggert  <eggert@cs.ucla.edu>
6006
6007         * lib/stat-time.h (STATE_TIMESPEC, STAT_TIMESPEC_NS): Add check for
6008         TYPEOF_STRUCT_STAT_ST_ATIM_IS_STRUCT_TIMESPEC, to fix IRIX 5.3
6009         porting problem reported by Georg Schwarz in
6010         <http://lists.gnu.org/archive/html/bug-coreutils/2005-12/msg00083.html>.
6011
6012 2005-12-05  Bruno Haible  <bruno@clisp.org>
6013
6014         * lib/csharpcomp.sh.in (options_csc): For -l option, add a .dll suffix.
6015         * lib/csharpcomp.c (compile_csharp_using_sscli): Likewise.
6016         Reported by Mark Junker <mjscod@gmx.de>.
6017
6018 2005-12-02  Paul Eggert  <eggert@cs.ucla.edu>
6019
6020         * m4/socklen.m4 (gl_TYPE_SOCKLEN_T): Renamed from gl_SOCKLEN_T.
6021         Use implementation from Albert Chin, with some
6022         comments/corrections by Stepan Kasal and myself.
6023
6024 2005-12-02  Bruno Haible  <bruno@clisp.org>
6025
6026         * gnulib-tool (func_import): Accept GPLed build tool modules when
6027         --lgpl is given.
6028         * modules/csharpcomp-script: New file.
6029         * modules/csharpcomp: Depend on it.
6030         * modules/javacomp-script: New file.
6031         * modules/javacomp: Depend on it.
6032         Suggested by Simon Josefsson.
6033
6034 2005-12-01  Paul Eggert  <eggert@cs.ucla.edu>
6035
6036         * m4/regex.m4 (gl_REGEX): Check whether off_t can be used in a switch
6037         statement, to work around an HP-UX 10.20 compiler bug reported by
6038         Peter O'Gorman.
6039
6040 2005-11-29  Paul Eggert  <eggert@cs.ucla.edu>
6041
6042         * modules/savedir (Depends-on): Add openat.
6043
6044 2005-11-29  Paul Eggert  <eggert@cs.ucla.edu>
6045
6046         * lib/stdint_.h (intmax_t) [defined intmax_t]: Do not declare.
6047         (uintmax_t) [defined uintmax_t]: Do not declare.
6048         (SIZE_MAX) [defined SIZE_MAX]: Do not define.
6049         This works around a problem if intmax_t.m4 and/or uintmax_t.m4
6050         and/or size_max.m4 are also used.  Problem reported by Mark D. Baushke.
6051         (SIZE_MAX): Define to ((size_t) -1), not (~(size_t)0), for the
6052         sake of portability to weird hosts that C allows (though we don't
6053         know of any practical examples).
6054
6055         * lib/savedir.h (fdsavedir): New decl.
6056         * lib/savedir.c (fdsavedir, savedirstream): New functions; the latter
6057         contains most of the former guts of savedir.
6058         (savedir): Use savedirstream.
6059         Include "openat.h".
6060
6061 2005-11-25  Paul Eggert  <eggert@cs.ucla.edu>
6062
6063         * modules/obstack (Files): Add m4/ulonglong.m4.
6064         Problem reported by Davide Angelocola.
6065
6066 2005-11-15  Paul Eggert  <eggert@cs.ucla.edu>
6067
6068         * lib/xstrtod.c: Don't bother with #pragma STDC FENV_ACCESS ON, as
6069         coreutils no longer futzes with rounding modes.
6070
6071 2005-11-14  Jim Meyering  <jim@meyering.net>
6072
6073         * lib/mkstemp-safer.c: Include <config.h>, required for possible
6074         replacement of mkstemp.
6075
6076 2005-11-10  Simon Josefsson  <jas@extundo.com>
6077
6078         * lib/readline.c: Remove EOL.
6079
6080 2005-11-10  Paul Eggert  <eggert@cs.ucla.edu>
6081
6082         * modules/gethrxtime (Depends-on): Add gettime.
6083
6084 2005-11-10  Paul Eggert  <eggert@cs.ucla.edu>
6085
6086         * m4/gethrxtime.m4 (gl_PREREQ_GETHRXTIME): Don't require AC_HEADER_TIME
6087         or gettimeofday; no longer needed.
6088
6089 2005-11-10  Paul Eggert  <eggert@cs.ucla.edu>
6090
6091         * lib/gethrxtime.c: Include "timespec.h" rather than the sys/time / time
6092         business.
6093         (gethrxtime) [! (HAVE_NANOUPTIME
6094         || (defined CLOCK_MONOTONIC && HAVE_CLOCK_GETTIME)
6095         || HAVE_MICROUPTIME)]: Fall back on gettime rather than rolling
6096         our own approximation.
6097
6098 2005-11-08  Eric Blake  <ebb9@byu.net>
6099
6100         * lib/inet_ntop.h: Use #if !, not #ifndef, for AC_CHECK_DECLS.
6101
6102 2005-11-08  Eric Blake  <ebb9@byu.net>
6103
6104         * lib/getaddrinfo.h: Use #if !, not #ifndef, for AC_CHECK_DECLS.
6105
6106 2005-11-04  Bruno Haible  <bruno@clisp.org>
6107
6108         * gnulib-tool: Implement --update mode.
6109
6110 2005-10-30  Paul Eggert  <eggert@cs.ucla.edu>
6111
6112         Fix porting problem reported by Theodoros V. Kalamatianos.
6113         * lib/utimens.c (futimens) [HAVE_WORKING_UTIMES && HAVE_FUTIMES]:
6114         Don't assume that futimes failing means we must fail.
6115
6116 2005-10-30  Paul Eggert  <eggert@cs.ucla.edu>
6117
6118         * m4/chdir-long.m4 (gl_FUNC_CHDIR_LONG): Revamp wording and local
6119         variables to suggest the intended function of the PATH_MAX check.
6120
6121 2005-10-30  Kean Johnston  <jkj@sco.com>
6122
6123         Trivial changes to support SCO systems.
6124         * m4/chdir-long.m4 (gl_FUNC_CHDIR_LONG): Check for MAXPATHLEN as well
6125         as PATH_MAX.
6126         * m4/fpending.m4 (gl_FUNC_FPENDING): Correct check for SCO systems,
6127         where __ptr is null when no I/O is pending.
6128
6129 2005-10-29  Paul Eggert  <eggert@cs.ucla.edu>
6130
6131         * lib/getcwd.c (__getcwd): Don't assume that system calls after readdir
6132         leave errno alone.  Problem reported by Dmitry V. Levin.
6133
6134 2005-10-28  Simon Josefsson  <jas@extundo.com>
6135
6136         * tests/test-gc-md4.c, tests/test-gc-md5.c, tests/test-gc-sha1.c:
6137         Test more.
6138
6139         * tests/test-gc-md2.c, tests/test-md2.c: New files.
6140
6141         * modules/md2, modules/md2-tests: New files.
6142
6143 2005-10-28  Simon Josefsson  <jas@extundo.com>
6144
6145         * m4/inet_ntop.m4: More tests.
6146
6147         * m4/gc-md2.m4, md2.m4: New file.
6148
6149 2005-10-28  Simon Josefsson  <jas@extundo.com>
6150
6151         * lib/inet_ntop.h, inet_ntop.c: Make it work under mingw32: Add
6152         "restrict" keywords, as per POSIX.  Protect the function
6153         declaration around HAVE_DECL_INET_NTOP rather than HAVE_INET_NTOP.
6154         Don't use K&R prototypes.  Check the sprintf return values.
6155         Re-define EAFNOSUPPORT if not present.  Indent.
6156
6157         * lib/md5.h, md5.c: Simplify buffer handling visavi alignment,
6158         suggested by Bruno Haible <bruno@clisp.org>.
6159
6160         * lib/gc-gnulib.c, gc-libgcrypt.c: Check calloc return value.
6161
6162         * lib/gc.h: Add MD2 and RMD160 length defines.  Add prototypes.
6163
6164         * lib/gc-libgcrypt.c: Add MD2 (which is not available through
6165         libgcrypt).
6166
6167         * lib/gc-gnulib.c: Add MD2.  Implement gc_hash_* API.
6168
6169         * lib/md2.h, md2.c: New files.
6170
6171 2005-10-28  Paul Eggert  <eggert@cs.ucla.edu>
6172
6173         * lib/savedir.c (savedir): Don't assume that xrealloc etc. leave
6174         errno alone.  Problem reported by Frederic Jolliton.
6175
6176 2005-10-27  Paul Eggert  <eggert@cs.ucla.edu>
6177
6178         * modules/verify (License): Change from GPL to LGPL.  This is a
6179         tiny module and there are apparently near-equivalents that are
6180         under the BSD license.
6181
6182 2005-10-24  Simon Josefsson  <jas@extundo.com>
6183
6184         * modules/sha1: Relicense to LGPL.
6185
6186 2005-10-24  Simon Josefsson  <jas@extundo.com>
6187
6188         * lib/md4.h: Shrink buffer size, now that we changed the type.
6189
6190 2005-10-23  Simon Josefsson  <jas@extundo.com>
6191
6192         * gnulib-tool (func_import): Fix --tests-base.
6193
6194 2005-10-22  Simon Josefsson  <jas@extundo.com>
6195
6196         * modules/arcfour (Depends-on): Need stdint.
6197
6198 2005-10-22  Simon Josefsson  <jas@extundo.com>
6199
6200         * m4/gc.m4: Don't be fooled by --disable-*random-device parameters,
6201         suggested by Bruno Haible <bruno@clisp.org>.  Fix error messages.
6202
6203 2005-10-22  Simon Josefsson  <jas@extundo.com>
6204
6205         * lib/md4.h, md4.c: Simplify buffer handling visavi alignment,
6206         suggested by Bruno Haible <bruno@clisp.org>.
6207
6208 2005-10-22  Simon Josefsson  <jas@extundo.com>
6209
6210         * lib/crc.h: Include stddef.h, for size_t.
6211
6212 2005-10-22  Simon Josefsson  <jas@extundo.com>
6213
6214         * lib/arcfour.h, arcfour.c: Use fixed size indices in the
6215         arcfour_context struct (simplify test vector testing in GNU
6216         Shishi).
6217
6218 2005-10-21  Simon Josefsson  <jas@extundo.com>
6219
6220         * modules/des, modules/des-tests: New files.
6221
6222         * modules/gc-des, modules/gc-des-tests: New files.
6223
6224         * tests/test-des.c, tests/test-gc-des.c: New file.
6225
6226 2005-10-21  Simon Josefsson  <jas@extundo.com>
6227
6228         * modules/arctwo, modules/arctwo-tests: New files.
6229
6230         * tests/test-arctwo.c: New file.
6231
6232         * modules/gc-arctwo, modules/gc-arctwo-tests: New files.
6233
6234         * tests/test-gc-arctwo.c: New file.
6235
6236 2005-10-21  Simon Josefsson  <jas@extundo.com>
6237
6238         * m4/gc.m4: Don't use libgcrypt if gcrypt.h isn't found, suggested by
6239         Bruno Haible <bruno@clisp.org>.
6240
6241         * m4/gc-des.m4: New file.
6242
6243 2005-10-21  Simon Josefsson  <jas@extundo.com>
6244
6245         * m4/arctwo.m4: New file.
6246
6247         * m4/gc-arctwo.m4: New file.
6248
6249 2005-10-21  Simon Josefsson  <jas@extundo.com>
6250
6251         * lib/rijndael-api-fst.c: Fix bugs in CBC mode for more than one
6252         block.
6253
6254 2005-10-21  Simon Josefsson  <jas@extundo.com>
6255
6256         * lib/hmac-md5.c (hmac_md5): Add comments, suggested by Bruno Haible
6257         <bruno@clisp.org>.
6258
6259         * lib/hmac-sha1.c (hmac_sha1): Likewise.
6260
6261         * lib/crc.c (crc32_update): Actually use crc parameter, suggested by
6262         Bruno Haible <bruno@clisp.org>.
6263
6264         * lib/crc.h: Include stdint.h directly, suggested by Bruno Haible
6265         <bruno@clisp.org>.
6266
6267 2005-10-21  Simon Josefsson  <jas@extundo.com>
6268
6269         * lib/gc-libgcrypt.c (gc_cipher_open): Handle ECB.
6270
6271 2005-10-21  Simon Josefsson  <jas@extundo.com>
6272
6273         * lib/gc-gnulib.c: Support ARCTWO in CBC mode.
6274
6275 2005-10-21  Simon Josefsson  <jas@extundo.com>
6276
6277         * lib/des.h, des.c: New files.
6278
6279         * lib/gc-gnulib.c: Support DES.c
6280
6281 2005-10-21  Simon Josefsson  <jas@extundo.com>
6282
6283         * lib/arctwo.h, arctwo.c: New files.
6284
6285         * lib/gc-gnulib.c: Support ARCTWO.
6286
6287 2005-10-21  Simon Josefsson  <jas@extundo.com>
6288
6289         * lib/arctwo.h (arctwo_setkey): Protect variable in CPP macro,
6290         suggested by Ralf Wildenhues <Ralf.Wildenhues@gmx.de>.
6291
6292 2005-10-21  Simon Josefsson  <jas@extundo.com>
6293
6294         * gnulib-tool (func_import, func_create_testdir): Define automake
6295         conditional GL_COND_LIBTOOL if libtool is used (to be used by modules
6296         Makefile.am snippet),
6297         suggested by Bruno Haible <bruno@clisp.org>.
6298
6299         * modules/gc (Makefile.am): Use it.
6300
6301 2005-10-21  Bruno Haible  <bruno@clisp.org>
6302
6303         * gnulib-tool (func_import, func_create_testdir): Add quoting to last
6304         patch.
6305
6306 2005-10-19  Simon Josefsson  <jas@extundo.com>
6307
6308         * tests/test-gc-rijndael.c: New file.
6309
6310         * modules/gc-rijndael, modules/gc-rijndael-test: New files.
6311
6312 2005-10-19  Simon Josefsson  <jas@extundo.com>
6313
6314         * tests/test-gc-md4.c, tests/test-gc-md5.c: Test gc_hash_buffer
6315         interface too.
6316
6317 2005-10-19  Simon Josefsson  <jas@extundo.com>
6318
6319         * tests/test-gc-arcfour.c: New file.
6320
6321         * modules/gc-arcfour, modules/gc-arcfour-tests: New files.
6322
6323 2005-10-19  Simon Josefsson  <jas@extundo.com>
6324
6325         * modules/gc-md4, modules/gc-md4-tests: New file.
6326
6327         * tests/test-gc-md4.c: New file.
6328
6329 2005-10-19  Simon Josefsson  <jas@extundo.com>
6330
6331         * m4/gc-md4.m4: New file.
6332
6333 2005-10-19  Simon Josefsson  <jas@extundo.com>
6334
6335         * m4/gc-hmac-md5.m4, gc-hmac-sha1.m4, gc-md4.m4,
6336         gc-md5.m4, gc-sha1.m4: Fix typo, suggested by Stepan Kasal
6337         <kasal@ucw.cz>.
6338
6339 2005-10-19  Simon Josefsson  <jas@extundo.com>
6340
6341         * m4/gc-arcfour.m4: New file.
6342
6343         * m4/gc-rijndael.m4: New file.
6344
6345 2005-10-19  Simon Josefsson  <jas@extundo.com>
6346
6347         * lib/gc.h, gc-gnulib.c, gc-libgcrypt.c: Support MD4.
6348
6349 2005-10-19  Simon Josefsson  <jas@extundo.com>
6350
6351         * lib/gc-gnulib.c: Support ARCFOUR.
6352
6353 2005-10-19  Simon Josefsson  <jas@extundo.com>
6354
6355         * lib/gc-gnulib.c: Implement gc_cipher_* API, currently only with AES
6356         support.
6357
6358         * lib/gc.h: Add ECB enum type.
6359
6360         * lib/hmac-md5.c, hmac-sha1.c: Include memxor.h.
6361
6362 2005-10-18  Simon Josefsson  <jas@extundo.com>
6363
6364         * tests/test-md5.c: New file.
6365
6366         * modules/md5-tests: New file.
6367
6368 2005-10-18  Simon Josefsson  <jas@extundo.com>
6369
6370         * tests/test-md4.c: New file.
6371
6372         * modules/md4, modules/md4-tests: New files.
6373
6374 2005-10-18  Simon Josefsson  <jas@extundo.com>
6375
6376         * m4/md4.m4: New file.
6377
6378 2005-10-18  Simon Josefsson  <jas@extundo.com>
6379
6380         * lib/md4.h, md4.c: New files, based on md5.?.
6381
6382 2005-10-17  Stepan Kasal  <kasal@ucw.cz>
6383
6384         * gnulib-tool (func_create_testdir): Omit the second check whether
6385         BUILT_SOURCES in nonempty.
6386
6387 2005-10-17  Simon Josefsson  <jas@extundo.com>
6388
6389         * tests/test-rijndael.c: New file.
6390
6391 2005-10-17  Simon Josefsson  <jas@extundo.com>
6392
6393         * modules/sha1: Depend on stdint instead of md5.
6394
6395         * modules/md5: Depend on stdint, remove uint32_t.
6396
6397 2005-10-17  Simon Josefsson  <jas@extundo.com>
6398
6399         * modules/gc-sha1-tests: New file.
6400
6401         * tests/test-gc-sha1.c: New file.
6402
6403 2005-10-17  Simon Josefsson  <jas@extundo.com>
6404
6405         * m4/md5.m4: Remove call to uint32_t.m4.
6406
6407 2005-10-17  Simon Josefsson  <jas@extundo.com>
6408
6409         * lib/sha1.c: Use uint32_t instead of md5_uint32.t
6410
6411         * lib/sha1.h: Use stdint.h and uint32_t instead of md5_uint32 from
6412         md5.h.
6413
6414         * lib/md5.c: Use uin32_t.  Fix non-gcc UNALIGNED_P macro.
6415
6416         * lib/md5.h: Use stdint.h and uint32_t.  Doc fix.
6417
6418 2005-10-17  Simon Josefsson  <jas@extundo.com>
6419
6420         * lib/gc.h, gc-libgcrypt.c: Add more hash types/functions.
6421
6422 2005-10-17  Simon Josefsson  <jas@extundo.com>
6423
6424         * lib/gc.h, gc-libgcrypt.c: Add ciphers.
6425
6426 2005-10-17  Simon Josefsson  <jas@extundo.com>
6427
6428         * lib/gc-libgcrypt.c (gc_hmac_sha1): Fix assert.
6429
6430         * lib/gc.h (gc_nonce, gc_pseudo_random, gc_random): Add prototypes.
6431
6432 2005-10-17  Bruno Haible  <bruno@clisp.org>
6433
6434         * m4/stdbool.m4 (AC_HEADER_STDBOOL): Change the return statement so that
6435         it can also be used in a test.
6436
6437 2005-10-16  Bruno Haible  <bruno@clisp.org>
6438
6439         * gnulib-tool (func_emit_tests_Makefile_am): Also define
6440         TESTS_ENVIRONMENT, so that individual tests can augment it.
6441
6442         * gnulib-tool (func_create_testdir): Use an intermediate target for
6443         building $(BUILT_SOURCES). Needed because BUILT_SOURCES can contain
6444         macros, like $(ALLOCA_H), which cannot be passed through the command
6445         line.
6446
6447 2005-10-15  Simon Josefsson  <jas@extundo.com>
6448
6449         * modules/rijndael-tests: New file.
6450
6451         * modules/rijndael: New file.
6452
6453 2005-10-15  Simon Josefsson  <jas@extundo.com>
6454
6455         * m4/rijndael.m4: New file.
6456
6457 2005-10-15  Simon Josefsson  <jas@extundo.com>
6458
6459         * lib/rijndael-api-fst.h, rijndael-api-fst.c: New files.
6460
6461         * lib/rijndael-alg-fst.h, rijndael-alg-fst.c: New files.
6462
6463 2005-10-14  Simon Josefsson  <jas@extundo.com>
6464
6465         * tests/test-arcfour.c: New file.
6466
6467         * modules/arcfour, modules/arcfour-tests: New files.
6468
6469 2005-10-14  Simon Josefsson  <jas@extundo.com>
6470
6471         * m4/arcfour.m4: New file.
6472
6473 2005-10-14  Simon Josefsson  <jas@extundo.com>
6474
6475         * lib/arcfour.h, arcfour.c: New files.
6476
6477 2005-10-14  Roland McGrath  <roland@redhat.com>
6478
6479         Import from libc.  [BZ #1331]
6480         * lib/obstack.h [!__STDC__] (obstack_int_grow_fast): Fix misnamed
6481         macro argument.
6482         Reported by Matej Vela <vela@debian.org>.
6483
6484 2005-10-14  Paul Eggert  <eggert@cs.ucla.edu>
6485
6486         * lib/obstack.c [defined _LIBC && defined USE_IN_LIBIO]: Don't
6487         include <wchar.h>; no longer needed.
6488
6489 2005-10-14  Paul Eggert  <eggert@cs.ucla.edu>
6490
6491         * config/srclist.txt: Add glibc bug 321 for obstack.c, obstack.h.
6492
6493 2005-10-14  Jakub Jelinek  <jakub@redhat.com>
6494         and  Ulrich Drepper  <drepper@redhat.com>
6495
6496         Import from libc.
6497         * lib/obstack.c (print_and_abort) [defined _LIBC]: Use __fxprintf
6498         instead of inline stream orientation test and two separate
6499         function calls.  Pay no attention to USE_IN_LIBIO.
6500
6501 2005-10-13  Simon Josefsson  <jas@extundo.com>
6502
6503         * modules/gc-hmac-md5-tests: New file.
6504
6505         * tests/test-gc-hmac-sha1.c: New file.
6506
6507         * tests/test-gc.c (main): Remove MD5 and HMAC-MD5 tests.
6508
6509         * modules/gc-hmac-md5-tests: New file.
6510
6511         * tests/test-gc-md5.c: New file.
6512
6513         * modules/gc-md5-tests: New file.
6514
6515 2005-10-13  Simon Josefsson  <jas@extundo.com>
6516
6517         * lib/gc-pbkdf2-sha1.c (gc_pbkdf2_sha1): Optimize CEIL computation.
6518         Move memory allocation outside of loop.
6519
6520 2005-10-13  Paul Eggert  <eggert@cs.ucla.edu>
6521
6522         * lib/mkdir-p.c (make_dir_parents): Don't report an error if an
6523         intermediate directory is in a read-only file system.  Problem
6524         reported by Eric Blake.
6525
6526 2005-10-13  Oskar Liljeblad  <oskar@osk.mine.nu>
6527
6528         * modules/human (Depends-on): Depend on xstrtoumax, not xstrtol.
6529
6530 2005-10-12  Simon Josefsson  <jas@extundo.com>
6531
6532         * tests/test-hmac-sha1.c: New file.
6533
6534         * modules/hmac-sha1-tests: New file.
6535
6536         * modules/hmac-sha1: New file.
6537
6538 2005-10-12  Simon Josefsson  <jas@extundo.com>
6539
6540         * modules/gc-sha1: New file.
6541
6542 2005-10-12  Simon Josefsson  <jas@extundo.com>
6543
6544         * modules/gc-pbkdf2-sha1, modules/gc-pbkdf2-sha1-tests: New files.
6545
6546         * tests/test-gc-pbkdf2-sha1.c: New file.
6547
6548 2005-10-12  Simon Josefsson  <jas@extundo.com>
6549
6550         * modules/gc-md5, modules/gc-hmac-md5: New files.
6551
6552         * modules/gc (Files): Remove md5, memxor and hmac files.
6553
6554 2005-10-12  Simon Josefsson  <jas@extundo.com>
6555
6556         * m4/gc-pbkdf2-sha1.m4: New file.
6557
6558         * m4/gc-hmac-sha1.m4: New file.
6559
6560         * m4/gc-sha1: New file.
6561
6562         * m4/hmac-sha1.m4: New file.
6563
6564 2005-10-12  Simon Josefsson  <jas@extundo.com>
6565
6566         * m4/gc-md5.m4, gc-hmac-md5: New files.
6567
6568         * m4/gc.m4: Don't call gl_MD5, gl_MEMXOR or gl_HMAC_MD5.
6569
6570 2005-10-12  Simon Josefsson  <jas@extundo.com>
6571
6572         * lib/gc.h, gc-gnulib.c, gc-libgcrypt.c: Use Gc_rc for return types,
6573         suggested by Bruno Haible <bruno@clisp.org>.
6574
6575 2005-10-12  Simon Josefsson  <jas@extundo.com>
6576
6577         * lib/gc.h, gc-gnulib.c, gc-libgcrypt.c: Support SHA-1.
6578
6579 2005-10-12  Simon Josefsson  <jas@extundo.com>
6580
6581         * lib/gc-pbkdf2-sha1.c: New file.
6582
6583         * lib/gc.h: Add gc_pbkdf2_sha1 prototype.
6584
6585 2005-10-12  Simon Josefsson  <jas@extundo.com>
6586
6587         * lib/gc-libgcrypt.c (gc_hmac_sha1): New function.
6588
6589         * lib/gc-gnulib.c (gc_hmac_sha1): New function.
6590
6591 2005-10-12  Simon Josefsson  <jas@extundo.com>
6592
6593         * lib/gc-gnulib.c: Condition MD5 and HMAC-MD5 use on GC_USE_MD5 and
6594         GC_USE_HMAC_MD5, respectively.
6595
6596         * lib/gc-libgcrypt.c (gc_md5): Fix assert call.
6597         (gc_md5): Fix typo.
6598
6599         * lib/gc.h (gc_hash_buffer): Use gc_hash in prototype.
6600
6601         * lib/gc-libgcrypt.c (gc_hash_buffer): Ditto.
6602
6603         * lib/gc-gnulib.c (gc_hash_buffer): Ditto.
6604
6605 2005-10-12  Bruno Haible  <bruno@clisp.org>
6606
6607         * m4/stdbool.m4 (gl_STDBOOL_H): Define as an alias of AM_STDBOOL_H.
6608         Reported by Stepan Kasal <kasal@ucw.cz>.
6609
6610 2005-10-11  Simon Josefsson  <jas@extundo.com>
6611
6612         * tests/test-crc.c: New file.
6613
6614         * modules/crc, modules/crc-tests: New files.
6615
6616 2005-10-11  Simon Josefsson  <jas@extundo.com>
6617
6618         * m4/crc.m4: New file.
6619
6620 2005-10-11  Simon Josefsson  <jas@extundo.com>
6621
6622         * lib/gc.h: Add gc_hash and gc_hash_buffer.
6623
6624         * lib/gc-gnulib.c (gc_hash_buffer): Add.  Reorder #include's.
6625
6626         * lib/gc-libgcrypt.c (gc_hash_buffer): Add.
6627
6628 2005-10-11  Simon Josefsson  <jas@extundo.com>
6629
6630         * lib/crc.h, crc.c: New files.
6631
6632         * lib/gc.h (gc_hash_buffer): Add doc.
6633
6634 2005-10-11  Bruno Haible  <bruno@clisp.org>
6635
6636         * modules/c-strcasestr: New file.
6637         * MODULES.html.sh (String handling <string.h>): Add c-strcasestr.
6638
6639 2005-10-11  Bruno Haible  <bruno@clisp.org>
6640
6641         * modules/c-strcase: New file.
6642         * MODULES.html.sh (String handling <string.h>): Add c-strcase.
6643
6644 2005-10-11  Bruno Haible  <bruno@clisp.org>
6645
6646         * lib/strcasecmp.c: Include limits.h.
6647         (strcasecmp): Avoid integer overflow on exotic platforms.
6648         * lib/strncasecmp.c: Include limits.h.
6649         (strncasecmp): Avoid integer overflow on exotic platforms.
6650         Reported by Paul Eggert.
6651
6652 2005-10-11  Bruno Haible  <bruno@clisp.org>
6653
6654         * lib/c-strcasestr.h: New file, from GNU gettext.
6655         * lib/c-strcasestr.c: New file, from GNU gettext.
6656
6657 2005-10-11  Bruno Haible  <bruno@clisp.org>
6658
6659         * lib/c-strcase.h: New file, from GNU gettext.
6660         * lib/c-strcasecmp.c: New file, from GNU gettext.
6661         * lib/c-strncasecmp.c: New file, from GNU gettext.
6662
6663 2005-10-10  Paul Eggert  <eggert@cs.ucla.edu>
6664
6665         * modules/mempcpy (License): GPL -> LGPL.
6666         * modules/strchrnul (License): Likewise.
6667         * modules/sysexits (License): Likewise.
6668
6669 2005-10-08  Simon Josefsson  <jas@extundo.com>
6670
6671         * config/srclist.txt: Bug 1423 is closed, but 1439 remains.
6672
6673 2005-10-07  Simon Josefsson  <jas@extundo.com>
6674
6675         * m4/memxor.m4: Remove gl_C_RESTRICT call.
6676
6677 2005-10-06  Simon Josefsson  <jas@extundo.com>
6678
6679         * tests/test-hmac-md5.c: New file.
6680
6681         * modules/hmac-md5-tests: New file.
6682
6683         * modules/hmac-md5: New file.
6684
6685 2005-10-06  Simon Josefsson  <jas@extundo.com>
6686
6687         * m4/hmac-md5.m4: New file.
6688
6689         * m4/memxor.m4: Require gl_C_RESTRICT.
6690
6691 2005-10-06  Simon Josefsson  <jas@extundo.com>
6692
6693         * lib/memxor.c (memxor): Avoid casts and warnings.
6694
6695 2005-10-06  Simon Josefsson  <jas@extundo.com>
6696
6697         * lib/hmac-md5.c: New file.
6698
6699         * lib/hmac.h: New file.
6700
6701 2005-10-06  Paul Eggert  <eggert@cs.ucla.edu>
6702
6703         * m4/stdbool.m4 (AC_HEADER_STDBOOL): Check that bool
6704         promotes to int, not unsigned int, to catch the AIX 5.3
6705         compiler bug.
6706
6707 2005-10-05  Simon Josefsson  <jas@extundo.com>
6708
6709         * modules/memxor: New file.
6710
6711         * modules/iconv (Files): Move config.rpath to havelib, it is used
6712         there.
6713
6714         * modules/havelib (Files): Add config.rpath.
6715
6716 2005-10-05  Simon Josefsson  <jas@extundo.com>
6717
6718         * m4/memxor.m4: New file.
6719
6720 2005-10-05  Simon Josefsson  <jas@extundo.com>
6721
6722         * lib/memxor.c (memxor): Fix compiler error.
6723
6724         * lib/md5.h (MD5_DIGEST_SIZE, MD5_BLOCK_SIZE): Add, see also
6725         <http://sourceware.org/bugzilla/show_bug.cgi?id=1423>.
6726
6727         * lib/memxor.h, memxor.c: New files.
6728
6729         * lib/getaddrinfo.h: Don't protect sys/types.h with HAVE_SYS_TYPES_H,
6730         we assume all systems have it, suggested by Jim Meyering
6731         <jim@meyering.net>.  Remove HAVE_SYS_SOCKET_H test too, to see if
6732         any systems lack sys/socket.h; mingw32 is known to lack it, but we
6733         don't support it yet anyway.  Also remove HAVE_NETDB_H test, for
6734         same reasons.
6735
6736 2005-10-05  Simon Josefsson  <jas@extundo.com>
6737
6738         * config/srclist.txt: Add glibc bug 1423 for md5.h.
6739
6740 2005-10-05  Paul Eggert  <eggert@cs.ucla.edu>
6741
6742         * m4/getaddrinfo.m4 (gl_PREREQ_GETADDRINFO): Don't check for
6743         sys/socket.h, netdb.h, sys/types.h; the checks areno longer
6744         needed, since the source code now assumes these .h files.
6745
6746 2005-10-05  Derek Price  <derek@ximbiot.com>
6747
6748         * lib/getdelim.c (SIZE_MAX): New macro, if not already defined.
6749
6750 2005-10-05  Bruno Haible  <bruno@clisp.org>
6751
6752         * modules/stdint (License): Change to LGPL.
6753
6754 2005-10-04  Simon Josefsson  <jas@extundo.com>
6755
6756         * lib/getaddrinfo.h: Move sys/types.h include first, reported by "Mark
6757         D. Baushke" <mdb@gnu.org>.
6758
6759 2005-10-04  Bruno Haible  <bruno@clisp.org>
6760
6761         * lib/verify.h (verify_true): Provide alternative definition for C++.
6762
6763 2005-10-03  Paul Eggert  <eggert@cs.ucla.edu>
6764
6765         * lib/getdelim.c: Include getdelim.h first.  Include <limits.h>.
6766         (SSIZE_MAX): New macro, if not already defined.
6767         (getdelim): Fix buffer overrun on 64-bit hosts with lines longer
6768         than 2 GiB.
6769
6770 2005-10-02  Paul Eggert  <eggert@cs.ucla.edu>
6771
6772         Sync from coreutils.
6773         * m4/openat.m4 (gl_FUNC_OPENAT): Check for fdopendir.
6774         * m4/ullong_max.m4 (gl_ULLONG_MAX): Simplify so that it merely
6775         defines ULONG_MAX_LT_ULLONG_MAX.  Thomas M.Ott reports that
6776         ULLONG_MAX doesn't work with 2.7.2.1.
6777
6778 2005-10-02  Paul Eggert  <eggert@cs.ucla.edu>
6779
6780         * modules/xreadlink (Makefile.am): Remove lib_SOURCES.
6781         From Ben Pfaff.
6782
6783         * modules/exclude (Depends-on): Depend on verify.
6784         * modules/strtoimax (Depends-on): Likewise.
6785         * modules/utimecmp (Depends-on): Likewise.
6786
6787 2005-10-02  Paul Eggert  <eggert@cs.ucla.edu>
6788
6789         * lib/exclude.c: Include verify.h.
6790         (verify): Remove.  All callers changed to use verify.h's version.
6791         * lib/strtoimax.c: Likewise.
6792         * lib/utimecmp.c: Likewis.e
6793
6794         Sync from coreutils.
6795         * lib/.cppi-disable: Add getaddrinfo.h, getdelim.h, getline.h, getpass.c
6796         mbchar.h, mbuiter.h, strcase.h, strnlen.h, strnlen1.h.
6797         * lib/.cvsignore: Add fts.h, search.h, t-fpending.
6798         * lib/settime.c (settime): Fix { typo in previous patch.  Also, don't
6799         bother returning ENOSYS if settimeofday or stime fails; just let
6800         them return whatever errno they want to return.
6801         * lib/utimens.c: Include unistd.h, for dup2.
6802         (futimens): Fix typo: HAVE_FUTIMESAT was misspelled in an #if.
6803         (futimens) [! HAVE_FUTIMESAT]: If !file, set errno before returning -1.
6804
6805 2005-10-02  Jim Meyering  <jim@meyering.net>
6806
6807         Sync from coreutils.
6808         * m4/utimes.m4 (gl_FUNC_UTIMES): Detect the version of utimes
6809         from glibc-2.2.5 that fails for read-only files.
6810
6811 2005-10-02  Jim Meyering  <jim@meyering.net>
6812
6813         Sync from coreutils.
6814         * lib/fts-cycle.c [HAVE_CONFIG_H]: Include <config.h>.
6815         * lib/openat-die.c: Use `#ifdef HAVE_CONFIG_H', not `#if HAVE_CONFIG_H'.
6816         * lib/openat.c (fdopendir): Do not define if HAVE_FDOPENDIR.
6817         Remove AT_FDCWD test.
6818         Do not consume the fd unless successful.
6819         * lib/openat.h (fdopendir): Do not define if HAVE_FDOPENDIR.
6820         * lib/settime.c (settime): Move the HAVE_STIME block `up' into an #elif
6821         block, so that we don't even try to compile it if settimeofday is
6822         available.  This works around a compilation failure on OSF1 V5.1,
6823         due to stime requiring a `long int*' while tv_sec is `int'.
6824
6825 2005-10-02  Alfred M. Szmidt  <ams@gnu.org>
6826
6827         Sync from coreutils.
6828         * m4/chdir-long.m4 (gl_FUNC_CHDIR_LONG): Compare $gl_have_path...
6829         against `yes', rather than just testing for nonempty.
6830
6831 2005-10-01  Simon Josefsson  <jas@extundo.com>
6832
6833         * m4/getaddrinfo.m4: Include sys/types.h for sys/socket.h, on FreeBSD
6834         and Darwin.
6835
6836         * m4/getaddrinfo.m4: Use AC_GNU_SOURCE, GNU only declare getaddrinfo
6837         as an (POSIX) extension.  Check for sys/types.h, sys/socket.h, and
6838         netdb.h too, needed by getaddrinfo.h.  Check if getaddrinfo,
6839         freeaddrinfo and gai_strerror are declared by the POSIX headers.
6840         Check if struct addrinfo is declared.
6841
6842 2005-10-01  Simon Josefsson  <jas@extundo.com>
6843
6844         * lib/getaddrinfo.h: Protect #include's of sys/socket.h and netdb.h.
6845         Only define struct addrinfo if !HAVE_STRUCT_ADDRINFO.  Protect
6846         AI_* and EAI_* definitions.  Protect function declarations.
6847
6848 2005-10-01  Jim Meyering  <jim@meyering.net>
6849
6850         Sync from coreutils.
6851
6852         * m4/getaddrinfo.m4 (gl_GETADDRINFO): Look for getservbyname in these
6853         libraries [inet nsl socket xnet].  Nelson Beebe reported that with
6854         native cc on Solaris 7, getaddrinfo.c requires -lsocket.
6855         * m4/getaddrinfo.m4 (gl_GETADDRINFO): Check for gethostbyname
6856         in the inet and nsl libraries.  Required on Solaris 5.7.
6857
6858 2005-10-01  Jim Meyering  <jim@meyering.net>
6859
6860         Sync from coreutils.
6861         * m4/getaddrinfo.m4 (gl_GETADDRINFO): Check for gethostbyname
6862         in the inet and nsl libraries.  Required on Solaris 5.7.
6863
6864 2005-10-01  Eric Blake  <ebb9@byu.net>  (tiny change)
6865
6866         * lib/getdelim.c (getdelim): Remove unused variables.
6867
6868 2005-09-29  Paul Eggert  <eggert@cs.ucla.edu>
6869
6870         * lib/xtime.h (XTIME_PRECISION): Now of type int, not long long int,
6871         so that the code works even with ancient cpp.  Portability problem
6872         with GCC 2.7.2.1 reported by Thomas M.Ott.
6873
6874 2005-09-27  Paul Eggert  <eggert@cs.ucla.edu>
6875
6876         * modules/regex (Depends-on): Add strcase.
6877
6878         * modules/gethostname (Licence): Change from GPL to LGPL, since
6879         gethostname.c is a trivial implementation of a standard library
6880         function.
6881         * modules/poll (License): Change from GPL to LGPL, since it's
6882         derived from LGPL code.
6883
6884 2005-09-27  Jim Meyering  <jim@meyering.net>
6885
6886         * lib/getcwd.c: Change #ifdef<TAB>HAVE_CONFIG_H to #ifdef HAVE_CONFIG_H.
6887
6888         * lib/intprops.h (signed_type_or_expr__): Define.
6889         (INT_STRLEN_BOUND) [__GNUC__]: Use a slightly tighter bound
6890         for unsigned types.
6891
6892 2005-09-26  Paul Eggert  <eggert@cs.ucla.edu>
6893
6894         * lib/verify.h (verify_expr): Remove, replacing with:
6895         (verify_true): New macro that returns true instead of void.
6896         (verify_type__): Remove.
6897         (verify): Use verify_true rather than verify_type__.
6898
6899 2005-09-26  Bruno Haible  <bruno@clisp.org>
6900
6901         * modules/mbchar (Include): Mention that HAVE_WCHAR_H && HAVE_WCTYPE_H
6902         is necessary.
6903         (lib_SOURCES): Remove mbchar.c.
6904         * modules/mbfile (Include): Mention that HAVE_MBRTOWC is necessary.
6905         (Files): Add m4/mbrtowc.m4.
6906         * modules/mbiter: Likewise.
6907         * modules/mbuiter: Likewise.
6908
6909 2005-09-26  Bruno Haible  <bruno@clisp.org>
6910
6911         * m4/mbchar.m4 (gl_MBCHAR): Check for wchar.h and wctype.h. Don't compile
6912         mbchar.c if they are not both present.
6913         * m4/mbfile.m4 (gl_MBFILE): Require gl_FUNC_MBRTOWC.
6914         * m4/mbiter.m4 (gl_MBITER): Likewise.
6915         * m4/strstr.m4 (gl_PREREQ_STRSTR): Use AC_REQUIRE.
6916         * m4/strcasestr.m4 (gl_PREREQ_STRCASESTR): Likewise.
6917         * m4/strcase.m4 (gl_PREREQ_STRCASECMP): Likewise.
6918
6919 2005-09-25  Jim Meyering  <jim@meyering.net>
6920
6921         * modules/inet_ntop (Depends-on): Add socklen, since inet_ntop.c
6922         also uses socklen_t.
6923
6924 2005-09-24  Paul Eggert  <eggert@cs.ucla.edu>
6925
6926         * lib/utimens.c (ENOSYS): Define if not already defined.
6927         (futimens): Support having a null PATH if the file descriptor
6928         is nonnegative.
6929
6930         * lib/regex_internal.h (__GNUC_PREREQ, always_inline, inline, pure):
6931         Remove.
6932         (__attribute): Define to empty unless GCC 3.1 or later.
6933         This works around a core dump on OpenBSD 3.4, which has GCC
6934         2.95.3, which dumps core when given __attribute__(()).  It also
6935         simplifies other tests, since we really don't want to bother with
6936         worrying about which ancient version of GCC supported what.
6937         Original problem reported by Yoann Vandoorselaere, with part of
6938         the fix suggested by Derek Price.
6939
6940 2005-09-24  Jim Meyering  <jim@meyering.net>
6941
6942         * lib/verify.h (verify_type__): Use `unsigned int' as the bitfield type
6943         so we can once again use a positive bitfield width of 1 -- now we
6944         don't have to explain why we were using a bitfield width of 2.
6945
6946 2005-09-23  Paul Eggert  <eggert@cs.ucla.edu>
6947
6948         * m4/regex.m4 (gl_REGEX): If replacing, define regcomp to rpl_regcomp,
6949         and similarly for the other external symbols.  Problem reported
6950         by James Gallager.
6951
6952         * m4/fnmatch.m4 (_AC_FUNC_FNMATCH_IF): Catch Sun Studio 10u1 on Linux
6953         bug reported by Jim Meyering.
6954
6955         * m4/utimens.m4 (gl_UTIMENS): Check for futimesat.
6956         * m4/getaddrinfo.m4 (gl_PREREQ_GETADDRINFO): Undo previous change;
6957         not needed, since socklen is a prerequisite module.
6958
6959 2005-09-23  Paul Eggert  <eggert@cs.ucla.edu>
6960
6961         * lib/getaddrinfo.c [HAVE_NETINET_IN_H]: Include <netinet/in.h>.
6962         Problem reported by Eric Blake.
6963         (getaddrinfo): Initialize se so that it's not garbage.
6964         Redo internal storage allocation so that it doesn't make unportable
6965         assumptions about alignment.
6966         Fix a memory leak.
6967
6968         * lib/utimens.c (futimens): Use futimesat if available.
6969         Prefer it to futimes since it doesn't have the futimes bug.
6970
6971         * lib/verify.h (GL_CONCAT0, GL_CONCAT): Remove.
6972         (verify): Don't use the __LINE__ trick, as it doesn't work in general.
6973         Instead, declare a function that returns a pointer to an array,
6974         and use verify_type__ to declare the size of the array.
6975         Problem and germ of a solution reported by Bruno Haible.
6976         (verify_type__): Use 2, not 1, for bitfield size, to avoid
6977         a warning with Irix 6.5 cc.  Problem reported by Bruno Haible.
6978
6979 2005-09-23  Jim Meyering  <jim@meyering.net>
6980
6981         Sync from coreutils.
6982         Correct build failure (socklen_t not defined) on at least
6983         mips-sgi-irix6.5 and alphaev67-dec-osf5.1.
6984         * m4/getaddrinfo.m4 (gl_PREREQ_GETADDRINFO): Require gl_SOCKLEN_T.
6985
6986 2005-09-23  Jim Meyering  <jim@meyering.net>
6987
6988         * modules/getaddrinfo (Depends-on): Add socklen.
6989
6990 2005-09-23  Bruno Haible  <bruno@clisp.org>
6991
6992         * tests/test-verify.c: New file.
6993
6994 2005-09-22  Paul Eggert  <eggert@cs.ucla.edu>
6995
6996         Sync from coreutils.
6997
6998         * modules/argmatch (Depends-on): Add verify.
6999         * modules/getloadavg (Depends-on): Depend on fcntl-safer, not
7000         unistd-safer.
7001         * modules/save-cwd (Depends-on): Likewise.
7002
7003         * modules/openat (Files): Add lib/openat-die.c.
7004         (Depends-on): Remove error, exitfail.
7005         Add dirname.
7006
7007         * modules/verify: New file.
7008         * MODULES.html.sh (Diagnostics <assert.h>): New section,
7009         with "verify" module.
7010
7011 2005-09-22  Paul Eggert  <eggert@cs.ucla.edu>
7012
7013         Sync from coreutils.
7014
7015         * m4/backupfile.m4, calloc.m4, chown.m4, cloexec.m4, dup2.m4:
7016         * m4/fileblocks.m4, free.m4, ftruncate.m4, getcwd.m4, getpagesize.m4:
7017         * m4/getugroups.m4, group-member.m4, idcache.m4, link-follow.m4:
7018         * m4/mkstemp.m4, mktime.m4, mountlist.m4, nanosleep.m4, pathmax.m4:
7019         * m4/physmem.m4, posixver.m4, putenv.m4, safe-read.m4, same.m4:
7020         * m4/save-cwd.m4, stdio-safer.m4, unistd-safer.m4, unlinkdir.m4:
7021         * m4/userspec.m4, xgetcwd.m4, xreadlink.m4:
7022         Don't bother checking for string.h, stdlib.h, unistd.h.
7023         * m4/fts.m4 (gl_FUNC_FTS_CORE): Don't require
7024         AC_FUNC_LSTAT_FOLLOWS_SLASHED_SYMLINK; that's now the lstat
7025         module's job.
7026         * m4/jm-macros.m4 (gl_MACROS): Likewise.
7027         * m4/prereq.m4 (gl_PREREQ): Add gl_FUNC_LSTAT.
7028
7029         * m4/getdate.m4 (gl_C_COMPOUND_LITERALS): New macro.
7030         (gl_GETDATE): Use it.
7031
7032         * m4/mkdir-p.m4 (gl_MKDIR_PARENTS): Don't bother checking for unistd.h.
7033
7034 2005-09-22  Paul Eggert  <eggert@cs.ucla.edu>
7035
7036         Sync from coreutils.
7037
7038         * lib/.cppi-disable: Add regcomp.c, regex_internal.c, regex_internal.h,
7039         stat-time.h.
7040         * lib/argmatch.h: Include verify.h
7041         (ARGMATCH_VERIFY): Use verify rather than rolling our own.
7042         (ARGMATCH_ASSERT): Remove; unused.
7043         * lib/canonicalize.c: Assume STDC_HEADERS.
7044         * lib/exclude.c: Include "strcase.h".
7045         * lib/regex_internal.h [!defined _LIBC]: Likewise.
7046         * lib/getusershell.c: Include stdio--.h rather than stdio.h
7047         and stdio-safer.h.
7048         (getusershell): Call fopen, not fopen_safer.
7049         * lib/save-cwd.c: Include fcntl--.h rather than fcntl.h.
7050         Do not include unistd-safer.h.
7051         (save_cwd): Don't call fd_safer; no longer needed
7052         now that we include fcntl--.h.
7053
7054         * lib/getdate.y (relative_time): New type.
7055         (RELATIVE_TIME_0): New constant.
7056         (parser_control): Use relative_time instead of doing it ourselves.
7057         (%union): Add new relative_time rel member.
7058         (tYEAR_UNIT, tMONTH_UNIT, tHOUR_UNIT, tMINUTE_UNIT, tSEC_UNIT):
7059         Now typeless.
7060         (relunit, relunit_snumber): Now of type rel.
7061         (zone, rel, relunit, get_date): Adjust to above changes.
7062
7063         * lib/getloadavg.c: Include fcntl--.h rather than fcntl.h.
7064         Do not include unistd-safer.h.
7065         (getloadavg): Don't call fd_safer; no longer needed
7066         now that we include fcntl--.h.
7067
7068         * lib/mkdir-p.c (ENOSYS): Define to EEXIST if not defined.
7069         (make_dir_parents): Treat ENOSYS like EEXIST.
7070
7071         Improve quality of diagnostics on restore_cwd failure.
7072         * lib/mkdir-p.h (make_dir): Remove.  All uses replaced by mkdir.
7073         (make_dir_parents): Last arg is now int * (for errno), not bool *.
7074         * lib/mkdir-p.c (make_dir, make_dir_parents): Likewise.
7075         Rewrite "mkdir -p" algorithm to avoid the need for "stat"
7076         each time through the loop.  Do not diagnose restore_cwd failure;
7077         that is the caller's job (and perhaps the caller does not care).
7078
7079         * lib/mkdir-p.c (CLEANUP_CWD, CLEANUP): Remove.
7080         (make_dir_parents): Revamp to avoid need for CLEANUP_CWD, CLEANUP.
7081         If the file already exists but is not a directory, don't bother
7082         to try to make its parents.
7083         Close potential file descriptor leak if we can't chdir("/") (!).
7084         Don't always return true if chdir($PWD) fails; return true only
7085         if the requested action was done successfully (except for the
7086         chdir($PWD)).
7087         Don't log final directory unless we actually made it.
7088         Refactor to avoid duplicate code to fix up permissions.
7089         Don't attempt to fix up parent permissions if chdir($PWD) fails.
7090
7091         * lib/strftime.c (my_strftime): Rewrite the previous change slightly,
7092         to make it a bit faster and (I hope) clearer.
7093         * lib/strftime.c (my_strftime): Add support for %:z, %::z, %:::z.
7094         Fix bug in formats like %2N.
7095
7096         * lib/verify.h: New file.
7097
7098 2005-09-22  Paul Eggert  <eggert@cs.ucla.edu>
7099
7100         Sync from coreutils.
7101         * m4/getaddrinfo.m4 (gl_PREREQ_GETADDRINFO): Check for netinet/in.h.
7102
7103 2005-09-22  Jim Meyering  <jim@meyering.net>
7104
7105         Sync from coreutils.
7106
7107         * m4/lstat.m4 (gl_FUNC_LSTAT):
7108         Use AC_LIBSOURCES to require lstat.c and lstat.h.
7109         Remove obsolete comment.
7110         * m4/xreadlink.m4: Use AC_LIBSOURCES and AC_LIBOBJ.
7111         * m4/xstrtod.m4: Likewise.
7112
7113         * m4/openat.m4 (gl_FUNC_OPENAT): Add openat-die.c.
7114
7115 2005-09-22  Jim Meyering  <jim@meyering.net>
7116
7117         Sync from coreutils.
7118
7119         * lib/backupfile.c: Use ARGMATCH_VERIFY, just in case.
7120
7121         * lib/posixtm.c (posixtime) [lint]: Initialize *all* of tm0, not just
7122         the .tm_year member, since otherwise gcc-4.0 would now warn about
7123         tm_zone, tm_gmtoff, tm_isdst, tm_yday, tm_wday.
7124
7125         * lib/quotearg.c (quotearg_n_options): Change code to be suboptimal, in
7126         order to avoid an unsuppressible warning from gcc on 64-bit systems.
7127
7128         * lib/getdate.y (get_date): Undo part of the 2005-04-04 change, so that
7129         the command "date -d'2005-03-27 +1 day'" succeeds once again, even
7130         when run in a time zone for which daylight savings time is in effect
7131         for the starting date.
7132
7133         * lib/mkdir-p.c (make_dir_parents): Don't let a failed chdir($PWD)
7134         stop us from restricting permissions of just-created absolute-named
7135         directories.
7136         * lib/mkdir-p.c (CLEANUP_CWD): Return *true*, not false when failing
7137         to restore initial working directory.
7138         * lib/mkdir-p.c (make_dir_parents): New parameter: different_working_dir,
7139         to tell caller if/when we change the working directory and are
7140         unable to return to the initial one.
7141         * lib/mkdir-p.h (make_dir_parents): Update prototype.
7142         * lib/mkdir-p.c (CLEANUP_CWD): Change one more `return 1' to
7143         `return false'.  This fixes a bug introduced on 2004-07-30.
7144
7145         * lib/openat.c (fdopendir): Be sure to close the supplied
7146         file descriptor before returning.  This makes our replacement
7147         implementation a little closer to Solaris's, where fdopendir
7148         ties the file descriptor to the returned DIR* pointer.
7149         * lib/openat.c (unlinkat): New function.
7150         * lib/openat.h (unlinkat): Add prototype.
7151         * lib/openat-die.c (openat_save_fail): Rename from openat_save_die.
7152         (openat_restore_fail): Rename from openat_restore_die.
7153         * lib/openat.c, openat.h: Reflect s/_die/_fail/ renaming.
7154
7155         Provide an alternative to exiting immediately upon save_cwd or
7156         restore_cwd failure.  Now, an application can arrange e.g.,
7157         to perform a longjump in that case.
7158         * lib/openat.c: Include dirname.h.
7159         Use IS_ABSOLUTE_FILE_NAME rather than testing for leading slash.
7160         (rpl_openat, fdopendir, fstatat): Call openat_save_die
7161         and openat_restore_die rather than calling error directly.
7162         Don't include "error.h" or "exitfail.h"; they're no longer needed.
7163
7164         * lib/openat-die.c (openat_save_die, openat_restore_die): New file.
7165         * lib/openat.h (openat_save_die, openat_restore_die): Declare and define.
7166
7167         * lib/strftime.c [FPRINTFTIME] (fprintftime): Provide a new interface:
7168         size_t fprintftime (FILE *fp, char const *fmt, struct tm const *tm,
7169                             int utc, int nanoseconds);
7170         Background:
7171         date should not have to allocate a megabyte of virtual memory to
7172         handle a format argument like +%1048575T.  When implemented with
7173         strftime, it must allocate such a buffer, use strftime to fill it
7174         in, print it, then free it.
7175         With fprintftime, it simply prints everything and exits.
7176         With no need for memory allocation, that's one fewer way to fail.
7177         * lib/strftime.c (my_strftime): Parse the colons of %:::z *after* the
7178         optional field width, not before, so we accept %9:z, not %:9z.
7179         (my_strftime): Be sure to use L_('x') for literals.
7180
7181         * lib/backupfile.c, canon-host.c, canonicalize.c, chown.c, cloexec.c:
7182         * lib/dup-safer.c, dup2.c, euidaccess.c, fd-safer.c, fileblocks.c:
7183         * lib/fopen-safer.c, fsusage.c, ftruncate.c, getcwd.c, getcwd.h:
7184         * lib/getloadavg.c, getopt_.h, getpagesize.h, getugroups.c, group-member.c:
7185         * lib/human.h, idcache.c, mkdir-p.c, mountlist.c, nanosleep.c, pathmax.h:
7186         * lib/physmem.c, posixver.c, putenv.c, raise.c, safe-read.c, same.c:
7187         * lib/save-cwd.c, setenv.c, settime.c, tempname.c, unlinkdir.c:
7188         * lib/unsetenv.c, userspec.c, xgethostname.c, xreadlink.c:
7189         Assume HAVE_UNISTD_H, i.e., include <unistd.h> unconditionally.
7190
7191         * lib/chown.c, cloexec.c, dup-safer.c, dup2.c, fsusage.c, getcwd.c:
7192         * lib/getloadavg.c, mountlist.c, openat.h, save-cwd.c, tempname.c:
7193         Assume HAVE_FCNTL_H (i.e., include <fcntl.h> unconditionally,
7194         and don't include <sys/file.h>).
7195
7196 2005-09-22  Eric Blake  <ebb9@byu.net>  (tiny change)
7197
7198         Sync from coreutils.
7199
7200         * lib/getloadavg.c (getloadavg) [__CYGWIN__]: Port to cygwin.
7201         [__linux__]: Allocate a big enough buffer for /proc/loadavg.
7202         [!LDAV_DONE]: Avoid unused variable warning.
7203
7204 2005-09-21  Bruno Haible  <bruno@clisp.org>
7205
7206         * lib/unicodeio.h (unicode_to_mb): New declaration.
7207
7208 2005-09-20  Derek Price  <derek@ximbiot.com>
7209
7210         * lib/getaddrinfo.c: Don't include <netdb.h> included from getaddrinfo.h.
7211
7212 2005-09-20  Bruno Haible  <bruno@clisp.org>
7213
7214         * gnulib-tool: Remove trailing slashes from the values specified for
7215         --source-base, --m4-base, --tests-base, --aux-dir.
7216         Suggested by Simon Josefsson <jas@extundo.com>.
7217
7218 2005-09-20  Bruno Haible  <bruno@clisp.org>
7219
7220         * gnulib-tool (func_all_modules, func_modules_transitive_closure,
7221         func_modules_to_filelist, func_import, func_create_testdir): Make all
7222         sorting results locale-independent, so that gnulib-cache.m4 doesn't
7223         change when gnulib-tool is invoked in a different locale.
7224
7225 2005-09-19  Simon Josefsson  <jas@extundo.com>
7226
7227         * m4/socklen.m4: Fix typo.
7228
7229 2005-09-19  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
7230
7231         Use a consistent style for including <config.h>.
7232         * lib/__fpending.c, acl.c, argmatch.c,
7233         argp-help.c, argp-parse.c,
7234         argp-pvh.c, backupfile.c, basename.c, c-stack.c,
7235         calloc.c, check-version.c, cloexec.c, closeout.c, copy-file.c,
7236         creat-safer.c, cycle-check.c, dirfd.c, dirname.c, dup-safer.c,
7237         dup2.c, euidaccess.c, exclude.c, exitfail.c, fatal-signal.c,
7238         fd-safer.c, file-type.c, fileblocks.c, filemode.c,
7239         filenamecat.c, findprog.c, fnmatch.c, fopen-safer.c, free.c,
7240         fsusage.c, ftruncate.c, full-write.c, fwriteerror.c,
7241         getaddrinfo.c, getcwd.c, getdelim.c, getline.c, getlogin_r.c,
7242         getndelim2.c, getnline.c, getopt1.c, getpass.c, group-member.c,
7243         hard-locale.c, hash-pjw.c, hash.c, human.c, idcache.c,
7244         inet_ntop.c, isdir.c, long-options.c, malloc.c, memcasecmp.c,
7245         memcmp.c, memcoll.c, memcpy.c, memmove.c, mkdir-p.c,
7246         modechange.c, mountlist.c, open-safer.c, physmem.c,
7247         pipe-safer.c, pipe.c, poll.c, posixver.c, progname.c,
7248         progreloc.c, putenv.c, quote.c, quotearg.c, readline.c,
7249         readlink.c, realloc.c, regex.c, rename.c, rmdir.c, rpmatch.c,
7250         safe-read.c, same.c, save-cwd.c, savedir.c, sig2str.c,
7251         strcspn.c, strerror.c, stripslash.c, strncasecmp.c, strndup.c,
7252         strnlen.c, strnlen1.c, strsep.c, strstr.c, strtod.c,
7253         strtoimax.c, strtol.c, strverscmp.c, tempname.c, time_r.c,
7254         userspec.c, utimecmp.c, version-etc-fsf.c,
7255         version-etc.c, wait-process.c, xalloc-die.c, xgetcwd.c,
7256         xmalloc.c, xmemcoll.c, xnanosleep.c, xreadlink.c, xsetenv.c,
7257         xstrndup.c, xstrtoimax.c, xstrtol.c, xstrtoumax.c, yesno.c:
7258         Standardize inclusion of config.h.
7259         * lib/__fpending.h, dirfd.h, getdate.h, human.h,
7260         inttostr.h:  Removed inclusion of config.h from header files.
7261         * lib/inttostr.c:  Adjusted in-tree users.
7262         * lib/timespec.h: Remove superfluous warning to include config.h.
7263         * lib/atexit.c, chdir-long.c chown.c, fchown-stub.c, getgroups.c,
7264         gettimeofday.c, lchown.c, lstat.c, mkdir.c, mkstemp.c,
7265         nanosleep.c, openat.c, raise.c, readtokens0.c, readutmp.c,
7266         unlinkdir.c: Guard inclusion of config.h with HAVE_CONFIG_H.
7267
7268 2005-09-19  Jim Meyering  <jim@meyering.net>
7269
7270         * modules/pathmax (License): Change to LGPL.
7271
7272 2005-09-19  Derek Price  <derek@ximbiot.com>
7273
7274         * config/srclist.txt: glibc's glob.h is now in lib/glob-libc.h.
7275
7276 2005-09-19  Bruno Haible  <bruno@clisp.org>
7277
7278         * gnulib-tool (import): Provide default for --tests-base.
7279
7280 2005-09-19  Bruno Haible  <bruno@clisp.org>
7281
7282         * doc/quote.texi: New file, extracted from gnulib.texi.
7283         * doc/ctime.texi: New file, extracted from gnulib.texi.
7284         * doc/inet_ntoa.texi: New file, extracted from gnulib.texi.
7285         * doc/gnulib-tool.texi: New file, extracted from gnulib.texi.
7286         * doc/gnulib.texi: Include them.
7287
7288 2005-09-18  Bruno Haible  <bruno@clisp.org>
7289
7290         Portability fix.
7291         * gnulib-tool (func_readlink): New function.
7292         (func_ln_if_changed): Use it.
7293
7294 2005-09-18  Bruno Haible  <bruno@clisp.org>
7295
7296         * gnulib-tool: Support --with-tests also with --import.
7297         (func_emit_tests_Makefile_am): Use variables $m4base and $testsbase.
7298         (func_import): Use variables $testsbase and $inctests. Emit a
7299         gl_TESTS_BASE form into gnulib-cache.m4. Create $testsbase/Makefile.am.
7300         Remind the user to add AC_CONFIG_FILES($testsdir/Makefile) and
7301         SUBDIRS += $testsdir.
7302         (func_create_testdir): Update.
7303
7304 2005-09-18  Bruno Haible  <bruno@clisp.org>
7305
7306         * gnulib-tool: Revise --dry-run implementation. Use variable $doit
7307         instead of $dry_run.
7308         (func_cp_if_changed, func_mv_if_changed): Remove functions.
7309         (func_ln_if_changed): Don't handle dry-run here.
7310         (func_import): In dry-run mode, detect more precisely which actions
7311         would be performed, and don't use "...ing" verbs.
7312
7313 2005-09-18  Bruno Haible  <bruno@clisp.org>
7314
7315         * gnulib-tool (func_tmpdir): New function, taken from GNU gettextize.
7316         (func_import): Use join on two temporary files instead of three nested
7317         loops, in order to determine which files are new or old.
7318
7319 2005-09-18  Bruno Haible  <bruno@clisp.org>
7320
7321         * gnulib-tool (func_import): Comment out code that spits out the
7322         new files with --dry-run.
7323
7324 2005-09-18  Bruno Haible  <bruno@clisp.org>
7325
7326         * doc/gnulib.texi (Invoking gnulib-tool): 50% rewritten.
7327
7328 2005-09-16  Paul Eggert  <eggert@cs.ucla.edu>
7329
7330         * lib/stat-time.h: New file.
7331         * lib/timespec.h (ST_TIME_CMP_NS, ST_TIME_CMP, ATIME_CMP, CTIME_CMP):
7332         (MTIME_CMP, TIMESPEC_NS): Remove.  Now done by stat-time.h,
7333         in a different way.
7334         (timespec_cmp): New function.
7335         * lib/utimecmp.c: Include stat-time.h.
7336         (SYSCALL_RESOLUTION): Depend on whether various struct stat
7337         members exist, not on the obsolescent ST_MTIM_NSEC.
7338         (utimecmp): Use the new stat-time functions rater than TIMESPEC_NS.
7339
7340 2005-09-16  Paul Eggert  <eggert@cs.ucla.edu>
7341
7342         * config/srclist.txt: Remove glibc bug 1033 and uncomment mktime.c.
7343
7344 2005-09-16  Paul Eggert  <eggert@cs.ucla.edu>
7345
7346         * MODULES.html.sh (File system functions): Add stat-time.
7347         * modules/stat-time: New file.
7348         * modules/timespec (Files): Remove m4/st_mtim.m4; this
7349         is now done in a different way, by the stat-time module.
7350         * modules/utimecmp (Depends-on): Add stat-time.
7351
7352 2005-09-15  Paul Eggert  <eggert@cs.ucla.edu>
7353
7354         * m4/st_mtim.m4: Remove.  Superseded by...
7355         * m4/stat-time.m4: New file.
7356         * m4/timespec.m4 (gl_TIMESPEC): Require AC_C_INLINE.
7357         Do not invoke AC_STRUCT_ST_MTIM_NSEC; no longer needed.
7358
7359 2005-09-15  Derek Price  <derek@ximbiot.com>
7360
7361         * m4/strstr.m4 (gl_FUNC_STRSTR): Don't define strstr here.
7362
7363 2005-09-15  Derek Price  <derek@ximbiot.com>
7364
7365         * lib/regex_internal.h: Blank `pure' for GNUC < 3.
7366         * lib/regex_internal.c: Ditto, using this...
7367         (__GNUC_PREREQ): ...new macro.
7368         * lib/regcomp.c, regexec.c: Blank `always_inline' for GNUC < 3.1 using...
7369         (__GNUC_PREREQ): ...this new macro.
7370
7371         * lib/strstr.h: Include string.h. Define strstr as a macro here.
7372
7373 2005-09-15  Derek Price  <derek@ximbiot.com>
7374             Paul Eggert  <eggert@cs.ucla.edu>
7375
7376         * lib/regcomp.c, regexec.c, regex_internal.c: Back out previous
7377         changes, consolidating in...
7378         * lib/regex_internal.h: ...this file.
7379
7380 2005-09-13  Jim Meyering  <jim@meyering.net>
7381
7382         * lib/canon-host.c: Filter through gnu indent and reword comments slightly.
7383         * lib/canon-host.h (ch_strerror_r): Tweak cpp indentation and spacing.
7384
7385 2005-09-13  Derek Price  <derek@ximbiot.com>
7386
7387         * lib/canon-host.c (canon_host_r): Set *cherror on memory allocation
7388         failure.
7389         Reported by Jim Meyering  <jim@meyering.net>.
7390
7391 2005-09-12  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>  (tiny change)
7392
7393         * lib/base64.c: Typo.
7394         (base64_encode): Put b64str in initialized data section.
7395
7396 2005-09-12  Paul Eggert  <eggert@cs.ucla.edu>
7397
7398         Merge glibc and coreutils changes into gnulib, plus a few
7399         extra fixes.
7400         * lib/md5.c: Use #error rather than a string.
7401         (CYCLIC): New macro, from glibc source.  Use it instead of rol.
7402         * lib/md5.h (__GNUC_PREREQ, __THROW): Define if not defined already.
7403         (__attribute__): Define to empty for non recent-GCC.
7404         (__md5_buffer, __md5_finish_ctx, __md5_init_ctx, __md5_process_block):
7405         (__md5_process_bytes, __md5_read_ctx, __md5_stream):
7406         Renamed from their non-__ counterparts, with new macros replacing
7407         them if not _LIBC.  Add __THROW attribute.
7408         (rol): Remove.
7409         (struct md5_ctx): Align buffer if using GCC.
7410         * lib/sha1.h (struct sha1_ctx): Likewise.
7411         * lib/sha1.c (SWAP): Renamed from the NOTSWAP.  All uses changed.
7412         The old name was backwards.
7413         (NOTSWAP): Remove; not used.
7414         (rol): New macro, moved here from md5.h.
7415         (sha1_process_block): Remove a FIXME that doesn't make sense.
7416
7417 2005-09-12  Derek Price  <derek@ximbiot.com>
7418
7419         Return usable errors from canon-host.
7420         * lib/canon-host.h: New file.
7421         * lib/canon-host.c (canon_host): Wrap...
7422         (canon_host_r): ...this new function, which now relies exclusively on
7423         getaddrinfo.
7424         (ch_strerror): New function.
7425         (last_cherror): New global.
7426         * lib/getaddrinfo.c: Move include of getaddrinfo.h first to test interface.
7427         (getaddrinfo): Add AI_CANONNAME functionality.  Don't do arithmetic on
7428         void *.
7429         (freeaddrinfo): Free ai->ai_canonname when set.
7430
7431 2005-09-12  Derek Price  <derek@ximbiot.com>
7432
7433         Make canon-host require getaddrinfo.
7434         * m4/canon-host.m4 (gl_CANON_HOST): Remove most dependencies.
7435         AC_LIBSOURCE canon-host.h.  Call...
7436         (gl_PREREQ_CANON_HOST): ...this new function, which requires
7437         gl_GETADDRINFO.
7438         * m4/getaddrinfo.m4 (gl_GETADDRINFO): Compile gai_strerror when needed.
7439
7440 2005-09-12  Derek Price  <derek@ximbiot.com>
7441
7442         * modules/canon-host: Add canon-host.h.  Depend on getaddrinfo.  Make
7443         LGPL.
7444         * modules/getaddrinfo: Add link to opengroup spec.  Depend on strdup.
7445
7446 2005-09-12  Derek Price  <derek@ximbiot.com>
7447
7448         * lib/gai_strerror.c: Include config.h when available.  Include
7449         getaddrinfo.h before other headers to test interface.
7450         Reported by Larry Jones <lawrence.jones@ugs.com>.
7451
7452 2005-09-12  Derek Price  <derek@ximbiot.com>
7453             Paul Eggert  <eggert@cs.ucla.edu>
7454
7455         * modules/glob (Files): Add glob-libc.h.
7456
7457 2005-09-12  Derek Price  <derek@ximbiot.com>
7458             Paul Eggert  <eggert@cs.ucla.edu>
7459
7460         * m4/glob.m4 (gl_GLOB_SUBSTITUTE): AC_LIBSOURCES for glob.c,
7461         glob_.h, glob-libc.h.
7462         (gl_PREREQ_GLOB): Remove _SYS_CDEFS_H hack; no longer needed.
7463
7464 2005-09-12  Derek Price  <derek@ximbiot.com>
7465             Paul Eggert  <eggert@cs.ucla.edu>
7466
7467         * lib/glob-libc.h: Renamed from glob_.h.  The new version is
7468         taken from libc's glob.h, except with '#ifdef __GLOB_GNULIB'
7469         protecting things that should be done only in gnulib contexts.
7470         * lib/glob_.h: New file, containing only the glob things needed for
7471         gnulib.
7472         (GLOB_PREFIX): Remove.  All uses changed to look for __GLOB_GNULIB.
7473         (__GLOB_CONCAT, __GLOB_XCONCAT, __GLOB_ID): Remove; no longer needed.
7474         (glob, globfree, glob_pattern_p): Now defined simply in terms of
7475         rpl_glob, rpl_globfree, rpl_glob_pattern_p.
7476         (__GLOB_GNULIB): New macro, to keep the glob.h changes clearer
7477         and to respect the namespace rules better.
7478
7479 2005-09-08  Simon Josefsson  <jas@extundo.com>
7480
7481         * modules/socklen: New file.
7482
7483 2005-09-08  Simon Josefsson  <jas@extundo.com>
7484
7485         * m4/socklen.m4: New file.
7486
7487 2005-09-08  Paul Eggert  <eggert@cs.ucla.edu>
7488
7489         * modules/utimens (Files): Add m4/utimbuf.m4, since
7490         m4/utimens.m4 requires gl_CHECK_TYPE_STRUCT_UTIMBUF.
7491         Reported by Sergey Poznyakoff.
7492
7493 2005-09-08  Paul Eggert  <eggert@cs.ucla.edu>
7494
7495         * lib/glob.c (glob, globfree, __glob_pattern_p): Use old-style function
7496         definitions, since that's the preferred style in glibc.
7497         Fix a minor spacing issue, and update copyright notice to match glibc's.
7498
7499 2005-09-08  Paul Eggert  <eggert@cs.ucla.edu>
7500
7501         * config/srclist.txt: Remove glibc bug 1061; it's been fixed.
7502
7503 2005-09-06  Simon Josefsson  <jas@extundo.com>
7504
7505         * lib/getpass.c (getpass): Fix typo, test for HAVE_TCSETATTR and not
7506         TCSETATTR.  Reported by Derek Price <derek@ximbiot.com>.
7507
7508 2005-09-06  Paul Eggert  <eggert@cs.ucla.edu>
7509
7510         * lib/regex_internal.h (bitset_not): Add parens to avoid gcc -Wall warning.
7511
7512 2005-09-06  Paul Eggert  <eggert@cs.ucla.edu>
7513
7514         * config/srclist.txt: Add glibc bug 1302.
7515
7516 2005-09-05  Paul Eggert  <eggert@cs.ucla.edu>
7517
7518         Change bitset word type from unsigned int to unsigned long int,
7519         as this has better performance on typical 64-bit hosts.
7520         Port bitset code to hosts with unusual word sizes.
7521         * lib/regcomp.c (build_equiv_class, build_charclass, build_range_exp):
7522         (build_collating_symbol):
7523         Prefer bitset to re_bitset_ptr_t in prototypes, when the actual
7524         argument is a bitset.  This is merely a style issue, but it makes
7525         it clearer that an entire array is expected.
7526         (re_compile_fastmap_iter, init_dfa, init_word_char, optimize_subexps):
7527         * lib/regcomp.c (lower_subexp, parse_bracket_exp, built_charclass_op):
7528         Port to the case where bitset_word is not the same as unsigned int.
7529         * lib/regex_internal.h (bitset_set, bitset_clear, bitset_contain):
7530         (bitset_not, bitset_merge, bitset_set_all, bitset_mask):
7531         Likewise.
7532         * lib/regexec.c (check_dst_limits_calc_pos_1, check_subexp_matching_top):
7533         (build_trtable, group_nodes_into_DFAstates):
7534         Likewise.
7535         * lib/regcomp.c (re_compile_fastmap_iter, utf8_sb_map, optimize_utf8):
7536         Don't assume that SBC_MAX is a multiple of BITSET_WORD_BITS.
7537         * lib/regex_internal.h (bitset_set_all, bitset_not): Likewise.
7538         * lib/regexec.c (group_nodes_into_DFAstates): Likewise.
7539         * lib/regcomp.c (utf8_sb_map): Don't assume UINT_MAX == 0xffffffff.
7540         * lib/regcomp.c (optimize_subexps, lower_subexp):
7541         Work even if bitset_word has holes in its bitwise representation.
7542         * lib/regex_internal.h (BITSET_WORD_BITS): Likewise.
7543         * lib/regexec.c (check_dst_limits_calc_pos_1, check_subexp_matching_top):
7544         Likewise.
7545         * lib/regex_internal.c (re_string_reconstruct):
7546         Don't assume UCHAR_MAX == 255.
7547         * lib/regex_internal.h (bitset_set_all): Likewise.
7548         * lib/regex_internal.h (BITSET_WORD_BITS): Renamed from UINT_BITS.
7549         All uses changed.
7550         (BITSET_WORDS): Renamed from BITSET_UINTS.  All uses changed.
7551         (bitset_word): New type, replacing 'unsigned int' for bitset uses.
7552         All uses changed.
7553         (BITSET_WORD_MAX): New macro.
7554         (bitset_set, bitset_clear, bitset_contain, bitset_empty):
7555         (bitset_set_all, bitset_copy):  Now inline functions, not macros.
7556         (bitset_empty, bitset_copy):
7557         Prefer sizeof (bitset) to multiplying it out ourselves.
7558         (bitset_not_merge): Remove; unused.
7559         (bitset_contain): Return bool, not unsigned int with one bit on.
7560         All callers changed.
7561         * lib/regexec.c (build_trtable): Don't assume bitset has no stricter
7562         alignment than re_node_set; do this by defining a new internal
7563         type struct dests_alloc and using it to allocate memory.
7564
7565 2005-09-05  Bruno Haible  <bruno@clisp.org>
7566
7567         * gnulib-tool (func_import): Fix comparison in handling of symbolic
7568         links.
7569
7570 2005-09-04  Martin Lambers <marlam@marlam.de>  (tiny change)
7571
7572         * modules/size_max (Makefile.am): Add size_max.h
7573
7574 2005-09-04  Derek Price  <derek@ximbiot.com>
7575
7576         * gnulib-tool (func_import): Fix reversed $symbolic logic.
7577
7578 2005-09-03  Simon Josefsson  <jas@extundo.com>
7579
7580         * gnulib-tool: Fix typo.
7581
7582 2005-09-03  Simon Josefsson  <jas@extundo.com>
7583
7584         * config/srclist.txt: Add glibc bug 1293.
7585
7586 2005-09-03  Derek Price  <derek@ximbiot.com>
7587
7588         * m4/getlogin_r (gl_GETLOGIN_R): Fix cut & paste error.
7589         From Larry Jones <lawrence.jones@ugs.com>.
7590
7591 2005-09-02  Simon Josefsson  <jas@extundo.com>
7592
7593         * modules/socklen: New file.
7594
7595 2005-09-02  Simon Josefsson  <jas@extundo.com>
7596
7597         * modules/havelib: New module.
7598
7599         * modules/gettext, modules/iconv, modules/lock, modules/readline:
7600         Use havelib.
7601
7602 2005-09-02  Paul Eggert  <eggert@cs.ucla.edu>
7603
7604         Check for arithmetic overflow when calculating sizes, to prevent
7605         some buffer-overflow issues.  These patches are conservative, in the
7606         sense that when I couldn't determine whether an overflow was possible,
7607         I inserted a run-time check.
7608         * lib/regex_internal.h (re_xmalloc, re_xrealloc, re_x2realloc): New macros.
7609         (SIZE_MAX) [!defined SIZE_MAX]: New macro.
7610         (re_alloc_oversized, re_x2alloc_oversized, re_xnmalloc):
7611         (re_xnrealloc, re_x2nrealloc): New inline functions.
7612         * lib/regcomp.c (init_dfa, analyze, build_range_exp, parse_bracket_exp):
7613         (build_equiv_class, build_charclass): Check for arithmetic overflow
7614         in size expression calculations.
7615         * lib/regex_internal.c (re_string_realloc_buffers):
7616         (build_wcs_upper_buffer, re_node_set_add_intersect):
7617         (re_node_set_init_union, re_node_set_insert, re_node_set_insert_last):
7618         (re_dfa_add_node, register_state): Likewise.
7619         * lib/regexec.c (re_search_stub, re_copy_regs, re_search_internal):
7620         (prune_impossible_nodes, push_fail_stack, set_regs, check_arrival):
7621         (build_trtable, extend_buffers, match_ctx_init, match_ctx_add_entry):
7622         (match_ctx_add_subtop, match_ctx_add_sublast): Likewise.
7623
7624 2005-09-02  Paul Eggert  <eggert@cs.ucla.edu>
7625
7626         * modules/inttostr (Files): Add m4/inttypes_h.m4, m4/stdint_h.m4,
7627         m4/ulonglong.m4.  Problem reported by Martin Lambers.
7628
7629 2005-09-02  Bruno Haible  <bruno@clisp.org>
7630
7631         Support for lib vs. lib64 distinction on biarch platforms.
7632         * m4/lib-prefix.m4 (AC_LIB_PREPARE_MULTILIB): New macro.
7633         (AC_LIB_PREFIX): Require it. Use $acl_libdirstem instead of 'lib'.
7634         * m4/lib-link.m4 (AC_LIB_LINKFLAGS_BODY): Likewise.
7635
7636 2005-09-02  Bruno Haible  <bruno@clisp.org>
7637
7638         * gnulib-tool (import): In the other first-use case, provide defaults
7639         as well.
7640
7641 2005-09-02  Bruno Haible  <bruno@clisp.org>
7642
7643         * config/srclist.txt: lib-link.m4 and lib-prefix.m4 currently have patches
7644         not yet found in the latest gettext release.
7645
7646 2005-09-01  Paul Eggert  <eggert@cs.ucla.edu>
7647
7648         * lib/glob.c (GET_LOGIN_NAME_MAX): Renamed from LOGIN_NAME_MAX,
7649         to avoid a collision with bits/local_lim.h in glibc.
7650         All uses changed.  Problem reported by Dmitry V. Levin in
7651         <http://sources.redhat.com/bugzilla/show_bug.cgi?id=1060>.
7652
7653         * lib/regex_internal.c (build_wcs_upper_buffer): Fix portability
7654         bugs in int versus size_t comparisons.
7655         (re_string_context_at): Fix bug where the code assumed that
7656         Idx is signed.
7657
7658         Use bool where appropriate.
7659         * lib/regcomp.c (re_set_fastmap): ICASE arg is bool, not int.
7660         All callers changed.
7661         (calc_eclosure_iter): Likewise, for ROOT arg.
7662         (parse_bracket_element): Likewise, for ACCEPT_HYPHEN arg.
7663         (build_charclass_op): Likewise, for NON_MATCH arg.
7664         * lib/regex_internal.c (re_string_allocate, re_string_construct):
7665         (re_string_construct_common): Likewise, for ICASE arg.
7666         * lib/regexec.c (re_search_2_stub, re_search_stub):
7667         Likewise, for RET_LEN arg.
7668         (check_matching): Likewise, for FL_LONGEST_MATCH arg.
7669         (set_regs): Likewise, for FL_BACKTRACK arg.
7670         * lib/regcomp.c (re_compile_fastmap_iter, optimize_utf8):
7671         (duplicate_node_closure, calc_inveclosure, calc_eclosure):
7672         (calc_eclosure_iter, parse_bracket_exp):
7673         Use bool for internal variables that are booleans.
7674         * lib/regexec.c (re_search_internal, check_matching, proceed_next_node):
7675         (set_regs, build_sifted_states, sift_states_bkref):
7676         (check_arrival_add_next_nodes, check_arrival_expand_ecl_sub):
7677         (expand_bkref_cache, build_trtable, group_nodes_into_DFAstates):
7678         (find_collation_sequence_value):
7679         Likewise.
7680         * lib/regex_internal.c (re_node_set_insert, re_node_set_insert_last):
7681         (re_node_set_compare):
7682         Return bool, not int. All callers changed.
7683         * lib/regexec.c (check_halt_node_context, check_dst_limits):
7684         (build_trtable, check_node_accept): Likewise.
7685         * lib/regex_internal.h: Include stdbool.h.
7686
7687         Fix bugs uncovered when converting to bool.
7688         * lib/regcomp.c (calc_eclosure_iter): Check for storage allocation
7689         failure instead of charging ahead blindly.
7690         * lib/regex_internal.c (register_state): Likewise.
7691         * lib/regexec.c (re_search_2_stub): Use simpler method than boolean
7692         for freeing internal storage.
7693         (group_nodes_into_DFA_states): Use unsigned int, not int, for
7694         bitset pieces used as boolean, to avoid undefined behavior
7695         on hosts that do int overflow checking.
7696
7697 2005-09-01  Paul Eggert  <eggert@cs.ucla.edu>
7698
7699         * config/srclist.txt: Add glibc bugs 1285-1287.
7700
7701 2005-09-01  Jim Meyering  <jim@meyering.net>
7702
7703         * m4/lchown.m4: Require gl_FUNC_CHOWN, for the definition of
7704         CHOWN_MODIFIES_SYMLINK, which is used by lchown.c.
7705         Require gl_STAT_MACROS, too.
7706
7707 2005-09-01  Bruno Haible  <bruno@clisp.org>
7708
7709         * gnulib-tool (import): In the first-use case, provide defaults.
7710
7711 2005-09-01  Bruno Haible  <bruno@clisp.org>
7712
7713         * gnulib-tool (func_import): Remove the .tmp files.
7714
7715 2005-09-01  Bruno Haible  <bruno@clisp.org>
7716
7717         * gnulib-tool (func_import): Fix handling of symbolic links.
7718
7719 2005-08-31  Paul Eggert  <eggert@cs.ucla.edu>
7720
7721         On 64-bit hosts (where size_t is 64 bits and int is 32 bits), the
7722         old glibc regex code mishandles strings longer than 2**31 bytes.
7723         This patch fixes this when the regex code is used in gnulib
7724         (i.e., outside glibc).
7725
7726         This patch should not affect the use of the regex code inside
7727         glibc.  No doubt this problem also needs to be handled for glibc
7728         as well, but the result will be an incompatible change to the
7729         glibc ABI, and the old ABI will have to be supported too.  That
7730         can be the the subject for another patch.
7731
7732         * lib/regex.h (_REGEX_LARGE_OFFSETS): New feature-test macro,
7733         governing whether the rest of this patch is active.  By default,
7734         the macro is disabled and the patch has no effect.
7735         (regoff_t) [defined _REGEX_LARGE_OFFSETS]: Define to off_t, not int.
7736         (__re_idx_t, __re_size_t, __re_long_size_t): New types.
7737         (struct re_pattern_buffer, re_search, re_search_2, re_match):
7738         (re_match_2, re_set_registers): Use the new types.
7739         * lib/regex_internal.h (Idx, re_hashval_t): New types.
7740         (REG_MISSING, REG_ERROR, REG_VALID_INDEX, REG_VALID_NONZERO_INDEX):
7741         New macros.
7742         (re_node_set, re_charset_t, re_token_t, re_string_realloc_buffers):
7743         (re_string_context_at, bin_tree_t, re_dfastate_t):
7744         (struct re_state_table_entry, state_array_t, re_sub_match_last_t):
7745         (re_sub_match_top_t, re_match_context_t, re_sift_context_t):
7746         (struct re_fail_stack_ent_t, struct re_fail_stack_t, struct re_dfa_t):
7747         (re_string_char_size_at, re_string_wchar_at):
7748         (re_string_elem_size_at):
7749         Use the new types and macros to port to 64-bit hosts.
7750         Use unsigned types for internal values, so that the code
7751         mostly works even for arrays larger than SSIZE_MAX.
7752         * lib/regcomp.c (re_compile_internal, init_dfa, duplicate_node):
7753         (search_duplicated_node, calc_eclosure_iter, fetch_number):
7754         (parse_reg_exp, parse_branch, parse_expression, parse_sub_exp):
7755         (build_equiv_class, build_charclass, re_compile_fastmap_iter):
7756         (free_dfa_content, create_initial_state, optimize_utf8, analyze):
7757         (optimize_subexps, calc_first, link_nfa_nodes, duplicate_node_closure):
7758         (calc_inveclosure, parse_dup_op, build_range_exp):
7759         (build_collating_symbol, parse_bracket_exp, build_charclass_op):
7760         (fetch_number, create_token_tree, mark_opt_subexp):
7761         Likewise.
7762         * lib/regex_internal.c (re_string_construct_common, create_ci_newstate):
7763         (create_cd_newstate, re_string_allocate, re_string_construct):
7764         (re_string_realloc_buffers, build_wcs_upper_buffer):
7765         (re_string_skip_chars, build_upper_buffer, re_string_translate_buffer):
7766         (re_string_reconstruct, re_string_peek_byte_case):
7767         (re_string_fetch_byte_case, re_string_context_at):
7768         (re_node_set_alloc, re_node_set_init_1, re_node_set_init_2):
7769         (re_node_set_init_copy, re_node_set_add_intersect):
7770         (re_node_set_init_union, re_node_set_merge, re_node_set_insert):
7771         (re_node_set_insert_last, re_node_set_compare, re_node_set_contains):
7772         (re_node_set_remove_at, re_dfa_add_node, calc_state_hash):
7773         (re_acquire_state, re_acquire_state_context, register_state):
7774         Likewise.
7775         * lib/regex.c (match_ctx_init, match_ctx_add_entry, search_cur_bkref_entry):
7776         (match_ctx_add_subtop, match_ctx_add_sublast, sift_ctx_init):
7777         (re_search_internal, re_search_2_stub, re_search_stub)
7778         (re_copy_regs, check_matching, check_halt_state_context, update_regs):
7779         (push_fail_stack, sift_states_iter_mb, build_sifted_states):
7780         (update_cur_sifted_state, check_dst_limits):
7781         (check_dst_limits_calc_pos_1, check_dst_limits_calc_pos):
7782         (check_subexp_limits, sift_states_bkref, merge_state_array):
7783         (check_subexp_matching_top, get_subexp, get_subexp_sub):
7784         (find_subexp_node, check_arrival, check_arrival_add_next_nodes):
7785         (check_arrival_expand_ecl, check_arrival_expand_ecl_sub):
7786         (expand_bkref_cache, check_node_accept_bytes):
7787         (group_nodes_into_DFAstates, check_node_accept, regexec, re_match):
7788         (re_search, re_match_2, re_search_2, prune_impossible_nodes):
7789         (acquire_init_state_context, check_halt_node_context):
7790         (proceed_next_node, pop_fail_stack, set_regs, free_fail_stack_return):
7791         (sift_states_backward, clean_state_log_if_needed):
7792         (sub_epsilon_src_nodes, add_epsilone_src_nodes, merge_state_with_log):
7793         (find_recover_state, transit_state_sb, transit_state_mb):
7794         (transit_state_bkref, build_trtable, match_ctx_clean):
7795         Likewise.
7796         * lib/regcomp.c (parse_dup_op): Add an extra test if Idx is unsigned,
7797         to work around an assumption that REG_MISSING is negative.
7798
7799         * lib/regcomp.c (re_comp) [defined _REGEX_RE_COMP || defined _LIBC]:
7800         (seek_collating_symbol_entry) [defined _LIBC]:
7801         (lookup_collation_sequence_value) [defined _LIBC]:
7802         (build_range_exp, build_collating_symbol) [defined _LIBC]:
7803         Use prototypes rather than old-style function definitions.
7804         * lib/regexec.c (re_exec) [defined _REGEX_RE_COMP || defined _LIBC]:
7805         (transit_state_sb) [0]:
7806         (find_collation_sequence_value) [defined _LIBC]: Likewise.
7807
7808         * lib/regexec.c (re_search_internal): Simplify update of rm_so and
7809         rm_eo.
7810
7811         * lib/regcomp.c (re_compile_fastmap_iter, init_dfa, init_word_char):
7812         (optimize_subexps, lower_subexp):
7813         Don't assume 1<<31 has defined behavior on hosts with 32-bit int,
7814         since the signed shift might overflow.  Use 1u<<31 instead.
7815         * lib/regex_internal.h (bitset_set, bitset_clear, bitset_contain): Likewise.
7816         * lib/regexec.c (check_dst_limits_calc_pos_1, check_subexp_matching_top):
7817         Likewise.
7818
7819         * lib/regcomp.c (optimize_subexps, lower_subexp):
7820         Use CHAR_BIT rather than 8, for clarity.
7821         * lib/regexec.c (check_dst_limits_calc_pos_1):
7822         (check_subexp_matching_top): Likewise.
7823         * lib/regcomp.c (init_dfa): Make table_size unsigned, so that we don't
7824         have to worry about portability issues when shifting it left.
7825         Remove no-longer-needed test for table_size > 0.
7826         * lib/regcomp.c (parse_sub_exp): Do not shift more bits than there are
7827         in a word, as the resulting behavior is undefined.
7828         * lib/regexec.c (check_dst_limits_calc_pos_1): Likewise;
7829         in one case, a <= should have been an <, and in another case the
7830         whole test was missing.
7831         * lib/regex_internal.h (BYTE_BITS): Remove.  All uses changed to
7832         the standard name CHAR_BIT.
7833         * lib/regexec.c (match_ctx_add_entry): Don't assume that ~0 == -1;
7834         this is not true on one's complement and signed-magnitude hosts.
7835
7836         * lib/regex_internal.h (re_sub_match_top_t): Remove unused member
7837         next_last_offset.
7838         (struct re_dfa_t): Remove unused member states_alloc.
7839         * lib/regcomp.c (init_dfa): Don't initialize unused members.
7840
7841 2005-08-31  Paul Eggert  <eggert@cs.ucla.edu>
7842
7843         * m4/regex.m4 (gl_REGEX): Require AC_SYS_LARGEFILE, Define
7844         _REGEX_LARGE_OFFSETS).  Test for regoff_t/off_t bug in 64-bit
7845         and large-file glibc and in 32-bit large-file Solaris.
7846
7847 2005-08-31  Paul Eggert  <eggert@cs.ucla.edu>
7848
7849         * lib/regex_internal.c (re_string_reconstruct): Don't assume buffer
7850         lengths fit in regoff_t; this isn't true if regoff_t is the same
7851         width as size_t.
7852         * lib/regex.c (re_search_internal): 5th arg is LAST_START
7853         (= START + RANGE) instead of RANGE.  This avoids overflow
7854         problems when regoff_t is the same width as size_t.
7855         All callers changed.
7856         (re_search_2_stub): Check for overflow when adding the
7857         sizes of the two strings.
7858         (re_search_stub): Check for overflow when adding START
7859         to RANGE; if it occurs, substitute the extreme value.
7860
7861 2005-08-31  Paul Eggert  <eggert@cs.ucla.edu>
7862
7863         * config/srclist.txt: Add glibc bugs 1273, 1278-1282, 1284.
7864
7865 2005-08-31  Jim Meyering  <jim@meyering.net>
7866
7867         * lib/regcomp.c (search_duplicated_node): Make first pointer arg
7868         a pointer-to-const.
7869         * lib/regex_internal.c (create_ci_newstate, create_cd_newstate):
7870         (register_state): Likewise.
7871         * lib/regexec.c (search_cur_bkref_entry, check_dst_limits):
7872         (check_dst_limits_calc_pos_1, check_dst_limits_calc_pos):
7873         (group_nodes_into_DFAstates): Likewise.
7874
7875 2005-08-31  Jim Meyering  <jim@meyering.net>
7876
7877         * check-module: Add a FIXME comment.
7878
7879 2005-08-31  Eric Blake  <ebb9@byu.net>
7880
7881         * modules/unistd-safer (Files): Add unistd--.h.
7882         * modules/stdio-safer (Files): Add stdio--.h.
7883
7884 2005-08-31  Derek Price  <derek@ximbiot.com>
7885
7886         * lib/getdelim.c (getdelim): Return EOF on EOF.
7887         Reported by Larry Jones <lawrence.jones@ugs.com>.
7888
7889 2005-08-31  Bruno Haible  <bruno@clisp.org>
7890
7891         Avoid unnecessary diffs in the generated lib/Makefile.am.
7892         * gnulib-tool (func_emit_lib_Makefile_am): Don't write the cmd into
7893         the generated files.
7894         (func_import): Don't set cmd.
7895
7896 2005-08-31  Bruno Haible  <bruno@clisp.org>
7897
7898         * lib/strstr.c: Include <stddef.h>, for NULL.
7899         * lib/strcasestr.c: Likewise.
7900         Reported by Yoann Vandoorselaere <yoann.v@prelude-ids.com>.
7901
7902 2005-08-31  Bruno Haible  <bruno@clisp.org>
7903
7904         * gnulib-tool: New option --macro-prefix.
7905         (func_import): Use macro_prefix.
7906         (import): Handle option --macro-prefix.
7907
7908 2005-08-31  Bruno Haible  <bruno@clisp.org>
7909
7910         * gnulib-tool (import): Rename most ac_* variables to cached_*.
7911         Also use new variables cached_lgpl, cached_libtool.
7912
7913 2005-08-31  Bruno Haible  <bruno@clisp.org>
7914
7915         * gnulib-tool (func_import): Require AC_GNU_SOURCE etc. instead of
7916         always instantiating them.
7917
7918 2005-08-31  Bruno Haible  <bruno@clisp.org>
7919
7920         * gnulib-tool (func_import): Read the previous cached settings
7921         from gnulib-cache.m4 and gnulib-comp.m4. Remove files that were
7922         earlier added by gnulib but are now dropped. Warn when a gnulib file
7923         overwrites a non-gnulib file.
7924
7925 2005-08-31  Bruno Haible  <bruno@clisp.org>
7926
7927         * gnulib-tool (func_import): Generate two files gnulib-cache.m4 and
7928         gnulib-comp.m4 instead of a single gnulib.m4, to make it easy for
7929         projects that don't keep autogenerated files in CVS. Put into
7930         actioncmd only the specified modules, not the transitive closure.
7931
7932 2005-08-31  Bruno Haible  <bruno@clisp.org>
7933
7934         * gnulib-tool (func_import): Fix defaulting of $libname and $libtool.
7935         Create directories that shall be filled.
7936         (import): Don't look for gl_* macros in configure.ac. Recurse across
7937         all directories containing a gnulib-cache.m4 files, if meaningful.
7938
7939 2005-08-31  Bruno Haible  <bruno@clisp.org>
7940
7941         * gnulib-tool (func_import): Emit also a stub for gl_LIBTOOL.
7942         (import): Set seen_libtool when we see gl_LIBTOOL.
7943
7944 2005-08-31  Bruno Haible  <bruno@clisp.org>
7945
7946         * gnulib-tool (func_import): Also copy m4/gnulib-tool.m4. Omit
7947         declaration macro definitions from generated gnulib.m4.
7948
7949 2005-08-30  "Oskar Liljeblad" <oskar@osk.mine.nu>
7950
7951         * lib/iconvme.h: Add prototype for iconv_alloc.
7952
7953 2005-08-29  Simon Josefsson  <jas@extundo.com>
7954
7955         * lib/iconvme.c: Fix errno.
7956
7957 2005-08-29  Bruno Haible  <bruno@clisp.org>
7958
7959         * gnulib-tool: Enclose all occurrences of $destdir in "...", so
7960         that it works when the directory contains spaces.
7961
7962 2005-08-29  Bruno Haible  <bruno@clisp.org>
7963
7964         * gnulib-tool (import): Avoid unnecessary spaces in $avoidlist.
7965
7966 2005-08-29  Bruno Haible  <bruno@clisp.org>
7967
7968         * gnulib-tool (func_import): Emit more comments into gnulib.m4.
7969         Emit more advice.
7970
7971 2005-08-29  Bruno Haible  <bruno@clisp.org>
7972         and Stepan Kasal  <kasal@ucw.cz>
7973
7974         * check-module: If more parameters are given, check each of them
7975         separately; add more exceptions, as noted by Jim Meyering.
7976         (check_module): New procedure.
7977         (%exempt_header): Now contains all exceptions.
7978
7979 2005-08-29  Ben Pfaff  <blp@cs.stanford.edu>
7980
7981         * modules/byteswap (Makefile.am): Fix rule to not assume GNU make.
7982
7983 2005-08-29  "Oskar Liljeblad" <oskar@osk.mine.nu>
7984
7985         * lib/iconvme.c: Split iconv_string into iconv_alloc.
7986
7987 2005-08-28  Bruno Haible  <bruno@clisp.org>
7988
7989         * m4/gnulib-tool.m4: New file.
7990
7991 2005-08-27  Jim Meyering  <jim@meyering.net>
7992
7993         * modules/unistd-safer (Files): Add pipe-safer.c.
7994         * modules/fcntl-safer (Files): Add creat-safer.c.
7995
7996 2005-08-27  Jim Meyering  <jim@meyering.net>
7997
7998         * m4/stdlib-safer.m4: New file.  From coreutils.
7999         * m4/stdio-safer.m4 (gl_STDIO_SAFER): Add stdio--.h.
8000         * m4/fcntl-safer.m4 (gl_FCNTL_SAFER): Add creat-safer.c to the
8001         AC_LIBSOURCES list and arrange to compile it via AC_LIBOBJ.
8002         * m4/unistd-safer.m4 (gl_UNISTD_SAFER): Likewise, add pipe-safer.c.
8003         Add pipe-safer.c and unistd--.h to the AC_LIBSOURCES list.
8004
8005 2005-08-27  Jim Meyering  <jim@meyering.net>
8006
8007         * lib/fopen-safer.c: Merge minor changes from coreutils.
8008         * lib/dup-safer.c: Likewise.
8009         * lib/fd-safer.c: Likewise.
8010
8011         Merge from coreutils.
8012         * lib/stdio--.h: New file.
8013         * lib/stdlib--.h: New file.
8014         * lib/mkstemp-safer.c: New file.
8015
8016         GNU tar needs these.
8017         * lib/pipe-safer.c: New file.
8018         * lib/creat-safer.c: New file.
8019         * lib/fcntl--.h (creat): Define to creat_safer.
8020         * lib/fcntl-safer.h: Include <sys/types.h> and declare creat_safer.
8021         * lib/unistd--.h (pipe): Define to pipe_safer.
8022         * lib/unistd-safer.h: Declare pipe_safer.
8023
8024 2005-08-26  Simon Josefsson  <jas@extundo.com>
8025
8026         * lib/getpass.c: Use _WIN32 instead of WIN32, suggested by Bruno
8027         Haible <bruno@clisp.org>.
8028
8029 2005-08-26  Paul Eggert  <eggert@cs.ucla.edu>
8030
8031         * lib/regex_internal.h: Remove all references to
8032         RE_NO_INTERNAL_PROTOTYPES; no longer neeeded now that we assume C89
8033         or better.
8034         (bitset_not, bitset_merge, bitset_not_merge):
8035         (bitset_mask, re_string_allocate, re_string_construct):
8036         (re_string_reconstruct, re_string_destruct, re_string_elem_size_at):
8037         (re_string_char_size_at, re_string_wchar_at, re_string_peek_byte_case):
8038         (re_string_fetch_byte_case, re_node_set_alloc, re_node_set_init_1):
8039         (re_node_set_init_2, re_node_set_init_copy, re_node_set_add_intersect):
8040         (re_node_set_init_union, re_node_set_merge, re_node_set_insert):
8041         (re_node_set_insert_last, re_node_set_compare, re_node_set_contains):
8042         (re_node_set_remove_at, re_dfa_add_node, re_acquire_state):
8043         (re_acquire_state_context):
8044         Remove unnecessary forward decls.
8045         (re_string_char_size_at, re_string_wchar_at, re_string_elem_size_at):
8046         Put __attribute at function definition,
8047         now that the function decl has been removed.
8048         * lib/regex_internal.c (re_string_peek_byte_case):
8049         (re_string_fetch_byte_case, re_node_set_compare, re_node_set_contains):
8050         Likewise.
8051
8052 2005-08-25  Stepan Kasal  <kasal@ucw.cz>
8053
8054         * m4/regex.m4: Add AC_PREREQ(2.50).
8055         (gl_REGEX): If --with-included-regex was given, skip the autodetection.
8056
8057 2005-08-25  Simon Josefsson  <jas@extundo.com>
8058
8059         * m4/getpass.m4: Check for termios.h, tcgetattr, tcsetattr, and
8060         __fsetlocking.
8061
8062 2005-08-25  Simon Josefsson  <jas@extundo.com>
8063
8064         * lib/getpass.c: Add WIN32 implementation.  Conditionalize use of
8065         termios.h, tcgetattr, tcsetattr and __fsetlocking.  Remove some
8066         GLIBC specific code.
8067
8068 2005-08-25  Paul Eggert  <eggert@cs.ucla.edu>
8069
8070         Make regex safe for g++.  This fixes one real bug (an "err"
8071         that should have been "*err").  g++ problem reported by
8072         Sam Steingold.
8073         * lib/regex_internal.h (re_calloc): New macro, consistent with
8074         re_malloc etc.  All callers of calloc changed to use re_calloc.
8075         * lib/regex_internal.c (build_wcs_upper_buffer): Return reg_errcode_t,
8076         not int.  All callers changed.
8077         * lib/regcomp.c (re_compile_fastmap_iter): Don't use alloca (mb_cur_max);
8078         just use an array of size MB_LEN_MAX.
8079         * lib/regexec.c (push_fail_stack): Use re_realloc, not realloc.
8080         (find_recover_state): Change "err" to "*err"; this fixes what
8081         appears to be a real bug.
8082         (check_arrival_expand_ecl_sub): Be consistent about reg_errcode_t
8083         versus int.
8084
8085 2005-08-25  Paul Eggert  <eggert@cs.ucla.edu>
8086
8087         * modules/regex (Depends-on): Add malloc, since the code
8088         assumes that !malloc(0) means failure.
8089
8090 2005-08-25  Paul Eggert  <eggert@cs.ucla.edu>
8091
8092         * lib/regexec.c (set_regs): Don't alloca with an unbounded size.
8093
8094         alloca modernization/simplification for regex.
8095         * lib/regex.c: Remove portability cruft for alloca.  This no longer
8096         needs to be at the start of the file, and can be moved into
8097         regex_internal.h and simplified.
8098         * lib/regex_internal.h: Include <alloca.h>.
8099         (__libc_use_alloca) [!defined _LIBC]: New macro.
8100         * lib/regexec.c (build_trtable): Remove "#ifdef _LIBC", since the code
8101         now works outside glibc.
8102
8103 2005-08-25  Paul Eggert  <eggert@cs.ucla.edu>
8104
8105         * config/srclist.txt: Add glibc bugs 1241, 1245.
8106
8107 2005-08-25  Jim Meyering  <jim@meyering.net>
8108
8109         * lib/open-safer.c: Include <config.h>.
8110         Otherwise, we'd lose LARGEFILE support in any file using
8111         e.g. "fcntl--.h"
8112
8113 2005-08-25  Bruno Haible  <bruno@clisp.org>
8114
8115         * m4/minmax.m4: Require autoconf 2.52.
8116         (gl_MINMAX_IN_HEADER): Add comments. Use m4_pushdef/m4_popdef instead
8117         of define/undefine. Use AS_TR_SH and AS_TR_CPP as more robust
8118         alternatives of translit over the alphabet.
8119         Based on a patch from Stepan Kasal <kasal@ucw.cz>.
8120
8121 2005-08-24  Simon Josefsson  <jas@extundo.com>
8122
8123         * tests/test-getpass.c: New file.
8124
8125 2005-08-24  Paul Eggert  <eggert@cs.ucla.edu>
8126
8127         * m4/regex.m4 (gl_REGEX): Use POSIX-compliant spellings when testing
8128         for GNU regex features.
8129
8130 2005-08-24  Paul Eggert  <eggert@cs.ucla.edu>
8131
8132         * lib/regcomp.c (regerror): 2nd arg is 'restrict', as per POSIX.
8133         * lib/regex.h (regerror): Likewise.
8134
8135         * lib/regex.c: Do not include <sys/types.h>, as POSIX no longer
8136         requires this.  (The code never needed it.)
8137
8138         * lib/regcomp.c, regex_internal.c, regex_internal.h, regexec.c:
8139         All uses of recently-renamed identifiers changed to use the new,
8140         POSIX-compliant names.  The code will build and run just fine
8141         without these changes, but it's better to eat our own dog food
8142         and use the standard-conforming names.
8143
8144         * lib/regex.h: Fix a multitude of POSIX name space violations.
8145         These changes have an effect only for programs that define
8146         _POSIX_C_SOURCE, _POSIX_SOURCE, or _XOPEN_SOURCE; they
8147         do not change anything for programs compiled in the normal way.
8148         Also, there is no effect on the ABI.
8149
8150         (_REGEX_SOURCE): New macro.
8151         Do not include <stddef.h> if _XOPEN_SOURCE and VMS are both
8152         defined and _GNU_SOURCE is not; this fixes a name space violation.
8153
8154         Rename the following macros to obey POSIX requirements.
8155         The old names are still visible as macros if _REGEX_SOURCE is defined.
8156         (REG_BACKSLASH_ESCAPE_IN_LISTS): renamed from
8157         RE_BACKSLASH_ESCAPE_IN_LISTS.
8158         (REG_BK_PLUS_QM): renamed from RE_BK_PLUS_QM.
8159         (REG_CHAR_CLASSES): renamed from RE_CHAR_CLASSES.
8160         (REG_CONTEXT_INDEP_ANCHORS): renamed from RE_CONTEXT_INDEP_ANCHORS.
8161         (REG_CONTEXT_INDEP_OPS): renamed from RE_CONTEXT_INDEP_OPS.
8162         (REG_CONTEXT_INVALID_OPS): renamed from RE_CONTEXT_INVALID_OPS.
8163         (REG_DOT_NEWLINE): renamed from RE_DOT_NEWLINE.
8164         (REG_DOT_NOT_NULL): renamed from RE_DOT_NOT_NULL.
8165         (REG_HAT_LISTS_NOT_NEWLINE): renamed from RE_HAT_LISTS_NOT_NEWLINE.
8166         (REG_INTERVALS): renamed from RE_INTERVALS.
8167         (REG_LIMITED_OPS): renamed from RE_LIMITED_OPS.
8168         (REG_NEWLINE_ALT): renamed from RE_NEWLINE_ALT.
8169         (REG_NO_BK_BRACES): renamed from RE_NO_BK_BRACES.
8170         (REG_NO_BK_PARENS): renamed from RE_NO_BK_PARENS.
8171         (REG_NO_BK_REFS): renamed from RE_NO_BK_REFS.
8172         (REG_NO_BK_VBAR): renamed from RE_NO_BK_VBAR.
8173         (REG_NO_EMPTY_RANGES): renamed from RE_NO_EMPTY_RANGES.
8174         (REG_UNMATCHED_RIGHT_PAREN_ORD): renamed from
8175         RE_UNMATCHED_RIGHT_PAREN_ORD.
8176         (REG_NO_POSIX_BACKTRACKING): renamed from RE_NO_POSIX_BACKTRACKING.
8177         (REG_NO_GNU_OPS): renamed from RE_NO_GNU_OPS.
8178         (REG_DEBUG): renamed from RE_DEBUG.
8179         (REG_INVALID_INTERVAL_ORD): renamed from RE_INVALID_INTERVAL_ORD.
8180         (REG_IGNORE_CASE): renamed from RE_ICASE.  This renaming is a bit
8181         unusual, since we can't clash with the POSIX REG_ICASE.
8182         (REG_CARET_ANCHORS_HERE): renamed from RE_CARET_ANCHORS_HERE.
8183         (REG_CONTEXT_INVALID_DUP): renamed from RE_CONTEXT_INVALID_DUP.
8184         (REG_NO_SUB): renamed from RE_NO_SUB.
8185         (REG_SYNTAX_EMACS): renamed from RE_SYNTAX_EMACS.
8186         (REG_SYNTAX_AWK): renamed from RE_SYNTAX_AWK.
8187         (REG_SYNTAX_GNU_AWK): renamed from RE_SYNTAX_GNU_AWK.
8188         (REG_SYNTAX_POSIX_AWK): renamed from RE_SYNTAX_POSIX_AWK.
8189         (REG_SYNTAX_GREP): renamed from RE_SYNTAX_GREP.
8190         (REG_SYNTAX_EGREP): renamed from RE_SYNTAX_EGREP.
8191         (REG_SYNTAX_POSIX_EGREP): renamed from RE_SYNTAX_POSIX_EGREP.
8192         (REG_SYNTAX_ED): renamed from RE_SYNTAX_ED.
8193         (REG_SYNTAX_SED): renamed from RE_SYNTAX_SED.
8194         (_REG_SYNTAX_POSIX_COMMON): renamed from _RE_SYNTAX_POSIX_COMMON.
8195         (REG_SYNTAX_POSIX_BASIC): renamed from RE_SYNTAX_POSIX_BASIC.
8196         (REG_SYNTAX_POSIX_MINIMAL_BASIC): renamed from
8197         RE_SYNTAX_POSIX_MINIMAL_BASIC.
8198         (REG_SYNTAX_POSIX_EXTENDED): renamed from RE_SYNTAX_POSIX_EXTENDED.
8199         (REG_SYNTAX_POSIX_MINIMAL_EXTENDED): renamed from
8200         RE_SYNTAX_POSIX_MINIMAL_EXTENDED.
8201         (REG_DUP_MAX): renamed from RE_DUP_MAX.  No need to undef it.
8202         (REG_UNALLOCATED): Renamed from REGS_UNALLOCATED.
8203         (REG_REALLOCATE): Renamed from REGS_REALLOCATE.
8204         (REG_FIXED): Renamed from REGS_FIXED.
8205         (REG_NREGS): Renamed from RE_NREGS.
8206
8207         (REG_ICASE, REG_NEWLINE, REG_NOSUB): Do not depend on the values
8208         of other REG_* macros, since POSIX says the user is allowed to
8209         #undef these macros selectively.
8210
8211         (reg_errcode_t): Update comment stating what other tables need
8212         to be consistent.
8213
8214         Rename the following enum values to obey POSIX requirements.
8215         The old names are still visible as macros.
8216         (_REG_ENOSYS): Renamed from REG_ENOSYS.  Define even if _XOPEN_SOURCE
8217         is not defined, since GNU is supposed to be a superset of POSIX as
8218         much as possible, and since we want reg_errcode_t to be a signed
8219         type for implementation consistency.
8220         (_REG_NOERROR): Renamed from REG_NOERROR.
8221         (_REG_NOMATCH): Renamed from REG_NOMATCH.
8222         (_REG_BADPAT): Renamed from REG_BADPAT.
8223         (_REG_ECOLLATE): Renamed from REG_ECOLLATE.
8224         (_REG_ECTYPE): Renamed from REG_ECTYPE.
8225         (_REG_EESCAPE): Renamed from REG_EESCAPE.
8226         (_REG_ESUBREG): Renamed from REG_ESUBREG.
8227         (_REG_EBRACK): Renamed from REG_EBRACK.
8228         (_REG_EPAREN): Renamed from REG_EPAREN.
8229         (_REG_EBRACE): Renamed from REG_EBRACE.
8230         (_REG_BADBR): Renamed from REG_BADBR.
8231         (_REG_ERANGE): Renamed from REG_ERANGE.
8232         (_REG_ESPACE): Renamed from REG_ESPACE.
8233         (_REG_BADRPT): Renamed from REG_BADRPT.
8234         (_REG_EEND): Renamed from REG_EEND.
8235         (_REG_ESIZE): Renamed from REG_ESIZE.
8236         (_REG_ERPAREN): Renamed from REG_ERPAREN.
8237         (REG_ENOSYS, REG_NOERROR, REG_NOMATCH, REG_BADPAT, REG_ECOLLATE):
8238         (REG_ECTYPE, REG_EESCAPE, REG_ESUBREG, REG_EBRACK, REG_EPAREN):
8239         (REG_EBRACE, REG_BADBR, REG_ERANGE, REG_ESPACE, REG_BADRPT, REG_EEND):
8240         (REG_ESIZE, REG_ERPAREN): Now macros, not enum constants.
8241
8242         (_REG_RE_NAME, _REG_RM_NAME): New macros.
8243         (REG_TRANSLATE_TYPE): Renamed from RE_TRANSLATE_TYPE.  All uses
8244         changed.  But support the old name if the new one is not defined
8245         and if _REGEX_SOURCE.
8246
8247         Change the following member names in struct re_pattern_buffer.
8248         The old names are still supported if !_REGEX_SOURCE.
8249         The new names are always supported, regardless of _REGEX_SOURCE.
8250         (re_buffer): Renamed from buffer.
8251         (re_allocated): Renamed from allocated.
8252         (re_used): Renamed from used.
8253         (re_syntax): Renamed from syntax.
8254         (re_fastmap): Renamed from fastmap.
8255         (re_translate): Renamed from translate.
8256         (re_can_be_null): Renamed from can_be_null.
8257         (re_regs_allocated): Renamed from regs_allocated.
8258         (re_fastmap_accurate): Renamed from fastmap_accurate.
8259         (re_no_sub): Renamed from no_sub.
8260         (re_not_bol): Renamed from not_bol.
8261         (re_not_eol): Renamed from not_eol.
8262         (re_newline_anchor): Renamed from newline_anchor.
8263
8264         Change the following member names in struct re_registers.
8265         The old names are still supported if !_REGEX_SOURCE.
8266         The new names are always supported, regardless of _REGEX_SOURCE.
8267         (rm_num_regs): Renamed from num_regs.
8268         (rm_start): Renamed from start.
8269         (rm_end): Renamed from end.
8270
8271         (re_set_syntax, re_compile_pattern, re_compile_fastmap):
8272         (re_search, re_search_2, re_match, re_match_2, re_set_registers):
8273         Prepend __ to parameter names.
8274
8275         Undo yesterday's changes.
8276
8277 2005-08-24  Paul Eggert  <eggert@cs.ucla.edu>
8278
8279         * config/srclist.txt: Remove glibc bug 1233 and add 1236, which supersedes it.
8280         Add glibc bugs 1237, 1238, 1240.  Comment out lib/regex.c.
8281
8282 2005-08-24  Jim Meyering  <jim@meyering.net>
8283
8284         Sync from coreutils.
8285         * m4/fcntl-safer.m4: New file.
8286
8287         * m4/xgetcwd.m4: Use AC_LIBSOURCES and AC_LIBOBJ to indicate source
8288         and object files for this module.
8289
8290 2005-08-24  Jim Meyering  <jim@meyering.net>
8291
8292         Sync from coreutils.
8293         * lib/fcntl--.h, fcntl-safer.h, open-safer.c: New files.
8294
8295 2005-08-24  Jim Meyering  <jim@meyering.net>
8296
8297         * modules/xgetcwd (Makefile.am): Remove `lib_SOURCES += ...' line,
8298         now that xgetcwd.m4 requires xgetcwd.c and xgetcwd.h.
8299
8300 2005-08-24  Jim Meyering  <jim@meyering.net>
8301
8302         * modules/fcntl-safer: New module.
8303         * modules/fts (Depends-on): Add fcntl-safer.
8304         * MODULES.html.sh (File descriptor based Input/Output):
8305         Add fcntl-safer.
8306
8307 2005-08-24  Bruno Haible  <bruno@clisp.org>
8308
8309         Support for unit test modules.
8310         * modules/README: Mention tests modules.
8311         * modules/TEMPLATE-TESTS: New file.
8312         * gnulib-tool: New options --extract-tests-module, --with-tests and
8313         --tests-base (unused for the moment).
8314         (testsbase, inctests): New variables.
8315         (func_all_modules): Exclude TEMPLATE-TESTS and *-tests.
8316         (func_verify_module): Exclude TEMPLATE-TESTS.
8317         (func_verify_nontests_module, func_verify_tests_module): New functions.
8318         (func_get_dependencies): Add implicit dependency for tests modules.
8319         (func_get_tests_module): New function.
8320         (func_modules_transitive_closure): When --with-tests was specified,
8321         include the unit tests as well, unless explicitly avoided.
8322         (func_emit_lib_Makefile_am): Ignore the tests modules here.
8323         (func_emit_tests_Makefile_am): New function.
8324         (func_create_testdir): When --with-tests was specified, emit a
8325         tests/ directory.
8326         * MODULES.html.sh (Future developments): Update.
8327
8328 2005-08-24  Bruno Haible  <bruno@clisp.org>
8329
8330         * modules/tls-tests: New file.
8331         * tests/test-tls.c: New file, from GNU gettext.
8332
8333 2005-08-24  Bruno Haible  <bruno@clisp.org>
8334
8335         * modules/lock-tests: New file.
8336         * tests/test-lock.c: New file, from GNU gettext.
8337
8338 2005-08-24  Bruno Haible  <bruno@clisp.org>
8339
8340         * lib/lock.h: Add multiple inclusion guard.
8341         * lib/tls.h: Add multiple inclusion guard.
8342
8343 2005-08-24  Bruno Haible  <bruno@clisp.org>
8344
8345         * gnulib-tool: Add support for the --aux-dir option to
8346         --create-testdir, --create-megatestdir, --test, --megatest.
8347         (func_create_testdir, func_create_megatestdir): Optionally emit a
8348         AC_CONFIG_AUX_DIR directive.
8349         (create-testdir, create-megatestdir, test, megatest): Provide a
8350         default value for $auxdir.
8351
8352 2005-08-24  Bruno Haible  <bruno@clisp.org>
8353
8354         * gnulib-tool (import): Use compound statement instead of subshell
8355         where possible.
8356
8357 2005-08-24  Bruno Haible  <bruno@clisp.org>
8358
8359         * gnulib-tool (import): Change --aux-dir default to "build-aux".
8360
8361 2005-08-24  Bruno Haible  <bruno@clisp.org>
8362
8363         * gnulib-tool (func_version): Update.
8364
8365 2005-08-24  Bruno Haible  <bruno@clisp.org>
8366
8367         * gnulib-tool (func_import, func_create_testdir,
8368         func_create_megatestdir): Quote all autoconf macro arguments.
8369
8370 2005-08-24  Bruno Haible  <bruno@clisp.org>
8371
8372         * gnulib-tool (func_create_megatestdir): Call autoreconf without the
8373         option --force, because --force causes the aclocal.m4 of each
8374         subdirectory to be newer than the corresponding config.h.in.
8375
8376 2005-08-23  Paul Eggert  <eggert@cs.ucla.edu>
8377
8378         * m4/regex.m4 (gl_INCLUDED_REGEX): Remove; no longer used.
8379         All contents moved to gl_REGEX.
8380         (gl_REGEX): Don't bother checking whether lib/regex.c exists;
8381         assume that it does.
8382
8383 2005-08-23  Paul Eggert  <eggert@cs.ucla.edu>
8384
8385         * lib/regex.h (REG_NOSYS)
8386         [!defined _XOPEN_SOURCE && 200112L <= _POSIX_C_SOURCE]:
8387         Define, since POSIX requires it as of 2001.
8388         (_REG_ENOSYS) [! (defined _XOPEN_SOURCE || 200112L <= _POSIX_C_SOURCE)]:
8389         New private symbol, used to keep the enum signed in all cases.
8390         * lib/regex.h (RE_NO_EMPTY_RANGES): Fix doc bug reported by James Youngman
8391         in <http://lists.gnu.org/archive/html/bug-gnulib/2005-07/msg00132.html>.
8392
8393         * lib/regex_internal.c (re_string_skip_chars, register_state):
8394         (calc_state_hash):
8395         Remove forward decls; no longer needed now that we use prototypes.
8396         * lib/regexec.c (acquire_init_state_context, check_halt_node_context):
8397         (proceed_next_node, pop_fail_stack, sub_epsilon_src_nodes):
8398         (clean_state_log_if_needed): Likewise.
8399
8400 2005-08-23  Paul Eggert  <eggert@cs.ucla.edu>
8401
8402         * config/srclist.txt: Add glibc bugs 1231-1233.
8403
8404 2005-08-20  Paul Eggert  <eggert@cs.ucla.edu>
8405
8406         Fix problems reported by Sam Steingold in
8407         <http://lists.gnu.org/archive/html/bug-gnulib/2005-08/msg00007.html>.
8408         * lib/regexec.c (sift_states_bkref): Fix portability bug: the code
8409         assumed that reg_errcode_t is a signed type, which is not
8410         necessarily true if _XOPEN_SOURCE is not defined.
8411         * lib/regex_internal.c (calc_state_hash): Put 'inline' before type, since
8412         some compilers warn about it otherwise.
8413
8414 2005-08-20  Paul Eggert  <eggert@cs.ucla.edu>
8415
8416         * lib/regcomp.c (create_initial_state): Remove duplicate decl.
8417         (init_word_char, create_initial_state, duplicate_node_closure):
8418         (fetch_token, peek_token_bracket, build_range_exp):
8419         (build_collating_symbol): Remove forward decls; no longer needed
8420         now that we use prototypes.
8421
8422         * lib/regcomp.c:
8423         (re_compile_pattern, re_set_syntax, re_compile_fastmap):
8424         (re_compile_fastmap_iter, regcomp, regerror, regfree):
8425         (re_compile_internal, init_dfa, init_word_char, free_workarea_compile):
8426         (create_initial_state, optimize_utf8, analyze, postorder, preorder):
8427         (optimize_subexps, lower_subexps, lower_subexp, calc_first, calc_next):
8428         (link_nfa_nodes, duplicate_node_closure, search_duplicated_node):
8429         (duplicate_node, calc_inveclosure, calc_eclosure, calc_eclosure_iter):
8430         (fetch_token, peek_token, peek_token_bracket, parse, parse_reg_exp):
8431         (parse_branch, parse_expression, parse_sub_exp, parse_dup_op):
8432         (build_range_exp, build_collating_symbol, parse_bracket_exp):
8433         (parse_bracket_element, parse_bracket_symbol, build_equiv_class):
8434         (build_charclass, build_charclass_op, fetch_number, create_tree):
8435         (create_token_tree, mark_opt_subexp, duplicate_tree):
8436         Use prototypes rather than old-style definitions.
8437
8438         * lib/regex_internal.c:
8439         (re_string_allocate, re_string_construct, re_string_realloc_buffers):
8440         (re_string_construct_common, build_wcs_buffer, build_wcs_upper_buffer):
8441         (re_string_skip_chars, build_upper_buffer, re_string_translate_buffer):
8442         (re_string_reconstruct, re_string_peek_byte_case):
8443         (re_string_fetch_byte_case, re_string_destruct, re_string_context_at):
8444         (re_node_set_alloc, re_node_set_init_1, re_node_set_init_2):
8445         (re_node_set_init_copy, re_node_set_add_intersect):
8446         (re_node_set_init_union, re_node_set_merge, re_node_set_insert):
8447         (re_node_set_insert_last, re_node_set_compare, re_node_set_contains):
8448         (re_node_set_remove_at, re_dfa_add_node, calc_state_hash):
8449         (re_acquire_state, re_acquire_state_context, register_state):
8450         (create_ci_newstate, create_cd_newstate, free_state):
8451         Likewise.
8452         * lib/regexec.c (regexec, re_match, re_search, re_match_2, re_search_2):
8453         (re_search_2_stub, re_search_stub, re_copy_regs, re_set_registers):
8454         (re_search_internal, prune_impossible_nodes):
8455         (acquire_init_state_context, check_matching, static):
8456         (check_halt_node_context, check_halt_state_context, proceed_next_node):
8457         (push_fail_stack, pop_fail_stack, set_regs, free_fail_stack_return):
8458         (update_regs, sift_states_backward, build_sifted_states):
8459         (clean_state_log_if_needed, merge_state_array):
8460         (update_cur_sifted_state, add_epsilon_src_nodes):
8461         (sub_epsilon_src_nodes, check_dst_limits, check_dst_limits_calc_pos_1):
8462         (check_dst_limits_calc_pos, check_subexp_limits, sift_states_bkref):
8463         (sift_states_iter_mb, transit_state, merge_state_with_log, static):
8464         (find_recover_state, check_subexp_matching_top, transit_state_mb):
8465         (transit_state_bkref, get_subexp, get_subexp_sub, find_subexp_node):
8466         (check_arrival, check_arrival_add_next_nodes):
8467         (check_arrival_expand_ecl, check_arrival_expand_ecl_sub):
8468         (expand_bkref_cache, build_trtable, group_nodes_into_DFAstates):
8469         (check_node_accept_bytes, check_node_accept, extend_buffers):
8470         (match_ctx_init, match_ctx_clean, match_ctx_free, match_ctx_add_entry):
8471         (search_cur_bkref_entry, match_ctx_add_subtop, match_ctx_add_sublast):
8472         (sift_ctx_init):
8473         Likewise.
8474
8475         * lib/regex_internal.h:
8476         (re_string_allocate, re_string_construct, re_string_reconstruct):
8477         (re_string_realloc_buffers, build_wcs_buffer, build_wcs_upper_buffer):
8478         (build_upper_buffer, re_string_translate_buffer, re_string_destruct):
8479         (re_string_elem_size_at, re_string_char_size_at, re_string_wchar_at):
8480         (re_string_context_at, re_string_peek_byte_case):
8481         (re_string_fetch_byte_case): Declare even if RE_NO_INTERNAL_PROTOTYPES
8482         is defined, since we now use prototypes always.
8483
8484         * lib/regex.h (_RE_ARGS): Remove.  No longer needed, since we assume
8485         C89 or better.  All uses removed.
8486
8487 2005-08-20  Paul Eggert  <eggert@cs.ucla.edu>
8488
8489         * config/srclist.txt: Add glibc bugs 1220-1227.
8490
8491 2005-08-20  Jim Meyering  <jim@meyering.net>
8492
8493         * lib/regexec.c (regexec, re_search_stub) [!_LIBC]: Omit declaration
8494         of unused local, dfa.
8495
8496 2005-08-20  Bruno Haible  <bruno@clisp.org>
8497
8498         * m4/regex.m4 (gl_PREREQ_REGEX): Require AC_GNU_SOURCE.
8499
8500 2005-08-19  Paul Eggert  <eggert@cs.ucla.edu>
8501
8502         * lib/regex_internal.c (re_string_realloc_buffers, re_node_set_insert):
8503         (re_node_set_insert_last, re_dfa_add_node):
8504         Rename local variables to avoid GCC shadowing warnings.
8505
8506 2005-08-19  Paul Eggert  <eggert@cs.ucla.edu>
8507
8508         * lib/regex_internal.c (re_acquire_state, re_acquire_state_context)
8509         [defined lint]: Suppress bogus uninitialized-variable warnings.
8510
8511         * lib/regcomp.c (duplicate_node): Return new index, not an error code,
8512         and let the caller return REG_ESPACE if out of space.  This
8513         removes an uninitialied-variable warning with GCC 4.0.1, and also
8514         avoids taking the address of a local variable.  All callers
8515         changed.
8516
8517 2005-08-19  Paul Eggert  <eggert@cs.ucla.edu>
8518
8519         * config/srclist.txt: Comment out $LIBCSRC/posix/regex_internal.c,
8520         $LIBCSRC/posix/regexec.c.
8521         Add glibc bug 1217 for regcomp.c.
8522
8523 2005-08-19  Jim Meyering  <jim@meyering.net>
8524
8525         * lib/regexec.c (proceed_next_node): Redo local variables to
8526         avoid GCC shadowing warnings.
8527
8528 2005-08-18  Bruno Haible  <bruno@clisp.org>
8529
8530         * lib/strstr.c (strstr): Fix return value in multibyte case.
8531         * lib/strcasestr.c (strcasestr): Likewise.
8532
8533 2005-08-17  Paul Eggert  <eggert@cs.ucla.edu>
8534
8535         * lib/regex.h: Remove useless space-before-tab.  From coreutils.
8536
8537 2005-08-17  Jim Meyering  <jim@meyering.net>
8538
8539         Make the %s format (seconds since the epoch) work for a negative
8540         number and when used with a zero-padded field width, e.g. %015s.
8541
8542         * lib/strftime.c (my_strftime): Move the `do_number_sign_and_padding'
8543         label so that it precedes the code to set `digits'.  Otherwise,
8544         %0Ns wouldn't work.  Before this change, `date -d @-22 +%05s' would
8545         print `00-22'.  Now, it prints `-0022', as it should.
8546
8547 2005-08-17  Bruno Haible  <bruno@clisp.org>
8548
8549         * modules/strstr (Files): Add m4/mbrtowc.m4.
8550         (Depends-on): Add mbuiter.
8551
8552 2005-08-17  Bruno Haible  <bruno@clisp.org>
8553
8554         * modules/strcasestr: New file.
8555         * MODULES.html.sh (String handling, based on ANSI C 89): Add
8556         strcasestr.
8557
8558 2005-08-17  Bruno Haible  <bruno@clisp.org>
8559
8560         * modules/strcase (Depends-on): Add mbuiter. Remove strnlen1, mbchar.
8561
8562 2005-08-17  Bruno Haible  <bruno@clisp.org>
8563
8564         * modules/mbuiter: New file.
8565         * MODULES.html.sh (Extended multibyte and wide character utilities):
8566         Add mbuiter.
8567
8568 2005-08-17  Bruno Haible  <bruno@clisp.org>
8569
8570         * m4/strstr.m4 (gl_FUNC_STRSTR): Use the replacement function always.
8571         (gl_PREREQ_STRSTR): Use gl_FUNC_MBRTOWC.
8572
8573 2005-08-17  Bruno Haible  <bruno@clisp.org>
8574
8575         * m4/strcasestr.m4: New file.
8576
8577 2005-08-17  Bruno Haible  <bruno@clisp.org>
8578
8579         * lib/strstr.h: Ignore HAVE_STRSTR, always declare the gnulib function.
8580         * lib/strstr.c: Completely rewritten, with multibyte locale support.
8581
8582 2005-08-17  Bruno Haible  <bruno@clisp.org>
8583
8584         * lib/strcasestr.h: New file.
8585         * lib/strcasestr.c: New file.
8586
8587 2005-08-17  Bruno Haible  <bruno@clisp.org>
8588
8589         * lib/strcasecmp.c: Use mbuiter.h.
8590
8591 2005-08-17  Bruno Haible  <bruno@clisp.org>
8592
8593         * lib/mbuiter.h: New file.
8594
8595 2005-08-16  Paul Eggert  <eggert@cs.ucla.edu>
8596
8597         * m4/getopt.m4 (gl_GETOPT_CHECK_HEADERS): Do not override the results
8598         of gl_GETOPT_SUBSTITUTE.  That way, if both gl_GETOPT_SUBSTITUTE
8599         and gl_GETOPT are both invoked via different paths (as happens
8600         with GNU tar CVS because it uses both argp and getopt), the former
8601         wins.
8602
8603 2005-08-16  Bruno Haible  <bruno@clisp.org>
8604
8605         * modules/tls: New file.
8606         * MODULES.html.sh (Multithreading): Add tls.
8607
8608 2005-08-16  Bruno Haible  <bruno@clisp.org>
8609
8610         * modules/strnlen1: New file.
8611         * MODULES.html.sh (String handling): Add strnlen1.
8612
8613 2005-08-16  Bruno Haible  <bruno@clisp.org>
8614
8615         * modules/strcase (Files): Add m4/mbrtowc.m4.
8616         (Depends-on): Add strnlen1, mbchar.
8617
8618 2005-08-16  Bruno Haible  <bruno@clisp.org>
8619
8620         * modules/mbiter: New file.
8621         * MODULES.html.sh (Extended multibyte and wide character utilities):
8622         Add mbiter.
8623
8624 2005-08-16  Bruno Haible  <bruno@clisp.org>
8625
8626         * modules/mbfile: New file.
8627         * MODULES.html.sh (Extended multibyte and wide character utilities):
8628         Add mbfile.
8629
8630 2005-08-16  Bruno Haible  <bruno@clisp.org>
8631
8632         * modules/mbchar: New file.
8633         * MODULES.html.sh (Extended multibyte and wide character utilities):
8634         New section.
8635
8636 2005-08-16  Bruno Haible  <bruno@clisp.org>
8637
8638         * m4/tls.m4: New file, from GNU gettext.
8639
8640 2005-08-16  Bruno Haible  <bruno@clisp.org>
8641
8642         * m4/strcase.m4 (gl_FUNC_STRCASECMP): Use the replacement function always.
8643         (gl_PREREQ_STRCASECMP): Use gl_FUNC_MBRTOWC.
8644
8645 2005-08-16  Bruno Haible  <bruno@clisp.org>
8646
8647         * m4/mbiter.m4: New file.
8648
8649 2005-08-16  Bruno Haible  <bruno@clisp.org>
8650
8651         * m4/mbfile.m4: New file.
8652
8653 2005-08-16  Bruno Haible  <bruno@clisp.org>
8654
8655         * m4/mbchar.m4: New file.
8656
8657 2005-08-16  Bruno Haible  <bruno@clisp.org>
8658
8659         * lib/tls.h: New file, from GNU gettext.
8660         * lib/tls.c: New file, from GNU gettext.
8661
8662 2005-08-16  Bruno Haible  <bruno@clisp.org>
8663
8664         * lib/strnlen1.h: New file.
8665         * lib/strnlen1.c: New file.
8666
8667 2005-08-16  Bruno Haible  <bruno@clisp.org>
8668
8669         * lib/strcasecmp.c (struct mbiter_multi): Remove at_end field.
8670         (mbi_init): Update.
8671         (mbi_avail, mbi_advance): Let the iteration end before the terminating
8672         NUL byte, not after it.
8673
8674 2005-08-16  Bruno Haible  <bruno@clisp.org>
8675
8676         * lib/strcase.h (strcasecmp): Add note in comments.
8677         * lib/strncasecmp.c: Use code from strcasecmp.c.
8678         * lib/strcasecmp.c: Use mbchar module. Define private mbiter variant.
8679         (strcasecmp): Work correctly in multibyte locales.
8680
8681 2005-08-16  Bruno Haible  <bruno@clisp.org>
8682
8683         * lib/mbiter.h: New file.
8684
8685 2005-08-16  Bruno Haible  <bruno@clisp.org>
8686
8687         * lib/mbfile.h: New file.
8688
8689 2005-08-16  Bruno Haible  <bruno@clisp.org>
8690
8691         * lib/mbchar.h: New file.
8692         * lib/mbchar.c: New file.
8693
8694 2005-08-16  Bruno Haible  <bruno@clisp.org>
8695
8696         * lib/mbchar.h (mb_cmp, mb_casecmp): Order the invalid characters after
8697         the valid ones. Makes the comparison operations transitive:
8698         cmp (a, b) < 0 && cmp (b, c) < 0 ==> cmp (a, c) < 0.
8699         * lib/strcasecmp.c (strcasecmp): Use mb_casecmp.
8700
8701 2005-08-15  Simon Josefsson  <jas@extundo.com>
8702
8703         * modules/ssize_t (License): Change to 'unlimited'.
8704
8705         * gnulib-tool (sed_extract_prog): Recognize 'unlimited' license.
8706
8707 2005-08-15  Paul Eggert  <eggert@cs.ucla.edu>
8708
8709         * config/srclist.txt: Comment out $LIBCSRC/posix/regex.h.
8710         Add comments for each pending glibc patch.
8711
8712 2005-08-15  Bruno Haible  <bruno@clisp.org>
8713
8714         * lib/regex.h (__restrict_arr): Don't define to __restrict if __cplusplus
8715         is defined.
8716
8717 2005-08-14  Jim Meyering  <jim@meyering.net>
8718
8719         Sync from coreutils.
8720
8721         * lib/fts-cycle.c (setup_dir, enter_dir, leave_dir, free_dir):
8722         Use the hash-table-based cycle-detection code not just when
8723         FTS_TIGHT_CYCLE_CHECK if specified, but also with FTS_LOGICAL.
8724         Reported by James Youngman in
8725         <http://lists.gnu.org/archive/html/bug-gnulib/2005-08/msg00011.html>.
8726         * lib/fts_.h: Mention that with FTS_LOGICAL, we use FTS_TIGHT_CYCLE_CHECK.
8727         * lib/fts.c (fts_cross_check) [FTS_DEBUG]: s/active_dir_ht/fts_cycle.ht/.
8728         This lets us compile with -DFTS_DEBUG, once again.
8729         * lib/fts.c [! _LIBC]: Include "lstat.h" rather than rolling our own.
8730         * lib/fts.c (fd_safer): Remove decl.
8731         Include fcntl--.h rather than unistd-safer.h
8732         (fts_safe_changedir): Don't call fd_safer; no longer needed
8733         now that we include fcntl--.h.
8734
8735 2005-08-12  Simon Josefsson  <jas@extundo.com>
8736
8737         * modules/getndelim2: Use ssize_t module.
8738         * modules/getnline: Likewise.
8739         * modules/safe-read: Likewise.
8740         * modules/xreadlink: Likewise.
8741
8742         * modules/ssize_t: New file.
8743
8744 2005-08-12  Simon Josefsson  <jas@extundo.com>
8745
8746         * m4/readline.m4: Look for termcap, curses or ncurses if required.
8747
8748 2005-08-12  Simon Josefsson  <jas@extundo.com>
8749
8750         * MODULES.html.sh (Support for systems lacking POSIX:2001): Add
8751         ssize_t.
8752
8753 2005-08-12  Simon Josefsson  <jas@extundo.com>
8754
8755         * MODULES.html.sh (Extra functions based on ANSI C 89: Misc): Add
8756         readline, getdelim and check_version.
8757         (Support for systems lacking ISO C 99: Sizes of integer types):
8758         Add size_max.
8759
8760 2005-08-12  Bruno Haible  <bruno@clisp.org>
8761
8762         * m4/readline.m4 (gl_FUNC_READLINE): Look for ncurses first.
8763
8764 2005-08-11  Simon Josefsson  <jas@extundo.com>
8765
8766         * modules/readline: New file.
8767
8768         * modules/strnlen (Files): Add strnlen.h.
8769
8770 2005-08-11  Simon Josefsson  <jas@extundo.com>
8771
8772         * m4/readline.m4: New file.
8773
8774 2005-08-11  Simon Josefsson  <jas@extundo.com>
8775
8776         * lib/readline.h, readline.c: New file.
8777
8778 2005-08-11  Simon Josefsson  <jas@extundo.com>
8779
8780         * doc/gnulib.texi (Initial import, Finishing touches): Mention
8781         gl_AVOID.
8782
8783 2005-08-11  Bruno Haible  <bruno@clisp.org>
8784
8785         * lib/strnlen.h (strnlen): Change parameter name to match comment.
8786
8787 2005-08-10  Stepan Kasal  <kasal@ucw.cz>
8788
8789         * m4/onceonly_2_57.m4: Really require Autoconf 2.57.
8790
8791 2005-08-10  Simon Josefsson  <jas@extundo.com>
8792
8793         * tests/test-iconvme.c: New file.
8794
8795 2005-08-10  Simon Josefsson  <jas@extundo.com>
8796
8797         * m4/strnlen.m4: New file.
8798
8799         * m4/strndup.m4: Don't check for strnlen declaration, done in
8800         strnlen.m4.
8801
8802 2005-08-10  Simon Josefsson  <jas@extundo.com>
8803
8804         * lib/strndup.c: Use strnlen.h.
8805
8806         * lib/strnlen.h: New file.
8807
8808 2005-08-08  Ralf Wildenhues <Ralf.Wildenhues@gmx.de>  (tiny change)
8809
8810         * README: Typos.
8811
8812 2005-08-02  Simon Josefsson  <jas@extundo.com>
8813
8814         * modules/readline: New file.
8815
8816 2005-08-02  Simon Josefsson  <jas@extundo.com>
8817
8818         * modules/getdelim: New file.
8819
8820         * modules/getline: Rewrite, don't use getndelim2.
8821
8822 2005-08-02  Simon Josefsson  <jas@extundo.com>
8823
8824         * m4/getline.m4: Separate out getdelim stuff into separate module.
8825
8826         * m4/getdelim.m4: New file.
8827
8828 2005-08-02  Simon Josefsson  <jas@extundo.com>
8829
8830         * lib/getline.h, getline.c: Rewrite.
8831
8832         * lib/getdelim.h, getdelim.c: New files, ported from glibc.
8833
8834 2005-07-31  Bruno Haible  <bruno@clisp.org>
8835
8836         * lib/lock.h (gl_lock_initializer): New macro.
8837         (gl_lock_define_initialized): Use it.
8838         (gl_rwlock_initializer): New macro.
8839         (gl_rwlock_define_initialized): Use it.
8840         (gl_recursive_lock_initializer): New macro.
8841         (gl_recursive_lock_define_initialized): Use it.
8842
8843 2005-07-30  Karl Berry  <karl@gnu.org>
8844
8845         * doc/gnulib.texi (Initial import): mention -I$(top_builddir)/lib.
8846         Report from Ben Pfaff, regarding getopt.
8847
8848 2005-07-26  Paul Eggert  <eggert@cs.ucla.edu>
8849
8850         Add support to getopt for Emacs, which doesn't use LIBOBJS in the
8851         normal way.
8852         * m4/getopt.m4 (gl_GETOPT_SUBSTITUTE_HEADER): New macro.
8853         (gl_GETOPT_SUBSTITUTE): Use it.  Invoke gl_PREREQ_GETOPT.
8854         (gl_GETOPT_IFELSE, gl_GETOPT_CHECK_HEADERS): New macros.
8855         (gl_GETOPT): Use the new macros.  Most of the implementation
8856         is moved to the new macros.  This is for programs like Emacs
8857         that don't want all the functionality of gl_GETOPT.
8858
8859 2005-07-26  Bruno Haible  <bruno@clisp.org>
8860
8861         * m4/lock.m4: Update from GNU gettext.
8862
8863 2005-07-26  Bruno Haible  <bruno@clisp.org>
8864
8865         * lib/lock.h: Update from GNU gettext.
8866         * lib/lock.c: Update from GNU gettext.
8867
8868 2005-07-25  Paul Eggert  <eggert@cs.ucla.edu>
8869
8870         * m4/regex.m4 (gl_INCLUDED_REGEX): Use AC_RUN_IFELSE instead of the
8871         obsolescent AC_TRY_RUN.  Include the default includes files, for 'exit'.
8872
8873 2005-07-24  Bruno Haible  <bruno@clisp.org>
8874
8875         * modules/visibility: New file.
8876         * MODULES.html.sh (Misc): Add visibility.
8877
8878 2005-07-24  Bruno Haible  <bruno@clisp.org>
8879
8880         * m4/visibility.m4: New file.
8881
8882 2005-07-24  Bruno Haible  <bruno@clisp.org>
8883
8884         * doc/visibility.texi: New file.
8885
8886 2005-07-22  Bruno Haible  <bruno@clisp.org>
8887
8888         * modules/alloca-opt (Makefile.am): Remove explicit dependency on
8889         $(ALLOCA_H), redundant through BUILT_SOURCES.
8890         * modules/argz (Makefile.am): Remove explicit dependency on $(ARGZ_H),
8891         redundant through BUILT_SOURCES.
8892         * modules/byteswap (Makefile.am): Remove explicit dependency on
8893         $(BYTESWAP_H), redundant through BUILT_SOURCES.
8894         * modules/fnmatch (Makefile.am): Remove explicit dependency on
8895         $(FNMATCH_H), redundant through BUILT_SOURCES.
8896         * modules/getopt (Makefile.am): Remove explicit dependency on
8897         $(GETOPT_H), redundant through BUILT_SOURCES.
8898         * modules/glob (Makefile.am): Remove explicit dependency on $(GLOB_H),
8899         redundant through BUILT_SOURCES.
8900         * modules/poll (Makefile.am): Remove explicit dependency on $(POLL_H),
8901         redundant through BUILT_SOURCES.
8902         * modules/stdbool (Makefile.am): Remove explicit dependency on
8903         $(STDBOOL_H), redundant through BUILT_SOURCES.
8904         * modules/stdint (Makefile.am): Remove explicit dependency on
8905         $(STDINT_H), redundant through BUILT_SOURCES.
8906         * modules/sysexits (Makefile.am): Add $(SYSEXITS_H) to BUILT_SOURCES.
8907         Remove explicit dependency on $(SYSEXITS_H).
8908         Reported by Alexandre Duret-Lutz <adl@src.lip6.fr>.
8909
8910 2005-07-18  Simon Josefsson  <jas@extundo.com>
8911
8912         * lib/check-version.c (check_version): Accept identical versions too.
8913
8914 2005-07-18  Bruno Haible  <bruno@clisp.org>
8915
8916         * modules/lock: New file.
8917         * MODULES.html.sh (Multithreading): New section.
8918
8919 2005-07-18  Bruno Haible  <bruno@clisp.org>
8920
8921         * m4/lock.m4: New file, from GNU gettext.
8922
8923 2005-07-18  Bruno Haible  <bruno@clisp.org>
8924
8925         * lib/lock.h: New file, from GNU gettext.
8926         * lib/lock.c: New file, from GNU gettext.
8927
8928 2005-07-18  Bruno Haible  <bruno@clisp.org>
8929
8930         * lib/lock.h (gl_once_t): New type.
8931         (gl_once_define, gl_once): New macros.
8932         * lib/lock.c (fresh_once): New variable.
8933         (glthread_once, glthread_once_call, glthread_once_singlethreaded): New
8934         functions.
8935
8936 2005-07-16  Simon Josefsson  <jas@extundo.com>
8937
8938         * doc/gnulib.texi (Library version handling): Add ELF symbol collision
8939         workaround, suggested by Bruno.
8940
8941 2005-07-15  Paul Eggert  <eggert@cs.ucla.edu>
8942
8943         * modules/xalloc (Depends-on): Add xalloc-die.
8944         * modules/xvasprintf (Depends-on): Add xalloc-die.
8945
8946 2005-07-15  Paul Eggert  <eggert@cs.ucla.edu>
8947
8948         * lib/quotearg.c: Add translator comment suggested by Bruno Haible,
8949         with a minor change.
8950
8951 2005-07-15  Bruno Haible  <bruno@clisp.org>
8952
8953         * m4/poll.m4 (gl_FUNC_POLL): Check against MacOS X 10.4 poll() bug.
8954         When using lib/poll.c, define poll as rpl_poll.
8955
8956 2005-07-14  Paul Eggert  <eggert@cs.ucla.edu>
8957
8958         * modules/argp (Depends-on): Remove unlocked-io.
8959
8960 2005-07-14  Derek Price  <derek@ximbiot.com>
8961
8962         * m4/glob.m4 (gl_GLOB): Cache glob interface check result.  Add check for
8963         glob symlink bug.
8964
8965 2005-07-14  Bruno Haible  <bruno@clisp.org>
8966
8967         * m4/argp.m4 (gl_ARGP): Remove invocation of gl_FUNC_GLIBC_UNLOCKED_IO.
8968         Instead, test for *_unlocked function declarations directly.
8969
8970 2005-07-11  Simon Josefsson  <jas@extundo.com>
8971
8972         * modules/size_max: New file.
8973
8974         * modules/xsize: Depend on size_max module for size_max.m4.
8975
8976 2005-07-11  Simon Josefsson  <jas@extundo.com>
8977
8978         * lib/size_max.h: New file.
8979
8980 2005-07-11  Paul Eggert  <eggert@cs.ucla.edu>
8981
8982         * lib/version-etc-fsf.c (version_etc_copyright): Parameterize the
8983         copyright symbol and the year.
8984         * lib/version-etc.c (COPYRIGHT_YEAR): New constant.
8985         (version_etc_va): Use parameterized copyright notice.
8986         Reword to conform to the current GNU coding standards.
8987
8988 2005-07-11  Karl Berry  <karl@gnu.org>
8989
8990         * doc/gnulib.texi (Quoting): new node.
8991         (Initial import): more info, from Patrice.
8992
8993 2005-07-11  Bruno Haible  <bruno@clisp.org>
8994
8995         * gnulib-tool (func_usage): Document option --avoid.
8996         (Command line options): Handle --avoid.
8997         (func_acceptable): New function.
8998         (func_modules_transitive_closure): Use it.
8999
9000 2005-07-11  Bruno Haible  <bruno@clisp.org>
9001
9002         * MODULES.html.sh: Use shortcut URLs to the www.opengroup.org site.
9003         Reported by Jim Meyering.
9004
9005 2005-07-10  Bruno Haible  <bruno@clisp.org>
9006
9007         * m4/size_max.m4 (gl_SIZE_MAX): Cast ~(size_t)0 back to size_t.
9008         Needed when size_t is smaller than 'unsigned int'.
9009         Reported by Paul Eggert.
9010
9011 2005-07-09  Sergey Poznyakoff  <gray@gnu.org.ua>
9012
9013         * modules/argp (Depends-on): Add unlocked-io
9014
9015 2005-07-09  Sergey Poznyakoff  <gray@gnu.org.ua>
9016
9017         * lib/argp-namefrob.h: Include unlocked-io.h. Removed unnecessary
9018         block of defines.
9019
9020 2005-07-08  Paul Eggert  <eggert@cs.ucla.edu>
9021
9022         * config/srclist.txt: Comment out regcomp.c, since we have a porting fix
9023         now.
9024
9025 2005-07-08  Eric Blake  <ebb9@byu.net>  (tiny change)
9026        and  Paul Eggert  <eggert@cs.ucla.edu>
9027
9028         * lib/regcomp.c (init_dfa, build_range_exp): Store __btowc value
9029         in wint_t, not wchar_t.  Remove now-unnecessary cast.
9030
9031 2005-07-07  Paul Eggert  <eggert@cs.ucla.edu>
9032
9033         * modules/regex (Files): Add lib/regex_internal.c,
9034         lib/regex_internal.h, lib/regexec.c, lib/regcomp.c, m4/codeset.m4.
9035         (Depends-on): Add extensions.
9036         (Makefile.am): Remove lib_SOURCES; now done by m4 code.
9037
9038 2005-07-07  Paul Eggert  <eggert@cs.ucla.edu>
9039
9040         * m4/backupfile.m4 (gl_BACKUPFILE): Use AC_CHECK_FUNCS_ONCE on pathconf.
9041         * m4/same.m4 (gl_SAME): Likewise.
9042         Require AC_SYS_LONG_FILE_NAMES; bug reported by Gerrit P. Haase.
9043
9044         * m4/regex.m4: Adjust to new libc regex implementation.
9045         (gl_INCLUDED_REGEX): Add AC_LIBSOURCES for
9046         all the .c and .h parts of (the new) regex.
9047         Quote the m4 stuff better.
9048         Check for RE_ICASE bug of old gnulib.
9049         Check for REG_STARTEND of recent libc.
9050         Rename local variables from jm_* to gl_*.
9051         Quote operand of "test -f".
9052         Say "recent enough" version of libc, not "version 2".
9053         (gl_PREREQ_REGEX): Remove AC_FUNC_ALLOCA, since alloca is a
9054         prerequisite module.  Remove AC_HEADER_STDC; no longer needed.
9055         Check for locale.h, isblank, mbrtowc, wcrtomb, wcscoll.
9056         Remove check for btowc, isascii.
9057         Require AM_LANGINFO_CODESET.
9058
9059 2005-07-07  Paul Eggert  <eggert@cs.ucla.edu>
9060
9061         * lib/regex.c, regex.h: Sync from libc.
9062         * lib/regcomp.c, regexec_internal.c, regex_internal.h, regexec.c:
9063         New files, synced from libc, except that regex_internal.h
9064         currently has a small porting fix.
9065
9066 2005-07-07  Paul Eggert  <eggert@cs.ucla.edu>
9067
9068         * config/srclist.txt: Add regcomp.c, regex.c, regex.h, regex_internal.c,
9069         regexec.c.
9070         Add regex_internal.h too, but as a comment, since the libc version
9071         is currently broken in gnulib mode.
9072
9073 2005-07-06  Paul Eggert  <eggert@cs.ucla.edu>
9074
9075         Support programs like Emacs that use gnulib but not gettext.
9076         * MODULES.html.sh (Internationalization functions): Add gettext-h.
9077         * modules/gettext-h: New file.
9078         * modules/gettext (Files): Remove lib/gettext.h.
9079         (Depends-on): Add gettext-h.
9080         (Makefile.am): Remove lib_SOURCES.
9081         * modules/argmatch, modules/c-stack, modules/closeout:
9082         * modules/copy-file, modules/csharpcomp, modules/csharpexec:
9083         * modules/execute, modules/file-type, modules/getaddrinfo:
9084         * modules/getopt, modules/human, modules/javacomp:
9085         * modules/javaexec, modules/mkdir-p, modules/obstack:
9086         * modules/openat, modules/pagealign_alloc, modules/pipe:
9087         * modules/quotearg, modules/regex, modules/rpmatch:
9088         * modules/unicodeio, modules/userspec, modules/version-etc:
9089         * modules/wait-process, modules/xalloc-die, modules/xmemcoll:
9090         * modules/xsetenv:
9091         Depend on gettext-h, not gettext.
9092
9093 2005-07-05  Paul Eggert  <eggert@cs.ucla.edu>
9094
9095         * gnulib-tool (func_import): Add support for 'public domain' license.
9096         * modules/alloca, modules/atexit, modules/memmove:
9097         Now public domain, not GPL.
9098         * modules/dup2, modules/getpagesize, modules/malloc, modules/memset:
9099         * modules/realloc, modules/strerror, modules/strtod:
9100         Now LGPL, not GPL.
9101
9102 2005-07-05  Bruno Haible  <bruno@clisp.org>
9103
9104         * m4/mbrtowc.m4 (gl_FUNC_MBRTOWC): Upgrade to version from current
9105         autoconf CVS. Needed for mingw.
9106
9107 2005-07-03  Paul Eggert  <eggert@cs.ucla.edu>
9108
9109         Remove the dependency of the strftime module on the tzset module.
9110         * modules/strftime (Depends-on): Remove dependency on tzset.
9111
9112 2005-07-03  Paul Eggert  <eggert@cs.ucla.edu>
9113
9114         Remove the dependency of the strftime module on the tzset module.
9115         * m4/strftime.m4 (gl_FUNC_STRFTIME): Don't require gl_FUNC_TZSET_CLOBBER.
9116
9117 2005-07-03  Paul Eggert  <eggert@cs.ucla.edu>
9118
9119         Remove the dependency of the strftime module on the tzset module.
9120         * lib/strftime.c (my_strftime) [! defined _LIBC && ! HAVE_RUN_TZSET_TEST]:
9121         Copy the input structure, to work around some of the bug with
9122         Solaris 2.5.1 and Solaris 2.6.  If you still care about these old
9123         Solaris releases, you should also use the tzset module, but we won't
9124         require it as a dependency any more since we don't want LGPLed code
9125         to depend on GPLed code.
9126
9127 2005-07-02  Jim Meyering  <jim@meyering.net>
9128
9129         * m4/chown.m4, cloexec.m4, dup2.m4, fsusage.m4:
9130         * m4/getcwd-path-max.m4, getcwd.m4, mkstemp.m4, mountlist.m4:
9131         * m4/pagealign_alloc.m4, save-cwd.m4, unistd-safer.m4:
9132         Don't check for fcntl.h, and don't test for HAVE_FCNTL_H.
9133
9134 2005-07-02  Jim Meyering  <jim@meyering.net>
9135
9136         * lib/backupfile.c (backup_args): Change a `0' to NULL.
9137
9138 2005-07-01  Paul Eggert  <eggert@cs.ucla.edu>
9139
9140         * lib/xnanosleep.c: Include timespec.h, since OpenBSD 3.4 <time.h>
9141         declares only 'struct timespec;' (!).
9142
9143 2005-07-01  Jim Meyering  <jim@meyering.net>
9144
9145         * lib/chown.c, cloexec.c, dup-safer.c, dup2.c, fsusage.c, getcwd.c:
9146         * lib/getloadavg.c, mountlist.c, openat.h, pagealign_alloc.c:
9147         * lib/save-cwd.c, tempname.c:
9148         Assume HAVE_FCNTL_H (i.e., include <fcntl.h> unconditionally,
9149         and don't include <sys/file.h>).
9150
9151 2005-06-29  Jim Meyering  <jim@meyering.net>
9152
9153         * lib/mkdir-p.c (make_dir_parents): Don't apply sizeof to a hard-coded
9154         type name.  Use the variable name instead.
9155         * lib/idcache.c (getuser, getuidbyname, getgroup, getgidbyname): Likewise.
9156
9157 2005-06-28  Simon Josefsson  <jas@extundo.com>
9158
9159         * modules/check-version (Files): Add check-version.m4.
9160
9161 2005-06-28  Simon Josefsson  <jas@extundo.com>
9162
9163         * m4/check-version.m4: New file, suggested by Jim Meyering
9164         <jim@meyering.net>.
9165
9166 2005-06-28  Simon Josefsson  <jas@extundo.com>
9167
9168         * lib/check-version.h, check-version.c: New files.
9169
9170 2005-06-28  Simon Josefsson  <jas@extundo.com>
9171
9172         * lib/base64.c (base64_encode): Indent.  Rename 'b64' to avoid
9173         collision with global variable.  Better indentation.  Don't
9174         increment buffer pointer beyond buffer end.  Based on comments
9175         from Paul Eggert <eggert@cs.ucla.edu>.
9176
9177         * lib/base64.h: Indent.
9178
9179 2005-06-28  Simon Josefsson  <jas@extundo.com>
9180
9181         * doc/gnulib.texi (Library version handling): New section.
9182
9183 2005-06-28  Jim Meyering  <jim@meyering.net>
9184
9185         * check-module (find_included_lib_files): Hard-code another
9186         pair of exceptions: fts.c includes fts-cycle.c and unistd-safer.h
9187         but modules/fts-lgpl (correctly) does not list those files.
9188
9189         * modules/canonicalize (Files): Add lib/pathmax.h.
9190
9191 2005-06-25  Simon Josefsson  <jas@extundo.com>
9192
9193         * modules/check-version: New file.
9194
9195 2005-06-24  Paul Eggert  <eggert@cs.ucla.edu>
9196
9197         * lib/canon-host.c (canon-host): Append trailing "," to 0 in
9198         initializer of struct addrinfo, as an indication that we don't
9199         care how many members the structure has.
9200
9201 2005-06-24  Derek Price  <derek@ximbiot.com>
9202         and Bruno Haible  <bruno@clisp.org>
9203
9204         Remove stat module & update lstat.
9205         * m4/lstat.m4 (gl_FUNC_LSTAT): Drop AC_FUNC_LSTAT in favor of
9206         AC_FUNC_LSTAT_FOLLOWS_SLASHED_SYMLINK.
9207         * m4/stat.m4: Remove this file.
9208
9209 2005-06-24  Derek Price  <derek@ximbiot.com>
9210         and Bruno Haible  <bruno@clisp.org>
9211
9212         Remove stat module & update lstat.
9213         * lib/stat.c: Remove this file...
9214         (slash_aware_lstat): ...moving this content and its support...
9215         * lib/lstat.c (rpl_lstat): ...into here.
9216         * lib/lstat.h: New file.
9217
9218 2005-06-24  Derek Price  <derek@ximbiot.com>
9219         and Bruno Haible  <bruno@clisp.org>
9220
9221         Remove stat module & update lstat.
9222         * config/srclist.txt (libc sources): Remove stat.
9223
9224 2005-06-24  Derek Price  <derek@ximbiot.com>
9225         and Bruno Haible  <bruno@clisp.org>
9226
9227         Remove stat module & update lstat.
9228         * MODULES.html.sh (stat): Remove.
9229         * MODULES.html: Regenerated.
9230         * modules/lstat (Description): Correct function name.
9231         (Files): Add "lstat.h".
9232         (Depends-on): Remove stat, add xalloc, stat-macros.
9233         * modules/stat: Remove this file.
9234         (Include): Add "lstat.h", remove <sys/stat.h>.
9235
9236 2005-06-23  Paul Eggert  <eggert@cs.ucla.edu>
9237
9238         * lib/mktime.c: Include <string.h> even if !DEBUG.  (From glibc.)
9239         (ranged_convert): Don't save conversion in a temporary struct.
9240         This causes a warning with GCC 4.0.0, and anyway in the typical
9241         case it's not worth the extra 100 bytes or so of code.
9242         (ranged_convert, __mktime_internal): When calling a function via a
9243         pointer P, use P () rather than (*P) (), as we now assume C89 or
9244         better.
9245
9246 2005-06-22  Paul Eggert  <eggert@cs.ucla.edu>
9247
9248         * lib/readutmp.c (desirable_utmp_entry): Fix bug where "who -b" and
9249         "who -r" failed to give output.  Problem reported by Tim Waugh.
9250
9251         * lib/xmalloc.c (HAVE_GNU_CALLOC): New constant.
9252         (xcalloc): Use it to avoid needless tests.
9253         Problem reported by Jim Meyering.
9254
9255 2005-06-20  Derek Price  <derek@ximbiot.com>
9256
9257         * m4/bison.m4: Note that precious decls of YACC & YFLAGS will be
9258         unnecessary for Autoconfs > 2.59c.
9259
9260 2005-06-16  Sergey Poznyakoff  <gray@Mirddin.farlep.net>
9261
9262         * lib/argp.h (__option_is_short): Check upper limit of
9263         __key. Isprint() requires its argument to have the value
9264         of an unsigned char or EOF.
9265
9266 2005-06-16  Jim Meyering  <jim@meyering.net>
9267
9268         * lib/calloc.c (rpl_calloc): Allocate a 1-byte buffer (not 1xS or Nx1)
9269         when either N or S is zero.
9270
9271 2005-06-16  Derek Price  <derek@ximbiot.com>
9272
9273         * m4/bison.m4: Declare YACC & YFLAGS precious.
9274
9275 2005-06-10  Paul Eggert  <eggert@cs.ucla.edu>
9276
9277         * lib/fnmatch.c (fnmatch): If there is an encoding error in a
9278         multibyte string or pattern, fall back on unibyte matching.
9279         Problem reported by James Youngman.
9280
9281 2005-06-08  Bruno Haible  <bruno@clisp.org>
9282
9283         * modules/csharpcomp: New file.
9284         * MODULES.html.sh (C#): Add csharpcomp.
9285
9286 2005-06-08  Bruno Haible  <bruno@clisp.org>
9287
9288         * m4/csharpcomp.m4: New file, from GNU gettext.
9289
9290 2005-06-08  Bruno Haible  <bruno@clisp.org>
9291
9292         * lib/csharpcomp.h: New file, from GNU gettext.
9293         * lib/csharpcomp.c: New file, from GNU gettext.
9294         * lib/csharpcomp.sh.in: New file, from GNU gettext.
9295
9296 2005-06-08  Bruno Haible  <bruno@clisp.org>
9297
9298         * lib/binary-io.h (fileno): Undefine before defining it. Avoids a gcc
9299         warning on mingw.
9300
9301 2005-06-07  Derek Price  <derek@ximbiot.com>
9302
9303         Sync from CVS.
9304         * lib/glob_.h: Indent nested #ifdef.
9305
9306 2005-06-02  Paul Eggert  <eggert@cs.ucla.edu>
9307
9308         Sync from coreutils.
9309         Use "file name" when talking about file names, instead of "filename"
9310         or "path", as per the GNU coding standards.
9311         * lib/mkdir-p.c: Renamed from makepath.c.
9312         (make_dir_parents): Renamed from make_path.  All callers changed.
9313         * lib/mkdir-p.h: Likewise.  All includers changed.
9314         * lib/filenamecat.c: Renamed from path-concat.c.
9315         (file_name_concat): Renamed from path_concat.  All callers changed.
9316         [TEST_FILE_NAME_CONCAT]: Renamed from TEST_PATH_CONCAT.
9317         * lib/filenamecat.h: Likewise.  All includers changed.
9318         * lib/acl.c: Don't use "path" or "filename" to mean "file name"
9319         in comments or local variable names.
9320         * lib/basename.c: Likewise.
9321         * lib/canonicalize.c, canonicalize.h: Likewise.
9322         * lib/dirname.c, dirname.h: Likewise.
9323         * lib/euidaccess.c: Likewise.
9324         * lib/exclude.c: Likewise
9325         * lib/fnmatch_.h, fnmatch_loop.c: Likewise.
9326         * lib/fsusage.c, fsuage.h: Likewise.
9327         * lib/fts.c, fts_.h: Likewise.
9328         * lib/getcwd.c: Likewise.
9329         * lib/getloadavg.c: Likewise.
9330         * lib/mkstemp.c: Likewise.
9331         * lib/mountlist.c, mountlist.h: Likewise.
9332         * lib/openat.c, openat.h: Likewise.
9333         * lib/readlink-stub.c: Likewise.
9334         * lib/readutmp.c, readutmp.h: Likewise.
9335         * lib/rename.c: Likewise.
9336         * lib/rmdir.c: Likewise.
9337         * lib/same.c: Likewise.
9338         * lib/savedir.c: Likewise.
9339         * lib/stripslash.c: Likewise.
9340         * lib/tempname.c: Likewise.
9341         * lib/xreadlink.c: Likewise.
9342         * lib/exclude.c (excluded_file_name): Renamed from excluded_filename.
9343         All uses changed.
9344         * lib/exclude.h: Likewise.
9345
9346         * lib/euidaccess.c (getuid, getgid, getuid, getegid)
9347         [!defined _POSIX_VERSION]: Remove decls; not needed these days.
9348         * lib/idcache.c (getpwuid, getpwnam, getgrgid, getgrnam)
9349         [!defined _POSIX_VERSION]: Remove decls; not needed these days.
9350         * lib/pathmax.h: Include <limits.h> unconditionally, since other
9351         files have been getting away with it for years (MORE/BSD 4.3
9352         is extinct now).
9353         * lib/userspec.c (getpwnam, getgrnam, getgrgid)
9354         [!defined _POSIX_VERSION]: Remove decls; not needed these days.
9355
9356         * lib/pathmax.h (_POSIX_PATH_MAX) [!defined _POSIX_PATH_MAX]:
9357         Define to 256, not 255, as per modern POSIX.
9358
9359 2005-06-02  Paul Eggert  <eggert@cs.ucla.edu>
9360
9361         Sync from coreutils.
9362         Use "file name" when talking about file names, instead of "filename"
9363         or "path", as per the GNU coding standards.
9364         * MODULES.html.sh: mkdir-p renamed from makepath.
9365         filenamecat renamed from path-concat.
9366         * modules/filenamecat: Renamed from modules/path-concat.
9367         (Files): filenamecat.h and filenamecat.c renamed from
9368         path-concat.h and path-concat.c.
9369         (configure.ac): gl_FILE_NAME_CONCAT, not gl_PATH_CONCAT.
9370         (Include): filenamecat.h, not path-concat.h.
9371         * modules/mkdir-p: Renamed from modules/makepath.
9372         (Files): mkdir-p.h and mkdir-p.c renamed from makepath.h and makepath.c.
9373         (configure.ac): gl_MKDIR_PARENTS, not gl_MAKEPATH.
9374         (Include): mkdir-p.h, not makepath.h.
9375
9376 2005-06-02  Paul Eggert  <eggert@cs.ucla.edu>
9377
9378         Sync from coreutils.
9379         * m4/mkdir-p.m4: Renamed from makepath.m4.
9380         (gl_MKDIR_PARENTS): Renamed from gl_MAKEPATH.  All uses changed.
9381         Rename files from makepath.c to mkdir-p.c, and from
9382         makepath.h to mkdir-p.h.
9383         * m4/filenamecat.m4: Renamed from path-concat.m4.
9384         (gl_FILE_NAME_CONCAT): Renamed from gl_PATH_CONCAT.  All uses changed.
9385         Rename files from path-concat.c to filenamecat.c,
9386         and from path-concat.h to filenamecat.h.
9387         * m4/getcwd-path-max.m4: Don't use "path" or "filename" to mean
9388         "file name" in local variables or comments.
9389         * m4/rename.m4: Likewise.
9390
9391 2005-06-01  Bruno Haible  <bruno@clisp.org>
9392
9393         * modules/csharpexec: New file.
9394         * MODULES.html.sh (C#): New section.
9395
9396 2005-06-01  Bruno Haible  <bruno@clisp.org>
9397
9398         * m4/csharp.m4: New file, from GNU gettext.
9399         * m4/csharpexec.m4: New file, from GNU gettext.
9400
9401 2005-06-01  Bruno Haible  <bruno@clisp.org>
9402
9403         * lib/csharpexec.h: New file, from GNU gettext.
9404         * lib/csharpexec.c: New file, from GNU gettext.
9405         * lib/csharpexec.sh.in: New file, from GNU gettext.
9406
9407 2005-05-31  Derek Price  <derek@ximbiot.com>
9408             Paul Eggert  <eggert@cs.ucla.edu>
9409
9410         Sync from cvs.
9411         * m4/glob.m4: s/MISSING_SYS_CDEFS_H/_SYS_CDEFS_H/ and comment.
9412
9413 2005-05-31  Derek Price  <derek@ximbiot.com>
9414             Paul Eggert  <eggert@cs.ucla.edu>
9415
9416         Sync from cvs.
9417         * lib/glob_.h: s/MISSING_SYS_CDEFS_H/_SYS_CDEFS_H/ and comment.
9418
9419 2005-05-29  Derek Price  <derek@ximbiot.com>
9420
9421         * config/srclist.txt (glob_.h, glob.c): Add these files.
9422
9423 2005-05-29  Derek Price  <derek@ximbiot.com>
9424
9425         * MODULES.html.sh: Add glob to Enhanced POSIX.2001 section.
9426         * modules/glob: New file.
9427         * modules/getlogin_r: Add link to POSIX spec in description.
9428
9429 2005-05-29  Derek Price  <derek@ximbiot.com>
9430             Paul Eggert  <eggert@cs.ucla.edu>
9431
9432         * m4/glob.m4: New file.
9433
9434 2005-05-29  Derek Price  <derek@ximbiot.com>
9435             Paul Eggert  <eggert@cs.ucla.edu>
9436
9437         * lib/glob_.h, glob.c: New files.
9438
9439 2005-05-27  Paul Eggert  <eggert@cs.ucla.edu>
9440
9441         * modules/fts (Files): Remove m4/inttypes-pri.m4.
9442         * modules/fts-lgpl (Depends-on): Remove gettext.
9443
9444 2005-05-27  Paul Eggert  <eggert@cs.ucla.edu>
9445
9446         * m4/fts.m4 (gl_FUNC_FTS_CORE): Don't check for inttypes.h or stdint.h,
9447         and don't require gt_INTTYPES_PRI.
9448
9449 2005-05-27  Paul Eggert  <eggert@cs.ucla.edu>
9450
9451         * lib/getlogin_r.c (getlogin_r): Don't set errno to 0 on return.
9452
9453         * lib/fts.c: Don't worry about debugging on pre-C99-compatible hosts;
9454         the configuration hassle isn't worth it.
9455         Include inttypes.h and stdint.h unconditionally if FTS_DEBUG.
9456         (LONGEST_MODIFIER, PRIuMAX): Remove.
9457
9458 2005-05-27  Bruno Haible  <bruno@clisp.org>
9459
9460         * lib/getlogin_r.h: Remove second include of <stddef.h>.
9461
9462 2005-05-26  Paul Eggert  <eggert@cs.ucla.edu>
9463
9464         * m4/extensions.m4 (gl_USE_SYSTEM_EXTENSIONS): Define
9465         _POSIX_PTHREAD_SEMANTICS for Solaris.
9466
9467 2005-05-25  Derek Price  <derek@ximbiot.com>
9468
9469         * MODULES.html.sh: Add getlogin_r to POSIX.2001 support section.
9470
9471 2005-05-25  Derek Price  <derek@ximbiot.com>
9472             Paul Eggert  <eggert@cs.ucla.edu>
9473
9474         * modules/getlogin_r: New files.
9475
9476 2005-05-25  Derek Price  <derek@ximbiot.com>
9477             Paul Eggert  <eggert@cs.ucla.edu>
9478
9479         * m4/getlogin_r.m4: New files.
9480
9481 2005-05-25  Derek Price  <derek@ximbiot.com>
9482             Paul Eggert  <eggert@cs.ucla.edu>
9483
9484         * lib/getlogin_r.c, getlogin_r.h: New files.
9485
9486 2005-05-25  Bruno Haible  <bruno@clisp.org>
9487             Derek Price  <derek@ximbiot.com>
9488
9489         * lib/getlogin_r.h: Simplify API documentation.
9490
9491 2005-05-23  Derek Price  <derek@ximbiot.com>
9492
9493         * modules/minmax (Files): Add m4/minmax.m4.
9494         (configure.ac): Add gl_MINMAX.
9495
9496 2005-05-22  Paul Eggert  <eggert@cs.ucla.edu>
9497
9498         * lib/fts.c (fd_safer) [_LGPL_PACKAGE]: New static function,
9499         so that unistd-safer.h (GPL'ed code) need not be included.
9500
9501 2005-05-22  Bruno Haible  <bruno@clisp.org>
9502
9503         * m4/minmax.m4: New file.
9504         Based on a patch by Derek Price <derek@ximbiot.com>.
9505
9506 2005-05-22  Bruno Haible  <bruno@clisp.org>
9507
9508         * lib/stdint_.h (_STDINT_H_HAVE_INT64): New macro. Use it in #ifdefs.
9509         (INT64_MIN): Fix definition.
9510         Suggested by Paul Eggert <eggert@cs.ucla.edu>.
9511
9512         * lib/stdint_.h (_STDINT_H_NEED_SIGNED_INT_TYPES): Renamed from
9513         NEED_SIGNED_INT_TYPES.
9514
9515         * lib/stdint_.h (_STDINT_H_HAVE_SYSTEM_INTTYPES): Renamed from
9516         HAVE_SYSTEM_INTTYPES.
9517
9518 2005-05-22  Bruno Haible  <bruno@clisp.org>
9519
9520         * lib/minmax.h: Include <limits.h> only when it defines MIN, MAX.
9521         Also include <sys/param.h> if it defines MIN, MAX.
9522         Based on a patch by Derek Price <derek@ximbiot.com>.
9523
9524 2005-05-21  Jim Meyering  <jim@meyering.net>
9525
9526         * modules/fts (Files): Add m4/inttypes-pri.m4.
9527         (Depends-on): Add lstat and remove gettext.  Alphabetize.
9528
9529 2005-05-20  Paul Eggert  <eggert@cs.ucla.edu>
9530
9531         New fts module.
9532         * lib/fts.c: Don't include "cycle-check.h" or "hash.h".
9533         (setup_dir, free_dir): New functions.
9534         (enter_dir, leave_dir): Define trivial
9535         alternatives of _LGPL_PACKAGE.  Move to fts-cycle.c if !_LGPL_PACKAGE.
9536         (HT_INITIAL_SIZE, ENTER_DIR): Remove.  All uses removed.
9537         (LEAVE_DIR): Fix typo: pass Fts and Ent to leave_dir.
9538         (struct Active_dir, AD_compare, AD_hash, enter_dir, leave_dir):
9539         Move to fts-cycle.c.
9540         (fts_open): Use setup_dir.
9541         (fts_close): Use free_dir.
9542         (fts_read): Have just one copy of the ENTER_DIR code rather than three.
9543         This adds a label and some gotos, but the alternatives were messier.
9544         Check for memory allocation failure when entering a dir.
9545         (fts_stat) [_LGPL_PACKAGE]: Bring back glibc cycle detection code.
9546         * lib/fts_.h (_LGPL_PACKAGE) [defined _LIBC]: New macro.
9547         (FTS): New member fts_cycle, that is a union that contains the
9548         old active_dir_ht and cycle_state.  All uses changed to mention
9549         fts_cycle.ht and fts_cycle.state.
9550         * lib/fts-cycle.c: New file, containing GPL'ed code migrated out of
9551         fts.c, with the following changes:
9552         (setup_dir, free_dir): New functions.
9553         (enter_dir): Now returns bool.  Return true if successful, false
9554         if memory exhausted.  All callers changed.
9555         Do not bother partly cleaning up on
9556         memory allocation failure; that is free_dir's job.
9557         However, free ad if hash_insert fails, to avoid memory leak.
9558         (enter_dir, leave_dir): Accommodate change to FTS by inspecting
9559         fts->fts_options to see which union member to use.
9560
9561 2005-05-20  Paul Eggert  <eggert@cs.ucla.edu>
9562
9563         * m4/fts.m4 (gl_FUNC_FTS_CORE): Renamed from gl_FUNC_FTS.
9564         (gl_FUNC_FTS, gl_FUNC_FTS_LGPL): New macros.
9565
9566 2005-05-20  Paul Eggert  <eggert@cs.ucla.edu>
9567
9568         * MODULES.html.sh (File system functions): Add fts, fts-lgpl.
9569
9570 2005-05-20  Jim Meyering  <jim@meyering.net>
9571
9572         * lib/unlinkdir.h (cannot_unlink_dir) [UNLINK_CANNOT_UNLINK_DIR]:
9573         Now a macro, to pacify GCC.
9574
9575 2005-05-20  Eric Blake  <ebb9@byu.net>  (tiny change)
9576
9577         * m4/chown.m4 (gl_FUNC_CHOWN): Correct sense of test for honoring IDs
9578         of -1.
9579
9580 2005-05-20  Eric Blake  <ebb9@byu.net>  (tiny change)
9581
9582         * lib/chown.c (rpl_chown): Return -1 on failure.
9583
9584 2005-05-18  Paul Eggert  <eggert@cs.ucla.edu>
9585
9586         * m4/canonicalize.m4 (AC_FUNC_CANONICALIZE_FILE_NAME]):
9587         Don't check for stddef.h.
9588         * m4/fts.m4 (gl_FUNC_FTS): Don't require AC_HEADER_STDC, as we
9589         don't use its results.
9590         Don't check for fcntl.h, stddef.h, stdlib.h, string.h, unistd.h,
9591         since we include them unconditionally.  Don't require
9592         AM_STDBOOL_H, since stdbool is a prerequisite.
9593         Don't require AC_C_CONST, AC_TYPE_SIZE_T or check for ptrdiff_t
9594         since we assume C89 or better.
9595         Don't require AC_FUNC_CLOSEDIR_VOID, AC_FUNC_LSTAT, or AC_FUNC_STAT,
9596         as we don't use their results.
9597         Don't check for fchdir, memmove, memset, strrchr, as we use
9598         them unconditionally.
9599         * m4/gettimeofday.m4 (AC_FUNC_GETTIMEOFDAY_CLOBBER): Don't define
9600         GETTIMEOFDAY_CLOBBERS_LOCALTIME_BUFFER, since nobody uses it.
9601
9602 2005-05-18  Paul Eggert  <eggert@cs.ucla.edu>
9603
9604         * lib/canonicalize.c: Include canonicalize.h first, to test interface.
9605         Include <stddef.h> unconditionally, since we assume C89 now.
9606         All uses of PTR_INT_TYPE replaced by ptrdiff_t.
9607         * lib/fts.c: Include fts_.h first, to check interface.
9608         Do not include intprops.h; no longer needed.
9609         Include cycle-check.h and hash.h, since fts_.h no longer does.
9610         Remove unnecessary casts of closedir to void.
9611         (fts_build): Use a simpler method (not involving TYPE_SIGNED) to
9612         decide whether to decrement nlinks.
9613         * lib/fts_.h: Do not include hash.h or cycle-check.h; no longer needed.
9614         (FTS): Use struct hash_table * instead of Hash_table, so that
9615         we no longer need to include hash.h here.
9616
9617 2005-05-18  Jim Meyering  <jim@meyering.net>
9618
9619         * modules/dirfd (License): Change to LGPL.  Most of the code
9620         is already in the public domain.
9621
9622 2005-05-18  Jim Meyering  <jim@meyering.net>
9623
9624         * m4/fts.m4 (AC_LIBSOURCES): Add intprops.h to the list.
9625         Reported by Yoann Vandoorselaere.
9626
9627 2005-05-17  Jim Meyering  <jim@meyering.net>
9628
9629         * m4/fts.m4: New file, from coreutils.
9630
9631 2005-05-17  Jim Meyering  <jim@meyering.net>
9632
9633         * lib/fts.c, fts_.h: New files, from coreutils.
9634
9635 2005-05-14  Paul Eggert  <eggert@cs.ucla.edu>
9636
9637         Sync from coreutils.
9638         * m4/unlinkdir.m4: New file.
9639
9640 2005-05-14  Paul Eggert  <eggert@cs.ucla.edu>
9641
9642         Sync from coreutils.
9643         * lib/unlinkdir.c, unlinkdir.h: New files.
9644         * lib/gethrxtime.c, gethrxtime.h, getpass.h, mountlist.h, path-concat.c,
9645         regex.h, unlocked-io.h, xtime.h:
9646         White space changes only.
9647         * lib/makepath.c (make_path): Port to hosts where leading "//" is special.
9648         * lib/yesno.c: Include getline.h, not ctype.h.
9649         (yesno): Don't remove leading white space; POSIX doesn't allow it.
9650         Use getline to remove arbitrary restriction on response length.
9651
9652 2005-05-14  Paul Eggert  <eggert@cs.ucla.edu>
9653
9654         * config/srclist-update: Spell out "Street" in FSF postal
9655         mail address; this is the style the FSF seems to prefer.
9656
9657         * build-aux/depcomp, build-aux/install-sh, build-aux/mdate-sh,
9658         build-aux/missing, build-aux/mkinstalldirs: Sync from Automake;
9659         this updates FSF postal mail address.
9660
9661         Sync from coreutils.
9662         * modules/unlinkdir: New file.
9663         * modules/yesno (Depends-on): Add getline.
9664         * MODULES.html.sh (File system functions): Add unlinkdir.
9665
9666 2005-05-13  Paul Eggert  <eggert@cs.ucla.edu>
9667
9668         * lib/byteswap_.h, getsubopt.h, iconvme.h, strsep.c, strsep.h:
9669         Change the initial comment to refer to GPL, not LGPL.
9670         gnulib-tool will change it to LGPL as needed.
9671
9672         * lib/__fpending.c, acl.c, acl.h, alloca_.h, allocsa.c, allocsa.h,
9673         argmatch.c, argmatch.h, argp-ba.c, argp-eexst.c, argp-fmtstream.c,
9674         argp-fmtstream.h, argp-fs-xinl.c, argp-help.c, argp-namefrob.h,
9675         argp-parse.c, argp-pv.c, argp-pvh.c, argp-xinl.c, argp.h, argz.c,
9676         argz_.h, asnprintf.c, asprintf.c, atanl.c, backupfile.c,
9677         backupfile.h, base64.c, base64.h, basename.c, binary-io.h,
9678         byteswap_.h, c-ctype.c, c-ctype.h, c-stack.c, c-stack.h,
9679         c-strtod.c, calloc.c, canon-host.c, canonicalize.c,
9680         canonicalize.h, ceill.c, chdir-long.c, chdir-long.h, chown.c,
9681         classpath.c, classpath.h, cloexec.c, closeout.c, closeout.h,
9682         concatpath.c, config.charset, copy-file.c, copy-file.h,
9683         cycle-check.c, cycle-check.h, diacrit.c, diacrit.h, dirfd.c,
9684         dirfd.h, dirname.c, dirname.h, dummy.c, dup-safer.c, dup2.c,
9685         eealloc.h, error.c, error.h, euidaccess.c, exclude.c, exclude.h,
9686         execute.c, execute.h, exit.h, exitfail.c, exitfail.h, expl.c,
9687         fatal-signal.c, fatal-signal.h, fd-safer.c, file-type.c,
9688         file-type.h, fileblocks.c, filemode.c, filemode.h, findprog.c,
9689         findprog.h, floorl.c, fnmatch.c, fnmatch_.h, fnmatch_loop.c,
9690         fopen-safer.c, free.c, frexpl.c, fsusage.c, fsusage.h,
9691         full-read.c, full-read.h, full-write.c, full-write.h,
9692         fwriteerror.c, fwriteerror.h, gai_strerror.c, gcd.c, gcd.h,
9693         getaddrinfo.c, getaddrinfo.h, getcwd.c, getcwd.h, getdate.h,
9694         getdate.y, getdomainname.c, getdomainname.h, getgroups.c,
9695         gethostname.c, gethrxtime.c, gethrxtime.h, getline.c, getline.h,
9696         getloadavg.c, getndelim2.c, getndelim2.h, getnline.c, getnline.h,
9697         getopt.c, getopt1.c, getopt_.h, getopt_int.h, getpagesize.h,
9698         getpass.c, getpass.h, getsubopt.c, getsubopt.h, gettext.h,
9699         gettime.c, gettimeofday.c, getugroups.c, getusershell.c,
9700         group-member.c, group-member.h, hard-locale.c, hard-locale.h,
9701         hash-pjw.c, hash-pjw.h, hash.c, hash.h, human.c, human.h,
9702         iconvme.c, iconvme.h, idcache.c, inet_ntop.h, intprops.h,
9703         inttostr.c, inttostr.h, isdir.c, javacomp.c, javacomp.h,
9704         javacomp.sh.in, javaexec.c, javaexec.h, javaexec.sh.in,
9705         lbrkprop.h, lchown.c, ldexpl.c, linebreak.c, linebreak.h,
9706         linebuffer.c, linebuffer.h, localcharset.c, localcharset.h,
9707         logl.c, long-options.c, long-options.h, lstat.c, makepath.c,
9708         makepath.h, malloc.c, mathl.h, mbswidth.c, mbswidth.h, md5.c,
9709         md5.h, memcasecmp.c, memcasecmp.h, memchr.c, memcmp.c, memcoll.c,
9710         memcoll.h, memcpy.c, memmem.c, memmem.h, mempcpy.c, mempcpy.h,
9711         memrchr.c, memrchr.h, memset.c, minmax.h, mkdir.c, mkdtemp.c,
9712         mkdtemp.h, mkstemp.c, mktime.c, modechange.c, modechange.h,
9713         mountlist.c, mountlist.h, nanosleep.c, obstack.c, obstack.h,
9714         openat.c, openat.h, pagealign_alloc.c, pagealign_alloc.h,
9715         path-concat.c, path-concat.h, pathmax.h, pathname.h, physmem.c,
9716         physmem.h, pipe.c, pipe.h, poll.c, poll_.h, posixtm.c, posixtm.h,
9717         posixver.c, printf-args.c, printf-args.h, printf-parse.c,
9718         printf-parse.h, progname.c, progname.h, progreloc.c, putenv.c,
9719         quote.c, quote.h, quotearg.c, quotearg.h, raise.c, readlink.c,
9720         readtokens.c, readtokens.h, readtokens0.c, readtokens0.h,
9721         readutmp.c, readutmp.h, realloc.c, ref-add.sin, ref-del.sin,
9722         regex.c, regex.h, rename.c, rmdir.c, rpmatch.c, safe-read.c,
9723         safe-read.h, safe-write.c, safe-write.h, same.c, same.h,
9724         save-cwd.c, save-cwd.h, savedir.c, savedir.h, setenv.c, setenv.h,
9725         settime.c, sh-quote.c, sh-quote.h, sha1.c, sha1.h, sig2str.c,
9726         sig2str.h, sincosl.c, snprintf.c, snprintf.h, sqrtl.c,
9727         stat-macros.h, stat.c, stdbool_.h, stdint_.h, stdio-safer.h,
9728         stpcpy.c, stpcpy.h, stpncpy.c, stpncpy.h, strcase.h, strcasecmp.c,
9729         strchrnul.c, strchrnul.h, strcspn.c, strdup.c, strdup.h,
9730         strerror.c, strftime.c, strftime.h, stripslash.c, strndup.c,
9731         strndup.h, strnlen.c, strpbrk.c, strpbrk.h, strsep.c, strsep.h,
9732         strstr.c, strstr.h, strtod.c, strtoimax.c, strtok_r.c, strtok_r.h,
9733         strtol.c, strtoll.c, strtoul.c, strtoull.c, strverscmp.c,
9734         strverscmp.h, sysexit_.h, tempname.c, time_r.c, time_r.h,
9735         timegm.c, timegm.h, timespec.h, trigl.c, trigl.h, ucs4-utf16.h,
9736         ucs4-utf8.h, unicodeio.c, unicodeio.h, unistd-safer.h,
9737         unlocked-io.h, unsetenv.c, userspec.c, utf16-ucs4.h, utf8-ucs4.h,
9738         utime.c, utimecmp.c, utimecmp.h, utimens.c, vasnprintf.c,
9739         vasnprintf.h, vasprintf.c, vasprintf.h, version-etc-fsf.c,
9740         version-etc.c, version-etc.h, vsnprintf.c, vsnprintf.h,
9741         w32spawn.h, wait-process.c, wait-process.h, xalloc-die.c,
9742         xalloc.h, xallocsa.c, xallocsa.h, xasprintf.c, xgetcwd.c,
9743         xgetcwd.h, xgetdomainname.c, xgetdomainname.h, xgethostname.c,
9744         xmalloc.c, xmemcoll.c, xnanosleep.c, xreadlink.c, xreadlink.h,
9745         xsetenv.c, xsetenv.h, xsize.h, xstrndup.c, xstrndup.h, xstrtod.c,
9746         xstrtod.h, xstrtoimax.c, xstrtol.c, xstrtol.h, xstrtoumax.c,
9747         xtime.h, xvasprintf.c, xvasprintf.h, yesno.c, yesno.h:
9748         Update FSF postal mail address.
9749
9750 2005-05-13  Paul Eggert  <eggert@cs.ucla.edu>
9751
9752         * MODULES.html.sh, README, gnulib-tool, tests/test-base64.c,
9753         tests/test-memmem.c, tests/test-stpncpy.c:
9754         Update FSF postal mail address.
9755
9756 2005-05-13  Bruno Haible  <bruno@clisp.org>
9757
9758         * lib/stdint_.h (int64_t, uint64_t, int_least64_t, uint_least64_t,
9759         int_fast64_t, uint_fast64_t, intmax_t, uintmax_t, INT64_MIN, INT64_MAX,
9760         UINT64_MAX, INT_LEAST64_MIN, INT_LEAST64_MAX, UINT_LEAST64_MAX,
9761         INT_FAST64_MIN, INT_FAST64_MAX, UINT_FAST64_MAX, INTMAX_MIN,
9762         INTMAX_MAX, UINTMAX_MAX, INT64_C, UINT64_C, INTMAX_C, UINTMAX_C):
9763         Add support for 64-bit integers in the MSVC compiler.
9764
9765 2005-05-12  Sergey Poznyakoff  <gray@Mirddin.farlep.net>
9766
9767         * modules/getdate (Makefile.am): Add getdate.c to EXTRA_DIST
9768
9769 2005-05-12  Eric Blake  <ebb9@byu.net>  (tiny change)
9770
9771         * gnulib-tool (func_import): Sort and uniquify recommended includes.
9772
9773 2005-05-11  Paul Eggert  <eggert@cs.ucla.edu>
9774
9775         * doc/getdate.texi (General date syntax): Don't say that date
9776         date --iso-8601=ns generates acceptable dates; it doesn't yet.
9777         Problem reported by Nic Ferrier.
9778
9779 2005-05-10  Yoann Vandoorselaere <yoann.v@prelude-ids.com>
9780
9781         * lib/getaddrinfo.c: Don't fail when SOCK_STREAM or SOCK_DGRAM are
9782         specified in ai_socktype. Fix invalid ai_protocol
9783         check. ai_protocol is usually set to 0 or depending on
9784         ai_family/ai_socktype to IPPROTO_TCP / IPPROTO_UDP.  Checking for
9785         SOCK_STREAM / SOCK_DGRAM in ai_protocol was invalid.  Set
9786         ai_socktype / ai_protocol in the returned addrinfo structure.
9787
9788 2005-05-10  Simon Josefsson  <jas@extundo.com>
9789
9790         * m4/getaddrinfo.m4: Look in libnsl/libsocket for getaddrinfo, from
9791         Yoann Vandoorselaere <yoann.v@prelude-ids.com>.
9792
9793 2005-05-10  Karl Berry  <karl@gnu.org>
9794
9795         * doc/fdl.texi, gpl.texi, lgpl.texi, COPYING: update FSF address
9796         (from http://www.gnu.org/licenses).
9797         * doc/COPYING.LIB: also rename to COPYING.LESSER.
9798         * doc/COPYING.DOC: remove; per rms, only needed in doc files, so
9799         fdl.texi suffices.
9800
9801 2005-05-10  Karl Berry  <karl@gnu.org>
9802
9803         * config/srclist.txt (COPYING.LESSER): rename from COPYING.LIB.
9804         (COPYING.DOC): remove.
9805
9806         * config/srclist-update: new FSF address.
9807
9808 2005-05-10  Derek Price  <derek@ximbiot.com>
9809
9810         * m4/getopt.m4 (gl_GETOPT): Check for Solaris 10 bug, not decl, when
9811         possible.
9812
9813 2005-05-09  Yoann Vandoorselaere <yoann.v@prelude-ids.com>
9814             Bruno Haible  <bruno@clisp.org>
9815
9816         * modules/inet_ntop: New file.
9817         * MODULES.html.sh (Support for systems lacking POSIX:2001): Add
9818         inet_ntop.
9819
9820 2005-05-09  Yoann Vandoorselaere <yoann.v@prelude-ids.com>
9821             Bruno Haible  <bruno@clisp.org>
9822
9823         * m4/inet_ntop.m4: New file.
9824
9825 2005-05-09  Yoann Vandoorselaere <yoann.v@prelude-ids.com>
9826             Bruno Haible  <bruno@clisp.org>
9827
9828         * lib/inet_ntop.h: New file.
9829         * lib/inet_ntop.c: New file, from glibc with modifications.
9830
9831 2005-05-09  Paul Eggert  <eggert@cs.ucla.edu>
9832
9833         * modules/time_r (License): Change to LGPL.
9834         * modules/extensions (License): Change to LGPL.  Actually,
9835         the license is more permissive than that, but currently gnulib-tool
9836         doesn't know how to handle more-permissive licenses.
9837
9838         * modules/stat-macros (Depends-on): Don't depend on stat-macros (!).
9839         Problem reported by Dave Love.
9840
9841 2005-05-08  Jim Meyering  <jim@meyering.net>
9842
9843         * lib/classpath.c (PATH_SEPARATOR): Remove insignificant trailing blank.
9844
9845 2005-05-06  Paul Eggert  <eggert@cs.ucla.edu>
9846
9847         * modules/argmatch (Depends-on): Add stdbool.
9848         * modules/backupfile (Depends-on): Likewise.
9849         * modules/chdir-long (Depends-on): Likewise.
9850         * modules/closeout (Depends-on): Likewise.
9851         * modules/cycle-check (Depends-on): Likewise.
9852         * modules/dirname (Depends-on): Likewise.
9853         * modules/fnmatch (Depends-on): Likewise.
9854         * modules/fsusage (Depends-on): Likewise.
9855         * modules/fwriteerror (Depends-on): Likewise.
9856         * modules/getcwd (Depends-on): Likewise.
9857         * modules/getloadavg (Depends-on): Likewise.
9858         * modules/hard-locale (Depends-on): Likewise.
9859         * modules/makepath (Depends-on): Likewise.
9860         * modules/mountlist (Depends-on): Likewise.
9861         * modules/nanosleep (Depends-on): Likewise.
9862         * modules/posixtm (Depends-on): Likewise.
9863         * modules/quotearg (Depends-on): Likewise.
9864         * modules/readtokens (Depends-on): Likewise.
9865         * modules/readtokens0 (Depends-on): Likewise.
9866         * modules/readutmp (Depends-on): Likewise.
9867         * modules/save-cwd (Depends-on): Likewise.
9868         * modules/strftime (Depends-on): Likewise.
9869         * modules/userspec (Depends-on): Likewise.
9870         * modules/utimecmp (Depends-on): Likewise.
9871         * modules/xgetcwd (Depends-on): Likewise.
9872         * modules/xnanosleep (Depends-on): Likewise.
9873         * modules/xstrtod (Depends-on): Likewise.
9874         * modules/yesno (Depends-on): Likewise.
9875
9876 2005-05-05  Paul Eggert  <eggert@cs.ucla.edu>
9877
9878         * m4/getopt.m4 (gl_GETOPT): Check for Solaris 10 getopt, and avoid
9879         needless checks.
9880
9881 2005-05-01  Paul Eggert  <eggert@cs.ucla.edu>
9882
9883         Merge from coreutils.  Among other things,
9884         add bulletproofing for cases where stdin, stdout, or stderr are closed.
9885         * lib/fd-safer.c: New file.
9886         * lib/fcntl-safer.h, open-safer.c: Remove.
9887         * lib/chdir-long.c: Fix comment "fetish" -> "coreutils".
9888         * lib/dup-safer.c: Include unistd-safer.h first.
9889         Don't include errno.h.
9890         (dup_safer) [!defined F_DUPFD]: Let fd_safer do the real work.
9891         * lib/file-type.h: Don't assume invoker included sys/stat.h first.
9892         * lib/file-type.c: Rely on file-type.h change.
9893         * lib/getloadavg.c: Include unistd-safer.h.
9894         (getloadavg): Use safer open.
9895         * lib/getusershell.c: Include "stdio-safer.h".
9896         (getusershell): Use safer fopen.
9897         * lib/long-options.c (long_options): Use NULL rather than 0.
9898         * lib/modechange.h (mode_free): Remove; all callers changed to invoke
9899         'free'.
9900         * lib/modechange.c: Likewise.
9901         xstrtol.h, stdbool.h, stddef.h: Don't include; no longer needed.
9902         (MODE_DONE): New constant.
9903         (struct mode_change): Remove 'next' member.
9904         (make_node_op_equals): New function; like the old one of the
9905         same name, except it allocates an array.
9906         (mode_compile, mode_create_from_ref): Use it.
9907         (mode_compile): Allocate result as an array, not a linked list.
9908         Parse octal string ourself, so that we catch mistakes like "+0".
9909         (mode_adjust): Arg is an array, not a linked list.
9910         * lib/modechange.c: Include stat-macros.h, xalloc.h.
9911         (S_ISDIR, S_ISUID, S_ISGID, S_ISVTX, S_IRUSR, S_IWUSR, S_IXUSR):
9912         (S_IRGRP, S_IWGRP, S_IXGRP, S_IROTH, S_IWOTH, S_IXOTH, S_IRXWU):
9913         (S_IRWXG, S_IRWXO, CHMOD_MODE_BITS):
9914         Remove.  This is now stat-macros.h's job.
9915         (talloc): Remove.  All callers replaced by xalloc, so that
9916         our invokers don't have to worry about reporting memory failures.
9917         (make_node_op_equals): Remove.
9918         (MODE_ORDINARY_CHAGE, MODE_X_IF_ANY_X, MODE_COPY_EXISTING):
9919         New constants.
9920         (struct mode_change): Moved here from modechange.h.
9921         (mode_append_entry): Remove.
9922         (mode_compile): Remove MASKED_OPS arg, since it encouraged
9923         apps to have incorrect behavior.  Use simpler algorithm for head
9924         and tail.  Don't futz with umask; that's now the job of mode_adjust.
9925         Detect more invalid usages rather than having somewhat-random behavior.
9926         Don't insert an "a=" action, as that leads to incorrect behavior.
9927         (mode_compile, mode_create_from_ref): Return NULL on error instead
9928         of an enum, since now there's only one way to have an error.  All
9929         callers changed.
9930         (mode_adjust): Accept new arg UMASK_VALUE, and interpret it
9931         at the correct time.  Simplify calculation of "+u" and its ilk.
9932         Don't mishandle "+X".
9933         (mode_free): Remove "register" and localize decls.
9934         * lib/modechange.h (MODE_X_IF_ANY_X, MODE_COPY_EXISTING):
9935         (struct mode_change): Move to modechange.c; callers don't
9936         need to see this stuff.
9937         (MODE_MASK_EQUALS, MODE_MASK_PLUS, MODE_MASK_MINUS, MODE_MASK_ALL):
9938         (MODE_INVALID, MODE_MEMORY_EXHAUSTED, MODE_BAD_REFERENCE): Remove.
9939         (mode_change, mode_adjust): Reflect the new signatures noted above.
9940         * lib/nanosleep.c (rpl_nanosleep): Include "timespec.h" before macros
9941         that might redefine system include files.
9942         (siginterrupt) [!HAVE_SIGINTERRUPT]: New macro.
9943         (my_usleep): Use NULL rather than (void *) 0.
9944         (rpl_nanosleep) [!defined SA_NOCLDSTOP]:
9945         Use siginterrupt to specify that system calls should be interrupted.
9946         (rpl_nanosleep): Move initialization of suspended closer to call of
9947         my_usleep.
9948         * lib/readutmp.h (read_utmp): New arg OPTIONS.  All uses changed.
9949         * lib/readutmp.c: Likewise.  Include signal.h, stdbool.h.
9950         (desirable_utmp_entry): New function.
9951         (read_utmp) [defined UTMP_NAME_FUNCTION]: Redo memory allocation
9952         using x2nrealloc, to simplify logic.
9953         (read_utmp) [!defined UTMP_NAME_FUNCTION]: Check for overflow in
9954         size calculation.  Do not assume utmp file is a regular file.
9955         * lib/readutmp.h (UT_PID): Moved here from ../src/who.c.
9956         (READ_UTMP_CHECK_PIDS): New constant.
9957         * lib/save-cwd.c: Include unistd-safer.h.
9958         (save_cwd): Use fd_safer.
9959         * lib/tempname.c (S_ISDIR, S_IRUSR, S_IRUSR, S_IWUSR, S_IXUSR): Remove.
9960         [!_LIBC] Include "stat-macros.h" instead.
9961         * lib/unistd-safer.h (fd_safer): New decl.
9962
9963 2005-05-01  Paul Eggert  <eggert@cs.ucla.edu>
9964
9965         * modules/getloadavg (Depends-on): Add unistd-safer.
9966         * modules/getusershell (Depends-on): Add stdio-safer.
9967         * modules/lstat (Depends-on): Remove xalloc.
9968         * modules/mkstemp (Depends-on): Add stat-macros.
9969         * modules/modechange (Depends-on): Remove xstrtol.
9970         Add stat-macros, xalloc.
9971         * modules/save-cwd (Depends-on): Add unistd-safer.
9972         * modules/stdio-safer (Makefile.am): Remove lib_SOURCES.
9973         * modules/unistd-safer (Files): Add lib/fd-safer.c
9974         (Makefile.am): Remove lib_SOURCES.
9975
9976         * MODULES.html.sh (Enhancements for POSIX:2001 functions):
9977         Remove fcntl-safer; unistd-safer supersedes it.
9978
9979 2005-05-01  Paul Eggert  <eggert@cs.ucla.edu>
9980
9981         * m4/euidaccess.m4 (gl_PREREQ_EUIDACCESS): Don't require AC_HEADER_STAT.
9982         * m4/lchown.m4 (gl_FUNC_CHOWN): Likewise.
9983         (gl_PREREQ_CHOWN): Remove.
9984         * m4/lstat.m4 (gl_FUNC_LSTAT): Require AC_FUNC_LSTAT instead of calling
9985         it.  Don't require AC_HEADER_STAT.
9986         (gl_PREREQ_LSTAT): Remove.
9987         * m4/mkstemp.m4 (gl_PREREQ_TEMPNAME): Check stdint.h only once.
9988         Don't require AC_HEADER_STAT.
9989         * m4/rmdir.m4 (gl_FUNC_RMDIR): Don't require AC_HEADER_STAT.
9990         (gl_PREREQ_RMDIR): Remove.
9991         * m4/canonicalize.m4 (AC_FUNC_CANONICALIZE_FILE_NAME): Don't
9992         mention stat-macros.h or AC_HEADER_STAT, since we'll make
9993         the stat-macros module a prerequisite.
9994         * m4/file-type.m4 (gl_FILE_TYPE): Likewise.
9995         * m4/filemode.m4 (gl_FILEMODE): Likewise.
9996         * m4/makepath.m4 (gl_MAKEPATH): Likewise.
9997         * m4/modechange.m4 (gl_MODECHANGE): Likewise.
9998         * m4/clock_time.m4 (gl_CLOCK_TIME): Use gl_ rather than fetish_ for
9999         variable names.
10000         * m4/rmdir-errno.m4 (gl_FUNC_RMDIR_NOTEMPTY): Renamed from
10001         fetish_FUNC_RMDIR_NOTEMPTY.  All uses changed.  Use gl_ for
10002         variable prefixes.
10003         * m4/fcntl-safer.m4: Remove.
10004         * m4/stdio-safer.m4 (gl_STDIO_SAFER): Use AC_LIBSOURCES and AC_LIBOBJ.
10005         * m4/unistd-safer.m4 (gl_UNISTD_SAFER): Likewise.
10006         Invoke gl_PREREQ_FD_SAFER.
10007         (gl_PREREQ_FD_SAFER): New macro.
10008         * m4/nanosleep.m4 (gl_PREREQ_NANOSLEEP): Check for siginterrupt.
10009         * m4/readutmp.m4 (gl_READUTMP): Require AC_C_INLINE.
10010         Use AC_CHECK_HEADERS_ONCE and AC_CHECK_FUNCS_ONCE when possible.
10011         Remove duplicate call to AC_LIBOBJ(readutmp).
10012         (gl_PREREQ_READUTMP): Remove.  All uses inlined.
10013
10014         * m4/mmap-anon.m4 (gl_FUNC_MMAP_ANON): Check for message, not for
10015         MAP_ANON.  Problem reported by Moriyoshi Koizumi to bug-cvs.
10016
10017 2005-05-01  Paul Eggert  <eggert@cs.ucla.edu>
10018
10019         * MODULES.html.sh (Misc): Add byteswap.
10020
10021 2005-05-01  Oskar Liljeblad  <oskar@osk.mine.nu>
10022
10023         * modules/getcwd (Depends-on): Add extensions.
10024         * modules/openat (Depends-on): Likewise.
10025
10026 2005-05-01  Oskar Liljeblad  <oskar@osk.mine.nu>
10027
10028         * modules/byteswap: New file.
10029
10030 2005-05-01  Oskar Liljeblad  <oskar@osk.mine.nu>
10031
10032         * m4/byteswap.m4: New file.
10033
10034 2005-05-01  Oskar Liljeblad  <oskar@osk.mine.nu>
10035
10036         * lib/byteswap_.h: New file.
10037
10038 2005-04-25  Karl Berry  <karl@gnu.org>
10039
10040         * m4/gettext.m4: Update from GNU gettext 0.14.4.
10041
10042 2005-04-25  Albert Chin  <china@thewrittenword.com>
10043
10044         * lib/regex.c: Include <stdio.h>, as a workaround to a Compaq Desktop
10045         Toolkit C bug.
10046
10047 2005-04-21  Oskar Liljeblad  <oskar@osk.mine.nu>
10048
10049         * gnulib-tool (Options): Add -s for --symlink/--symbolic.
10050         (func_ln_if_changed) Remove forcibly for no error message
10051         in case file does not exist.
10052
10053 2005-04-19  Simon Josefsson  <jas@extundo.com>
10054
10055         * gnulib-tool (Options): Make --symlink mean --symbolic.
10056
10057 2005-04-18  Oskar Liljeblad <oskar@osk.mine.nu>
10058
10059         * doc/gnulib.texi (Initial import): Fix.  Mention --aux-dir.
10060
10061 2005-04-16  Simon Josefsson  <jas@extundo.com>
10062
10063         * modules/getpass-gnu (Makefile.am): Don't mention getpass.h.
10064
10065 2005-04-15  Simon Josefsson  <jas@extundo.com>
10066
10067         * m4/getpass.m4 (gl_FUNC_GETPASS): Use AC_LIBSOURCES.
10068
10069 2005-04-15  Simon Josefsson  <jas@extundo.com>
10070
10071         * gnulib-tool: Rename --symlink to --symbolic.
10072
10073 2005-04-15  Oskar Liljeblad <oskar@osk.mine.nu>
10074
10075         * gnulib-tool: Add -s, --symlink option to gnulib-tool to make
10076         symbolic links to files instead of copying/moving.  Add --aux-dir,
10077         specifying directory relative --dir where auxiliary build tools
10078         are placed.
10079
10080 2005-04-14  Bruno Haible  <bruno@clisp.org>
10081
10082         * modules/allocsa (License): Change to LGPL.
10083         Requested by Yoann Vandoorselaere <yoann@prelude-ids.org>.
10084
10085 2005-04-13  Paul Eggert  <eggert@cs.ucla.edu>
10086
10087         * lib/getdate.y (zone): Allow relunit_snumber after tZONE, so
10088         that "UTC +1 second" continues to work.  Problem reported
10089         by Dmitry V. Levin.
10090         (relunit_snumber): New rule.
10091         (relunit): Use it.
10092
10093 2005-04-12  Paul Eggert  <eggert@cs.ucla.edu>
10094
10095         * lib/getdate.y (universal_time_zone_table): New constant.
10096         (time_zone_table): Remove GMT, UT, UTC entries; they're now in
10097         universal_time_zone_table.
10098         (lookup_zone): Prefer universal_time_zone_table to
10099         local_time_zone_table, so that "GMT" time stamps are allowed in
10100         London during the summer.  Problem reported by Ian Abbott.
10101
10102 2005-04-12  Jim Meyering  <jim@meyering.net>
10103
10104         * lib/human.c (humblock): Set *options even when returning due to
10105         xstrtoumax conversion failure.  Thanks to a used-uninitialized
10106         warning from gcc-4.
10107
10108 2005-04-09  Jim Meyering  <jim@meyering.net>
10109
10110         * lib/posixtm.c (posixtime) [lint]: Avoid spurious warning from gcc-4's
10111         -Wuninitialized: initialize tm0.tm_year.
10112
10113 2005-04-04  Paul Eggert  <eggert@cs.ucla.edu>
10114
10115         * lib/getdate.y (parser_control): rels_seen is now a boolean, not a
10116         count, since there's no maximum.  All uses changed.
10117         Add member dsts_seen.
10118         (local_zone): Accumulate dsts_seen rather than relying on tm_isdst
10119         not being INT_MAX.
10120         (get_date): Initialize dsts_seen, and check that it doesn't go over 1.
10121         Use pc_rels_seen to decide whther a date is absolute.
10122
10123         * lib/getdate.y (number): Don't overwrite year.
10124         (get_date): Initialize pc.year.digits to 0, not 4, to enable above
10125         check.
10126
10127 2005-04-02  Simon Josefsson  <jas@extundo.com>
10128
10129         * lib/getaddrinfo.h: Fix OpenBSD compilation failure, inspired by tiny
10130         patch from Yoann Vandoorselaere <yoann@prelude-ids.org>.
10131
10132 2005-03-28  Eric Blake  <ebb9@byu.net>  (tiny change)
10133
10134         * m4/getcwd-path-max.m4: Return success on systems such as Cygwin
10135         where no absolute path name can be longer than PATH_MAX.
10136
10137 2005-03-27  Jim Meyering  <jim@meyering.net>
10138
10139         * lib/argmatch.c: Clarify comment: null-terminated -> NULL-terminated.
10140
10141 2005-03-26  Paul Eggert  <eggert@cs.ucla.edu>
10142
10143         * lib/intprops.h (INT_STRLEN_BOUND, INT_BUFSIZE_BOUND):
10144         "one's complement" -> "ones' complement" in comment, as per Knuth.
10145         "value of type" -> "type or expression" in comment.
10146         * lib/mktime.c, strftime.c: Propagate intprops.h comment nits.
10147
10148 2005-03-26  Jim Meyering  <jim@meyering.net>
10149
10150         Comment nits.
10151         * lib/intprops.h: Add the apostrophe in `(one|two)'s complement'.
10152         Correct typos: s/or/of/.
10153
10154 2005-03-26  Jim Meyering  <jim@meyering.net>
10155
10156         * modules/check-include-files: Move to ../ and rename to...
10157         * check-module: ...this.
10158
10159 2005-03-25  Jim Meyering  <jim@meyering.net>
10160
10161         * modules/xvasprintf (Files): Add xalloc.h.
10162
10163 2005-03-23  Paul Eggert  <eggert@cs.ucla.edu>
10164
10165         * modules/gettext (Files): config/config.rpath -> build-aux/config.rpath
10166         * modules/iconv (Files): Likewise.
10167         Problem reported by Oskar Liljeblad.
10168
10169 2005-03-23  Jim Meyering  <jim@meyering.net>
10170
10171         * modules/check-include-files: New script to check for
10172         missing dependencies, multiple includes, etc.
10173
10174         * modules/c-strtold (Depends-on): Add xalloc.
10175         * modules/c-strtod (Depends-on): Add xalloc.
10176         * modules/hash (Depends-on): Add xalloc.
10177         (Files): Remove lib/xalloc.h.
10178
10179         * modules/gethrxtime (Files): Add lib/gethrxtime.h.
10180         * modules/userspec (Files): Add lib/inttostr.h.
10181
10182 2005-03-23  Jim Meyering  <jim@meyering.net>
10183
10184         * lib/canonicalize.c: Remove duplicate `#include "stat-macros.h"'.
10185
10186 2005-03-22  Jim Meyering  <jim@meyering.net>
10187
10188         * modules/stat-macros: New module.
10189         * modules/canonicalize, modules/euidaccess, modules/file-type,
10190         * modules/filemode, modules/lchown, modules/makepath,
10191         * modules/rmdir, modules/stat: Depend on new stat-macros module
10192         rather than listing lib/stat-macros.h manually.
10193         Don't add stat-macros.h to lib_SOURCES or list it in Files: section.
10194
10195 2005-03-22  Jim Meyering  <jim@meyering.net>
10196
10197         * m4/stat-macros.m4 (gl_STAT_MACROS): New file/macro.
10198
10199 2005-03-22  Bruno Haible  <bruno@clisp.org>
10200
10201         * config/srclist.txt: Replace target directory 'config' with 'build-aux'.
10202         * config/config.guess, config.sub, config.rpath, depcomp, install-sh:
10203         * config/mdate-sh, missing, mkinstalldirs, texinfo.tex: Move to ../build-aux/.
10204
10205 2005-03-21  Paul Eggert  <eggert@cs.ucla.edu>
10206
10207         * modules/chdir-long (Depends-on): Add mempcpy.
10208
10209         * modules/acl, modules/backupfile, modules/c-strtod,
10210         modules/c-strtold, modules/canon-host, modules/canonicalize,
10211         modules/cloexec, modules/closeout, modules/dirfd, modules/dirname,
10212         modules/exclude, modules/exitfail, modules/file-type,
10213         modules/filemode, modules/fpending, modules/fsusage, modules/getcwd,
10214         modules/getdate, modules/getline, modules/getpagesize,
10215         modules/getpass, modules/getugroups, modules/group-member,
10216         modules/hard-locale, modules/hash, modules/human, modules/idcache,
10217         modules/inttostr, modules/long-options, modules/makepath,
10218         modules/md5, modules/memcasecmp, modules/memcoll,
10219         modules/modechange, modules/mountlist, modules/path-concat,
10220         modules/pathmax, modules/physmem, modules/posixtm, modules/posixver,
10221         modules/quote, modules/quotearg, modules/readtokens, modules/readutmp,
10222         modules/safe-read, modules/safe-write, modules/same, modules/savedir,
10223         modules/settime, modules/sha1, modules/sig2str, modules/strdup,
10224         modules/strftime, modules/strndup, modules/strverscmp,
10225         modules/timespec, modules/unlocked-io, modules/userspec,
10226         modules/utimecmp, modules/utimens, modules/xalloc, modules/xstrtol,
10227         modules/yesno:
10228         Remove lib_SOURCES line from Makefile.am section, as this is now
10229         done automatically by the corresponding Autoconf macro.
10230
10231 2005-03-21  Jim Meyering  <jim@meyering.net>
10232
10233         Changes imported from coreutils.
10234
10235         * lib/cycle-check.c: Don't include xalloc.h.
10236
10237         * lib/path-concat.c: Don't include assert.h.
10238         (path_concat): Remove assertion that would have triggered
10239         for ABASE starting with more than one slash.
10240         Reported by Andreas Schwab.
10241
10242         * lib/path-concat.c (path_concat): Set *BASE_IN_RESULT
10243         properly when ABASE is an absolute file name.
10244         Correct the description of this function.
10245         Include <assert.h>.
10246         Add an assertion and a test driver.
10247         This fixes a bug introduced on 2004-07-02.
10248         Andreas Schwab reported the resulting failure of cp --parents:
10249         http://lists.gnu.org/archive/html/bug-coreutils/2005-01/msg00130.html
10250
10251 2005-03-21  Jim Meyering  <jim@meyering.net>
10252
10253         * m4/chdir-long.m4 (gl_PREREQ_CHDIR_LONG): Invoke gl_FUNC_MEMRCHR.
10254         * m4/memrchr.m4 (gl_FUNC_MEMRCHR): Check for memrchr decl.
10255
10256 2005-03-21  Jim Meyering  <jim@meyering.net>
10257         and  Paul Eggert  <eggert@cs.ucla.edu>
10258
10259         * m4/acl.m4, backupfile.m4, c-strtod.m4, canon-host.m4, canonicalize.m4,
10260         cloexec.m4, closeout.m4, dirfd.m4, dirname.m4, exclude.m4,
10261         exitfail.m4, file-type.m4, filemode.m4, fpending.m4, fsusage.m4,
10262         getcwd.m4, getdate.m4, getline.m4, getpagesize.m4, getpass.m4,
10263         getugroups.m4, group-member.m4, hard-locale.m4, hash.m4, human.m4,
10264         idcache.m4, inttostr.m4, long-options.m4, makepath.m4, md5.m4,
10265         memcasecmp.m4, memcoll.m4, modechange.m4, mountlist.m4, nanosleep.m4,
10266         path-concat.m4, pathmax.m4, physmem.m4, posixtm.m4, posixver.m4,
10267         quote.m4, quotearg.m4, readtokens.m4, readutmp.m4, safe-read.m4,
10268         safe-write.m4, same.m4, savedir.m4, settime.m4, sha1.m4, sig2str.m4,
10269         strdup.m4, strftime.m4, strndup.m4, strverscmp.m4, timespec.m4,
10270         unlocked-io.m4, userspec.m4, utimecmp.m4, utimens.m4, xalloc.m4,
10271         xnanosleep.m4, xstrtol.m4, yesno.m4:
10272         Use AC_LIBSOURCES and AC_LIBOBJ to indicate source and object files
10273         for these modules.
10274
10275 2005-03-18  Paul Eggert  <eggert@cs.ucla.edu>
10276
10277         * lib/strftime.c (my_strftime): If the underlying strftime returns 0
10278         (which shouldn't happen), generate nothing instead of returning 0
10279         immediately, so that nstrftime (NULL, ...) doesn't return 0.
10280
10281 2005-03-16  Bruno Haible  <bruno@clisp.org>
10282
10283         * modules/stdint (Makefile.am): Use HAVE_LONG_LONG_64BIT instead of
10284         HAVE_LONGLONG_64BIT.
10285
10286 2005-03-16  Bruno Haible  <bruno@clisp.org>
10287
10288         * m4/stdint.m4 (gl_STDINT_H): Define HAVE_LONG_LONG_64BIT instead of
10289         HAVE_LONGLONG_64BIT.
10290
10291 2005-03-16  Bruno Haible  <bruno@clisp.org>
10292
10293         * lib/stdint_.h: Use HAVE_LONG_LONG_64BIT instead of HAVE_LONGLONG_64BIT.
10294
10295 2005-03-15  Paul Eggert  <eggert@cs.ucla.edu>
10296
10297         * lib/strftime.c (my_strftime): Prepend space to format so that we can
10298         reliably distinguish strftime failure from empty output on POSIX
10299         hosts.
10300
10301 2005-03-15  Paul Eggert  <eggert@cs.ucla.edu>
10302
10303         * lib/iconvme.c (SIZE_MAX): New macro, if not already defined.
10304         (iconv_string): Don't guess a size-zero buffer, as that might cause
10305         buffer overrun.  Instead, avoid multiplying by MB_LEN_MAX if the
10306         result would be 'too large', where 'too large' is (heuristically)
10307         the square root of SIZE_MAX, divided by MB_LEN_MAX to allay
10308         overflow concerns.  This will prevent some unwanted malloc failures
10309         when the inputs are very large.
10310
10311 2005-03-15  Karl Berry  <karl@gnu.org>
10312
10313         * config/srclist.txt (config.rpath): from gettext.
10314         * config/config.rpath: update.
10315
10316 2005-03-15  Bruno Haible  <bruno@clisp.org>
10317
10318         * lib/regex.c (byte_re_match_2_internal): Rename local variable 'not' to
10319         'negate'.
10320
10321         * lib/regex.c (byte_re_match_2_internal): Reduce scope of same_str_p
10322         variable.
10323
10324         * lib/regex.c (EXTEND_BUFFER, regcomp): Cast the realloc/malloc results.
10325
10326 2005-03-14  Simon Josefsson  <jas@extundo.com>
10327
10328         * lib/timegm.h: Use proper prototype CPP guards, reported by Dave Love
10329         <fx@gnu.org>.
10330
10331 2005-03-14  Paul Eggert  <eggert@cs.ucla.edu>
10332
10333         * lib/mktime.c (TYPE_TWOS_COMPLEMENT, TYPE_ONES_COMPLEMENT,
10334         TYPE_SIGNED_MAGNITUDE, TYPE_MINIMUM, TYPE_MAXIMUM): Sync from
10335         intprops.h.
10336         * lib/strtol.c: Likewise.
10337
10338 2005-03-14  Jim Meyering  <jim@meyering.net>
10339
10340         * lib/strftime.c (my_strftime) [HAVE_STRFTIME && ! (_NL_CURRENT
10341         && HAVE_STRUCT_ERA_ENTRY)]: Initialize the first byte of ubuf[]
10342         to be nonzero so that we (and caller) can detect the difference
10343         between a valid zero-length expansion and an error return, even
10344         when the underlying strftime fails before writing anything into
10345         that location.
10346
10347 2005-03-14  Bruno Haible  <bruno@clisp.org>
10348
10349         * m4/lib-link.m4, gettext.m4, nls.m4, po.m4:
10350         Update from GNU gettext 0.14.3.
10351
10352 2005-03-10  Jim Meyering  <jim@meyering.net>
10353
10354         * m4/save-cwd.m4 (gl_SAVE_CWD): Check for fchdir.
10355
10356 2005-03-10  Jim Meyering  <jim@meyering.net>
10357
10358         * lib/save-cwd.c [!HAVE_FCHDIR]: Define open, fchdir, and chdir_long
10359         so that this module works on systems without fchdir.
10360
10361 2005-03-09  Paul Eggert  <eggert@cs.ucla.edu>
10362
10363         Factor int-properties macros into a single file, except for
10364         glibc-related files.
10365         * lib/intprops.h: New file.
10366         * lib/getloadavg.c: Include it instead of limits.h.
10367         (INT_STRLEN_BOUND): Remove.
10368         * lib/human.c: Include intprops.h.
10369         (group_number): Use INT_STRLEN_BOUND instead of rolling it ourself.
10370         * lib/human.h (LONGEST_HUMAN_READABLE): Use 146/485 rather than 302/1000.
10371         * lib/inttostr.h: Include intprops.h instead of limits.h.
10372         (INT_STRLEN_BOUND, INT_BUFSIZE_BOUND): Remove.
10373         * lib/mktime.c (TYPE_IS_INTEGER, TYPE_TWOS_COMPLEMENT): New macros,
10374         for consistency with intprops.h.
10375         (time_t_is_integer, twos_complement_arithmetic): Use them.
10376         * lib/sig2str.h: Include <signal.h>, intprops.h.
10377         (INT_STRLEN_BOUND): Remove.
10378         * lib/strftime.c (TYPE_SIGNED): Remove.
10379         (INT_STRLEN_BOUND): Switch to same implementation as intprops.h.
10380         * lib/strtol.c: Adjust comments to match intprops.h.
10381         * lib/userspec.c: Include intprops.h.
10382         (TYPE_SIGNED, TYPE_MINIMUM, TYPE_MAXIMUM): Remove.
10383         * lib/utimecmp.c, xnanosleep.c, xstrtol.c: Likewise.
10384         * lib/utimecmp.c (utimecmp): Use TYPE_IS_INTEGER, TYPE_TWOS_COMPLEMENT
10385         instead of rolling our own expressions.
10386         * lib/xstrtol.c: Include xstrtol.h first, to test interface.
10387
10388         * lib/strftime.c: Include <stdbool.h>.  Use bool where appropriate,
10389         instead of int.
10390         (my_strftime): Do not mishandle years close to INT_MAX, by doing
10391         the right thing even if adding 1900 would overflow.  Similarly
10392         for tm_mon + 1 and tm_yday + 1.
10393         Make %Y always equivalent to %C%y, and similarly for %G and %g.
10394         (DO_NUMBER, DO_NUMBER_SPACEPAD): Set digits to d, not a conditional.
10395         (DO_SIGNED_NUMBER): New macro.
10396         (my_strftime) [HAVE_TZNAME]: Don't dump core if tp->tm_dst > 1.
10397
10398 2005-03-07  Bruno Haible  <bruno@clisp.org>
10399
10400         * m4/mmap-anon.m4 (MAP_FILE, MAP_FAILED): Remove definitions.
10401
10402 2005-03-07  Bruno Haible  <bruno@clisp.org>
10403
10404         * lib/pagealign_alloc.c (MAP_FILE, MAP_FAILED): Define fallbacks.
10405
10406 2005-03-04  Derek R. Price  <derek@ximbiot.com>
10407
10408         * gnulib-tool (func_cp_if_changed, func_mv_if_changed): New functions.
10409         (func_import): Only replace files via --import when they have actually
10410         changed.
10411
10412 2005-03-03  Derek R. Price  <derek@ximbiot.com>
10413
10414         * m4/mmap-anon.m4: New file.
10415         * m4/pagealign_alloc.m4: New file.
10416
10417 2005-03-03  Derek R. Price  <derek@ximbiot.com>
10418             Bruno Haible  <bruno@clisp.org>
10419
10420         * modules/pagealign_alloc: New file.
10421         * MODULES.html.sh (Memory management functions): Add pagealign_alloc.
10422
10423 2005-03-03  Derek R. Price  <derek@ximbiot.com>
10424             Bruno Haible  <bruno@clisp.org>
10425
10426         * lib/pagealign_alloc.h: New file.
10427         * lib/pagealign_alloc.c: New file.
10428
10429 2005-03-03  Bruno Haible  <bruno@clisp.org>
10430
10431         * m4/inttypes.m4, isc-posix.m4, once-only.m4:
10432         Use an all-permissive copyright notice, recommended by RMS.
10433
10434 2005-03-02  Bruno Haible  <bruno@clisp.org>
10435
10436         * m4/stpncpy.m4 (gl_FUNC_STPNCPY): Undo the replacement here. Because of
10437         AIX, the replacement has to be done only after <string.h> is included,
10438         therefore not in config.h. stpncpy.h does the replacement, and
10439         stpncpy.c uses it.
10440
10441 2005-03-02  Bruno Haible  <bruno@clisp.org>
10442
10443         * lib/stpncpy.h (stpncpy): Define as a macro without arguments, so that
10444         stpncpy.c uses it.
10445
10446 2005-03-01  Paul Eggert  <eggert@cs.ucla.edu>
10447
10448         Remove workaround for bug in Linux kernel 2.6.8 or thereabouts.
10449         The workaround isn't strictly needed for POSIX conformance, and
10450         it's too much of a pain to configure and maintain.  We'll ask
10451         people to fix their kernels instead.
10452         * lib/xnanosleep.c: Don't include gethrxtime.h or xtime.h.
10453         (NANOSLEEP_BUG_WORKAROUND): Remove.
10454         (xnanosleep): Remove the workaround.
10455
10456 2005-03-01  Paul Eggert  <eggert@cs.ucla.edu>
10457
10458         * modules/gettime (Makefile.am): Remove lib_SOURCES line.
10459         Reported by Derek Price.
10460         (Include): Add "timespec.h".
10461
10462         * modules/xnanosleep (Depends-on): Remove gethrxtime.
10463
10464 2005-03-01  Paul Eggert  <eggert@cs.ucla.edu>
10465
10466         * m4/xnanosleep.m4 (gl_XNANOSLEEP): Remove configuration attempting
10467         to detect nanosleep bug.
10468
10469 2005-03-01  Bruno Haible  <bruno@clisp.org>
10470
10471         * lib/vasnprintf.c (EOVERFLOW): Define to a fallback if needed.
10472
10473 2005-02-26  Paul Eggert  <eggert@cs.ucla.edu>
10474
10475         * modules/gethrxtime: New file.
10476         * modules/xnanosleep (Files): Add m4/xnanosleep.m4.
10477         (Depends-on): Add gethrxtime.
10478         (configure.ac): Add gl_XNANOSLEEP.
10479         (Makefile.am): Remove lib_SOURCES line.
10480
10481 2005-02-25  Paul Eggert  <eggert@cs.ucla.edu>
10482
10483         * m4/gethrxtime.m4, xnanosleep.m4: New files.
10484         * m4/gettime.m4 (gl_GETTIME): Check for nanotime.
10485
10486 2005-02-25  Paul Eggert  <eggert@cs.ucla.edu>
10487
10488         * lib/gethrxtime.h, gethrxtime.c, xtime.h: New files.
10489         * lib/timespec.h (gettime): Return void, since it always
10490         succeeds now.  All uses changed.
10491         * lib/gettime.c (gettime) Likewise.
10492         [HAVE_NANOTIME]: Prefer nanotime.
10493         Assume gettimeofday succeeds, as POSIX requires.
10494         Assime time () succeeds, since other code already does.
10495         * lib/xnanosleep.c: Include xtime.h and gethrxtime.h, not xalloc.h.
10496         (timespec_subtract): Remove.
10497         (NANOSLEEP_BUG_WORKAROUND): New constant.
10498         (xnanosleep): Use gethrxtime rather than gettime; this simplifies
10499         things considerably.  Use it only on GNU/Linux hosts, since the
10500         workaround shouldn't be needed elsewhere.
10501
10502 2005-02-24  Bruno Haible  <bruno@clisp.org>
10503
10504         * modules/gettext (Files): Add m4/glibc2.m4.
10505
10506 2005-02-24  Bruno Haible  <bruno@clisp.org>
10507
10508         * m4/gettext.m4, intdiv0.m4, intmax.m4, inttypes-pri.m4, lcmessage.m4:
10509         * m4/lib-link.m4, lib-prefix.m4, nls.m4, po.m4, printf-posix.m4:
10510         * m4/progtest.m4:
10511         Update from GNU gettext 0.14.2.
10512         * m4/glibc2.m4: New file, from GNU gettext 0.14.2.
10513
10514 2005-02-24  Bruno Haible  <bruno@clisp.org>
10515
10516         * lib/localcharset.c: Update from GNU gettext 0.14.2.
10517         * lib/config.charset: Update from GNU gettext 0.14.2.
10518
10519 2005-02-24  Bruno Haible  <bruno@clisp.org>
10520
10521         * lib/gettext.h: Update from GNU gettext 0.14.2.
10522
10523 2005-02-23  Simon Josefsson  <jas@extundo.com>
10524
10525         * m4/iconvme.m4: New file.
10526
10527 2005-02-23  Jim Meyering  <jim@meyering.net>
10528
10529         * m4/extensions.m4 (gl_USE_SYSTEM_EXTENSIONS): Revert yesteday's change.
10530         Thanks to Bruno Haible for catching it.
10531
10532 2005-02-22  Simon Josefsson  <jas@extundo.com>
10533
10534         * modules/iconvme: New file.
10535
10536         * MODULES.html.sh: Add iconvme.
10537
10538 2005-02-22  Simon Josefsson  <jas@extundo.com>
10539
10540         * lib/iconvme.h, iconvme.c: New files, from libc.
10541
10542 2005-02-22  Simon Josefsson  <jas@extundo.com>
10543
10544         * config/srclist.txt: Sync iconvme.h, iconvme.c from libc.
10545
10546 2005-02-22  Jim Meyering  <jim@meyering.net>
10547
10548         * m4/extensions.m4 (gl_USE_SYSTEM_EXTENSIONS): Fix typo: s/ifndef/ifdef/.
10549
10550 2005-02-20  Neil Conway  <neilc@samurai.com>
10551
10552         * lib/xgethostname.c (xgethostname): Check for ENOMEM, which is
10553         returned by OSX/Darwin if the specified buffer is not large
10554         enough for the hostname.
10555
10556 2005-02-03  Sergey Poznyakoff  <gray@Mirddin.farlep.net>
10557
10558         * lib/argp-help.c (__argp_help): Create a fake struct argp_state and
10559         pass it to _help, otherwise the latter coredumps trying to
10560         dereference state.root_argp.
10561
10562 2005-02-03  Paul Eggert  <eggert@cs.ucla.edu>
10563
10564         * modules/chdir-long (Depends-on): Add memrchr.
10565         * modules/memrchr (Files): Add lib/memrchr.h.
10566         (Include): "memrchr.h".
10567
10568 2005-02-03  Paul Eggert  <eggert@cs.ucla.edu>
10569
10570         * m4/memrchr.m4 (gl_FUNC_MEMRCHR): Add AC_LIBSOURCES, for memrchr.h.
10571
10572 2005-02-03  Paul Eggert  <eggert@cs.ucla.edu>
10573
10574         * lib/memrchr.h: New file.
10575         * lib/chdir-long.c: Include it.
10576         * lib/memrchr.c [!defined _LIBC]: Include it rather than <string.h>
10577         Don't bother including stddef.h.
10578
10579 2005-02-01  Paul Eggert  <eggert@cs.ucla.edu>
10580
10581         * lib/mountlist.h (MOUNTLIST_H_): New macro, to protect against double
10582         inclusion.
10583         Include <sys/types.h>, for dev_t.
10584         (ME_DUMMY, ME_REMOTE): Move from here....
10585         * lib/mountlist.c (ME_DUMMY, ME_REMOTE): To here.
10586         (ME_DUMMY): Count "subfs" as a dummy.  Problem reported by
10587         Dmitry V. Levin.
10588         Include mountlist.h first, to test the interface.
10589
10590 2005-01-29  Bruno Haible  <bruno@clisp.org>
10591
10592         * lib/progname.c (program_name): Initialize.
10593         Needed when linking statically on MacOS X.
10594
10595 2005-01-28  Paul Eggert  <eggert@cs.ucla.edu>
10596
10597         Sync from coreutils.
10598         * modules/getloadavg (Files): Remove m4/getloadavg.m4.
10599         (Depends-on): Add c-strtod.
10600         (configure.ac): Replace gl_FUNC_GETLOADAVG with AC_FUNC_GETLOADAVG.
10601
10602 2005-01-28  Paul Eggert  <eggert@cs.ucla.edu>
10603
10604         Sync from coreutils.
10605         * m4/getloadavg.m4, glibc.m4, search-libs.m4: Remove.
10606
10607         Remove files that are specific to coreutils.
10608         * m4/check-decl.m4, jm-macros.m4, lib-check.m4, prereq.m4: Remove.
10609
10610 2005-01-28  Bruno Haible  <bruno@clisp.org>
10611
10612         * modules/javacomp: New file.
10613         * MODULES.html.sh (Java): Add javacomp.
10614
10615 2005-01-28  Bruno Haible  <bruno@clisp.org>
10616
10617         * m4/javacomp.m4: New file, from GNU gettext.
10618
10619 2005-01-28  Bruno Haible  <bruno@clisp.org>
10620
10621         * lib/javacomp.sh.in: New file, from GNU gettext.
10622         * lib/javacomp.h: New file, from GNU gettext.
10623         * lib/javacomp.c: New file, from GNU gettext.
10624
10625 2005-01-26  Simon Josefsson  <jas@extundo.com>
10626
10627         * lib/gai_strerror.c: Use GPL in header.
10628
10629 2005-01-26  Bruno Haible  <bruno@clisp.org>
10630
10631         * modules/javaexec: New file.
10632         * MODULES.html.sh (Java): Add javaexec.
10633
10634 2005-01-26  Bruno Haible  <bruno@clisp.org>
10635
10636         * m4/javaexec.m4: New file, from GNU gettext.
10637
10638 2005-01-26  Bruno Haible  <bruno@clisp.org>
10639
10640         * lib/javaexec.sh.in: New file, from GNU gettext.
10641         * lib/javaexec.h: New file, from GNU gettext.
10642         * lib/javaexec.c: New file, from GNU gettext.
10643
10644 2005-01-24  Sergey Poznyakoff  <gray@Mirddin.farlep.net>
10645
10646         * modules/lchown (Depends-on): Remove lchown.h
10647
10648 2005-01-24  Sergey Poznyakoff  <gray@Mirddin.farlep.net>
10649
10650         * m4/sysexits.m4 (gl_SYSEXITS): Reverted logic. SYSEXITS_H
10651         must be defined if the header file was not found, in order
10652         to provide a replacement. Reported by Todd Vierling <tv@duh.org>
10653
10654 2005-01-24  Sergey Poznyakoff  <gray@Mirddin.farlep.net>
10655
10656         * lib/argp-help.c (hol_entry_help): Avoid using non-constant
10657         initializers for struct pentry_state.
10658         (__argp_error): Check return value of __asprintf
10659         (__argp_failure): Translate error message
10660
10661         * lib/argp-parse.c: Removed braces around the expansion of N_()
10662
10663 2005-01-23  Paul Eggert  <eggert@cs.ucla.edu>
10664
10665         * m4/acl.m4, afs.m4, alloca.m4, argp.m4, assert.m4, atexit.m4,
10666         backupfile.m4, base64.m4, bison.m4, c-bs-a.m4, c-stack.m4,
10667         c-strtod.m4, calloc.m4, canon-host.m4, canonicalize.m4,
10668         clock_time.m4, cloexec.m4, closeout.m4, d-ino.m4, d-type.m4,
10669         dirfd.m4, dirname.m4, dos.m4, dup2.m4, error.m4, euidaccess.m4,
10670         exclude.m4, exitfail.m4, extensions.m4, fcntl-safer.m4,
10671         file-type.m4, fileblocks.m4, filemode.m4, fnmatch.m4, fpending.m4,
10672         free.m4, fstypename.m4, fsusage.m4, ftruncate.m4, getaddrinfo.m4,
10673         getcwd-path-max.m4, getcwd.m4, getdate.m4, getdomainname.m4,
10674         getgroups.m4, gethostname.m4, getline.m4, getndelim2.m4,
10675         getnline.m4, getopt.m4, getpagesize.m4, getpass.m4, getsubopt.m4,
10676         gettime.m4, gettimeofday.m4, getugroups.m4, getusershell.m4,
10677         group-member.m4, hard-locale.m4, hash.m4, host-os.m4, human.m4,
10678         idcache.m4, inttostr.m4, isdir.m4, jm-winsz1.m4, jm-winsz2.m4,
10679         link-follow.m4, long-options.m4, ls-mntd-fs.m4, lstat.m4,
10680         makepath.m4, mathl.m4, md5.m4, memcasecmp.m4, memchr.m4,
10681         memcmp.m4, memcoll.m4, memcpy.m4, memmem.m4, memmove.m4,
10682         memrchr.m4, memset.m4, mkdir-slash.m4, mkstemp.m4, mktime.m4,
10683         modechange.m4, mountlist.m4, nanosleep.m4, obstack.m4,
10684         path-concat.m4, pathmax.m4, perl.m4, physmem.m4, poll.m4,
10685         posixtm.m4, posixver.m4, putenv.m4, quote.m4, quotearg.m4,
10686         readdir.m4, readtokens.m4, readutmp.m4, regex.m4, rename.m4,
10687         restrict.m4, rmdir-errno.m4, rmdir.m4, rpmatch.m4, same.m4,
10688         savedir.m4, settime.m4, sha1.m4, sig2str.m4, snprintf.m4,
10689         sockpfaf.m4, st_dm_mode.m4, st_mtim.m4, stat.m4, stdint.m4,
10690         stdio-safer.m4, strchrnul.m4, strdup.m4, strerror.m4,
10691         strerror_r.m4, strftime.m4, strndup.m4, strnlen.m4, strsep.m4,
10692         strtod.m4, strtoimax.m4, strtok_r.m4, strtol.m4, strtoll.m4,
10693         strtoul.m4, strtoull.m4, strtoumax.m4, strverscmp.m4, sysexits.m4,
10694         time_r.m4, timegm.m4, timespec.m4, tm_gmtoff.m4, tzset.m4,
10695         uint32_t.m4, uintptr_t.m4, unistd-safer.m4, unlink-busy.m4,
10696         unlocked-io.m4, uptime.m4, userspec.m4, utimbuf.m4, utime.m4,
10697         utimecmp.m4, utimens.m4, utimes-null.m4, vsnprintf.m4, xalloc.m4,
10698         xgetcwd.m4, xreadlink.m4, xstrndup.m4, xstrtod.m4, xstrtoimax.m4,
10699         xstrtol.m4, xstrtoumax.m4, yesno.m4:
10700         Use an all-permissive copyright notice, recommended by RMS.
10701
10702 2005-01-21  Paul Eggert  <eggert@cs.ucla.edu>
10703
10704         * modules/chdir-long (Depends-on): Remove mempcpy.
10705
10706 2005-01-21  Jim Meyering  <jim@meyering.net>
10707
10708         * lib/openat.h (AT_SYMLINK_NOFOLLOW): Define to 4096, so it's the
10709         same value as for Solaris 9.
10710
10711         * lib/chdir-long.c (chdir_long): Rewrite to remove limitation on
10712         component length.  This included changing the parameter to be
10713         of type `char *' rather than `char const *'.
10714         * lib/chdir-long.h (chdir_long): Update prototype.
10715
10716         * lib/openat.c (fdopendir, fstatat): New functions.
10717         * lib/openat.h: Include headers required for use of DIR and struct stat.
10718         [AT_SYMLINK_NOFOLLOW]: Define.
10719         (fdopendir, fstatat): Add prototypes.
10720
10721 2005-01-21  Bruno Haible  <bruno@clisp.org>
10722
10723         * modules/classpath: New file.
10724         * MODULES.html.sh (Java): Add classpath.
10725
10726 2005-01-21  Bruno Haible  <bruno@clisp.org>
10727
10728         * lib/classpath.h: New file, from GNU gettext.
10729         * lib/classpath.c: New file, from GNU gettext.
10730
10731 2005-01-20  Simon Josefsson  <jas@extundo.com>
10732
10733         * modules/version-etc-fsf: New file.
10734
10735 2005-01-20  Simon Josefsson  <jas@extundo.com>
10736
10737         * lib/version-etc-fsf.c: New file, with version_etc_copyright.
10738         * lib/version-etc.c: Remove version_etc_copyright.
10739         * lib/version-etc.h (version_etc_copyright): Use [] instead of * in
10740         prototype, suggested by Paul Eggert <eggert@CS.UCLA.EDU>.
10741
10742 2005-01-20  Simon Josefsson  <jas@extundo.com>
10743
10744         * lib/base64.h (isbase64): Add.
10745
10746         * lib/base64.c (isb64): Rename to isbase64, use to_uchar instead of
10747         using a unsigned prototype, don't inline.
10748         (base64_decode): Use it.
10749
10750 2005-01-20  Paul Eggert  <eggert@cs.ucla.edu>
10751
10752         * m4/save-cwd.m4 (gl_SAVE_CWD): Remove check for fcntl; we now assume it.
10753
10754 2005-01-20  Paul Eggert  <eggert@cs.ucla.edu>
10755
10756         * lib/save-cwd.c (save_cwd): Remove code to support the case
10757         where fchdir is missing or flaky.
10758
10759 2005-01-20  Paul Eggert  <eggert@cs.ucla.edu>
10760
10761         * MODULES.html.sh (Command-line arguments): Add version-etc-fsf.
10762
10763 2005-01-19  Paul Eggert  <eggert@cs.ucla.edu>
10764
10765         * modules/mempcpy (Makefile.am): Remove mention of mempcpy.h;
10766         AC_LIBSOURCES now does this.
10767         * MODULES.html.sh (Sizes of integer types <limits.h>): New element,
10768         with new ullong_max module.
10769
10770 2005-01-19  Bruno Haible  <bruno@clisp.org>
10771
10772         * modules/sh-quote: New file.
10773         * MODULES.html.sh (Executing programs): Add sh-quote.
10774
10775 2005-01-19  Bruno Haible  <bruno@clisp.org>
10776
10777         * lib/sh-quote.h: New file, from GNU gettext.
10778         * lib/sh-quote.c: New file, from GNU gettext.
10779
10780 2005-01-18  Paul Eggert  <eggert@cs.ucla.edu>
10781
10782         Merge from coreutils.
10783         * m4/ullong_max.m4: New file.
10784         * m4/jm-macros.m4 (gl_MACROS): Require gl_ULLONG_MAX.
10785         (gl_MACROS): Assume localeconv exists.
10786
10787 2005-01-18  Paul Eggert  <eggert@cs.ucla.edu>
10788
10789         Merge changes from coreutils, as described below in several
10790         changelogs dated today.
10791
10792         * lib/save-cwd.c: Include "save-cwd.h" before other include files.
10793         (O_DIRECTORY): Remove; not needed here, since "." must be
10794         a directory.  All uses removed.
10795         (save_cwd): Use __sgi || __sun, not sun || __sun.  __sun is
10796         universal on Suns, and we also need to test for IRIX.
10797         Revamp code to use 'if' rather than '#if'.
10798         Avoid unnecessary comparison of cwd->desc to 0.
10799
10800         * lib/utimens.c (futimens): Robustify the previous patch, by checking
10801         for known valid error numbers rather than observed invalid ones.
10802
10803 2005-01-18  Paul Eggert  <eggert@cs.ucla.edu>
10804
10805         * modules/ullong_max: New file.
10806
10807         * modules/chdir-long, modules/openat: New files.
10808         * modules/save-cwd (Depends-on): Depend on chdir-long.
10809         (Makefile.am): Remove lib_SOURCES; now handled by AC_LIBSOURCES.
10810
10811 2005-01-18  Jim Meyering  <jim@meyering.net>
10812
10813         Merge from coreutils.
10814         * m4/chdir-long.m4, openat.m4: New files.
10815         * m4/save-cwd.m4 (gl_SAVE_CWD): Add AC_LIBSOURCES for save-cwd.c,
10816         save-cwd.h.  Add AC_LIBOBJ for save-cwd.
10817         * m4/chown.m4 (gl_FUNC_CHOWN): When cross-compiling, assume that chown
10818         is sane and DOES follow symlinks.  Besides, testing 20 different
10819         systems found no broken chown implementations.
10820         Prompted by a change in rsync's copy of this macro.
10821         * m4/jm-macros.m4 (gl_MACROS): Require gl_FUNC_CHDIR_LONG.
10822
10823         * m4/lchown.m4 (gl_FUNC_LCHOWN): Use AC_LIBSOURCES.
10824
10825         * m4/utimes.m4: Work around tests/touch/empty-file failure on a system
10826         (sparc64, Linux-2.4.28, glibc-2.3.3) that didn't honor utimes'
10827         NULL-means-set-to-current-time semantics.
10828         Remove temporary file immediately, rather than waiting
10829         for configure's at-exit trap code to do it.
10830
10831 2005-01-18  Jim Meyering  <jim@meyering.net>
10832
10833         * lib/version-etc.c (version_etc_copyright): Update copyright date.
10834
10835         * lib/utimens.c (futimens): Account for the fact that futimes
10836         can also fail with errno == ENOSYS or errno == ENOENT.
10837         Patch from Dmitry V. Levin.
10838
10839         Change the name of the robust chdir function from chdir to chdir_long.
10840         * lib/save-cwd.c: Include chdir-long.h rather than chdir.h.
10841         (restore_cwd): Use chdir_long, not chdir.
10842         * lib/chdir-long.c: Renamed from chdir.c.
10843         * lib/chdir-long.h: Renamed from chdir.h.
10844         [!defined PATH_MAX]: Define chdir_long to chdir on systems like the
10845         Hurd.
10846
10847 2005-01-18  Bruno Haible  <bruno@clisp.org>
10848
10849         * m4/allocsa.m4, codeset.m4, copy-file.m4, eaccess.m4, eealloc.m4:
10850         * m4/eoverflow.m4, execute.m4, fatal-signal.m4, findprog.m4, glibc21.m4:
10851         * m4/iconv.m4, intmax_t.m4, inttypes_h.m4, lib-ld.m4, lib-link.m4:
10852         * m4/lib-prefix.m4, linebreak.m4, localcharset.m4, longdouble.m4:
10853         * m4/longlong.m4, mbrtowc.m4, mbstate_t.m4, mbswidth.m4, mkdtemp.m4:
10854         * m4/pipe.m4, readlink.m4, safe-read.m4, safe-write.m4, setenv.m4:
10855         * m4/sig_atomic_t.m4, signalblocking.m4, signed.m4, size_max.m4:
10856         * m4/ssize_t.m4, stdbool.m4, stdint_h.m4, stpcpy.m4, stpncpy.m4:
10857         * m4/strcase.m4, strcspn.m4, strpbrk.m4, strstr.m4, ucs4-utf.m4:
10858         * m4/uintmax_t.m4, ulonglong.m4, unicodeio.m4, utf-ucs4.m4, vasnprintf.m4:
10859         * m4/vasprintf.m4, wait-process.m4, wchar_t.m4, wint_t.m4, xsize.m4:
10860         Use an all-permissive copyright notice, recommended by RMS.
10861
10862 2005-01-18  Bob Proulx  <bob@proulx.com>
10863
10864         * lib/obstack.c [DEFAULT_ALIGNMENT]: Use an intermediate type to simplify
10865         offsetof() macro construct to avoid compile failure with native HP-UX
10866         11.0 ANSI C compiler.
10867
10868 2005-01-17  Bruno Haible  <bruno@clisp.org>
10869
10870         * lib/stpncpy.c: Remove HAVE_STPNCPY and gnu_stpncpy renaming, redundant
10871         because stpncpy.m4 takes care of it.
10872
10873 2005-01-17  Bruno Haible  <bruno@clisp.org>
10874
10875         * lib/progreloc.c: Include xalloc.h instead of xmalloc.h.
10876
10877 2005-01-17  Bruno Haible  <bruno@clisp.org>
10878
10879         * lib/progreloc.c (xstrdup): Define as strdup if no xmalloc should be used.
10880
10881 2005-01-17  Bruno Haible  <bruno@clisp.org>
10882
10883         * lib/fwriteerror.h (fwriteerror): Change specification to include fclose.
10884         * lib/fwriteerror.c: Include <stdbool.h>.
10885         (fwriteerror): At the end, close the file stream. Record whether
10886         stdout was already closed.
10887
10888 2005-01-17  Bruno Haible  <bruno@clisp.org>
10889
10890         * lib/execute.c (environ): Declare if needed.
10891         * lib/pipe.c (environ): Likewise.
10892         Reported by Michael Schloh von Bennewitz <michael.schloh@cw.com>.
10893
10894 2005-01-11  Sergey Poznyakoff  <gray@Mirddin.farlep.net>
10895
10896         * modules/argp: Depend on vsnprintf
10897
10898 2005-01-10  Jim Meyering  <jim@meyering.net>
10899
10900         * modules/closeout (Depends-on): Add atexit.
10901
10902 2005-01-06  Bruno Haible  <bruno@clisp.org>
10903
10904         * m4/stpncpy.m4 (gl_FUNC_STPNCPY): Rename stpncpy to gnu_stpncpy here.
10905
10906 2005-01-04  Paul Eggert  <eggert@cs.ucla.edu>
10907
10908         * lib/human.c (SIZE_MAX, UINTMAX_MAX): Move these conditional
10909         definitions to be after all include files, to avoid collisions.
10910         Problem reported by Bob Proulx.
10911
10912 2005-01-04  Jim Meyering  <jim@meyering.net>
10913
10914         Changes imported from coreutils.
10915         * m4/mkstemp.m4 (gl_FUNC_MKSTEMP): Rather than using "conftestXXXXXX"
10916         as the mkstemp template, use a temporary directory and an
10917         8.3-friendly template to avoid trouble on systems like DJGPP.
10918         Reported by Juan M. Guerrero via Stepan Kasal.
10919         * m4/(gl_FUNC_MKSTEMP): Include <unistd.h> for the declaration of close.
10920         Remove the temporary directory right away, rather than waiting
10921         for configure's at-exit trap code to do it.
10922         Suggestion from Stepan Kasal.
10923
10924 2005-01-01  Simon Josefsson  <jas@extundo.com>
10925
10926         * gnulib-tool: Print #include directives when --import'ing.
10927
10928 2004-12-28  Simon Josefsson  <jas@extundo.com>
10929
10930         * tests/test-base64.c: Include required header files.  Remove
10931         unused variables.
10932
10933 2004-12-28  Paul Eggert  <eggert@cs.ucla.edu>
10934
10935         * modules/error (Depends-on): Remove gettext.
10936
10937 2004-12-28  Paul Eggert  <eggert@cs.ucla.edu>
10938
10939         * lib/error.c [!_LIBC && !ENABLE_NLS]: Do not include "gettext.h";
10940         not needed.  This removes a dependency on the gettext module.
10941         [defined _LIBC]: Do not include <libintl.h>; not needed.
10942
10943 2004-12-24  Paul Eggert  <eggert@cs.ucla.edu>
10944
10945         * m4/c-strtod.m4 (gl_C99_STRTOLD): New macro.
10946         (gl_C_STRTOD): Use it instead of AC_CHECK_DECLS_ONCE(strtold).
10947
10948 2004-12-24  Paul Eggert  <eggert@cs.ucla.edu>
10949
10950         * lib/c-strtod.c (STRTOD): Depend on HAVE_C99_STRTOLD, not
10951         HAVE_DECL_STRTOLD.
10952
10953 2004-12-23  Paul Eggert  <eggert@cs.ucla.edu>
10954
10955         * modules/getdate (Depends-on): Remove alloca-opt.
10956
10957 2004-12-23  Paul Eggert  <eggert@cs.ucla.edu>
10958
10959         * m4/getdate.m4 (gl_GETDATE): Remove AC_FUNC_ALLOCA.
10960
10961 2004-12-23  Paul Eggert  <eggert@cs.ucla.edu>
10962
10963         * lib/argp-parse.c: Include <stddef.h>.
10964         (alignof, alignto): New macros.
10965         (parser_init): Don't assume that void * is aligned sufficiently
10966         for struct option.
10967
10968         * lib/getdate.y (YYSTACK_USE_ALLOCA): Define to 0, since there's no
10969         need to extend the stack.
10970         (YYINITDEPTH): New macro, so that the initial stack isn't overly
10971         large.
10972
10973 2004-12-22  Sergey Poznyakoff  <gray@Mirddin.farlep.net>
10974
10975         * lib/argp-parse.c (parser_init): Avoid arithmetics on void pointers.
10976
10977 2004-12-19  Paul Eggert  <eggert@cs.ucla.edu>
10978
10979         * modules/regex (lib_SOURCES): Remove regex.c, undoing previous
10980         (2004-10-24) change.  Apparently this was a false alarm.
10981
10982         * modules/getdate: Depend on alloca-opt, not alloca.
10983
10984 2004-12-19  Paul Eggert  <eggert@cs.ucla.edu>
10985
10986         * lib/alloca_.h: Conditionalize on _GNULIB_ALLOCA_H, not _ALLOCA_H.
10987         Remove now-obsolete comment about AIX.
10988         * lib/getdate.y: Include <alloca.h> only if HAVE_ALLOCA.
10989         (YYSTACK_USE_ALLOCA): Define to 0 if !HAVE_ALLOCA.
10990         (YYMAXDEPTH): New macro.
10991
10992 2004-12-18  Simon Josefsson  <jas@extundo.com>
10993
10994         * modules/alloca: Depend on alloca-opt, instead of duplicating it.
10995
10996 2004-12-18  Bruno Haible  <bruno@clisp.org>
10997
10998         * m4/fatal-signal.m4 (gl_FATAL_SIGNAL): Also test for sigaction.
10999
11000 2004-12-18  Bruno Haible  <bruno@clisp.org>
11001
11002         * lib/fatal-signal.c (fatal_signals): Make non-const.
11003         (init_fatal_signals): New function.
11004         (uninstall_handlers, install_handlers): Ignore signals that were set to
11005         SIG_IGN.
11006         (at_fatal_signal): Call init_fatal_signals.
11007         (init_fatal_signal_set): Likewise. Ignore signals that were set to
11008         SIG_IGN.
11009         Reported by Paul Eggert.
11010
11011 2004-12-18  Bruno Haible  <bruno@clisp.org>
11012
11013         * doc/alloca.texi: New file.
11014         * doc/alloca-opt.texi: New file.
11015
11016 2004-12-17  Jim Meyering  <jim@meyering.net>
11017
11018         * config/install-sh: Use `(exit N); exit N', not `(exit N); exit'.
11019         Otherwise, install-sh could exit with improper exit status when
11020         exiting via a trapped interrupt.  Thanks to a report from Bob Proulx.
11021
11022 2004-12-16  Simon Josefsson  <jas@extundo.com>
11023
11024         * tests/test-base64.c: Add license.
11025
11026 2004-12-15  Stepan Kasal  <address@hidden>
11027
11028         * gnulib-tool (func_emit_lib_Makefile_am): Shorten a long sed command.
11029
11030 2004-12-12  Paul Eggert  <eggert@cs.ucla.edu>
11031
11032         * modules/getcwd (Files): Add m4/d-ino.m4.
11033         Suggested by Mark D. Baushke.
11034
11035 2004-12-08  Paul Eggert  <eggert@cs.ucla.edu>
11036
11037         * lib/getdate.y (textint): New member "negative".
11038         (time_zone_hhmm): New function.
11039         Expect 14 shift-reduce conflicts, not 13.
11040         (o_colon_minutes): New rule.
11041         (time, zone): Use it to add support for +HH:MM, UTC+HH:MM.
11042         (yylex): Set the "negative" member of signed numbers.
11043
11044 2004-12-08  Paul Eggert  <eggert@cs.ucla.edu>
11045
11046         * doc/getdate.texi (Time of day items, Time zone items):
11047         Describe new formats +00:00, UTC+00:00.
11048
11049 2004-12-07  Paul Eggert  <eggert@cs.ucla.edu>
11050
11051         * m4/ls-mntd-fs.m4 (AC_FUNC_GETMNTENT): Fix typo in previous change:
11052         spurious "-l"s.  Problem reported by Stepan Kasal.
11053
11054 2004-12-06  Paul Eggert  <eggert@cs.ucla.edu>
11055
11056         * m4/ls-mntd-fs.m4 (AC_FUNC_GETMNTENT): New macro, to work around bug
11057         in Autoconf 2.59.  Problem reported by Mark D. Baushke.
11058
11059 2004-12-04  Simon Josefsson  <jas@extundo.com>
11060
11061         * modules/getaddrinfo (License): Add LGPL, reported by Yoann
11062         Vandoorselaere <yoann@prelude-ids.org>.
11063
11064 2004-12-04  Paul Eggert  <eggert@cs.ucla.edu>
11065
11066         Changes imported from coreutils.
11067         * m4/hard-locale.m4 (gl_HARD_LOCALE): Assume locale.h and setlocale
11068         exist.
11069         * m4/human.m4 (gl_HUMAN): Assume locale.h and localeconv exist.
11070
11071 2004-12-04  Paul Eggert  <eggert@cs.ucla.edu>
11072
11073         Changes imported from coreutils.
11074         * lib/hard-locale.c: Assume <locale.h> exists.
11075         Include "strdup.h".
11076         (GLIBC_VERSION): New macro.
11077         (hard_locale): Assume setlocale exists.
11078         Rewrite to avoid #ifdef.
11079         Use strdup rather than malloc + strcpy.
11080         * lib/human.c: Assume <locale.h> exists.
11081         (human_readable): Assume localeconv exists.
11082
11083 2004-12-04  Paul Eggert  <eggert@cs.ucla.edu>
11084
11085         * modules/hard-locale (Depends-on): Add strdup.
11086
11087 2004-12-01  Jakub Jelinek  <jakub@redhat.com>
11088
11089         * lib/mktime.c (__mktime_internal): If SEC_REQUESTED != SEC,
11090         convert T2, not T.  (Imported from libc.)
11091
11092 2004-11-30  Simon Josefsson  <jas@extundo.com>
11093
11094         * modules/restrict (License): Change to LGPL.
11095
11096 2004-11-30  Simon Josefsson  <jas@extundo.com>
11097
11098         * m4/restrict.m4: Add copyright and copying conditions.
11099
11100 2004-11-30  Simon Josefsson  <jas@extundo.com>
11101
11102         * m4/base64.m4: New file.
11103
11104 2004-11-30  Simon Josefsson  <jas@extundo.com>
11105
11106         * MODULES.html.sh (Extra functions based on ANSI C 89): Add
11107         base64.
11108
11109         * tests/test-base64.c: New file.
11110
11111         * modules/base64: New file.
11112
11113 2004-11-30  Paul Eggert  <eggert@cs.ucla.edu>
11114
11115         * m4/getcwd-path-max.m4 (gl_FUNC_GETCWD_PATH_MAX):
11116         Define HAVE_PARTLY_WORKING_GETCWD if getcwd is partly working.
11117
11118         * m4/readutmp.m4 (gl_READUTMP): Don't check for sys/param.h.
11119
11120 2004-11-30  Paul Eggert  <eggert@cs.ucla.edu>
11121
11122         * lib/getcwd.c (is_ENAMETOOLONG): New macro.
11123         (__getcwd.c): Don't restore errno; glibc doesn't.
11124         [HAVE_PARTLY_WORKING_GETCWD && !defined AT_FDCWD]: Try system getcwd
11125         first, falling back to our code only if its results look suspicious.
11126         Ensure that the resulting buffer is only as large as necessary.
11127
11128         * lib/readutmp.c: Include readutmp.h first.
11129         Include <errno.h>, since readutmp.h no longer does that.
11130         * lib/readutmp.h: Don't include <errno.h>,
11131         <sys/param.h>, <time.h>; not needed to establish interface.
11132         (errno): Remove decl.
11133         (HAVE_STRUCT_XTMP_UT_TYPE): Remove; no longer needed.
11134         (UT_TYPE_EQ, UT_TYPE_NOT_DEFINED, UT_TYPE_BOOT_TIME,
11135         UT_TYPE_USER_PROCESS, IS_USER_PROCESS): New macros.
11136
11137 2004-11-28  Simon Josefsson  <jas@extundo.com>
11138
11139         * lib/base64.h, base64.c: New file.
11140
11141 2004-11-27  Paul Eggert  <eggert@cs.ucla.edu>
11142
11143         * lib/getcwd.h: New file, which I forgot to check in on 2004-11-25.
11144
11145 2004-11-26  Paul Eggert  <eggert@cs.ucla.edu>
11146
11147         * modules/getcwd (Files): Add lib/getcwd.h, m4/getcwd.m4.
11148         (Depends-on): Remove pathmax, same.  Add mempcpy.
11149         (configure.ac): GL_FUNC_GETCWD_PATH_MAX -> gl_FUNC_GETCWD.
11150         (Makefile.am): Append getcwd.h to lib_SOURCES.
11151         (Include): Add getcwd.h.
11152         (Maintainer): Change from Jim Meyering to "all, glibc",
11153         since getdate now uses intended-for-glibc code.
11154         * modules/xgetcwd (Files): Remove m4/getcwd.m4.
11155         (Depends-on): Depend on getcwd.  Do not depend on pathmax.
11156
11157 2004-11-25  Paul Eggert  <eggert@cs.ucla.edu>
11158
11159         Fix problems reported by Scott S. Tinsley for HP-UX 11.11 using
11160         HP's ANSI C compiler.
11161         * lib/fsusage.c (statvfs) [HAVE_SYS_STATVFS_H]: Remove decl.
11162         Declaring int functions causes warnings on some modern systems and
11163         shouldn't be needed to compile on ancient ones.
11164         * lib/same.c (MIN) [defined MIN]: Don't define, since it's already
11165         defined.
11166
11167         * lib/getcwd.c: Replace by a copy of glibc/sysdeps/posix/getcwd.c, but
11168         with the following changes.
11169         (__set_errno): Parenthesize properly.
11170         Include <stdbool.h>.
11171         (MIN, MAX, MATCHING_INO): New macros.
11172         (__getcwd): Define with prototype, not K&R form.
11173         Use heuristics to allocate default buffer on stack if possible.
11174         If AT_FDCWD is defined, use openat and fstatat to avoid O(N**2)
11175         behavior, and to avoid the PATH_MAX limit when computing
11176         ../../../../...
11177         Use MATCHING_INO to compare inode number to file.
11178         Check for arithmetic overflow in size calculations.
11179         Fix bug in reallocation of dot array that caused getcwd to fail
11180         on directories nested deeper than 75.
11181         Be more careful about saving errno on error.
11182         Do not use realloc; use only free+malloc, as this is a bit
11183         more flexible and avoids a needless copy operation.
11184         Do not inspect st_dev and st_ino for symbolic links; POSIX
11185         doesn't specify the latter.
11186         Check for closedir errors.
11187         Avoid needless casts.
11188         Use "#ifdef weak_alias" around weak_alias, to be like other
11189         glibc code.
11190         The following changes to getcwd.c have effect only when used in
11191         gnulib; they have no effect inside glibc proper.
11192         (#pragma alloca) [defined _AIX && !defined __GNUC__]: Remove,
11193         as alloca isn't used.
11194         (alloca, __alloca): Likewise.
11195         [!_LIBC]: Include "getcwd.h", "mempcpy.h".
11196         Include <stddef.h>, <stdlib.h>, <string.h>, <limits.h>
11197         unconditionally, as gnulib assumes C89 or better.
11198         Do not include <sys/param.h>.
11199         (errno) [!defined __GNU_LIBRARY__ && !defined STDC_HEADERS]: Remove
11200         no-longer-necessary 'extern int errno' decl; gnulib assumes C89 or
11201         better.
11202         (NULL) [!defined NULL]: Remove; we assume C89 or better.
11203         Include <dirent.h> in a way that is compatible with modern Autoconf.
11204         (_D_ALLOC_NAMELEN, _D_EXACT_NAMLEN):
11205         New macros, if not already defined.
11206         Include <unistd.h> if _LIBC, not if __GNU_LIBRARY__.
11207         Use "_LIBC", not "defined _LIBC", for consistency.
11208         (HAVE_MEMPCPY): Remove; no longer needed now that gnulib has
11209         a mempcpy module.
11210         (__lstat, __closedir, __opendir, __readdir) [!_LIBC]: New macros.
11211         (GETCWD_RETURN_TYPE): Remove.  All uses replaced by char *.
11212         * lib/xgetcwd.c: David MacKenzie's old code was removed, so give
11213         credit only to Jim Meyering and adjust the copyright dates.
11214         Do not include <limits.h>, <stdio.h>, <sys/types.h>,
11215         <stdlib.h>, <unistd.h>, "pathmax.h".
11216         Instead, include "xgetcwd.h" (first) and "getcwd.h".
11217         (INITIAL_BUFFER_SIZE): Remove.
11218         (xgetcwd): Rely on getcwd, since we now depend on a reliable one.
11219
11220 2004-11-25  Paul Eggert  <eggert@cs.ucla.edu>
11221
11222         * m4/getcwd-path-max.m4 (gl_FUNC_GETCWD_PATH_MAX): Renamed from
11223         GL_FUNC_GETCWD_PATH_MAX for consistency.  All uses changed.
11224         Use the _ONCE methods, for efficiency.
11225         Check for fcntl.h.  In test program, include <errno.h>
11226         and <fcntl.h> if available.  Remove old K&R cruft from
11227         test program.  Check for common errors in GNU/Linux,
11228         OpenBSD, and Solaris.  Just set gl_cv_func_getcwd_path_max;
11229         don't do AC_LIBOBJ, as that's getcwd.m4's job.
11230         * m4/getcwd.m4 (gl_FUNC_GETCWD_NULL): Renamed from
11231         AC_FUNC_GETCWD_NULL.  All used changed.  Change cache variable
11232         name accordingly.
11233         (gl_FUNC_GETCWD, gl_PREREQ_GETCWD): New macros.  Revamp to
11234         accommodate new getcwd.c.
11235         * m4/jm-macros.m4 (gl_MACROS): Don't require GL_FUNC_GETCWD_PATH_MAX.
11236         * m4/prereq.m4 (gl_PREREQ): Add gl_FUNC_MEMPCPY.
11237         * m4/xgetcwd.m4 (gl_XGETCWD): Replace with gl_FUNC_GETCWD, since
11238         that's all we need now.
11239
11240 2004-11-23  Sergey Poznyakoff  <gray@Mirddin.farlep.net>
11241
11242         * m4/argp.m4 (gl_ARGP): Require gl_GETOPT_SUBSTITUTE unconditionally:
11243         argp-parse.c depends on getopt internals, that means we should
11244         always use our getopt, to be on the safe side.
11245         * m4/getopt.m4 (gl_GETOPT): Check if GETOPT_H is already set, in
11246         order not to spoil the result of an eventual previous invocation
11247         of gl_GETOPT_SUBSTITUTE.
11248
11249 2004-11-23  Sergey Poznyakoff  <gray@Mirddin.farlep.net>
11250
11251         * lib/getopt_.h: Re-addition of __getopt_argv_const caused
11252         redefinition warnings. To avoid them, include the defines
11253         in `#if !defined __need_getopt ... #endif'. The only place
11254         where __getopt_argv_const is used is in definitions
11255         of getopt_long and getopt_long_only below, which are as well
11256         protected by `#ifndef __need_getopt'.
11257         [defined __GETOPT_PREFIX && !defined __need_getopt]: Undef
11258         __need_getopt after including <stdio.h> and <unistd.h> These
11259         headers might have defined it.
11260
11261 2004-11-23  Paul Eggert  <eggert@cs.ucla.edu>
11262
11263         * m4/utimens.m4 (gl_UTIMENS): Check for futimes function.
11264
11265 2004-11-23  Paul Eggert  <eggert@cs.ucla.edu>
11266
11267         * lib/utimens.c (__attribute__, ATTRIBUTE_UNUSED): New macros.
11268         (futimens): New function, which uses futimes if available.
11269         (futimens, utimens): Support timespec==NULL, with same semantics
11270         as utime and utimens.
11271         * lib/utimens.h (futimens): New decl.
11272
11273 2004-11-23  Jim Meyering  <jim@meyering.net>
11274
11275         * lib/getopt_.h: Remove trailing blanks.
11276
11277 2004-11-23  Jim Meyering  <jim@meyering.net>
11278
11279         * lib/__fpending.c: Add comment.
11280
11281 2004-11-22  Paul Eggert  <eggert@cs.ucla.edu>
11282
11283         * modules/canonicalize (Depends-on): Add xreadlink.
11284         Problem reported by James Youngman.
11285
11286 2004-11-20  Paul Eggert  <eggert@cs.ucla.edu>
11287
11288         * lib/getopt_.h (__GETOPT_CONCAT, __GETOPT_XCONCAT, __GETOPT_ID):
11289         New macros.
11290         (getopt, getopt_long, getopt_long_only, optarg, opterr, optind,
11291         optopt): Use them instead of invoking ## directly; otherwise, the
11292         symbols will be __GETOPT_PREFIXgetopt rather than rpl_getopt.
11293
11294 2004-11-19  Bruno Haible  <bruno@clisp.org>
11295
11296         * lib/strtok_r.c: Move comments from here...
11297         * lib/strtok_r.h: ... to here.
11298
11299 2004-11-17  Paul Eggert  <eggert@cs.ucla.edu>
11300
11301         * m4/calloc.m4 (_AC_FUNC_CALLOC_IF): Check for buggy calloc implementations
11302         that mishandle size_t overflow.
11303
11304 2004-11-17  Paul Eggert  <eggert@cs.ucla.edu>
11305
11306         * lib/realloc.c (rpl_realloc): Call 'free' if n==0, since realloc
11307         might fail.  Problem reported by Yoann Vandoorselaere.
11308         * lib/calloc.c (rpl_calloc): Defend against buggy calloc implementations
11309         that mishandle size_t overflow.
11310
11311 2004-11-16  Paul Eggert  <eggert@cs.ucla.edu>
11312
11313         * modules/canon-host (Depends-on): Add strdup.
11314
11315 2004-11-16  Paul Eggert  <eggert@cs.ucla.edu>
11316
11317         * m4/canon-host.m4 (gl_CANON_HOST): Check for getaddrinfo.
11318
11319 2004-11-16  Paul Eggert  <eggert@cs.ucla.edu>
11320
11321         * lib/canon-host.c: Include "strdup.h".
11322         (canon_host): Use getaddrinfo if available, so that IPv6 works.
11323         Use strdup instead of malloc/strcpy to duplicate strings.
11324
11325         * lib/human.h (LONGEST_HUMAN_READABLE): Add 1 for space before unit.
11326         (human_space_before_unit): New constant.
11327         * lib/human.c (human_readable): Support it.
11328
11329         * lib/xgetcwd.c: Include <limits.h>, for PATH_MAX.
11330         (xgetcwd): Set errno correctly when failing.
11331         Work around Solaris 9 bug: getcwd sets errno==ERANGE even though
11332         the failure is actually due to a PATH_MAX problem.
11333
11334         Further getopt changes to make it more likely that glibc will
11335         buy the changes back.
11336         * lib/getopt.c (POSIXLY_CORRECT): New constant.
11337         (getopt): Use it, so to preserve glibc semantic
11338         * lib/getopt1.c (getopt_long, getopt_long_only): Arg is char * const *
11339         when compiling for libc.
11340         * lib/getopt_.h (__getopt_argv_const): Bring it back.
11341         (getopt_long, getopt_long_only): Use it.
11342
11343         * lib/getopt.c (_getopt_initialize, _getopt_internal_r, _getopt_internal):
11344         New arg POSIXLY_CORRECT.  All callers changed.
11345         (getopt): Argv is now char * const *, as per standard.
11346         (_getopt_internal_r, _getopt_internal): Argv is now char **,
11347         not char *__getopt_argv_const *.
11348         * lib/getopt1.c (getopt_long, _getopt_long_r, getopt_long_only,
11349         _getopt_long_only_r): Likewise.
11350         * lib/getopt_.h (getopt, getopt_long, geopt_long_only): Likewise.
11351         * lib/getopt_int.h (_getopt_internal, _getopt_internal_r,
11352         _getopt_long_r, _getopt_long_only_r): Likewise.
11353         * lib/getopt_.h (__getopt_argv_const): Remove.
11354         (getopt): Argv is now char * const *, as per standard.
11355
11356         * lib/getdate.y (tORDINAL): New token.
11357         (day, relunit): Allow it for relative times.
11358         (relative_time_table): Use tORDINAL for ordinals.
11359
11360 2004-11-16  Paul Eggert  <eggert@cs.ucla.edu>
11361
11362         * doc/getdate.texi (General date syntax): "next" is 1, not 2.
11363         Document that "second" isn't allowed as an ordinal number.
11364
11365 2004-11-16  Jim Meyering  <jim@meyering.net>
11366
11367         * modules/closeout (Depends-on): Add fpending.
11368
11369 2004-11-15  Jim Meyering  <jim@meyering.net>
11370
11371         * lib/closeout.c: Include "__fpending.h" once again.
11372         Include <stdbool.h>.
11373         (close_stdout): Don't fail just because stdout was closed initially,
11374         since some programs don't write to stdout in the normal course of
11375         operation (other than --version and --help), and we don't want this
11376         function to make e.g. `touch file >&-' fail.
11377         But do fail if it was closed and someone has tried to write to it.
11378         E.g., `printf foo >&-' must fail.
11379
11380 2004-11-13  Jim Meyering  <jim@meyering.net>
11381
11382         * m4/jm-macros.m4: Do require gl_FUNC_FPENDING.
11383
11384 2004-11-12  Simon Josefsson  <jas@extundo.com>
11385
11386         * config/srclist.txt: Add strtok_r.c, glibc bought our changes, but a
11387         small doc fix is still pending.
11388
11389 2004-11-11  Simon Josefsson  <jas@extundo.com>
11390
11391         * modules/strtok_r: New file.
11392
11393         * MODULES.html.sh (Support for systems lacking POSIX:2001): Add
11394         strtok_r.
11395
11396 2004-11-11  Simon Josefsson  <jas@extundo.com>
11397
11398         * m4/strtok_r.m4: New file.
11399
11400         * m4/getopt.m4: Replace opterr.
11401
11402 2004-11-11  Simon Josefsson  <jas@extundo.com>
11403
11404         * lib/strtok_r.h, strtok_r.c: New file.
11405
11406 2004-11-11  Paul Eggert  <eggert@cs.ucla.edu>
11407
11408         * m4/getopt.m4 (gl_GETOPT_SUBSTITUTE): Define __GETOPT_PREFIX instead
11409         of replacing opterr, getopt, etc.  This should handle the
11410         powerpc-apple-darwin5.5 problem recently noted by Simon Josefsson.
11411
11412 2004-11-11  Paul Eggert  <eggert@cs.ucla.edu>
11413
11414         * lib/getopt_.h (__getopt_argv_const): New macro, to be used so that
11415         we can stop lying to compilers about the constness of argv when we
11416         are compiled outside glibc.
11417         (getopt, getopt_long, getopt_long_only): Use it.
11418         * lib/getopt.c (_getopt_initialize, _getopt_internal_r, _getopt_internal,
11419         getopt): Likewise.
11420         * lib/getopt1.c (getopt_long, _getopt_long_r, getopt_long_only,
11421         _getopt_long_only_r): Likewise.
11422         * lib/getopt_int.h (_getopt_internal, _getopt_internal_r, _getopt_long_r,
11423         _getopt_long_only_r): Likewise.
11424
11425         * lib/getopt_.h [defined __GETOPT_PREFIX && !defined __need_getopt]:
11426         Include <stdlib.h> and <stdio.h>, and <unistd.h> if available.
11427         Then rename getopt to __GETOPT_PREFIX##getopt, and so forth for
11428         the other external symbols.
11429         (getopt) [!defined __GNU_LIBRARY]: Use prototype, not old-style
11430         declaration, since the above renaming now works around collisions.
11431
11432 2004-11-11  Jim Meyering  <jim@meyering.net>
11433
11434         * lib/linebreak.c: Remove trailing blanks.
11435         * lib/alloca_.h: Likewise.
11436         * lib/acosl.c: Likewise.
11437         * lib/euidaccess.c: Likewise.
11438         * lib/allocsa.h: Likewise.
11439
11440 2004-11-10  Simon Josefsson  <jas@extundo.com>
11441
11442         * m4/getaddrinfo.m4: New file.
11443
11444 2004-11-10  Simon Josefsson  <jas@extundo.com>
11445
11446         * lib/getaddrinfo.h, getaddrinfo.c: New files.
11447
11448 2004-11-10  Simon Josefsson  <jas@extundo.com>
11449
11450         * MODULES.html.sh (Support for systems lacking POSIX:2001): Add
11451         getaddrinfo.
11452
11453         * modules/getaddrinfo: New file.
11454
11455 2004-11-10  Paul Eggert  <eggert@cs.ucla.edu>
11456
11457         * m4/prereq.m4 (gl_PREREQ): Require gt_FUNC_SETENV.
11458
11459 2004-11-10  Paul Eggert  <eggert@cs.ucla.edu>
11460
11461         * lib/mktime.c (SHR): New macro, which is a portable
11462         substitute for >> that should work even on Crays.
11463         (TIME_T_MIDPOINT, ydhms_diff, __mktime_internal): Use it.
11464         Problem reported by Mark D. Baushke in
11465         <http://lists.gnu.org/archive/html/bug-gnulib/2004-11/msg00071.html>.
11466         * lib/getdate.y (SHR): Likewise.
11467         (tm_diff): Use it.
11468         * lib/strftime.c (SHR): Likewise.
11469         (tm_diff): Use it.
11470         * lib/quotearg.c (struct quoting_options): Use unsigned int for
11471         quote_these_too, so that right shifts are well defined.  All uses
11472         changed.
11473
11474 2004-11-10  Jim Meyering  <jim@meyering.net>
11475
11476         Ensure that no close failure goes unreported.
11477         * lib/closeout.c (close_stdout): Always close stdout.  I.e., don't
11478         return early when it seems there's nothing to flush.
11479         Don't include __fpending.h.
11480
11481 2004-11-10  Jim Meyering  <jim@meyering.net>
11482
11483         * modules/closeout (Depends-on): Remove fpending.
11484
11485 2004-11-10  Jim Meyering  <jim@meyering.net>
11486
11487         * m4/jm-macros.m4 (gl_MACROS): Don't require gl_FUNC_FPENDING.
11488
11489 2004-11-09  Paul Eggert  <eggert@cs.ucla.edu>
11490
11491         * m4/strftime.m4 (_gl_STRFTIME_PREREQS): Remove.  Move its body to
11492         gl_FUNC_STRFTIME.
11493         (gl_FUNC_STRFTIME): Use AC_CHECK_FUNCS_ONCE and AC_CHECK_HEADERS_ONCE
11494         and AC_REQUIRE when possible, to avoid duplicate checks.
11495         Check for <wchar.h>.
11496
11497 2004-11-09  Paul Eggert  <eggert@cs.ucla.edu>
11498
11499         * lib/strftime.c (DO_MULTIBYTE): Check for wchar.h, too.
11500
11501 2004-11-09  Bruno Haible  <bruno@clisp.org>
11502
11503         * m4/sockpfaf.m4: New file.
11504
11505 2004-11-05  Bruno Haible  <bruno@clisp.org>
11506
11507         * lib/readlink.c: Include stddef.h, needed for size_t on Woe32.
11508         Reported by Mark D. Baushke <mdb@cvshome.org>.
11509
11510 2004-11-04  Bruno Haible  <bruno@clisp.org>
11511
11512         2004-09-11  Bruno Haible  <bruno@clisp.org>
11513                 * allocsa.valgrind: New file.
11514         2004-02-06  Bruno Haible  <bruno@clisp.org>
11515                 * allocsa.h (sa_alignof): Define differently with HP-UX cc, to
11516                 avoid a bug of this cc on HP-UX 10.20 dealing with enums.
11517                 Reported by Christopher Seip <chris.seip@hp.com>.
11518
11519 2004-11-04  Bruno Haible  <bruno@clisp.org>
11520
11521         * modules/allocsa (Files): Add lib/allocsa.valgrind.
11522         (Makefile.am): Distribute it.
11523
11524 2004-11-03  Paul Eggert  <eggert@cs.ucla.edu>
11525
11526         * lib/xreadlink.c (xreadlink): AIX and HP-UX readlink return -1
11527         with errno == ERANGE if the buffer is too small.
11528         Problem reported by Mark D. Baushke.
11529
11530 2004-11-03  Albert Chin <china@thewrittenword.com>
11531             Paul Eggert  <eggert@cs.ucla.edu>
11532
11533         * m4/uint32_t.m4 (gl_AC_TYPE_UINT32_T): When determining uint32_t
11534         equivalent, substitute $ac_type for equivalent type rather than
11535         blindly using uint32_t *always* which won't work if uint32_t is not
11536         available.  Define _UINT32_T to work around typedef of uint32_t if
11537         <sys/sched.h>, <pthread.h>, or <semaphore.h> used on Solaris
11538         2.5.1.
11539
11540 2004-11-02  Paul Eggert  <eggert@cs.ucla.edu>
11541
11542         * m4/jm-macros.m4: Sync from coreutils.
11543         (gl_MACROS): Check for mbrlen, for pathchk.
11544         (gl_CHECK_ALL_TYPES): Require AC_TYPE_MBSTATE_T, for pathchk.
11545
11546 2004-11-02  Paul Eggert  <eggert@cs.ucla.edu>
11547
11548         * lib/xreadlink.c (MAXSIZE): New macro.
11549         (xreadlink): Use it instead of SSIZE_MAX.  Ensure initial buffer
11550         size does not exceed MAXSIZE.  Avoid cast.
11551         As suggested by Mark D. Baushke in
11552         <http://lists.gnu.org/archive/html/bug-gnulib/2004-11/msg00009.html>,
11553         if readlink fails with buffer size just under MAXSIZE, try again
11554         with MAXSIZE.
11555
11556 2004-11-02  Paul Eggert  <eggert@cs.ucla.edu>
11557
11558         * config/srclist.txt: Add mktime.c; glibc bought all our changes.
11559
11560 2004-11-02  Derek R. Price  <derek@ximbiot.com>
11561         and  Paul Eggert  <eggert@cs.ucla.edu>
11562
11563         * lib/getdate.y [!TEST]: Include <stdio.h>, since we use sprintf now.
11564         (get_date): Overparenthesize to avoid GCC warning.
11565
11566 2004-11-02  Bruno Haible  <bruno@clisp.org>
11567
11568         * m4/setenv.m4 (gt_FUNC_SETENV): Define VOID_UNSETENV if unsetenv()
11569         returns void.
11570
11571 2004-11-02  Bruno Haible  <bruno@clisp.org>
11572
11573         * lib/setenv.h (unsetenv): Define as a macro if the system's unsetenv()
11574         function returns void.
11575
11576 2004-11-01  Paul Eggert  <eggert@cs.ucla.edu>
11577
11578         * m4/getpass.m4 (gl_PREREQ_GETPASS): Check for declarations of
11579         fflush_unlocked, flockfile, funlockfile, funlockfile,
11580         fputs_unlocked, putc_unlocked.
11581
11582 2004-11-01  Paul Eggert  <eggert@cs.ucla.edu>
11583
11584         * lib/getpass.c (fflush_unlocked, flockfile, funlockfile)
11585         (funlockfile, fputs_unlocked, putc_unlocked): Don't define if
11586         already declared.
11587
11588 2004-10-29  Paul Eggert  <eggert@cs.ucla.edu>
11589
11590         * modules/getdate (Files): Add doc/getdate.texi.
11591         (Depends-on): Add setenv, xalloc.
11592
11593 2004-10-29  Paul Eggert  <eggert@cs.ucla.edu>
11594
11595         * lib/getdate.y: Add support for TZ="foo" within a date string.
11596         Fix some bugs near time_t boundaries.  Reject dates with
11597         out-of-range components, e.g., "Sept 31".
11598         Include <stdlib.h>, "setenv.h", "xalloc.h".
11599         (ISDIGIT_LOCALE): Remove; unused.
11600         Note that the TZ and time functions used here are not reentrant.
11601         (mktime_ok, get_tz): New functions.
11602         (TZBUFSIZE): New constant.
11603         (get_date): Parse leading TZ="foo".  Reject out-of-range components;.
11604         This requires that we sometimes generate our own TZ="XXX..." setting.
11605
11606 2004-10-29  Paul Eggert  <eggert@cs.ucla.edu>
11607
11608         * doc/getdate.texi: New file, from coreutils with modifications for
11609         the new TZ parsing.
11610
11611 2004-10-27  Derek R. Price  <derek@ximbiot.com>
11612
11613         * lib/mktime.c (not_equal_tm): Remove redundant check.
11614
11615 2004-10-24  Paul Eggert  <eggert@cs.ucla.edu>
11616
11617         * modules/regex (lib_SOURCES): Add regex.c.
11618         Reported by James Youngman in
11619         <http://lists.gnu.org/archive/html/bug-gnulib/2004-10/msg00199.html>.
11620
11621 2004-10-24  Paul Eggert  <eggert@cs.ucla.edu>
11622
11623         * lib/getdate.y: Use Bison 1.875 features, and some minor
11624         code cleanups.  This change does not affect semantics.
11625         Don't include <stdlib.h>; no longer needed.
11626         Don't include unlocked-io.h; only the "#if TEST" code uses
11627         stdio, and performance isn't crucial there.
11628         (PC, YYLEX_PARAM, YYPARSE_PARAM): Remove; replaced by
11629         Bison 1.875 features as described below.
11630         All uses of "PC." replaced by "pc->".
11631         (YYSTYPE): Add a forward declaration.
11632         (yylex, yyerror): Use full prototypes in forward decls.
11633         Use "%pure-parser" rather than obsolescent "%pure_parser".
11634         Use %parse-param and %lex-param instead of obsolescent
11635         YYPARSE_PARAM and YYLEX_PARAM.
11636         (meridian_table, month_and_day_table, time_units_table,
11637         relative_time_table, time_zone_table, military_table,
11638         lookup_zone, lookup_word, get_date):
11639         Use NULL instead of 0 where appropriate.
11640         (to_hour): Avoid abort (), to avoid a dependency on
11641         stdlib.h.
11642         (yyerror, yylex): Now accepts parser_control * arg.
11643         (main) [TEST]: Use '\0' rather than 0 for char.
11644
11645 2004-10-22  Paul Eggert  <eggert@cs.ucla.edu>
11646
11647         * m4/getpagesize.m4 (gl_GETPAGESIZE): Check for <sys/param.h>.
11648
11649 2004-10-22  Paul Eggert  <eggert@cs.ucla.edu>
11650
11651         * lib/getpagesize.c (getpagesize): Don't assume <sys/param.h> exists.
11652         It's now the caller's responsibility to handle the case where
11653         !HAVE_GETPAGESIZE && !defined getpagesize.
11654
11655         * lib/mktime.c (leapyear): Arg is long int, not int.
11656
11657 2004-10-18  Paul Eggert  <eggert@cs.ucla.edu>
11658
11659         * lib/argp-fs-xinl.c, argp-xinl.c: Update from glibc.
11660
11661 2004-10-17  Paul Eggert  <eggert@cs.ucla.edu>
11662
11663         * gnulib-tool (func_emit_lib_Makefile_am): Fix typo: a $ was
11664         missing.  Problem reported by James Youngman.
11665
11666 2004-10-16  Simon Josefsson  <jas@extundo.com>
11667
11668         * gnulib-tool: Fix comments.  Fix parse problem.
11669         (func_emit_lib_Makefile_am): Don't hard code a in libgl_a_SOURCES.
11670
11671 2004-10-15  Paul Eggert  <eggert@cs.ucla.edu>
11672
11673         * m4/getopt.m4 (gl_GETOPT): Detect and reject the incompatible BSD
11674         implementation of getopt_long.  Problem reported by Alexander Taler in:
11675         http://lists.gnu.org/archive/html/bug-gnulib/2004-10/msg00103.html
11676
11677 2004-10-15  Bruno Haible  <bruno@clisp.org>
11678
11679         * gnulib-tool: Untabify. Initialize supplied_libname.
11680         (func_usage): More homogenous output.
11681         (func_modules_transitive_closure, func_modules_to_filelist,
11682         func_emit_lib_Makefile_am): New functions.
11683         (func_import): New function, extracted from big case statement. Use
11684         func_get_license, func_modules_transitive_closure,
11685         func_modules_to_filelist, func_emit_lib_Makefile_am. Initialize
11686         opt_lgpl. Don't use test -a, as it's not portable.
11687         (func_create_testdir): Use func_modules_transitive_closure,
11688         func_modules_to_filelist, func_emit_lib_Makefile_am.
11689
11690 2004-10-15  Bruno Haible  <bruno@clisp.org>
11691
11692         * gnulib-tool (func_import): Let gl_INIT define LTALLOCA when needed.
11693
11694 2004-10-15  Bruno Haible  <bruno@clisp.org>
11695
11696         * gnulib-tool (func_emit_lib_Makefile_am): Add markers to separate
11697         the portions belonging to each module.
11698         Suggested by Derek Robert Price <derek@ximbiot.com>.
11699
11700 2004-10-12  Simon Josefsson  <jas@extundo.com>
11701
11702         * lib/getpass.c (fflush_unlocked, flockfile, funlockfile)
11703         (fputs_unlocked, putc_unlocked) [!_LIBCS && !USE_UNLOCKED_IO]: Map
11704         to real functions.
11705
11706 2004-10-11  Yoann Vandoorselaere  <yoann@prelude-ids.org>
11707
11708         * modules/vsnprintf: New file.
11709
11710 2004-10-11  Yoann Vandoorselaere  <yoann@prelude-ids.org>
11711
11712         * m4/vsnprintf.m4: New file.
11713
11714 2004-10-11  Yoann Vandoorselaere  <yoann@prelude-ids.org>
11715
11716         * lib/vsnprintf.h: New file.
11717         * lib/vsnprintf.c: New file.
11718
11719 2004-10-11  Bruno Haible  <bruno@clisp.org>
11720
11721         * MODULES.html.sh (Support for systems lacking ISO C 99): Add
11722         vsnprintf.
11723
11724 2004-10-10  Paul Eggert  <eggert@cs.ucla.edu>
11725
11726         * config/srclistvars.sh: Add GNUSTANDARDS (for eggert only).
11727
11728 2004-10-07  Bruno Haible  <bruno@clisp.org>
11729
11730         * lib/snprintf.c (snprintf): Avoid a memory allocation if the result fits
11731         into the provided buffer.
11732
11733 2004-10-06  Paul Eggert  <eggert@cs.ucla.edu>
11734
11735         * lib/diacrit.c, diacrit.h: Add GPL notice.
11736
11737         * lib/atanl.c, logl.c: Add GPL notice, to match glibc's added LGPL notice.
11738         * lib/atanl.c (atanl): Keep the code as similar to glibc as possible.
11739         * lib/logl.c (logl): Keep the code as similar to glibc as possible.
11740         This avoids a potential constant-folding bug.
11741
11742 2004-10-05  Bruno Haible  <bruno@clisp.org>
11743
11744         * m4/strsep.m4 (gl_FUNC_STRSEP): Require AC_GNU_SOURCE. Don't check
11745         for the declaration of strsep.
11746
11747 2004-10-05  Bruno Haible  <bruno@clisp.org>
11748
11749         * lib/strsep.h: Don't declare strsep() if HAVE_STRSEP.
11750
11751 2004-10-04  Simon Josefsson  <jas@extundo.com>
11752
11753         * modules/memmem: New file.
11754         * tests/test-memmem.c: New file.
11755         * MODULES.html.sh (Extra functions based on ANSI C 89): Add memmem.
11756
11757 2004-10-04  Simon Josefsson  <jas@extundo.com>
11758
11759         * m4/memmem.m4: New file.
11760
11761 2004-10-04  Simon Josefsson  <jas@extundo.com>
11762
11763         * lib/memmem.h: New file.
11764         * lib/memmem.c: New file, taken from glibc.
11765
11766 2004-10-04  Simon Josefsson  <jas@extundo.com>
11767
11768         * lib/error.c, md5.c, regex.c: Use '#if USE_UNLOCKED_IO' instead of
11769         '#ifdef USE_UNLOCKED_IO'.
11770
11771 2004-10-04  Simon Josefsson  <jas@extundo.com>
11772
11773         * config/srclist.txt: Add memmem from glibc.
11774
11775 2004-10-04  Paul Eggert  <eggert@cs.ucla.edu>
11776
11777         * modules/xalloc (Files, Makefile.am): Remove xstrdup.c.
11778
11779         * modules/argmatch, modules/argp, modules/closeout, modules/error,
11780         modules/exclude, modules/getdate, modules/getline,
11781         modules/getndelim2, modules/getpass, modules/getpass-gnu,
11782         modules/getusershell, modules/linebuffer, modules/md5,
11783         modules/mountlist, modules/posixtm, modules/readtokens,
11784         modules/readutmp, modules/regex, modules/sha1,
11785         modules/version-etc, modules/yesno:
11786         Remove dependency on unlocked-io.
11787
11788 2004-10-04  Paul Eggert  <eggert@cs.ucla.edu>
11789
11790         * m4/xalloc.m4 (gl_PREREQ_XSTRDUP): Remove.  All uses removed.
11791
11792         * m4/unlocked-io.m4: Add copyright notice.
11793         (gl_FUNC_GLIBC_UNLOCKED_IO): Define USE_UNLOCKED_IO.
11794
11795 2004-10-04  Paul Eggert  <eggert@cs.ucla.edu>
11796
11797         * lib/xalloc.h (xmemdup): Renamed from xclone.  All uses changed.
11798         * lib/xmalloc.c (xmemdup): Likewise.
11799         * lib/xalloc.h (CCLONE, CLONE, NEW, XCALLOC, XMALLOC, XREALLOC,
11800         XFREE): Remove these long-obsolescent macros.
11801         * lib/xmalloc.c (xstrdup): Implementation moved here from xstrdup.c
11802         * lib/xstrdup.c: Remove.
11803
11804         * lib/regex.c (re_comp): Cast gettext return value to char *,
11805         Problem reported by Martin Neitzel via Mark D. Baushke.
11806
11807 2004-10-04  Paul Eggert  <eggert@cs.ucla.edu>
11808
11809         * lib/argmatch.c, closeout.c, error.c, exclude.c, getdate.y,
11810         getndelim2.c, getpass.c, getusershell.c, linebuffer.c,
11811         md5.c, mountlist.c, posixtm.c, readtokens.c, readutmp.c,
11812         regex.c, sha1.c, version-etc.c, yesno.c:
11813         Include "unlocked-io.h" only if USE_UNLOCKED_IO.
11814         * lib/unlocked-io.h: Don't worry about USE_UNLOCKED_IO; that's now
11815         the includer's responsibility.
11816
11817         Sync from coreutils.
11818
11819         * lib/modechange.c (mode_compile): Don't decrement a pointer that
11820         points to the start of a string, as the C Standard says the
11821         resulting behavior is undefined.
11822
11823         * lib/backupfile.h (enum backuptype): Rename none -> no_backups,
11824         simple -> simple_backups, numbered_existing ->
11825         numbered_existing_backups, numbered -> numbered_backups
11826         to avoid shadowing problems.  All uses changed.
11827         * lib/argmatch.c (enum backuptype) [defined TEST]: Likewise.
11828         * lib/backupfile.c (check_extension, numbered_backup):
11829         Rename locals to avoid shadowing 'basename'.
11830         * lib/backupfile.h (VALID_BACKUP_TYPE): Don't evaluate arg more than
11831         once.
11832
11833         * lib/.cppi-disable: Add getopt_.h, getopt_int.h.
11834         * lib/.cvsignore: Add getopt.h.
11835
11836 2004-10-04  Bruno Haible  <bruno@clisp.org>
11837
11838         * modules/README: New file.
11839         * gnulib-tool (func_all_modules, func_verify_module): modules/README is
11840         not a module.
11841
11842 2004-10-02  Jim Meyering  <jim@meyering.net>
11843
11844         * lib/dirfd.h, getpagesize.h: Add copyright notice.
11845
11846 2004-10-01  Yoann Vandoorselaere <yoann@prelude-ids.org>
11847
11848         * modules/strsep: New file.
11849
11850 2004-10-01  Yoann Vandoorselaere <yoann@prelude-ids.org>
11851
11852         * m4/strsep.m4: New file.
11853
11854 2004-10-01  Yoann Vandoorselaere <yoann@prelude-ids.org>
11855
11856         * lib/strsep.h: New file.
11857         * lib/strsep.c: New file.
11858
11859 2004-10-01  Simon Josefsson  <jas@extundo.com>
11860
11861         * lib/snprintf.c (snprintf): Handle size==0.
11862
11863 2004-10-01  Simon Josefsson  <jas@extundo.com>
11864             Bruno Haible  <bruno@clisp.org>
11865
11866         * lib/snprintf.c: Include <stdarg.h>, <stdlib.h>, <string.h>.
11867         (snprintf): Declare 'args'.
11868
11869 2004-10-01  Paul Eggert  <eggert@cs.ucla.edu>
11870
11871         * lib/snprintf.c: Remove comments as to why each header is needed.
11872
11873 2004-10-01  Bruno Haible  <bruno@clisp.org>
11874
11875         * MODULES.html.sh: Add strsep.
11876
11877 2004-09-30  Simon Josefsson  <jas@extundo.com>
11878
11879         * modules/snprintf: New file.
11880
11881 2004-09-30  Simon Josefsson  <jas@extundo.com>
11882
11883         * m4/snprintf.m4: New file.
11884
11885 2004-09-30  Simon Josefsson  <jas@extundo.com>
11886
11887         * lib/snprintf.h, snprintf.c: New files.
11888
11889 2004-09-30  Sergey Poznyakoff  <gray@Mirddin.farlep.net>
11890
11891         * lib/argp-help.c (canon_doc_option): Fixed coredump if *name==NULL
11892         (hol_entry_help): Never translate an empty string.
11893         Do not translate option tag (opt->name) if OPTION_NO_TRANS is set
11894         * lib/argp.h (OPTION_NO_TRANS): New option.
11895
11896 2004-09-30  Paul Eggert  <eggert@cs.ucla.edu>
11897
11898         * modules/argp (Maintainer): Replace Simon Josefsson
11899         by Sergey Poznyakoff.
11900
11901 2004-09-30  Paul Eggert  <eggert@cs.ucla.edu>
11902
11903         * config/srclist.txt: Comment-out argp/argp.h, until we get the argp
11904         changes merged back into glibc.
11905
11906 2004-09-30  Paul Eggert  <eggert@cs.ucla.edu>
11907
11908         * MODULES.html.sh (Support for systems lacking ISO C 99): Add snprintf.
11909
11910 2004-09-29  Oskar Liljeblad  <oskar@osk.mine.nu>
11911
11912         * lib/xvasprintf.c: Include xalloc.h.
11913         (xvasprintf): Use xalloc_die, not xmalloc_die.
11914
11915 2004-09-29  Bruno Haible  <bruno@clisp.org>
11916
11917         * modules/alloca-opt: New file, derived from modules/alloca.
11918         * modules/allocsa: Depend on alloca-opt instead of alloca.
11919         * modules/setenv: Likewise.
11920         * modules/vasnprintf: Likewise.
11921         * MODULES.html.sh: Add alloca-opt.
11922
11923 2004-09-28  Simon Josefsson  <jas@extundo.com>
11924
11925         * gnulib-tool: New parameter --lgpl, to asseert that modules are
11926         LGPL, and to replace license template from GPL to LGPL.
11927
11928 2004-09-28  Paul Eggert  <eggert@cs.ucla.edu>
11929
11930         * modules/dummy: Change license to LGPL.
11931
11932 2004-09-28  Paul Eggert  <eggert@cs.ucla.edu>
11933
11934         * lib/dummy.c: Change copyright notice to FSF, and license to GPL.
11935
11936 2004-09-24  Simon Josefsson  <jas@extundo.com>
11937
11938         * modules/minmax (License): Change from GPL to LGPL.
11939
11940 2004-09-23  Simon Josefsson  <jas@extundo.com>
11941
11942         * gnulib-tool (--import): Typo.
11943
11944 2004-09-23  Simon Josefsson  <jas@extundo.com>
11945
11946         * gnulib-tool (--import): Make sure *.m4 end up in m4/ by default.
11947
11948 2004-09-22  Bruno Haible  <bruno@clisp.org>
11949
11950         * modules/*: Add 'License' field.
11951         * gnulib-tool: Accept --extract-license option.
11952         (func_get_license): New function.
11953
11954 2004-09-21  Bruno Haible  <bruno@clisp.org>
11955
11956         * modules/vasnprintf (Files): Add m4/stdint_h.m4, m4/inttypes_h.m4.
11957         Reported by Simon Josefsson.
11958
11959 2004-09-20  Paul Eggert  <eggert@cs.ucla.edu>
11960
11961         * modules/inttostr (Files): Add m4/longlong.m4, since it uses
11962         gl_AC_TYPE_LONG_LONG.
11963
11964 2004-09-20  Paul Eggert  <eggert@cs.ucla.edu>
11965
11966         * config/srclist.txt: Add getsubopt.c, since libc bought our changes.
11967
11968 2004-09-18  Simon Josefsson  <jas@extundo.com>
11969         and  Paul Eggert  <eggert@cs.ucla.edu>
11970
11971         * gnulib-tool: Replace various ad-hoc automake/autoconf/aclocal
11972         calls with autoreconf.  Define GL_LIB.
11973
11974 2004-09-14  Karl Berry  <karl@gnu.org>
11975
11976         * config/srclist.txt: unsync setenv.c, sigh.
11977
11978 2004-09-13  Paul Eggert  <eggert@cs.ucla.edu>
11979
11980         * lib/argp-pvh.c (argp_program_version_hook): Provide initial value.
11981         Problem reported by Bruno Haible in:
11982         http://lists.gnu.org/archive/html/bug-tar/2004-09/msg00023.html
11983
11984 2004-09-13  Paul Eggert  <eggert@cs.ucla.edu>
11985
11986         * config/srclist.txt: Comment out argp-pvh.c.
11987
11988 2004-09-11  Paul Eggert  <eggert@cs.ucla.edu>
11989
11990         * lib/mempcpy.h: Wrap the entire include file inside #ifndef mempcpy,
11991         in case some system header has #define'd it.  Problem reported by
11992         Soeren D. Schulze in
11993         <http://lists.gnu.org/archive/html/bug-gnulib/2004-09/msg00017.html>.
11994
11995 2004-09-09  Karl Berry  <karl@gnu.org>
11996
11997         * regex.[ch]: delete from the root.  These were supposed to be
11998                 synced with emacs cvs, but this has not happened for about
11999                 a year, and anyway nothing else uses emacs regex.[ch].
12000                 bug-gnulib mail from Jeff Bailey, 9 Sep 2004 15:49:24 -0700.
12001                 lib/regex[.ch] is untouched.
12002
12003 2004-09-09  Bruno Haible  <bruno@clisp.org>
12004
12005         * modules/vasnprintf (Files): Add m4/eoverflow.m4.
12006
12007 2004-09-09  Bruno Haible  <bruno@clisp.org>
12008
12009         * m4/eoverflow.m4: New file, taken from GNU libiconv eilseq.m4 with
12010         modifications.
12011         * m4/vasnprintf.m4 (gl_FUNC_VASNPRINTF): Require gl_EOVERFLOW.
12012
12013 2004-09-08  Oskar Liljeblad  <oskar@osk.mine.nu>
12014
12015         * modules/xvasprintf: New file.
12016         * MODULES.html.sh (Extra functions based on ANSI C 89): Add vasprintf.
12017
12018 2004-09-08  Oskar Liljeblad  <oskar@osk.mine.nu>
12019
12020         * lib/xvasprintf.h: New file.
12021         * lib/xvasprintf.c: New file.
12022         * lib/xasprintf.c: New file.
12023
12024 2004-09-08  Bruno Haible  <bruno@clisp.org>
12025
12026         * m4/stdint.m4: New file, taken from GNU clisp with modifications.
12027
12028 2004-09-08  Bruno Haible  <bruno@clisp.org>
12029
12030         * lib/vasnprintf.c (VASNPRINTF): Signal EOVERFLOW if the resulting length
12031         is > INT_MAX.
12032         * lib/vasprintf.c (vasprintf): Don't test for length > INT_MAX any more.
12033
12034 2004-09-08  Bruno Haible  <bruno@clisp.org>
12035
12036         * lib/stdint_.h: New file, taken from GNU clisp.
12037
12038 2004-09-08  Bruno Haible  <bruno@clisp.org>
12039             Oskar Liljeblad  <oskar@osk.mine.nu>
12040
12041         * modules/stdint: New file.
12042         * MODULES.html.sh (Support for systems lacking ISO C 99): Add stdint.
12043
12044 2004-08-19  Paul Eggert  <eggert@cs.ucla.edu>
12045
12046         Import from coreutils.
12047         * lib/userspec.c: Don't use <alloca.h>, so that we don't use alloca on
12048         strings on unbounded length.  alloca's performance benefits aren't
12049         that important here.
12050         (V_STRDUP): Remove.
12051         (parse_with_separator): New function, with most of the internals
12052         of the old parse_user_spec.  Allow user to omit both user and group,
12053         for compatibility with FreeBSD.
12054         Clone only the user name, not the entire spec.
12055         Do not set *uid, *gid unless entirely successful.
12056         Avoid memory leak in some failing cases.
12057         Fix regression for USER.GROUP reported by Dmitry V. Levin in
12058         <http://lists.gnu.org/archive/html/bug-coreutils/2004-08/msg00102.html>
12059         (parse_user_spec): Rewrite to use parse_with_separator.
12060
12061 2004-08-19  Paul Eggert  <eggert@cs.ucla.edu>
12062
12063         * modules/userspec: Don't depend on alloca.
12064
12065 2004-08-19  Paul Eggert  <eggert@cs.ucla.edu>
12066
12067         * m4/userspec.m4 (gl_USERSPEC): Don't require AC_FUNC_ALLOCA.
12068
12069 2004-08-17  Paul Eggert  <eggert@cs.ucla.edu>
12070
12071         * MODULES.html.sh: Add xalloc-die, c-strtod, c-strtold, raise,
12072         readtokens0, getcwd, fcntl-safer, canonicalize, cycle-check,
12073         utimecmp, utimens, xnanosleep.  Rename sha to sha1.
12074
12075 2004-08-16  Simon Josefsson  <jas@extundo.com>
12076
12077         * gnulib-tool: Use sed instead of autoconf --trace, inspired by
12078         libtoolize behaviour by "Gary V. Vaughan" <gary@gnu.org>.
12079         Add --dry-run for --import.
12080         Let user provided command line parameters override configure.ac
12081         settings.
12082
12083 2004-08-12  Simon Josefsson  <jas@extundo.com>
12084
12085         * m4/getopt.m4 (gl_GETOPT_SUBSTITUTE): New macro,
12086         as discussed with Paul Eggert in threads rooted at
12087         <http://lists.gnu.org/archive/html/bug-gnulib/2004-06/msg00039.html>
12088         and
12089         <http://lists.gnu.org/archive/html/bug-gnulib/2004-07/msg00001.html>.
12090         Before, the test was empty, and relied on ELIDE_CODE in source
12091         code.)
12092         (gl_PREREQ_GETOPT): New macro.
12093         (gl_GETOPT): Use them.
12094
12095 2004-08-12  Simon Josefsson  <jas@extundo.com>
12096
12097         * lib/getopt.c, getopt1.c: Remove ELIDE_CODE hack.
12098         * lib/getopt_.h: Renamed from getopt.h.
12099
12100 2004-08-12  Simon Josefsson  <jas@extundo.com>
12101
12102         * gnulib-tool: Add --source-base, --m4-base, --libtool options.
12103         Change default library name from libfoo to libgnu.
12104         Now, if you have a configure.ac that says:
12105                 gl_SOURCE_BASE(gl)
12106                 gl_M4_BASE(gl/m4)
12107                 gl_MODULES(error getopt etcetera)
12108                 gl_INIT
12109         you can import all you need by running:
12110                 ../gnulib/gnulib-tool --import
12111
12112         * modules/getopt (Files): Rename getopt.h to getopt_.h.
12113         (Makefile.am): Rewrite, use logic from argz.
12114         (Include): Use <getopt.h> instead of "getopt.h".
12115
12116 2004-08-12  Paul Eggert  <eggert@cs.ucla.edu>
12117
12118         * modules/argp (Files): Add m4/unlocked-io.m4.
12119         (Depends-on): Add extensions.
12120
12121 2004-08-12  Paul Eggert  <eggert@cs.ucla.edu>
12122
12123         * m4/argp.m4 (gl_ARGP): Do not check for argp.h or argp_parse; nobody
12124         uses HAVE_ARGP_H or HAVE_ARGP_PARSE.
12125         Require gl_FUNC_GLIBC_UNLOCKED_IO, gl_USE_SYSTEM_EXTENSIONS.
12126         Check for program_invocation_name, program_invocation_short_name,
12127         flockfile, funlockfile, features.h, _getopt_long_only_r.
12128
12129 2004-08-12  Paul Eggert  <eggert@cs.ucla.edu>
12130
12131         * lib/argp-help.c, argp-parse.c: Use "gettext.h" instead of
12132         its complicated substitute.
12133         * lib/argp-help.c: Include <errno.h>, for program_invocation_short_name
12134         and program_invocation_name.
12135         (__argp_basename) [!_LIBC]: Remove; the only use was
12136         replaced by its body.
12137         (__argp_short_program_name): Change condition from
12138         !defined __argp_short_program_name to
12139         ! (defined _LIBC || HAVE_DECL_PROGRAM_INVOCATION_SHORT_NAME),
12140         to match argp-namefrob.h.
12141         (__argp_failure): Don't assume strerror_r returns char *.
12142         * lib/argp-parse.c (N_): Define unconditionally.
12143         (argp_default_options): Fill out initializers with 0 to avoid
12144         gcc warnings.
12145
12146 2004-08-12  Paul Eggert  <eggert@cs.ucla.edu>
12147
12148         * config/srclist.txt: Remove getopt.c, getopt.h (renamed to getopt_.h),
12149         getopt1.c.
12150
12151 2004-08-11  Paul Eggert  <eggert@cs.ucla.edu>
12152
12153         Merge from coreutils.
12154
12155         * m4/fnmatch.m4 (_AC_LIBOBJ_FNMATCH): Check for wmemchr and wmemcpy.
12156
12157         * m4/obstack.m4 (gl_PREREQ_OBSTACK): Require
12158         gl_AC_HEADER_INTTYPES_H, gl_AC_HEADER_STDINT_H, gl_AC_TYPE_UINTMAX_T.
12159
12160 2004-08-11  Paul Eggert  <eggert@cs.ucla.edu>
12161
12162         Merge from coreutils.
12163
12164         * lib/fnmatch.c (WIDE_CHAR_SUPPORT): Don't set to 1 if missing
12165         wmemchr or wmemcpy.  Problem reported by Robert Dahlem
12166         for Reliant Unix 5.43.
12167
12168         * lib/obstack.c: Include <inttypes.h> and <stdint.h> if available.
12169         (union fooround): Use uintmax_t, not long int.
12170         The rest is a merge from libc:
12171         [defined _LIBC]: Include <shlib-compat.h>.
12172         (_obstack) [defined _LIBC]: Remove after 2.3.4.
12173
12174         * lib/settime.c (settime): Recode to avoid warning with Sun Forte C 6U2.
12175
12176         * lib/strverscmp.c: Convert to UTF-8.
12177
12178 2004-08-11  Paul Eggert  <eggert@cs.ucla.edu>
12179
12180         * modules/obstack (Files): Add m4/inttypes_h.m4, m4/stdint_h.m4,
12181         m4/uintmax_t.m4.
12182
12183 2004-08-09  Paul Eggert  <eggert@cs.ucla.edu>
12184
12185         * modules/xalloc-die: New file.
12186         * modules/xalloc: Remove dependencies on error, gettext, exitfail.
12187
12188         * modules/md5 (Files): Add m4/uint32_t.m4.
12189         * modules/sha1: Renamed from modules/sha.
12190         (Files):
12191         Rename lib/sha.h to lib/sha1.h.
12192         Rename lib/sha.c to lib/sha1.c.
12193         Rename m4/sha.m4 to m4/sha1.m4.
12194         (lib_SOURCES): Likewise.
12195         (configure.ac): Rename gl_SHA to gl_SHA1.
12196         (Include): sha.h -> sha1.h.
12197
12198 2004-08-09  Paul Eggert  <eggert@cs.ucla.edu>
12199
12200         * m4/uint32_t.m4, uintptr_t.m4: New files.
12201         * m4/sha1.m4: Renamed from sha.m4.
12202         (gl_SHA1): Renamed from gl_SHA.  All uses changed.
12203
12204 2004-08-09  Paul Eggert  <eggert@cs.ucla.edu>
12205
12206         * lib/obstack.h (obstack_empty_p):
12207         Don't assume that chunk->contents is suitably aligned.
12208         * lib/obstack.c (_obstack_begin, _obstack_begin_1, _obstack_newchunk):
12209         Likewise. Problem reported by Benno in
12210         <http://sources.redhat.com/ml/libc-alpha/2004-08/msg00055.html>.
12211
12212         * lib/chown.c (rpl_chown): Work even if the file is writeable but not
12213         readable.  This could be improved further but it'd take some work.
12214
12215 2004-08-08  Simon Josefsson  <jas@extundo.com>
12216
12217         * modules/xgethostname (Depends-on): Remove exit and error (not
12218         used).
12219
12220         * modules/getpass-gnu: Add getpass.h.
12221         (Depends-on): Add stdbool.
12222         * modules/getpass: Add getpass.h.
12223
12224 2004-08-08  Simon Josefsson  <jas@extundo.com>
12225
12226         * m4/getpass.m4 (gl_FUNC_GETPASS, gl_FUNC_GETPASS_GNU):
12227         Check getpass declaration.
12228
12229 2004-08-08  Simon Josefsson  <jas@extundo.com>
12230
12231         * lib/xgethostname.c: Don't include error.h (not used).
12232
12233         * lib/getpass.h: Add.
12234         * lib/getpass.c: Include getpass.h first.
12235
12236 2004-08-08  Paul Eggert  <eggert@cs.ucla.edu>
12237
12238         * lib/xalloc-die.c: New files.
12239         * lib/xalloc.h (xalloc_fail_func, xalloc_msg_memory_exhausted): Remove.
12240         All uses removed.
12241         * lib/xmalloc.c (xalloc_fail_func, xalloc_msg_memory_exhausted): Likewise.
12242         Move inclusions of gettext.h, error.h, exitfail.h to xalloc-die.c.
12243         (_, N_, xalloc_die): Move to xalloc-die.c.
12244         * lib/userspec.c (parse_user_spaec): Use xstrdup rather than strdup,
12245         so that we needn't mess with xalloc_msg_memory_exhausted.
12246
12247         * lib/sha1.h: Renamed from sha.h.
12248         (SHA1_H): Renamed from _SHA_H.
12249         (sha1_ctx): Renamed from sha_ctx.
12250         (sha1_init_ctx): Renamed from sha_init_ctx.
12251         (sha1_process_block): Renamed from sha_process_block.
12252         (sha1_process_bytes): Renamed from sha_process_bytes.
12253         (sha1_finish_ctx): Renamed from sha_finish_ctx.
12254         (sha1_read_ctx): Renamed from sha_read_ctx.
12255         (sha1_stream): Renamed from sha_stream.
12256         (sha1_buffer): Renamed from sha_buffer.
12257         * lib/sha1.c: Likewise; renamed from sha.c.
12258         Do not include <sys/types.h>.
12259         Include <stddef.h> rather than <stdlib.h>.
12260
12261 2004-08-08  Bruno Haible  <bruno@clisp.org>
12262
12263         * lib/pathname.h (FILE_SYSTEM_PREFIX_LEN): Renamed from
12264         FILESYSTEM_PREFIX_LEN.
12265         * lib/progreloc.c: Likewise.
12266         * lib/concatpath.c (concatenated_pathname): Use FILE_SYSTEM_PREFIX_LEN.
12267
12268 2004-08-06  Simon Josefsson  <jas@extundo.com>
12269
12270         * modules/progname (Depends-on): Don't depend on stdbool.
12271
12272 2004-08-06  Simon Josefsson  <jas@extundo.com>
12273
12274         * modules/getsubopt: New file.
12275         * MODULES.html.sh (Support for systems lacking POSIX:2001): Add
12276         getsubopt.
12277
12278 2004-08-06  Paul Eggert  <eggert@cs.ucla.edu>
12279
12280         More merge from coreutils.
12281
12282         * m4/utimens.m4, utimecmp.m4: New files.
12283         * m4/backupfile.m4, euidacces.m4, acl.m4, afs.m4, calloc.m4, dirfd.m4,
12284         fsusage.m4, jm-macros.m4, ls-mntd-fs.m4, md5.m4, mountlist.m4,
12285         prereq.m4, sha.m4: Import changes from coreutils.
12286
12287 2004-08-06  Paul Eggert  <eggert@cs.ucla.edu>
12288
12289         More merge from coreutils.
12290         * modules/raise, modules/readtokens0, modules/utimens,
12291         modules/utimecmp, module/xnanosleep: New files.
12292         * modules/strftime: Add lib/strftime.h.
12293         Change include from <time.h> to "strftime.h".
12294         * modules/yesno: Add lib/yesno.h.
12295         * modules/backupfile: Remove lib/addext.c.
12296         * modules/euidaccess: Add stat-macros.h.
12297         * modules/canonicalize, modules/euidaccess,
12298         modules/filemode, modules/lchown, modules/makepath,
12299         modules/rmdir, modules/stat: Likewise.
12300
12301 2004-08-06  Paul Eggert  <eggert@cs.ucla.edu>
12302
12303         Merge from tar.
12304         * lib/argp-help.c (make_hol, hol_append): Don't assume that
12305         SIZE_MAX is a valid preprocessor constant.
12306         (__argp_basename): Change from "#ifndef _LIBC"
12307         to "#ifndef __argp_short_program_name", so that
12308         we don't compile these functions for tar.
12309
12310         More merges from coreutils.
12311         * lib/raise.c, readtokens0.h, readtokens0.c, strftime.h, utimens.h,
12312         utimens.c, utimecmp.h, utimecmp.c, xnanosleep.h, xnanosleep.c,
12313         yesno.h: New files.
12314         * lib/addext.c: Remove; no longer needed.
12315         * lib/yesno.c, argmatch.h, argmatch.c, backupfile.h, backupfile.c,
12316         euidaccess.c, filemode.c, closeout.c, dup2.c, exclude.c,
12317         fileblocks.c, filemode.c, fnmatch.c, fnmtahc_loop.c,
12318         fopen-safer.c, fsusage.c, fsusage.h, ftruncate.c, full-write.c,
12319         getdate.y, getloadavg.c, getugroups.c, hard-locale.c, hard-locale.h,
12320         hash.c, human.c, human.h, lchown.c, lchown.h, makepath.c, makepath.h,
12321         md5.c, md5.h, memchr.c, memcoll.c, memrchr.c, modechange.c,
12322         modechange.h, mountlist.c, mountlist.h, nanosleep.c, posixtm.c,
12323         putenv.c, quotearg.c, quotearg.h, readtokens.c, readutmp.c,
12324         readutmp.h, rmdir.c, safe-read.c, save-cwd.c, savedir.c, setenv.c,
12325         sig2str.c, stat.c, strtoimax.c, strverscmp.c, userspec.c, utime.c,
12326         version-etc.c., xgethostname.c, xmemcoll.c, xreadlink.c, xstrtod.c,
12327         xstrtod.h, xstrtoimax.c, xstrtol.c, xstrtol.h, xstrtoumax.c:
12328         Import changes from coreutils.
12329
12330 2004-08-05  Simon Josefsson  <jas@extundo.com>
12331
12332         * m4/strdup.m4: Always run gl_PREREQ_STRDUP, since strdup.h need it.
12333
12334 2004-08-05  Simon Josefsson  <jas@extundo.com>
12335
12336         * m4/getsubopt.m4: New file.
12337
12338 2004-08-05  Paul Eggert  <eggert@cs.ucla.edu>
12339
12340         Merge from coreutils.
12341
12342         * m4/c-strtod.m4, canonicalize.m4, fcntl-safer.m4, getcwd-path-max.m4:
12343         New files.
12344
12345         * m4/dos.m4 (gl_AC_DOS): filesystem -> file system renaming.
12346         FILESYSTEM_PREFIX_LEN ->
12347         FILE_SYSTEM_PREFIX_LEN.
12348         FILESYSTEM_ACCEPTS_DRIVE_LETTER_PREFIX ->
12349         FILE_SYSTEM_ACCEPTS_DRIVE_LETTER_PREFIX.
12350         FILESYSTEM_BACKSLASH_IS_FILE_NAME_SEPARATOR ->
12351         FILE_SYSTEM_BACKSLASH_IS_FILE_NAME_SEPARATOR.
12352
12353         * m4/path-concat.m4 (gl_PATH_CONCAT): Don't require gl_AC_DOS, the
12354         prerequisite modules now handle the DOS stuff.
12355         Don't check for unistd.h.
12356
12357 2004-08-05  Paul Eggert  <eggert@cs.ucla.edu>
12358
12359         Merge from coreutils.
12360
12361         * lib/.gdb-history: Remove; this doesn't belong here.
12362
12363         * lib/c-strtod.c, c-strtod.h, c-strtold.c, cycle-check.c,
12364         cycle-check.h, dev-ino.h, canonicalize.h, canonicalize.c,
12365         fcntl-safer.h, fcntl-safer.c, getcwd.c: New files.
12366
12367         * lib/dirname.h: Include <stdbool.h>.
12368         (FILE_SYSTEM_PREFIX_LEN): Renamed from FILESYSTEM_PREFIX_LEN,
12369         for consistency with POSIX terminology.  All uses changed.
12370         (IS_ABSOLUTE_FILE_NAME, IS_RELATIVE_FILE_NAME): New macros.
12371         (strip_trailing_slashes): Use bool for booleans.
12372         * lib/stripslash.c (strip_trailing_slashes): Likewise.
12373
12374         * lib/error.c: Work around bug in OpenBSD 3.4 sterror_r: it
12375         sometimes returns a positive errno value even when it succeeds.
12376         (print_errno_message) [!LIBC]: Fall back on strerror if
12377         __strerror_r fails.
12378
12379         * lib/path-concat.c (mempcpy): Don't define if a system header defines it.
12380         Don't include stdio.h, stdlib.h, unistd.h, strdup.h.
12381         (longest_relative_suffix): New function.
12382         (path_concat): Use it.  Assume first argument is not NULL.
12383         Port to DOS.  Omit redundant separators.
12384         Report an error instead of returning NULL.
12385         Use mempcpy instead of memcpy.
12386         (xpath_concat): Remove: not declared or used.
12387
12388         * lib/same.h: Include <stdbool.h>
12389         (same_name): Return bool, not int.
12390         * lib/same.c (same_name): Likewise.
12391         (errno): Don't declare; we assume C89 or better now.
12392
12393         * lib/stat-macros (S_ISCTG, S_ISOFD, S_ISOFL): New macros,
12394         if not already defined.
12395
12396         * lib/xgetcwd.c (errno): Don't declare; we assume C89 or better now.
12397         * lib/dup-safer.c (errno): Likewise.
12398
12399 2004-08-05  Paul Eggert  <eggert@cs.ucla.edu>
12400
12401         Merge from coreutils.
12402         * modules/c-strtod, modules/c-strtold, modules/canonicalize,
12403         modules/cycle-check, modules/fcntl-safer, modules/getcwd: New files.
12404         * modules/path-concat: Don't depend on strdup.
12405
12406 2004-08-03  Simon Josefsson  <jas@extundo.com>
12407
12408         * lib/strdup.h: Only use HAVE_DECL_STRDUP if defined.
12409         * lib/progname.h: Don't include stdbool.h.
12410
12411 2004-08-03  Paul Eggert  <eggert@cs.ucla.edu>
12412
12413         * modules/fatal: Remove, as the "fatal" module wasn't used or working.
12414         * MODULES.html.sh (func_all_modules): Remove fatal.
12415
12416 2004-08-03  Paul Eggert  <eggert@cs.ucla.edu>
12417
12418         * m4/fatal.m4: Remove, as the "fatal" module wasn't used or working.
12419
12420 2004-08-03  Paul Eggert  <eggert@cs.ucla.edu>
12421
12422         * lib/fatal.c, fatal.h: Remove as the "fatal" module wasn't used or
12423         working.
12424
12425 2004-08-02  Simon Josefsson  <jas@extundo.com>
12426
12427         * lib/getsubopt.h: New file, with comments from Bruno Haible.
12428         * lib/getsubopt.c: New file, from glibc, but slightly modified based on
12429         suggestions from Paul Eggert <eggert@cs.ucla.edu>.
12430
12431 2004-08-01  Simon Josefsson  <jas@extundo.com>
12432
12433         * lib/xgetdomainname.c: Include stdlib.h, for free().
12434
12435 2004-07-19  Bruno Haible  <bruno@clisp.org>
12436
12437         * MODULES.html.sh (func_all_modules): Add dummy.
12438
12439 2004-07-16  Simon Josefsson  <jas@extundo.com>
12440
12441         * modules/dummy: New file.
12442
12443 2004-07-16  Simon Josefsson  <jas@extundo.com>
12444
12445         * lib/dummy.c: New file.
12446
12447 2004-07-16  Bruno Haible  <bruno@clisp.org>
12448
12449         * lib/backupfile.h: Add extern "C" for C++.
12450         * lib/closeout.h: Likewise.
12451         * lib/copy-file.h: Likewise.
12452         * lib/findprog.h: Likewise.
12453         * lib/full-write.h: Likewise.
12454         * lib/pathname.h: Likewise.
12455         * lib/progname.h: Likewise.
12456         * lib/stpcpy.h: Likewise.
12457         * lib/stpncpy.h: Likewise.
12458         * lib/strcase.h: Likewise.
12459         * lib/strstr.h: Likewise.
12460         * lib/xalloc.h: Likewise.
12461
12462         * lib/mbswidth.h: Add extern "C" for C++.
12463         Reported by Albert Chin-A-Young <china@thewrittenword.com>.
12464
12465 2004-07-13  Robert Millan  <robertmh@gnu.org>
12466
12467         * m4/host-os.m4: s/KNetBSD/kNetBSD/g and s/KFreeBSD/kFreeBSD/g.
12468
12469 2004-07-09  Simon Josefsson  <jas@extundo.com>
12470
12471         * lib/getndelim2.c: Include stddef.h, for ptrdiff_t.  (FreeBSD 4.9
12472         failed without this.)
12473
12474 2004-07-09  Paul Eggert  <eggert@cs.ucla.edu>
12475
12476         * modules/chown (Files): Add lib/fchown-stub.c, since
12477         gl_PREREQ_CHOWN invokes AC_LIBOBJ(fchown-stub).
12478
12479 2004-07-09  Paul Eggert  <eggert@cs.ucla.edu>
12480
12481         * lib/fchown-stub.c: New file.
12482
12483 2004-06-24  Jim Meyering  <jim@meyering.net>
12484
12485         * lib/obstack.h (obstack_base): Cast to (void *), per documentation.
12486
12487 2004-06-22  Paul Eggert  <eggert@cs.ucla.edu>
12488
12489         * modules/argz: Omit "#include".
12490
12491         * MODULES.html.sh (func_all_modules): Add calloc, to match
12492         2004-06-01 addition of calloc module.
12493
12494 2004-06-22  Paul Eggert  <eggert@cs.ucla.edu>
12495
12496         * m4/argz.m4: New file, which is autoupdated from libtool.
12497
12498 2004-06-22  Paul Eggert  <eggert@cs.ucla.edu>
12499
12500         * lib/argz.c, argz_.h: New files, which are autoupdated from libtool.
12501
12502 2004-06-22  Paul Eggert  <eggert@cs.ucla.edu>
12503
12504         * config/srclist-update: Don't insist on "USA." before the close-comment,
12505         as libtool omits the period and puts the */ on a separate line.
12506         * config/srclist.txt: Add argz.c, argz_.h, argz.m4.
12507         * config/srclistvars.sh: Add LIBTOOL (for eggert only).
12508
12509 2004-06-22  Gary V. Vaughan  <gary@gnu.org>
12510
12511         * modules/argz: New file.
12512         * MODULES.html.sh (func_all_modules): Add argz.
12513
12514 2004-06-12  Jim Meyering  <jim@meyering.net>
12515         and  Paul Eggert  <eggert@cs.ucla.edu>
12516
12517         * modules/hash (Files): Add lib/xalloc.h.
12518         * modules/pipe (Depends-on): Add wait-process.
12519         * modules/stat (Depends-on): Add xalloc.
12520         * modules/userspec (Files): Add lib/userspec.h.
12521         * modules/xstrto
12522
12523         Upgrade from gettext-0.13.
12524         * modules/gettext (Files): Add m4/intmax.m4, m4/longdouble.m4,
12525         m4/longlong.m4, m4/printf-posix.m4, m4/signed.m4, m4/size_max.m4,
12526         m4/wchar_t.m4, m4/wint_t.m4, m4/xsize.m4.
12527
12528 2004-06-10  Jim Meyering  <jim@meyering.net>
12529
12530         * lib/calloc.c: New file.
12531
12532 2004-06-06  Paul Eggert  <eggert@cs.ucla.edu>
12533
12534         * lib/getdate.y (yylex): Allow space between sign and number.
12535         Problem reported by Dan Jacobson.
12536
12537 2004-06-01  Paul Eggert  <eggert@cs.ucla.edu>
12538
12539         Merge from coreutils CVS.
12540
12541         * m4/backupfile.m4, dirname.m4, human.m4, inttypes.m4, longlong.m4,
12542         makepath.m4, memchr.m4, memcmp.m4, mountlist.m4, path-concat.m4,
12543         putenv.m4, quotearg.m4, readutmp.m4, strtoimax.m4, strtoll.m4,
12544         strtoull.m4, strtoumax.m4, ulonglong.m4, vasnprintf.m4,
12545         xstrtol.m4: Fix copyright date and/or serial number.
12546
12547         * m4/chown.m4 (gl_PREREQ_CHOWN): Check for fcntl.h.
12548         See if we need an fchown replacement.
12549         (gl_FUNC_CHOWN_FOLLOWS_SYMLINK): New macro.
12550         (gl_FUNC_CHOWN): Require gl_FUNC_CHOWN_FOLLOWS_SYMLINK,
12551         and use the replacement function if we detect either defect.
12552
12553         * m4/prereq.m4 (gl_PREREQ): Add gl_ALLOCSA, gl_CLOEXEC, gl_INTTOSTR,
12554         gl_UTIMECMP.
12555
12556 2004-06-01  Paul Eggert  <eggert@cs.ucla.edu>
12557         and  Jim Meyering  <jim@meyering.net>
12558
12559         Merge from coreutils CVS.
12560
12561         * lib/stat-macros.h: New file, with contents from file-type.h
12562         and coreutils' system.h.
12563         * lib/file-type.c: Include "stat-macros.h".
12564         * lib/file-type.h (file_type): Move all macro definitions to new file,
12565         stat-macros.h.
12566
12567         * lib/chown.c (rpl_chown) [CHOWN_FAILS_TO_HONOR_ID_OF_NEGATIVE_ONE]:
12568         Wrap old code with this conditional.
12569         [CHOWN_MODIFIES_SYMLINK]: Try to work around a chown
12570         function that does not dereference symlinks.
12571         * lib/lchown.c (lchown) [CHOWN_MODIFIES_SYMLINK]: Just call chown.
12572
12573         * lib/xreadlink.c: Include xreadlink.h first, to catch .h file
12574         dependency problems.
12575         (xreadlink): Accept new arg SIZE, for efficiency.
12576         All decls and uses changed.
12577         * lib/xreadlink.h: Include <stddef.h>, for size_t.
12578
12579         * lib/.cppi-disable: Add alloca_.h, allocsa.h, exit.h, getndelim2.h,
12580         gettext.h, localcharset.h, strdup.h, strndup.h, strtoul.c, time_r.h.
12581
12582         * lib/.cvsignore: Add alloca.h, fnmatch.h, poll.h, stdbool.h, sysexits.h.
12583
12584 2004-06-01  Jim Meyering  <jim@meyering.net>
12585
12586         * m4/calloc.m4: New file.
12587
12588 2004-05-31  Paul Eggert  <eggert@cs.ucla.edu>
12589
12590         * m4/stdbool.m4 (AC_HEADER_STDBOOL): Detect _Bool bug in HP aC++/ANSI
12591         C B3910B A.05.55 [Dec 04 2003].  Problem reported by Jim Meyering.
12592         Also, fix a typo in a diagnostic.
12593
12594 2004-05-30  Paul Eggert  <eggert@cs.ucla.edu>
12595
12596         * m4/xalloc.m4 (gl_PREREQ_XMALLOC): Do not require AC_FUNC_MALLOC
12597         or AC_FUNC_REALLOC.
12598
12599 2004-05-30  Paul Eggert  <eggert@cs.ucla.edu>
12600
12601         * lib/xmalloc.c (HAVE_MALLOC, HAVE_REALLOC): Do not require these
12602         macros to be defined.
12603         (xnmalloc_inline, xnrealloc_inline, xcalloc): Do not die if
12604         the allocator returns NULL because the requested size is zero.
12605
12606 2004-05-20  Paul Eggert  <eggert@cs.ucla.edu>
12607
12608         * lib/malloc/obstack.c (_obstack) [defined _LIBC]: Bring back this
12609         var.  Add comment explaining why libc still defines it.  This
12610         merges the following patch from glibc:
12611         http://sources.redhat.com/ml/libc-alpha/2004-05/msg00157.html
12612
12613 2004-05-20  Andreas Schwab  <schwab@suse.de>
12614
12615         * m4/free.m4: Replace free if it not known to work, not the other
12616         way round.
12617
12618 2004-05-19  Paul Eggert  <eggert@cs.ucla.edu>
12619
12620         * lib/obstack.c (_obstack): Remove unused variable.  It hasn't been
12621         present in glibc since revision 1.1 of this file.
12622         * lib/obstack.h (_obstack_free, obstack_1grow, obstack_1grow_fast,
12623         obstack_alignment_mask, obstack_alloc, obstack_base,
12624         obstack_blank, obstack_blank_fast, obstack_chunk_size,
12625         obstack_copy, obstack_copy0, obstack_finish, obstack_grow,
12626         obstack_grow0, obstack_init, obstack_int_grow,
12627         obstack_int_grow_fast, obstack_make_room, obstack_memory_used,
12628         obstack_next_free, obstack_object_size, obstack_ptr_grow,
12629         obstack_ptr_grow_fast, obstack_room): Remove declarations of
12630         nonexistent functions.
12631
12632 2004-05-18  Karl Berry  <karl@gnu.org>
12633
12634         * config/srclist.txt: break link for vasnprintf.c.
12635
12636 2004-05-17  Paul Eggert  <eggert@cs.ucla.edu>
12637
12638         Port obstack to the AS/400, where pointers are 16 bytes wide and
12639         you cannot cast an integer to a valid pointer.  This patch is
12640         currently waiting to be integrated into glibc; see
12641         <http://sources.redhat.com/ml/libc-alpha/2004-05/msg00073.html>.
12642
12643         * lib/obstack.h (__PTR_TO_INT, __INT_TO_PTR): Remove.
12644         All uses of __INT_TO_PTR (PTR_TO_INT ...) replaced by __PTR_ALIGN.
12645         (__BPTR_ALIGN, __PTR_ALIGN): New macros.
12646         (struct obstack): temp member is now a union of a pointer and
12647         an integer, instead of an integer.  All integer uses changed.
12648         This does not affect the physical layout of struct obstack,
12649         except on hosts (like the AS/400) where the size or alignment of
12650         void * is greater than that of ptrdiff_t.
12651         (obstack_finish) [! (defined __GNUC__ && defined __STDC__ &&
12652         __STDC__)]: Store temporary in pointer member of union, not
12653         integer member.
12654         * lib/obstack.c: Include <stddef.h>, for offsetof.
12655         (struct fooalign): Remove; it doesn't need a name.
12656         (union fooround): Change double to long double, and add void *.
12657         (DEFAULT_ALIGNMENT): Use offsetof to compute.
12658         (DEFAULT_ALIGNMENT, DEFAULT_ROUNDING): Now an enum constant,
12659         not a macro.  Hence the values are always int; so remove all
12660         casts-to-int in uses.
12661
12662 2004-05-17  Paul Eggert  <eggert@cs.ucla.edu>
12663
12664         * config/srclist.txt: Break link for argp-help.c and argp-parse.c until
12665         we can get this patch merged into glibc.
12666
12667 2004-05-17  Derek R. Price  <derek@ximbiot.com>
12668             Paul Eggert  <eggert@cs.ucla.edu>
12669
12670         * m4/argp: Depend on alloca.
12671
12672 2004-05-17  Derek R. Price  <derek@ximbiot.com>
12673             Paul Eggert  <eggert@cs.ucla.edu>
12674
12675         * lib/argp-help.c, argp-parse.c: Assume <alloca.h> rather than freecoding.
12676
12677 2004-05-17  Bruno Haible  <bruno@clisp.org>
12678
12679         * lib/vasnprintf.c (VASNPRINTF): Correctly handle the case of a precision
12680         that consists of a '.' followed by an empty digit string.
12681         Patch by Tor Lillqvist <tml@iki.fi>.
12682
12683 2004-05-16  Paul Eggert  <eggert@cs.ucla.edu>
12684
12685         * m4/alloca.m4 (gl_FUNC_ALLOCA): Define HAVE_ALLOCA_H always,
12686         for backward compatibility with older code.  We need our own
12687         alloca.h if _AIX is defined.  Define HAVE_ALLOCA if we discover
12688         it under some other name, and our alloca.h will define it.
12689
12690 2004-05-16  Paul Eggert  <eggert@cs.ucla.edu>
12691             Derek Price  <derek@ximbiot.com>
12692
12693         * lib/alloca.c: Include <alloca.h>, to get our interface.
12694         * lib/alloca_.h: Use __alloca on AIX, so that we don't have to
12695         include <alloca.h> first.  Use C89 prototype for alloca; this
12696         requires including <stddef.h> for size_t.  Use extern "C" if C++.
12697         Use #elif for simplicity, since we can assume C89 now.
12698         Don't try to source the system alloca.h since it will not be found
12699         and to prevent recursively including its replacement.
12700         * lib/fnmatch.c: Include <alloca.h> instead of opencoding.
12701         * lib/regex.c: Likewise.
12702
12703 2004-05-16  Derek Price  <derek@ximbiot.com>
12704             Paul Eggert  <eggert@cs.ucla.edu>
12705
12706         getline cleanup.  This changes the getndelim2 API: both order of
12707         arguments, and meaning of delim2 (now uses EOF, not 0, to indicate
12708         no delimiter).
12709
12710         * lib/getline.c: Don't include stddef.h or stdio.h, since our
12711         interface does that.
12712         (getline): Always use getdelim, so that we don't have two
12713         copies of this code.
12714         * lib/getndelim2.c: Include <limits.h>, <inttypes.h>, <stdint.h>
12715         if available.
12716         (PTRDIFF_MAX, SIZE_MAX, SSIZE_MAX): Define if not defined.
12717         (GETNDELIM2_MAXIMUM): New macro.
12718         (getndelim2): Reorder arguments.  delim==EOF now means no delimiter,
12719         instead of the old practice of delim2==0.  All callers changed.
12720         Return -1 on overflow, instead of returning junk.
12721         Do not set *linesize unless allocation succeeds.
12722         * lib/getndelim2.h: Do not include stddef.h; no longer needed, now
12723         that we include sys/types.h.
12724         * lib/getnline.h: Likewise.
12725         * lib/getndelim2.h (GETNLINE_NO_LIMIT): New macro.
12726         (getndelim2): Reorder arguments.
12727         * lib/getnline.c (getnline, getndelim):
12728         Don't discard the NMAX argument.
12729         (getnline): Invoke getndelim, to avoid code duplication.
12730         * lib/getnline.h (GETNLINE_NO_LIMIT): New macro, used instead
12731         of (size_t) -1 by callers of the getnline family.
12732
12733 2004-05-13  Paul Eggert  <eggert@cs.ucla.edu>
12734
12735         * m4/gettime.m4 (gl_GETTIME): Require gl_TIMESPEC.
12736         Check for gettimeofday.
12737         * m4/settime.m4 (gl_SETTIME): Require gl_TIMESPEC.
12738         Check for settimeofday, stime.
12739
12740 2004-05-13  Paul Eggert  <eggert@cs.ucla.edu>
12741
12742         * lib/nanosleep.c (suspended): Change its type from int to
12743         sig_atomic_t volatile.
12744         (first_call): Make it private to rpl_nanosleep, and have it
12745         be zero initially as that's a bit faster.
12746         (my_usleep): Round up fractional times instead of truncating them,
12747         as this is the usual meaning for 'sleep'.
12748
12749         * lib/gettime.c (gettime): Fall back on `time' if `gettimeofday'
12750         doesn't work.
12751         * lib/settime.c: Include <unistd.h>, for stime (on Solaris 8, anyway).
12752         (ENOSYS): Define if not defined.
12753         (settime): Fall back on stime if it exists and settimeofday fails.
12754         But don't bother with fallbacks if a method fails with errno == EPERM.
12755
12756 2004-05-11  Jim Meyering  <jim@meyering.net>
12757
12758         Prior to this change, the save_cwd caller required read access to the
12759         current directory on most systems (ones with the fchdir function).
12760
12761         * lib/save-cwd.c (save_cwd) [HAVE_FCHDIR]: If opening `.' read-only
12762         fails, try write-only, and finally, resort to using xgetcwd.
12763
12764 2004-05-06  Paul Eggert  <eggert@cs.ucla.edu>
12765
12766         * lib/obstack.c, obstack.h: Import changes from libc.
12767
12768 2004-04-28  Bruno Haible  <bruno@clisp.org>
12769
12770         * lib/findprog.c (find_in_path): Treat Cygwin like Windows, since it also
12771         implicitly appends .exe to executables.
12772         * lib/localcharset.c (ISSLASH): Treat Cygwin like Windows, since it now
12773         accepts Windows pathnames.
12774         * lib/pathname.h (ISSLASH, IS_PATH_WITH_DIR, FILESYSTEM_PREFIX_LEN): Treat
12775         Cygwin like Windows, since it now accepts Windows pathnames.
12776         * lib/progreloc.c (ISSLASH, IS_PATH_WITH_DIR, FILESYSTEM_PREFIX_LEN): Treat
12777         Cygwin like Windows, since it now accepts Windows pathnames.
12778         Reported by Derek Robert Price <derek@ximbiot.com>.
12779
12780 2004-04-21  Karl Berry  <karl@gnu.org>
12781
12782         * config/srclist.txt (localcharset.c): break sync.
12783
12784 2004-04-20  Paul Eggert  <eggert@twinsun.com>
12785
12786         * m4/host-os.m4: Add a copyright notice.
12787
12788 2004-04-20  Jim Meyering  <jim@meyering.net>
12789
12790         Change UTILS_ to gl_ in AC_DEFINE'd names.
12791         Change utils_- and jm_-prefixed variables, too.
12792         * m4/mkdir-slash.m4 (gl_FUNC_MKDIR_TRAILING_SLASH): Renamed from
12793         UTILS_FUNC_MKDIR_TRAILING_SLASH.
12794         * m4/mkstemp.m4 (gl_FUNC_MKSTEMP): Renamed from UTILS_FUNC_MKSTEP.
12795
12796         * m4/dirfd.m4 (gl_FUNC_DIRFD): Rename from UTILS_FUNC_DIRFD.
12797         Don't emit trailing blanks.
12798         Also rename jm_-prefixed variables to have gl_ prefix.
12799
12800         * m4/host-os.m4 (gl_HOST_OS): Rename from UTILS_HOST_OS.
12801         Also rename jm_-prefixed variables to have gl_ prefix.
12802
12803         * m4/jm-macros.m4: Reflect the renamings.
12804         * m4/prereq.m4: Likewise.
12805
12806 2004-04-20  Jim Meyering  <jim@meyering.net>
12807
12808         * lib/getndelim2.c (getndelim2): Upon realloc failure, don't leak memory.
12809
12810 2004-04-20  Jim Meyering  <jim@meyering.net>
12811             Bruno Haible  <bruno@clisp.org>
12812
12813         * lib/localcharset.c (get_charset_aliases) [!VMS && !WIN32]: Don't leak
12814         memory when realloc fails.
12815
12816 2004-04-19  Jim Meyering  <jim@meyering.net>
12817
12818         * m4/readutmp.m4 (gl_PREREQ_READUTMP): Require gl_FUNC_FREE,
12819         now that readutmp.c may call `free (0)'.
12820
12821 2004-04-19  Bruno Haible  <bruno@clisp.org>
12822
12823         * m4/mbrtowc.m4: Change jm_ to gl_ in cache variables as well.
12824         * m4/inttypes_h.m4: Likewise.
12825         * m4/stdint_h.m4: Likewise.
12826         * m4/intmax_t.m4: Likewise.
12827         * m4/uintmax_t.m4: Likewise.
12828
12829 2004-04-18  Jim Meyering  <jim@meyering.net>
12830
12831         * m4/prereq.m4: Don't forbid jm_ prefix.
12832
12833         * m4/afs.m4, allocsa.m4, assert.m4, backupfile.m4, bison.m4:
12834         * m4/check-decl.m4, chown.m4, d-ino.m4, d-type.m4, dirname.m4, dos.m4:
12835         * m4/error.m4, fpending.m4, fstypename.m4, fsusage.m4, ftruncate.m4:
12836         * m4/getdate.m4, getgroups.m4, gettext.m4, glibc21.m4, group-member.m4:
12837         * m4/human.m4, intmax.m4, intmax_t.m4, inttostr.m4, inttypes.m4:
12838         * m4/inttypes_h.m4, jm-macros.m4, jm-winsz1.m4, jm-winsz2.m4, lchown.m4:
12839         * m4/lib-check.m4, link-follow.m4, localcharset.m4, longlong.m4:
12840         * m4/ls-mntd-fs.m4, lstat.m4, makepath.m4, mbrtowc.m4, mbswidth.m4:
12841         * m4/memchr.m4, memcmp.m4, mkdtemp.m4, mkstemp.m4, mountlist.m4:
12842         * m4/nanosleep.m4, path-concat.m4, perl.m4, prereq.m4, putenv.m4:
12843         * m4/quotearg.m4, regex.m4, stat.m4, stdint_h.m4, strftime.m4:
12844         * m4/strtoimax.m4, strtoll.m4, strtoull.m4, strtoumax.m4, timespec.m4:
12845         * m4/uintmax_t.m4, ulonglong.m4, unlink-busy.m4, unlocked-io.m4:
12846         * m4/uptime.m4, utimbuf.m4, utime.m4, utimes-null.m4, vasnprintf.m4:
12847         * m4/xstrtoimax.m4, xstrtol.m4, xstrtoumax.m4:
12848         Change jm_ to gl_ in AC_DEFINE'd names. Update all uses.
12849
12850 2004-04-18  Jim Meyering  <jim@meyering.net>
12851
12852         * lib/readutmp.c (read_utmp) [UTMP_NAME_FUNCTION]: Upon realloc failure,
12853         don't leak memory and do call END_UTMP_ENT.
12854
12855 2004-04-16  Jim Meyering  <jim@meyering.net>
12856
12857         * m4/prereq.m4 (jm_PREREQ_STAT): Remove macro.  It is specific to
12858         coreutils' stat program.
12859         (gl_PREREQ): Don't require jm_PREREQ_STAT.
12860
12861 2004-04-11  Paul Eggert  <eggert@twinsun.com>
12862
12863         * lib/inttostr.h: Include <limits.h> unconditionally, since we assume C89.
12864         (CHAR_BIT): Remove, since we assume C89.
12865         Include <stdint.h> if available, as per current Autoconf CVS advice.
12866
12867 2004-03-31  Jim Meyering  <jim@meyering.net>
12868
12869         * m4/prereq.m4: Require AC_FUNC_MALLOC, not jm_FUNC_MALLOC.
12870         Require AC_FUNC_REALLOC, not jm_FUNC_REALLOC.
12871         * m4/xalloc.m4: Likewise.
12872
12873 2004-03-30  Paul Eggert  <eggert@twinsun.com>
12874
12875         Merge from coreutils.
12876
12877         * m4/inttostr.m4: New file.
12878         * m4/getdate.m4 (gl_GETDATE): Remove time-related stuff.
12879         Require AM_STDBOOL_H and gl_TIMESPEC instead.
12880         Require gl_CLOCK_TIME.
12881         * m4/clock_time.m4 (gl_CLOCK_TIME): Require AC_GNU_SOURCE.
12882
12883 2004-03-30  Paul Eggert  <eggert@twinsun.com>
12884
12885         * lib/cloexec.h, cloexec.c (set_cloexec_flag): Return int
12886         not bool, to be more consistent with Unix conventions.
12887         Suggested by Bruno Haible.
12888
12889         Merge from coreutils.
12890
12891         * lib/imaxtostr.c, inttostr.c, inttostr.h, offtostr.c, umaxtostr.c:
12892         New files.
12893
12894         * lib/getdate.h: Include stdbool.h, and timespec.h instead of
12895         the usual <time.h> dance.
12896         (get_date): Change signature to support fractional time stamps.
12897         All callers changed.
12898         * lib/getdate.y: Include "getdate.h" first, as we can now
12899         assume C89 and don't need to worry about 'const'.
12900         Similarly, include "unlocked-io.h" near start, not in middle.
12901         Include <limits.h>.
12902         (textint.value): Use long int rather than int.
12903         (textint.digits): Use size_t rather than int.
12904         (BILLION, LOG10_BILLION): New constants.
12905         (parser_control): New member rel_ns.  Members day_ordinal,
12906         time_zone, month, day, hour, minutes, rel_year, rel_month,
12907         rel_day, rel_hour, rel_minutes, rel_seconds
12908         are now long int, not int.  Member seconds is now struct timespec,
12909         not int.  New member timespec_seen.  Members dates_seen, days_seen,
12910         local_zones_seen, rels_seen, times_seen, zones_seen are now size_t,
12911         not int.
12912         (%union.intval): Now long int, not int.
12913         New member timespec.
12914         (tSDECIMAL_NUMBER, tUDECIMAL_NUMBER): New tokens.
12915         (seconds, signed_seconds, unsigned_seconds): New nonterminals.
12916         (spec): Now is a timespec or an item list.
12917         (timespec, items): New nonterminals.
12918         (time, rel, relunit, number, get_date):
12919         Add support for fractional seconds.
12920         (time): Fix bug: seconds weren't cleared in "00:00 +0000" syntax.
12921         (gmtime, localtime, mktime): Remove decls; not needed with C89.
12922         (to_hour): First arg is now long int, not int.
12923         (to_year): Returns long int, not int.
12924         Don't treat year -70 like 70.
12925         (tm_diff): Returns long int, not int.
12926         (lookup_word): Use bool instead of int when appropriate.
12927         (yylex): Use size_t for count, not int.
12928         Detect overflow when parsing large integer constants.
12929         Add support for fractions.
12930         (get_date): Make pointers 'const' if possible.
12931         Use more-portable code to detect integer overflow.
12932         (main) [TEST]: Adjust to above changes.  Test for localtime failure.
12933         Don't use ctime; it's not reliable if the year has >4 digits.
12934
12935         * lib/human.c (humblock): Inspect BLOCKSIZE if BLOCK_SIZE isn't set.
12936         This is for compatibility with BSD.
12937
12938         * lib/timespec.h (ST_TIME_CMP_NS, ST_TIME_CMP): Define.
12939         (ATIME_CMP, CTIME_CMP, MTIME_CMP, TIMESPEC_NS): Likewise.
12940         From coreutils' system.h.
12941
12942         * lib/userspec.c: Don't include "posixver.h".
12943         (parse_user_spec): Fall back on USER.GROUP parsing, regardless
12944         of POSIX version, as POSIX 1003.1-2001 allows that behavior as a
12945         compatible extension.  Simplify code by removing a boolean int
12946         that was always nonzero if a string was nonnull.
12947
12948 2004-03-30  Jim Meyering  <jim@meyering.net>
12949
12950         Merge from coreutils.
12951
12952         Avoid a configure-time warning about sys/ucred.h on OSF V4.0.
12953         * m4/ls-mntd-fs.m4: Test for sys/ucred.h separately, since
12954         on some systems one must include <grp.h> before it.
12955         Reported by Christian Krackowizer.
12956
12957 2004-03-30  Jim Meyering  <jim@meyering.net>
12958
12959         Merge from coreutils.
12960
12961         * lib/mountlist.c [HAVE_SYS_UCRED_H]: Include grp.h before sys/ucred.h.
12962
12963         * lib/readtokens.c (readtoken): Don't leak 64 bytes when reading
12964         an empty input stream.
12965
12966         * lib/readtokens.c: Include <stdbool.h>.
12967         (readtoken): Use `size_t' rather than int/long.
12968         All callers adjusted.
12969         Use `bool' rather than `int' where appropriate.
12970         Use memset rather than an explicit loop.
12971         Use x2nrealloc rather than xrealloc.
12972         Allow the use of `\0' as a delimiter.
12973         (readtokens): Likewise.
12974         * lib/readtokens.h (readtoken, readtokens): Update prototypes.
12975
12976 2004-03-30  Jim Meyering  <jim@meyering.net>
12977
12978         * m4/realloc.m4: Remove file, since now it does no more than
12979         AC_REQUIRE([AC_FUNC_REALLOC]), and that can be done via
12980         the `configure.ac' section of module/realloc.
12981         * m4/malloc.m4: Likewise, but for AC_FUNC_MALLOC.
12982
12983 2004-03-30  Bruno Haible  <bruno@clisp.org>
12984
12985         * lib/getloadavg.c (getloadavg): Don't assume setlocale returns
12986         nonnull.
12987
12988 2004-03-29  Paul Eggert  <eggert@twinsun.com>
12989
12990         Merge changes to getloadavg.c from coreutils and Emacs.
12991
12992         * lib/getloadavg.c [!defined HAVE_SETLOCALE] (setlocale):
12993         Define to an expression, not to the empty string.
12994         Include cloexec.h and xalloc.h.
12995         (getloadavg): Restore LC_NUMERIC locale after setting it temporarily.
12996         Use set_cloexec_flag rather than rolling our own.
12997         * lib/cloexec.c, cloexec.h: New files.
12998
12999 2004-03-29  Paul Eggert  <eggert@twinsun.com>
13000
13001         * m4/cloexec.m4: New file.
13002
13003 2004-03-18  Paul Eggert  <eggert@twinsun.com>
13004
13005         * lib/getopt.h: Sync with libc CVS.
13006
13007 2004-03-18  Paul Eggert  <eggert@twinsun.com>
13008             Bruno Haible  <bruno@clisp.org>
13009
13010         * m4/mbswidth.m4 (gl_MBSWIDTH): Also test whether <wchar.h> declares
13011         mbswidth.
13012
13013 2004-03-18  Paul Eggert  <eggert@twinsun.com>
13014             Bruno Haible  <bruno@clisp.org>
13015
13016         * lib/mbswidth.h: Include <wchar.h> only if HAVE_DECL_MBSWIDTH_IN_WCHAR_H,
13017         not on all platforms that have <wchar.h>.
13018         * lib/mbswidth.c: Include <stdio.h> and <time.h> before <wchar.h>.
13019
13020 2004-03-09  Paul Eggert  <eggert@twinsun.com>
13021
13022         * lib/argp-parse.c, getopt.c, getopt.h, getopt1.c:
13023         Sync with libc CVS.
13024         * lib/getopt_int.h: New file, also synced from libc.
13025
13026 2004-03-09  Paul Eggert  <eggert@twinsun.com>
13027
13028         * config/srclistvars.sh: Add GNUWWWLICENSES for eggert.
13029         * config/srclist.txt: Sync getopt with libc.  Add getopt_int.h.
13030         Bring back getopt.c, getopt.h, getopt1.c.
13031
13032 2004-03-07  Paul Eggert  <eggert@twinsun.com>
13033
13034         * m4/c-stack.m4 (gl_PREREQ_C_STACK): Renamed from jm_PREREQ_C_STACK.
13035         All uses changed.  Check for sa_sigaction member; this fixes
13036         a bug first reported by Jason Andrade in
13037         <http://mail.gnu.org/archive/html/bug-textutils/2003-03/msg00027.html>.
13038
13039 2004-03-07  Paul Eggert  <eggert@twinsun.com>
13040
13041         * lib/c-stack.c (SIGACTION_WORKS): New macro.  Use it instead of long
13042         '#if' expressions.  Unlike the code it replaces, it does not
13043         depend on (defined _SC_PAGESIZE).  However, it does depend on
13044         HAVE_STRUCT_SIGACTION_SA_SIGACTION; this last change fixes a bug
13045         first reported by Jason Andrade in
13046         <http://mail.gnu.org/archive/html/bug-textutils/2003-03/msg00027.html>.
13047
13048 2004-02-25  Simon Josefsson  <jas@extundo.com>
13049
13050         * m4/strdup.m4 (gl_PREREQ_STRDUP): Check whether strdup is declared.
13051
13052 2004-02-25  Simon Josefsson  <jas@extundo.com>
13053
13054         * lib/strdup.h: New file.
13055         * lib/strdup.c: Include it.
13056         * lib/path-concat.c: Include strdup.h. Drop strdup declaration.
13057         * lib/userspec.c: Include strdup.h. Drop strdup declaration.
13058
13059 2004-02-23  Karl Berry  <karl@gnu.org>
13060
13061         * doc/maintain.texi, standards.texi, make-stds.texi: new files
13062         (from fencepost.gnu.org:/gd/gnuorg).
13063
13064 2004-02-23  Karl Berry  <karl@gnu.org>
13065
13066         * config/srclistvars.sh (GNUORG) [karl]: redefine.
13067         * config/srclist.txt: add maintain/standards documents.
13068
13069 2004-02-18  Bruno Haible  <bruno@clisp.org>
13070
13071         * m4/xsize.m4 (gl_XSIZE): Require AC_C_INLINE.
13072         Reported by Derek Robert Price <derek@ximbiot.com>.
13073
13074 2004-02-16  Karl Berry  <karl@gnu.org>
13075
13076         * config/mkinstalldirs, install-sh: update from automake.
13077
13078 2004-02-06  Karl Berry  <karl@gnu.org>
13079
13080         * m4/po.m4: update from gettext 0.14.1.
13081
13082 2004-02-06  Karl Berry  <karl@gnu.org>
13083
13084         * lib/config.charset: update from gettext 0.14.1.
13085
13086 2004-02-05  Paul Eggert  <eggert@twinsun.com>
13087
13088         Add comments and code, prompted by suggestions from Bruno Haible
13089         for sh-quote.
13090         * lib/quotearg.h (quotearg_alloc): New decl.  Improve the comments
13091         describing the enum quoting_style values.
13092         * lib/quotearg.c (quotearg_alloc): New function.
13093         (quotearg_buffer_restyled): Treat lone { and } as special.
13094         Treat = as special.  Work around bug with older shells
13095         that "see" a '\' that is really the 2nd byte of a multibyte char.
13096         Quote empty string with shell_quoting_style.
13097
13098 2004-02-03  Bruno Haible  <bruno@clisp.org>
13099
13100         * m4/pipe.m4: New file, from GNU gettext.
13101
13102 2004-02-03  Bruno Haible  <bruno@clisp.org>
13103
13104         * lib/pipe.h: New file, from GNU gettext.
13105         * lib/pipe.c: New file, from GNU gettext.
13106
13107 2004-01-27  Bruno Haible  <bruno@clisp.org>
13108
13109         * m4/execute.m4: New file, from GNU gettext.
13110
13111 2004-01-27  Bruno Haible  <bruno@clisp.org>
13112
13113         * lib/execute.h: New file, from GNU gettext.
13114         * lib/execute.c: New file, from GNU gettext.
13115         * lib/w32spawn.h: New file, from GNU gettext.
13116
13117 2004-01-24  Paul Eggert  <eggert@twinsun.com>
13118
13119         Merge from diffutils.
13120
13121         * lib/file-type.c (file_type): Add typed memory objects.
13122         * lib/file-type.h (S_TYPEISTMO): New macro.
13123
13124         * lib/c-stack.h (c_stack_action): Remove argv argument.
13125         * lib/c-stack.c (c_stack_action): Likewise.  All uses changed.
13126         (die): Don't calculate message unless segv_action returns.
13127         (get_stack_location, min_address_from_argv, max_address_from_argv,
13128         volatile stack_base, volatile_stack_size): Remove.
13129         (segv_handler): If ! HAVE_XSI_STACK_OVERFLOW_HEURISTIC, assume
13130         that every segmentation violation is a stack overflow.  (Ouch!)
13131         See Debian bug 136249 (still outstanding) for more info about why
13132         HAVE_XSI_STACK_OVERFLOW_HEURISTIC fails on Linux kernels.
13133
13134 2004-01-24  Paul Eggert  <eggert@twinsun.com>
13135
13136         Exit-status fix from coreutils.
13137
13138         Use exit_failure consistently in place of EXIT_FAILURE,
13139         so that program exit statuses are consistent on failure.
13140
13141         * lib/argmatch.c (ARGMATCH_DIE) [! defined ARGMATCH_DIE]:
13142         Include "exitfail.h", and use exit_failure rather than EXIT_FAILURE.
13143         * lib/argmatch.h: Comment fix to match the above.
13144         * lib/obstack.c (obstack_exit_failure) [!defined _LIBC]:
13145         Now a macro referring to exit_failure, instead of a separate
13146         variable.  Include "exitfail.h" to get it.
13147         * lib/xstrtol.h: Include "exitfail.h".
13148         (STRTOL_FATAL_ERROR): Exit with status exit_failure, not 2.
13149
13150         * lib/long-options.c (parse_long_options): Use prototype
13151         for usage function arg.  Pass it EXIT_SUCCESS rather than 0,
13152         for clarity.
13153
13154 2004-01-21  Jim Meyering  <jim@meyering.net>
13155
13156         * lib/mktime.c (__mktime_internal) [!_LIBC]: Define to mktime_internal
13157         so as not to conflict with a different-sized __mktime_internal
13158         function in GNU libc.
13159         * lib/timegm.c (__mktime_internal) [!_LIBC]: Likewise.
13160         Problem building statically-linked `ls' reported by Michael Brunnbauer.
13161
13162 2004-01-20  Karl Berry  <karl@gnu.org>
13163
13164         * config/config.guess: update from config.
13165
13166         * config/srclistvars.sh: GNUWWWLICENSES for karl.
13167
13168 2004-01-20  Bruno Haible  <bruno@clisp.org>
13169
13170         Safer stack allocation.
13171         * lib/setenv.c: Include allocsa.h.
13172         (alloca): Remove fallback definition.
13173         (freea): Remove macro.
13174         (__add_to_environ) [!_LIBC]: Use allocsa instead of alloca. Use freesa
13175         instead of freea.
13176
13177 2004-01-20  Bruno Haible  <bruno@clisp.org>
13178
13179         * m4/eealloc.m4: New file, from GNU gettext.
13180
13181 2004-01-20  Bruno Haible  <bruno@clisp.org>
13182
13183         * m4/allocsa.m4: New file, from GNU gettext.
13184
13185 2004-01-20  Bruno Haible  <bruno@clisp.org>
13186
13187         * lib/xallocsa.h: New file, from GNU gettext.
13188         * lib/xallocsa.c: New file, from GNU gettext.
13189
13190 2004-01-20  Bruno Haible  <bruno@clisp.org>
13191
13192         * lib/wait-process.c: On Windows, include windows.h. Needed on mingw.
13193
13194 2004-01-20  Bruno Haible  <bruno@clisp.org>
13195
13196         * lib/wait-process.c (wait_subprocess): Add ignore_sigpipe argument.
13197         * lib/wait-process.c (wait_subprocess): Likewise. Handle SIGPIPE specially.
13198
13199 2004-01-20  Bruno Haible  <bruno@clisp.org>
13200
13201         * lib/wait-process.c (wait_process): Disable the 2003-10-31 waitid() patch.
13202
13203 2004-01-20  Bruno Haible  <bruno@clisp.org>
13204
13205         * lib/wait-process.c (cleanup_slaves): Use ANSI C declaration.
13206
13207 2004-01-20  Bruno Haible  <bruno@clisp.org>
13208
13209         * lib/eealloc.h: New file.
13210
13211 2004-01-20  Bruno Haible  <bruno@clisp.org>
13212
13213         * lib/binary-io.h: Avoid warnings on Cygwin.
13214
13215 2004-01-20  Bruno Haible  <bruno@clisp.org>
13216
13217         * lib/allocsa.h: New file, from GNU gettext.
13218         * lib/allocsa.c: New file, from GNU gettext.
13219
13220 2004-01-18  Karl Berry  <karl@gnu.org>
13221
13222         * doc/gpl.texi, lgpl.texi: new files.
13223
13224 2004-01-18  Karl Berry  <karl@gnu.org>
13225
13226         * config/srclistvars.sh (GNUWWWLICENSES): new variable.
13227         * config/srclist.txt ({fdl,gpl,lgpl}.text): get from there.
13228
13229 2004-01-15  Paul Eggert  <eggert@twinsun.com>
13230
13231         Merge from coreutils.
13232
13233         * m4/jm-macros.m4 (jm_CHECK_ALL_TYPES): Check for uintptr_t.
13234         * m4/posixver.m4 (gl_POSIXVER): Require gl_DEFAULT_POSIX2_VERSION.
13235         (gl_DEFAULT_POSIX2_VERSION): Move
13236         the documentation from 'configure' into 'config.hin',
13237         so that 'configure --help' isn't burdened by it and
13238         we don't have to worry about its formatting there.
13239         Reword the documentation so that it's more succinct
13240         and can be run together into a single paragraph.
13241         * m4/same.m4 (gl_SAME): Check for pathconf.
13242
13243 2004-01-15  Paul Eggert  <eggert@twinsun.com>
13244
13245         Merge from coreutils.
13246
13247         * lib/posixver.c: Include posixver.h.
13248
13249         * lib/same.c: Include <stdbool.h>, <limits.h>.
13250         (_POSIX_NAME_MAX): Define if not defined.
13251         (MIN): New macro.
13252         (same_name): If file names are silently truncated, report
13253         that the file names are the same if they are the same after
13254         the silent truncation.
13255
13256         * lib/xstrtod.h (xstrtod): Accept an extra arg, specifying the
13257         conversion function.
13258         * lib/xstrtod.c (xstrtod): Likewise.  All callers changed to
13259         include c-strtod.h and use c_strtod.  Don't include stdlib.h; no
13260         longer needed.
13261
13262 2004-01-15  Jim Meyering  <jim@meyering.net>
13263
13264         Merge from coreutils.
13265
13266         * m4/clock_time.m4 (gl_CLOCK_TIME): Don't set LIB_CLOCK_GETTIME
13267         if no library is required.
13268         * m4/jm-macros.m4: Don't require UTILS_SYS_OPEN_MAX.
13269         * m4/jm-macros.m4 (jm_MACROS): Require gl_FUNC_FREE.
13270         * m4/jm-macros.m4 (jm_MACROS): Require autoconf-2.58.
13271         (AC_LANG_SOURCE): Remove definition, now that we require autoconf-2.58.
13272         * m4/jm-macros.m4 (jm_MACROS): Don't require AC_FUNC_FTW.
13273         * m4/lib-check.m4 (jm_LIB_CHECK): Do not set LIB_CRYPT to the
13274         value, $ac_cv_search_crypt, if it's "none required".
13275         * m4/posixver.m4 (gl_DEFAULT_POSIX2_VERSION): New macro.
13276         * m4/prereq.m4 (jm_PREREQ): Require AC_FUNC_GETLOADAVG,
13277         not gl_FUNC_GETLOADAVG.
13278         * m4/prereq.m4 (jm_PREREQ): Require gl_READTOKENS, gl_MD5, gl_MAKEPATH,
13279         gl_LONG_OPTIONS, and gl_IDCACHE, gl_GETUGROUPS.
13280
13281 2004-01-15  Jim Meyering  <jim@meyering.net>
13282
13283         Merge from coreutils.
13284
13285         * lib/md5.h (rol) [__GNUC__ && __i386__]: Don't use `asm' code.  These
13286         days, gcc-3.x does better all by itself.  Patch from Dean Gaudet:
13287         http://mail.gnu.org/archive/html/bug-coreutils/2003-11/msg00144.html
13288
13289         * lib/posixver.c (DEFAULT_POSIX2_VERSION): Use definition of new,
13290         optional configure-time default.
13291
13292         * lib/version-etc.c (version_etc_copyright): Update copyright date.
13293
13294         * lib/xreadlink.c (xreadlink): Correct outdated comment.
13295
13296 2004-01-15  Alexandre Duret-Lutz  <adl@gnu.org>
13297
13298         Merge from coreutils.
13299
13300         * m4/nanosleep.m4 (jm_FUNC_NANOSLEEP): Do not set LIB_NANOSLEEP to the
13301         value, $ac_cv_search_nanosleep, if it's "none required".
13302
13303 2004-01-14  Paul Eggert  <eggert@twinsun.com>
13304
13305         * lib/fnmatch_loop.c (ALLOCA_LIMIT): Remove macro, which collided
13306         with like-named macro in fnmatch.c.
13307         (EXT): Use an internal constant instead.
13308
13309         Merge fnmatch patches from glibc.
13310         * lib/fnmatch.c (mbsinit): Remove define.
13311         Add libc_hidden_ver (__fnmatch, fnmatch).
13312         * lib/fnmatch_loop.c (FCT): Cast to int32_t and UCHAR when appropriate.
13313         Adjust to renaming of collseq_table_lookup to __collseq_table_lookup.
13314
13315 2004-01-14  Karl Berry  <karl@gnu.org>
13316
13317         * config/install-sh: update from automake.
13318
13319 2004-01-13  Karl Berry  <karl@gnu.org>
13320
13321         * config/install-sh: update from automake.
13322
13323 2004-01-09  Karl Berry  <karl@gnu.org>
13324
13325         * config/install-sh: update from automake.
13326
13327 2004-01-05  Karl Berry  <karl@gnu.org>
13328
13329         * config/config.{sub,guess}: update from config.
13330
13331 2003-12-31  Karl Berry  <karl@gnu.org>
13332
13333         * config/depcomp: update from automake.
13334
13335 2003-12-14  Karl Berry  <karl@gnu.org>
13336
13337         * lib/config.charset: update from gettext-runtime.
13338
13339 2003-12-03  Paul Eggert  <eggert@twinsun.com>
13340
13341         * lib/getgroups.c (getgroups): xmalloc takes one argument, not two.
13342         Bug reported by Alfred M. Szmidt.
13343
13344 2003-12-03  Bruno Haible  <bruno@clisp.org>
13345
13346         * m4/gettext.m4: Upgrade from gettext-0.13.
13347         * m4/po.m4: Upgrade from gettext-0.13.
13348         * m4/size_max.m4 (gl_SIZE_MAX): Don't use the _ONCE macros here.
13349         * m4/intmax.m4: New file, from gettext-0.13.
13350         * m4/printf-posix.m4: New file, from gettext-0.13.
13351
13352 2003-11-29  Karl Berry  <karl@gnu.org>
13353
13354         * lib/argp-{help.c,parse.c,namefrob.h}, argp.h: update from libc.
13355
13356 2003-11-25  Paul Eggert  <eggert@twinsun.com>
13357             Bruno Haible  <bruno@clisp.org>
13358
13359         * lib/printf-parse.h: Don't include sys/types.h.
13360         (ARG_NONE): New macro.
13361         (char_directive): Change type of *arg_index fields to size_t.
13362         * lib/printf-parse.c: Don't include sys/types.h.
13363         (SSIZE_MAX): Remove macro.
13364         (PRINTF_PARSE): Change the type of the arg_index variables to size_t.
13365         Remove unnecessary overflow check.
13366         * lib/vasnprintf.c (VASNPRINTF): Update for type change of *arg_index
13367         fields.
13368
13369 2003-11-25  Bruno Haible  <bruno@clisp.org>
13370
13371         * modules/vasnprintf (Files): Remove m4/ssize_t.m4.
13372
13373 2003-11-25  Bruno Haible  <bruno@clisp.org>
13374
13375         * m4/vasnprintf.m4 (gl_PREREQ_PRINTF_PARSE): Don't require
13376         gt_TYPE_SSIZE_T.
13377
13378 2003-11-24  Paul Eggert  <eggert@twinsun.com>
13379
13380         * modules/alloca: Remove dependency on xalloc.
13381
13382 2003-11-24  Paul Eggert  <eggert@twinsun.com>
13383
13384         * lib/alloca.c: Remove dependency on xalloc module.
13385         (xalloc_die): Remove.
13386         (memory_full) [!defined emacs]: New macro.
13387         [!defined emacs]: Don't include xalloc.h.
13388         (alloca): Invoke memory_full, not xalloc_die, if malloc fails or
13389         address arithmetic overflows.  Change datatypes a bit to avoid
13390         unnecessary casts.
13391
13392 2003-11-22  Jim Meyering  <jim@meyering.net>
13393
13394         * lib/xmalloc.c (x2nrealloc_inline): Fix typos in comments: s/size/size_t/.
13395
13396 2003-11-21  Karl Berry  <karl@gnu.org>
13397
13398         * config/config.{sub,guess}: update from config.
13399
13400 2003-11-18  Karl Berry  <karl@gnu.org>
13401
13402         * config/config.{sub,guess}: update from config.
13403
13404         * config/(printf-{parse,args}.[ch]): sync broken, sigh.
13405
13406 2003-11-17  Paul Eggert  <eggert@twinsun.com>
13407
13408         * README: Mention that S+T cannot overflow if S is the size of
13409         an existing object and T is sufficiently small.
13410
13411 2003-11-17  Jim Meyering  <jim@meyering.net>
13412
13413         On systems without utime and without a utimes function capable of
13414         dealing with a NULL struct utimbuf* argument, this utime replacement
13415         could -- in unusual circumstances -- leak a file descriptor.
13416         * lib/utime.c: Include <unistd.h> and <errno.h>.
13417         (utime_null): Be sure to close `fd' and to preserve errno.
13418         Reported by Geoff Collyer via Arnold Robbins.
13419
13420 2003-11-17  Bruno Haible  <bruno@clisp.org>
13421
13422         * modules/vasnprintf (Files): Add m4/ssize_t.m4.
13423         (Depends-on): Add xsize.
13424
13425 2003-11-17  Bruno Haible  <bruno@clisp.org>
13426
13427         * m4/vasnprintf.m4 (gl_PREREQ_PRINTF_PARSE): Require gt_TYPE_SSIZE_T.
13428
13429 2003-11-17  Bruno Haible  <bruno@clisp.org>
13430
13431         * lib/vasnprintf.c (alloca): Remove fallback definition.
13432         (freea): Remove definition.
13433         (VASNPRINTF): Use alloca only for small sizes, say <= 4000 bytes.
13434         Reported by Paul Eggert.
13435
13436 2003-11-16  Paul Eggert  <eggert@twinsun.com>
13437             Bruno Haible  <bruno@clisp.org>
13438
13439         Protect against address arithmetic overflow.
13440         * lib/printf-args.h: Include stddef.h.
13441         (arguments): Change type of field 'count' to size_t.
13442         * lib/printf-args.c (printf_fetchargs): Use size_t instead of
13443         'unsigned int' where appropriate.
13444         * lib/printf-parse.h: Include sys/types.h.
13445         (char_directive): Change type of *arg_index fields to ssize_t.
13446         (char_directives): Change type of fields 'count', max_*_length to
13447         size_t.
13448         * lib/printf-parse.c: Include sys/types.h and xsize.h.
13449         (SSIZE_MAX): Define fallback value.
13450         (PRINTF_PARSE): Use size_t instead of 'unsigned int' and ssize_t
13451         instead of 'int' where appropriate. Check a_allocated, d_allocated
13452         against overflow. Reject %m$ argument numbers > SSIZE_MAX + 1.
13453         * lib/vasnprintf.c: Include xsize.h.
13454         (VASNPRINTF): Use size_t instead of 'unsigned int' where appropriate.
13455         Check alloca, malloc, realloc, ENSURE_ALLOCATION arguments against
13456         overflow. Avoid wraparound when converting a width or precision from
13457         decimal to binary.
13458
13459 2003-11-16  Bruno Haible  <bruno@clisp.org>
13460
13461         Update from GNU gettext.
13462         * lib/printf-parse.c: Generalize to it can be compiled for wide strings.
13463         (PRINTF_PARSE, CHAR_T, DIRECTIVE, DIRECTIVES): New macros.
13464         * lib/vasnprintf.c: Generalize to it can be compiled for wide strings.
13465         (VASNPRINTF, CHAR_T, DIRECTIVE, DIRECTIVES, PRINTF_PARSE, USE_SNPRINTF,
13466         SNPRINTF): New macros.
13467         Don't include <alloca.h> if the file is used inside libintl.
13468         (local_wcslen): New function, for Solaris 2.5.1.
13469         (VASNPRINTF): Use it instead of wcslen.
13470
13471 2003-11-16  Bruno Haible  <bruno@clisp.org>
13472
13473         * lib/xsize.h (xmax): New function.
13474         (xsum, xsum3, xsum4): Declare as "pure" functions.
13475
13476 2003-11-12  Paul Eggert  <eggert@twinsun.com>
13477
13478         * modules/xalloc (Files): Undo latest change, since xalloc.h
13479         no longer needs SIZE_MAX or PTRDIFF_MAX.
13480
13481 2003-11-12  Paul Eggert  <eggert@twinsun.com>
13482
13483         * m4/xalloc.m4 (gl_PREREQ_XALLOC): Do not require gl_SIZE_MAX or
13484         gl_PTRDIFF_MAX.
13485
13486 2003-11-12  Paul Eggert  <eggert@twinsun.com>
13487
13488         * lib/xstrtol.c (__xstrtol): Remove "break" immediately after
13489         "return", to pacify some unknown compiler.  Problem reported
13490         by Joerg Schilling.
13491
13492 2003-11-12  Paul Eggert  <eggert@twinsun.com>
13493
13494         * lib/xalloc.h: Do not include <limits.h> or <stdint.h>.
13495         (xalloc_oversized): Use sizeof (ptrdiff_t) and sizeof (size_t) for
13496         the heuristic, rather than PTRDIFF_MAX and SIZE_MAX.  This
13497         heuristic is just as accurate as far as we know, and it removes a
13498         dependency on size_max.m4 and ptrdiff_max.m4.
13499
13500 2003-11-11  Bruno Haible  <bruno@clisp.org>
13501
13502         * modules/xsize (Files): Add m4/size_max.m4.
13503         * modules/xalloc (Files): Add m4/size_max.m4, m4/ptrdiff_max.m4.
13504
13505 2003-11-11  Bruno Haible  <bruno@clisp.org>
13506
13507         * m4/size_max.m4: New file.
13508         * m4/ptrdiff_max.m4: New file.
13509         * m4/xsize,m4 (gl_XSIZE): Require gl_SIZE_MAX.
13510         * m4/xalloc.m4 (gl_PREREQ_XALLOC): New macro.
13511         (gl_XALLOC): Invoke it.
13512
13513 2003-11-11  Bruno Haible  <bruno@clisp.org>
13514
13515         * lib/xsize.h (SIZE_MAX): Remove fallback definition.
13516         * lib/xalloc.h: Include limits.h. Assume SIZE_MAX and PTRDIFF_MAX are
13517         defined.
13518
13519 2003-11-10  Paul Eggert  <eggert@twinsun.com>
13520
13521         * lib/xalloc.h (xalloc_oversized): [! (defined PTRDIFF_MAX &&
13522         PTRDIFF_MAX < SIZE_MAX)]: Fix off-by-one error that would have
13523         rejected some allocations of exactly SIZE_MAX - 2 bytes.
13524         From Bruno Haible.
13525         [defined PTRDIFF_MAX && PTRDIFF_MAX < SIZE_MAX]: Use SIZE_MAX,
13526         not (size_t) -1, since it's defined here.
13527
13528 2003-11-09  Karl Berry  <karl@gnu.org>
13529
13530         * config/mkinstalldirs, depcomp, mdate-sh: update from automake.
13531
13532 2003-11-06  Paul Eggert  <eggert@twinsun.com>
13533
13534         * lib/xalloc.h [HAVE_STDINT_H]: Include <stdint.h>.
13535         (xalloc_oversized) [! (PTRDIFF_MAX < SIZE_MAX)]:
13536         Reject sizes of exactly SIZE_MAX bytes.
13537         * lib/xreadlink.c: Include "xalloc.h" before checking whether SIZE_MAX
13538         is defined, since "xalloc.h" now defines SIZE_MAX on modern hosts.
13539
13540 2003-11-05  Bruno Haible  <bruno@clisp.org>
13541
13542         * lib/xsize.h: Include limits.h, to avoid a possible collision with
13543         SIZE_MAX defined in <limits.h> on Solaris.
13544
13545 2003-11-04  Jim Meyering  <jim@meyering.net>
13546
13547         * modules/sysexits: Use the `$(VAR)' notation for AC_SUBST'd
13548         variable names, rather than @VAR@.
13549         * modules/poll: Likewise.
13550
13551 2003-11-04  Bruno Haible  <bruno@clisp.org>
13552
13553         * modules/xsize: New file.
13554         * modules/linebreak: Depend on xsize.
13555         * MODULES.html.sh (func_all_modules): Add xsize.
13556
13557 2003-11-04  Bruno Haible  <bruno@clisp.org>
13558
13559         * m4/xsize.m4: New file.
13560
13561 2003-11-04  Bruno Haible  <bruno@clisp.org>
13562
13563         * lib/xsize.h: New file.
13564         * lib/linebreak.c: Include xsize.h.
13565         (mbs_possible_linebreaks, mbs_width_linebreaks): Check malloc()
13566         argument for overflow.
13567         Suggested by Paul Eggert.
13568
13569 2003-11-03  Karl Berry  <karl@gnu.org>
13570
13571         * config/config.{guess,sub}: update from config.
13572
13573 2003-11-03  Jim Meyering  <jim@meyering.net>
13574
13575         * modules/userspec (lib_SOURCES): Add userspec.h.
13576         (Include): Add "userspec.h".
13577         Improve description.
13578
13579 2003-11-03  Jim Meyering  <jim@meyering.net>
13580
13581         * lib/userspec.c: Include "userspec.h".
13582         * lib/userspec.h: New file.
13583
13584 2003-11-03  Bruno Haible  <bruno@clisp.org>
13585
13586         * m4/wait-process.m4 (gl_WAIT_PROCESS): Also check for waitid.
13587
13588 2003-11-03  Bruno Haible  <bruno@clisp.org>
13589
13590         * lib/wait-process.c (wait_process): Use waitid with WNOWAIT if available,
13591         to avoid (extremely rare) race condition.
13592         Suggested by Paul Eggert.
13593
13594 2003-11-02  Karl Berry  <karl@gnu.org>
13595
13596         * config/srclist.txt (vasprintf.c): sync broken, sigh.
13597
13598 2003-10-31  Paul Eggert  <eggert@twinsun.com>
13599
13600         * lib/mountlist.h (struct mount_entry.me_type_malloced): New member.
13601         * lib/mountlist.c (SIZE_MAX): Define if not defined already.
13602         (read_filesystem_list): Set and use me_type_malloced.
13603         Use "sizeof *me" rather than "sizeof (struct mount_entry)" (or
13604         whatever the type happens to be), for brevity and consistency.
13605         Check for size calculation overflow on Alphas running OSF/1.
13606
13607 2003-10-31  Jim Meyering  <jim@meyering.net>
13608
13609         * lib/hash.c: Include "xalloc.h" for use of xalloc_oversized.
13610
13611         * lib/linebuffer.c: Include <string.h> for declaration of memset.
13612
13613 2003-10-30  Paul Eggert  <eggert@twinsun.com>
13614             Bruno Haible  <bruno@clisp.org>
13615
13616         * lib/vasprintf.c: Include <limits.h>, <stdlib.h>.
13617         (vasprintf): Fail if the resulting length doesn't fit in an 'int'.
13618
13619 2003-10-30  Paul Eggert  <eggert@cs.ucla.edu>
13620
13621         * m4/host-os.m4 (UTILS_HOST_OS): Change netbsd*-gnu pattern back to
13622         netbsd*-gnu*.  Suggested by Robert Millan.
13623
13624 2003-10-29  Paul Eggert  <eggert@twinsun.com>
13625
13626         * modules/group-member: Depend on stdbool.
13627
13628 2003-10-29  Paul Eggert  <eggert@twinsun.com>
13629
13630         * m4/xalloc.m4 (gl_XALLOC): Undo previous change.
13631
13632 2003-10-29  Paul Eggert  <eggert@twinsun.com>
13633
13634         * m4/host-os.m4 (UTILS_HOST_OS): Resurrect netbsd*-gnu.  Add comments
13635         to it, and to knetbsd*-gnu and kfreebsd*-gnu.  Remove the '*' from
13636         after the 'gnu' in these cases.  This fixes some bugs in the
13637         previous change, and is based on suggestions by Robert Millan.
13638
13639 2003-10-29  Paul Eggert  <eggert@twinsun.com>
13640
13641         * lib/xalloc.h (xalloc_oversized): Now a macro, not a function,
13642         so that it works even if SIZE_MAX < N.  Do not include <stdbool.h>;
13643         no longer needed.
13644         * lib/quotearg.c (quotearg_n_options): Use it.
13645         * lib/group-member.c: Include <stdbool.h>.
13646         (free_group_info): Arg is now const *; don't free arg.
13647         (get_group_info): Now returns bool and accepts struct group_info *,
13648         rather than returning a malloc'ed struct group_info *.
13649         All uses changed.  Check for overflow in internal size calculation.
13650
13651         * lib/getusershell.c (readname): Simplify the code by using x2nrealloc
13652         rather than xmalloc/xrealloc.
13653         * lib/linebuffer.c (initbuffer, readlinebuffer): Simplify the code by
13654         using x2realloc rather than xmalloc/xrealloc.  Also, fix a C
13655         conformance bug: the old code used a pointer after freeing the
13656         storage that it addressed.
13657         * lib/hash.c (hash_initialize): Simplify the code by using xalloc_oversized
13658         rather than doing it by hand.
13659         * lib/getgroups.c (getgroups): Don't use xrealloc, since we don't need
13660         the buffer preserved.  Use free and xmalloc instead.
13661         * lib/quotearg.c (quotearg_n_options): Likewise.
13662         Use a simpler test for size overflow.  Don't use xalloc_oversized
13663         because unsigned int might be wider than size_t (!); this suggests
13664         that we should switch from unsigned int to size_t for slot numbers.
13665
13666 2003-10-28  Paul Eggert  <eggert@twinsun.com>
13667
13668         * m4/host-os.m4 (UTILS_HOST_OS): Identify GNU/KFreeBSD and
13669         GNU/KNetBSD.  These implementations use glibc atop the FreeBSD and
13670         NetBSD kernels.  Requested by Richard Stallman.
13671
13672 2003-10-27  Paul Eggert  <eggert@twinsun.com>
13673
13674         * lib/exclude.c (new_exclude): Use xzalloc rather than xmalloc
13675         to allocate the returned structure.  Do not allocate a subarray,
13676         as x2nrealloc will do that.
13677         (add_exclude): Use x2nrealloc to reallocate ex->exclude,
13678         instead of xnrealloc.
13679         (add_exclude_file): Use x2realloc instead of malloc + xnrealloc.
13680
13681 2003-10-27  Bruno Haible  <bruno@clisp.org>
13682
13683         * lib/stdbool_.h: Better support for BeOS.
13684
13685 2003-10-26  Paul Eggert  <eggert@twinsun.com>
13686
13687         * m4/xalloc.m4 (gl_XALLOC): Requore AC_C_INLINE, since xalloc.h
13688         now uses inline.
13689
13690 2003-10-26  Paul Eggert  <eggert@twinsun.com>
13691
13692         * lib/xalloc.h (xalloc_oversized): New static inline function, for
13693         callers that want to do their own size-overflow checking.  Include
13694         <stdbool.h>, since xalloc_oversized returns bool.
13695         * lib/xalloc.c (array_size_overflow): Remove.  All callers changed
13696         to use xalloc_oversized.
13697
13698         Add two functions x2realloc, x2nrealloc, for programs that grow
13699         arrays dynamically by doubling their sizes.
13700         * lib/xalloc.h (x2realloc, x2nrealloc): New decls.
13701         * lib/xmalloc.c (x2nrealloc_inline, x2nrealloc, x2realloc):
13702         New functions.
13703
13704         Port to C99 semantics for 'inline' of external functions.
13705         Bug reported by Bruno Haible.
13706         * lib/xmalloc.c (xnmalloc_inline): New static inline function,
13707         with the old contents of xnmalloc.
13708         (xnmalloc, xmalloc): Use it.
13709         (xnrealloc_inline): New static inline function,
13710         with the old contents of xnrealloc.
13711         (xnrealloc, xrealloc): Use it.
13712
13713         * lib/alloc.c (alloca): xmalloc cannot return NULL, so don't test for that.
13714
13715 2003-10-26  Karl Berry  <karl@gnu.org>
13716
13717         * config/srclist.txt (COPYING.DOC): no longer available from
13718         /gd/gnuorg; don't know where the ultimate source is.
13719
13720 2003-10-25  Paul Eggert  <eggert@twinsun.com>
13721
13722         Fix several address-calculation bugs in the hash modules,
13723         plus some minor code cleanup.
13724
13725         * lib/hash.h: Include <stdbool.h>, for bool.
13726         * lib/hash.c: Don't include <stdbool.h>, since hash.h does it now.
13727         * lib/hash.h (Hash_hasher, hash_get_n_buckets, hash_get_n_buckets_used,
13728         hash_get_n_entries, hash_get_max_bucket_length,
13729         hash_get_entries, hash_do_for_each, hash_string, hash_initialize,
13730         hash_rehash): Use size_t rather than unsigned.
13731         * lib/hash.c (struct hash_table, hash_get_n_buckets,
13732         hash_get_n_buckets_used, hash_get_n_entries,
13733         hash_get_max_bucket_length, hash_table_ok, hash_print_statistics,
13734         hash_get_entries, hash_do_for_each, hash_string, is_prime,
13735         next_prime, hash_initialize, hash_rehash, hash_delete, hash_print):
13736         Likewise.
13737         (SIZE_MAX): Define if not defined.
13738         (hash_get_max_bucket_length, hash_table_ok, hash_lookup,
13739         hash_get_first, hash_get_next, hash_get_entries, hash_do_for_each,
13740         hash_print):
13741         Use const * when possible.
13742         (hash_string): Use (unsigned char) *P rather than *(unsigned char *) P.
13743         (check_tuning): Fix bug: if tuning parameters were very close to
13744         0 or 1, rounding errors could have caused subscript violations.
13745         (hash_initialize, allocate_entry, hash_print): Remove unnecessary cast.
13746         (hash_initialize): Add 'fail:' label
13747         to free table and return NULL, and use it to simplify code.
13748         Use calloc rather than clearing the storage ourself.
13749         (hash_initialize, hash_rehash): Check for arithmetic overflow in
13750         buffer size calculations.
13751         * lib/hash-pjw.h (hash_pjw): Use size_t, not unsigned.
13752         Include <stddef.h>, for size_t.
13753         * lib/hash-pjw.c (hash_pjw): Likewise.
13754         Switch to method described by Bruno Haible.
13755         Include <limits.h>, for CHAR_BIT.
13756         (SIZE_BITS): New macro.
13757
13758 2003-10-23  Paul Eggert  <eggert@twinsun.com>
13759
13760         * m4/getline.m4 (AM_FUNC_GETLINE):
13761         Don't include getndelim2.o twice into LIBOBJS; this breaks on some
13762         hosts.  Problem reported by Derek Robert Price in
13763         <http://mail.gnu.org/archive/html/bug-gnulib/2003-10/msg00092.html>.
13764         This patch can be withdrawn after Autoconf 2.58 is required for gnulib.
13765         * m4/getndelim2.m4 (gl_GETNDELIM2): Likewise.
13766
13767 2003-10-21  Paul Eggert  <eggert@twinsun.com>
13768
13769         * lib/getndelim2.c (getndelim2): When size calculation overflows,
13770         ceiling the allocation at NMAX bytes rather than silently
13771         discarding input bytes before NMAX is reached.  This makes
13772         a difference only if NMAX exceeds SIZE_MAX / 2.
13773
13774         * lib/obstack.c: Merge from glibc.
13775         [defined _LIBC]: Include <obstack.h>, not "obstack.h".
13776         Add libc_hidden_def (_obstack_newchunk).
13777         (_obstack_free) [! defined _LIBC]: Remove.
13778         [defined _LIBC]: Make a strong alias from obstack_free, rather than
13779         a clone of the function body.
13780         (fputs) [defined _LIBC && defined USE_IN_LIBIO]: Remove.
13781         [defined _LIBC && !defined USE_IN_LIBIO]: Include <libio/iolibio.h>.
13782
13783         * lib/obstack.h: Indenting cleanup, to make it easier to merge with glibc.
13784         (obstack_grow, obstack_grow0): Remove unnecessary parentheses around
13785         arg to memcpy.
13786
13787         * lib/obstack.h (obstack_1grow_fast): Properly parenthesize arg.
13788         (obstack_ptr_grow_fast, obstack_int_grow_fast):
13789         Don't use lvalue casts, as GCC plans to remove support for them
13790         in GCC 3.5.  Reported by Joseph S. Myers.  This bug
13791         was also present in the non-GCC version, indicating that this
13792         code had always been buggy and had never been widely used.
13793         (obstack_1grow, obstack_ptr_grow, obstack_int_grow, obstack_blank):
13794         Use the fast variant of each macro, rather than copying the
13795         definiens of the fast variant; that way, we'll be more likely to
13796         catch future bugs in the fast variants.
13797
13798 2003-10-20  Bruno Haible  <bruno@clisp.org>
13799
13800         * modules/wait-process: New file.
13801         * MODULES.html.sh (func_all_modules): Add wait-process.
13802
13803 2003-10-20  Bruno Haible  <bruno@clisp.org>
13804
13805         * m4/wait-process.m4: New file.
13806
13807 2003-10-20  Bruno Haible  <bruno@clisp.org>
13808
13809         * lib/wait-process.h: New file, from GNU gettext.
13810         * lib/wait-process.c: New file, from GNU gettext.
13811
13812 2003-10-19  Jim Meyering  <jim@meyering.net>
13813
13814         * lib/vasnprintf.c (vasnprintf): Work around losing snprintf on HPUX 10.20.
13815
13816 2003-10-18  Karl Berry  <karl@gnu.org>
13817
13818         * config/config.guess: update from config.
13819
13820 2003-10-16  Paul Eggert  <eggert@twinsun.com>
13821
13822         * lib/getgroups.c: Include <errno.h>, <stdlib.h>.
13823         (getgroups): First arg is int, not size_t.
13824         Don't let 'free' mangle errno.
13825
13826 2003-10-16  Paul Eggert  <eggert@twinsun.com>
13827
13828         * README: Mention that gnulib assumes that (foo *) NULL + 0 == NULL.
13829
13830 2003-10-16  Karl Berry  <karl@gnu.org>
13831
13832         * config/config.{guess,sub}: update from config.
13833
13834 2003-10-16  Jim Meyering  <jim@meyering.net>
13835
13836         * lib/xmalloc.c: Include <string.h>, for declarations of memset and memcpy.
13837
13838 2003-10-15  Paul Eggert  <eggert@twinsun.com>
13839
13840         * lib/exclude.c: Do not include <inttypes.h> or <stdint.h>.
13841         (SIZE_MAX): Remove.
13842         (new_exclude, add_exclude_file): Initial size no longer needs to
13843         be a power of 2.
13844         (add_exclude, add_exclude_file): Use xnrealloc instead of rolling
13845         our own address arithmetic overflow checking.
13846
13847         * lib/fnmatch.c (SIZE_MAX): Define if standard headers don't.
13848         (fnmatch): Do not alloca more than 2000 wide characters;
13849         instead, use malloc for large buffers.
13850         Check for address arithmetic overflow, and return -1
13851         with errno set to ENOMEM in that case.
13852         * lib/fnmatch_loop.c (ALLOCA_LIMIT): New macro.
13853         (NEW_PATTERN): Do not alloca more than 8000 bytes;
13854         instead, return -1.  Check for address arithmetic overflow.
13855
13856 2003-10-14  Paul Eggert  <eggert@twinsun.com>
13857
13858         Handle invalid suffixes and overflow independently, so that
13859         callers can treat them independently as needed.  Fix some bugs in
13860         suffix handling, e.g., "100k@" was not diagnosed as an invalid
13861         suffix for a human-readable blocksize.  The major caller-visible
13862         change is the addition of a new
13863         LONGINT_INVALID_SUFFIX_CHAR_WITH_OVERFLOW enum value, indicating
13864         that both overflow and suffix chars were found.
13865
13866         * lib/human.c (humblock): Don't check separately for invalid suffix
13867         char; that is xstrtoumax's job (now that its bug is fixed).
13868         * lib/xstrtoimax.c (STRTOL_T_MINIMUM, STRTOL_T_MAXIMUM) [defined
13869         INTMAX_MAX]: New macros.
13870         * lib/xstrtol.c (STRTOL_T_MINIMUM, STRTOL_T_MAXIMUM, TYPE_MINIMUM,
13871         TYPE_MAXIMUM): New macros.
13872         (bkm_scale, bkm_scale_by_power): Return strtol_error, not int.
13873         (bkm_scale, bkm_scale_by_power, __xstrtol): Return maximal values
13874         if overflow occurs, as it's what __strtol does and it's more useful
13875         in practice.
13876         (__xstrtol): If __strtol reports some error other than ERANGE,
13877         reflect it to the caller as LONGINT_INVALID.  If it reports
13878         ERANGE, continue the rest of parsing, and report LONGINT_OVERFLOW
13879         | LONGINT_INVALID_SUFFIX_CHAR if both errors occur.
13880         * lib/xstrtol.h (LONGINT_INVALID_SUFFIX_CHAR_WITH_OVERFLOW): New enum
13881         value.
13882         (_STRTOL_ERROR): Handle it.  Abort when given unknown error codes.
13883         * lib/xstrtoul.c (STRTOL_T_MINIMUM, STRTOL_T_MAXIMUM): New macros.
13884         * lib/xstrtoumax.c (STRTOL_T_MINIMUM, STRTOL_T_MAXIMUM)
13885         [defined UINTMAX_MAX]: New macros.
13886
13887 2003-10-14  Bruno Haible  <bruno@clisp.org>
13888
13889         * modules/fatal-signal: Add m4/sig_atomic_t.m4 to file list.
13890
13891 2003-10-14  Bruno Haible  <bruno@clisp.org>
13892
13893         * m4/sig_atomic_t: New file, from GNU gettext.
13894         * m4/fatal-signal.m4 (gl_FATAL_SIGNAL): Require gt_TYPE_SIG_ATOMIC_T.
13895
13896 2003-10-14  Bruno Haible  <bruno@clisp.org>
13897
13898         * lib/fatal-signal.h: Improved comments. Suggested by Paul Eggert.
13899         * lib/fatal-signal.c: Use sig_atomic_t. Suggested by Paul Eggert.
13900         Also use volatile where needed.
13901
13902 2003-10-12  Paul Eggert  <eggert@twinsun.com>
13903
13904         * modules/xalloc: Do not depend on 'exit'.  Depend on 'stdbool'.
13905         Change maintainer from Bruno Haible to 'all'.
13906
13907 2003-10-12  Paul Eggert  <eggert@twinsun.com>
13908
13909         * m4/xalloc.m4 (gl_PREREQ_XMALLOC): Require AC_C_INLINE.
13910
13911 2003-10-12  Paul Eggert  <eggert@twinsun.com>
13912
13913         * lib/xalloc.h (xnmalloc, xzalloc, xnrealloc, xclone): New decls.
13914         (XMALLOC, XCALLOC, XREALLOC, XFREE, CCLONE, CLONE): Deprecate,
13915         and define in terms of the other primitives.
13916         * lib/xmalloc.c: Include stdbool.h; do not include exit.h.
13917         (SIZE_MAX): Define if not already defined.
13918         (array_size_overflow): New function.
13919         (xalloc_die): Abort instead of exiting if 'error' returns.
13920         (xnmalloc, xnrealloc, xzalloc, xclone): New functions.
13921         (xmalloc, xrealloc): Use them.
13922         (xcalloc): Check for address arithmetic overflow.
13923         * lib/xstrdup.c (xstrdup): Use xclone, since memcpy should be
13924         a bit faster than strcpy.
13925
13926 2003-10-10  Simon Josefsson  <jas@extundo.com>
13927
13928         * modules/argp (Depends-on): Add restrict and strcase.
13929
13930 2003-10-10  Simon Josefsson  <jas@extundo.com>
13931
13932         * m4/argp.m4: Add AC_C_INLINE.
13933
13934 2003-10-08  Paul Eggert  <eggert@twinsun.com>
13935
13936         Merge getpass from libc, plus a few fixes.
13937
13938         * lib/getpass.c (HAVE_STDIO_EXT) [_LIBC]: Define to 1.
13939         Include <stdbool.h>.
13940         Include <stdio_ext.h> if HAVE_STDIO_H, otherwise define
13941         __fsetlocking to empty.
13942         [_LIBC]: Do not include "getline.h" or "unlocked-io.h", but
13943         do include <bits/libc-lock.h>.
13944         Do not include <fcntl.h>; not needed.
13945         [_LIBC]: Include <wchar.h>.
13946         (NOTCANCEL_MODE): New macro.
13947         (flockfile, funlockfile) [_LIBC]: New macros.
13948         (__libc_cleanup_push, __libc_cleanup_pop, __getline, __tcgetattr)
13949         [!_LIBC]: New macros.
13950         (call_fclose): New function.
13951         (getpass): Use it.  Save tty stream separately; this simplifies the
13952         code and makes it more reliable if stdin happens to equal stdout.
13953         Invoke __fsetlocking on tty.
13954         Handle thread cancellation if needed.
13955         Namespace cleanup (use __tcgetattr, __getline).
13956         Use bool for Booleans.
13957         [USE_IN_LIBIO]: Handle wide streams.
13958         [!_LIBC]: Unconditionally do the fseek, since we don't know what
13959         stream might go where.
13960
13961         * lib/unlocked-io.h: Include <stdio.h>, so that the caller
13962         doesn't have to include <stdio.h> before us.
13963         (clearerr_unlocked, feof_unlocked, ferror_unlocked,
13964         fflush_unlocked, fgets_unlocked, fputc_unlocked, fputs_unlocked,
13965         fread_unlocked, fwrite_unlocked, getc_unlocked, getchar_unlocked,
13966         putc_unlocked, putchar_unlocked): Define to the unlocked counterpart
13967         if not declared, so that we can use getpass.c code from libc without
13968         rewriting it.
13969         (flockfile, ftrylockfile, funlockfile): New macros.
13970
13971 2003-10-08  Paul Eggert  <eggert@twinsun.com>
13972
13973         * modules/getpass: Depend on stdbool.
13974
13975 2003-10-08  Paul Eggert  <eggert@twinsun.com>
13976
13977         * m4/getpass.m4 (gl_PREREQ_GETPASS): Check for stdio_ext.h.
13978
13979 2003-10-07  Karl Berry  <karl@gnu.org>
13980
13981         * config/config.{guess,sub}: update from config.
13982
13983 2003-10-06  Jim Meyering  <jim@meyering.net>
13984             Bruno Haible  <bruno@clisp.org>
13985
13986         This lets translators provide better translations for the
13987         "Written by ..." part of --version output.
13988         * lib/version-etc.h: Include stdarg.h.
13989         (version_etc_copyright): Declare as readonly.
13990         (version_etc): Make this function variadic with a NULL-terminated list
13991         of author name strings.
13992         (version_etc_va): New declaration.
13993         * lib/version-etc.c: Include stdarg.h, stdlib.h.
13994         (version_etc_copyright): Declare as readonly.
13995         (version_etc_va): New function. Provide a different translatable string
13996         for each possible number of authors < 10. Abbreviate when there are 10
13997         authors or more.
13998         (version_etc): Make this function variadic. Call version_etc_va.
13999         Suggestion from Gary V. Vaughan.
14000
14001         * lib/long-options.h (parse_long_options): Change prototype: the authors
14002         string is moved to the end and becomes variadic.
14003         * lib/long-options.c: Include stdarg.h.
14004         (parse_long_options): Make this function variadic, too.
14005         Call version_etc_va, not version_etc.
14006
14007 2003-10-06  Bruno Haible  <bruno@clisp.org>
14008
14009         * modules/version-etc-2: Remove file.
14010         * MODULES.html.sh (func_all_modules): Remove version-etc-2.
14011
14012 2003-10-06  Bruno Haible  <bruno@clisp.org>
14013
14014         * modules/fatal-signal: New file.
14015         * MODULES.html.sh (func_all_modules): Add fatal-signal.
14016
14017 2003-10-06  Bruno Haible  <bruno@clisp.org>
14018
14019         * m4/fatal-signal.m4: New file.
14020         * m4/signalblocking.m4: New file, from GNU gettext.
14021
14022 2003-10-06  Bruno Haible  <bruno@clisp.org>
14023
14024         * lib/version-etc-2.h: Remove file.
14025         * lib/version-etc-2.c: Remove file.
14026
14027 2003-10-06  Bruno Haible  <bruno@clisp.org>
14028
14029         * lib/fatal-signal.h: New file, from GNU gettext.
14030         * lib/fatal-signal.c: New file, from GNU gettext.
14031
14032 2003-10-05  Paul Eggert  <eggert@twinsun.com>
14033
14034         * README: Rework advice for preventing empty .o files.
14035         Don't recommend ELIDE constructs.  Recommend <stddef.h>,
14036         not <sys/types.h>.
14037
14038 2003-10-04  Karl Berry  <karl@gnu.org>
14039
14040         * lib/argp*: update from libc.
14041
14042 2003-10-04  Karl Berry  <karl@gnu.org>
14043
14044         * config/config.{guess,sub}: update from config.
14045
14046 2003-10-02  Bruno Haible  <bruno@clisp.org>
14047
14048         * modules/lchown (Include): Add lchown.h.
14049         * modules/time_r (Include): Use "..." syntax.
14050         * modules/xgetdomainname (Include): Add xgetdomainname.h.
14051
14052 2003-10-01  Simon Josefsson  <jas@extundo.com>
14053
14054         * MODULES.html.sh (func_all_modules): Move gethostname from section
14055         'based on' to section 'lacking' POSIX:2001.
14056
14057 2003-10-01  Larry Jones  <lawrence.jones@eds.com>
14058
14059         * lib/getpass.c (getpass): Use a no-op fseek when switching from input to
14060         output mode on the same stream.
14061
14062 2003-09-29  Paul Eggert  <eggert@twinsun.com>
14063
14064         * lib/strftime.c (tm_diff) [! HAVE_TM_GMTOFF]:
14065         Fix arg typo in previous patch.
14066
14067 2003-09-28  Jim Meyering  <jim@meyering.net>
14068
14069         * lib/error.c: Correct cpp indentation.
14070
14071 2003-09-27  Paul Eggert  <eggert@twinsun.com>
14072
14073         * modules/free: New file.
14074
14075 2003-09-27  Paul Eggert  <eggert@twinsun.com>
14076
14077         * m4/free.m4: New file.
14078
14079 2003-09-27  Paul Eggert  <eggert@twinsun.com>
14080
14081         * lib/minmax.h (MIN, MAX) [__STDC__ && defined __GNUC__ && __GNUC__ >= 2]:
14082         Omit the special code that used __typeof__, since we worry that
14083         it could be more trouble than it's worth.  See:
14084         http://mail.gnu.org/archive/html/bug-gnulib/2003-01/msg00090.html
14085         http://mail.gnu.org/archive/html/bug-gnulib/2003-01/msg00095.html
14086
14087         * lib/free.c: New file.
14088
14089 2003-09-27  Oskar Liljeblad  <oskar@osk.mine.nu>
14090
14091         Trivial fixes to Makefile.am parts of module listings.
14092         * modules/strstr: Append strstr.h to lib_SOURCES.
14093         * modules/strcase: Likewise, for strcase.h.
14094
14095 2003-09-27  Karl Berry  <karl@gnu.org>
14096
14097         * config/mkinstalldirs: update from automake.
14098
14099 2003-09-26  Paul Eggert  <eggert@twinsun.com>
14100
14101         * lib/error.c (SIZE_MAX) [!defined SIZE_MAX]: Define.
14102         (error_tail): Do not loop, reallocating temporary buffer, since
14103         the output cannot contain more wide characters than the input
14104         contains bytes, the size must be big enough already.  This avoids
14105         one potential size overflow calculation.  Check for size overflow
14106         when calculating temporary buffer size.  Free temporary buffer
14107         when done, if it was allocated with malloc; this plugs a memory
14108         leak.  Remove casts from void * to pointers, that are no longer
14109         needed now that we're assuming C89 or better.
14110
14111         Merge error changes from glibc.
14112
14113         * lib/error.c, error.h: Update copyright notice header to match glibc.
14114         * lib/error.c [defined _LIBC]: Include <errno.h>, <bits/libc-lock.h>.
14115         (error, error_at_line) [defined _LIBC && defined __libc_ptf_call]:
14116         Disable cancellation while printing error.
14117         * lib/error.h: Prepend __ to parameter names.
14118
14119 2003-09-26  Jim Meyering  <jim@meyering.net>
14120
14121         * lib/error.c (error_tail): Move some declarations
14122         into inner scope where the local variables are used.
14123
14124 2003-09-26  Bruno Haible  <bruno@clisp.org>
14125
14126         * m4/stpncpy.m4 (gl_FUNC_STPNCPY): Add comments about the AIX stpncpy().
14127         Don't define stpncpy through config.h; it's now done through stpncpy.h.
14128
14129 2003-09-26  Bruno Haible  <bruno@clisp.org>
14130
14131         * lib/stpncpy.h (gnu_stpncpy): New declaration.
14132         (stpncpy): Define as alias for gnu_stpncpy.
14133         * lib/stpncpy.c [!_LIBC]: Define gnu_stpncpy, not stpncpy.
14134
14135 2003-09-25  Simon Josefsson  <jas@extundo.com>
14136
14137         * lib/xgetdomainname.h: New file.
14138         * lib/xgetdomainname.c: New file.
14139
14140 2003-09-25  Simon Josefsson  <jas@extundo.com>
14141             Bruno Haible  <bruno@clisp.org>
14142
14143         * modules/getdomainname: New file.
14144         * modules/xgetdomainname: New file.
14145         * MODULES.html.sh (func_all_modules): Add getdomainname, xgetdomainname.
14146
14147 2003-09-25  Simon Josefsson  <jas@extundo.com>
14148             Bruno Haible  <bruno@clisp.org>
14149
14150         * m4/getdomainname.m4: New file.
14151
14152 2003-09-25  Simon Josefsson  <jas@extundo.com>
14153             Bruno Haible  <bruno@clisp.org>
14154
14155         * lib/getdomainname.h: New file.
14156         * lib/getdomainname.c: New file.
14157
14158 2003-09-25  Karl Berry  <karl@gnu.org>
14159
14160         * lib/argp-fmtstream.c, argp-help.c: update from libc.
14161
14162 2003-09-25  Karl Berry  <karl@gnu.org>
14163
14164         * config/install-sh: update from automake.
14165
14166 2003-09-25  Bruno Haible  <bruno@clisp.org>
14167
14168         * modules/version-etc-2: New file, from modules/version-etc with
14169         modifications.
14170         * MODULES.html.sh (func_all_modules): Add version-etc-2.
14171
14172 2003-09-25  Bruno Haible  <bruno@clisp.org>
14173
14174         * lib/version-etc-2.h: New file, from version-etc.h with modifications.
14175         * lib/version-etc-2.c: New file, from version-etc.c with modifications.
14176
14177 2003-09-24  Simon Josefsson  <jas@extundo.com>
14178
14179         * modules/xgethostname: Add xgethostname.h.
14180
14181 2003-09-24  Paul Eggert  <eggert@twinsun.com>
14182
14183         * lib/linebuffer.c (freebuffer): Don't free the argument, just
14184         the buffer associated with the argument.  Bug reported by
14185         Simon Josefsson.
14186
14187 2003-09-24  Paul Eggert  <eggert@twinsun.com>
14188
14189         * README: Document assumptions that 'int' is at least 32 bits
14190         wide, that integer arithmetic is 2's complement without overflow,
14191         that there are no holes in integer values, that adding sizes of
14192         two nonoverlapping objects can't overflow, and that all-bits-zero
14193         yields scalar zero.  Fix spelling and capitalization typos.
14194
14195 2003-09-19  Karl Berry  <karl@gnu.org>
14196
14197         * lib/argp.h: update from libc.
14198
14199 2003-09-17  Paul Eggert  <eggert@twinsun.com>
14200
14201         * m4/extensions.m4 (gl_USE_SYSTEM_EXTENSIONS): Call AC_BEFORE first,
14202         to avoid spurious warnings like "AC_RUN_IFELSE was called before
14203         gl_USE_SYSTEM_EXTENSIONS" from autoreconf.
14204
14205 2003-09-17  Paul Eggert  <eggert@twinsun.com>
14206
14207         * gnulib-tool: Use "test -h", not "test -L", for portability
14208         to Solaris 8 /bin/sh.  (This bug is fixed in Solaris 9.)
14209         (tags_regexp): Remove, since \| doesn't conform to POSIX.
14210         (sed_extract_prog): Issue s commands one-by-one, rather than
14211         using \| in one s command.
14212
14213 2003-09-16  Paul Eggert  <eggert@twinsun.com>
14214
14215         * lib/linebuffer.c (readlinebuffer): Return NULL immediately upon
14216         input error, instead of returning NULL the next time we are called
14217         (and therefore losing track of errno).
14218
14219 2003-09-16  Bruno Haible  <bruno@clisp.org>
14220
14221         * gnulib-tool (func_create_testdir): Warn about duplicated
14222         dependencies.
14223
14224 2003-09-15  Paul Eggert  <eggert@twinsun.com>
14225
14226         * modules/argmatch, modules/fatal, modules/obstack,
14227         modules/xalloc, modules/xgethostname: Sort dependencies by
14228         importance, not alphabetically.
14229
14230 2003-09-15  Paul Eggert  <eggert@twinsun.com>
14231
14232         * lib/getndelim2.c (getndelim2): Don't trash errno when a read
14233         fails, so that the caller gets the proper errno.
14234
14235         * lib/readutmp.c (read_utmp): Likewise.
14236         Check for fstat error.  Close stream and free storage
14237         when failing.
14238
14239 2003-09-14  Karl Berry  <karl@gnu.org>
14240
14241         * config/srclist.txt (strdup.c): disable for c89 changes.
14242
14243 2003-09-14  Jim Meyering  <jim@meyering.net>
14244
14245         * lib/getloadavg.c: Correct cpp indentation.
14246         * lib/strdup.c: Likewise.
14247         * lib/vasnprintf.c: Likewise.
14248
14249 2003-09-14  Bruno Haible  <bruno@clisp.org>
14250
14251         * modules/fwriteerror: New file.
14252         * MODULES.html.sh (func_all_modules): Add fwriteerror.
14253
14254 2003-09-14  Bruno Haible  <bruno@clisp.org>
14255
14256         * lib/fwriteerror.h: New file.
14257         * lib/fwriteerror.c: New file.
14258
14259 2003-09-12  Paul Eggert  <eggert@twinsun.com>
14260
14261         * modules/argmatch, modules/exitfail, modules/fatal, modules/obstack,
14262         modules/xgethostname, modules/xalloc: Depend on exit.
14263
14264 2003-09-12  Paul Eggert  <eggert@twinsun.com>
14265
14266         * m4/error.m4: Require AC_FUNC_STRERROR_R rather than invoking it.
14267
14268         * m4/extensions.m4 (gl_USE_SYSTEM_EXTENSIONS): Require AC_AIX
14269         and AC_MINIX, too, so that their extensions are available.
14270
14271         * m4/prereq.m4 (jm_PREREQ_ADDEXT): Remove.  All uses removed.
14272         This macro has been superseded by gl_BACKUPFILE.
14273
14274         More patches to assume C89 or better.
14275
14276         * m4/error.m4 (gl_ERROR): Don't check for vprintf.
14277
14278         * m4/check-decl.m4 (jm_CHECK_DECLS): Include <string.h>, <stdlib.h>
14279         unconditionally.
14280         * m4/closeout.m4 (gl_CLOSEOUT): Don't check for stdlib.h.
14281         * m4/gettimeofday.m4 (AC_FUNC_GETTIMEOFDAY_CLOBBER):
14282         Include <string.h>, <stdlib.h> unconditionally.
14283         * m4/lstat.m4 (gl_PREREQ_LSTAT): Don't check for stdlib.h, free.
14284         * m4/readdir.m4 (GL_FUNC_READDIR): Don't check for string.h.
14285         * m4/readutmp.m4 (gl_PREREQ_READUTMP): Don't check for standard C headers
14286         or for string.h.
14287         * m4/strtoumax.m4 (gl_PREREQ_STRTOUMAX): Don't check for stdlib.h
14288         or strtoul.
14289
14290         * m4/mkstemp.m4 (jm_PREREQ_TEMPNAME): Do not require standard C headers.
14291         * m4/strdup.m4 (gl_PREREQ_STRDUP): Likewise.
14292         * m4/userspec.m4 (gl_USERSPEC): Likewise.
14293         * m4/xalloc.m4 (gl_PREREQ_XMALLOC): Likewise.
14294         * m4/xstrtod.m4 (gl_XSTRTOD): Likewise.
14295         * m4/xstrtol.m4 (gl_PREREQ_XSTRTOL): Likewise.
14296         * m4/strftime.m4 (_jm_STRFTIME_PREREQS): Don't check for limits.h,
14297         memcpy, memset.
14298         (jm_FUNC_GNU_STRFTIME): Don't require standard C headers.
14299         * m4/strtod.m4 (gl_FUNC_STRTOD): Do not check for float.h.
14300         * m4/strtoimax.m4 (gl_PREREQ_STRTOIMAX): Do not check for stdlib.h, strtol.
14301         * m4/strtol.m4 (gl_FUNC_STRTOL): Do not check for limits.h.
14302         * m4/userspec.m4 (gl_USERSPEC): Do not check for string.h.
14303         * m4/xstrtol.m4 (gl_PREREQ_XSTRTOL): Do not check for string.h, strtol,
14304         strtoul.
14305
14306 2003-09-12  Paul Eggert  <eggert@twinsun.com>
14307
14308         * lib/argmatch.c, fatal.c, xgethostname.c, xmalloc.c: Include exit.h.
14309         * lib/obstack.c [!defined _LIBC]: Likewise.
14310         * lib/argmatch.c (EXIT_FAILURE): Remove; now done by exit.h
14311         * lib/exitfail.c, fatal.c, xgethostname.c, xmalloc.c: Likewise.
14312         * lib/exitfail.c: Don't include stdlib.h; no longer needed.
14313
14314         More changes to assume C89 or better.
14315
14316         * lib/error.c (error_tail): Assume vprintf.
14317
14318         * lib/argmatch.c (getenv): Remove decl.
14319         * lib/progreloc.c (get_full_program_name): Define via prototype.
14320         * lib/setenv.c (clearenv): Likewise.
14321         * lib/stpncpy.c: Do not include <string.h> or <sys/types.h>; not
14322         needed.
14323         * lib/strdup.c: Include <stdlib.h>, <string.h> unconditionally.
14324         (malloc, memcpy): Remove decls.
14325         * lib/strftime.c (HAVE_LIMITS_H, STDC_HEADERS) [defined _LIBC]: Remove.
14326         (HAVE_MEMCPY) [defined emacs && !defined HAVE_BCOPY]: Remove.
14327         Include <limits.h>, <stddef.h>, <stdlib.h>, <string.h> unconditionally.
14328         (memcpy): Remove macro.
14329         (MEMCPY) [!defined COMPILE_WIDE]: Define to memcpy unconditionally.
14330         (__P): Remove.  All uses removed.
14331         (PTR): Remove.  All uses changed to void *.
14332         (CHAR_BIT, NULL): Remove.
14333         (spaces, zeros, memset_space, memset_zero)
14334         [!defined memset && !defined HAVE_MEMSET && !defined _LIBC]:
14335         Remove.
14336         (LOCALE_PARAM, LOCALE_PARAM_DECL): Remove.
14337         (memcpy_lowcase, memcpy_uppcase, tm_diff, iso_week_days):
14338         Define with prototype.
14339         Remove now-unnecessary prototype decl.
14340         (extra_args_spec): Assume ANSI C.  All uses changed.
14341         (extra_args_spec_iso): Remove.
14342         (my_strftime, emacs_strftimeu): Define via prototype.
14343         * lib/strtod.c: Include <float.h>, <stdlib.h>, <string.h>
14344         unconditionally.
14345         (DBL_MAX, DBL_MIN, HUGE_VAL, NULL): Remove decls.
14346         * lib/strtoimax.c: Include <stdlib.h> unconditionally.
14347         (strtoul, strtol): Remove decls.
14348         * lib/strtol.c (STDC_HEADERS, HAVE_LIMITS_H, NULL, ULONG_MAX,
14349         LONG_MAX): Remove.
14350         Include <limits.h>, <stddef.h>, <stdlib.h>, <string.h> unconditionally.
14351         (LOCALE_PARAM_DECL): Remove.  All uses changed to LOCALE_PARAM_PROTO.
14352         (LOCALE_PARAM_PROTO): New macro.
14353         (INTERNAL, INTERNAL1, WEAKNAME): Assume ANSI C, not K&R.
14354         (INTERNAL (strtol), strtol): Define with a prototype.
14355         (PARAMS): Remove.  All uses removed.
14356         * lib/tempname.c: Include <string.h> unconditionally.
14357         * lib/userspec.c: Include <stdlib.h>, <string.h> unconditionally.
14358         * lib/xgethostname.c (main): Define with a prototype.
14359         * lib/xmalloc.c: Include "xalloc.h" first, to check interface.
14360         Include <stdlib.h> unconditionally.
14361         (calloc, malloc, realloc, free): Remove decls.
14362         * lib/xstrtod.c: Include "xstrtod.h" first, to check interface.
14363         Include <stdlib.h> unconditionally.  Sort include file names.
14364         (strtod): Remove.
14365         (xstrtod): Define with a prototype.
14366         * lib/xstrtol.c: Include <stdlib.h>, <string.h> unconditionally.
14367         (strtol, strtoul): Remove decls.
14368
14369 2003-09-11  Paul Eggert  <eggert@twinsun.com>
14370
14371         More patches to assume C89 or better.
14372         * m4/strndup.m4 (gl_PREREQ_STRNDUP): Remove STDC_HEADERS check.
14373         * m4/strnlen.m4 (gl_PREREQ_STRNLEN): Don't check for memory.h,
14374         string.h, memchr, STDC_HEADERS.
14375
14376 2003-09-11  Paul Eggert  <eggert@twinsun.com>
14377
14378         * lib/strndup.c: Don't include <stdio.h>, <sys/types.h>.
14379         Include <stdlib.h>, <string.h> unconditionally.
14380         Remove now-unnecessary cast to char *.
14381         * lib/strnlen.c: Include <string.h> unconditionally.
14382         * lib/yesno.c (yesno): Define with a prototype.
14383
14384 2003-09-11  Bruno Haible  <bruno@clisp.org>
14385
14386         * config/srclist.txt (setenv.c, unsetenv.c): Disable for the moment.
14387
14388 2003-09-10  Jim Meyering  <jim@meyering.net>
14389
14390         * lib/error.c: Correct indentation of cpp directives.
14391
14392 2003-09-10  Bruno Haible  <bruno@clisp.org>
14393
14394         * m4/strcspn.m4 (gl_PREREQ_STRCSPN): Remove <string.h> check.
14395         * m4/strpbrk.m4 (gl_PREREQ_STRPBRK): Remove <string.h> check.
14396         * m4/strstr.m4 (gl_PREREQ_STRSTR): Remove <string.h> check.
14397         * m4/unicodeio.m4 (gl_UNICODEIO): Remove <string.h> check.
14398         * m4/setenv.m4 (gl_PREREQ_SETENV, gl_PREREQ_UNSETENV): Remove
14399         <stdlib.h> and <string.h> checks.
14400         * m4/xreadlink.m4 (gl_XREADLINK): Remove <stdlib.h> check.
14401         * m4/yesno.m4 (gl_YESNO): Remove <stdlib.h> check.
14402
14403 2003-09-10  Bruno Haible  <bruno@clisp.org>
14404
14405         * lib/strcspn.c: Include <string.h> unconditionally.
14406         * lib/strpbrk.c: Include <string.h> unconditionally.
14407         * lib/strstr.c: Include <string.h> unconditionally.
14408         * lib/unicodeio.c: Include <string.h> unconditionally.
14409         * lib/setenv.c: Include <stdlib.h> and <string.h> unconditionally.
14410         * lib/unsetenv.c: Likewise.
14411         * lib/xreadlink.c: Include <stdlib.h> unconditionally.
14412         * lib/yesno.c: Include <stdlib.h> unconditionally.
14413         (rpmatch): Add prototype.
14414
14415 2003-09-09  Paul Eggert  <eggert@twinsun.com>
14416
14417         More patches to assume C89 or better.
14418         * m4/getcwd.m4 (AC_FUNC_GETCWD_NULL): Don't check for stdlib.h.
14419         * m4/getopt.m4 (gl_GETOPT): Don't check for string.h.
14420         * m4/getugroups.m4 (gl_GETUGROUPS): Do not check for standard C headers
14421         or for string.h.
14422         * m4/getusershell.m4 (gl_PREREQ_GETUSERSHELL): Do not check for stdlib.h.
14423         * m4/group-member.m4 (gl_PREREQ_GROUP_MEMBER): Do not require standard C
14424         headers.
14425         * m4/hard-locale.m4 (gl_HARD_LOCALE): Do not check for stdlib.h,
14426         string.h.
14427         * m4/hash.m4 (gl_HASH): Do not check for stdlib.h, malloc, free.
14428         * m4/human.m4 (gl_HUMAN): Do not check for stdlib.h, string.h, getenv.
14429         * m4/idcache.m4 (gl_IDCACHE): Do not check for standard C headers,
14430         or for string.h.
14431         * m4/long-options.m4 (gl_LONG_OPTIONS): Do not check for stdlib.h.
14432         * m4/makepath.m4 (gl_MAKEPATH): Do not check for string.h or standard
14433         C headers.
14434         * m4/md5.m4 (gl_MD5): Don't check for limits.h, standard C headers,
14435         memcpy.
14436         * m4/sha.m4 (gl_SHA): Don't check for standard Cheaders, memcpy.
14437         * m4/memchr.m4 (jm_PREREQ_MEMCHR): Don't check for limits.h, stdlib.h.
14438         * m4/memcmp.m4 (gl_PREREQ_MEMCMP): Don't check for string.h.
14439         * m4/memcoll.m4 (gl_MEMCOLL): Likewise.
14440         * m4/memrchr.c (gl_PREREQ_MEMRCHR): Don't check for limits.h.
14441         * m4/mkdir-slash.m4 (gl_PREREQ_MKDIR): Don't check for stdlib.h,
14442         string.h, free.
14443         * m4/mktime.m4 (gl_PREREQ_MKTIME): Don't check for standard C headers.
14444         * m4/modechange.m4 (gl_MODECHANGE): Don't check for standard C headers.
14445         * m4/mountlist.m4 (gl_PREREQ_MOUNTLIST_EXTRA): Don't check for standard
14446         C headers, or for string.h.
14447         * m4/obstack.m4 (gl_OBSTACK): Don't check for stddefe.h, string.h.
14448         (gl_PREREQ_OBSTACK): Don't check for stdlib.h.
14449         * m4/path-concat.m4 (gl_PATH_CONCAT): Don't check for standard C
14450         headers, memory.h, stdlib.h, string.h, strings.h.
14451         * m4/posixtm.m4 (gl_POSIXTM): Don't check for stdlib.h, string.h.
14452         * m4/posixver.m4 (gl_POSIXVER): Don't check for getenv.
14453         * m4/putenv.m4 (gl_PREREQ_PUTENV): Don't check for string.h, memcpy,
14454         strchr.
14455         * m4/readtokens.m4 (gl_READTOKENS): Don't check for standard C
14456         headers, memory.h, string.h.
14457         * m4/regex.m4 (jm_PREREQ_REGEX): Do not check for limits.h, string.h.
14458         * m4/rename.m4 (gl_PREREQ_RENAME): Do not check for stdlib.h, string.h,
14459         free.
14460         * m4/rpmatch.m4 (gl_PREREQ_RPMATCH): Don't check for standard C headers.
14461         * m4/same.m4 (gl_SAME): Don't check for stdlib.h, string.h, free.
14462         * m4/save-cwd.m4 (gl_SAVE_CWD): Don't check for standard C headers.
14463         * m4/savedir.m4 (gl_SAVEDIR): Don't check for standard C headers.
14464         * m4/strchrnul.m4 (gl_PREREQ_STRCHRNUL): Don't check for string.h.
14465         * m4/xgetcwd.m4 (gl_XGETCWD): Don't check for stdlib.h.
14466
14467 2003-09-09  Paul Eggert  <eggert@twinsun.com>
14468
14469         More K&R removal.
14470
14471         * lib/acosl.c (main): Use a prototype.
14472         * lib/asinl.c, cosl.c, expl.c, frexpl.c, ldexpl.c, sinl.c,
14473         tanl.c: Likewise.
14474
14475         * lib/getloadavg.c (getloadavg, main): Define via prototypes.
14476
14477         * lib/getopt.h (struct option.name): Assume C89, and use 'const'.
14478         (getopt, etopt_long, getopt_long_only, _getopt_internal)
14479         [defined __GNU_LIBRARY__]: Assume C89, so we can always declare
14480         with a prototype.
14481         * lib/getopt.c (const): Remove macro.
14482         Include <string.h> unconditionally.
14483         (my_index): Remove; all uses changed to strchr.
14484         (strlen): Remove decl.
14485         (exchange): Remove forward decl; no longer needed.
14486         (exchange, _getopt_initialize, _getopt_internal, getopt, main):
14487         Define with prototype.
14488         * lib/getopt1.c (const): Remove macro.
14489         (getopt_long, getopt_long_only, main): Define with prototype.
14490
14491         * lib/getugroups.c: Include <string.h> unconditionally.
14492
14493         * lib/getusershell.c: Include <stdlib.h> unconditionally.
14494         (getusershell, setusershell, endusershell, readname, main):
14495         Define with prototypes.
14496
14497         * lib/group-member.c: Include group-member.h first.
14498         Include <stdlib.h> unconditionally.
14499
14500         * lib/hard-locale.c: Include hard-locale.h first.
14501         Include <stdlib.h>, <string.h> unconditionally.
14502
14503         * lib/hash.c (free, malloc): Remove decls.
14504         Include <stdlib.h> unconditionally.
14505
14506         * lib/human.c: Include <stdlib.h>, <string.h> unconditionally.
14507         (getenv): Do not declare.
14508
14509         * lib/idcache.c: Include <string.h> unconditionally.
14510
14511         * lib/long-options.c: Include long-options.h first, to test interface.
14512         Include <stdlib.h> unconditionally.
14513
14514         * lib/makepath.c: Include makepath.h first, to test interface.
14515         Include <stdlib.h> and <string.h> unconditionally.
14516
14517         * lib/linebuffer.c: Include <stdlib.h>.
14518         (free): Remove decl.
14519
14520         * lib/malloc.c: Include <stdlib.h>, for malloc; don't bother with stddef.h.
14521         rpl_malloc returns void *, not char *.
14522         * lib/realloc.c (rpl_realloc): Likewise.  Also, define with a prototype.
14523
14524         * lib/md5.h: Include <limits.h> unconditionally.
14525         (UINT_MAX_32_BITS): Don't worry about non-__STDC__ case.
14526         (__P): Remove; all uses removed.
14527         * lib/md5.c: Include "md5.h" first.
14528         (md5_init_ctx, md5_read_ctx, md5_finish_ctx, md5_stream,
14529         md5_buffer, md5_process_bytes, md5_process_block):
14530         Define with prototypes.
14531         * lib/sha.h (__P): Remove all uses.  (It wasn't defined??)
14532         * lib/sha.c: Include "sha.h" first.
14533         Include <stdlib.h>, <string.h> unconditionally.
14534
14535         * lib/memchr.c (__ptr_t): Remove; all uses changed to void *.
14536         * lib/memcmp.c (__ptr_t): Likewise.
14537         * lib/memrchr.c (__ptr_t): Likewise.
14538         * lib/memchr.c, memcmp.c, memcoll.c, memrchr.c:
14539         Include <string.h> unconditionally.
14540         * lib/memchr.c, memrchr.c: Include <limits.h> unconditionally.
14541         * lib/memchr.c: Include <stdlib.h> unconditionally.
14542         * lib/memchr.c (LONG_MAX): Remove.
14543         * lib/memrchr.c (LONG_MAX): Likewise.
14544         * lib/memchr.c (__memchr): Define via a prototype.
14545         * lib/memrchr.c (__memrchr): Likewise.
14546         * lib/memcmp.c (__P): Remove, and remove all uses.
14547         (memcmp_bytes, memcmp_common_alignment, memcmp_not_common_alignment):
14548         Remove forward decls; no longer needed.
14549         * lib/memcpy.c, memmove.c, memset.c: Include <stddef.h>.
14550         Use types required by C89 in prototype.
14551
14552         * lib/mkdir.c: Include <stdlib.h>, <string.h> unconditionally.
14553         * lib/savedir.c: Likewise.
14554         * lib/mkdir.c (free): Remove decl.
14555         * lib/rmdir.c (rmdir): Define with a prototype.
14556         * lib/savedir.c: Include savedir.h first, to test interface.
14557
14558         * lib/mktime.c (STDC_HEADERS): Remove.
14559         Include <stdlib.h>, <string.h> unconditionally.
14560
14561         * lib/modechange.c: Include <stdlib.h> unconditionally.
14562         (malloc): Remove decl.
14563
14564         * lib/mountlist.c: Include <stdlib.h>, <string.h> unconditionally.
14565         (free): Remove decl.
14566
14567         * lib/obstack.h (PTR_INT_TYPE) [!defined __PTRDIFF_TYPE__]:
14568         Define to ptrdiff_t, without bothering to check HAVE_STDDEF_H.
14569         (This type really should be intptr_t, but that's a C99ism.)
14570         (_obstack_memcpy): Remove: all uses changed to memcpy.
14571         Include <string.h> unconditionally.
14572         (struct obstack): Assume __STDC__ for types of members
14573         chunkfun, freefun, extra_arg.
14574         (_obstack_newchunk, _obstack_free, _obstack_begin, _obstack_begin_1,
14575         _obstack_memory_used, obstack_alloc_failed_handler, obstack_init,
14576         obstack_begin, obstack_specify_allocation,
14577         obstack_specify_allocation_with_arg, obstack_chunkfun,
14578         obstack_freefun, obstack_free) [! (defined __STDC__ && __STDC__)]:
14579         Remove unprototyped decls and the macros that use them.
14580         * lib/obstack.c (POINTER): Remove.  All uses changed to void *.
14581         (obstack_alloc_failed_handler, CALL_CHUNKFUN, CALL_FREEFUN,
14582         _obstack_begin, _obstack_begin_1, _obstack_allocated_p)
14583         (defined __STDC__ && __STDC__)]:
14584         Remove nonprototyped code.
14585         Include <stdlib.h> unconditionally.
14586         (_obstack_begin, _obstack_begin_1, _obstack_newchunk,
14587         _obstack_allocated_p, _obstack_free, obstack_free,
14588         _obstack_memory_used, print_and_abort):
14589         Define using prototypes.
14590         (obstack_1grow, obstack_1grow_fast, obstack_alloc, obstack_base,
14591         obstack_blank, obstack_blank_fast, obstack_copy, obstack_copy0,
14592         obstack_finish, obstack_grow, obstack_grow0, obstack_make_room,
14593         obstack_next_free, obstack_object_size, obstack_room) [0]:
14594         Remove unused, unprototyped code.
14595
14596         * lib/path-concat.c: Include <stdlib.h>, <string.h> unconditionally.
14597
14598         * lib/physmem.c (physmem_total, physmem_available, main): Define
14599         with prototypes.
14600
14601         * lib/posixtm.c: Include <stdlib.h>, <string.h> unconditionally.
14602         (main): Define with a prototype.
14603
14604         * lib/posixver.c (getenv): Remove decl.
14605
14606         * lib/putenv.c (malloc): Returns void *, not char *.
14607         Include <string.h> unconditionally.
14608         (strchr, memcpy, NULL): Do not define.
14609
14610         * lib/readtokens.c: Include readtokens.h first, to test interface.
14611         Include <stdlib.h>, <string.h> unconditionally.
14612         (init_tokenbuffer): Define with a prototype.
14613
14614         * lib/regex.c (PARAMS): Remove.  All uses removed.
14615         All uses of _RE_ARGS removed, too.
14616         Include <stddef.h>, <stdlib.h>, <string.h>, <limits.h>
14617         unconditionally.
14618         (bzero): Assume memset exists.
14619         (memcmp, memcpy, NULL): Remove.
14620         (SIGN_EXTEND_CHAR): Remove; all uses replaced by casts to signed
14621         char, or assignments to local vars of type signed char.
14622         (init_syntax_once, PREFIX(extract_number_and_incr),
14623         PREFIX(print_partial_compiled_pattern),
14624         PREFIX(print_compiled_pattern), PREFIX(print_double_string),
14625         convert_mbs_to_wcs, print_fastmap, re_set_syntax,
14626         PREFIX(regex_grow_registers), PREFIX(regex_compile),
14627         PREFIX(store_op1), PREFIX(store_op2), PREFIX(insert_op1),
14628         PREFIX(insert_op2), PREFIX(at_begline_loc_p),
14629         PREFIX(at_endline_loc_p), group_in_compile_stack, insert_space,
14630         wcs_compile_range, byte_compile_range, truncate_wchar,
14631         PREFIX(re_compile_fastmap), re_compile_fastmap, re_set_registers,
14632         re_search, re_search_2, PREFIX(re_search_2), re_match, re_match_2,
14633         count_mbs_length, wcs_re_match_2_internal,
14634         byte_re_match_2_internal, PREFIX(group_match_null_string_p),
14635         PREFIX(alt_match_null_string_p),
14636         PREFIX(common_op_match_null_string_p), PREFIX(bcmp_translate),
14637         re_compile_pattern, re_comp, re_exec, regcomp, regexec, regerror,
14638         regfree, PREFIX(extract_number)): Define with prototype.  Remove
14639         now-unnecessary declaration, if any.
14640         (byte_compile_range, PREFIX(regex_compile), re_comp, re_exec,
14641         regcomp, regexec):
14642         Remove now-unnecessary casts among pointer types.
14643         * lib/regex.h (_RE_ARGS): Remove.  All uses removed.
14644
14645         * lib/rename.c: Include <stdlib.h>, <string.h> unconditionally.
14646         (free): Remove decl.
14647
14648         * lib/rpmatch.c: Include <stdlib.h> unconditionally.
14649
14650         * lib/same.c: Include <stdlib.h>, <string.h> unconditionally.
14651         (free): Remove decl.
14652
14653         * lib/save-cwd.c: Include <stdlib.h> unconditionally.
14654         * lib/xgetcwd.c: Likewise.
14655
14656         * lib/stat.c: Include <stdlib.h>, <string.h> unconditionally.
14657         (free): Remove decl.
14658
14659         * lib/strchrnul.c (strchrnul): Define with a prototype.
14660         Fix bug: c_in was not converted to char before searching.
14661
14662         The following changes are not K&R related:
14663
14664         * lib/group-member.h: Include <sys/types.h>, so that this file is
14665         self-contained.
14666         * lib/makepath.h: Likewise.
14667
14668         * lib/getusershell.c (readname, default_index, line_size, readname):
14669         Use size_t, not int, for sizes.
14670         (readname): If the size overflows, report an error instead of
14671         looping forever.
14672
14673 2003-09-09  Paul Eggert  <eggert@twinsun.com>
14674
14675         * config/srclist.txt: Do not get getopt.h, getopt1.c, or regex.h from
14676         libc.
14677
14678 2003-09-09  Paul Eggert  <eggert@twinsun.com>
14679
14680         * README: New section: portability guidelines.
14681
14682 2003-09-09  Derek Robert Price  <derek@ximbiot.com>
14683
14684         * m4/getndelim2.m4 (gl_PREREQ_GETNDELIM2): Assume stdlib.h per the
14685         C89 spec.
14686
14687 2003-09-09  Derek Robert Price  <derek@ximbiot.com>
14688
14689         * lib/getndelim2.c: Assume stdlib.h per the C89 spec.
14690
14691 2003-09-08  Paul Eggert  <eggert@twinsun.com>
14692
14693         Assume C89 or better; remove K&R cruft.
14694         A few of these changes were first proposed by Derek Robert Price
14695         in <http://mail.gnu.org/archive/html/bug-gnulib/2003-07/msg00105.html>.
14696
14697         * lib/addext.c: Include <string.h> unconditionally.
14698         * lib/backupfile.c: Include <string.h>, <stdlib.h> unconditionally.
14699         Don't declare getenv or malloc.
14700
14701         * lib/alloca.c: Include <string.h>, <stdlib.h> unconditionally.
14702         (POINTER_TYPE, pointer): Remove; all uses changed to void *.
14703         (NULL): Remove.
14704         (find_stack_direction, alloca): Use prototypes.
14705
14706         * lib/atexit.c (atexit): Define using a prototype.
14707
14708         * lib/basename.c, dirname.c, stripslash.c:
14709         Include <string.h> unconditionally.
14710
14711         * lib/bcopy.c: Include <stddef.h>.
14712         (bcopy): Define with prototype, using 'const' and 'void' and 'size_t'.
14713
14714         * lib/canon-host.c: Include <stdlib.h>, <string.h> unconditionally.
14715
14716         * lib/error.h (error, error_at_line, error_print_progname)
14717         [! (defined (__STDC__) && __STDC__)]: Remove decls.
14718         * lib/error.c: Include error.h first, to check interface.
14719         Include <stdarg.h>, <stdlib.h>, <string.h> unconditionally.
14720         (VA_START): Remove; all uses changeed to va_start.
14721         (exit, strerror): Remove decls.
14722         (error_print_progname): Prototype uncondionally.
14723         Don't include <errno.h>; no longer needed.
14724         (private_strerror): Remove.
14725         (error_tail): Always define.
14726         (error, error_at_line): Assume C89 or better; always use prototypes.
14727         * lib/fatal.c: Include "fatal.h" first, to test interface.
14728         Include <stdarg.h>, <stdlib.h>, <string.h> unconditionally.
14729         (VA_START): Remove; all uses changed to va_start.
14730         [! (HAVE_VPRINTF || HAVE_DOPRNT || _LIBC)]: Remove support for
14731         this case.
14732         (exit): Remove decl.
14733         (fatal): Prototype unconditionally.  Assume va_start works.
14734         Abort at end, to pacify gcc.
14735
14736         * lib/euidaccess.c (main): Define with a prototype.
14737
14738         * lib/exclude.c: Include <stdlib.h>, <string.h> unconditionally.
14739
14740         * lib/exitfail.c: Include <stdlib.h> unconditionally.
14741
14742         * lib/fnmatch_.h (__P): Remove.  All uses changed to assume
14743         prototypes.
14744         * lib/fnmatch.c: Include fnmatch.h first, to test interface.
14745         Include <string.h>, <stddef.h>, <stdlib.h> unconditionally.
14746         (getenv): Remove decl.
14747         (fnmatch): Define using a prototype.
14748         * lib/fnmatch_loop.c (FCT): Remove forward decl; no longer needed.
14749         (FCT): Define using a prototype.
14750
14751         * lib/getdate.y: Include <stdlib.h>, <string.h> unconditionally.
14752
14753         * lib/gethostname.c: Include <stddef.h>.
14754         (gethostname): Define with prototype.  Length is size_t, not int.
14755
14756 2003-09-08  Paul Eggert  <eggert@twinsun.com>
14757
14758         Assume C89 or better; remove K&R cruft.
14759         * m4/alloca.m4 (gl_PREREQ_ALLOCA): Don't check for stdlib.h, string.h.
14760         * m4/backupfile.m4 (gl_BACKUPFILE): Don't check for stdlib.h,
14761         string.h, getenv, malloc.
14762         * m4/dirname.m4 (gl_DIRNAME): Don't check for string.h or C standard
14763         headers.
14764         * m4/canon-host.m4 (gl_CANON_HOST): Don't check for string.h, stdlib.h.
14765         * m4/error.m4 (jm_PREREQ_ERROR): Do not require STDC headers, and
14766         do not check for strerror.
14767         * m4/exclude.m4: Do not check for stdlib.h, string.h, strings.h.
14768         * m4/exitfail.m4 (gl_EXITFAIL): Do not check for stdlib.h.
14769         * m4/fatal.m4 (gl_FATAL): Do not require STDC headers, and
14770         do not check for doprnt or vprintf.
14771         * m4/fnmatch.m4 (gl_PREREQ_FNMATCH_EXTRA): Remove.  All uses removed.
14772         * m4/getdate.m4 (gl_GETDATE): Don't check for stdlib.h or string.h.
14773
14774 2003-09-08  Paul Eggert  <eggert@twinsun.com>
14775
14776         * lib/getversion.c: Remove; was migrated to backupfile.c in 1997.
14777         getversion.c should have been removed then, but was accidentally
14778         preserved.
14779
14780         * lib/utime.c [!HAVE_UTIMES_NULL]: Include <sys/stat.h>, <fcntl.h>.
14781         (utime_null): Fix typo: 'st' was sometimes called 'sb'.
14782
14783 2003-09-08  Karl Berry  <karl@gnu.org>
14784
14785         * config/config.sub, config.guess, srclistvars.sh: update from savannah
14786                 config, forget about prep.
14787
14788         * config/depcomp, missing: update from automake.
14789
14790 2003-09-07  Paul Eggert  <eggert@twinsun.com>
14791
14792         * modules/time_r: Depend on 'restrict'.  Fix from Simon Josefsson in
14793         <http://mail.gnu.org/archive/html/bug-gnulib/2003-09/msg00028.html>.
14794
14795 2003-09-07  Paul Eggert  <eggert@twinsun.com>
14796
14797         * lib/time_r.c (gmtime_r, localtime_r): Fix silly typo: missing arg to
14798         copy_tm_result.  Bug reported by Simon Josefsson in
14799         <http://mail.gnu.org/archive/html/bug-gnulib/2003-09/msg00028.html>.
14800
14801 2003-09-06  Paul Eggert  <eggert@twinsun.com>
14802
14803         * m4/time_r.m4: New file.
14804         * m4/mktime.m4 (gl_PREREQ_MKTIME): Remove check for limits.h.
14805         * m4/timegm.m4 (gl_FUNC_TIMEGM): Assume that timegm is buggy if mktime is.
14806         Check for timegm declaration.
14807         (gl_PREREQ_TIMEGM): Require gl_FUNC_MKTIME.
14808         Do not check for gmtime_r.
14809         Replace mktime if __mktime_internal does not exist and if mktime
14810         hasn't been replaced already.
14811
14812 2003-09-06  Paul Eggert  <eggert@twinsun.com>
14813
14814         * lib/time_r.c, time_r.h: New files.
14815
14816         * lib/mktime.c (my_mktime_localtime_r): Remove; all uses changed to
14817         __localtime_r.
14818         (__localtime_r) [!defined _LIBC]: New macro.  Include <time_r.h>.
14819         (__mktime_internal) [!defined _LIBC]: Now extern, not static.
14820
14821         * lib/strftime.c (my_strftime_gmtime_r): Remove; all uses changed to
14822         __gmtime_r.
14823         (my_strftime_localtime_r): Remove; all uses changed to __localtime_r.
14824         (__gtime_r, __localtime_r) [!HAVE_TM_GMTOFF]: New macros.
14825         Include <time_r.h>.
14826
14827         * lib/timegm.c: Switch to glibc implementation, with the following changes:
14828         [defined HAVE_CONFIG_H]: Include <config.h>.
14829         [!defined _LIBC]: Include "timegm.h" rather than <time.h>.
14830         (__mktime_internal) [!defined _LIBC]: New decl.
14831         (__gmtime_r) [!defined _LIBC]: New macro and function.
14832         (timegm): Use a prototype, since gnulib assumes C89.
14833         Do not bother declaring tmp to be const, as it's not really usefu.
14834         * lib/timegm.h: Hoist "#include <time.h>" out of #ifdef.
14835         (timegm): Declare only if HAVE_DECL_TIMEGM.
14836
14837 2003-09-06  Paul Eggert  <eggert@twinsun.com>
14838
14839         * MODULES.html.sh (func_all_modules): Add time_r.
14840         * modules/time_r: New file.
14841         * modules/mktime, modules/strftime, modules/timegm: Depend on time_r.
14842         * modules/timegm: Depend on mktime.  Change maintainer to "all, glibc".
14843
14844 2003-09-03  Paul Eggert  <eggert@twinsun.com>
14845
14846         * lib/human.c (human_readable): Fix bug that rounded 10501 to 10k.
14847         Bug reported by Lute Kamstra in
14848         <http://mail.gnu.org/archive/html/bug-gnulib/2003-09/msg00003.html>.
14849
14850         * lib/getdate.y (relative_time_table): Use tDAY_UNIT for "tomorrow",
14851         "yesterday", "today", and "now" rather than tMINUTE_UNIT.  Of
14852         course with correspondingly smaller numbers for tomorrow and
14853         yesterday.  From Tadayoshi Funaba.  Originally installed into
14854         sh-utils on 1999-08-07, but the patch got lost (I guess during the
14855         coreutils merge?).
14856
14857 2003-08-31  Simon Josefsson  <jas@extundo.com>
14858
14859         * modules/timegm: New file.
14860         * MODULES.html.sh (func_all_modules): Add timegm.
14861
14862 2003-08-31  Simon Josefsson  <jas@extundo.com>
14863
14864         * m4/timegm.m4: New file.
14865
14866 2003-08-31  Simon Josefsson  <jas@extundo.com>
14867
14868         * lib/timegm.h: New file.
14869         * lib/timegm.c: New file.  Based on wget-1.8.2/src/http.c:mktime_from_utc.
14870
14871 2003-08-31  Karl Berry  <karl@gnu.org>
14872
14873         * lib/argp.h: update from libc.
14874
14875 2003-08-28  Bruno Haible  <bruno@clisp.org>
14876
14877         * m4/fnmatch.m4 (_AC_LIBOBJ_FNMATCH): Remove AC_DEFINE of fnmatch here.
14878         This avoids havoc on compilers for which '#define fnmatch rpl_fnmatch'
14879         followed by '#define fnmatch fnmatch_posix' gives an error.
14880
14881 2003-08-28  Bruno Haible  <bruno@clisp.org>
14882
14883         * lib/binary-io.h: Undefine O_BINARY before defining it. This avoids a
14884         warning on QNX, which defines O_BINARY to 000000.
14885
14886 2003-08-27  Jim Meyering  <jim@meyering.net>
14887
14888         * m4/mkstemp.m4: Require that the system mkstemp be able to create
14889         70 temporary files, not just 30.  Tru64 V4.0F's mkstemp function
14890         would fail after 32.  Reported by Danny Levinson.  Details here:
14891         http://mail.gnu.org/archive/html/bug-coreutils/2003-08/msg00124.html
14892
14893 2003-08-24  Bruno Haible  <bruno@clisp.org>
14894
14895         * lib/binary-io.h: Include <stdio.h>, to avoid a compilation error when
14896         MSVC7 <stdio.h> is included later.
14897
14898 2003-08-22  Simon Josefsson  <jas@extundo.com>
14899
14900         * modules/strndup (Makefile.am): Add strndup.h to lib_SOURCES.
14901
14902 2003-08-20  Karl Berry  <karl@gnu.org>
14903
14904         * m4/lib-ld.m4: serial 1003 from gettext, no changes besides serial.
14905
14906 2003-08-20  Bruno Haible  <bruno@clisp.org>
14907
14908         * modules/progname: New file.
14909         * MODULES.html.sh (func_all_modules): Add progname.
14910
14911 2003-08-20  Bruno Haible  <bruno@clisp.org>
14912
14913         * lib/progname.h: New file, from GNU gettext.
14914         * lib/progname.c: New file, from GNU gettext.
14915         * lib/progreloc.c: New file, from GNU gettext.
14916
14917 2003-08-19  Jim Meyering  <jim@meyering.net>
14918
14919         * m4/lib-ld.m4: Revert yesterday's change, per Bruno's request here:
14920         http://mail.gnu.org/archive/html/bug-gnulib/2003-08/msg00155.html
14921
14922 2003-08-19  Bruno Haible  <bruno@clisp.org>
14923
14924         * m4/xalloc.m4 (gl_PREREQ_XSTRDUP): Don't check for <string.h> any more.
14925
14926 2003-08-19  Bruno Haible  <bruno@clisp.org>
14927
14928         * lib/xstrdup.c: Assume <string.h> exists.
14929
14930 2003-08-18  Paul Eggert  <eggert@twinsun.com>
14931
14932         * modules/stdbool: Add BUILT_SOURCES.  Prefer $@ to target name
14933         in makefile rules.
14934
14935 2003-08-18  Jim Meyering  <jim@meyering.net>
14936
14937         * m4/getloadavg.m4: Use [\t ], not [ \t] (where \t is a literal TAB).
14938         * m4/lib-ld.m4: Likewise.
14939
14940 2003-08-18  Jim Meyering  <jim@meyering.net>
14941
14942         * lib/setenv.h: Indent nested cpp directive.
14943         * lib/vasnprintf.c: Remove trailing blanks.
14944
14945 2003-08-17  Simon Josefsson  <jas@extundo.com>
14946
14947         * modules/xstrndup: New file.
14948         * MODULES.html.sh (func_all_modules): Add xstrndup.
14949
14950 2003-08-17  Simon Josefsson  <jas@extundo.com>
14951
14952         * modules/argp: Fix autoconf macro name. Add more dependencies.
14953
14954 2003-08-17  Simon Josefsson  <jas@extundo.com>
14955
14956         * m4/xstrndup.m4: New file.
14957
14958 2003-08-17  Simon Josefsson  <jas@extundo.com>
14959
14960         * m4/argp.m4: New file.
14961
14962 2003-08-17  Simon Josefsson  <jas@extundo.com>
14963             Bruno Haible  <bruno@clisp.org>
14964
14965         * lib/xstrndup.h: New file.
14966         * lib/xstrndup.c: New file.
14967
14968 2003-08-17  Bruno Haible  <bruno@clisp.org>
14969
14970         * modules/strndup (Files, Include): Add lib/strndup.h.
14971
14972 2003-08-17  Bruno Haible  <bruno@clisp.org>
14973
14974         * modules/euidaccess (Files): Add lib/euidaccess.h.
14975
14976 2003-08-17  Bruno Haible  <bruno@clisp.org>
14977
14978         * lib/strndup.h: New file.
14979
14980 2003-08-17  Bruno Haible  <bruno@clisp.org>
14981
14982         * gnulib-tool (func_create_testdir): Handle gl_USE_SYSTEM_EXTENSIONS
14983         like AC_GNU_SOURCE.
14984         * modules/extensions (configure.ac): Comment out the invocation of
14985         gl_USE_SYSTEM_EXTENSIONS.
14986
14987 2003-08-16  Paul Eggert  <eggert@twinsun.com>
14988
14989         Merges from coreutils, etc.
14990         * m4/rpmatch.m4 (gl_PREREQ_RPMATCH): Insert ':' to prevent a syntax
14991         error in gl_FUNC_MATCH.  This fixes a bug I introduced on 2003-05-28.
14992         * m4/readlink.m4 (gl_PREREQ_READLINK): Renamed from gl_PREREQ_READLINE,
14993         fixing a typo.
14994         * m4/host-os.m4 (UTILS_HOST_OS): Add GNU/NetBSD, GNU/FreeBSD.
14995         * m4/hash.m4 (gl_HASH): Use AM_STDBOOL_H, not AC_HEADER_STDBOOL.
14996
14997 2003-08-16  Paul Eggert  <eggert@twinsun.com>
14998
14999         Document merge from coreutils.
15000         * modules/alloca: Append $(ALLOCA_H) to BUILT_SOURCES.
15001         * modules/fnmatch: Append $(FNMATCH_H) to BUILT_SOURCES.
15002         * modules/utime: Add m4/utimes-null.m4.
15003
15004 2003-08-16  Paul Eggert  <eggert@twinsun.com>
15005
15006         * lib/regex.h, strdup.c, strtoll.c, strtoul.c: Do not normalize white
15007         space, undoing this 2003-08-12 change:
15008         <http://mail.gnu.org/archive/html/bug-gnulib/2003-08/msg00080.html>
15009
15010 2003-08-16  Paul Eggert  <eggert@twinsun.com>
15011
15012         * config/srclist.txt: Get regex.h, strdup.c, strtoll.c,
15013         strtoul.c from libc, undoing this 2003-08-12 change:
15014         <http://mail.gnu.org/archive/html/bug-gnulib/2003-08/msg00080.html>
15015
15016 2003-08-16  Jim Meyering  <jim@meyering.net>
15017
15018         Merges from coreutils.
15019         * m4/readdir.m4 (GL_FUNC_READDIR): Change name to have GL_ (not jm_)
15020         prefix.  Adjust cache variables similarly.  Create 500 rather than
15021         just 300 files, to exercise bug on Darwin6.5, too.
15022         * m4/perl.m4 (jm_PERL): Use $am_missing_run, not undefined $missing_dir.
15023         * m4/jm-winsz1.m4: Require AC_SYS_POSIX_TERMIOS, not AM_SYS_POSIX_TERMIOS.
15024         Reported by mkc@mathdogs.com.
15025         Also change use of $am_cv_sys_posix_termios
15026         to $ac_cv_sys_posix_termios.  Reported by Andreas Schwab.
15027         * m4/getgroups.m4 (jm_FUNC_GETGROUPS): Rewrite to use AC_FUNC_GETGROUPS
15028         and (if needed) to call AC_LIBOBJ and to set GETGROUPS_LIB.
15029         * m4/fsusage.m4 [__GLIBC__]: GNU libc's statvfs stats each mount point in
15030         /proc/mounts until it finds one with matching device number.  This is
15031         unnecessary when the FILE argument *is* a mount point.  No stat call
15032         is necessary in that case.  So, disable the statvfs-testing code on
15033         systems with GNU libc.  Reported by Andrei Gaponenko via Tim Waugh
15034         as RedHat bug# 84846.
15035         * m4/c-stack.m4 (AC_SYS_XSI_STACK_OVERFLOW_HEURISTIC): Limit stack size
15036         to 1MB, so as not to render systems with no stack size limit (e.g.,
15037         linux-2.2.x) unusable.  Suggestion and code from Bruno Haible.
15038         Include <unistd.h>.  On some systems,
15039         it is required for the definition of _SC_PAGESIZE.
15040
15041 2003-08-16  Jim Meyering  <jim@meyering.net>
15042
15043         Merge from coreutils.
15044         * lib/xstrtoimax.c: #else #if -> #elif.
15045         * lib/xstrtoumax.c: Likewise.
15046
15047 2003-08-16  Jim Meyering  <jim@meyering.net>
15048
15049         * m4/utimes.m4 (gl_FUNC_UTIMES): New file.
15050         * m4/utimes.m4: Removed.
15051         * m4/utimes-null.m4: Renamed from utimes.m4.
15052
15053         * m4/c-stack.m4 (AC_SYS_XSI_STACK_OVERFLOW_HEURISTIC): Limit stack size
15054         to 1MB, so as not to render systems with no stack size limit (e.g.,
15055         linux-2.2.x) unusable.  Suggestion and code from Bruno Haible.
15056         Include <unistd.h>.  On some systems,
15057         it is required for the definition of _SC_PAGESIZE.
15058
15059 2003-08-16  Jim Meyering  <jim@meyering.net>
15060         and Paul Eggert  <eggert@cs.ucla.edu>
15061
15062         Merges from coreutils, etc.
15063
15064         * m4/jm-macros.m4 (AC_LANG_SOURCE(C)): New macro, undefine, then define
15065         using the latest version from cvs.  This avoids problems with #line
15066         directives using a vendor (Sun) compiler.
15067         (jm_MACROS): Bump prerequisite from 2.52g to 2.57.
15068         Don't set GETGROUPS_LIB here; now it's
15069         done via getgroups.m4's wrapper function.
15070         AC_SUBST OPTIONAL_BIN_PROGS, OPTIONAL_BIN_ZCRIPTS, and MAN here,
15071         rather than just in sh-util/configure.in, so that the
15072         now-shared-by-fileutils-and-textutils lib/Makefile.am are all the
15073         same.
15074         Use AC_CONFIG_LIBOBJ_DIR(lib) to tell the new
15075         AC_FUNC_GETLOADAVG where to find getloadavg.c.
15076         Require AC_FUNC_FTW, gt_INTTYPES_PRI, gl_CLOCK_TIME,
15077         UTILS_SYS_OPEN_MAX, GL_FUNC_GETCWD_PATH_MAX, GL_FUNC_READDIR,
15078         gl_FSUSAGE, gl_MOUNTLIST, AC_FUNC_CANONICALIZE_FILE_NAME.
15079         Remove code that is now done by the newly-required macros.
15080         Append $(EXEEXT) to DF_PROG.
15081         AC_LIBOBJ fchdir-stub if fchdir doesn't exist; similarly for fchown.
15082         Do not invoke or require the following here,
15083         since prereq.m4 or some gnulib .m4 now does this for us:
15084         gl_REGEX, UTILS_FUNC_MKDIR_TRAILING_SLASH, jm_BISON, gl_FUNC_MKTIME,
15085         jm_FUNC_LSTAT, jm_FUNC_STAT, jm_FUNC_REALLOC, jm_FUNC_MALLOC,
15086         jm_FUNC_NANOSLEEP, jm_FUNC_READDIR, jm_FUNC_MEMCMP,
15087         jm_FUNC_GLIBC_UNLOCKED_IO, AC_FUNC_FNMATCH_GNU, jm_FUNC_PUTENV,
15088         jm_AC_PREREQ_XSTRTOUMAX, jm_AC_PREREQ_XSTRTOIMAX,
15089         AC_FUNC_ERROR_AT_LINE, jm_FUNC_GNU_STRFTIME, AC_FUNC_VPRINTF,
15090         vb_FUNC_RENAME, UTILS_FUNC_MKSTEP, jm_FUNC_UTIME, AM_FUNC_GETLINE,
15091         AC_FUNC_OBSTACK.
15092         Do not replace the following functions, as this is now the job
15093         of some gnulib .m4: strcasecmp, strncasecmp, dup2, gethostname,
15094         getusershell, sig2str, strcspn, stpcpy, strstr, strtol, strtoul
15095         strpbrk, euidaccess, memcmp, rmdir, rpmatch, strndup, strverscmp,
15096         atexit getpass, strdup, getpagesize.
15097         Replace 'raise'.
15098         Do not check for the following functions, as this is now the job
15099         of some gnulib .m4: bcopy, canonicalize_file_name, fchdir, ftime,
15100         getcwd, getmntinfo, resolvepath.  But check for sysctl, setreuid,
15101         setregid.
15102         (jm_CHECK_ALL_HEADERS): Do not check for fenv.h.
15103         Check for sys/sysctl.h.
15104         (jm_CHECK_ALL_TYPES): Do not require AC_STRUCT_TM, AC_STRUCT_TIMEZONE,
15105         jm_CHECK_TYPE_STRUCT_TIMESPEC.  Invoke gt_TYPE_SSIZE_T instead
15106         of checking for ssize_t ourselves.
15107
15108         * m4/prereq.m4 (jm_PREREQ): Don't invoke macros; AC_REQUIRE them.
15109         Require every macro that gnulib/modules/* suggests for us.
15110         (jm_PREREQ_ADDEXT): New macro.
15111         (jm_PREREQ_STAT): Check for 'struct statfs' on Ultrix 4.4.
15112         Require jm_AC_TYPE_LONG_LONG instead of invoking it.
15113
15114         * m4/physmem.m4 (gl_SYS__SYSTEM_CONFIGURATION): New macro.
15115         (gl_PHYSMEM): Use it.
15116         Also check for `table' function.
15117         Check for new headers and functions.
15118         Add check for sys/sysmp.h.
15119         With suggestions from Kaveh Ghazi.
15120         Ignore headers that are present but cannot be compiled.  This
15121         avoids spurious warnings on Solaris 9 sparc with Forte Developer 7
15122         C 5.4.
15123
15124 2003-08-15  Paul Eggert  <eggert@twinsun.com>
15125
15126         Document merge from coreutils.
15127         * modules/userspec: Depend on posixver.
15128         * modules/strftime: Depend on tzset.
15129
15130 2003-08-15  Paul Eggert  <eggert@twinsun.com>
15131
15132         * lib/config.charset, ref-add.sin, ref-del.sin: Use three spaces,
15133         rather than tab, after '#' in shell-script copyright notices.
15134         Suggested by Bruno Haible.
15135
15136 2003-08-15  Paul Eggert  <eggert@twinsun.com>
15137
15138         * config/srclist-update: Use three spaces, rather than tab, after '#'
15139         in shell-script copyright notices.  Suggested by Bruno Haible.
15140         Remove unnecessary parenthesization in regular expression.
15141
15142 2003-08-15  Jim Meyering  <jim@meyering.net>
15143
15144         Merge from coreutils.
15145         * lib/xgethostname.c: Include <stdlib.h>.
15146         (xghostname): Don't exit for anything other than memory-related
15147         failure; just return NULL.
15148         * lib/userspec.c: Include "posixver.h".
15149         (parse_user_spec): Accept `.' as a separator only
15150         in pre-POSIX-200112 mode.
15151         * lib/strtoimax.c: Use #elif rather than #else #if.
15152         * lib/strftime.c (my_strftime) [!_LIBC && HAVE_TZNAME && HAVE_TZSET]:
15153         Remove function, now that we can rely on a working tzset function.
15154         [!_LIBC]: Ensure that the required autoconf test has been run.
15155         [!defined _NL_CURRENT && HAVE_STRFTIME]:
15156         Use underlying_strftime for %r.
15157         * lib/sha.c: Merge in some clean-up and optimization changes from glibc.
15158         * lib/sha.c (sha_stream) [BLOCKSIZE]: Move definition to top of file.
15159         Ensure that it is a multiple of 64.
15160         Rearrange loop exit tests so as to avoid performing an
15161         additional fread after encountering an error or EOF.
15162         * lib/realloc.c: Update copyright date.
15163
15164 2003-08-15  Jim Meyering  <jim@meyering.net>
15165         and Paul Eggert  <eggert@twinsun.com>
15166
15167         Merge from coreutils.
15168         * lib/readutmp.h (HAVE_UTMPX_H): Undef if struct utmp has the ut_exit
15169         member but strut utmpx does not.  Needed for AIX 4.3.3.
15170         (UT_EXIT_E_TERMINATION, UT_EXIT_E_EXIT): Define.
15171
15172 2003-08-15  Jim Meyering  <jim@meyering.net>
15173         and Paul Eggert  <eggert@cs.ucla.edu>
15174
15175         Merges from coreutils, etc.
15176         * m4/strftime.m4 (_jm_STRFTIME_PREREQS):
15177         Require gl_FUNC_TZSET_CLOBBER.
15178         * m4/readutmp.m4 (gl_READUTMP): Check for ut_exit.ut_exit, ut_exit.e_exit,
15179         ut_exit.ut_termination, and ut_exit.e_termination members.
15180
15181 2003-08-14  Paul Eggert  <eggert@twinsun.com>
15182
15183         Help the merge from coreutils.
15184         * m4/gettimeofday.m4 (gl_GETTIMEOFDAY_REPLACE_LOCALTIME): New macro.
15185         (AC_FUNC_GETTIMEOFDAY_CLOBBER): Use it.
15186         * m4/tzset.m4: Use it too.
15187
15188 2003-08-14  Paul Eggert  <eggert@twinsun.com>
15189
15190         * modules/tzset: New file.
15191
15192 2003-08-14  Jim Meyering  <jim@meyering.net>
15193
15194         Merges from coreutils.
15195         * modules/fnmatch: Use the `$(FNMATCH_H)' notation for AC_REPLACED
15196         variable names, rather than @FNMATCH_H@.
15197         * modules/alloca: Likewise for $(ALLOCA_H).
15198
15199         * modules/fnmatch (fnmatch.h): Use `$@' in the commands, in place of
15200         the three copies of the literal target, `fnmatch.h'.
15201         * modules/alloca (alloca.h): Likewise.
15202
15203 2003-08-14  Jim Meyering  <jim@meyering.net>
15204
15205         Merge from coreutils.
15206         * m4/tzset.m4: New file.
15207         * m4/ls-mntd-fs.m4 (jm_LIST_MOUNTED_FILESYSTEMS): Move the MOUNTED_VMOUNT
15208         test to precede the MOUNTED_GETMNTENT1 tests, since otherwise, AIX 5.1
15209         systems would end up using the latter.  MOUNTED_GETMNTENT1 support
15210         is inadequate on such systems: 1) detecting whether a file system
15211         is remote doesn't work  2) the MOUNTED_VMOUNT code reports the
15212         HOSTNAME:/MOUNT_POINT, while the MOUNTED_GETMNTENT1 code reports
15213         merely /MOUNT_POINT.  Reported by Mike Jetzer.
15214
15215 2003-08-14  Jim Meyering  <jim@meyering.net>
15216
15217         Merge from coreutils.
15218         * lib/obstack.h: Whitespace changes.
15219         * lib/mountlist.c: Remove anachronistic casts of xmalloc, xrealloc,
15220         and xcalloc return values.
15221         (read_filesystem_list) [MOUNTED_GETFSSTAT]:
15222         Use MNT_NOWAIT, rather than MNT_WAIT.  Otherwise, `df DIR' could
15223         hang on OSF/1 5.1 for DIR on both local and remote file systems.
15224         Reported by (and fix confirmed by) Nelson H. F. Beebe.
15225         (read_filesystem_list) [MOUNTED_VMOUNT]: Detect any
15226         error from mntctl.
15227         Use mntctl's return value to drive the entry-processing loop, since
15228         we can't rely on the value of the vmt_length member in the last
15229         entry.  On some systems doing so could result in exhausting
15230         virtual memory.  Based in part on a patch from Mike Jetzer.
15231
15232 2003-08-14  Jim Meyering  <jim@meyering.net>
15233         and Paul Eggert  <eggert@twinsun.com>
15234
15235         Merges from coreutils, plus other fixes.
15236         * lib/physmem.c: Merge in portability changes from gcc/libiberty
15237         to support AIX, IRIX, Tru64, and Windows.  See the ChangeLog there
15238         for credits and details.  Thanks to Kaveh Ghazi for helping
15239         to keep these files in sync.
15240         (ARRAY_SIZE): Define it.
15241         (physmem_total, physmem_available): Add comments. From Kaveh Ghazi.
15242         * lib/memcasecmp.c: Remove unnecessary parentheses after 'defined'.
15243         (memcasecmp): Don't assume size_t fits in unsigned int.
15244         Remove casts and duplicate code.
15245         * lib/md5.c: Include <string.h> and <stdlib.h> unconditionally.
15246         (memcpy): Remove definition.
15247         Merge in some clean-up and optimization changes from glibc.
15248         [BLOCKSIZE]: Move definition to top of file.
15249         Ensure that it is a multiple of 64.
15250         Rearrange loop exit tests so as to avoid performing an
15251         additional fread after encountering an error or EOF.
15252         * lib/md5.h (md5_uintptr): Define.
15253         * lib/makepath.c (CLEANUP_CWD): Report an error if we failed to
15254         return to the initial working directory.  Preserve errno
15255         for caller.
15256         * lib/idcache.c: Include "xalloc.h".
15257         (xmalloc, xrealloc): Remove decls.
15258         (getuser): Remove casts no longer required in C89.
15259         * lib/human.c: Include stdio.h, for sprintf.
15260         * lib/group-member.c: Include "xalloc.h".
15261         (xmalloc, xrealloc): Remove decls.
15262         (get_group_info): Remove casts no longer required in C89.
15263         * lib/getusershell.c (readname): Remove casts no longer required in C89.
15264         * lib/gettimeofday.c (rpl_gmtime, rpl_tzset): New functions.
15265         * lib/getline.c: Whitespace fix, from coreutils.
15266
15267 2003-08-13  Paul Eggert  <eggert@twinsun.com>
15268
15269         * m4/exclude.m4 (gl_EXCLUDE): Require AC_C_INLINE, AC_HEADER_STDC.
15270         Check for isascii.
15271
15272         * m4/gettext.m4, iconv.m4, intdiv0.m4, inttypes-pri.m4, lib-link.m4,
15273         lib-prefix.m4, longdouble.m4, po.m4, progtest.m4, signed.m4:
15274         Undo previous (whitespace-only) change.
15275
15276 2003-08-13  Paul Eggert  <eggert@twinsun.com>
15277
15278         * lib/exclude.c: Include <ctype.h>
15279         (IN_CTYPE_DOMAIN): New macro.
15280         (is_space): New fn.
15281         (add_exclude_file): If LINE_END is a space, ignore trailing spaces
15282         and empty lines.
15283
15284         * lib/argp-help.c, argp-parse.c, config.charset, getopt.h:
15285         Undo previous (whitespace-only) change.
15286
15287 2003-08-13  Paul Eggert  <eggert@twinsun.com>
15288
15289         * config/srclist-update: Change update back to the old behavior, leaving
15290         whitespace alone.  Use one 'sed' command rather than a pipeline.
15291         (fixlicense): Now a variable, not a function.
15292         (remove_trailing_blanks): Remove.
15293         (fixfile): Don't invoke unexpand or cat, or remove trailing blanks.
15294         * config/config.guess, config.sub, install-sh, missing, texinfo.tex:
15295         Undo previous (whitespace-only) change.
15296
15297 2003-08-12  Paul Eggert  <eggert@twinsun.com>
15298
15299         Merge from coreutils.
15300         * modules/euidaccess: Add lib_SOURCES, include for new
15301         file euidaccess.h
15302
15303 2003-08-12  Paul Eggert  <eggert@twinsun.com>
15304
15305         * m4/gettext.m4, iconv.m4, intdiv0.m4, inttypes-pri.m4, lib-link.m4,
15306         lib-prefix.m4, longdouble.m4, po.m4, progtest.m4, signed.m4:
15307         Normalize leading white space and remove trailing white space.
15308
15309         Merge from coreutils
15310         * m4/euidaccess.m4 (gl_FUNC_EUIDACCESS): Check for euidaccess decl.
15311
15312         * m4/lib-ld.m4, lib-link.m4, lib-prefix.m4: Regenerate from gettext
15313         0.12.1.  These files are now being upgraded automatically by
15314         ../config/srclist-update.
15315
15316 2003-08-12  Paul Eggert  <eggert@twinsun.com>
15317
15318         * lib/argp-help.c, argp-parse.c, config.charset, getopt.h:
15319         Normalize leading white space and remove trailing white space.
15320         * lib/ref-add.sin, ref-del.sin: Use '#' before empty line in copyright
15321         notice, as per ../config/srclist-update.
15322
15323         Merge from coreutils.
15324         * lib/euidaccess.h: New file.
15325         * lib/euidaccess.c: Include it.
15326         * lib/.cppi-disable: Add printf-args.h, printf-parse.h, stdbool_.h,
15327         vasnprintf.h, vasprintf.h.  Remove strdup.c, gettext.h.
15328         * lib/regex.h, strdup.c, strtoll.c, strtoul.c: Normalize white space.
15329
15330 2003-08-12  Paul Eggert  <eggert@twinsun.com>
15331
15332         * config/srclist-update: Add copyright notice.
15333         (remove_id_lines, remove_trailing_blanks): New constants.
15334         (fixfile): Use them to normalize spacing a bit in copied files.
15335         * config/config.guess, config.sub, install-sh, missing, texinfo.tex:
15336         Normalize leading white space and remove trailing white space.
15337
15338         * config/texinfo.tex: Sync with texinfo.
15339
15340         * config/srclist.txt: Don't get regex.h, strdup.c, strtoll.c,
15341         strtoul.c from libc, to merge coreutils whitespace changes.
15342
15343         * config/srclist.txt: Get the following m4 files from gettext:
15344         codeset.m4, gettext.m4, glibc21.m4, iconv.m4, intdiv0.m4,
15345         inttypes-pri.m4, lcmessage.m4, lib-ld.m4, lib-link.m4, lib-prefix.m4,
15346         longdouble.m4, nls.m4, po.m4, progtest.m4, signed.m4, wchar_t.m4,
15347         wint_t.m4.
15348
15349 2003-08-12  Karl Berry  <karl@gnu.org>
15350
15351         * config/srclist.txt: can't sync vasnprintf.c any more, changes have been
15352         made.
15353
15354 2003-08-11  Paul Eggert  <eggert@twinsun.com>
15355
15356         * modules/gnu-source, m4/gnu-source.m4:
15357         Remove; we're assuming Autoconf 2.54 or later now.
15358         Suggested by Bruno Haible.
15359         * MODULES.html.sh (func_all_modules): Remove gnu-source.
15360
15361 2003-08-11  Bruno Haible  <bruno@clisp.org>
15362
15363         * m4/vasnprintf.m4 (gl_PREREQ_VASNPRINTF): Also check for wcslen.
15364
15365 2003-08-11  Bruno Haible  <bruno@clisp.org>
15366
15367         * lib/vasnprintf.c (local_wcslen): New function, for Solaris 2.5.1.
15368         (vasnprintf): Use it instead of wcslen.
15369
15370 2003-08-11  Bruno Haible  <bruno@clisp.org>
15371
15372         * lib/stdbool_.h (_Bool): Undo last change; instead use a negative enum
15373         value to ensure that _Bool promotes to int. Use #define for _Bool when
15374         using the Solaris C compiler. Adds comments suggested by Paul Eggert.
15375
15376 2003-08-10  Karl Berry  <karl@gnu.org>
15377
15378         * lib/regex.h: update from libc (whitespace fix).
15379
15380 2003-08-09  Paul Eggert  <eggert@twinsun.com>
15381
15382         Merge some files from coreutils.  These changes were
15383         originally made by Jim Meyering.
15384         * lib/acl.c: Include <sys/types.h> before <sys/stat.h>;
15385         many older Unixes require this.
15386         * lib/alloca.c (alloca): Remove cast to argument of free;
15387         no longer needed in C89.
15388         * lib/alloca_.h, regex.h: Fix white space to match
15389         what GNU indent does.
15390
15391 2003-08-09  Paul Eggert  <eggert@twinsun.com>
15392
15393         * m4/regex.m4 (jm_INCLUDED_REGEX): Change "\201" to "\371";
15394         apparently Emacs's Unicode mode got confused before my 2003-08-05
15395         checkin.
15396
15397 2003-08-08  Paul Eggert  <eggert@twinsun.com>
15398
15399         * m4/extensions.m4: New file.
15400         * m4/timespec.m4 (jm_CHECK_TYPE_STRUCT_TIMESPEC):
15401         Require gl_USE_SYSTEM_EXTENSIONS.
15402         * m4/unlocked-io.m4 (jm_FUNC_GLIBC_UNLOCKED_IO):
15403         Require gl_USE_SYSTEM_EXTENSIONS rather than AC_GNU_SOURCE.
15404
15405 2003-08-08  Paul Eggert  <eggert@twinsun.com>
15406
15407         * MODULES.html.sh (func_all_modules): Add extensions, gnu-source.
15408         * modules/extensions, modules/gnu-source: New files.
15409         * modules/timespec, modules/unlocked-io: Depend on extensions.
15410
15411 2003-08-07 Paul Eggert  <eggert@twinsun.com>
15412
15413         * modules/restrict: New file.
15414         * MODULES.html.sh (func_all_modules): Add restrict.
15415         * modules/regex: Depend on restrict.
15416
15417 2003-08-07  Paul Eggert  <eggert@twinsun.com>
15418
15419         * m4/restrict.m4: New file.
15420         * m4/regex.m4 (jm_PREREQ_REGEX): Add gl_C_RESTRICT.
15421
15422 2003-08-07  Bruno Haible  <bruno@clisp.org>
15423
15424         * modules/getndelim2 (Makefile.am): Add the files to EXTRA_DIST, not
15425         lib_SOURCES, because getndelim2.m4 now uses AC_LIBOBJ(getndelim2).
15426
15427 2003-08-07  Bruno Haible  <bruno@clisp.org>
15428
15429         * m4/getndelim2.m4 (gl_GETNDELIM2): Use AC_LIBOBJ(getndelim2). This makes
15430         the module 'getndelim2' compatible with the module 'getline'.
15431
15432 2003-08-05  Paul Eggert  <eggert@twinsun.com>
15433
15434         * m4/regex.m4 (jm_INCLUDED_REGEX): Replace a single non-ASCII
15435         byte with "\201" to avoid glitches when editing that source file
15436         with multi-gnome-terminal.
15437
15438 2003-08-05  Paul Eggert  <eggert@twinsun.com>
15439
15440         * lib/bumpalloc.h: Remove.
15441
15442 2003-08-05  Paul Eggert  <eggert@twinsun.com>
15443
15444         * MODULES.html.sh (func_all_modules): Remove bumpalloc.
15445         * modules/bumpalloc: Remove.
15446
15447 2003-08-04  Paul Eggert  <eggert@twinsun.com>
15448
15449         * lib/getloadavg.c: Change copyright notice and spacing to conform to
15450         GNU coding style.
15451
15452         Merge from coreutils.
15453         * lib/error.c [!USE_IN_LIBIO]: Omit this case; assume USE_IN_LIBIO is 1.
15454         From glibc.
15455         * lib/getdate.y (date): Also accept dates like May-23-2003; suggestion
15456         from Karl Berry, implemented by Jim Meyering.
15457         * lib/getgroups.c: Include "xalloc.h" instead of declaring xalloc fns;
15458         from Dmitry V. Levin.
15459         Remove anachronistic cast of xrealloc.
15460         * lib/fnmatch_.h (__const): Remove.  Use 'const'.
15461         * lib/fnmatch_loop.c (NEW_PATTERN): Cast alloca return value to proper
15462         type. Otherwise, it wouldn't compile with at least /bin/cc on
15463         ymp-cray-unicos9.0.2.X.
15464         Combine two mostly-identical uses of alloca into one.
15465         Thanks to the Cray-Cyber project for access to a Cray Y-MP.
15466
15467 2003-08-04  Dave Love <d.love@dl.ac.uk>
15468
15469         [From Emacs.]
15470
15471         * lib/getloadavg.c: Check `__unix' as well as `unix'.  Use #ifdef, not
15472         #if.  Check HAVE_LIBKSTAT as well as LOAD_AVE_TYPE.  Check
15473         F_SETFD, not FD_SETFD.  Use HAVE_STRUCT_NLIST_N_UN_N_NAME, not
15474         obsolete NLIST_NAME_UNION.
15475         [__GNU__]: Undef BSD and FSCALE.
15476         [!NLIST_STRUCT]: Remove conditional definition of NLIST_STRUCT.
15477
15478 2003-08-03  Paul Eggert  <eggert@twinsun.com>
15479
15480         * lib/stdbool_.h (_Bool): Make it signed char, instead of
15481         an enum type, so that it's guaranteed to promote to int.  See:
15482         <http://mail.gnu.org/archive/html/bug-gnulib/2003-07/msg00124.html>
15483
15484 2003-08-03  Karl Berry  <karl@gnu.org>
15485
15486         * config/depcomp: update from automake.
15487
15488 2003-07-31  Paul Eggert  <eggert@twinsun.com>
15489
15490         * lib/strerror.c: Include config.h, limits.h.  Declare sprintf.
15491         (strerror): Don't assume that a printable int fits in 14 bytes.
15492
15493 2003-07-31  Bruno Haible  <bruno@clisp.org>
15494
15495         * modules/getpass-gnu: New file.
15496         * MODULES.html.sh (func_all_modules): Add getpass-gnu.
15497
15498 2003-07-31  Bruno Haible  <bruno@clisp.org>
15499
15500         * m4/getpass.m4 (gl_FUNC_GETPASS_GNU): New macro.
15501
15502 2003-07-24  Karl Berry  <karl@gnu.org>
15503
15504         * config/missing: update from automake.
15505
15506 2003-07-24  Derek Robert Price  <derek@ximbiot.com>
15507             Bruno Haible  <bruno@clisp.org>
15508
15509         * lib/getline.h (getline, getdelim): Change return type to ssize_t.
15510         * lib/getline.c (getline, getdelim): Likewise.
15511         Remove _GNU_SOURCE define; now it's defined in config.h through
15512         m4/getline.m4.
15513
15514 2003-07-23  Karl Berry  <karl@gnu.org>
15515
15516         * config/config.sub: update from prep.
15517
15518 2003-07-22  Paul Eggert  <eggert@twinsun.com>
15519
15520         * modules/xalloc (Depends-on): Add exitfail.
15521         * modules/xmemcoll: Likewise.
15522
15523 2003-07-22  Paul Eggert  <eggert@twinsun.com>
15524
15525         * lib/xalloc.h (XCALLOC, XREALLOC, CCLONE): Fix under- and
15526         over-parenthesization in macros.
15527
15528         Sync with coreutils.
15529
15530         * lib/xalloc.h (XMALLOC, XCALLOC, XREALLOC): Remove casts not
15531         required by C99.
15532
15533         Use `exit_failure' for xalloc and xmemcoll instead of their own
15534         private exit-failure variables.
15535         * lib/xalloc.h (xalloc_exit_failure): Remove.
15536         * lib/xmalloc.c: Likewise.  Include exitfail.h.
15537         (xalloc_die): Use exit_failure instead of xalloc_exit_failure.
15538         * lib/xmemcoll.h (xmemcoll_exit_failure): Remove.
15539         * lib/xmemcoll.c: Likewise.  Include exitfail.h.
15540         (xmemcoll): Use exit_failure instead of xalloc_exit_failure.
15541
15542 2003-07-20  Jim Meyering  <jim@meyering.net>
15543
15544         * modules/closeout (Depends-on): Add exitfail.
15545         Suggestion from Bruno Haible.
15546
15547 2003-07-19  Karl Berry  <karl@gnu.org>
15548
15549         * config/config.sub: update from prep.
15550
15551 2003-07-18  Paul Eggert  <eggert@twinsun.com>
15552
15553         * lib/closeout.h (close_stdout_set_status, close_stdout_status): Remove.
15554         * lib/closeout.c: Likewise.  Include "closeout.h" right after config.h,
15555         to test that it can stand by itself.  Include "exitfail.h".
15556         Clients should set exit_failure instead.
15557         (EXIT_FAILURE): Remove; no longer needed.  Do not include <stdlib.h>.
15558
15559 2003-07-18  Bruno Haible  <bruno@clisp.org>
15560
15561         * modules/getndelim2: New file.
15562         * modules/getline: Share files with module getndelim2.
15563         * modules/getnline: Depend on getndelim2 instead of sharing files with
15564         it. Add getnline.c to lib_SOURCES.
15565         * MODULES.html.sh (func_all_modules): Add getndelim2.
15566
15567 2003-07-18  Bruno Haible  <bruno@clisp.org>
15568
15569         * m4/getndelim2.m4: New file.
15570         * m4/getline.m4 (AM_FUNC_GETLINE): Add AC_LIBOBJ of getndelim2.c and
15571         invoke gl_PREREQ_GETNDELIM2.
15572         (gl_PREREQ_GETLINE): Drop AC_HEADER_STDC, now done by
15573         gl_PREREQ_GETNDELIM2.
15574         * m4/getnline.m4 (gl_GETNLINE): Drop AC_HEADER_STDC, now done by
15575         gl_GETNDELIM2.
15576
15577 2003-07-18  Bruno Haible  <bruno@clisp.org>
15578
15579         * lib/getndelim2.h: New file.
15580         * lib/getndelim2.c: Make into a module of its own. Include config.h,
15581         getndelim2.h.
15582         (getndelim2): Make non-static. Change return type to ssize_t.
15583         * lib/getline.h: Change argument names.
15584         * lib/getline.c: Include getndelim2.h instead of getndelim2.c.
15585         * lib/getnline.c: Include getndelim2.h.
15586
15587 2003-07-18  Andreas Schwab  <schwab@suse.de>
15588
15589         * lib/memcoll.c (memcoll) [!HAVE_STRCOLL]: Clear errno.
15590
15591 2003-07-17  Karl Berry  <karl@gnu.org>
15592
15593         * config/config.sub: update from prep.
15594
15595 2003-07-17  Bruno Haible  <bruno@clisp.org>
15596
15597         * modules/getnline: New file.
15598         * modules/getline: Add lib/getndelim2.c to source file list.
15599         * MODULES.html.sh (func_all_modules): Add getnline.
15600
15601 2003-07-17  Bruno Haible  <bruno@clisp.org>
15602
15603         * m4/getnline.m4: New file.
15604
15605 2003-07-17  Bruno Haible  <bruno@clisp.org>
15606
15607         * m4/Makefile.am.in: Remove file.
15608         * m4/Makefile.am: Remove file.
15609         * m4/Makefile.in: Remove file.
15610
15611 2003-07-17  Bruno Haible  <bruno@clisp.org>
15612
15613         * lib/getnline.h: New file.
15614         * lib/getnline.c: New file.
15615         * lib/getndelim2.c: New file, extracted from getline.c.
15616         (getndelim2): Renamed from getdelim2, with added nmax argument.
15617         * lib/getline.c: Include getndelim2.c.
15618         (getdelim2): Moved out to getndelim2.c.
15619         (getline, getdelim): Update.
15620
15621 2003-07-17  Bruno Haible  <bruno@clisp.org>
15622
15623         * lib/Makefile.am: Remove file.
15624         * lib/Makefile.in: Remove file.
15625
15626 2003-07-17  Bruno Haible  <bruno@clisp.org>
15627
15628         * configure.in: Remove file.
15629         * Makefile.in: Remove file.
15630
15631 2003-07-17  Bruno Haible  <bruno@clisp.org>
15632
15633         * MODULES.html.sh: Put the </BODY> right before </HTML>.
15634
15635 2003-07-16  Karl Berry  <karl@gnu.org>
15636
15637         * config/srclist-update: was running fixlicense twice, which caused
15638                 texinfo.tex to be nullified for some reason.  Simplify,
15639                 $gplsrc is no longer needed as far as I can see?
15640
15641 2003-07-16  Jim Meyering  <jim@meyering.net>
15642
15643         * modules/save-cwd: Depend on xgetcwd.  From Derek Price.
15644
15645 2003-07-15  Paul Eggert  <eggert@twinsun.com>
15646
15647         * config/srclist.txt: Get the following files from gettext-runtime/intl
15648         instead: config.charset, localcharset.c, localcharset.h, ref-add.sin,
15649         ref-del.sin.  From Bruno Haible.
15650         * config/srclist-update (fixfile): Change grep pattern again, since the
15651         previous fix didn't work (there was another trailing $).  Use
15652         '[$]' to escape the $s.
15653
15654 2003-07-15  Karl Berry  <karl@gnu.org>
15655
15656         * lib/vasnprintf.c: update from gettext.
15657
15658 2003-07-15  Karl Berry  <karl@gnu.org>
15659
15660         * config/srclist-update (fixfile): Change grep pattern, since 'Id'
15661         gets expanded when surrounded by '$'.
15662
15663 2003-07-15  Jim Meyering  <jim@meyering.net>
15664
15665         * modules/save-cwd: Don't depend on error.  From Derek Price.
15666
15667 2003-07-15  Jim Meyering  <jim@meyering.net>
15668
15669         * lib/makepath.c (make_path): Enclose diagnostic in _(...).
15670
15671 2003-07-14  Simon Josefsson  <jas@extundo.com>
15672
15673         * modules/mempcpy: New file.
15674         * MODULES.html.sh (func_all_modules): Add mempcpy.
15675
15676 2003-07-14  Simon Josefsson  <jas@extundo.com>
15677
15678         * m4/mempcpy.m4: New file.
15679
15680 2003-07-14  Simon Josefsson  <jas@extundo.com>
15681
15682         * lib/mempcpy.h: New file.
15683         * lib/mempcpy.c: New file.
15684
15685 2003-07-14  Paul Eggert  <eggert@twinsun.com>
15686
15687         * modules/getdate, modules/posixtm: Depend on mktime.
15688
15689 2003-07-14  Paul Eggert  <eggert@twinsun.com>
15690
15691         * lib/ceill.c, expl.c, floorl.c, frexpl.c, ldexpl.c, mathl.h,
15692         sincosl.c, sqrtl.c, trigl.c, trigl.h, poll.c, poll_.h, mkstemp.c,
15693         unicodeio.c, unicodeio.h, unlocked-io.h:
15694         Switch from LGPL to GPL.
15695
15696 2003-07-14  Paul Eggert  <eggert@twinsun.com>
15697
15698         * lib/asnprintf.c, asprintf.c, config.charset, gettext.h,
15699         localcharset.c, localcharset.h, mkdtemp.c, printf-args.c,
15700         printf-args.h, printf-parse.c, printf-parse.h, ref-add.sin,
15701         ref-del.sin, setenv.c, unsetenv.c, vasnprintf.c, vasnprintf.h,
15702         vasprintf.c, vasprintf.h: Regenerate.  These files are now being
15703         updated automatically by ../config/srclist-update.  This changes
15704         their license from LPGL to GPL.
15705
15706 2003-07-14  Paul Eggert  <eggert@twinsun.com>
15707
15708         * config/srclist.txt: Add tons more gettext files.  $GETTEXT is now
15709         assumed to refer to the root of the most recent stable gettext version.
15710         * config/srclistvars.sh: Add defaults for eggert.
15711         * config/srclist-update: Convert LGPL to GPL in shell scripts, too.
15712         Match "This program" as well as "The program".  This is needed
15713         for gettext.
15714
15715 2003-07-14  Jim Meyering  <jim@meyering.net>
15716
15717         Don't emit diagnostics.  Let callers do that.
15718         * lib/save-cwd.c: Don't include "error.h".
15719         (save_cwd): Don't call error.  Ensure that errno is valid
15720         when returning nonzero.
15721
15722         * lib/save-cwd.h (restore_cwd): Update prototype.
15723         * lib/save-cwd.c (restore_cwd): Remove two parameters.
15724         Simplify.  Don't call error upon failure.  Let callers do that.
15725         (save_cwd): Mention that Irix 5.3 has the same problem as SunOS 4
15726         when auditing is enabled.  But don't bother updating the #if.
15727
15728 2003-07-11  Alexandre Duret-Lutz  <adl@gnu.org>
15729
15730         * lib/obstack.h (__INT_TO_PTR): Revert change of 2003-03-13;
15731         it breaks C++ compilation.
15732         [!__GNUC__ || !__STDC__] (obstack_finish): Cast result to void*.
15733
15734 2003-07-10  Simon Josefsson  <jas@extundo.com>
15735
15736         * modules/strchrnul (Makefile.am): Add strchrnul.h.
15737
15738 2003-07-10  Jim Meyering  <jim@meyering.net>
15739
15740         * m4/clock_time.m4: Remove trailing blank.
15741         * m4/intmax_t.m4: Likewise.
15742
15743 2003-07-10  Jim Meyering  <jim@meyering.net>
15744
15745         * lib/vasnprintf.c: Remove trailing blanks.
15746         Make cpp indentation consistent.
15747
15748 2003-07-09  Paul Eggert  <eggert@twinsun.com>
15749
15750         * lib/alloca_.h, euidaccess.c, getpass.c, memrchr.c, obstack.h,
15751         posixver.c, strftime.c, strnlen.c, strverscmp.c:
15752         Switch from LGPL to GPL.
15753
15754 2003-07-09  Paul Eggert  <eggert@twinsun.com>
15755
15756         * config/srclist.txt: Sort sublists.  Add $LIBCSRC/sysdeps/generic/strtoul.c.
15757         In comments, add more libc files that differ from gnulib for one
15758         reason or another; we'd like this list to be smaller but for now
15759         let's document what we have.
15760
15761 2003-07-08  Paul Eggert  <eggert@twinsun.com>
15762
15763         * config/srclist-update: Port to POSIX 1003.1-2001 hosts by avoiding the
15764         use of GNU extensions.  Change "x=`eval echo $x`" to the shorter
15765         and sweeter "eval x=$x".
15766         * config/srclist.txt: Get lib/argp* from glibc.
15767
15768 2003-07-07  Paul Eggert  <eggert@twinsun.com>
15769
15770         * lib/mktime.c: Fix some boundary cases and remove need for floating point.
15771
15772         Issue a compile-time diagnostic if time_t is floating point, or if
15773         two's complement arithmetic is not in effect, or if arithmetic
15774         right shift does not propagate the sign.  These assumptions were
15775         all in the original code but they weren't checked.
15776
15777         (TIME_T_MIDPOINT, verify): New macros.
15778         (__isleap): Remove; it has integer overflow problems.
15779         (leapyear): New function, without those problems.
15780         (ydhms_tm_diff): Remove; splitting into two parts.
15781         (ydhms_diff): New function, containing the arithmetic part of
15782         the old ydhms_tm_diff function.  Issue a compile-time
15783         diagnostic if we are not using C99 integer division.
15784         Avoid casts when possible.
15785         (guess_time_tm): New function, containing the checking part of
15786         the old ydhms_tm_diff function.  Return the new value, rather than
15787         the difference between it and the old.  Accept a new argument T
15788         so that *T specifies the old value.  Check for overflow in the result.
15789
15790         (__mktime_internal): Use a time_t offset, not a long int offset.
15791         This undoes the 2003-06-04 change, which is no longer needed now
15792         that we have better overflow checking.
15793         (localtime_offset): Likewise.
15794
15795         (__mktime_internal): Avoid harmful overflow on hosts where time_t
15796         and long are 64-bit but int is only 32-bit.
15797         (ydhms_diff): Use long int to store year1 and yday1.
15798         Issue a compile-time diagnostic if long int is not wide enough.
15799
15800         (__mktime_internal): Use long int to store adjusted year and yday.
15801         Use plain C rather than preprocessor commands, if that doesn't
15802         affect efficiency.
15803         Check for overflow (and try to repair) after each probe
15804         rather than checking only at the very end.  This avoids some bugs
15805         (e.g., southern hemisphere, behind GMT, and GMT offset at minimum time
15806         does not equal GMT offset at maximum time).
15807         Use integer to check for overflow rather than floating point; this
15808         is more portable to non-IEEE hosts, and is a tad faster.
15809         When we detect that we are oscillating between two values,
15810         don't check whether tm_isdst has the requested value, since
15811         we already know the answer.  When tm_isdst has the wrong value,
15812         use a different heuristic to find the right one, based on the
15813         extreme values actually observed in practice in tz2003a,
15814         rather than the (overly optimistic) "previous 3 calendar quarters".
15815
15816         (not_equal_tm, print_tm, check_result): Use "const T" rather than
15817         "T const" to accommodate glibc style.
15818         (check_result): Use less-confusing report format.  "long" -> "long int.
15819         (main): Likewise.
15820         Don't loop if the iteration overflows time_t.
15821         Allow a negative step in the iteration.
15822
15823 2003-07-06  Karl Berry  <karl@gnu.org>
15824
15825         * config/depcomp: update from automake.
15826         * config/config.sub: update from prep.
15827
15828 2003-07-03  Karl Berry  <karl@gnu.org>
15829
15830         * config/config.guess: update from prep.
15831
15832 2003-07-01  Paul Eggert  <eggert@twinsun.com>
15833
15834         * m4/xreadlink.m4 (gl_XREADLINK): Don't check for sys/types.h, since
15835         xreadlink.c now includes it unconditionally.
15836
15837 2003-07-01  Paul Eggert  <eggert@twinsun.com>
15838
15839         * lib/xreadlink.c: Include <sys/types.h> unconditionally, instead of
15840         having it depend on HAVE_SYS_TYPES_H.
15841
15842 2003-07-01  Bruno Haible  <bruno@clisp.org>
15843
15844         * m4/ssize_t.m4 (gt_TYPE_SSIZE_T): Don't include <unistd.h>. <sys/types.h>
15845         should be sufficient.
15846         Reported by Paul Eggert.
15847
15848 2003-06-26  Karl Berry  <karl@gnu.org>
15849
15850         * config/depcomp: update from automake.
15851
15852 2003-06-26  Bruno Haible  <bruno@clisp.org>
15853
15854         * modules/human: Depend on module stdbool.
15855
15856 2003-06-25  Bruno Haible  <bruno@clisp.org>
15857
15858         * modules/readlink: New file.
15859         * modules/xreadlink: Depend on it.
15860         * MODULES.html.sh (func_all_modules): Add readlink.
15861
15862 2003-06-25  Bruno Haible  <bruno@clisp.org>
15863
15864         * m4/readlink.m4: New file.
15865
15866 2003-06-25  Bruno Haible  <bruno@clisp.org>
15867
15868         * lib/readlink.c: New file.
15869
15870 2003-06-22  Karl Berry  <karl@gnu.org>
15871
15872         * config/srclist.txt: update mkinstalldirs from automake.
15873         * config/mkinstalldirs: update.
15874
15875 2003-06-22  Bruno Haible  <bruno@clisp.org>
15876
15877         Portability to mingw32.
15878         * m4/ssize_t.m4: New file, from GNU gettext.
15879         * m4/safe-read.m4 (gl_PREREQ_SAFE_READ): Require gt_TYPE_SSIZE_T.
15880         * m4/xreadlink.m4 (gl_XREADLINK): Require gt_TYPE_SSIZE_T.
15881
15882 2003-06-22  Bruno Haible  <bruno@clisp.org>
15883
15884         * modules/safe-read: Add m4/ssize_t.m4.
15885         * modules/xreadlink: Add m4/ssize_t.m4.
15886
15887 2003-06-20  Bruno Haible  <bruno@clisp.org>
15888
15889         Assume C89, so PARAMS isn't needed.
15890         * lib/unicodeio.h (PARAMS): Remove.
15891         * lib/unicodeio.c: Don't use PARAMS.
15892
15893 2003-06-18  Karl Berry  <karl@gnu.org>
15894
15895         * config/config.{guess,sub}: update from prep.
15896
15897 2003-06-18  Jim Meyering  <jim@meyering.net>
15898
15899         Merge changes from coreutils.
15900         * lib/readutmp.c: Include <string.h> and <stdlib.h> unconditionally.
15901         Remove explicit declarations of xmalloc and realloc.
15902         Include xalloc.h.
15903         (read_utmp): Remove anachronistic cast of xmalloc.
15904
15905 2003-06-17  Paul Eggert  <eggert@twinsun.com>
15906
15907         Assume C89, so PARAMS isn't needed.
15908         * lib/backupfile.h (PARAMS): Remove.  All uses removed.
15909         * lib/closeout.h, dirname.h, filemode.h, fsusage.h, getdate.h, getline.h,
15910         group-member.h, hard-locale.h, hash.h, linebuffer.h, long-options.h,
15911         makepath.h, memcasecmp.h, memcoll.h, modechange.h, mountlist.h,
15912         path-concat.h, physmem.h, posixtm.h, quote.h, readutmp.h, same.h,
15913         save-cwd.h, savedir.h, stdio-safer.h, strtoimax.c, strverscmp.h,
15914         unistd-safer.h, version-etc.h, xalloc.h, xreadlink.h, xstrtod.h,
15915         xstrtol.h: Likewise.
15916         * lib/filemode.h, hard-locale.h, memcoll.h, modechange.h, physmem.h,
15917         same.h, strverscmp.h: Do not include config.h; no longer needed.
15918         Anyway, config.h should always be included before any other file.
15919
15920 2003-06-11  Simon Josefsson  <jas@extundo.com>
15921
15922         * modules/sysexits: New file.
15923         * MODULES.html.sh (func_all_modules): Add sysexits.
15924
15925 2003-06-11  Simon Josefsson  <jas@extundo.com>
15926
15927         * lib/sysexit_.h: New file.
15928
15929 2003-06-11  Derek Price  <derek@ximbiot.com>
15930
15931         * lib/stat.c [LSTAT]: Compile/use slash_aware_lstat only if it is necessary.
15932
15933 2003-06-11  Bruno Haible  <bruno@clisp.org>
15934
15935         * m4/sysexits.m4: New file.
15936
15937 2003-06-10  Simon Josefsson <jas@extundo.com>
15938
15939         * lib/argp.h: New file, from glibc.
15940         * lib/argp-ba.c: New file, from glibc.
15941         * lib/argp-eexst.c: New file, from glibc.
15942         * lib/argp-fmtstream.c: New file, from glibc.
15943         * lib/argp-fmtstream.h: New file, from glibc.
15944         * lib/argp-fs-xinl.c: New file, from glibc.
15945         * lib/argp-help.c: New file, from glibc.
15946         * lib/argp-namefrob.h: New file, from glibc.
15947         * lib/argp-parse.c: New file, from glibc.
15948         * lib/argp-pv.c: New file, from glibc.
15949         * lib/argp-pvh.c: New file, from glibc.
15950         * lib/argp-xinl.c: New file, from glibc.
15951
15952 2003-06-10  Simon Josefsson  <jas@extundo.com>
15953
15954         * modules/strchrnul: New file.
15955
15956 2003-06-10  Simon Josefsson  <jas@extundo.com>
15957
15958         * modules/argp: New file.
15959
15960 2003-06-10  Simon Josefsson  <jas@extundo.com>
15961
15962         * m4/strchrnul.m4: New file.
15963
15964 2003-06-10  Simon Josefsson  <jas@extundo.com>
15965
15966         * lib/strchrnul.h: New file.
15967         * lib/strchrnul.c: New file.
15968
15969 2003-06-10  Bruno Haible  <bruno@clisp.org>
15970
15971         * MODULES.html.sh (func_all_modules): Add strchrnul and argp.
15972
15973 2003-06-07  Karl Berry  <karl@gnu.org>
15974
15975         * config/config.{guess,sub}: update from prep.
15976
15977 2003-06-07  Jim Meyering  <jim@meyering.net>
15978
15979         * modules/strtod: Use $(...) notation, not @...@ for
15980         AC_REPLACE'd variables.
15981         * modules/localcharset: Likewise.
15982
15983 2003-06-07  Jim Meyering  <jim@meyering.net>
15984
15985         * lib/readtokens.h: Put `Free Software Foundation, Inc.'
15986         in place of my name in the copyright comment.
15987         Remove definition and uses of __P.
15988
15989         From coreutils.
15990         * lib/stat.c: Don't declare xmalloc explicitly.
15991         Instead, include "xalloc.h".
15992         * lib/readtokens.c (readtokens): Remove anachronistic casts of xmalloc,
15993         xrealloc, and xcalloc return values.
15994         * lib/xgetcwd.c (xgetcwd): Include "xgetcwd.h".
15995         Improve comment.
15996         * lib/xgetcwd.h: Remove definition/uses of PARAMS.
15997
15998 2003-06-07  Bruno Haible  <bruno@clisp.org>
15999
16000         * modules/poll (Makefile.am): Use explicit creation rule for poll.h, to
16001         avoid AC_CONFIG_LINKS.
16002         * modules/fnmatch (Makefile.am): Use explicit creation rule for
16003         fnmatch.h, to avoid AC_CONFIG_LINKS.
16004         * modules/alloca (Makefile.am): Make creation of alloca.h Ctrl-C safe.
16005
16006 2003-06-07  Bruno Haible  <bruno@clisp.org>
16007
16008         * m4/fnmatch.m4 (_AC_LIBOBJ_FNMATCH, gl_FUNC_FNMATCH_POSIX,
16009         gl_FUNC_FNMATCH_GNU): Set FNMATCH_H instead of invoking
16010         AC_CONFIG_LINKS. Needed to allow for a different name of the lib
16011         directory.
16012         * m4/poll.m4 (gl_FUNC_POLL): Set POLL_H instead of invoking
16013         AC_CONFIG_LINKS. Needed to allow for a different name of the lib
16014         directory.
16015
16016 2003-06-06  Jim Meyering  <jim@meyering.net>
16017
16018         Merge from coreutils.
16019         * lib/same.c: (same_name): Declare *_basename locals to be `const'.
16020         Consolidate declarations and initializations of *_base* locals.
16021
16022         Merge from coreutils.
16023         This avoids a core dump on systems without GNU putenv,
16024         when running `env -u SOME_ALREADY_UNSET_VARIABLE'.
16025         * lib/putenv.c (__set_errno, LOCK, UNLOCK): Define.
16026         (unsetenv): New static function, from GNU libc.
16027         (rpl_putenv): Use it.
16028
16029         * lib/modechange.c: Remove trailing blanks.
16030
16031         Merge from coreutils.
16032         * lib/fsusage.c: Remove declaration of statfs.
16033         It conflicted with one from OSF/1 5.1 in <sys/mount.h>.
16034
16035         * lib/posixtm.c: Include <stdbool.h> unconditionally.
16036
16037 2003-06-06  Jim Meyering  <jim@meyering.net>
16038
16039         * lib/stdbool_.h: Renamed from stdbool.h.in.
16040
16041 2003-06-06  Jim Meyering  <jim@meyering.net>
16042             Bruno Haible  <bruno@clisp.org>
16043
16044         * modules/stdbool: Reflect renaming: stdbool.h.in -> stdbool_.h.
16045         Adjust Makefile.am snippet not to redirect directly to target.
16046         Use $(STDBOOL_H) notation, not @STDBOOL_H@ for AC_REPLACE'd variables.
16047
16048 2003-06-05  Paul Eggert  <eggert@twinsun.com>
16049
16050         * lib/mktime.c (__mktime_internal): When resolving a tm_isdst
16051         mismatch, look in future quarters as well as past.  This fixes a
16052         bug when processing fall-backwards gaps immediately after a long
16053         period of daylight-saving time.
16054
16055         * lib/mktime.c: Assume freestanding C89 or better.
16056         (HAVE_LIMITS_H): Remove.  Assume it's 1.
16057         (__P): Remove; not used.
16058         (CHAR_BIT, INT_MIN, INT_MAX): Remove; <limits.h> defines them.
16059         (mktime, not_equal_tm, print_tm, check_result,
16060         main): Use prototypes.  Use const * where appropriate.
16061         (main): Fix typo in testing code that uncovered by above changes.
16062         (Local Variables): Remove -DHAVE_LIMITS_H from compile-command.
16063
16064 2003-06-04  Paul Eggert  <eggert@twinsun.com>
16065
16066         * m4/human.m4 (gl_HUMAN): Require AM_STDBOOL_H.  Check for
16067         locale.h, localeconv.  This merges changes from coreutils.
16068
16069         * m4/mktime.m4 (AC_FUNC_MKTIME): New macro, taken from Autoconf CVS.
16070         It can be removed after the next Autoconf is released.
16071         * m4/exclude.m4 (gl_EXCLUDE): Don't check for sys/types.h; no loner
16072         needed.
16073
16074 2003-06-04  Paul Eggert  <eggert@twinsun.com>
16075
16076         * lib/mktime.c: Fix Debian bug 177940
16077         <http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=177940>.
16078         (localtime_offset): Now long int, not time_t, because we want it
16079         to be guaranteed to be signed.  All uses changed.
16080         (__mktime_internal): If overflow would occur when adding offset,
16081         don't add it.
16082
16083         Merge 'human' changes from coreutils.  Rewrite to support
16084         locale-specific notations like thousands separators.
16085         * lib/human.c: Simplify authorship notice.
16086         Include human.h immediately after config.h.
16087         <sys/types.h>, <stdio.h>: Do not include; no longer needed.
16088         <limits.h>: Do not include, since human.h does.
16089         (SIZE_MAX, UINTMAX_MAX): New macros.
16090         <strings.h>: Include if HAVE_STRINGS_H, not if !HAVE_STRING_H.
16091         <locale.h>: Include if HAVE_LOCALE_H and HAVE_LOCALECONV.
16092         (HUMAN_READABLE_SUFFIX_LENGTH_MAX): New macro.
16093         (power_letter): Renamed from suffixes.
16094         (generate_suffix_backwards): Remove.
16095         (adjust_value): Now takes int style (because of human.h changes)
16096         and long double value (for greater precision on some platforms).
16097         (group_number): New function.
16098         (human_readable): Use it.  Use integer options, not enum.
16099         Put the options before the sizes in the arg list.
16100         Support all the new options.
16101         The old human_readable function has been removed;
16102         use inttostr.h instead.
16103         (human_readable, default_block_size, humblock):
16104         Use uintmax_t, not int, for block sizes.
16105         (human_readable_inexact, block_size_types): Remove.
16106         (block_size_opts): New constant.
16107         (human_options): Renamed from human_block_size, with new signature
16108         that allows block sizes up to UINTMAX_MAX.  All callers changed.
16109         * lib/human.h: Add copyright and authorship notice.
16110         Include <limits.h> and <stdbool.h> unconditionally.
16111         (PARAMS): Remove.  All uses removed.
16112         (LONGEST_HUMAN_READABLE): Add support for thousands separator.
16113         (enum human_inexact_style): Remove tag; now a nameless enum.
16114         (human_floor, human_ceiling, human_round_to_even): Now have
16115         values 2, 0, 1 rather than -1, 1, 0.
16116         (human_group_digits, human_suppress_point_zero, human_autoscale,
16117         human_base_1024, human_SI, human_B): New constants.
16118         (human_readable_inexact, human_block_size): Remove.
16119         (human_readable): Size args are now uintmax_t, not int.
16120         (human_options): New decl.
16121
16122         * lib/exclude.c: (new_exclude, add_exclude): Remove casts that are
16123         unnecessary now that we assume C89 or better.  This change
16124         imported from coreutils.
16125
16126         * lib/mktime.c (__mktime_internal): Do not reject negative timestamps
16127         arbitrarily.  This is the same patch as 2003-05-28, but it got lost
16128         in the 2003-05-30 sync from glibc.
16129
16130         .h files should stand alone, but we shouldn't include <sys/types.h>
16131         if we can get away with just <stddef.h>.
16132
16133         * lib/__fpending.h, addext.c, backupfile.c, exclude.c, getline.c,
16134         malloc.c, putenv.c, realloc.c, strcasecmp.c: Include <stddef.h>
16135         rather than <sys/types.h>, as we merely need size_t.
16136         * lib/dirname.h, memcoll.h, xalloc.h, xmemcoll.h: Include <stddef.h>,
16137         to get size_t.
16138         * lib/hash.h, linebuffer.h, readtokens.h, stdio-safer.h, version-etc.h:
16139         Include <stdio.h>, to get FILE.
16140         * lib/memcasecmp.c: Don't include <sys/types.h>, as we can assume
16141         memcasecmp.h has included <stddef.h> and all we need is size_t.
16142         * lib/memcoll.c: Include "memcoll.h", which gets us size_t and checks
16143         our interface, instead of including <sys/types.h>
16144
16145 2003-06-04  Paul Eggert  <eggert@twinsun.com>
16146
16147         * config/srclist.txt ($LIBCSRC/time/mktime.c lib gpl): Comment out for now,
16148         as glibc mktime is buggy on non-glibc systems.
16149
16150 2003-06-03  Karl Berry  <karl@gnu.org>
16151
16152         * config/config.sub: update from prep.
16153
16154 2003-06-02  Paul Eggert  <eggert@twinsun.com>
16155
16156         [from coreutils]
16157         Fix some minor time-related bugs with POSIX time arguments.
16158         Some valid time stamps were being rejected (notably -1, and
16159         time stamps before 1900 on 64-bit hosts).  And some invalid
16160         time stamps were being accepted, e.g. September 31.
16161
16162         * lib/posixtm.h (posixtime): Return bool instead of time_t, so
16163         that we can return (time_t) -1 successfully.
16164         * lib/posixtm.c: Likewise.
16165         [HAVE_STDBOOL_H]: Include <stdbool.h>.
16166         (bool, false, true) [!HAVE_STDBOOL_H]: New type.
16167         (t): Remove static var.
16168         (year, posix_time_parse): Now takes struct tm * arg to modify, instead
16169         of static var.  All uses changed.
16170         (year): Do not reject years before 1900; they can occur with
16171         64-bit time_t.
16172         (posix_time_parse): Do not check for out-of-range components;
16173         that is now the caller's responsibility, since our checks were
16174         only approximations.
16175         (posixtime): Use mktime to check for out-of-range components,
16176         since it knows them exactly.
16177         If mktime returns (time_t) -1, check whether an error actually occurred
16178         by invoking localtime on -1.
16179         (main) [TEST_POSIXTIME]: Check for input data errors, and report
16180         posixtime failures better.
16181         Improve the test data (in comments only).
16182
16183 2003-06-02  Karl Berry  <karl@gnu.org>
16184
16185         * config/mkinstalldirs (version): new variable.
16186         (--version): new option.
16187         (usage): improve message.
16188
16189 2003-05-30  Karl Berry  <karl@gnu.org>
16190
16191         * lib/mktime.c: update from libc.
16192
16193 2003-05-30  Bruno Haible  <bruno@clisp.org>
16194
16195         * modules/gettext: Add files m4/nls.m4 and m4/po.m4.
16196         * config/config.rpath: Upgrade to gettext-0.12.1.
16197
16198 2003-05-30  Bruno Haible  <bruno@clisp.org>
16199
16200         * m4/gettext.m4: Upgrade to gettext-0.12.1.
16201         * m4/nls.m4: New file, from gettext-0.12.1.
16202         * m4/po.m4: New file, from gettext-0.12.1.
16203         * m4/progtest.m4: Upgrade to gettext-0.12.1.
16204
16205 2003-05-30  Bruno Haible  <bruno@clisp.org>
16206
16207         * lib/config.charset: Upgrade to gettext-0.12.1 and libiconv-1.9.1.
16208         * lib/localcharset.h: Likewise.
16209         * lib/localcharset.c: Likewise.
16210
16211 2003-05-29  Karl Berry  <karl@gnu.org>
16212
16213         * config/config.rpath: update from gettext.
16214
16215 2003-05-28  Paul Eggert  <eggert@twinsun.com>
16216
16217         Assume the headers required for C89 freestanding compilers.
16218         * m4/backupfile.m4 (gl_BACKUPFILE): Don't check for limits.h.
16219         * m4/fsusage.m4 (gl_PREREQ_FSUSAGE_EXTRA): Likewise.
16220         * m4/human.m4 (gl_HUMAN): Likewise.
16221         * m4/pathmax.m4 (gl_PATHMAX): Likewise.
16222         * m4/rpmatch.m4 (gl_FUNC_RPMATCH): Likewise.
16223         * m4/userspec.m4 (gl_USERSPEC): Likewise.
16224         * m4/xreadlink.m4 (gl_XREADLINK): Likewise.
16225         * m4/xstrtol.m4 (gl_PREREQ_XSTRTOL): Likewise.
16226         * m4/quote.m4 (gl_QUOTE): Don't check for stddef.h.
16227
16228 2003-05-28  Paul Eggert  <eggert@twinsun.com>
16229
16230         Assume the headers required for C89 freestanding compilers.
16231         * lib/addext.c, backupfile.c, fsusage.c, human.c, pathmax.h,
16232         rpmatch.c, userspec.c, xreadlink.c, xstrtol.c: Include <limits.h>
16233         without checking for HAVE_LIMITS_H.
16234         * lib/backupfile.c, fsusage.c, hash.c, human.c, safe-read.c, userspec.c,
16235         xstrtol.c (CHAR_BIT) : Don't define, since <limits.h> is guaranteed
16236         to do that.
16237         * lib/fatal.c: Include <stdarg.h> without checking for __STDC__.
16238         * lib/exclude.c: Include <stdbool.h> unconditionally.
16239         * lib/tempname.c: Include <stddef.h> unconditionally.
16240         * lib/hash.c: Include <limits.h>, since we no longer define CHAR_BIT.
16241         * lib/modechange.c, rpmatch.c (NULL): Don't define, since
16242         <stddef.h> does that.
16243         * lib/quote.c: Dont include <stddef.h> or <sys/types.h>; not needed.
16244         * lib/safe-read.c (INT_MAX): Don't define, since <limits.h> does that.
16245         * lib/safe-read.c (TYPE_MINIMUM, TYPE_MAXIMUM): Remove; no longer needed.
16246         * lib/xstrtol.c: Likewise.
16247         * lib/safe-read.c: Remove TYPE_SIGNED; no longer needed.
16248         * lib/savedir.c: Include <stddef.h> instead of defining NULL.
16249
16250         * lib/addext.c (addext): Use assignment rather than cast, to avoid
16251         warnings on some platforms.
16252
16253         * lib/mktime.c (__mktime_internal): Do not reject negative timestamps
16254         arbitrarily.
16255
16256 2003-05-26  Jim Meyering  <jim@meyering.net>
16257
16258         Merge in a change from coreutils:
16259         * m4/dirfd.m4 (UTILS_FUNC_DIRFD): Test the cache variable, not one
16260         that is guaranteed to be `no'.  Use `no_such_member' to indicate
16261         that condition, rather than `-1' which is slightly misleading.
16262         Change the name of the cache variable to have the gl_ prefix.
16263         Prompted by a patch from Richard Dawe for DJGPP.
16264
16265 2003-05-24  Karl Berry  <karl@gnu.org>
16266
16267         * config/config.guess: update from prep.
16268
16269 2003-05-22  Karl Berry  <karl@gnu.org>
16270
16271         * gnulib-tool (func_usage): =LIBRARY not =libRARY in help msg.
16272
16273 2003-05-20  Karl Berry  <karl@gnu.org>
16274
16275         * config/config.guess: update from prep.
16276
16277 2003-05-18  Karl Berry  <karl@gnu.org>
16278
16279         * config/srclistvars.sh (TEXMF): use TEXMFROOT instead, since TEXMF might
16280                 actually be set by the user.
16281
16282         * config/depcomp, install-sh, mdate-sh: update from automake.
16283
16284 2003-05-17  Bruno Haible  <bruno@clisp.org>
16285
16286         * m4/dirfd.m4 (UTILS_FUNC_DIRFD): Fix a quoting bug leading to an invalid
16287         expansion for AC_EGREP_CPP.
16288         * m4/strtoimax.m4 (gl_FUNC_STRTOIMAX): Likewise.
16289         * m4/strtoumax.m4 (gl_FUNC_STRTOUMAX): Likewise.
16290         Suggested by Akim Demaille <akim@epita.fr> in
16291         http://mail.gnu.org/archive/html/bug-autoconf/2003-05/threads.html
16292
16293 2003-05-12  Jim Meyering  <jim@meyering.net>
16294
16295         * lib/strftime.c (my_strftime): Let the `-' (no-pad) flag affect
16296         the space-padded-by-default conversion specifiers, %e, %k, %l.
16297
16298 2003-05-12  Bruno Haible  <bruno@clisp.org>
16299
16300         * lib/linebreak.c (iconv_string_length): Don't return -1 just because the
16301         string is longer than 4 KB.
16302
16303 2003-05-11  Karl Berry  <karl@gnu.org>
16304
16305         * config/config.{guess,sub}: update from prep.
16306
16307 2003-05-09  Bruno Haible  <bruno@clisp.org>
16308
16309         * modules/error: Add m4/strerror_r.m4 to file list.
16310
16311 2003-05-03  Bruno Haible  <bruno@clisp.org>
16312
16313         Upgrade to Unicode-4.0.
16314         * lib/linebreak.c (nonspacing_table_data): Change width of U+00AD,
16315         U+0350..U+0357, U+035D..U+035F, U+0600..U+0603, U+0610..U+0615,
16316         U+0656..U+0658, U+0A01, U+0AE2..U+0AE3, U+0CBC, U+17B4..U+17B5,
16317         U+17DD, U+1920..U+1922, U+1927..U+192B, U+1932, U+1939..U+193B
16318         from 1 to 0. Change width of U+0CBF, U+0CC6, U+180E from 0 to 1.
16319         (uc_width): Change width of U+4DC0..U+4DFF from 2 to 1. Change width
16320         of U+2A6D7..U+2F7FF, U+2FA1E..U+2FFFD, U+30000..U+3FFFD from 1 to 2.
16321         Change width of U+E0100..U+E01EF from 1 to 0.
16322
16323 2003-04-25  Jim Meyering  <jim@meyering.net>
16324
16325         * lib/copy-file.c (copy_file_preserving): Declare buf_size to be
16326         of type size_t, not int.
16327
16328 2003-04-25  Bruno Haible  <bruno@clisp.org>
16329
16330         * lib/copy-file.c: Include <stddef.h>, for size_t.
16331
16332 2003-04-21  Paul Eggert  <eggert@twinsun.com>
16333
16334         * m4/error.m4 (gl_ERROR): Do not put under dynamic conditions some
16335         code which expansion is under static control.  Patch imported from
16336         Akim Demaille's patch to Bison; see
16337         <http://mail.gnu.org/archive/html/bison-patches/2003-03/msg00057.html>.
16338
16339 2003-04-14  Bruno Haible  <bruno@clisp.org>
16340
16341         * m4/error.m4 (jm_PREREQ_ERROR): Use AC_FUNC_VPRINTF.
16342
16343 2003-04-11  Jim Meyering  <jim@meyering.net>
16344
16345         Merge changes from Coreutils.
16346
16347         2003-03-22  Jim Meyering  <jim@meyering.net>
16348
16349         * lib/strftime.c (widen): Cast alloca return value to proper type.
16350
16351         2003-01-19  Ulrich Drepper  <drepper@redhat.com>
16352
16353         From GNU libc.
16354         * lib/strftime.c (my_strftime): Handle very large width
16355         specifications for numeric values correctly.  Improve checks for
16356         overflow.
16357
16358         2003-01-19  Jim Meyering  <jim@meyering.net>
16359
16360         * lib/strftime.c (widen) [COMPILE_WIDE]: Merge nearly-identical definitions.
16361         (nl_get_alt_digit) [! defined my_strftime]: Define.
16362         (my_strftime) [_NL_CURRENT]: Merge nearly-identical uses of
16363         _nl_get_alt_digit and _nl_get_walt_digit.
16364
16365         * lib/strftime.c (my_strftime): Merge in locale-related changes from libc.
16366         These changes have no effect outside of _LIBC.
16367
16368 2003-04-10  Bruno Haible  <bruno@clisp.org>
16369
16370         * modules/findprog: New file.
16371         * MODULES.html.sh (func_all_modules): Add it.
16372
16373 2003-04-10  Bruno Haible  <bruno@clisp.org>
16374
16375         * m4/findprog.m4: New file.
16376         * m4/eaccess.m4: New file.
16377
16378 2003-04-10  Bruno Haible  <bruno@clisp.org>
16379
16380         * lib/findprog.h: New file, from GNU gettext.
16381         * lib/findprog.c: New file, from GNU gettext.
16382
16383 2003-04-05  Jim Meyering  <jim@meyering.net>
16384
16385         Merge changes from Coreutils.
16386
16387         * lib/exclude.h (PARAMS): Remove definition and uses.
16388         * lib/exclude.c: Remove uses of `PARAMS'.
16389
16390         * lib/dirname.c [TEST_DIRNAME]: Update build instructions for test.
16391         Add test-cases for DOS filenames. Declare program_name.
16392         (main): Set up program_name.  Patch by Rich Dawe.
16393
16394         * lib/mountlist.c (read_filesystem_list) [MOUNTED_VMOUNT]: Detect any
16395         error from mntctl.
16396         Use mntctl's return value to drive the entry-processing loop, since
16397         we can't rely on the value of the vmt_length member in the last
16398         entry.  On some systems doing so could result in exhausting
16399         virtual memory.  Based in part on a patch from Mike Jetzer.
16400
16401 2003-04-04  Bruno Haible  <bruno@clisp.org>
16402
16403         * modules/linebreak: New file.
16404         * MODULES.html.sh (func_all_modules): Add it.
16405
16406 2003-04-04  Bruno Haible  <bruno@clisp.org>
16407
16408         * m4/linebreak.m4: New file.
16409
16410 2003-04-04  Bruno Haible  <bruno@clisp.org>
16411
16412         * lib/linebreak.h: New file, from GNU gettext.
16413         * lib/linebreak.c: New file, from GNU gettext with slight modifications.
16414         * lib/lbrkprop.h: New file, from GNU gettext.
16415
16416 2003-04-03  Bruno Haible  <bruno@clisp.org>
16417
16418         * modules/utf8-ucs4: New file.
16419         * modules/utf16-ucs4: New file.
16420         * modules/ucs4-utf8: New file.
16421         * modules/ucs4-utf16: New file.
16422         * MODULES.html.sh (func_all_modules): Add them.
16423
16424 2003-04-03  Bruno Haible  <bruno@clisp.org>
16425
16426         * m4/utf-ucs4.m4: New file.
16427         * m4/ucs4-utf.m4: New file.
16428
16429 2003-04-03  Bruno Haible  <bruno@clisp.org>
16430
16431         * lib/utf8-ucs4.h: New file, from GNU gettext.
16432         * lib/utf16-ucs4.h: New file, from GNU gettext.
16433         * lib/ucs4-utf8.h: New file, from GNU gettext.
16434         * lib/ucs4-utf16.h: New file, from GNU gettext.
16435
16436 2003-04-02  Bruno Haible  <bruno@clisp.org>
16437
16438         * modules/binary-io: New file.
16439         * MODULES.html.sh (func_all_modules): Add it.
16440
16441 2003-04-02  Bruno Haible  <bruno@clisp.org>
16442
16443         * lib/binary-io.h: New file, from GNU gettext.
16444
16445 2003-04-01  Bruno Haible  <bruno@clisp.org>
16446
16447         * modules/pathname: New file.
16448         * MODULES.html.sh (func_all_modules): Add it.
16449
16450 2003-04-01  Bruno Haible  <bruno@clisp.org>
16451
16452         * lib/pathname.h: New file, from GNU gettext.
16453         * lib/concatpath.c: New file, from GNU gettext.
16454
16455 2003-03-30  Bruno Haible  <bruno@clisp.org>
16456
16457         * m4/copy-file.m4 (gl_COPY_FILE): Add check for chown().
16458
16459 2003-03-30  Bruno Haible  <bruno@clisp.org>
16460
16461         * lib/copy-file.c (copy_file_preserving): Don't set owner if the function
16462         chown() doesn't exist.
16463
16464 2003-03-28  Bruno Haible  <bruno@clisp.org>
16465
16466         * modules/copy-file: New file.
16467         * MODULES.html.sh (func_all_modules): Add it.
16468
16469 2003-03-28  Bruno Haible  <bruno@clisp.org>
16470
16471         * m4/copy-file.m4: New file.
16472
16473 2003-03-28  Bruno Haible  <bruno@clisp.org>
16474
16475         * lib/copy-file.h: New file, from GNU gettext.
16476         * lib/copy-file.c: New file, from GNU gettext.
16477
16478 2003-03-18  Jim Meyering  <jim@meyering.net>
16479
16480         * lib/quote.c (quote_n): Fix typo in comment.
16481
16482 2003-03-18  Bruno Haible  <bruno@clisp.org>
16483
16484         * m4/onceonly.m4: Use m4_defn instead of defn, for better error checking.
16485         * m4/onceonly_2_57.m4: Likewise.
16486
16487 2003-03-17  Bruno Haible  <bruno@clisp.org>
16488
16489         * m4/onceonly.m4: Require autoconf 2.54 or newer.
16490         (m4_quote): Remove macro.
16491         * m4/onceonly_2_57.m4: Require autoconf 2.54 or newer.
16492
16493 2003-03-14  Jim Meyering  <jim@meyering.net>
16494
16495         Merge changes from Coreutils.
16496         * lib/obstack.h (obstack_object_size): Declare temporary, __o,
16497         to be const, in order to avoid warnings.
16498         (obstack_room): Likewise.
16499         (obstack_empty_p): Likewise.
16500
16501 2003-03-14  Bruno Haible  <bruno@clisp.org>
16502
16503         * m4/onceonly_2_57.m4 (AC_CHECK_HEADERS_ONCE, AC_CHECK_FUNCS_ONCE,
16504         AC_CHECK_DECLS_ONCE): Quote AC_FOREACH variable-expansions properly.
16505
16506 2003-03-13  Paul Eggert  <eggert@twinsun.com>
16507
16508         Merge changes from Bison.
16509         * lib/obstack.h: (__INT_TO_PTR) [__STDC__]: Cast result to
16510         (void *) to avoid diagnostic with native c89 on SGI IRIX 6.5
16511         when compiling Bison 1.875's `bitset bset = obstack_alloc
16512         (bobstack, bytes);'.  Problem reported by Nelson H. F. Beebe.
16513         * lib/hash.c: Include <stdbool.h> unconditionally.
16514
16515 2003-03-13  Paul Eggert  <eggert@twinsun.com>
16516
16517         * m4/onceonly.m4 (m4_quote): New macro.
16518         (AC_CHECK_HEADERS_ONCE, AC_CHECK_FUNCS_ONCE, AC_CHECK_DECLS_ONCE):
16519         Quote AC_FOREACH variable-expansions properly.
16520
16521 2003-03-13  Paul Eggert  <eggert@twinsun.com>
16522
16523         * doc/COPYING.DOC, fdl.texi: Sync with latest FSF version.
16524
16525 2003-03-09  Paul Eggert  <eggert@twinsun.com>
16526
16527         * lib/argmatch.c (EXIT_FAILURE): Define if the system doesn't.
16528         Reported by Bruce Becker; see:
16529         http://mail.gnu.org/archive/html/bug-bison/2003-03/msg00017.html
16530
16531 2003-03-03  Paul Eggert  <eggert@twinsun.com>
16532             Bruno Haible  <bruno@clisp.org>
16533
16534         * lib/mbswidth.h: Include <wchar.h>. Needed for UnixWare 7.1.1.
16535         Reported by John Hughes, see
16536         http://mail.gnu.org/archive/html/bug-bison/2003-02/msg00030.html
16537
16538 2003-02-20  Bruno Haible  <bruno@clisp.org>
16539
16540         * MODULES.html.sh (func_all_modules): Add poll.
16541
16542 2003-02-19  Paolo Bonzino  <bonzini@gnu.org>
16543
16544         * modules/poll: New file.
16545
16546 2003-02-19  Paolo Bonzino  <bonzini@gnu.org>
16547
16548         * lib/poll_.h: New file.
16549         * lib/poll.c: New file.
16550
16551 2003-02-19  Paolo Bonzini  <bonzini@gnu.org>
16552
16553         * m4/poll.m4: New file.
16554
16555 2003-02-18  Paolo Bonzino  <bonzini@gnu.org>
16556
16557         * modules/mathl: New file.
16558
16559 2003-02-18  Paolo Bonzino  <bonzini@gnu.org>
16560
16561         * lib/mathl.h: New file.
16562         * lib/acosl.c: New file.
16563         * lib/asinl.c: New file.
16564         * lib/atanl.c: New file.
16565         * lib/ceill.c: New file.
16566         * lib/cosl.c: New file.
16567         * lib/expl.c: New file.
16568         * lib/floorl.c: New file.
16569         * lib/frexpl.c: New file.
16570         * lib/ldexpl.c: New file.
16571         * lib/logl.c: New file.
16572         * lib/sincosl.c: New file.
16573         * lib/sinl.c: New file.
16574         * lib/sqrtl.c: New file.
16575         * lib/tanl.c: New file.
16576         * lib/trigl.c: New file.
16577         * lib/trigl.h: New file.
16578
16579 2003-02-18  Paolo Bonzini  <bonzini@gnu.org>
16580
16581         * m4/mathl.m4: New file.
16582
16583 2003-02-18  Bruno Haible  <bruno@clisp.org>
16584
16585         * MODULES.html.sh (func_all_modules): Add mathl.
16586
16587 2003-02-17  Bruno Haible  <bruno@clisp.org>
16588
16589         * modules/mkdtemp: New module.
16590         * MODULES.html.sh (func_all_modules): Add it.
16591
16592 2003-02-17  Bruno Haible  <bruno@clisp.org>
16593
16594         * m4/mkdtemp.m4: New file, from GNU gettext with modifications.
16595
16596 2003-02-17  Bruno Haible  <bruno@clisp.org>
16597
16598         * lib/mkdtemp.h: New file, from GNU gettext.
16599         * lib/mkdtemp.c: New file, from GNU gettext.
16600
16601 2003-02-02  Jim Meyering  <jim@meyering.net>
16602
16603         * m4/regex.m4 (jm_INCLUDED_REGEX): Detect broken re_search in
16604         e.g. glibc-2.2.93.
16605
16606 2003-01-31  Bruno Haible  <bruno@clisp.org>
16607
16608         * m4/rename.m4 (vb_FUNC_RENAME): Add a redirection from 'rename' to
16609         'rpl_rename'.
16610         * m4/strnlen.m4 (gl_FUNC_STRNLEN): Add a redirection from 'strnlen' to
16611         'rpl_strnlen'.
16612         * m4/strtod.m4 (gl_FUNC_STRTOD): Add a redirection from 'strtod' to
16613         'rpl_strtod'.
16614         * m4/utime.m4 (jm_FUNC_UTIME): Add a redirection from 'utime' to
16615         'rpl_utime'.
16616
16617 2003-01-31  Bruno Haible  <bruno@clisp.org>
16618
16619         * lib/rename.c: #undef rename before defining rpl_rename.
16620         * lib/strnlen.c: #undef strnlen, define rpl_strnlen instead of strnlen.
16621
16622 2003-01-30  Bruno Haible  <bruno@clisp.org>
16623
16624         * modules/vasnprintf, modules/vasprintf: New modules.
16625         * MODULES.html.sh (func_all_modules): Add them.
16626
16627 2003-01-30  Bruno Haible  <bruno@clisp.org>
16628
16629         * m4/signed.m4: New file, from GNU gettext.
16630         * m4/longdouble.m4: New file, from GNU gettext.
16631         * m4/wchar_t.m4: New file, from GNU gettext.
16632         * m4/wint_t.m4: New file, from GNU gettext.
16633         * m4/vasnprintf.m4: New file.
16634         * m4/vasprintf.m4: New file.
16635
16636 2003-01-30  Bruno Haible  <bruno@clisp.org>
16637
16638         * lib/printf-args.h: New file, from GNU gettext.
16639         * lib/printf-args.c: New file, from GNU gettext.
16640         * lib/printf-parse.h: New file, from GNU gettext.
16641         * lib/printf-parse.c: New file, from GNU gettext.
16642         * lib/vasnprintf.h: New file, from GNU gettext.
16643         * lib/vasnprintf.c: New file, from GNU gettext.
16644         * lib/asnprintf.c: New file, from GNU gettext.
16645         * lib/vasprintf.h: New file, from GNU gettext with modifications.
16646         * lib/vasprintf.c: New file, from GNU gettext.
16647         * lib/asprintf.c: New file, from GNU gettext.
16648
16649 2003-01-29  Bruno Haible  <bruno@clisp.org>
16650
16651         * modules/stpncpy: New module.
16652         * MODULES.html.sh (func_all_modules): Add it.
16653
16654 2003-01-29  Bruno Haible  <bruno@clisp.org>
16655
16656         * m4/stpncpy.m4: New file.
16657
16658 2003-01-29  Bruno Haible  <bruno@clisp.org>
16659
16660         * lib/stpncpy.h: New file, from GNU gettext with modifications.
16661         * lib/stpncpy.c: New file, from GNU gettext with modifications.
16662
16663 2003-01-28  Bruno Haible  <bruno@clisp.org>
16664
16665         * modules/c-ctype: New module.
16666         * MODULES.html.sh (func_all_modules): Add it.
16667
16668 2003-01-28  Bruno Haible  <bruno@clisp.org>
16669
16670         * lib/c-ctype.h: New file, from GNU gettext, with changes suggested by
16671         Paul Eggert.
16672         * lib/c-ctype.c: New file, from GNU gettext, with changes suggested by
16673         Paul Eggert.
16674
16675 2003-01-27  Bruno Haible  <bruno@clisp.org>
16676
16677         * modules/xsetenv: New module.
16678         * MODULES.html.sh (func_all_modules): Add it.
16679
16680 2003-01-27  Bruno Haible  <bruno@clisp.org>
16681
16682         * lib/xsetenv.h: New file, from GNU gettext.
16683         * lib/xsetenv.c: New file, from GNU gettext.
16684
16685 2003-01-23  Jim Meyering  <jim@meyering.net>
16686
16687         * m4/dirfd.m4 (UTILS_FUNC_DIRFD): Correct typo: s/-1/no/ that kept this
16688         from working on systems without dirfd (at least Irix and OSF1/Tru64).
16689
16690 2003-01-23  Bruno Haible  <bruno@clisp.org>
16691
16692         * modules/minmax: New module.
16693         * MODULES.html.sh (func_all_modules): Add it.
16694
16695 2003-01-23  Bruno Haible  <bruno@clisp.org>
16696
16697         * lib/minmax.h: New file, from GNU gettext, with comments from Paul Eggert.
16698
16699 2003-01-22  Bruno Haible  <bruno@clisp.org>
16700
16701         * modules/exit: New module.
16702         * MODULES.html.sh (func_all_modules): Add it.
16703
16704 2003-01-22  Bruno Haible  <bruno@clisp.org>
16705
16706         * lib/exit.h: New file, from GNU gettext.
16707
16708 2003-01-19  Bruno Haible  <bruno@clisp.org>
16709
16710         * gnulib-tool: Recognize option --extract-maintainer.
16711         (func_get_maintainer): New function.
16712         * modules/*: Add Maintainer entry.
16713
16714 2003-01-16  Jim Meyering  <jim@meyering.net>
16715
16716         * m4/regex.m4: The `regex' struct is both input and output.
16717         Initialize it before each use.  Patch by Tim Waugh.
16718
16719 2003-01-16  Bruno Haible  <bruno@clisp.org>
16720
16721         * MODULES.html.sh: Add a table of contents. Add the module name as
16722         leftmost column. Add hyperlinks.
16723
16724 2003-01-15  Bruno Haible  <bruno@clisp.org>
16725
16726         * m4/md5.m4 (gl_MD5): Require AC_C_INLINE.
16727
16728 2003-01-15  Bruno Haible  <bruno@clisp.org>
16729
16730         * m4/longlong.m4 (jm_AC_TYPE_LONG_LONG): Also test the LL suffix.
16731         * m4/ulonglong.m4 (jm_AC_TYPE_UNSIGNED_LONG_LONG): Also test the ULL
16732         suffix.
16733
16734 2003-01-15  Bruno Haible  <bruno@clisp.org>
16735
16736         * m4/alloca.m4 (gl_FUNC_ALLOCA): Invoke AC_EGREP_CPP prerequisites.
16737
16738 2003-01-15  Bruno Haible  <bruno@clisp.org>
16739
16740         * lib/stpcpy.h (stpcpy): Use ANSI C function declarations.
16741         * lib/strcase.h (strcasecmp, strncasecmp): Likewise.
16742
16743 2003-01-14  Jim Meyering  <jim@meyering.net>
16744
16745         * lib/same.c (same_name): Tweak a comment.
16746
16747 2003-01-14  Bruno Haible  <bruno@clisp.org>
16748
16749         * lib/same.c (same_name): Reorder tests so as to avoid calling stat()
16750         when a string comparison is sufficient.
16751
16752 2003-01-14  Bruno Haible  <bruno@clisp.org>
16753
16754         * lib/readtokens.c (readtoken): Cast character to 'unsigned char', not
16755         'unsigned int'.
16756
16757 2003-01-14  Bruno Haible  <bruno@clisp.org>
16758
16759         * lib/hash-pjw.c: Add comment about low quality of this function.
16760
16761 2003-01-13  Bruno Haible  <bruno@clisp.org>
16762
16763         * modules/stpcpy: Distribute lib/stpcpy.h.
16764         * modules/setenv: Depend on alloca. Distribute lib/setenv.h.
16765
16766 2003-01-13  Bruno Haible  <bruno@clisp.org>
16767
16768         * modules/*: Add a description.
16769         * modules/strpbrk: Fix Makefile.am snippet.
16770         * modules/strtoimax: Fix dependencies.
16771         * modules/strtoumax: Likewise.
16772
16773 2003-01-13  Bruno Haible  <bruno@clisp.org>
16774
16775         * gnulib-tool (func_create_testdir): Substitute lib_OBJECTS.
16776         * modules/alloca (Makefile.am): All object files depend on alloca.h.
16777         * modules/stdbool (Makefile.am): All object files depend on stdbool.h.
16778
16779 2003-01-13  Bruno Haible  <bruno@clisp.org>
16780
16781         * gnulib-tool (func_create_testdir): Store config/* files in the main
16782         directory.
16783         * config.rpath: Move to ...
16784         * config/config.rpath: ... here.
16785         * modules/gettext: Contains config/config.rpath, not config.rpath.
16786         * modules/iconv: Likewise.
16787
16788 2003-01-12  Paul Eggert  <eggert@twinsun.com>
16789
16790         Finish renaming getstr -> getdelim2 and readline -> readlinebuffer,
16791         to avoid collisions with libcurses and libreadline.
16792
16793         * m4/getstr.m4: Remove.
16794         * m4/getline.m4 (gl_PREREQ_GETLINE): Require AC_HEADER_STDC.
16795
16796 2003-01-12  Paul Eggert  <eggert@twinsun.com>
16797
16798         Finish renaming getstr -> getdelim2 and readline -> readlinebuffer,
16799         to avoid collisions with libcurses and libreadline.
16800
16801         * lib/Makefile.am (libfetish_a_SOURCES): Remove getstr.c, getstr.h.
16802         * lib/getstr.h, getstr.c: Remove.
16803         * lib/getline.c: Include "getline.h", to check interface.
16804         Move body of old getstr.c here: this defines MIN_CHUNK and
16805         declares getdelim2, which is renamed from getstr.
16806         (getline, getdelim): Adjust to renaming of getstr -> getdelim2.
16807
16808         * lib/linebuffer.c (readlinebuffer): Renamed from readline.
16809         All uses changed.
16810         * lib/linebuffer.h: Likewise.
16811         (readline): Remove backward-compatibility macro.
16812
16813 2003-01-12  Paul Eggert  <eggert@twinsun.com>
16814
16815         Finish renaming getstr -> getdelim2 and readline -> readlinebuffer,
16816         to avoid collisions with libcurses and libreadline.
16817         * getstr: Remove.
16818         * MODULES.html.sh: Remove getstr.
16819         * modules/getline: Depend on unlocked-io, not getstr.
16820
16821 2003-01-12  Jim Meyering  <jim@meyering.net>
16822
16823         * lib/makepath.c: Don't test HAVE_ERRNO_H.  It's not necessary.
16824
16825 2003-01-10  Bruno Haible  <bruno@clisp.org>
16826
16827         * modules/alloca: Change Makefile.am requirements. Simplify Include
16828         requirements. Add lib/alloca_.h to file list.
16829
16830 2003-01-10  Bruno Haible  <bruno@clisp.org>
16831
16832         * m4/alloca.m4 (gl_FUNC_ALLOCA): Also define ALLOCA_H.
16833
16834 2003-01-10  Bruno Haible  <bruno@clisp.org>
16835
16836         * lib/alloca_.h: New file.
16837         * lib/getdate.y: Unconditionally include alloca.h.
16838         * lib/makepath.c: Likewise.
16839         * lib/setenv.c: Likewise.
16840         * lib/userspec.c: Likewise.
16841
16842 2003-01-09  Karl Berry  <karl@gnu.org>
16843
16844         * MODULES.html.sh: include `dirname $0` in PATH, to find
16845         gnulib-tool.
16846
16847 2003-01-09  Bruno Haible  <bruno@clisp.org>
16848
16849         * modules/stdbool: Change configure.ac, Makefile.am requirements.
16850         Simplify Include requirements. Add lib/stdbool.h.in to file list.
16851
16852 2003-01-09  Bruno Haible  <bruno@clisp.org>
16853
16854         * m4/stdbool.m4 (AM_STDBOOL_H): New macro.
16855
16856 2003-01-09  Bruno Haible  <bruno@clisp.org>
16857
16858         * lib/stdbool.h.in: New file.
16859
16860 2003-01-09  Bruno Haible  <bruno@clisp.org>
16861
16862         * gnulib-tool (func_all_modules): Ignore files ending in ~.
16863         * MODULES.html.sh: Likewise.
16864
16865 2003-01-08  Jim Meyering  <jim@meyering.net>
16866
16867         * lib/full-write.c: Undefine and define-away `const' after inclusion
16868         of errno.h, not before.  Suggestion from Bruno Haible.
16869
16870 2003-01-08  Bruno Haible  <bruno@clisp.org>
16871
16872         * modules/full-read: Depend on full-write.
16873
16874 2003-01-08  Bruno Haible  <bruno@clisp.org>
16875
16876         * lib/safe-read.c: Include specification header first, to ensure its
16877         selfcontainedness.
16878         * lib/full-write.c: Likewise.
16879
16880 2003-01-07  Jim Meyering  <jim@meyering.net>
16881
16882         * lib/full-write.c: Rework so that it may serve to define full_read, too.
16883         * lib/full-read.c: Simply #define FULL_READ and include full-write.c.
16884
16885 2003-01-07  Bruno Haible  <bruno@clisp.org>
16886
16887         * lib/strtoimax.c: Include <stdint.h> as an alternative to <inttypes.h>.
16888         * lib/xstrtol.h: Likewise.
16889         * lib/xstrtoimax.c: Likewise.
16890         * lib/xstrtoumax.c: Likewise.
16891         * lib/human.h: Likewise.
16892
16893         * lib/tempname.c: Include <inttypes.h> too. Avoids a compilation error
16894         on systems that have <inttypes.h> but not <stdint.h>.
16895
16896 2003-01-07  Bruno Haible  <bruno@clisp.org>
16897
16898         * MODULES.html.sh: Add copyright notice.
16899         (missed_files): Omit CVS directory entries.
16900         (func_module): Make it work with sed-3.02.
16901         * MODULES.txt: Remove file.
16902
16903 2003-01-06  Jim Meyering  <jim@meyering.net>
16904
16905         * lib/version-etc.c: Update year in translatable copyright string.
16906
16907 2003-01-03  Karl Berry  <karl@gnu.org>
16908
16909         * config/config.{guess,sub}: update from prep.
16910
16911 2003-01-02  Karl Berry  <karl@gnu.org>
16912
16913         * doc/COPYING.DOC: belatedly updated to 1.2.
16914
16915 2003-01-01  Karl Berry  <karl@gnu.org>
16916
16917         * gnulib-tool (func_verify_module): report module name $module in
16918         error message, not $1.
16919         * gnulib-tool (create-testdir): don't complain if destdir couldn't
16920         be created, only if it doesn't exist.
16921         * gnulib-tool (last_checkin_date): don't expand the $Date here.
16922
16923 2002-12-31  Paul Eggert  <eggert@twinsun.com>
16924
16925         * m4/memcoll.m4 (gl_MEMCOLL): Require AC_FUNC_MEMCMP.
16926
16927 2002-12-31  Paul Eggert  <eggert@twinsun.com>
16928
16929         * lib/memcoll.c (memcoll): Fall back on a simple algorithm using
16930         memcmp if strcoll doesn't work.
16931
16932 2002-12-31  Bruno Haible  <bruno@clisp.org>
16933
16934         * lib/utime.c (utime_null): No need to call ftruncate if the file was
16935         nonempty.
16936
16937 2002-12-31  Bruno Haible  <bruno@clisp.org>
16938
16939         * lib/memcoll.c (STRCOLL): New macro.
16940         (memcoll): Use it.
16941
16942 2002-12-31  Bruno Haible  <bruno@clisp.org>
16943
16944         * lib/localcharset.h: New file.
16945         * lib/localcharset.c: Include it.
16946         * lib/unicodeio.c: Likewise.
16947
16948 2002-12-31  Bruno Haible  <bruno@clisp.org>
16949
16950         * lib/getstr.h (getstr): Define, to avoid clash with libcurses.
16951         * lib/linebuffer.h (readline): Define, to avoid clash with libreadline.
16952
16953 2002-12-31  Bruno Haible  <bruno@clisp.org>
16954
16955         * lib/getline.h: Include <stddef.h>, for size_t.
16956
16957         * lib/unicodeio.h: Include <stddef.h>, for size_t.
16958         * lib/unicodeio.c: Don't include <stddef.h>.
16959
16960 2002-12-31  Bruno Haible  <bruno@clisp.org>
16961
16962         * lib/getdate.y (get_date): Test HAVE_STRUCT_TM_TM_ZONE, not HAVE_TM_ZONE.
16963
16964 2002-12-24  Karl Berry  <karl@gnu.org>
16965
16966         * config/config.guess: update from prep.
16967
16968 2002-12-24  Bruno Haible  <bruno@clisp.org>
16969
16970         General infrasructure.
16971         * m4/README: Rewritten.
16972         * m4/onceonly.m4: New file.
16973         * m4/onceonly_2_57.m4: New file.
16974
16975         Module atexit.
16976         * m4/atexit.m4: New file.
16977
16978         Module strtod.
16979         * m4/strtod.m4: New file.
16980
16981         Module strtol.
16982         * m4/strtol.m4: New file.
16983
16984         Module strtoul.
16985         * m4/strtoul.m4: New file.
16986
16987         Module memchr.
16988         * m4/memchr.m4: New file.
16989
16990         Module memcmp.
16991         * m4/memcmp.m4 (gl_PREREQ_MEMCMP): New macro.
16992         (jm_FUNC_MEMCMP): Invoke it.
16993
16994         Module memcpy.
16995         * m4/memcpy.m4: New file.
16996
16997         Module memmove.
16998         * m4/memmove.m4: New file.
16999
17000         Module memset.
17001         * m4/memset.m4: New file.
17002
17003         Module strcspn.
17004         * m4/strcspn.m4: New file.
17005
17006         Module strpbrk.
17007         * m4/strpbrk.m4: New file.
17008
17009         Module strstr.
17010         * m4/strstr.m4: New file.
17011
17012         Module strerror.
17013         * m4/strerror.m4: New file.
17014
17015         Module mktime.
17016         * m4/mktime.m4: Renamed from jm-mktime.m4.
17017         (gl_PREREQ_MKTIME): New macro.
17018         (gl_FUNC_MKTIME): Renamed from jm_FUNC_MKTIME. Invoke gl_PREREQ_MKTIME.
17019
17020         Module malloc.
17021         * m4/malloc.m4 (gl_PREREQ_MALLOC): New macro.
17022         (jm_FUNC_MALLOC): Use AC_FUNC_MALLOC. Invoke gl_PREREQ_MALLOC.
17023         Don't define HAVE_DONE_WORKING_MALLOC_CHECK, since nothing uses it.
17024
17025         Module realloc.
17026         * m4/realloc.m4 (gl_PREREQ_REALLOC): New macro.
17027         (jm_FUNC_REALLOC): Use AC_FUNC_REALLOC. Invoke gl_PREREQ_REALLOC.
17028         Don't define HAVE_DONE_WORKING_REALLOC_CHECK, since nothing uses it.
17029
17030         Module strftime.
17031         * m4/tm_gmtoff.m4: New file, extracted from strftime.m4.
17032         * m4/strftime.m4 (_jm_STRFTIME_PREREQS): Use AC_FUNC_STRFTIME.
17033         Don't test for bcopy (we are not emacs). Invoke AC_TYPE_MBSTATE_T and
17034         gl_TM_GMTOFF.
17035         (_jm_STRFTIME_PREREQS, jm_FUNC_GNU_STRFTIME): Use onceonly macros.
17036
17037         Module xalloc.
17038         * m4/xalloc.m4: New file.
17039
17040         Module alloca.
17041         * m4/alloca.m4: New file.
17042
17043         Module putenv.
17044         * m4/putenv.m4 (gl_PREREQ_PUTENV): New macro.
17045         (jm_FUNC_PUTENV): Invoke it.
17046
17047         Module setenv.
17048         * m4/setenv.m4 (gt_FUNC_SETENV): New macro.
17049         (gt_CHECK_VAR_DECL): Fix quoting error that led to infinite loop in m4
17050         when invoked twice.
17051         (gt_PREREQ_SETENV, gt_PREREQ_UNSETENV): New macros, replacing old
17052         gt_FUNC_SETENV.
17053
17054         Module memrchr.
17055         * m4/memrchr.m4: New file.
17056
17057         Module stpcpy.
17058         * m4/stpcpy.m4: New file.
17059
17060         Module strcase.
17061         * m4/strcase.m4: New file.
17062
17063         Module strdup.
17064         * m4/strdup.m4: New file.
17065
17066         Module strnlen.
17067         * m4/strnlen.m4: New file.
17068
17069         Module strndup.
17070         * m4/strndup.m4: New file.
17071
17072         Module xstrtod.
17073         * m4/xstrtod.m4: New file.
17074
17075         Module xstrtol.
17076         * m4/xstrtol.m4: New file.
17077
17078         Module getdate.
17079         * m4/getdate.m4: New file.
17080
17081         Module unlocked-io.
17082         * m4/unlocked-io.m4: Renamed from jm-glibc-io.m4.
17083         (jm_FUNC_GLIBC_UNLOCKED_IO): Invoke AC_GNU_SOURCE. Use onceonly macros.
17084         * m4/jm-glibc-io.m4n: Remove file.
17085
17086         Module long-options.
17087         * m4/long-options.m4: New file.
17088
17089         Module md5.
17090         * m4/md5.m4: New file.
17091
17092         Module sha.
17093         * m4/sha.m4: New file.
17094
17095         Module getstr.
17096         * m4/getstr.m4: New file.
17097
17098         Module getline.
17099         * m4/getline.m4 (gl_PREREQ_GETLINE): New macro.
17100         (AM_FUNC_GETLINE): Invoke AC_GNU_SOURCE. Use <stdlib.h>, not
17101         <sys/types.h>, for size_t. Use the function name gnu_getline, not
17102         simply getline. Infoke gl_PREREQ_GETLINE.
17103
17104         Module obstack.
17105         * m4/obstack.m4: New file.
17106
17107         Module hash.
17108         * m4/hash.m4: New file.
17109
17110         Module readtokens.
17111         * m4/readtokens.m4: New file.
17112
17113         Module strverscmp.
17114         * m4/strverscmp.m4: New file.
17115
17116         Module stdbool.
17117         * m4/stdbool.m4 (AC_HEADER_STDBOOL): Add test for _Bool. Needed for OSF/1.
17118
17119         Module strtoll.
17120         * m4/strtoll.m4: New file.
17121
17122         Module strtoull.
17123         * m4/strtoull.m4: New file.
17124
17125         Module strtoimax.
17126         * m4/strtoimax.m4: New file.
17127
17128         Module strtoumax.
17129         * m4/strtoumax.m4: New file.
17130
17131         Module xstrtoimax.
17132         * m4/xstrtoimax.m4 (jm_XSTRTOIMAX): Renamed from jm_AC_PREREQ_XSTRTOIMAX.
17133         Moved the strtol prerequisites to strtol.m4.
17134         Moved the strtoll prerequisites to strtoll.m4.
17135         Moved the strtoimax prerequisites to strtoimax.m4.
17136
17137         Module xstrtoumax.
17138         * m4/xstrtoumax.m4 (jm_XSTRTOUMAX): Renamed from jm_AC_PREREQ_XSTRTOUMAX.
17139         Moved the strtoul prerequisites to strtoul.m4.
17140         Moved the strtoull prerequisites to strtoull.m4.
17141         Moved the strtoumax prerequisites to strtoumax.m4.
17142
17143         Module chown.
17144         * m4/chown.m4 (gl_PREREQ_CHOWN): New macro.
17145         (jm_FUNC_CHOWN): Use AC_FUNC_CHOWN. Invoke gl_PREREQ_CHOWN.
17146
17147         Module dup2.
17148         * m4/dup2.m4: New file.
17149
17150         Module ftruncate.
17151         * m4/ftruncate.m4 (gl_PREREQ_FTRUNCATE): New macro.
17152         (jm_FUNC_FTRUNCATE): Use AC_REPLACE_FUNCS. Invoke gl_PREREQ_FTRUNCATE.
17153
17154         Module getgroups.
17155         * m4/getgroups.m4 (gl_PREREQ_GETGROUPS): New macro.
17156         (jm_FUNC_GETGROUPS): Use AC_FUNC_GETGROUPS. Invoke gl_PREREQ_GETGROUPS.
17157
17158         Module gettimeofday.
17159         * m4/gettimeofday.m4 (gl_PREREQ_GETTIMEOFDAY): New macro.
17160         (AC_FUNC_GETTIMEOFDAY_CLOBBER): Use onceonly macros. Invoke
17161         gl_PREREQ_GETTIMEOFDAY.
17162
17163         Module mkdir.
17164         * m4/mkdir-slash.m4 (gl_PREREQ_MKDIR): New macro.
17165         (UTILS_FUNC_MKDIR_TRAILING_SLASH): Invoke gl_PREREQ_MKDIR.
17166
17167         Module mkstemp.
17168         * m4/mkstemp.m4 (gl_PREREQ_MKSTEMP): New macro.
17169         (jm_PREREQ_TEMPNAME): New macro, from prereq.m4. Also invoke
17170         jm_AC_TYPE_UINTMAX_T.
17171         (UTILS_FUNC_MKSTEMP): Invoke gl_PREREQ_MKSTEMP and jm_PREREQ_TEMPNAME.
17172
17173         Module stat.
17174         * m4/stat.m4 (gl_PREREQ_STAT): New macro.
17175         (jm_FUNC_STAT): Use AC_FUNC_STAT. Invoke gl_PREREQ_STAT.
17176
17177         Module lstat.
17178         * m4/lstat.m4 (gl_PREREQ_LSTAT): New macro.
17179         (jm_FUNC_LSTAT): Use AC_FUNC_LSTAT. Invoke gl_PREREQ_LSTAT.
17180
17181         Module timespec.
17182         * m4/timespec.m4 (gl_TIMESPEC): New macro.
17183         (jm_CHECK_TYPE_STRUCT_TIMESPEC): Add check for <sys/time.h>.
17184         * m4/st_mtim.m4: Indentation.
17185
17186         Module nanosleep.
17187         * m4/nanosleep.m4 (gl_PREREQ_NANOSLEEP): New macro.
17188         (jm_FUNC_NANOSLEEP): Add check for <sys/time.h>. Invoke
17189         gl_PREREQ_NANOSLEEP.
17190
17191         Module regex.
17192         * m4/regex.m4 (jm_PREREQ_REGEX): New macro.
17193         (jm_INCLUDED_REGEX): Invoke jm_PREREQ_REGEX.
17194         (gl_REGEX): New macro.
17195
17196         Module rename.
17197         * m4/rename.m4 (gl_PREREQ_RENAME): New macro.
17198         (vb_FUNC_RENAME): Invoke gl_PREREQ_RENAME.
17199
17200         Module rmdir.
17201         * m4/rmdir.m4: New file.
17202
17203         Module utime.
17204         * m4/utimbuf.m4 (jm_CHECK_TYPE_STRUCT_UTIMBUF): Use onceonly macros.
17205         * m4/utime.m4 (gl_PREREQ_UTIME): New macro.
17206         (jm_FUNC_UTIME): Invoke gl_PREREQ_UTIME.
17207
17208         Module dirname.
17209         * m4/dirname.m4: New file.
17210
17211         Module getopt.
17212         * m4/getopt.m4: New file.
17213
17214         Module unistd-safer.
17215         * m4/unistd-safer.m4: New file.
17216
17217         Module fnmatch.
17218         * m4/fnmatch.m4 (_AC_FUNC_FNMATCH_IF): Include <stdlib.h>, for exit()
17219         declaration.
17220         (gl_PREREQ_FNMATCH_EXTRA): New macro.
17221         (gl_FUNC_FNMATCH_POSIX): New macro.
17222         (gl_FUNC_FNMATCH_GNU): Renamed from AC_FUNC_FNMATCH_GNU. Invoke
17223         gl_PREREQ_FNMATCH_EXTRA. Use the function name gnu_fnmatch, not
17224         simply fnmatch.
17225
17226         Module exclude.
17227         * m4/exclude.m4: New file.
17228
17229         Module human.
17230         * m4/human.m4: New file.
17231
17232         Module acl.
17233         * m4/acl.m4: Nop.
17234
17235         Module backupfile.
17236         * m4/backupfile.m4: New file.
17237         * m4/d-ino.m4: Indentation.
17238
17239         Module fsusage.
17240         * m4/fsusage.m4 (gl_FSUSAGE): New macro.
17241         (jm_STATFS_TRUNCATES): New macro, from coreutils-4.5.4/configure.ac.
17242         (gl_PREREQ_FSUSAGE_EXTRA): New macro.
17243
17244         Module dirfd.
17245         * m4/dirfd.m4 (UTILS_FUNC_DIRFD): Invoke some AC_EGREP_CPP requirements.
17246
17247         Module euidaccess.
17248         * m4/euidaccess.m4: New file.
17249
17250         Module file-type.
17251         * m4/file-type.m4: New file.
17252
17253         Module fileblocks.
17254         * m4/fileblocks.m4: New file.
17255
17256         Module filemode.
17257         * m4/filemode.m4: New file.
17258
17259         Module isdir.
17260         * m4/isdir.m4: New file.
17261
17262         Module lchown.
17263         * m4/lchown.m4 (gl_PREREQ_LCHOWN): New macro.
17264         (jm_FUNC_LCHOWN): Invoke gl_PREREQ_LCHOWN.
17265
17266         Module makepath.
17267         * m4/makepath.m4: New file.
17268
17269         Module modechange.
17270         * m4/modechange.m4: New file.
17271
17272         Module mountlist.
17273         * m4/mountlist.m4: New file.
17274         * m4/ls-mntd-fs.m4 (jm_LIST_MOUNTED_FILESYSTEMS): Use onceonly macros.
17275         Indentation.
17276
17277         Module path-concat.
17278         * m4/path-concat.m4: New file.
17279
17280         Module pathmax.
17281         * m4/pathmax.m4: New file.
17282
17283         Module same.
17284         * m4/same.m4: New file.
17285
17286         Module save-cwd.
17287         * m4/save-cwd.m4: New file.
17288
17289         Module savedir.
17290         * m4/savedir.m4: New file.
17291
17292         Module xgetcwd.
17293         * m4/xgetcwd.m4: New file.
17294         * m4/getcwd.m4 (AC_FUNC_GETCWD_NULL): Use onceonly macros.
17295
17296         Module xreadlink.
17297         * m4/xreadlink.m4: New file.
17298
17299         Module safe-read.
17300         * m4/safe-read.m4: New file.
17301
17302         Module safe-write.
17303         * m4/safe-write.m4: New file.
17304
17305         Module closeout.
17306         * m4/closeout.m4: New file.
17307
17308         Module stdio-safer.
17309         * m4/stdio-safer.m4: New file.
17310
17311         Module getpass.
17312         * m4/getpass.m4: New file.
17313
17314         Module getugroups.
17315         * m4/getugroups.m4: New file.
17316
17317         Module group-member.
17318         * m4/group-member.m4 (gl_PREREQ_GROUP_MEMBER): New macro.
17319         (jm_FUNC_GROUP_MEMBER): Invoke AC_GNU_SOURCE, gl_PREREQ_GROUP_MEMBER.
17320
17321         Module idcache.
17322         * m4/idcache.m4: New file.
17323
17324         Module userspec.
17325         * m4/userspec.m4: New file.
17326
17327         Module gettime.
17328         * m4/clock_time.m4: New file.
17329         * m4/gettime.m4: New file.
17330
17331         Module settime.
17332         * m4/settime.m4: New file.
17333
17334         Module posixtm.
17335         * m4/posixtm.m4: New file.
17336
17337         Module gethostname.
17338         * m4/gethostname.m4: New file.
17339
17340         Module canon-host.
17341         * m4/canon-host.m4: New file.
17342
17343         Module gettext.
17344         * m4/codeset.m4: New file, from gettext-0.11.5.
17345         * m4/gettext.m4: New file, from gettext-0.11.5.
17346         * m4/glibc21.m4: New file, from gettext-0.11.5.
17347         * m4/iconv.m4: New file, from gettext-0.11.5.
17348         * m4/intdiv0.m4: New file, from gettext-0.11.5.
17349         * m4/inttypes-pri.m4: New file, from gettext-0.11.5.
17350         * m4/inttypes.m4: New file, from gettext-0.11.5.
17351         * m4/inttypes_h.m4: New file, from gettext-0.11.5 with modifications.
17352         * m4/isc-posix.m4: New file, from gettext-0.11.5.
17353         * m4/lcmessage.m4: New file, from gettext-0.11.5.
17354         * m4/lib-ld.m4: New file, from gettext-0.11.5.
17355         * m4/lib-link.m4: New file, from gettext-0.11.5.
17356         * m4/lib-prefix.m4: New file, from gettext-0.11.5.
17357         * m4/progtest.m4: New file, from gettext-0.11.5.
17358         * m4/stdint_h.m4: New file, from gettext-0.11.5 with modifications.
17359         * m4/uintmax_t.m4: New file, from gettext-0.11.5 with modifications.
17360         * m4/ulonglong.m4: New file, from gettext-0.11.5 with modifications.
17361
17362         Module localcharset.
17363         * m4/localcharset.m4: New file.
17364
17365         Module hard-locale.
17366         * m4/hard-locale.m4: New file.
17367
17368         Module mbswidth.
17369         * m4/mbswidth.m4 (gl_MBSWIDTH): Renamed from jm_PREREQ_MBSWIDTH. Use
17370         onceonly macros.
17371         * m4/mbrtowc.m4: Add comment.
17372
17373         Module memcasecmp.
17374         * m4/memcasecmp.m4: New file.
17375
17376         Module memcoll.
17377         * m4/memcoll.m4: New file.
17378
17379         Module unicodeio.
17380         * m4/unicodeio.m4: New file.
17381
17382         Module rpmatch.
17383         * m4/rpmatch.m4: New file.
17384
17385         Module yesno.
17386         * m4/yesno.m4: New file.
17387
17388         Module exitfail.
17389         * m4/exitfail.m4: New file.
17390
17391         Module c-stack.
17392         * m4/c-stack.m4 (gl_C_STACK): New macro.
17393         (jm_PREREQ_C_STACK): Check for <sys/time.h>. Use onceonly macros.
17394
17395         Module error.
17396         * m4/error.m4 (gl_ERROR): New macro.
17397         (jm_PREREQ_ERROR): Use onceonly macros.
17398
17399         Module fatal.
17400         * m4/fatal.m4: New file.
17401
17402         Module getloadavg.
17403         * m4/getloadavg.m4 (AC_FUNC_GETLOADAVG): Use onceonly macros.
17404         (gl_FUNC_GETLOADAVG, gl_PREREQ_GETLOADAVG): New macros.
17405
17406         Module getpagesize.
17407         * m4/getpagesize.m4: New file.
17408
17409         Module getusershell.
17410         * m4/getusershell.m4: New file.
17411
17412         Module physmem.
17413         * m4/physmem.m4: New file.
17414
17415         Module posixver.
17416         * m4/posixver.m4: New file.
17417
17418         Module quotearg.
17419         * m4/quotearg.m4: New file.
17420
17421         Module quote.
17422         * m4/quote.m4: New file.
17423
17424         Module readutmp.
17425         * m4/readutmp.m4: New file, based on jm_PREREQ_READUTMP from prereq.m4.
17426
17427         Module sig2str.
17428         * m4/sig2str.m4: New file.
17429
17430         Other.
17431         * m4/longlong.m4 (jm_AC_TYPE_UNSIGNED_LONG_LONG): Remove, moved to
17432         ulonglong.m4.
17433         * m4/intmax_t.m4: New file.
17434         * m4/d-type.m4: Indentation.
17435         * m4/jm-macros.m4: Update.
17436         * m4/prereq.m4 (jm_PREREQ): Update.
17437         (jm_PREREQ_ADDEXT): Remove, obsoleted by backupfile.m4.
17438         (jm_PREREQ_CANON_HOST): Remove, obsoleted by canon-host.m4.
17439         (jm_PREREQ_DIRNAME): Remove, obsoleted by dirname.m4.
17440         (jm_PREREQ_EXCLUDE): Remove, obsoleted by exclude.m4.
17441         (jm_PREREQ_GETPAGESIZE): Remove, obsoleted by getpagesize.m4.
17442         (jm_PREREQ_HARD_LOCALE): Remove, obsoleted by hard-locale.m4.
17443         (jm_PREREQ_HASH): Remove, obsoleted by hash.m4.
17444         (jm_PREREQ_HUMAN): Remove, obsoleted by human.m4.
17445         (jm_PREREQ_MEMCHR): Remove, obsoleted by memchr.m4.
17446         (jm_PREREQ_PHYSMEM): Remove, obsoleted by physmem.m4.
17447         (jm_PREREQ_POSIXVER): Remove, obsoleted by posixver.m4.
17448         (jm_PREREQ_QUOTEARG): Remove, obsoleted by quotearg.m4.
17449         (jm_PREREQ_READUTMP): Remove, obsoleted by readutmp.m4.
17450         (jm_PREREQ_REGEX): Remove, obsoleted by regex.m4.
17451         (jm_PREREQ_STRNLEN): Remove, obsoleted by strnlen.m4.
17452         (jm_PREREQ_TEMPNAME): Remove, obsoleted by mkstemp.m4.
17453         (jm_PREREQ_XGETCWD): Remove, obsoleted by xgetcwd.m4.
17454         (jm_PREREQ_XREADLINK): Remove, obsoleted by xreadlink.m4.
17455         * m4/readdir.m4 (jm_FUNC_READDIR): Use onceonly macros.
17456
17457 2002-12-24  Bruno Haible  <bruno@clisp.org>
17458
17459         * MODULES.txt: Update according to m4/ changes.
17460
17461         Module gettext.
17462         * config.rpath: New file, from gettext-0.11.5.
17463
17464         * modules/*: New module descriptions.
17465         * gnulib-tool: New file.
17466         * MODULES.html.sh: New file.
17467
17468 2002-12-21  Karl Berry  <karl@gnu.org>
17469
17470         * doc/fdl.texi: update to version 1.2.
17471
17472 2002-12-19  Karl Berry  <karl@gnu.org>
17473
17474         * config/config.guess: update from prep.
17475
17476 2002-12-18  Bruno Haible  <bruno@clisp.org>
17477
17478         * m4/strftime.m4 (_jm_STRFTIME_PREREQS): Don't test for localtime_r.
17479         * m4/jm-mktime.m4 (jm_FUNC_MKTIME): Likewise.
17480
17481 2002-12-17  Bruno Haible  <bruno@clisp.org>
17482
17483         * m4/mbswidth.m4 (jm_PREREQ_MBSWIDTH): Remove checks for limits.h,
17484         stdlib.h, string.h.
17485
17486 2002-12-17  Bruno Haible  <bruno@clisp.org>
17487
17488         * lib/canon-host.c (strdup): Remove unused declaration.
17489
17490         * lib/fsusage.c: Include full_read.h.
17491         (get_fs_usage): Use full_read instead of safe_read.
17492
17493         * lib/utime.c (utime_null): Use SAFE_READ_ERROR.
17494
17495 2002-12-12  Karl Berry  <karl@gnu.org>
17496
17497         * config/config.guess: update from prep.
17498
17499 2002-12-11  Bruno Haible  <bruno@clisp.org>
17500
17501         * m4/setenv.m4: New file, from gettext-0.11.5.
17502
17503 2002-12-11  Bruno Haible  <bruno@clisp.org>
17504
17505         * lib/setenv.h: Rewritten to cope with systems that have setenv() but not
17506         unsetenv().
17507         * lib/setenv.c, unsetenv.c: Taken from glibc-2.2.4 with the following
17508         modifications:
17509
17510         2002-12-11  Bruno Haible  <bruno@clisp.org>
17511
17512                 * setenv.c (alloca): Fall back to malloc.
17513                 (freea): New macro.
17514                 (setenv): Use freea() to free memory allocated with alloca().
17515
17516         2002-11-13  Bruno Haible  <bruno@clisp.org>
17517
17518                 * setenv.c (compar_fn_t, __add_to_environ, setenv): Use ANSI C
17519                 function declarations.
17520                 * unsetenv.c (unsetenv): Likewise.
17521
17522         2002-03-04  Bruno Haible  <bruno@clisp.org>
17523
17524                 Portability to AIX 4.3.3.
17525                 * unsetenv.c: New file, extracted from setenv.c.
17526                 * setenv.c: Move the unsetenv() function to unsetenv.c.
17527
17528         2001-12-20  Bruno Haible  <bruno@clisp.org>
17529
17530                 * setenv.c (__add_to_environ): Don't call realloc(NULL,...),
17531                 use malloc instead. For SunOS 4.
17532
17533         2001-12-11  Bruno Haible  <bruno@clisp.org>
17534
17535                 * setenv.c: Declare alloca.
17536                 (compar_fn_t): New typedef.
17537                 (KNOWN_VALUE, STORE_VALUE): Use it.
17538
17539         * lib/Makefile.am (libfetish_a_SOURCES): Add setenv.c, unsetenv.c,
17540         setenv.h.
17541
17542 2002-12-10  Paul Eggert  <eggert@twinsun.com>
17543
17544         Port exclude.c and exclude.h to more non-GNU systems, e.g. Solaris 7.
17545         * lib/exclude.h (EXCLUDE_ANCHORED, EXCLUDE_INCLUDE, EXCLUDE_WILDCARDS):
17546         Choose values that are less likely to collide with system fnmatch
17547         options.
17548         * lib/exclude.c (FNM_CASEFOLD, FNM_LEADING_DIR): Define to 0 if not
17549         defined (e.g., a pure POSIX system).
17550         (EXCLUDE_macros_do_not_collide_with_FNM_macros): Use FNM_PATHNAME
17551         instead of FNM_FILE_NAME, for compatibility with pure POSIX sytems.
17552
17553 2002-12-06  Paul Eggert  <eggert@twinsun.com>
17554
17555         Undo the 2001-07-02 change for jm-glibc-io, as it was too much of
17556         a pain in practice to deal with generated m4 files.  This change
17557         goes together with the 2002-12-04 unlocked-io.h change in ../lib.
17558
17559         * m4/Makefile.am.in (Makefile.am): Don't mention jm-glibc-io.m4n
17560         and jm-glibc-io.m4, as they are no longer a special case.
17561         * m4/jm-glibc-io.m4: Rename from jm-glibc-io.m4n, and remove the
17562         kludge and the auto-generation stuff.  Check only whether the
17563         functions are declared, not whether they exist, since older hosts
17564         that don't declare the functions can't use the optimization anyway.
17565
17566 2002-12-06  Jim Meyering  <jim@meyering.net>
17567
17568         * lib/error.c: Be consistent: change `#ifndef _LIBC' to `#if !_LIBC'.
17569
17570         Merge in changes from libc's misc/error.c, in preparation
17571         for the merge of gnulib's changes back into libc.
17572
17573         * lib/error.c (_): Define only if not already defined.
17574         Move definition to follow all #include directives.
17575         Include unlocked-io.h only if !_LIBC.
17576         [_LIBC]: Include <libio/libioP.h>.
17577         [USE_IN_LIBIO]: Include <libio/iolibio.h>
17578         (fflush): Tweak definition to use INTUSE.
17579         (putc): Define.
17580
17581 2002-12-05  Paul Eggert  <eggert@twinsun.com>
17582
17583         * lib/alloca.c [defined emacs]: Include "lisp.h".
17584         (xalloc_die) [defined emacs]: New macro.
17585         (free) [defined emacs && defined EMACS_FREE]: Define to EMACS_FREE.
17586         [! defined emacs]: Include <xalloc.h>.
17587         (POINTER_TYPE) [!defined POINTER_TYPE]: New macro.
17588         (pointer): Typedef to POINTER_TYPE *.
17589         (malloc): Remove decl; we now always use xmalloc.
17590         (alloca): Use old-style definition, since Emacs needs this.
17591         Check for arithmetic overflow when computing combined size.
17592
17593 2002-12-04  Paul Eggert  <eggert@twinsun.com>
17594
17595         Do not generate unlocked-io.h automatically, since it's easier to
17596         maintain it by hand.
17597
17598         * lib/unlocked-io.h: New file, from GNU diffutils,
17599         but with proper copyright notice and attribution.
17600         * lib/gen-uio: Remove.
17601         * lib/Makefile.am: Add copyright notice.
17602         (libfetish_a_SOURCES): Add unlocked-io.h.
17603         (BUILT_SOURCES, all-local): Remove unlocked-io.h.
17604         (DISTCLEANFILES, io_functions): Remove macros.
17605         (EXTRA_DIST): Remove gen_uio.
17606         (unlocked-io.h): Remove rule.
17607
17608 2002-12-04  Jim Meyering  <jim@meyering.net>
17609
17610         Reflect the fact that stat.c and lstat.c are no longer generated.
17611         * lib/Makefile.am (BUILT_SOURCES): Remove stat.c and lstat.c.
17612         (DISTCLEANFILES): Likewise.
17613         (EXTRA_DIST): Likewise.
17614         (all_local): Don't depend on stat.c or lstat.c.
17615         (stat.c, lstat.c): Remove rules.
17616         (EXTRA_DIST): Remove xstat.in.
17617
17618         * lib/xstat.in: Remove file.  Contents moved into stat.c.
17619         * lib/stat.c: New file.  Contents mostly from xstat.in.
17620         * lib/stat.c: Rework so that it may serve to define rpl_lstat, too.
17621         * lib/lstat.c: New file. Simply #define LSTAT and include stat.c.
17622
17623         * lib/safe-read.c: Rework so that it may serve to define safe_write, too.
17624         * lib/safe-write.c: Simply #define SAFE_WRITE and include safe-read.c.
17625
17626 2002-12-03  Jim Meyering  <jim@meyering.net>
17627
17628         * lib/safe-read.c, safe-write.c: Change variable names and comments, but
17629         not semantics, to minimize the differences between these two files.
17630         (safe_read): Change comment to mention SAFE_READ_ERROR.
17631
17632         * lib/safe-read.c (IS_EINTR): Define.
17633         (safe_read): Use IS_EINTR in place of in-function cpp directives.
17634
17635 2002-12-02  Jim Meyering  <jim@meyering.net>
17636
17637         * lib/safe-read.c (EINTR): Define.
17638         (CHAR_BIT, TYPE_SIGNED, TYPE_MINIMUM, TYPE_MAXIMUM): Define.
17639         (INT_MAX): Provide fallback.
17640         (safe_read): Rewrite to iterate IFF the read fails with EINTR.
17641
17642         * lib/safe-read.h (SAFE_READ_ERROR): Define.
17643
17644 2002-12-02  Bruno Haible  <bruno@clisp.org>
17645
17646         * lib/safe-write.c (CHAR_BIT, TYPE_SIGNED, TYPE_MINIMUM, TYPE_MAXIMUM):
17647         Define, taken from safe-read.c.
17648         (INT_MAX): Provide fallback.
17649         (safe_write): Rewrite to iterate IFF the write fails with EINTR.
17650         * lib/safe-write.h (SAFE_WRITE_ERROR): Define.
17651
17652         * lib/safe-read.c (EINTR): Remove definition.
17653         (safe_read): Don't use EINTR if it is absent.
17654
17655 2002-12-01  Jim Meyering  <jim@meyering.net>
17656
17657         * lib/safe-read.c: (safe_read): Also exit the loop when read returns zero.
17658         (CHAR_BIT, TYPE_SIGNED, TYPE_MINIMUM, TYPE_MAXIMUM, INT_MAX): Define.
17659
17660 2002-11-27  Paul Eggert  <eggert@twinsun.com>
17661
17662         * lib/hash.c (hash_lookup, hash_get_first, hash_get_next, hash_find_entry,
17663         hash_rehash): Replace `if (limit <= value) abort ();' with
17664         `if (! (value < limit)) abort ();', for readability.
17665
17666 2002-11-26  Karl Berry  <karl@gnu.org>
17667
17668         * lib/strdup.c: copy from libc again, with jim's ok.
17669         * lib/.cppi-disable: re-add strdup.c
17670
17671 2002-11-25  Karl Berry  <karl@gnu.org>
17672
17673         * lib/strtoll.c: copy from libc, meaning we now #include <strtol.c>
17674         instead of "strtol.c".
17675
17676 2002-11-25  Karl Berry  <karl@gnu.org>
17677
17678         * config/install-sh: update from automake for variable quoting, $0 in
17679         error msgs, etc.
17680
17681         * config/srclist.txt ($LIBCSRC/time/mktime.c lib gpl): new entry.
17682         * config/srclist.txt ($LIBCSRC/sysdeps/generic/strtoll.c lib gpl): new
17683         entry.
17684
17685 2002-11-25  Jim Meyering  <jim@meyering.net>
17686
17687         * lib/mktime.c: Sync from libc, now that it has the latest fix.
17688
17689 2002-11-24  Karl Berry  <karl@gnu.org>
17690
17691         * lib/error.c, getopt.c, getopt.h, getopt1.c, obstack.c, regex.c,
17692         regex.h, strdup.c, strtoll.c, tempname.c: change license to gpl.
17693
17694 2002-11-24  Jim Meyering  <jim@meyering.net>
17695
17696         Update from coreutils:
17697
17698         * lib/mktime.c: Merge in changes from libc.
17699
17700         Avoid a link-time failure on some Linux systems.
17701         * lib/mktime.c (STATIC): Define to be empty (_LIBC) or `static' (otherwise).
17702         (__mon_yday): Declare with the STATIC attribute.
17703         (__mktime_internal): Likewise.
17704         Based on a report from Greg Schafer.
17705
17706 2002-11-23  Jim Meyering  <jim@meyering.net>
17707
17708         * lib/sig2str.c (str2signum, sig2str): Avoid a warning from gcc:
17709         Use `unsigned', not `int', as type of index.
17710
17711         * lib/xstat.in [@BEGIN_LSTAT_ONLY@]: Include <string.h>.
17712
17713         * lib/fsusage.c: Remove unneeded parentheses around operands of `defined'.
17714
17715 2002-11-22  Paul Eggert  <eggert@twinsun.com>
17716
17717         * lib/quotearg.h: Allow multiple inclusion by surrounding with
17718         "#ifndef QUOTEARG_H_".  Include <stddef.h>, for size_t,
17719         so that we can be included first.
17720         (PARAMS): Remove; we now assume C89 or later.  All uses removed.
17721         * lib/quotearg.c: Include quotearg.h immediately after config.h.
17722         No need to include stddef.h or sys/types.h any more.
17723         Surround local include files with "", not "<>".
17724         Assume HAVE_LIMITS_H unconditionally, as we assume C89.
17725         Similarly, assume HAVE_C_BACKSLASH_A, CHAR_BIT, UCHAR_MAX, UINT_MAX,
17726         HAVE_STDLIB_H, HAVE_STRING_H, STDC_HEADERS.
17727         (HAVE_MBSINIT): Undef if !HAVE_MBRTOWC.
17728         (mbsinit): Define to 1 if !defined mbsinit && !HAVE_MBSINIT.
17729         (ISPRINT): Remove; no longer needed now that we assume C89.
17730
17731         (clone_quoting_options, quotearg_buffer, quotearg_n_options):
17732         Preserve errno.
17733
17734         (quotearg_buffer_restyled, quotearg_n, quotearg_n_style,
17735         quotearg_char): Use SIZE_MAX rather than
17736         (size_t) -1 when we are talking about "infinity".
17737
17738         (quotearg_buffer_restyled): Fix bug when quoting trigraphs.
17739
17740 2002-11-22  Paul Eggert  <eggert@twinsun.com>
17741
17742         * lib/hash.c: Avoid use of <assert.h>, as the GNU Coding Standards
17743         hint that one should use `if (! x) abort ();' rather than `assert
17744         (x);', and anyway it's one less thing to worry about configuring.
17745         (hash_lookup, hash_get_first, hash_get_next, hash_find_entry,
17746         hash_rehash, hash_insert): Use abort rather than assert.
17747
17748 2002-11-22  Bruno Haible  <bruno@clisp.org>
17749
17750         * lib/safe-read.h: Assume C89. Add comments.
17751         (safe_read): Change return type to size_t.
17752         * lib/safe-read.c (safe_read): Change return type to size_t. Handle byte
17753         counts > SSIZE_MAX correctly.
17754         * lib/safe-write.h: New file.
17755         * lib/safe-write.c: New file.
17756         * lib/full-read.h: New file.
17757         * lib/full-read.c: New file.
17758         * lib/full-write.h: Assume C89. Add comments.
17759         * lib/full-write.c: Include safe-write.h.
17760         (full_write): Rewritten to use safe_write.
17761         Suggested by Jim Meyering and Paul Eggert.
17762
17763 2002-11-21  Jim Meyering  <jim@meyering.net>
17764
17765         * lib/strdup.c (strdup): Tweak comment and initial #if/#include.
17766
17767         Merge in changes from the coreutils.
17768
17769         2002-09-25  Paul Eggert  <eggert@twinsun.com>
17770         * lib/fsusage.c [! HAVE_INTTYPES_H && HAVE_STDINT_H] Include <stdint.h>.
17771         (UINTMAX_MAX) [!defined UINTMAX_MAX]: New macro.
17772         (PROPAGATE_ALL_ONES): Work even if X is unsigned and narrower than
17773         int.  Work more efficiently if X is the same width as uintmax_t.
17774         Do not compare X to -1, to avoid bogus compiler warning.
17775         (get_fs_usage): (uintmax_t) -1 -> UINTMAX_MAX to avoid a cast.
17776         Don't assume that f_frsize and f_bsize are the same type.
17777
17778         * lib/mountlist.c: #undef MNT_IGNORE before defining it, to avoid warning
17779         on FreeBSD.
17780
17781         * lib/makepath.c (make_path): Restore umask *before* creating the final
17782         component.
17783         (make_path): Minor reformatting.
17784
17785         * lib/xmalloc.c: Adjust to work with new autoconf macros, AC_FUNC_MALLOC
17786         and AC_FUNC_REALLOC: test #ifndef HAVE_MALLOC/HAVE_REALLOC.
17787
17788         * lib/mountlist.h (ME_DUMMY): Don't count entries of type `auto' as dummy
17789         ones.  At least on GNU/Linux systems, `auto' means something else.
17790         From Michael Stone.
17791
17792 2002-11-21  Bruno Haible  <bruno@clisp.org>
17793
17794         Remove case insensitive option matching.
17795         * lib/argmatch.h (argcasematch): Remove declaration.
17796         (ARGCASEMATCH): Remove macro.
17797         (__xargmatch_internal): Remove case_sensitive argument.
17798         (XARGMATCH): Update.
17799         (XARGCASEMATCH): Remove macro.
17800         * lib/argmatch.c (argmatch): Renamed from __argmatch_internal. Remove
17801         case_sensitive argument.
17802         (argcasematch): Remove function.
17803         (__xargmatch_internal): Remove case_sensitive argument.
17804         (main): Use XARGMATCH instead of XARGCASEMATCH.
17805
17806         * lib/xmalloc.c: Change compile-time error message. Add comment about
17807         required autoconf version.
17808
17809 2002-11-20  Paul Eggert  <eggert@twinsun.com>
17810
17811         Merge argmatch cleanups from Bison.  Assume C89.
17812
17813         * lib/argmatch.c: Include config.h here, not in argmatch.h.
17814         Include stdlib.h, for EXIT_FAILURE.
17815         Always include <string.h>, since we assume C89.
17816         (EXIT_FAILURE): Remove pre-C89 bug workaround.
17817         * lib/argmatch.h: Do not include <config.h> or <sys/types.h>.
17818         Include <stddef.h> instead, since it's all we need for size_t.
17819         (PARAMS): Remove.  All uses removed.
17820         (ARRAY_CARDINALITY): Do not bother to #undef.
17821         (ARRAY_CARDINALITY, ARGMATCH, ARGCASEMATCH, invalid_arg,
17822         ARGMATCH_VALID, XARGMATCH, XARGCASEMATCH):
17823         Remove unnecessary parentheses.
17824         (ARGMATCH_VALID, XARGMATCH, XARGCASEMATCH):
17825         Insert necessary parentheses.
17826         (ARGMATCH_CONSTRAINT, ARGMATCH_VERIFY): New macros.
17827         (ARGMATCH_ASSERT): Use ARGMATCH_CONSTRAINT.
17828
17829 2002-11-19  Bruno Haible  <bruno@clisp.org>
17830
17831         * lib/mbswidth.c: Include mbswidth.h right at the beginning.
17832         * lib/mbswidth.h: Include <stddef.h>, for size_t.
17833
17834         * lib/mbswidth.h (PARAMS): Remove macro.
17835         (mbswidth, mbsnwidth): Use ANSI C function declarations.
17836         * lib/mbswidth.c (mbswidth, mbsnwidth): Likewise.
17837
17838         * lib/gcd.h (PARAMS): Remove macro.
17839         (gcd): Use ANSI C function declarations.
17840         * lib/gcd.c (gcd): Likewise.
17841
17842 2002-11-15  Bruno Haible  <bruno@clisp.org>
17843
17844         * lib/strcspn.c: Include <stddef.h>.
17845         (strcspn): Use ANSI C function declaration. Change return type to
17846         size_t. Use NULL.
17847         * lib/strpbrk.c: Minimize diffs to glibc. Include <stddef.h>.
17848         (strpbrk): Use NULL.
17849         * lib/strpbrk.h (PARAMS): Remove macro.
17850         (strpbrk): Use ANSI C function declaration.
17851         * lib/strstr.c: Don't include <sys/types.h>.
17852         * lib/strstr.h (PARAMS): Remove macro.
17853         (strstr): Use ANSI C function declarations.
17854
17855 2002-11-14  Karl Berry  <karl@gnu.org>
17856
17857         * config/mkinstalldirs: `do' on separate line, instead of `for var; do'.
17858
17859 2002-11-06  Bruno Haible  <bruno@clisp.org>
17860
17861         * lib/gcd.h (gcd): Change argument type to 'unsigned long'.
17862         * lib/gcd.c (gcd): Likewise.
17863
17864 2002-11-05  Bruno Haible  <bruno@clisp.org>
17865
17866         * lib/gcd.h: New file, from gettext-0.11.5.
17867         * lib/gcd.c: New file, from gettext-0.11.5.
17868
17869 2002-11-05  Bruno Haible  <bruno@clisp.org>
17870
17871         * lib/error.c [!_LIBC]: Include gettext.h instead of <libintl.h>.
17872         * lib/getopt.c [!_LIBC]: Include gettext.h instead of <libintl.h>.
17873         * lib/obstack.c [!_LIBC]: Include gettext.h instead of <libintl.h>.
17874         * lib/regex.c [!_LIBC]: Include gettext.h instead of <libintl.h>.
17875
17876         * lib/argmatch.c: Include gettext.h instead of <locale.h> and <libintl.h>.
17877         * lib/makepath.c: Include gettext.h instead of <locale.h> and <libintl.h>.
17878
17879         * lib/closeout.c: Include gettext.h instead of <libintl.h>.
17880         * lib/human.c: Include gettext.h instead of <libintl.h>.
17881         * lib/quotearg.c: Include gettext.h instead of <libintl.h>.
17882         * lib/rpmatch.c: Include gettext.h instead of <libintl.h>.
17883         * lib/unicodeio.c: Include gettext.h instead of <libintl.h>.
17884         * lib/userspec.c: Include gettext.h instead of <libintl.h>.
17885         * lib/version-etc.c: Include gettext.h instead of <libintl.h>.
17886         * lib/xmalloc.c: Include gettext.h instead of <libintl.h>.
17887         (textdomain): Remove definition.
17888         * lib/xmemcoll.c: Include gettext.h instead of <libintl.h>.
17889
17890         * lib/long-options.c: Remove include of <libintl.h> and definition of _.
17891         * lib/same.c: Remove include of <libintl.h> and definition of _.
17892
17893 2002-11-04  Owen Taylor  <otaylor@redhat.com>
17894
17895         * lib/config.charset: A few additions for Solaris.
17896
17897 2002-11-04  Bruno Haible  <haible@clisp.cons.org>
17898
17899         Make it possible to build libcharset with CC=gcc CFLAGS="-x c++".
17900         * lib/localcharset.c (locale_charset): Declare as extern "C".
17901
17902 2002-11-04  Bruno Haible  <haible@clisp.cons.org>
17903
17904         * lib/config.charset: msdos in uk_UA uses CP1125.
17905
17906 2002-11-04  Bruno Haible  <bruno@clisp.org>
17907
17908         * lib/stpcpy.h: New file, from GNU gettext-0.11.5.
17909         * lib/strcase.h: New file, from GNU gettext-0.11.5.
17910         * lib/strpbrk.h: New file, from GNU gettext-0.11.5.
17911         * lib/strstr.h: New file, from GNU gettext-0.11.5.
17912         * lib/xgetcwd.h: New file, from GNU gettext-0.11.5.
17913
17914 2002-11-04  Bruno Haible  <bruno@clisp.org>
17915
17916         * lib/localcharset.c (locale_charset): Don't return an empty string.
17917
17918 2002-11-04  Bruno Haible  <bruno@clisp.org>
17919
17920         * lib/localcharset.c (get_charset_aliases): Add more Windows specific
17921         aliases.
17922
17923 2002-11-04  Bruno Haible  <bruno@clisp.org>
17924
17925         * lib/config.charset: Update for newest glibc. Add canonical names
17926         ISO-8859-14, KOI8-T, TCVN5712-1, GEORGIAN-PS.
17927
17928 2002-11-04  Bruno Haible  <bruno@clisp.org>
17929
17930         * lib/config.charset: Add support for NetBSD.
17931
17932 2002-11-04  Bruno Haible  <bruno@clisp.org>
17933
17934         * lib/config.charset [msdosdjgpp]: For Russian, use CP866.
17935
17936 2002-11-01  Bruno Haible  <bruno@clisp.org>
17937
17938         * configure.in: Add AC_CONFIG_AUX_DIR call.
17939         (AC_OUTPUT): Add m4/Makefile, lib/Makefile. Remove doc/Makefile,
17940         test/Makefile.
17941         * Makefile.in (subdirs): Add m4, lib. Remove doc, test.
17942
17943 2002-09-28  Karl Berry  <karl@gnu.org>
17944
17945         * config/srclist.txt: can't copy install-sh/mkinstalldirs from installed
17946         automake until the next release, since changes have been made.
17947
17948 2002-09-25  Karl Berry  <karl@gnu.org>
17949
17950         * lib/strdup.c: copy from libc/string (via ../config/srclist*).
17951         * lib/getopt*: copy from libc/posix.
17952         * lib/gettext.h: copy from gettext.
17953         * lib/.cppi-disable: add strdup.c, gettext.h.
17954
17955 2002-09-25  Karl Berry  <karl@gnu.org>
17956
17957         * config/srclist.txt: enable gettext.h check.
17958         * config/config.{guess,sub}: update from prep.
17959         * config/depcomp, install-sh, mdate-sh, missing, mkinstalldirs: update
17960                 from automake 1.6.3.
17961         See srclist*.
17962
17963 2002-08-23  Stefan Monnier  <monnier@cs.yale.edu>
17964
17965         * regex.c (PATFETCH): Remove the translating fetch.
17966         (PATFETCH_RAW): Rename to PATFETCH.
17967         (set_image_of_range): New fun.
17968         (SET_RANGE_TABLE_WORK_AREA): Use it.
17969         (regex_compile): Don't translate the pattern chars so eagerly.
17970         Only do it when inserting an `exactn' bytecode or when handling
17971         a char-range.
17972         (mutually_exclusive_p): Avoid empty statement.
17973
17974 2002-07-06  Jim Meyering  <meyering@lucent.com>
17975
17976         * m4/README: Don't mention Makefile.am.in.
17977         Outline how I've tested changes to .m4 files.  Yep, it's a pain.
17978
17979 2002-07-01  Jim Meyering  <meyering@lucent.com>
17980
17981         * lib/c-stack.c: Include sys/time.h.
17982         From Volker Borchert.
17983
17984 2002-06-26  Paul Eggert  <eggert@twinsun.com>
17985
17986         * m4/fnmatch.m4 (_AC_LIBOBJ_FNMATCH): Check for btowc.
17987
17988 2002-06-26  Paul Eggert  <eggert@twinsun.com>
17989
17990         * lib/fnmatch.c, fnmatch_loop.c (WIDE_CHAR_SUPPORT):
17991         New macro.  Use it uniformly instead of
17992         (defined HAVE_WCTYPE_H && defined HAVE_WCHAR_H).
17993         It also uses HAVE_BTOWC, to fix a porting bug on Solaris 2.5.1
17994         reported by Vin Shelton.
17995
17996 2002-06-22  Paul Eggert  <eggert@twinsun.com>
17997
17998         * lib/c-stack.h (segv_handler, c_stack_action) [! defined SA_SIGINFO]:
17999         Do not assume SA_SIGINFO behavior.
18000         Bug reported by Jim Meyering on NetBSD 1.5.2.
18001
18002 2002-06-22  Jim Meyering  <meyering@lucent.com>
18003
18004         * m4/c-stack.m4: New file, from diffutils-2.8.2.
18005         * m4/prereq.m4 (jm_PREREQ): Add jm_PREREQ_C_STACK.
18006
18007         * m4/jm-macros.m4 (jm_CHECK_ALL_TYPES): Don't require AC__GNU_SOURCE,
18008         now that configure.ac uses AC_GNU_SOURCE.
18009         (jm_MACROS): Rename: jm_FUNC_FNMATCH to AC_FUNC_FNMATCH_GNU.
18010         * m4/prereq.m4 (jm_PREREQ_EXCLUDE): Likewise, wrt jm_FUNC_FNMATCH.
18011
18012         Update to latest tools.  Suggestions from Paul Eggert.
18013         * m4/stdbool.m4: New file, from diffutils-2.8.2.
18014         * m4/gnu-source.m4: Update from diffutils-2.8.2.
18015         * m4/fnmatch.m4: Likewise.
18016         * m4/prereq.m4: Change each use of AC_CHECK_HEADERS(stdbool.h)
18017         to AC_HEADER_STDBOOL
18018
18019 2002-06-22  Jim Meyering  <meyering@lucent.com>
18020
18021         * lib/fnmatch.c (ISASCII, ISPRINT): Undefine, to avoid warning about
18022         redefinition due to Solaris 2.6's definition in /usr/include/sys/euc.h.
18023
18024 2002-06-22  Jim Meyering  <meyering@lucent.com>
18025
18026         * lib/c-stack.c, c-stack.h: New files, from diffutils-2.8.2.
18027
18028         * lib/exitfail.c, exitfail.h: Likewise.
18029         * lib/Makefile.am (libfetish_a_SOURCES): Add exitfail.c and exitfail.h.
18030
18031         * lib/Makefile.am (libfetish_a_SOURCES): Add fnmatch_.h in place
18032         of fnmatch.h.
18033         (EXTRA_DIST): Add fnmatch_loop.c.
18034         (libfetish_a_SOURCES): Add c-stack.c and c-stack.h.
18035
18036         * lib/fnmatch_loop.c: New file, from diffutils-2.8.2.
18037         * lib/fnmatch.c: Update from diffutils-2.8.2.
18038         * lib/fnmatch_.h: New file.  From diffutils-2.8.2.
18039         * lib/fnmatch.h: Remove file.
18040
18041 2002-06-21  Jim Meyering  <meyering@lucent.com>
18042
18043         * m4/c-bs-a.m4: Add comment, from diffutils-2.8.2.
18044         * m4/mbrtowc.m4: Likewise.
18045
18046         * m4/mbstate_t.m4: Update from diffutils-2.8.2.
18047         * m4/mbswidth.m4: Reflect name change:
18048         s/AC_MBSTATE_T/AC_TYPE_MBSTATE_T.
18049         * m4/prereq.m4 (jm_PREREQ_QUOTEARG): Likewise.
18050
18051         * m4/lib-link.m4: Update from gettext-0.11.2.
18052         * m4/gettext.m4: Likewise.
18053
18054         * m4/jm-macros.m4 (jm_CHECK_ALL_HEADERS): Check for hurd.h.
18055         From Alfred M. Szmidt.
18056
18057 2002-06-18  Paul Eggert  <eggert@twinsun.com>
18058
18059         * lib/file-type.h: Report an error if neither S_ISREG nor
18060         S_IFREG is defined, instead of using a test specific to glibc
18061         2.2.  This should be safe, since POSIX requires S_ISREG and
18062         Unix Version 7 had S_IFREG.  We don't need to check for
18063         <sys/types.h> since we don't use any symbols that it defines.
18064
18065 2002-06-15  Richard Dawe  <richdawe@bigfoot.com>
18066
18067         * lib/Makefile.am (lstat.c, stat.c, .sin.sed): Use t-$@, rather than $@-t,
18068         so that each temporary file name is unique and valid in the first
18069         8 characters, for operation under DOS.
18070
18071 2002-06-15  Paul Eggert  <eggert@twinsun.com>
18072
18073         * m4/jm-macros.m4 (jm_CHECK_ALL_TYPES): Check for st_author.
18074
18075 2002-06-15  Jim Meyering  <meyering@lucent.com>
18076
18077         Work even with DJGPP 2.03, which lacks support for symlinks.
18078         From Richard Dawe.
18079         * lib/xstat.in (S_ISLNK): Define to 0 if neither S_ISLNK nor S_IFLNK
18080         is defined.
18081         * lib/lchown.c (S_ISLNK): Likewise.
18082
18083 2002-06-15  Jim Meyering  <meyering@lucent.com>
18084
18085         * lib/file-type.h (FILE_TYPE_H): Guard entire contents with #ifndef.
18086         For GNU libc 2.2 and newer, ensure that <sys/types.h> and <sys/stat.h>
18087         have been included before this file.
18088
18089 2002-06-14  Jim Meyering  <meyering@lucent.com>
18090
18091         * lib/file-type.h: Use the version from diffutils-2.8.2.
18092         * lib/file-type.c: Likewise.
18093
18094 2002-06-07  Jim Meyering  <meyering@lucent.com>
18095
18096         * m4/prereq.m4 (jm_PREREQ_STAT): Check for sys/param.h and sys/mount.h.
18097         They're needed at least for NetBSD 1.5.2.
18098         ($statxfs_includes): Include those same headers.
18099         ($statxfs_includes): Include sys/vfs.h if available.
18100         ($statxfs_includes): Likewise for sys/statvfs.h.
18101         Check for the following members in both structs statfs and statvfs:
18102         f_basetype, f_type, f_fsid.__val, f_namemax, f_namelen.
18103
18104 2002-06-01  Jim Meyering  <meyering@lucent.com>
18105
18106         * m4/d-type.m4 (jm_CHECK_TYPE_STRUCT_DIRENT_D_TYPE): Rename macro:
18107         s/D_TYPE_IN_DIRENT/HAVE_STRUCT_DIRENT_D_TYPE/.
18108
18109 2002-05-28  Jim Meyering  <meyering@lucent.com>
18110
18111         * m4/readdir.m4 (jm_FUNC_READDIR): Undefine `mkdir', not `rmdir'.
18112         Reported by Volker Borchert.
18113
18114 2002-05-27  Jim Meyering  <meyering@lucent.com>
18115
18116         Fix a problem seen only on nonconforming systems whereby ls.c's
18117         use of localtime, and then of gettimeofday would cause trouble:
18118         the localtime call used to initialize rpl_gettimeofday's save
18119         mechanism would clobber ls's current local time information so
18120         that in any long listing the first file would always be listed
18121         with date 1970-01-01.  Analysis by Volker Borchert.
18122
18123         * lib/gettimeofday.c (localtime): Undefine.
18124         (rpl_localtime): New function.
18125
18126 2002-05-27  Jim Meyering  <meyering@lucent.com>
18127
18128         * m4/gettimeofday.m4 (AC_FUNC_GETTIMEOFDAY_CLOBBER): Also replace
18129         localtime.
18130
18131         * m4/readdir.m4 (jm_FUNC_READDIR): Undefine `rmdir' so we don't try to
18132         use the replacement function; it wouldn't resolve at link time.
18133         Reported by Volker Borchert.
18134
18135 2002-05-22  Jim Meyering  <meyering@lucent.com>
18136
18137         * lib/Makefile.am (libfetish_a_SOURCES): Add file-type.c and file-type.h.
18138         * lib/file-type.h: New file.
18139         * lib/file-type.c (file_type): New file/function.  Extracted from diffutils.
18140
18141 2002-04-30  Jim Meyering  <meyering@lucent.com>
18142
18143         * m4/prereq.m4 (jm_PREREQ): Add jm_PREREQ_STAT.
18144
18145 2002-04-29  Paul Eggert  <eggert@twinsun.com>
18146
18147         * m4/prereq.m4 (jm_PREREQ_SIG2STR): Remove; all callers changed.
18148
18149 2002-04-29  Paul Eggert  <eggert@twinsun.com>
18150
18151         * m4/prereq.m4 (jm_PREREQ_HARD_LOCALE): Check for stdlib.h.
18152         Do not check for alloca.h (no longer used) or stdbool.h (was never
18153         used?).  Add AM_C_PROTOTYPES since hard-locale.h uses it.
18154
18155 2002-04-29  Paul Eggert  <eggert@twinsun.com>
18156
18157         * lib/hard-locale.c: Upgrade to version used in GNU Diffutils 2.8.1.
18158
18159 2002-04-29  Jim Meyering  <meyering@lucent.com>
18160
18161         * m4/jm-macros.m4 (jm_MACROS): Remove use of AC_FUNC_STRNLEN.
18162         * m4/prereq.m4: Add jm_PREREQ_STRNLEN.
18163         Use AC_FUNC_STRNLEN here instead.
18164
18165         * m4/jm-macros.m4: Don't AC_REQUIRE([AC_PROG_CC_STDC]).
18166         With autoconf-2.53a, it's part of AC_PROG_CC.
18167
18168 2002-04-28  Paul Eggert  <eggert@twinsun.com>
18169
18170         * m4/jm-macros.m4 (jm_MACROS): Add AC_REPLACE_FUNCS(sig2str).
18171         * m4/prereq.m4 (jm_PREREQ): Add jm_PREREQ_SIG2STR.
18172
18173 2002-04-28  Paul Eggert  <eggert@twinsun.com>
18174
18175         * lib/sig2str.h, sig2str.c: New files.
18176         * lib/Makefile.am (libfetish_a_SOURCES): Add sig2str.h.
18177
18178 2002-04-28  Paul Eggert  <eggert@twinsun.com>
18179
18180         * lib/sig2str.h (SIGNUM_BOUND): Do not use WTERMSIG, to avoid
18181         depending on <sys/wait.h> and WTERMSIG.  Default to 64 instead
18182         of 127, since 64 is the largest conceivable number for ancient
18183         nonstandard hosts.
18184         * lib/sig2str.c: Do not include <sys/wait.h>; no longer needed.
18185
18186 2002-04-28  Jim Meyering  <meyering@lucent.com>
18187
18188         * lib/sig2str.c (WTERMSIG): Remove definition (unused).
18189
18190 2002-04-24  Jim Meyering  <meyering@lucent.com>
18191
18192         * m4/prereq.m4 (jm_PREREQ_HARD_LOCALE): New macro.
18193         (jm_PREREQ): Use it.
18194
18195         * m4/getloadavg.m4: Check for these headers: locale.h unistd.h
18196         mach/mach.h fcntl.h.
18197         Check for this function: setlocale.
18198
18199 2002-04-24  Jim Meyering  <meyering@lucent.com>
18200
18201         * lib/gettext.h: New file, from Gettext.
18202         * lib/Makefile.am (INCLUDES): Remove -I../intl.
18203         (libfetish_a_SOURCES): Add gettext.h.
18204
18205 2002-04-16  Jim Meyering  <meyering@lucent.com>
18206
18207         * m4/prereq.m4 (jm_PREREQ_READUTMP): Also check for these members:
18208         ut_pid, ut_id, ut_exit.
18209
18210 2002-04-16  Jim Meyering  <meyering@lucent.com>
18211
18212         * lib/readutmp.h (UT_TYPE): Remove definition (now in who.c).
18213         (HAVE_STRUCT_XTMP_UT_EXIT, HAVE_STRUCT_XTMP_UT_ID): Define.
18214         (HAVE_STRUCT_XTMP_UT_PID, HAVE_STRUCT_XTMP_UT_TYPE): Define.
18215
18216 2002-04-12  Jim Meyering  <meyering@lucent.com>
18217
18218         * m4/ls-mntd-fs.m4 (checking for getmntinfo function...): Remove now-bogus
18219         check for f_type in sys/mount.h.  Instead, just test for the existence
18220         of the getmntinfo function.  Needed for Darwin 5.3.
18221
18222         * m4/dirfd.m4 (UTILS_FUNC_DIRFD): Also detect when dirfd is a macro.
18223         This is necessary at least on Darwin 5.3.
18224
18225         * m4/jm-macros.m4: Don't AC_REPLACE(strnlen), now that we use
18226         AC_FUNC_STRNLEN.  Otherwise, we'd end up putting two copies of strnlen.o
18227         in the library, and that makes some versions of ranlib object.
18228
18229 2002-04-12  Jim Meyering  <meyering@lucent.com>
18230
18231         * lib/dirfd.h (dirfd): Elide prototype if dirfd is a macro.
18232
18233 2002-04-09  Jim Meyering  <meyering@lucent.com>
18234
18235         * m4/malloc.m4: (jm_FUNC_MALLOC): Change the `checking ...' message
18236         to be more precise.  Rather than saying we're checking whether the
18237         function `works', say what we're testing.
18238         * m4/realloc.m4 (jm_FUNC_REALLOC): Likewise.
18239         Reported by Bruno Haible.
18240
18241 2002-03-10  Jim Meyering  <meyering@lucent.com>
18242
18243         * lib/makepath.c (make_path): Remove a comma from a diagnostic.
18244         Suggestion from Santiago Vila.
18245
18246 2002-03-08  Jim Meyering  <meyering@lucent.com>
18247
18248         * lib/rename.c: Mention that this wrapper is needed also on
18249         mips-dec-ultrix4.4 systems.
18250
18251 2002-03-02  Jim Meyering  <meyering@lucent.com>
18252
18253         * lib/gettime.c (gettime): Test HAVE_CLOCK_GETTIME,
18254         not HAVE_CLOCK_SETTIME.
18255
18256 2002-02-27  Paul Eggert  <eggert@twinsun.com>
18257
18258         * m4/jm-macros.m4 (jm_MACROS): Do not replace stime; no longer used.
18259         Check for clock_settime.
18260
18261 2002-02-27  Paul Eggert  <eggert@twinsun.com>
18262
18263         * lib/nanosleep.h: Rename to....
18264         * lib/timespec.h: New name for nanosleep.h.  All uses changed.
18265
18266         * lib/gettime.c: New file.
18267         * lib/settime.c: New file.
18268         * lib/stime.c: Remove.
18269
18270         * lib/Makefile.am (libfetish_a_SOURCES): Add gettime.c, settime.c,
18271         timespec.h.  Remove nanosleep.h.
18272
18273 2002-02-25  Paul Eggert  <eggert@twinsun.com>
18274
18275         * m4/acl.m4: New file.
18276         * m4/jm-macros.m4 (jm_MACROS): Require AC_FUNC_ACL.
18277         Do not check for acl or sys/acl.h, as AC_FUNC_ACL does that now.
18278
18279 2002-02-25  Paul Eggert  <eggert@twinsun.com>
18280
18281         * lib/acl.c, acl.h: New files.
18282         * lib/Makefile.am (libfetish_a_SOURCES): Add acl.h, acl.c.
18283
18284 2002-02-24  Jim Meyering  <meyering@lucent.com>
18285
18286         * lib/strnlen.c (strnlen): Define-away/undef so that an inconsistent
18287         prototype in string.h (on at least AIX4.3.2.0 w/gcc-2.95.3) doesn't
18288         cause trouble.  Reported by Nelson Beebe.
18289
18290 2002-02-23  Paul Eggert  <eggert@twinsun.com>
18291
18292         * lib/path-concat.c (xpath_concat): Reorder code to pacify
18293         compilers that don't know that xalloc_die never returns.
18294
18295 2002-02-20  Jim Meyering  <meyering@lucent.com>
18296
18297         * lib/getdate.c: Regenerate using bison-1.33.
18298
18299 2002-02-17  Jim Meyering  <meyering@lucent.com>
18300
18301         * config/config.guess (main): Don't use `head -1'; it's no longer portable.
18302         Use `sed 1q' instead.
18303
18304 2002-02-16  gettextize  <bug-gnu-gettext@gnu.org>
18305
18306         * m4/codeset.m4: Upgrade to gettext-0.11.
18307         * m4/gettext.m4: Upgrade to gettext-0.11.
18308         * m4/glibc21.m4: Upgrade to gettext-0.11.
18309         * m4/iconv.m4: Upgrade to gettext-0.11.
18310         * m4/isc-posix.m4: Upgrade to gettext-0.11.
18311         * m4/lcmessage.m4: Upgrade to gettext-0.11.
18312         * m4/lib-ld.m4: New file, from gettext-0.11.
18313         * m4/lib-link.m4: New file, from gettext-0.11.
18314         * m4/lib-prefix.m4: New file, from gettext-0.11.
18315         * m4/progtest.m4: Upgrade to gettext-0.11.
18316
18317 2002-02-15  Paul Eggert  <eggert@twinsun.com>
18318
18319         * m4/prereq.m4 (jm_PREREQ_POSIXVER): New macro.
18320         (jm_PREREQ): Use it.
18321
18322 2002-02-15  Paul Eggert  <eggert@twinsun.com>
18323
18324         * lib/posixver.c, posixver.h: New files.
18325         * lib/Makefile.am (libfetish_a_SOURCES): Add them.
18326
18327 2002-02-02  Paul Eggert  <eggert@twinsun.com>
18328             Bruno Haible  <bruno@clisp.org>
18329
18330         * lib/unicodeio.h (print_unicode_char): Add exit_on_error argument.
18331         (fwrite_success_callback): New declaration.
18332         * lib/unicodeio.c (unicode_to_mb): New function, extracted from
18333         print_unicode_char. Call failure callback instead of error.
18334         (fwrite_success_callback): New function.
18335         (exit_failure_callback): New function.
18336         (fallback_failure_callback): New function.
18337         (print_unicode_char): Call unicode_to_mb.
18338
18339 2002-01-26  Jim Meyering  <meyering@lucent.com>
18340
18341         * m4/jm-macros.m4 (jm_MACROS): Require autoconf-2.52g.
18342         * m4/strnlen.m4: Remove file, now that it's part of autoconf.
18343
18344 2002-01-26  Jim Meyering  <meyering@lucent.com>
18345
18346         * lib/Makefile.am (getdate$U.o): Depend on unlocked-io.h.
18347
18348 2002-01-22  Paul Eggert  <eggert@twinsun.com>
18349
18350         * m4/jm-macros.m4 (jm_MACROS): Require AC_FUNC_FSEEKO.
18351
18352 2002-01-22  Jim Meyering  <meyering@lucent.com>
18353
18354         * lib/Makefile.am (Makefile): Don't depend on $(BUILT_SOURCES).
18355         Otherwise, some versions of automake would omit the rule that makes
18356         Makefile from Makefile.in.
18357
18358 2002-01-21  Paul Eggert  <eggert@twinsun.com>
18359
18360         * lib/xmemcoll.h, xmemcoll.c: New files.
18361         * lib/Makefile.am (libfetish_a_SOURCES): Add them.
18362         * lib/memcoll.c: Include errno.h, and declare errno if not defined.
18363         (memcoll): Set errno to zero if there is no error.
18364
18365         * lib/quotearg.c (quotearg_buffer_restyled):
18366         Fix bug with quoting buffers containing NUL when backslashing escapes.
18367         This bug was exposed by the other changes in this patch.
18368         (quotearg_n_options): New arg ARGSIZE.
18369         All callers changed.
18370         (quoting_options_from_style): New function.
18371         (quotearg_n_style): Use it.
18372         (quotearg_n_style_mem): New function.
18373
18374         * lib/quotearg.h (quotearg_n_style_mem): New function.
18375
18376 2002-01-19  Jim Meyering  <meyering@lucent.com>
18377
18378         * m4/jm-macros.m4 (jm_MACROS): Use AC_FUNC_STRNLEN.
18379         Remove useless quotes: DF_PROG="df".
18380         * m4/strnlen.m4: New file.
18381
18382 2002-01-16  Paul Eggert  <eggert@twinsun.com>
18383
18384         * lib/backupfile.c (ISDIGIT): Comment fix.
18385         * lib/getdate.y (ISDIGIT): Likewise.
18386         * lib/posixtm.c (ISDIGIT, year): Likewise.
18387         * lib/strverscmp.c (ISDIGIT): Likewise.
18388         * lib/userspec.c (ISDIGIT): Likewise.
18389
18390 2002-01-16  Jim Meyering  <meyering@lucent.com>
18391
18392         * lib/getdate.y: Add three semicolons, each just before a closing brace.
18393         Bison (as of version 1.31) no longer papers over that mistake.
18394
18395 2002-01-05  Jim Meyering  <meyering@lucent.com>
18396
18397         * lib/version-etc.c (version_etc_copyright): Update copyright year.
18398
18399 2001-12-19  Paul Eggert  <eggert@twinsun.com>
18400
18401         * lib/closeout.c (close_stdout_status): If ferror (stdout), do
18402         not silently exit merely because the output buffer happens to
18403         have nothing pending.
18404
18405 2001-12-18  Paul Eggert  <eggert@twinsun.com>
18406
18407         See the big note in ../ChangeLog.
18408         * lib/human.c (suffixes): Prefer K to k for 1024.
18409         (generate_suffix_backwards): New function.
18410         (human_readable_inexact): Use it.
18411         * lib/xstrtol.c (__xstrtol): If there is no number but there
18412         is a valid suffix, assume 1.  "MB" now means decimal, "MiB" binary.
18413         Accept 'K' as well as 'k'.
18414
18415 2001-12-15  Jim Meyering  <meyering@lucent.com>
18416
18417         * lib/regex.h (__restrict_arr): Update from libc.
18418
18419         * lib/mountlist.h (ME_REMOTE): Recognize file systems of type smbfs
18420         as `remote' if the name starts with `//'.  Suggested by Michael Stone.
18421         (STREQ): Define.
18422
18423 2001-12-14  Jim Meyering  <meyering@lucent.com>
18424
18425         * m4/jm-macros.m4 (jm_MACROS): Check for iswspace.
18426         Suggestion from Bruno Haible.
18427
18428 2001-12-10  Jim Meyering  <meyering@lucent.com>
18429
18430         * lib/linebuffer.c: Remove explicit declarations of xmalloc and xrealloc,
18431         Instead, include "xalloc.h".
18432         (initbuffer): Don't cast xmalloc return value to char*.
18433         (readline): Reword comment.
18434         Don't cast xrealloc return value to char*
18435         Return NULL, not 0.
18436
18437 2001-12-09  Jim Meyering  <meyering@lucent.com>
18438
18439         * lib/modechange.c (mode_compile): Add cast to avoid pedantic warning about
18440         `signed and unsigned type in conditional expression'.
18441         * lib/posixtm.c (posix_time_parse): Likewise.
18442
18443         * lib/xreadlink.c (xreadlink): Add cast to avoid a pedantic warning.
18444
18445         * lib/readtokens.c (readtoken): Declare an index to be of type unsigned
18446         to avoid a pedantic warning.
18447
18448         * lib/getstr.c: Don't include assert.h.
18449         (getstr): Remove warning-evoking assertions.
18450         Return -1 if offset parameter is out of bounds.
18451         Change the type of a local from int to size_t.
18452
18453         * lib/strftime.c (my_strftime_localtime_r): Include this function
18454         definition in the `#if ! HAVE_TM_GMTOFF' block.
18455
18456         * lib/xgethostname.c: Remove declarations of xmalloc and xrealloc.
18457         Include xalloc.h instead.
18458
18459 2001-12-02  Jim Meyering  <meyering@lucent.com>
18460
18461         * lib/tempname.c: Don't declare getenv, thus reverting the change of
18462         2001-11-18.  It's no longer necessary, now that stdlib.h is always
18463         included.
18464
18465         * lib/regex.c [!__BOUNDED_POINTERS__]: Define away __bounded,
18466         __unbounded, and __ptrvalue.  Reported by Uwe H. Steinfeld.
18467
18468 2001-11-30  Akim Demaille  <akim@epita.fr>
18469
18470         * lib/xstrdup.c: Include xalloc.h, so that xstrdup is declared
18471         before being defined.
18472
18473 2001-11-27  Paul Eggert  <eggert@twinsun.com>
18474
18475         * lib/quotearg.h (quotearg_n, quotearg_n_style):
18476         First arg is int, not unsigned.
18477         * lib/quotearg.c (quotearg_n, quotearg_n_style): Likewise.
18478         (SIZE_MAX, UINT_MAX): New macros.
18479         (quotearg_n_options): Abort if N is negative.
18480         Avoid overflow check on hosts where size_t is 64 bits and int
18481         is 32 bits, as overflow is impossible there.
18482         Fix off-by-one typo that caused unnecessary reallocation.
18483
18484 2001-11-27  Jim Meyering  <meyering@lucent.com>
18485
18486         * lib/tempname.c: Merge with version from libc.
18487         * lib/regex.c: Likewise.
18488
18489         * lib/tempname.c: Include stdlib.h unconditionally.  On some old systems
18490         for which STDC_HEADERS is 0, it was not included, resulting in a
18491         warning about an integer-to-pointer conversion problem with getenv.
18492         Reported by Volker Borchert.
18493
18494 2001-11-26  Jim Meyering  <meyering@lucent.com>
18495
18496         * lib/gtod.h: Remove file.
18497         * lib/Makefile.am (libfetish_a_SOURCES): Remove gtod.h.
18498         * lib/gettimeofday.c: Don't include gtod.h.
18499         (GTOD_init): Remove function.
18500         (rpl_gettimeofday): Do its job here instead, rather than aborting.
18501         Suggestion from Volker Borchert.
18502
18503 2001-11-23  Jim Meyering  <meyering@lucent.com>
18504
18505         * lib/hash.h (struct hash_table): Don't define here.  Merely declare it.
18506         * lib/hash.c (struct hash_table): Define it here instead.
18507
18508 2001-11-22  Jim Meyering  <meyering@lucent.com>
18509
18510         * lib/hash.h: Bracket contents of file with #ifndef HASH_H_ ... #endif.
18511
18512 2001-11-20  Jim Meyering  <meyering@lucent.com>
18513
18514         * m4/mkstemp.m4 (UTILS_FUNC_MKSTEMP): Update comment to reflect that
18515         SunOS 4.1.4 and Solaris 2.5.1 lose, too.
18516
18517 2001-11-19  Jim Meyering  <meyering@lucent.com>
18518
18519         * m4/mkstemp.m4 (UTILS_FUNC_MKSTEMP): Don't bother with a temporary
18520         directory.  Use "conftestXXXXXX" as the template.
18521         Suggestion from Paul Eggert.
18522
18523         * m4/mkstemp.m4 (UTILS_FUNC_MKSTEMP): Close each descriptor immediately,
18524         so the test doesn't mistakenly hit the max-open-files limit.
18525
18526 2001-11-18  Paul Eggert  <eggert@twinsun.com>
18527
18528         * lib/tempname.c (TMP_MAX): Remove; no longer needed.
18529         (TEMPORARIES): New macro.
18530         (__gen_tempname): Use TEMPORARIES rather than TMP_MAX.  This
18531         removes an artificial limitation (e.g. HP-UX 10.20, where
18532         TMP_MAX is 17576).
18533
18534 2001-11-18  Jim Meyering  <meyering@lucent.com>
18535
18536         * m4/prereq.m4 (jm_PREREQ_TEMPNAME): Check for declaration of getenv.
18537
18538 2001-11-18  Jim Meyering  <meyering@lucent.com>
18539
18540         * lib/tempname.c [!HAVE_DECL_GETENV]: Declare getenv to avoid warning
18541         on SunOS 4.
18542
18543         * lib/Makefile.am (Makefile): Depend on $(BUILT_SOURCES), so those
18544         files will be created before anything else.
18545
18546 2001-11-17 Paul Eggert  <eggert@twinsun.com>
18547
18548         * m4/jm-winsz1.m4 (jm_WINSIZE_IN_PTEM): Do not define
18549         WINSIZE_IN_PTEM if <termios.h> defines struct winsize.
18550
18551 2001-11-17  Jim Meyering  <meyering@lucent.com>
18552
18553         * m4/mkstemp.m4 (UTILS_FUNC_MKSTEMP): New file and macro.
18554         Prompted by a report from Bob Proulx.
18555
18556         * m4/jm-macros.m4 (jm_MACROS): Don't test for mkstemp here.
18557         Instead, require UTILS_FUNC_MKSTEMP.
18558
18559 2001-11-17  Jim Meyering  <meyering@lucent.com>
18560
18561         * m4/jm-macros.m4 (jm_MACROS): Remove code to set POW_LIBM.
18562         Now, that's done as part of AC_FUNC_STRTOD.
18563
18564 2001-11-17  Jim Meyering  <meyering@lucent.com>
18565
18566         * lib/modechange.c (mode_adjust): Fix error introduced on 1999-04-26
18567         that made e.g., `chmod a=,o=w,g=o F' cause F to be group readable
18568         rather than group writable.  Patch by Juan F. Codagnone.
18569
18570         * lib/readtokens.c: Remove explicit declarations of xmalloc and xrealloc,
18571         Instead, include "xalloc.h".
18572
18573         * lib/mountlist.c: Include unlocked-io.h after all system headers.
18574         Remove explicit declarations of xmalloc, xrealloc,
18575         and xstrdup.  Instead, include "xalloc.h".
18576
18577         * lib/argmatch.c, closeout.c, error.c, exclude.c: Include unlocked-io.h.
18578         * lib/fatal.c, getdate.y, getpass.c, getstr.c, getusershell.c: Likewise.
18579         * lib/mountlist.c, posixtm.c, readtokens.c, readutmp.c: Likewise.
18580
18581         * lib/regex.c, sha.c, version-etc.c, yesno.c: Likewise.
18582         Reported by Padraig Brady.
18583
18584         * lib/mkstemp.c: #undef mkstemp.
18585         Include config.h.
18586         (rpl_mkstemp): Rename from mkstemp.
18587         Protoize.
18588
18589 2001-11-16  Jim Meyering  <meyering@lucent.com>
18590
18591         * lib/physmem.c [HAVE_SYS_PSTAT_H]: Include <sys/pstat.h>.
18592         (physmem_total) [HAVE_PSTAT_GETSTATIC]: If sysconf couldn't be used to
18593         determine the amount of total physical memory, use pstat_getstatic.
18594         HPUX-11 doesn't define _SC_PHYS_PAGES.
18595         (physmem_available) [HAVE_PSTAT_GETSTATIC && HAVE_PSTAT_GETDYNAMIC]:
18596         If sysconf couldn't be used to determine the amount of available
18597         physical memory, use both pstat_getstatic and pstat_getdynamic.
18598         Based on a patch from Bob Proulx.
18599
18600 2001-11-10  Jim Meyering  <meyering@lucent.com>
18601
18602         * m4/prereq.m4 (jm_PREREQ_PHYSMEM): New function.
18603         (jm_PREREQ): Use it.
18604
18605 2001-11-09  Jim Meyering  <meyering@lucent.com>
18606
18607         * m4/jm-macros.m4: Require autoconf-2.52f.
18608         (AC_FUNC_ERROR_AT_LINE, AC_FUNC_OBSTACK, AC_FUNC_STRTOD):
18609         Use these AC_-prefixed names, not the AM_-prefixed ones.
18610
18611         * m4/afs.m4 (jm_AFS): Quote the body.  Patch by Akim Demaille.
18612
18613 2001-11-05  Jim Meyering  <meyering@lucent.com>
18614
18615         * lib/xstat.in (slash_aware_lstat): Correct a misleading comment.
18616
18617 2001-11-04  Jim Meyering  <meyering@lucent.com>
18618
18619         * m4/fpending.m4: Remove unused cruft that saved, set, and restored $DEFS.
18620
18621 2001-11-03  Jim Meyering  <meyering@lucent.com>
18622
18623         * m4/jm-glibc-io.m4n (jm_FUNC_GLIBC_UNLOCKED_IO): Quote first arg
18624         of AC_DEFUN.
18625
18626         * m4/dirfd.m4 (UTILS_FUNC_DIRFD): Rework so dirfd.c doesn't have to
18627         know the name of the variable in the macro definition.
18628
18629 2001-11-03  Jim Meyering  <meyering@lucent.com>
18630
18631         * lib/argmatch.h (ARGMATCH_TO_ARGUMENT): Remove casts of first two args
18632         in argmatch_to_argument call.
18633
18634         * lib/dirfd.c (dirfd): Reflect the fact that DIR_TO_FD now takes an
18635         argument.
18636
18637         * lib/hash.c (hash_clear): Fix a bug that could lead to an infloop or
18638         e.g., a fault due to an attempt to free a NULL pointer.
18639
18640 2001-11-01  Jim Meyering  <meyering@lucent.com>
18641
18642         * m4/dirfd.m4 (UTILS_FUNC_DIRFD): New macro.
18643         * m4/jm-macros.m4 (jm_MACROS): Require UTILS_FUNC_DIRFD.
18644
18645 2001-11-01  Jim Meyering  <meyering@lucent.com>
18646
18647         * lib/dirfd.c, dirfd.h: New files.
18648         * lib/Makefile.am (libfetish_a_SOURCES): Add dirfd.h.
18649
18650         * lib/hash.c (hash_print) [TESTING]: Clean up.
18651
18652 2001-10-22  Paul Eggert  <eggert@twinsun.com>
18653
18654         * lib/hard-locale.c (alloca): Define to __builtin_alloca if __GNUC__,
18655         to avoid a warning if -Wall.
18656
18657 2001-10-22  Jeff Bailey  <jbailey@outpost.dnsalias.org>
18658
18659         * README: New file
18660         * doc/*: Add COPYING, COPYING.LIB, COPYING.DOC, fdl.texi
18661         (per RMS's instructions, this is now the canonical source)
18662         * lgpl/, gpl/: New directories.
18663
18664 2001-10-21  Paul Eggert  <eggert@twinsun.com>
18665
18666         * lib/regex.c (uintptr_t): Remove macro and decl; it's config.h's job.
18667
18668 2001-10-21  Jim Meyering  <meyering@lucent.com>
18669
18670         * lib/obstack.c (_): Honor the setting of ENABLE_NLS.  Otherwise,
18671         this code would end up calling gettext even in packages built
18672         with --disable-nls.
18673         * lib/getopt.c (_): Likewise.
18674         * lib/regex.c (_): Likewise.
18675
18676 2001-10-20  Paul Eggert  <eggert@twinsun.com>
18677
18678         * m4/error.m4 (jm_PREREQ_ERROR):
18679         Do not invoke AC_CHECK_FUNCS with strerror_r, as
18680         AC_FUNC_STRERROR_R does that.
18681         Check for strerror declaration.
18682
18683         * m4/strerror_r.m4: Add copyright notice, as nontrivial m4 files
18684         are supposed to have them these days.
18685         (AC_FUNC_STRERROR_R): Always do char* test, so that it gets cached.
18686         Merge changes from latest Autoconf CVS.
18687         Rename ac_cv_func_strerror_r_works to ac_cv_func_strerror_r_char_p,
18688         and rename HAVE_WORKING_STRERROR_R to STRERROR_R_CHAR_P, since
18689         POSIX decided to standardize on the int flavor of strerror_r.
18690
18691 2001-10-20  Paul Eggert  <eggert@twinsun.com>
18692
18693         * lib/error.c (strerror_r): Do not declare unless !_LIBC.
18694         Do not check for HAVE_DECL_STRERROR_R missing unless STRERROR_R_CHAR_P.
18695         Use strerror_r that is only a macro, even if it is not a function.
18696         (strerror): Check for HAVE_DECL_STRERROR before declaring.
18697         (private_strerror): Use prototypes, not old-style function definition.
18698         (print_errno_message): New function.
18699         Support the POSIX 'int'-flavored strerror_r, as well as the traditional
18700         char*-flavored one.
18701         (error_tail, error, error_at_line): Use it.
18702
18703 2001-10-11  Jim Meyering  <meyering@lucent.com>
18704
18705         * lib/argmatch.c (argmatch_invalid): Use quotearg_n_style (0, ...
18706         and quote_n (1, ... to avoid clobbering a buffer.
18707
18708 2001-10-05  Jim Meyering  <meyering@lucent.com>
18709
18710         * lib/Makefile.am: (libfetish_a_SOURCES): Add hash-pjw.c and hash-pjw.h.
18711         * lib/hash-pjw.c: New file (factored out of fileutils' remove.c).
18712         * lib/hash-pjw.h: New file.
18713
18714 2001-09-30  Jim Meyering  <meyering@lucent.com>
18715
18716         * m4/ls-mntd-fs.m4 (jm_LIST_MOUNTED_FILESYSTEMS): See if
18717         `struct fsstat' has the `f_fstypename' member.
18718         Use that to define FS_TYPE, which is now used to make
18719         the getfsstat link test tighter.
18720
18721 2001-09-30  Jim Meyering  <meyering@lucent.com>
18722
18723         * lib/mountlist.c [MOUNTED_GETFSSTAT]:
18724         Include <sys/ucred.h>, for Apple Darwin.
18725         Include sys/mount.h and sys/fs_types.h only if available.
18726         (FS_TYPE): Define.
18727         (read_filesystem_list): Use FS_TYPE.
18728
18729 2001-09-29  Paul Eggert  <eggert@twinsun.com>
18730
18731         * lib/exclude.c (excluded_filename): 0 -> false, since it's
18732         a boolean context.
18733
18734 2001-09-29  Jim Meyering  <meyering@lucent.com>
18735
18736         * m4/ls-mntd-fs.m4 (jm_LIST_MOUNTED_FILESYSTEMS)
18737         [one-argument getmntent function]): Include stdio.h before mntent.h.
18738         SunOS 4.1.x needs it for the declaration of `FILE'.
18739         Patch by Volker Borchert.
18740
18741         * m4/ls-mntd-fs.m4 (jm_LIST_MOUNTED_FILESYSTEMS)
18742         Check for these headers: sys/param.h sys/ucred.h sys/mount.h
18743         sys/fs_types.h, and make the link-test for getfsstat guard #include
18744         directives with appropriate #if HAVE_*_H tests so that we can
18745         detect getfsstat on Apple Darwin1.3.7 systems.
18746         Reported by Nelson Beebe.
18747         Fix harmless typo in cache variable name: s/getsstat/getfsstat/.
18748
18749 2001-09-28  Paul Eggert  <eggert@twinsun.com>
18750
18751         Fix bug reported by Petter Reinholdtsen for HP-UX 10.20, which
18752         #defines strtoimax.  Also treat the other strto* functions
18753         like strtoimax.
18754
18755         * m4/xstrtoimax.m4 (jm_AC_PREREQ_XSTRTOIMAX):
18756         Check for strtoul and strtoumax,
18757         as those declarations are made even in the signed case.
18758         * m4/xstrtoumax.m4 (jm_AC_PREREQ_XSTRTOUMAX):
18759         Likewise, for strtol and strtoimax.
18760
18761 2001-09-28  Paul Eggert  <eggert@twinsun.com>
18762
18763         Fix bug reported by Petter Reinholdtsen for HP-UX 10.20, which
18764         #defines strtoimax.  Also treat the other strto* functions
18765         like strtoimax.
18766
18767         * lib/xstrtol.c (strtol): Do not declare if HAVE_DECL_STRTOL.
18768         (strtoul): Do not declare if HAVE_DECL_STRTOUL.
18769         (strtoimax, strtoumax): Do not declare if already defined as a macro.
18770
18771 2001-09-26  Jim Meyering  <meyering@lucent.com>
18772
18773         Most macros in unlocked-io.h had the wrong number of arguments.
18774         * lib/gen-uio: New script.
18775         (USE_UNLOCKED_IO): Define to 1 if not already defined.
18776         * lib/unlocked-io.hin: Remove file.
18777         * lib/Makefile.am (unlocked-io.h): Rewrite to use a separate script,
18778         rather than trying to embed it here.
18779         (EXTRA_DIST): Add gen-uio.  Remove unlocked-io.hin
18780         Reported by Padraig Brady.
18781
18782 2001-09-25  Volker Borchert  <bt@teknon.de>
18783
18784         * lib/gettimeofday.c (rpl_gettimeofday): Declare local variable `result'.
18785
18786 2001-09-24  Jim Meyering  <meyering@lucent.com>
18787
18788         * m4/gettext.m4: Use the version from gettext-0.10.40, not CVS.
18789
18790 2001-09-23  Jim Meyering  <meyering@lucent.com>
18791
18792         * m4/ls-mntd-fs.m4 (jm_LIST_MOUNTED_FILESYSTEMS): Add a compile-test
18793         instead of the mere test for existence of mntent.h.  The latter
18794         would get a false-positive on AIX 3.4 systems.
18795         In the outer getmntent if-block, don't die if neither of the getmntent
18796         tests succeeds.  Instead, just fall through and continue with the
18797         remaining tests.
18798
18799 2001-09-23  Jim Meyering  <meyering@lucent.com>
18800
18801         * lib/mountlist.c: Remove useless parentheses in #if directives.
18802         (MOUNTED) [!defined MOUNTED]: Define to _PATH_MOUNTED, for when
18803         the deprecated MOUNTED symbol is no longer defined in mntent.h.
18804
18805 2001-09-22  Jim Meyering  <meyering@lucent.com>
18806
18807         * m4/gettext.m4: New file.  From gettext.
18808         * m4/lcmessage.m4: Sync with gettext -- this changes only comments.
18809         * m4/progtest.m4: Likewise
18810         * m4/isc-posix.m4: Decrement serial number to sync with gettext.
18811         * m4/glibc21.m4: Likewise.
18812
18813         * m4/libintl.m4: Remove.  No longer used.
18814
18815 2001-09-22  Jim Meyering  <meyering@lucent.com>
18816
18817         * lib/localcharset.c: Update from latest gettext.
18818         * lib/config.charset: Likewise.
18819
18820 2001-09-20  Jim Meyering  <meyering@lucent.com>
18821
18822         * m4/xstrtoimax.m4 (jm_AC_PREREQ_XSTRTOIMAX): Check for declaration of
18823         strtoimax.
18824         * m4/xstrtoumax.m4 (jm_AC_PREREQ_XSTRTOUMAX): Check for declaration of
18825         strtoumax.
18826
18827 2001-09-20  Jim Meyering  <meyering@lucent.com>
18828
18829         * lib/xstrtol.c (strtoimax): Guard declaration with
18830         `#if !HAVE_DECL_STRTOIMAX', rather than just `#ifndef strtoimax'.
18831         The latter fails because some systems (at least rs6000-ibm-aix4.3.3.0)
18832         have their own, conflicting declaration of strtoimax in sys/inttypes.h.
18833         (strtoumax): Likewise, for completeness (it wasn't necessary).
18834
18835 2001-09-17  Paul Eggert  <eggert@twinsun.com>
18836
18837         * lib/strtoimax.c (HAVE_LONG_LONG):
18838         Redefine to HAVE_UNSIGNED_LONG_LONG if unsigned.
18839         (strtoimax): Use sizeof (long), not sizeof strtol (ptr, endptr, base),
18840         to work around bug in IBM C compiler.
18841
18842 2001-09-17  Jim Meyering  <meyering@lucent.com>
18843
18844         * m4/chown.m4, fstypename.m4, getgroups.m4, gettimeofday.m4,
18845         * m4/jm-mktime.m4, lstat.m4, malloc.m4, memcmp.m4, mkdir-slash.m4,
18846         * m4/nanosleep.m4, putenv.m4, readdir.m4, realloc.m4, rename.m4,
18847         * m4/st_dm_mode.m4, stat.m4, strerror_r.m4, timespec.m4, utimbuf.m4,
18848         * m4/utimes.m4: Use AC_DEFINE rather than AC_DEFINE_UNQUOTED,
18849         whenever the right hand side need not be expanded by the shell.
18850
18851 2001-09-16  Paul Eggert  <eggert@twinsun.com>
18852
18853         * m4/fnmatch.m4 (jm_FUNC_FNMATCH): Remove test for GNU C
18854         library.  It's not correct, as some older glibcs are buggy.
18855         fnmatch wasn't fixed until glibc 2.2.
18856
18857         Use AC_DEFINE, not AC_DEFINE_UNQUOTED, as there's no
18858         special shell magic here.
18859
18860 2001-09-16  Jim Meyering  <meyering@lucent.com>
18861
18862         * m4/mkdir-slash.m4 (UTILS_FUNC_MKDIR_TRAILING_SLASH): New file/macro.
18863         * m4/jm-macros.m4: Require it.
18864
18865 2001-09-16  Jim Meyering  <meyering@lucent.com>
18866
18867         * lib/mkdir.c: New file.
18868
18869 2001-09-15  Jim Meyering  <meyering@lucent.com>
18870
18871         * m4/jm-macros.m4: Check for help2man.
18872
18873 2001-09-11  Jim Meyering  <meyering@lucent.com>
18874
18875         * m4/host-os.m4 (UTILS_HOST_OS): New file/macro.
18876         The body, by Paul Eggert, was moved here from configure.in.
18877         * m4/jm-macros.m4: Require UTILS_HOST_OS.
18878
18879 2001-09-04  Paul Eggert  <eggert@twinsun.com>
18880
18881         * m4/prereq.m4 (jm_PREREQ_XREADLINK): New macro.
18882         (jm_PREREQ): Use it.
18883
18884 2001-09-04  Paul Eggert  <eggert@twinsun.com>
18885
18886         * lib/xreadlink.c (xreadlink): Omit size_t* arg.  All uses changed.
18887         Use ssize_t, not int, to store result of readlink.
18888         Check for ssize_t overflow as well as size_t overflow,
18889         as POSIX says the result of readlink is implementation-defined
18890         when ssize_t overflows.
18891         Remove unnecessary cast to char*.
18892         Use free+malloc instead of realloc, as the storage doesn't need
18893         to be preserved and it's clearer and can be more efficient that way.
18894         (SIZE_MAX, SSIZE_MAX): New macros, if <limits.h> doesn't declare.
18895         * lib/xreadlink.h (xreadlink): Update prototype.
18896
18897 2001-09-04  Paul Eggert  <eggert@twinsun.com>
18898
18899         * lib/xgetcwd.c: Revert some of the previous change; intead,
18900         fix the HAVE_GETCWD_NULL code to behave more like the
18901         !HAVE_GETCWD_NULL code used to.
18902
18903         Include "xalloc.h".
18904         (xgetcwd): Do not return NULL when memory is exhausted; instead,
18905         invoke xalloc_die.
18906
18907 2001-09-03  Paul Eggert  <eggert@twinsun.com>
18908
18909         * m4/prereq.m4 (jm_PREREQ_XGETCWD): Check for limits.h and
18910         sys/param.h, as pathmax.h includes them.
18911
18912 2001-09-03  Paul Eggert  <eggert@twinsun.com>
18913
18914         * m4/prereq.m4 (jm_PREREQ): Add jm_PREREQ_XGETCWD.
18915         (jm_PREREQ_XGETCWD): New macro.
18916
18917         * m4/getcwd.m4: New file.
18918
18919 2001-09-03  Paul Eggert  <eggert@twinsun.com>
18920
18921         * lib/xgetcwd.c: Fix the !HAVE_GETCWD_NULL code to behave more
18922         like the HAVE_GETCWD_NULL code.
18923         Include pathmax.h if not HAVE_GETCWD.
18924         Do not include xalloc.h.
18925         (INITIAL_BUFFER_SIZE): New symbol.
18926         Do not use xmalloc / xrealloc, since the caller is responsible for
18927         handling errors.  Preserve errno around `free' during failure.
18928         Do not overrun buffer when using getwd.
18929
18930 2001-09-03  Paul Eggert  <eggert@twinsun.com>
18931
18932         * lib/xgetcwd.c (xgetcwd): Use HAVE_GETCWD_NULL, not (defined
18933         __GLIBC__ && __GLIBC__ >= 2), to decide whether to use getcwd (NULL, 0).
18934
18935 2001-09-03  Paul Eggert  <eggert@twinsun.com>
18936
18937         * lib/exclude.c (fnmatch_no_wildcards): Fix confusion between
18938         usage of FNM_CASEFOLD and FNM_LEADING_DIR.  The bug was
18939         spotted by Jim Meyering.
18940
18941 2001-09-03  Jim Meyering  <meyering@lucent.com>
18942
18943         * lib/xreadlink.c (xreadlink): Preserve errno around `free' during failure.
18944
18945 2001-09-02  Jim Meyering  <meyering@lucent.com>
18946
18947         * lib/error.c: Update from GNU libc.
18948
18949 2001-09-01  Jim Meyering  <meyering@lucent.com>
18950
18951         * m4/jm-macros.m4 (jm_MACROS): Check for canonicalize_file_name.
18952         Used by df.
18953
18954 2001-09-01  Jim Meyering  <meyering@lucent.com>
18955
18956         * lib/xreadlink.c: New file.
18957         * lib/xreadlink.h: New file.
18958         * lib/Makefile.am (libfetish_a_SOURCES): Add xreadlink.c and xreadlink.h.
18959
18960         * lib/regex.c (uintptr_t) [!_LIBC]: Define to private_uintptr_t, so it
18961         doesn't conflict with sparc Solaris 7's definition in
18962         /usr/include/sys/int_types.h.
18963
18964         * lib/exclude.c: Use `""', not `<>' to #include non-system header files.
18965         (fnmatch_no_wildcards): Rewrite not to use function names, strcasecmp
18966         and strncasecmp as r-values.  Unixware didn't have declarations.
18967
18968 2001-08-31  Paul Eggert  <eggert@twinsun.com>
18969
18970         * lib/xstrtol.h: Add copyright notice.
18971         (_DECLARE_XSTRTOL): Improve quality of diagnostic for
18972         LONGINT_INVALID_SUFFIX_CHAR.
18973
18974 2001-08-31  Paul Eggert  <eggert@twinsun.com>
18975
18976         * lib/xstrtol.c (strtoimax): New decl.
18977
18978 2001-08-31  Paul Eggert  <eggert@twinsun.com>
18979
18980         * lib/xgetcwd.c: Don't include pathmax.h.
18981         Include stdlib.h and unistd.h if available.
18982         Include xalloc.h.
18983         (xmalloc, xstrdup, free): Remove decls.
18984         (xgetcwd): Don't assume sizes fit in unsigned.
18985         Check for overflow when computing sizes.
18986         Simplify reallocation code.
18987
18988 2001-08-31  Paul Eggert  <eggert@twinsun.com>
18989
18990         * lib/savedir.c (savedir): Remove size parameter, as POSIX says that
18991         a directory's st_size can have an arbitrary value, so the old
18992         usage could waste an arbitrary amount of memory.  All uses
18993         changed.
18994         * lib/savedir.h: Update prototype.
18995
18996 2001-08-31  Paul Eggert  <eggert@twinsun.com>
18997
18998         * lib/Makefile.am (libfetish_a_SOURCES): Remove strtoxmax.c.
18999
19000         * lib/strtoimax.c: Renamed from strtoxmax.c, removing the
19001         old strtoimax.c.
19002
19003         Also, make the following further changes to make this file's
19004         configuration more similar to that of strtol.c:
19005         (UNSIGNED): Renamed from STRTOUXMAX_UNSIGNED.  All uses changed.
19006         (strtoumax, uintmax_t, strtoull, strtol): Remove.
19007         (intmax_t, strtoimax, strtol, strtoll): New macros, if UNSIGNED.
19008         (strtoimax): Renamed from strtoumax.  All uses of unsigned values
19009         changed to signed values.
19010
19011         And make the following changes as well:
19012         Fix copyright notice, as 1999 was missing.
19013         (verify): New macro.
19014         (strtoimax): Check sizes at compile-time, not run-time.
19015         Prefer strtol to strtoll if both work.
19016         (main): Remove; it was not that useful and was a pain to maintain.
19017
19018         * lib/strtoumax.c: Include strtoimax.c, not strtouxmax.c.
19019
19020 2001-08-31  Jim Meyering  <meyering@lucent.com>
19021
19022         * lib/xgetcwd.c (xgetcwd): Reorganize to avoid some duplication.
19023         Use an initial, malloc'd, buffer of length 128 rather than
19024         a statically allocated one of length 1024.
19025
19026 2001-08-30  Paul Eggert  <eggert@twinsun.com>
19027
19028         Simplify code, partly by assuming autoconf 2.52 semantics.
19029
19030         * m4/Makefile.am (EXTRA_DIST): Remove uintmax_t.m4.
19031
19032         * m4/inttypes.m4 (AC_PREREQ): Bump to 2.52.
19033         (jm_AC_HEADER_INTTYPES_H): Remove; now done by autoconf in 2.52.
19034         All uses removed.
19035         (jm_AC_TYPE_INTMAX_T, jm_AC_TYPE_UINTMAX_T):
19036         Move AC_REQUIRE to next-to-top level, to avoid confusion.
19037         Use 2.52's AC_CHECK_TYPE instead of merely looking for the header.
19038         * m4/prereq.m4 (jm_PREREQ_HUMAN): Don't require jm_AC_HEADER_INTTYPES_H.
19039         * m4/jm-macros.m4 (jm_MACROS): Likewise.
19040
19041         * m4/uintmax_t.m4: Remove, as it duplicates inttypes.m4.
19042
19043         * m4/xstrtoimax.m4 (jm_AC_PREREQ_XSTRTOIMAX):
19044         Quote first arg of AC_DEFUN.
19045         Require jm_AC_TYPE_UINTMAX_T and jm_AC_TYPE_UNSIGNED_LONG_LONG
19046         since they are needed to parse the include file even if we need
19047         only xstrtoimax.  Simplify logic behind the args to AC_REPLACE.
19048         * m4/xstrtoumax.m4 (jm_AC_PREREQ_XSTRTOUMAX): Likewise,
19049         but with opposite signedness.
19050
19051 2001-08-30  Paul Eggert  <eggert@twinsun.com>
19052
19053         Merge 'exclude' changes from tar 1.13.22.
19054         This fixes one or two unlikely storage allocation overflow bugs,
19055         but doesn't change user-visible behavior otherwise.
19056
19057 2001-08-30  Paul Eggert  <eggert@twinsun.com>
19058
19059         * m4/prereq.m4 (jm_PREREQ): Add jm_PREREQ_EXCLUDE.
19060         (jm_PREREQ_EXCLUDE): New macro.
19061
19062 2001-08-30  Paul Eggert  <eggert@twinsun.com>
19063
19064         * lib/quotearg.c: BSD/OS 4.1 wchar.h requires FILE and struct
19065         tm to be declared.
19066
19067 2001-08-30  Paul Eggert  <eggert@twinsun.com>
19068
19069         * lib/hash.c: Remove '2001' from copyright notice.
19070
19071 2001-08-30  Paul Eggert  <eggert@twinsun.com>
19072
19073         * lib/full-write.h: New file.
19074         * lib/Makefile.am (libfetish_a_SOURCES): Add full-write.h.
19075         * lib/full-write.c: Correct credits, as cccp.c no longer
19076         exists and anyway it was so heavily changed from the old cccp
19077         code as to be unrecognizable.  Include full-write.h.
19078         (full_write) Return size_t, with short writes meaning failure.
19079         All callers changed.  This fixes a bug with large buffers
19080         on 64-bit hosts.
19081         * lib/utime.c: Include full-write.h.
19082
19083 2001-08-30  Paul Eggert  <eggert@twinsun.com>
19084
19085         * lib/exclude.c (bool): Declare, perhaps by including stdbool.h.
19086         (<sys/types.h>): Include only if HAVE_SYS_TYPES_H.
19087         (<stdlib.h>, <string.h>, <strings.h>, <inttypes.h>, <stdint.h>):
19088         Include if available.
19089         (<xalloc.h>): Include
19090         (SIZE_MAX): Define if <stdint.h> or <inttypes.h> doesn't.
19091         (verify): New macro.  Use it to verify that EXCLUDE macros do not
19092         collide with FNM macros.
19093         (struct patopts): New struct.
19094         (struct exclude): Use it, as exclude patterns now come with options.
19095         (new_exclude): Support above changes.
19096         (new_exclude, add_exclude_file):
19097         Initial size must now be a power of two to simplify overflow checking.
19098         (free_exclude, fnmatch_no_wildcards): New function.
19099         (excluded_filename): No longer requires options arg, as the options
19100         are determined by add_exclude.  Now returns bool, not int.
19101         (excluded_filename, add_exclude):
19102         Add support for the fancy new exclusion options.
19103         (add_exclude, add_exclude_file): Now takes int options arg.
19104         Check for arithmetic overflow when computing sizes.
19105         (add_exclude_file): xrealloc might modify errno, so don't
19106         realloc until after errno might be used.
19107
19108         * lib/exclude.h (EXCLUDE_ANCHORED, EXCLUDE_INCLUDE,EXCLUDE_WILDCARDS):
19109         New macros.
19110         (free_exclude): New decl.
19111         (add_exclude, add_exclude_file): Now takes int options arg.
19112         (excluded_filename): No longer requires options arg, as the options
19113         are determined by add_exclude.  Now returns bool, not int.
19114
19115 2001-08-30  Paul Eggert  <eggert@twinsun.com>
19116
19117         * lib/alloca.c (alloca): Arg is of type size_t, not unsigned.
19118
19119 2001-08-27  Jim Meyering  <meyering@lucent.com>
19120
19121         * lib/Makefile.am (libfetish_a_SOURCES): Add strtoxmax.c
19122
19123         * lib/version-etc.c (N_): Remove definition.
19124         Revert most of last change.
19125         Instead, simply don't mark the `Copyright...' string for translation.
19126         Based on advice from Paul Eggert.
19127
19128         * lib/strtoxmax.c: Tweak comment.
19129
19130 2001-08-26  Jim Meyering  <meyering@lucent.com>
19131
19132         * m4/jm-macros.m4: Require jm_AC_PREREQ_XSTRTOIMAX.
19133
19134         * m4/xstrtoimax.m4: New file.
19135         * m4/xstrtoumax.m4: Add comments explaining why we
19136         AC_REPLACE_FUNCS(strtol).
19137
19138 2001-08-26  Jim Meyering  <meyering@lucent.com>
19139
19140         * lib/version-etc.c (version_etc_copyright_fmt): Replace literal year
19141         of copyright with `%s' so translators don't get an untranslated
19142         message in 2002.
19143         (COPYRIGHT_YEAR): Define.
19144         (version_etc): Use fprintf rather than fputs.
19145         Suggestion from Ulrich Drepper.
19146
19147         * lib/Makefile.am (libfetish_a_SOURCES): Add xstrtoimax.c.
19148
19149         * lib/strtoll.c: New file, from GNU libc.
19150         * lib/xstrtoimax.c: New file.
19151
19152         * lib/xstrtol.h: Add xstrtoimax.
19153         * lib/strtoumax.c: New file.  Simply include "strtoumax.c".
19154         * lib/strtoimax.c: New file.  Likewise, but first define STRTOUXMAX_SIGNED.
19155
19156         * lib/strtoumax.c: Factor to work both for unsigned and signed types, ...
19157         * lib/strtoxmax.c: ... then renamed to this.
19158
19159 2001-08-18  Paul Eggert  <eggert@twinsun.com>
19160
19161         * m4/inttypes.m4: Add AC_PREREQ(2.13).
19162         (jm_AC_HEADER_INTTYPES_H): Test for intmax_t, too.
19163         (jm_AC_TYPE_INTMAX_T): New macro.
19164         (jm_AC_TYPE_UINTMAX_T): Moved here from uintmax_t.m4.
19165
19166         * m4/longlong.m4 (jm_AC_TYPE_LONG_LONG): New macro.
19167
19168         * m4/longlong.m4: Renamed from ulonglong.m4.
19169         * m4/inttypes.m4: Renamed from inttypes_h.m4.
19170         * m4/uintmax_t.m4: Removed.
19171
19172 2001-08-13  Paul Eggert  <eggert@twinsun.com>
19173
19174         * lib/Makefile.am (unlocked-io.h): Do not append "_unlocked" twice.
19175         Port to Solaris 8, where 'sed' requires a space after the 'r'
19176         command, and where sh dislikes "$/".  Clean up the spacing a bit.
19177         Redirect output to $tmp just once.
19178
19179 2001-08-12  Paul Eggert  <eggert@sic.twinsun.com>
19180
19181         * lib/addext.c (<errno.h>): Include.
19182         (errno): Declare if not defined.
19183         (addext): Work correctly when pathconf returns -1 and leaves
19184         errno alone because there is no limit.  Also, work even if
19185         pathconf returns a value greater than SIZE_MAX.
19186
19187 2001-08-12  Jim Meyering  <meyering@lucent.com>
19188
19189         * m4/afs.m4, assert.m4, bison.m4, check-decl.m4, chown.m4, d-ino.m4,
19190         d-type.m4, dos.m4, error.m4, fnmatch.m4, fpending.m4, fstypename.m4,
19191         fsusage.m4, ftruncate.m4, getgroups.m4, glibc.m4, gnu-source.m4,
19192         group-member.m4, jm-glibc-io.m4, jm-macros.m4, jm-mktime.m4,
19193         jm-winsz1.m4, jm-winsz2.m4, lchown.m4, lib-check.m4, libintl.m4,
19194         link-follow.m4, ls-mntd-fs.m4, lstat.m4, malloc.m4, mbrtowc.m4,
19195         mbstate_t.m4, mbswidth.m4, memcmp.m4, nanosleep.m4, perl.m4,
19196         prereq.m4, putenv.m4, readdir.m4, realloc.m4, regex.m4, rename.m4,
19197         rmdir-errno.m4, search-libs.m4, st_dm_mode.m4, st_mtim.m4, stat.m4,
19198         strftime.m4, timespec.m4, unlink-busy.m4, uptime.m4, utimbuf.m4,
19199         utime.m4, utimes.m4, xstrtoumax.m4:
19200         Quote the first argument in each use of AC_DEFUN.
19201
19202 2001-08-12  Jim Meyering  <meyering@lucent.com>
19203
19204         * lib/xgetcwd.c (xgetcwd) [defined __GLIBC__ && __GLIBC__ >= 2]:
19205         Simply `return getcwd (NULL, 0);'.
19206         [! (defined __GLIBC__ && __GLIBC__ >= 2)]:
19207         Use 1300 as initial value for length, not PATH_MAX.
19208
19209         * lib/pathmax.h: Clean up cpp syntax.
19210
19211 2001-08-12  Jim Meyering  <meyering@lucent.com>
19212
19213         * lib/gettimeofday.c: New file.
19214         * lib/gtod.h: New file.
19215         * lib/Makefile.am (libfetish_a_SOURCES): Add gtod.h.
19216
19217 2001-08-05  Jim Meyering  <meyering@lucent.com>
19218
19219         * m4/jm-macros.m4: Require autoconf-2.52.
19220
19221 2001-08-04  Jim Meyering  <meyering@lucent.com>
19222
19223         * lib/error.h (__attribute__): Remove `|| __STRICT_ANSI__' from #if stmt,
19224         to get in sync with glibc.
19225
19226 2001-08-03  Paul Eggert  <eggert@twinsun.com>
19227
19228         The following changes are from gettext 0.10.39 as maintained by
19229         Bruno Haible.
19230
19231         * lib/mbswidth.h (MBSW_REJECT_UNPRINTABLE, MBSW_REJECT_INVALID):
19232         Renamed from MBSW_ACCEPT_UNPRINTABLE and MBSW_ACCEPT_INVALID
19233         with inverted sense.  All uses changed.
19234
19235         * lib/mbswidth.c: Don't include <limits.h>.
19236         Include <stdlib.h> and <string.h> unconditionally.
19237         (iswcntrl, mbsinit, ISCNTRL): New macros.
19238         (mbsnwidth): Use K&R style function declarations.
19239         Don't bother checking for MB_LEN_MAX == 1, since the compiler
19240         can optimize it when MB_CUR_MAX == 1.
19241         The width of control characters is zero, not 1.
19242
19243 2001-08-03  Paul Eggert  <eggert@twinsun.com>
19244
19245         The following changes are from gettext 0.10.39 as maintained by
19246         Bruno Haible, except that getline.m4 continues to use AC_LIBOBJ.
19247
19248         * m4/codeset.m4: Upgrade to serial AM1.
19249         (AM_LANGINFO_CODESET): Renamed from jm_LANGINFO_CODESET;
19250         all uses changed.  Quote first arg of AC_DEFUN.
19251         (am_cv_langinfo_codeset): Renamed from jm_cv_langinfo_codeset.
19252
19253         * m4/iconv.m4: Upgrade to serial AM2.
19254         (AM_ICONV): Renamed from jm_ICONV; all uses changed.
19255         Add --with-libconv-prefix.
19256         Quote first arg of AC_DEFUN.  Add description for ICONV_CONST.
19257         (am_cv_func_iconv): Renamed from jm_cv_func_iconv.
19258         (am_cv_lib_iconv): Renamed from jm_cv_lib_iconv.
19259         (am_cv_proto_iconv): Renamed from jm_cv_proto_iconv.
19260         * m4/jm-macros.m4 (jm_MACROS): Reflect s/jm_/AM_/ renamings.
19261
19262         * m4/c-bs-a.m4 (AC_C_BACKSLASH_A): Quote first arg of AC_DEFUN.
19263         * m4/getline.m4 (AM_FUNC_GETLINE): Likewise.
19264         * m4/glibc21.m4 (jm_GLIBC21): Likewise.
19265         * m4/inttypes_h.m4 (jm_AC_HEADER_INTTYPES_H): Likewise.
19266         * m4/isc-posix.m4 (AC_ISC_POSIX): Likewise.
19267         * m4/lcmessage.m4 (AM_LC_MESSAGES): Likewise.
19268         * m4/progtest.m4 (AM_PATH_PROG_WITH_TEST): Likewise.
19269         * m4/uintmax_t.m4 (jm_AC_TYPE_UINTMAX_T): Likewise.
19270         * m4/ulonglong.m4 (jm_AC_TYPE_UNSIGNED_LONG_LONG): Likewise.
19271
19272         * m4/getline.m4 (AM_FUNC_GETLINE): Don't bother checking for
19273         string.h any more.
19274
19275         * m4/progtest.m4 (AM_PATH_PROG_WITH_TEST): If not found, print "no",
19276         not the default value.
19277
19278         2001-06-25  Bruno Haible  <haible@clisp.cons.org>
19279         * m4/mbswidth.m4 (jm_PREREQ_MBSWIDTH): Don't require AM_C_PROTOTYPES.
19280         Also check for mbsinit.  Needed for SCO 3.2v5.0.2.
19281         Also include <string.h>; this is where AIX 3.2.5 declares wcwidth.
19282         Also check for iswcntrl, used for wcwidth fallback.
19283         Use AC_TRY_COMPILE to emulate AC_CHECK_DECLS, for portability
19284         to Autoconf 2.13.
19285
19286 2001-08-03  Jim Meyering  <meyering@lucent.com>
19287
19288         * m4/mbrtowc.m4 (jm_FUNC_MBRTOWC): Use `#include', not `@%:@include',
19289         as it was in the original.  Reported by Paul Eggert.
19290
19291 2001-07-16  Jim Meyering  <meyering@lucent.com>
19292
19293         * m4/gettimeofday.m4: New file.
19294         Prompted by a report from Bernhard Baehr.
19295
19296 2001-07-15  Jim Meyering  <meyering@lucent.com>
19297
19298         * m4/Makefile.am.in (Makefile.am): Remove most of the unlocked-io.h stuff.
19299         Now it's in ../Makefile.cfg.
19300
19301 2001-07-15  Jim Meyering  <meyering@lucent.com>
19302
19303         * lib/Makefile.am (EXTRA_DIST): Add unlocked-io.hin.
19304         (BUILT_SOURCES): Add unlocked-io.h.
19305         (io_functions): Define.
19306         (unlocked-io.h): New rule.
19307         (DISTCLEANFILES): Add unlocked-io.h.
19308         (all-local): Depend on unlocked-io.h, to ensure it is created.
19309
19310         * lib/unlocked-io.hin: New file
19311
19312         * lib/regex.c: Update from glibc.
19313
19314 2001-07-05  Jim Meyering  <meyering@lucent.com>
19315
19316         * lib/Makefile.am (noinst_HEADERS): Remove definition, per new automake
19317         recommendation.
19318         (libfetish_a_SOURCES): Put all .h files here instead.
19319         Remove a thus-exposed (better checks in automake) duplicate and
19320         two unnecessary .h files.
19321
19322 2001-07-04  Jim Meyering  <meyering@lucent.com>
19323
19324         * m4/Makefile.am.in (glibc-io.struct): New target.  Rework the code
19325         that generates jm-glibc-io.m4 so that it doesn't trigger any make
19326         distcheck failure.
19327
19328 2001-07-02  Jim Meyering  <meyering@lucent.com>
19329
19330         The following changes were prompted by suggestions from Bruno Haible.
19331
19332         * m4/jm-glibc-io.m4n: New file, the template from which jm-glibc-io.m4
19333         is now generated.
19334         * m4/Makefile.am.in (Makefile.am): Include jm-glibc-io.m4n in emitted
19335         definition of EXTRA_DIST.
19336         (Makefile.am): Emit the dependency, `all-local: jm-glibc-io.m4' to
19337         ensure that the generated file is created/updated whenever the list
19338         of $(unlocked_functions) is changed.
19339         (jm-glibc-io.m4): New rule.
19340         (unlocked-io.h): New rule -- currently unused.
19341
19342 2001-06-24  Jim Meyering  <meyering@lucent.com>
19343
19344         * m4/regex.m4 (jm_INCLUDED_REGEX): Use a quadrigraph to represent an
19345         unmatched right bracket, rather than kludging it with an extra,
19346         falsely-matching quote in a comment.  Patch by Akim Demaille.
19347
19348 2001-06-11  Jim Meyering  <meyering@lucent.com>
19349
19350         * lib/regex.c: Update from GNU libc.
19351
19352 2001-05-27  Jim Meyering  <meyering@lucent.com>
19353
19354         * m4/prereq.m4 (jm_PREREQ_READUTMP): Check for ut_type in struct utmpx.
19355         Check for ut_type in struct utmp.
19356
19357 2001-05-27  Jim Meyering  <meyering@lucent.com>
19358
19359         * lib/readutmp.h (UT_TYPE): Define.
19360
19361 2001-05-24  Jim Meyering  <meyering@lucent.com>
19362
19363         * lib/argmatch.c: Include "quote.h".
19364         (argmatch_invalid): Remove explicit `' quotes.  Instead, use the
19365         quote function.  Reported by Göran Uddeborg.
19366
19367 2001-05-22  Jim Meyering  <meyering@lucent.com>
19368
19369         * m4/strftime.m4 (_jm_STRFTIME_PREREQS): Don't use AC_LIBOBJ(strftime),
19370         now that we use the package-supplied version unconditionally.
19371         (jm_FUNC_STRFTIME): Don't replace strftime, for the same reason.
19372
19373 2001-05-21  Jim Meyering  <meyering@lucent.com>
19374
19375         * m4/regex.m4: Change a couple backticks to single quotes to avoid shell
19376         syntax errors.
19377
19378 2001-05-21  Alexandre Duret-Lutz  <duret_g@epita.fr>
19379
19380         * m4/dos.m4 (jm_AC_DOS): Check for _WIN32, __WIN32__, and __MSDOS__.
19381
19382 2001-05-20  Paul Eggert  <eggert@twinsun.com>
19383
19384         * m4/strftime.m4 (jm_FUNC_GNU_STRFTIME):
19385         Don't bother to check library strftime, since
19386         we'll be using our own my_strftime function anyway.
19387         Define my_strftime instead of strftime.
19388
19389 2001-05-20  Alexandre Duret-Lutz  <duret_g@epita.fr>
19390
19391         * lib/dirname.c (dir_name): Compute append_dot using path, not newpath
19392         which is not yet declared.
19393
19394 2001-05-15  Jim Meyering  <meyering@lucent.com>
19395
19396         * m4/regex.m4: Use proper quoting so brackets appear in the test program.
19397         Reported by, and with help from, Bruno Haible.
19398
19399 2001-05-13  Jim Meyering  <meyering@lucent.com>
19400
19401         * m4/jm-macros.m4 (major_t, minor_t): Define to unsigned int if undefined.
19402
19403 2001-05-11  Paul Eggert  <eggert@twinsun.com>
19404
19405         dirname code cleanup.  base_name now behaves more compatibly
19406         with POSIX basename when given file names that have trailing
19407         slashes, and similarly for dir_name.  Add new primitives
19408         base_len and dir_len.  Put the directory-name-related decls
19409         into dirname.h.
19410
19411         * lib/addext.c (ISSLASH, base_name): Remove; now in dirname.h.
19412         * lib/backupfile.c (base_name): Likewise.
19413         * lib/basename.c (FILESYSTEM_PREFIX_LEN, PARAMS, ISSLASH): Likewise.
19414         * lib/dirname.c (FILESYSTEM_PREFIX_LEN, ISSLASH): Likewise.
19415         * lib/makepath.c (strip_trailing_slashes): Likewise.
19416         * lib/path-concat.c (DIRECTORY_SEPARATOR, FILESYSTEM_PREFIX_LEN, ISSLASH):
19417         Likewise.
19418         * lib/rename.c (strip_trailing_slashes): Likewise.
19419         * lib/same.c (base_name): Likewise.
19420         * lib/stripslash.c (ISSLASH): Likewise.
19421
19422         * lib/addext.c: Include <dirname.h> after size_t is defined.
19423         * lib/backupfile.c: Likewise.
19424
19425         * lib/addext.c (addext): Use base_len to trim redundant
19426         trailing slashes instead of doing it ourselves.
19427         But do not trim the last slash if it is not redundant.
19428
19429         * lib/backupfile.c (find_backup_file_name,
19430         max_backup_version): Use base_len instead of rolling it ourselves.
19431         Handle the case of "" and (on DOS) "C:" correctly.
19432
19433         * lib/basename.c: Do not include <stdio.h>, <assert.h>; no longer needed.
19434         Include <string.h>, <dirname.h>.
19435         (base_name): Allow file names ending in slashes, other than names
19436         that are all slashes.  In this case, return the basename followed
19437         by the slashes.  This is more general, and can be used in places
19438         where the original base_name purposely had an assertion failure.
19439         (base_len): New function.
19440
19441         * lib/dirname.c: Include <string.h> instead of <stdlib.h>.
19442         Do not include <assert.h>; no longer needed.
19443         Include xalloc.h.
19444         (memrchr): Remove decl.
19445         (dir_name_r): Remove.
19446         (dir_len): Renamed from dirlen.  All callers changed.
19447         Rewrite in terms of base_name, for simplicity and consistency.
19448         (dir_name): Never return NULL.  All callers changed.
19449         Do not include <stdlib.h> in test program; no longer needed.
19450         return 0; is fine for test program.
19451
19452         * lib/dirname.h (DIRECTORY_SEPARATOR, ISSLASH, FILESYSTEM_PREFIX_LEN):
19453         New macros.
19454         (base_name, base_len, dir_len, strip_trailing_slashes): New decls.
19455
19456         * lib/path-concat.c (path_concat): Use base_len to compute
19457         base length, not strlen; this means we cannot rely on memcpy
19458         to null-terminate.
19459
19460         * lib/same.c (STREQ): Remove.
19461         (same_name): Handle the case where the basename ends in trailing '/'.
19462
19463         * lib/stripslash.c (strip_trailing_slashes): Return nonzero if
19464         a slash was stripped.  Do not strip the last slash after a
19465         file system prefix.
19466
19467 2001-05-11  Paul Eggert  <eggert@twinsun.com>
19468
19469         * lib/Makefile.am (libfetish_a_SOURCES):
19470         Add strftime.c, since we now compile it on all hosts.
19471
19472         * lib/strftime.c (my_strftime):
19473         Define to nstrftime if emacs, but only if my_strftime is not defined.
19474         (extra_args, extra_args_spec, extra_args_spec_iso): Rename from
19475         ut_argument, ut_argument_spec, ut_argument_spec_iso, respectively.
19476         Add one more extra argument: a nanoseconds value.
19477         All uses changed.
19478         (ns): New macro.
19479         (my_strftime function): Add %N format.
19480         (emacs_strftimeu): Renamed from emacs_strftime,
19481         with extra ut argument.
19482
19483 2001-05-09  Paul Eggert  <eggert@twinsun.com>
19484
19485         * m4/jm-macros.m4 (jm_MACROS): Do not check for fseeko; no longer used.
19486
19487 2001-04-21  Jim Meyering  <meyering@lucent.com>
19488
19489         * m4/rmdir-errno.m4: Write to a new file, so that a restrictive umask
19490         doesn't interfere.
19491
19492 2001-04-21  Alexandre Duret-Lutz  <duret_g@epita.fr>
19493
19494         * m4/ftruncate.m4: Check for chsize.
19495         Link with ftruncate.o unconditionally if ftruncate is missing.
19496         This was required when cross-compiling to i586-mingw32msvc.
19497
19498 2001-04-08  Jim Meyering  <meyering@lucent.com>
19499
19500         * lib/getdate.y (get_date): Set tm_isdst to -1 to ensure that it is
19501         recomputed; that's necessary when the offset spans a DST transition.
19502         Patch by David J. MacKenzie.  Reported by Hon-Yin Kok.
19503
19504 2001-04-02  Jim Meyering  <meyering@lucent.com>
19505
19506         * lib/regex.h, regex.c: Update from GNU libc.
19507
19508 2001-03-24  Jim Meyering  <meyering@lucent.com>
19509
19510         * m4/jm-macros.m4: Require autoconf-2.49d.
19511
19512 2001-03-20  Bruno Haible  <haible@clisp.cons.org>
19513
19514         * m4/iconv.m4 (jm_ICONV): Recommend GNU libiconv.
19515
19516 2001-03-19  Paul Eggert  <eggert@twinsun.com>
19517
19518         * lib/version-etc.c (version_etc_copyright): Update to 2001.
19519
19520 2001-03-17  Jim Meyering  <meyering@lucent.com>
19521
19522         * m4/memcmp.m4 (jm_AC_FUNC_MEMCMP): Remove my copy of AC_FUNC_MEMCMP,
19523         now that the version in autoconf is equivalent.
19524         (jm_FUNC_MEMCMP): Adjust to use AC_FUNC_MEMCMP.
19525
19526         * m4/error.m4 (jm_PREREQ_ERROR): Invoke AC_FUNC_STRERROR_R.
19527         Suggestion from Akim Demaille.
19528
19529         * m4/prereq.m4 (jm_PREREQ): Add jm_PREREQ_TEMPNAME.
19530         (jm_PREREQ_TEMPNAME): New function.
19531
19532 2001-03-16  Paul Eggert  <eggert@twinsun.com>
19533
19534         * lib/tempname.c (uint64_t): Define to uintmax_t if
19535         not defined, and if UINT64_MAX is not defined.
19536         Required at least for Vax Ultrix4.3, which doesn't define uint64_t.
19537         Reported by John David Anglin.
19538
19539 2001-03-15  Bruno Haible  <haible@clisp.cons.org>
19540
19541         * lib/localcharset.c (locale_charset): Allow wildcard syntax. Also resolve
19542         alias if codeset is empty.
19543         * lib/config.charset (BeOS): Use wildcard syntax.
19544
19545 2001-03-13  Jim Meyering  <meyering@lucent.com>
19546
19547         * lib/path-concat.c (path_concat) [FILESYSTEM_ACCEPTS_DRIVE_LETTER_PREFIX]:
19548         Don't insert a backslash when concatenating e.g., `C:' and `foo'.
19549         From Bruno Haible.
19550
19551 2001-03-06  Bruno Haible  <haible@clisp.cons.org>
19552
19553         * lib/localcharset.c (locale_charset): Don't use setlocale(LC_CTYPE,NULL).
19554         Don't return NULL.
19555         * lib/unicodeio.c (print_unicode_char): Simplify accordingly.
19556
19557 2001-03-06  Bruno Haible  <haible@clisp.cons.org>
19558
19559         * lib/config.charset: Update for FreeBSD 4.2 and OSF/1 5.1. Add
19560         support for DOS/DJGPP.
19561
19562 2001-03-01  Paul Eggert  <eggert@twinsun.com>
19563
19564         * m4/jm-macros.m4 (jm_MACROS): Use mkstemp replacement if the system
19565         lacks mkstemp.  Compile our own tempname.c if we compile our own
19566         mkstemp.c, as mkstemp relies on tempname.
19567
19568 2001-03-01  Jim Meyering  <meyering@lucent.com>
19569
19570         * m4/dos.m4 (jm_AC_DOS): Remove extra backslashes, now that
19571         AH_VERBATIM really does output its argument verbatim.
19572
19573 2001-02-28  Paul Eggert  <eggert@twinsun.com>
19574
19575         * lib/Makefile.am (libfetish_a_SOURCES):
19576         Add dup-safer.c, fopen-safer.c.
19577         (noinst_HEADERS): Add stdio-safer.h, unistd-safer.h.
19578
19579         * lib/dup-safer.c, fopen-safer.c, stdio-safer.h, unistd-safer.h: New files.
19580
19581 2001-02-25  Paul Eggert  <eggert@twinsun.com>
19582
19583         The mkstemp replacement is taken from glibc 2.2.2, with some
19584         portability fixes for use outside glibc, as follows:
19585
19586         * lib/tempname.c (struct_stat64): New macro.
19587         (direxists, __gen_tempname): Use it.
19588         This avoids a portability problem with Solaris 8.
19589
19590         * lib/tempname.c (<config.h>): Include if HAVE_CONFIG_H.
19591         (<stddef.h>, <stdint.h>, <string.h>):
19592         Include only if STDC_HEADERS || _LIBC.
19593         (<fcntl.h>): Include only if HAVE_FCNTL_H || _LIBC.
19594         (<unistd.h>): Include only if HAVE_UNISTD_H || _LIBC.
19595         (<sys/time.h>): Include only if HAVE_SYS_TIME_H || _LIBC.
19596         (__set_errno): Define this macro if <errno.h> doesn't.
19597         (P_tmpdir, TMP_MAX, __GT_FILE, __GT_BIGFILE, __GT_DIR, __GT_NOCREATE):
19598         Define these macros if <stdio.h> doesn't.
19599         (S_ISDIR, S_IRUSR, S_IWUSR, S_IXUSR):
19600         Define these macros if <sys/stat.h>
19601         doesn't.  Ignore <sys/stat.h> S_ISDIR if STAT_MACROS_BROKEN.
19602         (stat64, __getpid, __gettimeofday, __mkdir, __open, __open64, lxstat64,
19603         __xstat64): Define if not _LIBC.
19604         (__secure_getenv): Define if ! (HAVE___SECURE_GETENV || _LIBC).
19605         (__gen_tempname): Invoke gettimeofday only if
19606         HAVE_GETTIMEOFDAY || _LIBC;
19607         otherwise, fall back on plain "time".
19608         Use macros like S_IRUSR | S_IWUSR rather than octal values like 0600.
19609
19610         * lib/mkstemp.c (__GT_FILE): Define to zero if not defined.
19611
19612         * lib/mkstemp.c, tempname.c: New files, taken from glibc 2.2.2.
19613
19614 2001-02-18  Paul Eggert  <eggert@twinsun.com>
19615
19616         * m4/jm-macros.m4 (jm_CHECK_ALL_HEADERS): Check for sys/resource.h.
19617
19618 2001-02-17  Paul Eggert  <eggert@twinsun.com>
19619
19620         * m4/mbrtowc.m4: New file, defining jm_FUNC_MBRTOWC.
19621         * m4/mbswidth.m4 (jm_PREREQ_MBSWIDTH):
19622         Use jm_FUNC_MBRTOWC, not AC_CHECK_FUNCS(mbrtowc).
19623         * m4/prereq.m4 (jm_PREREQ_QUOTEARG): Likewise.
19624
19625 2001-02-17  Paul Eggert  <eggert@twinsun.com>
19626
19627         * lib/mbswidth.c, quotearg.c (mbrtowc, mbsinit):
19628         Remove workaround macros for hosts that have mbrtowc but not
19629         mbstate_t, as we now insist on proper declarations for both
19630         before using mbrtowc.
19631
19632 2001-02-17  Jim Meyering  <meyering@lucent.com>
19633
19634         * m4/ls-mntd-fs.m4 (jm_LIST_MOUNTED_FILESYSTEMS): Don't check for
19635         getmntent via AC_CHECK_FUNCS, since that would get a `no' and disrupt
19636         further attempts by AC_FUNC_GETMNTENT to check with e.g., -lgen on
19637         UnixWare 7.1.1.
19638
19639         * m4/mbrtowc.m4 (jm_FUNC_MBRTOWC): Adapt to use AC_CACHE_CHECK etc.,
19640         rather than AC_CACHE_VAL.
19641
19642 2001-02-17  Jim Meyering  <meyering@lucent.com>
19643
19644         * lib/strtoul.c: Sync from GNU libc.  Use double quotes, not <...>
19645         around included file name.
19646
19647         * lib/strnlen.c (__strnlen): Merge in a change from GNU libc.
19648
19649         * lib/strftime.c: Update from GNU libc (the only changes were to comments).
19650
19651 2001-02-17  Jim Meyering  <meyering@lucent.com>
19652
19653         * lib/regex.c: Update from libc.
19654
19655 2001-02-17  Bruno Haible  <haible@clisp.cons.org>
19656
19657         * lib/mbswidth.h (mbswidth): Also define as macro, to avoid prototype clash.
19658
19659 2001-02-16  Paul Eggert  <eggert@twinsun.com>
19660
19661         * lib/alloca.c (malloc): Undef before defining, since stdlib.h
19662         may have defined it.  Needed for Encore Umax-3.0.9.16b systems.
19663         Reported by Mark Hounschell via Paul Eggert.
19664
19665 2001-02-07  Jim Meyering  <meyering@lucent.com>
19666
19667         * m4/regex.m4 (jm_INCLUDED_REGEX): Add a test for the latest bug.
19668
19669 2001-02-05  Jim Meyering  <meyering@lucent.com>
19670
19671         * m4/jm-macros.m4: Require autoconf-2.14d (not yet released), because
19672         it includes the patch required for `large file' support with at least
19673         HP-UX's 10.20 /bin/cc.
19674
19675 2001-02-03  Jim Meyering  <meyering@lucent.com>
19676
19677         * m4/ls-mntd-fs.m4 (jm_LIST_MOUNTED_FILESYSTEMS): Restore prior use of
19678         AS_IF, now that it works once again (mysteriously).
19679         * m4/fsusage.m4 (jm_FILE_SYSTEM_USAGE): Likewise.
19680
19681 2001-01-30  Jim Meyering  <meyering@lucent.com>
19682
19683         Don't use filenames that are 8.3-equivalent to "conftest" on DOS.
19684         * m4/chown.m4: Rename conftestchown to conftest.chown.
19685         * m4/rename.m4: s/conftestdir/conftest.d1/ and s/conftestdir2/conftest.d2/.
19686         * m4/utimes.m4: s/conftestdata/conftest.data/
19687         Inspired by Pavel Roskin's change in autoconf.
19688
19689 2001-01-30  Bruno Haible  <haible@clisp.cons.org>
19690
19691         * lib/config.charset: Update for FreeBSD 4.2.
19692
19693 2001-01-27  Jim Meyering  <meyering@lucent.com>
19694
19695         * m4/ls-mntd-fs.m4 (jm_LIST_MOUNTED_FILESYSTEMS): Open-code what was
19696         a use of AS_IF.
19697         * m4/fsusage.m4 (jm_FILE_SYSTEM_USAGE): Likewise.
19698
19699 2001-01-26  Jim Meyering  <meyering@lucent.com>
19700
19701         * m4/prereq.m4 (jm_PREREQ_QUOTEARG): Check for stddef.h, now that
19702         quotearg.c includes it.
19703
19704 2001-01-26  Jim Meyering  <meyering@lucent.com>
19705
19706         * lib/quotearg.c: Include stddef.h.
19707         * lib/quote.c: Include stddef.h.
19708         Reported by Axel Kittenberger.
19709
19710         * lib/xmalloc.c [HAVE_DONE_WORKING_MALLOC_CHECK]: Enclose error-evoking
19711         line in double quotes so that it evokes a better diagnostic.
19712         [HAVE_DONE_WORKING_REALLOC_CHECK]: Likewise.
19713         Reported by Axel Kittenberger.
19714
19715 2001-01-24  Stefan Monnier  <monnier@cs.yale.edu>
19716
19717         * regex.c (mutually_exclusive_p): Don't blindly handle `charset_not'
19718         as if it was a `charset'.
19719
19720 2001-01-21  Bruno Haible  <haible@clisp.cons.org>
19721
19722         * m4/iconv.m4 (jm_ICONV): Also check whether the iconv declaration
19723         has const.
19724
19725 2001-01-21  Bruno Haible  <haible@clisp.cons.org>
19726
19727         * lib/unicodeio.c (print_unicode_char): Cast the second iconv() arg,
19728         to avoid a warning.  Add back 'const' to inptr.
19729
19730 2001-01-20  Jim Meyering  <meyering@lucent.com>
19731
19732         Be sure that headers are checked before used in code compiled
19733         for the type checks.
19734         * m4/jm-macros.m4 (jm_MACROS): Remove all header checks.
19735         In place of that, invoke jm_CHECK_ALL_TYPES.
19736         (jm_CHECK_ALL_HEADERS): New functions with the above checks.
19737         (jm_CHECK_ALL_TYPES): Require jm_CHECK_ALL_HEADERS.
19738         Alan Iwi reported a build failure on an f300-fujitsu-uxpv4.1_ES;
19739         The check for ssize_t was mistakenly run before the test for unistd.h.
19740
19741         The configure-time check for stdbool.h was missing.
19742         * m4/prereq.m4 (jm_PREREQ): Add jm_PREREQ_HASH.
19743         (jm_PREREQ_HASH): New function.
19744
19745 2001-01-17  Jim Meyering  <meyering@lucent.com>
19746
19747         * m4/fsusage.m4 (jm_FILE_SYSTEM_USAGE): Use AS_IF, not AS_IFELSE,
19748         for autoconf-2.49c.
19749         * m4/ls-mntd-fs.m4 (jm_LIST_MOUNTED_FILESYSTEMS): Likewise.
19750
19751 2001-01-16  Jim Meyering  <meyering@lucent.com>
19752
19753         * lib/basename.c: Include <stdio.h>, needed by assert on SunOS 4.
19754         From Bruno Haible.
19755
19756 2001-01-14  Jim Meyering  <meyering@lucent.com>
19757
19758         * m4/rename.m4: Use temporary directories named conftestdir{,2}, not
19759         foo and bar.  Create conftestdir/ in the script, not in the C code.
19760         Remove directories in the script, not in the C code.
19761         Remove conftestdir{,2} before trying to create the directory.
19762         Make the entire configure script fail if the mkdir fails.
19763
19764 2001-01-14  Jim Meyering  <meyering@lucent.com>
19765
19766         * lib/rename.c: New file.  From Volker Borchert.
19767         Include stdlib.h, string.h or strings.h, and xalloc.h.
19768         Use strip_trailing_slashes rather than open-coding it.
19769
19770 2001-01-03  Paul Eggert  <eggert@twinsun.com>
19771
19772         * lib/strftime.c: Sync with glibc time/strftime.c 1.81.
19773
19774 2001-01-03  Jim Meyering  <meyering@lucent.com>
19775
19776         * lib/unicodeio.c (print_unicode_char): Remove `const' from declaration of
19777         local `inptr' to avoid warning with some system declarations of iconv.
19778
19779 2001-01-02  Volker Borchert  <bt@teknon.de>
19780
19781         * m4/rename.m4: New file.
19782         * m4/jm-macros.m4 (jm_MACROS): Require vb_FUNC_RENAME.
19783
19784 2001-01-01  Jim Meyering  <meyering@lucent.com>
19785
19786         * m4/prereq.m4 (jm_PREREQ_READUTMP): Include utmp.h (if available), even
19787         on systems with utmpx.h.  It's necessary for the declaration of utmp's
19788         ut_user member.  Reported by Andreas Jaeger.
19789
19790         * m4/check-decl.m4 (jm_CHECK_DECLS): Include grp.h and pwd.h if available.
19791         They are required for the declarations of getgrgid and getpwuid resp.
19792         (_jm_DECL_HEADERS): Check for grp.h and pwd.h.
19793         Reported by Andreas Jaeger.
19794
19795 2001-01-01  Alexandre Duret-Lutz  <duret_g@epita.fr>
19796
19797         * m4/libintl.m4 (AM_GNU_GETTEXT): Define MKINSTALLDIRS by
19798         expanding the value of $ac_aux_dir, as in AM_MISSING_HAS_RUN,
19799         so `make install' also works in VPATH builds.
19800
19801 2000-12-31  Alexandre Duret-Lutz  <duret_g@epita.fr>
19802
19803         * m4/libintl.m4 (AM_WITH_NLS): When using AC_CONFIG_AUX_DIR,
19804         prepend $(top_srcdir) to the value of MKINSTALLDIRS so that it
19805         can be used in subdirectories.
19806
19807 2000-12-29  Paul Eggert  <eggert@twinsun.com>
19808
19809         * lib/modechange.c: Do not assume that mode_t uses the
19810         traditional octal encoding.  E.g. "chmod 1 FOO" should set
19811         the other-execute bit of FOO even if S_IXOTH != 1.
19812
19813         (SUID, SGID, SVTX, RUSR, WUSR, XUSR, RGRP, WGRP, XGRP, ROTH,
19814         WOTH, XOTH, ALLM): New macros.
19815         (S_ISUID, S_ISGID, S_ISVTX, S_IRUSR, S_IWUSR, S_IXUSR,
19816          S_IRGRP, S_IWGRP, S_IXGRP, S_IROTH, S_IWOTH, S_IXOTH):
19817         Use them.
19818         (S_ISGID): Fix typo; it was defaulting to the same value as S_ISUID.
19819         (S_IRWXU, S_IRWXG, S_IRWXO): Specify defaults in terms of the above.
19820         (mode_compile):
19821         No need to use uintmax_t; unsigned long is long enough.
19822         Don't bother to get suffix since we don't use it.
19823
19824 2000-12-26  Jim Meyering  <meyering@lucent.com>
19825
19826         * m4/dos.m4 (jm_AC_DOS): Rewrite (though it's still a stub) to work better
19827         with autoheader.
19828
19829 2000-12-24  Jim Meyering  <meyering@lucent.com>
19830
19831         * lib/hash.c (is_prime): Return explicit boolean values.
19832         (hash_get_first): Return NULL to appease Irix5.6's 89.
19833         Reported by Nelson Beebe.
19834
19835 2000-12-19  Bruno Haible  <haible@clisp.cons.org>
19836
19837         * lib/localcharset.c (locale_charset): Add support for Win32.
19838
19839 2000-12-18  Paul Eggert  <eggert@twinsun.com>
19840
19841         * lib/physmem.h, physmem.c: New files.
19842
19843         * lib/Makefile.am (libfetish_a_SOURCES): Add physmem.c.
19844         (noinst_HEADERS): Add physmem.h.
19845
19846         * lib/xstrtol.c (__xstrtol): Add undocumented suffixes 'g' and
19847         't' for compatibility with Solaris 8 sort.
19848
19849 2000-12-18  Bruno Haible  <haible@clisp.cons.org>
19850
19851         * lib/config.charset: Add support for BeOS.
19852
19853 2000-12-17  Jim Meyering  <meyering@lucent.com>
19854
19855         * m4/dos.m4 (jm_AC_DOS): New file and macro.
19856         * m4/jm-macros.m4 (jm_MACROS): Require jm_AC_DOS.
19857
19858 2000-12-16  Jim Meyering  <meyering@lucent.com>
19859
19860         This bug had a serious impact on chown: `chown N:M FILE' (for integer
19861         N and M) would have treated it like `chown N:N FILE'.
19862
19863         * lib/userspec.c (parse_user_spec): Fix typo: s/u/g/.
19864
19865 2000-12-16  Jim Meyering  <meyering@lucent.com>
19866
19867         * lib/getusershell.c [!SHELLS_FILE && __DJGPP__]: Define
19868         SHELLS_FILE to a file name that's useful on djgpp systems.
19869         Include stdlib.h.
19870         (ADDITIONAL_DEFAULT_SHELLS): Define.
19871         (default_shells): Prepend ADDITIONAL_DEFAULT_SHELLS.
19872         Based mostly on a patch from Prashant TR.
19873
19874 2000-12-16  Bruno Haible  <haible@clisp.cons.org>
19875
19876         * lib/config.charset: Add ISO-8859-3, BIG5HKSCS, GB18030, JOHAB, VISCII,
19877         CP874, CP949, CP950, CP1250, CP1253, CP1254, CP1255, CP1256, CP1257
19878         to the list of canonical encodings. Rename EUC-CN to GB2312.
19879
19880 2000-12-08  Andreas Schwab  <schwab@suse.de>
19881
19882         * lib/mbswidth.c (mbsnwidth): Don't loop endlessly when called with an
19883         invalid mulitbyte sequence and with the MBSW_ACCEPT_INVALID flag set.
19884
19885 2000-12-07  Jim Meyering  <meyering@lucent.com>
19886
19887         * lib/stripslash.c (ISSLASH): Define.
19888         (strip_trailing_slashes): Use ISSLASH rather than comparing against `/'.
19889         From Prashant TR.
19890
19891         * lib/dirname.c (FILESYSTEM_PREFIX_LEN): Define.
19892         (dir_name_r): Declare this function as static.
19893         [BACKSLASH_IS_PATH_SEPARATOR]: Fix a bug that'd
19894         manifest itself on a name containing a mix of slashes and
19895         backslashes.
19896         Make this function work with names starting with a DOS-style
19897         drive letter and colon prefix.
19898         (dir_name): Append `.' if necessary.
19899         Based mostly on patches from Prashant TR and Eli Zaretskii.
19900
19901         * lib/dirname.h (dir_name_r): Remove prototype.
19902
19903 2000-12-06  Paul Eggert  <eggert@twinsun.com>
19904
19905         * m4/off_t-format.m4: Remove this file.
19906         * m4/jm-macros.m4 (jm_MACROS): Remove jm_SYS_OFF_T_PRINTF_FORMAT.
19907
19908 2000-12-06  Jim Meyering  <meyering@lucent.com>
19909
19910         * m4/xstrtoumax.m4 (jm_AC_PREREQ_XSTRTOUMAX): If we need the replacement
19911         strtoull, we may well need the replacement strtoul, too.
19912         Check for declarations of strtoul and strtoull.
19913         Check for strtol.  Mainly as a cue to cause automake to include
19914         strtol.c -- that file is included by each of strtoul.c and strtoull.c.
19915         Check for limits.h -- strtol.c needs it.
19916
19917 2000-12-05  Jim Meyering  <meyering@lucent.com>
19918
19919         * lib/dirname.c (dir_name_r): Add `const' in a few local declarations.
19920
19921 2000-12-04  Jim Meyering  <meyering@lucent.com>
19922
19923         * lib/path-concat.c: [!HAVE_DECL_MALLOC]: Declare malloc.
19924         Also include memory.h, stdlib.h, unistd.h if appropriate.
19925         Reported by Andreas Jaeger (conflicting declaration of malloc).
19926
19927 2000-12-02  Jim Meyering  <meyering@lucent.com>
19928
19929         * m4/off_t-format.m4 (OFF_T_PRINTF_FORMAT_STRING): New file/macro.
19930         * m4/jm-macros.m4 (jm_MACROS): require it.
19931
19932 2000-12-02  Jim Meyering  <meyering@lucent.com>
19933
19934         * lib/closeout.h: Make idempotent, to avoid some obscure warnings.
19935
19936 2000-12-01  Paul Eggert  <eggert@twinsun.com>
19937
19938         * lib/memrchr.c: Include <config.h> before any system include file.
19939
19940 2000-11-30  Jim Meyering  <meyering@lucent.com>
19941
19942         * m4/jm-macros.m4 (jm_MACROS): Check for stdint.h.
19943
19944 2000-11-30  Jim Meyering  <meyering@lucent.com>
19945
19946         * m4/getloadavg.m4: s/ifval/m4_ifval/ to accommodate new autoconf.
19947
19948 2000-11-29  Paul Eggert  <eggert@twinsun.com>
19949
19950         * lib/dirname.c (dir_name_r): Fix typo: int -> size_t.
19951
19952 2000-11-26  Jim Meyering  <meyering@lucent.com>
19953
19954         * lib/memcoll.c: Include sys/types.h.  From Werner Almesberger.
19955
19956 2000-11-22  Paul Eggert  <eggert@twinsun.com>
19957
19958         * lib/strftime.c (my_strftime): Do not invoke mbrlen with a
19959         size of (size_t) -1; it's not portable.
19960
19961 2000-11-17  Jim Meyering  <meyering@lucent.com>
19962
19963         * lib/strstr.c: Update from GNU libc.
19964
19965 2000-11-17  Akim Demaille  <akim@epita.fr>
19966
19967         * lib/obstack.h: Formatting changes.
19968         (obstack_grow, obstack_grow0): Don't cast WHERE at all: that would
19969         prevent type checking.
19970         (obstack_ptr_grow, obstack_ptr_grow_fast): When assigning, don't
19971         cast the value to (void *): assigning a `foo *' to a `void *'
19972         variable is valid.
19973         (obstack_int_grow, obstack_int_grow_fast): Don't cast AINT to int.
19974
19975 2000-11-16  Jim Meyering  <meyering@lucent.com>
19976
19977         * lib/strverscmp.c: Incorporate weak-alias-related changes from glibc.
19978
19979 2000-11-11  Jim Meyering  <meyering@lucent.com>
19980
19981         * lib/error.c: Add a couple #includes, merging from GNU libc version.
19982
19983 2000-11-10  Jim Meyering  <meyering@lucent.com>
19984
19985         * lib/obstack.h: Update from GNU libc.
19986         * lib/obstack.c: Likewise.
19987
19988 2000-11-08  Bruno Haible  <haible@clisp.cons.org>
19989
19990         * m4/jm-macros.m4 (jm_MACROS): Add test for wcrtomb.
19991
19992 2000-11-06  Paul Eggert  <eggert@twinsun.com>
19993
19994         * lib/getusershell.c (setusershell): Use rewind rather than
19995         fseek/fseeko, to avoid configuration hassles with fseeko.
19996         Don't bother opening SHELLS_FILE if shellstream is NULL;
19997         it's not necessary.
19998
19999 2000-11-05  Jim Meyering  <meyering@lucent.com>
20000
20001         * lib/makepath.h (make_dir): Declare.
20002         * lib/makepath.c (make_dir): Remove `static' attribute.
20003         Tweak a comment.
20004
20005 2000-11-04  Jim Meyering  <meyering@lucent.com>
20006
20007         * m4/regex.m4: Use the `m4_' prefix on `syscmd' and `m4_sysval'.
20008
20009 2000-11-04  Alexandre Duret-Lutz  <duret_g@epita.fr>
20010
20011         * lib/hash.c (hash_get_next): Fix a thinko:  when ENTRY is the
20012         last one in a bucket, advance to the next bucket.
20013
20014 2000-11-02  Vesselin Atanasov  <vesselin@bgnet.bg>
20015
20016         * lib/fnmatch.c: Do not comment out all the code if we are using
20017         the GNU C library, because in some cases we are replacing buggy
20018         code in the GNU C library itself.
20019
20020 2000-10-30  Stefan Monnier  <monnier@cs.yale.edu>
20021
20022         * regex.c (re_iswctype, re_wctype_to_bit): Fix braino.
20023         (regex_compile): Catch bogus \(\1\).
20024
20025 2000-10-30  Paul Eggert  <eggert@twinsun.com>
20026
20027         * lib/fnmatch.c (FOLD): Do not assume that characters are unsigned.
20028         (fnmatch): Fix some FNM_FILE_NAME and FNM_LEADING_DIR bugs,
20029         e.g. fnmatch("d*/*1", "d/s/1", FNM_FILE_NAME) incorrectly yielded zero.
20030
20031 2000-10-30  Paul Eggert  <eggert@twinsun.com>
20032
20033         * lib/error.h, getline.h, modechange.h:
20034         Remove "2000" from Copyright line, as the file hasn't been
20035         changed this year other than in the copyright notice.
20036
20037         * lib/xalloc.h: Add "2000" to Copyright line, as this file
20038         was changed this year.
20039
20040 2000-10-29  Jim Meyering  <meyering@lucent.com>
20041
20042         * m4/fsusage.m4: s/AC_SHELL_IFELSE/AS_IFELSE/ to match autoconf renaming.
20043         * m4/ls-mntd-fs.m4: Likewise
20044
20045 2000-10-29  Jim Meyering  <meyering@lucent.com>
20046
20047         * lib/xstat.in: Fix grammar in comment.
20048
20049 2000-10-29  Greg Louis  <glouis@dynamicro.on.ca>
20050
20051         * lib/regex.h (__restrict_arr): Move definition out of #ifndef block.
20052         Required because egcs-2.91.66 (aka 1.1.2) defines __restrict, but
20053         doesn't define __restrict_arr.
20054
20055 2000-10-28  Jim Meyering  <meyering@lucent.com>
20056
20057         * m4/prereq.m4 (jm_PREREQ): Add jm_PREREQ_MEMCHR.
20058         (jm_PREREQ_MEMCHR): New function.
20059
20060 2000-10-28  Jim Meyering  <meyering@lucent.com>
20061
20062         * lib/memchr.c: Update from libc.
20063         Adjust for portability:
20064         [HAVE_STDLIB_H]: Include stdlib.h.
20065         [HAVE_BP_SYM_H || _LIBC]: Guard inclusion of bp-sym.h.
20066         Undef __memchr, too.
20067         [!weak_alias]: Define __memchr to memchr.
20068
20069         * lib/regex.c: Update from libc.
20070         * lib/regex.h: Likewise.
20071         * lib/getopt1.c: Likewise.
20072         * lib/memcmp.c: Likewise.
20073
20074         * lib/getusershell.c (setusershell) [HAVE_FSEEKO]: Use fseeko.
20075         Avoid using fseek, when possible -- it's broken by design.
20076         Patch by Ulrich Drepper.
20077
20078 2000-10-27  Stefan Monnier  <monnier@cs.yale.edu>
20079
20080         * regex.c (POP_FAILURE_REG_OR_COUNT, re_match_2_internal)
20081         (re_match_2_internal, re_match_2_internal, re_match_2_internal):
20082         Giving in to popular pressure to shut up the compiler with casts.
20083
20084 2000-10-26  Jim Meyering  <meyering@lucent.com>
20085
20086         * lib/strftime.c: Update from libc.
20087
20088 2000-10-25  Stefan Monnier  <monnier@cs.yale.edu>
20089
20090         * regex.c: More `unsigned char' -> `re_char' changes.
20091         Also change several `int' into `re_wchar_t'.
20092         (PATTERN_STACK_EMPTY, PUSH_PATTERN_OP, POP_PATTERN_OP): Remove.
20093         (PUSH_FAILURE_POINTER): Don't cast any more.
20094         (POP_FAILURE_REG_OR_COUNT): Remove the cast that strips `const'.
20095         We want GCC to complain, since this piece of code makes
20096         re_match non-reentrant, which *should* be fixed.
20097         (GET_BUFFER_SPACE): Use size_t rather than unsigned long.
20098         (EXTEND_BUFFER): Use RETALLOC.
20099         (SET_LIST_BIT): Don't cast.
20100         (re_wchar_t): New type.
20101         (re_iswctype, re_wctype_to_bit): Make it crystal clear to GCC
20102         that those two functions will always properly return.
20103         (IMMEDIATE_QUIT_CHECK): Cast to void.
20104         (analyse_first): Use recursion rather than an explicit stack.
20105         (re_compile_fastmap): Can't fail anymore.
20106         (re_search_2): Don't check re_compile_fastmap for failure.
20107         (PUSH_NUMBER): Renamed from PUSH_FAILURE_COUNT.
20108         Now also sets the new value (passed in a new argument).
20109         (re_match_2_internal): Use it.
20110         Also, use a new var `reg' of type size_t when looping through regs
20111         rather than reuse the inappropriate `mcnt'.
20112
20113 2000-10-25  Jim Meyering  <meyering@lucent.com>
20114
20115         * lib/obstack.c: Update from libc.
20116
20117 2000-10-24  Kenichi Handa  <handa@etl.go.jp>
20118
20119         * regex.c (regex_compile): Change the way of handling a range from
20120         a char less than 256 to a char not less than 256.
20121
20122 2000-10-24  Andrew Innes  <andrewi@gnu.org>
20123
20124         * regex.c (IMMEDIATE_QUIT_CHECK): New macro, which does QUIT on
20125         NT-Emacs only.
20126         (re_match_2_internal): Use IMMEDIATE_QUIT_CHECK instead of QUIT,
20127         so that re_search functions only quit when callers expect them to.
20128
20129 2000-10-23  Jim Meyering  <meyering@lucent.com>
20130
20131         * lib/hard-locale.c (hard_locale): Revert last change -- it was simply
20132         wrong.  That set_locale call must not have any side effects.
20133         From Paul Eggert.
20134
20135 2000-10-22  Jim Meyering  <meyering@lucent.com>
20136
20137         * lib/md5.c (md5_process_block) [OP]: Use `rol', not CYCLIC.
20138         [CYCLIC]: Remove now-unused definition.
20139
20140         * lib/save-cwd.c (O_DIRECTORY): Define, if needed.
20141         (save_cwd) [HAVE_FCHDIR]: Use O_DIRECTORY when opening ".".
20142         Suggestion from Ulrich Drepper.
20143
20144 2000-10-21  Jim Meyering  <meyering@lucent.com>
20145
20146         * m4/check-decl.m4 (jm_CHECK_DECLS): Also check for memrchr.
20147         * m4/prereq.m4 (jm_PREREQ_DIRNAME): New macro.
20148         * m4/jm-macros.m4 (AC_REPLACE_FUNCS): Add memrchr.
20149
20150 2000-10-21  Jim Meyering  <meyering@lucent.com>
20151
20152         * lib/dirname.c (memrchr): Declare if necessary.
20153         (dir_name): Remove the restriction that there be no
20154         trailing slashes.  Now, this code skips past them, effectively
20155         ignoring them.
20156         [TEST_DIRNAME] (main): New unit tests.
20157
20158         * lib/memrchr.c: New file from GNU libc.
20159         Undef __memrchr, too.
20160         [!weak_alias]: Define __memrchr to memrchr.
20161         Guard weak_alias use with `#ifdef weak_alias'.
20162
20163 2000-10-21  Jim Meyering  <meyering@lucent.com>
20164
20165         * lib/dirname.c (dir_name_r): New function, factored out of dir_name.
20166         (dir_name): Use dir_name_r.
20167         * lib/dirname.h (dir_name_r): Declare it.
20168
20169 2000-10-17  Jim Meyering  <meyering@lucent.com>
20170
20171         * lib/quote.h (PARAMS): Define and use.
20172         Reported by Akim Demaille.
20173
20174         * lib/getopt.c: Update from libc.
20175
20176 2000-10-16  Jim Meyering  <meyering@lucent.com>
20177
20178         * lib/hard-locale.c (hard_locale): Use "", not 0 as 2nd arg to setlocale.
20179         From Jan Fedak.
20180
20181 2000-10-15  Stefan Monnier  <monnier@cs.yale.edu>
20182
20183         * regex.c (WIDE_CHAR_SUPPORT): Define if _LIBC as well.
20184
20185 2000-09-25  Jim Meyering  <meyering@lucent.com>
20186
20187         * lib/md5.h (rol): Define (from GnuPG).
20188
20189         * lib/sha.c: Give credit (GnuPG) where due.
20190         (M): Use rol rather than open-coding it.
20191         Add a FIXME comment.
20192
20193 2000-09-21  Jim Meyering  <meyering@lucent.com>
20194
20195         * lib/userspec.c (parse_user_spec): Remove debugging printf I'd added.
20196         Reported by Michael Stone.
20197
20198 2000-09-20  Jim Meyering  <meyering@lucent.com>
20199
20200         * lib/Makefile.am (libfetish_a_SOURCES): Add sha.c.
20201         (noinst_HEADERS): Add sha.h.
20202         Based on code from Scott G. Miller and from GnuPG.
20203
20204 2000-09-18  Jim Meyering  <meyering@lucent.com>
20205
20206         * m4/getloadavg.m4 (AC_FUNC_GETLOADAVG): Restore the initial value of LIBS.
20207         Otherwise, everyone ends up linking with -lelf for some configurations.
20208         Reported by Mike Stone.
20209
20210 2000-09-15  Jim Meyering  <meyering@lucent.com>
20211
20212         * lib/regex.c: Update from libc.
20213
20214 2000-09-10  Jim Meyering  <meyering@lucent.com>
20215
20216         * lib/getopt.c (_getopt_internal): Update from glibc.
20217
20218 2000-09-09  Jim Meyering  <meyering@lucent.com>
20219
20220         * lib/quotearg.c: Rename ISASCII to IN_CTYPE_DOMAIN, so people don't
20221         think it should be used as a general replacement for isascii.
20222         * lib/fnmatch.c: Likewise.
20223         * lib/mbswidth.c: Likewise
20224         * lib/regex.c: Likewise.
20225
20226         Don't use atoi.
20227         * lib/userspec.c: Include sys/param.h and limits.h.
20228         Include xstrtol.h.
20229         (CHAR_BIT, TYPE_SIGNED, TYPE_MINIMUM, TYPE_MAXIMUM): Define.
20230         (UID_T_MAX, GID_T_MAX, MAXUID, MAXGID): Define.
20231         (parse_user_spec): Use xstrtoul, not atoi when converting numeric
20232         UID, GID.  Check range.
20233
20234 2000-09-06  Jim Meyering  <meyering@lucent.com>
20235
20236         * lib/getopt.c (_getopt_internal): Update from glibc.
20237
20238 2000-08-30  Jim Meyering  <meyering@lucent.com>
20239
20240         * lib/strftime.c: Merge in changes from GNU libc.
20241
20242 2000-08-26  Jim Meyering  <meyering@lucent.com>
20243
20244         * m4/jm-macros.m4: Use jm_FUNC_FPENDING.
20245         * m4/fpending.m4: New file.
20246
20247 2000-08-26  Jim Meyering  <meyering@lucent.com>
20248
20249         * lib/closeout.c: Include "__fpending.h".
20250         (close_stdout_status): Return right away if there's nothing to flush.
20251
20252         * lib/Makefile.am (noinst_HEADERS): Add __fpending.h.
20253         * lib/__fpending.c: New file.
20254         * lib/__fpending.h: New file.
20255
20256 2000-08-20  Jim Meyering  <meyering@lucent.com>
20257
20258         * m4/check-decl.m4: Include utmp.h `#if HAVE_UTMP_H', rather than
20259         `#if !HAVE_UTMPX_H'.  The latter would lose on systems with neither
20260         utmp.h nor utmpx.h.  Reported by Eli Zaretskii.
20261
20262 2000-08-11  J. David Anglin  <dave@hiauly1.hia.nrc.ca>
20263
20264         Improve fileutils installation on systems where running
20265         programs (like install) can't be unlinked.
20266         * m4/unlink-busy.m4 (jm_FUNC_UNLINK_BUSY_TEXT): New file/macro.
20267         * m4/jm-macros.m4: Use jm_FUNC_UNLINK_BUSY_TEXT.
20268
20269 2000-08-07  Paul Eggert  <eggert@twinsun.com>
20270
20271         Standardize on "memory exhausted" instead of "Memory exhausted"
20272         or "virtual memory exhausted".
20273         * lib/obstack.c (print_and_abort): Use "memory exhausted", not
20274         "virtual memory exhausted".
20275         * lib/same.c (same_name): Invoke xalloc_die instead of printing
20276         our own message.
20277         * lib/userspec.c (parse_user_spec): Likewise.
20278         * lib/bumpalloc.h: comment fix
20279         * lib/same.c, userspec.c: Include xalloc.h.
20280
20281         * lib/xalloc.h (xalloc_msg_memory_exhausted): Now char const[],
20282         not char *const and pointing to a constant array.
20283         * lib/xmalloc.c (xalloc_msg_memory_exhausted): Likewise.
20284         (xrealloc): Comment fix.
20285
20286         * lib/userspec.c (parse_user_spec):
20287         Don't translate a message until just before returning,
20288         to avoid unnecessary translation.
20289
20290 2000-08-07  Jim Meyering  <meyering@lucent.com>
20291
20292         * lib/addext.c, argmatch.c, argmatch.h, backupfile.h, bumpalloc.h,
20293         chown.c, diacrit.h, dirname.h, dup2.c, exclude.h, fileblocks.c,
20294         fnmatch.c, fnmatch.h, fsusage.c, fsusage.h, getdate.h,
20295         getgroups.c, gethostname.c, getopt.h, group-member.c,
20296         hard-locale.c, hash.h, isdir.c, lchown.c, linebuffer.c,
20297         linebuffer.h, long-options.h, malloc.c, md5.c, md5.h, memchr.c,
20298         memcmp.c, memcoll.c, memset.c, mktime.c, modechange.h, obstack.h,
20299         pathmax.h, realloc.c, rmdir.c, safe-read.c, save-cwd.c, stime.c,
20300         stpcpy.c, strcasecmp.c, strcspn.c, strdup.c, stripslash.c,
20301         strstr.c, strtod.c, strtol.c, strtoul.c, strtoull.c, strtoumax.c,
20302         utime.c, version-etc.h, xalloc.h, xstrdup.c, xstrtoumax.c,
20303         yesno.c: Back out Copyright date changes for each file with no change
20304         this year.  This eases coordination with other programs using the same
20305         source code modules.  From Paul Eggert.
20306
20307 2000-08-06  Paul Eggert  <eggert@twinsun.com>
20308
20309         * m4/mbstate_t.m4 (AC_MBSTATE_T): Define mbstate_t to be int,
20310         not char, for compatibility with glibc 2.1.3 strftime.c.
20311
20312 2000-08-03  Greg McGary  <greg@mcgary.org>
20313
20314         * lib/regex.c (SET_HIGH_BOUND, MOVE_BUFFER_POINTER,
20315         ELSE_EXTEND_BUFFER_HIGH_BOUND): New macros.
20316         (EXTEND_BUFFER): Use them.
20317
20318 2000-08-01  Jim Meyering  <meyering@lucent.com>
20319
20320         * lib/dirname.c (ISSLASH): Define.
20321         (BACKSLASH_IS_PATH_SEPARATOR): Define.
20322         (dir_name) [BACKSLASH_IS_PATH_SEPARATOR]: Handle the case in which
20323         both `\' and `/' may be use as path separators.
20324         Based on a patch from Prashant TR.
20325
20326 2000-07-31  Paul Eggert  <eggert@twinsun.com>
20327
20328         * lib/quotearg.c (quotearg_n_options): Don't make the initial
20329         slot vector a constant, since it might get modified.
20330
20331 2000-07-31  Jim Meyering  <meyering@lucent.com>
20332
20333         * lib/xmalloc.c: Use `virtual memory exhausted', not `Memory exhausted'.
20334         * lib/obstack.c (print_and_abort): Likewise.
20335
20336 2000-07-30  Paul Eggert  <eggert@twinsun.com>
20337
20338         * lib/quotearg.c (quotearg_n_options): Preallocate a slot 0
20339         buffer, so that the caller can always quote one small
20340         component of a "memory exhausted" message in slot 0.
20341         From a suggestion by Jim Meyering.
20342
20343 2000-07-30  Jim Meyering  <meyering@lucent.com>
20344
20345         * lib/makepath.c (make_path): Quote the other instance, too.
20346
20347         * lib/quotearg.c (N_STATIC_SLOTVECS): Define.
20348         (STATIC_BUF_SIZE): Define.
20349         (quotearg_n_options): Use only statically allocated storage when
20350         N < N_STATIC_SLOTVECS and the length of the quoted result is smaller
20351         than STATIC_BUF_SIZE.
20352
20353 2000-07-29  Jim Meyering  <meyering@lucent.com>
20354
20355         * lib/diacrit.c (diacrit_diac): Use __MSDOS__ in favor of MSDOS.
20356         * lib/dirname.c (dir_name): Likewise.
20357
20358         * lib/basename.c (base_name): Use ISSLASH rather than comparing against `/'.
20359
20360         * lib/dirname.c (dir_name) [MSDOS]: Declare `lim' to be const.
20361         (dir_name): Assert that there are no trailing slashes.
20362
20363 2000-07-29  Bruno Haible  <haible@clisp.cons.org>
20364
20365         * lib/mbswidth.h (mbswidth): Add a flags argument.
20366         (mbswidth): New declaration.
20367         (MBSW_ACCEPT_INVALID, MBSW_ACCEPT_UNPRINTABLE): New macros.
20368         * lib/mbswidth.c (mbswidth): Add a flags argument.
20369         (mbsnwidth): New function.
20370
20371 2000-07-24  Jim Meyering  <meyering@lucent.com>
20372
20373         * lib/mbswidth.c: Remove useless #else.  From Bruno Haible.
20374
20375 2000-07-23  Paul Eggert  <eggert@twinsun.com>
20376
20377         * m4/mbswidth.m4 (jm_PREREQ_MBSWIDTH): Check for wcwidth declaration.
20378
20379 2000-07-23  Paul Eggert  <eggert@twinsun.com>
20380
20381         * lib/quotearg.c: Streamline by invoking multibyte code only if needed.
20382         <wchar.h>: Include only if HAVE_MBRTOWC && 1 < MB_LEN_MAX.
20383         (MB_CUR_MAX): Redefine to 1 if ! (HAVE_MBRTOWC && 1 < MB_LEN_MAX).
20384         (quotearg_buffer_restyled): If a unibyte locale, don't bother to
20385         invoke multibyte primitives.
20386
20387 2000-07-23  Paul Eggert  <eggert@twinsun.com>
20388
20389         * lib/quotearg.c:
20390         Include <wchar.h> even if ! (HAVE_MBRTOWC && 1 < MB_LEN_MAX),
20391         so that mbstate_t is always defined.
20392
20393         Do not inspect MB_LEN_MAX, since it's incorrectly defined to
20394         be 1 in at least one GCC installation, and this configuration
20395         error is likely to be common.  Ignoring MB_LEN_MAX hurts
20396         performance on hosts that have mbrtowc but have only unibyte
20397         locales, but I assume these hosts are rare.
20398
20399 2000-07-23  Paul Eggert  <eggert@twinsun.com>
20400
20401         * lib/mbswidth.c (_XOPEN_SOURCE):
20402         Don't define; this causes problems on Solaris 7.
20403         (wcwidth) [!HAVE_DECL_WCWIDTH]: Declare.
20404
20405 2000-07-23  Jim Meyering  <meyering@lucent.com>
20406
20407         * m4/check-decl.m4 (jm_CHECK_DECLS): Check for declarations of these, too:
20408         getgrgid, getpwuid, getuid.
20409
20410 2000-07-23  Jim Meyering  <meyering@lucent.com>
20411
20412         * lib/basename.c (base_name): Add an assertion.
20413
20414 2000-07-23  Bruno Haible  <clisp.cons.org>
20415
20416         * lib/quotearg.c: When the system forces us to redefine mbstate_t,
20417         shadow its mbsinit function.
20418
20419 2000-07-17  Bruno Haible  <haible@clisp.cons.org>
20420
20421         * lib/mbswidth.h: New file.
20422         * lib/mbswidth.c: New file.
20423         * lib/Makefile.am (libfetish_a_SOURCES): Add mbswidth.c.
20424         (noinst_HEADERS): Add mbswidth.h.
20425
20426 2000-07-17  Bruno Haible  <haible@clisp.cons.org>
20427
20428         * lib/config.charset: Add support for FreeBSD. Improve support for HP-UX
20429         and IRIX 6.
20430
20431 2000-07-16  Bruno Haible  <haible@clisp.cons.org>
20432
20433         * m4/mbswidth.m4: New file.
20434         * m4/prereq.m4 (jm_PREREQ): Call jm_PREREQ_MBSWIDTH.
20435
20436 2000-07-15  Jim Meyering  <meyering@lucent.com>
20437
20438         * lib/makepath.c: Include quote.h.
20439         (make_path): Convert "`%s'" in format strings to "%s", and wrap each
20440         corresponding argument in a `quote (...)' call.
20441         Give better diagnostics.
20442
20443         * lib/Makefile.am (libfetish_a_SOURCES): Add quote.c.
20444         (noinst_HEADERS): Add quote.h.
20445
20446         * lib/quote.c (quote, quote_n): New file.  Two functions taken verbatim
20447         from tar's src/misc.c.
20448         * lib/quote.h: New file.  Prototypes for same.
20449
20450 2000-07-14  Paul Eggert  <eggert@twinsun.com>
20451
20452         From a suggestion by Bruno Haible.
20453         * lib/quotearg.c (mbrtowc): Do not use HAVE_WCHAR_H in the definition.
20454         Use defined mbstate_t, not HAVE_MBSTATE_T_OBJECT,
20455         to decide whether to define the BeOS workaround macro;
20456         this adjusts to the change to AC_MBSTATE_T.
20457
20458 2000-07-14  Jim Meyering  <meyering@lucent.com>
20459
20460         * m4/xstrtoumax.m4 (jm_AC_PREREQ_XSTRTOUMAX): Require jm_AC_TYPE_UINTMAX_T.
20461
20462 2000-07-13  Paul Eggert  <eggert@twinsun.com>
20463
20464         * lib/quotearg.h (enum quoting style): New enum clocale_quoting_style.
20465
20466         * lib/quotearg.c (quoting_style_args, quoting_style_vals,
20467         quotearg_buffer_restyled): Add support for
20468         clocale_quoting_style.  Undo previous change to
20469         locale_quoting_style behavior, and undo the "{LEFT QUOTATION MARK}"
20470         and "{RIGHT QUOTATION MARK}" msgids.
20471
20472 2000-07-10  Paul Eggert  <eggert@twinsun.com>
20473
20474         From a suggestion by Bruno Haible.
20475         * m4/mbstate_t.m4 (AC_MBSTATE_T):
20476         Renamed from AC_MBSTATE_T_OBJECT.  All uses changed.
20477         Change from a two-part test, which defines both HAVE_MBSTATE_T_OBJECT
20478         and mbstate_t, to a single-part test that simply defines mbstate_t.
20479         * m4/prereq.m4 (jm_PREREQ_QUOTEARG): s/AC_MBSTATE_T_OBJECT/AC_MBSTATE_T/.
20480
20481 2000-07-10  Jim Meyering  <meyering@lucent.com>
20482
20483         * m4/strerror_r.m4: Mirror the correction made in autoconf.
20484
20485         * m4/gnu-source.m4: Output to confdefs.h directly.
20486         Suggestion from Akim Demaille.
20487
20488 2000-07-09  Paul Eggert  <eggert@twinsun.com>
20489
20490         The old behavior of quoting `like this' doesn't look good with
20491         newer, ISO-style fonts.  See:
20492         http://www.cl.cam.ac.uk/~mgk25/ucs/quotes.html
20493
20494         Instead, quote "like this" by default.  Let the translator
20495         tailor the locale-specific quoting behavior by providing
20496         translations for {LEFT QUOTATION MARK} and {RIGHT QUOTATION MARK}.
20497
20498         * lib/quotearg.c (N_): New macro.
20499         (gettext_default): New function.
20500         (quotearg_buffer_restyled): Use
20501         gettext_default ("{LEFT QUOTATION MARK}", "\"") for left quote, and
20502         gettext_default ("{RIGHT QUOTATION MARK}", "\"") for right quote.
20503
20504 2000-07-09  Jim Meyering  <meyering@lucent.com>
20505
20506         * m4/jm-macros.m4 (jm_MACROS): Add a test to see if -lm is required
20507         to link seq.  If so, set SEQ_LIBM to -lm.  From Bruno Haible.
20508
20509         * m4/gnu-source.m4 (AC__GNU_SOURCE): New file/macro.
20510         * m4/jm-macros.m4 (jm_CHECK_ALL_TYPES): Require it.
20511
20512 2000-07-09  Jim Meyering  <meyering@lucent.com>
20513
20514         * lib/Most files: Update copyright dates to include 2000.
20515
20516 2000-07-08  Jim Meyering  <meyering@lucent.com>
20517
20518         * lib/xgethostname.c (ENAMETOOLONG): Define to an unlikely value
20519         if not defined.
20520         (xgethostname): Remove now-unnecessary #ifdef.
20521         Move declaration of `err' into loop where it's used.
20522
20523 2000-07-05  Paul Eggert  <eggert@twinsun.com>
20524         and Bruno Haible  <haible@clisp.cons.org>
20525
20526         * m4/mbstate_t.m4 (AC_MBSTATE_T_OBJECT): Test for mbstate_t
20527         only if the test for an object-type mbstate_t fails.  This
20528         prevents us from mistakenly reporting that mbstate_t is a
20529         system object type after we "#define mbstate_t int" to work
20530         around its lack.
20531
20532 2000-07-05  Paul Eggert  <eggert@twinsun.com>
20533         and Bruno Haible  <haible@clisp.cons.org>
20534
20535         * lib/quotearg.c (mbrtowc): Declare returned type, since BeOS doesn't.
20536
20537 2000-07-05  Bruno Haible  <haible@clisp.cons.org>
20538
20539         * m4/strerror_r.m4 (AC_FUNC_STRERROR_R): Pass a reasonably large buffer
20540         to strerror_r.
20541         Include <ctype.h> for use of isalpha.
20542
20543 2000-07-05  Bruno Haible  <haible@clisp.cons.org>
20544
20545         * lib/xgethostname.c (xgethostname): Protect against the SunOS 5.5 bug
20546         by allocating a larger buffer. Test the gethostname return value for
20547         being >= 0, not == 0, for BeOS.  Don't exhaust memory if gethostname
20548         returns an error and ENAMETOOLONG isn't defined.
20549
20550 2000-07-05  Bruno Haible  <haible@clisp.cons.org>
20551
20552         * lib/quotearg.c (struct quoting_options): Simplify quote_these_too
20553         dimension.
20554
20555 2000-07-04  Jim Meyering  <meyering@lucent.com>
20556
20557         * m4/fsusage.m4 (jm_FILE_SYSTEM_USAGE): Use plain old `echo' instead
20558         of the deprecated AC_CHECKING.
20559
20560 2000-07-04  Jim Meyering  <meyering@lucent.com>
20561
20562         * lib/strndup.c: [!HAVE_DECL_STRNLEN]: Declare strnlen.
20563         Reported by Bruno Haible.
20564
20565 2000-07-04  Jim Meyering  <meyering@lucent.com>
20566
20567         * lib/quotearg.c: Make inclusion of <wchar.h> independent of whether
20568         HAVE_MBRTOWC is set.  Required at least for irix-5.6, which
20569         lacks mbrtowc.
20570
20571 2000-07-03  Paul Eggert  <eggert@twinsun.com>
20572
20573         * m4/mbstate_t.m4 (AC_MBSTATE_T_OBJECT): Port to autoconf 2.13.
20574         Add AC_CHECK_HEADERS(stdlib.h), since we use HAVE_STDLIB_H.
20575
20576 2000-07-03  Paul Eggert  <eggert@twinsun.com>
20577         and Bruno Haible  <haible@clisp.cons.org>
20578
20579         * lib/quotearg.c (mbrtowc):
20580         Assign to *pwc, and return 1 only if result is nonzero.
20581         (iswprint): Use ISPRINT when substituting our own mbrtowc.
20582
20583 2000-07-03  Jim Meyering  <meyering@lucent.com>
20584
20585         * m4/check-decl.m4 (AC_CHECK_DECLS): Add strnlen.
20586
20587 2000-07-03  Jim Meyering  <meyering@lucent.com>
20588
20589         * lib/readutmp.h: [HAVE_UTMPX_H]: Include <utmp.h> if HAVE_UTMP_H.
20590         This is necessary to get a definition of e.g., UTMP_FILE on HP-UX 10.20.
20591         From Bob Proulx.
20592
20593 2000-07-02  Jim Meyering  <meyering@lucent.com>
20594
20595         * m4/mbstate_t.m4: Also define mbstate_t, if necessary.
20596
20597         * m4/chown.m4: Replace each use of AC_SUBST(LIBOBJS)/LIBOBJS=... with
20598         AC_LIBOBJ(function_name).
20599         * m4/chown.m4: Likewise.
20600         * m4/fnmatch.m4: Likewise.
20601         * m4/ftruncate.m4: Likewise.
20602         * m4/getgroups.m4: Likewise.
20603         * m4/getline.m4: Likewise.
20604         * m4/group-member.m4: Likewise.
20605         * m4/jm-macros.m4: Likewise.
20606         * m4/lstat.m4: Likewise.
20607         * m4/malloc.m4: Likewise.
20608         * m4/memcmp.m4: Likewise.
20609         * m4/nanosleep.m4: Likewise.
20610         * m4/putenv.m4: Likewise.
20611         * m4/realloc.m4: Likewise.
20612         * m4/regex.m4: Likewise.
20613         * m4/stat.m4: Likewise.
20614         * m4/strftime.m4: Likewise.
20615
20616 2000-07-02  Jim Meyering  <meyering@lucent.com>
20617
20618         * lib/quotearg.c (mbstate_t): Don't define here.
20619
20620 2000-07-02  Jim Meyering  <meyering@lucent.com>
20621
20622         * lib/nanosleep.c (SIGCONT): Define if not already defined.
20623
20624 2000-07-01  Jim Meyering  <meyering@lucent.com>
20625
20626         * m4/uptime.m4: Put double quotes around use of $cross_compiling.
20627
20628 2000-07-01  Jim Meyering  <meyering@lucent.com>
20629
20630         * m4/ls-mntd-fs.m4: Remove a `FIXME' comment and fix the associated
20631         problem.
20632
20633 2000-07-01  Bruno Haible  <haible@clisp.cons.org>
20634
20635         * m4/ls-mntd-fs.m4 (jm_LIST_MOUNTED_FILESYSTEMS): Rename BeOS specific
20636         macro from MOUNTED_NEXT_DEV to MOUNTED_FS_STAT_DEV.
20637
20638 2000-07-01  Bruno Haible  <haible@clisp.cons.org>
20639
20640         * lib/mountlist.c: Use MOUNTED_FS_STAT_DEV instead of MOUNTED_NEXT_DEV,
20641         per change in ../m4/ls-mntd-fs.m4.
20642         (read_filesystem_list): Ignore symbolic links.
20643
20644 2000-06-29  Jim Meyering  <meyering@lucent.com>
20645
20646         * lib/same.c: Include <string.h> or <strings.h>, as appropriate,
20647         for declaration of strcmp.
20648
20649         * lib/long-options.c: Include <stdlib.h>, for declaration of exit.
20650
20651         * lib/mountlist.c (fsp_to_string) [HAVE_F_FSTYPENAME_IN_STATFS]:
20652         Avoid warning by casting result to `char *' to remove `const'.
20653
20654 2000-06-28  Jim Meyering  <meyering@lucent.com>
20655
20656         * m4/mbstate_t.m4: Use stdlib.h, not stdio.h.  The latter is not included
20657         by quotearg.c, for which we perform this test.  From Bruno Haible.
20658
20659 2000-06-27  Bruno Haible  <haible@clisp.cons.org>
20660
20661         * m4/check-decl.m4 (_jm_DECL_HEADERS): Check for utmp.h as well.
20662         * m4/prereq.m4 (jm_PREREQ_READUTMP): Likewise. If either <utmp.h> or
20663         <utmpx.h> exists, put readutmp.o into LIBOBJS.
20664
20665 2000-06-27  Bruno Haible  <haible@clisp.cons.org>
20666
20667         * lib/Makefile.am (libfetish_a_SOURCES): Remove readutmp.c.
20668
20669 2000-06-26  Paul Eggert  <eggert@twinsun.com>
20670
20671         savedir now sets errno on failure and invokes xmalloc to get memory.
20672         Fix a couple of other minor bugs while we're at it.
20673
20674         * lib/savedir.c (<unistd.h>): Do not include; there's no need.
20675         (NAMLEN): Remove macro.
20676         (malloc, realloc): Remove decls.
20677         (stpcpy): Likewise.
20678         ("xalloc.h"): Include.
20679         (NAME_SIZE_DEFAULT): New macro.
20680         (savedir): Use xmalloc / xrealloc to allocate memory.
20681         Use NAME_SIZE_DEFAULT if name_size is negative or overflows to zero.
20682         Skip "" directory entries.
20683         Use strlen to calculate directory entry length, since the old method
20684         is rarely used these days and isn't worth supporting.
20685         Don't use a pointer after freeing it.
20686         Check for integer overflow when calculating allocation size.
20687         Use memcpy to copy entries, instead of stpcpy.
20688         Set errno properly when returning NULL.
20689         Check for readdir error.
20690
20691 2000-06-26  Jim Meyering  <meyering@lucent.com>
20692
20693         * lib/posixtm.c [HAVE_STDLIB_H]: Include stdlib.h, for decl of abort.
20694
20695 2000-06-25  Jim Meyering  <meyering@lucent.com>
20696
20697         * m4/mbstate_t.m4: Include stdio.h before wchar.h to work around
20698         Linux header bug when _XOPEN_SOURCE is defined to 500.
20699
20700 2000-06-25  Bruno Haible  <haible@clisp.cons.org>
20701
20702         * lib/unicodeio.c (print_unicode_char): Work around ansi2knr deficiency.
20703
20704 2000-06-25  Bruno Haible  <haible@clisp.cons.org>
20705
20706         * lib/getusershell.c (xmalloc, xrealloc): Remove functions.
20707         Include xalloc.h.
20708         Don't include <stdlib.h>.  Don't declare malloc, realloc.
20709
20710 2000-06-24  Jim Meyering  <meyering@lucent.com>
20711
20712         * m4/strerror_r.m4: Revive this file -- to try out an experimental
20713         version of AC_FUNC_STRERROR_R that may work even on BeOS, a system
20714         for which strerror does return char*, but which lacks a conveniently
20715         accessible declaration of the function.  If the compile-test says
20716         strerror_r doesn't work, then resort to a `run'-test that works on
20717         BeOS and segfaults on DEC Unix.
20718
20719 2000-06-24  Jim Meyering  <meyering@lucent.com>
20720
20721         * lib/error.c [!HAVE_DECL_STRERROR_R]: Declare strerror_r.
20722
20723 2000-06-23  Paul Eggert  <eggert@twinsun.com>
20724
20725         * m4/mbstate_t.m4: New file, defining AC_MBSTATE_T_OBJECT.
20726         * m4/prereq.m4 (jm_PREREQ_QUOTEARG): Use it.  Add check for iswprint.
20727
20728 2000-06-23  Paul Eggert  <eggert@twinsun.com>
20729
20730         * lib/quotearg.c: Include <wctype.h> after <wchar.h>, for Solaris 2.5.
20731         (mbrtowc, mbstate_t): Define substitutes if
20732         HAVE_MBRTOWC && HAVE_WCHAR_H && !HAVE_MBSTATE_T_OBJECT.
20733         (iswprint): Define to 1 if !defined iswprint && !HAVE_ISWPRINT,
20734         not if ! (HAVE_MBRTOWC && HAVE_WCHAR_H).
20735
20736 2000-06-23  Jim Meyering  <meyering@lucent.com>
20737
20738         * m4/afs.m4: Add missing AC_MSG_RESULT.
20739         Reported by Bruno Haible.
20740
20741         * m4/fsusage.m4: s/AC_MSG_CHECKING/AC_CHECKING/.
20742         Suggestion from Bruno Haible.
20743
20744 2000-06-23  Jim Meyering  <meyering@lucent.com>
20745
20746         * lib/getpass.c: New file, from Bruno Haible.  Required for BeOS.
20747
20748 2000-06-21  Jim Meyering  <meyering@lucent.com>
20749
20750         * m4/jm-macros.m4 (AC_REPLACE_FUNCS): Add getpass.
20751
20752 2000-06-21  Jim Meyering  <meyering@lucent.com>
20753
20754         * lib/Makefile.am (libfetish_a_SOURCES): Add getstr.c.
20755         (noinst_HEADERS): Add getstr.h.
20756
20757         * lib/getline.c (getstr): Move into a separate file.
20758         * lib/getstr.c (getstr): New file, extracted from getline.c, with
20759         the following changes: new parameter, delim2; both delim[12]
20760         parameters have type `int', not `char'.  The latter would lose
20761         with 8-bit delimiters.
20762         * lib/getstr.h: New file.
20763
20764 2000-06-21  Bruno Haible  <haible@clisp.cons.org>
20765
20766         * lib/xgetcwd.c (xgetcwd): If the required pathname length is smaller
20767         than 1024, return a memory chunk of least possible size, instead
20768         of size PATH_MAX + 2. In the loop, increment the size proportionally.
20769         Use free/xmalloc instead of xrealloc to avoid copying for very long
20770         paths.
20771
20772 2000-06-21  Bruno Haible  <haible@clisp.cons.org>
20773
20774         * lib/path-concat.c (path_concat): Don't access dir[-1] if dir is
20775         the empty string.
20776
20777 2000-06-21  Bruno Haible  <haible@clisp.cons.org>
20778
20779         * lib/canon-host.c (canon_host): Use malloc and memcpy to copy an
20780         address, not strdup.  Include <stdlib.h> and don't declare free().
20781
20782 2000-06-19  Jim Meyering  <meyering@lucent.com>
20783
20784         * lib/getloadavg.c [HAVE_NLIST_H] (NLIST_STRUCT): Define.
20785
20786 2000-06-18  Jim Meyering  <meyering@lucent.com>
20787
20788         * m4/jm-macros.m4 (AC_REPLACE_FUNCS): Remove mkdir.
20789
20790         * m4/link-follow.m4 (jm_AC_FUNC_LINK_FOLLOWS_SYMLINK): Change the
20791         `checking whether...' message to be consistent with that of the
20792         lstat test.
20793
20794 2000-06-18  Jim Meyering  <meyering@lucent.com>
20795
20796         * lib/mkdir.c: Remove file, due mainly to copyright incompatibility.
20797         Besides, these days every porting target provides a mkdir function.
20798
20799         * lib/strnlen.c: Include memory.h, string.h, and/or strings.h as needed.
20800         (this snippet comes from src/system.h).
20801
20802 2000-06-16  Bruno Haible  <haible@clisp.cons.org>
20803
20804         * m4/glibc21.m4 (jm_GLIBC21): Define GLIBC21 for Makefiles, not for C.
20805
20806 2000-06-15  Paul Eggert  <eggert@twinsun.com>
20807
20808         * lib/human.c (adjust_value): New function.
20809         (human_readable_inexact): Apply rounding style even when
20810         printing approximate values.
20811
20812 2000-06-14  Paul Eggert  <eggert@twinsun.com>
20813
20814         * lib/human.c (human_readable_inexact): Allow an input block
20815         size that is not a multiple of the output block size, and vice versa.
20816         Reported by Piergiorgio Sartor.
20817
20818 2000-06-14  Paul Eggert  <eggert@twinsun.com>
20819
20820         * lib/getdate.y (get_date): Apply relative times after time
20821         zone indicator, not before.  Reported by Todd A. Jacobs.
20822
20823 2000-06-13  Jim Meyering  <meyering@lucent.com>
20824
20825         * lib/Makefile.am (all-local): Depend on lstat.c and stat.c.
20826
20827         * lib/xstat.in [!HAVE_DECL_FREE]: Declare free in lstat.c.
20828
20829 2000-06-12  Paul Eggert  <eggert@twinsun.com>
20830
20831         * lib/xstat.in: Include <stdlib.h> in lstat, to declare "free".
20832
20833 2000-06-12  Jim Meyering  <meyering@lucent.com>
20834
20835         * m4/getloadavg.m4 (AM_FUNC_GETLOADAVG): Replace with AC_FUNC_GETLOADAVG
20836         from autoconf, and tweak the latter to accept an optional argument.
20837         * m4/jm-macros.m4: s/AM_FUNC_GETLOADAVG/AC_FUNC_GETLOADAVG/, and supply
20838         the optional argument, `lib'.
20839
20840 2000-06-08  Jim Meyering  <meyering@lucent.com>
20841
20842         * m4/largefile.m4: Remove file (now that it's part of autoconf).
20843
20844 2000-06-04  Paul Eggert  <eggert@twinsun.com>
20845
20846         Rewrite largefile configuration so that we don't need to run
20847         getconf and don't need AC_CANONICAL_HOST.  [I'm leaving the use of
20848         AC_CANONICAL_HOST in configure.in -- jmm]
20849
20850         * m4/largefile.m4 (AC_SYS_LARGEFILE_FLAGS,
20851         AC_SYS_LARGEFILE_SPACE_APPEND): Remove.
20852         (AC_SYS_LARGEFILE_TEST_INCLUDES): New macro.
20853         (AC_SYS_LARGEFILE_MACRO_VALUE): Change arguments from
20854         CODE-TO-SET-DEFAULT to VALUE, INCLUDES, FUNCTION-BODY.
20855         All uses changed.
20856         Instead of inspecting the output of getconf, try to compile the
20857         test program without and with the macro definition.
20858         (AC_SYS_LARGEFILE): Do not require AC_CANONICAL_HOST or check
20859         for getconf.  Instead, check for the needed flags by compiling
20860         test programs.
20861
20862 2000-06-04  Paul Eggert  <eggert@twinsun.com>
20863
20864         * lib/strnlen.c: Include <config.h> if HAVE_CONFIG_H.
20865
20866 2000-06-04  Jim Meyering  <meyering@lucent.com>
20867
20868         * lib/getugroups.c (getugroups): Cast -1 to gid_t, for systems like
20869         SunOS 4.1.4 for which gid_t is an unsigned type.
20870
20871 2000-06-03  Jim Meyering  <meyering@lucent.com>
20872
20873         * m4/prereq.m4 (jm_PREREQ_HUMAN): Use []-quoted list in AC_CHECK_DECLS,
20874         now that autoconf requires that.
20875
20876         * m4/jm-glibc-io.m4: Add a kludge to make autoheader emit the required
20877         #undefs.  E.g., #undef HAVE_DECL_FERROR_UNLOCKED.
20878         Use []-quoted list in AC_CHECK_DECLS, now that autoconf requires that.
20879
20880 2000-06-03  Jim Meyering  <meyering@lucent.com>
20881
20882         * lib/strnlen.c [!HAVE_DECL_MEMCHR]: Declare memchr.
20883
20884 2000-06-03  Bruno Haible  <haible@clisp.cons.org>
20885
20886         * m4/glibc21.m4: New file.
20887         * m4/jm-macros.m4 (jm_MACROS): Call jm_GLIBC21.
20888
20889 2000-06-03  Bruno Haible  <haible@clisp.cons.org>
20890
20891         * lib/Makefile.am (install-exec-local): On systems with glibc-2.1 or
20892         newer, don't install charset.alias.
20893         * lib/config.charset: Change the Linux/glibc rules so they become empty
20894         on glibc-2.1 or newer.
20895
20896 2000-06-02  Jim Meyering  <meyering@lucent.com>
20897
20898         * lib/mountlist.c: Back out last change.  Instead, do this...
20899         * lib/mountlist.c (read_filesystem_list) [MOUNTED_VMOUNT]: Set the me_dummy
20900         member using the same `ignore'-testing code.
20901         * lib/mountlist.h (ME_DUMMY): Add `autofs' to the list of ignored
20902         fs_type strings.
20903         From Mark D. Roth.
20904
20905 2000-05-29  Jim Meyering  <meyering@lucent.com>
20906
20907         * lib/mountlist.c (read_filesystem_list) [MOUNTED_VMOUNT]: Ignore mounts
20908         with the `ignore' attribute.  Based on a patch from Mark D. Roth.
20909
20910 2000-05-28  Jim Meyering  <meyering@lucent.com>
20911
20912         * m4/jm-macros.m4 (AC_FUNC_LSTAT_FOLLOWS_SLASHED_SYMLINK): Rename from
20913         jm_FUNC_LSTAT_FOLLOWS_SLASHED_SYMLINK.
20914         * m4/stat.m4: Likewise.
20915         * m4/lstat.m4: Likewise.
20916         * m4/lstat-slash.m4: Remove file (absorbed into autoconf).
20917
20918         * m4/jm-macros.m4 (AC_FUNC_STRERROR_R): Rename from jm_FUNC_STRERROR_R.
20919         * m4/strerror_r.m4: Remove file (absorbed into autoconf).
20920
20921 2000-05-26  Jim Meyering  <meyering@lucent.com>
20922
20923         * m4/uptime.m4: Use `$cross_compiling', not `$ac_cv_prog_cc_cross'.
20924
20925 2000-05-24  Jim Meyering  <meyering@lucent.com>
20926
20927         * m4/prereq.m4: Use []-quoted list in AC_CHECK_MEMBERS, now that
20928         autoconf requires that.
20929         * m4/lib-check.m4: Likewise.
20930         * m4/jm-macros.m4: Likewise.
20931         * m4/strftime.m4: Likewise.
20932
20933         * m4/check-decl.m4 (jm_CHECK_DECLS): Use []-quoted list in AC_CHECK_DECLS,
20934         now that autoconf requires that.
20935
20936 2000-05-22  Jim Meyering  <meyering@lucent.com>
20937
20938         * m4/stat.m4: Require jm_FUNC_LSTAT_FOLLOWS_SLASHED_SYMLINK.
20939         * m4/lstat.m4: Likewise.
20940
20941 2000-05-22  Jim Meyering  <meyering@lucent.com>
20942
20943         * lib/makepath.c: Remove old, now-unnecessary `#ifdef __MSDOS__' block.
20944
20945 2000-05-20  Jim Meyering  <meyering@lucent.com>
20946
20947         * m4/prereq.m4 (jm_PREREQ_HUMAN): New macro.
20948         (jm_PREREQ): Use it.
20949
20950 2000-05-18  Jim Meyering  <meyering@lucent.com>
20951
20952         * lib/hash.c (hash_rehash): Fix a nasty bug: copy the free entry list
20953         back, too, since it may have been modified by allocate_entry.
20954         (hash_delete): Rewrite to use neither the assignment operator
20955         nor the comma operator in an if-expression.
20956
20957 2000-05-15  Paul Eggert  <eggert@twinsun.com>
20958
20959         * lib/closeout.c:
20960         <sys/stat.h>, <sys/types.h>, <unistd.h>, (STDOUT_FILENO):
20961         Remove; no longer needed.
20962         "quotearg.h": Add include.
20963         (file_name): Do not bother to explicitly initialize to NULL; it's less
20964         efficient on some hosts.
20965         (close_stdout_status): Remove test as to whether stdout was already
20966         closed; it breaks for the case "echo x | sort >&-".
20967         Quote file name colons.
20968         Do not assume that _("write error") lacks format strings.
20969
20970 2000-05-15  Jim Meyering  <meyering@lucent.com>
20971
20972         * lib/version-etc.c (version_etc_copyright): Update the copyright string
20973         used in all --version output.
20974
20975 2000-05-14  Jim Meyering  <meyering@lucent.com>
20976
20977         * lib/closeout.c (close_stdout_set_file_name): New function.
20978         (close_stdout_status): Use new file-scoped global.
20979         Return right away if fstat says the stdout file descriptor is invalid.
20980         * lib/closeout.h (close_stdout_set_file_name): Declare.
20981
20982 2000-05-10  Jim Meyering  <meyering@lucent.com>
20983
20984         * lib/closeout.c [default_exit_status]: New file-scoped variable.
20985         (close_stdout_set_status): New function.
20986         * lib/closeout.h (close_stdout_set_status): Declare.
20987
20988 2000-05-09  Jim Meyering  <meyering@lucent.com>
20989
20990         * m4/gettext.m4: Rename this...
20991         * m4/libintl.m4: ...to this.
20992
20993 2000-05-08  Jim Meyering  <meyering@lucent.com>
20994
20995         * lib/long-options.c: Don't include closeout.h.
20996         (parse_long_options): Don't call close_stdout for --version.
20997
20998 2000-05-06  Paul Eggert  <eggert@twinsun.com>
20999
21000         * m4/largefile.m4 (AC_SYS_LARGEFILE): Define _XOPEN_SOURCE to
21001         be 500, instead of _GNU_SOURCE to be 1, to work around glibc
21002         2.1.3 bug.  This avoids a clash when files like regex.c define
21003         _GNU_SOURCE.
21004
21005 2000-05-06  Jim Meyering  <meyering@lucent.com>
21006
21007         * m4/jm-macros.m4 (AC_REPLACE_FUNCS): Add atexit.
21008         (AC_REPLACE_FUNCS): Add strnlen.
21009
21010         * m4/rmdir-errno.m4 (fetish_FUNC_RMDIR_NOTEMPTY): New macro and file.
21011         * m4/jm-macros.m4: Require fetish_FUNC_RMDIR_NOTEMPTY.
21012
21013         * m4/nanosleep.m4 (jm_FUNC_NANOSLEEP): Save and restore LIBS around
21014         AC_SEARCH_LIBS call for nanosleep.
21015         (LIB_NANOSLEEP): Set and AC_SUBST.
21016
21017 2000-05-06  Jim Meyering  <meyering@lucent.com>
21018
21019         * lib/strnlen.c: Undefine __strnlen and strnlen.
21020         [!weak_alias]: Define __strnlen to strnlen.
21021
21022         * lib/atexit.c: New file, from libiberty.
21023
21024 2000-05-06  Jim Meyering  <meyering@lucent.com>
21025
21026         * lib/closeout.c (close_stdout_status): Also check for errors on the
21027         stderr stream.
21028
21029 2000-05-05  Jim Meyering  <meyering@lucent.com>
21030
21031         * m4/jm-macros.m4 (jm_MACROS): Save and restore LIBS around AC_SEARCH_LIBS
21032         call for clock_gettime.
21033         (LIB_CLOCK_GETTIME): Set and AC_SUBST.
21034
21035         * m4/search-libs.m4: Update from autoconf.
21036
21037         su doesn't work on Solaris 2.6.
21038         * m4/lib-check.m4: When checking for struct spwd.sp_pwdp, also include
21039         <shadow.h>.  Reported by Dragos Harabor.
21040
21041 2000-05-05  Bruno Haible  <haible@clisp.cons.org>
21042
21043         * lib/localcharset.c (get_charset_aliases): Use malloc, realloc and memcpy
21044         instead of xmalloc, xrealloc, path_concat.
21045         (locale_charset): Treat empty environment variables as absent.
21046         (DIRECTORY_SEPARATOR, ISSLASH): New macros.
21047
21048 2000-05-04  Jim Meyering  <meyering@lucent.com>
21049
21050         * lib/getopt.c: Update from glibc.
21051         * lib/obstack.c: Likewise.
21052         * lib/obstack.h: Likewise.
21053         * lib/regex.c: Likewise.  NB: K&R compiler support is dropped for this file
21054
21055         * lib/regex.h: Likewise.
21056         * lib/strndup.c: Likewise.
21057         * lib/strnlen.c: New file, from glibc.
21058
21059 2000-05-03  Jim Meyering  <meyering@lucent.com>
21060
21061         * m4/check-decl.m4 (AC_CHECK_DECLS): Add strndup.
21062
21063 2000-05-02  Paul Eggert  <eggert@twinsun.com>
21064
21065         * m4/largefile.m4 (AC_SYS_LARGEFILE): Define _GNU_SOURCE if
21066         this is needed to make ftello visible (e.g. glibc 2.1.3).  Use
21067         compile-time test, rather than inspecting host and OS, to
21068         decide whether to define _LARGEFILE_SOURCE.
21069
21070 2000-05-01  Jim Meyering  <meyering@lucent.com>
21071
21072         * m4/fsusage.m4: Use AC_MSG_CHECKING instead of obsolete AC_CHECKING.
21073
21074         * m4/ls-mntd-fs.m4 (jm_LIST_MOUNTED_FILESYSTEMS): Add BeOS support.
21075         Based on a patch from Bruno Haible.
21076
21077 2000-05-01  Jim Meyering  <meyering@lucent.com>
21078
21079         * lib/full-write.c (full_write): Remove `FIXME' part of comment.
21080
21081 2000-04-29  Jim Meyering  <meyering@lucent.com>
21082
21083         * lib/path-concat.c: Declare strdup only if it's not defined.
21084         * lib/canon-host.c: Likewise.
21085
21086 2000-04-28  Jim Meyering  <meyering@lucent.com>
21087
21088         * lib/rpmatch.c [HAVE_LIMITS_H]: Include limits.h before regex.h to avoid
21089         redefinition warning on some systems (HPUX).  Otherwise, regex.h is
21090         included first, then limits.h is included by locale.h by libintl.h.
21091         From John David Anglin.
21092
21093 2000-04-25  Jim Meyering  <meyering@lucent.com>
21094
21095         * lib/makepath.c (S_IRWXUGO): Define.
21096         (make_path): Always perform explicit chmod if MODE specifies any
21097         of the `special' permission bits.  Prompted by a bug report against
21098         install from Mate Wierdl and Joost van Baal.
21099
21100 2000-04-18  Jim Meyering  <meyering@lucent.com>
21101
21102         * m4/prereq.m4 (jm_PREREQ_GETPAGESIZE): New macro.
21103         (jm_PREREQ): Use it.
21104
21105 2000-04-18  Jim Meyering  <meyering@lucent.com>
21106
21107         * lib/README: New file.
21108
21109         * lib/getpagesize.h [!getpagesize && HAVE_OS_H && B_PAGE_SIZE]: Define
21110         getpagesize.  For BeOS.  Based on a patch from Bruno Haible.
21111
21112 2000-04-17  Jim Meyering  <meyering@lucent.com>
21113
21114         Get it right :-)
21115         * m4/jm-macros.m4 (jm_CHECK_ALL_TYPES) [_GNU_SOURCE]: Emit the
21116         actual #define via AH_VERBATIM.  Don't need separate AC_DEFINE.
21117         Suggestion from Akim Demaille.
21118
21119 2000-04-17  Jim Meyering  <meyering@lucent.com>
21120
21121         * lib/strftime.c (my_strftime) [strftime]: Declare strftime here, since
21122         the definition of it to rpl_strftime also defined-away the system's
21123         declaration.
21124
21125 2000-04-15  Jim Meyering  <meyering@lucent.com>
21126
21127         Use `C' to denote so-called `contiguous' files, the same way
21128         that tar does.
21129         * lib/filemode.c (S_ISCTG) [!S_ISCTG && S_IFCTG]: Define.
21130         (ftypelet): Use S_ISCTG.
21131         From Michael Deutschmann.
21132
21133 2000-04-14  Jim Meyering  <meyering@lucent.com>
21134
21135         * m4/jm-macros.m4 (jm_CHECK_ALL_TYPES) [_GNU_SOURCE]: Use the one-arg form
21136         of AC_DEFINE.  Otherwise, the #ifndef in AH_VERBATIM gets clobbered.
21137
21138 2000-04-14  Jim Meyering  <meyering@lucent.com>
21139
21140         * lib/strftime.c (my_strftime) [#ifdef strftime]: Declare strftime.
21141
21142 2000-04-13  Jim Meyering  <meyering@lucent.com>
21143
21144         * m4/jm-macros.m4 (jm_CHECK_ALL_TYPES) [_GNU_SOURCE]: Use new AH_VERBATIM
21145         to insert required #ifndef into config.h.in.
21146         Suggestion from Akim Demaille.
21147
21148 2000-04-12  Jim Meyering  <meyering@lucent.com>
21149
21150         * m4/getloadavg.m4 (AM_FUNC_GETLOADAVG): Use AC_CHECK_HEADERS, not
21151         `AC_CHECK_HEADER' to check for locale.h.  Thanks to a report from
21152         Christian Krackowizer.
21153
21154         More code moved from ../configure.in into (jm_CHECK_ALL_TYPES).
21155         * m4/jm-macros.m4 (_GNU_SOURCE): Define.
21156         (AC_SYS_LARGEFILE): Require.
21157         (AM_C_PROTOTYPES): Require.
21158
21159 2000-04-08  Jim Meyering  <meyering@lucent.com>
21160
21161         * lib/Makefile.am (charset.alias): Use t-$@, not $@-t so the DOS 8.3
21162         names don't conflict.  Reported by Eli Zaretskii.
21163
21164 2000-04-07  Jim Meyering  <meyering@lucent.com>
21165
21166         * lib/putenv.c: Move inclusion of errno.h so it follows that of sys/types.h,
21167         to work around system header problems on AIX 3.2.5.  From Bruno Haible.
21168
21169 2000-04-07  Bruno Haible  <haible@clisp.cons.org>
21170
21171         * lib/unicodeio.c (print_unicode_char): Avoid triggering Solaris iconv
21172         bug.  Deal with the different error behavior of Irix iconv.
21173
21174 2000-04-05  Paul Eggert  <eggert@twinsun.com>
21175
21176         * m4/largefile.m4 (AC_SYS_LARGEFILE_FLAGS): Don't use -n32 on
21177         IRIX if the installer said otherwise.
21178
21179 2000-04-05  Jim Meyering  <meyering@lucent.com>
21180
21181         Portability tweaks required for ultrix4.3.
21182         * m4/check-decl.m4 [!HAVE_UTMPX_H] (headers): Include <utmp.h>.
21183         (jm_CHECK_DECLS): Add getutent to the list of functions.
21184         (_jm_DECL_HEADERS): Add utmpx.h.
21185         From John David Anglin.
21186
21187         * m4/strftime.m4: Back out the 2000-04-02 change.
21188         Instead of that change, simply undefine putenv in the test program.
21189
21190 2000-04-05  Jim Meyering  <meyering@lucent.com>
21191
21192         Portability tweaks required for ultrix4.3.
21193         * lib/readutmp.h [HAVE_UTMPX_H && !HAVE_DECL_GETUTENT]: Declare getutent.
21194         * lib/readutmp.c: Include sys/types.h before sys/stat.h.
21195         * lib/canon-host.c: Declare strdup.
21196         * lib/path-concat.c: Likewise.
21197         From John David Anglin.
21198
21199 2000-04-04  Jim Meyering  <meyering@lucent.com>
21200
21201         Be more DOS 8.3-friendly.
21202         * lib/ref-add.sin: Renamed from ref-add.sed.in.
21203         * lib/ref-del.sin: Renamed from ref-del.sed.in.
21204         * lib/Makefile.am: Reflect renaming.
21205         Reported by Eli Zaretskii.
21206
21207         Use a temporary file name that won't clash with `charset.alias'
21208         in the DOS 8.3 name space.
21209         * lib/Makefile.am (charset_tmp): Define.
21210         (install-exec-local): Use $(charset_tmp) instead of $(charset_alias)-t.
21211         (uninstall-local): Likewise.
21212         Reported by Eli Zaretskii.
21213
21214 2000-04-03  Jim Meyering  <meyering@lucent.com>
21215
21216         * m4/gettext.m4: Fix typo in comment.
21217
21218         * m4/codeset.m4 (AC_CHECK_HEADERS): Add langinfo.h (moved here from
21219         textutils/configure.in).  Suggestion from Paul Eggert.
21220         (AC_CHECK_FUNCS): Add nl_langinfo.  (also from textutils/configure.in)
21221
21222 2000-04-02  Paul Eggert  <eggert@twinsun.com>
21223
21224         * m4/strftime.m4 (jm_FUNC_GNU_STRFTIME): Set TZ environment
21225         variable in the shell rather than using putenv, which isn't
21226         portable.  This avoids the configure-time inter-test dependency
21227         on the potentially-renamed putenv function.
21228
21229 2000-03-30  Paul Eggert  <eggert@twinsun.com>
21230
21231         * m4/jm-macros.m4 (jm_CHECK_ALL_TYPES): Include <sys/stat.h>
21232         before checking struct stat.st_blksize, so that
21233         HAVE_STRUCT_STAT_ST_BLKSIZE is defined correctly.
21234
21235 2000-03-29  Paul Eggert  <eggert@twinsun.com>
21236
21237         * m4/strftime.m4 (_jm_STRFTIME_PREREQS): Check for strftime,
21238         since strftime.c uses HAVE_STRFTIME to decide whether to use
21239         the underlying strftime.
21240
21241 2000-03-29  Paul Eggert  <eggert@twinsun.com>
21242
21243         * lib/time/strftime.c (my_strftime): Make sure we call the system
21244         strftime, not ourselves, when invoking the underlying strftime.
21245
21246 2000-03-24  Jim Meyering  <meyering@lucent.com>
21247
21248         * lib/Makefile.am (EXTRA_DIST): Add ref-add.sed.in and ref-del.sed.in.
21249         (charset_alias): Define.
21250         (install-exec-local): Factor out common code.
21251         (uninstall-local): Split lines longer than 80.
21252         (ref-add.sed, ref-del.sed): Remove rules... (do the following instead)
21253         (SUFFIXES): Define.
21254         (.sed.in.sed): New rule.  Don't redirect directly to $@.
21255         (CLEANFILES): Add ref-add.sed and ref-del.sed.
21256
21257 2000-03-19  Bruno Haible  <haible@clisp.cons.org>
21258
21259         * lib/config.charset: Output a line containing "Packages using this file".
21260         * lib/ref-add.sed.in, ref-del.sed.in: New files.
21261         * lib/Makefile.am (install-exec-local, uninstall-local, ref-add.sed,
21262         ref-del.sed): New rules.
21263
21264 2000-03-17  Jim Meyering  <meyering@lucent.com>
21265
21266         * lib/unicodeio.c (<string.h>): Include only #if HAVE_STRING_H.
21267         Otherwise, include <strings.h>
21268
21269 2000-03-17  Bruno Haible  <haible@clisp.cons.org>
21270
21271         * lib/unicodeio.c (utf8_wctomb): New function.
21272         (print_unicode_char): Pass the Unicode character to iconv in UTF-8
21273         format instead of in UCS-4 with platform dependent endianness.
21274
21275 2000-03-10  Jim Meyering  <meyering@lucent.com>
21276
21277         * m4/lib-check.m4: Look for getspnam in -lgen, too.
21278         From Marco Franzen.
21279
21280 2000-03-07  Paul Eggert  <eggert@twinsun.com>
21281
21282         * lib/savedir.c (savedir): Work even if directory size is
21283         negative; this can happen with some screwy NFS configurations.
21284
21285 2000-03-06  Jim Meyering  <meyering@lucent.com>
21286
21287         * lib/localcharset.c (get_charset_aliases): Don't try to free file_name
21288         if it's NULL (because we ran out of memory).  From Bruno Haible.
21289
21290 2000-03-05  Jim Meyering  <meyering@lucent.com>
21291
21292         * lib/localcharset.c ("path-concat.h"): Include.
21293         (get_charset_aliases): Use path_concat instead of ANSI string
21294         concatenation.
21295
21296         * lib/unicodeio.h (PARAMS): Define.
21297         Use it to guard prototype.
21298
21299 2000-03-04  Jim Meyering  <meyering@lucent.com>
21300
21301         * m4/jm-macros.m4 (jm_CHECK_ALL_TYPES): Require AC_C_VOLATILE,
21302         for lib/localcharset.c.
21303
21304 2000-03-04  Jim Meyering  <meyering@lucent.com>
21305
21306         * lib/Makefile.am (install-exec-local): Create $(libdir) before installing
21307         into it.
21308         (uninstall-local): Uncomment this rule so `make distcheck' works
21309         once again.
21310
21311         * lib/unicodeio.c (<errno.h>): Include it.
21312         (errno): Declare if not defined.
21313
21314         * lib/localcharset.c: Add Bruno's comment justifying use of volatile.
21315
21316         * lib/config.charset: New version, incorporating remarks from a linux
21317         i18n mailing list.  From Bruno Haible.
21318
21319 2000-03-04  Bruno Haible  <haible@clisp.cons.org>
21320
21321         * m4/codeset.m4: New file.
21322         * m4/iconv.m4: New file.
21323         * m4/jm-macros.m4 (jm_MACROS): Call jm_LANGINFO_CODESET and jm_ICONV.
21324
21325 2000-03-03  Jim Meyering  <meyering@lucent.com>
21326
21327         * m4/regex.m4: Make sure re_compile_pattern accepts patterns like `{1'.
21328
21329 2000-03-02  Jim Meyering  <meyering@lucent.com>
21330
21331         * m4/timespec.m4: Require AC_HEADER_TIME before the cache check so
21332         the messages come out on separate lines.
21333
21334         * m4/jm-glibc-io.m4 (jm_FUNC_GLIBC_UNLOCKED_IO): Use AC_CHECK_DECLS,
21335         rather than jm_CHECK_DECLARATIONS.
21336         * m4/decl.m4: Remove now-unused file.
21337
21338         * m4/check-decl.m4 (AC_CHECK_DECLS): Add getlogin, ttyname, and geteuid.
21339
21340 2000-03-02  Jim Meyering  <meyering@lucent.com>
21341
21342         * lib/Makefile.am (EXTRA_DIST): Add config.charset.
21343
21344 2000-03-01  Jim Meyering  <meyering@lucent.com>
21345
21346         * lib/localcharset.c: Guard some #includes with `#if HAVE_...'.
21347         * lib/unicodeio.c: Likewise.
21348
21349 2000-03-01  Bruno Haible  <haible@clisp.cons.org>
21350
21351         * lib/config.charset: New file.
21352         * lib/localcharset.c: New file.
21353         * lib/unicodeio.h, unicodeio.c: New files.
21354         * lib/Makefile.am (DEFS): Add -DLIBDIR=...
21355         (libfetish_a_SOURCES): Add localcharset.c and unicodeio.c.
21356         (noinst_HEADERS): Add unicodeio.h.
21357         (all-local, install-exec-local, charset.alias): New targets.
21358
21359 2000-02-28  Paul Eggert  <eggert@twinsun.com>
21360
21361         * lib/quotearg.c (ALERT_CHAR): New macro.
21362         (quotearg_buffer_restyled): Use it.
21363
21364 2000-02-27  Jim Meyering  <meyering@lucent.com>
21365
21366         * m4/check-decl.m4: Add getenv to the list.
21367
21368 2000-02-27  Jim Meyering  <meyering@lucent.com>
21369
21370         * lib/strtoumax.c: Fix typo in decl of strtoul: s/long long/long/.
21371         Guard declaration of strtoull also with `&& HAVE_UNSIGNED_LONG_LONG'.
21372
21373         * lib/backupfile.c: Guard inclusion of stdlib.h with `#if HAVE_STDLIB_H',
21374         not `#if STDC_HEADERS'.
21375         Declare malloc if needed.
21376
21377         * lib/backupfile.c: Use `#if !HAVE_DECL...' instead of `#ifndef HAVE_DECL..'
21378         now that autoconf always defines the HAVE_DECL_ symbols.
21379         * lib/human.c: Likewise.
21380         * lib/same.c: Likewise.
21381         * lib/strtoumax.c: Likewise.
21382
21383         * lib/backupfile.c: Arrange for cpp to fail if the configure-time
21384         declaration check was not run.
21385         * lib/hash.c: Likewise.
21386         * lib/human.c: Likewise.
21387         * lib/same.c: Likewise.
21388         * lib/strtoumax.c: Likewise.
21389
21390         * lib/userspec.c (parse_user_spec): If there is no `:' but there is a `.',
21391         then first look up the entire `.'-containing string as a login name.
21392
21393 2000-02-23  Jim Meyering  <meyering@lucent.com>
21394
21395         * m4/check-decl.m4: Now that we have the new AC_CHECK_DECLS, use it
21396         in place of my hack.
21397
21398 2000-02-18  Paul Eggert  <eggert@twinsun.com>
21399
21400         * lib/getdate.y: Handle two-digit years with leading zeros correctly.
21401         (textint): New typedef.
21402         (parser_control): Member year changed from int to textint.
21403         All uses changed.
21404         (YYSTYPE): Removed; replaced by %union with int and textint members.
21405         (tDAY, tDAY_UNIT, tDAYZONE, tHOUR_UNIT, tID, tLOCAL_ZONE, tMERIDIAN,
21406         tMINUTE_UNIT, tMONTH, tMONTH_UNIT tSEC_UNIT, tSNUMBER, tUNUMBER,
21407         tYEAR_UNIT, tZONE, o_merid): Now of type <intval>.
21408         (tSNUMBER, tUNUMBER): Now of type <textintval>.
21409         (date, number, to_year): Use width of number in digits, not its value,
21410         to determine whether it's a 2-digit year, or a 2-digit time.
21411         (yylex): Store number of digits of numeric tokens.
21412         Reported by John Kendall.
21413
21414         (parser_control): Changed from struct parser_control to typedef (for
21415         consistency).  All uses changed.
21416
21417         (tID): Removed; not used.
21418         (yylex): Return '?' for unknown identifiers, rather than (unused) tID.
21419
21420 2000-02-14  Paul Eggert  <eggert@twinsun.com>
21421
21422         * lib/getpagesize.h (getpagesize): Port to VMS for Alpha;
21423         adapted from changes to grep getpagesize.h by Martin P.J. Zinser.
21424
21425 2000-02-12  Jim Meyering  <meyering@lucent.com>
21426
21427         * lib/userspec.c (ISDIGIT): Define it.
21428         (isdigit): Remove definition.
21429         (is_number): Use ISDIGIT, not isdigit.
21430         <libintl.h>: Include.
21431         (_ and N_): Define.
21432         (parse_user_spec): Mark translatable strings.
21433
21434 2000-02-10  Jim Meyering  <meyering@lucent.com>
21435
21436         With these changes, nanosleep.[ch] are finally enough like the other
21437         lib/* replacement files to compile on a few more losing systems.
21438
21439         * lib/nanosleep.h: Don't include config.h.
21440         Remove prototype from declaration of nanosleep.
21441         (PARAMS): Remove now-unneeded definition.
21442         * lib/nanosleep.c: #undef nanosleep.
21443         (rpl_nanosleep): Rename from nanosleep.
21444
21445 2000-02-10  Jim Meyering  <meyering@lucent.com>
21446
21447         * m4/nanosleep.m4 (jm_FUNC_NANOSLEEP): Rename replacement function from
21448         gnu_nanosleep to rpl_nanosleep.
21449
21450 2000-02-09  Jim Meyering  <meyering@lucent.com>
21451
21452         * m4/lib-check.m4 (jm_LIB_CHECK): Fix typo: check for sp_pwdp in
21453         struct spwd, rather than in struct passwd.  Reported by Gaël Quéri.
21454
21455 2000-02-08  Akim Demaille  <akim@epita.fr>
21456
21457         * m4/largefile.m4 (AC_SYS_LARGEFILE_FLAGS): Quote square brackets with
21458         `[' and `]' and remove uses of `changequote'.
21459         (AC_SYS_LARGEFILE_MACRO_VALUE): Likewise.
21460         (AC_SYS_LARGEFILE): Likewise.
21461         * m4/gettext.m4 (AM_GNU_GETTEXT): Likewise.
21462         * m4/strftime.m4 (jm_FUNC_GNU_STRFTIME): Remove now-unnecessary use
21463         of changequote.
21464         * m4/regex.m4 (jm_INCLUDED_REGEX): Likewise.
21465         * m4/readdir.m4 (jm_FUNC_READDIR): Likewise
21466         * m4/memcmp.m4 (jm_AC_FUNC_MEMCMP): Likewise, and add `int' for main.
21467         * m4/getloadavg.m4 (AM_FUNC_GETLOADAVG): Likewise.
21468
21469 2000-02-05  Jim Meyering  <meyering@lucent.com>
21470
21471         * m4/jm-macros.m4 (jm_CHECK_ALL_TYPES): Require most macros.
21472         Remove explicit use of AC_HEADER_TIME.  It is required by
21473         jm_CHECK_TYPE_STRUCT_TIMESPEC.  Using AC_HEADER_TIME and
21474         `AC_REQUIRE'ing jm_CHECK_TYPE_STRUCT_TIMESPEC provoked a but
21475         in autoconf whereby the expansion of the latter ended up preceding
21476         the expansion of its prerequisite, AC_HEADER_TIME.
21477         Reported by Volker Borchert.
21478
21479 2000-02-03  Jim Meyering  <meyering@lucent.com>
21480
21481         * m4/prereq.m4 (jm_PREREQ_READUTMP): Check for utmpxname.
21482
21483 2000-02-03  Jim Meyering  <meyering@lucent.com>
21484
21485         * lib/readutmp.c (read_utmp): Guard with `#ifdef UTMP_NAME_FUNCTION',
21486         rather than with `#if HAVE_UTMPNAME'.
21487
21488 2000-02-02  Jim Meyering  <meyering@lucent.com>
21489
21490         * m4/prereq.m4 (jm_PREREQ_ADDEXT): Fix typo that resulted in no
21491         definition of HAVE_PATHCONF: s/AC_CHECK_FUNC/AC_CHECK_FUNCS/.
21492         Reported by Eli Zaretskii.
21493
21494 2000-02-01  Jim Meyering  <meyering@lucent.com>
21495
21496         * lib/readutmp.h (UT_USER): Add parens.  From Andreas Schwab.
21497
21498 2000-01-31  Jim Meyering  <meyering@lucent.com>
21499
21500         * m4/check-decl.m4 (jm_CHECK_DECLS): Add nanosleep to the list of
21501         functions.  Add the time.h and sys/time.h headers along with the
21502         AC_REQUIRE'ment of AC_HEADER_TIME.
21503
21504 2000-01-31  Jim Meyering  <meyering@lucent.com>
21505
21506         * lib/nanosleep.h (nanosleep): Guard declaration with
21507         `#if ! HAVE_DECL_NANOSLEEP'.
21508         Without this, OFS gets a redeclaration error for rpl_nanosleep, due to
21509         the declaration in that vendor's sys/timers.h.
21510         Reported by Christian Krackowizer.
21511
21512         * lib/quotearg.c (ISASCII): Add #undef and move definition to follow
21513         inclusion of wctype.h to work around Solaris 2.6 namespace pollution.
21514         (ISPRINT): Likewise.
21515         Reported by Tom Tromey.
21516
21517 2000-01-30  Jim Meyering  <meyering@lucent.com>
21518
21519         * m4/lib-check.m4: Clean up some kludgy old shadow password tests.
21520
21521         * m4/prereq.m4 (utmp_includes): Define.
21522         Check for ut_user and ut_name members in both struct utmpx
21523         and struct utmp.
21524
21525 2000-01-30  Jim Meyering  <meyering@lucent.com>
21526
21527         * lib/readutmp.c (extract_trimmed_name): Use UT_USER instead of hard-coding
21528         uses of ->ut_name.  The latter doesn't work with new Linux header files
21529         where only utmpx.ut_user is declared.
21530
21531         * lib/readutmp.h (UT_USER): Define.
21532
21533 2000-01-29  Jim Meyering  <meyering@lucent.com>
21534
21535         * m4/lib-check.m4: New file containing library-related checks from
21536         fileutils and sh-utils (textutils had none).
21537
21538 2000-01-28  Jim Meyering  <meyering@lucent.com>
21539
21540         * m4/perl.m4: Change format of warning message to look more like that
21541         from the missing script.  Suggestion from François Pinard.
21542
21543 2000-01-25  Jim Meyering  <meyering@lucent.com>
21544
21545         * m4/timespec.m4: Require AC_HEADER_TIME, and include sys/time.h as well
21546         as time.h in the compile check.
21547         * m4/nanosleep.m4: Require AC_HEADER_TIME rather than simply using it.
21548         Fix typo in cross-compiling case: s/yes/no/.
21549
21550 2000-01-23  Jim Meyering  <meyering@lucent.com>
21551
21552         * m4/jm-macros.m4: Move df-related tests here from fileutils/configure.in
21553
21554         * m4/ls-mntd-fs.m4: s/list_mounted_fs/ac_list_mounted_fs/
21555         (jm_LIST_MOUNTED_FILESYSTEMS): Take two parameters.
21556
21557         * m4/fsusage.m4: New file.  Extracted from fileutils/configure.in.
21558         s/space/ac_fsusage_space/.
21559         (jm_FILE_SYSTEM_USAGE): Take two parameters.
21560
21561         * m4/ftruncate.m4: New file (derived from part of fileutils/configure.in).
21562         * m4/jm-macros.m4 (jm_FUNC_FTRUNCATE): AC_REQUIRE it.
21563         (jm_CHECK_ALL_TYPES): Require AC_HEADER_MAJOR and AC_HEADER_DIRENT.
21564
21565         * m4/jm-macros.m4 (OPTIONAL_BIN_PROGS, OPTIONAL_BIN_ZCRIPTS, MAN):
21566         AC_SUBST these here, rather than just in sh-util/configure.in, so
21567         that the now-shared-by-fileutils-and-textutils lib/Makefile.am are
21568         all the same.
21569         (AM_FUNC_OBSTACK): Add (from fileutils/configure.in).
21570         (AC_CHECK_FUNCS): Merge all checks from fileutils, textutils, sh-utils.
21571         (AM_FUNC_STRTOD): Added (from textutils', sh-utils' configure.in).
21572         (AC_SUBST(POW_LIBM)): Likewise.
21573         (AC_SUBST(DF_PROG)): Moved from fileutils/configure.in.
21574
21575 2000-01-23  Jim Meyering  <meyering@lucent.com>
21576
21577         * lib/Makefile.am (libfetish_a_SOURCES): Remove explicit mention of
21578         obstack.c.
21579
21580 2000-01-22  Jim Meyering  <meyering@lucent.com>
21581
21582         * m4/jm-macros.m4: Call AC_PROG_CC_STDC just before AC_C_CONST.
21583
21584         * m4/prereq.m4 (jm_PREREQ_QUOTEARG): Add wctype.h.
21585
21586         * m4/jm-macros.m4 (AC_CHECK_HEADERS): Add checks from fileutils'
21587         configure.in
21588         (AC_CHECK_HEADERS): Likewise for sh-utils.
21589         (AC_CHECK_HEADERS): Likewise for textutils.
21590         Merge the three lists of headers.
21591
21592         * m4/prereq.m4 (jm_PREREQ_ADDEXT): New macro.  Parts moved here
21593         from fileutils' configure.in.
21594
21595         * m4/decl.m4: Remove kludgy `test -z $ac_...AC_CHECK_HEADERS(...)' code.
21596         Moved tests into their own function (_jm_DECL_HEADERS) in check-decl.m4.
21597
21598         * m4/check-decl.m4: Use #if rather than #ifdef.
21599         Add HAVE_DECL_STRTOUL and HAVE_DECL_STRTOULL.
21600         (jm_CHECK_DECLARATIONS): Add strtoul strtoull.
21601         (_jm_DECL_HEADERS): Define new function.
21602         (jm_CHECK_DECLARATIONS): Require it.
21603
21604 2000-01-22  Jim Meyering  <meyering@lucent.com>
21605
21606         * lib/strtoumax.c: [! HAVE_DECL_STRTOUL]: Declare strtoul.
21607         [! HAVE_DECL_STRTOULL]: Declare strtoull.
21608         Required for some AIX systems.  Reported by Christian Krackowizer.
21609         [TESTING] (main): New function.
21610
21611         1997-10-17  Eli Zaretskii  <eliz@is.elta.co.il>
21612         * lib/dirname.c (dir_name): Support for DOS-style file names with drive
21613         letters.
21614
21615         * lib/quotearg.c [HAVE_WCTYPE_H]: Include <wctype.h> for decl of iswprint.
21616
21617         * lib/strverscmp.c (ISDIGIT): Define.
21618         (strverscmp): Use ISDIGIT, not isdigit.
21619
21620 2000-01-19  Jim Meyering  <meyering@lucent.com>
21621
21622         * m4/nanosleep.m4 (jm_FUNC_NANOSLEEP): Include <sys/time.h>, too.
21623         Use AC_HEADER_TIME.  Volker Borchert reported that OpenBSD-2.3/sparc
21624         defines `struct timespec' in <sys/time.h>
21625
21626         * m4/c-bs-a.m4: Remove uses of changequote altogether.
21627         Thanks to Akim for explaining.
21628
21629 2000-01-17  Paul Eggert  <eggert@twinsun.com>
21630
21631         * lib/nanosleep.c (nanosleep):
21632         Don't use SA_INTERRUPT to decide whether to call sigaction, as
21633         POSIX.1 doesn't require SA_INTERRUPT and some systems
21634         (e.g. Solaris 7) don't define it.  Use SA_NOCLDSTOP instead;
21635         it's been part of POSIX.1 since day 1 (in 1988).
21636
21637 2000-01-17  Jim Meyering  <meyering@lucent.com>
21638
21639         * lib/interlock: Remove unused file.  Reported by François Pinard.
21640
21641 2000-01-16  Paul Eggert  <eggert@twinsun.com>
21642
21643         * lib/quotearg.c (quotearg_buffer_restyled): Do not quote
21644         alert, backslash, formfeed, and vertical tab unnecessarily in
21645         shell quoting style.
21646
21647 2000-01-16  Jim Meyering  <meyering@lucent.com>
21648
21649         * m4/jm-macros.m4: Require jm_FUNC_GROUP_MEMBER, jm_FUNC_PUTENV,
21650         AM_FUNC_ERROR_AT_LINE, jm_FUNC_GNU_STRFTIME, jm_FUNC_MKTIME,
21651         jm_FUNC_GETGROUPS AC_FUNC_VPRINTF, AC_FUNC_ALLOCA,
21652         AM_FUNC_GETLOADAVG, and jm_SYS_PROC_UPTIME.
21653
21654 2000-01-16  Jim Meyering  <meyering@lucent.com>
21655
21656         * m4/c-bs-a.m4: Use `changequote(<<,>>)', rather than `changequote(, )'
21657         because the latter didn't work.
21658
21659 2000-01-15  Jim Meyering  <meyering@lucent.com>
21660
21661         * m4/jm-macros.m4 (AC_REPLACE_FUNCS): Add gethostname and getusershell.
21662         (AC_REPLACE_FUNCS): Add memcpy and memset.
21663         Add these, too: stime strcspn stpcpy strstr strtol strtoul.
21664         Add strpbrk.
21665         Add these: euidaccess memcmp mkdir rmdir rpmatch strndup strverscmp.
21666
21667 2000-01-12  Jim Meyering  <meyering@lucent.com>
21668
21669         * m4/prereq.m4 (jm_PREREQ_CANON_HOST): New macro.
21670         (jm_PREREQ): Use it.
21671         (jm_PREREQ_READUTMP): New macro.
21672         (jm_PREREQ): Use it.
21673
21674 2000-01-11  Paul Eggert  <eggert@twinsun.com>
21675
21676         Quote multibyte characters correctly.
21677         * m4/c-bs-a.m4: New file.
21678         * m4/prereq.m4 (jm_PREREQ_QUOTEARG): New macro.
21679         (jm_PREREQ): Use it.
21680
21681 2000-01-11  Paul Eggert  <eggert@twinsun.com>
21682
21683         * m4/uintmax_t.m4: Port to autoconf 2.13.
21684
21685 2000-01-08  Jim Meyering  <meyering@ascend.com>
21686
21687         * m4/strerror_r.m4 (jm_FUNC_STRERROR_R): New file/macro.
21688         * m4/jm-macros.m4 (jm_FUNC_STRERROR_R): Require it.
21689
21690 2000-01-04  Jim Meyering  <meyering@ascend.com>
21691
21692         * m4/d-type.m4 (jm_CHECK_TYPE_STRUCT_DIRENT_D_TYPE): Rename from
21693         jm_STRUCT_DIRENT_D_TYPE.
21694         * m4/d-ino.m4 (jm_CHECK_TYPE_STRUCT_DIRENT_D_INO): Rename from
21695         jm_STRUCT_DIRENT_D_INO.
21696         * m4/utimbuf.m4 (jm_CHECK_TYPE_STRUCT_UTIMBUF): Rename from
21697         jm_STRUCT_UTIMBUF.
21698         * m4/jm-macros.m4: Reflect s/jm_STRUCT_/jm_CHECK_TYPE_STRUCT_/ renamings.
21699         * m4/utime.m4: Likewise.
21700
21701         * m4/timespec.m4 (jm_CHECK_TYPE_STRUCT_TIMESPEC): New file, macro.
21702         * m4/jm-macros.m4 (jm_CHECK_TYPE_STRUCT_TIMESPEC): Require it.
21703
21704 2000-01-03  Paul Eggert  <eggert@twinsun.com>
21705
21706         * m4/nanosleep.m4 (jm_FUNC_NANOSLEEP): Search for nanosleep in -lrt
21707         (for Solaris 7) and in -lposix4 (for Solaris 2.5.1).
21708
21709 2000-01-02  Jim Meyering  <meyering@ascend.com>
21710
21711         * m4/search-libs.m4: Escape `$' in $3 of dnl comment.  I no longer
21712         remember if this is necessary.
21713
21714 1999-12-26  Jim Meyering  <meyering@ascend.com>
21715
21716         * m4/jm-macros.m4: Use it here.
21717         * m4/nanosleep.m4 (jm_FUNC_NANOSLEEP): New file/macro.
21718
21719 1999-12-23  Jim Meyering  <meyering@ascend.com>
21720
21721         * m4/jm-macros.m4: Check for clock_gettime (moved from
21722         fileutils/configure.in)
21723         Check for gettimeofday.
21724
21725 1999-12-20  Jim Meyering  <meyering@ascend.com>
21726
21727         * m4/strftime.m4: Remove kludge, now that I'm using the fixed
21728         autoconf-2.14a-1999-12-20.
21729
21730 1999-12-19  Jim Meyering  <meyering@ascend.com>
21731
21732         * m4/lstat-slash.m4: New file.
21733         * m4/jm-macros.m4: Use the new macro:
21734         jm_FUNC_LSTAT_FOLLOWS_SLASHED_SYMLINK.
21735
21736 1999-12-07  Jim Meyering  <meyering@ascend.com>
21737
21738         * m4/perl.m4: Require that File::Compare be available, too.
21739         Too many systems seem to lack it.
21740
21741         * m4/strftime.m4: Add checks for most of the cpp macros tested in
21742         GNU's strftime.c.  Prompted by a patch from Paul Eggert.
21743
21744 1999-11-18  Paul Eggert  <eggert@twinsun.com>
21745
21746         * m4/largefile.m4 (AC_SYS_LARGEFILE_FLAGS): Work around a
21747         problem with the QNX 4.25 shell, which doesn't propagate exit
21748         status of failed commands inside shell assignments.
21749
21750 1999-11-17  Jim Meyering  <meyering@ascend.com>
21751
21752         * m4/gettext.m4: Use new AC_CONFIG_LINKS in place of AC_LINK_FILES.
21753
21754 1999-11-07  Jim Meyering  <meyering@ascend.com>
21755
21756         * m4/getloadavg.m4: Add `, 1, [FIXME]' to each use of AC_DEFINE.
21757
21758 1999-11-06  Jim Meyering  <meyering@ascend.com>
21759
21760         * m4/link-follow.m4 (jm_AC_FUNC_LINK_FOLLOWS_SYMLINK): New file/macro.
21761         * m4/jm-macros.m4 (jm_MACROS): Use it here.
21762
21763 1999-11-05  Jim Meyering  <meyering@ascend.com>
21764
21765         * m4/jm-macros.m4 (jm_CHECK_ALL_TYPES): Move some tests from configure.in
21766         of textutils, fileutils, and sh-utils into this one (shared between
21767         those packages) file.
21768         Use `AC_CHECK_MEMBERS((struct stat.st_blksize))' instead of deprecated
21769         AC_STRUCT_ST_BLKSIZE.
21770
21771 1999-11-03  Jim Meyering  <meyering@ascend.com>
21772
21773         * m4/ssize_t.m4: Remove file.  No longer needed since the new version of
21774         AC_CHECK_TYPE checks includes unistd.h.
21775         * m4/jm-macros.m4: Use straight `AC_CHECK_TYPE(ssize_t, int)'.
21776         Suggestion from Akim Demaille.
21777
21778 1999-10-30  Jim Meyering  <meyering@ascend.com>
21779
21780         * m4/uintmax_t.m4: Require 2.14a.  Remove backslash before backtick in
21781         m4-quoted string.
21782         * m4/ls-mntd-fs.m4: Likewise.
21783         * m4/jm-macros.m4: Likewise.  Also, use AC_TYPE_SSIZE_T instead
21784         * m4/jm-winsz1.m4: Likewise.
21785
21786         * m4/const.m4: Remove file, since the fix made it into the experimental
21787         version of autoconf.
21788         * m4/mktime.m4: Likewise.
21789
21790         * m4/check-type.m4: Remove file, now that the latest version of
21791         AC_CHECK_TYPE takes a third arg to specify additional #includes.
21792
21793         * m4/ssize_t.m4: New file, requires experimental version of autoconf.
21794         * m4/jm-macros.m4: Use new AC_TYPE_SSIZE_T instead of my hacked
21795         AC_CHECK_TYPE.
21796
21797 1999-10-04  Jim Meyering  <meyering@ascend.com>
21798
21799         * m4/jm-macros.m4: Don't require autoconf-2.14.1.
21800
21801 1999-09-22  Paul Eggert  <eggert@twinsun.com>
21802
21803         * m4/largefile.m4 (AC_SYS_LARGEFILE_FLAGS): Work around GCC
21804         2.95.1 bug with HP-UX 10.20.
21805
21806 1999-09-17  Jim Meyering  <meyering@ascend.com>
21807
21808         * m4/jm-macros.m4 (AC_REPLACE_FUNCS): Add strdup.
21809         Paul Nevai reported a link failure on a NeXT CUBE with NeXTSTEP 3.3
21810         due to missing strdup (against sh-utils-2.0).
21811
21812 1999-08-29  Jim Meyering  <meyering@ascend.com>
21813
21814         * m4/jm-macros.m4: Require jm_BISON.
21815         * m4/bison.m4: New file.
21816
21817 1999-08-17  Paul Eggert  <eggert@twinsun.com>
21818
21819         * m4/largefile.m4 (AC_SYS_LARGEFILE): Fix typo: missing comma
21820         in value for _FILE_OFFSET_BITS, which broke ports to HP-UX 10.20.
21821
21822 1999-08-05  Jim Meyering  <meyering@ascend.com>
21823
21824         * m4/getline.m4: Rename test file from conftestdata to conftest.data
21825         to avoid conflicts with `conftest' on 8+3 filesystems.
21826         Suggestion from Eli Zaretskii.
21827
21828 1999-08-04  Jim Meyering  <meyering@ascend.com>
21829
21830         * m4/jm-macros.m4: Move a 4-line block of code from the configure.in of
21831         fileutils and sh-utils (textutils's getline test was inadequate).
21832         (AM_FUNC_GETLINE): Run this test.
21833         (AC_CHECK_FUNCS): Check for getdelim.
21834         Reported by Bob Proulx.
21835
21836 1999-08-02  Jim Meyering  <meyering@ascend.com>
21837
21838         * m4/jm-macros.m4: Add a comment.
21839
21840 1999-08-01  Paul Eggert  <eggert@twinsun.com>
21841
21842         * m4/xstrtoumax.m4 (jm_AC_PREREQ_XSTRTOUMAX): Check whether
21843         <inttypes.h> defines strtoumax as a macro (and not as a
21844         function).
21845
21846 1999-08-01  Paul Eggert  <eggert@twinsun.com>
21847
21848         * m4/ulonglong.m4 (jm_AC_TYPE_UNSIGNED_LONG_LONG): Make sure
21849         that we can shift, multiply and divide unsigned long long
21850         values; Ultrix cc can't do it.
21851
21852 1999-08-01  Paul Eggert  <eggert@twinsun.com>
21853
21854         * m4/mktime.m4: New file, which is a preview of what should appear
21855         in the next public autoconf release.
21856
21857 1999-08-01  Paul Eggert  <eggert@twinsun.com>
21858
21859         * m4/lfs.m4: Remove this file.
21860         * m4/largefile.m4: New file.  It contains the old contents of
21861         lfs.m4, except that all names with prefix AC_LFS have been
21862         changed to use the prefix AC_SYS_LARGEFILE instead, to be
21863         compatible with future autoconf versions.  Also, some minor m4
21864         quoting problems have been fixed.
21865
21866 1999-08-01  Paul Eggert  <eggert@twinsun.com>
21867
21868         * m4/gettext.m4 (AM_WITH_NLS): Remove unnecessary lines.
21869         Fix typo: $nls_cv_header_intl was misspelled as $nsl_cv_header_intl.
21870         (AM_GNU_GETTEXT): Fix problem with brackets and m4 quoting,
21871         and simplify the shell code.
21872
21873 1999-08-01  Jim Meyering  <meyering@ascend.com>
21874
21875         * m4/mktime.m4 (AC_FUNC_MKTIME): Undefine to avoid syntax errors from m4.
21876
21877 1999-07-20  Jim Meyering  <meyering@ascend.com>
21878
21879         * m4/jm-macros.m4 (AC_REPLACE_FUNCS): Add memmove.
21880
21881 1999-07-15  Jim Meyering  <meyering@ascend.com>
21882
21883         * m4/jm-macros.m4 (AC_CHECK_FUNCS): Check for getpagesize.
21884
21885 1999-05-22  Jim Meyering  <meyering@ascend.com>
21886
21887         * m4/jm-macros.m4 (AC_REPLACE_FUNCS): Add memchr.
21888
21889 1999-05-20  Jim Meyering  <meyering@ascend.com>
21890
21891         * m4/search-libs.m4 [AC_SEARCH_LIBS]: Quote name in undefine.
21892         Add a colon after each `then' in case $4 is empty.
21893
21894 1999-05-16  Jim Meyering  <meyering@ascend.com>
21895
21896         * m4/search-libs.m4: New file to override autoconf's AC_SEARCH_LIBS.
21897
21898 1999-05-10  Jim Meyering  <meyering@ascend.com>
21899
21900         * m4/jm-mktime.m4: Reflect renaming: AM_FUNC_MKTIME -> AC_FUNC_MKTIME.
21901
21902         * m4/jm-macros.m4: Require 2.14.1, since we use newly-renamed
21903         AC_FUNC_MKTIME.
21904
21905 1999-05-10  Andreas Schwab  <schwab@issan.cs.uni-dortmund.de>
21906
21907         * m4/jm-mktime.m4, putenv.m4: Fix typos in config.h comments.
21908
21909 1999-05-04  Paul Eggert  <eggert@twinsun.com>
21910
21911         * m4/lfs.m4 (AC_LFS): -n32, -o32, and -n64 should be in CFLAGS,
21912         not CPPFLAGS, so that linking works correctly in IRIX.
21913
21914 1999-04-30  Paul Eggert  <eggert@twinsun.com>
21915
21916         * m4/jm-macros.m4 (AC_REPLACE_FUNCS): Add dup2.
21917
21918 1999-04-20  Paul Eggert  <eggert@twinsun.com>
21919
21920         * m4/uintmax_t.m4 (jm_AC_TYPE_UINTMAX_T): Move unsigned long
21921         long check into new jm_AC_TYPE_UNSIGNED_LONG_LONG macro.
21922         * m4/jm-macros.m4 (jm_CHECK_ALL_TYPES): Require
21923         jm_AC_TYPE_UNSIGNED_LONG_LONG.
21924         * m4/ulonglong.m4 (jm_AC_TYPE_UNSIGNED_LONG_LONG): New file/macro.
21925
21926         * m4/lfs.m4: Port to AIX and HP-UX.  Support cross-compilation.
21927
21928 1999-04-20  Jim Meyering  <meyering@ascend.com>
21929
21930         * m4/xstrtoumax.m4: Require jm_AC_TYPE_UNSIGNED_LONG_LONG.
21931         AC_REPLACE xstroull if necessary.  From Paul Eggert.
21932         (AC_CHECK_FUNCS): Remove strtoull, strtoumax, strtouq.
21933
21934 1999-04-18  Jim Meyering  <meyering@ascend.com>
21935
21936         * m4/xstrtoumax.m4 (jm_AC_PREREQ_XSTRTOUMAX): New file/macro.
21937         * m4/jm-macros.m4: Use it.
21938
21939 1999-04-06  Jim Meyering  <meyering@ascend.com>
21940
21941         * m4/strftime.m4: Remove test for %f.
21942
21943 1999-03-29  Jim Meyering  <meyering@ascend.com>
21944
21945         * m4/jm-macros.m4 (jm_CHECK_ALL_TYPES): New macro, contains the
21946         superset of the AC_TYPE_* checks in the textutils, fileutils,
21947         and sh-utils, plus AC_TYPE_PID_T.  Paul Eggert suggested adding
21948         AC_TYPE_PID_T.
21949
21950 1999-03-28  Jim Meyering  <meyering@ascend.com>
21951
21952         * m4/jm-macros.m4: Define GNU_PACKAGE here.
21953         Be sure to AC_SUBST it, once again, so that @GNU_PACKAGE@ is
21954         replaced e.g., in the *.sh files of the sh-utils.
21955
21956 1999-03-20  Jim Meyering  <meyering@ascend.com>
21957
21958         * m4/jm-macros.m4: s/jm_WITH_REGEX/jm_INCLUDED_REGEX/.
21959         * m4/regex.m4 (jm_INCLUDED_REGEX): Rename from jm_WITH_REGEX.
21960         Don't depend on AM_GLIBC.  Suggestions from Alain Magloire.
21961
21962 1999-03-19  Jim Meyering  <meyering@ascend.com>
21963
21964         * m4/jm-winsz1.m4 (jm_WINSIZE_IN_PTEM): New macro.
21965
21966 1999-03-12  Jim Meyering  <meyering@ascend.com>
21967
21968         * m4/jm-macros.m4: Use AC_FUNC_SETVBUF_REVERSED.
21969
21970 1999-03-07  Jim Meyering  <meyering@ascend.com>
21971
21972         * m4/jm-glibc-io.m4: Use only those *_unlocked macros that are declared.
21973
21974 1999-02-17  Jim Meyering  <meyering@ascend.com>
21975
21976         * m4/gettext.m4 (AM_GNU_GETTEXT): Do `changequote' around use of brackets
21977         in macro definition.  From Eli Zaretskii and Alain Magloire.
21978
21979 1999-02-07  Jim Meyering  <meyering@ascend.com>
21980
21981         * m4/group-member.m4: New file -- extracted from sh-utils' configure.in.
21982
21983         1999-02-05  Eli Zaretskii  <eliz@is.elta.co.il>
21984         * m4/gettext.m4: Support DOS-style d:/foo/bar absolute file names.
21985
21986 1999-02-06  Jim Meyering  <meyering@ascend.com>
21987
21988         * m4/chown.m4: Use `AC_SUBST(LIBOBJS)' since we set LIBOBJS.
21989         * m4/fnmatch.m4: Likewise.
21990         * m4/getgroups.m4: Likewise.
21991         * m4/lstat.m4: Likewise.
21992         * m4/malloc.m4: Likewise.
21993         * m4/putenv.m4: Likewise.
21994         * m4/realloc.m4: Likewise.
21995         * m4/regex.m4: Likewise.
21996         * m4/stat.m4: Likewise.
21997         * m4/strftime.m4: Likewise.
21998         Suggestion from Alain Magloire.
21999
22000         * m4/chown.m4: Use `.$ac_objext', not `.o'.
22001         * m4/fnmatch.m4: Likewise.
22002         * m4/getgroups.m4: Likewise.
22003         * m4/getline.m4: Likewise.
22004         * m4/lstat.m4: Likewise.
22005         * m4/malloc.m4: Likewise.
22006         * m4/memcmp.m4: Likewise.
22007         * m4/putenv.m4: Likewise.
22008         * m4/realloc.m4: Likewise.
22009         * m4/regex.m4: Likewise.
22010         * m4/stat.m4: Likewise.
22011         * m4/strftime.m4: Likewise.
22012         Suggestion from Alain Magloire.
22013
22014         * m4/jm-macros.m4: Actually invoke jm_WITH_REGEX now that it requires
22015         an argument.
22016
22017         * m4/regex.m4: Add a run-time Test for proper operation of
22018         re_compile_pattern.
22019
22020 1999-01-31  Jim Meyering  <meyering@ascend.com>
22021
22022         * m4/getloadavg.m4: Check for locale.h and the function, setlocale.
22023
22024 1999-01-30  Jim Meyering  <meyering@ascend.com>
22025
22026         * m4/check-type.m4: Use 3-arg form of AC_DEFINE.
22027
22028         * m4/jm-mktime.m4: Make this a wrapper around the official AM_FUNC_MKTIME
22029         rather than my private copy, now that the official one is up to date.
22030         * m4/mktime.m4: Remove file.
22031
22032         * m4/getloadavg.m4: Use 3-arg form of AC_DEFINE.
22033         * m4/uptime.m4: Likewise.
22034         * m4/uintmax_t.m4: Likewise.
22035
22036 1999-01-28  Jim Meyering  <meyering@ascend.com>
22037
22038         * m4/jm-macros.m4: Use jm_AFS.
22039         * m4/afs.m4: New file (from fileutils' configure.in).
22040
22041         * m4/assert.m4: Use the 3-argument forms of AC_DEFINE* macros.
22042         * m4/chown.m4: Likewise.
22043         * m4/d-ino.m4: Likewise.
22044         * m4/d-type.m4: Likewise.
22045         * m4/fnmatch.m4: Likewise.
22046         * m4/getgroups.m4: Likewise.
22047         * m4/gettext.m4: Likewise.
22048         * m4/jm-mktime.m4: Likewise.
22049         * m4/jm-winsz2.m4: Likewise.
22050         * m4/lcmessage.m4: Likewise.
22051         * m4/ls-mntd-fs.m4: Likewise.
22052         * m4/malloc.m4: Likewise.
22053         * m4/memcmp.m4: Likewise.
22054         * m4/putenv.m4: Likewise.
22055         * m4/realloc.m4: Likewise.
22056         * m4/st_mtim.m4: Likewise.
22057         * m4/strftime.m4: Likewise.
22058
22059 1999-01-16  Jim Meyering  <meyering@ascend.com>
22060
22061         * m4/jm-macros.m4 (ARGMATCH_DIE): Define.
22062         (ARGMATCH_DIE_DECL): Define.
22063
22064 1999-01-12  Jim Meyering  <meyering@ascend.com>
22065
22066         * m4/Makefile.am.in: Rewrite to avoid using fmt.
22067         Reported by Lars Hecking.
22068
22069 1999-01-10  Jim Meyering  <meyering@ascend.com>
22070
22071         * m4/fstypename.m4: Use the new 3-arg form of AC_DEFINE instead of my
22072         gross kludge.
22073         * m4/inttypes_h.m4: Likewise.
22074         * m4/lstat.m4: Likewise.
22075         * m4/malloc.m4: Likewise.
22076         * m4/readdir.m4: Likewise.
22077         * m4/realloc.m4: Likewise.
22078         * m4/st_dm_mode.m4: Likewise.
22079         * m4/stat.m4: Likewise.
22080         * m4/utimbuf.m4: Likewise.
22081         * m4/utimes.m4: Likewise.
22082
22083         * m4/check-decl.m4: Use the new 3-arg form of AC_DEFINE instead of the
22084         AC_CHECK_FUNCS hack.  Now, it's still a hack, but at least the
22085         comments in config.h.in are meaningful.
22086
22087         * m4/jm-macros.m4: Require autoconf-2.13 here.
22088
22089         * m4/regex.m4: By default, don't use the included regex.c on systems
22090         with glibc 2.  Suggestion from Uli Drepper.
22091
22092 1999-01-02  Jim Meyering  <meyering@ascend.com>
22093
22094         * m4/jm-macros.m4: Replace strcasecmp and strncasecmp.
22095
22096 1998-12-18  Jim Meyering  <meyering@ascend.com>
22097
22098         * m4/Makefile.am.in (Makefile.am): Simplify rule.
22099         Based on a suggestion from Lars Hecking.
22100
22101 1998-11-16  Paul Eggert  <eggert@twinsun.com>
22102
22103         * m4/lfs.m4 (AC_LFS): Add support for HP-UX 10.20 and HP-UX 11.
22104
22105 1998-11-16  Jim Meyering  <meyering@ascend.com>
22106
22107         * m4/lfs.m4: Double-quote the `uname...` expression.
22108
22109 1998-11-14  Jim Meyering  <meyering@ascend.com>
22110
22111         * m4/lstat.m4: Correct comment.  POSIX does not permit it to succeed.
22112         * m4/stat.m4: Likewise.
22113
22114 1998-11-03  Jim Meyering  <meyering@ascend.com>
22115
22116         * m4/stat.m4: Rewrite to set HAVE_STAT_EMPTY_STRING_BUG.
22117         * m4/lstat.m4: Rewrite to set HAVE_LSTAT_EMPTY_STRING_BUG.
22118
22119 1998-10-18  Jim Meyering  <meyering@ascend.com>
22120
22121         * m4/check-decl.m4 (jm_CHECK_DECL_LOCALTIME_R): Remove macro.
22122
22123 1998-10-17  Jim Meyering  <meyering@ascend.com>
22124
22125         * m4/decl.m4 (jm_CHECK_DECLARATION): Don't hard-code which headers to
22126         include, though we still hard-code the `require'-like AC_CHECK_HEADERS
22127         calls for those previously hard-coded headers.  Instead, take a new
22128         parameter.
22129         (jm_CHECK_DECLARATIONS): Reflect interface change.
22130         * m4/check-decl.m4 (jm_CHECK_DECLS): Likewise.
22131         (jm_CHECK_DECL_LOCALTIME_R): New macro.
22132
22133         * m4/mktime.m4: Test for spring-forward gap before long-running test.
22134
22135 1998-10-14  Jim Meyering  <meyering@ascend.com>
22136
22137         * m4/mktime.m4: Use the more portable "TZ=PST8PDT,M4.1.0,M10.5.0"
22138         instead of "TZ=America/Vancouver".  From Paul Eggert.
22139
22140 1998-10-11  Jim Meyering  <meyering@ascend.com>
22141
22142         * m4/mktime.m4 (jm_AM_FUNC_MKTIME): New file and macro.
22143         This adds a test for a recently added compatibility fix for mktime.c.
22144         * m4/jm-mktime.m4: Require jm_AM_FUNC_MKTIME, not AM_FUNC_MKTIME.
22145
22146 1998-09-27  Jim Meyering  <meyering@ascend.com>
22147
22148         * m4/jm-macros.m4 (jm_MACROS): Require jm_FUNC_FNMATCH.
22149
22150         * m4/fnmatch.m4 (jm_FUNC_FNMATCH): New file/macro.  Extracted from
22151         ../configure.in, including a change from Gordon Matzigkeit to allow
22152         cross-compiling for the Hurd.
22153
22154         * m4/glibc.m4: New file/macro to test for the GNU C Library
22155         versions 1 and 2.  From Gordon Matzigkeit.
22156         Indent.
22157
22158 1998-09-21  Jim Meyering  <meyering@ascend.com>
22159
22160         * m4/chown.m4: Declare locals: before, after.  From Andries Brouwer.
22161
22162 1998-08-18  Paul Eggert  <eggert@twinsun.com>
22163
22164         Port nanosecond-resolution times to UnixWare 2.1.2 and
22165         pedantic Solaris 2.6.
22166
22167         * m4/st_mtim.m4 (AC_STRUCT_ST_MTIM_NSEC): Renamed from
22168         AC_STRUCT_ST_MTIM.
22169         * m4/st_mtim.m4 (AC_STRUCT_ST_MTIM_NSEC):
22170         Generate name of ns member, instead of just 1 or undef.
22171         Allow for UnixWare 2.1.2 and Solaris 2.6 if in pedantic mode.
22172
22173 1998-08-15  Jim Meyering  <meyering@ascend.com>
22174
22175         * m4/ssize_t.m4 (jm_TYPE_SSIZE_T): Remove file.
22176         * m4/check-type.m4: New file.  Replacement for AC_CHECK_TYPE.
22177         * m4/jm-macros.m4: Use the new AC_CHECK_TYPE(ssize_t, int)
22178         instead of jm_TYPE_SSIZE_T.
22179
22180 1998-08-12  Jim Meyering  <meyering@ascend.com>
22181
22182         * m4/st_dm_mode.m4: New file.  From Johan Danielsson.
22183
22184 1998-08-02  Jim Meyering  <meyering@ascend.com>
22185
22186         * m4/st_mtim.m4: Use hack to avoid having to put #undef HAVE_ST_MTIM
22187         in acconfig.h manually.
22188
22189 1998-07-31  Paul Eggert  <eggert@twinsun.com>
22190
22191         * m4/st_mtim.m4: New file.
22192
22193 1998-07-28  Jim Meyering  <meyering@ascend.com>
22194
22195         * m4/utimes.m4: Undef stat.
22196
22197 1998-07-25  Jim Meyering  <meyering@ascend.com>
22198
22199         * m4/utime.m4 (jm_FUNC_UTIME): New file and macro.
22200         * m4/utimes.m4 (jm_FUNC_UTIMES_NULL): New file and macro.
22201
22202 1998-07-09  Manfred Hollstein  <manfred@s-direktnet.de>
22203
22204         * m4/chown.m4 (jm_FUNC_CHOWN): Add a check to verify that the
22205         uid and gid actually remain unchanged.
22206
22207 1998-07-07  Jim Meyering  <meyering@ascend.com>
22208
22209         * m4/jm-glibc-io.m4: Remove fclose_unlocked.
22210
22211 1998-07-04  Jim Meyering  <meyering@ascend.com>
22212
22213         * m4/regex.m4: Use syscmd, ifelse, and sysval.  Mainly as an exercise
22214         to prove that this macro can be used in packages without regex.c.
22215
22216 1998-07-04  Andreas Schwab  <schwab@issan.informatik.uni-dortmund.de>
22217
22218         * m4/gettext.m4 (AM_WITH_NLS): Remove intl/libintl.h if <libintl.h>
22219         is to be used.
22220
22221 1998-07-03  Jim Meyering  <meyering@ascend.com>
22222
22223         * m4/gettext.m4: Add -lintl if it's found to be necessary.
22224
22225         * m4/gettext.m4: New file -- from gettext-0.10.35.
22226         * m4/lcmessage.m4: Likewise.
22227         * m4/progtest.m4: Likewise.
22228
22229         * m4/regex.m4 (jm_WITH_REGEX): New file and macro.
22230         * m4/jm-macros.m4: Require the new macro.
22231
22232 1998-06-29  Jim Meyering  <meyering@ascend.com>
22233
22234         * m4/fstypename.m4: Include sys/param.h.  NetBSD 1.3.1 requires this
22235         for the definition of NGROUPS (used in a system header included
22236         by sys/mount.h).
22237
22238 1998-06-28  Jim Meyering  <meyering@ascend.com>
22239
22240         * m4/ls-mntd-fs.m4: New file.
22241         * m4/fstypename.m4: New file.
22242
22243         * m4/jm-macros.m4: Require the new macro.
22244         * m4/jm-glibc-io.m4: New file.
22245
22246 1998-05-19  Jim Meyering  <meyering@ascend.com>
22247
22248         * m4/jm-macros.m4: Add jm_FUNC_LCHOWN.
22249         * m4/lchown.m4: New file.
22250
22251         * m4/Makefile.am.in: New file.
22252         * m4/Makefile.am (Makefile.am): Depend on Makefile.am.in.
22253
22254 1998-05-14  Jim Meyering  <meyering@ascend.com>
22255
22256         * m4/Makefile.am (EXTRA_DIST): Add them.
22257         * m4/jm-macros.m4: New file.
22258         * m4/utimbuf.m4: New file.
22259
22260 1998-05-12  Jim Meyering  <meyering@ascend.com>
22261
22262         * m4/Makefile.am (EXTRA_DIST): Add isc-posix.m4.
22263
22264 1998-05-11  Jim Meyering  <meyering@ascend.com>
22265
22266         * m4/isc-posix.m4: New file.
22267
22268 1998-05-10  Jim Meyering  <meyering@ascend.com>
22269
22270         * m4/jm-mktime.m4: Use AM_FUNC_MKTIME, now that it's up to date.
22271
22272 1998-05-09  Jim Meyering  <meyering@ascend.com>
22273
22274         * m4/Makefile.am (EXTRA_DIST): Add ssize_t.m4.
22275         (EXTRA_DIST): Remove mktime.m4, now that the new version is included
22276         with automake.
22277
22278         * m4/ssize_t.m4: New file.
22279         * m4/mktime.m4: Remove file -- the new automake has this now.
22280
22281 1998-04-26  Jim Meyering  <meyering@ascend.com>
22282
22283         * m4/assert.m4: New file.
22284         * m4/Makefile.am (EXTRA_DIST): Add assert.m4.
22285
22286 1998-04-05  Jim Meyering  <meyering@ascend.com>
22287
22288         * m4/prereq.m4 (jm_PREREQ_REGEX): New macro.
22289         (jm_PREREQ): Use it here.
22290
22291 1998-03-23  Jim Meyering  <meyering@eng.ascend.com>
22292
22293         * m4/inttypes_h.m4: Kludges so I don't have to add HAVE_INTTYPES_H
22294         in acconfig.h.
22295
22296 1998-03-15  Jim Meyering  <meyering@eng.ascend.com>
22297
22298         * m4/prereq.m4: New file.
22299         * m4/error.m4: New file.
22300         * m4/Makefile.am (EXTRA_DIST): Add error.m4 and prereq.m4.
22301
22302 1998-02-07  Jim Meyering  <meyering@eng.ascend.com>
22303
22304         * m4/getline.m4: Don't set am_cv_func_working_getline before the
22305         cache-check for the same variable -- that defeated the purpose of
22306         the test; the test program was never run.  This was a problem only
22307         on systems with losing getline functions -- HP-UX 10.20 is one.
22308         Reported by Bjorn Helgaas.
22309
22310 1998-02-06  Jim Meyering  <meyering@eng.ascend.com>
22311
22312         * m4/Makefile.am (EXTRA_DIST): Add perl.m4.
22313
22314 1998-01-10  Jim Meyering  <meyering@na-net.ornl.gov>
22315
22316         * m4/Makefile.am (EXTRA_DIST): Add const.m4.
22317
22318         * m4/const.m4: New file.  Use an initializer in this declaration
22319         typedef int charset[2]; const charset x;
22320         Reported by Bob Glickstein.
22321
22322 1997-12-21  Jim Meyering  <meyering@na-net.ornl.gov>
22323
22324         * m4/chown.m4: Fix reversed types on -1 args to chown.
22325         From Kaveh Ghazi.
22326
22327 1997-12-14  Jim Meyering  <meyering@na-net.ornl.gov>
22328
22329         * m4/check-decl.m4: s/DECLARATION_/DECL_/g.
22330         Add lseek and memchr.
22331
22332         * m4/decl.m4: s/HAVE_DECLARATION_/HAVE_DECL_/g.
22333         T.E.Dickey <dickey@clark.net> said that some older preprocessors
22334         have a 20-character limit on names.
22335
22336 1997-11-30  Jim Meyering  <meyering@na-net.ornl.gov>
22337
22338         * m4/inttypes_h.m4: New file.
22339         * m4/uintmax_t.m4: New file.
22340         * m4/Makefile.am (EXTRA_DIST): Add inttypes_h.m4 and uintmax_t.m4.
22341
22342 Copyright (C) 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006
22343   Free Software Foundation, Inc.
22344 Copying and distribution of this file, with or without modification,
22345 are permitted provided the copyright notice and this notice are preserved.