* users.txt: Add Libtool.
[pspp] / ChangeLog
1 2006-10-24  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
2
3         * users.txt: Add Libtool.
4
5         Sync from Libtool:
6
7         2006-10-24  Paul Eggert  <eggert@cs.ucla.edu>
8
9         * lib/argz.c: Remove check for HAVE_CONFIG_H, to conform
10         to gnulib's policy of including config.h unconditionally.
11
12 2006-10-24  Bruno Haible  <bruno@clisp.org>
13
14         * modules/wcwidth (Files): Add m4/wint_t.m4.
15         * m4/wcwidth.m4 (gl_FUNC_WCWIDTH): Require gt_TYPE_WINT_T.
16         * lib/wcwidth.h (iswprint): Use 'int' if 'wint_t' is not defined.
17
18 2006-10-24  Paul Eggert  <eggert@cs.ucla.edu>
19
20         * lib/getdate.y (yyerror): Make the arguments pointer-to-const,
21         to pacify GCC with some -W flags enabled.  Problem reported by
22         Bruno Haible.
23
24 2006-10-24  Jim Meyering  <jim@meyering.net>
25
26         * MODULES.html.sh: Remove uinttostr.  It's not a module.
27         Reported by Karl Berry.
28
29 2006-10-23  Bruno Haible  <bruno@clisp.org>
30
31         * lib/fts.c (fts_build): Move variable declaration, for C89 compliance.
32
33 2006-10-24  Bruno Haible  <bruno@clisp.org>
34
35         * lib/gl_list.h: Use C comment style, not C++ comment style.
36
37 2006-10-23  Eric Blake  <ebb9@byu.net>
38
39         * lib/getaddrinfo.c (includes): Add missing include.
40
41 2006-10-23  Bruno Haible  <bruno@clisp.org>
42             Paul Eggert  <eggert@cs.ucla.edu>
43
44         Ability to rename obstack_free.
45         * lib/obstack.h (__obstack_free): New macro. Declare instead of
46         obstack_free.
47         (obstack_free): Invoke the __obstack_free macro.
48         * lib/obstack.c (obstack_free): Use __obstack_free macro.
49
50 2006-10-23  Bruno Haible  <bruno@clisp.org>
51             Paul Eggert  <eggert@cs.ucla.edu>
52
53         * lib/argp.h (argp_parse, __argp_parse): Comment out the identifiers
54         __argc, __argv from the declaration. (They are defined as macros on
55         mingw.)
56
57 2006-10-22  Bruno Haible  <bruno@clisp.org>
58
59         * doc/gnulib-intro.texi: New file.
60         * doc/gnulib.texi: Include it.
61
62 2006-10-21  Bruno Haible  <bruno@clisp.org>
63
64         * doc/gnulib.texi: Split the chapter "Gnulib" into 3 chapters
65         "Introduction", "Miscellanous Notes", "Particular Modules".
66
67 2006-10-21  Bruno Haible  <bruno@clisp.org>
68
69         * gnulib-tool (func_emit_lib_Makefile_am, func_emit_tests_Makefile_am):
70         Change mostlyclean-local rule to avoid sh syntax error from bash
71         versions 2.00..2.05 when $(MOSTLYCLEANDIRS) is empty.
72
73 2006-10-23  Jim Meyering  <jim@meyering.net>
74
75         * lib/getaddrinfo.c (getnameinfo): Use new lightweight uinttostr,
76         in place of snprintf.
77
78         * modules/inttostr (Files): Add lib/uinttostr.c.
79         * lib/uinttostr.c (inttostr): New file/function.
80         * lib/inttostr.h (uinttostr): Declare.
81         * m4/inttostr.m4: Add AC_LIBOBJ([uinttostr]).
82         * MODULES.html.sh (Numeric conversion functions <stdlib.h>):
83         Add uinttostr.
84         * modules/getaddrinfo (Depends-on): Remove snprintf.  Add inttostr.
85
86 2006-10-21  Paul Eggert  <eggert@cs.ucla.edu>
87
88         * lib/canonicalize.c (ELOOP): Define if not already defined.
89         Problem reported by Bruno Haible in
90         <http://lists.gnu.org/archive/html/bug-gnulib/2006-10/msg00282.html>.
91
92 2006-10-21  Paul Eggert  <eggert@cs.ucla.edu>
93
94         * lib/stdint_.h [defined _AIX]: Don't include <sys/types.h>.
95         Problem reported by Perry Smith and Ville Laurikari.
96
97         * lib/getndelim2.c (SSIZE_MAX): Use same defn that getdelim.c
98         uses.
99
100 2006-10-19  Bruno Haible  <bruno@clisp.org>
101
102         * lib/getndelim2.c (SSIZE_MAX): Provide fallback definition. Needed
103         for mingw.
104
105 2006-10-19  Bruno Haible  <bruno@clisp.org>
106
107         * lib/openat-priv.h (EOPNOTSUPP): Provide fallback definition.
108         Needed for mingw.
109
110 2006-10-19  Bruno Haible  <bruno@clisp.org>
111
112         * m4/size_max.m4 (gl_SIZE_MAX): Cache the result.
113
114 2006-10-19  Bruno Haible  <bruno@clisp.org>
115
116         * m4/allocsa.m4 (gl_ALLOCSA): Invoke gl_FUNC_ALLOCA, don't AC_REQUIRE
117         it.
118
119 2006-10-19  Bruno Haible  <bruno@clisp.org>
120
121         * m4/alloca.m4 (gl_FUNC_ALLOCA): Cache the result of the AC_EGREP_CPP
122         invocation.
123
124 2006-10-19  Bruno Haible  <bruno@clisp.org>
125
126         * gnulib-tool (func_create_testdir): Don't include ftruncate and
127         mountlist by default.
128
129 2006-10-16  Bruno Haible  <bruno@clisp.org>
130
131         * lib/c-strstr.c: Include c-strstr.h.
132
133 2006-10-18  Charles Wilson  <cygwin@cwilson.fastmail.fm>
134
135         * gnulib-tool: Don't clobber $sourcebase when $local_gnulib_dir ends
136         in a slash.
137
138 2006-10-18  Bruno Haible  <bruno@clisp.org>
139
140         * lib/lock.h [C++]: Wrap definitions in extern "C".
141
142 2006-10-18  Bruno Haible  <bruno@clisp.org>
143
144         * gnulib-tool (func_emit_initmacro_end): Remove duplicates from the
145         gl_LIBOBJS list.
146
147 2006-10-18  Bruno Haible  <bruno@clisp.org>
148
149         * lib/findprog.c (find_in_path): Avoid "gcc -Wwrite-strings" warning.
150
151 2006-10-19  Paul Eggert  <eggert@cs.ucla.edu>
152
153         * lib/xstrtol.h: Include gettext.h.
154         (_STRTOL_ERROR): Wrap English-language formats inside gettext.
155         Problem reported by Eric Blake.
156         * modules/xstrtol (Depends-on): Add gettext-h.
157
158 2006-10-19  Paul Eggert  <eggert@cs.ucla.edu>  (tiny change)
159
160         * lib/strftime.c (advance): New macro.
161         (add): Use it to avoid adding 0 to a FILE *.  FILE can be an
162         incomplete type, so you can't add 0 to it.  Problem and patch
163         reported by Eelco Dolstra for dietlibc.
164
165 2006-10-18  Jim Meyering  <jim@meyering.net>
166
167         * lib/readutmp.c (desirable_utmp_entry): Use "bool" as the
168         type for a local, and rename it: s/up/user_proc/.
169
170 2006-10-18  Sergey Poznyakoff  <gray@gnu.org.ua>
171
172         * lib/readutmp.c (desirable_utmp_entry): Implement new flag:
173         READ_UTMP_USER_PROCESS.
174         * lib/readutmp.h (READ_UTMP_USER_PROCESS): New flag
175
176 2006-10-17  Paul Eggert  <eggert@cs.ucla.edu>
177
178         * lib/localcharset.c: Do not check HAVE_SETLOCALE.
179         * m4/localcharset.m4 (gl_LOCALCHARSET): Don't check for setlocale.
180
181 2006-10-17  Eric Blake  <ebb9@byu.net>
182
183         * lib/sigprocmask.c (sigprocmask): Fix typo.
184
185         * m4/signalblocking.m4 (gl_PREREQ_SIGPROCMASK): Fix typo.
186
187         * modules/clean-temp (Makefile.am): Don't add to make output...
188         (configure.ac): ...instead define SIGNAL_SAFE_LIST inside
189         config.h.
190
191 2006-10-17  Bruno Haible  <bruno@clisp.org>
192
193         * lib/gettext.h (gettext, ngettext, pgettext, npgettext): Define
194         differently if DEFAULT_TEXT_DOMAIN is set.
195
196 2006-10-16  Bruno Haible  <bruno@clisp.org>
197
198         * lib/clean-temp.c: Include fwriteerror.h.
199
200 2006-10-16  Bruno Haible  <bruno@clisp.org>
201
202         * getndelim2.m4 (gl_GETNDELIM2): Remove 2003-10-23 hack.
203
204 2006-10-16  Bruno Haible  <bruno@clisp.org>
205
206         * m4/signalblocking.m4 (gl_PREREQ_SIGPROCMASK): Also test for sigset_t.
207         * lib/sigprocmask.h: Include <sys/types.h>.
208         (sigset_t): Use the system's definition if present.
209
210 2006-10-17  Eric Blake  <ebb9@byu.net>
211
212         * lib/xvasprintf.c (includes): Assume config.h.
213         * lib/xasprintf.c (includes): Likewise.
214
215 2006-10-16  Paul Eggert  <eggert@cs.ucla.edu>
216
217         * lib/fsusage.c (PROPAGATE_ALL_ONES): Don't assume uintmax_t is
218         at least as wide as intmax_t.
219
220 2006-10-16  Alexandre Duret-Lutz  <adl@gnu.org>
221
222         (Imported from Automake.)
223         * build-aux/gnupload: Update to version 1.1 of directive file.
224
225 2006-10-16  Eric Blake  <ebb9@byu.net>
226
227         * modules/configmake (Makefile.am): Add pkglibexecdir support, to
228         match Automake 1.10a.
229
230 2006-10-14  Bruno Haible  <bruno@clisp.org>
231
232         * modules/sigprocmask: New file.
233         * lib/sigprocmask.h: New file.
234         * lib/sigprocmask.c: New file.
235         * m4/signalblocking.m4 (gl_SIGNALBLOCKING): Renamed from
236         gt_SIGNALBLOCKING. When not defining HAVE_POSIX_SIGNALBLOCKING,
237         request sigprocmask.o.
238         (gl_PREREQ_SIGPROCMASK): New macro.
239         * modules/fatal-signal (Files): Remove m4/signalblocking.m4.
240         (Depends-on): Add sigprocmask.
241         * m4/fatal-signal.m4 (gl_FATAL_SIGNAL): Don't require
242         gt_SIGNALBLOCKING. Test for 'raise' only once.
243         * lib/fatal-signal.c: Include sigprocmask.h.
244         (fatal_signal_set, init_fatal_signal_set, block_fatal_signals,
245         unblock_fatal_signals): Define always.
246         * MODULES.html.sh (Support for systems lacking POSIX:2001): Add
247         sigprocmask.
248
249 2006-10-14  Paul Eggert  <eggert@cs.ucla.edu>
250
251         Sync from Automake.
252         * build-aux/install-sh (posix_mkdir): Reject FreeBSD 6.1 mkdir -p -m,
253         which incorrectly sets the mode of an existing destination
254         directory.  In some cases the unpatched install-sh could do the
255         equivalent of "chmod 777 /" or "chmod 0 /" on a buggy FreeBSD
256         system.  We hope this is rare in practice, but it's clearly worth
257         fixing.  Problem reported by Alex Unleashed in
258         <http://lists.gnu.org/archive/html/bug-autoconf/2006-10/msg00012.html>.
259         Also, don't bother to check for -m bugs unless we're using -m;
260         suggested by Stepan Kasal.
261
262 2006-10-14  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
263
264         Sync from Automake.
265         * build-aux/depcomp (gcc3): Put dependency extraction flags before the
266         `-c' flag, so they appear at the same position as in %FASTDEP%
267         mode in depend2.am.  Fixes build failure for FreeBSD's c89,
268         which ignores unknown options only after the first non-option.
269         Bug report against M4 by Nelson H. F. Beebe.
270
271 2006-10-13  Jim Meyering  <jim@meyering.net>
272
273         Fix a bug in yesterday's change.
274         * lib/fts.c (fts_open): When using FTS_XDEV|FTS_NOSTAT,
275         p->fts_statp->st_dev would be used uninitialized.
276         Ensures that we always call fts_stat on the very first entry.
277         Miklos Szeredi reported that find -xdev stopped working.
278
279 2006-10-12  Bruno Haible  <bruno@clisp.org>
280
281         * gnulib-tool (func_get_automake_snippet): Append an automatically
282         computed EXTRA_DIST augmentation.
283         * modules/acl (Makefile.am): Remove EXTRA_DIST augmentation.
284         * modules/alloca-opt (Makefile.am): Likewise.
285         * modules/allocsa (Makefile.am): Likewise.
286         * modules/arcfour (Makefile.am): Likewise.
287         * modules/arctwo (Makefile.am): Likewise.
288         * modules/argmatch (Makefile.am): Likewise.
289         * modules/argz (Makefile.am): Likewise.
290         * modules/atexit (Makefile.am): Likewise.
291         * modules/backupfile (Makefile.am): Likewise.
292         * modules/byteswap (Makefile.am): Likewise.
293         * modules/c-strtod (Makefile.am): Likewise.
294         * modules/c-strtold (Makefile.am): Likewise.
295         * modules/calloc (Makefile.am): Likewise.
296         * modules/canon-host (Makefile.am): Likewise.
297         * modules/canonicalize (Makefile.am): Likewise.
298         * modules/chdir-long (Makefile.am): Likewise.
299         * modules/chdir-safer (Makefile.am): Likewise.
300         * modules/check-version (Makefile.am): Likewise.
301         * modules/chown (Makefile.am): Likewise.
302         * modules/cloexec (Makefile.am): Likewise.
303         * modules/close-stream (Makefile.am): Likewise.
304         * modules/closeout (Makefile.am): Likewise.
305         * modules/crc (Makefile.am): Likewise.
306         * modules/csharpexec (Makefile.am): Likewise.
307         * modules/cycle-check (Makefile.am): Likewise.
308         * modules/des (Makefile.am): Likewise.
309         * modules/dev-ino (Makefile.am): Likewise.
310         * modules/dirfd (Makefile.am): Likewise.
311         * modules/dirname (Makefile.am): Likewise.
312         * modules/dup2 (Makefile.am): Likewise.
313         * modules/eealloc (Makefile.am): Likewise.
314         * modules/error (Makefile.am): Likewise.
315         * modules/euidaccess (Makefile.am): Likewise.
316         * modules/exclude (Makefile.am): Likewise.
317         * modules/exitfail (Makefile.am): Likewise.
318         * modules/fcntl-safer (Makefile.am): Likewise.
319         * modules/fcntl (Makefile.am): Likewise.
320         * modules/file-type (Makefile.am): Likewise.
321         * modules/fileblocks (Makefile.am): Likewise.
322         * modules/filemode (Makefile.am): Likewise.
323         * modules/filenamecat (Makefile.am): Likewise.
324         * modules/fnmatch (Makefile.am): Likewise.
325         * modules/fopen-safer (Makefile.am): Likewise.
326         * modules/fpending (Makefile.am): Likewise.
327         * modules/fprintftime (Makefile.am): Likewise.
328         * modules/free (Makefile.am): Likewise.
329         * modules/fsusage (Makefile.am): Likewise.
330         * modules/ftruncate (Makefile.am): Likewise.
331         * modules/fts (Makefile.am): Likewise.
332         * modules/gc-arcfour (Makefile.am): Likewise.
333         * modules/gc-des (Makefile.am): Likewise.
334         * modules/gc-hmac-md5 (Makefile.am): Likewise.
335         * modules/gc-hmac-sha1 (Makefile.am): Likewise.
336         * modules/gc-md4 (Makefile.am): Likewise.
337         * modules/gc-pbkdf2-sha1 (Makefile.am): Likewise.
338         * modules/gc-sha1 (Makefile.am): Likewise.
339         * modules/gc (Makefile.am): Likewise.
340         * modules/getaddrinfo (Makefile.am): Likewise.
341         * modules/getcwd (Makefile.am): Likewise.
342         * modules/getdelim (Makefile.am): Likewise.
343         * modules/getdomainname (Makefile.am): Likewise.
344         * modules/getgroups (Makefile.am): Likewise.
345         * modules/gethostname (Makefile.am): Likewise.
346         * modules/gethrxtime (Makefile.am): Likewise.
347         * modules/getline (Makefile.am): Likewise.
348         * modules/getloadavg (Makefile.am): Likewise.
349         * modules/getlogin_r (Makefile.am): Likewise.
350         * modules/getndelim2 (Makefile.am): Likewise.
351         * modules/getopt (Makefile.am): Likewise.
352         * modules/getpagesize (Makefile.am): Likewise.
353         * modules/getpass-gnu (Makefile.am): Likewise.
354         * modules/getpass (Makefile.am): Likewise.
355         * modules/getsubopt (Makefile.am): Likewise.
356         * modules/gettime (Makefile.am): Likewise.
357         * modules/gettimeofday (Makefile.am): Likewise.
358         * modules/getugroups (Makefile.am): Likewise.
359         * modules/getusershell (Makefile.am): Likewise.
360         * modules/glob (Makefile.am): Likewise.
361         * modules/group-member (Makefile.am): Likewise.
362         * modules/hard-locale (Makefile.am): Likewise.
363         * modules/hash (Makefile.am): Likewise.
364         * modules/hmac-md5 (Makefile.am): Likewise.
365         * modules/hmac-sha1 (Makefile.am): Likewise.
366         * modules/human (Makefile.am): Likewise.
367         * modules/idcache (Makefile.am): Likewise.
368         * modules/imaxabs (Makefile.am): Likewise.
369         * modules/imaxdiv (Makefile.am): Likewise.
370         * modules/inet_ntop (Makefile.am): Likewise.
371         * modules/inet_pton (Makefile.am): Likewise.
372         * modules/intprops (Makefile.am): Likewise.
373         * modules/inttostr (Makefile.am): Likewise.
374         * modules/inttypes (Makefile.am): Likewise.
375         * modules/isapipe (Makefile.am): Likewise.
376         * modules/javaversion (Makefile.am): Likewise.
377         * modules/lchmod (Makefile.am): Likewise.
378         * modules/lchown (Makefile.am): Likewise.
379         * modules/localcharset (Makefile.am): Likewise.
380         * modules/long-options (Makefile.am): Likewise.
381         * modules/lstat (Makefile.am): Likewise.
382         * modules/malloc (Makefile.am): Likewise.
383         * modules/mathl (Makefile.am): Likewise.
384         * modules/mbchar (Makefile.am): Likewise.
385         * modules/md2 (Makefile.am): Likewise.
386         * modules/md4 (Makefile.am): Likewise.
387         * modules/md5 (Makefile.am): Likewise.
388         * modules/memcasecmp (Makefile.am): Likewise.
389         * modules/memchr (Makefile.am): Likewise.
390         * modules/memcmp (Makefile.am): Likewise.
391         * modules/memcoll (Makefile.am): Likewise.
392         * modules/memcpy (Makefile.am): Likewise.
393         * modules/memmem (Makefile.am): Likewise.
394         * modules/memmove (Makefile.am): Likewise.
395         * modules/mempcpy (Makefile.am): Likewise.
396         * modules/memrchr (Makefile.am): Likewise.
397         * modules/memset (Makefile.am): Likewise.
398         * modules/memxor (Makefile.am): Likewise.
399         * modules/mkancesdirs (Makefile.am): Likewise.
400         * modules/mkdir-p (Makefile.am): Likewise.
401         * modules/mkdir (Makefile.am): Likewise.
402         * modules/mkdtemp (Makefile.am): Likewise.
403         * modules/mkstemp (Makefile.am): Likewise.
404         * modules/mktime (Makefile.am): Likewise.
405         * modules/modechange (Makefile.am): Likewise.
406         * modules/mountlist (Makefile.am): Likewise.
407         * modules/nanosleep (Makefile.am): Likewise.
408         * modules/obstack (Makefile.am): Likewise.
409         * modules/openat (Makefile.am): Likewise.
410         * modules/pagealign_alloc (Makefile.am): Likewise.
411         * modules/pathmax (Makefile.am): Likewise.
412         * modules/physmem (Makefile.am): Likewise.
413         * modules/poll (Makefile.am): Likewise.
414         * modules/posixtm (Makefile.am): Likewise.
415         * modules/posixver (Makefile.am): Likewise.
416         * modules/putenv (Makefile.am): Likewise.
417         * modules/quote (Makefile.am): Likewise.
418         * modules/quotearg (Makefile.am): Likewise.
419         * modules/raise (Makefile.am): Likewise.
420         * modules/read-file (Makefile.am): Likewise.
421         * modules/readline (Makefile.am): Likewise.
422         * modules/readlink (Makefile.am): Likewise.
423         * modules/readtokens (Makefile.am): Likewise.
424         * modules/readutmp (Makefile.am): Likewise.
425         * modules/realloc (Makefile.am): Likewise.
426         * modules/regex (Makefile.am): Likewise.
427         * modules/rename-dest-slash (Makefile.am): Likewise.
428         * modules/rename (Makefile.am): Likewise.
429         * modules/rijndael (Makefile.am): Likewise.
430         * modules/rmdir (Makefile.am): Likewise.
431         * modules/rpmatch (Makefile.am): Likewise.
432         * modules/safe-read (Makefile.am): Likewise.
433         * modules/safe-write (Makefile.am): Likewise.
434         * modules/same-inode (Makefile.am): Likewise.
435         * modules/same (Makefile.am): Likewise.
436         * modules/save-cwd (Makefile.am): Likewise.
437         * modules/savedir (Makefile.am): Likewise.
438         * modules/setenv (Makefile.am): Likewise.
439         * modules/settime (Makefile.am): Likewise.
440         * modules/sha1 (Makefile.am): Likewise.
441         * modules/sig2str (Makefile.am): Likewise.
442         * modules/snprintf (Makefile.am): Likewise.
443         * modules/stat-macros (Makefile.am): Likewise.
444         * modules/stat-time (Makefile.am): Likewise.
445         * modules/stdbool (Makefile.am): Likewise.
446         * modules/stdint (Makefile.am): Likewise.
447         * modules/stdlib-safer (Makefile.am): Likewise.
448         * modules/stpcpy (Makefile.am): Likewise.
449         * modules/stpncpy (Makefile.am): Likewise.
450         * modules/strcase (Makefile.am): Likewise.
451         * modules/strcasestr (Makefile.am): Likewise.
452         * modules/strchrnul (Makefile.am): Likewise.
453         * modules/strcspn (Makefile.am): Likewise.
454         * modules/strdup (Makefile.am): Likewise.
455         * modules/strerror (Makefile.am): Likewise.
456         * modules/strftime (Makefile.am): Likewise.
457         * modules/strndup (Makefile.am): Likewise.
458         * modules/strnlen (Makefile.am): Likewise.
459         * modules/strpbrk (Makefile.am): Likewise.
460         * modules/strsep (Makefile.am): Likewise.
461         * modules/strstr (Makefile.am): Likewise.
462         * modules/strtod (Makefile.am): Likewise.
463         * modules/strtoimax (Makefile.am): Likewise.
464         * modules/strtok_r (Makefile.am): Likewise.
465         * modules/strtol (Makefile.am): Likewise.
466         * modules/strtoll (Makefile.am): Likewise.
467         * modules/strtoul (Makefile.am): Likewise.
468         * modules/strtoull (Makefile.am): Likewise.
469         * modules/strtoumax (Makefile.am): Likewise.
470         * modules/strverscmp (Makefile.am): Likewise.
471         * modules/sys_socket (Makefile.am): Likewise.
472         * modules/sys_stat (Makefile.am): Likewise.
473         * modules/sysexits (Makefile.am): Likewise.
474         * modules/time_r (Makefile.am): Likewise.
475         * modules/timegm (Makefile.am): Likewise.
476         * modules/timespec (Makefile.am): Likewise.
477         * modules/tmpfile-safer (Makefile.am): Likewise.
478         * modules/trim (Makefile.am): Likewise.
479         * modules/unistd-safer (Makefile.am): Likewise.
480         * modules/unlinkdir (Makefile.am): Likewise.
481         * modules/unlocked-io (Makefile.am): Likewise.
482         * modules/userspec (Makefile.am): Likewise.
483         * modules/utime (Makefile.am): Likewise.
484         * modules/utimecmp (Makefile.am): Likewise.
485         * modules/utimens (Makefile.am): Likewise.
486         * modules/vasnprintf (Makefile.am): Likewise.
487         * modules/vasprintf (Makefile.am): Likewise.
488         * modules/vsnprintf (Makefile.am): Likewise.
489         * modules/xalloc (Makefile.am): Likewise.
490         * modules/xgetcwd (Makefile.am): Likewise.
491         * modules/xnanosleep (Makefile.am): Likewise.
492         * modules/xreadlink (Makefile.am): Likewise.
493         * modules/xstrtod (Makefile.am): Likewise.
494         * modules/xstrtol (Makefile.am): Likewise.
495         * modules/xstrtold (Makefile.am): Likewise.
496         * modules/yesno (Makefile.am): Likewise.
497         * modules/getdate (Makefile.am): Don't add getdate.h to EXTRA_DIST.
498
499 2006-10-12  Paul Eggert  <eggert@cs.ucla.edu>
500
501         * modules/error (Makefile.am): Distribute files through
502         EXTRA_DIST, not lib_SOURCES.
503
504 2006-10-12  Eric Blake  <ebb9@byu.net>
505
506         * modules/error (Makefile.am): Distribute files in /lib.
507         * modules/obstack (Makefile.am): Likewise.
508
509 2006-10-12  Bruno Haible  <bruno@clisp.org>
510
511         * modules/acl (Makefile.am): Distribute all files in lib/ through
512         EXTRA_DIST.
513         * modules/arcfour (Makefile.am): Likewise.
514         * modules/arctwo (Makefile.am): Likewise.
515         * modules/argmatch (Makefile.am): Likewise.
516         * modules/argz (Makefile.am): Likewise.
517         * modules/atexit (Makefile.am): Likewise.
518         * modules/backupfile (Makefile.am): Likewise.
519         * modules/c-strtod (Makefile.am): Likewise.
520         * modules/c-strtold (Makefile.am): Likewise.
521         * modules/calloc (Makefile.am): Likewise.
522         * modules/canon-host (Makefile.am): Likewise.
523         * modules/canonicalize (Makefile.am): Likewise.
524         * modules/chdir-long (Makefile.am): Likewise.
525         * modules/chdir-safer (Makefile.am): Likewise.
526         * modules/check-version (Makefile.am): Likewise.
527         * modules/chown (Makefile.am): Likewise.
528         * modules/cloexec (Makefile.am): Likewise.
529         * modules/close-stream (Makefile.am): Likewise.
530         * modules/closeout (Makefile.am): Likewise.
531         * modules/crc (Makefile.am): Likewise.
532         * modules/cycle-check (Makefile.am): Likewise.
533         * modules/des (Makefile.am): Likewise.
534         * modules/dirfd (Makefile.am): Likewise.
535         * modules/dirname (Makefile.am): Likewise.
536         * modules/dup2 (Makefile.am): Likewise.
537         * modules/euidaccess (Makefile.am): Likewise.
538         * modules/exclude (Makefile.am): Likewise.
539         * modules/exitfail (Makefile.am): Likewise.
540         * modules/fcntl-safer (Makefile.am): Likewise.
541         * modules/file-type (Makefile.am): Likewise.
542         * modules/fileblocks (Makefile.am): Likewise.
543         * modules/filemode (Makefile.am): Likewise.
544         * modules/filenamecat (Makefile.am): Likewise.
545         * modules/fnmatch (Makefile.am): Likewise.
546         * modules/fopen-safer (Makefile.am): Likewise.
547         * modules/fpending (Makefile.am): Likewise.
548         * modules/fprintftime (Makefile.am): Likewise.
549         * modules/free (Makefile.am): Likewise.
550         * modules/fsusage (Makefile.am): Likewise.
551         * modules/ftruncate (Makefile.am): Likewise.
552         * modules/fts (Makefile.am): Likewise.
553         * modules/gc (Makefile.am): Likewise.
554         * modules/gc-pbkdf2-sha1 (Makefile.am): Likewise.
555         * modules/getaddrinfo (Makefile.am): Likewise.
556         * modules/getcwd (Makefile.am): Likewise.
557         * modules/getdelim (Makefile.am): Likewise.
558         * modules/getdomainname (Makefile.am): Likewise.
559         * modules/getgroups (Makefile.am): Likewise.
560         * modules/gethostname (Makefile.am): Likewise.
561         * modules/gethrxtime (Makefile.am): Likewise.
562         * modules/getline (Makefile.am): Likewise.
563         * modules/getloadavg (Makefile.am): Likewise.
564         * modules/getlogin_r (Makefile.am): Likewise.
565         * modules/getopt (Makefile.am): Likewise.
566         * modules/getpass (Makefile.am): Likewise.
567         * modules/getpass-gnu (Makefile.am): Likewise.
568         * modules/getsubopt (Makefile.am): Likewise.
569         * modules/gettime (Makefile.am): Likewise.
570         * modules/gettimeofday (Makefile.am): Likewise.
571         * modules/getugroups (Makefile.am): Likewise.
572         * modules/getusershell (Makefile.am): Likewise.
573         * modules/glob (Makefile.am): Likewise.
574         * modules/group-member (Makefile.am): Likewise.
575         * modules/hard-locale (Makefile.am): Likewise.
576         * modules/hash (Makefile.am): Likewise.
577         * modules/hmac-md5 (Makefile.am): Likewise.
578         * modules/hmac-sha1 (Makefile.am): Likewise.
579         * modules/human (Makefile.am): Likewise.
580         * modules/idcache (Makefile.am): Likewise.
581         * modules/imaxabs (Makefile.am): Likewise.
582         * modules/imaxdiv (Makefile.am): Likewise.
583         * modules/inet_ntop (Makefile.am): Likewise.
584         * modules/inet_pton (Makefile.am): Likewise.
585         * modules/inttostr (Makefile.am): Likewise.
586         * modules/isapipe (Makefile.am): Likewise.
587         * modules/lchown (Makefile.am): Likewise.
588         * modules/long-options (Makefile.am): Likewise.
589         * modules/lstat (Makefile.am): Likewise.
590         * modules/malloc (Makefile.am): Likewise.
591         * modules/mathl (Makefile.am): Likewise.
592         * modules/mbchar (Makefile.am): Likewise.
593         * modules/md2 (Makefile.am): Likewise.
594         * modules/md4 (Makefile.am): Likewise.
595         * modules/md5 (Makefile.am): Likewise.
596         * modules/memcasecmp (Makefile.am): Likewise.
597         * modules/memchr (Makefile.am): Likewise.
598         * modules/memcmp (Makefile.am): Likewise.
599         * modules/memcoll (Makefile.am): Likewise.
600         * modules/memcpy (Makefile.am): Likewise.
601         * modules/memmem (Makefile.am): Likewise.
602         * modules/memmove (Makefile.am): Likewise.
603         * modules/mempcpy (Makefile.am): Likewise.
604         * modules/memrchr (Makefile.am): Likewise.
605         * modules/memset (Makefile.am): Likewise.
606         * modules/memxor (Makefile.am): Likewise.
607         * modules/mkancesdirs (Makefile.am): Likewise.
608         * modules/mkdir (Makefile.am): Likewise.
609         * modules/mkdir-p (Makefile.am): Likewise.
610         * modules/mkdtemp (Makefile.am): Likewise.
611         * modules/mkstemp (Makefile.am): Likewise.
612         * modules/mktime (Makefile.am): Likewise.
613         * modules/modechange (Makefile.am): Likewise.
614         * modules/mountlist (Makefile.am): Likewise.
615         * modules/nanosleep (Makefile.am): Likewise.
616         * modules/openat (Makefile.am): Likewise.
617         * modules/pagealign_alloc (Makefile.am): Likewise.
618         * modules/physmem (Makefile.am): Likewise.
619         * modules/poll (Makefile.am): Likewise.
620         * modules/posixtm (Makefile.am): Likewise.
621         * modules/posixver (Makefile.am): Likewise.
622         * modules/putenv (Makefile.am): Likewise.
623         * modules/quote (Makefile.am): Likewise.
624         * modules/quotearg (Makefile.am): Likewise.
625         * modules/raise (Makefile.am): Likewise.
626         * modules/read-file (Makefile.am): Likewise.
627         * modules/readline (Makefile.am): Likewise.
628         * modules/readlink (Makefile.am): Likewise.
629         * modules/readtokens (Makefile.am): Likewise.
630         * modules/readutmp (Makefile.am): Likewise.
631         * modules/realloc (Makefile.am): Likewise.
632         * modules/regex (Makefile.am): Likewise.
633         * modules/rename (Makefile.am): Likewise.
634         * modules/rename-dest-slash (Makefile.am): Likewise.
635         * modules/rijndael (Makefile.am): Likewise.
636         * modules/rmdir (Makefile.am): Likewise.
637         * modules/rpmatch (Makefile.am): Likewise.
638         * modules/safe-read (Makefile.am): Likewise.
639         * modules/safe-write (Makefile.am): Likewise.
640         * modules/same (Makefile.am): Likewise.
641         * modules/save-cwd (Makefile.am): Likewise.
642         * modules/savedir (Makefile.am): Likewise.
643         * modules/setenv (Makefile.am): Likewise.
644         * modules/settime (Makefile.am): Likewise.
645         * modules/sha1 (Makefile.am): Likewise.
646         * modules/sig2str (Makefile.am): Likewise.
647         * modules/snprintf (Makefile.am): Likewise.
648         * modules/stdlib-safer (Makefile.am): Likewise.
649         * modules/stpcpy (Makefile.am): Likewise.
650         * modules/stpncpy (Makefile.am): Likewise.
651         * modules/strcase (Makefile.am): Likewise.
652         * modules/strcasestr (Makefile.am): Likewise.
653         * modules/strchrnul (Makefile.am): Likewise.
654         * modules/strcspn (Makefile.am): Likewise.
655         * modules/strdup (Makefile.am): Likewise.
656         * modules/strerror (Makefile.am): Likewise.
657         * modules/strftime (Makefile.am): Likewise.
658         * modules/strndup (Makefile.am): Likewise.
659         * modules/strnlen (Makefile.am): Likewise.
660         * modules/strpbrk (Makefile.am): Likewise.
661         * modules/strsep (Makefile.am): Likewise.
662         * modules/strstr (Makefile.am): Likewise.
663         * modules/strtod (Makefile.am): Likewise.
664         * modules/strtoimax (Makefile.am): Likewise.
665         * modules/strtok_r (Makefile.am): Likewise.
666         * modules/strtol (Makefile.am): Likewise.
667         * modules/strtoll (Makefile.am): Likewise.
668         * modules/strtoul (Makefile.am): Likewise.
669         * modules/strtoull (Makefile.am): Likewise.
670         * modules/strtoumax (Makefile.am): Likewise.
671         * modules/strverscmp (Makefile.am): Likewise.
672         * modules/time_r (Makefile.am): Likewise.
673         * modules/timegm (Makefile.am): Likewise.
674         * modules/tmpfile-safer (Makefile.am): Likewise.
675         * modules/unistd-safer (Makefile.am): Likewise.
676         * modules/unlinkdir (Makefile.am): Likewise.
677         * modules/userspec (Makefile.am): Likewise.
678         * modules/utime (Makefile.am): Likewise.
679         * modules/utimecmp (Makefile.am): Likewise.
680         * modules/utimens (Makefile.am): Likewise.
681         * modules/vasnprintf (Makefile.am): Likewise.
682         * modules/vasprintf (Makefile.am): Likewise.
683         * modules/vsnprintf (Makefile.am): Likewise.
684         * modules/xalloc (Makefile.am): Likewise.
685         * modules/xgetcwd (Makefile.am): Likewise.
686         * modules/xnanosleep (Makefile.am): Likewise.
687         * modules/xreadlink (Makefile.am): Likewise.
688         * modules/xstrtod (Makefile.am): Likewise.
689         * modules/xstrtol (Makefile.am): Likewise.
690         * modules/xstrtold (Makefile.am): Likewise.
691         * modules/yesno (Makefile.am): Likewise.
692
693 2006-10-12  Jim Meyering  <jim@meyering.net>
694
695         * m4/getloadavg.m4: Revert the change below.
696
697         * m4/getloadavg.m4 (gl_GETLOADAVG): Test for the existence of
698         lib/getloadavg.c using "ls -L", not "test -f".  The latter would
699         fail with a symlink, which is what coreutils' ./bootstrap now
700         creates by default.
701
702 2006-10-12  Bruno Haible  <bruno@clisp.org>
703
704         * lib/inttypes_.h (_LONG_LONG_FORMAT_PREFIX): Don't define for MSVC or
705         mingw.
706         (_PRI64_PREFIX, _PRIu64_PREFIX, _SCN64_PREFIX, _SCNu64_PREFIX): Handle
707         MSVC and mingw explicitly.
708
709 2006-10-11  Simon Josefsson  <jas@extundo.com>
710             Bruno Haible  <bruno@clisp.org>
711
712         Add support for multiple gnulib-tool invocations in the scope of a
713         single configure.ac file.
714         * gnulib-tool (func_emit_lib_Makefile_am): In the _LIBADD variable,
715         use a private [LT]LIBOBJS variant. Define a _DEPENDENCIES variable
716         with the same contents as the _LIBADD variable.
717         (func_emit_initmacro_start, func_emit_initmacro_end,
718         func_emit_initmacro_done): New functions.
719         (func_import, func_create_testdir): Invoke them. Allow the identifiers
720         gl_LIBOBJS and gl_LTLIBOBJS.
721
722 2006-10-11  Bruno Haible  <bruno@clisp.org>
723
724         * gnulib-tool (GETTEXTPATH, AUTOHEADER, AUTOPOINT): New variables.
725         (func_create_testdir): Don't create po/Makefile.am, don't invoke
726         autoreconf. Instead, invoke autopoint explicitly but move back the
727         *.m4 files from gnulib.
728
729 2006-10-11  Bruno Haible  <bruno@clisp.org>
730
731         * gnulib-tool (func_usage): Make module names after --create-testdir
732         optional.
733         (func_create_testdir): If no module was specified, use nearly all
734         modules.
735
736 2006-10-12  Jim Meyering  <jim@meyering.net>
737
738         Big performance improvement for fts-based tools that use FTS_NOSTAT.
739         Avoid spurious inode-mismatch problems on non-POSIX file systems.
740         Details: http://article.gmane.org/gmane.comp.lib.gnulib.bugs/7416
741         * lib/fts_.h (FTS_DEFER_STAT): Define new flag.
742         (FTS_OPTIONMASK): Extend the mask to reflect this addition.
743         * lib/fts.c (DT_IS_KNOWN, DT_MUST_BE): Define.
744         (FTS_NO_STAT_REQUIRED, FTS_STAT_REQUIRED): Define.
745         (fts_set_stat_required): New function.
746         (fts_open): Defer the calls to fts_stat, if possible or requested.
747         Move the code that maps a command-line fts_info value FTS_DOT to FTS_D
748         into fts_stat itself.
749         (fts_read): Perform any required (deferred) fts_stat call.
750         (fts_build): Likewise, for the directory we're about to open and read.
751         In the readdir loop, carefully decide whether each entry will require
752         an eventual call to fts_stat, using dirent.d_type info if available.
753         (fts_stat): Move the test for whether to honor FTS_COMFOLLOW on
754         a command line argument into this function.  Update all callers.
755         Map a return value of FTS_DOT to FTS_D for a command line argument.
756         * modules/fts (Depends-on): Add d-type.  Alphabetize.
757         Thanks to Miklos Szeredi for his tenacity and for the initial
758         bug report about "find" failing on a FUSE-based file system.
759
760         * lib/fts.c (fts_open): Use consistent indentation.
761
762 2006-10-12  Paul Eggert  <eggert@cs.ucla.edu>
763
764         * m4/extensions.m4 (AC_USE_SYSTEM_EXTENSIONS): Renamed from
765         gl_USE_SYSTEM_EXTENSIONS, to fix a coreutils bootstrap failure
766         reported by Jim Meyering.  All uses of cache variables renamed
767         to match Autoconf's.
768         (gl_USE_SYSTEM_EXTENSIONS): New macro, which simply requires
769         the other one.
770
771         * m4/rename-dest-slash.m4 (gl_FUNC_RENAME_TRAILING_DEST_SLASH):
772         Fix misspelling in diagnostic.
773
774 2006-10-11  Paul Eggert  <eggert@cs.ucla.edu>
775
776         * lib/mkdir-p.c (HAVE_FCHMOD): Define to false if not already
777         defined.  Problem reported by Matthew Woehlke.
778
779         * lib/inttypes_.h (_LONG_LONG_FORMAT_PREFIX): New macro.
780         Add support for Tandem NonStop R series.
781         (_PRI64_PREFIX, _PRIu64_PREFIX, _SCN64_PREFIX, _SCNu64_PREFIX):
782         Use new macro.
783
784         * lib/rename-dest-slash.c: Include stdbool.h but not string.h.
785         (has_trailing_slash): Omit size arg; all callers changed.
786         Omit 'inline', since it doesn't help performance and we'd
787         need to configure it.
788         Don't count //, ///, etc. as having a trailing slash.
789         As a side effect, this removes a C99ism reported by Matthew Woehlke.
790         (rpl_rename_dest_slash): On failure, use rename's errno rather
791         than (in some cases) an incorrect or junk errno.
792         Simplify code by removing need to compute length; this does
793         cause it to make two passes instead of one over the file name,
794         but it's worth it.
795
796         * m4/extensions.m4 (gl_USE_SYSTEM_EXTENSIONS): Undo previous
797         change, since Autoconf's version may no longer be appropriate now
798         that we are using CVS Autoconf's version.  Add support for Tandem.
799
800 2006-10-11  Paul Eggert  <eggert@cs.ucla.edu>
801             Bruno Haible  <bruno@clisp.org>
802
803         * lib/allocsa.h (sa_alignment_longlong, sa_alignment_max): Test
804         HAVE_LONG_LONG_INT instead of HAVE_LONG_LONG.
805         * m4/allocsa.m4 (gl_ALLOCSA): Invoke AC_TYPE_LONG_LONG_INT instead of
806         gl_AC_TYPE_LONG_LONG.
807
808         * lib/printf-args.h (arg_type, argument): Test HAVE_LONG_LONG_INT
809         instead of HAVE_LONG_LONG.
810         * lib/printf-args.c (printf_fetchargs): Likewise.
811         * lib/printf-parse.c (PRINTF_PARSE): Likewise.
812         * lib/vasnprintf.c (VASNPRINTF): Likewise.
813         * m4/vasnprintf.m4 (gl_PREREQ_PRINTF_ARGS, gl_PREREQ_PRINTF_PARSE,
814         gl_PREREQ_VASNPRINTF): Invoke AC_TYPE_LONG_LONG_INT instead of
815         gl_AC_TYPE_LONG_LONG.
816
817 2006-10-11  Bruno Haible  <bruno@clisp.org>
818
819         * m4/longlong.m4: Add comments.
820         * m4/ulonglong.m4: Likewise.
821
822 2006-10-10  Bruno Haible  <bruno@clisp.org>
823
824         Make it possible to #define stpcpy, strdup to aliases.
825         * lib/stpcpy.c (stpcpy) [!_LIBC]: Don't undefine.
826         * lib/strdup.c (strdup) [!_LIBC]: Don't undefine.
827
828 2006-10-10  Bruno Haible  <bruno@clisp.org>
829
830         Make it possible to #define gcd to an alias.
831         * lib/gcd.c: Include config.h.
832
833 2006-10-10  Bruno Haible  <bruno@clisp.org>
834
835         Make it possible to #define c_isascii to an alias.
836         * lib/c-ctype.h: Don't define the macros if NO_C_CTYPE_MACROS is
837         defined. Undefine the macros before defining them, to avoid gcc
838         warnings.
839         * lib/c-ctype.c: Include config.h. Don't undefine the macros; instead,
840         define NO_C_CTYPE_MACROS early.
841
842 2006-10-10  Bruno Haible  <bruno@clisp.org>
843
844         Make it possible to #define set_program_name to an alias.
845         * lib/progname.c: Don't undefine set_program_name; instead, undefine
846         ENABLE_RELOCATABLE early.
847
848 2006-10-10  Paul Eggert  <eggert@cs.ucla.edu>
849
850         Port to Tandem NSK OSS, which has 64-bit signed int but at most
851         32-bit unsigned int.  Problem reported by Matthew Woehlke in:
852         http://lists.gnu.org/archive/html/bug-coreutils/2006-10/msg00062.html
853         More generally, don't assume that 64-bit signed int is available
854         if unsigned int is, and vice versa.
855         * lib/inttypes_.h (_PRIu64_PREFIX, _SCNu64_PREFIX): Depend on
856         unsigned symbols, not on their signed counterparts.
857         * lib/stdint_.h (uint64_t, uint_least64_t, uint_fast64_t, uintmax_t):
858         (UINT64_MAX, UINT_LEAST64_MAX, UINT_FAST64_MAX, UINTMAX_MAX):
859         (UINT64_C, UINTMAX_C):
860         Likewise.
861         * lib/strtoimax.c (strtoll): Depend on signed symbols, not their
862         unsigned counterparts.
863         (Have_long_long, Unsigned): New macros.
864         (Int): Renamed from INT.
865         (strtoimax): Use the new macros.
866         * m4/stdint.m4 (gl_STDINT_H): Require AC_TYPE_UNSIGNED_LONG_LONG_INT
867         and substitute HAVE_UNSIGNED_LONG_LONG_INT.
868         * modules/inttypes (inttypes.h): Substitute
869         HAVE_UNSIGNED_LONG_LONG_INT.
870         * modules/stdint (stdint.h): Likewise.
871         (Files): Add m4/ulonglong.m4.
872
873 2006-10-10  Bruno Haible  <bruno@clisp.org>
874
875         Fix a gcc -Wshadow warning.
876         * lib/gl_anyhash_list2.h (hash_resize): Rename local variable 'index'
877         to 'bucket'.
878         * lib/gl_anylinked_list2.h (gl_linked_search_from_to,
879         gl_linked_indexof_from_to): Likewise.
880         * lib/gl_linkedhash_list.c (add_to_bucket, remove_from_bucket):
881         Likewise.
882         * lib/gl_anytreehash_list1.h (add_to_bucket, remove_from_bucket):
883         Likewise.
884         * lib/gl_anytreehash_list2.h (gl_tree_search_from_to): Likewise.
885         Reported by Eric Blake.
886
887 2006-10-09  Paul Eggert  <eggert@cs.ucla.edu>
888
889         * lib/filemode.h [HAVE_DECL_STRMODE]: Include unistd.h too,
890         for NetBSD.  Problem reported by Bruno Haible.
891
892 2006-10-09  Jim Meyering  <jim@meyering.net>
893
894         * lib/lchown.c: Include <sys/stat.h> before "stat-macros.h".
895         Patch from Bruno Haible.
896
897 2006-10-09  Jim Meyering  <jim@meyering.net>
898
899         * lib/fts-cycle.c (leave_dir): When "leaving" a top level directory due
900         to FTS_SKIP, don't copy the parent's uninitialized dev/ino values.
901         Trigger with e.g., mkdir d && valgrind ./chmod u+rwx d d
902
903 2006-10-08  Paul Eggert  <eggert@cs.ucla.edu>
904
905         Don't include <config.h> twice; this doesn't work in some cases,
906         e.g., when config.h has "#define intmax_t long long int" and
907         we include <config.h>, <inttypes.h>, <config.h> in that order.
908         Problem reported by Matthew Woehlke in:
909         http://lists.gnu.org/archive/html/bug-coreutils/2006-10/msg00073.html
910         * lib/fprintftime.c: Don't include config.h or fprintftime.h.
911         * lib/fts-cycle.c: Don't include config.h.
912         * lib/strftime.c: Include fprintftime.h if FPRINTFTIME is defined.
913         * lib/xstrtoimax.c: Remove copyright notice since it's short tnow.
914         Don't include config.h or xstrtol.h.  Define STRTOL_T_MINIMUM
915         and STRTOL_T_MAXIMUM unconditionally, since we now assume gnulib
916         inttypes.h.
917         * lib/xstrtoumax.c: Likewise.
918         * lib/xstrtol.c: Include config.h and xstrtol.h after defining
919         __strtol and the like, so that this module is more like its siblings.
920         (STRTOL_T_MINIMUM, STRTOL_T_MAXIMUM) [! defined STRTOL_T_MINIMUM]:
921         Remove; no longer needed now that we assume gnulib inttypes.h.
922
923 2006-10-08  Bruno Haible  <bruno@clisp.org>
924
925         * doc/gnulib-tool.texi: Emphasize the drawbacks of the --symlink
926         option.
927
928 2006-10-07  Jim Meyering  <jim@meyering.net>
929
930         * modules/inttypes (inttypes.h): Revert what seems to have been
931         an inadvertent part of today's change: use "|", not "/" in the
932         substitution for the "/"-containing string, $(ABSOLUTE_INTTYPES_H).
933
934 2006-10-07  Bruno Haible  <bruno@clisp.org>
935
936         * modules/sublist: New file.
937
938 2006-10-07  Bruno Haible  <bruno@clisp.org>
939
940         * modules/alloca-opt (alloca.h): Add a "DO NOT EDIT" comment.
941         * modules/argz (argz.h): Likewise.
942         * modules/arpa_inet (arpa/inet.h): Likewise.
943         * modules/byteswap (byteswap.h): Likewise.
944         * modules/configmake (configmake.h): Likewise.
945         * modules/fcntl (fcntl.h): Likewise.
946         * modules/fnmatch (fnmatch.h): Likewise.
947         * modules/getopt (getopt.h): Likewise.
948         * modules/glob (glob.h): Likewise.
949         * modules/inttypes (inttypes.h): Likewise.
950         * modules/netinet_in (netinet/in.h): Likewise.
951         * modules/poll (poll.h): Likewise.
952         * modules/stdbool (stdbool.h): Likewise.
953         * modules/stdint (stdint.h): Likewise.
954         * modules/sys_select (sys/select.h): Likewise.
955         * modules/sys_socket (sys/socket.h): Likewise.
956         * modules/sys_stat (sys/stat.h): Likewise.
957         * modules/sysexits (sysexits.h): Likewise.
958         * modules/unistd (unistd.h): Likewise.
959         * gnulib-tool (func_emit_lib_Makefile_am, func_emit_tests_Makefile_am):
960         Add a "DO NOT EDIT" comment to the generated file.
961         (func_import): Likewise for gnulib-comp.m4.
962
963 2006-10-07  Bruno Haible  <bruno@clisp.org>
964
965         * lib/gl_sublist.h: New file.
966         * lib/gl_sublist.c: New file.
967
968 2006-10-06  Paul Eggert  <eggert@cs.ucla.edu>
969
970         * lib/mkancesdirs.c (mkancesdirs): Pass to MAKE_DIR both the full file
971         name (relative to the original working directory) and the file
972         name component (relative to the temporary working directory).  All
973         callers changed.
974         * lib/mkancesdirs.h (mkancesdirs): Adjust prototype to match.
975         * lib/mkdir-p.c (make_dir_parents): Likewise.
976         * lib/mkdir-p.h (make_dir_parents): Likewise.
977
978 2006-10-06  Eric Blake  <ebb9@byu.net>
979
980         Define several macros for use by the clean-temp module.
981         * m4/close-stream.m4 (gl_CLOSE_STREAM): Define GNULIB_CLOSE_STREAM.
982         * m4/fcntl-safer.m4 (gl_FCNTL_SAFER): Define GNULIB_FCNTL_SAFER.
983         * m4/stdio-safer.m4 (gl_FOPEN_SAFER): Define GNULIB_FOPEN_SAFER.
984
985         * lib/clean-temp.h (close_stream_temp): New declaration.
986         * lib/clean-temp.c (includes): Pull in headers according to what
987         other modules are in use.
988         (close_stream_temp) [GNULIB_CLOSE_STREAM]: New function.
989
990 2006-10-06  Bruno Haible  <bruno@clisp.org>
991
992         * lib/javacomp.c (write_temp_file): Use fopen_temp, fwriteerror_temp
993         instead of fopen, fwriteerror.
994
995 2006-10-06  Bruno Haible  <bruno@clisp.org>
996
997         * lib/clean-temp.h (cleanup_temp_file, cleanup_temp_subdir,
998         cleanup_temp_dir_contents, cleanup_temp_dir): Change return type to
999         int.
1000         * lib/clean-temp.c (do_unlink, do_rmdir, cleanup_temp_file,
1001         cleanup_temp_subdir, cleanup_temp_dir_contents, cleanup_temp_dir):
1002         Return an error indicator.
1003         Suggested by Eric Blake.
1004
1005 2006-10-06  Bruno Haible  <bruno@clisp.org>
1006
1007         * lib/clean-temp.c (PATH_MAX): Provide a fallback for GNU Hurd.
1008         Reported by Eric Blake.
1009
1010 2006-10-06  Bruno Haible  <bruno@clisp.org>
1011
1012         * modules/closeout (Description): Mention stderr too.
1013
1014 2006-10-06  Bruno Haible  <bruno@clisp.org>
1015         and Paul Eggert  <eggert@cs.ucla.edu>
1016
1017         * lib/closeout.c (close_stdout): Also close stderr.
1018         * lib/closeout.h: Update comment.
1019
1020 2006-10-05  Paul Eggert  <eggert@cs.ucla.edu>
1021
1022         Fix some Darwin-7.9.0 porting problems reported by Bruno Haible in
1023         <http://lists.gnu.org/archive/html/bug-coreutils/2006-10/msg00063.html>.
1024         * lib/dirchownmod.c: Include lchown.h.
1025         * lib/lchown.c: Don't include files that lchown.h now includes.
1026         Don't declare chown, since lchown.h now does that.
1027         * lib/lchown.h: Include errno.h, sys/types.h, unistd.h.
1028         (lchown): Define to rpl_chown if lchown is declared but
1029         does not exist.  Declare using a prototype if lchown is not
1030         declared.  Add a copyright notice.
1031         * lib/mkstemp.h: Include <unistd.h>.
1032         * lib/openat.c: Include lchown.h.
1033
1034         * lib/fcntl_.h (O_NOFOLLOW): Don't depend on O_NOFOLLOW_IS_INEFFECTIVE;
1035         we now test for that separately.
1036         * lib/fts.c (fts_safe_changedir): Inspect HAVE_WORKING_O_NOFOLLOW
1037         rather than O_NOFOLLOW, when testing whether it's possible to
1038         avoid a race condition reliably.
1039         * lib/savewd.c (savewd_chdir): Likewise.
1040
1041         Remove macros that are no longer needed now that stdint.h is
1042         reliable.
1043         * lib/fsusage.c (UINTMAX_MAX): Remove.
1044         * lib/human.c (SIZE_MAX, UINTMAX_MAX): Remove.
1045         * lib/utimecmp.c (SIZE_MAX): Remove.
1046
1047         * m4/lchown.m4 (gl_FUNC_LCHOWN): Check whether lchown is declared.
1048
1049         * m4/fcntl_h.m4 (gl_FCNTL_H): Define HAVE_WORKING_O_NOFOLLOW instead
1050         of O_NOFOLLOW_IS_INEFFECTIVE.  Define HAVE_WORKING_O_NOATIME if
1051         O_NOATIME works.
1052
1053 2006-10-05  Bruno Haible  <bruno@clisp.org>
1054
1055         * lib/gl_list.h (gl_sortedlist_search_from_to,
1056         gl_sortedlist_indexof_from_to): New declarations.
1057         (gl_list_implementation): New fields sortedlist_search_from_to,
1058         sortedlist_indexof_from_to.
1059         (gl_sortedlist_search_from_to, gl_sortedlist_indexof_from_to): New
1060         inline functions.
1061         * lib/gl_list.c (gl_sortedlist_search_from_to,
1062         gl_sortedlist_indexof_from_to): New functions.
1063         * lib/gl_array_list.c (gl_array_sortedlist_indexof_from_to): New
1064         function.
1065         (gl_array_sortedlist_indexof, gl_array_sortedlist_search): Use it.
1066         (gl_array_sortedlist_search_from_to): New function.
1067         (gl_array_list_implementation): Update.
1068         * lib/gl_carray_list.c (gl_carray_sortedlist_indexof_from_to): New
1069         function.
1070         (gl_carray_sortedlist_indexof, gl_carray_sortedlist_search): Use it.
1071         (gl_carray_sortedlist_search_from_to): New function.
1072         (gl_carray_list_implementation): Update.
1073         * lib/gl_anylinked_list2.h (gl_linked_sortedlist_search_from_to,
1074         gl_linked_sortedlist_indexof_from_to): New functions.
1075         * lib/gl_linked_list.c (gl_linked_list_implementation): Update.
1076         * lib/gl_linkedhash_list.c (gl_linkedhash_list_implementation): Update.
1077         * lib/gl_anytree_list2.h (gl_tree_sortedlist_search_from_to,
1078         gl_tree_sortedlist_indexof_from_to): New functions.
1079         * lib/gl_avltree_list.c (gl_avltree_list_implementation): Update.
1080         * lib/gl_avltreehash_list.c (gl_avltreehash_list_implementation):
1081         Update.
1082         * lib/gl_rbtree_list.c (gl_rbtree_list_implementation): Update.
1083         * lib/gl_rbtreehash_list.c (gl_avltreehash_list_implementation):
1084         Update.
1085
1086 2006-10-05  Bruno Haible  <bruno@clisp.org>
1087
1088         * lib/gl_list.h (gl_list_search_from, gl_list_search_from_to,
1089         gl_list_indexof_from, gl_list_indexof_from_to): New declarations.
1090         (struct gl_list_implementation): Add fields search_from_to,
1091         indexof_from_to. Remove fields search, indexof.
1092         (gl_list_search): Use the search_from_to method.
1093         (gl_list_search_from, gl_list_search_from_to): New functions.
1094         (gl_list_indexof): Use the indexof_from_to method.
1095         (gl_list_indexof_from, gl_list_indexof_from_to): New functions.
1096         * lib/gl_list.c (gl_list_search): Use the search_from_to method.
1097         (gl_list_search_from, gl_list_search_from_to): New functions.
1098         (gl_list_indexof): Use the indexof_from_to method.
1099         (gl_list_indexof_from, gl_list_indexof_from_to): New functions.
1100         * lib/gl_array_list.c (gl_array_indexof_from_to): Renamed from
1101         gl_array_indexof. Add start_index, end_index arguments.
1102         (gl_array_search_from_to): Renamed from gl_array_search. Add
1103         start_index, end_index arguments.
1104         (gl_array_remove, gl_array_list_implementation): Update.
1105         * lib/gl_carray_list.c (gl_carray_indexof_from_to): Renamed from
1106         gl_carray_indexof. Add start_index, end_index arguments.
1107         (gl_carray_search_from_to): Renamed from gl_carray_search. Add
1108         start_index, end_index arguments.
1109         (gl_carray_remove, gl_carray_list_implementation): Update.
1110         * lib/gl_anylinked_list2.h (gl_linked_search_from_to): Renamed from
1111         gl_linked_search. Add start_index, end_index arguments.
1112         (gl_linked_indexof_from_to): Renamed from gl_linked_indexof. Add
1113         start_index, end_index arguments.
1114         (gl_linked_remove): Update.
1115         * lib/gl_linked_list.c (gl_linked_list_implementation): Update.
1116         * lib/gl_linkedhash_list.c (gl_linkedhash_list_implementation): Update.
1117         * lib/gl_anytree_list1.h (iterstack_item_t): Change type of 'rightp'
1118         field to 'size_t'.
1119         * lib/gl_anytree_list2.h (gl_tree_search_from_to): Renamed from
1120         gl_tree_search. Add start_index, end_index arguments.
1121         (gl_tree_indexof_from_to): Renamed from gl_tree_indexof. Add
1122         start_index, end_index arguments.
1123         (gl_tree_remove): Update.
1124         * lib/gl_avltree_list.c (gl_avltree_list_implementation): Update.
1125         * lib/gl_rbtree_list.c (gl_rbtree_list_implementation): Update.
1126         * lib/gl_anytreehash_list1.h (compare_position_threshold): New
1127         function.
1128         * lib/gl_anytreehash_list2.h (gl_tree_search_from_to): Renamed from
1129         gl_tree_search. Add start_index, end_index arguments.
1130         (gl_tree_indexof_from_to): Renamed from gl_tree_indexof. Add
1131         start_index, end_index arguments.
1132         * lib/gl_avltreehash_list.c (gl_avltreehash_list_implementation):
1133         Update.
1134         * lib/gl_rbtreehash_list.c (gl_rbtreehash_list_implementation): Update.
1135
1136 2006-10-05  Bruno Haible  <bruno@clisp.org>
1137
1138         * modules/fwriteerror (configure.ac): Define GNULIB_FWRITEERROR.
1139
1140         * lib/clean-temp.h (open_temp, fopen_temp, close_temp, fclose_temp,
1141         fwriteerror_temp): New declarations.
1142         * lib/clean-temp.c (uintptr_t): Provide fallback definition.
1143         (descriptors): New variable.
1144         (cleanup): First, close the descriptors.
1145         (register_fd, unregister_fd, open_temp, fopen_temp, close_temp,
1146         fclose_temp, fwriteerror_temp): New functions.
1147
1148 2006-10-04  Jim Meyering  <jim@meyering.net>
1149
1150         * lib/fts.c (fts_open): Tiny comment change.
1151
1152 2006-10-04  Bruno Haible  <bruno@clisp.org>
1153
1154         Make it possible to invoke AC_GNU_SOURCE after gl_LOCK_EARLY.
1155         * m4/lock.m4 (gl_LOCK_EARLY_BODY): New macro, extracted code from
1156         gl_LOCK_BODY.
1157         (gl_LOCK_EARLY): Require gl_LOCK_EARLY_BODY, not gl_LOCK_BODY.
1158         (gl_LOCK_BODY): Remove settings of CPPFLAGS, now done in
1159         gl_LOCK_EARLY_BODY.
1160         (gl_LOCK): Require gl_LOCK_BODY.
1161
1162 2006-10-04  Bruno Haible  <bruno@clisp.org>
1163
1164         * lib/gl_oset.h (gl_setelement_threshold_fn): New type.
1165         (gl_oset_search_atleast): New declaration.
1166         (struct gl_oset_implementation): Add field 'search_atleast'.
1167         (gl_oset_search_atleast): New inline function.
1168         * lib/gl_oset.c (gl_oset_search_atleast): New function.
1169         * lib/gl_array_oset.c (gl_array_search_atleast): New function.
1170         (gl_array_oset_implementation): Update.
1171         * lib/gl_anytree_oset.h (gl_tree_search_atleast): New function.
1172         * lib/gl_avltree_oset.c (gl_avltree_oset_implementation): Update.
1173         * lib/gl_rbtree_oset.c (gl_rbtree_oset_implementation): Update.
1174
1175 2006-10-04  Bruno Haible  <bruno@clisp.org>
1176
1177         * lib/fatal-signal.c (fatal_signals) [WOE32]: Add the SIGBREAK signal.
1178
1179 2006-10-03  Bruno Haible  <bruno@clisp.org>
1180
1181         * lib/gl_rbtreehash_list.c (gl_rbtreehash_list_implementation): Renamed
1182         from gl_avltreehash_list_implementation.
1183
1184 2006-10-03  Bruno Haible  <bruno@clisp.org>
1185
1186         * lib/gl_oset.c (gl_oset_add): Fix return type.
1187
1188 2006-10-02  Paolo Bonzini  <bonzini@gnu.org>  (tiny change)
1189
1190         * lib/quotearg.c (mbstate_t) [!HAVE_MBRTOWC]: #define to int.
1191
1192 2006-10-02  Eric Blake  <ebb9@byu.net>
1193
1194         * modules/strnlen (Depends-on): Add extensions.
1195
1196 2006-10-02  Eric Blake  <ebb9@byu.net>
1197
1198         * m4/extensions.m4 (gl_USE_SYSTEM_EXTENSIONS): Use autoconf's
1199         definition in 2.60+.
1200
1201 2006-10-02  Dmitry V. Levin  <ldv@altlinux.org>
1202
1203         * lib/fts.c (fts_close, fts_build, fts_palloc): Remove redundant
1204         checks.
1205
1206 2006-10-02  Bruno Haible  <bruno@clisp.org>
1207
1208         * gnulib-tool (func_emit_lib_Makefile_am): Don't add no-dependencies
1209         to the AUTOMAKE_OPTIONS.
1210         Reported by Jim Meyering.
1211
1212 2006-09-29  Paul Eggert  <eggert@cs.ucla.edu>
1213
1214         Work around bug in Solaris 10 /proc file system:
1215         /proc/self/fd/NNN/.. isn't the parent directory of
1216         the directory whose file descriptor is NNN.  This needs to
1217         be worked around at run time, not compile time, since a
1218         program might be built on Solaris 8, where things work, and
1219         run on Solaris 10.
1220         * lib/openat-priv.h (BUILD_PROC_NAME): Remove.  All callers changed
1221         to use the following interface instead:
1222         (OPENAT_BUFFER_SIZE): New macro.
1223         (openat_proc_name): New function.
1224         * lib/at-func.c (AT_FUNC_NAME): Adjust to above changes.
1225         * lib/openat.c (openat_permissive, openat_needs_fchdir, fdopendir):
1226         Likewise.
1227         * lib/openat-proc.c: New file.
1228         * modules/openat (Files): Add lib/openat-proc.c.
1229         (Depends-on): Add same-inode, stdbool.
1230         * m4/openat.m4 (gl_FUNC_OPENAT): Add AC_LIBOBJ(openat-proc).
1231
1232 2006-09-29  Bruno Haible  <bruno@clisp.org>
1233
1234         * lib/fwriteerror.h (fwriteerror_no_ebadf): New declaration.
1235         * lib/(do_fwriteerror): Renamed from fwriteerror. Add ignore_ebadf
1236         argument. Set stdout_closed before testing for ferror, not after.
1237         (fwriteerror, fwriteerror_no_ebadf): New functions.
1238
1239 2006-09-28  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
1240
1241         * m4/intmax.m4 (gt_TYPE_INTMAX_T): Avoid unused variables warning.
1242
1243 2006-09-28  Paolo Bonzini  <bonzini@gnu.org>
1244
1245         * lib/poll.c (rpl_poll) [__APPLE__]: Use FIONREAD instead of MSG_PEEK.
1246         * m4/poll.m4: Look for sys/ioctl.h and sys/filio.h.
1247
1248 2006-09-28  Jim Meyering  <jim@meyering.net>
1249
1250         * lib/mkdir-p.c: Include "dirchownmod.h", not "dirchownmod.c".
1251         Include <unistd.h>.
1252
1253 2006-09-28  Bruno Haible  <bruno@clisp.org>
1254
1255         * modules/avltreehash-list (Depends-on): Add stdint, remove size_max.
1256         * modules/linkedhash-list (Depends-on): Likewise.
1257         * modules/rbtreehash-list (Depends-on): Likewise.
1258
1259 2006-09-28  Bruno Haible  <bruno@clisp.org>
1260
1261         * lib/strndup.h: Simplify the redefinition of strndup.
1262         (_GL_CONCAT, _GL_XCONCAT, __STRNDUP_ID): Remove macros.
1263         * m4/strndup.m4 (gl_FUNC_STRNDUP): Don't define __STRNDUP_PREFIX.
1264
1265 2006-09-28  Bruno Haible  <bruno@clisp.org>
1266
1267         * lib/gl_avltreehash_list.c: Include <stdint.h> instead of size_max.h.
1268         * lib/gl_linkedhash_list.c: Likewise.
1269         * lib/gl_rbtreehash_list.c: Likewise.
1270
1271 2006-09-27  Paul Eggert  <eggert@cs.ucla.edu>
1272
1273         * lib/canon-host.c (canon_host_r): Work around bug in Darwin 7.9.0
1274         getaddrinfo.
1275
1276         * lib/__fpending.h: Don't include <stdio_ext.h> unless
1277         HAVE_DECL___FPENDING.  This avoids a bug with lsbcc, where
1278         it causes <stdio_ext.h> to cause a compile-time error.
1279         Problem reported by Nelson H. F. Beebe.
1280         * lib/getpass.c: Likewise, except for HAVE_DECL___FSETLOCKING instead
1281         of HAVE_DECL___PENDING.
1282
1283         * m4/fpending.m4 (gl_FUNC_FPENDING): Check for stdio_ext at most once.
1284         * m4/getpass.m4 (gl_PREREQ_GETPASS): Check for __fsetlocking's
1285         declaration.
1286
1287 2006-09-27  Jim Meyering  <jim@meyering.net>
1288
1289         This file could end up with a definition for a function
1290         named __strndup, rather than rpl_strndup on a system with
1291         incomplete weak_alias support.
1292         * lib/strndup.c (strndup): Rename from __strndup.
1293         Remove #defines that used to map __strndup to strndup.
1294         Don't use K&R prototypes.
1295         Remove LIBC-related code, since this file is not sync'd with glibc.
1296         * lib/strndup.h: Revamp, accordingly.
1297         * m4/strndup.m4: Modernize.
1298
1299 2006-09-26  Paul Eggert  <eggert@cs.ucla.edu>
1300
1301         * modules/savewd (Depends-on): Add 'raise'.
1302         * lib/savewd.c: Include <signal.h>, for 'raise'.
1303
1304 2006-09-26  Jim Meyering  <jim@meyering.net>
1305
1306         * m4/acl.m4 (AC_FUNC_ACL): Disable ACL support altogether
1307         when we detect Darwin 8.7.0's acl_get_file bug.
1308         Rearrange to perform the new (below) run-test while $LIBS
1309         contains any acl-related library.  Set USE_ACL at the end.
1310         (gl_ACL_GET_FILE): New function.
1311
1312 2006-09-26  Eric Blake  <ebb9@byu.net>
1313
1314         * lib/verror.c: Include <config.h> unconditionally.
1315
1316 2006-09-25  Paul Eggert  <eggert@cs.ucla.edu>
1317
1318         * modules/clock-time (Maintainer): Add self.
1319         * modules/getlogin_r (Depends-on): Add extensions.
1320
1321 2006-09-25  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
1322
1323         * modules/clock-time: New module.
1324         * modules/nanosleep (Depends-on): Add clock-time.
1325         * modules/gethrxtime (Depends-on): Likewise.
1326         * modules/gettime (Depends-on): Likewise.
1327         * modules/settime (Depends-on): Likewise.
1328
1329         * modules/fts-lgpl: Depend on openat.
1330         * modules/mkancesdirs: Depend on savewd.
1331         * modules/mkdir-p: Likewise.
1332
1333 2006-09-25  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
1334
1335         * m4/host-os.m4 (gl_HOST_OS): Require AC_CANONICAL_HOST.
1336
1337         * m4/chdir-long.m4 (gl_FUNC_CHDIR_LONG): Rename cache variable from
1338         `gl_have_arbitrary_file_name_length_limit' to
1339         `gl_cv_have_arbitrary_file_name_length_limit', so that caching
1340         actually works between configure runs.
1341
1342 2006-09-25  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
1343             Bruno Haible  <bruno@clisp.org>
1344
1345         * m4/stpncpy.m4 (gl_FUNC_STPNCPY): Include <string.h>.
1346
1347 2006-09-25  Jim Meyering  <jim@meyering.net>
1348
1349         * m4/fcntl_h.m4 (gl_FCNTL_H): Fix typo in test for failed open.
1350         This typo caused coreutils/tests/dd/misc to fail on Darwin 8.7.0.
1351
1352 2006-09-25  Eric Blake  <ebb9@byu.net>
1353
1354         * gnulib-tool (func_import, func_create_testdir): Fix typos in
1355         exec's in 2006-09-18 patch when shuffling fds.
1356
1357 2006-09-25  Bruno Haible  <bruno@clisp.org>
1358
1359         * m4/getloadavg.m4 (gl_GETLOADAVG): Fix directory in error message.
1360         Reported by Jim Meyering.
1361
1362 2006-09-24  Jim Meyering  <jim@meyering.net>
1363
1364         * m4/ls-mntd-fs.m4 (gl_LIST_MOUNTED_FILE_SYSTEMS): Don't use '>' to
1365         compare a pointer against a literal "0".  That caused failures with
1366         at least HP-UX's hpcc.
1367
1368 2006-09-22  Simon Josefsson  <jas@extundo.com>
1369
1370         * modules/gc-sha1:
1371         * modules/gc-md4:
1372         * modules/gc-hmac-sha1:
1373         * modules/gc-hmac-md5:
1374         * modules/gc-des:
1375         * modules/gc-arcfour: Distribute more files.
1376
1377 2006-09-22  Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
1378
1379         * lib/gl_anylinked_list2.h [lint] (gl_linked_iterator)
1380         (gl_linked_iterator_from_to): Initialize struct completely.
1381         * lib/gl_anytree_list2.h [lint] (gl_tree_iterator): Likewise.
1382         (gl_tree_iterator_from_to): Likewise
1383         * lib/gl_anytree_oset.h [lint] (gl_tree_iterator): Likewise.
1384         * lib/gl_array_list.c [lint] (gl_array_iterator)
1385         (gl_array_iterator_from_to): Likewise.
1386         * lib/gl_array_oset.c [lint] (gl_array_iterator): Likewise.
1387         * lib/gl_carray_list.c [lint] (gl_carray_iterator)
1388         (gl_carray_iterator_from_to): Likewise.
1389
1390         * lib/gc-gnulib.c [GC_USE_HMAC_SHA1]: include hmac.h for hmac_sha1.
1391         * lib/md4.c (md4_process_block): Remove unused variable.
1392         * lib/rijndael-api-fst.c (rijndaelBlockDecrypt): GCC suggests
1393         parentheses for clarity.
1394
1395 2006-09-22  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
1396
1397         * modules/bison-i18n (Depends-on): Add gettext.
1398
1399 2006-09-22  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
1400
1401         * m4/fsusage.m4 (gl_STATFS_TRUNCATES): Avoid unused variable.
1402         * m4/getdate.m4 (gl_C_COMPOUND_LITERALS): Likewise.
1403         * m4/jm-winsz1.m4 (gl_HEADER_TIOCGWINSZ_IN_TERMIOS_H): Likewise;
1404         also add missing comma that caused broken test.
1405         * m4/link-follow.m4 (gl_AC_FUNC_LINK_FOLLOWS_SYMLINK): Include
1406         stdlib.h, for `abort'.
1407         * m4/ls-mntd-fs.m4 (gl_LIST_MOUNTED_FILE_SYSTEMS): Avoid unused
1408         variables.
1409         * m4/mkdir-slash.m4 (gl_FUNC_MKDIR_TRAILING_SLASH): Check for and
1410         include unistd.h if present, for `rmdir'.
1411         * m4/physmem.m4 (gl_SYS__SYSTEM_CONFIGURATION): Avoid unused
1412         variables.
1413         * m4/putenv.m4 (gl_FUNC_PUTENV): Rewrite using AC_RUN_IFELSE, and
1414         in the process include standard headers for prototypes.
1415         * m4/readutmp.m4 (gl_READUTMP): Require AC_GNU_SOURCE, so utmpxname
1416         gets declared on GNU/Linux.
1417         * m4/rmdir-errno.m4 (gl_FUNC_RMDIR_NOTEMPTY): Check for and include
1418         unistd.h, for `rmdir'.
1419         * m4/time_r.m4 (gl_TIME_R): Avoid unused variables.
1420
1421         * m4/fnmatch.m4 (_AC_FUNC_FNMATCH_IF): Avoid expression that is
1422         always true.
1423         * m4/strndup.m4 (gl_FUNC_STRNDUP): include stdlib.h, for `free'.
1424
1425         * m4/sockpfaf.m4 (gl_SOCKET_FAMILIES): Avoid gcc -Wall warnings.
1426
1427 2006-09-22  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
1428
1429         * gnulib-tool (func_version): Create output all at once.  This
1430         may help avoid triggering unnecessary SIGPIPEs, and at any
1431         rate it doesn't hurt.
1432
1433 2006-09-22  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
1434             Bruno Haible  <bruno@clisp.org>
1435
1436         * m4/lock.m4 (gl_LOCK_BODY): Avoid unused variables warning.
1437         * m4/mbswidth.m4 (gl_MBSWIDTH): Likewise.
1438         * m4/signed.m4 (bh_C_SIGNED): Likewise.
1439
1440         * m4/vasprintf.m4 (gl_PREREQ_VASPRINTF_H): New macro.
1441         (gl_FUNC_VASPRINTF): Invoke it.
1442
1443 2006-09-22  Bruno Haible  <bruno@clisp.org>
1444
1445         * m4/getloadavg.m4 (gl_GETLOADAVG): Expect the directory of
1446         getloadavg.c as first argument.
1447
1448 2006-09-22  Bruno Haible  <bruno@clisp.org>
1449
1450         * gnulib-tool (func_import, func_create_testdir): Set gl_source_base
1451         at the beginning of the gl_INIT macro.
1452         * modules/getloadavg (configure.ac): Pass $gl_source_base to
1453         gl_GETLOADAVG.
1454
1455 2006-09-22  Bruno Haible  <bruno@clisp.org>
1456
1457         * gnulib-tool (func_create_megatestdir): Don't include the config-h
1458         module.
1459         Suggested by Ralf Wildenhues.
1460
1461 2006-09-20  Paul Eggert  <eggert@cs.ucla.edu>
1462
1463         Import this patch from libc:
1464
1465         2006-09-06  Jakub Jelinek  <jakub@redhat.com>
1466
1467         * lib/regex_internal.c (re_string_reconstruct): Handle
1468         offset < pstr->valid_raw_len && pstr->offsets_needed case.
1469         Ensure no bytes read before raw_mbs array.  Pass a saved copy of
1470         pstr->valid_len - 1 rather than pstr->valid_raw_len - 1 to
1471         re_string_context_at.
1472
1473         * m4/regex.m4 (gl_REGEX): Check for locale.h, since the test
1474         now requires it.
1475         (gl_PREREQ_REGEX): Don't check for locale.h any more, since
1476         gl_REGEX now does it for us.
1477         (gl_REGEX): Add test taken from
1478         http://sourceware.org/ml/libc-hacker/2006-09/msg00008.html.
1479
1480         * m4/mkstemp.m4 (gl_FUNC_MKSTEMP): Require AC_SYS_LARGEFILE.
1481         Check that large offsets work.  Modernize Autoconf usages.
1482         Prefer "yes" to mean a good thing rather than a bad.
1483         Don't put "#define mkstemp" in config.h, as this might interfere
1484         with standard system headers that "#define mkstemp mkstemp64".
1485
1486         * modules/mkstemp (Depends-on): Add extensions, so that
1487         mkstemp is visible on some platforms.
1488         (Makefile.am): Add mkstemp.h to EXTRA_DIST.
1489         (Include): Change to "mkstemp.h" from <stdlib.h>.
1490         (Files): Add mkstemp.h.
1491
1492         * lib/mkstemp.h: New file, since some standard headers
1493         #define mkstemp.
1494         * lib/mkstemp.c: Revamp to put the !_LIBC code together.
1495         Include "mkstemp.h".
1496         Make the _LIBC code resemble glibc original more,
1497         e.g., use K&R style.
1498         * lib/mkstemp-safer.c: Include "mkstemp.h" instead of <stdlib.h>.
1499         (mkstemp): Remove, since mkstemp.h does this for us.
1500         * lib/stdlib--.h: Include mkstemp.h.
1501
1502         Import this patch from libc:
1503
1504         2006-04-07  Ulrich Drepper  <drepper@redhat.com>
1505
1506         * lib/tempname.c (__gen_tempname): Change attempts_min
1507         into a macro.  Use preprocessor to decide how to initialize
1508         attempts [Coverity CID 67].
1509
1510 2006-09-20  Bruno Haible  <bruno@clisp.org>
1511
1512         * lib/mkdtemp.c: Import from libc.
1513         2006-04-07  Ulrich Drepper  <drepper@redhat.com>
1514                 * sysdeps/posix/tempname.c (__gen_tempname): Change
1515                 attempts_min into a macro.  Use preprocessor to decide how to
1516                 initialize attempts [Coverity CID 67].
1517         2001-11-27  Paul Eggert  <eggert@twinsun.com>
1518                 * sysdeps/posix/tempname.c (__gen_tempname): Try at least
1519                 ATTEMPTS_MIN or TMP_MAX times, whichever is greater.
1520
1521 2006-09-19  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
1522
1523         * gnulib-tool (func_exit): New function, to allow to pass the
1524         exit status portably through the trap.  Use everywhere.
1525         (--help, --version): Signal a write error.
1526         (trap): catch SIGPIPE, for write errors.
1527         Exit at the end of the trap, with the correct exit status.
1528
1529 2006-09-19  Karl Berry  <karl@gnu.org>
1530
1531         * doc/gnulib.texi: note about the license texinfo files.
1532
1533 2006-09-19  Eric Blake  <ebb9@byu.net>
1534
1535         * gnulib-tool: Avoid space-tab.
1536
1537 2006-09-18  Paul Eggert  <eggert@cs.ucla.edu>
1538
1539         * lib/getaddrinfo.c (getaddrinfo) [defined HAVE_IPV6]: Fix typo
1540         that prevented coreutils 6.1 from building.  Problem reported
1541         by Petter Reinholdtsen.
1542
1543 2006-09-18  Paul Eggert  <eggert@cs.ucla.edu>
1544
1545         * gnulib-tool (avoidlist): Fix typo that broke options like
1546         --avoid=lock that are used by coreutils bootstrap.
1547
1548 2006-09-18  Mark D. Baushke  <mdb@gnu.org>
1549
1550         * m4/inttypes.m4 (gl_INTTYPES_H): Quote "test" args
1551         more systematically.
1552
1553 2006-09-18  Jim Meyering  <jim@meyering.net>
1554
1555         * lib/savewd.c (savewd_restore): Don't shadow: s/status/child_status/.
1556
1557 2006-09-18  Bruno Haible  <bruno@clisp.org>
1558
1559         * modules/inttypes (Files): Remove m4/inttypes-h.m4.
1560
1561 2006-09-18  Bruno Haible  <bruno@clisp.org>
1562
1563         * m4/inttypes-h.m4 (gl_HEADER_INTTYPES_H): Remove macro.
1564         * m4/inttypes-pri.m4: Require autoconf >= 2.52.
1565         (gt_INTTYPES_PRI): Invoke AC_CHECK_HEADERS on inttypes.h. Test
1566         ac_cv_header_inttypes_h instead of gl_cv_header_inttypes_h.
1567         * m4/gettext.m4: Require autoconf >= 2.52.
1568         (gt_INTL_SUBDIR_CORE): Invoke AC_CHECK_HEADERS on inttypes.h.
1569         * m4/inttypes.m4 (gl_INTTYPES_H): Test ac_cv_header_inttypes_h instead
1570         of gl_cv_header_inttypes_h.
1571
1572 2006-09-18  Bruno Haible  <bruno@clisp.org>
1573
1574         * lib/javaversion.c: Include configmake.h.
1575
1576 2006-09-18  Bruno Haible  <bruno@clisp.org>
1577
1578         * gnulib-tool (func_import, func_create_testdir): Use exec tricks to
1579         avoid that the while loops be executed in a subshell.
1580
1581 2006-09-18  Bruno Haible  <bruno@clisp.org>
1582
1583         * MODULES.html.sh (func_module): Break long lines.
1584         Suggested by Bruce Korb <bkorb@gnu.org>.
1585
1586 2006-09-17  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
1587
1588         Speed up by a factor of 1.12.
1589         * gnulib-tool (nl): New variable.
1590         (func_import): Rewrite include directive extraction to only read each
1591         directive once.
1592
1593 2006-09-17  Bruno Haible  <bruno@clisp.org>
1594
1595         * modules/javaversion (Makefile.am): Remove DEFS setting.
1596         (Depends-on): Add configmake, for PKGDATADIR definition.
1597
1598 2006-09-17  Bruno Haible  <bruno@clisp.org>
1599
1600         * gnulib-tool (func_create_testdir): Rewrite all files at once.
1601
1602 2006-09-17  Bruno Haible  <bruno@clisp.org>
1603
1604         * gnulib-tool (func_append): New function, stolen from libtool.m4.
1605         (func_modules_transitive_closure, func_modules_add_dummy,
1606         func_modules_to_filelist, func_import, func_create_testdir,
1607         func_create_megatestdir, ...): Use it wherever possible.
1608         Suggested by Ralf Wildenhues.
1609
1610 2006-09-16  Karl Berry  <karl@gnu.org>
1611
1612         * doc/fdl.texi (ADDENDUM): switch to @heading from @appendixsubsec,
1613         to avoid sectioning errors.
1614         * doc/lgpl.texi, gpl.texi (Copying): downcase @unnumbered title.
1615         [ifinfo]: blank line after @center-ed titles.
1616         * doc/lgpl.texi (Library Copying): Rename main node to GNU LGPL.
1617         Spell FSF address consistently with others.
1618         (These changes approved by rms.)
1619
1620 2006-09-15  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
1621
1622         Speed up by a factor of 1.61.
1623         * gnulib-tool (func_modules_transitive_closure): Rewrite to not check
1624         already checked module names again.
1625
1626 2006-09-15  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
1627
1628         Speed up by a factor of 1.13.
1629         * gnulib-tool (func_import): Rewrite all old_files at once; likewise
1630         for new_files, and the input to func_add_or_update.
1631
1632 2006-09-15  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
1633
1634         * gnulib-tool (func_all_modules, func_modules_to_filelist, func_import,
1635         func_create_testdir, ...): Change 'sort | uniq' to 'sort -u'.
1636
1637 2006-09-15  Paul Eggert  <eggert@cs.ucla.edu>
1638
1639         * modules/mkancesdirs (Depends-on): Add fcntl.
1640         * modules/savewd: New file.
1641         * MODULES.html.sh (File system functions): Add savewd.
1642
1643         * modules/configmake (Makefile.am): Add support for the
1644         Automake-supplied PKGLIBDIR, PKGINCLUDEDIR, PKGDATADIR.
1645
1646 2006-09-15  Paul Eggert  <eggert@cs.ucla.edu>
1647
1648         * m4/savewd.m4: New file.
1649
1650 2006-09-15  Paul Eggert  <eggert@cs.ucla.edu>
1651
1652         * lib/dirchownmod.c: Don't include fcntl.h; no longer needed.
1653         (dirchownmod): New arg FD.  All callers changed.
1654         Use FD rather than opening the directory ourself, as opening is
1655         now the caller's responsibility.
1656         * lib/dirchownmod.h: Likewise.
1657         * lib/mkancesdirs.c: Include <sys/types.h>, for portability to older
1658         hosts that require <sys/types.h> before <sys/stat.h>.  Include
1659         fcntl.h, savewd.h, and unistd.h, not dirname.h and stat-macros.h.
1660         (test_dir): Remove.
1661         (mkancesdirs): Return length of prefix of FILE that has already
1662         been made, or -2 if there is a child doing the work.  Redo
1663         algorithm so that it is O(N) rather than O(N**2).  Optimize away
1664         ".", and treat ".." specially since it might stray back into
1665         already-created areas.  Use a subprocess if necessary.  New arg
1666         WD; all users changed.  MAKE_DIR function should now return 1
1667         if it creates a directory that is not readable.  Return -2 if
1668         a child process is spun off.
1669         * lib/mkancesdirs.h: Include <stddef.h>, for ptrdiff_t.
1670         Adjust signature to match code.
1671         * lib/mkdir-p.c: Include dirname.h, for IS_ABSOLUTE_FILE_NAME.
1672         (make_dir_parents): Use a subprocess if necessary.  New arg WD;
1673         all users changed.
1674         * lib/savewd.c, savewd.h: New files.
1675
1676 2006-09-15  Jim Meyering  <jim@meyering.net>
1677
1678         * modules/rename-dest-slash: New module.
1679         * MODULES.html.sh (posix_compat): Add it here.
1680
1681         * modules/rename: Reflect vb_FUNC_RENAME -> gl_FUNC_RENAME change.
1682
1683 2006-09-15  Jim Meyering  <jim@meyering.net>
1684
1685         * m4/rename-dest-slash.m4 (gl_FUNC_RENAME_TRAILING_DEST_SLASH): New
1686         file.
1687
1688         * m4/rename.m4 (gl_FUNC_RENAME): Rename from vb_FUNC_RENAME.
1689
1690 2006-09-15  Jim Meyering  <jim@meyering.net>
1691
1692         * lib/rename-dest-slash.c (has_trailing_slash): Use
1693         FILE_SYSTEM_PREFIX_LEN, for non-POSIX systems.
1694         (rpl_rename_dest_slash): Perform the cheaper trailing slash
1695         test before testing whether SRC is a directory.
1696         Suggestions from Bruno Haible.
1697
1698         Avoid a warning about an unused variable.
1699         * lib/regex_internal.c (re_dfa_add_node): Move declaration of "type"
1700         into the #ifdef block where it's used.
1701
1702         * lib/rename-dest-slash.c: New file.
1703
1704 2006-09-14  Bruno Haible  <bruno@clisp.org>
1705
1706         * lib/allocsa.c: Include <config.h> unconditionally.
1707         * lib/asnprintf.c: Likewise.
1708         * lib/asprintf.c: Likewise.
1709         * lib/c-strcasecmp.c: Likewise.
1710         * lib/c-strcasestr.c: Likewise.
1711         * lib/c-strncasecmp.c: Likewise.
1712         * lib/c-strstr.c: Likewise.
1713         * lib/classpath.c: Likewise.
1714         * lib/clean-temp.c: Likewise.
1715         * lib/concatpath.c: Likewise.
1716         * lib/copy-file.c: Likewise.
1717         * lib/csharpcomp.c: Likewise.
1718         * lib/csharpexec.c: Likewise.
1719         * lib/execute.c: Likewise.
1720         * lib/fatal-signal.c: Likewise.
1721         * lib/findprog.c: Likewise.
1722         * lib/fwriteerror.c: Likewise.
1723         * lib/gl_array_list.c: Likewise.
1724         * lib/gl_array_oset.c: Likewise.
1725         * lib/gl_avltree_list.c: Likewise.
1726         * lib/gl_avltree_oset.c: Likewise.
1727         * lib/gl_avltreehash_list.c: Likewise.
1728         * lib/gl_carray_list.c: Likewise.
1729         * lib/gl_linked_list.c: Likewise.
1730         * lib/gl_linkedhash_list.c: Likewise.
1731         * lib/gl_list.c: Likewise.
1732         * lib/gl_oset.c: Likewise.
1733         * lib/gl_rbtree_list.c: Likewise.
1734         * lib/gl_rbtree_oset.c: Likewise.
1735         * lib/gl_rbtreehash_list.c: Likewise.
1736         * lib/imaxabs.c: Likewise.
1737         * lib/imaxdiv.c: Likewise.
1738         * lib/javacomp.c: Likewise.
1739         * lib/javaexec.c: Likewise.
1740         * lib/javaversion.c: Likewise.
1741         * lib/linebreak.c: Likewise.
1742         * lib/localcharset.c: Likewise.
1743         * lib/lock.c: Likewise.
1744         * lib/mbchar.c: Likewise.
1745         * lib/mbswidth.c: Likewise.
1746         * lib/mkdtemp.c: Likewise.
1747         * lib/pipe.c: Likewise.
1748         * lib/printf-args.c: Likewise.
1749         * lib/printf-parse.c: Likewise.
1750         * lib/progname.c: Likewise.
1751         * lib/progreloc.c: Likewise.
1752         * lib/readlink.c: Likewise.
1753         * lib/sh-quote.c: Likewise.
1754         * lib/stpcpy.c: Likewise.
1755         * lib/stpncpy.c: Likewise.
1756         * lib/strcasecmp.c: Likewise.
1757         * lib/strcasestr.c: Likewise.
1758         * lib/strcspn.c: Likewise.
1759         * lib/striconv.c: Likewise.
1760         * lib/strncasecmp.c: Likewise.
1761         * lib/strnlen1.c: Likewise.
1762         * lib/strstr.c: Likewise.
1763         * lib/strtok_r.c: Likewise.
1764         * lib/tls.c: Likewise.
1765         * lib/tmpdir.c: Likewise.
1766         * lib/unicodeio.c: Likewise.
1767         * lib/unsetenv.c: Likewise.
1768         * lib/vasnprintf.c: Likewise.
1769         * lib/vasprintf.c: Likewise.
1770         * lib/wait-process.c: Likewise.
1771         * lib/xallocsa.c: Likewise.
1772         * lib/xsetenv.c: Likewise.
1773         * lib/xstriconv.c: Likewise.
1774
1775 2006-09-13  Simon Josefsson  <jas@extundo.com>
1776
1777         * m4/getdate.m4: Don't AC_LIBOBJ([getdate]), automake takes care of
1778         that internally, suggested by Ralf Wildenhues
1779         <Ralf.Wildenhues@gmx.de>.
1780
1781 2006-09-13  Simon Josefsson  <jas@extundo.com>
1782
1783         * gnulib-tool (func_emit_lib_Makefile_am): Use $(LIBOBJS), not
1784         @LIBOBJS@.
1785         Suggested by Ralf Wildenhues <Ralf.Wildenhues@gmx.de>.
1786
1787 2006-09-13  Paul Eggert  <eggert@cs.ucla.edu>
1788
1789         * lib/_fpending.c: Include <config.h> unconditionally, since we no
1790         longer worry about uses that don't define HAVE_CONFIG_H.
1791         * lib/acl.c, lib/alloca.c, lib/argmatch.c, lib/atexit.c:
1792         * lib/backupfile.c, lib/basename.c, lib/c-stack.c, lib/c-strtod.c:
1793         * lib/calloc.c,lib/ canon-host.c, lib/canonicalize.c, lib/chdir-long.c:
1794         * lib/chdir-safer.c, lib/chown.c, lib/cloexec.c, lib/close-stream.c:
1795         * lib/closeout.c, lib/creat-safer.c, lib/cycle-check.c, lib/diacrit.c:
1796         * lib/dirchownmod.c, lib/dirfd.c, lib/dirname.c, lib/dup-safer.c:
1797         * lib/dup2.c, lib/error.c, lib/euidaccess.c, lib/exclude.c:
1798         * lib/exitfail.c, lib/fchmodat.c, lib/fchown-stub.c, lib/fd-safer.c:
1799         * lib/file-type.c, lib/fileblocks.c, lib/filemode.c, lib/filenamecat.c:
1800         * lib/fnmatch.c, lib/fopen-safer.c, lib/fprintftime.c, lib/free.c:
1801         * lib/fsusage.c, lib/ftruncate.c, lib/fts-cycle.c, lib/fts.c:
1802         * lib/full-write.c, lib/gai_strerror.c, lib/getcwd.c, lib/getdate.y:
1803         * lib/getdomainname.c, lib/getgroups.c, lib/gethostname.c:
1804         * lib/gethrxtime.c, lib/getloadavg.c, lib/getlogin_r.c:
1805         * lib/getndelim2.c, lib/getnline.c, lib/getopt.c, lib/getopt1.c:
1806         * lib/getpass.c, lib/gettime.c, lib/gettimeofday.c, lib/getugroups.c:
1807         * lib/getusershell.c, lib/glob.c, lib/group-member.c:
1808         * lib/hard-locale.c, lib/hash-pjw.c, lib/hash.c, lib/human.c:
1809         * lib/idcache.c, lib/inet_ntop.c, lib/inet_pton.c, lib/inttostr.c:
1810         * lib/isdir.c, lib/lchown.c, lib/linebuffer.c, lib/long-options.c:
1811         * lib/lstat.c, lib/malloc.c, lib/md5.c, lib/memcasecmp.c, lib/memchr.c:
1812         * lib/memcmp.c, lib/memcoll.c, lib/memcpy.c, lib/memmove.c:
1813         * lib/memrchr.c, lib/mkancesdirs.c, lib/mkdir-p.c, lib/mkdir.c:
1814         * lib/mkdirat.c, lib/mkstemp-safer.c, lib/mkstemp.c, lib/modechange.c:
1815         * lib/mountlist.c, lib/nanosleep.c, lib/obstack.c, lib/open-safer.c:
1816         * lib/openat-die.c, lib/openat.c, lib/pagealign_alloc.c, lib/physmem.c:
1817         * lib/pipe-safer.c, lib/posixtm.c, lib/posixver.c, lib/putenv.c:
1818         * lib/quote.c, lib/quotearg.c, lib/raise.c, lib/readtokens.c:
1819         * lib/readtokens0.c, lib/readutmp.c, lib/realloc.c, lib/regex.c:
1820         * lib/rename.c, lib/rmdir.c, lib/rpmatch.c, lib/safe-read.c:
1821         * lib/same.c, lib/save-cwd.c, lib/savedir.c, lib/setenv.c:
1822         * lib/settime.c, lib/sha1.c, lib/sig2str.c, lib/snprintf.c:
1823         * lib/strdup.c, lib/strerror.c, lib/strftime.c, lib/stripslash.c:
1824         * lib/strndup.c, lib/strnlen.c, lib/strpbrk.c, lib/strtod.c:
1825         * lib/strtoimax.c, lib/strtol.c, lib/strverscmp.c, lib/tempname.c:
1826         * lib/time_r.c, lib/timegm.c, lib/tmpfile-safer.c, lib/unlinkdir.c:
1827         * lib/userspec.c, lib/utime.c, lib/utimecmp.c, lib/utimens.c:
1828         * lib/version-etc-fsf.c, lib/version-etc.c, lib/xalloc-die.c:
1829         * lib/xgetcwd.c, lib/xgethostname.c, lib/xmalloc.c, lib/xmemcoll.c:
1830         * lib/xnanosleep.c, lib/xreadlink.c, lib/xstrtod.c, lib/xstrtoimax.c:
1831         * lib/xstrtol.c, lib/xstrtoumax.c, lib/yesno.c:
1832         Likewise.
1833
1834 2006-09-13  Eric Blake  <ebb9@byu.net>
1835
1836         * lib/getopt.c: Fix typo in last commit.
1837
1838 2006-09-12  Sergey Poznyakoff  <gray@gnu.org.ua>
1839
1840         * lib/argp-help.c (argp_doc): Make sure NULL is not passed to
1841         dgettext.
1842
1843 2006-09-12  Jim Meyering  <jim@meyering.net>
1844
1845         * lib/nanosleep.c: Include <sys/types.h> before sys/select.h, to avoid
1846         compilation failure (due to use of pid_t in latter) on NetBSD 1.6.
1847         Reported by Nelson H. F. Beebe.
1848
1849 2006-09-10  Sergey Poznyakoff  <gray@gnu.org.ua>
1850
1851         * lib/argp-parse.c (__argp_parse) [!_LIBC]: Make sure
1852         program_invocation_name and program_invocation_short_name are
1853         initialized.
1854         * lib/argp-namefrob.h: Move declarations of program_invocation_name
1855         and program_invocation_short_name to argp.h, so they are visible
1856         to user programs.
1857         * lib/argp.h: Likewise
1858
1859 2006-09-10  Bruno Haible  <bruno@clisp.org>
1860
1861         * modules/mkdtemp (Files): Remove m4/ulonglong.m4, m4/stdint_h.m4,
1862         m4/inttypes_h.m4, m4/uintmax_t.m4.
1863
1864 2006-09-10  Bruno Haible  <bruno@clisp.org>
1865
1866         * m4/mkdtemp.m4 (gl_PREREQ_MKDTEMP): Don't require
1867         gl_AC_TYPE_UINTMAX_T.
1868
1869 2006-09-10  Bruno Haible  <bruno@clisp.org>
1870
1871         * lib/mkdtemp.c: Include <stdint.h> always. Don't include <inttypes.h>.
1872
1873 2006-09-09  Sergey Poznyakoff  <gray@gnu.org.ua>
1874
1875         * lib/argp.h (struct argp): Document the N_("..") "\v" N_("..")
1876         convention.  Text proposed by Bruno Haible.
1877         (struct argp_option): Document the use of N_() wrappers.
1878
1879         * lib/argp-help.c (argp_doc): Split the untranslated doc string on
1880         '\v', and translate the two parts separately, instead of feeding
1881         the whole string to gettext.  This allows to exclude
1882         '\v' from the strings visible to the translator by writing doc
1883         strings as N_("..") "\v" N_("..").
1884
1885 2006-09-09  Paul Eggert  <eggert@cs.ucla.edu>
1886
1887         * config/srclist.txt: Undo latest change; the bug was fixed.
1888
1889 2006-09-09  Bruno Haible  <bruno@clisp.org>
1890
1891         * gnulib-tool (func_emit_lib_Makefile_am): Eliminate lib_LDFLAGS
1892         assignments if building a library without libtool.
1893         (func_emit_tests_Makefile_am): Likewise. Handle lib_* variables as
1894         in func_emit_lib_Makefile_am.
1895         (func_import): When building a static library libfoo.a, arrange to
1896         define variables LIBFOO_LIBDEPS and LIBFOO_LTLIBDEPS.
1897         (func_create_testdir): Likewise.
1898         * modules/gc (configure.ac, Makefile.am): If building statically,
1899         augment gl_libdeps and gl_ltlibdeps instead of lib_LDFLAGS.
1900         * modules/iconvme (configure.ac, Makefile.am): Likewise.
1901         * modules/striconv (configure.ac, Makefile.am): Likewise.
1902         Based on a suggestion by Ralf Wildenhues.
1903
1904 2006-09-08  Paul Eggert  <eggert@cs.ucla.edu>
1905
1906         * m4/mktime.m4 (AC_FUNC_MKTIME): Sync from Autoconf.
1907         Check for unistd.h too, since Autoconf doesn't assume POSIX.
1908         Also:
1909
1910         2006-09-08  Paul Eggert  <eggert@cs.ucla.edu>
1911         Add year_2050_test to catch glibc bug 2821
1912         <http://sourceware.org/bugzilla/show_bug.cgi?id=2821>.
1913
1914         2006-08-15  Paul Eggert  <eggert@cs.ucla.edu>
1915         Prefer #ifdef to #if.
1916
1917         2006-04-02  Paul Eggert  <eggert@cs.ucla.edu>
1918         Return from 'main' instead of calling 'exit'.
1919
1920 2006-09-08  Paul Eggert  <eggert@cs.ucla.edu>
1921
1922         * lib/mktime.c (guess_time_tm): Fix bug where mktime
1923         returned the maximum time_t value rather than (time_t) -1.
1924         Problem originally reported by William Bardwell
1925         <http://sourceware.org/bugzilla/show_bug.cgi?id=2821>.
1926
1927         * lib/isapipe.h (HAVE_FIFO_PIPES) [!defined HAVE_FIFO_PIPES]:
1928         Moved to here ...
1929         * lib/isapipe.c (HAVE_FIFO_PIPES) [!defined HAVE_FIFO_PIPES]:
1930         ... from here.
1931
1932 2006-09-08  Paul Eggert  <eggert@cs.ucla.edu>
1933
1934         * config/srclist.txt: Temporarily comment out mktime.c until glibc bug
1935         2821 is fixed.
1936
1937 2006-09-08  Jim Meyering  <jim@meyering.net>
1938
1939         Don't make generated files read-only.  That would bother too many
1940         people.  However, do retain the ability to work when targets are
1941         read-only: remove the destination and temporary files before writing
1942         them (when generated via sed or echo), or by using the -f option for
1943         both cp and mv commands.  Suggestion to use -f from Paul Eggert.
1944         * modules/alloca-opt, modules/argz, modules/arpa_inet:
1945         * modules/byteswap, modules/configmake, modules/fcntl:
1946         * modules/fnmatch, modules/getopt, modules/glob, modules/inttypes:
1947         * modules/localcharset, modules/netinet_in, modules/poll:
1948         * modules/stdbool, modules/stdint, modules/sys_select:
1949         * modules/sys_socket, modules/sys_stat, modules/sysexits:
1950
1951 2006-09-08  Jim Meyering  <jim@meyering.net>
1952
1953         Avoid new build failure on FreeBSD 6.0.
1954         * m4/ls-mntd-fs.m4 (gl_LIST_MOUNTED_FILE_SYSTEMS): Include
1955         <sys/param.h> when testing whether getmntinfo uses statvfs.  Patch by
1956         Pavel Tsekov, in <http://savannah.gnu.org/bugs/?17643>.
1957
1958 2006-09-07  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
1959
1960         * m4/fsusage.m4 (gl_FILE_SYSTEM_USAGE): Don't use plain echo.
1961
1962 2006-09-07  Jim Meyering  <jim@meyering.net>
1963
1964         Fix global typo in last change: use chmod u-w, not chmod u-x.
1965         Spotted by Paul Eggert and Bruce Korb.
1966         * modules/alloca-opt, modules/argz, modules/arpa_inet:
1967         * modules/byteswap, modules/configmake, modules/fcntl:
1968         * modules/fnmatch, modules/getopt, modules/glob, modules/inttypes:
1969         * modules/localcharset, modules/netinet_in, modules/poll:
1970         * modules/stdbool, modules/stdint, modules/sys_select:
1971         * modules/sys_socket, modules/sys_stat, modules/sysexits:
1972
1973 2006-09-06  Jim Meyering  <jim@meyering.net>
1974
1975         Make generated files be read-only.
1976         * modules/alloca-opt (Makefile.am): Work also when $@ is read-only.
1977         Ensure that each generated file is now read-only.
1978         * modules/argz: Likewise.
1979         * modules/arpa_inet: Likewise.
1980         * modules/byteswap: Likewise.
1981         * modules/configmake: Likewise.
1982         * modules/fcntl: Likewise.
1983         * modules/fnmatch: Likewise.
1984         * modules/getopt: Likewise.
1985         * modules/glob: Likewise.
1986         * modules/inttypes: Likewise.
1987         * modules/netinet_in: Likewise.
1988         * modules/poll: Likewise.
1989         * modules/stdbool: Likewise.
1990         * modules/stdint: Likewise.
1991         * modules/sys_select: Likewise.
1992         * modules/sys_socket: Likewise.
1993         * modules/sys_stat: Likewise.
1994         * modules/sysexits: Likewise.
1995         * modules/localcharset: Same as above, but continue using temporary
1996         file named "t-$@" (why different?) rather than the "$@-t" used
1997         everywhere else.
1998
1999         * modules/sysexits (Makefile.am): Replace literal occurrences
2000         of "sysexit.h" more readable, and more consistent, "$@".
2001
2002 2006-09-06  Bruno Haible  <bruno@clisp.org>
2003
2004         * modules/striconv: New file.
2005         * modules/xstriconv: New file.
2006         * MODULES.html.sh (Internationalization functions): Add striconv,
2007         xstriconv.
2008
2009 2006-09-06  Bruno Haible  <bruno@clisp.org>
2010
2011         * modules/gc (Makefile.am): Augment lib_LDFLAGS, not lib_LIBADD.
2012         * modules/iconvme (Makefile.am): Likewise. Also handle the case of
2013         not using libtool correctly.
2014
2015 2006-09-06  Bruno Haible  <bruno@clisp.org>
2016
2017         * lib/striconv.h: New file.
2018         * lib/striconv.c: New file, merging iconvme.c with GNU gettext's
2019         iconvstring.c.
2020         * lib/xstriconv.h: New file.
2021         * lib/xstriconv.c: New file.
2022
2023 2006-09-06  Bruno Haible  <bruno@clisp.org>
2024
2025         * gnulib-tool (func_emit_lib_Makefile_am): Initialize also
2026         lib_..._LDFLAGS.
2027
2028 2006-09-05  Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
2029
2030         * lib/argz_.h: Sync from Libtool.
2031
2032         2006-09-04  George Bosilca <bosilca@cs.utk.edu>
2033                 and Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
2034
2035         * lib/libltdl/argz_.h: It's __cplusplus, not _cplusplus.
2036
2037 2006-09-05  Davide Angelocola <davide.angelocola@tiscali.it>
2038
2039         * modules/trim: New file.
2040
2041 2006-09-05  Davide Angelocola <davide.angelocola@tiscali.it>
2042
2043         * lib/trim.h: New file.
2044         * lib/trim.c: New file.
2045
2046 2006-09-05  Bruno Haible  <bruno@clisp.org>
2047
2048         * MODULES.html.sh (String handling): Add trim.
2049
2050 2006-09-04  Karl Berry  <karl@gnu.org>
2051
2052         * config/srclist.txt (signed.m4, gettext.m4): changes not propagated
2053         until next release.
2054
2055 2006-09-03  Bruno Haible  <bruno@clisp.org>
2056
2057         * m4/lib-link.m4 (AC_LIB_LINKFLAGS_BODY): Locate mingw shared libraries
2058         correctly.
2059
2060 2006-09-01  Paul Eggert  <eggert@cs.ucla.edu>
2061
2062         * m4/getloadavg.m4 (gl_GETLOADAVG): Use CONFIGURING_GETLOADAVG,
2063         not gl_GETLOADAVG.  Omit unneeded semicolons.
2064         Problems reported by Ralf Wildenhues in
2065         <http://lists.gnu.org/archive/html/bug-gnulib/2006-09/msg00000.html>.
2066         (gl_PREREQ_GETLOADAVG): Use AC_DEFUN, not m4_define.  Put
2067         at the end, which is the usual gnulib style.
2068
2069         * m4/fstypename.m4 (gl_FSTYPENAME): Use AC_CHECK_MEMBERS instead
2070         of doing all the work ourselves.
2071         * m4/fsusage.m4 (gl_PREREQ_FSUSAGE_EXTRA): Don't check for
2072         sys/statvfs.h since the code doesn't use HAVE_SYS_STATVFS_H.
2073
2074 2006-09-01  Paul Eggert  <eggert@cs.ucla.edu>
2075
2076         * lib/getloadavg.c: Use CONFIGURING_GETLOADAVG, not gl_GETLOADAVG.
2077         Problem reported by Ralf Wildenhues in
2078         <http://lists.gnu.org/archive/html/bug-gnulib/2006-09/msg00000.html>.
2079
2080         * lib/mountlist.c: All uses of HAVE_F_FSTYPENAME_IN_STATFS replaced by
2081         HAVE_STRUCT_STATFS_F_FSTYPENAME.
2082
2083 2006-09-01  Paul Eggert  <eggert@cs.ucla.edu>
2084
2085         * gnulib-tool (func_emit_lib_Makefile_am): Fix typos in
2086         yesterday's patch by changing test -n to test -z.
2087
2088 2006-08-31  Paul Eggert  <eggert@cs.ucla.edu>
2089
2090         * modules/getloadavg (Files): Add m4/getloadavg.m4.
2091         (configure.ac): AC_FUNC_GETLOADAVG -> gl_GETLOADAVG, as
2092         the former is now obsolescent.
2093
2094         * modules/chdir-long (Depends-on): Add fcntl.
2095
2096 2006-08-31  Paul Eggert  <eggert@cs.ucla.edu>
2097
2098         * m4/fnmatch.m4: Add comment that Autoconf AC_FUNC_FNMATCH is
2099         obsolescent, and programs should use gnulib instead.
2100         * m4/getloadavg.m4: New file, with contents taken from Autoconf
2101         but with prefixes changed.
2102
2103 2006-08-31  Paul Eggert  <eggert@cs.ucla.edu>
2104
2105         * lib/getloadavg.c [defined gl_GETLOADAVG]: Don't include config.h
2106         or stdbool.h, because they might not exist while configuring.
2107
2108         * lib/chdir-long.c: Include <fcntl.h>, for O_DIRECTORY.
2109         Don't include unistd.h or limits.h; not needed, since chdir-long.h
2110         does that for us.
2111         (O_DIRECTORY): Remove.
2112
2113 2006-08-31  Eric Blake  <ebb9@byu.net>
2114
2115         * gnulib-tool: Don't let emacs change spaces to TAB.
2116
2117 2006-08-31  Bruno Haible  <bruno@clisp.org>
2118
2119         * gnulib-tool: When calling func_import more than once, do it in a
2120         subshell.
2121         Reported by Eric Blake <ebb9@byu.net>.
2122
2123 2006-08-31  Bruno Haible  <bruno@clisp.org>
2124
2125         * gnulib-tool (nl): Remove variable.
2126         (sed_transform_lib_file): Use more robust test for config-h module.
2127         (func_import): Fix typo in 2006-08-25 patch.
2128
2129 2006-08-31  Bruno Haible  <bruno@clisp.org>
2130
2131         * gnulib-tool (func_emit_lib_Makefile_am): When --makefile-name was
2132         specified, augment Makefile.am variables instead of assigning them.
2133
2134 2006-08-30  Paul Eggert  <eggert@cs.ucla.edu>
2135
2136         Work around a bug in both the Linux and SunOS 64-bit kernels:
2137         nanosleep mishandles sleeps for longer than 2**31 seconds.
2138         Problem reported by Frank v Waveren in
2139         <http://lists.gnu.org/archive/html/bug-coreutils/2006-08/msg00298.html>.
2140         * m4/nanosleep.m4 (gl_FUNC_NANOSLEEP): Require gl_CLOCK_TIME.
2141         Check for nanosleep bug.
2142         (LIB_NANOSLEEP): Append clock_gettime library if needed.
2143
2144 2006-08-30  Paul Eggert  <eggert@cs.ucla.edu>
2145
2146         Work around a bug in both the Linux and SunOS 64-bit kernels:
2147         nanosleep mishandles sleeps for longer than 2**31 seconds.
2148         Problem reported by Frank v Waveren in
2149         <http://lists.gnu.org/archive/html/bug-coreutils/2006-08/msg00298.html>.
2150         * lib/nanosleep.c (BILLION): New constant.
2151         (getnow) [HAVE_BUG_BIG_NANOSLEEP]: New functions.
2152         (rpl_nanosleep) [HAVE_BUG_BIG_NANOSLEEP]: Completely new
2153         implementation.
2154
2155 2006-08-30  Paul Eggert  <eggert@cs.ucla.edu>
2156
2157         * modules/nanosleep (Depends-on): Add gettime.
2158
2159 2006-08-30  Paul Eggert  <eggert@cs.ucla.edu>
2160         and Simon Josefsson  <jas@extundo.com>
2161         and Oskar Liljeblad  <oskar@osk.mine.nu>
2162
2163         * MODULES.html.sh (Support for building documentation): Add gpl, lgpl.
2164         * gnulib-tool (func_import): New license type 'unmodifiable license
2165         text'.
2166         * modules/fdl: Use it.  Longer description.
2167         * module/gpl, module/lgpl: New files.
2168
2169 2006-08-30  Jim Meyering  <jim@meyering.net>
2170
2171         * lib/isapipe.c (isapipe): Rename local s/fd/fd_pair/ to avoid
2172         shadowing the parameter.
2173
2174 2006-08-29  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
2175
2176         Sync from Libtool:
2177
2178         2006-08-28  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
2179
2180         * lib/libltdl/argz.c: Use `#ifdef HAVE_CONFIG_H', to facilitate code
2181         sharing with gnulib.  Report by Eric Blake.
2182
2183 2006-08-29  Paul Eggert  <eggert@cs.ucla.edu>
2184
2185         * modules/isapipe: New file.
2186         * MODULES.html.sh (File descriptor based Input/Output): Add isapipe.
2187
2188 2006-08-29  Paul Eggert  <eggert@cs.ucla.edu>
2189
2190         * modules/configmake (Makefile.am): Add a comment, and omit
2191         the CONFIGMAKE_ prefix from generated macro names.  Suggested
2192         by Bruno Haible.
2193
2194 2006-08-29  Paul Eggert  <eggert@cs.ucla.edu>
2195
2196         * m4/isapipe.m4: New file.
2197
2198 2006-08-29  Paul Eggert  <eggert@cs.ucla.edu>
2199
2200         * lib/isapipe.c, isapipe.h: New files.
2201
2202 2006-08-29  Jim Meyering  <jim@meyering.net>
2203
2204         * modules/configmake (Makefile.am): Make configmake.h depend on
2205         Makefile.  Otherwise, a stale configmake.h could hang around.
2206
2207 2006-08-29  Eric Blake  <ebb9@byu.net>
2208
2209         * lib/error.c (error_at_line, print_errno_message): Match libc, after
2210         resolution of upstream bug 3044.
2211
2212 2006-08-29  Bruno Haible  <bruno@clisp.org>
2213
2214         * modules/localcharset (Depends-on): Add configmake.
2215         (Makefile.am): Remove setting of LIBDIR through DEFS.
2216
2217 2006-08-29  Bruno Haible  <bruno@clisp.org>
2218
2219         * lib/localcharset.c: Include configmake.h in order to get LIBDIR
2220         defined.
2221
2222 2006-08-28  Paul Eggert  <eggert@cs.ucla.edu>
2223
2224         * modules/fcntl: New file.
2225         * modules/chdir-safer (Depends-on): Add fcntl.
2226         * modules/fts: Likewise.
2227         * modules/mkdir-p: Likewise.
2228
2229         * modules/stdint (Makefile.am): Do not substitute ABSOLUTE_INTTYPES_H.
2230         This undoes the most recent change, since we're now addressing the
2231         problem in a different way.
2232
2233         * gnulib-tool (emit_lib_Makefile_am): Don't put $makefile_name
2234         into output, since the output might be called Makefile.am even
2235         if $makefile_name is something different.
2236         (func_import): Use $makefile_am rather than
2237         ${makefile_name-Makefile.am}, to fix a bug where makefile_name was
2238         empty.
2239
2240         * modules/inttypes (Files): Add m4/inttypes-h.m4.
2241
2242 2006-08-28  Paul Eggert  <eggert@cs.ucla.edu>
2243
2244         * m4/inttypes.m4 (gl_INTTYPES_H): Move ABSOLUTE_INTTYPES_H code here...
2245         * m4/stdint.m4 (gl_STDINT_H): ... from here.  This undoes the most
2246         recent change to stdint.m4, since we're now addressing the problem in a
2247         different way.
2248
2249 2006-08-28  Paul Eggert  <eggert@cs.ucla.edu>
2250
2251         * m4/fcntl_h.m4: New file.
2252
2253 2006-08-28  Paul Eggert  <eggert@cs.ucla.edu>
2254
2255         * lib/fcntl_.h: New file.
2256         * lib/chdir-safer.c (O_DIRECTORY, O_NOFOLLOW): Remove, now that we have
2257         the fcntl module.
2258         * lib/dirchownmod.c: Likewise.
2259         * lib/fts.c: Likewise.
2260
2261         * lib/inttypes_.h [defined _GL_JUST_INCLUDE_ABSOLUTE_INTTYPES_H]:
2262         Include @ABSOLUTE_INTTYPES_H@ if available, but do nothing else.
2263         * lib/stdint_.h (_GL_JUST_INCLUDE_ABSOLUTE_INTTYPES_H): Define
2264         just before including <inttypes.h>, to avoid circular inclusion.
2265
2266 2006-08-28  Jim Meyering  <jim@meyering.net>
2267
2268         * doc/visibility.texi: Actually read and correct the grammar of the
2269         sentence affected by yesterday's change.
2270
2271 2006-08-28  Eric Blake  <ebb9@byu.net>
2272
2273         * modules/inttypes (Makefile.am): Fix sed error when inttypes.h
2274         needs wrapper.
2275
2276 2006-08-28  Eric Blake  <ebb9@byu.net>
2277
2278         * m4/inttypes.m4 (gl_INTTYPES_H): Fix missing #endif.
2279
2280 2006-08-28  Eric Blake  <ebb9@byu.net>
2281
2282         * m4/codeset.m4 (AM_LANGINFO_CODESET): Avoid compiler warning.
2283
2284 2006-08-28  Bruno Haible  <bruno@clisp.org>
2285
2286         * modules/c-strstr: New file, from GNU gettext.
2287         * MODULES.html.sh (String handling): Add c-strstr.
2288
2289 2006-08-28  Bruno Haible  <bruno@clisp.org>
2290
2291         * m4/inttypes.m4 (gl_INTTYPES_H): Don't test for the existence of SCNX*
2292         macros.
2293         Reported by Eric Blake.
2294
2295 2006-08-28  Bruno Haible  <bruno@clisp.org>
2296
2297         * lib/vasnprintf.c (EOVERFLOW): Remove definition.
2298         (VASNPRINTF): Return a string of length > INT_MAX without failing.
2299         * lib/vasprintf.c: Include errno.h, limits.h.
2300         (EOVERFLOW): New fallback definition.
2301         (vasprintf): Test here whether the string length is > INT_MAX.
2302         * lib/vsnprintf.c: Include errno.h, limits.h.
2303         (EOVERFLOW): New fallback definition.
2304         (vsnprintf): Fix bug when generated string was too long for the buffer.
2305         Test here whether the string length is > INT_MAX.
2306
2307 2006-08-28  Bruno Haible  <bruno@clisp.org>
2308
2309         * lib/inttypes_.h (SCNX*): Remove definitions.
2310         Reported by Eric Blake.
2311
2312 2006-08-28  Bruno Haible  <bruno@clisp.org>
2313
2314         * lib/c-strstr.h: New file, from GNU gettext.
2315         * lib/c-strstr.c: New file, from GNU gettext.
2316
2317 2006-08-28  Bruno Haible  <bruno@clisp.org>
2318
2319         * gnulib-tool: Reorder some statements.
2320
2321 2006-08-28  Bruno Haible  <bruno@clisp.org>
2322
2323         * gnulib-tool: New option --makefile-name.
2324         (func_emit_lib_Makefile_am, func_emit_tests_Makefile_am): Use
2325         $makefile_name.
2326         (func_import): Write $makefile_name to the cache file, and read it from
2327         there unless explicitly specified. Use $makefile_name as file name
2328         instead of Makefile.am. Adjust the recommendations accordingly.
2329
2330 2006-08-28  Bruno Haible  <bruno@clisp.org>
2331
2332         * gnulib-tool (func_verify_module): Check against misapplying patch.
2333
2334 2006-08-28  Bruno Haible  <bruno@clisp.org>
2335
2336         * gnulib-tool (func_relativize, func_relconcat): New functions.
2337         Give an error if --local-dir is given with --update.
2338         Remove trailing slashes from $local_gnulib_dir.
2339         (func_import): Store the relativized $local_gnulib_dir in
2340         gnulib-cache.m4, and read it from there if not specified explicitly.
2341
2342 2006-08-28  Bruno Haible  <bruno@clisp.org>
2343
2344         * gnulib-tool (func_get_tests_module): Don't assume that $gnulib_dir
2345         is the current directory. Respect also $local_gnulib_dir.
2346
2347 2006-08-28  Bruno Haible  <bruno@clisp.org>
2348             Simon Josefsson  <jas@extundo.com>
2349
2350         BeOS portability.
2351         * lib/getaddrinfo.c (PF_INET, PF_UNSPEC): New macros.
2352
2353 2006-08-27  Jim Meyering  <jim@meyering.net>
2354
2355         * doc/visibility.texi: Remove duplicate word: "pointer".
2356
2357 2006-08-26  Bruno Haible  <bruno@clisp.org>
2358
2359         * modules/inttypes (Files): Add lib/inttypes_.h, remove lib/inttypes.h.
2360         Add m4/inttypes.m4, remove m4/_inttypes_h.m4 and m4/include_next.m4.
2361         (Makefile.am): Create inttypes.h from inttypes_.h.
2362         * modules/stdint (Makefile.am): Substitute also ABSOLUTE_INTTYPES_H.
2363
2364         * modules/imaxabs: New file.
2365
2366         * modules/imaxdiv: New file.
2367
2368 2006-08-26  Bruno Haible  <bruno@clisp.org>
2369
2370         * m4/inttypes.m4: New file.
2371         * m4/_inttypes_h.m4: Remove file.
2372         * m4/inttypes-pri.m4 (gt_INTTYPES_PRI): Also AC_SUBST
2373         PRI_MACROS_BROKEN.
2374         * m4/stdint.m4 (gl_STDINT_H): Define also ABSOLUTE_INTTYPES_H.
2375
2376         * m4/imaxabs.m4: New file.
2377
2378         * m4/imaxdiv.m4: New file.
2379
2380 2006-08-26  Bruno Haible  <bruno@clisp.org>
2381
2382         * lib/inttypes_.h: New file.
2383         * lib/inttypes.h: Remove file.
2384         * lib/stdint_.h: Include <inttypes.h> through its absolute filename.
2385
2386         * lib/imaxabs.c: New file.
2387
2388         * lib/imaxdiv.c: New file.
2389
2390 2006-08-25  Paul Eggert  <eggert@cs.ucla.edu>
2391
2392         New config-h module, so that "make" output needn't be cluttered
2393         by -DHAVE_CONFIG_H.
2394         * MODULES.html.sh (Support for building libraries and executables):
2395         Add config-h.
2396         * modules/config-h: New file.
2397         * gnulib-tool (nl, sed_transform_lib_file): New vars.
2398         (func_import): Turn "#ifdef HAVE_CONFIG_H" to "#if 1" if
2399         the config-h module is used.
2400
2401         New configmake module, so that "make" output needn't be cluttered
2402         by fluff like '-DLIBDIR=\"/usr/local/lib\"'.
2403         * MODULES.html.sh (Support for building libraries and executables):
2404         Add configmake.
2405         * modules/configmake: New file.
2406
2407 2006-08-25  Paul Eggert  <eggert@cs.ucla.edu>
2408
2409         * m4/config-h.m4: New file.
2410
2411 2006-08-24  Paul Eggert  <eggert@cs.ucla.edu>
2412
2413         * config/srclist.txt: Add elisp-comp.
2414
2415 2006-08-24  Paul Eggert  <eggert@cs.ucla.edu>
2416
2417         * MODULES.html.sh (Support for building libraries and executables):
2418         Add elisp-comp.
2419         * build-aux/elisp-comp: New file.
2420         * modules/elisp-comp: New file.
2421
2422 2006-08-24  Bruno Haible <bruno@clisp.org>
2423
2424         * gnulib-tool (func_create_testdir): Use non-default values of
2425         sourcebase and m4base.
2426
2427 2006-08-24  Bruno Haible <bruno@clisp.org>
2428
2429         * MODULES.html.sh (Compatibility checks for POSIX:2001 functions: Fix
2430         HTML structure.
2431
2432 2006-08-23  Paul Eggert  <eggert@cs.ucla.edu>
2433
2434         * modules/openat (Depends-on): Add lchown.
2435
2436 2006-08-23  Bruno Haible <bruno@clisp.org>
2437
2438         * gnulib-tool (func_import, func_create_testdir): Emit an invocation
2439         of gl_LOCK_EARLY instead of gl_LOCK.
2440
2441 2006-08-23  Bruno Haible  <bruno@clisp.org>
2442
2443         * m4/lock.m4 (gl_LOCK_BODY): Change the default value of gl_use_threads
2444         on OSF/1 to no.
2445         Reported by Stephen Cartwright <sgcartwr@ucalgary.ca>.
2446
2447 2006-08-23  Bruno Haible  <bruno@clisp.org>
2448
2449         * m4/fsusage.m4 (gl_FILE_SYSTEM_USAGE): Don't consider BeOS statvfs
2450         as unusable.
2451
2452         * m4/lock.m4 (gl_LOCK_EARLY): Renamed from gl_LOCK.
2453         (gl_LOCK_BODY): Remove gl_PREREQ_LOCK invocation.
2454         (gl_LOCK): New macro.
2455
2456 2006-08-22  Simon Josefsson  <jas@extundo.com>
2457
2458         * modules/gc-md5 (Makefile.am): Need to add md5.h, after changes
2459         to md5 module.
2460
2461 2006-08-22  Simon Josefsson  <jas@extundo.com>
2462
2463         * MODULES.html.sh: Add "Support for maintaining and release
2464         projects".
2465
2466         * build-aux/gnupload: New file, from coreutils.
2467
2468 2006-08-22  Paul Eggert  <eggert@cs.ucla.edu>
2469
2470         Avoid the need for AC_LIBSOURCES in m4 macros.
2471         * modules/arcfour (EXTRA_DIST): Add arcfour.h.
2472         * modules/arctwo (EXTRA_DIST): Add arctwo.h.
2473         * modules/check-version (EXTRA_DIST): Add check-version.h.
2474         * modules/crc (EXTRA_DIST): Add crc.h.
2475         * modules/des (EXTRA_DIST): Add des.h.
2476         * modules/gc (EXTRA_DIST): Add gc.h.
2477         * modules/getdelim (EXTRA_DIST): Add getdelim.h.
2478         * modules/getline (EXTRA_DIST): Add getline.h.
2479         * modules/getlogin_r (EXTRA_DIST): Add getlogin_r.h.
2480         * modules/hmac-md5 (EXTRA_DIST): Add hmac.h.
2481         * modules/hmac-sha1 (EXTRA_DIST): Add hmac.h.
2482         * modules/md2 (EXTRA_DIST): Add md2.h.
2483         * modules/md4 (EXTRA_DIST): Add md4.h.
2484         * modules/pagealign_alloc (EXTRA_DIST): Add pagealign_alloc.h.
2485         * modules/read-file (EXTRA_DIST): Add read-file.h.
2486         * modules/readline (EXTRA_DIST): Add readline.h.
2487         * modules/rijndael (EXTRA_DIST): Add rijndael-alg-fst.h,
2488         rijndael-api-fst.h.
2489
2490 2006-08-22  Paul Eggert  <eggert@cs.ucla.edu>
2491
2492         * m4/rijndael.m4 (gl_ARCFOUR):
2493         * m4/arctwo.m4 (gl_ARCTWO):
2494         * m4/check-version.m4 (gl_CHECK_VERSION):
2495         * m4/crc.m4 (gl_CRC):
2496         * m4/des.m4 (gl_DES):
2497         * m4/gc-pbkdf2-sha1.m4 (gl_GC_PBKDF2_SHA1):
2498         * m4/gc.m4 (gl_GC):
2499         * m4/getdelim.m4 (gl_FUNC_GETDELIM):
2500         * m4/getline.m4 (gl_FUNC_GETLINE):
2501         * m4/getlogin_r.m4 (gl_GETLOGIN_R_SUBSTITUTE):
2502         * m4/hmac-md5.m4 (gl_HMAC_MD5):
2503         * m4/hmac-sha1.m4 (gl_HMAC_SHA1):
2504         * m4/md2.m4 (gl_MD2):
2505         * m4/md4.m4 (gl_MD4):
2506         * m4/pagealign_alloc.m4 (gl_PAGEALIGN_ALLOC):
2507         * m4/read-file.m4 (gl_FUNC_READ_FILE):
2508         * m4/readline.m4 (gl_FUNC_READLINE):
2509         * m4/rijndael.m4 (gl_RIJNDAEL):
2510         Don't use AC_LIBSOURCES; instead, rely on the files in ../modules/
2511         to get the necessary .h files and whatnot.
2512
2513 2006-08-22  Paul Eggert  <eggert@cs.ucla.edu>
2514
2515         * config/srclist.txt: Remove gnupload, since coreutils now syncs from
2516         gnulib rather than the other way around.
2517         * config/srclistvars.sh (COREUTILS): Remove.
2518
2519 2006-08-22  Jim Meyering  <jim@meyering.net>
2520
2521         * modules/mkdir-p (Makefile.am): Fix typo: s/lib+SOURCES/lib_SOURCES/.
2522
2523         * modules/getpass-gnu (Makefile.am): Add getpass.h to EXTRA_DIST.
2524
2525 2006-08-22  Eric Blake  <ebb9@byu.net>
2526
2527         * modules/regexprops-generic: New file.
2528         * MODULES.html.sh (Support for building documentation): List it.
2529
2530 2006-08-22  Eric Blake  <ebb9@byu.net>
2531
2532         * m4/stdint_h.m4 (gl_AC_HEADER_STDINT_H): Avoid compiler warning.
2533         * m4/inttypes_h.m4 (gl_AC_HEADER_INTTYPES_H): Likewise.
2534         * m4/longlong.m4 (AC_TYPE_LONG_LONG_INT): Likewise.
2535         * m4/intmax_t.m4 (gt_AC_TYPE_INTMAX_T): Likewise.
2536
2537 2006-08-22  Bruno Haible <bruno@clisp.org>
2538
2539         * gnulib-tool (func_emit_lib_Makefile_am): Don't treat lib_LIBRARIES
2540         and lib_LTLIBRARIES like the other lib_* variables.
2541
2542 2006-08-22  Bruno Haible <bruno@clisp.org>
2543
2544         * build-aux/x-to-1.in: New file, from GNU gettext.
2545
2546 2006-08-22  Bruno Haible  <bruno@clisp.org>
2547
2548         * m4/readutmp.m4 (gl_READUTMP): Compile readutmp.c only if <utmp.h> or
2549         <utmpx.h> exists.
2550
2551 2006-08-22  Bruno Haible  <bruno@clisp.org>
2552
2553         * lib/readutmp.h: Skip most definitions if neither <utmp.h> nor
2554         <utmpx.h> exists.
2555
2556 2006-08-21  Paul Eggert  <eggert@cs.ucla.edu>
2557
2558         BeOS portability.
2559         * lib/dirchownmod.c (dirchownmod): Don't use fchmod if it doesn't
2560         exist.
2561         Problem reported by Bruno Haible.
2562
2563 2006-08-21  Paul Eggert  <eggert@cs.ucla.edu>
2564
2565         Avoid the need for AC_LIBSOURCES in m4 macros.
2566         * modules/acl (EXTRA_DIST): Add acl.h.
2567         * modules/argmatch (Files): Add m4/argmatch.m4.
2568         (configure.ac): Add gl_ARGMATCH.
2569         (EXTRA_DIST): Renamed from lib_SOURCES, for
2570         consistency with the other modules.  Remove argmatch.c.
2571         * modules/backupfile (EXTRA_DIST): Add backupfile.h.
2572         * modules/c-strtod (EXTRA_DIST): Add c-strtod.h.
2573         * modules/c-strtold (EXTRA_DIST): Add c-strtod.c, c-strtod.h.
2574         * modules/canonhost (EXTRA_DIST): Add c-canonhost.h.
2575         * modules/canonicalize (EXTRA_DIST): Add canonicalize.h.
2576         * modules/chdir-long (EXTRA_DIST): Add chdir-long.h.
2577         * modules/chdir-safer (EXTRA_DIST): Add chdir-safer.h.
2578         * modules/cloexec (EXTRA_DIST): Add cloexec.h.
2579         * modules/close-stream (EXTRA_DIST): Add close-stream.h.
2580         * modules/closeout (EXTRA_DIST): Add closeout.h.
2581         * modules/cycle-check (EXTRA_DIST): Add cycle-check.h.
2582         * modules/dev-ino (EXTRA_DIST): Add dev-ino.h.
2583         * modules/dirfd (EXTRA_DIST): Add dirfd.h.
2584         * modules/dirname (EXTRA_DIST): Renamed from lib_SOURCES.  Add
2585         dirname.h; remove basename.c and stripslash.c.
2586         * modules/exclude (EXTRA_DIST): Add exclude.h.
2587         * modules/exitfail (EXTRA_DIST): Add exitfail.h.
2588         * modules/fcntl-safer (EXTRA_DIST): Add fcntl-safer.h fcntl--.h.
2589         * modules/file-type (EXTRA_DIST): Add file-type.h.
2590         * modules/filemode (EXTRA_DIST): Add filemode.h.
2591         * modules/filenamecat (EXTRA_DIST): Add filenamecat.h.
2592         * modules/fopen-safer (EXTRA_DIST): Add stdio-safer.h stdio--.h.
2593         * modules/fpending (EXTRA_DIST): Add __fpending.h.
2594         * modules/fprintftime (EXTRA_DIST): Add fprintftime.h.
2595         * modules/fsusage (EXTRA_DIST): Add fsusage.h.
2596         * modules/fts (EXTRA_DIST): Add fts_.h fts-cycle.c.
2597         * modules/getcwd (EXTRA_DIST): Add getcwd.h.
2598         * modules/getdate (EXTRA_DIST): Add getdate.c.
2599         * modules/gethrxtime (EXTRA_DIST): Add gethrxtime.h xtime.h.
2600         * modules/getpagesize (EXTRA_DIST): Add getpagesize.h.
2601         * modules/getpass (EXTRA_DIST): Add getpass.h.
2602         * modules/glob (EXTRA_DIST): Add glob_.h glob-libc.h.
2603         * modules/group-member (EXTRA_DIST): Add group-member.h.
2604         * modules/hard-locale (EXTRA_DIST): Add hard-locale.h.
2605         * modules/hash (EXTRA_DIST): Add hash.h.
2606         * modules/human (EXTRA_DIST): Add human.h.
2607         * modules/inttypes (EXTRA_DIST): Add inttypes.h.
2608         * modules/lchmod (EXTRA_DIST): Add lchmod.h.
2609         * modules/lchown (EXTRA_DIST): Add lchown.h.
2610         * modules/long-options (EXTRA_DIST): Add long-options.h.
2611         * modules/lstat (EXTRA_DIST): Add lstat.h.
2612         * modules/md5 (EXTRA_DIST): Add memcasecmp.h.
2613         * modules/memcoll (EXTRA_DIST): Add memcoll.h.
2614         * modules/mempcpy (EXTRA_DIST): Add mempcpy.h.
2615         * modules/memrchr (EXTRA_DIST): Add memrchr.h.
2616         * modules/memxor (EXTRA_DIST): Add memxor.h.
2617         * modules/mkancesdirs (EXTRA_DIST): Add mkancesdirs.h.
2618         * modules/mkdir-p (EXTRA_DIST): Add modechange.h.
2619         * modules/mountlist (EXTRA_DIST): Add mountlist.h.
2620         * modules/openat (EXTRA_DIST): Add at-func.c openat.h openat-priv.h.
2621         * modules/pathmax (EXTRA_DIST): Add pathmax.h.
2622         * modules/physmem (EXTRA_DIST): Add physmem.h.
2623         * modules/posixtm (EXTRA_DIST): Add posixtm.h.
2624         * modules/posixver (EXTRA_DIST): Add posixver.h.
2625         * modules/quote (EXTRA_DIST): Add quote.h.
2626         * modules/quotearg (EXTRA_DIST): Add quotearg.h.
2627         * modules/readtokens (EXTRA_DIST): Add readtokens.h.
2628         * modules/readutmp (EXTRA_DIST): Add readutmp.h.
2629         * modules/regex (EXTRA_DIST): Add regcomp.c regex.h regex_internal.c
2630         regex_internal.h regexec.c.
2631         * modules/safe-read (EXTRA_DIST): Add safe-read.h.
2632         * modules/safe-write (EXTRA_DIST): Add safe-write.h.
2633         * modules/same (EXTRA_DIST): Add same.h.
2634         * modules/same-inode (EXTRA_DIST): Add same-inode.h.
2635         * modules/save-cwd (EXTRA_DIST): Add save-cwd.h.
2636         * modules/savedir (EXTRA_DIST): Add savedir.h.
2637         * modules/sha1 (EXTRA_DIST): Add sha1.h.
2638         * modules/sig2str (EXTRA_DIST): Add sig2str.h.
2639         * modules/stat-macros (EXTRA_DIST): Add stat-macros.h.
2640         * modules/stat-time (EXTRA_DIST): Add stat-time.h.
2641         * modules/stdlib-safer (EXTRA_DIST): Add stdlib-safer.h stdlib--.h.
2642         * modules/strdup (EXTRA_DIST): Add strdup.h.
2643         * modules/strftime (EXTRA_DIST): Add strftime.h.
2644         * modules/strndup (EXTRA_DIST): Add strndup.h.
2645         * modules/strnlen (EXTRA_DIST): Add strnlen.h.
2646         * modules/strverscmp (EXTRA_DIST): Add strverscmp.h.
2647         * modules/time_r (EXTRA_DIST): Add time_r.h.
2648         * modules/timespec (EXTRA_DIST): Add timespec.h.
2649         * modules/tmpfile-safer (EXTRA_DIST): Add stdio-safer.h stdio--.h.
2650         * modules/unistd-safer (EXTRA_DIST): Add unistd-safer.h unistd--.h.
2651         * modules/unlinkdir (EXTRA_DIST): Add unlinkdir.h.
2652         * modules/unlocked-io (EXTRA_DIST): Add unlocked-io.h.
2653         * modules/userspec (EXTRA_DIST): Add userspec.h.
2654         * modules/utimecmp (EXTRA_DIST): Add utimecmp.h.
2655         * modules/utimens (EXTRA_DIST): Add utimens.h.
2656         * modules/xalloc (EXTRA_DIST): Add xalloc.h.
2657         * modules/xgetcwd (EXTRA_DIST): Add xgetcwd.h.
2658         * modules/xnanosleep (EXTRA_DIST): Add xnanosleep.h.
2659         * modules/xreadlink (EXTRA_DIST): Add xreadlink.h.
2660         * modules/xstrtod (EXTRA_DIST): Add xstrtod.h.
2661         * modules/xstrtol (EXTRA_DIST): Add xstrtol.h.
2662         * modules/xstrtold (EXTRA_DIST): Add xstrtod.c xstrtod.h.
2663         * modules/yesno (EXTRA_DIST): Add yesno.h.
2664
2665 2006-08-21  Paul Eggert  <eggert@cs.ucla.edu>
2666
2667         * m4/mkdir-p.m4 (gl_MKDIR_PARENTS): Check for fchmod.
2668
2669         * m4/argmatch.m4: New file, from coreutils with AC_LIBSOURCES removed.
2670         * m4/dev-ino.m4, same-inode.m4: Remove.
2671
2672         * m4/_inttypes_h.m4 (gl_INTTYPES_H):
2673         * m4/acl.m4 (AC_FUNC_ACL):
2674         * m4/backupfile.m4 (gl_BACKUPFILE):
2675         * m4/c-strtod.m4 (gl_C99_STRTOLD):
2676         * m4/canon-host.m4 (gl_CANON_HOST):
2677         * m4/canonicalize.m4 (AC_FUNC_CANONICALIZE_FILE_NAME):
2678         * m4/chdir-long.m4 (gl_FUNC_CHDIR_LONG):
2679         * m4/chdir-safer.m4 (gl_CHDIR_SAFER):
2680         * m4/cloexec.m4 (gl_CLOEXEC):
2681         * m4/close-stream.m4 (gl_CLOSE_STREAM):
2682         * m4/closeout.m4 (gl_CLOSEOUT):
2683         * m4/dirfd.m4 (gl_FUNC_DIRFD):
2684         * m4/dirname.m4 (gl_DIRNAME):
2685         * m4/exclude.m4 (gl_EXCLUDE):
2686         * m4/exitfail.m4 (gl_EXITFAIL):
2687         * m4/fcntl-safer.m4 (gl_FCNTL_SAFER):
2688         * m4/file-type.m4 (gl_FILE_TYPE):
2689         * m4/filemode.m4 (gl_FILEMODE):
2690         * m4/filenamecat.m4 (gl_FILE_NAME_CONCAT):
2691         * m4/fpending.m4 (gl_FUNC_FPENDING):
2692         * m4/fprintftime.m4 (gl_FPRINTFTIME):
2693         * m4/fts.m4 (gl_FUNC_FTS):
2694         * m4/getcwd.m4 (gl_FUNC_GETCWD_NULL):
2695         * m4/getdate.m4 (gl_GETDATE):
2696         * m4/gethrxtime.m4 (gl_GETHRXTIME):
2697         * m4/getpagesize.m4 (gl_GETPAGESIZE):
2698         * m4/getpass.m4 (gl_FUNC_GETPASS):
2699         * m4/gettime.m4 (gl_GETTIME):
2700         * m4/getugroups.m4 (gl_GETUGROUPS):
2701         * m4/glob.m4 (gl_GLOB_SUBSTITUTE):
2702         * m4/group-member.m4 (gl_FUNC_GROUP_MEMBER):
2703         * m4/hard-locale.m4 (gl_HARD_LOCALE):
2704         * m4/hash.m4 (gl_HASH):
2705         * m4/idcache.m4 (gl_IDCACHE):
2706         * m4/lchmod.m4 (gl_FUNC_LCHMOD):
2707         * m4/lchown.m4 (gl_FUNC_LCHOWN):
2708         * m4/long-options.m4 (gl_LONG_OPTIONS):
2709         * m4/lstat.m4 (gl_FUNC_LSTAT):
2710         * m4/md5.m4 (gl_MD5):
2711         * m4/memcasecmp.m4 (gl_MEMCASECMP):
2712         * m4/memcoll.m4 (gl_MEMCOLL):
2713         * m4/mempcpy.m4 (gl_FUNC_MEMPCPY):
2714         * m4/memrchr.m4 (gl_FUNC_MEMRCHR):
2715         * m4/memxor.m4 (gl_MEMXOR):
2716         * m4/mkancesdirs.m4 (gl_MKANCESDIRS):
2717         * m4/mkdir-p.m4 (gl_MKDIR_PARENTS):
2718         * m4/modechange.m4 (gl_MODECHANGE):
2719         * m4/mountlist.m4 (gl_MOUNTLIST):
2720         * m4/nanosleep.m4 (gl_FUNC_NANOSLEEP):
2721         * m4/openat.m4 (gl_FUNC_OPENAT):
2722         * m4/pathmax.m4 (gl_PATHMAX):
2723         * m4/physmem.m4 (gl_PHYSMEM):
2724         * m4/posixtm.m4 (gl_POSIXTM):
2725         * m4/posixver.m4 (gl_POSIXVER):
2726         * m4/quote.m4 (gl_QUOTE):
2727         * m4/quotearg.m4 (gl_QUOTEARG):
2728         * m4/readtokens.m4 (gl_READTOKENS):
2729         * m4/readutmp.m4 (gl_READUTMP):
2730         * m4/regex.m4 (gl_REGEX):
2731         * m4/safe-read.m4 (gl_SAFE_READ):
2732         * m4/safe-write.m4 (gl_SAFE_WRITE):
2733         * m4/same.m4 (gl_SAME):
2734         * m4/save-cwd.m4 (gl_SAVE_CWD):
2735         * m4/savedir.m4 (gl_SAVEDIR):
2736         * m4/settime.m4 (gl_SETTIME):
2737         * m4/sha1.m4 (gl_SHA1):
2738         * m4/sig2str.m4 (gl_FUNC_SIG2STR):
2739         * m4/stat-macros.m4 (gl_STAT_MACROS):
2740         * m4/stat-time.m4 (gl_STAT_TIME):
2741         * m4/stdio-safer.m4 (gl_FOPEN_SAFER):
2742         * m4/stdlib-safer.m4 (gl_STDLIB_SAFER):
2743         * m4/strdup.m4 (gl_FUNC_STRDUP):
2744         * m4/strftime.m4 (gl_FUNC_GNU_STRFTIME):
2745         * m4/strndup.m4 (gl_FUNC_STRNDUP):
2746         * m4/strnlen.m4 (gl_FUNC_STRNLEN):
2747         * m4/strverscmp.m4 (gl_FUNC_STRVERSCMP):
2748         * m4/time_r.m4 (gl_TIME_R):
2749         * m4/timespec.m4 (gl_TIMESPEC):
2750         * m4/unistd-safer.m4 (gl_UNISTD_SAFER):
2751         * m4/unlinkdir.m4 (gl_UNLINKDIR):
2752         * m4/unlocked-io.m4 (gl_FUNC_GLIBC_UNLOCKED_IO):
2753         * m4/userspec.m4 (gl_USERSPEC):
2754         * m4/utimecmp.m4 (gl_UTIMECMP):
2755         * m4/utimens.m4 (gl_UTIMENS):
2756         * m4/xalloc.m4 (gl_XALLOC):
2757         * m4/xgetcwd.m4 (gl_XGETCWD):
2758         * m4/xnanosleep.m4 (gl_XNANOSLEEP):
2759         * m4/xreadlink.m4 (gl_XREADLINK):
2760         * m4/xstrtod.m4 (gl_XSTRTOD):
2761         * m4/yesno.m4 (gl_YESNO):
2762         Don't use AC_LIBSOURCES; instead, rely on the files in ../modules/
2763         to get the necessary .h files and whatnot.
2764
2765 2006-08-21  Mark D. Baushke  <mdb@gnu.org>
2766             Bruno Haible <bruno@clisp.org>
2767
2768         * gnulib-tool (func_verify_module): Work around Sun's non-POSIX 1003.2
2769         /bin/sh understanding of '!' conditional negation.
2770
2771 2006-08-21  Jim Meyering  <jim@meyering.net>
2772
2773         * modules/openat (Depends-on): Really alphabetize.
2774
2775         * modules/acl (Depends-on): Add error and quote.
2776
2777         * check-module (find_included_lib_files): Add at-func.c to the
2778         ok-to-include-more-than-once white list.
2779
2780         * modules/openat (Depends-on): Add lstat.  Alphabetize.
2781
2782 2006-08-21  Bruno Haible <bruno@clisp.org>
2783
2784         * gnulib-tool (func_emit_lib_Makefile_am, func_emit_tests_Makefile_am):
2785         Emit a pkgdata_DATA variable only if some snippets add contents to it.
2786         Reported by Martin Lambers <marlam@marlam.de>.
2787
2788 2006-08-21  Bruno Haible <bruno@clisp.org>
2789
2790         * gnulib-tool (func_emit_lib_Makefile_am): If the snippets already
2791         specify an installation location, don't emit a noinst_LIBRARIES or
2792         noinst_LTLIBRARIES assignment.
2793
2794 2006-08-21  Bruno Haible  <bruno@clisp.org>
2795
2796         BeOS portability.
2797         * modules/mbchar (Include): Don't test HAVE_WCTYPE_H any more, since
2798         BeOS has mbrtowc() but no <wctype.h>.
2799
2800 2006-08-21  Bruno Haible  <bruno@clisp.org>
2801
2802         BeOS portability.
2803         * m4/mbchar.m4 (gl_MBCHAR): Compile mbchar.c also if <wctype.h> doesn't
2804         exist.
2805
2806 2006-08-21  Bruno Haible  <bruno@clisp.org>
2807
2808         BeOS portability.
2809         * lib/mbchar.h: Include <wctype.h> only if it exists.
2810
2811 2006-08-20  Paul Eggert  <eggert@cs.ucla.edu>
2812
2813         Remove files that are no longer needed by their respective modules.
2814         * m4/obstack.m4: Remove.
2815         * m4/strerror_r.m4: Remove.
2816         * m4/uint32_t.m4: Remove.
2817         * m4/uintptr_t.m4: Remove.
2818         * m4/ullong_max.m4: Remove.
2819         * m4/xstrtoimax.m4: Remove.
2820         * m4/xstrtoumax.m4: Remove.
2821
2822         * m4/cycle-check.m4 (gl_CYCLE_CHECK): Do not require
2823         gl_AC_TYPE_UINTMAX_T, gl_STRUCT_DEV_INO, or gl_SAME_INODE, since gnulib
2824         dependencies now capture this.
2825
2826         * m4/cycle-check.m4 (gl_CYCLE_CHECK):
2827         Do not use AC_LIBSOURCES, since gnulib modules now do this.
2828         * m4/fsusage.m4 (gl_FSUSAGE): Likewise.
2829         * m4/human.m4 (gl_HUMAN): Likewise.
2830         * m4/inttostr.m4 (gl_INTTOSTR): Likewise.
2831         * m4/xstrtol.m4 (gl_XSTRTOL): Likewise.
2832
2833         * m4/filemode.m4 (gl_FILEMODE): Require AC_STRUCT_ST_DM_MODE.
2834
2835         * m4/filemode.m4 (gl_PREREQ_FSUSAGE_EXTRA): Do not require
2836         gl_AC_TYPE_INTMAX_T or gl_AC_TYPE_UINTMAX_T, since we now require
2837         stdint.
2838         * m4/human.m4 (gl_HUMAN): Likewise.
2839         * m4/inttostr.m4 (gl_PREREQ_INTTOSTR): Likewise.
2840         * m4/mkstemp.m4 (gl_PREREQ_TEMPNAME): Likewise.
2841         * m4/strtoimax.m4 (gl_PREREQ_STRTOIMAX): Likewise.
2842         * m4/strtoumax.m4 (gl_PREREQ_STRTOUMAX): Likewise.
2843         * m4/xstrtol (gl_XSTRTOL): Likewise.
2844
2845         * m4/gethrxtime.m4 (gl_XTIME): gl_AC_TYPE_LONG_LONG ->
2846         AC_TYPE_LONG_LONG_INT.
2847         * m4/strtoimax.m4 (gl_PREREQ_STRTOIMAX): Likewise.
2848         * m4/strtoll.m4 (gl_FUNC_STRTOLL): Likewise.
2849         * m4/strtoull.m4 (gl_FUNC_STRTOULL): Likewise, for unsigned long.
2850         * m4/strtoumax.m4 (gl_PREREQ_STRTOUMAX): Likewise.
2851
2852         * m4/human.m4 (gl_HUMAN): Do not require AM_STDBOOL_H since we depend
2853         on stdbool.
2854
2855         * m4/xstrtol.m4 (gl_PREREQ_XSTRTOL_H, gl_PREREQ_XSTRTOL): Remove.
2856         (gl_PREREQ_XSTRTOUL): Remove.
2857
2858         * m4/ls-mntd-fs.m4 (gl_LIST_MOUNTED_FILE_SYSTEMS): Check for hasmntopt.
2859
2860         * m4/posixver.m4: Fix comment since head -1 now works even in POSIX
2861         mode.
2862
2863 2006-08-20  Paul Eggert  <eggert@cs.ucla.edu>
2864
2865         Add and change modules to make it easier for coreutils to use
2866         gnulib-tool.
2867         * modules/backupfile (Files): Remove m4/d-ino.m4.
2868         (Depends-on): Add d-ino.
2869         * modules/cycle-check (Depends-on): Add stdint.
2870         (lib_SOURCES): Add cycle-check.h.
2871         * modules/d-ino: New module.
2872         * modules/d-type: New module.
2873         * modules/error (Files): Remove m4/strerror_r.m4.
2874         * modules/filemode (Files): Add m4/st_dm_mode.m4.
2875         * modules/fsuage (Files): Remove m4/ulonglong.m4, m4/stdint_h.m4,
2876         m4/inttypes_h.m4, m4/uintmax_t.m4.
2877         (Depends-on): Add stdint.
2878         (lib_SOURCES): Add fsusage.h.
2879         * modules/getcwd (Files): Remove d-ino.m4.
2880         (Depends-on): Add d-ino.
2881         * modules/getndelim2 (Depends-on): Add stdint.
2882         * modules/glob (Files): Remove m4/d-type.m4.
2883         (Depends-on): Add d-type.
2884         * modules/host-os: New module.
2885         * modules/human (Files):  Remove m4/ulonglong.m4, m4/stdint_h.m4,
2886         m4/inttypes_h.m4, m4/uintmax_t.m4.
2887         * Depends-on: Add stdint.
2888         (lib_SOURCES): Add human.h.
2889         * modules/inttostr (Files): Remove m4/intmax_t.m4,
2890         m4/inttostr.m4, m4/inttypes_h.m4, m4/longlong.m4, m4/stdint_h.m4,
2891         m4/uintmax_t.m4, m4/ulonglong.m4.
2892         (Depends-on): Add stdint.
2893         (EXTRA_DIST): Add inttostr.h.
2894         * modules/lchmod: New module.
2895         * modules/link-follow: New module.
2896         * modules/mkdir-p (Files): Remove lib/lchmod.h, m4/lchmod.m4.
2897         (Depends-on): Add lchmod.
2898         * modules/mkstemp (Files): Remove m4/ulonglong.m4,
2899         m4/stdint_h.m4, m4/inttypes_h.m4, m4/uintmax_t.m4.
2900         (Depends-on): Add stdint.
2901         * modules/obstack (Files): Remove m4/inttypes_h.m4, m4/obstack.m4,
2902         m4/stdint_h.m4, m4/uintmax_t.m4, m4/ulonglong.m4.
2903         (Depends-on): Add stdint.
2904         (configure.ac): Change gl_OBSTACK to AC_FUNC_OBSTACK.
2905         * modules/perl: New module.
2906         * modules/regex (Depends-on): Add stdint.
2907         * modules/rmdir-errno: New module.
2908         * modules/strtoimax (Files): Remove m4/stdint_h.m4, m4/inttypes_h.m4,
2909         m4/intmax_t.m4.
2910         (Depends-on): Add stdint.
2911         * modules/strtoumax (Files): Remove m4/stdint_h.m4, m4/inttypes_h.m4,
2912         m4/uintmax_t.m4.
2913         (Depends-on): Add stdint.
2914         * modules/unlink-busy: New module.
2915         * modules/utimecmp (Depends-on): Add stdint.
2916         * modules/uptime: New module.
2917         * modules/winsz-ioctl: New module.
2918         * modules/winsz-termios: New module.
2919         * modules/xnanosleep (Depends-on): Add nanosleep.
2920         * modules/ullong_max: Remove.
2921         * modules/xstrtoimax (Files): Remove m4/xstrtoimax.m4.
2922         (configure.ac): Remove gl_XSTRTOIMAX; no action needed now.
2923         * modules/xstrtol (Files): Remove m4/ulonglong.m4, m4/longlong.m4,
2924         m4/stdint_h.m4, m4/inttypes_h.m4, m4/uintmax_t.m4, m4/intmax_t.m4.
2925         (Depends-on): Add inttypes.
2926         (lib_SOURCES): Add xstrtol.h.
2927         * modules/xstrtoumax (Files): Remove m4/xstrtoumax.m4.
2928         (configure.ac): Remove gl_XSTRTOUMAX; no action needed now.
2929         * MODULES.html.sh: Move 'assert' into the assert section.
2930         Move 'dummy' into the linking section.
2931         Remove ullong_max.
2932         Add section for compatibility checks for POSIX:2001 functions,
2933         and put d-ino, d-type, link-follow, rmdir-errno, unlink-busy,
2934         winsz-ioctl, and winsz-termios into it.
2935         Add lchmod.
2936         Add top-level Misc section and put host-os, perl, and uptime
2937         into it.
2938
2939 2006-08-20  Paul Eggert  <eggert@cs.ucla.edu>
2940
2941         * lib/cycle-check.h: Include <stdint.h> unconditionally, since we
2942         now assume the stdint module.  Do not include inttypes.h.
2943         * lib/fsusage.h: Likewise.
2944         * lib/getndelim2.c: Likewise.
2945         * lib/human.h: Likewise.
2946         * lib/inttostr.h: Likewise.
2947         * lib/obstack.c: Likewise.
2948         * lib/regex_internal.h: Likewise.
2949         * lib/tempname.c: Likewise.
2950         * lib/utimecmp.c: Likewise.
2951         * lib/xstrtol.h: Likewise.
2952
2953         * lib/stat_.h: Fix typo: HAVE_FUNC_LSTAT -> HAVE_LSTAT.
2954
2955         * lib/strtoimax.c: Adjust to macro name changes in Autoconf,
2956         e.g., HAVE_LONG_LONG -> HAVE_LONG_LONG_INT.
2957         * lib/xtime.h: Likewise.
2958
2959 2006-08-19  Paul Eggert  <eggert@cs.ucla.edu>
2960
2961         * modules/openat (Files): Add lib/fchmodat.c.
2962         Fixes problem reported by Jay Youngman.
2963
2964 2006-08-19  Paul Eggert  <eggert@cs.ucla.edu>
2965
2966         * lib/fchmodat.c: New file, from coreutils.  This was inadvertently
2967         omitted in the 2006-08-17 update.  Problem reported by Jay Youngman.
2968
2969 2006-08-18  Paul Eggert  <eggert@cs.ucla.edu>
2970             Bruno Haible  <bruno@clisp.org>
2971
2972         * m4/bison-i18n.m4 (BISON_I18N): Also handle the case where yacc exists
2973         and is a script that invokes bison. Tighten the code. Add comments.
2974
2975 2006-08-18  Jim Meyering  <jim@meyering.net>
2976
2977         * m4/gethrxtime.m4 (gl_PREREQ_GETHRXTIME): Also check for
2978         CLOCK_REALTIME, since gethrxtime may revert to using clock_gettime via
2979         gettime.c.  Gabor Z. Papp reported that gethrxtime-using programs
2980         failed to link due to unresolved clock_gettime on a linux-2.4.x system.
2981
2982 2006-08-18  Bruno Haible  <bruno@clisp.org>
2983
2984         * modules/bison-i18n: New file.
2985         * MODULES.html.sh (Internationalization functions): Add it.
2986
2987 2006-08-18  Bruno Haible  <bruno@clisp.org>
2988
2989         * m4/ls-mntd-fs.m4 (gl_LIST_MOUNTED_FILE_SYSTEMS): Also check for
2990         sys/statvfs.h. When getmntinfo was found, check its declaration and
2991         set either MOUNTED_GETMNTINFO or MOUNTED_GETMNTINFO2 depending on it.
2992
2993 2006-08-18  Bruno Haible  <bruno@clisp.org>
2994
2995         * m4/bison-i18n.m4: New file, from bison.
2996
2997 2006-08-18  Bruno Haible  <bruno@clisp.org>
2998
2999         * lib/mountlist.c [MOUNTED_GETMNTINFO2]: Include sys/statvfs.h.
3000         (ME_DUMMY): Treat "kernfs" as a dummy.
3001         (read_file_system_list) [MOUNTED_GETMNTINFO2]: Implement.
3002
3003 2006-08-17  Paul Eggert  <eggert@cs.ucla.edu>
3004
3005         Update from coreutils.
3006
3007         2006-08-15  Jim Meyering  <jim@meyering.net>
3008
3009         * m4/openat.m4 (gl_FUNC_OPENAT): Add at-func.c via AC_LIBSOURCES.
3010
3011         2006-01-17  Jim Meyering  <jim@meyering.net>
3012
3013         * m4/fts.m4 (gl_FUNC_FTS_CORE): Depend on gl_FUNC_OPENAT.
3014
3015         2006-01-11  Jim Meyering  <jim@meyering.net>
3016
3017         * m4/openat.m4 (gl_FUNC_OPENAT): Require and compile fchmodat.c.
3018         Check for the lchmod function.
3019
3020 2006-08-17  Paul Eggert  <eggert@cs.ucla.edu>
3021
3022         Update from coreutils.
3023
3024         * lib/__fpending.h: Add copyright notice.
3025         * lib/fprintftime.h: Likewise.
3026         * lib/savedir.c: Use (C) in copyright notice.
3027         * lib/savedir.h: Likewise.
3028
3029         2006-08-15  Jim Meyering  <jim@meyering.net>
3030
3031         * lib/at-func.c: New file, with the logic of all emulated at-functions.
3032         * lib/openat-priv.h: Include <errno.h> and define ENOSYS,
3033         in support of the EXPECTED_ERRNO macro.
3034         * lib/openat.c (fstatat, unlinkat, fchownat): Remove function
3035         definitions.  Instead, define the appropriate symbols and include
3036         "at-func.c".
3037         * lib/mkdirat.c (mkdirat): Likewise.
3038         * lib/fchmodat.c (fchmodat): Likewise.
3039         (ENOSYS): Remove definition.
3040         * lib/openat.c: Don't include <errno.h>, now that "openat-priv.h" does
3041         it.  Don't include "unistd--.h" -- it wasn't ever used.
3042
3043         2006-01-17  Jim Meyering  <jim@meyering.net>
3044
3045         Rewrite fts.c not to change the current working directory,
3046         by using openat, fstatat, fdopendir, etc..
3047
3048         * lib/fts.c [! _LIBC]: Include "openat.h" and "unistd--.h".
3049         (HAVE_OPENAT_SUPPORT): Define.
3050         [_LIBC] (fchdir): Don't undef or define; no longer used.
3051         (FCHDIR): Define in terms of cwd_advance_fd rather than fchdir.
3052         Now, this `function' always succeeds, and consumes its file descriptor
3053         parameter -- so callers must not close such FDs.  Update callers.
3054         (diropen_fd, opendirat, cwd_advance_fd): New functions.
3055         (diropen): Add parameter, SP.  Adjust all callers.
3056         Implement using diropen_fd, rather than open.
3057         (fts_open): Initialize new member, fts_cwd_fd.
3058         Remove fts_rft-setting code.
3059         (fts_close): Close fts_cwd_fd, if necessary.
3060         (__opendir2): Define in terms of opendir or opendirat,
3061         depending on whether the FST_NOCHDIR flag is set.
3062         (fts_build): Since fts_safe_changedir consumes its FD, and since
3063         this code must do `closedir(dirp)', dup the dirfd(dirp) argument,
3064         and close the dup'd file descriptor upon failure.
3065         (fts_stat): Use fstatat(...AT_SYMLINK_NOFOLLOW) in place of lstat.
3066         (fts_safe_changedir): Tweak semantics to reflect that this function
3067         now calls cwd_advance_fd and hence consumes its FD argument.
3068         * lib/fts_.h [struct FTS] (fts_cwd_fd): New member.
3069         [struct FTS] (fts_rft): Remove now-unused member.
3070         [struct FTS] (fts_cycle.state): Improve comment.
3071
3072         * lib/openat.c (openat_needs_fchdir): New function.
3073         * lib/openat.h (openat_needs_fchdir): Declare it.
3074
3075 2006-08-16  Paul Eggert  <eggert@cs.ucla.edu>
3076
3077         * lib/memcoll.c (memcoll): Set errno = 0 in the shortcut case, too.
3078         Problem and fix reported by Pádraig Brady in
3079         <http://lists.gnu.org/archive/html/bug-coreutils/2006-08/msg00099.html>.
3080
3081 2006-08-15  Paul Eggert  <eggert@cs.ucla.edu>
3082
3083         * modules/cycle-check (configure.ac): Add gl_CYCLE_CHECK.
3084
3085 2006-08-15  Paul Eggert  <eggert@cs.ucla.edu>
3086
3087         * lib/memcoll.c (memcoll): Optimize for the common case where the
3088         arguments are bytewise equal.
3089
3090 2006-08-15  Paul Eggert  <eggert@cs.ucla.edu>
3091
3092         * doc/regexprops-generic.texi: Add a copyright notice.
3093
3094 2006-08-15  Bruno Haible  <bruno@clisp.org>
3095
3096         * modules/tmpdir (License): Change to LGPL.
3097
3098 2006-08-15  Bruno Haible  <bruno@clisp.org>
3099
3100         * gnulib-tool (func_all_modules, func_verify_module): COPYING is not a
3101         module.
3102
3103 2006-08-14  Simon Josefsson  <jas@extundo.com>
3104
3105         * config/srclist.txt: Add gnupload.
3106
3107 2006-08-14  Paul Eggert  <eggert@cs.ucla.edu>
3108
3109         Change copyright notice from LGPL 2 to GPL 2, since that's the
3110         standard form used in the gnulib repository.
3111         * tests/test-lock.c: Likewise.
3112         * tests/test-stdint.c: Likewise.
3113         * tests/test-tls.c: Likewise.
3114
3115         * users.txt: Add bison, diffutils, libprelude, prelude-lml,
3116         prelude-manager.  User shorter URLs for GNU projects, without '?'.
3117         Add copyright notice.
3118
3119         * check-module: Add copyright notice.  Output a copyright
3120         notice if "--version" is specified.
3121         * modules/COPYING: New file.
3122         * tests/test-getaddrinfo.c: Add copyright notice.
3123         * tests/test-verify.c: Likewise.
3124
3125 2006-08-14  Paul Eggert  <eggert@cs.ucla.edu>
3126
3127         Change copyright notice from LGPL 2 to GPL 2, since that's the
3128         standard form used in the gnulib repository.
3129         * lib/lock.c: LGPL -> GPL.
3130         * lib/lock.h: Likewise.
3131         * lib/strnlen1.c: Likewise.
3132         * lib/strnlen1.h: Likewise.
3133         * lib/tls.c: Likewise.
3134         * lib/tls.h: Likewise.
3135         * lib/tmpdir.c: Likewise.
3136
3137         * lib/TODO: Remove; this belongs only in coreutils.
3138
3139 2006-08-14  Paul Eggert  <eggert@cs.ucla.edu>
3140
3141         Add copyright notices to long-enough files that lack them, since
3142         otherwise the files aren't clearly free.  Use the same notice that
3143         getdate.texi already uses.
3144         * doc/alloca-opt.texi: Add copyright notice.
3145         * doc/alloca.texi: Likewise.
3146         * doc/ctime.texi: Likewise.
3147         * doc/functions.texi: Likewise.
3148         * doc/gcd.texi: Likewise.
3149         * doc/gnulib-tool.texi: Likewise.
3150         * doc/inet_ntoa.texi: Likewise.
3151         * doc/visibility.texi: Likewise.
3152
3153         * doc/getdate.texi: Update FDL version from 1.1 to 1.2.
3154         * doc/quote.texi: Add copyright notice.
3155
3156         * doc/solaris-versions: Add SunOS 5.10, SunOS 1.x, SunOS 4.0, SunOS
3157         4.0.x, SunOS 4.1.1.1, SunOS 4.1.1_U1, SunOS 4.1.3B.  SunOS 4.1.3
3158         was Solaris 1.1A.  Remove space before B in Solaris 1.1.1B.
3159         Mention SunOS 5.11.  Mention that everything before SunOS 5.7
3160         is now obsolete, and give a pointer to the Sun list.
3161         Add copyright notice.
3162
3163 2006-08-14  Paul Eggert  <eggert@cs.ucla.edu>
3164
3165         * config/srclistvars.sh: Add copyright notice.
3166
3167 2006-08-14  Eric Blake  <ebb9@byu.net>
3168
3169         Import the following change from libc:
3170
3171         2006-08-12  Ulrich Drepper  <drepper@redhat.com>
3172
3173         Upstream bug 2997.
3174         * lib/misc/error.c: Add space between program name and message if file
3175         name is missing.
3176
3177 2006-08-12  Karl Berry  <karl@gnu.org>
3178
3179         * config/srclist.txt (ssize_t.m4, sig_atomic_t.m4, signalblocking.m4):
3180         remove, these originate in gnulib now.
3181
3182 2006-08-11  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
3183
3184         * doc/Makefile (standards.info standards.html standards.dvi):
3185         Also depend on make-stds.texi.
3186
3187 2006-08-11  Paul Eggert  <eggert@cs.ucla.edu>
3188
3189         * lib/pipe-safer.c (pipe_safer): Fix misspelling: HAVE_FUNC_PIPE ->
3190         HAVE_PIPE.  Fix a file descriptor leak when fd_safer fails.
3191
3192         * lib/regex_internal.c (re_string_skip_chars): Don't assume WEOF fits
3193         in wchar_t.  Problem reported by Eric Blake.
3194
3195         * lib/snprintf.c (snprintf): memcpy LEN bytes, not SIZE - 1, when
3196         LEN is smaller than SIZE.  Suggested by Bruno Haible.
3197         Also, help the compiler to keep LEN in a register.
3198
3199 2006-08-11  Eric Blake  <ebb9@byu.net>
3200
3201         * users.txt: Sort.  Add tar.
3202
3203 2006-08-11  Bruno Haible  <bruno@clisp.org>
3204
3205         * users.txt: New file.
3206
3207 2006-08-11  Bruno Haible  <bruno@clisp.org>
3208
3209         * m4/wcwidth.m4 (gl_FUNC_WCWIDTH): Include <stdio.h> and <time.h>
3210         before <wchar.h>. Needed for OSF/1 and BSD/OS.
3211
3212 2006-08-10  Paul Eggert  <eggert@cs.ucla.edu>
3213
3214         * modules/snprintf (Depends-on): Remove minmax.
3215         (Maintainer): Add self and Bruno.
3216
3217 2006-08-10  Paul Eggert  <eggert@cs.ucla.edu>
3218
3219         * lib/.cppi-disable: Add snprintf.h, socket_.h.
3220         * lib/snprintf.c: Include <errno.h> and <limits.h>.
3221         (EOVERFLOW): Define if the system does not.
3222         Do not include "minmax.h"; it wasn't used.
3223         (snprintf): Don't assume size_t promotes to an unsigned type.
3224         Fix bug when generated string was too long for the buffer: the
3225         buffer's contents are supposed to be the initial prefix of the
3226         output.  Don't assume vasnprintf returns EOVERFLOW if the size
3227         exceeds INT_MAX; do the check ourselves.
3228
3229         Import the following changes from libc:
3230
3231         2006-06-02  Jakub Jelinek  <jakub@redhat.com>
3232
3233         * lib/posix/regex_internal.c (re_string_skip_chars): If no character
3234         has been converted at all, set *last_wc to WEOF.  If mbrtowc failed,
3235         set wc to the byte which couldn't be converted.
3236         (re_string_reconstruct): Don't clear valid_raw_len before calling
3237         re_string_skip_chars.  If wc is WEOF after re_string_skip_chars, set
3238         tip_context using re_string_context_at.
3239
3240         2006-05-02  Ulrich Drepper  <drepper@redhat.com>
3241
3242         * lib/posix/regex.h: g++ still cannot handled [restrict].
3243
3244         2006-04-21  Ulrich Drepper  <drepper@redhat.com>
3245
3246         * lib/posix/regex.h: Remove special handling for VMS.
3247
3248 2006-08-10  Jim Meyering  <jim@meyering.net>
3249
3250         * modules/same-inode: New module.
3251         * modules/dev-ino: New module.
3252         * modules/cycle-check: Depend on these modules, rather than simply
3253         including their .h files.
3254         (Makefile.am): Don't list cycle-check.[ch] here, now that they're
3255         required via m4/cycle-check.m4.
3256         * modules/same: Depend on new same-inode module, rather than
3257         including same-inode.h.
3258         * modules/chdir-safer: New file.
3259
3260         * modules/chown (Depends-on): Add stat-macros.
3261
3262 2006-08-10  Jim Meyering  <jim@meyering.net>
3263
3264         * m4/cycle-check.m4: New file.
3265         Require gl_STRUCT_DEV_INO and gl_SAME_INODE.
3266         * m4/dev-ino.m4, same-inode.m4: New files.
3267
3268 2006-08-10  Eric Blake  <ebb9@byu.net>
3269
3270         * modules/verror (Depends-on): Remove bogus gl_VERROR that snuck
3271         in from original proposal.
3272
3273 2006-08-10  Eric Blake  <ebb9@byu.net>
3274         and Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
3275
3276         * gnulib-tool (func_import): Detect unexpanded macros in gnulib
3277         namespace.
3278
3279 2006-08-10  Bruno Haible  <bruno@clisp.org>
3280
3281         * gnulib-tool (func_create_testdir): Detect unexpanded macros here
3282         as well.
3283
3284 2006-08-09  Paul Eggert  <eggert@cs.ucla.edu>
3285
3286         Sync from coreutils.
3287
3288         2006-07-19  Mike Frysinger  <vapier@gentoo.org>
3289
3290         * lib/mountlist.c [ME_REMOTE]: Filter out cifs.
3291         Reported by Toralf Förster in <http://bugs.gentoo.org/141012>.
3292
3293 2006-08-09  Paul Eggert  <eggert@cs.ucla.edu>
3294
3295         * modules/restrict: Remove; no longer needed now that we assume
3296         Autoconf 2.59 or later.
3297         * MODULES.html.sh: Remove 'restrict'.
3298         * modules/argp (Depends-on): Remove 'restrict'.
3299         * modules/base64 (Depends-on): Likewise.
3300         * modules/gc (Depends-on): Likewise.
3301         * modules/getaddrinfo (Depends-on): Likewise.
3302         * modules/glob (Depends-on): Likewise.
3303         * modules/inet_ntop (Depends-on): Likewise.
3304         * modules/inet_pton (Depends-on): Likewise.
3305         * modules/memxor (Depends-on): Likewise.
3306         * modules/regex (Depends-on): Likewise.
3307         * modules/strtok_r (Depends-on): Likewise.
3308         * modules/time_r (Depends-on): Likewise.
3309
3310 2006-08-09  Paul Eggert  <eggert@cs.ucla.edu>
3311
3312         * m4/argp.m4 (gl_ARGP): Require AC_C_RESTRICT.
3313         * m4/gc.m4 (gl_PREREQ_GC): Likewise.
3314         * m4/glob.m4 (gl_PREREQ_GLOB): Likewise.
3315         * m4/inet_ntop.m4 (gl_PREREQ_INET_NTOP): Likewise.
3316         * m4/inet_pton.m4 (gl_PREREQ_INET_PTON): Likewise.
3317         * m4/memxor.m4 (gl_MEMXOR): Likewise.
3318         * m4/restrict.m4: Remove; no longer needed.  All remaining uses of
3319         gl_C_RESTRICT replaced by AC_C_RESTRICT.
3320
3321         Merge from coreutils.
3322         * m4/regex.m4 (gl_PREREQ_REGEX): Require AC_C_RESTRICT, not
3323         gl_C_RESTRICT, now that we assume Autoconf 2.59 or later.
3324         * m4/strtok_r.m4 (gl_FUNC_STRTOK_R): Likewise.
3325         * m4/time_r.m4 (gl_TIME_R): Likewise.
3326
3327 2006-08-09  Karl Berry  <karl@gnu.org>
3328
3329         * config/srclist.txt: no more gettext-tools, per Bruno.
3330
3331 2006-08-08  Eric Blake  <ebb9@byu.net>
3332
3333         * modules/verror: New module.
3334         * MODULES.html.sh: Document it.
3335
3336 2006-08-08  Eric Blake  <ebb9@byu.net>
3337
3338         * lib/verror.h, verror.c: New files.
3339
3340 2006-08-08  Eric Blake  <ebb9@byu.net>
3341
3342         * lib/verror.c (verror_at_line): Work around glibc bug 2997, so that
3343         verror_at_line output complies with GNU Coding Standards even when
3344         file is NULL.
3345
3346 2006-08-07  Bruno Haible  <bruno@clisp.org>
3347
3348         * lib/allocsa.h (sa_alignof) [_AIX]: Also consider 'long long' in newer
3349         versions of AIX.
3350         Reported by Ralf Wildenhues.
3351
3352 2006-08-07  Bruno Haible  <bruno@clisp.org>
3353
3354         * gnulib-tool (func_create_testdir): Wrap the set of autoconf snippets
3355         in an AC_DEFUN. Needed so that the autoconf snippets can use
3356         AC_REQUIRE.
3357
3358 2006-08-06  Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
3359
3360         * gnulib-tool (func_emit_lib_Makefile_am, func_emit_tests_Makefile_am):
3361         Initialize pkgdata_DATA.
3362         * modules/javaversion (Makefile.am): Add to pkgdata_DATA, rather than
3363         overriding it.
3364
3365 2006-08-06  Eric Blake  <ebb9@byu.net>
3366
3367         * lib/error.h: Fold in some upstream changes from glibc.
3368         * lib/error.c: Likewise.
3369
3370 2006-08-04  Bruno Haible  <bruno@clisp.org>
3371
3372         * gnulib-tool (func_emit_lib_Makefile_am, func_emit_tests_Makefile_am):
3373         Make the mostlyclean-local rule depend on mostlyclean-generic.
3374         Reported by Jim Meyering. Solution suggested by Ralf Wildenhues.
3375
3376 2006-07-31  Bruno Haible  <bruno@clisp.org>
3377
3378         * m4/localcharset.m4 (gl_LOCALCHARSET): Remove tests for <stddef.h>,
3379         <stdlib.h>, <string.h>.
3380
3381 2006-07-30  Bruno Haible  <bruno@clisp.org>
3382
3383         * modules/readlink (License): Change to LGPL.
3384
3385 2006-07-30  Bruno Haible  <bruno@clisp.org>
3386
3387         * modules/javaversion (Makefile.am): Distribute javaversion.java and
3388         javaversion.class. Also install javaversion.class in $(pkgdatadir) and
3389         set PKGDATADIR to point to it.
3390
3391 2006-07-30  Bruno Haible  <bruno@clisp.org>
3392
3393         * modules/csharpexec (configure.ac): Comment out macro invocation.
3394         * modules/javaexec (configure.ac): Likewise.
3395         * modules/javacomp-script (configure.ac): Likewise.
3396
3397         * modules/csharpcomp-script (configure.ac): Use AC_REQUIRE.
3398
3399 2006-07-30  Bruno Haible  <bruno@clisp.org>
3400
3401         * modules/clean-temp (Depends-on): Add linkedhash-list, remove
3402         linked-list.
3403
3404 2006-07-30  Bruno Haible  <bruno@clisp.org>
3405
3406         * m4/wcwidth.m4 (gl_FUNC_WCWIDTH): Assume <string.h> exists.
3407
3408 2006-07-30  Bruno Haible  <bruno@clisp.org>
3409
3410         * gnulib-tool (func_emit_lib_Makefile_am, func_emit_tests_Makefile_am):
3411         Initialize MOSTLYCLEANFILES to core and *.stackdump, so that core dumps
3412         get removed.
3413
3414 2006-07-29  Bruno Haible  <bruno@clisp.org>
3415
3416         Make it possible for gnulib-tool to work with locally modified or
3417         augmented gnulib repositories.
3418         * gnulib-tool (func_usage): Document --local-dir option.
3419         (local_gnulib_dir): New variable.
3420         Handle --local-dir option.
3421         (func_lookup_file): New function.
3422         (func_all_modules, func_verify_module): Look also in $local_gnulib_dir.
3423         (func_get_description, func_get_filelist, func_get_description,
3424         func_get_filelist, func_get_dependencies, func_get_autoconf_snippet,
3425         func_get_automake_snippet, func_get_include_directive,
3426         func_get_license, func_get_maintainer): Use func_lookup_file.
3427         (func_import, func_create_testdir): Use func_lookup_file.
3428
3429 2006-07-29  Bruno Haible  <bruno@clisp.org>
3430
3431         * modules/setenv (Depends-on): Add unistd.
3432
3433 2006-07-29  Bruno Haible  <bruno@clisp.org>
3434
3435         * lib/setenv.c: Undo unintended modification done on 2006-02-27.
3436
3437 2006-07-29  Bruno Haible  <bruno@clisp.org>
3438
3439         * lib/localcharset.c: Assume <stddef.h>, <stdlib.h>, <string.h> exist.
3440
3441 2006-07-29  Bruno Haible  <bruno@clisp.org>
3442
3443         * gnulib-tool (import, update): If there is no Makefile.am, look at
3444         aclocal.m4, instead of bailing out.
3445
3446 2006-07-29  Bruno Haible  <bruno@clisp.org>
3447
3448         * gnulib-tool (func_usage): Revert most of the 2006-07-15 change.
3449         Categorize the options by when they are useful.
3450
3451 2006-07-29  Bruno Haible  <bruno@clisp.org>
3452
3453         * gnulib-tool (func_usage): Document option --no-libtool.
3454         Handle option --no-libtool.
3455         (func_emit_lib_Makefile_am, func_emit_tests_Makefile_am): Update
3456         for changed semantics of $libtool variable.
3457         (func_import): Likewise. If libtool is not used, show this through
3458         an option --no-libtool.
3459         (func_create_testdir): Update.
3460
3461 2006-07-29  Bruno Haible  <bruno@clisp.org>
3462
3463         * gnulib-tool (func_import): Extend error message about missing
3464         --doc-base.
3465
3466 2006-07-29  Bruno Haible  <bruno@clisp.org>
3467
3468         * gnulib-tool (func_import): Don't create the $docbase directory if
3469         there is no file to store there.
3470
3471 2006-07-29  Bruno Haible  <bruno@clisp.org>
3472
3473         * gnulib-tool (autoconf_minversion): If a --dir option is given and
3474         relevant, look for configure.ac there, not in the current directory.
3475         Also use a simple search for AC_PREREQ, not "autoconf --trace".
3476
3477 2006-07-29  Bruno Haible  <bruno@clisp.org>
3478
3479         * gnulib-tool (SORT): New variable.
3480         (func_usage): Undocument --assume-autoconf option.
3481         Remove --assume-autoconf option handling.
3482         (autoconf_minversion): Determine from the contents of configure.ac.
3483         (func_import): Remove autoconf_minversion handling.
3484         Suggested by Eric Blake.
3485
3486 2006-07-29  Bruno Haible  <bruno@clisp.org>
3487
3488         * doc/gnulib-tool.texi (gl_LIBTOOL): Mention --no-libtool option.
3489
3490 2006-07-29  Bruno Haible  <bruno@clisp.org>
3491
3492         * config/srclist.txt (*setenv.[ch]): Remove rules.
3493
3494 2006-07-28  Yoann Vandoorselaere <yoann.v@prelude-ids.com>
3495
3496         * m4/inet_pton.m4, inet_ntop.m4: Check for netinet/in.h too.
3497
3498 2006-07-28  Yoann Vandoorselaere <yoann.v@prelude-ids.com>
3499
3500         * lib/inet_ntop.h, inet_pton.h: Need to include netinet/in.h before
3501         arpa/inet.h.
3502
3503 2006-07-28  Simon Josefsson  <jas@extundo.com>
3504
3505         * modules/inet_ntop (Depends-on): Depend on arpa_inet.
3506         * modules/inet_pton (Depends-on): Likewise.
3507
3508 2006-07-28  Simon Josefsson  <jas@extundo.com>
3509
3510         * m4/netinet_in_h.m4: New file.
3511
3512 2006-07-28  Simon Josefsson  <jas@extundo.com>
3513
3514         * lib/inet_ntop.h, inet_pton.h: No need to guard netinet/in.h
3515         #include's.
3516
3517 2006-07-28  Simon Josefsson  <jas@extundo.com>
3518
3519         * lib/inet_ntop.h, inet_pton.h: No need to guard arpa/inet.h
3520         #include's.
3521
3522 2006-07-28  Paul Eggert  <eggert@cs.ucla.edu>
3523
3524         * lib/modechange.c (mode_compile): Numeric modes now affect setuid and
3525         setgid on directories only if they set these bits.
3526         * lib/modechange.h: Remove obsolete comment about masks.
3527
3528 2006-07-28  Eric Blake  <ebb9@byu.net>
3529
3530         * lib/regex_internal.h (struct re_dfa_t) [!_LIBC]: Avoid invalid C89
3531         macro expansion.
3532
3533 2006-07-28  Bruno Haible <bruno@clisp.org>
3534
3535         * lib/inet_ntop.h, inet_pton.h: Use #if HAVE* instead of #ifdef HAVE*.
3536
3537 2006-07-28  Bruno Haible  <bruno@clisp.org>
3538
3539         * m4/mbchar.m4 (gl_MBCHAR): Also test for iswcntrl.
3540
3541 2006-07-28  Bruno Haible  <bruno@clisp.org>
3542
3543         * lib/mbchar.h (iswalnum, iswalpha, iswblank, iswcntrl, iswdigit,
3544         iswgraph, iswlower, iswprint, iswpunct, iswspace, iswupper, iswxdigit):
3545         Define fallbacks.
3546         Avoids link error on FreeBSD 4.x.
3547         Reported by Yoann Vandoorselaere <yoann.v@prelude-ids.com>.
3548
3549         * lib/wcwidth.h (iswprint): Assume an ASCII compatible wide character
3550         encoding.
3551         * lib/mbswidth.c (iswcntrl): Likewise.
3552
3553 2006-07-27  Bruno Haible  <bruno@clisp.org>
3554
3555         * m4/stdint.m4 (gl_STDINT_H): Define __STDC_CONSTANT_MACROS during the
3556         test.
3557
3558 2006-07-27  Bruno Haible  <bruno@clisp.org>
3559
3560         * lib/stdint_.h (INT*_C, UINT*_C) [C++]: Define these if
3561         __STDC_CONSTANT_MACROS is defined, not if __STDC_LIMIT_MACROS is
3562         defined.
3563
3564 2006-07-26  Eric Blake  <ebb9@byu.net>
3565
3566         * m4/unistd-safer.m4 (gl_UNISTD_SAFER): Check for missing pipe.
3567
3568 2006-07-26  Eric Blake  <ebb9@byu.net>
3569
3570         * lib/mkstemp-safer.c [! HAVE_MKSTEMP]: Add prototype for platforms
3571         like mingw that lack mkstemp.
3572         * lib/pipe-safer.c (pipe_safer) [!HAVE_FUNC_PIPE]: Provide fallback to
3573         avoid compilation warning on mingw.
3574
3575 2006-07-26  Bruno Haible  <bruno@clisp.org>
3576
3577         * m4/stdint.m4 (gl_STDINT_H): Also verify the existence of the macros
3578         INT*_MIN, INT_LEAST*_MAX, INT_LEAST*_MIN, UINT_LEAST*_MAX,
3579         INT_FAST*_MIN, INTPTR_MIN.
3580
3581 2006-07-25  Bruno Haible  <bruno@clisp.org>
3582
3583         * modules/version-etc (Depends-on): Add stdarg.
3584
3585 2006-07-25  Bruno Haible  <bruno@clisp.org>
3586
3587         * m4/stdint.m4 (gl_INTEGER_TYPE_SUFFIX): Avoid 'eval' in front of
3588         complex commands.
3589
3590 2006-07-25  Bruno Haible  <bruno@clisp.org>
3591
3592         * lib/version-etc.c (version_etc_va): Use va_copy, assumed to be
3593         defined in <stdarg.h> or config.h.
3594
3595 2006-07-24  Paul Eggert  <eggert@cs.ucla.edu>
3596
3597         * m4/stdio-safer.m4 (gl_FOPEN_SAFER, gl_TMPFILE_SAFER): New macros.
3598         (gl_STDIO_SAFER): Remove.
3599
3600 2006-07-24  Paul Eggert  <eggert@cs.ucla.edu>
3601
3602         * MODULES.html.sh (File stream based Input/Output):
3603         Add fopen-safer, tmpfile-safer; remove stdio-safer.
3604         * modules/getusershell (Depends-on): Change stdio-safer to fopen-safer.
3605         * modules/fopen-safer, modules/tmpfile-safer: New files.
3606         * modules/stdio-safer: Remove.
3607
3608 2006-07-24  Bruno Haible  <bruno@clisp.org>
3609
3610         * modules/tmpdir: New file.
3611         * MODULES.html.sh (File system functions): Add it.
3612
3613 2006-07-24  Bruno Haible  <bruno@clisp.org>
3614
3615         * modules/javacomp (Depends-on): Add unistd, javaversion, binary-io,
3616         getline, pathname, fwriteerror, clean-temp, xvasprintf, strstr.
3617
3618 2006-07-24  Bruno Haible  <bruno@clisp.org>
3619
3620         * modules/clean-temp: New file.
3621
3622 2006-07-24  Bruno Haible  <bruno@clisp.org>
3623
3624         * m4/tmpdir.m4: New file, from GNU gettext.
3625
3626 2006-07-24  Bruno Haible  <bruno@clisp.org>
3627
3628         * lib/tmpdir.h: New file, from GNU gettext.
3629         * lib/tmpdir.c: New file, from GNU gettext.
3630
3631 2006-07-24  Bruno Haible  <bruno@clisp.org>
3632
3633         * lib/clean-temp.h: New file, from GNU gettext.
3634         * lib/clean-temp.c: New file, from GNU gettext.
3635
3636 2006-07-23  Eric Blake  <ebb9@byu.net>
3637
3638         * modules/stdio-safer (Files): Add tmpfile-safer.c.
3639         (Depends-on): Add binary-io.
3640
3641 2006-07-23  Eric Blake  <ebb9@byu.net>
3642
3643         * m4/stdio-safer.m4 (gl_STDIO_SAFER): Add tmpfile-safer.c.
3644
3645 2006-07-23  Eric Blake  <ebb9@byu.net>
3646
3647         * lib/tmpfile-safer.c: New file.
3648         * lib/stdio-safer.h (fopen_safer): Add prototype.
3649         * lib/stdio--.h (tmpfile): Make safer.
3650
3651 2006-07-23  Bruno Haible  <bruno@clisp.org>
3652
3653         * lib/gl_anylinked_list2.h (ASYNCSAFE): New macro.
3654         (gl_linked_add_first, gl_linked_add_last, gl_linked_add_before,
3655         gl_linked_add_after, gl_linked_add_at, gl_linked_remove_node,
3656         gl_linked_remove_at): Use it.
3657
3658 2006-07-22  Yoann Vandoorselaere <yoann.v@prelude-ids.com>
3659         and Simon Josefsson <jas@extundo.com>
3660
3661         * lib/getaddrinfo.h (AI_PASSIVE): Make sure it is defined.
3662
3663         * lib/getaddrinfo.c (getaddrinfo): Support AI_PASSIVE.
3664
3665 2006-07-22  Paul Eggert  <eggert@cs.ucla.edu>
3666
3667         * modules/close-stream: New file.
3668         * modules/closeout (Description): Make it clear that it exits
3669         with a diagnostic on error.
3670         (Depends-on): Add close-stream.  Remove fpending, stdbool.
3671         * MODULES.html.sh (File stream based Input/Output): Add close-stream.
3672
3673 2006-07-22  Paul Eggert  <eggert@cs.ucla.edu>
3674
3675         * m4/close-stream.m4: New file.
3676
3677 2006-07-22  Paul Eggert  <eggert@cs.ucla.edu>
3678
3679         * lib/close-stream.c, close-stream.h: New files.
3680
3681 2006-07-22  Bruno Haible  <bruno@clisp.org>
3682
3683         Merge from GNU gettext 0.15.
3684
3685         2006-05-01  Bruno Haible  <bruno@clisp.org>
3686
3687                 * build-aux/javacomp.sh.in: Update for changed javacomp.m4.
3688
3689         2006-07-22  Bruno Haible  <bruno@clisp.org>
3690
3691                 * modules/javaversion: New file.
3692                 * MODULES.html.sh (Java): Add javaversion.
3693
3694         2006-03-12  Bruno Haible  <bruno@clisp.org>
3695
3696                 * build-aux/javaexec.sh.in: Update for changed javaexec.m4.
3697
3698         2005-12-04  Bruno Haible  <bruno@clisp.org>
3699
3700                 * build-aux/csharpexec.sh.in: Add support for 'clix' launcher
3701                 (untested).
3702
3703         2006-06-21  Bruno Haible  <bruno@clisp.org>
3704
3705                 Avoid warnings from recent versions of mcs.
3706                 * build-aux/csharpcomp.sh.in (options_mcs): Don't use options
3707                 -o, -L, -r any more. Use options documented since mcs-1.0
3708                 instead. Similarly for -g.
3709
3710         2005-12-04  Bruno Haible  <bruno@clisp.org>
3711
3712                 * build-aux/csharpcomp.sh.in: Suffix for resources is
3713                 .resources, not .resource.
3714
3715         2005-07-09  Bruno Haible  <bruno@clisp.org>
3716
3717                 * build-aux/csharpcomp.sh.in (options_csc): For -l option,
3718                 add a .dll suffix.
3719                 Reported by Mark Junker <mjscod@gmx.de>.
3720
3721         2006-07-22  Bruno Haible  <bruno@clisp.org>
3722
3723                 * modules/gettext: Upgrade to gettext-0.15.
3724                 (Files): Remove m4/isc-posix.m4. Add m4/lock.m4,
3725                 m4/visibility.m4.
3726                 Replace m4/inttypes.m4 with m4/inttypes-h.m4.
3727
3728 2006-07-22  Bruno Haible  <bruno@clisp.org>
3729
3730         Merge from GNU gettext 0.15.
3731
3732         2006-03-25  Bruno Haible  <bruno@clisp.org>
3733
3734                 * lib-link.m4 (AC_LIB_LINKFLAGS_FROM_LIBS): New macro.
3735
3736         2006-07-21  Bruno Haible  <bruno@clisp.org>
3737
3738                 * javacomp.m4 (gt_JAVACOMP): Convert target_version "null" to
3739                 "1.1".
3740
3741         2006-05-09  Bruno Haible  <bruno@clisp.org>
3742
3743                 * javacomp.m4 (gt_JAVACOMP): On Cygwin, set
3744                 CLASSPATH_SEPARATOR to a semicolon. Use CLASSPATH_SEPARATOR
3745                 for the conftestver execution.
3746
3747         2006-05-01  Bruno Haible  <bruno@clisp.org>
3748
3749                 * javacomp.m4 (gt_JAVACOMP): Accept a source-version and an
3750                 optional target-version argument. Verify that the compiler
3751                 groks source of the specified source-version, or add -source
3752                 option as necessary. Verify that the compiler produces
3753                 bytecode in the specified target-version, or add -target and
3754                 -source options as necessary. Make the result of the test
3755                 available as variable CONF_JAVAC. Also log error output in
3756                 config.log.
3757
3758         2006-03-11  Bruno Haible  <bruno@clisp.org>
3759
3760                 * javacomp.m4 (gt_JAVACOMP): Treat gcj-4.x like gcj-3.x.
3761
3762         2006-05-09  Bruno Haible  <bruno@clisp.org>
3763
3764                 * javaexec.m4 (gt_JAVAEXEC): On Cygwin, set
3765                 CLASSPATH_SEPARATOR to a semicolon.
3766
3767         2006-03-12  Bruno Haible  <bruno@clisp.org>
3768
3769                 * javaexec.m4 (gt_JAVAEXEC): Make the result of the test
3770                 available as variable CONF_JAVA, for subsequent autoconf
3771                 tests. Also log error output in config.log.
3772
3773         2006-07-19  Bruno Haible  <bruno@clisp.org>
3774
3775                 * getline.m4 (AM_FUNC_GETLINE): When cross-compiling, assume
3776                 that getline works on glibc2 systems. Needed to avoid trouble
3777                 in relocatable.c.
3778                 Reported by Nils Magnus Larsgard <nmlarsgaard@atmel.no>.
3779
3780         2005-12-04  Bruno Haible  <bruno@clisp.org>
3781
3782                 * csharpexec.m4 (gt_CSHARPEXEC): Add support for 'clix'
3783                 launcher (untested).
3784
3785         2005-12-04  Bruno Haible  <bruno@clisp.org>
3786
3787                 * csharpcomp.m4 (gt_CSHARPCOMP): Also set CSHARPCOMPFLAGS.
3788
3789         2006-07-22  Bruno Haible  <bruno@clisp.org>
3790
3791                 * gettext.m4: Update from GNU gettext-0.15.
3792                 * nls.m4: Likewise.
3793                 * po.m4: Likewise.
3794                 * inttypes-pri.m4: Likewise.
3795                 * inttypes-h.m4: Renamed from inttypes.m4.
3796                 (gl_HEADER_INTTYPES_H): Renamed from gt_HEADER_INTTYPES_H.
3797
3798 2006-07-22  Bruno Haible  <bruno@clisp.org>
3799
3800         Merge from GNU gettext 0.15.
3801
3802         2005-07-05  Bruno Haible  <bruno@clisp.org>
3803
3804                 * printf-args.c (printf_fetchargs): Work around broken
3805                 definition of wint_t on mingw.
3806
3807         2005-02-12  Bruno Haible  <bruno@clisp.org>
3808
3809                 * xallocsa.h: Add extern "C" for C++.
3810
3811         2006-05-17  Bruno Haible  <bruno@clisp.org>
3812
3813                 Cygwin portability.
3814                 * progreloc.c (WIN32_NATIVE): Renamed from WIN32.
3815
3816         2006-04-30  Bruno Haible  <bruno@clisp.org>
3817
3818                 * progreloc.c: Include <mach-o/dyld.h> if available.
3819                 (find_executable): Use _NSGetExecutablePath when possible.
3820
3821         2006-05-06  Charles Wilson  <cygwin@cwilson.fastmail.fm>
3822
3823                 * progreloc.c (maybe_executable) [CYGWIN]: Use the access()
3824                 function.
3825
3826         2005-12-29  Bruno Haible  <bruno@clisp.org>
3827
3828                 * progreloc.c (set_program_name_and_installdir): Fix
3829                 compilation error.
3830
3831         2005-12-04  Bruno Haible  <bruno@clisp.org>
3832
3833                 Cygwin portability.
3834                 * progreloc.c: Include <windows.h> also on Cygwin.
3835                 (find_executable): Add support for Cygwin.
3836                 (set_program_name_and_installdir): Handle also platforms with
3837                 nonempty EXEEXT.
3838
3839         2006-07-11  Bruno Haible  <bruno@clisp.org>
3840
3841                 * javacomp.c: Fix a comment.
3842                 Reported by Jim Meyering.
3843
3844         2006-04-30  Bruno Haible  <bruno@clisp.org>
3845
3846                 * javacomp.h (compile_java_class): Add source_version,
3847                 target_version arguments.
3848                 * javacomp.c: Rewritten to choose only a compiler that
3849                 respects the specified source_version and target_version.
3850
3851         2006-06-27  Bruno Haible  <bruno@clisp.org>
3852
3853                 Assume correct S_ISDIR macro.
3854                 * mkdtemp.c: Remove test of STAT_MACROS_BROKEN.
3855
3856         2006-07-22  Bruno Haible  <bruno@clisp.org>
3857
3858                 * javaversion.h: New file, from GNU gettext.
3859                 * javaversion.c: New file, from GNU gettext.
3860                 * javaversion.java: New file, from GNU gettext.
3861                 * javaversion.class: New file, from GNU gettext.
3862
3863         2006-05-17  Bruno Haible  <bruno@clisp.org>
3864
3865                 Cygwin portability.
3866                 * javaexec.c (execute_java_class): Test for jview program
3867                 also on Cygwin.
3868
3869         2006-04-09  Bruno Haible  <bruno@clisp.org>
3870
3871                 * fatal-signal.c: Don't include string.h.
3872                 (at_fatal_signal): Use a copying loop instead of memcpy.
3873
3874         2005-12-04  Bruno Haible  <bruno@clisp.org>
3875
3876                 * csharpexec.c: Add support for 'clix' launcher (untested).
3877                 (execute_csharp_using_sscli): New function.
3878                 (execute_csharp_program): Call it.
3879
3880         2006-06-21  Bruno Haible  <bruno@clisp.org>
3881
3882                 Avoid warnings from recent versions of mcs.
3883                 * csharpcomp.c (compile_csharp_using_mono): Don't use options
3884                 -o, -L, -r any more. Use options documented since mcs-1.0
3885                 instead. Similarly for -g.
3886
3887         2005-07-09  Bruno Haible  <bruno@clisp.org>
3888
3889                 * csharpcomp.c (compile_csharp_using_sscli): For -l option,
3890                 add a .dll suffix.
3891                 Reported by Mark Junker <mjscod@gmx.de>.
3892
3893         2006-06-17  Bruno Haible  <bruno@clisp.org>
3894
3895                 * config.charset: Update for NetBSD 3.0.
3896
3897         2006-05-17  Bruno Haible  <bruno@clisp.org>
3898
3899                 Cygwin portability.
3900                 * localcharset.c (WIN32_NATIVE): Renamed from WIN32.
3901
3902         2006-05-16  Bruno Haible  <bruno@clisp.org>
3903
3904                 * localcharset.c [CYGWIN]: Include <windows.h>.
3905                 (get_charset_aliases): For Cygwin, return the same CPxxx
3906                 aliases list as under WIN32.
3907                 (locale_charset) [CYGWIN]: Try to retrieve the encoding from
3908                 the environment variables. Fall back to GetACP().
3909
3910         2006-04-05  Bruno Haible  <bruno@clisp.org>
3911
3912                 * config.charset: Update Juan Manuel Guerrero's address.
3913
3914         2005-02-12  Bruno Haible  <bruno@clisp.org>
3915
3916                 * allocsa.h: Add extern "C" for C++.
3917
3918         2005-02-10  Bruno Haible  <bruno@clisp.org>
3919
3920                 * allocsa.h (sa_alignof): Define differently with AIX xlc, to
3921                 avoid a bug of this compiler on AIX 3.2.5 dealing with enums.
3922
3923         2006-07-22  Bruno Haible  <bruno@clisp.org>
3924
3925                 * gettext.h: Update to GNU gettext-0.15.
3926
3927 2006-07-22  Bruno Haible  <bruno@clisp.org>
3928
3929         * config/srclist.txt: Resync printf-args.c, vasnprintf.c,
3930         localcharset.c, mkdtemp.c, config.rpath, lib-ld.m4, lib-link.m4,
3931         lib-prefix.m4, longdouble.m4, ssize_t.m4.
3932
3933 2006-07-21  Eric Blake  <ebb9@byu.net>
3934
3935         * modules/stdlib-safer: New file.
3936         * MODULES.html.sh (File stream based Input/Output): Add
3937         stdlib-safer.
3938
3939 2006-07-21  Eric Blake  <ebb9@byu.net>
3940
3941         * lib/stdlib-safer.h: New file from coreutils, required by
3942         stdlib--.h.
3943
3944 2006-07-20  Paul Eggert  <eggert@cs.ucla.edu>
3945
3946         * gnulib-tool (func_usage): Document --assume-autoconf='latest-stable'.
3947
3948 2006-07-20  Bruno Haible  <bruno@clisp.org>
3949
3950         * gnulib-tool: Recognize new option --assume-autoconf.
3951         (autoconf_minversion): New variable.
3952         (func_get_filelist): Use it to decide whether to add onceonly_2_57.m4.
3953
3954 2006-07-20  Bruno Haible  <bruno@clisp.org>
3955
3956         * MODULES.html.sh (func_all_modules): Add a missing func_begin_table.
3957
3958 2006-07-19  Derek R. Price  <derek@ximbiot.com>
3959
3960         * lib/getaddrinfo.h: Don't define unimplemented AI_* flags.
3961         Reindent and repaginate.
3962
3963 2006-07-19  Derek Price  <derek@ximbiot.com>
3964
3965         * doc/gnulib.texi (Libtool and Windows):  Eliminate passive voice.
3966         Correct grammar.
3967
3968 2006-07-17  Bruno Haible  <bruno@clisp.org>
3969
3970         * modules/list: New file.
3971         * modules/array-list: New file.
3972         * modules/carray-list, modules/carray-list-tests: New files.
3973         * modules/linked-list, modules/linked-list-tests: New files.
3974         * modules/avltree-list, modules/avltree-list-tests: New files.
3975         * modules/rbtree-list, modules/rbtree-list-tests: New files.
3976         * modules/linkedhash-list, modules/linkedhash-list-tests: New files.
3977         * modules/avltreehash-list, modules/avltreehash-list-tests: New files.
3978         * modules/rbtreehash-list, modules/rbtreehash-list-tests: New files.
3979         * modules/oset: New file.
3980         * modules/array-oset: New file.
3981         * modules/avltree-oset, modules/avltree-oset-tests: New files.
3982         * modules/rbtree-oset, rbtree-oset-tests: New files.
3983         * tests/test-carray_list.c: New file.
3984         * tests/test-linked_list.c: New file.
3985         * tests/test-avltree_list.c: New file.
3986         * tests/test-rbtree_list.c: New file.
3987         * tests/test-linkedhash_list.c: New file.
3988         * tests/test-avltreehash_list.c: New file.
3989         * tests/test-rbtreehash_list.c: New file.
3990         * tests/test-avltree_oset.c: New file.
3991         * tests/test-rbtree_oset.c: New file.
3992         * MODULES.html.sh (Container data structures): New section.
3993
3994 2006-07-17  Bruno Haible  <bruno@clisp.org>
3995
3996         * m4/gl_list.m4: New file.
3997
3998 2006-07-17  Bruno Haible  <bruno@clisp.org>
3999
4000         * lib/gl_list.h: New file.
4001         * lib/gl_list.c: New file.
4002         * lib/gl_array_list.h: New file.
4003         * lib/gl_array_list.c: New file.
4004         * lib/gl_carray_list.h: New file.
4005         * lib/gl_carray_list.c: New file.
4006         * lib/gl_linked_list.h: New file.
4007         * lib/gl_linked_list.c: New file.
4008         * lib/gl_anylinked_list1.h: New file.
4009         * lib/gl_anylinked_list2.h: New file.
4010         * lib/gl_avltree_list.h: New file.
4011         * lib/gl_avltree_list.c: New file.
4012         * lib/gl_anyavltree_list1.h: New file.
4013         * lib/gl_anyavltree_list2.h: New file.
4014         * lib/gl_rbtree_list.h: New file.
4015         * lib/gl_rbtree_list.c: New file.
4016         * lib/gl_anyrbtree_list1.h: New file.
4017         * lib/gl_anyrbtree_list2.h: New file.
4018         * lib/gl_anytree_list1.h: New file.
4019         * lib/gl_anytree_list2.h: New file.
4020         * lib/gl_linkedhash_list.h: New file.
4021         * lib/gl_linkedhash_list.c: New file.
4022         * lib/gl_anyhash_list1.h: New file.
4023         * lib/gl_anyhash_list2.h: New file.
4024         * lib/gl_avltreehash_list.h: New file.
4025         * lib/gl_avltreehash_list.c: New file.
4026         * lib/gl_rbtreehash_list.h: New file.
4027         * lib/gl_rbtreehash_list.c: New file.
4028         * lib/gl_anytreehash_list1.h: New file.
4029         * lib/gl_anytreehash_list2.h: New file.
4030
4031         * lib/gl_oset.h: New file.
4032         * lib/gl_oset.c: New file.
4033         * lib/gl_array_oset.h: New file.
4034         * lib/gl_array_oset.c: New file.
4035         * lib/gl_avltree_oset.h: New file.
4036         * lib/gl_avltree_oset.c: New file.
4037         * lib/gl_rbtree_oset.h: New file.
4038         * lib/gl_rbtree_oset.c: New file.
4039         * lib/gl_anytree_oset.h: New file.
4040
4041 2006-07-16  Paul Eggert  <eggert@cs.ucla.edu>
4042
4043         * m4/mkancesdirs.m4: New file.
4044         * m4/mkdir-p.m4 (gl_MKDIR_PARENTS): Mention dirchownmod.c,
4045         dirchownmod.h.  Don't require AC_FUNC_ALLOCA, gl_AFS, gl_CHDIR_SAFER;
4046         no longer needed.  Require gl_FUNC_LCHOWN, since dirchownmod.c needs
4047         it.
4048
4049 2006-07-16  Paul Eggert  <eggert@cs.ucla.edu>
4050
4051         * lib/dirchownmod.c, dirchownmod.h, mkancesdirs.c, mkancesdirs.h:
4052         New files.
4053         * lib/mkdir-p.c: Don't include alloca.h, stdio.h, sys/types.h,
4054         unistd.h, string.h, chdir-safer.h, dirname.h, lchmod.h, lchown.h,
4055         save-cwd.h.  Instead, include dirchownmod.h and mkancesdirs.h.
4056         (make_dir_parents): New args MAKE_ANCESTOR, OPTIONS, ANNOUNCE,
4057         MODE_BITS.  Remove options VERBOSE_FMT_STRING, CWD_ERRNO.  All
4058         callers changed.  Revamp internals significantly, by not
4059         attempting to create directories that are temporarily more
4060         permissive than the final results.  Do not attempt to use
4061         save_cwd/restore_cwd; it isn't worth it for mkdir and install.
4062         This removes some race conditions, fixes some bugs, and simplifies
4063         things.  Use new dirchownmod function to do owner and mode changes.
4064         * lib/mkdir-p.h: Likewise.
4065         * lib/modechange.c (octal_to_mode): New function.
4066         (struct mode_change): New member mentioned.
4067         (make_node_op_equals): New arg mentioned.  All callers changed.
4068         (mode_compile): Keep track of which mode bits the user has explicitly
4069         mentioned.
4070         (mode_adjust): New arg DIR, so that we implement the X op correctly.
4071         New arg PMODE_BITS, to keep track of which mode bits the user
4072         mentioned; it treats S_ISUID and S_ISGID speciall.
4073         All callers changed.
4074         * lib/modechange.h: Likewise.
4075
4076 2006-07-16  Paul Eggert  <eggert@cs.ucla.edu>
4077
4078         * MODULES.html.sh: Add mkancestors.
4079         * modules/mkancesdirs: New module.
4080         * modules/mkdir-p (Files): Remove lib/chdir-safer.c, lib/chdir-safer.h,
4081         lib/same-inode.h, m4/afs.m4, m4/chdir-safer.m4.
4082         The chdir-safer and afs files are now orphans; I'll remove them
4083         unless someone speaks up.
4084         Add lib/dirchownmod.c, lib/dirchownmod.h.
4085         (Depends-on): Remove alloca, chown, save-cwd, dirname.
4086         Add lchown, mkancesdirs.
4087         (Maintainer): Add self.
4088
4089 2006-07-15  Karl Berry  <karl@gnu.org>
4090
4091         * gnulib-tool: help message wording/arrangement.
4092
4093 2006-07-14  Simon Josefsson  <jas@extundo.com>
4094
4095         * doc/gnulib.texi (Libtool and Windows): New section.
4096
4097 2006-07-12  Simon Josefsson  <jas@extundo.com>
4098
4099         * modules/gendocs (License): Fix license, approved by Karl.
4100
4101 2006-07-12  Eric Blake  <ebb9@byu.net>
4102
4103         * MODULES.html.sh: Add gendocs.
4104
4105 2006-07-11  Eric Blake  <ebb9@byu.net>
4106
4107         * modules/fdl: New module, to install doc/fdl.texi.
4108         * MODULES.html.sh: Add new section for documentation modules.
4109         * gnulib-tool: Avoid space-tab.
4110         (--doc-base): New option, to manage files from doc.
4111
4112 2006-07-11  Eric Blake  <ebb9@byu.net>
4113
4114         * m4/absolute-header.m4: Fix comments to match recent change.
4115
4116 2006-07-11  Eric Blake  <ebb9@byu.net>
4117
4118         * gnulib-tool: List --doc-base before --tests-base.
4119
4120 2006-07-11  Derek R. Price  <derek@ximbiot.com>
4121
4122         * lib/glob.c: s/NAMLEN/_D_EXACT_NAMLEN/.
4123
4124 2006-07-11  Bruno Haible  <bruno@clisp.org>
4125
4126         * README: Mention where to put documentation.
4127
4128 2006-07-10  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
4129
4130         * doc/functions.texi, gnulib-tool.texi, gnulib.texi: Fix some typos.
4131
4132 2006-07-10  Paul Eggert  <eggert@cs.ucla.edu>
4133
4134         * m4/sys_stat_h.m4 (gl_HEADER_SYS_STAT_H): Like today's change
4135         to stdint.m4.
4136
4137 2006-07-10  Paul Eggert  <eggert@cs.ucla.edu>
4138
4139         * m4/stdint.m4 (gl_STDINT_H): Like yesterday's change to
4140         absolute-header.m4.  Also, set ABSOLUTE_STDINT_H to a string
4141         "no/such/file/stdint.h" when there is no such file, so that
4142         the resulting C code can be parsed by dodgy compilers.
4143         Problems reported by Bob Proulx.
4144
4145 2006-07-10  Derek R. Price  <derek@ximbiot.com>
4146
4147         * lib/backupfile.c, dirfd.h, fts.c, getcwd.c, glob.c, glob_.h:
4148         Ignore the obsolescent !HAVE_DIRENT_H case.  Consolidate NAMLEN
4149         macros into the GNU _D_EXACT_NAMLEN.
4150         * lib/savedir.c:  Likewise.
4151         (savedirstream): Use _D_EXACT_NAMLEN in preference to strlen.
4152
4153 2006-07-10  Derek R. Price  <derek@ximbiot.com>
4154         and Paul Eggert  <eggert@cs.ucla.edu>
4155
4156         * m4/backupfile.m4, d-ino.m4, d-type.m4, dirfd.m4, fts.m4, getcwd.m4:
4157         * m4/savedir.m4:
4158         Ignore the obsolescent !HAVE_DIRENT_H case.  Consolidate NAMLEN
4159         macros into the GNU _D_EXACT_NAMLEN.
4160
4161 2006-07-09  Paul Eggert  <eggert@cs.ucla.edu>
4162
4163         * m4/absolute-header.m4 (gl_ABSOLUTE_HEADER): Use "" rather than <>
4164         around the absolute name, to work around a problem with the HP-UX
4165         11.23 native C compiler, reported by Bob Proulx.
4166
4167 2006-07-09  Paul Eggert  <eggert@cs.ucla.edu>
4168
4169         * doc/maintain.texi, make-stds.texi: Sync from
4170         <http://savannah.gnu.org/projects/gnustandards>.
4171
4172 2006-07-09  Paul Eggert  <eggert@cs.ucla.edu>
4173
4174         * build-aux/depcomp, build-aux/install-sh: Sync from Automake.
4175
4176 2006-07-09  Jim Meyering  <jim@meyering.net>
4177
4178         * m4/glob.m4: Remove a doubled word in a comment.
4179
4180 2006-07-09  Jim Meyering  <jim@meyering.net>
4181
4182         * lib/argp-pv.c: Remove a doubled word in a comment.
4183         * lib/check-version.c (check_version): Likewise.
4184         * lib/javacomp.c (compile_java_class): Likewise.
4185
4186 2006-07-08  Paul Eggert  <eggert@cs.ucla.edu>
4187
4188         * gnulib-tool (func_get_filelist): Don't echo m4/onceonly_2_57.m4,
4189         for the benefit of people using Autoconf 2.60.  If you want to
4190         support older Autoconf versions you can copy m4/onceonly_2_57.m4
4191         (or m4/onceonly.m4, if pre-2.57) manually.
4192
4193 2006-07-08  Jim Meyering  <jim@meyering.net>
4194
4195         * m4/link-follow.m4: Remove one of two adjacent "whether"s in a
4196         comment.
4197         * m4/getopt.m4: Remove one of two adjacent "your"s in a comment.
4198         * m4/regex.m4 (gl_REGEX): Remove one of two adjacent "the"s in a
4199         comment.
4200
4201 2006-07-08  Jim Meyering  <jim@meyering.net>
4202
4203         * lib/getndelim2.h (getndelim2): Remove doubled "after" in comment.
4204
4205 2006-07-07  Simon Josefsson  <jas@extundo.com>
4206
4207         * tests/test-crc.c: Change expected crc value, the test vector
4208         were probably computed using the old broken crc.c?
4209
4210 2006-07-06  Simon Josefsson  <jas@extundo.com>
4211
4212         * modules/sys_socket (Files): Add m4/sockpfaf.m4 (this module is
4213         now the canonical place for the M4 file).
4214
4215         * modules/getaddrinfo (Files): Remove m4/sockpfaf.m4, we get it
4216         from the sys_socket dependency now.
4217
4218         * modules/inet_pton (Files): Ditto.
4219
4220         * modules/inet_ntop (Files): Ditto.
4221
4222 2006-07-06  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>  (tiny change)
4223
4224         * modules/getusershell (configure.ac): Use gl_FUNC_GETUSERSHELL,
4225         not gl_PREREQ_GETUSERSHELL.
4226
4227 2006-07-06  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
4228
4229         * m4/_inttypes_h.m4 (gl_INTTYPES_H): Use AC_CHECK_DECLS_ONCE
4230         with only one argument, for Autoconf 2.60.
4231         * m4/fileblocks.m4 (gl_PREREQ_FILEBLOCKS): AC_CHECK_DECLS_ONCE may
4232         expand to nothing, so add a shell command to avoid syntax error.
4233         * m4/getpass.m4 (gl_PREREQ_GETPASS): Likewise.
4234
4235 2006-07-06  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
4236
4237         * lib/strtod.c (strtod): cast the argument of tolower to unsigned char.
4238
4239 2006-07-06  Paul Eggert  <eggert@cs.ucla.edu>
4240
4241         * m4/fnmatch.m4 (_AC_LIBOBJ_FNMATCH): Don't check for getenv decl;
4242         no longer needed.  Check for isblank decl.
4243         * m4/mkstemp.m4 (gl_PREREQ_TEMPNAME): Don't check for getenv decl.
4244         * m4/regex.m4 (gl_PREREQ_REGEX): Dheck for isblank decl instead
4245         of existence.
4246
4247 2006-07-06  Paul Eggert  <eggert@cs.ucla.edu>
4248
4249         * lib/getloadavg.c: Use __VMS, not VMS.
4250         * lib/getopt.c: Likewise.
4251         * lib/getpagesize.h: Likewise.
4252         * lib/glob.c: Remove most VMS cruft; it hasn't been tested for a while
4253         and probably does not work.
4254
4255 2006-07-06  Paul Eggert  <eggert@cs.ucla.edu>
4256
4257         * lib/.cppi-disable: Add wcwidth.
4258         * lib/fnmatch.c (ISBLANK): Remove.  All uses changed to isblank.
4259         (isblank) [! (defined isblank || HAVE_DECL_ISBLANK)]: New macro.
4260         (ISGRAPH): Remove.  All uses changed to isgraph.
4261         (FOLD) [!defined _LIBC]: Remove special case.
4262         * lib/getdate.y (lookup_word): Remove no-longer-needed call to islower.
4263         * lib/regex_internal.h (isblank): Depend on HAVE_DECL_ISBLANK, not
4264         HAVE_ISBLANK.
4265         * lib/strftime.c (TOLOWER, TOUPPER) [!defined _LIBC]: Remove special
4266         case.
4267
4268 2006-07-06  Jim Hyslop  <jhyslop@dreampossible.ca>  (tiny change)
4269
4270         * lib/getaddrinfo.c: Changes to compile under MSVC6: changed
4271         '#if WIN32_NATIVE' to '#ifdef' & moved WSAAPI macro inside
4272         brackets.  Other minor changes to suppress some compiler
4273         warnings.
4274
4275 2006-07-06  Derek R. Price  <derek@ximbiot.com>
4276         and Paul Eggert  <eggert@cs.ucla.edu>
4277
4278         * m4/backupfile.m4 (gl_BACKUPFILE): Check for dirent.h, instead
4279         of invoking obsolescent AC_HEADER_DIRENT macro.
4280         * m4/d-ino.m4 (gl_CHECK_TYPE_STRUCT_DIRENT_D_INO): Likewise.
4281         * m4/d-type.m4 (gl_CHECK_TYPE_STRUCT_DIRENT_D_TYPE): Likewise.
4282         * m4/dirfd.m4 (gl_FUNC_DIRFD): Likewise.
4283         * m4/fts.m4 (gl_FUNC_FTS_CORE): Likewise.
4284         * m4/getcwd.m4 (gl_PREREQ_GETCWD): Likewise.
4285         * m4/glob.m4 (gl_PREREQ_GLOB): Likewise.
4286         * m4/savedir.m4 (gl_SAVEDIR): Likewise.
4287         * m4/readdir.m4: Remove; no longer needed.
4288
4289 2006-07-06  Derek R. Price  <derek@ximbiot.com>
4290         and Paul Eggert  <eggert@cs.ucla.edu>
4291
4292         * lib/backupfile.c [HAVE_DIRENT_H && ! HAVE_NDIR_H]:
4293         Don't worry about this obsolete case any more.
4294         (HAVE_DIR): Remove.  All uses removed; we now assume you can read
4295         directories.
4296         * lib/dirfd.h [HAVE_DIRENT_H && ! HAVE_NDIR_H]: Don't
4297         worry about this obsolete case any more.
4298         * lib/fts.c: Likewise.
4299         * lib/getcwd.c: Likewise.
4300         * lib/glob.h: Likewise.
4301         * lib/savedir.c: Likewise.
4302
4303 2006-07-05  Paul Eggert  <eggert@cs.ucla.edu>
4304
4305         * m4/xstrtol.m4 (gl_PREREQ_XSTRTOL): Use AC_CHECK_DECLS_ONCE
4306         rather than AC_CHECK_DECLS for strtoimax and strtoumax.
4307         * m4/getusershell.m4 (gl_PREREQ_GETUSERSHELL): Remove; no longer
4308         needed.
4309         All uses removed.
4310         * m4/strtol.m4 (gl_PREREQ_STRTOL): Likewise.
4311         * m4/strtoul.m4 (gl_PREREQ_STRTOUL): Likewise.
4312         * m4/exclude.m4 (gl_EXCLUDE): Don't check for isascii; no longer
4313         needed.
4314         * m4/getdate.m4 (gl_GETDATE): Likewise.
4315         * m4/getusershell.m4 (gl_PREREQ_GETUSERSHELL): Likewise.
4316         * m4/memcasecmp.m4 (gl_MEMCASECMP): Likewise.
4317         * m4/strtod.m4 (gl_FUNC_STRTOD): Likewise.
4318         * m4/strtol.m4 (gl_PREREQ_STRTOL): Likewise.
4319         * m4/strtoul.m4 (gl_PREREQ_STRTOUL): Likewise.
4320         * m4/xstrtol.m4 (gl_PREREQ_XSTRTOL): Likewise.
4321         * m4/exclude.m4 (gl_EXCLUDE): Don't require AC_C_INLINE; no longer
4322         needed.
4323
4324 2006-07-05  Paul Eggert  <eggert@cs.ucla.edu>
4325
4326         * lib/memcasecmp.c: Include <limits.h>.
4327         (memcasecmp): Don't assume UCHAR_MAX <= INT_MAX.
4328         * lib/strtod.c (strtod): Don't assume isspace works on negative chars.
4329         Don't assume isdigit succeeds only on '0' through '9'.
4330
4331 2006-07-05  Eric Blake  <ebb9@byu.net>
4332
4333         * modules/getaddrinfo (Depends-on): Add snprintf.
4334
4335 2006-07-05  Eric Blake  <ebb9@byu.net>
4336
4337         * m4/sockpfaf.m4 (gl_SOCKET_FAMILIES): Use gl_HEADER_SYS_SOCKET
4338         to avoid 'header present but could not be compiled' on cygwin.
4339
4340 2006-07-05  Eric Blake  <ebb9@byu.net>
4341
4342         * lib/getaddrinfo.h (NI_NUMERICHOST, NI_NUMERICSERV): Define if
4343         missing from netdb.h.
4344         * lib/getaddrinfo.c (includes): Include inet_ntop and snprintf.
4345
4346 2006-07-05  Derek R. Price  <derek@ximbiot.com>
4347
4348         * m4/calloc.m4 (_AC_FUNC_CALLOC_IF): Don't require AC_HEADER_STDC;
4349         no longer needed.
4350         * m4/exclude.m4 (gl_EXCLUDE): Likewise.
4351         * m4/getdate.m4 (gl_GETDATE): Likewise.
4352         * m4/getusershell.m4 (gl_PREREQ_GETUSERSHELL): Likewise.
4353         * m4/memcasecmp.m4 (gl_MEMCASECMP): Likewise.
4354         * m4/strtod.m4 (gl_FUNC_STRTOD): Likewise.
4355         * m4/strtol.m4 (gl_PREREQ_STRTOL): Likewise.
4356         * m4/xstrtol.m4 (gl_PREREQ_XSTRTOL): Likewise.
4357
4358 2006-07-05  Derek R. Price  <derek@ximbiot.com>
4359
4360         * lib/exclude.c (IN_CTYPE_DOMAIN, is_space): Remove; no longer needed.
4361         All uses of is_space replaced by isspace.
4362         * lib/exit.h: Don't talk about STDC_HEADERS.
4363         * lib/fnmatch.c (ISASCII): Remove; no longer needed.  All uses removed.
4364         (ISPRINT, ISDIGIT, ISALNUM, ISALPHA, ISCNTRL, ISLOWER, ISPUNCT):
4365         (ISSPACE, ISUPPER, ISXDIGIT): Remove; no longer needed.  All uses
4366         replaced by isprint etc.
4367         * lib/getdate.y (IN_CTYPE_DOMAIN, ISSPACE, ISALPHA, ISLOWER): Likewise.
4368         * lib/getusershell.c (IN_CTYPE_DOMAIN, ISSPACE): Likewise.
4369         * lib/memcasecmp.c (IN_CTYPE_DOMAIN, ISLOWER, TOUPPER): Likewise.
4370         * lib/strtod.c (IN_CTYPE_DOMAIN, ISSPACE, ISDIGIT, TOLOWER): Likewise.
4371         * lib/strtol.c (IN_CTYPE_DOMAIN): Likewise.
4372         * lib/xstrtol.c (IN_CTYPE_DOMAIN, ISSPACE): Likewise.
4373
4374 2006-07-05  Bruno Haible  <bruno@clisp.org>
4375
4376         * m4/strndup.m4 (gl_FUNC_STRNDUP): When cross-compiling, check whether
4377         the function exists, before testing against AIX.
4378         Reported by Martin Lambers <marlam@marlam.de>.
4379
4380 2006-07-04  Paul Eggert  <eggert@cs.ucla.edu>
4381
4382         * modules/cycle-check (lib_SOURCES): Add same-inode.h.
4383         From Mark D. Baushke.
4384
4385 2006-07-04  Paul Eggert  <eggert@cs.ucla.edu>
4386
4387         * m4/absolute-header.m4 (gl_ABSOLUTE_HEADER): Prepend three slashes
4388         to the absolute name, not just one, to bypass Sun C 5.8's
4389         "warning: #include of /usr/include/... may be non-portable".
4390
4391 2006-07-04  Eric Blake  <ebb9@byu.net>
4392
4393         * modules/dirname-tests: New test module.
4394         * tests/test-dirname.c: New file, replacing dirname.c
4395         TEST_DIRNAME section that was recently deleted.
4396
4397 2006-07-04  Bruno Haible  <bruno@clisp.org>
4398
4399         Assume ANSI C header files and <ctype.h> functions.
4400         * lib/mbswidth.c (IN_CTYPE_DOMAIN, ISPRINT, ISCNTRL): Remove macros.
4401         (mbsnwidth): Use isprint, iscntrl instead.
4402
4403 2006-07-03  Paul Eggert  <eggert@cs.ucla.edu>
4404
4405         Merge from coreutils.
4406         * MODULES.html.sh: Add xstrtold.
4407         * modules/xstrtold: New file.
4408         * modules/cycle-check (Files): Add lib/same-inode.h.
4409         * modules/dirname (Files): Add m4/double-slash-root.m4.
4410         * modules/getcwd (Files): Add m4/getcwd-abort-bug.m4.
4411         * modules/mkdir-p (Files): Add lib/same-inode.h.
4412         * modules/same (Files): Add lib/same-inode.h.
4413
4414 2006-07-03  Paul Eggert  <eggert@cs.ucla.edu>
4415
4416         * m4/absolute-header.m4: Renamed from full-header-path.m4.
4417         This is to keep the terminology clean; POSIX talks about
4418         "absolute pathnames", not "full pathnames", but the GNU
4419         Coding Standards say to use "path" for something else;
4420         so use "absolute" to keep both sides happy.
4421         (gl_ABSOLUTE_HEADER): Renamed from gl_FULL_HEADER_PATH.
4422         Set gl_absolute_header, not gl_full_header_path.
4423         Set gl_cv_absolute_<header>, not gl_full_path_<header>.
4424         Define ABSOLUTE_<HEADER>, not FULL_PATH_<HEADER>.
4425         All uses changed.
4426
4427         Merge from coreutils.
4428
4429         2006-06-30  Paul Eggert  <eggert@cs.ucla.edu>
4430
4431         * m4/c-strtod.m4 (gl_C_STRTOLD): Add c-strtod.c to LIBSOURCES.
4432         Require gl_USE_SYSTEM_EXTENSIONS, not gl_C_STRTOD, since we don't
4433         want to require the building of c-strtod.o.
4434         * m4/lib-check.m4 (cu_LIB_CHECK): Remove SEQ_LIBM, since seq no longer
4435         needs -lm directly.
4436         * m4/xstrtod.m4 (gl_XSTRTOLD): New macro.
4437
4438         2006-06-19  Paul Eggert  <eggert@cs.ucla.edu>
4439
4440         * m4/lib-ignore.m4 (gl_IGNORE_UNUSED_LIBRARIES): Prefer binutils's
4441         --as-needed option if available.  Problem reported by Albert Chin in
4442         <http://lists.gnu.org/archive/html/bug-gnulib/2006-06/msg00114.html>.
4443         However, use -Wl,--as-needed, not bare --as-needed, since HP-UX 11.11
4444         cc merely issues a bunch of annoying warnings for --as-needed
4445         (this problem was reported by Bob Proulx).  Also, try linking with
4446         -lm to detect a bug in binutils 2.16 (this problem was reported
4447         by Ralf Wildenhues).
4448
4449         2006-06-18  Jim Meyering  <jim@meyering.net>
4450
4451         Test for a bug that causes glibc's getcwd to suffer a failed assertion.
4452         * m4/getcwd-abort-bug.m4 (gl_FUNC_GETCWD_ABORT_BUG): New file and
4453         macro.
4454         * m4/getcwd.m4 (gl_FUNC_GETCWD): If we detect support for getcwd_null,
4455         also check for glibc-2.4's abort-inducing bug.
4456
4457         * m4/getcwd-path-max.m4 (gl_FUNC_GETCWD_PATH_MAX): Fix typo.
4458         Low-probability clean-up should be to use rmdir to get rid of
4459         the just-created directory, not unlink.
4460
4461         * m4/ftruncate.m4 (gl_FUNC_FTRUNCATE): If ftruncate is missing, make
4462         configure fail, and request a bug report to inform us about it.
4463         Add a comment that, barring reports to the contrary, in 2007 we'll
4464         assume ftruncate is universally available.
4465
4466         2006-04-17  Paul Eggert  <eggert@cs.ucla.edu>
4467
4468         * m4/filemode.m4 (gl_FILEMODE): Check for strmode declaration.
4469
4470         2006-03-12  Jim Meyering  <jim@meyering.net>
4471
4472         * m4/chdir-safer.m4 (gl_CHDIR_SAFER): Add same-inode.h to the list.
4473         * m4/cycle-check.m4 (gl_CYCLE_CHECK): Likewise.
4474         * m4/same.m4 (gl_SAME): Likewise.
4475         * m4/root-dev-ino.m4 (gl_ROOT_DEV_INO): Likewise.
4476
4477         2006-03-11  Eric Blake  <ebb9@byu.net>
4478
4479         * m4/double-slash-root.m4: New file, provides gl_DOUBLE_SLASH_ROOT.
4480         * m4/dirname.m4 (gl_DIRNAME): Use gl_DOUBLE_SLASH_ROOT.
4481         * m4/dos.m4 (FILE_SYSTEM_PREFIX_LEN): Move from here to dirname.h.
4482         (FILE_SYSTEM_DRIVE_PREFIX_CAN_BE_RELATIVE): New define.
4483
4484 2006-07-03  Paul Eggert  <eggert@cs.ucla.edu>
4485
4486         * lib/stdint_.h: Include <sys/types.h> after @FULL_PATH_STDINT_H@, for
4487         MacOS X 10.4.6.  Don't mention <sys/int_types.h>.  Problems
4488         reported by Mark D. Baushke, one in
4489         <http://lists.gnu.org/archive/html/bug-gnulib/2006-07/msg00015.html>.
4490
4491         Merge from coreutils.
4492
4493         * lib/.cppi-disable: Add stdint_.h.
4494         * lib/.cvsignore: Add stdint.h.
4495
4496         2006-06-30  Paul Eggert  <eggert@cs.ucla.edu>
4497
4498         * lib/xstrtod.c (XSTRTOD, DOUBLE): New macros, so that we can support
4499         both double and long double versions.
4500         (XSTRTOD): Renamed from xstrtod.  Use DOUBLE internally.
4501         * lib/xstrtold.c: New file.
4502         * lib/xstrtod.h (xstrtold): New decl.
4503
4504         2006-05-22  Paul Eggert  <eggert@cs.ucla.edu>
4505
4506         * lib/filemode.c (setst): Remove.
4507         (strmode): Rewrite to avoid setst.  This makes the code shorter,
4508         (arguably) clearer, and the generated code is a bit smaller on my
4509         Debian GNU/Linux stable x86 host.
4510
4511         2006-04-17  Paul Eggert  <eggert@cs.ucla.edu>
4512
4513         * lib/filemode.c: Include "filemode.h" first, to test the interface.
4514         Assume that filemode.h includes sys/types.h and sys/stat.h.
4515         (HAVE_ST_DM_MODE): New macro, moved here from ls.c.
4516         (ftypelet): Reorder to put common cases first, for efficiency.
4517         Add 'P', 'w'.  Remove 'M', since it's now the caller's responsibility
4518         to do 'M'.
4519         (strmode): Renamed from mode_string, and now stores 12 bytes instead
4520         of 10, for compatibility with FreeBSD.  All callers changed.
4521         (filemodestring): Now stores 12 bytes instead of 10, and sets file
4522         types that can't be deduced solely from st_mode.  First arg is now a
4523         const pointer.
4524         * lib/filemode.h (HAVE_DECL_STRMODE): Include <string.h> for strmode.
4525         (strmode): Renamed from mode_string.
4526         (filemodestring): New decl.
4527         * lib/stat-macros.h: Don't undef S_ISDOOR, since it's never buggy.
4528         (S_ISDOOR): Don't bother with S_IFDOOR, since that code is never
4529         needed.
4530         (S_ISPORT, S_ISWHT): New macros, if not already defined.
4531
4532         2006-04-12  Paul Eggert  <eggert@cs.ucla.edu>
4533
4534         * lib/fsusage.c: Don't include <inttypes.h> or <stdint.h>, since
4535         fsusage.h now does that.  Include fsusage.h first, to test interface.
4536         Prefer statvfs if it works, since it's blessed by POSIX.  Attempt
4537         at most one method (the old code could have generated decls that
4538         didn't conform to C89, not that this was ever exercised).
4539         * lib/fsusage.h: Include <inttypes.h> and <stdint.h> if they exist.
4540
4541         2006-03-19  Jim Meyering  <jim@meyering.net>
4542
4543         Work even in a chroot where d_ino values for entries in "/"
4544         don't match the stat.st_ino values for the same names.
4545         * lib/getcwd.c (__getcwd): When no d_ino value matches the target inode
4546         number, iterate through all entries again, using lstat instead.
4547         Reported by Kenshi Muto in http://bugs.debian.org/355810, and by
4548         Zouhir Hafidi in https://bugzilla.redhat.com/bugzilla/190656.
4549
4550         * lib/getcwd.c (__getcwd): Clarify a comment.
4551         Use memcpy in place of a call to strcpy.
4552
4553         2006-03-12  Jim Meyering  <jim@meyering.net>
4554
4555         * lib/fts-cycle.c (leave_dir): If cycle-check's saved dev-ino pair
4556         matches that of the current directory (which we're about to chdir ".."
4557         out of), then save the dev-ino of the parent, instead.
4558
4559         * lib/same-inode.h (SAME_INODE): New file/macro.
4560         * lib/chdir-safer.c (SAME_INODE): Remove definition.
4561         Include "same-inode.h", instead.
4562         * lib/same.c: Likewise.
4563         * lib/cycle-check.h: Include "same-inode.h".
4564         (CYCLE_CHECK_REFLECT_CHDIR_UP): Define.
4565         * lib/cycle-check.c (SAME_INODE): Remove definition.
4566         * lib/root-dev-ino.h: Include "same-inode.h".
4567
4568         2006-03-11  Eric Blake  <ebb9@byu.net>
4569
4570         * lib/same.c (same_name): s/base_name/last_component/
4571         * lib/backupfile.c (check_extension, numbered_backup): Likewise.
4572         * lib/filenamecat.c (file_name_concat): Likewise.
4573
4574         2006-03-11  Eric Blake  <ebb9@byu.net>,
4575                     Paul Eggert  <eggert@cs.ucla.edu>
4576
4577         * lib/dirname.h (FILE_SYSTEM_PREFIX_LEN): Move here from dos.m4.
4578         [FILE_SYSTEM_ACCEPTS_DRIVE_LETTER_PREFIX]: Don't treat 1: as a
4579         drive prefix.
4580         (IS_ABSOLUTE_FILE_NAME): Treat all drive letters as absolute on
4581         platforms like cygwin with FILE_SYSTEM_DRIVE_PREFIX_IS_ABSOLUTE.
4582         (last_component): New method.
4583         * lib/dirname.c (dir_len): Determine when drive letters need a
4584         subsequent slash.  Preserve // when it is special.
4585         (dir_name): Don't append dot when drive letter is absolute.
4586         [TEST_DIRNAME]: Move into a full-blown gnulib test.
4587         * lib/basename.c (base_name): New semantics - malloc the result.
4588         Preserve // when it is special.  Preserve relative files that look
4589         like drive letters.
4590         (base_len): Preserve // when it is special.
4591         (last_component): New method, similar to old base_name semantics.
4592         * lib/stripslash.c (strip_trailing_slashes): Use last_component, not
4593         base_name.  Strip redundant slashes from ///.
4594
4595 2006-07-03  Jim Meyering  <jim@meyering.net>
4596
4597         * lib/cycle-check.h (CYCLE_CHECK_REFLECT_CHDIR_UP): Abort if this
4598         macro is used before the first cycle_check call.
4599
4600 2006-07-03  Eric Blake  <ebb9@byu.net>
4601
4602         * modules/dirname (Depends-on): Add xstrndup.
4603
4604 2006-07-02  Paul Eggert  <eggert@cs.ucla.edu>
4605
4606         * m4/stdint.m4 (gl_STDINT_H): Use more-mnemonic identifiers for
4607         test cases, so that config.log is a bit easier to follow.
4608
4609 2006-07-02  Paul Eggert  <eggert@cs.ucla.edu>
4610
4611         * lib/stdint_.h (intmax_t, uintmax_t): Prefer long to long long if
4612         both are 64 bits, since this seems to be the tradition, and this
4613         prevents gcc -Wformat from warning about usages with PRIuMAX.  If
4614         we ever run into a host that prefers long long to long in this
4615         case, we'll need another configure-time test.  Problem reported by
4616         Jim Meyering.
4617
4618 2006-07-02  Eric Blake  <ebb9@byu.net>
4619
4620         * m4/wcwidth.m4 (gl_FUNC_WCWIDTH): Simplify by using AC_CHECK_DECLS.
4621
4622 2006-07-01  Paul Eggert  <eggert@cs.ucla.edu>
4623
4624         * modules/inttypes (Depends-on): No longer depends on stdint.
4625         * modules/stdint (Description): Say more about assumptions.
4626         Say that the fast types might differ.  Say macros are used.
4627         (Files): Remove m4/size_max.m4, m4/wchar_t.m4.  Add m4/longlong.m4.
4628         (Makefile.am): Revise list of substituted symbols to match
4629         new stdint.m4.
4630         * modules/stdint-tests (Files): Add m4/wchar_t.m4, m4/wint_t.m4.
4631         (configure.ac): Add gt_TYPE_WCHAR_T, gt_TYPE_WINT_T.
4632         * tests/test-stdint.c (verify_same_types)
4633         [! (__GNUC__ >= 2 && DO_PEDANTIC)]: Put in a decl, so that
4634         the code conforms to C99/C89.
4635         Test for WCHAR_MIN and WCHAR_MAX only if HAVE_WCHAR_T.
4636         Test for WINT_MIN and WINT_MAX only if HAVE_WINT_T.
4637
4638 2006-07-01  Paul Eggert  <eggert@cs.ucla.edu>
4639
4640         * m4/longlong.m4 (AC_TYPE_LONG_LONG_INT): Backport from Autoconf 2.60,
4641         but fix a bug, by requiring at least 64 bits.
4642         * m4/ulonglong.m4 (AC_TYPE_UNSIGNED_LONG_LONG_INT): Likewise.
4643         * m4/longlong.m4 (gl_AC_TYPE_LONG_LONG): Now just call
4644         AC_TYPE_LONG_LONG_INT.  This macro is obsolete and will go soon.
4645         * m4/ulonglong.m4 (gl_AC_TYPE_UNSIGNED_LONG_LONG) Likewise.
4646
4647         * m4/stdint.m4 (gl_STDINT_H): Rewrite to accommodate stdint_.h
4648         changes.  Make 2.59 a prerequisite.  Check and substitute for
4649         HAVE_LONG_LONG_INT.  Rely on Autoconf to check for stdint.h and
4650         inttypes.h.  Do not use special include files; just use the
4651         defaults.  Check for sys/inttypes.h and sys/bitypes.h in the usual
4652         way now.  Remove no-longer-needed tests for HAVE_LONG_64BIT,
4653         HAVE_LONG_LONG_64BIT, int8_t, int16_t, int32_t, int64_t, uint8_t,
4654         uint16_t, uint32_t uint64_t, int_least8_t, int_least16_t,
4655         int_least32_t, int_least64_t, uint_least8_t, uint_least16_t,
4656         uint_least32_t, uint_least64_t, int_fast8_t, int_fast16_t,
4657         int_fast32_t, int_fast64_t, uint_fast8_t uint_fast16_t,
4658         uint_fast32_t, uint_fast64_t, intptr_t, uintptr_t, intmax_t,
4659         uintmax_t, INT8_MIN, INT8_MAX, UINT8_MAX, INT16_MIN, INT16_MAX,
4660         UINT16_MAX, INT32_MIN, INT32_MAX, UINT32_MAX, INT64_MIN,
4661         INT64_MAX, UINT64_MAX, INT_LEAST8_MIN, INT_LEAST8_MAX,
4662         UINT_LEAST8_MAX, INT_LEAST16_MIN, INT_LEAST16_MAX,
4663         UINT_LEAST16_MAX, INT_LEAST32_MIN, INT_LEAST32_MAX,
4664         UINT_LEAST32_MAX, INT_LEAST64_MIN, INT_LEAST64_MAX,
4665         UINT_LEAST64_MAX, INT_FAST8_MIN, INT_FAST8_MAX, UINT_FAST8_MAX,
4666         INT_FAST16_MIN, INT_FAST16_MAX, UINT_FAST16_MAX, INT_FAST32_MIN,
4667         INT_FAST32_MAX, UINT_FAST32_MAX, INT_FAST64_MIN, INT_FAST64_MAX,
4668         UINT_FAST64_MAX, INTPTR_MIN, INTPTR_MAX, UINTPTR_MAX, INTMAX_MIN,
4669         INTMAX_MAX, UINTMAX_MAX, PTRDIFF_MIN, PTRDIFF_MAX, SIG_ATOMIC_MIN,
4670         SIG_ATOMIC_MAX, SIZE_MAX, WCHAR_MIN, WCHAR_MAX, WINT_MIN,
4671         WINT_MAX.  Check for C99 conformance more strictly, by detecting
4672         bugs in glibc 2.4, Solaris 10, and OpenBSD 3.9.  On the other hand do
4673         not check for things that C99 does not require, e.g., int8_t.  If
4674         a test isn't needed unless <stdint.h> isn't working, and is
4675         unlikely to be needed for any other reason, then don't do it
4676         unless <stdint.h> isn't working.  Do not check for ptrdiff_t or
4677         size_t, since we assume C89 freestanding at least.  Do not check
4678         for sig_atomic_t, wchar_t, or wint_t, since the code now does
4679         the right thing even if the types are not defined.  Instead use:
4680         (gl_STDINT_TYPE_PROPERTIES): New macro.
4681         (gl_HEADER_STDINT_H, gl_HEADER_INTTYPES_H): Remove.  Don't bother
4682         testing whether <sys/types.h> clashes, as Autoconf does this for
4683         us now.  All uses removed.
4684         (gl_STDINT_CHECK_TYPES, gl_STDINT_MISSING_BOUND):
4685         (gl_STDINT_MISSING_BOUNDS, gl_STDINT_MISSING_BOUNDS2):
4686         (gl_CHECK_TYPE_SAME):
4687         Remove; no longer needed.
4688         (gl_STDINT_BITSIZEOF): Don't bother to check whether the type
4689         exists, since we'll return 0 anyway in that case.
4690         (gl_INTEGER_TYPE_SUFFIX, gl_STDINT_INCLUDES): New macros.
4691
4692 2006-07-01  Paul Eggert  <eggert@cs.ucla.edu>
4693
4694         * lib/stdint_.h (_GL_STDINT_H): Renamed from _STDINT_H, to avoid
4695         possible collision with system files.
4696         (<stdio.h>, <time.h>, <wchar.h>) [defined __cplusplus && ! defined
4697         __STDC_CONSTANT_MACROS)]: Do not include, since we don't need
4698         WCHAR_MIN and WCHAR_MAX in this case.
4699         (<stddef.h>): Do not include; no longer needed.
4700         (<sys/types.h>): Include if @HAVE_SYS_TYPES_H@, not if
4701         (defined(__OpenBSD__) || defined(__bsdi__) || defined(__sgi)).
4702         (<sys/inttypes.h>): Include if @HAVE_SYS_INTTYPES_H@ &&
4703         !@HAVE_INTTYPES_H@, not if (defined(__FreeBSD__)
4704         && (__FreeBSD__ >= 3) && (__FreeBSD__ <= 4)).
4705         (__STDINT_H__) [@HAVE_STDINT_H@ && defined __sgi && ! defined
4706         __c99]: Define, to work around IRIX <stdint.h> incompatibility.
4707         (@FULL_PATH_STDINT_H@) [!(defined(__sgi) && @HAVE_INTTYPES_H@ &&
4708         !defined(__c99))]: Include in this case too, since it's harmless
4709         now.
4710         (<inttypes.h>) [@HAVE_INTTYPES_H@]: Include, since it's no longer
4711         dangerous to do so.
4712         (@FULL_PATH_INTTYPES_H@) [(defined(__hpux) || defined(_AIX)) &&
4713         @HAVE_INTTYPES_H@]: Do not include, since we now include <inttypes.h>.
4714         (_STDINT_MIN, _STDINT_MAX): New macros.
4715         (int8_t, uint8_t, int16_t, uint16_t, int32_t, uint32_t, int64_t):
4716         (uint64_t, int_least8_t, uint_least8_t, int_least16_t):
4717         (uint_least16_t, int_least32_t, uint_least32_t, int_least64_t):
4718         (uint_least64_t, int_fast8_t, uint_fast8_t, int_fast16_t):
4719         (uint_fast16_t, int_fast32_t, uint_fast32_t, int_fast64_t):
4720         (uint_fast64_t, intptr_t, uintptr_t, intmax_t, uintmax_t): Now
4721         macros, not typedefs; this simplifies things quite a bit.
4722         Use long int for all types narrower than int64_t.
4723         (intmax_t, uintmax_t, INTMAX_C, UINTMAX_C):
4724         Define in terms of long long int or int64_t or long int,
4725         not int64_t or int32_t.  This saves some compile-time testing.
4726         (INT8_MIN, INT8_MAX, UINT8_MAX, INT16_MIN, INT16_MAX, UINT16_MAX):
4727         (INT32_MIN, INT32_MAX, UINT32_MAX, INT64_MIN, INT64_MAX):
4728         (UINT64_MAX, INT_LEAST8_MIN, INT_LEAST8_MAX, UINT_LEAST8_MAX):
4729         (INT_LEAST16_MIN, INT_LEAST16_MAX, UINT_LEAST16_MAX):
4730         (INT_LEAST32_MIN, INT_LEAST32_MAX, UINT_LEAST32_MAX):
4731         (INT_LEAST64_MIN, INT_LEAST64_MAX, UINT_LEAST64_MAX, INT_FAST8_MIN):
4732         (INT_FAST8_MAX, UINT_FAST8_MAX, INT_FAST16_MIN, INT_FAST16_MAX):
4733         (UINT_FAST16_MAX, INT_FAST32_MIN, INT_FAST32_MAX, UINT_FAST32_MAX):
4734         (INT_FAST64_MIN, INT_FAST64_MAX, UINT_FAST64_MAX, INTPTR_MIN):
4735         (INTPTR_MAX, UINTPTR_MAX, INTMAX_MIN, INTMAX_MAX, UINTMAX_MAX):
4736         (PTRDIFF_MIN, PTRDIFF_MAX, SIG_ATOMIC_MIN, SIG_ATOMIC_MAX):
4737         (SIZE_MAX, WCHAR_MIN, WCHAR_MAX, WINT_MIN, WINT_MAX):
4738         undef any previous version and define our own version, for
4739         simplicity and consistency with the new macros for types.
4740         (PTRDIFF_MIN, PTRDIFF_MAX, SIG_ATOMIC_MIN, SIG_ATOMIC_MAX):
4741         (SIZE_MAX, WCHAR_MIN, WCHAR_MAX, WINT_MIN, WINT_MAX):
4742         Simplify definitions by using _STDINT_MIN and _STDINT_MAX
4743         where appropriate.  Rely on new symbols @PTRDIFF_T_SUFFIX@,
4744         @SIG_ATOMIC_T_SUFFIX@, @SIZE_T_SUFFIX@, @WCHAR_T_SUFFIX@,
4745         @WINT_T_SUFFIX@ to keep things simple here.
4746         (UINT8_C, UINT16_C, UINT32_C, INT64_C, UINT64_C):
4747         Simplify by assuming typical 8/16/32/64 host, since we're
4748         already doing that elsewhere anyway.
4749         Use (LONG_MAX >> 31 >> 31 == 1) rather than @HAVE_LONG_64BIT@,
4750         and assume long long int is 64 bits if available.  This
4751         speeds up 'configure'.
4752
4753 2006-07-01  Eric Blake  <ebb9@byu.net>
4754
4755         * m4/stdarg.m4 (gl_STDARG_H): Use proper AH_VERBATIM.
4756         Reported by Andreas Buening.
4757
4758 2006-07-01  Eric Blake  <ebb9@byu.net>
4759
4760         * m4/stdarg.m4 (gl_STDARG_H): Properly parenthesize gl_va_copy.
4761
4762 2006-06-30  Jim Hyslop <jhyslop@dreampossible.ca>  (tiny change)
4763
4764         * lib/getaddrinfo.c: fixed typo
4765
4766 2006-06-29  Jim Meyering  <jim@meyering.net>
4767
4768         * modules/strftime (Maintainer): Add my name, since with the
4769         FPRINTFTIME changes strftime.c has forked from glibc.
4770
4771 2006-06-29  Eric Blake  <ebb9@byu.net>
4772
4773         * m4/sys_stat_h.m4 (gl_HEADER_SYS_STAT_H): Use AC_C_INLINE.
4774
4775 2006-06-29  Eric Blake  <ebb9@byu.net>
4776
4777         * m4/sys_stat_h.m4 (gl_HEADER_SYS_STAT_H): New file.
4778
4779 2006-06-29  Eric Blake  <ebb9@byu.net>
4780
4781         * lib/stat_.h: New file.
4782
4783 2006-06-29  Eric Blake  <ebb9@byu.net>
4784
4785         * lib/stat_.h (rpl_mkdir): Declare inline, to avoid warnings about
4786         unused static function.
4787
4788 2006-06-29  Eric Blake  <ebb9@byu.net>
4789
4790         * doc/functions.texi (Function Portability): Document missing lstat
4791         on mingw.
4792
4793 2006-06-29  Eric Blake  <ebb9@byu.net>
4794
4795         * MODULES.html.sh: Add sys_stat.
4796         * modules/sys_stat: New module.
4797         * modules/mkstemp (Depends-on): Add sys_stat.
4798
4799 2006-06-29  Derek R. Price  <derek@ximbiot.com>
4800
4801         * m4/strftime.m4: Don't call AC_FUNC_STRFTIME.
4802
4803 2006-06-29  Derek R. Price  <derek@ximbiot.com>
4804
4805         * m4/c-bs-a.m4: Removed.
4806
4807 2006-06-29  Derek R. Price  <derek@ximbiot.com>
4808
4809         * lib/strftime.c: Assume strftime() exists.
4810
4811 2006-06-29  Derek Price  <derek@ximbiot.com>
4812
4813         * modules/c-bs-a: Removed - \a is C89.
4814         * MODULES.html.sh: Remove c-bs-a.
4815
4816 2006-06-29  Bruno Haible  <bruno@clisp.org>
4817
4818         * modules/wcwidth (License): Change to LGPL.
4819
4820 2006-06-28  Simon Josefsson  <jas@extundo.com>
4821
4822         * tests/test-getaddrinfo.c: Test getnameinfo too.  Call WSAStartup
4823         on _WIN32.
4824
4825         * modules/getaddrinfo (Depends-on): Add inet_ntop, needed by
4826         getnameinfo.
4827
4828 2006-06-28  Simon Josefsson  <jas@extundo.com>
4829
4830         * m4/getaddrinfo.m4: Look for getnameinfo prototypes too.
4831
4832 2006-06-28  Simon Josefsson  <jas@extundo.com>
4833
4834         * lib/getaddrinfo.c: Try to load ws2_32.dll on Windows, to find the
4835         functions there.  It will succeed on Windows XP, but on Windows
4836         2000 and (presumably) earlier, it will fail, and use the internal
4837         re-implementation.
4838         (use_win32_p): New function.
4839         (getaddrinfo): Use strtoul on servname, to support numeric ports.
4840         Support AI_NUMERICSERV to disable getservbyname.
4841         (getnameinfo): New function, only supports
4842         NI_NUMERICHOST|NI_NUMERICSERV for now.
4843
4844         * lib/getaddrinfo.h: Test and check for AI_* flags separately, MinGW
4845         only have some of them.  Add AI_NUMERICSERV.  Add prototype for
4846         getnameinfo.
4847
4848 2006-06-28  Eric Blake  <ebb9@byu.net>
4849
4850         * modules/wcwidth: New file.
4851         * modules/mbchar (Depends-on): Add wcwidth.
4852         * modules/mbswidth (Depends-on): Add wcwidth.
4853         * MODULES.html.sh: Add wcwidth.
4854
4855 2006-06-28  Eric Blake  <ebb9@byu.net>
4856
4857         * m4/mbswidth.m4 (gl_MBSDWIDTH): Move wcwidth from here...
4858         * m4/wcwidth.m4 (gl_FUNC_WCWIDTH): ...to this new file.
4859
4860 2006-06-28  Eric Blake  <ebb9@byu.net>
4861
4862         * lib/xvasprintf.h: Fix comments.
4863
4864 2006-06-28  Eric Blake  <ebb9@byu.net>
4865
4866         * lib/mbchar.h (wcwidth): Include wcwidth.h.
4867         * lib/mbswidth.c (wcwidth): Move from here...
4868         * lib/wcwidth.h: ...to this new file.
4869
4870 2006-06-28  Derek R. Price  <derek@ximbiot.com>
4871
4872         * m4/savedir.m4: Remove AC_FUNC_CLOSEDIR_VOID requirement.
4873
4874         * m4/fnmatch.m4 (_AC_LIBOBJ_FNMATCH): Don't require AC_C_CONST, since
4875         it's obsolete.
4876         * m4/strftime.m4 (gl_FUNC_GNU_STRFTIME): Likewise.
4877
4878 2006-06-28  Derek R. Price  <derek@ximbiot.com>
4879
4880         * lib/savedir.c (CLOSEDIR): Remove.  All uses changed to closedir.
4881         Autoconf 2.60 says this stuff was obsolete.
4882
4883 2006-06-28  Bruno Haible  <bruno@clisp.org>
4884
4885         * modules/wcwidth (Files): Add m4/wchar_t.m4.
4886
4887 2006-06-28  Bruno Haible  <bruno@clisp.org>
4888
4889         * m4/wcwidth.m4 (gl_FUNC_WCWIDTH): Also require AC_C_INLINE and
4890         gt_TYPE_WCHAR_T.
4891
4892 2006-06-28  Bruno Haible  <bruno@clisp.org>
4893
4894         * lib/wcwidth.h: Declare nothing if !HAVE_WCHAR_T. Provide a fallback
4895         declaration for wcwidth.
4896         * lib/mbswidth.c: Restore the includes of <wchar.h> and <wctypes.h>.
4897
4898 2006-06-28  Bruno Haible  <bruno@clisp.org>
4899
4900         * lib/mkdtemp.c [MINGW]: Include <io.h>.
4901         (mkdir): Define using _mkdir.
4902
4903 2006-06-28  Bruno Haible  <bruno@clisp.org>
4904
4905         * lib/getaddrinfo.h: Fix POSIX URL.
4906         * lib/getaddrinfo.c (WIN32_NATIVE): New macro. Use it instead of
4907         _WIN32.
4908         (use_win32_p): Make static.
4909         (getaddrinfo): Reject service name if it is empty or does not consist
4910         solely of decimal digits, or if its value is > 65535.
4911         (getnameinfo): Remove useless casts.
4912
4913 2006-06-27  Simon Josefsson  <jas@extundo.com>
4914
4915         * modules/sys_select: New file, suggested by Bruno Haible, Paul
4916         Eggert and Martin Lambers.
4917
4918 2006-06-27  Simon Josefsson  <jas@extundo.com>
4919
4920         * m4/sys_select_h.m4: New file, suggested by Bruno Haible, Paul
4921         Eggert and Martin Lambers.
4922
4923 2006-06-27  Bruno Haible  <bruno@clisp.org>
4924
4925         * m4/stdint.m4 (gl_STDINT_BITSIZEOF): For nonexistent types, set the
4926         result to 0, not to empty.
4927         Reported by Martin Neitzel <neitzel@sco.gaertner.de>.
4928
4929 2006-06-27  Bruno Haible  <bruno@clisp.org>
4930
4931         * lib/stdint_.h (intmax_t, uintmax_t): Undefine before typedef.
4932
4933 2006-06-26  Simon Josefsson  <jas@extundo.com>
4934
4935         * m4/inet_ntop.m4: Don't check for sys/types.h, we assume it is
4936         present.
4937
4938 2006-06-26  Paul Eggert  <eggert@cs.ucla.edu>
4939
4940         * lib/base64.c (B64): Use _ as the formal parameter, not x, to avoid
4941         bug in IBM C V6 for AIX.  Problem reported by Larry Jones in
4942         <http://lists.gnu.org/archive/html/bug-gnulib/2006-06/msg00181.html>.
4943
4944 2006-06-26  Mark D. Baushke  <mdb@gnu.org>
4945
4946         * m4/stdint.m4 (gl_STDINT_H): Treat BSD/OS like OpenBSD.
4947
4948 2006-06-26  Bruno Haible  <bruno@clisp.org>
4949
4950         * modules/stdint (Makefile.am): Also substitute HAVE_WCHAR_H.
4951
4952 2006-06-26  Bruno Haible  <bruno@clisp.org>
4953
4954         * m4/stdint.m4 (gl_STDINT_H): Test also for <wchar.h>.
4955
4956 2006-06-26  Bruno Haible  <bruno@clisp.org>
4957
4958         * m4/stdint.m4 (gl_STDINT_H): Don't include <stdint.h> when using the
4959         SGI C compiler in pre-C99 mode.
4960         Suggested by Mark D. Baushke and Larry Jones.
4961
4962 2006-06-26  Bruno Haible  <bruno@clisp.org>
4963
4964         * lib/stdint_.h: Include <wchar.h> if necessary for WCHAR_MIN or
4965         WCHAR_MAX.
4966         Reported by Mark D. Baushke and Larry Jones.
4967
4968 2006-06-26  Bruno Haible  <bruno@clisp.org>
4969
4970         * lib/stdint_.h: Don't include <stdint.h> when using the SGI C compiler
4971         in pre-C99 mode.
4972         Suggested by Mark D. Baushke and Larry Jones.
4973
4974 2006-06-23  Simon Josefsson  <jas@extundo.com>
4975             Bruno Haible  <bruno@clisp.org>
4976
4977         * gnulib-tool (func_emit_lib_Makefile_am): Define MOSTLYCLEANDIRS.
4978         Emit mostlyclean-local rule.
4979         (func_emit_tests_Makefile_am): Likewise.
4980         * modules/sys_socket (Makefile.am): Use MOSTLYCLEANDIRS.
4981
4982 2006-06-23  Mark D. Baushke  <mdb@gnu.org>
4983
4984         * lib/stdint_.h: Treat BSD/OS like OpenBSD.
4985
4986 2006-06-23  Bruno Haible  <bruno@clisp.org>
4987
4988         * tests/test-stdint.c: Update to match ISO C 99 Technical
4989         Corrigendum 1.
4990
4991 2006-06-23  Bruno Haible  <bruno@clisp.org>
4992
4993         * m4/stdint.m4 (gl_STDINT_H): Treat IRIX like OpenBSD.
4994
4995 2006-06-23  Bruno Haible  <bruno@clisp.org>
4996
4997         * lib/stdint_.h: Treat IRIX like OpenBSD.
4998
4999 2006-06-23  Bruno Haible  <bruno@clisp.org>
5000
5001         * lib/stdint_.h (UINT8_C, UINT16_C, UINT32_C): Define according to
5002         ISO C 99 Technical Corrigendum 1.
5003
5004 2006-06-22  Simon Josefsson  <jas@extundo.com>
5005
5006         * m4/sockpfaf.m4: Include winsock2.h too, to make it work under
5007         MinGW.
5008
5009 2006-06-22  Paul Eggert  <eggert@cs.ucla.edu>
5010
5011         * lib/glob.c (collated_compare): Remove 'const' uses that weren't
5012         needed.  Some compiler complained about some of them.  Problem reported
5013         by Larry Jones in
5014         <http://lists.gnu.org/archive/html/bug-gnulib/2006-06/msg00172.html>.
5015
5016 2006-06-21  Simon Josefsson  <jas@extundo.com>
5017
5018         * tests/test-getaddrinfo.c: New file.
5019
5020         * modules/getaddrinfo-tests: New file.
5021
5022         * MODULES.html.sh: Add inet_pton.
5023
5024         * modules/inet_pton: New file.
5025
5026 2006-06-21  Simon Josefsson  <jas@extundo.com>
5027
5028         * m4/getaddrinfo.m4: Don't define WINVER.  Look for gethostbyname in
5029         -lws2_32 too.  Fixes getaddrinfo on Windows 2000, with the price
5030         of using the (limited) gnulib implementation on Windows XP.
5031
5032         * m4/inet_pton.m4: New file.
5033
5034 2006-06-21  Simon Josefsson  <jas@extundo.com>
5035
5036         * lib/getaddrinfo.c (getaddrinfo): Set ai_family in the return
5037         variable.
5038
5039         * lib/socket_.h: Don't define WINVER.
5040
5041         * lib/inet_pton.h, inet_pton.c: New file, taken from glibc but
5042         slightly modified to work in gnulib.
5043
5044 2006-06-21  Simon Josefsson  <jas@extundo.com>
5045
5046         * doc/gnulib.texi (Windows sockets): Add.
5047
5048 2006-06-21  Paul Eggert  <eggert@cs.ucla.edu>
5049
5050         * lib/read-file.c (fread_file): Start with buffer allocation of
5051         0 bytes rather than 1 byte; this simplifies the code.
5052         Don't invoke feof; it's not needed.  Refactor to avoid duplicate
5053         code to free buffer and save/restore errno.
5054         (internal_read_file): Remove unused local.
5055
5056 2006-06-20  Paul Eggert  <eggert@cs.ucla.edu>
5057
5058         * lib/openat.c (openat): Use ?:, not if, to work around GCC bug 4210
5059         <http://gcc.gnu.org/bugzilla/show_bug.cgi?id=4210>.
5060         Problem reported by Denis Excoffier in
5061         <http://lists.gnu.org/archive/html/bug-tar/2006-06/msg00023.html>.
5062
5063 2006-06-19  Yoann Vandoorselaere <yoann.v@prelude-ids.com>
5064
5065         * modules/sys_socket, modules/socklen: Include sys/types since
5066         FreeBSD 4.x's sys/socket.h needs it.
5067
5068 2006-06-19  Simon Josefsson  <jas@extundo.com>
5069
5070         * lib/inet_ntop.c: Always build inet_ntop4, since inet_ntop6 calls it.
5071
5072 2006-06-19  Paul Eggert  <eggert@cs.ucla.edu>
5073
5074         * lib/alloca_.h (alloca) [defined alloca]: Don't define or declare.
5075
5076 2006-06-19  Bruno Haible  <bruno@clisp.org>
5077
5078         * m4/stdint.m4 (gl_STDINT_H): Enclose the values of FULL_PATH_STDINT_H
5079         and FULL_PATH_INTTYPES_H in angle brackets.
5080         Reported by Mark D. Baushke <mdb@gnu.org>.
5081
5082 2006-06-17  Eric Blake  <ebb9@byu.net>
5083
5084         * m4/rmdir-errno.m4 (gl_FUNC_FMDIR_NOTEMPTY): Assume errno.h declares
5085         errno.
5086
5087 2006-06-17  Bruno Haible  <bruno@clisp.org>
5088
5089         * m4/stdint.m4 (gl_STDINT_H) [FreeBSD >= 5]: Don't include
5090         <sys/inttypes.h>.
5091
5092 2006-06-17  Bruno Haible  <bruno@clisp.org>
5093
5094         * m4/setenv.m4 (gl_PREREQ_SETENV, gl_PREREQ_UNSETENV): Remove test
5095         whether errno is declared. Assume <errno.h> declares errno.
5096
5097 2006-06-17  Bruno Haible  <bruno@clisp.org>
5098
5099         * lib/stdint_.h [FreeBSD >= 5]: Don't include <sys/inttypes.h>.
5100
5101 2006-06-17  Bruno Haible  <bruno@clisp.org>
5102
5103         * lib/stdint_.h (_UINT8_T, _UINT32_T, _UINT64_T): New macros. Fixes a
5104         problem on Solaris 2.5.1.
5105
5106 2006-06-16  Eric Blake  <ebb9@byu.net>
5107
5108         * lib/unsetenv.c [!defined errno]: Assume errno.h declares errno.
5109         * lib/unicodeio.c [!defined errno]: Likewise.
5110         * lib/strtol.c [!defined errno]: Likewise.
5111         * lib/strtod.c [!defined errno]: Likewise.
5112
5113 2006-06-15  Eric Blake  <ebb9@byu.net>
5114
5115         * m4/ssize_t.m4 (gt_TYPE_SSIZE_T): Work in spite of -Werror.
5116
5117 2006-06-15  Eric Blake  <ebb9@byu.net>
5118
5119         * config/srclist.txt (ssize_t.m4): Lose sync.
5120
5121 2006-06-15  Bruno Haible  <bruno@clisp.org>
5122
5123         * modules/stdint (Files): Include m4/full-header-path.m4,
5124         m4/size_max.m4, m4/wchar_t.m4.
5125         (Makefile.am): Many more substitutions.
5126         * modules/stdint-tests: New file.
5127         * tests/test-stdint.c: New file.
5128
5129 2006-06-15  Bruno Haible  <bruno@clisp.org>
5130
5131         * m4/stdint.m4 (gl_STDINT_H): Rewritten to produce a complete stdint.h.
5132         (gl_HEADER_STDINT_H, gl_HEADER_INTTYPES_H, gl_STDINT_CHECK_TYPES,
5133         gl_STDINT_MISSING_BOUND, gl_STDINT_MISSING_BOUNDS,
5134         gl_STDINT_MISSING_BOUNDS2, gl_STDINT_BITSIZEOF, gl_CHECK_TYPES_SIGNED,
5135         gl_CHECK_TYPE_SAME): New macros.
5136
5137 2006-06-15  Bruno Haible  <bruno@clisp.org>
5138
5139         * m4/size_max.m4 (gl_SIZE_MAX): Make it work also when cross-compiling.
5140
5141 2006-06-15  Bruno Haible  <bruno@clisp.org>
5142
5143         * lib/stdint_.h: Rewritten to be fully auto-configured.
5144         Fixes bug on HP-UX/IA64.
5145
5146 2006-06-11  Paul Eggert  <eggert@cs.ucla.edu>
5147
5148         * lib/getdate.y (__attribute__): Don't define if already defined.
5149         Problem reported by Larry Jones.
5150         * lib/utimens.c (__attribute__): Likewise.
5151
5152 2006-06-04  Paul Eggert  <eggert@cs.ucla.edu>
5153
5154         * lib/regexec.c (group_nodes_into_DFAstates): Fix a buffer overrun
5155         reported by Andreas Schwab.
5156
5157 2006-05-30  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
5158             Bruno Haible  <bruno@clisp.org>
5159
5160         * m4/strndup.m4 (gl_FUNC_STRNDUP): Replace the AC_REPLACE_FUNCS with a
5161         check for the declaration of strnlen and a run test that exposes the
5162         AIX 5.1 strnlen bug.  In the failure case, #define strndup to
5163         rpl_strndup.
5164
5165 2006-05-30  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
5166             Bruno Haible  <bruno@clisp.org>
5167
5168         * lib/strndup.c (strndup) [!_LIBC]: Don't undefine macro definition.
5169
5170 2006-05-28  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
5171
5172         * m4/c-strtod.m4 (gl_C99_STRTOLD): Use a link test rather than a
5173         compile test, for Tru64 4.0D.
5174
5175 2006-05-28  Karl Berry  <karl@gnu.org>
5176
5177         * config/srclist.txt (printf-args.c): lose sync.
5178
5179 2006-05-26  Martin Lambers  <marlam@marlam.de>
5180
5181         * lib/getpass.c: Updates the test for the native W32 API, and adds
5182         missing includes, thus fixing compilation warnings.
5183
5184 2006-05-25  Sergey Poznyakoff  <gray@gnu.org.ua>
5185
5186         * lib/exclude.c (exclude_fnmatch): New function.
5187         (excluded_file_name): Call exclude_fnmatch.
5188         * lib/exclude.h (excluded_file_name): New prototype
5189
5190 2006-05-25  Paul Eggert  <eggert@cs.ucla.edu>
5191
5192         * lib/tempname.c (small_open, large_open): New macros.
5193         (__open, __open64) [!_LIBC]: Remove.
5194         (__gen_tempname): Use small_open and large_open instead of __open
5195         and __open64.  This fixes a portability bug on HP-UX 11.11i
5196         reported by Simon Wing-Tang in
5197         <http://lists.gnu.org/archive/html/bug-coreutils/2006-05/msg00114.html>.
5198
5199 2006-05-24  Bruno Haible  <bruno@clisp.org>
5200
5201         * lib/printf-args.c (printf_fetchargs): Turn NULL pointers for
5202         TYPE_STRING and TYPE_WIDE_STRING into a non-NULL replacement.
5203         Reported by Thorsten Maerz <torte@netztorte.de> via
5204         Aaron Stone <aaron@serendipity.cx>.
5205
5206 2006-05-19  Paul Eggert  <eggert@cs.ucla.edu>
5207
5208         * m4/nanosleep.m4 (gl_FUNC_NANOSLEEP): Rename cache variables to use
5209         gl_ rather than jm_.  Link, don't run, so that cross-compiles are
5210         allowed.  Check that resulting type is arithmetic.  Move AC_REQUIRE
5211         and AC_CHECK_HEADERS_ONCE outside of AC_CACHE_CHECK, since they're
5212         not really conditional on the cache.
5213         (gl_PREREQ_NANOSLEEP): Check for sys/select.h.
5214
5215 2006-05-19  Paul Eggert  <eggert@cs.ucla.edu>
5216
5217         * lib/nanosleep.c [HAVE_SYS_SELECT_H]: Include <sys/select.h>.
5218         Use the usual Autoconf way to include <time.h> and/or sys/time.h.
5219         (my_usleep): Don't mishandle maximum value.
5220
5221 2006-05-19  Jim Meyering  <jim@meyering.net>
5222
5223         * lib/getugroups.c: Correct an outdated comment.  From Bruno Haible.
5224
5225 2006-05-17  Bruno Haible  <bruno@clisp.org>
5226
5227         Cygwin portability.
5228         * lib/classpath.c (PATH_SEPARATOR) [CYGWIN]: Define as ':'.
5229
5230 2006-05-17  Bruno Haible  <bruno@clisp.org>
5231
5232         * lib/stdint_.h: Fix recognition of Cygwin.
5233
5234 2006-05-15  Bruno Haible  <bruno@clisp.org>
5235
5236         * build-aux/config.rpath: Improve support for Sun C 5.9 on Linux, based
5237         on libtool patch by Ralf Wildenhues.
5238
5239 2006-05-14  Paul Eggert  <eggert@cs.ucla.edu>
5240
5241         * m4/stdbool.m4 (AC_HEADER_STDBOOL): Fix overly-picky
5242         test for C99 conformance; (bool) 0.5 is an integer constant
5243         expression, but (bool) -0.5 is not.  Problem reported by Fedor
5244         Sergeev in <http://forum.sun.com/jive/thread.jspa?threadID=96202>.
5245
5246 2006-05-11  Simon Josefsson  <jas@extundo.com>
5247
5248         * m4/xvasprintf.m4: Fix obvious typo.
5249
5250 2006-05-11  Jim Meyering  <jim@meyering.net>
5251
5252         * lib/sha1.c (sha1_buffer): Correct comment: s/MD5/SHA1/.  From
5253         James Lemley.
5254
5255 2006-05-10  Simon Josefsson  <jas@extundo.com>
5256
5257         * lib/md4.c: Typo fix, update copyright years.
5258         (K1, K2): Don't use L because it turn computations into 64-bit on
5259         64-bit platforms.
5260
5261 2006-05-10  Paul Eggert  <eggert@cs.ucla.edu>
5262
5263         * lib/crc.c (crc32_update): Remove unnecessary L suffix.
5264         * lib/md4.c (rol): Cast right-shift arg to uint32_t to prevent
5265         unwanted sign propagation, e.g., on hosts with 64-bit int.
5266         There still are some problems with reeelly weird theoretical hosts
5267         (e.g., 33-bit int) but it's not worth worrying about now.
5268         * lib/sha1.c (rol): Likewise.
5269         (K1, K2, K3, K4): Remove unnecessary L suffix.
5270
5271 2006-05-10  Bruno Haible  <bruno@clisp.org>
5272
5273         * lib/des.c: Cast to avoid warnings.
5274
5275 2006-05-09  Bruno Haible  <bruno@clisp.org>
5276
5277         * modules/xvasprintf (Files): Add m4/xvasprintf.m4.
5278         (Depends-on): Depend also on xsize, stdarg.
5279         (configure.ac): Add gl_XVASPRINTF.
5280
5281 2006-05-09  Bruno Haible  <bruno@clisp.org>
5282
5283         * m4/xvasprintf.m4: New file.
5284
5285 2006-05-09  Bruno Haible  <bruno@clisp.org>
5286
5287         * lib/xvasprintf.c: Include limits.h, string.h, xsize.h.
5288         (EOVERFLOW): Define fallback value.
5289         (xstrcat): New function.
5290         (xvasprintf): Recognize the special case of a string concatenation.
5291
5292 2006-05-08  Eric Blake  <ebb9@byu.net>
5293
5294         * gnulib-tool (func_version): Base copyright year on CVS date.
5295         (func_emit_copyright_notice): New function.
5296         (func_emit_lib_Makefile_am): Use it.
5297         (func_emit_tests_Makefile_am): Likewise.
5298         (func_import): Likewise.
5299
5300 2006-05-08  Bruno Haible  <bruno@clisp.org>
5301
5302         * modules/stdarg: New file.
5303         * MODULES.html.sh (func_all_modules): Add section for <stdarg.h>.
5304
5305 2006-05-08  Bruno Haible  <bruno@clisp.org>
5306
5307         * m4/stdarg.m4: New file, from GNU gettext.
5308
5309 2006-05-08  Bruno Haible  <bruno@clisp.org>
5310
5311         * config/srclist.txt (build-aux/config.rpath): different from latest
5312         release.
5313
5314 2006-05-08  Bruno Haible  <bruno@clisp.org>
5315
5316         * build-aux/config.rpath: Add support for Sun C 5.9 on Linux.
5317
5318 2006-05-05  Jim Meyering  <jim@meyering.net>
5319
5320         * m4/warning.m4: New file, derived from bison's file by the same name.
5321
5322 2006-05-03  Bruno Haible  <bruno@clisp.org>
5323
5324         * lib/stdint_.h: Shorter URL.
5325         * lib/inttypes.h: Likewise.
5326
5327 2006-05-02  Paul Eggert  <eggert@cs.ucla.edu>
5328
5329         * modules/inttypes (Maintainer): Change from Derek Price to 'all'.
5330
5331 2006-05-02  Paul Eggert  <eggert@cs.ucla.edu>
5332
5333         * lib/verify.h: Document the internals better.  Most of this change
5334         was written by Bruno Haible.
5335
5336 2006-05-02  Paul Eggert  <eggert@cs.ucla.edu>
5337
5338         * doc/verify.texi: New file, partly based on a proposal by
5339         Bruno Haible.
5340
5341 2006-05-02  Bruno Haible  <bruno@clisp.org>
5342
5343         * m4/full-header-path.m4 (gl_FULL_HEADER_PATH): Move the include_next
5344         test from here...
5345         * m4/_inttypes_h.m4 (gl_INTTYPES_H): ... to here.
5346
5347 2006-04-29  Bruno Haible  <bruno@clisp.org>
5348
5349         * lib/gcd.c: Use WORD_T and GCD instead of unsigned long and gcd.
5350         Suggested by Oskar Liljeblad <oskar@osk.mine.nu>.
5351
5352 2006-04-29  Bruno Haible  <bruno@clisp.org>
5353
5354         * gnulib-tool: Make --update option actually work.
5355
5356 2006-04-29  Bruno Haible  <bruno@clisp.org>
5357
5358         * doc/gcd.texi: New file.
5359         * doc/gnulib.texi: Include it.
5360
5361 2006-04-25  Paul Eggert  <eggert@cs.ucla.edu>
5362
5363         * lib/getdate.y (get_date): When adding relative date, start with the
5364         initial time, not with the result of the first mktime call.
5365
5366 2006-04-25  Bruno Haible  <bruno@clisp.org>
5367
5368         * gnulib-tool (func_import): Output the include directives in three
5369         blocks, sorted separately.
5370         Reported by Ben Pfaff <blp@cs.stanford.edu>.
5371
5372 2006-04-24  Paul Eggert  <eggert@cs.ucla.edu>
5373
5374         * m4/unlink-busy.m4 (gl_FUNC_UNLINK_BUSY_TEXT): Use prototype
5375         to define main with arguments, for C++.  Reported by Eric Blake.
5376         * m4/c-stack.m4 (AC_SYS_XSI_STACK_OVERFLOW_HEURISTIC):
5377         Prefer 'int main ()' to 'int main (void)', for C++.
5378         * m4/getcwd-path-max.m4 (gl_FUNC_GETCWD_PATH_MAX): Likewise.
5379         * m4/fsusage.m4 (gl_FILE_SYSTEM_USAGE): Specify a return type
5380         for 'main', for C99 and C++.
5381
5382 2006-04-24  Paul Eggert  <eggert@cs.ucla.edu>
5383
5384         * m4/fsusage.m4 (gl_FILE_SYSTEM_USAGE): Use return, not exit.
5385         Don't assume that exit status -1 is valid.
5386         * m4/nanosleep.m4 (gl_FUNC_NANOSLEEP): Likewise.
5387         * m4/putenv.m4 (gl_FUNC_PUTENV): Likewise.
5388         * m4/rmdir-errno.m4 (gl_FUNC_RMDIR_NOTEMPTY): Likewise.
5389         * m4/readdir.m4 (GL_FUNC_READDIR): Include <stdlib.h>.
5390         * m4/rename.m4 (vb_FUNC_RENAME): Likewise.
5391         * m4/unlink-busy.m4 (gl_FUNC_UNLINK_BUSY_TEXT): Use AC_RUN_IFELSE,
5392         not AC_TRY_RUN.  Use return, not exit.  Don't assume that
5393         functions can be used without declaring them, or that you can
5394         exit with status -1.
5395         * m4/utimes-null.m4 (gl_FUNC_UTIMES_NULL): Likewise.
5396
5397 2006-04-24  Karl Berry  <karl@gnu.org>
5398
5399         * config/srclist.txt (longdouble.m4): sync lost.
5400
5401 2006-04-24  Eric Blake  <ebb9@byu.net>
5402
5403         * m4/strerror_r.m4 (AC_FUNC_STRERROR_R): Avoid unused variable warning.
5404
5405 2006-04-24  Bruno Haible  <bruno@clisp.org>
5406
5407         * m4/poll.m4 (gl_FUNC_POLL): When cross-compiling, reject also the
5408         poll() implementation in AIX.
5409         Reported by Ralf Wildenhues <Ralf.Wildenhues@gmx.de>.
5410
5411 2006-04-24  Bruno Haible  <bruno@clisp.org>
5412
5413         * m4/poll.m4 (gl_FUNC_POLL): Rearrange code, so that POLL_H gets
5414         assigned exactly once.
5415
5416 2006-04-23  Claudio Fontana  <claudio@gnu.org>
5417             Bruno Haible  <bruno@clisp.org>
5418
5419         * modules/gettext (Makefile.am): Add a -I flag for <libintl.h>.
5420         * gnulib-tool (func_emit_lib_Makefile_am): Emit empty default value
5421         for AM_CPPFLAGS.
5422
5423 2006-04-23  Bruno Haible  <bruno@clisp.org>
5424
5425         * modules/copy-file: Depend on unistd.
5426         * modules/execute: Likewise.
5427         * modules/fatal-signal: Likewise.
5428         * modules/findprog: Likewise.
5429         * modules/mkdtemp : Likewise.
5430         * modules/pipe: Likewise.
5431         * modules/wait-process: Likewise.
5432
5433 2006-04-23  Bruno Haible  <bruno@clisp.org>
5434
5435         * lib/fwriteerror.c (fwriteerror): Call fclose also when an error
5436         condition was already detected.
5437         Reported by Ben Pfaff <blp@cs.stanford.edu>.
5438
5439 2006-04-23  Bruno Haible  <bruno@clisp.org>
5440
5441         * lib/copy-file.c: Include <unistd.h> unconditionally.
5442         * lib/execute.c: Likewise.
5443         * lib/fatal-signal.c: Likewise.
5444         * lib/findprog.c: Likewise.
5445         * lib/mkdtemp.c: Likewise.
5446         * lib/pipe.h: Likewise.
5447         * lib/pipe.c: Likewise.
5448         * lib/wait-process.h: Likewise.
5449
5450 2006-04-23  Bruno Haible  <bruno@clisp.org>
5451
5452         * gnulib-tool (func_usage): Fix --import description. Document
5453         --update.
5454         (func_import): Create temporary file in a temporary directory, if
5455         --dry-run is specified. Silence errors from 'grep' when there are no
5456         m4 files in $m4dir.
5457         (func_create_testdir): Silence errors from 'grep' when there are no
5458         m4 files in $m4dir.
5459         Reported by Karl Berry <karl@freefriends.org>.
5460
5461 2006-04-20  Bruno Haible  <bruno@clisp.org>
5462
5463         * m4/argp.m4 (gl_ARGP): Don't call AC_CHECK_DECLS_ONCE with more than
5464         one argument, so that the code will be portable to Autoconf 2.60.
5465         * m4/getlogin_r.m4 (gl_PREREQ_GETLOGIN_R): Likewise.
5466         * m4/getpass.m4 (gl_PREREQ_GETPASS): Likewise.
5467         * m4/unlocked-io.m4 (gl_FUNC_GLIBC_UNLOCKED_IO): Likewise.
5468
5469 2006-04-19  Derek Price  <derek@ximbiot.com>
5470             Eric Blake  <ebb9@byu.net>
5471
5472         * m4/full-header-path.m4 (gl_FULL_HEADER_PATH): Use </full/path.h>
5473         rather than "/full/path.h".  Update comment to match.  Shorten &
5474         generalize m4_translit call via AS_TR_CPP.
5475
5476 2006-04-19  Derek Price  <derek@ximbiot.com>
5477             Eric Blake  <ebb9@byu.net>
5478
5479         * lib/inttypes.h: Correct grammar in comment.
5480
5481 2006-04-18  Derek Price  <derek@ximbiot.com>
5482             Paul Eggert  <eggert@cs.ucla.edu>
5483
5484         * modules/inttypes: New file.
5485         * modules/strtoimax, modules/strtoumax: Depend on inttypes.
5486
5487 2006-04-18  Derek Price  <derek@ximbiot.com>
5488             Paul Eggert  <eggert@cs.ucla.edu>
5489
5490         * m4/_inttypes_h.m4, full-header-path.m4, include_next: New files.
5491
5492 2006-04-18  Derek Price  <derek@ximbiot.com>
5493             Paul Eggert  <eggert@cs.ucla.edu>
5494
5495         * lib/inttypes.h: New file.
5496         * lib/strtoimax.c: Assume <inttypes.h>.
5497
5498 2006-04-15  Paul Eggert  <eggert@cs.ucla.edu>
5499
5500         * lib/utimens.c (futimens): glibc futimesat messes up if /proc
5501         isn't mounted.  Problem reported by Kir Kolyshkin.
5502
5503 2006-04-13  Paul Eggert  <eggert@cs.ucla.edu>
5504
5505         * lib/regcomp.c (init_dfa): Don't use wchar_t or wctype_t if
5506         RE_ENABLE_I18N is not defined.  Problem reported by Mark D. Baushke via
5507         Derek R. Price.
5508         * lib/regex.h (RE_DUP_MAX): Update comment to match current
5509         implementation.
5510
5511 2006-04-12  Eric Blake  <ebb9@byu.net>
5512
5513         * modules/time_r (Makefile.am): Remove lib_SOURCES line, as this
5514         is now done automatically by the corresponding Autoconf macro.
5515
5516 2006-04-11  Paul Eggert  <eggert@cs.ucla.edu>
5517
5518         * m4/time_r.m4 (gl_TIME_R): Add AC_LIBSOURCES for time_r.c and
5519         time_r.h.
5520
5521 2006-04-09  Paul Eggert  <eggert@cs.ucla.edu>
5522
5523         Merge regex changes from libc, removing some of our
5524         POSIX-conformance changes that were rejected and redoing them in a
5525         less-intrusive way.
5526
5527         * lib/regcomp.c (re_compile_internal, init_dfa):
5528         Length arg is now size_t, not Idx.  All uses changed.
5529         (peek_token): Forward decl now says internal_function.
5530         (__re_error_msgid, __re_error_msgid_idx):
5531         Now static rather than extern with attribute_hidden.
5532         (re_compile_pattern) [!defined _LIBC]: Use K&R-style defn.
5533         For some reason libc prefers K&R style defns for external functions.
5534         (regerror) [!defined _LIBC]: Likewise.
5535         (re_set_syntax, re_compile_fastmap, regcomp, regfree, re_comp):
5536         (seek_collating_symbol_entry, lookup_collation_sequence_value):
5537         (build_range_exp, build_collating_symbol):
5538         Use K&R-style defn.
5539         (re_compile_fastmap): Use '\0' to memset, not 0.
5540         (utf8_sb_map): Make the calculations more obvious.
5541         (init_dfa, parse_bracket_exp, build_charclass_op):
5542         Call calloc and cast result, as glibc does.
5543         (init_word_char, fetch_token, peek_token, peek_token_bracket):
5544         (build_range_exp, build_collating_symbol):
5545         Now internal functions.
5546
5547         * lib/regex.c [!defined _LIBC]: Allow compiling with C++ compilers.
5548
5549         * lib/regex.h (__USE_GNU_REGEX): New macro.  Don't depend on
5550         _REGEX_SOURCE any more; depend on _GNU_SOURCE instead.
5551         Don't depend on VMS; depend on __VMS instead, for POSIX
5552         namespace cleanness.
5553         (regoff_t): Define to ssize_t, not long int.
5554
5555         Remove the REG_ macros named below.  Instead, make the old names
5556         (e.g., RE_BACKSLASH_ESCAPE_IN_LISTS) visible only if
5557         __USE_GNU_REGEX.
5558         (REG_BACKSLASH_ESCAPE_IN_LISTS):
5559         (REG_BK_PLUS_QM, REG_CHAR_CLASSES, REG_CONTEXT_INDEP_ANCHORS):
5560         (REG_CONTEXT_INDEP_OPS, REG_CONTEXT_INVALID_OPS):
5561         (REG_DOT_NEWLINE, REG_DOT_NOT_NULL, REG_HAT_LISTS_NOT_NEWLINE):
5562         (REG_INTERVALS, REG_LIMITED_OPS, REG_NEWLINE_ALT):
5563         (REG_NO_BK_BRACES, REG_NO_BK_PARENS, REG_NO_BK_REFS):
5564         (REG_NO_BK_VBAR, REG_NO_EMPTY_RANGES):
5565         (REG_UNMATCHED_RIGHT_PAREN_ORD, REG_NO_POSIX_BACKTRACKING):
5566         (REG_NO_GNU_OPS, REG_DEBUG, REG_INVALID_INTERVAL_ORD):
5567         (REG_IGNORE_CASE, REG_CARET_ANCHORS_HERE):
5568         (REG_CONTEXT_INVALID_DUP, REG_NO_SUB, REG_SYNTAX_EMACS):
5569         (REG_SYNTAX_AWK, REG_SYNTAX_GNU_AWK, REG_SYNTAX_POSIX_AWK):
5570         (REG_SYNTAX_GREP, REG_SYNTAX_EGREP, REG_SYNTAX_POSIX_EGREP):
5571         (REG_SYNTAX_ED, REG_SYNTAX_SED, _REG_SYNTAX_POSIX_COMMON):
5572         (REG_SYNTAX_POSIX_BASIC, REG_SYNTAX_POSIX_MINIMAL_BASIC):
5573         (REG_SYNTAX_POSIX_EXTENDED, REG_SYNTAX_POSIX_MINIMAL_EXTENDED):
5574         (REG_DUP_MAX, REG_UNALLOCATED, REG_REALLOCATE, REG_FIXED):
5575         (REG_NREGS):
5576         Remove.  All uses replaced by the old RE_* names.
5577         (RE_BACKSLASH_ESCAPE_IN_LISTS):
5578         (RE_BK_PLUS_QM, RE_CHAR_CLASSES, RE_CONTEXT_INDEP_ANCHORS):
5579         (RE_CONTEXT_INDEP_OPS, RE_CONTEXT_INVALID_OPS):
5580         (RE_DOT_NEWLINE, RE_DOT_NOT_NULL, RE_HAT_LISTS_NOT_NEWLINE):
5581         (RE_INTERVALS, RE_LIMITED_OPS, RE_NEWLINE_ALT):
5582         (RE_NO_BK_BRACES, RE_NO_BK_PARENS, RE_NO_BK_REFS):
5583         (RE_NO_BK_VBAR, RE_NO_EMPTY_RANGES):
5584         (RE_UNMATCHED_RIGHT_PAREN_ORD, RE_NO_POSIX_BACKTRACKING):
5585         (RE_NO_GNU_OPS, RE_DEBUG, RE_INVALID_INTERVAL_ORD):
5586         (RE_IGNORE_CASE, RE_CARET_ANCHORS_HERE):
5587         (RE_CONTEXT_INVALID_DUP, RE_NO_SUB):
5588         Don't bother having these macros be independent of each others'
5589         values, since they no longer exist in the POSIX name space.
5590
5591         Rename the following member names back to their old names,
5592         unless !__USE_GNU_REGEX.  All uses changed back.
5593         (buffer): Renamed from re_buffer.
5594         (allocated): Renamed from re_allocated.
5595         (used): Renamed from re_used.
5596         (syntax): Renamed from re_syntax.
5597         (fastmap): Renamed from re_fastmap.
5598         (translate): Renamed from re_translate.
5599         (can_be_null): Renamed from re_can_be_null.
5600         (regs_allocated): Renamed from re_regs_allocated.
5601         (fastmap_accurate): Renamed from re_fastmap_accurate.
5602         (no_sub): Renamed from re_no_sub.
5603         (not_bol): Renamed from re_not_bol.
5604         (not_eol): Renamed from re_not_eol.
5605         (newline_anchor): Renamed from re_newline_anchor.
5606         (num_regs): Renamed from rm_num_regs.
5607         (start): Renamed from rm_start.
5608         (end): Renamed from rm_end.
5609
5610         (free_state): Move up a bit.
5611
5612         * lib/regex_internal.h (inline) [__GNUC__ < 3 && defined _LIBC]:
5613         #define to be empty.
5614         (ASCII_CHARS): New macro, replacing all uses of 0x80 and/or SBC_MAX / 2
5615         when that is what is intended.
5616         (SBC_MAX): Define to UCHAR_MAX + 1, not 256.
5617         (__re_error_msgid, __re_error_msgid_idx): Remove decls; not needed.
5618         (MAX): New macro.
5619         (re_xmalloc, re_calloc, re_xrealloc, re_x2realloc): Remove.
5620         All uses changed back to re_malloc, etc.  It's now the caller's
5621         responsibility to check for overflow; all callers changed.
5622         (re_alloc_oversized, re_x2alloc_oversized, re_xnmalloc, re_xnrealloc):
5623         (re_x2nrealloc): Remove.
5624         (free_state): Remove decl.
5625
5626         * lib/regexc.c (regexec, re_match, re_search, re_match_2, re_search_2):
5627         (re_set_registers, re_exec):
5628         Use K&R-style defn.
5629
5630         2006-01-31  Roland McGrath  <roland@redhat.com>
5631
5632         * lib/regcomp.c (calc_eclosure_iter): Remove dead variables.
5633         Reported by Mike Frysinger <vapier@gentoo.org>.
5634
5635         2006-01-15  Andreas Jaeger  <aj@suse.de>
5636
5637         [BZ #1950]
5638         * lib/regex_internal.c (re_string_reconstruct): Adjust for
5639         build_wcs_upper_buffer change.
5640         (build_wcs_upper_buffer): Change return type.
5641
5642         2005-12-10  Ulrich Drepper  <drepper@redhat.com>
5643
5644         * lib/regex_internal.h: Include <stdint.h> if available.
5645
5646         2005-12-06  Paolo Bonzini  <bonzini@gnu.org>
5647
5648         * lib/regex_internal.h (SIZE_MAX): Provide a default definition.
5649
5650         2005-10-14  Ulrich Drepper  <drepper@redhat.com>
5651
5652         * lib/regcomp.c: Adjust for changed secondary hash function.
5653
5654         2005-09-30  Ulrich Drepper  <drepper@redhat.com>
5655
5656         * lib/regex.h: Pretty printing.
5657         Clean up namespace a bit.
5658
5659         2005-09-30  Jakub Jelinek  <jakub@redhat.com>
5660
5661         * lib/regexec.c (update_cur_sifted_state, check_arrival,
5662         check_arrival_add_next_nodes): Avoid using uninitialized variable.
5663
5664         2005-09-06  Paul Eggert  <eggert@cs.ucla.edu>
5665                     Ulrich Drepper  <drepper@redhat.com>
5666
5667         [BZ #1302]
5668         * lib/regex_internal.h (bitset_t): Renamed from bitset.  All uses
5669         changed.
5670         (bitset_word_t): Renamed from bitset_word.  All uses changed.
5671
5672         2005-09-22  Ulrich Drepper  <drepper@redhat.com>
5673
5674         [BZ #281]
5675         * lib/regex.h: Define RE_TRANSLATE_TYPE as unsigned char *.
5676         * lib/regcomp.c: Remove unnecessary uses of
5677         unsigned RE_TRANSLATE_TYPE.
5678         * lib/regex_internal.h: Likewise.
5679         * lib/regex_internal.c: Likewise.
5680         * lib/regexec.c: Likewise.
5681         Based on a patch by Stepan Kasal <kasal@ucw.cz>.
5682
5683         2005-09-07  Ulrich Drepper  <drepper@redhat.com>
5684
5685         * lib/regexec.c (find_recover_state): Remove unnecessary
5686         initialization.
5687         (transit_state_bkref): Make DFA a const pointer.
5688         (get_subexp): Likewise.
5689         (check_arrival): Likewise.
5690         (update_cur_sifted_state): Likewise.
5691         (re_search_internal): Likewise.
5692         (prune_impossible_nodes): Likewise.
5693         (acquire_init_state_context): Likewise.
5694         (proceed_next_node): Likewise.
5695         (set_regs): Likewise.
5696         (free_fail_stack_return): Likewise.
5697         (check_arrival_expand_ecl): Mark DFA parameter as const.
5698         (check_arrival_expand_ecl_sub): Likewise.
5699         (check_subexp_limits): Likewise.
5700         (sub_epsilon_src_nodes):  Likewise.
5701         (add_epsilon_src_nodes):  Likewise.
5702         (merge_state_array): Likewise.
5703         (update_regs): Likewise.
5704         (build_trtable): Likewise.
5705         (sift_states_backward): Mark MCTX parameter as const.
5706         (build_sifted_states): Likewise.
5707         (update_cur_sifted_state): Likewise.
5708         (sift_states_mkref): Likewise.
5709         (check_arrival_expand_ecl): Mark eclosure as const.
5710         (check_dst_limits_calc_pos_1): Likewise.
5711         * lib/regex_internal.h (re_match_context_t): Make dfa a const
5712         pointer.
5713
5714         2005-09-06  Ulrich Drepper  <drepper@redhat.com>
5715
5716         * lib/regexec.c (merge_state_with_log): Define dfa as const pointer.
5717         (transit_state_sb): Likewise.
5718         (transit_state_mb): Likewise.
5719         (sift_states_iter_mb): Likewise.
5720         (check_arrival_add_next_nodes): Likewise.
5721         (check_node_accept_bytes): Change first parameter to pointer-to-const.
5722         [_LIBC] (re_search_2_stub): Use mempcpy.
5723
5724         * lib/regex_internal.c (re_string_reconstruct): Avoid calling
5725         mbrtowc for very simple UTF-8 case.
5726
5727         * lib/regex_internal.c (re_acquire_state): Make DFA pointer arg
5728         a pointer-to-const.
5729         (re_acquire_state_context): Likewise.
5730         * lib/regex_internal.h: Adjust prototypes.
5731
5732         * lib/regex.c: Prevent using C++ compilers.
5733
5734         * lib/regex_internal.c (re_acquire_state): Minor code rearrangement.
5735         (re_acquire_state_context): Likewise.
5736
5737 2006-04-09  Paul Eggert  <eggert@cs.ucla.edu>
5738
5739         * modules/regex (Depends-on): Add ssize_t.
5740
5741 2006-04-09  Paul Eggert  <eggert@cs.ucla.edu>
5742
5743         * m4/regex.m4 (gl_REGEX): Check for new glibc interface to
5744         translation table.
5745
5746 2006-04-09  Paul Eggert  <eggert@cs.ucla.edu>
5747
5748         * doc/gnulib-tool.texi (Modified imports): pathname -> file name.
5749
5750 2006-03-29  Mark D. Baushke  <mdb@gnu.org>
5751             Bruno Haible  <bruno@clisp.org>
5752
5753         * lib/stdint_.h: On OpenBSD, don't redefine types already included in
5754         <sys/types.h> and <inttypes.h>.
5755
5756 2006-03-25  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
5757
5758         * m4/argz.m4 (gl_FUNC_ARGZ): If we define `error_t', also define
5759         `__error_t_defined', so argp.h will not typedef the former.
5760
5761 2006-03-25  Paul Eggert  <eggert@cs.ucla.edu>
5762
5763         * m4/regex.m4 (gl_REGEX): Don't insist on REG_SYNTAX_POSIX_EGREP,
5764         REG_SYNTAX_EMACS, and REG_IGNORE_CASE.  Settle for the traditional
5765         glibc names.  Even if glibc is changed to conform to POSIX, the
5766         traditional names will be available anyway, since regex depends on
5767         the extensions module.  Also, fix a longstanding typo in the
5768         implementation of Spencer ERE test #75 from grep 2.3.  Problems
5769         reported by Emanuele Giaquinta.  Also, change sense of cached
5770         variable, so that the message makes sense.
5771
5772 2006-03-24  Simon Josefsson  <jas@extundo.com>
5773
5774         * lib/base64.c: Fix problems reported by Eric Blake <ebb9@byu.net>,
5775         including some doc fixes.
5776         (base64_encode_alloc): Fix +1 bug on allocation failures.
5777
5778 2006-03-24  Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
5779
5780         * lib/base64.c (base64_encode): Do not read past end of array with
5781         unsanitized input on systems with CHAR_BIT > 8.
5782
5783 2006-03-24  Eric Blake  <ebb9@byu.net>
5784
5785         * lib/time_r.c (copy_string_result): Remove, as it is no longer used.
5786
5787 2006-03-22  Karl Berry  <karl@gnu.org>
5788
5789         * config/srclist.txt (*setenv.[ch]): get from coreutils.
5790         * config/srclistvars.sh (COREUTILS): new var.
5791
5792 2006-03-17  Jim Meyering  <jim@meyering.net>
5793
5794         * m4/regex.m4 (gl_REGEX): Fix typo in last change:
5795         s/_REGEX_WIDE_OFFSETS/_REGEX_LARGE_OFFSETS/.
5796
5797 2006-03-16  Paul Eggert  <eggert@cs.ucla.edu>
5798
5799         * m4/regex.m4 (gl_REGEX): Don't check for off_t, since the code
5800         no longer needs it.  Instead, check that regoff_t is as least
5801         as wide as ptrdiff_t.
5802
5803         Don't define _REGEX_WIDE_OFFSETS unless using the included regex,
5804         so that our regex.h stays compatible with the installed regex.
5805         This is helpful for installers who configure --without-included-regex.
5806         Problem reported by Emanuele Giaquinta.
5807
5808 2006-03-16  Paul Eggert  <eggert@cs.ucla.edu>
5809
5810         * lib/regex.h (regoff_t) [defined _REGEX_LARGE_OFFSETS]:
5811         Typedef to long int, not to off_, as POSIX will likely change
5812         in that direction.
5813
5814 2006-03-15  Eric Blake  <ebb9@byu.net>
5815
5816         * m4/dirfd.m4 (gl_FUNC_DIRFD): Use AC_REQUIRE for AC_HEADER_DIRENT.
5817
5818 2006-03-13  Sergey Poznyakoff  <gray@gnu.org.ua>
5819
5820         * lib/argp-help.c (validate_uparams): Fix typo
5821         * lib/argp-parse.c (argp_default_options): Consistently begin help
5822         messages with a lowercase letter.
5823
5824 2006-03-11  Paul Eggert  <eggert@cs.ucla.edu>
5825
5826         * lib/time_r.h (asctime_r, ctime_r): Remove.  These functions can
5827         overrun buffers and shouldn't be used (much as gets shouldn't be
5828         used).
5829         * lib/time_r.c (asctime_r, ctime_r): Likewise.
5830
5831 2006-03-08  Simon Josefsson  <jas@extundo.com>
5832
5833         * m4/gc-random.m4: Permit 'no' as variable values and fix warnings,
5834         suggested by Ralf Wildenhues <Ralf.Wildenhues@gmx.de>.
5835
5836 2006-03-08  Simon Josefsson  <jas@extundo.com>
5837
5838         * m4/gc-random.m4: Call AC_CANONICAL_HOST and use $host_os instead of
5839         $target, suggested by Ralf Wildenhues <Ralf.Wildenhues@gmx.de>.
5840
5841 2006-03-08  Simon Josefsson  <jas@extundo.com>
5842
5843         * lib/gc-gnulib.c (randomize): Don't open files called 'no', they
5844         signal that configure disabled the device.
5845
5846 2006-03-08  Simon Josefsson  <jas@extundo.com>
5847
5848         * build-aux/maint.mk: Fix refresh-po, to handle no translated
5849         languages.
5850
5851 2006-03-07  Simon Josefsson  <jas@extundo.com>
5852
5853         * modules/getopt (Depends-on): Add unistd.
5854
5855         * modules/unistd: New file.
5856
5857 2006-03-07  Simon Josefsson  <jas@extundo.com>
5858
5859         * modules/gc-random: New file.
5860
5861 2006-03-07  Simon Josefsson  <jas@extundo.com>
5862
5863         * m4/unistd_h.m4: New file.
5864
5865 2006-03-07  Simon Josefsson  <jas@extundo.com>
5866
5867         * m4/readline.m4 (gl_FUNC_READLINE): Rewrite the cached part of the
5868         test to be side-effect free by storing the result in the cache
5869         variable gl_cv_lib_readline, and moving the assignment of
5870         LIBREADLINE and LTLIBREADLINE outside the COMMANDS-TO-SET-IT.
5871         From Ralf Wildenhues <Ralf.Wildenhues@gmx.de>.
5872
5873 2006-03-07  Simon Josefsson  <jas@extundo.com>
5874
5875         * m4/gc-random.m4: New file, mostly from gc.m4.  Warn instead of
5876         error on missing devices (the functions will return an error).
5877
5878         * m4/gc.m4: Move random stuff to gc-random.m4
5879
5880 2006-03-07  Simon Josefsson  <jas@extundo.com>
5881
5882         * lib/unistd_.h: New file.
5883
5884 2006-03-07  Simon Josefsson  <jas@extundo.com>
5885
5886         * lib/gc-libgcrypt.c, gc-gnulib.c: Use GC_USE_RANDOM.
5887
5888 2006-03-07  Paul Eggert  <eggert@cs.ucla.edu>
5889
5890         * m4/unistd_h.m4 (gl_HEADER_UNISTD): Rename, to match modules file.
5891         Problem reported by Juan Manuel Guerrero.
5892
5893 2006-03-07  Paul Eggert  <eggert@cs.ucla.edu>
5894
5895         * lib/c-stack.c: Include unistd.h unconditionally, since we now assume
5896         the unistd module.
5897         * lib/getlogin_r.c: Likewise.
5898         * lib/getlogin_r.h: Likewise.
5899         * lib/glob.c: Likewise.
5900         * lib/pagealign_alloc.c: Likewise.
5901         * lib/unistd_.h: Remove; no longer needed.
5902
5903 2006-03-07  Paul Eggert  <eggert@cs.ucla.edu>
5904
5905         * MODULES.html.sh (Support for systems lacking POSIX:2001):
5906         Add unistd.
5907         * modules/c-stack (Depends-on): Add unistd.
5908         * modules/getlogin_r: Likewise.
5909         * modules/glob: Likewise.
5910         * modules/pagealign_alloc: Likewise.
5911         * modules/unistd (Files): Remove lib/unistd_.h.
5912         (EXTRA_DIST): Remove.
5913         (unistd.h): Create using 'echo' rather than 'cp', so that we don't
5914         need unistd_.h.
5915         (MOSTLYCLEANFILES): Remove unistd.h-t.
5916
5917 2006-03-03  Simon Josefsson  <jas@extundo.com>
5918
5919         * build-aux/maint.mk: Add several syntax checks from CoreUtils.
5920
5921 2006-03-03  Simon Josefsson  <jas@extundo.com>
5922
5923         * build-aux/maint.mk: Add refresh-po rule, based on ideas from
5924         libidn and bison.
5925
5926 2006-03-03  Simon Josefsson  <jas@extundo.com>
5927
5928         * build-aux/maint.mk: Add indent target.
5929
5930 2006-03-03  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de> (tiny change)
5931
5932         * m4/poll.m4 (gl_FUNC_POLL): If we deem poll(2) unacceptable, use
5933         our replacement poll.h in any case, to avoid a differing
5934         declaration from a system header.  Seen on AIX.
5935
5936 2006-03-01  Simon Josefsson  <jas@extundo.com>
5937
5938         * lib/readline.c: Fix typo, tiny patch from Stepan Kasal
5939         <kasal@ucw.cz>.
5940
5941 2006-03-01  Paul Eggert  <eggert@cs.ucla.edu>
5942
5943         * modules/gettime (Depends-on): Add extensions module.
5944         * modules/nanosleep (Depends-on): Likewise.
5945         * modules/settime (Depends-on): Likewise.
5946
5947 2006-03-01  Paul Eggert  <eggert@cs.ucla.edu>
5948
5949         * m4/clock_time.m4 (gl_CLOCK_TIME): Require gl_USE_SYSTEM_EXTENSIONS,
5950         not merely AC_GNU_SOURCE, for the benefit of Solaris 10 when compiled
5951         pedantically.
5952         * m4/nanosleep.m4 (gl_FUNC_NANOSLEEP): Likewise.
5953         * m4/timespec.m4 (gl_TIMESPEC): Likewise.
5954
5955         * m4/extensions.m4 (gl_USE_SYSTEM_EXTENSIONS): Use "=" with "test",
5956         not "==".  Reported by Ralf Wildenhues.
5957
5958 2006-03-01  Karl Berry  <karl@gnu.org>
5959
5960         * doc/Copyright/request-*: new files, synced from gnuorg.
5961
5962 2006-03-01  Karl Berry  <karl@gnu.org>
5963
5964         * config/srclist.txt (Copyright/*): new entries.
5965
5966 2006-02-28  Simon Josefsson  <jas@extundo.com>
5967
5968         * lib/getopt.c: Protect #include of unistd.h, for MSVS.
5969
5970 2006-02-27  Simon Josefsson  <jas@extundo.com>
5971
5972         * lib/base64.h: Indent #define's.  From Jim Meyering
5973         <jim@meyering.net>.
5974
5975 2006-02-27  Jim Meyering  <jim@meyering.net>
5976
5977         Revert the change of 2006-02-24, so these files can continue
5978         to be sync'd from gettext.
5979         * lib/mkdtemp.c, setenv.c, unsetenv.c: *Un*-normalize inclusion
5980         of `config.h'.
5981
5982 2006-02-26  Paul Eggert  <eggert@cs.ucla.edu>
5983
5984         * modules/intprops: New file.
5985         * MODULES.html.sh (Numeric conversion functions <stdlib.h>):
5986         Add intprops.
5987         * modules/getloadavg (Files): Remove lib/intprops.h.
5988         (Depends-on): Add intprops.
5989         * modules/human: Likewise.
5990         * modules/inttostr: Likewise.
5991         * modules/openat: Likewise.
5992         * modules/sig2str: Likewise.
5993         * modules/userspec: Likewise.
5994         * modules/utimecmp: Likewise.
5995         * modules/xnanosleep: Likewise.
5996         * modules/xstrtol: Likewise.
5997
5998 2006-02-24  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>  (tiny changes)
5999
6000         * modules/xstrtod: Omit xstrtod.h, xstrtod.c; they're in LIB_SOURCES.
6001         * modules/lock-tests (TESTS): Use $(EXEEXT).
6002         * modules/tls-tests: Likewise.
6003         * modules/argp-tests: Likewise.
6004         (check_PROGRAMS): New var, replacing...
6005         (noinst_PROGRAMS, test_argp_SOURCES): Remove.
6006
6007 2006-02-24  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
6008
6009         * lib/mkdtemp.c, lib/setenv.c, lib/unsetenv.c: Normalize inclusion of
6010         `config.h'.
6011
6012 2006-02-24  Paul Eggert  <eggert@cs.ucla.edu>
6013
6014         * lib/glob.c: Say "invalid" rather than "illegal" in comments.
6015
6016 2006-02-22  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
6017
6018         Sync from coreutils.
6019         * m4/mkdir-p.m4 (gl_MKDIR_PARENTS): Require gl_FUNC_LCHMOD and
6020         gl_CHDIR_SAFER.
6021
6022 2006-02-22  Jim Meyering  <jim@meyering.net>
6023
6024         Sync from coreutils.
6025         * m4/chdir-safer.m4: New file.
6026
6027 2006-02-20  Paul Eggert  <eggert@cs.ucla.edu>
6028
6029         * lib/getcwd.c (AT_FDCWD): Work around a bug in Solaris 9 and 10, where
6030         AT_FDCWD exceeds INT_MAX.
6031         * lib/openat.h (AT_FDCWD): Likewise.
6032
6033 2006-02-17  Eric Blake  <address@hidden>
6034
6035         * m4/getaddrinfo.m4 (gl_GETADDRINFO): Fix caching error.
6036
6037 2006-02-16  Simon Josefsson  <jas@extundo.com>
6038
6039         * modules/getaddrinfo (Depends-on): Add sys_socket.
6040
6041 2006-02-15  Simon Josefsson  <jas@extundo.com>
6042
6043         * build-aux/maint.mk: Add dsyntax-check rule.
6044
6045 2006-02-15  Eric Blake  <ebb9@byu.net>
6046
6047         * m4/sys_socket_h.m4 (gl_HEADER_SYS_SOCKET): Don't attempt using
6048         winsock2.h or ws2tcpip.h when sys/socket.h is present. Fixes
6049         'present but cannot compile' warnings on cygwin.
6050         * m4/socklen.m4 (gl_TYPE_SOCKLEN_T): Use gl_HEADER_SYS_SOCKET.  Don't
6051         use ws2tcpip.h if sys/socket.h works.
6052         * m4/getaddrinfo.m4 (gl_PREREQ_GETADDRINFO): Use gl_HEADER_SYS_SOCKET.
6053         (gl_GETADDRINFO): Don't use ws2tcpip.h when sys/socket.h is present.
6054
6055 2006-02-14  Simon Josefsson  <jas@extundo.com>
6056
6057         * modules/maintainer-makefile (Files): Rename.
6058
6059         * build-aux/GNUmakefile: Rename Makefile.maint to maint.mk
6060         and (the local) Makefile.cfg to maint-cfg.mk.
6061
6062         * build-aux/Makefile.maint, build-aux/maint.mk: Renamed the former
6063         to the latter.
6064
6065         * modules/maintainer-makefile: New module.
6066
6067         * build-aux/Makefile.maint: New file, from GNU CoreUtils, although
6068         severaly stripped to make it possible to build it up from scratch
6069         with reliable tests.
6070
6071         * build-aux/GNUmakefile: New file, from GNU CoreUtils with some
6072         fixes to permit overriding the default actions when configure and
6073         makefile are not available.
6074
6075 2006-02-14  Paul Eggert  <eggert@cs.ucla.edu>
6076
6077         Sync from coreutils.
6078         * modules/lstat (Depends-on): Don't depend on xalloc.
6079         (License): Change from GPL to LGPL, since this is now simply a
6080         replacement for a libc function.
6081
6082 2006-02-14  Jim Meyering  <jim@meyering.net>
6083
6084         Sync from coreutils.
6085
6086         Eliminate the unwelcome (albeit unlikely) possibility of xmalloc
6087         failure on deficient systems, and simplify gnulib lgpl dependencies.
6088         * lib/lstat.c (rpl_lstat): Rewrite to use stat() in place of the
6089         xmalloc/lstat combination.  Based on a patch from Bruno Haible.
6090
6091         * lib/xalloc-die.c: Remove unused definition of N_.
6092
6093 2006-02-14  Jim Meyering  <jim@meyering.net>
6094
6095         Sync from coreutils.
6096         * m4/ls-mntd-fs.m4 (AC_FUNC_GETMNTENT): Invoke
6097         AC_CHECK_FUNCS(getmntent) unconditionally so that tests of
6098         $ac_cv_func_getmntent (e.g., in gl_LIST_MOUNTED_FILE_SYSTEMS) need not
6099         double-quote uses of that variable, to accommodate the rare case in
6100         which getmntent is available in none of the libraries checked.  This
6101         happens at least on FreeBSD 5.0.
6102
6103 2006-02-13  Simon Josefsson  <jas@extundo.com>
6104
6105         * gnulib-tool (Usage): Fix --import, from
6106         karl@freefriends.org (Karl Berry).
6107
6108 2006-02-13  Sergey Poznyakoff  <gray@gnu.org.ua>
6109
6110         * lib/argp-fmtstream.c: Restore another bugfix lost on 2005-12-12
6111
6112 2006-02-07  Sergey Poznyakoff  <gray@gnu.org.ua>
6113
6114         * lib/argp-namefrob.h: Restore changes accidentally lost during the
6115         "autoupdate" on 2005-12-12.
6116
6117 2006-02-07  Paul Eggert  <eggert@cs.ucla.edu>
6118
6119         * modules/closeout (Depends-on): Remove atexit.
6120
6121 2006-02-07  Paul Eggert  <eggert@cs.ucla.edu>
6122
6123         * lib/closeout.c (close_stdout): Don't assume 'bool' converts nonzero
6124         ints to 0 or 1, as this isn't true for the stdbool.h substitute.
6125
6126 2006-02-05  Paul Eggert  <eggert@cs.ucla.edu>
6127
6128         * m4/extensions.m4 (gl_USE_SYSTEM_EXTENSIONS): Don't #define
6129         __EXTENSIONS__ if this causes compilation to fail.  Problem
6130         reported by Nelson H. F. Beebe with Solaris 10 and Sun C 5.7
6131         c89 -D_XOPEN_SOURCE -D_XOPEN_SOURCE_EXTENDED.
6132
6133 2006-01-27  Paul Eggert  <eggert@cs.ucla.edu>
6134
6135         * lib/fnmatch.c (L_): Renamed from L, to work around a bug in
6136         Mac OS X 10.3.9 with GCC 3 reported by Claudio Fontana in
6137         <http://lists.gnu.org/archive/html/bug-gnulib/2006-01/msg00074.html>.
6138         All uses changed.
6139
6140 2006-01-26  Simon Josefsson  <jas@extundo.com>
6141
6142         * lib/socket_.h: Set WINVER to 0x0501, to make sure getaddrinfo
6143         prototype is visible on mingw32.
6144
6145         * lib/getaddrinfo.h: Define EAI_ADDRFAMILY and EAI_SYSTEM if not set,
6146         for mingw32.
6147
6148         * lib/gai_strerror.c, getaddrinfo.h: Protect netdb.h #include (for
6149         mingw32).
6150
6151 2006-01-26  Paul Eggert  <eggert@cs.ucla.edu>
6152
6153         * lib/fts.c (diropen): Open with O_NOCTTY | O_NONBLOCK too.  Don't
6154         attempt to open for write; this always fails, at least on POSIX
6155         hosts.  This reinstates the 2006-01-09 change, which was
6156         inadvertently removed.
6157
6158 2006-01-26  Bruno Haible  <bruno@clisp.org>
6159
6160         * gnulib-tool (func_import): Use "trap 'exit $?' instead of "trap :".
6161         Reported by Paul Eggert.
6162
6163 2006-01-26  Bruno Haible  <bruno@clisp.org>
6164             Paul Eggert  <eggert@cs.ucla.edu>
6165
6166         * lib/stdbool_.h (_Bool)
6167         [(! (defined __cplusplus || defined __BEOS__)
6168           && !defined __GNUC__
6169           && !(defined __HP_cc || defined __xlc__
6170                || (defined __SUNPRO_C && (__SUNPRO_C < 0x550 || __STDC__ == 1))
6171                || defined __sgi))]:
6172         #define to signed char in these cases too; this simplifies
6173         the code (so that we don't have to worry about HP-UX, AIX, SunPRO,
6174         etc., separately) and makes it more conservative.
6175
6176 2006-01-25  Simon Josefsson  <jas@extundo.com>
6177
6178         * m4/getaddrinfo.m4: Look for getaddrinfo inside ws2tcip.h and
6179         -lws2_32.  Protect sys/socket.h and netdb.h #include's.  Include
6180         ws2tcpip.h with WINVER=0x0501.  All for mingw32.
6181
6182 2006-01-25  Sergey Poznyakoff  <gray@gnu.org.ua>
6183
6184         * lib/argp-namefrob.h: Bugfix. Remove stray #
6185
6186 2006-01-25  Paul Eggert  <eggert@cs.ucla.edu>
6187
6188         * m4/stdbool.m4 (AC_HEADER_STDBOOL): Check for xlc bug if __GCC__ too,
6189         so that we test the test.
6190         Check for yet another HP-UX cc bug involving *bool |= bool.
6191
6192 2006-01-25  Karl Berry  <karl@gnu.org>
6193
6194         * config/srclist.txt (vasnprintf.c): sync lost.
6195
6196 2006-01-25  Jim Meyering  <jim@meyering.net>
6197
6198         Sync from the stable (b5) branch of coreutils:
6199
6200         * lib/fts.c (fts_children): Don't let close() clobber errno from
6201         failed fchdir().
6202
6203         * lib/fts.c (fts_stat): When following a symlink-to-directory,
6204         don't necessarily interpret stat-fails+lstat-succeeds as indicating
6205         a dangling symlink.  That can also happen at least for ELOOP.
6206         The fix: return FTS_SLNONE only when the stat errno is ENOENT.
6207         FYI, this bug predates the inclusion of fts.c in coreutils.
6208
6209         * lib/fts.c (fts_open): Put new maxarglen declaration and uses
6210         in their own block, so pre-c99 compilers don't object.
6211
6212         Avoid the double-free (first in fts_read, second in fts_close) that
6213         would occur when an `active' directory is made inaccessible (e.g.,
6214         via chmod a-x) during a traversal.
6215         * lib/fts.c (fts_read): After a failed fchdir, update sp->fts_cur
6216         before returning.  Reproduce this failure by
6217         mkdir -p a/b; cd a; chmod a-x . b
6218         Reported by Stavros Passas.
6219
6220 2006-01-25  Jim Meyering  <jim@meyering.net>
6221
6222         * lib/fileblocks.c: Remove more useless parentheses.
6223         * lib/readutmp.h: Likewise.
6224
6225 2006-01-25  Bruno Haible  <bruno@clisp.org>
6226
6227         * lib/stdbool_.h (_Bool) [IRIX cc]: Define as 'signed char', to avoid
6228         warnings.
6229         Reported by Paul Eggert.
6230
6231 2006-01-25  Bruno Haible  <bruno@clisp.org>
6232
6233         * gnulib-tool (func_import): Use "trap :" instead of "trap -" to get
6234         rid of a trap command. For Solaris sh.
6235         Reported by Mark D. Baushke <mdb@gnu.org>.
6236
6237 2006-01-24  Simon Josefsson  <jas@extundo.com>
6238
6239         * lib/socket_.h (SHUT_WR, SHUT_RDWR): Don't hardcode, suggested by
6240         Bruno.
6241
6242 2006-01-24  Karl Berry  <karl@gnu.org>
6243
6244         * config/srclist.txt (argp-namefrob.h): sync lost.
6245
6246 2006-01-24  Jim Meyering  <jim@meyering.net>
6247
6248         * modules/openat (Files): Add lib/intprops.h.
6249         From Mark D. Baushke.
6250
6251 2006-01-24  Jim Meyering  <jim@meyering.net>
6252
6253         * m4/openat.m4 (gl_FUNC_OPENAT): Add AC_LIBSOURCES([intprops.h]).
6254         Reported by Mark D. Baushke.
6255
6256 2006-01-24  Jim Meyering  <jim@meyering.net>
6257
6258         * lib/socket_.h: Remove useless parentheses in uses of cpp `defined'.
6259
6260 2006-01-24  Bruno Haible  <bruno@clisp.org>
6261
6262         * modules/strnlen (Maintainer): Change from glibc to all.
6263
6264 2006-01-24  Bruno Haible  <bruno@clisp.org>
6265
6266         * m4/stdbool.m4 (AC_HEADER_STDBOOL): Check for IBM and HP-UX bugs.
6267         Patch by Paul Eggert.
6268
6269 2006-01-24  Bruno Haible  <bruno@clisp.org>
6270
6271         * lib/stdbool_.h (_Bool) [__cplusplus]: Don't define if the compiler
6272         already has it.
6273         Report and patch by Albert Chin-A-Young  <china@thewrittenword.com> on
6274         2005-11-26.
6275
6276         * lib/stdbool_.h (_Bool) [HP-UX cc, AIX cc,xlc]: Define as
6277         'signed char' to avoid problems with the built-in _Bool type.
6278         Reported by Paul Eggert on 2005-11-26.
6279
6280 2006-01-24  Bruno Haible  <bruno@clisp.org>
6281
6282         * gnulib-tool (func_import): Avoid constructing complicated sed
6283         expressions inside backquote.
6284         Report and solution by Mark D. Baushke <mdb@gnu.org>.
6285
6286 2006-01-23  Ulrich Drepper  <drepper@redhat.com>
6287
6288         These changes imported from libc.
6289         * lib/getopt.c: Use __fxprintf instead of inline stream orientation
6290         test and two separate function calls.
6291         * lib/strndup.c (__strndup): Add libc_hidden_def.
6292
6293 2006-01-23  Simon Josefsson  <jas@extundo.com>
6294
6295         * modules/lock-tests: Use check_PROGRAMS instead of noinst_PROGRAMS.
6296         Remove the test_*_SOURCES variable: automake infers it by default.
6297         * modules/tls-tests: Likewise.
6298
6299 2006-01-23  Paul Eggert  <eggert@cs.ucla.edu>
6300
6301         Work around porting bugs reported by Dieter in
6302         <http://lists.gnu.org/archive/html/bug-bison/2006-01/msg00049.html>.
6303         * lib/getopt.c (_NOPROTO): Remove; no longer needed.
6304         Include <stdlib.h> and <unistd.h> in all environments; it's safe now.
6305         Include "getopt.h" first, to check interface.
6306         (getenv): Declare only if defined HAVE_DECL_GETENV &&
6307         !HAVE_DECL_GETENV.
6308         * lib/strndup.c [!_LIBC]: Include "strndup.h" to get prototype.
6309         (__strndup): Revert to K&R-style function dfns, the glibc style.
6310         * lib/strnlen.c: Don't claim it's taken from glibc; it's not.
6311         (strnlen, __strnlen): Remove #defines and #undefs; not needed.
6312         Include strnlen.h first, to get prototype properly.
6313         (strnlen): Renamed from __strnlen.
6314         Remove weak alias.
6315
6316 2006-01-23  Paul Eggert  <eggert@cs.ucla.edu>
6317
6318         * m4/getopt.m4 (gl_PREREQ_GETOPT): Check for getenv decl.
6319
6320 2006-01-23  Paul Eggert  <eggert@cs.ucla.edu>
6321
6322         * config/srclist.txt: Adjust to reflect glibc reorganization.
6323         This affects only comments.
6324
6325 2006-01-22  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>  (tiny change)
6326
6327          * gnulib-tool, build-aux/csharpcomp.sh.in: Do not pass `-q' to mktemp.
6328          Reported by Bruce Korb <bkorb@gnu.org>.
6329
6330 2006-01-22  Paul Eggert  <eggert@cs.ucla.edu>
6331
6332         * lib/quotearg.c (quotearg_buffer_restyled): Add "default: break;"
6333         to pacify gcc -Wswitch-default.
6334
6335 2006-01-22  Bruno Haible  <bruno@clisp.org>
6336
6337         * lib/vasnprintf.c (VASNPRINTF): In the computation of the size of the
6338         temporary buffer for sprintf, take into account the precision also
6339         for 'd', 'i', 'u', 'o', 'x', 'X'.
6340
6341 2006-01-21  Sergey Poznyakoff  <gray@gnu.org.ua>
6342
6343         * modules/argp-tests: New module
6344         * tests/test-argp.c: New file
6345         * tests/test-argp-2.sh: New file
6346
6347 2006-01-21  Sergey Poznyakoff  <gray@gnu.org.ua>
6348
6349         * lib/argp-help.c (usage_long_opt): Do not print DOC options.
6350         (__argp_base_name): Removed
6351         * lib/argp-namefrob.h (__argp_basename): Removed definition. Was a
6352         typo.
6353         (__argp_base_name): Provide macro definition or extern declaration
6354         depending on the configuration
6355
6356 2006-01-20  Simon Josefsson  <jas@extundo.com>
6357
6358         * modules/inet_ntop (Depends-on): Depend on sys_socket.
6359
6360 2006-01-20  Simon Josefsson  <jas@extundo.com>
6361
6362         * lib/inet_ntop.h: Unconditionally include sys/socket.h.
6363
6364 2006-01-20  Paul Eggert  <eggert@cs.ucla.edu>
6365
6366         * m4/lib-ignore.m4 (gl_IGNORE_UNUSED_LIBRARIES): Use -Wl,-z,ignore
6367         rather than -Xlinker -z -Xlinker ignore, as it's more portable.
6368         Suggested by Bruno Haible.
6369
6370 2006-01-20  Karl Berry  <karl@gnu.org>
6371
6372         * config/srclist.txt (argp-fmtstream.h, localcharset.c): comment out
6373         until changes propagate, I guess.
6374
6375 2006-01-19  Simon Josefsson  <jas@extundo.com>
6376
6377         * m4/socklen.m4: Look in ws2tcpip.h too, for mingw32.
6378
6379 2006-01-19  Simon Josefsson  <jas@extundo.com>
6380
6381         * lib/socket_.h: Map SHUT_RD, SHUT_WR, SHUT_RDWR correctly.
6382
6383 2006-01-19  Simon Josefsson  <jas@extundo.com>
6384
6385         * gnulib-tool: Set check_PROGRAMS.
6386
6387         * modules/arcfour-tests, modules/arctwo-tests, modules/crc-tests,
6388         modules/des-tests, modules/gc-arcfour-tests,
6389         modules/gc-arctwo-tests, modules/gc-des-tests,
6390         modules/gc-hmac-md5-tests, modules/gc-hmac-sha1-tests,
6391         modules/gc-md2-tests, modules/gc-md4-tests, modules/gc-md5-tests,
6392         modules/gc-pbkdf2-sha1-tests, modules/gc-rijndael-tests,
6393         modules/gc-sha1-tests, modules/gc-tests, modules/hmac-md5-tests,
6394         modules/hmac-sha1-tests, modules/md2-tests, modules/md4-tests,
6395         modules/md5-tests, modules/readline, modules/rijndael-tests: Use
6396         check_PROGRAMS instead of noinst_PROGRAMS to be able to remove
6397         test_*_SOURCES.
6398
6399 2006-01-18  Simon Josefsson  <jas@extundo.com>
6400
6401         * modules/socklen (Depends-on): Depend on sys_socket.
6402
6403 2006-01-18  Simon Josefsson  <jas@extundo.com>
6404
6405         * modules/arcfour-tests, modules/arctwo-tests, modules/crc-tests,
6406         modules/des-tests, modules/gc-arcfour-tests,
6407         modules/gc-arctwo-tests, modules/gc-des-tests,
6408         modules/gc-hmac-md5-tests, modules/gc-hmac-sha1-tests,
6409         modules/gc-md2-tests, modules/gc-md4-tests, modules/gc-md5-tests,
6410         modules/gc-pbkdf2-sha1-tests, modules/gc-rijndael-tests,
6411         modules/gc-sha1-tests, modules/gc-tests, modules/hmac-md5-tests,
6412         modules/hmac-sha1-tests, modules/md2-tests, modules/md4-tests,
6413         modules/md5-tests, modules/readline, modules/rijndael-tests: Add
6414         $(EXEEXT) to automake TESTS variable, for mingw32.
6415
6416 2006-01-17  Simon Josefsson  <jas@extundo.com>
6417
6418         * modules/socklen (Include): Need sys/socket.h.
6419
6420 2006-01-17  Bruno Haible  <bruno@clisp.org>
6421
6422         * modules/ssize_t (Include): Add <sys/types.h>.
6423
6424 2006-01-16  Paul Eggert  <eggert@cs.ucla.edu>
6425
6426         * m4/lib-ignore.m4 (gl_IGNORE_UNUSED_LIBRARIES): Don't use ldd, as
6427         it's not portable and it doesn't work with cross-compiles.
6428         Problem reported by Bruno Haible.  Fix missing-$ typo in
6429         'test "gl_cv_ignore_unused_libraries" ...' that prevented
6430         -zignore from being used with Sun's C compiler.
6431
6432 2006-01-12  Simon Josefsson  <jas@extundo.com>
6433
6434         * lib/base64.c: Fix warning, reported by Bruno Haible
6435         <bruno@clisp.org> and patch by Paul Eggert <eggert@CS.UCLA.EDU>.
6436
6437 2006-01-12  Bruno Haible  <bruno@clisp.org>
6438
6439         * modules/ldd: New file.
6440         * build-aux/ldd.sh.in: New file.
6441         * MODULES.html.sh (Support for building libraries and executables): Add
6442         ldd.
6443
6444 2006-01-12  Bruno Haible  <bruno@clisp.org>
6445
6446         * m4/ldd.m4: New file.
6447
6448 2006-01-12  Bruno Haible  <bruno@clisp.org>
6449
6450         * gnulib-tool (func_import, func_create_testdir): Don't go into an
6451         endless loop while replacing $auxdir with build-aux.
6452
6453 2006-01-11  Simon Josefsson  <jas@extundo.com>
6454
6455         * lib/stdint_.h (SIZE_MAX): Add missing (.
6456
6457 2006-01-11  Paul Eggert  <eggert@cs.ucla.edu>
6458
6459         Sync from coreutils.
6460         * lib/md5.c: Fix commentary typos.
6461         (alignof, UNALIGNED_P): No need for a GCC-specific version.
6462         * lib/md5.h (__attribute__): Remove; unused.
6463         * lib/sha1.c: Fix commentary to match md5 better.
6464         * lib/sha1.h (struct sha1_ctx): Use a word buffer, not a byte buffer,
6465         so that we don't need to worry about alignment.  All uses changed.
6466         This merges the 2005-10-28 md5 change into sha1.
6467
6468 2006-01-11  Jim Meyering  <jim@meyering.net>
6469
6470         Sync from coreutils.
6471         * lib/md5.c (OP): Fix spacing.
6472
6473 2006-01-11  Bruno Haible  <bruno@clisp.org>
6474
6475         Ensure automatic ordering between gl_LOCK and gl_ARGP.
6476         * m4/lock.m4 (gl_LOCK_BODY): Renamed from gl_LOCK.
6477         (gl_LOCK): New macro, requiring gl_LOCK_BODY.
6478
6479 2006-01-11  Bruno Haible  <bruno@clisp.org>
6480
6481         Ensure automatic ordering between gl_LOCK and gl_ARGP.
6482         * gnulib-tool (func_import, func_create_testdir): Put gl_LOCK into
6483         the "early" section as well.
6484
6485 2006-01-11  Bruno Haible  <bruno@clisp.org>
6486
6487         Avoid "ar: no archive members specified" error on MacOS X.
6488         * gnulib-tool (func_modules_add_dummy): New function.
6489         (func_import, func_create_testdir): Invoke it.
6490
6491 2006-01-11  Bruno Haible  <bruno@clisp.org>
6492
6493         * gnulib-tool (func_import, func_create_testdir): Replace build-aux
6494         with $auxdir in AC_CONFIG_FILES statements.
6495
6496 2006-01-11  Bruno Haible  <bruno@clisp.org>
6497
6498         * gnulib-tool (func_emit_lib_Makefile_am, func_emit_tests_Makefile_am):
6499         Initialize also noinst_HEADERS to empty.
6500
6501 2006-01-11  Bruno Haible  <bruno@clisp.org>
6502
6503         * gnulib-tool (AUTOMAKEPATH, AUTOCONF, ACLOCAL, AUTOMAKE): New
6504         variables.
6505         (func_create_megatestdir): Call aclocal, autoconf, automake here, not
6506         autoreconf.
6507
6508 2006-01-11  Bruno Haible  <bruno@clisp.org>
6509
6510         * gnulib-tool (AUTOCONF, ACLOCAL, AUTOMAKE, AUTORECONF): Make
6511         overridable by the user.
6512         Reported by Ralf Wildenhues <Ralf.Wildenhues@gmx.de>.
6513
6514 2006-01-10  Simon Josefsson  <jas@extundo.com>
6515
6516         * modules/sys_socket: New file.
6517
6518 2006-01-10  Simon Josefsson  <jas@extundo.com>
6519
6520         * m4/sys_socket_h.m4: New file.
6521
6522 2006-01-10  Simon Josefsson  <jas@extundo.com>
6523
6524         * lib/socket_.h: New file.
6525
6526 2006-01-10  Paul Eggert  <eggert@cs.ucla.edu>
6527
6528         * modules/readutmp (Maintainer): Add myself.
6529
6530 2006-01-10  Paul Eggert  <eggert@cs.ucla.edu>
6531
6532         * m4/memcoll.m4 (gl_MEMCOLL): Don't require AC_FUNC_MEMCMP, undoing
6533         the 2002-12-31 change.  Problem and fix reported by Bruno Haible.
6534         People who are still concerned with buggy memcmp implementations
6535         can invoke gl_FUNC_MEMCMP themselves.
6536
6537 2006-01-10  Paul Eggert  <eggert@cs.ucla.edu>
6538
6539         * lib/regex_internal.h (BITSET_WORD_BITS):
6540         Work around a bug in 64-bit PGC (before version 6.1-2), where the
6541         preprocessor mishandles large unsigned values as if they were signed.
6542         Problem reported by Claudio Fontana in
6543         <http://lists.gnu.org/archive/html/bug-gnulib/2005-12/msg00061.html>.
6544
6545 2006-01-10  Jim Meyering  <jim@meyering.net>
6546
6547         Avoid the double-free (first in fts_read, second in fts_close) that
6548         would occur when an `active' directory is made inaccessible (e.g.,
6549         via chmod a-x) during a traversal.
6550         * lib/fts.c (fts_read): After a failed fchdir, update sp->fts_cur
6551         before returning.  Reproduce this failure by
6552         mkdir -p a/b; cd a; chmod a-x . b
6553         Reported by Stavros Passas.
6554
6555         Sync from coreutils.
6556         * lib/sha1.c: Tweak grammar in a comment.
6557
6558 2006-01-10  Jim Meyering  <jim@meyering.net>
6559
6560         * m4/fpending.m4: Also include <stdio.h>, for Dragonfly.
6561         Patch by Joerg Sonnenberger.
6562
6563 2006-01-10  Bruno Haible  <bruno@clisp.org>
6564
6565         * modules/readutmp: Depend on module free.
6566         * modules/strtok_r: Depend on module restrict.
6567
6568 2006-01-10  Bruno Haible  <bruno@clisp.org>
6569
6570         * modules/gettext (configure.ac): Add an invocation of
6571         AM_GNU_GETTEXT_VERSION. Needed since autoreconf is used by gnulib-tool.
6572
6573 2006-01-10  Bruno Haible  <bruno@clisp.org>
6574
6575         * m4/localcharset.m4 (gl_LOCALCHARSET): Also test for getc_unlocked.
6576         Reported by Werner Lemberg <wl@gnu.org>.
6577
6578 2006-01-10  Bruno Haible  <bruno@clisp.org>
6579
6580         * lib/localcharset.c: Update from GNU gettext.
6581
6582 2006-01-10  Bruno Haible  <bruno@clisp.org>
6583
6584         * lib/argp.h (__const): Remove macro. Use const instead.
6585         * lib/argp-fmtstream.h (__const): Likewise.
6586         * lib/glob_.h (__const): Remove macro.
6587         * lib/glob-libc.h: Use const instead of __const.
6588
6589 2006-01-10  Bruno Haible  <bruno@clisp.org>
6590
6591         * gnulib-tool (func_emit_tests_Makefile_am): Emit an empty SUBDIR
6592         variable.
6593         Needed to avoid an automake error regarding the 'gettext' module.
6594
6595 2006-01-09  Simon Josefsson  <jas@extundo.com>
6596
6597         * modules/inet_ntop (Depends-on): Add restrict.
6598
6599 2006-01-09  Simon Josefsson  <jas@extundo.com>
6600
6601         * modules/gc-rijndael-tests (License): Put under LGPL.
6602
6603         * modules/gc-des-tests (License): Likewise.
6604
6605         * modules/gc-arcfour-tests (License): Likewise.
6606
6607         * modules/gc-arctwo-tests (License): Likewise.
6608
6609         * modules/gc-pbkdf2-sha1-tests (License): Likewise.
6610
6611         * modules/gc-hmac-sha1-tests (Files): Likewise.
6612
6613         * modules/gc-hmac-md5-tests (License): Likewise.
6614
6615         * modules/gc-sha1-tests (License): Likewise.
6616
6617         * modules/gc-md5-tests (License): Likewise.
6618
6619         * modules/gc-md4-tests (License): Likewise.
6620
6621         * modules/gc-md2-tests (License): Likewise.
6622
6623         * modules/gc-tests (License): Likewise.
6624
6625         * modules/des-tests (License): Likewise.
6626
6627         * modules/md4-tests (License): Likewise.
6628
6629         * modules/md2-tests (License): Likewise.
6630
6631 2006-01-09  Paul Eggert  <eggert@cs.ucla.edu>
6632
6633         Sync from coreutils:
6634
6635         * MODULES.html.sh (build_lib): New section, with new lib-ignore module.
6636         * modules/lib-ignore: New file.
6637         * modules/mkdir-p (Files): Add chdir-safer.c, chdir-safer.h, lchmod.h,
6638         chdir-safer.m4, lchmod.m4.
6639         * modules/openat: Add mkdirat.c, openat-priv.h.
6640
6641 2006-01-09  Paul Eggert  <eggert@cs.ucla.edu>
6642
6643         Sync from coreutils.
6644         * m4/lib-ignore.m4: New file.
6645         * m4/lchmod.m4: New file.
6646
6647 2006-01-09  Paul Eggert  <eggert@cs.ucla.edu>
6648
6649         Sync from coreutils.
6650         * lib/chdir-long.c (cdb_free): Don't bother trying to open directory
6651         for write access: POSIX says that must fail.
6652         * lib/fts.c (diropen): Likewise.
6653         * lib/save-cwd.c (save_cwd): Likewise.
6654         * lib/chdir-long.c (cdb_free): Open with O_NOCTTY | O_NONBLOCK as
6655         well, for minor improvements on hosts that lack O_DIRECTORY.
6656         * lib/chown.c (rpl_chown) [CHOWN_MODIFIES_SYMLINK]:
6657         Don't try O_WRONLY unless O_RDONLY failed wth EACCES.
6658         Fall back on chown if open failed with EACCES.
6659
6660         * lib/gettime.c (gettime) [!defined OK_TO_USE_1S_CLOCK]:
6661         Report an error at compile-time if only a 1-second nominal clock
6662         resolution is found.
6663
6664         * lib/lchmod.h: New file.
6665         * lib/mkdir-p.c: Include lchmod.h, lchown.h.
6666         (make_dir_parents): Use lchown rather than chown, and
6667         lchmod rather than chmod.
6668
6669         * lib/mountlist.c (ME_DUMMY): "none" and "proc" file systems are
6670         dummies too.  Problem with "none" reported by Bob Proulx.  Problem with
6671         "proc" reported by n0dalus.
6672
6673         * lib/mountlist.c: Include <limits.h>.
6674         (dev_from_mount_options)
6675         [defined MOUNTED_GETMNTENT1 || defined MOUNTED_GETMNTENT2]:
6676         New function.  It no longer assumes "dev=" has the System V meaning
6677         on Linux (since it doesn't).  It also parses "dev=" more carefully.
6678         (read_file_system_list)
6679         [defined MOUNTED_GETMNTENT1 || defined MOUNTED_GETMNTENT2]: Use it.
6680         MOUNTED_GETMNTENT2 is new here; the code didn't used to look for
6681         dev= in that case.
6682
6683         * lib/posixtm.h (PDS_PRE_2000): New macro.
6684         * lib/posixtm.c (year): Arg is now syntax_bits rather than
6685         allow_century.  All usages changed.  Reject dates outside the range
6686         1969-1999 if PDS_PRE_2000 is used.
6687
6688 2006-01-09  Paul Eggert  <eggert@cs.ucla.edu>
6689
6690         Sync from coreutils.
6691         * doc/getdate.texi (General date syntax): Invalid dates are rejected.
6692         (Time of day items): Mention the possibility of leap seconds.
6693         Problem reported by Dr. David Alan Gilbert.
6694
6695 2006-01-09  Jim Meyering  <jim@meyering.net>
6696
6697         Sync from coreutils.
6698
6699         * lib/version-etc.c (COPYRIGHT_YEAR): Update to 2006.
6700
6701         * lib/chdir-safer.h, chdir-safer.c: New files.
6702
6703         * lib/modechange.c (mode_compile): Reject an invalid mode string
6704         that starts with an octal digit.  From Andreas Gruenbacher.
6705
6706         * lib/openat.c: Include "fcntl--.h" and "unistd--.h", to map open
6707         and dup to open_safer and dup_safer, respectively.
6708         (openat_permissive): Fix typo in comment.
6709
6710         * lib/openat.c: Don't include <stdlib.h>, <unistd.h>, <fcntl.h>,
6711         "gettext.h"; either no longer needed or are guaranteed by openat.h.
6712         (_): Remove; no longer needed.
6713         (openat): Renamed from rpl_openat; no need for rpl_openat
6714         since openat.h renames openat for us.
6715         Replace most of the body with a call to openat_permissive,
6716         to avoid duplicate code.
6717         Port to (probably hypothetical) environments were mode_t is
6718         wider than int.
6719         (openat_permissive): Require mode arg, so that we can check
6720         types better.  Put it just after flags.  Change cwd failure
6721         indicator from pointer-to-bool to pointer-to-errno-value.
6722         All callers changed.
6723         Invoke openat_save_fail and/or openat_restore_fail if
6724         cwd_errno is null, so that openat can call us.
6725         (openat_permissive, fdopendir, fstatat, unlinkat):
6726         Simplify errno handling to avoid some duplicate code,
6727         as it's OK to set errno on success.
6728         * lib/openat.h: Revamp code so that function macros depend on
6729         __OPENAT_PREFIX only, not also on AT_FDCWD.
6730         (openat_ro): Remove.  Caller changed to use openat_permissive.
6731         (openat_permissive): Now a macro, if not a function.
6732         (openat_restore_fail, openat_save_fail): Now always functions,
6733         since mkdirat needs them even if __OPENAT_PREFIX is defined.
6734
6735         * lib/openat-priv.h: New file, defining macros used by mkdirat.c
6736         and openat.c.
6737         * lib/mkdirat.c: Include openat-priv.h.
6738         Remove definitions of macros defined therein.
6739         * lib/openat.c: Likewise.
6740
6741         * lib/mkdirat.c (mkdirat): New file and function.
6742         * lib/openat.h (mkdirat): Declare.
6743
6744         * lib/openat.c (fdopendir): Don't change errno when returning non-NULL.
6745
6746         * lib/openat.h (openat_permissive): Declare.
6747         (openat_ro): Define.
6748
6749         * lib/openat.c (EXPECTED_ERRNO): New macro.
6750         (openat_permissive): New function -- used in remove.c rewrite.
6751         (all functions): Set errno just before returning, only if there
6752         was an actual failure.
6753         Use EXPECTED_ERRNO rather than comparing against only ENOTDIR.
6754
6755         Emulate openat-family functions using Linux's procfs, if possible.
6756         Idea and some code based on Ulrich Drepper's glibc changes.
6757
6758         * lib/openat.c: (BUILD_PROC_NAME): New macro.
6759         Include <stdio.h>, <string.h>, "alloca.h" and "intprops.h".
6760         (rpl_openat): Emulate by trying to open /proc/self/fd/%d/%s,
6761         before falling back on save_cwd and restore_cwd.
6762         (fdopendir, fstatat, unlinkat): Likewise.
6763
6764         * lib/openat.c (fstatat, unlinkat): Perform the syscall directly,
6765         skipping the save_cwd...restore_cwd overhead, if FILE is absolute.
6766
6767         * lib/openat.c (rpl_openat): Use the promoted type (int), not mode_t,
6768         as second argument to va_arg.  Otherwise, some versions of gcc
6769         warn that `if this code is reached, the program will abort'.
6770
6771 2006-01-09  Jim Meyering  <jim@meyering.net>
6772
6773         Sync from coreutils.
6774         * m4/openat.m4 (gl_FUNC_OPENAT): Require and compile mkdirat.c.
6775         Require openat-priv.h.
6776
6777 2006-01-09  Bruno Haible  <bruno@clisp.org>
6778
6779         * modules/strnlen (Include): Use strnlen.h.
6780
6781 2006-01-09  Bruno Haible  <bruno@clisp.org>
6782
6783         * m4/stdint.m4 (gl_STDINT_H): Also test for <sys/bitypes.h>.
6784
6785 2006-01-09  Bruno Haible  <bruno@clisp.org>
6786
6787         * lib/sysexit_.h (EX_OK): New macro.
6788         Suggested by Martin Lambers <marlam@marlam.de>.
6789
6790 2006-01-09  Bruno Haible  <bruno@clisp.org>
6791
6792         * lib/stdint_.h: On Linux libc4 and libc5, include <sys/bitypes.h> and
6793         don't define _STDINT_H_NEED_SIGNED_INT_TYPES.
6794
6795 2006-01-09  Bruno Haible  <bruno@clisp.org>
6796
6797         * lib/stdint_.h (SIZE_MAX): Write the value without involving negative
6798         numbers.
6799
6800 2006-01-09  Bruno Haible  <bruno@clisp.org>
6801
6802         * lib/javacomp.sh.in: Move to ../build-aux/javacomp.sh.in.
6803         * lib/javaexec.sh.in: Move to ../build-aux/javaexec.sh.in.
6804         * lib/csharpcomp.sh.in: Move to ../build-aux/csharpcomp.sh.in.
6805         * lib/csharpexec.sh.in: Move to ../build-aux/csharpexec.sh.in.
6806
6807 2006-01-09  Bruno Haible  <bruno@clisp.org>
6808
6809         * build-aux/javacomp.sh.in: New file, moved from lib/.
6810         * modules/javacomp-script (Files): Update.
6811         (configure.ac): Add AC_CONFIG_FILES invocation.
6812         (EXTRA_DIST): Remove variable.
6813
6814         * build-aux/javaexec.sh.in: New file, moved from lib/.
6815         * modules/javaexec (Files): Update.
6816         (configure.ac): Add AC_CONFIG_FILES invocation.
6817         (EXTRA_DIST): Remove javaexec.sh.in.
6818
6819         * build-aux/csharpcomp.sh.in: New file, moved from lib/.
6820         * modules/csharpcomp-script (Files): Update.
6821         (configure.ac): Add AC_CONFIG_FILES invocation.
6822         (EXTRA_DIST): Remove variable.
6823
6824         * build-aux/csharpexec.sh.in: New file, moved from lib/.
6825         * modules/csharpexec (Files): Update.
6826         (configure.ac): Add AC_CONFIG_FILES invocation.
6827         (EXTRA_DIST): Remove csharpexec.sh.in.
6828
6829 2006-01-09  Andreas Gruenbacher  <agruen@suse.de>
6830
6831         Sync from coreutils.
6832
6833         Add POSIX ACL support
6834         * lib/acl.h (copy_acl, set_acl): Add declarations.
6835         * lib/acl.c (acl_entries): Add fallback implementation for POSIX ACL
6836         systems other than Linux.
6837         (chmod_or_fchmod): New function: use fchmod when possible,
6838         and chmod otherwise.
6839         (file_has_acl): Add a POSIX ACL implementation, with a
6840         Linux-specific subcase.
6841         (copy_acl): Add: copy an acl and S_ISUID, S_ISGID, and
6842         S_ISVTX from one file to another.  Fall back to fchmod/chmod when
6843         acls are unsupported.
6844         (set_acl): Add: set a file's acl and S_ISUID, S_ISGID, and
6845         S_ISVTX to a defined value.  Fall back to fchmod/chmod when acls
6846         are unsupported.
6847
6848 2006-01-09  Andreas Gruenbacher  <agruen@suse.de>
6849
6850         Sync from coreutils.
6851         * m4/acl.m4 (AC_FUNC_ACL): Add POSIX ACL and Linux-specific acl tests.
6852
6853 2006-01-07  Bruno Haible  <bruno@clisp.org>
6854
6855         * gnulib-tool (func_import): Add an AC_PROG_RANLIB dependency to
6856         gl_EARLY.
6857
6858 2006-01-04  Paul Eggert  <eggert@cs.ucla.edu>
6859
6860         * lib/strftime.c (tzname): Don't declare if it is already #defined.
6861         Problem reported for Mingw by Mark Junker.
6862
6863 2006-01-04  Paul Eggert  <eggert@cs.ucla.edu>
6864
6865         * README: Gnulib normally doesn't generate a tarball.
6866
6867 2006-01-03  Paul Eggert  <eggert@cs.ucla.edu>
6868
6869         * lib/xtime.h (xtime_make, xtime_nonnegative_nsec, xtime_nsec): Use
6870         long int, not int, for nanosecond counts, so that people who are
6871         used to POSIX struct timespec won't be surprised.  Reported by Jim
6872         Meyering.
6873
6874 2005-12-28  Bruno Haible  <bruno@clisp.org>
6875
6876         * build-aux/config.rpath: Update from GNU gettext.
6877
6878 2005-12-16  Jim Meyering  <jim@meyering.net>
6879
6880         * modules/fprintftime: New module.
6881         * MODULES.html.sh (Date and time <time.h>): Add fprintftime.
6882
6883 2005-12-16  Jim Meyering  <jim@meyering.net>
6884
6885         * m4/fprintftime.m4: New file.
6886
6887 2005-12-16  Jim Meyering  <jim@meyering.net>
6888
6889         * lib/fprintftime.c, fprintftime.h: New files.
6890
6891 2005-12-15  Simon Josefsson  <jas@extundo.com>
6892
6893         * modules/socklen (configure.ac): Fix M4 macro name, to align with
6894         new m4/socklen.m4.
6895
6896 2005-12-10  Sergey Poznyakoff  <gray@gnu.org.ua>
6897
6898         * m4/argp.m4: Define HAVE_DECL_PROGRAM_INVOCATION_NAME and
6899         HAVE_DECL_PROGRAM_INVOCATION_SHORT_NAME
6900
6901 2005-12-10  Sergey Poznyakoff  <gray@gnu.org.ua>
6902
6903         * lib/argp-fmtstream.c (__argp_fmtstream_update): Fix coredump
6904         * lib/argp-help.c (fill_in_uparams): Check if the constructed
6905         struct uparams is valid. Fall back to the default values if it is
6906         not.
6907
6908 2005-12-09  Sergey Poznyakoff  <gray@gnu.org.ua>
6909
6910         * modules/argp (Files): Add argp-pin.c
6911         (Depends-on): dirname
6912         (lib_SOURCES): Add argp-pin.c
6913
6914 2005-12-09  Sergey Poznyakoff  <gray@gnu.org.ua>
6915
6916         * m4/argp.m4:  Check if program_invocation_name and
6917         program_invocation_short_name are declared and define appropriate
6918         macros if they are not.
6919
6920 2005-12-09  Sergey Poznyakoff  <gray@gnu.org.ua>
6921
6922         * lib/argp-help.c (__argp_base_name): New function
6923         (__argp_short_program_name): Rewrite using __argp_base_name
6924         * lib/argp-namefrob.h: Define program_invocation_name and
6925         program_invocation_short_name if requested
6926         (__argp_base_name): Add prototype
6927         * lib/argp-parse.c (argp_def): Use gettext wrappers
6928         (argp_default_parser): Use __argp_base_name
6929         * lib/argp-pin.c: New file. Defines program_invocation_name and
6930         program_invocation_short_name on systems that lack them.
6931
6932 2005-12-07  Paul Eggert  <eggert@cs.ucla.edu>
6933
6934         * m4/stat-time.m4 (gl_STAT_TIME): Add check for
6935         TYPEOF_STRUCT_STAT_ST_ATIM_IS_STRUCT_TIMESPEC, to fix IRIX 5.3
6936         porting problem reported by Georg Schwarz in
6937         <http://lists.gnu.org/archive/html/bug-coreutils/2005-12/msg00083.html>.
6938
6939 2005-12-07  Paul Eggert  <eggert@cs.ucla.edu>
6940
6941         * lib/stat-time.h (STATE_TIMESPEC, STAT_TIMESPEC_NS): Add check for
6942         TYPEOF_STRUCT_STAT_ST_ATIM_IS_STRUCT_TIMESPEC, to fix IRIX 5.3
6943         porting problem reported by Georg Schwarz in
6944         <http://lists.gnu.org/archive/html/bug-coreutils/2005-12/msg00083.html>.
6945
6946 2005-12-05  Bruno Haible  <bruno@clisp.org>
6947
6948         * lib/csharpcomp.sh.in (options_csc): For -l option, add a .dll suffix.
6949         * lib/csharpcomp.c (compile_csharp_using_sscli): Likewise.
6950         Reported by Mark Junker <mjscod@gmx.de>.
6951
6952 2005-12-02  Paul Eggert  <eggert@cs.ucla.edu>
6953
6954         * m4/socklen.m4 (gl_TYPE_SOCKLEN_T): Renamed from gl_SOCKLEN_T.
6955         Use implementation from Albert Chin, with some
6956         comments/corrections by Stepan Kasal and myself.
6957
6958 2005-12-02  Bruno Haible  <bruno@clisp.org>
6959
6960         * gnulib-tool (func_import): Accept GPLed build tool modules when
6961         --lgpl is given.
6962         * modules/csharpcomp-script: New file.
6963         * modules/csharpcomp: Depend on it.
6964         * modules/javacomp-script: New file.
6965         * modules/javacomp: Depend on it.
6966         Suggested by Simon Josefsson.
6967
6968 2005-12-01  Paul Eggert  <eggert@cs.ucla.edu>
6969
6970         * m4/regex.m4 (gl_REGEX): Check whether off_t can be used in a switch
6971         statement, to work around an HP-UX 10.20 compiler bug reported by
6972         Peter O'Gorman.
6973
6974 2005-11-29  Paul Eggert  <eggert@cs.ucla.edu>
6975
6976         * modules/savedir (Depends-on): Add openat.
6977
6978 2005-11-29  Paul Eggert  <eggert@cs.ucla.edu>
6979
6980         * lib/stdint_.h (intmax_t) [defined intmax_t]: Do not declare.
6981         (uintmax_t) [defined uintmax_t]: Do not declare.
6982         (SIZE_MAX) [defined SIZE_MAX]: Do not define.
6983         This works around a problem if intmax_t.m4 and/or uintmax_t.m4
6984         and/or size_max.m4 are also used.  Problem reported by Mark D. Baushke.
6985         (SIZE_MAX): Define to ((size_t) -1), not (~(size_t)0), for the
6986         sake of portability to weird hosts that C allows (though we don't
6987         know of any practical examples).
6988
6989         * lib/savedir.h (fdsavedir): New decl.
6990         * lib/savedir.c (fdsavedir, savedirstream): New functions; the latter
6991         contains most of the former guts of savedir.
6992         (savedir): Use savedirstream.
6993         Include "openat.h".
6994
6995 2005-11-25  Paul Eggert  <eggert@cs.ucla.edu>
6996
6997         * modules/obstack (Files): Add m4/ulonglong.m4.
6998         Problem reported by Davide Angelocola.
6999
7000 2005-11-15  Paul Eggert  <eggert@cs.ucla.edu>
7001
7002         * lib/xstrtod.c: Don't bother with #pragma STDC FENV_ACCESS ON, as
7003         coreutils no longer futzes with rounding modes.
7004
7005 2005-11-14  Jim Meyering  <jim@meyering.net>
7006
7007         * lib/mkstemp-safer.c: Include <config.h>, required for possible
7008         replacement of mkstemp.
7009
7010 2005-11-10  Simon Josefsson  <jas@extundo.com>
7011
7012         * lib/readline.c: Remove EOL.
7013
7014 2005-11-10  Paul Eggert  <eggert@cs.ucla.edu>
7015
7016         * modules/gethrxtime (Depends-on): Add gettime.
7017
7018 2005-11-10  Paul Eggert  <eggert@cs.ucla.edu>
7019
7020         * m4/gethrxtime.m4 (gl_PREREQ_GETHRXTIME): Don't require AC_HEADER_TIME
7021         or gettimeofday; no longer needed.
7022
7023 2005-11-10  Paul Eggert  <eggert@cs.ucla.edu>
7024
7025         * lib/gethrxtime.c: Include "timespec.h" rather than the sys/time /
7026         time business.
7027         (gethrxtime) [! (HAVE_NANOUPTIME
7028         || (defined CLOCK_MONOTONIC && HAVE_CLOCK_GETTIME)
7029         || HAVE_MICROUPTIME)]: Fall back on gettime rather than rolling
7030         our own approximation.
7031
7032 2005-11-08  Eric Blake  <ebb9@byu.net>
7033
7034         * lib/inet_ntop.h: Use #if !, not #ifndef, for AC_CHECK_DECLS.
7035
7036 2005-11-08  Eric Blake  <ebb9@byu.net>
7037
7038         * lib/getaddrinfo.h: Use #if !, not #ifndef, for AC_CHECK_DECLS.
7039
7040 2005-11-04  Bruno Haible  <bruno@clisp.org>
7041
7042         * gnulib-tool: Implement --update mode.
7043
7044 2005-10-30  Paul Eggert  <eggert@cs.ucla.edu>
7045
7046         Fix porting problem reported by Theodoros V. Kalamatianos.
7047         * lib/utimens.c (futimens) [HAVE_WORKING_UTIMES && HAVE_FUTIMES]:
7048         Don't assume that futimes failing means we must fail.
7049
7050 2005-10-30  Paul Eggert  <eggert@cs.ucla.edu>
7051
7052         * m4/chdir-long.m4 (gl_FUNC_CHDIR_LONG): Revamp wording and local
7053         variables to suggest the intended function of the PATH_MAX check.
7054
7055 2005-10-30  Kean Johnston  <jkj@sco.com>
7056
7057         Trivial changes to support SCO systems.
7058         * m4/chdir-long.m4 (gl_FUNC_CHDIR_LONG): Check for MAXPATHLEN as well
7059         as PATH_MAX.
7060         * m4/fpending.m4 (gl_FUNC_FPENDING): Correct check for SCO systems,
7061         where __ptr is null when no I/O is pending.
7062
7063 2005-10-29  Paul Eggert  <eggert@cs.ucla.edu>
7064
7065         * lib/getcwd.c (__getcwd): Don't assume that system calls after readdir
7066         leave errno alone.  Problem reported by Dmitry V. Levin.
7067
7068 2005-10-28  Simon Josefsson  <jas@extundo.com>
7069
7070         * tests/test-gc-md4.c, tests/test-gc-md5.c, tests/test-gc-sha1.c:
7071         Test more.
7072
7073         * tests/test-gc-md2.c, tests/test-md2.c: New files.
7074
7075         * modules/md2, modules/md2-tests: New files.
7076
7077 2005-10-28  Simon Josefsson  <jas@extundo.com>
7078
7079         * m4/inet_ntop.m4: More tests.
7080
7081         * m4/gc-md2.m4, md2.m4: New file.
7082
7083 2005-10-28  Simon Josefsson  <jas@extundo.com>
7084
7085         * lib/inet_ntop.h, inet_ntop.c: Make it work under mingw32: Add
7086         "restrict" keywords, as per POSIX.  Protect the function
7087         declaration around HAVE_DECL_INET_NTOP rather than HAVE_INET_NTOP.
7088         Don't use K&R prototypes.  Check the sprintf return values.
7089         Re-define EAFNOSUPPORT if not present.  Indent.
7090
7091         * lib/md5.h, md5.c: Simplify buffer handling visavi alignment,
7092         suggested by Bruno Haible <bruno@clisp.org>.
7093
7094         * lib/gc-gnulib.c, gc-libgcrypt.c: Check calloc return value.
7095
7096         * lib/gc.h: Add MD2 and RMD160 length defines.  Add prototypes.
7097
7098         * lib/gc-libgcrypt.c: Add MD2 (which is not available through
7099         libgcrypt).
7100
7101         * lib/gc-gnulib.c: Add MD2.  Implement gc_hash_* API.
7102
7103         * lib/md2.h, md2.c: New files.
7104
7105 2005-10-28  Paul Eggert  <eggert@cs.ucla.edu>
7106
7107         * lib/savedir.c (savedir): Don't assume that xrealloc etc. leave
7108         errno alone.  Problem reported by Frederic Jolliton.
7109
7110 2005-10-27  Paul Eggert  <eggert@cs.ucla.edu>
7111
7112         * modules/verify (License): Change from GPL to LGPL.  This is a
7113         tiny module and there are apparently near-equivalents that are
7114         under the BSD license.
7115
7116 2005-10-24  Simon Josefsson  <jas@extundo.com>
7117
7118         * modules/sha1: Relicense to LGPL.
7119
7120 2005-10-24  Simon Josefsson  <jas@extundo.com>
7121
7122         * lib/md4.h: Shrink buffer size, now that we changed the type.
7123
7124 2005-10-23  Simon Josefsson  <jas@extundo.com>
7125
7126         * gnulib-tool (func_import): Fix --tests-base.
7127
7128 2005-10-22  Simon Josefsson  <jas@extundo.com>
7129
7130         * modules/arcfour (Depends-on): Need stdint.
7131
7132 2005-10-22  Simon Josefsson  <jas@extundo.com>
7133
7134         * m4/gc.m4: Don't be fooled by --disable-*random-device parameters,
7135         suggested by Bruno Haible <bruno@clisp.org>.  Fix error messages.
7136
7137 2005-10-22  Simon Josefsson  <jas@extundo.com>
7138
7139         * lib/md4.h, md4.c: Simplify buffer handling visavi alignment,
7140         suggested by Bruno Haible <bruno@clisp.org>.
7141
7142 2005-10-22  Simon Josefsson  <jas@extundo.com>
7143
7144         * lib/crc.h: Include stddef.h, for size_t.
7145
7146 2005-10-22  Simon Josefsson  <jas@extundo.com>
7147
7148         * lib/arcfour.h, arcfour.c: Use fixed size indices in the
7149         arcfour_context struct (simplify test vector testing in GNU
7150         Shishi).
7151
7152 2005-10-21  Simon Josefsson  <jas@extundo.com>
7153
7154         * modules/des, modules/des-tests: New files.
7155
7156         * modules/gc-des, modules/gc-des-tests: New files.
7157
7158         * tests/test-des.c, tests/test-gc-des.c: New file.
7159
7160 2005-10-21  Simon Josefsson  <jas@extundo.com>
7161
7162         * modules/arctwo, modules/arctwo-tests: New files.
7163
7164         * tests/test-arctwo.c: New file.
7165
7166         * modules/gc-arctwo, modules/gc-arctwo-tests: New files.
7167
7168         * tests/test-gc-arctwo.c: New file.
7169
7170 2005-10-21  Simon Josefsson  <jas@extundo.com>
7171
7172         * m4/gc.m4: Don't use libgcrypt if gcrypt.h isn't found, suggested by
7173         Bruno Haible <bruno@clisp.org>.
7174
7175         * m4/gc-des.m4: New file.
7176
7177 2005-10-21  Simon Josefsson  <jas@extundo.com>
7178
7179         * m4/arctwo.m4: New file.
7180
7181         * m4/gc-arctwo.m4: New file.
7182
7183 2005-10-21  Simon Josefsson  <jas@extundo.com>
7184
7185         * lib/rijndael-api-fst.c: Fix bugs in CBC mode for more than one
7186         block.
7187
7188 2005-10-21  Simon Josefsson  <jas@extundo.com>
7189
7190         * lib/hmac-md5.c (hmac_md5): Add comments, suggested by Bruno Haible
7191         <bruno@clisp.org>.
7192
7193         * lib/hmac-sha1.c (hmac_sha1): Likewise.
7194
7195         * lib/crc.c (crc32_update): Actually use crc parameter, suggested by
7196         Bruno Haible <bruno@clisp.org>.
7197
7198         * lib/crc.h: Include stdint.h directly, suggested by Bruno Haible
7199         <bruno@clisp.org>.
7200
7201 2005-10-21  Simon Josefsson  <jas@extundo.com>
7202
7203         * lib/gc-libgcrypt.c (gc_cipher_open): Handle ECB.
7204
7205 2005-10-21  Simon Josefsson  <jas@extundo.com>
7206
7207         * lib/gc-gnulib.c: Support ARCTWO in CBC mode.
7208
7209 2005-10-21  Simon Josefsson  <jas@extundo.com>
7210
7211         * lib/des.h, des.c: New files.
7212
7213         * lib/gc-gnulib.c: Support DES.c
7214
7215 2005-10-21  Simon Josefsson  <jas@extundo.com>
7216
7217         * lib/arctwo.h, arctwo.c: New files.
7218
7219         * lib/gc-gnulib.c: Support ARCTWO.
7220
7221 2005-10-21  Simon Josefsson  <jas@extundo.com>
7222
7223         * lib/arctwo.h (arctwo_setkey): Protect variable in CPP macro,
7224         suggested by Ralf Wildenhues <Ralf.Wildenhues@gmx.de>.
7225
7226 2005-10-21  Simon Josefsson  <jas@extundo.com>
7227
7228         * gnulib-tool (func_import, func_create_testdir): Define automake
7229         conditional GL_COND_LIBTOOL if libtool is used (to be used by modules
7230         Makefile.am snippet),
7231         suggested by Bruno Haible <bruno@clisp.org>.
7232
7233         * modules/gc (Makefile.am): Use it.
7234
7235 2005-10-21  Bruno Haible  <bruno@clisp.org>
7236
7237         * gnulib-tool (func_import, func_create_testdir): Add quoting to last
7238         patch.
7239
7240 2005-10-19  Simon Josefsson  <jas@extundo.com>
7241
7242         * tests/test-gc-rijndael.c: New file.
7243
7244         * modules/gc-rijndael, modules/gc-rijndael-test: New files.
7245
7246 2005-10-19  Simon Josefsson  <jas@extundo.com>
7247
7248         * tests/test-gc-md4.c, tests/test-gc-md5.c: Test gc_hash_buffer
7249         interface too.
7250
7251 2005-10-19  Simon Josefsson  <jas@extundo.com>
7252
7253         * tests/test-gc-arcfour.c: New file.
7254
7255         * modules/gc-arcfour, modules/gc-arcfour-tests: New files.
7256
7257 2005-10-19  Simon Josefsson  <jas@extundo.com>
7258
7259         * modules/gc-md4, modules/gc-md4-tests: New file.
7260
7261         * tests/test-gc-md4.c: New file.
7262
7263 2005-10-19  Simon Josefsson  <jas@extundo.com>
7264
7265         * m4/gc-md4.m4: New file.
7266
7267 2005-10-19  Simon Josefsson  <jas@extundo.com>
7268
7269         * m4/gc-hmac-md5.m4, gc-hmac-sha1.m4, gc-md4.m4,
7270         gc-md5.m4, gc-sha1.m4: Fix typo, suggested by Stepan Kasal
7271         <kasal@ucw.cz>.
7272
7273 2005-10-19  Simon Josefsson  <jas@extundo.com>
7274
7275         * m4/gc-arcfour.m4: New file.
7276
7277         * m4/gc-rijndael.m4: New file.
7278
7279 2005-10-19  Simon Josefsson  <jas@extundo.com>
7280
7281         * lib/gc.h, gc-gnulib.c, gc-libgcrypt.c: Support MD4.
7282
7283 2005-10-19  Simon Josefsson  <jas@extundo.com>
7284
7285         * lib/gc-gnulib.c: Support ARCFOUR.
7286
7287 2005-10-19  Simon Josefsson  <jas@extundo.com>
7288
7289         * lib/gc-gnulib.c: Implement gc_cipher_* API, currently only with AES
7290         support.
7291
7292         * lib/gc.h: Add ECB enum type.
7293
7294         * lib/hmac-md5.c, hmac-sha1.c: Include memxor.h.
7295
7296 2005-10-18  Simon Josefsson  <jas@extundo.com>
7297
7298         * tests/test-md5.c: New file.
7299
7300         * modules/md5-tests: New file.
7301
7302 2005-10-18  Simon Josefsson  <jas@extundo.com>
7303
7304         * tests/test-md4.c: New file.
7305
7306         * modules/md4, modules/md4-tests: New files.
7307
7308 2005-10-18  Simon Josefsson  <jas@extundo.com>
7309
7310         * m4/md4.m4: New file.
7311
7312 2005-10-18  Simon Josefsson  <jas@extundo.com>
7313
7314         * lib/md4.h, md4.c: New files, based on md5.?.
7315
7316 2005-10-17  Stepan Kasal  <kasal@ucw.cz>
7317
7318         * gnulib-tool (func_create_testdir): Omit the second check whether
7319         BUILT_SOURCES in nonempty.
7320
7321 2005-10-17  Simon Josefsson  <jas@extundo.com>
7322
7323         * tests/test-rijndael.c: New file.
7324
7325 2005-10-17  Simon Josefsson  <jas@extundo.com>
7326
7327         * modules/sha1: Depend on stdint instead of md5.
7328
7329         * modules/md5: Depend on stdint, remove uint32_t.
7330
7331 2005-10-17  Simon Josefsson  <jas@extundo.com>
7332
7333         * modules/gc-sha1-tests: New file.
7334
7335         * tests/test-gc-sha1.c: New file.
7336
7337 2005-10-17  Simon Josefsson  <jas@extundo.com>
7338
7339         * m4/md5.m4: Remove call to uint32_t.m4.
7340
7341 2005-10-17  Simon Josefsson  <jas@extundo.com>
7342
7343         * lib/sha1.c: Use uint32_t instead of md5_uint32.t
7344
7345         * lib/sha1.h: Use stdint.h and uint32_t instead of md5_uint32 from
7346         md5.h.
7347
7348         * lib/md5.c: Use uin32_t.  Fix non-gcc UNALIGNED_P macro.
7349
7350         * lib/md5.h: Use stdint.h and uint32_t.  Doc fix.
7351
7352 2005-10-17  Simon Josefsson  <jas@extundo.com>
7353
7354         * lib/gc.h, gc-libgcrypt.c: Add more hash types/functions.
7355
7356 2005-10-17  Simon Josefsson  <jas@extundo.com>
7357
7358         * lib/gc.h, gc-libgcrypt.c: Add ciphers.
7359
7360 2005-10-17  Simon Josefsson  <jas@extundo.com>
7361
7362         * lib/gc-libgcrypt.c (gc_hmac_sha1): Fix assert.
7363
7364         * lib/gc.h (gc_nonce, gc_pseudo_random, gc_random): Add prototypes.
7365
7366 2005-10-17  Bruno Haible  <bruno@clisp.org>
7367
7368         * m4/stdbool.m4 (AC_HEADER_STDBOOL): Change the return statement so
7369         that it can also be used in a test.
7370
7371 2005-10-16  Bruno Haible  <bruno@clisp.org>
7372
7373         * gnulib-tool (func_emit_tests_Makefile_am): Also define
7374         TESTS_ENVIRONMENT, so that individual tests can augment it.
7375
7376         * gnulib-tool (func_create_testdir): Use an intermediate target for
7377         building $(BUILT_SOURCES). Needed because BUILT_SOURCES can contain
7378         macros, like $(ALLOCA_H), which cannot be passed through the command
7379         line.
7380
7381 2005-10-15  Simon Josefsson  <jas@extundo.com>
7382
7383         * modules/rijndael-tests: New file.
7384
7385         * modules/rijndael: New file.
7386
7387 2005-10-15  Simon Josefsson  <jas@extundo.com>
7388
7389         * m4/rijndael.m4: New file.
7390
7391 2005-10-15  Simon Josefsson  <jas@extundo.com>
7392
7393         * lib/rijndael-api-fst.h, rijndael-api-fst.c: New files.
7394
7395         * lib/rijndael-alg-fst.h, rijndael-alg-fst.c: New files.
7396
7397 2005-10-14  Simon Josefsson  <jas@extundo.com>
7398
7399         * tests/test-arcfour.c: New file.
7400
7401         * modules/arcfour, modules/arcfour-tests: New files.
7402
7403 2005-10-14  Simon Josefsson  <jas@extundo.com>
7404
7405         * m4/arcfour.m4: New file.
7406
7407 2005-10-14  Simon Josefsson  <jas@extundo.com>
7408
7409         * lib/arcfour.h, arcfour.c: New files.
7410
7411 2005-10-14  Roland McGrath  <roland@redhat.com>
7412
7413         Import from libc.  [BZ #1331]
7414         * lib/obstack.h [!__STDC__] (obstack_int_grow_fast): Fix misnamed
7415         macro argument.
7416         Reported by Matej Vela <vela@debian.org>.
7417
7418 2005-10-14  Paul Eggert  <eggert@cs.ucla.edu>
7419
7420         * lib/obstack.c [defined _LIBC && defined USE_IN_LIBIO]: Don't
7421         include <wchar.h>; no longer needed.
7422
7423 2005-10-14  Paul Eggert  <eggert@cs.ucla.edu>
7424
7425         * config/srclist.txt: Add glibc bug 321 for obstack.c, obstack.h.
7426
7427 2005-10-14  Jakub Jelinek  <jakub@redhat.com>
7428         and  Ulrich Drepper  <drepper@redhat.com>
7429
7430         Import from libc.
7431         * lib/obstack.c (print_and_abort) [defined _LIBC]: Use __fxprintf
7432         instead of inline stream orientation test and two separate
7433         function calls.  Pay no attention to USE_IN_LIBIO.
7434
7435 2005-10-13  Simon Josefsson  <jas@extundo.com>
7436
7437         * modules/gc-hmac-md5-tests: New file.
7438
7439         * tests/test-gc-hmac-sha1.c: New file.
7440
7441         * tests/test-gc.c (main): Remove MD5 and HMAC-MD5 tests.
7442
7443         * modules/gc-hmac-md5-tests: New file.
7444
7445         * tests/test-gc-md5.c: New file.
7446
7447         * modules/gc-md5-tests: New file.
7448
7449 2005-10-13  Simon Josefsson  <jas@extundo.com>
7450
7451         * lib/gc-pbkdf2-sha1.c (gc_pbkdf2_sha1): Optimize CEIL computation.
7452         Move memory allocation outside of loop.
7453
7454 2005-10-13  Paul Eggert  <eggert@cs.ucla.edu>
7455
7456         * lib/mkdir-p.c (make_dir_parents): Don't report an error if an
7457         intermediate directory is in a read-only file system.  Problem
7458         reported by Eric Blake.
7459
7460 2005-10-13  Oskar Liljeblad  <oskar@osk.mine.nu>
7461
7462         * modules/human (Depends-on): Depend on xstrtoumax, not xstrtol.
7463
7464 2005-10-12  Simon Josefsson  <jas@extundo.com>
7465
7466         * tests/test-hmac-sha1.c: New file.
7467
7468         * modules/hmac-sha1-tests: New file.
7469
7470         * modules/hmac-sha1: New file.
7471
7472 2005-10-12  Simon Josefsson  <jas@extundo.com>
7473
7474         * modules/gc-sha1: New file.
7475
7476 2005-10-12  Simon Josefsson  <jas@extundo.com>
7477
7478         * modules/gc-pbkdf2-sha1, modules/gc-pbkdf2-sha1-tests: New files.
7479
7480         * tests/test-gc-pbkdf2-sha1.c: New file.
7481
7482 2005-10-12  Simon Josefsson  <jas@extundo.com>
7483
7484         * modules/gc-md5, modules/gc-hmac-md5: New files.
7485
7486         * modules/gc (Files): Remove md5, memxor and hmac files.
7487
7488 2005-10-12  Simon Josefsson  <jas@extundo.com>
7489
7490         * m4/gc-pbkdf2-sha1.m4: New file.
7491
7492         * m4/gc-hmac-sha1.m4: New file.
7493
7494         * m4/gc-sha1: New file.
7495
7496         * m4/hmac-sha1.m4: New file.
7497
7498 2005-10-12  Simon Josefsson  <jas@extundo.com>
7499
7500         * m4/gc-md5.m4, gc-hmac-md5: New files.
7501
7502         * m4/gc.m4: Don't call gl_MD5, gl_MEMXOR or gl_HMAC_MD5.
7503
7504 2005-10-12  Simon Josefsson  <jas@extundo.com>
7505
7506         * lib/gc.h, gc-gnulib.c, gc-libgcrypt.c: Use Gc_rc for return types,
7507         suggested by Bruno Haible <bruno@clisp.org>.
7508
7509 2005-10-12  Simon Josefsson  <jas@extundo.com>
7510
7511         * lib/gc.h, gc-gnulib.c, gc-libgcrypt.c: Support SHA-1.
7512
7513 2005-10-12  Simon Josefsson  <jas@extundo.com>
7514
7515         * lib/gc-pbkdf2-sha1.c: New file.
7516
7517         * lib/gc.h: Add gc_pbkdf2_sha1 prototype.
7518
7519 2005-10-12  Simon Josefsson  <jas@extundo.com>
7520
7521         * lib/gc-libgcrypt.c (gc_hmac_sha1): New function.
7522
7523         * lib/gc-gnulib.c (gc_hmac_sha1): New function.
7524
7525 2005-10-12  Simon Josefsson  <jas@extundo.com>
7526
7527         * lib/gc-gnulib.c: Condition MD5 and HMAC-MD5 use on GC_USE_MD5 and
7528         GC_USE_HMAC_MD5, respectively.
7529
7530         * lib/gc-libgcrypt.c (gc_md5): Fix assert call.
7531         (gc_md5): Fix typo.
7532
7533         * lib/gc.h (gc_hash_buffer): Use gc_hash in prototype.
7534
7535         * lib/gc-libgcrypt.c (gc_hash_buffer): Ditto.
7536
7537         * lib/gc-gnulib.c (gc_hash_buffer): Ditto.
7538
7539 2005-10-12  Bruno Haible  <bruno@clisp.org>
7540
7541         * m4/stdbool.m4 (gl_STDBOOL_H): Define as an alias of AM_STDBOOL_H.
7542         Reported by Stepan Kasal <kasal@ucw.cz>.
7543
7544 2005-10-11  Simon Josefsson  <jas@extundo.com>
7545
7546         * tests/test-crc.c: New file.
7547
7548         * modules/crc, modules/crc-tests: New files.
7549
7550 2005-10-11  Simon Josefsson  <jas@extundo.com>
7551
7552         * m4/crc.m4: New file.
7553
7554 2005-10-11  Simon Josefsson  <jas@extundo.com>
7555
7556         * lib/gc.h: Add gc_hash and gc_hash_buffer.
7557
7558         * lib/gc-gnulib.c (gc_hash_buffer): Add.  Reorder #include's.
7559
7560         * lib/gc-libgcrypt.c (gc_hash_buffer): Add.
7561
7562 2005-10-11  Simon Josefsson  <jas@extundo.com>
7563
7564         * lib/crc.h, crc.c: New files.
7565
7566         * lib/gc.h (gc_hash_buffer): Add doc.
7567
7568 2005-10-11  Bruno Haible  <bruno@clisp.org>
7569
7570         * modules/c-strcasestr: New file.
7571         * MODULES.html.sh (String handling <string.h>): Add c-strcasestr.
7572
7573 2005-10-11  Bruno Haible  <bruno@clisp.org>
7574
7575         * modules/c-strcase: New file.
7576         * MODULES.html.sh (String handling <string.h>): Add c-strcase.
7577
7578 2005-10-11  Bruno Haible  <bruno@clisp.org>
7579
7580         * lib/strcasecmp.c: Include limits.h.
7581         (strcasecmp): Avoid integer overflow on exotic platforms.
7582         * lib/strncasecmp.c: Include limits.h.
7583         (strncasecmp): Avoid integer overflow on exotic platforms.
7584         Reported by Paul Eggert.
7585
7586 2005-10-11  Bruno Haible  <bruno@clisp.org>
7587
7588         * lib/c-strcasestr.h: New file, from GNU gettext.
7589         * lib/c-strcasestr.c: New file, from GNU gettext.
7590
7591 2005-10-11  Bruno Haible  <bruno@clisp.org>
7592
7593         * lib/c-strcase.h: New file, from GNU gettext.
7594         * lib/c-strcasecmp.c: New file, from GNU gettext.
7595         * lib/c-strncasecmp.c: New file, from GNU gettext.
7596
7597 2005-10-10  Paul Eggert  <eggert@cs.ucla.edu>
7598
7599         * modules/mempcpy (License): GPL -> LGPL.
7600         * modules/strchrnul (License): Likewise.
7601         * modules/sysexits (License): Likewise.
7602
7603 2005-10-08  Simon Josefsson  <jas@extundo.com>
7604
7605         * config/srclist.txt: Bug 1423 is closed, but 1439 remains.
7606
7607 2005-10-07  Simon Josefsson  <jas@extundo.com>
7608
7609         * m4/memxor.m4: Remove gl_C_RESTRICT call.
7610
7611 2005-10-06  Simon Josefsson  <jas@extundo.com>
7612
7613         * tests/test-hmac-md5.c: New file.
7614
7615         * modules/hmac-md5-tests: New file.
7616
7617         * modules/hmac-md5: New file.
7618
7619 2005-10-06  Simon Josefsson  <jas@extundo.com>
7620
7621         * m4/hmac-md5.m4: New file.
7622
7623         * m4/memxor.m4: Require gl_C_RESTRICT.
7624
7625 2005-10-06  Simon Josefsson  <jas@extundo.com>
7626
7627         * lib/memxor.c (memxor): Avoid casts and warnings.
7628
7629 2005-10-06  Simon Josefsson  <jas@extundo.com>
7630
7631         * lib/hmac-md5.c: New file.
7632
7633         * lib/hmac.h: New file.
7634
7635 2005-10-06  Paul Eggert  <eggert@cs.ucla.edu>
7636
7637         * m4/stdbool.m4 (AC_HEADER_STDBOOL): Check that bool
7638         promotes to int, not unsigned int, to catch the AIX 5.3
7639         compiler bug.
7640
7641 2005-10-05  Simon Josefsson  <jas@extundo.com>
7642
7643         * modules/memxor: New file.
7644
7645         * modules/iconv (Files): Move config.rpath to havelib, it is used
7646         there.
7647
7648         * modules/havelib (Files): Add config.rpath.
7649
7650 2005-10-05  Simon Josefsson  <jas@extundo.com>
7651
7652         * m4/memxor.m4: New file.
7653
7654 2005-10-05  Simon Josefsson  <jas@extundo.com>
7655
7656         * lib/memxor.c (memxor): Fix compiler error.
7657
7658         * lib/md5.h (MD5_DIGEST_SIZE, MD5_BLOCK_SIZE): Add, see also
7659         <http://sourceware.org/bugzilla/show_bug.cgi?id=1423>.
7660
7661         * lib/memxor.h, memxor.c: New files.
7662
7663         * lib/getaddrinfo.h: Don't protect sys/types.h with HAVE_SYS_TYPES_H,
7664         we assume all systems have it, suggested by Jim Meyering
7665         <jim@meyering.net>.  Remove HAVE_SYS_SOCKET_H test too, to see if
7666         any systems lack sys/socket.h; mingw32 is known to lack it, but we
7667         don't support it yet anyway.  Also remove HAVE_NETDB_H test, for
7668         same reasons.
7669
7670 2005-10-05  Simon Josefsson  <jas@extundo.com>
7671
7672         * config/srclist.txt: Add glibc bug 1423 for md5.h.
7673
7674 2005-10-05  Paul Eggert  <eggert@cs.ucla.edu>
7675
7676         * m4/getaddrinfo.m4 (gl_PREREQ_GETADDRINFO): Don't check for
7677         sys/socket.h, netdb.h, sys/types.h; the checks areno longer
7678         needed, since the source code now assumes these .h files.
7679
7680 2005-10-05  Derek Price  <derek@ximbiot.com>
7681
7682         * lib/getdelim.c (SIZE_MAX): New macro, if not already defined.
7683
7684 2005-10-05  Bruno Haible  <bruno@clisp.org>
7685
7686         * modules/stdint (License): Change to LGPL.
7687
7688 2005-10-04  Simon Josefsson  <jas@extundo.com>
7689
7690         * lib/getaddrinfo.h: Move sys/types.h include first, reported by "Mark
7691         D. Baushke" <mdb@gnu.org>.
7692
7693 2005-10-04  Bruno Haible  <bruno@clisp.org>
7694
7695         * lib/verify.h (verify_true): Provide alternative definition for C++.
7696
7697 2005-10-03  Paul Eggert  <eggert@cs.ucla.edu>
7698
7699         * lib/getdelim.c: Include getdelim.h first.  Include <limits.h>.
7700         (SSIZE_MAX): New macro, if not already defined.
7701         (getdelim): Fix buffer overrun on 64-bit hosts with lines longer
7702         than 2 GiB.
7703
7704 2005-10-02  Paul Eggert  <eggert@cs.ucla.edu>
7705
7706         Sync from coreutils.
7707         * m4/openat.m4 (gl_FUNC_OPENAT): Check for fdopendir.
7708         * m4/ullong_max.m4 (gl_ULLONG_MAX): Simplify so that it merely
7709         defines ULONG_MAX_LT_ULLONG_MAX.  Thomas M.Ott reports that
7710         ULLONG_MAX doesn't work with 2.7.2.1.
7711
7712 2005-10-02  Paul Eggert  <eggert@cs.ucla.edu>
7713
7714         * modules/xreadlink (Makefile.am): Remove lib_SOURCES.
7715         From Ben Pfaff.
7716
7717         * modules/exclude (Depends-on): Depend on verify.
7718         * modules/strtoimax (Depends-on): Likewise.
7719         * modules/utimecmp (Depends-on): Likewise.
7720
7721 2005-10-02  Paul Eggert  <eggert@cs.ucla.edu>
7722
7723         * lib/exclude.c: Include verify.h.
7724         (verify): Remove.  All callers changed to use verify.h's version.
7725         * lib/strtoimax.c: Likewise.
7726         * lib/utimecmp.c: Likewis.e
7727
7728         Sync from coreutils.
7729         * lib/.cppi-disable: Add getaddrinfo.h, getdelim.h, getline.h,
7730         getpass.c, mbchar.h, mbuiter.h, strcase.h, strnlen.h, strnlen1.h.
7731         * lib/.cvsignore: Add fts.h, search.h, t-fpending.
7732         * lib/settime.c (settime): Fix { typo in previous patch.  Also, don't
7733         bother returning ENOSYS if settimeofday or stime fails; just let
7734         them return whatever errno they want to return.
7735         * lib/utimens.c: Include unistd.h, for dup2.
7736         (futimens): Fix typo: HAVE_FUTIMESAT was misspelled in an #if.
7737         (futimens) [! HAVE_FUTIMESAT]: If !file, set errno before returning -1.
7738
7739 2005-10-02  Jim Meyering  <jim@meyering.net>
7740
7741         Sync from coreutils.
7742         * m4/utimes.m4 (gl_FUNC_UTIMES): Detect the version of utimes
7743         from glibc-2.2.5 that fails for read-only files.
7744
7745 2005-10-02  Jim Meyering  <jim@meyering.net>
7746
7747         Sync from coreutils.
7748         * lib/fts-cycle.c [HAVE_CONFIG_H]: Include <config.h>.
7749         * lib/openat-die.c: Use `#ifdef HAVE_CONFIG_H', not
7750         `#if HAVE_CONFIG_H'.
7751         * lib/openat.c (fdopendir): Do not define if HAVE_FDOPENDIR.
7752         Remove AT_FDCWD test.
7753         Do not consume the fd unless successful.
7754         * lib/openat.h (fdopendir): Do not define if HAVE_FDOPENDIR.
7755         * lib/settime.c (settime): Move the HAVE_STIME block `up' into an #elif
7756         block, so that we don't even try to compile it if settimeofday is
7757         available.  This works around a compilation failure on OSF1 V5.1,
7758         due to stime requiring a `long int*' while tv_sec is `int'.
7759
7760 2005-10-02  Alfred M. Szmidt  <ams@gnu.org>
7761
7762         Sync from coreutils.
7763         * m4/chdir-long.m4 (gl_FUNC_CHDIR_LONG): Compare $gl_have_path...
7764         against `yes', rather than just testing for nonempty.
7765
7766 2005-10-01  Simon Josefsson  <jas@extundo.com>
7767
7768         * m4/getaddrinfo.m4: Include sys/types.h for sys/socket.h, on FreeBSD
7769         and Darwin.
7770
7771         * m4/getaddrinfo.m4: Use AC_GNU_SOURCE, GNU only declare getaddrinfo
7772         as an (POSIX) extension.  Check for sys/types.h, sys/socket.h, and
7773         netdb.h too, needed by getaddrinfo.h.  Check if getaddrinfo,
7774         freeaddrinfo and gai_strerror are declared by the POSIX headers.
7775         Check if struct addrinfo is declared.
7776
7777 2005-10-01  Simon Josefsson  <jas@extundo.com>
7778
7779         * lib/getaddrinfo.h: Protect #include's of sys/socket.h and netdb.h.
7780         Only define struct addrinfo if !HAVE_STRUCT_ADDRINFO.  Protect
7781         AI_* and EAI_* definitions.  Protect function declarations.
7782
7783 2005-10-01  Jim Meyering  <jim@meyering.net>
7784
7785         Sync from coreutils.
7786
7787         * m4/getaddrinfo.m4 (gl_GETADDRINFO): Look for getservbyname in these
7788         libraries [inet nsl socket xnet].  Nelson Beebe reported that with
7789         native cc on Solaris 7, getaddrinfo.c requires -lsocket.
7790         * m4/getaddrinfo.m4 (gl_GETADDRINFO): Check for gethostbyname
7791         in the inet and nsl libraries.  Required on Solaris 5.7.
7792
7793 2005-10-01  Jim Meyering  <jim@meyering.net>
7794
7795         Sync from coreutils.
7796         * m4/getaddrinfo.m4 (gl_GETADDRINFO): Check for gethostbyname
7797         in the inet and nsl libraries.  Required on Solaris 5.7.
7798
7799 2005-10-01  Eric Blake  <ebb9@byu.net>  (tiny change)
7800
7801         * lib/getdelim.c (getdelim): Remove unused variables.
7802
7803 2005-09-29  Paul Eggert  <eggert@cs.ucla.edu>
7804
7805         * lib/xtime.h (XTIME_PRECISION): Now of type int, not long long int,
7806         so that the code works even with ancient cpp.  Portability problem
7807         with GCC 2.7.2.1 reported by Thomas M.Ott.
7808
7809 2005-09-27  Paul Eggert  <eggert@cs.ucla.edu>
7810
7811         * modules/regex (Depends-on): Add strcase.
7812
7813         * modules/gethostname (Licence): Change from GPL to LGPL, since
7814         gethostname.c is a trivial implementation of a standard library
7815         function.
7816         * modules/poll (License): Change from GPL to LGPL, since it's
7817         derived from LGPL code.
7818
7819 2005-09-27  Jim Meyering  <jim@meyering.net>
7820
7821         * lib/getcwd.c: Change #ifdef<TAB>HAVE_CONFIG_H to #ifdef
7822         HAVE_CONFIG_H.
7823
7824         * lib/intprops.h (signed_type_or_expr__): Define.
7825         (INT_STRLEN_BOUND) [__GNUC__]: Use a slightly tighter bound
7826         for unsigned types.
7827
7828 2005-09-26  Paul Eggert  <eggert@cs.ucla.edu>
7829
7830         * lib/verify.h (verify_expr): Remove, replacing with:
7831         (verify_true): New macro that returns true instead of void.
7832         (verify_type__): Remove.
7833         (verify): Use verify_true rather than verify_type__.
7834
7835 2005-09-26  Bruno Haible  <bruno@clisp.org>
7836
7837         * modules/mbchar (Include): Mention that HAVE_WCHAR_H && HAVE_WCTYPE_H
7838         is necessary.
7839         (lib_SOURCES): Remove mbchar.c.
7840         * modules/mbfile (Include): Mention that HAVE_MBRTOWC is necessary.
7841         (Files): Add m4/mbrtowc.m4.
7842         * modules/mbiter: Likewise.
7843         * modules/mbuiter: Likewise.
7844
7845 2005-09-26  Bruno Haible  <bruno@clisp.org>
7846
7847         * m4/mbchar.m4 (gl_MBCHAR): Check for wchar.h and wctype.h. Don't
7848         compile mbchar.c if they are not both present.
7849         * m4/mbfile.m4 (gl_MBFILE): Require gl_FUNC_MBRTOWC.
7850         * m4/mbiter.m4 (gl_MBITER): Likewise.
7851         * m4/strstr.m4 (gl_PREREQ_STRSTR): Use AC_REQUIRE.
7852         * m4/strcasestr.m4 (gl_PREREQ_STRCASESTR): Likewise.
7853         * m4/strcase.m4 (gl_PREREQ_STRCASECMP): Likewise.
7854
7855 2005-09-25  Jim Meyering  <jim@meyering.net>
7856
7857         * modules/inet_ntop (Depends-on): Add socklen, since inet_ntop.c
7858         also uses socklen_t.
7859
7860 2005-09-24  Paul Eggert  <eggert@cs.ucla.edu>
7861
7862         * lib/utimens.c (ENOSYS): Define if not already defined.
7863         (futimens): Support having a null PATH if the file descriptor
7864         is nonnegative.
7865
7866         * lib/regex_internal.h (__GNUC_PREREQ, always_inline, inline, pure):
7867         Remove.
7868         (__attribute): Define to empty unless GCC 3.1 or later.
7869         This works around a core dump on OpenBSD 3.4, which has GCC
7870         2.95.3, which dumps core when given __attribute__(()).  It also
7871         simplifies other tests, since we really don't want to bother with
7872         worrying about which ancient version of GCC supported what.
7873         Original problem reported by Yoann Vandoorselaere, with part of
7874         the fix suggested by Derek Price.
7875
7876 2005-09-24  Jim Meyering  <jim@meyering.net>
7877
7878         * lib/verify.h (verify_type__): Use `unsigned int' as the bitfield type
7879         so we can once again use a positive bitfield width of 1 -- now we
7880         don't have to explain why we were using a bitfield width of 2.
7881
7882 2005-09-23  Paul Eggert  <eggert@cs.ucla.edu>
7883
7884         * m4/regex.m4 (gl_REGEX): If replacing, define regcomp to rpl_regcomp,
7885         and similarly for the other external symbols.  Problem reported
7886         by James Gallager.
7887
7888         * m4/fnmatch.m4 (_AC_FUNC_FNMATCH_IF): Catch Sun Studio 10u1 on Linux
7889         bug reported by Jim Meyering.
7890
7891         * m4/utimens.m4 (gl_UTIMENS): Check for futimesat.
7892         * m4/getaddrinfo.m4 (gl_PREREQ_GETADDRINFO): Undo previous change;
7893         not needed, since socklen is a prerequisite module.
7894
7895 2005-09-23  Paul Eggert  <eggert@cs.ucla.edu>
7896
7897         * lib/getaddrinfo.c [HAVE_NETINET_IN_H]: Include <netinet/in.h>.
7898         Problem reported by Eric Blake.
7899         (getaddrinfo): Initialize se so that it's not garbage.
7900         Redo internal storage allocation so that it doesn't make unportable
7901         assumptions about alignment.
7902         Fix a memory leak.
7903
7904         * lib/utimens.c (futimens): Use futimesat if available.
7905         Prefer it to futimes since it doesn't have the futimes bug.
7906
7907         * lib/verify.h (GL_CONCAT0, GL_CONCAT): Remove.
7908         (verify): Don't use the __LINE__ trick, as it doesn't work in general.
7909         Instead, declare a function that returns a pointer to an array,
7910         and use verify_type__ to declare the size of the array.
7911         Problem and germ of a solution reported by Bruno Haible.
7912         (verify_type__): Use 2, not 1, for bitfield size, to avoid
7913         a warning with Irix 6.5 cc.  Problem reported by Bruno Haible.
7914
7915 2005-09-23  Jim Meyering  <jim@meyering.net>
7916
7917         Sync from coreutils.
7918         Correct build failure (socklen_t not defined) on at least
7919         mips-sgi-irix6.5 and alphaev67-dec-osf5.1.
7920         * m4/getaddrinfo.m4 (gl_PREREQ_GETADDRINFO): Require gl_SOCKLEN_T.
7921
7922 2005-09-23  Jim Meyering  <jim@meyering.net>
7923
7924         * modules/getaddrinfo (Depends-on): Add socklen.
7925
7926 2005-09-23  Bruno Haible  <bruno@clisp.org>
7927
7928         * tests/test-verify.c: New file.
7929
7930 2005-09-22  Paul Eggert  <eggert@cs.ucla.edu>
7931
7932         Sync from coreutils.
7933
7934         * modules/argmatch (Depends-on): Add verify.
7935         * modules/getloadavg (Depends-on): Depend on fcntl-safer, not
7936         unistd-safer.
7937         * modules/save-cwd (Depends-on): Likewise.
7938
7939         * modules/openat (Files): Add lib/openat-die.c.
7940         (Depends-on): Remove error, exitfail.
7941         Add dirname.
7942
7943         * modules/verify: New file.
7944         * MODULES.html.sh (Diagnostics <assert.h>): New section,
7945         with "verify" module.
7946
7947 2005-09-22  Paul Eggert  <eggert@cs.ucla.edu>
7948
7949         Sync from coreutils.
7950
7951         * m4/backupfile.m4, calloc.m4, chown.m4, cloexec.m4, dup2.m4:
7952         * m4/fileblocks.m4, free.m4, ftruncate.m4, getcwd.m4, getpagesize.m4:
7953         * m4/getugroups.m4, group-member.m4, idcache.m4, link-follow.m4:
7954         * m4/mkstemp.m4, mktime.m4, mountlist.m4, nanosleep.m4, pathmax.m4:
7955         * m4/physmem.m4, posixver.m4, putenv.m4, safe-read.m4, same.m4:
7956         * m4/save-cwd.m4, stdio-safer.m4, unistd-safer.m4, unlinkdir.m4:
7957         * m4/userspec.m4, xgetcwd.m4, xreadlink.m4:
7958         Don't bother checking for string.h, stdlib.h, unistd.h.
7959         * m4/fts.m4 (gl_FUNC_FTS_CORE): Don't require
7960         AC_FUNC_LSTAT_FOLLOWS_SLASHED_SYMLINK; that's now the lstat
7961         module's job.
7962         * m4/jm-macros.m4 (gl_MACROS): Likewise.
7963         * m4/prereq.m4 (gl_PREREQ): Add gl_FUNC_LSTAT.
7964
7965         * m4/getdate.m4 (gl_C_COMPOUND_LITERALS): New macro.
7966         (gl_GETDATE): Use it.
7967
7968         * m4/mkdir-p.m4 (gl_MKDIR_PARENTS): Don't bother checking for unistd.h.
7969
7970 2005-09-22  Paul Eggert  <eggert@cs.ucla.edu>
7971
7972         Sync from coreutils.
7973
7974         * lib/.cppi-disable: Add regcomp.c, regex_internal.c, regex_internal.h,
7975         stat-time.h.
7976         * lib/argmatch.h: Include verify.h
7977         (ARGMATCH_VERIFY): Use verify rather than rolling our own.
7978         (ARGMATCH_ASSERT): Remove; unused.
7979         * lib/canonicalize.c: Assume STDC_HEADERS.
7980         * lib/exclude.c: Include "strcase.h".
7981         * lib/regex_internal.h [!defined _LIBC]: Likewise.
7982         * lib/getusershell.c: Include stdio--.h rather than stdio.h
7983         and stdio-safer.h.
7984         (getusershell): Call fopen, not fopen_safer.
7985         * lib/save-cwd.c: Include fcntl--.h rather than fcntl.h.
7986         Do not include unistd-safer.h.
7987         (save_cwd): Don't call fd_safer; no longer needed
7988         now that we include fcntl--.h.
7989
7990         * lib/getdate.y (relative_time): New type.
7991         (RELATIVE_TIME_0): New constant.
7992         (parser_control): Use relative_time instead of doing it ourselves.
7993         (%union): Add new relative_time rel member.
7994         (tYEAR_UNIT, tMONTH_UNIT, tHOUR_UNIT, tMINUTE_UNIT, tSEC_UNIT):
7995         Now typeless.
7996         (relunit, relunit_snumber): Now of type rel.
7997         (zone, rel, relunit, get_date): Adjust to above changes.
7998
7999         * lib/getloadavg.c: Include fcntl--.h rather than fcntl.h.
8000         Do not include unistd-safer.h.
8001         (getloadavg): Don't call fd_safer; no longer needed
8002         now that we include fcntl--.h.
8003
8004         * lib/mkdir-p.c (ENOSYS): Define to EEXIST if not defined.
8005         (make_dir_parents): Treat ENOSYS like EEXIST.
8006
8007         Improve quality of diagnostics on restore_cwd failure.
8008         * lib/mkdir-p.h (make_dir): Remove.  All uses replaced by mkdir.
8009         (make_dir_parents): Last arg is now int * (for errno), not bool *.
8010         * lib/mkdir-p.c (make_dir, make_dir_parents): Likewise.
8011         Rewrite "mkdir -p" algorithm to avoid the need for "stat"
8012         each time through the loop.  Do not diagnose restore_cwd failure;
8013         that is the caller's job (and perhaps the caller does not care).
8014
8015         * lib/mkdir-p.c (CLEANUP_CWD, CLEANUP): Remove.
8016         (make_dir_parents): Revamp to avoid need for CLEANUP_CWD, CLEANUP.
8017         If the file already exists but is not a directory, don't bother
8018         to try to make its parents.
8019         Close potential file descriptor leak if we can't chdir("/") (!).
8020         Don't always return true if chdir($PWD) fails; return true only
8021         if the requested action was done successfully (except for the
8022         chdir($PWD)).
8023         Don't log final directory unless we actually made it.
8024         Refactor to avoid duplicate code to fix up permissions.
8025         Don't attempt to fix up parent permissions if chdir($PWD) fails.
8026
8027         * lib/strftime.c (my_strftime): Rewrite the previous change slightly,
8028         to make it a bit faster and (I hope) clearer.
8029         * lib/strftime.c (my_strftime): Add support for %:z, %::z, %:::z.
8030         Fix bug in formats like %2N.
8031
8032         * lib/verify.h: New file.
8033
8034 2005-09-22  Paul Eggert  <eggert@cs.ucla.edu>
8035
8036         Sync from coreutils.
8037         * m4/getaddrinfo.m4 (gl_PREREQ_GETADDRINFO): Check for netinet/in.h.
8038
8039 2005-09-22  Jim Meyering  <jim@meyering.net>
8040
8041         Sync from coreutils.
8042
8043         * m4/lstat.m4 (gl_FUNC_LSTAT):
8044         Use AC_LIBSOURCES to require lstat.c and lstat.h.
8045         Remove obsolete comment.
8046         * m4/xreadlink.m4: Use AC_LIBSOURCES and AC_LIBOBJ.
8047         * m4/xstrtod.m4: Likewise.
8048
8049         * m4/openat.m4 (gl_FUNC_OPENAT): Add openat-die.c.
8050
8051 2005-09-22  Jim Meyering  <jim@meyering.net>
8052
8053         Sync from coreutils.
8054
8055         * lib/backupfile.c: Use ARGMATCH_VERIFY, just in case.
8056
8057         * lib/posixtm.c (posixtime) [lint]: Initialize *all* of tm0, not just
8058         the .tm_year member, since otherwise gcc-4.0 would now warn about
8059         tm_zone, tm_gmtoff, tm_isdst, tm_yday, tm_wday.
8060
8061         * lib/quotearg.c (quotearg_n_options): Change code to be suboptimal, in
8062         order to avoid an unsuppressible warning from gcc on 64-bit systems.
8063
8064         * lib/getdate.y (get_date): Undo part of the 2005-04-04 change, so that
8065         the command "date -d'2005-03-27 +1 day'" succeeds once again, even
8066         when run in a time zone for which daylight savings time is in effect
8067         for the starting date.
8068
8069         * lib/mkdir-p.c (make_dir_parents): Don't let a failed chdir($PWD)
8070         stop us from restricting permissions of just-created absolute-named
8071         directories.
8072         * lib/mkdir-p.c (CLEANUP_CWD): Return *true*, not false when failing
8073         to restore initial working directory.
8074         * lib/mkdir-p.c (make_dir_parents): New parameter:
8075         different_working_dir, to tell caller if/when we change the working
8076         directory and are unable to return to the initial one.
8077         * lib/mkdir-p.h (make_dir_parents): Update prototype.
8078         * lib/mkdir-p.c (CLEANUP_CWD): Change one more `return 1' to
8079         `return false'.  This fixes a bug introduced on 2004-07-30.
8080
8081         * lib/openat.c (fdopendir): Be sure to close the supplied
8082         file descriptor before returning.  This makes our replacement
8083         implementation a little closer to Solaris's, where fdopendir
8084         ties the file descriptor to the returned DIR* pointer.
8085         * lib/openat.c (unlinkat): New function.
8086         * lib/openat.h (unlinkat): Add prototype.
8087         * lib/openat-die.c (openat_save_fail): Rename from openat_save_die.
8088         (openat_restore_fail): Rename from openat_restore_die.
8089         * lib/openat.c, openat.h: Reflect s/_die/_fail/ renaming.
8090
8091         Provide an alternative to exiting immediately upon save_cwd or
8092         restore_cwd failure.  Now, an application can arrange e.g.,
8093         to perform a longjump in that case.
8094         * lib/openat.c: Include dirname.h.
8095         Use IS_ABSOLUTE_FILE_NAME rather than testing for leading slash.
8096         (rpl_openat, fdopendir, fstatat): Call openat_save_die
8097         and openat_restore_die rather than calling error directly.
8098         Don't include "error.h" or "exitfail.h"; they're no longer needed.
8099
8100         * lib/openat-die.c (openat_save_die, openat_restore_die): New file.
8101         * lib/openat.h (openat_save_die, openat_restore_die): Declare and
8102         define.
8103
8104         * lib/strftime.c [FPRINTFTIME] (fprintftime): Provide a new interface:
8105         size_t fprintftime (FILE *fp, char const *fmt, struct tm const *tm,
8106                             int utc, int nanoseconds);
8107         Background:
8108         date should not have to allocate a megabyte of virtual memory to
8109         handle a format argument like +%1048575T.  When implemented with
8110         strftime, it must allocate such a buffer, use strftime to fill it
8111         in, print it, then free it.
8112         With fprintftime, it simply prints everything and exits.
8113         With no need for memory allocation, that's one fewer way to fail.
8114         * lib/strftime.c (my_strftime): Parse the colons of %:::z *after* the
8115         optional field width, not before, so we accept %9:z, not %:9z.
8116         (my_strftime): Be sure to use L_('x') for literals.
8117
8118         * lib/backupfile.c, lib/canon-host.c, lib/canonicalize.c, lib/chown.c:
8119         * lib/cloexec.c, lib/dup-safer.c, lib/dup2.c, lib/euidaccess.c:
8120         * lib/fd-safer.c, lib/fileblocks.c, lib/fopen-safer.c, lib/fsusage.c:
8121         * lib/ftruncate.c, lib/getcwd.c, lib/getcwd.h, lib/getloadavg.c:
8122         * lib/getopt_.h, lib/getpagesize.h, lib/getugroups.c:
8123         * lib/group-member.c, lib/human.h, lib/idcache.c, lib/mkdir-p.c:
8124         * lib/mountlist.c, lib/nanosleep.c, lib/pathmax.h, lib/physmem.c:
8125         * lib/posixver.c, lib/putenv.c, lib/raise.c, lib/safe-read.c:
8126         * lib/same.c, lib/save-cwd.c, lib/setenv.c, lib/settime.c:
8127         * lib/tempname.c, lib/unlinkdir.c, lib/unsetenv.c, lib/userspec.c:
8128         * lib/xgethostname.c, lib/xreadlink.c:
8129         Assume HAVE_UNISTD_H, i.e., include <unistd.h> unconditionally.
8130
8131         * lib/chown.c, lib/cloexec.c, lib/dup-safer.c, lib/dup2.c:
8132         * lib/fsusage.c, lib/getcwd.c, lib/getloadavg.c, lib/mountlist.c:
8133         * lib/openat.h, lib/save-cwd.c, lib/tempname.c:
8134         Assume HAVE_FCNTL_H (i.e., include <fcntl.h> unconditionally,
8135         and don't include <sys/file.h>).
8136
8137 2005-09-22  Eric Blake  <ebb9@byu.net>  (tiny change)
8138
8139         Sync from coreutils.
8140
8141         * lib/getloadavg.c (getloadavg) [__CYGWIN__]: Port to cygwin.
8142         [__linux__]: Allocate a big enough buffer for /proc/loadavg.
8143         [!LDAV_DONE]: Avoid unused variable warning.
8144
8145 2005-09-21  Bruno Haible  <bruno@clisp.org>
8146
8147         * lib/unicodeio.h (unicode_to_mb): New declaration.
8148
8149 2005-09-20  Derek Price  <derek@ximbiot.com>
8150
8151         * lib/getaddrinfo.c: Don't include <netdb.h> included from
8152         getaddrinfo.h.
8153
8154 2005-09-20  Bruno Haible  <bruno@clisp.org>
8155
8156         * gnulib-tool: Remove trailing slashes from the values specified for
8157         --source-base, --m4-base, --tests-base, --aux-dir.
8158         Suggested by Simon Josefsson <jas@extundo.com>.
8159
8160 2005-09-20  Bruno Haible  <bruno@clisp.org>
8161
8162         * gnulib-tool (func_all_modules, func_modules_transitive_closure,
8163         func_modules_to_filelist, func_import, func_create_testdir): Make all
8164         sorting results locale-independent, so that gnulib-cache.m4 doesn't
8165         change when gnulib-tool is invoked in a different locale.
8166
8167 2005-09-19  Simon Josefsson  <jas@extundo.com>
8168
8169         * m4/socklen.m4: Fix typo.
8170
8171 2005-09-19  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
8172
8173         Use a consistent style for including <config.h>.
8174         * lib/__fpending.c, lib/acl.c, lib/argmatch.c, lib/argp-help.c,
8175         lib/argp-parse.c, lib/argp-pvh.c, lib/backupfile.c, lib/basename.c,
8176         lib/c-stack.c, lib/calloc.c, lib/check-version.c, lib/cloexec.c,
8177         lib/closeout.c, lib/copy-file.c, lib/creat-safer.c, lib/cycle-check.c,
8178         lib/dirfd.c, lib/dirname.c, lib/dup-safer.c, lib/dup2.c,
8179         lib/euidaccess.c, lib/exclude.c, lib/exitfail.c, lib/fatal-signal.c,
8180         lib/fd-safer.c, lib/file-type.c, lib/fileblocks.c, lib/filemode.c,
8181         lib/filenamecat.c, lib/findprog.c, lib/fnmatch.c, lib/fopen-safer.c,
8182         lib/free.c, lib/fsusage.c, lib/ftruncate.c, lib/full-write.c,
8183         lib/fwriteerror.c, lib/getaddrinfo.c, lib/getcwd.c, lib/getdelim.c,
8184         lib/getline.c, lib/getlogin_r.c, lib/getndelim2.c, lib/getnline.c,
8185         lib/getopt1.c, lib/getpass.c, lib/group-member.c, lib/hard-locale.c,
8186         lib/hash-pjw.c, lib/hash.c, lib/human.c, lib/idcache.c,
8187         lib/inet_ntop.c, lib/isdir.c, lib/long-options.c, lib/malloc.c,
8188         lib/memcasecmp.c, lib/memcmp.c, lib/memcoll.c, lib/memcpy.c,
8189         lib/memmove.c, lib/mkdir-p.c, lib/modechange.c, lib/mountlist.c,
8190         lib/open-safer.c, lib/physmem.c, lib/pipe-safer.c, lib/pipe.c,
8191         lib/poll.c, lib/posixver.c, lib/progname.c, lib/progreloc.c,
8192         lib/putenv.c, lib/quote.c, lib/quotearg.c, lib/readline.c,
8193         lib/readlink.c, lib/realloc.c, lib/regex.c, lib/rename.c, lib/rmdir.c,
8194         lib/rpmatch.c, lib/safe-read.c, lib/same.c, lib/save-cwd.c,
8195         lib/savedir.c, lib/sig2str.c, lib/strcspn.c, lib/strerror.c,
8196         lib/stripslash.c, lib/strncasecmp.c, lib/strndup.c, lib/strnlen.c,
8197         lib/strnlen1.c, lib/strsep.c, lib/strstr.c, lib/strtod.c,
8198         lib/strtoimax.c, lib/strtol.c, lib/strverscmp.c, lib/tempname.c,
8199         lib/time_r.c, lib/userspec.c, lib/utimecmp.c, lib/version-etc-fsf.c,
8200         lib/version-etc.c, lib/wait-process.c, lib/xalloc-die.c, lib/xgetcwd.c,
8201         lib/xmalloc.c, lib/xmemcoll.c, lib/xnanosleep.c, lib/xreadlink.c,
8202         lib/xsetenv.c, lib/xstrndup.c, lib/xstrtoimax.c, lib/xstrtol.c,
8203         lib/xstrtoumax.c, lib/yesno.c:
8204         Standardize inclusion of config.h.
8205         * lib/__fpending.h, lib/dirfd.h, lib/getdate.h, lib/human.h,
8206         lib/inttostr.h:  Removed inclusion of config.h from header files.
8207         * lib/inttostr.c:  Adjusted in-tree users.
8208         * lib/timespec.h: Remove superfluous warning to include config.h.
8209         * lib/atexit.c, lib/chdir-long.c, lib/chown.c, lib/fchown-stub.c,
8210         lib/getgroups.c, lib/gettimeofday.c, lib/lchown.c, lib/lstat.c,
8211         lib/mkdir.c, lib/mkstemp.c, lib/nanosleep.c, lib/openat.c, lib/raise.c,
8212         lib/readtokens0.c, lib/readutmp.c, lib/unlinkdir.c: Guard inclusion of
8213         config.h with HAVE_CONFIG_H.
8214
8215 2005-09-19  Jim Meyering  <jim@meyering.net>
8216
8217         * modules/pathmax (License): Change to LGPL.
8218
8219 2005-09-19  Derek Price  <derek@ximbiot.com>
8220
8221         * config/srclist.txt: glibc's glob.h is now in lib/glob-libc.h.
8222
8223 2005-09-19  Bruno Haible  <bruno@clisp.org>
8224
8225         * gnulib-tool (import): Provide default for --tests-base.
8226
8227 2005-09-19  Bruno Haible  <bruno@clisp.org>
8228
8229         * doc/quote.texi: New file, extracted from gnulib.texi.
8230         * doc/ctime.texi: New file, extracted from gnulib.texi.
8231         * doc/inet_ntoa.texi: New file, extracted from gnulib.texi.
8232         * doc/gnulib-tool.texi: New file, extracted from gnulib.texi.
8233         * doc/gnulib.texi: Include them.
8234
8235 2005-09-18  Bruno Haible  <bruno@clisp.org>
8236
8237         Portability fix.
8238         * gnulib-tool (func_readlink): New function.
8239         (func_ln_if_changed): Use it.
8240
8241 2005-09-18  Bruno Haible  <bruno@clisp.org>
8242
8243         * gnulib-tool: Support --with-tests also with --import.
8244         (func_emit_tests_Makefile_am): Use variables $m4base and $testsbase.
8245         (func_import): Use variables $testsbase and $inctests. Emit a
8246         gl_TESTS_BASE form into gnulib-cache.m4. Create $testsbase/Makefile.am.
8247         Remind the user to add AC_CONFIG_FILES($testsdir/Makefile) and
8248         SUBDIRS += $testsdir.
8249         (func_create_testdir): Update.
8250
8251 2005-09-18  Bruno Haible  <bruno@clisp.org>
8252
8253         * gnulib-tool: Revise --dry-run implementation. Use variable $doit
8254         instead of $dry_run.
8255         (func_cp_if_changed, func_mv_if_changed): Remove functions.
8256         (func_ln_if_changed): Don't handle dry-run here.
8257         (func_import): In dry-run mode, detect more precisely which actions
8258         would be performed, and don't use "...ing" verbs.
8259
8260 2005-09-18  Bruno Haible  <bruno@clisp.org>
8261
8262         * gnulib-tool (func_tmpdir): New function, taken from GNU gettextize.
8263         (func_import): Use join on two temporary files instead of three nested
8264         loops, in order to determine which files are new or old.
8265
8266 2005-09-18  Bruno Haible  <bruno@clisp.org>
8267
8268         * gnulib-tool (func_import): Comment out code that spits out the
8269         new files with --dry-run.
8270
8271 2005-09-18  Bruno Haible  <bruno@clisp.org>
8272
8273         * doc/gnulib.texi (Invoking gnulib-tool): 50% rewritten.
8274
8275 2005-09-16  Paul Eggert  <eggert@cs.ucla.edu>
8276
8277         * lib/stat-time.h: New file.
8278         * lib/timespec.h (ST_TIME_CMP_NS, ST_TIME_CMP, ATIME_CMP, CTIME_CMP):
8279         (MTIME_CMP, TIMESPEC_NS): Remove.  Now done by stat-time.h,
8280         in a different way.
8281         (timespec_cmp): New function.
8282         * lib/utimecmp.c: Include stat-time.h.
8283         (SYSCALL_RESOLUTION): Depend on whether various struct stat
8284         members exist, not on the obsolescent ST_MTIM_NSEC.
8285         (utimecmp): Use the new stat-time functions rater than TIMESPEC_NS.
8286
8287 2005-09-16  Paul Eggert  <eggert@cs.ucla.edu>
8288
8289         * config/srclist.txt: Remove glibc bug 1033 and uncomment mktime.c.
8290
8291 2005-09-16  Paul Eggert  <eggert@cs.ucla.edu>
8292
8293         * MODULES.html.sh (File system functions): Add stat-time.
8294         * modules/stat-time: New file.
8295         * modules/timespec (Files): Remove m4/st_mtim.m4; this
8296         is now done in a different way, by the stat-time module.
8297         * modules/utimecmp (Depends-on): Add stat-time.
8298
8299 2005-09-15  Paul Eggert  <eggert@cs.ucla.edu>
8300
8301         * m4/st_mtim.m4: Remove.  Superseded by...
8302         * m4/stat-time.m4: New file.
8303         * m4/timespec.m4 (gl_TIMESPEC): Require AC_C_INLINE.
8304         Do not invoke AC_STRUCT_ST_MTIM_NSEC; no longer needed.
8305
8306 2005-09-15  Derek Price  <derek@ximbiot.com>
8307
8308         * m4/strstr.m4 (gl_FUNC_STRSTR): Don't define strstr here.
8309
8310 2005-09-15  Derek Price  <derek@ximbiot.com>
8311
8312         * lib/regex_internal.h: Blank `pure' for GNUC < 3.
8313         * lib/regex_internal.c: Ditto, using this...
8314         (__GNUC_PREREQ): ...new macro.
8315         * lib/regcomp.c, regexec.c: Blank `always_inline' for GNUC < 3.1
8316         using...
8317         (__GNUC_PREREQ): ...this new macro.
8318
8319         * lib/strstr.h: Include string.h. Define strstr as a macro here.
8320
8321 2005-09-15  Derek Price  <derek@ximbiot.com>
8322             Paul Eggert  <eggert@cs.ucla.edu>
8323
8324         * lib/regcomp.c, regexec.c, regex_internal.c: Back out previous
8325         changes, consolidating in...
8326         * lib/regex_internal.h: ...this file.
8327
8328 2005-09-13  Jim Meyering  <jim@meyering.net>
8329
8330         * lib/canon-host.c: Filter through gnu indent and reword comments
8331         slightly.
8332         * lib/canon-host.h (ch_strerror_r): Tweak cpp indentation and spacing.
8333
8334 2005-09-13  Derek Price  <derek@ximbiot.com>
8335
8336         * lib/canon-host.c (canon_host_r): Set *cherror on memory allocation
8337         failure.
8338         Reported by Jim Meyering  <jim@meyering.net>.
8339
8340 2005-09-12  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>  (tiny change)
8341
8342         * lib/base64.c: Typo.
8343         (base64_encode): Put b64str in initialized data section.
8344
8345 2005-09-12  Paul Eggert  <eggert@cs.ucla.edu>
8346
8347         Merge glibc and coreutils changes into gnulib, plus a few
8348         extra fixes.
8349         * lib/md5.c: Use #error rather than a string.
8350         (CYCLIC): New macro, from glibc source.  Use it instead of rol.
8351         * lib/md5.h (__GNUC_PREREQ, __THROW): Define if not defined already.
8352         (__attribute__): Define to empty for non recent-GCC.
8353         (__md5_buffer, __md5_finish_ctx, __md5_init_ctx, __md5_process_block):
8354         (__md5_process_bytes, __md5_read_ctx, __md5_stream):
8355         Renamed from their non-__ counterparts, with new macros replacing
8356         them if not _LIBC.  Add __THROW attribute.
8357         (rol): Remove.
8358         (struct md5_ctx): Align buffer if using GCC.
8359         * lib/sha1.h (struct sha1_ctx): Likewise.
8360         * lib/sha1.c (SWAP): Renamed from the NOTSWAP.  All uses changed.
8361         The old name was backwards.
8362         (NOTSWAP): Remove; not used.
8363         (rol): New macro, moved here from md5.h.
8364         (sha1_process_block): Remove a FIXME that doesn't make sense.
8365
8366 2005-09-12  Derek Price  <derek@ximbiot.com>
8367
8368         Return usable errors from canon-host.
8369         * lib/canon-host.h: New file.
8370         * lib/canon-host.c (canon_host): Wrap...
8371         (canon_host_r): ...this new function, which now relies exclusively on
8372         getaddrinfo.
8373         (ch_strerror): New function.
8374         (last_cherror): New global.
8375         * lib/getaddrinfo.c: Move include of getaddrinfo.h first to test
8376         interface.
8377         (getaddrinfo): Add AI_CANONNAME functionality.  Don't do arithmetic on
8378         void *.
8379         (freeaddrinfo): Free ai->ai_canonname when set.
8380
8381 2005-09-12  Derek Price  <derek@ximbiot.com>
8382
8383         Make canon-host require getaddrinfo.
8384         * m4/canon-host.m4 (gl_CANON_HOST): Remove most dependencies.
8385         AC_LIBSOURCE canon-host.h.  Call...
8386         (gl_PREREQ_CANON_HOST): ...this new function, which requires
8387         gl_GETADDRINFO.
8388         * m4/getaddrinfo.m4 (gl_GETADDRINFO): Compile gai_strerror when needed.
8389
8390 2005-09-12  Derek Price  <derek@ximbiot.com>
8391
8392         * modules/canon-host: Add canon-host.h.  Depend on getaddrinfo.  Make
8393         LGPL.
8394         * modules/getaddrinfo: Add link to opengroup spec.  Depend on strdup.
8395
8396 2005-09-12  Derek Price  <derek@ximbiot.com>
8397
8398         * lib/gai_strerror.c: Include config.h when available.  Include
8399         getaddrinfo.h before other headers to test interface.
8400         Reported by Larry Jones <lawrence.jones@ugs.com>.
8401
8402 2005-09-12  Derek Price  <derek@ximbiot.com>
8403             Paul Eggert  <eggert@cs.ucla.edu>
8404
8405         * modules/glob (Files): Add glob-libc.h.
8406
8407 2005-09-12  Derek Price  <derek@ximbiot.com>
8408             Paul Eggert  <eggert@cs.ucla.edu>
8409
8410         * m4/glob.m4 (gl_GLOB_SUBSTITUTE): AC_LIBSOURCES for glob.c,
8411         glob_.h, glob-libc.h.
8412         (gl_PREREQ_GLOB): Remove _SYS_CDEFS_H hack; no longer needed.
8413
8414 2005-09-12  Derek Price  <derek@ximbiot.com>
8415             Paul Eggert  <eggert@cs.ucla.edu>
8416
8417         * lib/glob-libc.h: Renamed from glob_.h.  The new version is
8418         taken from libc's glob.h, except with '#ifdef __GLOB_GNULIB'
8419         protecting things that should be done only in gnulib contexts.
8420         * lib/glob_.h: New file, containing only the glob things needed for
8421         gnulib.
8422         (GLOB_PREFIX): Remove.  All uses changed to look for __GLOB_GNULIB.
8423         (__GLOB_CONCAT, __GLOB_XCONCAT, __GLOB_ID): Remove; no longer needed.
8424         (glob, globfree, glob_pattern_p): Now defined simply in terms of
8425         rpl_glob, rpl_globfree, rpl_glob_pattern_p.
8426         (__GLOB_GNULIB): New macro, to keep the glob.h changes clearer
8427         and to respect the namespace rules better.
8428
8429 2005-09-08  Simon Josefsson  <jas@extundo.com>
8430
8431         * modules/socklen: New file.
8432
8433 2005-09-08  Simon Josefsson  <jas@extundo.com>
8434
8435         * m4/socklen.m4: New file.
8436
8437 2005-09-08  Paul Eggert  <eggert@cs.ucla.edu>
8438
8439         * modules/utimens (Files): Add m4/utimbuf.m4, since
8440         m4/utimens.m4 requires gl_CHECK_TYPE_STRUCT_UTIMBUF.
8441         Reported by Sergey Poznyakoff.
8442
8443 2005-09-08  Paul Eggert  <eggert@cs.ucla.edu>
8444
8445         * lib/glob.c (glob, globfree, __glob_pattern_p): Use old-style function
8446         definitions, since that's the preferred style in glibc.
8447         Fix a minor spacing issue, and update copyright notice to match
8448         glibc's.
8449
8450 2005-09-08  Paul Eggert  <eggert@cs.ucla.edu>
8451
8452         * config/srclist.txt: Remove glibc bug 1061; it's been fixed.
8453
8454 2005-09-06  Simon Josefsson  <jas@extundo.com>
8455
8456         * lib/getpass.c (getpass): Fix typo, test for HAVE_TCSETATTR and not
8457         TCSETATTR.  Reported by Derek Price <derek@ximbiot.com>.
8458
8459 2005-09-06  Paul Eggert  <eggert@cs.ucla.edu>
8460
8461         * lib/regex_internal.h (bitset_not): Add parens to avoid gcc -Wall
8462         warning.
8463
8464 2005-09-06  Paul Eggert  <eggert@cs.ucla.edu>
8465
8466         * config/srclist.txt: Add glibc bug 1302.
8467
8468 2005-09-05  Paul Eggert  <eggert@cs.ucla.edu>
8469
8470         Change bitset word type from unsigned int to unsigned long int,
8471         as this has better performance on typical 64-bit hosts.
8472         Port bitset code to hosts with unusual word sizes.
8473         * lib/regcomp.c (build_equiv_class, build_charclass, build_range_exp):
8474         (build_collating_symbol):
8475         Prefer bitset to re_bitset_ptr_t in prototypes, when the actual
8476         argument is a bitset.  This is merely a style issue, but it makes
8477         it clearer that an entire array is expected.
8478         (re_compile_fastmap_iter, init_dfa, init_word_char, optimize_subexps):
8479         * lib/regcomp.c (lower_subexp, parse_bracket_exp, built_charclass_op):
8480         Port to the case where bitset_word is not the same as unsigned int.
8481         * lib/regex_internal.h (bitset_set, bitset_clear, bitset_contain):
8482         (bitset_not, bitset_merge, bitset_set_all, bitset_mask):
8483         Likewise.
8484         * lib/regexec.c (check_dst_limits_calc_pos_1,
8485         check_subexp_matching_top):
8486         (build_trtable, group_nodes_into_DFAstates):
8487         Likewise.
8488         * lib/regcomp.c (re_compile_fastmap_iter, utf8_sb_map, optimize_utf8):
8489         Don't assume that SBC_MAX is a multiple of BITSET_WORD_BITS.
8490         * lib/regex_internal.h (bitset_set_all, bitset_not): Likewise.
8491         * lib/regexec.c (group_nodes_into_DFAstates): Likewise.
8492         * lib/regcomp.c (utf8_sb_map): Don't assume UINT_MAX == 0xffffffff.
8493         * lib/regcomp.c (optimize_subexps, lower_subexp):
8494         Work even if bitset_word has holes in its bitwise representation.
8495         * lib/regex_internal.h (BITSET_WORD_BITS): Likewise.
8496         * lib/regexec.c (check_dst_limits_calc_pos_1,
8497         check_subexp_matching_top):
8498         Likewise.
8499         * lib/regex_internal.c (re_string_reconstruct):
8500         Don't assume UCHAR_MAX == 255.
8501         * lib/regex_internal.h (bitset_set_all): Likewise.
8502         * lib/regex_internal.h (BITSET_WORD_BITS): Renamed from UINT_BITS.
8503         All uses changed.
8504         (BITSET_WORDS): Renamed from BITSET_UINTS.  All uses changed.
8505         (bitset_word): New type, replacing 'unsigned int' for bitset uses.
8506         All uses changed.
8507         (BITSET_WORD_MAX): New macro.
8508         (bitset_set, bitset_clear, bitset_contain, bitset_empty):
8509         (bitset_set_all, bitset_copy):  Now inline functions, not macros.
8510         (bitset_empty, bitset_copy):
8511         Prefer sizeof (bitset) to multiplying it out ourselves.
8512         (bitset_not_merge): Remove; unused.
8513         (bitset_contain): Return bool, not unsigned int with one bit on.
8514         All callers changed.
8515         * lib/regexec.c (build_trtable): Don't assume bitset has no stricter
8516         alignment than re_node_set; do this by defining a new internal
8517         type struct dests_alloc and using it to allocate memory.
8518
8519 2005-09-05  Bruno Haible  <bruno@clisp.org>
8520
8521         * gnulib-tool (func_import): Fix comparison in handling of symbolic
8522         links.
8523
8524 2005-09-04  Martin Lambers <marlam@marlam.de>  (tiny change)
8525
8526         * modules/size_max (Makefile.am): Add size_max.h
8527
8528 2005-09-04  Derek Price  <derek@ximbiot.com>
8529
8530         * gnulib-tool (func_import): Fix reversed $symbolic logic.
8531
8532 2005-09-03  Simon Josefsson  <jas@extundo.com>
8533
8534         * gnulib-tool: Fix typo.
8535
8536 2005-09-03  Simon Josefsson  <jas@extundo.com>
8537
8538         * config/srclist.txt: Add glibc bug 1293.
8539
8540 2005-09-03  Derek Price  <derek@ximbiot.com>
8541
8542         * m4/getlogin_r (gl_GETLOGIN_R): Fix cut & paste error.
8543         From Larry Jones <lawrence.jones@ugs.com>.
8544
8545 2005-09-02  Simon Josefsson  <jas@extundo.com>
8546
8547         * modules/socklen: New file.
8548
8549 2005-09-02  Simon Josefsson  <jas@extundo.com>
8550
8551         * modules/havelib: New module.
8552
8553         * modules/gettext, modules/iconv, modules/lock, modules/readline:
8554         Use havelib.
8555
8556 2005-09-02  Paul Eggert  <eggert@cs.ucla.edu>
8557
8558         Check for arithmetic overflow when calculating sizes, to prevent
8559         some buffer-overflow issues.  These patches are conservative, in the
8560         sense that when I couldn't determine whether an overflow was possible,
8561         I inserted a run-time check.
8562         * lib/regex_internal.h (re_xmalloc, re_xrealloc, re_x2realloc): New
8563         macros.
8564         (SIZE_MAX) [!defined SIZE_MAX]: New macro.
8565         (re_alloc_oversized, re_x2alloc_oversized, re_xnmalloc):
8566         (re_xnrealloc, re_x2nrealloc): New inline functions.
8567         * lib/regcomp.c (init_dfa, analyze, build_range_exp,
8568         parse_bracket_exp):
8569         (build_equiv_class, build_charclass): Check for arithmetic overflow
8570         in size expression calculations.
8571         * lib/regex_internal.c (re_string_realloc_buffers):
8572         (build_wcs_upper_buffer, re_node_set_add_intersect):
8573         (re_node_set_init_union, re_node_set_insert, re_node_set_insert_last):
8574         (re_dfa_add_node, register_state): Likewise.
8575         * lib/regexec.c (re_search_stub, re_copy_regs, re_search_internal):
8576         (prune_impossible_nodes, push_fail_stack, set_regs, check_arrival):
8577         (build_trtable, extend_buffers, match_ctx_init, match_ctx_add_entry):
8578         (match_ctx_add_subtop, match_ctx_add_sublast): Likewise.
8579
8580 2005-09-02  Paul Eggert  <eggert@cs.ucla.edu>
8581
8582         * modules/inttostr (Files): Add m4/inttypes_h.m4, m4/stdint_h.m4,
8583         m4/ulonglong.m4.  Problem reported by Martin Lambers.
8584
8585 2005-09-02  Bruno Haible  <bruno@clisp.org>
8586
8587         Support for lib vs. lib64 distinction on biarch platforms.
8588         * m4/lib-prefix.m4 (AC_LIB_PREPARE_MULTILIB): New macro.
8589         (AC_LIB_PREFIX): Require it. Use $acl_libdirstem instead of 'lib'.
8590         * m4/lib-link.m4 (AC_LIB_LINKFLAGS_BODY): Likewise.
8591
8592 2005-09-02  Bruno Haible  <bruno@clisp.org>
8593
8594         * gnulib-tool (import): In the other first-use case, provide defaults
8595         as well.
8596
8597 2005-09-02  Bruno Haible  <bruno@clisp.org>
8598
8599         * config/srclist.txt: lib-link.m4 and lib-prefix.m4 currently have
8600         patches not yet found in the latest gettext release.
8601
8602 2005-09-01  Paul Eggert  <eggert@cs.ucla.edu>
8603
8604         * lib/glob.c (GET_LOGIN_NAME_MAX): Renamed from LOGIN_NAME_MAX,
8605         to avoid a collision with bits/local_lim.h in glibc.
8606         All uses changed.  Problem reported by Dmitry V. Levin in
8607         <http://sources.redhat.com/bugzilla/show_bug.cgi?id=1060>.
8608
8609         * lib/regex_internal.c (build_wcs_upper_buffer): Fix portability
8610         bugs in int versus size_t comparisons.
8611         (re_string_context_at): Fix bug where the code assumed that
8612         Idx is signed.
8613
8614         Use bool where appropriate.
8615         * lib/regcomp.c (re_set_fastmap): ICASE arg is bool, not int.
8616         All callers changed.
8617         (calc_eclosure_iter): Likewise, for ROOT arg.
8618         (parse_bracket_element): Likewise, for ACCEPT_HYPHEN arg.
8619         (build_charclass_op): Likewise, for NON_MATCH arg.
8620         * lib/regex_internal.c (re_string_allocate, re_string_construct):
8621         (re_string_construct_common): Likewise, for ICASE arg.
8622         * lib/regexec.c (re_search_2_stub, re_search_stub):
8623         Likewise, for RET_LEN arg.
8624         (check_matching): Likewise, for FL_LONGEST_MATCH arg.
8625         (set_regs): Likewise, for FL_BACKTRACK arg.
8626         * lib/regcomp.c (re_compile_fastmap_iter, optimize_utf8):
8627         (duplicate_node_closure, calc_inveclosure, calc_eclosure):
8628         (calc_eclosure_iter, parse_bracket_exp):
8629         Use bool for internal variables that are booleans.
8630         * lib/regexec.c (re_search_internal, check_matching,
8631         proceed_next_node):
8632         (set_regs, build_sifted_states, sift_states_bkref):
8633         (check_arrival_add_next_nodes, check_arrival_expand_ecl_sub):
8634         (expand_bkref_cache, build_trtable, group_nodes_into_DFAstates):
8635         (find_collation_sequence_value):
8636         Likewise.
8637         * lib/regex_internal.c (re_node_set_insert, re_node_set_insert_last):
8638         (re_node_set_compare):
8639         Return bool, not int. All callers changed.
8640         * lib/regexec.c (check_halt_node_context, check_dst_limits):
8641         (build_trtable, check_node_accept): Likewise.
8642         * lib/regex_internal.h: Include stdbool.h.
8643
8644         Fix bugs uncovered when converting to bool.
8645         * lib/regcomp.c (calc_eclosure_iter): Check for storage allocation
8646         failure instead of charging ahead blindly.
8647         * lib/regex_internal.c (register_state): Likewise.
8648         * lib/regexec.c (re_search_2_stub): Use simpler method than boolean
8649         for freeing internal storage.
8650         (group_nodes_into_DFA_states): Use unsigned int, not int, for
8651         bitset pieces used as boolean, to avoid undefined behavior
8652         on hosts that do int overflow checking.
8653
8654 2005-09-01  Paul Eggert  <eggert@cs.ucla.edu>
8655
8656         * config/srclist.txt: Add glibc bugs 1285-1287.
8657
8658 2005-09-01  Jim Meyering  <jim@meyering.net>
8659
8660         * m4/lchown.m4: Require gl_FUNC_CHOWN, for the definition of
8661         CHOWN_MODIFIES_SYMLINK, which is used by lchown.c.
8662         Require gl_STAT_MACROS, too.
8663
8664 2005-09-01  Bruno Haible  <bruno@clisp.org>
8665
8666         * gnulib-tool (import): In the first-use case, provide defaults.
8667
8668 2005-09-01  Bruno Haible  <bruno@clisp.org>
8669
8670         * gnulib-tool (func_import): Remove the .tmp files.
8671
8672 2005-09-01  Bruno Haible  <bruno@clisp.org>
8673
8674         * gnulib-tool (func_import): Fix handling of symbolic links.
8675
8676 2005-08-31  Paul Eggert  <eggert@cs.ucla.edu>
8677
8678         On 64-bit hosts (where size_t is 64 bits and int is 32 bits), the
8679         old glibc regex code mishandles strings longer than 2**31 bytes.
8680         This patch fixes this when the regex code is used in gnulib
8681         (i.e., outside glibc).
8682
8683         This patch should not affect the use of the regex code inside
8684         glibc.  No doubt this problem also needs to be handled for glibc
8685         as well, but the result will be an incompatible change to the
8686         glibc ABI, and the old ABI will have to be supported too.  That
8687         can be the the subject for another patch.
8688
8689         * lib/regex.h (_REGEX_LARGE_OFFSETS): New feature-test macro,
8690         governing whether the rest of this patch is active.  By default,
8691         the macro is disabled and the patch has no effect.
8692         (regoff_t) [defined _REGEX_LARGE_OFFSETS]: Define to off_t, not int.
8693         (__re_idx_t, __re_size_t, __re_long_size_t): New types.
8694         (struct re_pattern_buffer, re_search, re_search_2, re_match):
8695         (re_match_2, re_set_registers): Use the new types.
8696         * lib/regex_internal.h (Idx, re_hashval_t): New types.
8697         (REG_MISSING, REG_ERROR, REG_VALID_INDEX, REG_VALID_NONZERO_INDEX):
8698         New macros.
8699         (re_node_set, re_charset_t, re_token_t, re_string_realloc_buffers):
8700         (re_string_context_at, bin_tree_t, re_dfastate_t):
8701         (struct re_state_table_entry, state_array_t, re_sub_match_last_t):
8702         (re_sub_match_top_t, re_match_context_t, re_sift_context_t):
8703         (struct re_fail_stack_ent_t, struct re_fail_stack_t, struct re_dfa_t):
8704         (re_string_char_size_at, re_string_wchar_at):
8705         (re_string_elem_size_at):
8706         Use the new types and macros to port to 64-bit hosts.
8707         Use unsigned types for internal values, so that the code
8708         mostly works even for arrays larger than SSIZE_MAX.
8709         * lib/regcomp.c (re_compile_internal, init_dfa, duplicate_node):
8710         (search_duplicated_node, calc_eclosure_iter, fetch_number):
8711         (parse_reg_exp, parse_branch, parse_expression, parse_sub_exp):
8712         (build_equiv_class, build_charclass, re_compile_fastmap_iter):
8713         (free_dfa_content, create_initial_state, optimize_utf8, analyze):
8714         (optimize_subexps, calc_first, link_nfa_nodes, duplicate_node_closure):
8715         (calc_inveclosure, parse_dup_op, build_range_exp):
8716         (build_collating_symbol, parse_bracket_exp, build_charclass_op):
8717         (fetch_number, create_token_tree, mark_opt_subexp):
8718         Likewise.
8719         * lib/regex_internal.c (re_string_construct_common,
8720         create_ci_newstate):
8721         (create_cd_newstate, re_string_allocate, re_string_construct):
8722         (re_string_realloc_buffers, build_wcs_upper_buffer):
8723         (re_string_skip_chars, build_upper_buffer, re_string_translate_buffer):
8724         (re_string_reconstruct, re_string_peek_byte_case):
8725         (re_string_fetch_byte_case, re_string_context_at):
8726         (re_node_set_alloc, re_node_set_init_1, re_node_set_init_2):
8727         (re_node_set_init_copy, re_node_set_add_intersect):
8728         (re_node_set_init_union, re_node_set_merge, re_node_set_insert):
8729         (re_node_set_insert_last, re_node_set_compare, re_node_set_contains):
8730         (re_node_set_remove_at, re_dfa_add_node, calc_state_hash):
8731         (re_acquire_state, re_acquire_state_context, register_state):
8732         Likewise.
8733         * lib/regex.c (match_ctx_init, match_ctx_add_entry,
8734         search_cur_bkref_entry):
8735         (match_ctx_add_subtop, match_ctx_add_sublast, sift_ctx_init):
8736         (re_search_internal, re_search_2_stub, re_search_stub)
8737         (re_copy_regs, check_matching, check_halt_state_context, update_regs):
8738         (push_fail_stack, sift_states_iter_mb, build_sifted_states):
8739         (update_cur_sifted_state, check_dst_limits):
8740         (check_dst_limits_calc_pos_1, check_dst_limits_calc_pos):
8741         (check_subexp_limits, sift_states_bkref, merge_state_array):
8742         (check_subexp_matching_top, get_subexp, get_subexp_sub):
8743         (find_subexp_node, check_arrival, check_arrival_add_next_nodes):
8744         (check_arrival_expand_ecl, check_arrival_expand_ecl_sub):
8745         (expand_bkref_cache, check_node_accept_bytes):
8746         (group_nodes_into_DFAstates, check_node_accept, regexec, re_match):
8747         (re_search, re_match_2, re_search_2, prune_impossible_nodes):
8748         (acquire_init_state_context, check_halt_node_context):
8749         (proceed_next_node, pop_fail_stack, set_regs, free_fail_stack_return):
8750         (sift_states_backward, clean_state_log_if_needed):
8751         (sub_epsilon_src_nodes, add_epsilone_src_nodes, merge_state_with_log):
8752         (find_recover_state, transit_state_sb, transit_state_mb):
8753         (transit_state_bkref, build_trtable, match_ctx_clean):
8754         Likewise.
8755         * lib/regcomp.c (parse_dup_op): Add an extra test if Idx is unsigned,
8756         to work around an assumption that REG_MISSING is negative.
8757
8758         * lib/regcomp.c (re_comp) [defined _REGEX_RE_COMP || defined _LIBC]:
8759         (seek_collating_symbol_entry) [defined _LIBC]:
8760         (lookup_collation_sequence_value) [defined _LIBC]:
8761         (build_range_exp, build_collating_symbol) [defined _LIBC]:
8762         Use prototypes rather than old-style function definitions.
8763         * lib/regexec.c (re_exec) [defined _REGEX_RE_COMP || defined _LIBC]:
8764         (transit_state_sb) [0]:
8765         (find_collation_sequence_value) [defined _LIBC]: Likewise.
8766
8767         * lib/regexec.c (re_search_internal): Simplify update of rm_so and
8768         rm_eo.
8769
8770         * lib/regcomp.c (re_compile_fastmap_iter, init_dfa, init_word_char):
8771         (optimize_subexps, lower_subexp):
8772         Don't assume 1<<31 has defined behavior on hosts with 32-bit int,
8773         since the signed shift might overflow.  Use 1u<<31 instead.
8774         * lib/regex_internal.h (bitset_set, bitset_clear, bitset_contain):
8775         Likewise.
8776         * lib/regexec.c (check_dst_limits_calc_pos_1,
8777         check_subexp_matching_top): Likewise.
8778
8779         * lib/regcomp.c (optimize_subexps, lower_subexp):
8780         Use CHAR_BIT rather than 8, for clarity.
8781         * lib/regexec.c (check_dst_limits_calc_pos_1):
8782         (check_subexp_matching_top): Likewise.
8783         * lib/regcomp.c (init_dfa): Make table_size unsigned, so that we don't
8784         have to worry about portability issues when shifting it left.
8785         Remove no-longer-needed test for table_size > 0.
8786         * lib/regcomp.c (parse_sub_exp): Do not shift more bits than there are
8787         in a word, as the resulting behavior is undefined.
8788         * lib/regexec.c (check_dst_limits_calc_pos_1): Likewise;
8789         in one case, a <= should have been an <, and in another case the
8790         whole test was missing.
8791         * lib/regex_internal.h (BYTE_BITS): Remove.  All uses changed to
8792         the standard name CHAR_BIT.
8793         * lib/regexec.c (match_ctx_add_entry): Don't assume that ~0 == -1;
8794         this is not true on one's complement and signed-magnitude hosts.
8795
8796         * lib/regex_internal.h (re_sub_match_top_t): Remove unused member
8797         next_last_offset.
8798         (struct re_dfa_t): Remove unused member states_alloc.
8799         * lib/regcomp.c (init_dfa): Don't initialize unused members.
8800
8801 2005-08-31  Paul Eggert  <eggert@cs.ucla.edu>
8802
8803         * m4/regex.m4 (gl_REGEX): Require AC_SYS_LARGEFILE, Define
8804         _REGEX_LARGE_OFFSETS).  Test for regoff_t/off_t bug in 64-bit
8805         and large-file glibc and in 32-bit large-file Solaris.
8806
8807 2005-08-31  Paul Eggert  <eggert@cs.ucla.edu>
8808
8809         * lib/regex_internal.c (re_string_reconstruct): Don't assume buffer
8810         lengths fit in regoff_t; this isn't true if regoff_t is the same
8811         width as size_t.
8812         * lib/regex.c (re_search_internal): 5th arg is LAST_START
8813         (= START + RANGE) instead of RANGE.  This avoids overflow
8814         problems when regoff_t is the same width as size_t.
8815         All callers changed.
8816         (re_search_2_stub): Check for overflow when adding the
8817         sizes of the two strings.
8818         (re_search_stub): Check for overflow when adding START
8819         to RANGE; if it occurs, substitute the extreme value.
8820
8821 2005-08-31  Paul Eggert  <eggert@cs.ucla.edu>
8822
8823         * config/srclist.txt: Add glibc bugs 1273, 1278-1282, 1284.
8824
8825 2005-08-31  Jim Meyering  <jim@meyering.net>
8826
8827         * lib/regcomp.c (search_duplicated_node): Make first pointer arg
8828         a pointer-to-const.
8829         * lib/regex_internal.c (create_ci_newstate, create_cd_newstate):
8830         (register_state): Likewise.
8831         * lib/regexec.c (search_cur_bkref_entry, check_dst_limits):
8832         (check_dst_limits_calc_pos_1, check_dst_limits_calc_pos):
8833         (group_nodes_into_DFAstates): Likewise.
8834
8835 2005-08-31  Jim Meyering  <jim@meyering.net>
8836
8837         * check-module: Add a FIXME comment.
8838
8839 2005-08-31  Eric Blake  <ebb9@byu.net>
8840
8841         * modules/unistd-safer (Files): Add unistd--.h.
8842         * modules/stdio-safer (Files): Add stdio--.h.
8843
8844 2005-08-31  Derek Price  <derek@ximbiot.com>
8845
8846         * lib/getdelim.c (getdelim): Return EOF on EOF.
8847         Reported by Larry Jones <lawrence.jones@ugs.com>.
8848
8849 2005-08-31  Bruno Haible  <bruno@clisp.org>
8850
8851         Avoid unnecessary diffs in the generated lib/Makefile.am.
8852         * gnulib-tool (func_emit_lib_Makefile_am): Don't write the cmd into
8853         the generated files.
8854         (func_import): Don't set cmd.
8855
8856 2005-08-31  Bruno Haible  <bruno@clisp.org>
8857
8858         * lib/strstr.c: Include <stddef.h>, for NULL.
8859         * lib/strcasestr.c: Likewise.
8860         Reported by Yoann Vandoorselaere <yoann.v@prelude-ids.com>.
8861
8862 2005-08-31  Bruno Haible  <bruno@clisp.org>
8863
8864         * gnulib-tool: New option --macro-prefix.
8865         (func_import): Use macro_prefix.
8866         (import): Handle option --macro-prefix.
8867
8868 2005-08-31  Bruno Haible  <bruno@clisp.org>
8869
8870         * gnulib-tool (import): Rename most ac_* variables to cached_*.
8871         Also use new variables cached_lgpl, cached_libtool.
8872
8873 2005-08-31  Bruno Haible  <bruno@clisp.org>
8874
8875         * gnulib-tool (func_import): Require AC_GNU_SOURCE etc. instead of
8876         always instantiating them.
8877
8878 2005-08-31  Bruno Haible  <bruno@clisp.org>
8879
8880         * gnulib-tool (func_import): Read the previous cached settings
8881         from gnulib-cache.m4 and gnulib-comp.m4. Remove files that were
8882         earlier added by gnulib but are now dropped. Warn when a gnulib file
8883         overwrites a non-gnulib file.
8884
8885 2005-08-31  Bruno Haible  <bruno@clisp.org>
8886
8887         * gnulib-tool (func_import): Generate two files gnulib-cache.m4 and
8888         gnulib-comp.m4 instead of a single gnulib.m4, to make it easy for
8889         projects that don't keep autogenerated files in CVS. Put into
8890         actioncmd only the specified modules, not the transitive closure.
8891
8892 2005-08-31  Bruno Haible  <bruno@clisp.org>
8893
8894         * gnulib-tool (func_import): Fix defaulting of $libname and $libtool.
8895         Create directories that shall be filled.
8896         (import): Don't look for gl_* macros in configure.ac. Recurse across
8897         all directories containing a gnulib-cache.m4 files, if meaningful.
8898
8899 2005-08-31  Bruno Haible  <bruno@clisp.org>
8900
8901         * gnulib-tool (func_import): Emit also a stub for gl_LIBTOOL.
8902         (import): Set seen_libtool when we see gl_LIBTOOL.
8903
8904 2005-08-31  Bruno Haible  <bruno@clisp.org>
8905
8906         * gnulib-tool (func_import): Also copy m4/gnulib-tool.m4. Omit
8907         declaration macro definitions from generated gnulib.m4.
8908
8909 2005-08-30  "Oskar Liljeblad" <oskar@osk.mine.nu>
8910
8911         * lib/iconvme.h: Add prototype for iconv_alloc.
8912
8913 2005-08-29  Simon Josefsson  <jas@extundo.com>
8914
8915         * lib/iconvme.c: Fix errno.
8916
8917 2005-08-29  Bruno Haible  <bruno@clisp.org>
8918
8919         * gnulib-tool: Enclose all occurrences of $destdir in "...", so
8920         that it works when the directory contains spaces.
8921
8922 2005-08-29  Bruno Haible  <bruno@clisp.org>
8923
8924         * gnulib-tool (import): Avoid unnecessary spaces in $avoidlist.
8925
8926 2005-08-29  Bruno Haible  <bruno@clisp.org>
8927
8928         * gnulib-tool (func_import): Emit more comments into gnulib.m4.
8929         Emit more advice.
8930
8931 2005-08-29  Bruno Haible  <bruno@clisp.org>
8932         and Stepan Kasal  <kasal@ucw.cz>
8933
8934         * check-module: If more parameters are given, check each of them
8935         separately; add more exceptions, as noted by Jim Meyering.
8936         (check_module): New procedure.
8937         (%exempt_header): Now contains all exceptions.
8938
8939 2005-08-29  Ben Pfaff  <blp@cs.stanford.edu>
8940
8941         * modules/byteswap (Makefile.am): Fix rule to not assume GNU make.
8942
8943 2005-08-29  "Oskar Liljeblad" <oskar@osk.mine.nu>
8944
8945         * lib/iconvme.c: Split iconv_string into iconv_alloc.
8946
8947 2005-08-28  Bruno Haible  <bruno@clisp.org>
8948
8949         * m4/gnulib-tool.m4: New file.
8950
8951 2005-08-27  Jim Meyering  <jim@meyering.net>
8952
8953         * modules/unistd-safer (Files): Add pipe-safer.c.
8954         * modules/fcntl-safer (Files): Add creat-safer.c.
8955
8956 2005-08-27  Jim Meyering  <jim@meyering.net>
8957
8958         * m4/stdlib-safer.m4: New file.  From coreutils.
8959         * m4/stdio-safer.m4 (gl_STDIO_SAFER): Add stdio--.h.
8960         * m4/fcntl-safer.m4 (gl_FCNTL_SAFER): Add creat-safer.c to the
8961         AC_LIBSOURCES list and arrange to compile it via AC_LIBOBJ.
8962         * m4/unistd-safer.m4 (gl_UNISTD_SAFER): Likewise, add pipe-safer.c.
8963         Add pipe-safer.c and unistd--.h to the AC_LIBSOURCES list.
8964
8965 2005-08-27  Jim Meyering  <jim@meyering.net>
8966
8967         * lib/fopen-safer.c: Merge minor changes from coreutils.
8968         * lib/dup-safer.c: Likewise.
8969         * lib/fd-safer.c: Likewise.
8970
8971         Merge from coreutils.
8972         * lib/stdio--.h: New file.
8973         * lib/stdlib--.h: New file.
8974         * lib/mkstemp-safer.c: New file.
8975
8976         GNU tar needs these.
8977         * lib/pipe-safer.c: New file.
8978         * lib/creat-safer.c: New file.
8979         * lib/fcntl--.h (creat): Define to creat_safer.
8980         * lib/fcntl-safer.h: Include <sys/types.h> and declare creat_safer.
8981         * lib/unistd--.h (pipe): Define to pipe_safer.
8982         * lib/unistd-safer.h: Declare pipe_safer.
8983
8984 2005-08-26  Simon Josefsson  <jas@extundo.com>
8985
8986         * lib/getpass.c: Use _WIN32 instead of WIN32, suggested by Bruno
8987         Haible <bruno@clisp.org>.
8988
8989 2005-08-26  Paul Eggert  <eggert@cs.ucla.edu>
8990
8991         * lib/regex_internal.h: Remove all references to
8992         RE_NO_INTERNAL_PROTOTYPES; no longer neeeded now that we assume C89
8993         or better.
8994         (bitset_not, bitset_merge, bitset_not_merge):
8995         (bitset_mask, re_string_allocate, re_string_construct):
8996         (re_string_reconstruct, re_string_destruct, re_string_elem_size_at):
8997         (re_string_char_size_at, re_string_wchar_at, re_string_peek_byte_case):
8998         (re_string_fetch_byte_case, re_node_set_alloc, re_node_set_init_1):
8999         (re_node_set_init_2, re_node_set_init_copy, re_node_set_add_intersect):
9000         (re_node_set_init_union, re_node_set_merge, re_node_set_insert):
9001         (re_node_set_insert_last, re_node_set_compare, re_node_set_contains):
9002         (re_node_set_remove_at, re_dfa_add_node, re_acquire_state):
9003         (re_acquire_state_context):
9004         Remove unnecessary forward decls.
9005         (re_string_char_size_at, re_string_wchar_at, re_string_elem_size_at):
9006         Put __attribute at function definition,
9007         now that the function decl has been removed.
9008         * lib/regex_internal.c (re_string_peek_byte_case):
9009         (re_string_fetch_byte_case, re_node_set_compare, re_node_set_contains):
9010         Likewise.
9011
9012 2005-08-25  Stepan Kasal  <kasal@ucw.cz>
9013
9014         * m4/regex.m4: Add AC_PREREQ(2.50).
9015         (gl_REGEX): If --with-included-regex was given, skip the autodetection.
9016
9017 2005-08-25  Simon Josefsson  <jas@extundo.com>
9018
9019         * m4/getpass.m4: Check for termios.h, tcgetattr, tcsetattr, and
9020         __fsetlocking.
9021
9022 2005-08-25  Simon Josefsson  <jas@extundo.com>
9023
9024         * lib/getpass.c: Add WIN32 implementation.  Conditionalize use of
9025         termios.h, tcgetattr, tcsetattr and __fsetlocking.  Remove some
9026         GLIBC specific code.
9027
9028 2005-08-25  Paul Eggert  <eggert@cs.ucla.edu>
9029
9030         Make regex safe for g++.  This fixes one real bug (an "err"
9031         that should have been "*err").  g++ problem reported by
9032         Sam Steingold.
9033         * lib/regex_internal.h (re_calloc): New macro, consistent with
9034         re_malloc etc.  All callers of calloc changed to use re_calloc.
9035         * lib/regex_internal.c (build_wcs_upper_buffer): Return reg_errcode_t,
9036         not int.  All callers changed.
9037         * lib/regcomp.c (re_compile_fastmap_iter): Don't use
9038         alloca (mb_cur_max); just use an array of size MB_LEN_MAX.
9039         * lib/regexec.c (push_fail_stack): Use re_realloc, not realloc.
9040         (find_recover_state): Change "err" to "*err"; this fixes what
9041         appears to be a real bug.
9042         (check_arrival_expand_ecl_sub): Be consistent about reg_errcode_t
9043         versus int.
9044
9045 2005-08-25  Paul Eggert  <eggert@cs.ucla.edu>
9046
9047         * modules/regex (Depends-on): Add malloc, since the code
9048         assumes that !malloc(0) means failure.
9049
9050 2005-08-25  Paul Eggert  <eggert@cs.ucla.edu>
9051
9052         * lib/regexec.c (set_regs): Don't alloca with an unbounded size.
9053
9054         alloca modernization/simplification for regex.
9055         * lib/regex.c: Remove portability cruft for alloca.  This no longer
9056         needs to be at the start of the file, and can be moved into
9057         regex_internal.h and simplified.
9058         * lib/regex_internal.h: Include <alloca.h>.
9059         (__libc_use_alloca) [!defined _LIBC]: New macro.
9060         * lib/regexec.c (build_trtable): Remove "#ifdef _LIBC", since the code
9061         now works outside glibc.
9062
9063 2005-08-25  Paul Eggert  <eggert@cs.ucla.edu>
9064
9065         * config/srclist.txt: Add glibc bugs 1241, 1245.
9066
9067 2005-08-25  Jim Meyering  <jim@meyering.net>
9068
9069         * lib/open-safer.c: Include <config.h>.
9070         Otherwise, we'd lose LARGEFILE support in any file using
9071         e.g. "fcntl--.h"
9072
9073 2005-08-25  Bruno Haible  <bruno@clisp.org>
9074
9075         * m4/minmax.m4: Require autoconf 2.52.
9076         (gl_MINMAX_IN_HEADER): Add comments. Use m4_pushdef/m4_popdef instead
9077         of define/undefine. Use AS_TR_SH and AS_TR_CPP as more robust
9078         alternatives of translit over the alphabet.
9079         Based on a patch from Stepan Kasal <kasal@ucw.cz>.
9080
9081 2005-08-24  Simon Josefsson  <jas@extundo.com>
9082
9083         * tests/test-getpass.c: New file.
9084
9085 2005-08-24  Paul Eggert  <eggert@cs.ucla.edu>
9086
9087         * m4/regex.m4 (gl_REGEX): Use POSIX-compliant spellings when testing
9088         for GNU regex features.
9089
9090 2005-08-24  Paul Eggert  <eggert@cs.ucla.edu>
9091
9092         * lib/regcomp.c (regerror): 2nd arg is 'restrict', as per POSIX.
9093         * lib/regex.h (regerror): Likewise.
9094
9095         * lib/regex.c: Do not include <sys/types.h>, as POSIX no longer
9096         requires this.  (The code never needed it.)
9097
9098         * lib/regcomp.c, regex_internal.c, regex_internal.h, regexec.c:
9099         All uses of recently-renamed identifiers changed to use the new,
9100         POSIX-compliant names.  The code will build and run just fine
9101         without these changes, but it's better to eat our own dog food
9102         and use the standard-conforming names.
9103
9104         * lib/regex.h: Fix a multitude of POSIX name space violations.
9105         These changes have an effect only for programs that define
9106         _POSIX_C_SOURCE, _POSIX_SOURCE, or _XOPEN_SOURCE; they
9107         do not change anything for programs compiled in the normal way.
9108         Also, there is no effect on the ABI.
9109
9110         (_REGEX_SOURCE): New macro.
9111         Do not include <stddef.h> if _XOPEN_SOURCE and VMS are both
9112         defined and _GNU_SOURCE is not; this fixes a name space violation.
9113
9114         Rename the following macros to obey POSIX requirements.
9115         The old names are still visible as macros if _REGEX_SOURCE is defined.
9116         (REG_BACKSLASH_ESCAPE_IN_LISTS): renamed from
9117         RE_BACKSLASH_ESCAPE_IN_LISTS.
9118         (REG_BK_PLUS_QM): renamed from RE_BK_PLUS_QM.
9119         (REG_CHAR_CLASSES): renamed from RE_CHAR_CLASSES.
9120         (REG_CONTEXT_INDEP_ANCHORS): renamed from RE_CONTEXT_INDEP_ANCHORS.
9121         (REG_CONTEXT_INDEP_OPS): renamed from RE_CONTEXT_INDEP_OPS.
9122         (REG_CONTEXT_INVALID_OPS): renamed from RE_CONTEXT_INVALID_OPS.
9123         (REG_DOT_NEWLINE): renamed from RE_DOT_NEWLINE.
9124         (REG_DOT_NOT_NULL): renamed from RE_DOT_NOT_NULL.
9125         (REG_HAT_LISTS_NOT_NEWLINE): renamed from RE_HAT_LISTS_NOT_NEWLINE.
9126         (REG_INTERVALS): renamed from RE_INTERVALS.
9127         (REG_LIMITED_OPS): renamed from RE_LIMITED_OPS.
9128         (REG_NEWLINE_ALT): renamed from RE_NEWLINE_ALT.
9129         (REG_NO_BK_BRACES): renamed from RE_NO_BK_BRACES.
9130         (REG_NO_BK_PARENS): renamed from RE_NO_BK_PARENS.
9131         (REG_NO_BK_REFS): renamed from RE_NO_BK_REFS.
9132         (REG_NO_BK_VBAR): renamed from RE_NO_BK_VBAR.
9133         (REG_NO_EMPTY_RANGES): renamed from RE_NO_EMPTY_RANGES.
9134         (REG_UNMATCHED_RIGHT_PAREN_ORD): renamed from
9135         RE_UNMATCHED_RIGHT_PAREN_ORD.
9136         (REG_NO_POSIX_BACKTRACKING): renamed from RE_NO_POSIX_BACKTRACKING.
9137         (REG_NO_GNU_OPS): renamed from RE_NO_GNU_OPS.
9138         (REG_DEBUG): renamed from RE_DEBUG.
9139         (REG_INVALID_INTERVAL_ORD): renamed from RE_INVALID_INTERVAL_ORD.
9140         (REG_IGNORE_CASE): renamed from RE_ICASE.  This renaming is a bit
9141         unusual, since we can't clash with the POSIX REG_ICASE.
9142         (REG_CARET_ANCHORS_HERE): renamed from RE_CARET_ANCHORS_HERE.
9143         (REG_CONTEXT_INVALID_DUP): renamed from RE_CONTEXT_INVALID_DUP.
9144         (REG_NO_SUB): renamed from RE_NO_SUB.
9145         (REG_SYNTAX_EMACS): renamed from RE_SYNTAX_EMACS.
9146         (REG_SYNTAX_AWK): renamed from RE_SYNTAX_AWK.
9147         (REG_SYNTAX_GNU_AWK): renamed from RE_SYNTAX_GNU_AWK.
9148         (REG_SYNTAX_POSIX_AWK): renamed from RE_SYNTAX_POSIX_AWK.
9149         (REG_SYNTAX_GREP): renamed from RE_SYNTAX_GREP.
9150         (REG_SYNTAX_EGREP): renamed from RE_SYNTAX_EGREP.
9151         (REG_SYNTAX_POSIX_EGREP): renamed from RE_SYNTAX_POSIX_EGREP.
9152         (REG_SYNTAX_ED): renamed from RE_SYNTAX_ED.
9153         (REG_SYNTAX_SED): renamed from RE_SYNTAX_SED.
9154         (_REG_SYNTAX_POSIX_COMMON): renamed from _RE_SYNTAX_POSIX_COMMON.
9155         (REG_SYNTAX_POSIX_BASIC): renamed from RE_SYNTAX_POSIX_BASIC.
9156         (REG_SYNTAX_POSIX_MINIMAL_BASIC): renamed from
9157         RE_SYNTAX_POSIX_MINIMAL_BASIC.
9158         (REG_SYNTAX_POSIX_EXTENDED): renamed from RE_SYNTAX_POSIX_EXTENDED.
9159         (REG_SYNTAX_POSIX_MINIMAL_EXTENDED): renamed from
9160         RE_SYNTAX_POSIX_MINIMAL_EXTENDED.
9161         (REG_DUP_MAX): renamed from RE_DUP_MAX.  No need to undef it.
9162         (REG_UNALLOCATED): Renamed from REGS_UNALLOCATED.
9163         (REG_REALLOCATE): Renamed from REGS_REALLOCATE.
9164         (REG_FIXED): Renamed from REGS_FIXED.
9165         (REG_NREGS): Renamed from RE_NREGS.
9166
9167         (REG_ICASE, REG_NEWLINE, REG_NOSUB): Do not depend on the values
9168         of other REG_* macros, since POSIX says the user is allowed to
9169         #undef these macros selectively.
9170
9171         (reg_errcode_t): Update comment stating what other tables need
9172         to be consistent.
9173
9174         Rename the following enum values to obey POSIX requirements.
9175         The old names are still visible as macros.
9176         (_REG_ENOSYS): Renamed from REG_ENOSYS.  Define even if _XOPEN_SOURCE
9177         is not defined, since GNU is supposed to be a superset of POSIX as
9178         much as possible, and since we want reg_errcode_t to be a signed
9179         type for implementation consistency.
9180         (_REG_NOERROR): Renamed from REG_NOERROR.
9181         (_REG_NOMATCH): Renamed from REG_NOMATCH.
9182         (_REG_BADPAT): Renamed from REG_BADPAT.
9183         (_REG_ECOLLATE): Renamed from REG_ECOLLATE.
9184         (_REG_ECTYPE): Renamed from REG_ECTYPE.
9185         (_REG_EESCAPE): Renamed from REG_EESCAPE.
9186         (_REG_ESUBREG): Renamed from REG_ESUBREG.
9187         (_REG_EBRACK): Renamed from REG_EBRACK.
9188         (_REG_EPAREN): Renamed from REG_EPAREN.
9189         (_REG_EBRACE): Renamed from REG_EBRACE.
9190         (_REG_BADBR): Renamed from REG_BADBR.
9191         (_REG_ERANGE): Renamed from REG_ERANGE.
9192         (_REG_ESPACE): Renamed from REG_ESPACE.
9193         (_REG_BADRPT): Renamed from REG_BADRPT.
9194         (_REG_EEND): Renamed from REG_EEND.
9195         (_REG_ESIZE): Renamed from REG_ESIZE.
9196         (_REG_ERPAREN): Renamed from REG_ERPAREN.
9197         (REG_ENOSYS, REG_NOERROR, REG_NOMATCH, REG_BADPAT, REG_ECOLLATE):
9198         (REG_ECTYPE, REG_EESCAPE, REG_ESUBREG, REG_EBRACK, REG_EPAREN):
9199         (REG_EBRACE, REG_BADBR, REG_ERANGE, REG_ESPACE, REG_BADRPT, REG_EEND):
9200         (REG_ESIZE, REG_ERPAREN): Now macros, not enum constants.
9201
9202         (_REG_RE_NAME, _REG_RM_NAME): New macros.
9203         (REG_TRANSLATE_TYPE): Renamed from RE_TRANSLATE_TYPE.  All uses
9204         changed.  But support the old name if the new one is not defined
9205         and if _REGEX_SOURCE.
9206
9207         Change the following member names in struct re_pattern_buffer.
9208         The old names are still supported if !_REGEX_SOURCE.
9209         The new names are always supported, regardless of _REGEX_SOURCE.
9210         (re_buffer): Renamed from buffer.
9211         (re_allocated): Renamed from allocated.
9212         (re_used): Renamed from used.
9213         (re_syntax): Renamed from syntax.
9214         (re_fastmap): Renamed from fastmap.
9215         (re_translate): Renamed from translate.
9216         (re_can_be_null): Renamed from can_be_null.
9217         (re_regs_allocated): Renamed from regs_allocated.
9218         (re_fastmap_accurate): Renamed from fastmap_accurate.
9219         (re_no_sub): Renamed from no_sub.
9220         (re_not_bol): Renamed from not_bol.
9221         (re_not_eol): Renamed from not_eol.
9222         (re_newline_anchor): Renamed from newline_anchor.
9223
9224         Change the following member names in struct re_registers.
9225         The old names are still supported if !_REGEX_SOURCE.
9226         The new names are always supported, regardless of _REGEX_SOURCE.
9227         (rm_num_regs): Renamed from num_regs.
9228         (rm_start): Renamed from start.
9229         (rm_end): Renamed from end.
9230
9231         (re_set_syntax, re_compile_pattern, re_compile_fastmap):
9232         (re_search, re_search_2, re_match, re_match_2, re_set_registers):
9233         Prepend __ to parameter names.
9234
9235         Undo yesterday's changes.
9236
9237 2005-08-24  Paul Eggert  <eggert@cs.ucla.edu>
9238
9239         * config/srclist.txt: Remove glibc bug 1233 and add 1236, which
9240         supersedes it. Add glibc bugs 1237, 1238, 1240.  Comment out
9241         lib/regex.c.
9242
9243 2005-08-24  Jim Meyering  <jim@meyering.net>
9244
9245         Sync from coreutils.
9246         * m4/fcntl-safer.m4: New file.
9247
9248         * m4/xgetcwd.m4: Use AC_LIBSOURCES and AC_LIBOBJ to indicate source
9249         and object files for this module.
9250
9251 2005-08-24  Jim Meyering  <jim@meyering.net>
9252
9253         Sync from coreutils.
9254         * lib/fcntl--.h, fcntl-safer.h, open-safer.c: New files.
9255
9256 2005-08-24  Jim Meyering  <jim@meyering.net>
9257
9258         * modules/xgetcwd (Makefile.am): Remove `lib_SOURCES += ...' line,
9259         now that xgetcwd.m4 requires xgetcwd.c and xgetcwd.h.
9260
9261 2005-08-24  Jim Meyering  <jim@meyering.net>
9262
9263         * modules/fcntl-safer: New module.
9264         * modules/fts (Depends-on): Add fcntl-safer.
9265         * MODULES.html.sh (File descriptor based Input/Output):
9266         Add fcntl-safer.
9267
9268 2005-08-24  Bruno Haible  <bruno@clisp.org>
9269
9270         Support for unit test modules.
9271         * modules/README: Mention tests modules.
9272         * modules/TEMPLATE-TESTS: New file.
9273         * gnulib-tool: New options --extract-tests-module, --with-tests and
9274         --tests-base (unused for the moment).
9275         (testsbase, inctests): New variables.
9276         (func_all_modules): Exclude TEMPLATE-TESTS and *-tests.
9277         (func_verify_module): Exclude TEMPLATE-TESTS.
9278         (func_verify_nontests_module, func_verify_tests_module): New functions.
9279         (func_get_dependencies): Add implicit dependency for tests modules.
9280         (func_get_tests_module): New function.
9281         (func_modules_transitive_closure): When --with-tests was specified,
9282         include the unit tests as well, unless explicitly avoided.
9283         (func_emit_lib_Makefile_am): Ignore the tests modules here.
9284         (func_emit_tests_Makefile_am): New function.
9285         (func_create_testdir): When --with-tests was specified, emit a
9286         tests/ directory.
9287         * MODULES.html.sh (Future developments): Update.
9288
9289 2005-08-24  Bruno Haible  <bruno@clisp.org>
9290
9291         * modules/tls-tests: New file.
9292         * tests/test-tls.c: New file, from GNU gettext.
9293
9294 2005-08-24  Bruno Haible  <bruno@clisp.org>
9295
9296         * modules/lock-tests: New file.
9297         * tests/test-lock.c: New file, from GNU gettext.
9298
9299 2005-08-24  Bruno Haible  <bruno@clisp.org>
9300
9301         * lib/lock.h: Add multiple inclusion guard.
9302         * lib/tls.h: Add multiple inclusion guard.
9303
9304 2005-08-24  Bruno Haible  <bruno@clisp.org>
9305
9306         * gnulib-tool: Add support for the --aux-dir option to
9307         --create-testdir, --create-megatestdir, --test, --megatest.
9308         (func_create_testdir, func_create_megatestdir): Optionally emit a
9309         AC_CONFIG_AUX_DIR directive.
9310         (create-testdir, create-megatestdir, test, megatest): Provide a
9311         default value for $auxdir.
9312
9313 2005-08-24  Bruno Haible  <bruno@clisp.org>
9314
9315         * gnulib-tool (import): Use compound statement instead of subshell
9316         where possible.
9317
9318 2005-08-24  Bruno Haible  <bruno@clisp.org>
9319
9320         * gnulib-tool (import): Change --aux-dir default to "build-aux".
9321
9322 2005-08-24  Bruno Haible  <bruno@clisp.org>
9323
9324         * gnulib-tool (func_version): Update.
9325
9326 2005-08-24  Bruno Haible  <bruno@clisp.org>
9327
9328         * gnulib-tool (func_import, func_create_testdir,
9329         func_create_megatestdir): Quote all autoconf macro arguments.
9330
9331 2005-08-24  Bruno Haible  <bruno@clisp.org>
9332
9333         * gnulib-tool (func_create_megatestdir): Call autoreconf without the
9334         option --force, because --force causes the aclocal.m4 of each
9335         subdirectory to be newer than the corresponding config.h.in.
9336
9337 2005-08-23  Paul Eggert  <eggert@cs.ucla.edu>
9338
9339         * m4/regex.m4 (gl_INCLUDED_REGEX): Remove; no longer used.
9340         All contents moved to gl_REGEX.
9341         (gl_REGEX): Don't bother checking whether lib/regex.c exists;
9342         assume that it does.
9343
9344 2005-08-23  Paul Eggert  <eggert@cs.ucla.edu>
9345
9346         * lib/regex.h (REG_NOSYS)
9347         [!defined _XOPEN_SOURCE && 200112L <= _POSIX_C_SOURCE]:
9348         Define, since POSIX requires it as of 2001.
9349         (_REG_ENOSYS)
9350         [! (defined _XOPEN_SOURCE || 200112L <= _POSIX_C_SOURCE)]:
9351         New private symbol, used to keep the enum signed in all cases.
9352         * lib/regex.h (RE_NO_EMPTY_RANGES): Fix doc bug reported by James
9353         Youngman in
9354         <http://lists.gnu.org/archive/html/bug-gnulib/2005-07/msg00132.html>.
9355
9356         * lib/regex_internal.c (re_string_skip_chars, register_state):
9357         (calc_state_hash):
9358         Remove forward decls; no longer needed now that we use prototypes.
9359         * lib/regexec.c (acquire_init_state_context, check_halt_node_context):
9360         (proceed_next_node, pop_fail_stack, sub_epsilon_src_nodes):
9361         (clean_state_log_if_needed): Likewise.
9362
9363 2005-08-23  Paul Eggert  <eggert@cs.ucla.edu>
9364
9365         * config/srclist.txt: Add glibc bugs 1231-1233.
9366
9367 2005-08-20  Paul Eggert  <eggert@cs.ucla.edu>
9368
9369         Fix problems reported by Sam Steingold in
9370         <http://lists.gnu.org/archive/html/bug-gnulib/2005-08/msg00007.html>.
9371         * lib/regexec.c (sift_states_bkref): Fix portability bug: the code
9372         assumed that reg_errcode_t is a signed type, which is not
9373         necessarily true if _XOPEN_SOURCE is not defined.
9374         * lib/regex_internal.c (calc_state_hash): Put 'inline' before type,
9375         since some compilers warn about it otherwise.
9376
9377 2005-08-20  Paul Eggert  <eggert@cs.ucla.edu>
9378
9379         * lib/regcomp.c (create_initial_state): Remove duplicate decl.
9380         (init_word_char, create_initial_state, duplicate_node_closure):
9381         (fetch_token, peek_token_bracket, build_range_exp):
9382         (build_collating_symbol): Remove forward decls; no longer needed
9383         now that we use prototypes.
9384
9385         * lib/regcomp.c:
9386         (re_compile_pattern, re_set_syntax, re_compile_fastmap):
9387         (re_compile_fastmap_iter, regcomp, regerror, regfree):
9388         (re_compile_internal, init_dfa, init_word_char, free_workarea_compile):
9389         (create_initial_state, optimize_utf8, analyze, postorder, preorder):
9390         (optimize_subexps, lower_subexps, lower_subexp, calc_first, calc_next):
9391         (link_nfa_nodes, duplicate_node_closure, search_duplicated_node):
9392         (duplicate_node, calc_inveclosure, calc_eclosure, calc_eclosure_iter):
9393         (fetch_token, peek_token, peek_token_bracket, parse, parse_reg_exp):
9394         (parse_branch, parse_expression, parse_sub_exp, parse_dup_op):
9395         (build_range_exp, build_collating_symbol, parse_bracket_exp):
9396         (parse_bracket_element, parse_bracket_symbol, build_equiv_class):
9397         (build_charclass, build_charclass_op, fetch_number, create_tree):
9398         (create_token_tree, mark_opt_subexp, duplicate_tree):
9399         Use prototypes rather than old-style definitions.
9400
9401         * lib/regex_internal.c:
9402         (re_string_allocate, re_string_construct, re_string_realloc_buffers):
9403         (re_string_construct_common, build_wcs_buffer, build_wcs_upper_buffer):
9404         (re_string_skip_chars, build_upper_buffer, re_string_translate_buffer):
9405         (re_string_reconstruct, re_string_peek_byte_case):
9406         (re_string_fetch_byte_case, re_string_destruct, re_string_context_at):
9407         (re_node_set_alloc, re_node_set_init_1, re_node_set_init_2):
9408         (re_node_set_init_copy, re_node_set_add_intersect):
9409         (re_node_set_init_union, re_node_set_merge, re_node_set_insert):
9410         (re_node_set_insert_last, re_node_set_compare, re_node_set_contains):
9411         (re_node_set_remove_at, re_dfa_add_node, calc_state_hash):
9412         (re_acquire_state, re_acquire_state_context, register_state):
9413         (create_ci_newstate, create_cd_newstate, free_state):
9414         Likewise.
9415         * lib/regexec.c (regexec, re_match, re_search, re_match_2,
9416         re_search_2):
9417         (re_search_2_stub, re_search_stub, re_copy_regs, re_set_registers):
9418         (re_search_internal, prune_impossible_nodes):
9419         (acquire_init_state_context, check_matching, static):
9420         (check_halt_node_context, check_halt_state_context, proceed_next_node):
9421         (push_fail_stack, pop_fail_stack, set_regs, free_fail_stack_return):
9422         (update_regs, sift_states_backward, build_sifted_states):
9423         (clean_state_log_if_needed, merge_state_array):
9424         (update_cur_sifted_state, add_epsilon_src_nodes):
9425         (sub_epsilon_src_nodes, check_dst_limits, check_dst_limits_calc_pos_1):
9426         (check_dst_limits_calc_pos, check_subexp_limits, sift_states_bkref):
9427         (sift_states_iter_mb, transit_state, merge_state_with_log, static):
9428         (find_recover_state, check_subexp_matching_top, transit_state_mb):
9429         (transit_state_bkref, get_subexp, get_subexp_sub, find_subexp_node):
9430         (check_arrival, check_arrival_add_next_nodes):
9431         (check_arrival_expand_ecl, check_arrival_expand_ecl_sub):
9432         (expand_bkref_cache, build_trtable, group_nodes_into_DFAstates):
9433         (check_node_accept_bytes, check_node_accept, extend_buffers):
9434         (match_ctx_init, match_ctx_clean, match_ctx_free, match_ctx_add_entry):
9435         (search_cur_bkref_entry, match_ctx_add_subtop, match_ctx_add_sublast):
9436         (sift_ctx_init):
9437         Likewise.
9438
9439         * lib/regex_internal.h:
9440         (re_string_allocate, re_string_construct, re_string_reconstruct):
9441         (re_string_realloc_buffers, build_wcs_buffer, build_wcs_upper_buffer):
9442         (build_upper_buffer, re_string_translate_buffer, re_string_destruct):
9443         (re_string_elem_size_at, re_string_char_size_at, re_string_wchar_at):
9444         (re_string_context_at, re_string_peek_byte_case):
9445         (re_string_fetch_byte_case): Declare even if RE_NO_INTERNAL_PROTOTYPES
9446         is defined, since we now use prototypes always.
9447
9448         * lib/regex.h (_RE_ARGS): Remove.  No longer needed, since we assume
9449         C89 or better.  All uses removed.
9450
9451 2005-08-20  Paul Eggert  <eggert@cs.ucla.edu>
9452
9453         * config/srclist.txt: Add glibc bugs 1220-1227.
9454
9455 2005-08-20  Jim Meyering  <jim@meyering.net>
9456
9457         * lib/regexec.c (regexec, re_search_stub) [!_LIBC]: Omit declaration
9458         of unused local, dfa.
9459
9460 2005-08-20  Bruno Haible  <bruno@clisp.org>
9461
9462         * m4/regex.m4 (gl_PREREQ_REGEX): Require AC_GNU_SOURCE.
9463
9464 2005-08-19  Paul Eggert  <eggert@cs.ucla.edu>
9465
9466         * lib/regex_internal.c (re_string_realloc_buffers, re_node_set_insert):
9467         (re_node_set_insert_last, re_dfa_add_node):
9468         Rename local variables to avoid GCC shadowing warnings.
9469
9470 2005-08-19  Paul Eggert  <eggert@cs.ucla.edu>
9471
9472         * lib/regex_internal.c (re_acquire_state, re_acquire_state_context)
9473         [defined lint]: Suppress bogus uninitialized-variable warnings.
9474
9475         * lib/regcomp.c (duplicate_node): Return new index, not an error code,
9476         and let the caller return REG_ESPACE if out of space.  This
9477         removes an uninitialied-variable warning with GCC 4.0.1, and also
9478         avoids taking the address of a local variable.  All callers
9479         changed.
9480
9481 2005-08-19  Paul Eggert  <eggert@cs.ucla.edu>
9482
9483         * config/srclist.txt: Comment out $LIBCSRC/posix/regex_internal.c,
9484         $LIBCSRC/posix/regexec.c.
9485         Add glibc bug 1217 for regcomp.c.
9486
9487 2005-08-19  Jim Meyering  <jim@meyering.net>
9488
9489         * lib/regexec.c (proceed_next_node): Redo local variables to
9490         avoid GCC shadowing warnings.
9491
9492 2005-08-18  Bruno Haible  <bruno@clisp.org>
9493
9494         * lib/strstr.c (strstr): Fix return value in multibyte case.
9495         * lib/strcasestr.c (strcasestr): Likewise.
9496
9497 2005-08-17  Paul Eggert  <eggert@cs.ucla.edu>
9498
9499         * lib/regex.h: Remove useless space-before-tab.  From coreutils.
9500
9501 2005-08-17  Jim Meyering  <jim@meyering.net>
9502
9503         Make the %s format (seconds since the epoch) work for a negative
9504         number and when used with a zero-padded field width, e.g. %015s.
9505
9506         * lib/strftime.c (my_strftime): Move the `do_number_sign_and_padding'
9507         label so that it precedes the code to set `digits'.  Otherwise,
9508         %0Ns wouldn't work.  Before this change, `date -d @-22 +%05s' would
9509         print `00-22'.  Now, it prints `-0022', as it should.
9510
9511 2005-08-17  Bruno Haible  <bruno@clisp.org>
9512
9513         * modules/strstr (Files): Add m4/mbrtowc.m4.
9514         (Depends-on): Add mbuiter.
9515
9516 2005-08-17  Bruno Haible  <bruno@clisp.org>
9517
9518         * modules/strcasestr: New file.
9519         * MODULES.html.sh (String handling, based on ANSI C 89): Add
9520         strcasestr.
9521
9522 2005-08-17  Bruno Haible  <bruno@clisp.org>
9523
9524         * modules/strcase (Depends-on): Add mbuiter. Remove strnlen1, mbchar.
9525
9526 2005-08-17  Bruno Haible  <bruno@clisp.org>
9527
9528         * modules/mbuiter: New file.
9529         * MODULES.html.sh (Extended multibyte and wide character utilities):
9530         Add mbuiter.
9531
9532 2005-08-17  Bruno Haible  <bruno@clisp.org>
9533
9534         * m4/strstr.m4 (gl_FUNC_STRSTR): Use the replacement function always.
9535         (gl_PREREQ_STRSTR): Use gl_FUNC_MBRTOWC.
9536
9537 2005-08-17  Bruno Haible  <bruno@clisp.org>
9538
9539         * m4/strcasestr.m4: New file.
9540
9541 2005-08-17  Bruno Haible  <bruno@clisp.org>
9542
9543         * lib/strstr.h: Ignore HAVE_STRSTR, always declare the gnulib function.
9544         * lib/strstr.c: Completely rewritten, with multibyte locale support.
9545
9546 2005-08-17  Bruno Haible  <bruno@clisp.org>
9547
9548         * lib/strcasestr.h: New file.
9549         * lib/strcasestr.c: New file.
9550
9551 2005-08-17  Bruno Haible  <bruno@clisp.org>
9552
9553         * lib/strcasecmp.c: Use mbuiter.h.
9554
9555 2005-08-17  Bruno Haible  <bruno@clisp.org>
9556
9557         * lib/mbuiter.h: New file.
9558
9559 2005-08-16  Paul Eggert  <eggert@cs.ucla.edu>
9560
9561         * m4/getopt.m4 (gl_GETOPT_CHECK_HEADERS): Do not override the results
9562         of gl_GETOPT_SUBSTITUTE.  That way, if both gl_GETOPT_SUBSTITUTE
9563         and gl_GETOPT are both invoked via different paths (as happens
9564         with GNU tar CVS because it uses both argp and getopt), the former
9565         wins.
9566
9567 2005-08-16  Bruno Haible  <bruno@clisp.org>
9568
9569         * modules/tls: New file.
9570         * MODULES.html.sh (Multithreading): Add tls.
9571
9572 2005-08-16  Bruno Haible  <bruno@clisp.org>
9573
9574         * modules/strnlen1: New file.
9575         * MODULES.html.sh (String handling): Add strnlen1.
9576
9577 2005-08-16  Bruno Haible  <bruno@clisp.org>
9578
9579         * modules/strcase (Files): Add m4/mbrtowc.m4.
9580         (Depends-on): Add strnlen1, mbchar.
9581
9582 2005-08-16  Bruno Haible  <bruno@clisp.org>
9583
9584         * modules/mbiter: New file.
9585         * MODULES.html.sh (Extended multibyte and wide character utilities):
9586         Add mbiter.
9587
9588 2005-08-16  Bruno Haible  <bruno@clisp.org>
9589
9590         * modules/mbfile: New file.
9591         * MODULES.html.sh (Extended multibyte and wide character utilities):
9592         Add mbfile.
9593
9594 2005-08-16  Bruno Haible  <bruno@clisp.org>
9595
9596         * modules/mbchar: New file.
9597         * MODULES.html.sh (Extended multibyte and wide character utilities):
9598         New section.
9599
9600 2005-08-16  Bruno Haible  <bruno@clisp.org>
9601
9602         * m4/tls.m4: New file, from GNU gettext.
9603
9604 2005-08-16  Bruno Haible  <bruno@clisp.org>
9605
9606         * m4/strcase.m4 (gl_FUNC_STRCASECMP): Use the replacement function
9607         always.
9608         (gl_PREREQ_STRCASECMP): Use gl_FUNC_MBRTOWC.
9609
9610 2005-08-16  Bruno Haible  <bruno@clisp.org>
9611
9612         * m4/mbiter.m4: New file.
9613
9614 2005-08-16  Bruno Haible  <bruno@clisp.org>
9615
9616         * m4/mbfile.m4: New file.
9617
9618 2005-08-16  Bruno Haible  <bruno@clisp.org>
9619
9620         * m4/mbchar.m4: New file.
9621
9622 2005-08-16  Bruno Haible  <bruno@clisp.org>
9623
9624         * lib/tls.h: New file, from GNU gettext.
9625         * lib/tls.c: New file, from GNU gettext.
9626
9627 2005-08-16  Bruno Haible  <bruno@clisp.org>
9628
9629         * lib/strnlen1.h: New file.
9630         * lib/strnlen1.c: New file.
9631
9632 2005-08-16  Bruno Haible  <bruno@clisp.org>
9633
9634         * lib/strcasecmp.c (struct mbiter_multi): Remove at_end field.
9635         (mbi_init): Update.
9636         (mbi_avail, mbi_advance): Let the iteration end before the terminating
9637         NUL byte, not after it.
9638
9639 2005-08-16  Bruno Haible  <bruno@clisp.org>
9640
9641         * lib/strcase.h (strcasecmp): Add note in comments.
9642         * lib/strncasecmp.c: Use code from strcasecmp.c.
9643         * lib/strcasecmp.c: Use mbchar module. Define private mbiter variant.
9644         (strcasecmp): Work correctly in multibyte locales.
9645
9646 2005-08-16  Bruno Haible  <bruno@clisp.org>
9647
9648         * lib/mbiter.h: New file.
9649
9650 2005-08-16  Bruno Haible  <bruno@clisp.org>
9651
9652         * lib/mbfile.h: New file.
9653
9654 2005-08-16  Bruno Haible  <bruno@clisp.org>
9655
9656         * lib/mbchar.h: New file.
9657         * lib/mbchar.c: New file.
9658
9659 2005-08-16  Bruno Haible  <bruno@clisp.org>
9660
9661         * lib/mbchar.h (mb_cmp, mb_casecmp): Order the invalid characters after
9662         the valid ones. Makes the comparison operations transitive:
9663         cmp (a, b) < 0 && cmp (b, c) < 0 ==> cmp (a, c) < 0.
9664         * lib/strcasecmp.c (strcasecmp): Use mb_casecmp.
9665
9666 2005-08-15  Simon Josefsson  <jas@extundo.com>
9667
9668         * modules/ssize_t (License): Change to 'unlimited'.
9669
9670         * gnulib-tool (sed_extract_prog): Recognize 'unlimited' license.
9671
9672 2005-08-15  Paul Eggert  <eggert@cs.ucla.edu>
9673
9674         * config/srclist.txt: Comment out $LIBCSRC/posix/regex.h.
9675         Add comments for each pending glibc patch.
9676
9677 2005-08-15  Bruno Haible  <bruno@clisp.org>
9678
9679         * lib/regex.h (__restrict_arr): Don't define to __restrict if
9680         __cplusplus is defined.
9681
9682 2005-08-14  Jim Meyering  <jim@meyering.net>
9683
9684         Sync from coreutils.
9685
9686         * lib/fts-cycle.c (setup_dir, enter_dir, leave_dir, free_dir):
9687         Use the hash-table-based cycle-detection code not just when
9688         FTS_TIGHT_CYCLE_CHECK if specified, but also with FTS_LOGICAL.
9689         Reported by James Youngman in
9690         <http://lists.gnu.org/archive/html/bug-gnulib/2005-08/msg00011.html>.
9691         * lib/fts_.h: Mention that with FTS_LOGICAL, we use
9692         FTS_TIGHT_CYCLE_CHECK.
9693         * lib/fts.c (fts_cross_check) [FTS_DEBUG]:
9694         s/active_dir_ht/fts_cycle.ht/. This lets us compile with -DFTS_DEBUG,
9695         once again.
9696         * lib/fts.c [! _LIBC]: Include "lstat.h" rather than rolling our own.
9697         * lib/fts.c (fd_safer): Remove decl.
9698         Include fcntl--.h rather than unistd-safer.h
9699         (fts_safe_changedir): Don't call fd_safer; no longer needed
9700         now that we include fcntl--.h.
9701
9702 2005-08-12  Simon Josefsson  <jas@extundo.com>
9703
9704         * modules/getndelim2: Use ssize_t module.
9705         * modules/getnline: Likewise.
9706         * modules/safe-read: Likewise.
9707         * modules/xreadlink: Likewise.
9708
9709         * modules/ssize_t: New file.
9710
9711 2005-08-12  Simon Josefsson  <jas@extundo.com>
9712
9713         * m4/readline.m4: Look for termcap, curses or ncurses if required.
9714
9715 2005-08-12  Simon Josefsson  <jas@extundo.com>
9716
9717         * MODULES.html.sh (Support for systems lacking POSIX:2001): Add
9718         ssize_t.
9719
9720 2005-08-12  Simon Josefsson  <jas@extundo.com>
9721
9722         * MODULES.html.sh (Extra functions based on ANSI C 89: Misc): Add
9723         readline, getdelim and check_version.
9724         (Support for systems lacking ISO C 99: Sizes of integer types):
9725         Add size_max.
9726
9727 2005-08-12  Bruno Haible  <bruno@clisp.org>
9728
9729         * m4/readline.m4 (gl_FUNC_READLINE): Look for ncurses first.
9730
9731 2005-08-11  Simon Josefsson  <jas@extundo.com>
9732
9733         * modules/readline: New file.
9734
9735         * modules/strnlen (Files): Add strnlen.h.
9736
9737 2005-08-11  Simon Josefsson  <jas@extundo.com>
9738
9739         * m4/readline.m4: New file.
9740
9741 2005-08-11  Simon Josefsson  <jas@extundo.com>
9742
9743         * lib/readline.h, readline.c: New file.
9744
9745 2005-08-11  Simon Josefsson  <jas@extundo.com>
9746
9747         * doc/gnulib.texi (Initial import, Finishing touches): Mention
9748         gl_AVOID.
9749
9750 2005-08-11  Bruno Haible  <bruno@clisp.org>
9751
9752         * lib/strnlen.h (strnlen): Change parameter name to match comment.
9753
9754 2005-08-10  Stepan Kasal  <kasal@ucw.cz>
9755
9756         * m4/onceonly_2_57.m4: Really require Autoconf 2.57.
9757
9758 2005-08-10  Simon Josefsson  <jas@extundo.com>
9759
9760         * tests/test-iconvme.c: New file.
9761
9762 2005-08-10  Simon Josefsson  <jas@extundo.com>
9763
9764         * m4/strnlen.m4: New file.
9765
9766         * m4/strndup.m4: Don't check for strnlen declaration, done in
9767         strnlen.m4.
9768
9769 2005-08-10  Simon Josefsson  <jas@extundo.com>
9770
9771         * lib/strndup.c: Use strnlen.h.
9772
9773         * lib/strnlen.h: New file.
9774
9775 2005-08-08  Ralf Wildenhues <Ralf.Wildenhues@gmx.de>  (tiny change)
9776
9777         * README: Typos.
9778
9779 2005-08-02  Simon Josefsson  <jas@extundo.com>
9780
9781         * modules/readline: New file.
9782
9783 2005-08-02  Simon Josefsson  <jas@extundo.com>
9784
9785         * modules/getdelim: New file.
9786
9787         * modules/getline: Rewrite, don't use getndelim2.
9788
9789 2005-08-02  Simon Josefsson  <jas@extundo.com>
9790
9791         * m4/getline.m4: Separate out getdelim stuff into separate module.
9792
9793         * m4/getdelim.m4: New file.
9794
9795 2005-08-02  Simon Josefsson  <jas@extundo.com>
9796
9797         * lib/getline.h, getline.c: Rewrite.
9798
9799         * lib/getdelim.h, getdelim.c: New files, ported from glibc.
9800
9801 2005-07-31  Bruno Haible  <bruno@clisp.org>
9802
9803         * lib/lock.h (gl_lock_initializer): New macro.
9804         (gl_lock_define_initialized): Use it.
9805         (gl_rwlock_initializer): New macro.
9806         (gl_rwlock_define_initialized): Use it.
9807         (gl_recursive_lock_initializer): New macro.
9808         (gl_recursive_lock_define_initialized): Use it.
9809
9810 2005-07-30  Karl Berry  <karl@gnu.org>
9811
9812         * doc/gnulib.texi (Initial import): mention -I$(top_builddir)/lib.
9813         Report from Ben Pfaff, regarding getopt.
9814
9815 2005-07-26  Paul Eggert  <eggert@cs.ucla.edu>
9816
9817         Add support to getopt for Emacs, which doesn't use LIBOBJS in the
9818         normal way.
9819         * m4/getopt.m4 (gl_GETOPT_SUBSTITUTE_HEADER): New macro.
9820         (gl_GETOPT_SUBSTITUTE): Use it.  Invoke gl_PREREQ_GETOPT.
9821         (gl_GETOPT_IFELSE, gl_GETOPT_CHECK_HEADERS): New macros.
9822         (gl_GETOPT): Use the new macros.  Most of the implementation
9823         is moved to the new macros.  This is for programs like Emacs
9824         that don't want all the functionality of gl_GETOPT.
9825
9826 2005-07-26  Bruno Haible  <bruno@clisp.org>
9827
9828         * m4/lock.m4: Update from GNU gettext.
9829
9830 2005-07-26  Bruno Haible  <bruno@clisp.org>
9831
9832         * lib/lock.h: Update from GNU gettext.
9833         * lib/lock.c: Update from GNU gettext.
9834
9835 2005-07-25  Paul Eggert  <eggert@cs.ucla.edu>
9836
9837         * m4/regex.m4 (gl_INCLUDED_REGEX): Use AC_RUN_IFELSE instead of the
9838         obsolescent AC_TRY_RUN.  Include the default includes files, for
9839         'exit'.
9840
9841 2005-07-24  Bruno Haible  <bruno@clisp.org>
9842
9843         * modules/visibility: New file.
9844         * MODULES.html.sh (Misc): Add visibility.
9845
9846 2005-07-24  Bruno Haible  <bruno@clisp.org>
9847
9848         * m4/visibility.m4: New file.
9849
9850 2005-07-24  Bruno Haible  <bruno@clisp.org>
9851
9852         * doc/visibility.texi: New file.
9853
9854 2005-07-22  Bruno Haible  <bruno@clisp.org>
9855
9856         * modules/alloca-opt (Makefile.am): Remove explicit dependency on
9857         $(ALLOCA_H), redundant through BUILT_SOURCES.
9858         * modules/argz (Makefile.am): Remove explicit dependency on $(ARGZ_H),
9859         redundant through BUILT_SOURCES.
9860         * modules/byteswap (Makefile.am): Remove explicit dependency on
9861         $(BYTESWAP_H), redundant through BUILT_SOURCES.
9862         * modules/fnmatch (Makefile.am): Remove explicit dependency on
9863         $(FNMATCH_H), redundant through BUILT_SOURCES.
9864         * modules/getopt (Makefile.am): Remove explicit dependency on
9865         $(GETOPT_H), redundant through BUILT_SOURCES.
9866         * modules/glob (Makefile.am): Remove explicit dependency on $(GLOB_H),
9867         redundant through BUILT_SOURCES.
9868         * modules/poll (Makefile.am): Remove explicit dependency on $(POLL_H),
9869         redundant through BUILT_SOURCES.
9870         * modules/stdbool (Makefile.am): Remove explicit dependency on
9871         $(STDBOOL_H), redundant through BUILT_SOURCES.
9872         * modules/stdint (Makefile.am): Remove explicit dependency on
9873         $(STDINT_H), redundant through BUILT_SOURCES.
9874         * modules/sysexits (Makefile.am): Add $(SYSEXITS_H) to BUILT_SOURCES.
9875         Remove explicit dependency on $(SYSEXITS_H).
9876         Reported by Alexandre Duret-Lutz <adl@src.lip6.fr>.
9877
9878 2005-07-18  Simon Josefsson  <jas@extundo.com>
9879
9880         * lib/check-version.c (check_version): Accept identical versions too.
9881
9882 2005-07-18  Bruno Haible  <bruno@clisp.org>
9883
9884         * modules/lock: New file.
9885         * MODULES.html.sh (Multithreading): New section.
9886
9887 2005-07-18  Bruno Haible  <bruno@clisp.org>
9888
9889         * m4/lock.m4: New file, from GNU gettext.
9890
9891 2005-07-18  Bruno Haible  <bruno@clisp.org>
9892
9893         * lib/lock.h: New file, from GNU gettext.
9894         * lib/lock.c: New file, from GNU gettext.
9895
9896 2005-07-18  Bruno Haible  <bruno@clisp.org>
9897
9898         * lib/lock.h (gl_once_t): New type.
9899         (gl_once_define, gl_once): New macros.
9900         * lib/lock.c (fresh_once): New variable.
9901         (glthread_once, glthread_once_call, glthread_once_singlethreaded): New
9902         functions.
9903
9904 2005-07-16  Simon Josefsson  <jas@extundo.com>
9905
9906         * doc/gnulib.texi (Library version handling): Add ELF symbol collision
9907         workaround, suggested by Bruno.
9908
9909 2005-07-15  Paul Eggert  <eggert@cs.ucla.edu>
9910
9911         * modules/xalloc (Depends-on): Add xalloc-die.
9912         * modules/xvasprintf (Depends-on): Add xalloc-die.
9913
9914 2005-07-15  Paul Eggert  <eggert@cs.ucla.edu>
9915
9916         * lib/quotearg.c: Add translator comment suggested by Bruno Haible,
9917         with a minor change.
9918
9919 2005-07-15  Bruno Haible  <bruno@clisp.org>
9920
9921         * m4/poll.m4 (gl_FUNC_POLL): Check against MacOS X 10.4 poll() bug.
9922         When using lib/poll.c, define poll as rpl_poll.
9923
9924 2005-07-14  Paul Eggert  <eggert@cs.ucla.edu>
9925
9926         * modules/argp (Depends-on): Remove unlocked-io.
9927
9928 2005-07-14  Derek Price  <derek@ximbiot.com>
9929
9930         * m4/glob.m4 (gl_GLOB): Cache glob interface check result.  Add check
9931         for glob symlink bug.
9932
9933 2005-07-14  Bruno Haible  <bruno@clisp.org>
9934
9935         * m4/argp.m4 (gl_ARGP): Remove invocation of gl_FUNC_GLIBC_UNLOCKED_IO.
9936         Instead, test for *_unlocked function declarations directly.
9937
9938 2005-07-11  Simon Josefsson  <jas@extundo.com>
9939
9940         * modules/size_max: New file.
9941
9942         * modules/xsize: Depend on size_max module for size_max.m4.
9943
9944 2005-07-11  Simon Josefsson  <jas@extundo.com>
9945
9946         * lib/size_max.h: New file.
9947
9948 2005-07-11  Paul Eggert  <eggert@cs.ucla.edu>
9949
9950         * lib/version-etc-fsf.c (version_etc_copyright): Parameterize the
9951         copyright symbol and the year.
9952         * lib/version-etc.c (COPYRIGHT_YEAR): New constant.
9953         (version_etc_va): Use parameterized copyright notice.
9954         Reword to conform to the current GNU coding standards.
9955
9956 2005-07-11  Karl Berry  <karl@gnu.org>
9957
9958         * doc/gnulib.texi (Quoting): new node.
9959         (Initial import): more info, from Patrice.
9960
9961 2005-07-11  Bruno Haible  <bruno@clisp.org>
9962
9963         * gnulib-tool (func_usage): Document option --avoid.
9964         (Command line options): Handle --avoid.
9965         (func_acceptable): New function.
9966         (func_modules_transitive_closure): Use it.
9967
9968 2005-07-11  Bruno Haible  <bruno@clisp.org>
9969
9970         * MODULES.html.sh: Use shortcut URLs to the www.opengroup.org site.
9971         Reported by Jim Meyering.
9972
9973 2005-07-10  Bruno Haible  <bruno@clisp.org>
9974
9975         * m4/size_max.m4 (gl_SIZE_MAX): Cast ~(size_t)0 back to size_t.
9976         Needed when size_t is smaller than 'unsigned int'.
9977         Reported by Paul Eggert.
9978
9979 2005-07-09  Sergey Poznyakoff  <gray@gnu.org.ua>
9980
9981         * modules/argp (Depends-on): Add unlocked-io
9982
9983 2005-07-09  Sergey Poznyakoff  <gray@gnu.org.ua>
9984
9985         * lib/argp-namefrob.h: Include unlocked-io.h. Removed unnecessary
9986         block of defines.
9987
9988 2005-07-08  Paul Eggert  <eggert@cs.ucla.edu>
9989
9990         * config/srclist.txt: Comment out regcomp.c, since we have a porting
9991         fix now.
9992
9993 2005-07-08  Eric Blake  <ebb9@byu.net>  (tiny change)
9994         and Paul Eggert  <eggert@cs.ucla.edu>
9995
9996         * lib/regcomp.c (init_dfa, build_range_exp): Store __btowc value
9997         in wint_t, not wchar_t.  Remove now-unnecessary cast.
9998
9999 2005-07-07  Paul Eggert  <eggert@cs.ucla.edu>
10000
10001         * modules/regex (Files): Add lib/regex_internal.c,
10002         lib/regex_internal.h, lib/regexec.c, lib/regcomp.c, m4/codeset.m4.
10003         (Depends-on): Add extensions.
10004         (Makefile.am): Remove lib_SOURCES; now done by m4 code.
10005
10006 2005-07-07  Paul Eggert  <eggert@cs.ucla.edu>
10007
10008         * m4/backupfile.m4 (gl_BACKUPFILE): Use AC_CHECK_FUNCS_ONCE on
10009         pathconf.
10010         * m4/same.m4 (gl_SAME): Likewise.
10011         Require AC_SYS_LONG_FILE_NAMES; bug reported by Gerrit P. Haase.
10012
10013         * m4/regex.m4: Adjust to new libc regex implementation.
10014         (gl_INCLUDED_REGEX): Add AC_LIBSOURCES for
10015         all the .c and .h parts of (the new) regex.
10016         Quote the m4 stuff better.
10017         Check for RE_ICASE bug of old gnulib.
10018         Check for REG_STARTEND of recent libc.
10019         Rename local variables from jm_* to gl_*.
10020         Quote operand of "test -f".
10021         Say "recent enough" version of libc, not "version 2".
10022         (gl_PREREQ_REGEX): Remove AC_FUNC_ALLOCA, since alloca is a
10023         prerequisite module.  Remove AC_HEADER_STDC; no longer needed.
10024         Check for locale.h, isblank, mbrtowc, wcrtomb, wcscoll.
10025         Remove check for btowc, isascii.
10026         Require AM_LANGINFO_CODESET.
10027
10028 2005-07-07  Paul Eggert  <eggert@cs.ucla.edu>
10029
10030         * lib/regex.c, regex.h: Sync from libc.
10031         * lib/regcomp.c, regexec_internal.c, regex_internal.h, regexec.c:
10032         New files, synced from libc, except that regex_internal.h
10033         currently has a small porting fix.
10034
10035 2005-07-07  Paul Eggert  <eggert@cs.ucla.edu>
10036
10037         * config/srclist.txt: Add regcomp.c, regex.c, regex.h,
10038         regex_internal.c, regexec.c.
10039         Add regex_internal.h too, but as a comment, since the libc version
10040         is currently broken in gnulib mode.
10041
10042 2005-07-06  Paul Eggert  <eggert@cs.ucla.edu>
10043
10044         Support programs like Emacs that use gnulib but not gettext.
10045         * MODULES.html.sh (Internationalization functions): Add gettext-h.
10046         * modules/gettext-h: New file.
10047         * modules/gettext (Files): Remove lib/gettext.h.
10048         (Depends-on): Add gettext-h.
10049         (Makefile.am): Remove lib_SOURCES.
10050         * modules/argmatch, modules/c-stack, modules/closeout:
10051         * modules/copy-file, modules/csharpcomp, modules/csharpexec:
10052         * modules/execute, modules/file-type, modules/getaddrinfo:
10053         * modules/getopt, modules/human, modules/javacomp:
10054         * modules/javaexec, modules/mkdir-p, modules/obstack:
10055         * modules/openat, modules/pagealign_alloc, modules/pipe:
10056         * modules/quotearg, modules/regex, modules/rpmatch:
10057         * modules/unicodeio, modules/userspec, modules/version-etc:
10058         * modules/wait-process, modules/xalloc-die, modules/xmemcoll:
10059         * modules/xsetenv:
10060         Depend on gettext-h, not gettext.
10061
10062 2005-07-05  Paul Eggert  <eggert@cs.ucla.edu>
10063
10064         * gnulib-tool (func_import): Add support for 'public domain' license.
10065         * modules/alloca, modules/atexit, modules/memmove:
10066         Now public domain, not GPL.
10067         * modules/dup2, modules/getpagesize, modules/malloc, modules/memset:
10068         * modules/realloc, modules/strerror, modules/strtod:
10069         Now LGPL, not GPL.
10070
10071 2005-07-05  Bruno Haible  <bruno@clisp.org>
10072
10073         * m4/mbrtowc.m4 (gl_FUNC_MBRTOWC): Upgrade to version from current
10074         autoconf CVS. Needed for mingw.
10075
10076 2005-07-03  Paul Eggert  <eggert@cs.ucla.edu>
10077
10078         Remove the dependency of the strftime module on the tzset module.
10079         * modules/strftime (Depends-on): Remove dependency on tzset.
10080
10081 2005-07-03  Paul Eggert  <eggert@cs.ucla.edu>
10082
10083         Remove the dependency of the strftime module on the tzset module.
10084         * m4/strftime.m4 (gl_FUNC_STRFTIME): Don't require
10085         gl_FUNC_TZSET_CLOBBER.
10086
10087 2005-07-03  Paul Eggert  <eggert@cs.ucla.edu>
10088
10089         Remove the dependency of the strftime module on the tzset module.
10090         * lib/strftime.c (my_strftime)
10091         [! defined _LIBC && ! HAVE_RUN_TZSET_TEST]:
10092         Copy the input structure, to work around some of the bug with
10093         Solaris 2.5.1 and Solaris 2.6.  If you still care about these old
10094         Solaris releases, you should also use the tzset module, but we won't
10095         require it as a dependency any more since we don't want LGPLed code
10096         to depend on GPLed code.
10097
10098 2005-07-02  Jim Meyering  <jim@meyering.net>
10099
10100         * m4/chown.m4, cloexec.m4, dup2.m4, fsusage.m4:
10101         * m4/getcwd-path-max.m4, getcwd.m4, mkstemp.m4, mountlist.m4:
10102         * m4/pagealign_alloc.m4, save-cwd.m4, unistd-safer.m4:
10103         Don't check for fcntl.h, and don't test for HAVE_FCNTL_H.
10104
10105 2005-07-02  Jim Meyering  <jim@meyering.net>
10106
10107         * lib/backupfile.c (backup_args): Change a `0' to NULL.
10108
10109 2005-07-01  Paul Eggert  <eggert@cs.ucla.edu>
10110
10111         * lib/xnanosleep.c: Include timespec.h, since OpenBSD 3.4 <time.h>
10112         declares only 'struct timespec;' (!).
10113
10114 2005-07-01  Jim Meyering  <jim@meyering.net>
10115
10116         * lib/chown.c, cloexec.c, dup-safer.c, dup2.c, fsusage.c, getcwd.c:
10117         * lib/getloadavg.c, mountlist.c, openat.h, pagealign_alloc.c:
10118         * lib/save-cwd.c, tempname.c:
10119         Assume HAVE_FCNTL_H (i.e., include <fcntl.h> unconditionally,
10120         and don't include <sys/file.h>).
10121
10122 2005-06-29  Jim Meyering  <jim@meyering.net>
10123
10124         * lib/mkdir-p.c (make_dir_parents): Don't apply sizeof to a hard-coded
10125         type name.  Use the variable name instead.
10126         * lib/idcache.c (getuser, getuidbyname, getgroup, getgidbyname):
10127         Likewise.
10128
10129 2005-06-28  Simon Josefsson  <jas@extundo.com>
10130
10131         * modules/check-version (Files): Add check-version.m4.
10132
10133 2005-06-28  Simon Josefsson  <jas@extundo.com>
10134
10135         * m4/check-version.m4: New file, suggested by Jim Meyering
10136         <jim@meyering.net>.
10137
10138 2005-06-28  Simon Josefsson  <jas@extundo.com>
10139
10140         * lib/check-version.h, check-version.c: New files.
10141
10142 2005-06-28  Simon Josefsson  <jas@extundo.com>
10143
10144         * lib/base64.c (base64_encode): Indent.  Rename 'b64' to avoid
10145         collision with global variable.  Better indentation.  Don't
10146         increment buffer pointer beyond buffer end.  Based on comments
10147         from Paul Eggert <eggert@cs.ucla.edu>.
10148
10149         * lib/base64.h: Indent.
10150
10151 2005-06-28  Simon Josefsson  <jas@extundo.com>
10152
10153         * doc/gnulib.texi (Library version handling): New section.
10154
10155 2005-06-28  Jim Meyering  <jim@meyering.net>
10156
10157         * check-module (find_included_lib_files): Hard-code another
10158         pair of exceptions: fts.c includes fts-cycle.c and unistd-safer.h
10159         but modules/fts-lgpl (correctly) does not list those files.
10160
10161         * modules/canonicalize (Files): Add lib/pathmax.h.
10162
10163 2005-06-25  Simon Josefsson  <jas@extundo.com>
10164
10165         * modules/check-version: New file.
10166
10167 2005-06-24  Paul Eggert  <eggert@cs.ucla.edu>
10168
10169         * lib/canon-host.c (canon-host): Append trailing "," to 0 in
10170         initializer of struct addrinfo, as an indication that we don't
10171         care how many members the structure has.
10172
10173 2005-06-24  Derek Price  <derek@ximbiot.com>
10174         and Bruno Haible  <bruno@clisp.org>
10175
10176         Remove stat module & update lstat.
10177         * m4/lstat.m4 (gl_FUNC_LSTAT): Drop AC_FUNC_LSTAT in favor of
10178         AC_FUNC_LSTAT_FOLLOWS_SLASHED_SYMLINK.
10179         * m4/stat.m4: Remove this file.
10180
10181 2005-06-24  Derek Price  <derek@ximbiot.com>
10182         and Bruno Haible  <bruno@clisp.org>
10183
10184         Remove stat module & update lstat.
10185         * lib/stat.c: Remove this file...
10186         (slash_aware_lstat): ...moving this content and its support...
10187         * lib/lstat.c (rpl_lstat): ...into here.
10188         * lib/lstat.h: New file.
10189
10190 2005-06-24  Derek Price  <derek@ximbiot.com>
10191         and Bruno Haible  <bruno@clisp.org>
10192
10193         Remove stat module & update lstat.
10194         * config/srclist.txt (libc sources): Remove stat.
10195
10196 2005-06-24  Derek Price  <derek@ximbiot.com>
10197         and Bruno Haible  <bruno@clisp.org>
10198
10199         Remove stat module & update lstat.
10200         * MODULES.html.sh (stat): Remove.
10201         * MODULES.html: Regenerated.
10202         * modules/lstat (Description): Correct function name.
10203         (Files): Add "lstat.h".
10204         (Depends-on): Remove stat, add xalloc, stat-macros.
10205         * modules/stat: Remove this file.
10206         (Include): Add "lstat.h", remove <sys/stat.h>.
10207
10208 2005-06-23  Paul Eggert  <eggert@cs.ucla.edu>
10209
10210         * lib/mktime.c: Include <string.h> even if !DEBUG.  (From glibc.)
10211         (ranged_convert): Don't save conversion in a temporary struct.
10212         This causes a warning with GCC 4.0.0, and anyway in the typical
10213         case it's not worth the extra 100 bytes or so of code.
10214         (ranged_convert, __mktime_internal): When calling a function via a
10215         pointer P, use P () rather than (*P) (), as we now assume C89 or
10216         better.
10217
10218 2005-06-22  Paul Eggert  <eggert@cs.ucla.edu>
10219
10220         * lib/readutmp.c (desirable_utmp_entry): Fix bug where "who -b" and
10221         "who -r" failed to give output.  Problem reported by Tim Waugh.
10222
10223         * lib/xmalloc.c (HAVE_GNU_CALLOC): New constant.
10224         (xcalloc): Use it to avoid needless tests.
10225         Problem reported by Jim Meyering.
10226
10227 2005-06-20  Derek Price  <derek@ximbiot.com>
10228
10229         * m4/bison.m4: Note that precious decls of YACC & YFLAGS will be
10230         unnecessary for Autoconfs > 2.59c.
10231
10232 2005-06-16  Sergey Poznyakoff  <gray@Mirddin.farlep.net>
10233
10234         * lib/argp.h (__option_is_short): Check upper limit of
10235         __key. Isprint() requires its argument to have the value
10236         of an unsigned char or EOF.
10237
10238 2005-06-16  Jim Meyering  <jim@meyering.net>
10239
10240         * lib/calloc.c (rpl_calloc): Allocate a 1-byte buffer (not 1xS or Nx1)
10241         when either N or S is zero.
10242
10243 2005-06-16  Derek Price  <derek@ximbiot.com>
10244
10245         * m4/bison.m4: Declare YACC & YFLAGS precious.
10246
10247 2005-06-10  Paul Eggert  <eggert@cs.ucla.edu>
10248
10249         * lib/fnmatch.c (fnmatch): If there is an encoding error in a
10250         multibyte string or pattern, fall back on unibyte matching.
10251         Problem reported by James Youngman.
10252
10253 2005-06-08  Bruno Haible  <bruno@clisp.org>
10254
10255         * modules/csharpcomp: New file.
10256         * MODULES.html.sh (C#): Add csharpcomp.
10257
10258 2005-06-08  Bruno Haible  <bruno@clisp.org>
10259
10260         * m4/csharpcomp.m4: New file, from GNU gettext.
10261
10262 2005-06-08  Bruno Haible  <bruno@clisp.org>
10263
10264         * lib/csharpcomp.h: New file, from GNU gettext.
10265         * lib/csharpcomp.c: New file, from GNU gettext.
10266         * lib/csharpcomp.sh.in: New file, from GNU gettext.
10267
10268 2005-06-08  Bruno Haible  <bruno@clisp.org>
10269
10270         * lib/binary-io.h (fileno): Undefine before defining it. Avoids a gcc
10271         warning on mingw.
10272
10273 2005-06-07  Derek Price  <derek@ximbiot.com>
10274
10275         Sync from CVS.
10276         * lib/glob_.h: Indent nested #ifdef.
10277
10278 2005-06-02  Paul Eggert  <eggert@cs.ucla.edu>
10279
10280         Sync from coreutils.
10281         Use "file name" when talking about file names, instead of "filename"
10282         or "path", as per the GNU coding standards.
10283         * lib/mkdir-p.c: Renamed from makepath.c.
10284         (make_dir_parents): Renamed from make_path.  All callers changed.
10285         * lib/mkdir-p.h: Likewise.  All includers changed.
10286         * lib/filenamecat.c: Renamed from path-concat.c.
10287         (file_name_concat): Renamed from path_concat.  All callers changed.
10288         [TEST_FILE_NAME_CONCAT]: Renamed from TEST_PATH_CONCAT.
10289         * lib/filenamecat.h: Likewise.  All includers changed.
10290         * lib/acl.c: Don't use "path" or "filename" to mean "file name"
10291         in comments or local variable names.
10292         * lib/basename.c: Likewise.
10293         * lib/canonicalize.c, canonicalize.h: Likewise.
10294         * lib/dirname.c, dirname.h: Likewise.
10295         * lib/euidaccess.c: Likewise.
10296         * lib/exclude.c: Likewise
10297         * lib/fnmatch_.h, fnmatch_loop.c: Likewise.
10298         * lib/fsusage.c, fsuage.h: Likewise.
10299         * lib/fts.c, fts_.h: Likewise.
10300         * lib/getcwd.c: Likewise.
10301         * lib/getloadavg.c: Likewise.
10302         * lib/mkstemp.c: Likewise.
10303         * lib/mountlist.c, mountlist.h: Likewise.
10304         * lib/openat.c, openat.h: Likewise.
10305         * lib/readlink-stub.c: Likewise.
10306         * lib/readutmp.c, readutmp.h: Likewise.
10307         * lib/rename.c: Likewise.
10308         * lib/rmdir.c: Likewise.
10309         * lib/same.c: Likewise.
10310         * lib/savedir.c: Likewise.
10311         * lib/stripslash.c: Likewise.
10312         * lib/tempname.c: Likewise.
10313         * lib/xreadlink.c: Likewise.
10314         * lib/exclude.c (excluded_file_name): Renamed from excluded_filename.
10315         All uses changed.
10316         * lib/exclude.h: Likewise.
10317
10318         * lib/euidaccess.c (getuid, getgid, getuid, getegid)
10319         [!defined _POSIX_VERSION]: Remove decls; not needed these days.
10320         * lib/idcache.c (getpwuid, getpwnam, getgrgid, getgrnam)
10321         [!defined _POSIX_VERSION]: Remove decls; not needed these days.
10322         * lib/pathmax.h: Include <limits.h> unconditionally, since other
10323         files have been getting away with it for years (MORE/BSD 4.3
10324         is extinct now).
10325         * lib/userspec.c (getpwnam, getgrnam, getgrgid)
10326         [!defined _POSIX_VERSION]: Remove decls; not needed these days.
10327
10328         * lib/pathmax.h (_POSIX_PATH_MAX) [!defined _POSIX_PATH_MAX]:
10329         Define to 256, not 255, as per modern POSIX.
10330
10331 2005-06-02  Paul Eggert  <eggert@cs.ucla.edu>
10332
10333         Sync from coreutils.
10334         Use "file name" when talking about file names, instead of "filename"
10335         or "path", as per the GNU coding standards.
10336         * MODULES.html.sh: mkdir-p renamed from makepath.
10337         filenamecat renamed from path-concat.
10338         * modules/filenamecat: Renamed from modules/path-concat.
10339         (Files): filenamecat.h and filenamecat.c renamed from
10340         path-concat.h and path-concat.c.
10341         (configure.ac): gl_FILE_NAME_CONCAT, not gl_PATH_CONCAT.
10342         (Include): filenamecat.h, not path-concat.h.
10343         * modules/mkdir-p: Renamed from modules/makepath.
10344         (Files): mkdir-p.h and mkdir-p.c renamed from makepath.h and
10345         makepath.c.
10346         (configure.ac): gl_MKDIR_PARENTS, not gl_MAKEPATH.
10347         (Include): mkdir-p.h, not makepath.h.
10348
10349 2005-06-02  Paul Eggert  <eggert@cs.ucla.edu>
10350
10351         Sync from coreutils.
10352         * m4/mkdir-p.m4: Renamed from makepath.m4.
10353         (gl_MKDIR_PARENTS): Renamed from gl_MAKEPATH.  All uses changed.
10354         Rename files from makepath.c to mkdir-p.c, and from
10355         makepath.h to mkdir-p.h.
10356         * m4/filenamecat.m4: Renamed from path-concat.m4.
10357         (gl_FILE_NAME_CONCAT): Renamed from gl_PATH_CONCAT.  All uses changed.
10358         Rename files from path-concat.c to filenamecat.c,
10359         and from path-concat.h to filenamecat.h.
10360         * m4/getcwd-path-max.m4: Don't use "path" or "filename" to mean
10361         "file name" in local variables or comments.
10362         * m4/rename.m4: Likewise.
10363
10364 2005-06-01  Bruno Haible  <bruno@clisp.org>
10365
10366         * modules/csharpexec: New file.
10367         * MODULES.html.sh (C#): New section.
10368
10369 2005-06-01  Bruno Haible  <bruno@clisp.org>
10370
10371         * m4/csharp.m4: New file, from GNU gettext.
10372         * m4/csharpexec.m4: New file, from GNU gettext.
10373
10374 2005-06-01  Bruno Haible  <bruno@clisp.org>
10375
10376         * lib/csharpexec.h: New file, from GNU gettext.
10377         * lib/csharpexec.c: New file, from GNU gettext.
10378         * lib/csharpexec.sh.in: New file, from GNU gettext.
10379
10380 2005-05-31  Derek Price  <derek@ximbiot.com>
10381             Paul Eggert  <eggert@cs.ucla.edu>
10382
10383         Sync from cvs.
10384         * m4/glob.m4: s/MISSING_SYS_CDEFS_H/_SYS_CDEFS_H/ and comment.
10385
10386 2005-05-31  Derek Price  <derek@ximbiot.com>
10387             Paul Eggert  <eggert@cs.ucla.edu>
10388
10389         Sync from cvs.
10390         * lib/glob_.h: s/MISSING_SYS_CDEFS_H/_SYS_CDEFS_H/ and comment.
10391
10392 2005-05-29  Derek Price  <derek@ximbiot.com>
10393
10394         * config/srclist.txt (glob_.h, glob.c): Add these files.
10395
10396 2005-05-29  Derek Price  <derek@ximbiot.com>
10397
10398         * MODULES.html.sh: Add glob to Enhanced POSIX.2001 section.
10399         * modules/glob: New file.
10400         * modules/getlogin_r: Add link to POSIX spec in description.
10401
10402 2005-05-29  Derek Price  <derek@ximbiot.com>
10403             Paul Eggert  <eggert@cs.ucla.edu>
10404
10405         * m4/glob.m4: New file.
10406
10407 2005-05-29  Derek Price  <derek@ximbiot.com>
10408             Paul Eggert  <eggert@cs.ucla.edu>
10409
10410         * lib/glob_.h, glob.c: New files.
10411
10412 2005-05-27  Paul Eggert  <eggert@cs.ucla.edu>
10413
10414         * modules/fts (Files): Remove m4/inttypes-pri.m4.
10415         * modules/fts-lgpl (Depends-on): Remove gettext.
10416
10417 2005-05-27  Paul Eggert  <eggert@cs.ucla.edu>
10418
10419         * m4/fts.m4 (gl_FUNC_FTS_CORE): Don't check for inttypes.h or stdint.h,
10420         and don't require gt_INTTYPES_PRI.
10421
10422 2005-05-27  Paul Eggert  <eggert@cs.ucla.edu>
10423
10424         * lib/getlogin_r.c (getlogin_r): Don't set errno to 0 on return.
10425
10426         * lib/fts.c: Don't worry about debugging on pre-C99-compatible hosts;
10427         the configuration hassle isn't worth it.
10428         Include inttypes.h and stdint.h unconditionally if FTS_DEBUG.
10429         (LONGEST_MODIFIER, PRIuMAX): Remove.
10430
10431 2005-05-27  Bruno Haible  <bruno@clisp.org>
10432
10433         * lib/getlogin_r.h: Remove second include of <stddef.h>.
10434
10435 2005-05-26  Paul Eggert  <eggert@cs.ucla.edu>
10436
10437         * m4/extensions.m4 (gl_USE_SYSTEM_EXTENSIONS): Define
10438         _POSIX_PTHREAD_SEMANTICS for Solaris.
10439
10440 2005-05-25  Derek Price  <derek@ximbiot.com>
10441
10442         * MODULES.html.sh: Add getlogin_r to POSIX.2001 support section.
10443
10444 2005-05-25  Derek Price  <derek@ximbiot.com>
10445             Paul Eggert  <eggert@cs.ucla.edu>
10446
10447         * modules/getlogin_r: New files.
10448
10449 2005-05-25  Derek Price  <derek@ximbiot.com>
10450             Paul Eggert  <eggert@cs.ucla.edu>
10451
10452         * m4/getlogin_r.m4: New files.
10453
10454 2005-05-25  Derek Price  <derek@ximbiot.com>
10455             Paul Eggert  <eggert@cs.ucla.edu>
10456
10457         * lib/getlogin_r.c, getlogin_r.h: New files.
10458
10459 2005-05-25  Bruno Haible  <bruno@clisp.org>
10460             Derek Price  <derek@ximbiot.com>
10461
10462         * lib/getlogin_r.h: Simplify API documentation.
10463
10464 2005-05-23  Derek Price  <derek@ximbiot.com>
10465
10466         * modules/minmax (Files): Add m4/minmax.m4.
10467         (configure.ac): Add gl_MINMAX.
10468
10469 2005-05-22  Paul Eggert  <eggert@cs.ucla.edu>
10470
10471         * lib/fts.c (fd_safer) [_LGPL_PACKAGE]: New static function,
10472         so that unistd-safer.h (GPL'ed code) need not be included.
10473
10474 2005-05-22  Bruno Haible  <bruno@clisp.org>
10475
10476         * m4/minmax.m4: New file.
10477         Based on a patch by Derek Price <derek@ximbiot.com>.
10478
10479 2005-05-22  Bruno Haible  <bruno@clisp.org>
10480
10481         * lib/stdint_.h (_STDINT_H_HAVE_INT64): New macro. Use it in #ifdefs.
10482         (INT64_MIN): Fix definition.
10483         Suggested by Paul Eggert <eggert@cs.ucla.edu>.
10484
10485         * lib/stdint_.h (_STDINT_H_NEED_SIGNED_INT_TYPES): Renamed from
10486         NEED_SIGNED_INT_TYPES.
10487
10488         * lib/stdint_.h (_STDINT_H_HAVE_SYSTEM_INTTYPES): Renamed from
10489         HAVE_SYSTEM_INTTYPES.
10490
10491 2005-05-22  Bruno Haible  <bruno@clisp.org>
10492
10493         * lib/minmax.h: Include <limits.h> only when it defines MIN, MAX.
10494         Also include <sys/param.h> if it defines MIN, MAX.
10495         Based on a patch by Derek Price <derek@ximbiot.com>.
10496
10497 2005-05-21  Jim Meyering  <jim@meyering.net>
10498
10499         * modules/fts (Files): Add m4/inttypes-pri.m4.
10500         (Depends-on): Add lstat and remove gettext.  Alphabetize.
10501
10502 2005-05-20  Paul Eggert  <eggert@cs.ucla.edu>
10503
10504         New fts module.
10505         * lib/fts.c: Don't include "cycle-check.h" or "hash.h".
10506         (setup_dir, free_dir): New functions.
10507         (enter_dir, leave_dir): Define trivial
10508         alternatives of _LGPL_PACKAGE.  Move to fts-cycle.c if !_LGPL_PACKAGE.
10509         (HT_INITIAL_SIZE, ENTER_DIR): Remove.  All uses removed.
10510         (LEAVE_DIR): Fix typo: pass Fts and Ent to leave_dir.
10511         (struct Active_dir, AD_compare, AD_hash, enter_dir, leave_dir):
10512         Move to fts-cycle.c.
10513         (fts_open): Use setup_dir.
10514         (fts_close): Use free_dir.
10515         (fts_read): Have just one copy of the ENTER_DIR code rather than three.
10516         This adds a label and some gotos, but the alternatives were messier.
10517         Check for memory allocation failure when entering a dir.
10518         (fts_stat) [_LGPL_PACKAGE]: Bring back glibc cycle detection code.
10519         * lib/fts_.h (_LGPL_PACKAGE) [defined _LIBC]: New macro.
10520         (FTS): New member fts_cycle, that is a union that contains the
10521         old active_dir_ht and cycle_state.  All uses changed to mention
10522         fts_cycle.ht and fts_cycle.state.
10523         * lib/fts-cycle.c: New file, containing GPL'ed code migrated out of
10524         fts.c, with the following changes:
10525         (setup_dir, free_dir): New functions.
10526         (enter_dir): Now returns bool.  Return true if successful, false
10527         if memory exhausted.  All callers changed.
10528         Do not bother partly cleaning up on
10529         memory allocation failure; that is free_dir's job.
10530         However, free ad if hash_insert fails, to avoid memory leak.
10531         (enter_dir, leave_dir): Accommodate change to FTS by inspecting
10532         fts->fts_options to see which union member to use.
10533
10534 2005-05-20  Paul Eggert  <eggert@cs.ucla.edu>
10535
10536         * m4/fts.m4 (gl_FUNC_FTS_CORE): Renamed from gl_FUNC_FTS.
10537         (gl_FUNC_FTS, gl_FUNC_FTS_LGPL): New macros.
10538
10539 2005-05-20  Paul Eggert  <eggert@cs.ucla.edu>
10540
10541         * MODULES.html.sh (File system functions): Add fts, fts-lgpl.
10542
10543 2005-05-20  Jim Meyering  <jim@meyering.net>
10544
10545         * lib/unlinkdir.h (cannot_unlink_dir) [UNLINK_CANNOT_UNLINK_DIR]:
10546         Now a macro, to pacify GCC.
10547
10548 2005-05-20  Eric Blake  <ebb9@byu.net>  (tiny change)
10549
10550         * m4/chown.m4 (gl_FUNC_CHOWN): Correct sense of test for honoring IDs
10551         of -1.
10552
10553 2005-05-20  Eric Blake  <ebb9@byu.net>  (tiny change)
10554
10555         * lib/chown.c (rpl_chown): Return -1 on failure.
10556
10557 2005-05-18  Paul Eggert  <eggert@cs.ucla.edu>
10558
10559         * m4/canonicalize.m4 (AC_FUNC_CANONICALIZE_FILE_NAME]):
10560         Don't check for stddef.h.
10561         * m4/fts.m4 (gl_FUNC_FTS): Don't require AC_HEADER_STDC, as we
10562         don't use its results.
10563         Don't check for fcntl.h, stddef.h, stdlib.h, string.h, unistd.h,
10564         since we include them unconditionally.  Don't require
10565         AM_STDBOOL_H, since stdbool is a prerequisite.
10566         Don't require AC_C_CONST, AC_TYPE_SIZE_T or check for ptrdiff_t
10567         since we assume C89 or better.
10568         Don't require AC_FUNC_CLOSEDIR_VOID, AC_FUNC_LSTAT, or AC_FUNC_STAT,
10569         as we don't use their results.
10570         Don't check for fchdir, memmove, memset, strrchr, as we use
10571         them unconditionally.
10572         * m4/gettimeofday.m4 (AC_FUNC_GETTIMEOFDAY_CLOBBER): Don't define
10573         GETTIMEOFDAY_CLOBBERS_LOCALTIME_BUFFER, since nobody uses it.
10574
10575 2005-05-18  Paul Eggert  <eggert@cs.ucla.edu>
10576
10577         * lib/canonicalize.c: Include canonicalize.h first, to test interface.
10578         Include <stddef.h> unconditionally, since we assume C89 now.
10579         All uses of PTR_INT_TYPE replaced by ptrdiff_t.
10580         * lib/fts.c: Include fts_.h first, to check interface.
10581         Do not include intprops.h; no longer needed.
10582         Include cycle-check.h and hash.h, since fts_.h no longer does.
10583         Remove unnecessary casts of closedir to void.
10584         (fts_build): Use a simpler method (not involving TYPE_SIGNED) to
10585         decide whether to decrement nlinks.
10586         * lib/fts_.h: Do not include hash.h or cycle-check.h; no longer needed.
10587         (FTS): Use struct hash_table * instead of Hash_table, so that
10588         we no longer need to include hash.h here.
10589
10590 2005-05-18  Jim Meyering  <jim@meyering.net>
10591
10592         * modules/dirfd (License): Change to LGPL.  Most of the code
10593         is already in the public domain.
10594
10595 2005-05-18  Jim Meyering  <jim@meyering.net>
10596
10597         * m4/fts.m4 (AC_LIBSOURCES): Add intprops.h to the list.
10598         Reported by Yoann Vandoorselaere.
10599
10600 2005-05-17  Jim Meyering  <jim@meyering.net>
10601
10602         * m4/fts.m4: New file, from coreutils.
10603
10604 2005-05-17  Jim Meyering  <jim@meyering.net>
10605
10606         * lib/fts.c, fts_.h: New files, from coreutils.
10607
10608 2005-05-14  Paul Eggert  <eggert@cs.ucla.edu>
10609
10610         Sync from coreutils.
10611         * m4/unlinkdir.m4: New file.
10612
10613 2005-05-14  Paul Eggert  <eggert@cs.ucla.edu>
10614
10615         Sync from coreutils.
10616         * lib/unlinkdir.c, unlinkdir.h: New files.
10617         * lib/gethrxtime.c, lib/gethrxtime.h, lib/getpass.h, lib/mountlist.h,
10618         lib/path-concat.c, lib/regex.h, lib/unlocked-io.h, lib/xtime.h:
10619         White space changes only.
10620         * lib/makepath.c (make_path): Port to hosts where leading "//" is
10621         special.
10622         * lib/yesno.c: Include getline.h, not ctype.h.
10623         (yesno): Don't remove leading white space; POSIX doesn't allow it.
10624         Use getline to remove arbitrary restriction on response length.
10625
10626 2005-05-14  Paul Eggert  <eggert@cs.ucla.edu>
10627
10628         * config/srclist-update: Spell out "Street" in FSF postal
10629         mail address; this is the style the FSF seems to prefer.
10630
10631         * build-aux/depcomp, build-aux/install-sh, build-aux/mdate-sh,
10632         build-aux/missing, build-aux/mkinstalldirs: Sync from Automake;
10633         this updates FSF postal mail address.
10634
10635         Sync from coreutils.
10636         * modules/unlinkdir: New file.
10637         * modules/yesno (Depends-on): Add getline.
10638         * MODULES.html.sh (File system functions): Add unlinkdir.
10639
10640 2005-05-13  Paul Eggert  <eggert@cs.ucla.edu>
10641
10642         * lib/byteswap_.h, lib/getsubopt.h, lib/iconvme.h, lib/strsep.c,
10643         lib/strsep.h:
10644         Change the initial comment to refer to GPL, not LGPL.
10645         gnulib-tool will change it to LGPL as needed.
10646
10647         * lib/__fpending.c, lib/acl.c, lib/acl.h, lib/alloca_.h, lib/allocsa.c,
10648         lib/allocsa.h, lib/argmatch.c, lib/argmatch.h, lib/argp-ba.c,
10649         lib/argp-eexst.c, lib/argp-fmtstream.c, lib/argp-fmtstream.h,
10650         lib/argp-fs-xinl.c, lib/argp-help.c, lib/argp-namefrob.h,
10651         lib/argp-parse.c, lib/argp-pv.c, lib/argp-pvh.c, lib/argp-xinl.c,
10652         lib/argp.h, lib/argz.c, lib/argz_.h, lib/asnprintf.c, lib/asprintf.c,
10653         lib/atanl.c, lib/backupfile.c, lib/backupfile.h, lib/base64.c,
10654         lib/base64.h, lib/basename.c, lib/binary-io.h, lib/byteswap_.h,
10655         lib/c-ctype.c, lib/c-ctype.h, lib/c-stack.c, lib/c-stack.h,
10656         lib/c-strtod.c, lib/calloc.c, lib/canon-host.c, lib/canonicalize.c,
10657         lib/canonicalize.h, lib/ceill.c, lib/chdir-long.c, lib/chdir-long.h,
10658         lib/chown.c, lib/classpath.c, lib/classpath.h, lib/cloexec.c,
10659         lib/closeout.c, lib/closeout.h, lib/concatpath.c, lib/config.charset,
10660         lib/copy-file.c, lib/copy-file.h, lib/cycle-check.c, lib/cycle-check.h,
10661         lib/diacrit.c, lib/diacrit.h, lib/dirfd.c, lib/dirfd.h, lib/dirname.c,
10662         lib/dirname.h, lib/dummy.c, lib/dup-safer.c, lib/dup2.c, lib/eealloc.h,
10663         lib/error.c, lib/error.h, lib/euidaccess.c, lib/exclude.c,
10664         lib/exclude.h, lib/execute.c, lib/execute.h, lib/exit.h,
10665         lib/exitfail.c, lib/exitfail.h, lib/expl.c, lib/fatal-signal.c,
10666         lib/fatal-signal.h, lib/fd-safer.c, lib/file-type.c, lib/file-type.h,
10667         lib/fileblocks.c, lib/filemode.c, lib/filemode.h, lib/findprog.c,
10668         lib/findprog.h, lib/floorl.c, lib/fnmatch.c, lib/fnmatch_.h,
10669         lib/fnmatch_loop.c, lib/fopen-safer.c, lib/free.c, lib/frexpl.c,
10670         lib/fsusage.c, lib/fsusage.h, lib/full-read.c, lib/full-read.h,
10671         lib/full-write.c, lib/full-write.h, lib/fwriteerror.c,
10672         lib/fwriteerror.h, lib/gai_strerror.c, lib/gcd.c, lib/gcd.h,
10673         lib/getaddrinfo.c, lib/getaddrinfo.h, lib/getcwd.c, lib/getcwd.h,
10674         lib/getdate.h, lib/getdate.y, lib/getdomainname.c, lib/getdomainname.h,
10675         lib/getgroups.c, lib/gethostname.c, lib/gethrxtime.c, lib/gethrxtime.h,
10676         lib/getline.c, lib/getline.h, lib/getloadavg.c, lib/getndelim2.c,
10677         lib/getndelim2.h, lib/getnline.c, lib/getnline.h, lib/getopt.c,
10678         lib/getopt1.c, lib/getopt_.h, lib/getopt_int.h, lib/getpagesize.h,
10679         lib/getpass.c, lib/getpass.h, lib/getsubopt.c, lib/getsubopt.h,
10680         lib/gettext.h, lib/gettime.c, lib/gettimeofday.c, lib/getugroups.c,
10681         lib/getusershell.c, lib/group-member.c, lib/group-member.h,
10682         lib/hard-locale.c, lib/hard-locale.h, lib/hash-pjw.c, lib/hash-pjw.h,
10683         lib/hash.c, lib/hash.h, lib/human.c, lib/human.h, lib/iconvme.c,
10684         lib/iconvme.h, lib/idcache.c, lib/inet_ntop.h, lib/intprops.h,
10685         lib/inttostr.c, lib/inttostr.h, lib/isdir.c, lib/javacomp.c,
10686         lib/javacomp.h, lib/javacomp.sh.in, lib/javaexec.c, lib/javaexec.h,
10687         lib/javaexec.sh.in, lib/lbrkprop.h, lib/lchown.c, lib/ldexpl.c,
10688         lib/linebreak.c, lib/linebreak.h, lib/linebuffer.c, lib/linebuffer.h,
10689         lib/localcharset.c, lib/localcharset.h, lib/logl.c, lib/long-options.c,
10690         lib/long-options.h, lib/lstat.c, lib/makepath.c, lib/makepath.h,
10691         lib/malloc.c, lib/mathl.h, lib/mbswidth.c, lib/mbswidth.h, lib/md5.c,
10692         lib/md5.h, lib/memcasecmp.c, lib/memcasecmp.h, lib/memchr.c,
10693         lib/memcmp.c, lib/memcoll.c, lib/memcoll.h, lib/memcpy.c, lib/memmem.c,
10694         lib/memmem.h, lib/mempcpy.c, lib/mempcpy.h, lib/memrchr.c,
10695         lib/memrchr.h, lib/memset.c, lib/minmax.h, lib/mkdir.c, lib/mkdtemp.c,
10696         lib/mkdtemp.h, lib/mkstemp.c, lib/mktime.c, lib/modechange.c,
10697         lib/modechange.h, lib/mountlist.c, lib/mountlist.h, lib/nanosleep.c,
10698         lib/obstack.c, lib/obstack.h, lib/openat.c, lib/openat.h,
10699         lib/pagealign_alloc.c, lib/pagealign_alloc.h, lib/path-concat.c,
10700         lib/path-concat.h, lib/pathmax.h, lib/pathname.h, lib/physmem.c,
10701         lib/physmem.h, lib/pipe.c, lib/pipe.h, lib/poll.c, lib/poll_.h,
10702         lib/posixtm.c, lib/posixtm.h, lib/posixver.c, lib/printf-args.c,
10703         lib/printf-args.h, lib/printf-parse.c, lib/printf-parse.h,
10704         lib/progname.c, lib/progname.h, lib/progreloc.c, lib/putenv.c,
10705         lib/quote.c, lib/quote.h, lib/quotearg.c, lib/quotearg.h, lib/raise.c,
10706         lib/readlink.c, lib/readtokens.c, lib/readtokens.h, lib/readtokens0.c,
10707         lib/readtokens0.h, lib/readutmp.c, lib/readutmp.h, lib/realloc.c,
10708         lib/ref-add.sin, lib/ref-del.sin, lib/regex.c, lib/regex.h,
10709         lib/rename.c, lib/rmdir.c, lib/rpmatch.c, lib/safe-read.c,
10710         lib/safe-read.h, lib/safe-write.c, lib/safe-write.h, lib/same.c,
10711         lib/same.h, lib/save-cwd.c, lib/save-cwd.h, lib/savedir.c,
10712         lib/savedir.h, lib/setenv.c, lib/setenv.h, lib/settime.c,
10713         lib/sh-quote.c, lib/sh-quote.h, lib/sha1.c, lib/sha1.h, lib/sig2str.c,
10714         lib/sig2str.h, lib/sincosl.c, lib/snprintf.c, lib/snprintf.h,
10715         lib/sqrtl.c, lib/stat-macros.h, lib/stat.c, lib/stdbool_.h,
10716         lib/stdint_.h, lib/stdio-safer.h, lib/stpcpy.c, lib/stpcpy.h,
10717         lib/stpncpy.c, lib/stpncpy.h, lib/strcase.h, lib/strcasecmp.c,
10718         lib/strchrnul.c, lib/strchrnul.h, lib/strcspn.c, lib/strdup.c,
10719         lib/strdup.h, lib/strerror.c, lib/strftime.c, lib/strftime.h,
10720         lib/stripslash.c, lib/strndup.c, lib/strndup.h, lib/strnlen.c,
10721         lib/strpbrk.c, lib/strpbrk.h, lib/strsep.c, lib/strsep.h, lib/strstr.c,
10722         lib/strstr.h, lib/strtod.c, lib/strtoimax.c, lib/strtok_r.c,
10723         lib/strtok_r.h, lib/strtol.c, lib/strtoll.c, lib/strtoul.c,
10724         lib/strtoull.c, lib/strverscmp.c, lib/strverscmp.h, lib/sysexit_.h,
10725         lib/tempname.c, lib/time_r.c, lib/time_r.h, lib/timegm.c, lib/timegm.h,
10726         lib/timespec.h, lib/trigl.c, lib/trigl.h, lib/ucs4-utf16.h,
10727         lib/ucs4-utf8.h, lib/unicodeio.c, lib/unicodeio.h, lib/unistd-safer.h,
10728         lib/unlocked-io.h, lib/unsetenv.c, lib/userspec.c, lib/utf16-ucs4.h,
10729         lib/utf8-ucs4.h, lib/utime.c, lib/utimecmp.c, lib/utimecmp.h,
10730         lib/utimens.c, lib/vasnprintf.c, lib/vasnprintf.h, lib/vasprintf.c,
10731         lib/vasprintf.h, lib/version-etc-fsf.c, lib/version-etc.c,
10732         lib/version-etc.h, lib/vsnprintf.c, lib/vsnprintf.h, lib/w32spawn.h,
10733         lib/wait-process.c, lib/wait-process.h, lib/xalloc-die.c, lib/xalloc.h,
10734         lib/xallocsa.c, lib/xallocsa.h, lib/xasprintf.c, lib/xgetcwd.c,
10735         lib/xgetcwd.h, lib/xgetdomainname.c, lib/xgetdomainname.h,
10736         lib/xgethostname.c, lib/xmalloc.c, lib/xmemcoll.c, lib/xnanosleep.c,
10737         lib/xreadlink.c, lib/xreadlink.h, lib/xsetenv.c, lib/xsetenv.h,
10738         lib/xsize.h, lib/xstrndup.c, lib/xstrndup.h, lib/xstrtod.c,
10739         lib/xstrtod.h, lib/xstrtoimax.c, lib/xstrtol.c, lib/xstrtol.h,
10740         lib/xstrtoumax.c, lib/xtime.h, lib/xvasprintf.c, lib/xvasprintf.h,
10741         lib/yesno.c, lib/yesno.h:
10742         Update FSF postal mail address.
10743
10744 2005-05-13  Paul Eggert  <eggert@cs.ucla.edu>
10745
10746         * MODULES.html.sh, README, gnulib-tool, tests/test-base64.c,
10747         tests/test-memmem.c, tests/test-stpncpy.c:
10748         Update FSF postal mail address.
10749
10750 2005-05-13  Bruno Haible  <bruno@clisp.org>
10751
10752         * lib/stdint_.h (int64_t, uint64_t, int_least64_t, uint_least64_t,
10753         int_fast64_t, uint_fast64_t, intmax_t, uintmax_t, INT64_MIN, INT64_MAX,
10754         UINT64_MAX, INT_LEAST64_MIN, INT_LEAST64_MAX, UINT_LEAST64_MAX,
10755         INT_FAST64_MIN, INT_FAST64_MAX, UINT_FAST64_MAX, INTMAX_MIN,
10756         INTMAX_MAX, UINTMAX_MAX, INT64_C, UINT64_C, INTMAX_C, UINTMAX_C):
10757         Add support for 64-bit integers in the MSVC compiler.
10758
10759 2005-05-12  Sergey Poznyakoff  <gray@Mirddin.farlep.net>
10760
10761         * modules/getdate (Makefile.am): Add getdate.c to EXTRA_DIST
10762
10763 2005-05-12  Eric Blake  <ebb9@byu.net>  (tiny change)
10764
10765         * gnulib-tool (func_import): Sort and uniquify recommended includes.
10766
10767 2005-05-11  Paul Eggert  <eggert@cs.ucla.edu>
10768
10769         * doc/getdate.texi (General date syntax): Don't say that date
10770         date --iso-8601=ns generates acceptable dates; it doesn't yet.
10771         Problem reported by Nic Ferrier.
10772
10773 2005-05-10  Yoann Vandoorselaere <yoann.v@prelude-ids.com>
10774
10775         * lib/getaddrinfo.c: Don't fail when SOCK_STREAM or SOCK_DGRAM are
10776         specified in ai_socktype. Fix invalid ai_protocol
10777         check. ai_protocol is usually set to 0 or depending on
10778         ai_family/ai_socktype to IPPROTO_TCP / IPPROTO_UDP.  Checking for
10779         SOCK_STREAM / SOCK_DGRAM in ai_protocol was invalid.  Set
10780         ai_socktype / ai_protocol in the returned addrinfo structure.
10781
10782 2005-05-10  Simon Josefsson  <jas@extundo.com>
10783
10784         * m4/getaddrinfo.m4: Look in libnsl/libsocket for getaddrinfo, from
10785         Yoann Vandoorselaere <yoann.v@prelude-ids.com>.
10786
10787 2005-05-10  Karl Berry  <karl@gnu.org>
10788
10789         * doc/fdl.texi, gpl.texi, lgpl.texi, COPYING: update FSF address
10790         (from http://www.gnu.org/licenses).
10791         * doc/COPYING.LIB: also rename to COPYING.LESSER.
10792         * doc/COPYING.DOC: remove; per rms, only needed in doc files, so
10793         fdl.texi suffices.
10794
10795 2005-05-10  Karl Berry  <karl@gnu.org>
10796
10797         * config/srclist.txt (COPYING.LESSER): rename from COPYING.LIB.
10798         (COPYING.DOC): remove.
10799
10800         * config/srclist-update: new FSF address.
10801
10802 2005-05-10  Derek Price  <derek@ximbiot.com>
10803
10804         * m4/getopt.m4 (gl_GETOPT): Check for Solaris 10 bug, not decl, when
10805         possible.
10806
10807 2005-05-09  Yoann Vandoorselaere <yoann.v@prelude-ids.com>
10808             Bruno Haible  <bruno@clisp.org>
10809
10810         * modules/inet_ntop: New file.
10811         * MODULES.html.sh (Support for systems lacking POSIX:2001): Add
10812         inet_ntop.
10813
10814 2005-05-09  Yoann Vandoorselaere <yoann.v@prelude-ids.com>
10815             Bruno Haible  <bruno@clisp.org>
10816
10817         * m4/inet_ntop.m4: New file.
10818
10819 2005-05-09  Yoann Vandoorselaere <yoann.v@prelude-ids.com>
10820             Bruno Haible  <bruno@clisp.org>
10821
10822         * lib/inet_ntop.h: New file.
10823         * lib/inet_ntop.c: New file, from glibc with modifications.
10824
10825 2005-05-09  Paul Eggert  <eggert@cs.ucla.edu>
10826
10827         * modules/time_r (License): Change to LGPL.
10828         * modules/extensions (License): Change to LGPL.  Actually,
10829         the license is more permissive than that, but currently gnulib-tool
10830         doesn't know how to handle more-permissive licenses.
10831
10832         * modules/stat-macros (Depends-on): Don't depend on stat-macros (!).
10833         Problem reported by Dave Love.
10834
10835 2005-05-08  Jim Meyering  <jim@meyering.net>
10836
10837         * lib/classpath.c (PATH_SEPARATOR): Remove insignificant trailing
10838         blank.
10839
10840 2005-05-06  Paul Eggert  <eggert@cs.ucla.edu>
10841
10842         * modules/argmatch (Depends-on): Add stdbool.
10843         * modules/backupfile (Depends-on): Likewise.
10844         * modules/chdir-long (Depends-on): Likewise.
10845         * modules/closeout (Depends-on): Likewise.
10846         * modules/cycle-check (Depends-on): Likewise.
10847         * modules/dirname (Depends-on): Likewise.
10848         * modules/fnmatch (Depends-on): Likewise.
10849         * modules/fsusage (Depends-on): Likewise.
10850         * modules/fwriteerror (Depends-on): Likewise.
10851         * modules/getcwd (Depends-on): Likewise.
10852         * modules/getloadavg (Depends-on): Likewise.
10853         * modules/hard-locale (Depends-on): Likewise.
10854         * modules/makepath (Depends-on): Likewise.
10855         * modules/mountlist (Depends-on): Likewise.
10856         * modules/nanosleep (Depends-on): Likewise.
10857         * modules/posixtm (Depends-on): Likewise.
10858         * modules/quotearg (Depends-on): Likewise.
10859         * modules/readtokens (Depends-on): Likewise.
10860         * modules/readtokens0 (Depends-on): Likewise.
10861         * modules/readutmp (Depends-on): Likewise.
10862         * modules/save-cwd (Depends-on): Likewise.
10863         * modules/strftime (Depends-on): Likewise.
10864         * modules/userspec (Depends-on): Likewise.
10865         * modules/utimecmp (Depends-on): Likewise.
10866         * modules/xgetcwd (Depends-on): Likewise.
10867         * modules/xnanosleep (Depends-on): Likewise.
10868         * modules/xstrtod (Depends-on): Likewise.
10869         * modules/yesno (Depends-on): Likewise.
10870
10871 2005-05-05  Paul Eggert  <eggert@cs.ucla.edu>
10872
10873         * m4/getopt.m4 (gl_GETOPT): Check for Solaris 10 getopt, and avoid
10874         needless checks.
10875
10876 2005-05-01  Paul Eggert  <eggert@cs.ucla.edu>
10877
10878         Merge from coreutils.  Among other things,
10879         add bulletproofing for cases where stdin, stdout, or stderr are closed.
10880         * lib/fd-safer.c: New file.
10881         * lib/fcntl-safer.h, open-safer.c: Remove.
10882         * lib/chdir-long.c: Fix comment "fetish" -> "coreutils".
10883         * lib/dup-safer.c: Include unistd-safer.h first.
10884         Don't include errno.h.
10885         (dup_safer) [!defined F_DUPFD]: Let fd_safer do the real work.
10886         * lib/file-type.h: Don't assume invoker included sys/stat.h first.
10887         * lib/file-type.c: Rely on file-type.h change.
10888         * lib/getloadavg.c: Include unistd-safer.h.
10889         (getloadavg): Use safer open.
10890         * lib/getusershell.c: Include "stdio-safer.h".
10891         (getusershell): Use safer fopen.
10892         * lib/long-options.c (long_options): Use NULL rather than 0.
10893         * lib/modechange.h (mode_free): Remove; all callers changed to invoke
10894         'free'.
10895         * lib/modechange.c: Likewise.
10896         xstrtol.h, stdbool.h, stddef.h: Don't include; no longer needed.
10897         (MODE_DONE): New constant.
10898         (struct mode_change): Remove 'next' member.
10899         (make_node_op_equals): New function; like the old one of the
10900         same name, except it allocates an array.
10901         (mode_compile, mode_create_from_ref): Use it.
10902         (mode_compile): Allocate result as an array, not a linked list.
10903         Parse octal string ourself, so that we catch mistakes like "+0".
10904         (mode_adjust): Arg is an array, not a linked list.
10905         * lib/modechange.c: Include stat-macros.h, xalloc.h.
10906         (S_ISDIR, S_ISUID, S_ISGID, S_ISVTX, S_IRUSR, S_IWUSR, S_IXUSR):
10907         (S_IRGRP, S_IWGRP, S_IXGRP, S_IROTH, S_IWOTH, S_IXOTH, S_IRXWU):
10908         (S_IRWXG, S_IRWXO, CHMOD_MODE_BITS):
10909         Remove.  This is now stat-macros.h's job.
10910         (talloc): Remove.  All callers replaced by xalloc, so that
10911         our invokers don't have to worry about reporting memory failures.
10912         (make_node_op_equals): Remove.
10913         (MODE_ORDINARY_CHAGE, MODE_X_IF_ANY_X, MODE_COPY_EXISTING):
10914         New constants.
10915         (struct mode_change): Moved here from modechange.h.
10916         (mode_append_entry): Remove.
10917         (mode_compile): Remove MASKED_OPS arg, since it encouraged
10918         apps to have incorrect behavior.  Use simpler algorithm for head
10919         and tail.  Don't futz with umask; that's now the job of mode_adjust.
10920         Detect more invalid usages rather than having somewhat-random behavior.
10921         Don't insert an "a=" action, as that leads to incorrect behavior.
10922         (mode_compile, mode_create_from_ref): Return NULL on error instead
10923         of an enum, since now there's only one way to have an error.  All
10924         callers changed.
10925         (mode_adjust): Accept new arg UMASK_VALUE, and interpret it
10926         at the correct time.  Simplify calculation of "+u" and its ilk.
10927         Don't mishandle "+X".
10928         (mode_free): Remove "register" and localize decls.
10929         * lib/modechange.h (MODE_X_IF_ANY_X, MODE_COPY_EXISTING):
10930         (struct mode_change): Move to modechange.c; callers don't
10931         need to see this stuff.
10932         (MODE_MASK_EQUALS, MODE_MASK_PLUS, MODE_MASK_MINUS, MODE_MASK_ALL):
10933         (MODE_INVALID, MODE_MEMORY_EXHAUSTED, MODE_BAD_REFERENCE): Remove.
10934         (mode_change, mode_adjust): Reflect the new signatures noted above.
10935         * lib/nanosleep.c (rpl_nanosleep): Include "timespec.h" before macros
10936         that might redefine system include files.
10937         (siginterrupt) [!HAVE_SIGINTERRUPT]: New macro.
10938         (my_usleep): Use NULL rather than (void *) 0.
10939         (rpl_nanosleep) [!defined SA_NOCLDSTOP]:
10940         Use siginterrupt to specify that system calls should be interrupted.
10941         (rpl_nanosleep): Move initialization of suspended closer to call of
10942         my_usleep.
10943         * lib/readutmp.h (read_utmp): New arg OPTIONS.  All uses changed.
10944         * lib/readutmp.c: Likewise.  Include signal.h, stdbool.h.
10945         (desirable_utmp_entry): New function.
10946         (read_utmp) [defined UTMP_NAME_FUNCTION]: Redo memory allocation
10947         using x2nrealloc, to simplify logic.
10948         (read_utmp) [!defined UTMP_NAME_FUNCTION]: Check for overflow in
10949         size calculation.  Do not assume utmp file is a regular file.
10950         * lib/readutmp.h (UT_PID): Moved here from ../src/who.c.
10951         (READ_UTMP_CHECK_PIDS): New constant.
10952         * lib/save-cwd.c: Include unistd-safer.h.
10953         (save_cwd): Use fd_safer.
10954         * lib/tempname.c (S_ISDIR, S_IRUSR, S_IRUSR, S_IWUSR, S_IXUSR): Remove.
10955         [!_LIBC] Include "stat-macros.h" instead.
10956         * lib/unistd-safer.h (fd_safer): New decl.
10957
10958 2005-05-01  Paul Eggert  <eggert@cs.ucla.edu>
10959
10960         * modules/getloadavg (Depends-on): Add unistd-safer.
10961         * modules/getusershell (Depends-on): Add stdio-safer.
10962         * modules/lstat (Depends-on): Remove xalloc.
10963         * modules/mkstemp (Depends-on): Add stat-macros.
10964         * modules/modechange (Depends-on): Remove xstrtol.
10965         Add stat-macros, xalloc.
10966         * modules/save-cwd (Depends-on): Add unistd-safer.
10967         * modules/stdio-safer (Makefile.am): Remove lib_SOURCES.
10968         * modules/unistd-safer (Files): Add lib/fd-safer.c
10969         (Makefile.am): Remove lib_SOURCES.
10970
10971         * MODULES.html.sh (Enhancements for POSIX:2001 functions):
10972         Remove fcntl-safer; unistd-safer supersedes it.
10973
10974 2005-05-01  Paul Eggert  <eggert@cs.ucla.edu>
10975
10976         * m4/euidaccess.m4 (gl_PREREQ_EUIDACCESS): Don't require
10977         AC_HEADER_STAT.
10978         * m4/lchown.m4 (gl_FUNC_CHOWN): Likewise.
10979         (gl_PREREQ_CHOWN): Remove.
10980         * m4/lstat.m4 (gl_FUNC_LSTAT): Require AC_FUNC_LSTAT instead of calling
10981         it.  Don't require AC_HEADER_STAT.
10982         (gl_PREREQ_LSTAT): Remove.
10983         * m4/mkstemp.m4 (gl_PREREQ_TEMPNAME): Check stdint.h only once.
10984         Don't require AC_HEADER_STAT.
10985         * m4/rmdir.m4 (gl_FUNC_RMDIR): Don't require AC_HEADER_STAT.
10986         (gl_PREREQ_RMDIR): Remove.
10987         * m4/canonicalize.m4 (AC_FUNC_CANONICALIZE_FILE_NAME): Don't
10988         mention stat-macros.h or AC_HEADER_STAT, since we'll make
10989         the stat-macros module a prerequisite.
10990         * m4/file-type.m4 (gl_FILE_TYPE): Likewise.
10991         * m4/filemode.m4 (gl_FILEMODE): Likewise.
10992         * m4/makepath.m4 (gl_MAKEPATH): Likewise.
10993         * m4/modechange.m4 (gl_MODECHANGE): Likewise.
10994         * m4/clock_time.m4 (gl_CLOCK_TIME): Use gl_ rather than fetish_ for
10995         variable names.
10996         * m4/rmdir-errno.m4 (gl_FUNC_RMDIR_NOTEMPTY): Renamed from
10997         fetish_FUNC_RMDIR_NOTEMPTY.  All uses changed.  Use gl_ for
10998         variable prefixes.
10999         * m4/fcntl-safer.m4: Remove.
11000         * m4/stdio-safer.m4 (gl_STDIO_SAFER): Use AC_LIBSOURCES and AC_LIBOBJ.
11001         * m4/unistd-safer.m4 (gl_UNISTD_SAFER): Likewise.
11002         Invoke gl_PREREQ_FD_SAFER.
11003         (gl_PREREQ_FD_SAFER): New macro.
11004         * m4/nanosleep.m4 (gl_PREREQ_NANOSLEEP): Check for siginterrupt.
11005         * m4/readutmp.m4 (gl_READUTMP): Require AC_C_INLINE.
11006         Use AC_CHECK_HEADERS_ONCE and AC_CHECK_FUNCS_ONCE when possible.
11007         Remove duplicate call to AC_LIBOBJ(readutmp).
11008         (gl_PREREQ_READUTMP): Remove.  All uses inlined.
11009
11010         * m4/mmap-anon.m4 (gl_FUNC_MMAP_ANON): Check for message, not for
11011         MAP_ANON.  Problem reported by Moriyoshi Koizumi to bug-cvs.
11012
11013 2005-05-01  Paul Eggert  <eggert@cs.ucla.edu>
11014
11015         * MODULES.html.sh (Misc): Add byteswap.
11016
11017 2005-05-01  Oskar Liljeblad  <oskar@osk.mine.nu>
11018
11019         * modules/getcwd (Depends-on): Add extensions.
11020         * modules/openat (Depends-on): Likewise.
11021
11022 2005-05-01  Oskar Liljeblad  <oskar@osk.mine.nu>
11023
11024         * modules/byteswap: New file.
11025
11026 2005-05-01  Oskar Liljeblad  <oskar@osk.mine.nu>
11027
11028         * m4/byteswap.m4: New file.
11029
11030 2005-05-01  Oskar Liljeblad  <oskar@osk.mine.nu>
11031
11032         * lib/byteswap_.h: New file.
11033
11034 2005-04-25  Karl Berry  <karl@gnu.org>
11035
11036         * m4/gettext.m4: Update from GNU gettext 0.14.4.
11037
11038 2005-04-25  Albert Chin  <china@thewrittenword.com>
11039
11040         * lib/regex.c: Include <stdio.h>, as a workaround to a Compaq Desktop
11041         Toolkit C bug.
11042
11043 2005-04-21  Oskar Liljeblad  <oskar@osk.mine.nu>
11044
11045         * gnulib-tool (Options): Add -s for --symlink/--symbolic.
11046         (func_ln_if_changed) Remove forcibly for no error message
11047         in case file does not exist.
11048
11049 2005-04-19  Simon Josefsson  <jas@extundo.com>
11050
11051         * gnulib-tool (Options): Make --symlink mean --symbolic.
11052
11053 2005-04-18  Oskar Liljeblad <oskar@osk.mine.nu>
11054
11055         * doc/gnulib.texi (Initial import): Fix.  Mention --aux-dir.
11056
11057 2005-04-16  Simon Josefsson  <jas@extundo.com>
11058
11059         * modules/getpass-gnu (Makefile.am): Don't mention getpass.h.
11060
11061 2005-04-15  Simon Josefsson  <jas@extundo.com>
11062
11063         * m4/getpass.m4 (gl_FUNC_GETPASS): Use AC_LIBSOURCES.
11064
11065 2005-04-15  Simon Josefsson  <jas@extundo.com>
11066
11067         * gnulib-tool: Rename --symlink to --symbolic.
11068
11069 2005-04-15  Oskar Liljeblad <oskar@osk.mine.nu>
11070
11071         * gnulib-tool: Add -s, --symlink option to gnulib-tool to make
11072         symbolic links to files instead of copying/moving.  Add --aux-dir,
11073         specifying directory relative --dir where auxiliary build tools
11074         are placed.
11075
11076 2005-04-14  Bruno Haible  <bruno@clisp.org>
11077
11078         * modules/allocsa (License): Change to LGPL.
11079         Requested by Yoann Vandoorselaere <yoann@prelude-ids.org>.
11080
11081 2005-04-13  Paul Eggert  <eggert@cs.ucla.edu>
11082
11083         * lib/getdate.y (zone): Allow relunit_snumber after tZONE, so
11084         that "UTC +1 second" continues to work.  Problem reported
11085         by Dmitry V. Levin.
11086         (relunit_snumber): New rule.
11087         (relunit): Use it.
11088
11089 2005-04-12  Paul Eggert  <eggert@cs.ucla.edu>
11090
11091         * lib/getdate.y (universal_time_zone_table): New constant.
11092         (time_zone_table): Remove GMT, UT, UTC entries; they're now in
11093         universal_time_zone_table.
11094         (lookup_zone): Prefer universal_time_zone_table to
11095         local_time_zone_table, so that "GMT" time stamps are allowed in
11096         London during the summer.  Problem reported by Ian Abbott.
11097
11098 2005-04-12  Jim Meyering  <jim@meyering.net>
11099
11100         * lib/human.c (humblock): Set *options even when returning due to
11101         xstrtoumax conversion failure.  Thanks to a used-uninitialized
11102         warning from gcc-4.
11103
11104 2005-04-09  Jim Meyering  <jim@meyering.net>
11105
11106         * lib/posixtm.c (posixtime) [lint]: Avoid spurious warning from gcc-4's
11107         -Wuninitialized: initialize tm0.tm_year.
11108
11109 2005-04-04  Paul Eggert  <eggert@cs.ucla.edu>
11110
11111         * lib/getdate.y (parser_control): rels_seen is now a boolean, not a
11112         count, since there's no maximum.  All uses changed.
11113         Add member dsts_seen.
11114         (local_zone): Accumulate dsts_seen rather than relying on tm_isdst
11115         not being INT_MAX.
11116         (get_date): Initialize dsts_seen, and check that it doesn't go over 1.
11117         Use pc_rels_seen to decide whther a date is absolute.
11118
11119         * lib/getdate.y (number): Don't overwrite year.
11120         (get_date): Initialize pc.year.digits to 0, not 4, to enable above
11121         check.
11122
11123 2005-04-02  Simon Josefsson  <jas@extundo.com>
11124
11125         * lib/getaddrinfo.h: Fix OpenBSD compilation failure, inspired by tiny
11126         patch from Yoann Vandoorselaere <yoann@prelude-ids.org>.
11127
11128 2005-03-28  Eric Blake  <ebb9@byu.net>  (tiny change)
11129
11130         * m4/getcwd-path-max.m4: Return success on systems such as Cygwin
11131         where no absolute path name can be longer than PATH_MAX.
11132
11133 2005-03-27  Jim Meyering  <jim@meyering.net>
11134
11135         * lib/argmatch.c: Clarify comment: null-terminated -> NULL-terminated.
11136
11137 2005-03-26  Paul Eggert  <eggert@cs.ucla.edu>
11138
11139         * lib/intprops.h (INT_STRLEN_BOUND, INT_BUFSIZE_BOUND):
11140         "one's complement" -> "ones' complement" in comment, as per Knuth.
11141         "value of type" -> "type or expression" in comment.
11142         * lib/mktime.c, strftime.c: Propagate intprops.h comment nits.
11143
11144 2005-03-26  Jim Meyering  <jim@meyering.net>
11145
11146         Comment nits.
11147         * lib/intprops.h: Add the apostrophe in `(one|two)'s complement'.
11148         Correct typos: s/or/of/.
11149
11150 2005-03-26  Jim Meyering  <jim@meyering.net>
11151
11152         * modules/check-include-files: Move to ../ and rename to...
11153         * check-module: ...this.
11154
11155 2005-03-25  Jim Meyering  <jim@meyering.net>
11156
11157         * modules/xvasprintf (Files): Add xalloc.h.
11158
11159 2005-03-23  Paul Eggert  <eggert@cs.ucla.edu>
11160
11161         * modules/gettext (Files): config/config.rpath ->
11162         build-aux/config.rpath
11163         * modules/iconv (Files): Likewise.
11164         Problem reported by Oskar Liljeblad.
11165
11166 2005-03-23  Jim Meyering  <jim@meyering.net>
11167
11168         * modules/check-include-files: New script to check for
11169         missing dependencies, multiple includes, etc.
11170
11171         * modules/c-strtold (Depends-on): Add xalloc.
11172         * modules/c-strtod (Depends-on): Add xalloc.
11173         * modules/hash (Depends-on): Add xalloc.
11174         (Files): Remove lib/xalloc.h.
11175
11176         * modules/gethrxtime (Files): Add lib/gethrxtime.h.
11177         * modules/userspec (Files): Add lib/inttostr.h.
11178
11179 2005-03-23  Jim Meyering  <jim@meyering.net>
11180
11181         * lib/canonicalize.c: Remove duplicate `#include "stat-macros.h"'.
11182
11183 2005-03-22  Jim Meyering  <jim@meyering.net>
11184
11185         * modules/stat-macros: New module.
11186         * modules/canonicalize, modules/euidaccess, modules/file-type,
11187         * modules/filemode, modules/lchown, modules/makepath,
11188         * modules/rmdir, modules/stat: Depend on new stat-macros module
11189         rather than listing lib/stat-macros.h manually.
11190         Don't add stat-macros.h to lib_SOURCES or list it in Files: section.
11191
11192 2005-03-22  Jim Meyering  <jim@meyering.net>
11193
11194         * m4/stat-macros.m4 (gl_STAT_MACROS): New file/macro.
11195
11196 2005-03-22  Bruno Haible  <bruno@clisp.org>
11197
11198         * config/srclist.txt: Replace target directory 'config' with
11199         'build-aux'.
11200         * config/config.guess, config.sub, config.rpath, depcomp, install-sh:
11201         * config/mdate-sh, missing, mkinstalldirs, texinfo.tex: Move to
11202         ../build-aux/.
11203
11204 2005-03-21  Paul Eggert  <eggert@cs.ucla.edu>
11205
11206         * modules/chdir-long (Depends-on): Add mempcpy.
11207
11208         * modules/acl, modules/backupfile, modules/c-strtod,
11209         modules/c-strtold, modules/canon-host, modules/canonicalize,
11210         modules/cloexec, modules/closeout, modules/dirfd, modules/dirname,
11211         modules/exclude, modules/exitfail, modules/file-type,
11212         modules/filemode, modules/fpending, modules/fsusage, modules/getcwd,
11213         modules/getdate, modules/getline, modules/getpagesize,
11214         modules/getpass, modules/getugroups, modules/group-member,
11215         modules/hard-locale, modules/hash, modules/human, modules/idcache,
11216         modules/inttostr, modules/long-options, modules/makepath,
11217         modules/md5, modules/memcasecmp, modules/memcoll,
11218         modules/modechange, modules/mountlist, modules/path-concat,
11219         modules/pathmax, modules/physmem, modules/posixtm, modules/posixver,
11220         modules/quote, modules/quotearg, modules/readtokens, modules/readutmp,
11221         modules/safe-read, modules/safe-write, modules/same, modules/savedir,
11222         modules/settime, modules/sha1, modules/sig2str, modules/strdup,
11223         modules/strftime, modules/strndup, modules/strverscmp,
11224         modules/timespec, modules/unlocked-io, modules/userspec,
11225         modules/utimecmp, modules/utimens, modules/xalloc, modules/xstrtol,
11226         modules/yesno:
11227         Remove lib_SOURCES line from Makefile.am section, as this is now
11228         done automatically by the corresponding Autoconf macro.
11229
11230 2005-03-21  Jim Meyering  <jim@meyering.net>
11231
11232         Changes imported from coreutils.
11233
11234         * lib/cycle-check.c: Don't include xalloc.h.
11235
11236         * lib/path-concat.c: Don't include assert.h.
11237         (path_concat): Remove assertion that would have triggered
11238         for ABASE starting with more than one slash.
11239         Reported by Andreas Schwab.
11240
11241         * lib/path-concat.c (path_concat): Set *BASE_IN_RESULT
11242         properly when ABASE is an absolute file name.
11243         Correct the description of this function.
11244         Include <assert.h>.
11245         Add an assertion and a test driver.
11246         This fixes a bug introduced on 2004-07-02.
11247         Andreas Schwab reported the resulting failure of cp --parents:
11248         http://lists.gnu.org/archive/html/bug-coreutils/2005-01/msg00130.html
11249
11250 2005-03-21  Jim Meyering  <jim@meyering.net>
11251
11252         * m4/chdir-long.m4 (gl_PREREQ_CHDIR_LONG): Invoke gl_FUNC_MEMRCHR.
11253         * m4/memrchr.m4 (gl_FUNC_MEMRCHR): Check for memrchr decl.
11254
11255 2005-03-21  Jim Meyering  <jim@meyering.net>
11256         and  Paul Eggert  <eggert@cs.ucla.edu>
11257
11258         * m4/acl.m4, m4/backupfile.m4, m4/c-strtod.m4, m4/canon-host.m4,
11259         m4/canonicalize.m4, m4/cloexec.m4, m4/closeout.m4, m4/dirfd.m4,
11260         m4/dirname.m4, m4/exclude.m4, m4/exitfail.m4, m4/file-type.m4,
11261         m4/filemode.m4, m4/fpending.m4, m4/fsusage.m4, m4/getcwd.m4,
11262         m4/getdate.m4, m4/getline.m4, m4/getpagesize.m4, m4/getpass.m4,
11263         m4/getugroups.m4, m4/group-member.m4, m4/hard-locale.m4, m4/hash.m4,
11264         m4/human.m4, m4/idcache.m4, m4/inttostr.m4, m4/long-options.m4,
11265         m4/makepath.m4, m4/md5.m4, m4/memcasecmp.m4, m4/memcoll.m4,
11266         m4/modechange.m4, m4/mountlist.m4, m4/nanosleep.m4, m4/path-concat.m4,
11267         m4/pathmax.m4, m4/physmem.m4, m4/posixtm.m4, m4/posixver.m4,
11268         m4/quote.m4, m4/quotearg.m4, m4/readtokens.m4, m4/readutmp.m4,
11269         m4/safe-read.m4, m4/safe-write.m4, m4/same.m4, m4/savedir.m4,
11270         m4/settime.m4, m4/sha1.m4, m4/sig2str.m4, m4/strdup.m4, m4/strftime.m4,
11271         m4/strndup.m4, m4/strverscmp.m4, m4/timespec.m4, m4/unlocked-io.m4,
11272         m4/userspec.m4, m4/utimecmp.m4, m4/utimens.m4, m4/xalloc.m4,
11273         m4/xnanosleep.m4, m4/xstrtol.m4, m4/yesno.m4:
11274         Use AC_LIBSOURCES and AC_LIBOBJ to indicate source and object files
11275         for these modules.
11276
11277 2005-03-18  Paul Eggert  <eggert@cs.ucla.edu>
11278
11279         * lib/strftime.c (my_strftime): If the underlying strftime returns 0
11280         (which shouldn't happen), generate nothing instead of returning 0
11281         immediately, so that nstrftime (NULL, ...) doesn't return 0.
11282
11283 2005-03-16  Bruno Haible  <bruno@clisp.org>
11284
11285         * modules/stdint (Makefile.am): Use HAVE_LONG_LONG_64BIT instead of
11286         HAVE_LONGLONG_64BIT.
11287
11288 2005-03-16  Bruno Haible  <bruno@clisp.org>
11289
11290         * m4/stdint.m4 (gl_STDINT_H): Define HAVE_LONG_LONG_64BIT instead of
11291         HAVE_LONGLONG_64BIT.
11292
11293 2005-03-16  Bruno Haible  <bruno@clisp.org>
11294
11295         * lib/stdint_.h: Use HAVE_LONG_LONG_64BIT instead of
11296         HAVE_LONGLONG_64BIT.
11297
11298 2005-03-15  Paul Eggert  <eggert@cs.ucla.edu>
11299
11300         * lib/strftime.c (my_strftime): Prepend space to format so that we can
11301         reliably distinguish strftime failure from empty output on POSIX
11302         hosts.
11303
11304 2005-03-15  Paul Eggert  <eggert@cs.ucla.edu>
11305
11306         * lib/iconvme.c (SIZE_MAX): New macro, if not already defined.
11307         (iconv_string): Don't guess a size-zero buffer, as that might cause
11308         buffer overrun.  Instead, avoid multiplying by MB_LEN_MAX if the
11309         result would be 'too large', where 'too large' is (heuristically)
11310         the square root of SIZE_MAX, divided by MB_LEN_MAX to allay
11311         overflow concerns.  This will prevent some unwanted malloc failures
11312         when the inputs are very large.
11313
11314 2005-03-15  Karl Berry  <karl@gnu.org>
11315
11316         * config/srclist.txt (config.rpath): from gettext.
11317         * config/config.rpath: update.
11318
11319 2005-03-15  Bruno Haible  <bruno@clisp.org>
11320
11321         * lib/regex.c (byte_re_match_2_internal): Rename local variable 'not'
11322         to 'negate'.
11323
11324         * lib/regex.c (byte_re_match_2_internal): Reduce scope of same_str_p
11325         variable.
11326
11327         * lib/regex.c (EXTEND_BUFFER, regcomp): Cast the realloc/malloc
11328         results.
11329
11330 2005-03-14  Simon Josefsson  <jas@extundo.com>
11331
11332         * lib/timegm.h: Use proper prototype CPP guards, reported by Dave Love
11333         <fx@gnu.org>.
11334
11335 2005-03-14  Paul Eggert  <eggert@cs.ucla.edu>
11336
11337         * lib/mktime.c (TYPE_TWOS_COMPLEMENT, TYPE_ONES_COMPLEMENT,
11338         TYPE_SIGNED_MAGNITUDE, TYPE_MINIMUM, TYPE_MAXIMUM): Sync from
11339         intprops.h.
11340         * lib/strtol.c: Likewise.
11341
11342 2005-03-14  Jim Meyering  <jim@meyering.net>
11343
11344         * lib/strftime.c (my_strftime) [HAVE_STRFTIME && ! (_NL_CURRENT
11345         && HAVE_STRUCT_ERA_ENTRY)]: Initialize the first byte of ubuf[]
11346         to be nonzero so that we (and caller) can detect the difference
11347         between a valid zero-length expansion and an error return, even
11348         when the underlying strftime fails before writing anything into
11349         that location.
11350
11351 2005-03-14  Bruno Haible  <bruno@clisp.org>
11352
11353         * m4/lib-link.m4, gettext.m4, nls.m4, po.m4:
11354         Update from GNU gettext 0.14.3.
11355
11356 2005-03-10  Jim Meyering  <jim@meyering.net>
11357
11358         * m4/save-cwd.m4 (gl_SAVE_CWD): Check for fchdir.
11359
11360 2005-03-10  Jim Meyering  <jim@meyering.net>
11361
11362         * lib/save-cwd.c [!HAVE_FCHDIR]: Define open, fchdir, and chdir_long
11363         so that this module works on systems without fchdir.
11364
11365 2005-03-09  Paul Eggert  <eggert@cs.ucla.edu>
11366
11367         Factor int-properties macros into a single file, except for
11368         glibc-related files.
11369         * lib/intprops.h: New file.
11370         * lib/getloadavg.c: Include it instead of limits.h.
11371         (INT_STRLEN_BOUND): Remove.
11372         * lib/human.c: Include intprops.h.
11373         (group_number): Use INT_STRLEN_BOUND instead of rolling it ourself.
11374         * lib/human.h (LONGEST_HUMAN_READABLE): Use 146/485 rather than
11375         302/1000.
11376         * lib/inttostr.h: Include intprops.h instead of limits.h.
11377         (INT_STRLEN_BOUND, INT_BUFSIZE_BOUND): Remove.
11378         * lib/mktime.c (TYPE_IS_INTEGER, TYPE_TWOS_COMPLEMENT): New macros,
11379         for consistency with intprops.h.
11380         (time_t_is_integer, twos_complement_arithmetic): Use them.
11381         * lib/sig2str.h: Include <signal.h>, intprops.h.
11382         (INT_STRLEN_BOUND): Remove.
11383         * lib/strftime.c (TYPE_SIGNED): Remove.
11384         (INT_STRLEN_BOUND): Switch to same implementation as intprops.h.
11385         * lib/strtol.c: Adjust comments to match intprops.h.
11386         * lib/userspec.c: Include intprops.h.
11387         (TYPE_SIGNED, TYPE_MINIMUM, TYPE_MAXIMUM): Remove.
11388         * lib/utimecmp.c, xnanosleep.c, xstrtol.c: Likewise.
11389         * lib/utimecmp.c (utimecmp): Use TYPE_IS_INTEGER, TYPE_TWOS_COMPLEMENT
11390         instead of rolling our own expressions.
11391         * lib/xstrtol.c: Include xstrtol.h first, to test interface.
11392
11393         * lib/strftime.c: Include <stdbool.h>.  Use bool where appropriate,
11394         instead of int.
11395         (my_strftime): Do not mishandle years close to INT_MAX, by doing
11396         the right thing even if adding 1900 would overflow.  Similarly
11397         for tm_mon + 1 and tm_yday + 1.
11398         Make %Y always equivalent to %C%y, and similarly for %G and %g.
11399         (DO_NUMBER, DO_NUMBER_SPACEPAD): Set digits to d, not a conditional.
11400         (DO_SIGNED_NUMBER): New macro.
11401         (my_strftime) [HAVE_TZNAME]: Don't dump core if tp->tm_dst > 1.
11402
11403 2005-03-07  Bruno Haible  <bruno@clisp.org>
11404
11405         * m4/mmap-anon.m4 (MAP_FILE, MAP_FAILED): Remove definitions.
11406
11407 2005-03-07  Bruno Haible  <bruno@clisp.org>
11408
11409         * lib/pagealign_alloc.c (MAP_FILE, MAP_FAILED): Define fallbacks.
11410
11411 2005-03-04  Derek R. Price  <derek@ximbiot.com>
11412
11413         * gnulib-tool (func_cp_if_changed, func_mv_if_changed): New functions.
11414         (func_import): Only replace files via --import when they have actually
11415         changed.
11416
11417 2005-03-03  Derek R. Price  <derek@ximbiot.com>
11418
11419         * m4/mmap-anon.m4: New file.
11420         * m4/pagealign_alloc.m4: New file.
11421
11422 2005-03-03  Derek R. Price  <derek@ximbiot.com>
11423             Bruno Haible  <bruno@clisp.org>
11424
11425         * modules/pagealign_alloc: New file.
11426         * MODULES.html.sh (Memory management functions): Add pagealign_alloc.
11427
11428 2005-03-03  Derek R. Price  <derek@ximbiot.com>
11429             Bruno Haible  <bruno@clisp.org>
11430
11431         * lib/pagealign_alloc.h: New file.
11432         * lib/pagealign_alloc.c: New file.
11433
11434 2005-03-03  Bruno Haible  <bruno@clisp.org>
11435
11436         * m4/inttypes.m4, isc-posix.m4, once-only.m4:
11437         Use an all-permissive copyright notice, recommended by RMS.
11438
11439 2005-03-02  Bruno Haible  <bruno@clisp.org>
11440
11441         * m4/stpncpy.m4 (gl_FUNC_STPNCPY): Undo the replacement here. Because
11442         of AIX, the replacement has to be done only after <string.h> is
11443         included, therefore not in config.h. stpncpy.h does the replacement,
11444         and stpncpy.c uses it.
11445
11446 2005-03-02  Bruno Haible  <bruno@clisp.org>
11447
11448         * lib/stpncpy.h (stpncpy): Define as a macro without arguments, so that
11449         stpncpy.c uses it.
11450
11451 2005-03-01  Paul Eggert  <eggert@cs.ucla.edu>
11452
11453         Remove workaround for bug in Linux kernel 2.6.8 or thereabouts.
11454         The workaround isn't strictly needed for POSIX conformance, and
11455         it's too much of a pain to configure and maintain.  We'll ask
11456         people to fix their kernels instead.
11457         * lib/xnanosleep.c: Don't include gethrxtime.h or xtime.h.
11458         (NANOSLEEP_BUG_WORKAROUND): Remove.
11459         (xnanosleep): Remove the workaround.
11460
11461 2005-03-01  Paul Eggert  <eggert@cs.ucla.edu>
11462
11463         * modules/gettime (Makefile.am): Remove lib_SOURCES line.
11464         Reported by Derek Price.
11465         (Include): Add "timespec.h".
11466
11467         * modules/xnanosleep (Depends-on): Remove gethrxtime.
11468
11469 2005-03-01  Paul Eggert  <eggert@cs.ucla.edu>
11470
11471         * m4/xnanosleep.m4 (gl_XNANOSLEEP): Remove configuration attempting
11472         to detect nanosleep bug.
11473
11474 2005-03-01  Bruno Haible  <bruno@clisp.org>
11475
11476         * lib/vasnprintf.c (EOVERFLOW): Define to a fallback if needed.
11477
11478 2005-02-26  Paul Eggert  <eggert@cs.ucla.edu>
11479
11480         * modules/gethrxtime: New file.
11481         * modules/xnanosleep (Files): Add m4/xnanosleep.m4.
11482         (Depends-on): Add gethrxtime.
11483         (configure.ac): Add gl_XNANOSLEEP.
11484         (Makefile.am): Remove lib_SOURCES line.
11485
11486 2005-02-25  Paul Eggert  <eggert@cs.ucla.edu>
11487
11488         * m4/gethrxtime.m4, xnanosleep.m4: New files.
11489         * m4/gettime.m4 (gl_GETTIME): Check for nanotime.
11490
11491 2005-02-25  Paul Eggert  <eggert@cs.ucla.edu>
11492
11493         * lib/gethrxtime.h, gethrxtime.c, xtime.h: New files.
11494         * lib/timespec.h (gettime): Return void, since it always
11495         succeeds now.  All uses changed.
11496         * lib/gettime.c (gettime) Likewise.
11497         [HAVE_NANOTIME]: Prefer nanotime.
11498         Assume gettimeofday succeeds, as POSIX requires.
11499         Assime time () succeeds, since other code already does.
11500         * lib/xnanosleep.c: Include xtime.h and gethrxtime.h, not xalloc.h.
11501         (timespec_subtract): Remove.
11502         (NANOSLEEP_BUG_WORKAROUND): New constant.
11503         (xnanosleep): Use gethrxtime rather than gettime; this simplifies
11504         things considerably.  Use it only on GNU/Linux hosts, since the
11505         workaround shouldn't be needed elsewhere.
11506
11507 2005-02-24  Bruno Haible  <bruno@clisp.org>
11508
11509         * modules/gettext (Files): Add m4/glibc2.m4.
11510
11511 2005-02-24  Bruno Haible  <bruno@clisp.org>
11512
11513         * m4/gettext.m4, intdiv0.m4, intmax.m4, inttypes-pri.m4, lcmessage.m4:
11514         * m4/lib-link.m4, lib-prefix.m4, nls.m4, po.m4, printf-posix.m4:
11515         * m4/progtest.m4:
11516         Update from GNU gettext 0.14.2.
11517         * m4/glibc2.m4: New file, from GNU gettext 0.14.2.
11518
11519 2005-02-24  Bruno Haible  <bruno@clisp.org>
11520
11521         * lib/localcharset.c: Update from GNU gettext 0.14.2.
11522         * lib/config.charset: Update from GNU gettext 0.14.2.
11523
11524 2005-02-24  Bruno Haible  <bruno@clisp.org>
11525
11526         * lib/gettext.h: Update from GNU gettext 0.14.2.
11527
11528 2005-02-23  Simon Josefsson  <jas@extundo.com>
11529
11530         * m4/iconvme.m4: New file.
11531
11532 2005-02-23  Jim Meyering  <jim@meyering.net>
11533
11534         * m4/extensions.m4 (gl_USE_SYSTEM_EXTENSIONS): Revert yesteday's
11535         change.
11536         Thanks to Bruno Haible for catching it.
11537
11538 2005-02-22  Simon Josefsson  <jas@extundo.com>
11539
11540         * modules/iconvme: New file.
11541
11542         * MODULES.html.sh: Add iconvme.
11543
11544 2005-02-22  Simon Josefsson  <jas@extundo.com>
11545
11546         * lib/iconvme.h, iconvme.c: New files, from libc.
11547
11548 2005-02-22  Simon Josefsson  <jas@extundo.com>
11549
11550         * config/srclist.txt: Sync iconvme.h, iconvme.c from libc.
11551
11552 2005-02-22  Jim Meyering  <jim@meyering.net>
11553
11554         * m4/extensions.m4 (gl_USE_SYSTEM_EXTENSIONS): Fix typo:
11555         s/ifndef/ifdef/.
11556
11557 2005-02-20  Neil Conway  <neilc@samurai.com>
11558
11559         * lib/xgethostname.c (xgethostname): Check for ENOMEM, which is
11560         returned by OSX/Darwin if the specified buffer is not large
11561         enough for the hostname.
11562
11563 2005-02-03  Sergey Poznyakoff  <gray@Mirddin.farlep.net>
11564
11565         * lib/argp-help.c (__argp_help): Create a fake struct argp_state and
11566         pass it to _help, otherwise the latter coredumps trying to
11567         dereference state.root_argp.
11568
11569 2005-02-03  Paul Eggert  <eggert@cs.ucla.edu>
11570
11571         * modules/chdir-long (Depends-on): Add memrchr.
11572         * modules/memrchr (Files): Add lib/memrchr.h.
11573         (Include): "memrchr.h".
11574
11575 2005-02-03  Paul Eggert  <eggert@cs.ucla.edu>
11576
11577         * m4/memrchr.m4 (gl_FUNC_MEMRCHR): Add AC_LIBSOURCES, for memrchr.h.
11578
11579 2005-02-03  Paul Eggert  <eggert@cs.ucla.edu>
11580
11581         * lib/memrchr.h: New file.
11582         * lib/chdir-long.c: Include it.
11583         * lib/memrchr.c [!defined _LIBC]: Include it rather than <string.h>
11584         Don't bother including stddef.h.
11585
11586 2005-02-01  Paul Eggert  <eggert@cs.ucla.edu>
11587
11588         * lib/mountlist.h (MOUNTLIST_H_): New macro, to protect against double
11589         inclusion.
11590         Include <sys/types.h>, for dev_t.
11591         (ME_DUMMY, ME_REMOTE): Move from here....
11592         * lib/mountlist.c (ME_DUMMY, ME_REMOTE): To here.
11593         (ME_DUMMY): Count "subfs" as a dummy.  Problem reported by
11594         Dmitry V. Levin.
11595         Include mountlist.h first, to test the interface.
11596
11597 2005-01-29  Bruno Haible  <bruno@clisp.org>
11598
11599         * lib/progname.c (program_name): Initialize.
11600         Needed when linking statically on MacOS X.
11601
11602 2005-01-28  Paul Eggert  <eggert@cs.ucla.edu>
11603
11604         Sync from coreutils.
11605         * modules/getloadavg (Files): Remove m4/getloadavg.m4.
11606         (Depends-on): Add c-strtod.
11607         (configure.ac): Replace gl_FUNC_GETLOADAVG with AC_FUNC_GETLOADAVG.
11608
11609 2005-01-28  Paul Eggert  <eggert@cs.ucla.edu>
11610
11611         Sync from coreutils.
11612         * m4/getloadavg.m4, glibc.m4, search-libs.m4: Remove.
11613
11614         Remove files that are specific to coreutils.
11615         * m4/check-decl.m4, jm-macros.m4, lib-check.m4, prereq.m4: Remove.
11616
11617 2005-01-28  Bruno Haible  <bruno@clisp.org>
11618
11619         * modules/javacomp: New file.
11620         * MODULES.html.sh (Java): Add javacomp.
11621
11622 2005-01-28  Bruno Haible  <bruno@clisp.org>
11623
11624         * m4/javacomp.m4: New file, from GNU gettext.
11625
11626 2005-01-28  Bruno Haible  <bruno@clisp.org>
11627
11628         * lib/javacomp.sh.in: New file, from GNU gettext.
11629         * lib/javacomp.h: New file, from GNU gettext.
11630         * lib/javacomp.c: New file, from GNU gettext.
11631
11632 2005-01-26  Simon Josefsson  <jas@extundo.com>
11633
11634         * lib/gai_strerror.c: Use GPL in header.
11635
11636 2005-01-26  Bruno Haible  <bruno@clisp.org>
11637
11638         * modules/javaexec: New file.
11639         * MODULES.html.sh (Java): Add javaexec.
11640
11641 2005-01-26  Bruno Haible  <bruno@clisp.org>
11642
11643         * m4/javaexec.m4: New file, from GNU gettext.
11644
11645 2005-01-26  Bruno Haible  <bruno@clisp.org>
11646
11647         * lib/javaexec.sh.in: New file, from GNU gettext.
11648         * lib/javaexec.h: New file, from GNU gettext.
11649         * lib/javaexec.c: New file, from GNU gettext.
11650
11651 2005-01-24  Sergey Poznyakoff  <gray@Mirddin.farlep.net>
11652
11653         * modules/lchown (Depends-on): Remove lchown.h
11654
11655 2005-01-24  Sergey Poznyakoff  <gray@Mirddin.farlep.net>
11656
11657         * m4/sysexits.m4 (gl_SYSEXITS): Reverted logic. SYSEXITS_H
11658         must be defined if the header file was not found, in order
11659         to provide a replacement. Reported by Todd Vierling <tv@duh.org>
11660
11661 2005-01-24  Sergey Poznyakoff  <gray@Mirddin.farlep.net>
11662
11663         * lib/argp-help.c (hol_entry_help): Avoid using non-constant
11664         initializers for struct pentry_state.
11665         (__argp_error): Check return value of __asprintf
11666         (__argp_failure): Translate error message
11667
11668         * lib/argp-parse.c: Removed braces around the expansion of N_()
11669
11670 2005-01-23  Paul Eggert  <eggert@cs.ucla.edu>
11671
11672         * m4/acl.m4, afs.m4, alloca.m4, argp.m4, assert.m4, atexit.m4,
11673         backupfile.m4, base64.m4, bison.m4, c-bs-a.m4, c-stack.m4,
11674         c-strtod.m4, calloc.m4, canon-host.m4, canonicalize.m4,
11675         clock_time.m4, cloexec.m4, closeout.m4, d-ino.m4, d-type.m4,
11676         dirfd.m4, dirname.m4, dos.m4, dup2.m4, error.m4, euidaccess.m4,
11677         exclude.m4, exitfail.m4, extensions.m4, fcntl-safer.m4,
11678         file-type.m4, fileblocks.m4, filemode.m4, fnmatch.m4, fpending.m4,
11679         free.m4, fstypename.m4, fsusage.m4, ftruncate.m4, getaddrinfo.m4,
11680         getcwd-path-max.m4, getcwd.m4, getdate.m4, getdomainname.m4,
11681         getgroups.m4, gethostname.m4, getline.m4, getndelim2.m4,
11682         getnline.m4, getopt.m4, getpagesize.m4, getpass.m4, getsubopt.m4,
11683         gettime.m4, gettimeofday.m4, getugroups.m4, getusershell.m4,
11684         group-member.m4, hard-locale.m4, hash.m4, host-os.m4, human.m4,
11685         idcache.m4, inttostr.m4, isdir.m4, jm-winsz1.m4, jm-winsz2.m4,
11686         link-follow.m4, long-options.m4, ls-mntd-fs.m4, lstat.m4,
11687         makepath.m4, mathl.m4, md5.m4, memcasecmp.m4, memchr.m4,
11688         memcmp.m4, memcoll.m4, memcpy.m4, memmem.m4, memmove.m4,
11689         memrchr.m4, memset.m4, mkdir-slash.m4, mkstemp.m4, mktime.m4,
11690         modechange.m4, mountlist.m4, nanosleep.m4, obstack.m4,
11691         path-concat.m4, pathmax.m4, perl.m4, physmem.m4, poll.m4,
11692         posixtm.m4, posixver.m4, putenv.m4, quote.m4, quotearg.m4,
11693         readdir.m4, readtokens.m4, readutmp.m4, regex.m4, rename.m4,
11694         restrict.m4, rmdir-errno.m4, rmdir.m4, rpmatch.m4, same.m4,
11695         savedir.m4, settime.m4, sha1.m4, sig2str.m4, snprintf.m4,
11696         sockpfaf.m4, st_dm_mode.m4, st_mtim.m4, stat.m4, stdint.m4,
11697         stdio-safer.m4, strchrnul.m4, strdup.m4, strerror.m4,
11698         strerror_r.m4, strftime.m4, strndup.m4, strnlen.m4, strsep.m4,
11699         strtod.m4, strtoimax.m4, strtok_r.m4, strtol.m4, strtoll.m4,
11700         strtoul.m4, strtoull.m4, strtoumax.m4, strverscmp.m4, sysexits.m4,
11701         time_r.m4, timegm.m4, timespec.m4, tm_gmtoff.m4, tzset.m4,
11702         uint32_t.m4, uintptr_t.m4, unistd-safer.m4, unlink-busy.m4,
11703         unlocked-io.m4, uptime.m4, userspec.m4, utimbuf.m4, utime.m4,
11704         utimecmp.m4, utimens.m4, utimes-null.m4, vsnprintf.m4, xalloc.m4,
11705         xgetcwd.m4, xreadlink.m4, xstrndup.m4, xstrtod.m4, xstrtoimax.m4,
11706         xstrtol.m4, xstrtoumax.m4, yesno.m4:
11707         Use an all-permissive copyright notice, recommended by RMS.
11708
11709 2005-01-21  Paul Eggert  <eggert@cs.ucla.edu>
11710
11711         * modules/chdir-long (Depends-on): Remove mempcpy.
11712
11713 2005-01-21  Jim Meyering  <jim@meyering.net>
11714
11715         * lib/openat.h (AT_SYMLINK_NOFOLLOW): Define to 4096, so it's the
11716         same value as for Solaris 9.
11717
11718         * lib/chdir-long.c (chdir_long): Rewrite to remove limitation on
11719         component length.  This included changing the parameter to be
11720         of type `char *' rather than `char const *'.
11721         * lib/chdir-long.h (chdir_long): Update prototype.
11722
11723         * lib/openat.c (fdopendir, fstatat): New functions.
11724         * lib/openat.h: Include headers required for use of DIR and struct
11725         stat.
11726         [AT_SYMLINK_NOFOLLOW]: Define.
11727         (fdopendir, fstatat): Add prototypes.
11728
11729 2005-01-21  Bruno Haible  <bruno@clisp.org>
11730
11731         * modules/classpath: New file.
11732         * MODULES.html.sh (Java): Add classpath.
11733
11734 2005-01-21  Bruno Haible  <bruno@clisp.org>
11735
11736         * lib/classpath.h: New file, from GNU gettext.
11737         * lib/classpath.c: New file, from GNU gettext.
11738
11739 2005-01-20  Simon Josefsson  <jas@extundo.com>
11740
11741         * modules/version-etc-fsf: New file.
11742
11743 2005-01-20  Simon Josefsson  <jas@extundo.com>
11744
11745         * lib/version-etc-fsf.c: New file, with version_etc_copyright.
11746         * lib/version-etc.c: Remove version_etc_copyright.
11747         * lib/version-etc.h (version_etc_copyright): Use [] instead of * in
11748         prototype, suggested by Paul Eggert <eggert@CS.UCLA.EDU>.
11749
11750 2005-01-20  Simon Josefsson  <jas@extundo.com>
11751
11752         * lib/base64.h (isbase64): Add.
11753
11754         * lib/base64.c (isb64): Rename to isbase64, use to_uchar instead of
11755         using a unsigned prototype, don't inline.
11756         (base64_decode): Use it.
11757
11758 2005-01-20  Paul Eggert  <eggert@cs.ucla.edu>
11759
11760         * m4/save-cwd.m4 (gl_SAVE_CWD): Remove check for fcntl; we now assume
11761         it.
11762
11763 2005-01-20  Paul Eggert  <eggert@cs.ucla.edu>
11764
11765         * lib/save-cwd.c (save_cwd): Remove code to support the case
11766         where fchdir is missing or flaky.
11767
11768 2005-01-20  Paul Eggert  <eggert@cs.ucla.edu>
11769
11770         * MODULES.html.sh (Command-line arguments): Add version-etc-fsf.
11771
11772 2005-01-19  Paul Eggert  <eggert@cs.ucla.edu>
11773
11774         * modules/mempcpy (Makefile.am): Remove mention of mempcpy.h;
11775         AC_LIBSOURCES now does this.
11776         * MODULES.html.sh (Sizes of integer types <limits.h>): New element,
11777         with new ullong_max module.
11778
11779 2005-01-19  Bruno Haible  <bruno@clisp.org>
11780
11781         * modules/sh-quote: New file.
11782         * MODULES.html.sh (Executing programs): Add sh-quote.
11783
11784 2005-01-19  Bruno Haible  <bruno@clisp.org>
11785
11786         * lib/sh-quote.h: New file, from GNU gettext.
11787         * lib/sh-quote.c: New file, from GNU gettext.
11788
11789 2005-01-18  Paul Eggert  <eggert@cs.ucla.edu>
11790
11791         Merge from coreutils.
11792         * m4/ullong_max.m4: New file.
11793         * m4/jm-macros.m4 (gl_MACROS): Require gl_ULLONG_MAX.
11794         (gl_MACROS): Assume localeconv exists.
11795
11796 2005-01-18  Paul Eggert  <eggert@cs.ucla.edu>
11797
11798         Merge changes from coreutils, as described below in several
11799         changelogs dated today.
11800
11801         * lib/save-cwd.c: Include "save-cwd.h" before other include files.
11802         (O_DIRECTORY): Remove; not needed here, since "." must be
11803         a directory.  All uses removed.
11804         (save_cwd): Use __sgi || __sun, not sun || __sun.  __sun is
11805         universal on Suns, and we also need to test for IRIX.
11806         Revamp code to use 'if' rather than '#if'.
11807         Avoid unnecessary comparison of cwd->desc to 0.
11808
11809         * lib/utimens.c (futimens): Robustify the previous patch, by checking
11810         for known valid error numbers rather than observed invalid ones.
11811
11812 2005-01-18  Paul Eggert  <eggert@cs.ucla.edu>
11813
11814         * modules/ullong_max: New file.
11815
11816         * modules/chdir-long, modules/openat: New files.
11817         * modules/save-cwd (Depends-on): Depend on chdir-long.
11818         (Makefile.am): Remove lib_SOURCES; now handled by AC_LIBSOURCES.
11819
11820 2005-01-18  Jim Meyering  <jim@meyering.net>
11821
11822         Merge from coreutils.
11823         * m4/chdir-long.m4, openat.m4: New files.
11824         * m4/save-cwd.m4 (gl_SAVE_CWD): Add AC_LIBSOURCES for save-cwd.c,
11825         save-cwd.h.  Add AC_LIBOBJ for save-cwd.
11826         * m4/chown.m4 (gl_FUNC_CHOWN): When cross-compiling, assume that chown
11827         is sane and DOES follow symlinks.  Besides, testing 20 different
11828         systems found no broken chown implementations.
11829         Prompted by a change in rsync's copy of this macro.
11830         * m4/jm-macros.m4 (gl_MACROS): Require gl_FUNC_CHDIR_LONG.
11831
11832         * m4/lchown.m4 (gl_FUNC_LCHOWN): Use AC_LIBSOURCES.
11833
11834         * m4/utimes.m4: Work around tests/touch/empty-file failure on a system
11835         (sparc64, Linux-2.4.28, glibc-2.3.3) that didn't honor utimes'
11836         NULL-means-set-to-current-time semantics.
11837         Remove temporary file immediately, rather than waiting
11838         for configure's at-exit trap code to do it.
11839
11840 2005-01-18  Jim Meyering  <jim@meyering.net>
11841
11842         * lib/version-etc.c (version_etc_copyright): Update copyright date.
11843
11844         * lib/utimens.c (futimens): Account for the fact that futimes
11845         can also fail with errno == ENOSYS or errno == ENOENT.
11846         Patch from Dmitry V. Levin.
11847
11848         Change the name of the robust chdir function from chdir to chdir_long.
11849         * lib/save-cwd.c: Include chdir-long.h rather than chdir.h.
11850         (restore_cwd): Use chdir_long, not chdir.
11851         * lib/chdir-long.c: Renamed from chdir.c.
11852         * lib/chdir-long.h: Renamed from chdir.h.
11853         [!defined PATH_MAX]: Define chdir_long to chdir on systems like the
11854         Hurd.
11855
11856 2005-01-18  Bruno Haible  <bruno@clisp.org>
11857
11858         * m4/allocsa.m4, m4/codeset.m4, m4/copy-file.m4, m4/eaccess.m4:
11859         * m4/eealloc.m4, m4/eoverflow.m4, m4/execute.m4, m4/fatal-signal.m4:
11860         * m4/findprog.m4, m4/glibc21.m4, m4/iconv.m4, m4/intmax_t.m4:
11861         * m4/inttypes_h.m4, m4/lib-ld.m4, m4/lib-link.m4, m4/lib-prefix.m4:
11862         * m4/linebreak.m4, m4/localcharset.m4, m4/longdouble.m4:
11863         * m4/longlong.m4, m4/mbrtowc.m4, m4/mbstate_t.m4, m4/mbswidth.m4:
11864         * m4/mkdtemp.m4, m4/pipe.m4, m4/readlink.m4, m4/safe-read.m4:
11865         * m4/safe-write.m4, m4/setenv.m4, m4/sig_atomic_t.m4:
11866         * m4/signalblocking.m4, m4/signed.m4, m4/size_max.m4, m4/ssize_t.m4:
11867         * m4/stdbool.m4, m4/stdint_h.m4, m4/stpcpy.m4, m4/stpncpy.m4:
11868         * m4/strcase.m4, m4/strcspn.m4, m4/strpbrk.m4, m4/strstr.m4:
11869         * m4/ucs4-utf.m4, m4/uintmax_t.m4, m4/ulonglong.m4, m4/unicodeio.m4:
11870         * m4/utf-ucs4.m4, m4/vasnprintf.m4, m4/vasprintf.m4:
11871         * m4/wait-process.m4, m4/wchar_t.m4, m4/wint_t.m4, m4/xsize.m4:
11872         Use an all-permissive copyright notice, recommended by RMS.
11873
11874 2005-01-18  Bob Proulx  <bob@proulx.com>
11875
11876         * lib/obstack.c [DEFAULT_ALIGNMENT]: Use an intermediate type to
11877         simplify offsetof() macro construct to avoid compile failure with
11878         native HP-UX 11.0 ANSI C compiler.
11879
11880 2005-01-17  Bruno Haible  <bruno@clisp.org>
11881
11882         * lib/stpncpy.c: Remove HAVE_STPNCPY and gnu_stpncpy renaming,
11883         redundant because stpncpy.m4 takes care of it.
11884
11885 2005-01-17  Bruno Haible  <bruno@clisp.org>
11886
11887         * lib/progreloc.c: Include xalloc.h instead of xmalloc.h.
11888
11889 2005-01-17  Bruno Haible  <bruno@clisp.org>
11890
11891         * lib/progreloc.c (xstrdup): Define as strdup if no xmalloc should be
11892         used.
11893
11894 2005-01-17  Bruno Haible  <bruno@clisp.org>
11895
11896         * lib/fwriteerror.h (fwriteerror): Change specification to include
11897         fclose.
11898         * lib/fwriteerror.c: Include <stdbool.h>.
11899         (fwriteerror): At the end, close the file stream. Record whether
11900         stdout was already closed.
11901
11902 2005-01-17  Bruno Haible  <bruno@clisp.org>
11903
11904         * lib/execute.c (environ): Declare if needed.
11905         * lib/pipe.c (environ): Likewise.
11906         Reported by Michael Schloh von Bennewitz <michael.schloh@cw.com>.
11907
11908 2005-01-11  Sergey Poznyakoff  <gray@Mirddin.farlep.net>
11909
11910         * modules/argp: Depend on vsnprintf
11911
11912 2005-01-10  Jim Meyering  <jim@meyering.net>
11913
11914         * modules/closeout (Depends-on): Add atexit.
11915
11916 2005-01-06  Bruno Haible  <bruno@clisp.org>
11917
11918         * m4/stpncpy.m4 (gl_FUNC_STPNCPY): Rename stpncpy to gnu_stpncpy here.
11919
11920 2005-01-04  Paul Eggert  <eggert@cs.ucla.edu>
11921
11922         * lib/human.c (SIZE_MAX, UINTMAX_MAX): Move these conditional
11923         definitions to be after all include files, to avoid collisions.
11924         Problem reported by Bob Proulx.
11925
11926 2005-01-04  Jim Meyering  <jim@meyering.net>
11927
11928         Changes imported from coreutils.
11929         * m4/mkstemp.m4 (gl_FUNC_MKSTEMP): Rather than using "conftestXXXXXX"
11930         as the mkstemp template, use a temporary directory and an
11931         8.3-friendly template to avoid trouble on systems like DJGPP.
11932         Reported by Juan M. Guerrero via Stepan Kasal.
11933         * m4/(gl_FUNC_MKSTEMP): Include <unistd.h> for the declaration of
11934         close. Remove the temporary directory right away, rather than waiting
11935         for configure's at-exit trap code to do it.
11936         Suggestion from Stepan Kasal.
11937
11938 2005-01-01  Simon Josefsson  <jas@extundo.com>
11939
11940         * gnulib-tool: Print #include directives when --import'ing.
11941
11942 2004-12-28  Simon Josefsson  <jas@extundo.com>
11943
11944         * tests/test-base64.c: Include required header files.  Remove
11945         unused variables.
11946
11947 2004-12-28  Paul Eggert  <eggert@cs.ucla.edu>
11948
11949         * modules/error (Depends-on): Remove gettext.
11950
11951 2004-12-28  Paul Eggert  <eggert@cs.ucla.edu>
11952
11953         * lib/error.c [!_LIBC && !ENABLE_NLS]: Do not include "gettext.h";
11954         not needed.  This removes a dependency on the gettext module.
11955         [defined _LIBC]: Do not include <libintl.h>; not needed.
11956
11957 2004-12-24  Paul Eggert  <eggert@cs.ucla.edu>
11958
11959         * m4/c-strtod.m4 (gl_C99_STRTOLD): New macro.
11960         (gl_C_STRTOD): Use it instead of AC_CHECK_DECLS_ONCE(strtold).
11961
11962 2004-12-24  Paul Eggert  <eggert@cs.ucla.edu>
11963
11964         * lib/c-strtod.c (STRTOD): Depend on HAVE_C99_STRTOLD, not
11965         HAVE_DECL_STRTOLD.
11966
11967 2004-12-23  Paul Eggert  <eggert@cs.ucla.edu>
11968
11969         * modules/getdate (Depends-on): Remove alloca-opt.
11970
11971 2004-12-23  Paul Eggert  <eggert@cs.ucla.edu>
11972
11973         * m4/getdate.m4 (gl_GETDATE): Remove AC_FUNC_ALLOCA.
11974
11975 2004-12-23  Paul Eggert  <eggert@cs.ucla.edu>
11976
11977         * lib/argp-parse.c: Include <stddef.h>.
11978         (alignof, alignto): New macros.
11979         (parser_init): Don't assume that void * is aligned sufficiently
11980         for struct option.
11981
11982         * lib/getdate.y (YYSTACK_USE_ALLOCA): Define to 0, since there's no
11983         need to extend the stack.
11984         (YYINITDEPTH): New macro, so that the initial stack isn't overly
11985         large.
11986
11987 2004-12-22  Sergey Poznyakoff  <gray@Mirddin.farlep.net>
11988
11989         * lib/argp-parse.c (parser_init): Avoid arithmetics on void pointers.
11990
11991 2004-12-19  Paul Eggert  <eggert@cs.ucla.edu>
11992
11993         * modules/regex (lib_SOURCES): Remove regex.c, undoing previous
11994         (2004-10-24) change.  Apparently this was a false alarm.
11995
11996         * modules/getdate: Depend on alloca-opt, not alloca.
11997
11998 2004-12-19  Paul Eggert  <eggert@cs.ucla.edu>
11999
12000         * lib/alloca_.h: Conditionalize on _GNULIB_ALLOCA_H, not _ALLOCA_H.
12001         Remove now-obsolete comment about AIX.
12002         * lib/getdate.y: Include <alloca.h> only if HAVE_ALLOCA.
12003         (YYSTACK_USE_ALLOCA): Define to 0 if !HAVE_ALLOCA.
12004         (YYMAXDEPTH): New macro.
12005
12006 2004-12-18  Simon Josefsson  <jas@extundo.com>
12007
12008         * modules/alloca: Depend on alloca-opt, instead of duplicating it.
12009
12010 2004-12-18  Bruno Haible  <bruno@clisp.org>
12011
12012         * m4/fatal-signal.m4 (gl_FATAL_SIGNAL): Also test for sigaction.
12013
12014 2004-12-18  Bruno Haible  <bruno@clisp.org>
12015
12016         * lib/fatal-signal.c (fatal_signals): Make non-const.
12017         (init_fatal_signals): New function.
12018         (uninstall_handlers, install_handlers): Ignore signals that were set to
12019         SIG_IGN.
12020         (at_fatal_signal): Call init_fatal_signals.
12021         (init_fatal_signal_set): Likewise. Ignore signals that were set to
12022         SIG_IGN.
12023         Reported by Paul Eggert.
12024
12025 2004-12-18  Bruno Haible  <bruno@clisp.org>
12026
12027         * doc/alloca.texi: New file.
12028         * doc/alloca-opt.texi: New file.
12029
12030 2004-12-17  Jim Meyering  <jim@meyering.net>
12031
12032         * config/install-sh: Use `(exit N); exit N', not `(exit N); exit'.
12033         Otherwise, install-sh could exit with improper exit status when
12034         exiting via a trapped interrupt.  Thanks to a report from Bob Proulx.
12035
12036 2004-12-16  Simon Josefsson  <jas@extundo.com>
12037
12038         * tests/test-base64.c: Add license.
12039
12040 2004-12-15  Stepan Kasal  <address@hidden>
12041
12042         * gnulib-tool (func_emit_lib_Makefile_am): Shorten a long sed command.
12043
12044 2004-12-12  Paul Eggert  <eggert@cs.ucla.edu>
12045
12046         * modules/getcwd (Files): Add m4/d-ino.m4.
12047         Suggested by Mark D. Baushke.
12048
12049 2004-12-08  Paul Eggert  <eggert@cs.ucla.edu>
12050
12051         * lib/getdate.y (textint): New member "negative".
12052         (time_zone_hhmm): New function.
12053         Expect 14 shift-reduce conflicts, not 13.
12054         (o_colon_minutes): New rule.
12055         (time, zone): Use it to add support for +HH:MM, UTC+HH:MM.
12056         (yylex): Set the "negative" member of signed numbers.
12057
12058 2004-12-08  Paul Eggert  <eggert@cs.ucla.edu>
12059
12060         * doc/getdate.texi (Time of day items, Time zone items):
12061         Describe new formats +00:00, UTC+00:00.
12062
12063 2004-12-07  Paul Eggert  <eggert@cs.ucla.edu>
12064
12065         * m4/ls-mntd-fs.m4 (AC_FUNC_GETMNTENT): Fix typo in previous change:
12066         spurious "-l"s.  Problem reported by Stepan Kasal.
12067
12068 2004-12-06  Paul Eggert  <eggert@cs.ucla.edu>
12069
12070         * m4/ls-mntd-fs.m4 (AC_FUNC_GETMNTENT): New macro, to work around bug
12071         in Autoconf 2.59.  Problem reported by Mark D. Baushke.
12072
12073 2004-12-04  Simon Josefsson  <jas@extundo.com>
12074
12075         * modules/getaddrinfo (License): Add LGPL, reported by Yoann
12076         Vandoorselaere <yoann@prelude-ids.org>.
12077
12078 2004-12-04  Paul Eggert  <eggert@cs.ucla.edu>
12079
12080         Changes imported from coreutils.
12081         * m4/hard-locale.m4 (gl_HARD_LOCALE): Assume locale.h and setlocale
12082         exist.
12083         * m4/human.m4 (gl_HUMAN): Assume locale.h and localeconv exist.
12084
12085 2004-12-04  Paul Eggert  <eggert@cs.ucla.edu>
12086
12087         Changes imported from coreutils.
12088         * lib/hard-locale.c: Assume <locale.h> exists.
12089         Include "strdup.h".
12090         (GLIBC_VERSION): New macro.
12091         (hard_locale): Assume setlocale exists.
12092         Rewrite to avoid #ifdef.
12093         Use strdup rather than malloc + strcpy.
12094         * lib/human.c: Assume <locale.h> exists.
12095         (human_readable): Assume localeconv exists.
12096
12097 2004-12-04  Paul Eggert  <eggert@cs.ucla.edu>
12098
12099         * modules/hard-locale (Depends-on): Add strdup.
12100
12101 2004-12-01  Jakub Jelinek  <jakub@redhat.com>
12102
12103         * lib/mktime.c (__mktime_internal): If SEC_REQUESTED != SEC,
12104         convert T2, not T.  (Imported from libc.)
12105
12106 2004-11-30  Simon Josefsson  <jas@extundo.com>
12107
12108         * modules/restrict (License): Change to LGPL.
12109
12110 2004-11-30  Simon Josefsson  <jas@extundo.com>
12111
12112         * m4/restrict.m4: Add copyright and copying conditions.
12113
12114 2004-11-30  Simon Josefsson  <jas@extundo.com>
12115
12116         * m4/base64.m4: New file.
12117
12118 2004-11-30  Simon Josefsson  <jas@extundo.com>
12119
12120         * MODULES.html.sh (Extra functions based on ANSI C 89): Add
12121         base64.
12122
12123         * tests/test-base64.c: New file.
12124
12125         * modules/base64: New file.
12126
12127 2004-11-30  Paul Eggert  <eggert@cs.ucla.edu>
12128
12129         * m4/getcwd-path-max.m4 (gl_FUNC_GETCWD_PATH_MAX):
12130         Define HAVE_PARTLY_WORKING_GETCWD if getcwd is partly working.
12131
12132         * m4/readutmp.m4 (gl_READUTMP): Don't check for sys/param.h.
12133
12134 2004-11-30  Paul Eggert  <eggert@cs.ucla.edu>
12135
12136         * lib/getcwd.c (is_ENAMETOOLONG): New macro.
12137         (__getcwd.c): Don't restore errno; glibc doesn't.
12138         [HAVE_PARTLY_WORKING_GETCWD && !defined AT_FDCWD]: Try system getcwd
12139         first, falling back to our code only if its results look suspicious.
12140         Ensure that the resulting buffer is only as large as necessary.
12141
12142         * lib/readutmp.c: Include readutmp.h first.
12143         Include <errno.h>, since readutmp.h no longer does that.
12144         * lib/readutmp.h: Don't include <errno.h>,
12145         <sys/param.h>, <time.h>; not needed to establish interface.
12146         (errno): Remove decl.
12147         (HAVE_STRUCT_XTMP_UT_TYPE): Remove; no longer needed.
12148         (UT_TYPE_EQ, UT_TYPE_NOT_DEFINED, UT_TYPE_BOOT_TIME,
12149         UT_TYPE_USER_PROCESS, IS_USER_PROCESS): New macros.
12150
12151 2004-11-28  Simon Josefsson  <jas@extundo.com>
12152
12153         * lib/base64.h, base64.c: New file.
12154
12155 2004-11-27  Paul Eggert  <eggert@cs.ucla.edu>
12156
12157         * lib/getcwd.h: New file, which I forgot to check in on 2004-11-25.
12158
12159 2004-11-26  Paul Eggert  <eggert@cs.ucla.edu>
12160
12161         * modules/getcwd (Files): Add lib/getcwd.h, m4/getcwd.m4.
12162         (Depends-on): Remove pathmax, same.  Add mempcpy.
12163         (configure.ac): GL_FUNC_GETCWD_PATH_MAX -> gl_FUNC_GETCWD.
12164         (Makefile.am): Append getcwd.h to lib_SOURCES.
12165         (Include): Add getcwd.h.
12166         (Maintainer): Change from Jim Meyering to "all, glibc",
12167         since getdate now uses intended-for-glibc code.
12168         * modules/xgetcwd (Files): Remove m4/getcwd.m4.
12169         (Depends-on): Depend on getcwd.  Do not depend on pathmax.
12170
12171 2004-11-25  Paul Eggert  <eggert@cs.ucla.edu>
12172
12173         Fix problems reported by Scott S. Tinsley for HP-UX 11.11 using
12174         HP's ANSI C compiler.
12175         * lib/fsusage.c (statvfs) [HAVE_SYS_STATVFS_H]: Remove decl.
12176         Declaring int functions causes warnings on some modern systems and
12177         shouldn't be needed to compile on ancient ones.
12178         * lib/same.c (MIN) [defined MIN]: Don't define, since it's already
12179         defined.
12180
12181         * lib/getcwd.c: Replace by a copy of glibc/sysdeps/posix/getcwd.c, but
12182         with the following changes.
12183         (__set_errno): Parenthesize properly.
12184         Include <stdbool.h>.
12185         (MIN, MAX, MATCHING_INO): New macros.
12186         (__getcwd): Define with prototype, not K&R form.
12187         Use heuristics to allocate default buffer on stack if possible.
12188         If AT_FDCWD is defined, use openat and fstatat to avoid O(N**2)
12189         behavior, and to avoid the PATH_MAX limit when computing
12190         ../../../../...
12191         Use MATCHING_INO to compare inode number to file.
12192         Check for arithmetic overflow in size calculations.
12193         Fix bug in reallocation of dot array that caused getcwd to fail
12194         on directories nested deeper than 75.
12195         Be more careful about saving errno on error.
12196         Do not use realloc; use only free+malloc, as this is a bit
12197         more flexible and avoids a needless copy operation.
12198         Do not inspect st_dev and st_ino for symbolic links; POSIX
12199         doesn't specify the latter.
12200         Check for closedir errors.
12201         Avoid needless casts.
12202         Use "#ifdef weak_alias" around weak_alias, to be like other
12203         glibc code.
12204         The following changes to getcwd.c have effect only when used in
12205         gnulib; they have no effect inside glibc proper.
12206         (#pragma alloca) [defined _AIX && !defined __GNUC__]: Remove,
12207         as alloca isn't used.
12208         (alloca, __alloca): Likewise.
12209         [!_LIBC]: Include "getcwd.h", "mempcpy.h".
12210         Include <stddef.h>, <stdlib.h>, <string.h>, <limits.h>
12211         unconditionally, as gnulib assumes C89 or better.
12212         Do not include <sys/param.h>.
12213         (errno) [!defined __GNU_LIBRARY__ && !defined STDC_HEADERS]: Remove
12214         no-longer-necessary 'extern int errno' decl; gnulib assumes C89 or
12215         better.
12216         (NULL) [!defined NULL]: Remove; we assume C89 or better.
12217         Include <dirent.h> in a way that is compatible with modern Autoconf.
12218         (_D_ALLOC_NAMELEN, _D_EXACT_NAMLEN):
12219         New macros, if not already defined.
12220         Include <unistd.h> if _LIBC, not if __GNU_LIBRARY__.
12221         Use "_LIBC", not "defined _LIBC", for consistency.
12222         (HAVE_MEMPCPY): Remove; no longer needed now that gnulib has
12223         a mempcpy module.
12224         (__lstat, __closedir, __opendir, __readdir) [!_LIBC]: New macros.
12225         (GETCWD_RETURN_TYPE): Remove.  All uses replaced by char *.
12226         * lib/xgetcwd.c: David MacKenzie's old code was removed, so give
12227         credit only to Jim Meyering and adjust the copyright dates.
12228         Do not include <limits.h>, <stdio.h>, <sys/types.h>,
12229         <stdlib.h>, <unistd.h>, "pathmax.h".
12230         Instead, include "xgetcwd.h" (first) and "getcwd.h".
12231         (INITIAL_BUFFER_SIZE): Remove.
12232         (xgetcwd): Rely on getcwd, since we now depend on a reliable one.
12233
12234 2004-11-25  Paul Eggert  <eggert@cs.ucla.edu>
12235
12236         * m4/getcwd-path-max.m4 (gl_FUNC_GETCWD_PATH_MAX): Renamed from
12237         GL_FUNC_GETCWD_PATH_MAX for consistency.  All uses changed.
12238         Use the _ONCE methods, for efficiency.
12239         Check for fcntl.h.  In test program, include <errno.h>
12240         and <fcntl.h> if available.  Remove old K&R cruft from
12241         test program.  Check for common errors in GNU/Linux,
12242         OpenBSD, and Solaris.  Just set gl_cv_func_getcwd_path_max;
12243         don't do AC_LIBOBJ, as that's getcwd.m4's job.
12244         * m4/getcwd.m4 (gl_FUNC_GETCWD_NULL): Renamed from
12245         AC_FUNC_GETCWD_NULL.  All used changed.  Change cache variable
12246         name accordingly.
12247         (gl_FUNC_GETCWD, gl_PREREQ_GETCWD): New macros.  Revamp to
12248         accommodate new getcwd.c.
12249         * m4/jm-macros.m4 (gl_MACROS): Don't require GL_FUNC_GETCWD_PATH_MAX.
12250         * m4/prereq.m4 (gl_PREREQ): Add gl_FUNC_MEMPCPY.
12251         * m4/xgetcwd.m4 (gl_XGETCWD): Replace with gl_FUNC_GETCWD, since
12252         that's all we need now.
12253
12254 2004-11-23  Sergey Poznyakoff  <gray@Mirddin.farlep.net>
12255
12256         * m4/argp.m4 (gl_ARGP): Require gl_GETOPT_SUBSTITUTE unconditionally:
12257         argp-parse.c depends on getopt internals, that means we should
12258         always use our getopt, to be on the safe side.
12259         * m4/getopt.m4 (gl_GETOPT): Check if GETOPT_H is already set, in
12260         order not to spoil the result of an eventual previous invocation
12261         of gl_GETOPT_SUBSTITUTE.
12262
12263 2004-11-23  Sergey Poznyakoff  <gray@Mirddin.farlep.net>
12264
12265         * lib/getopt_.h: Re-addition of __getopt_argv_const caused
12266         redefinition warnings. To avoid them, include the defines
12267         in `#if !defined __need_getopt ... #endif'. The only place
12268         where __getopt_argv_const is used is in definitions
12269         of getopt_long and getopt_long_only below, which are as well
12270         protected by `#ifndef __need_getopt'.
12271         [defined __GETOPT_PREFIX && !defined __need_getopt]: Undef
12272         __need_getopt after including <stdio.h> and <unistd.h> These
12273         headers might have defined it.
12274
12275 2004-11-23  Paul Eggert  <eggert@cs.ucla.edu>
12276
12277         * m4/utimens.m4 (gl_UTIMENS): Check for futimes function.
12278
12279 2004-11-23  Paul Eggert  <eggert@cs.ucla.edu>
12280
12281         * lib/utimens.c (__attribute__, ATTRIBUTE_UNUSED): New macros.
12282         (futimens): New function, which uses futimes if available.
12283         (futimens, utimens): Support timespec==NULL, with same semantics
12284         as utime and utimens.
12285         * lib/utimens.h (futimens): New decl.
12286
12287 2004-11-23  Jim Meyering  <jim@meyering.net>
12288
12289         * lib/getopt_.h: Remove trailing blanks.
12290
12291 2004-11-23  Jim Meyering  <jim@meyering.net>
12292
12293         * lib/__fpending.c: Add comment.
12294
12295 2004-11-22  Paul Eggert  <eggert@cs.ucla.edu>
12296
12297         * modules/canonicalize (Depends-on): Add xreadlink.
12298         Problem reported by James Youngman.
12299
12300 2004-11-20  Paul Eggert  <eggert@cs.ucla.edu>
12301
12302         * lib/getopt_.h (__GETOPT_CONCAT, __GETOPT_XCONCAT, __GETOPT_ID):
12303         New macros.
12304         (getopt, getopt_long, getopt_long_only, optarg, opterr, optind,
12305         optopt): Use them instead of invoking ## directly; otherwise, the
12306         symbols will be __GETOPT_PREFIXgetopt rather than rpl_getopt.
12307
12308 2004-11-19  Bruno Haible  <bruno@clisp.org>
12309
12310         * lib/strtok_r.c: Move comments from here...
12311         * lib/strtok_r.h: ... to here.
12312
12313 2004-11-17  Paul Eggert  <eggert@cs.ucla.edu>
12314
12315         * m4/calloc.m4 (_AC_FUNC_CALLOC_IF): Check for buggy calloc
12316         implementations that mishandle size_t overflow.
12317
12318 2004-11-17  Paul Eggert  <eggert@cs.ucla.edu>
12319
12320         * lib/realloc.c (rpl_realloc): Call 'free' if n==0, since realloc
12321         might fail.  Problem reported by Yoann Vandoorselaere.
12322         * lib/calloc.c (rpl_calloc): Defend against buggy calloc
12323         implementations that mishandle size_t overflow.
12324
12325 2004-11-16  Paul Eggert  <eggert@cs.ucla.edu>
12326
12327         * modules/canon-host (Depends-on): Add strdup.
12328
12329 2004-11-16  Paul Eggert  <eggert@cs.ucla.edu>
12330
12331         * m4/canon-host.m4 (gl_CANON_HOST): Check for getaddrinfo.
12332
12333 2004-11-16  Paul Eggert  <eggert@cs.ucla.edu>
12334
12335         * lib/canon-host.c: Include "strdup.h".
12336         (canon_host): Use getaddrinfo if available, so that IPv6 works.
12337         Use strdup instead of malloc/strcpy to duplicate strings.
12338
12339         * lib/human.h (LONGEST_HUMAN_READABLE): Add 1 for space before unit.
12340         (human_space_before_unit): New constant.
12341         * lib/human.c (human_readable): Support it.
12342
12343         * lib/xgetcwd.c: Include <limits.h>, for PATH_MAX.
12344         (xgetcwd): Set errno correctly when failing.
12345         Work around Solaris 9 bug: getcwd sets errno==ERANGE even though
12346         the failure is actually due to a PATH_MAX problem.
12347
12348         Further getopt changes to make it more likely that glibc will
12349         buy the changes back.
12350         * lib/getopt.c (POSIXLY_CORRECT): New constant.
12351         (getopt): Use it, so to preserve glibc semantic
12352         * lib/getopt1.c (getopt_long, getopt_long_only): Arg is char * const *
12353         when compiling for libc.
12354         * lib/getopt_.h (__getopt_argv_const): Bring it back.
12355         (getopt_long, getopt_long_only): Use it.
12356
12357         * lib/getopt.c (_getopt_initialize, _getopt_internal_r,
12358         _getopt_internal): New arg POSIXLY_CORRECT.  All callers changed.
12359         (getopt): Argv is now char * const *, as per standard.
12360         (_getopt_internal_r, _getopt_internal): Argv is now char **,
12361         not char *__getopt_argv_const *.
12362         * lib/getopt1.c (getopt_long, _getopt_long_r, getopt_long_only,
12363         _getopt_long_only_r): Likewise.
12364         * lib/getopt_.h (getopt, getopt_long, geopt_long_only): Likewise.
12365         * lib/getopt_int.h (_getopt_internal, _getopt_internal_r,
12366         _getopt_long_r, _getopt_long_only_r): Likewise.
12367         * lib/getopt_.h (__getopt_argv_const): Remove.
12368         (getopt): Argv is now char * const *, as per standard.
12369
12370         * lib/getdate.y (tORDINAL): New token.
12371         (day, relunit): Allow it for relative times.
12372         (relative_time_table): Use tORDINAL for ordinals.
12373
12374 2004-11-16  Paul Eggert  <eggert@cs.ucla.edu>
12375
12376         * doc/getdate.texi (General date syntax): "next" is 1, not 2.
12377         Document that "second" isn't allowed as an ordinal number.
12378
12379 2004-11-16  Jim Meyering  <jim@meyering.net>
12380
12381         * modules/closeout (Depends-on): Add fpending.
12382
12383 2004-11-15  Jim Meyering  <jim@meyering.net>
12384
12385         * lib/closeout.c: Include "__fpending.h" once again.
12386         Include <stdbool.h>.
12387         (close_stdout): Don't fail just because stdout was closed initially,
12388         since some programs don't write to stdout in the normal course of
12389         operation (other than --version and --help), and we don't want this
12390         function to make e.g. `touch file >&-' fail.
12391         But do fail if it was closed and someone has tried to write to it.
12392         E.g., `printf foo >&-' must fail.
12393
12394 2004-11-13  Jim Meyering  <jim@meyering.net>
12395
12396         * m4/jm-macros.m4: Do require gl_FUNC_FPENDING.
12397
12398 2004-11-12  Simon Josefsson  <jas@extundo.com>
12399
12400         * config/srclist.txt: Add strtok_r.c, glibc bought our changes, but a
12401         small doc fix is still pending.
12402
12403 2004-11-11  Simon Josefsson  <jas@extundo.com>
12404
12405         * modules/strtok_r: New file.
12406
12407         * MODULES.html.sh (Support for systems lacking POSIX:2001): Add
12408         strtok_r.
12409
12410 2004-11-11  Simon Josefsson  <jas@extundo.com>
12411
12412         * m4/strtok_r.m4: New file.
12413
12414         * m4/getopt.m4: Replace opterr.
12415
12416 2004-11-11  Simon Josefsson  <jas@extundo.com>
12417
12418         * lib/strtok_r.h, strtok_r.c: New file.
12419
12420 2004-11-11  Paul Eggert  <eggert@cs.ucla.edu>
12421
12422         * m4/getopt.m4 (gl_GETOPT_SUBSTITUTE): Define __GETOPT_PREFIX instead
12423         of replacing opterr, getopt, etc.  This should handle the
12424         powerpc-apple-darwin5.5 problem recently noted by Simon Josefsson.
12425
12426 2004-11-11  Paul Eggert  <eggert@cs.ucla.edu>
12427
12428         * lib/getopt_.h (__getopt_argv_const): New macro, to be used so that
12429         we can stop lying to compilers about the constness of argv when we
12430         are compiled outside glibc.
12431         (getopt, getopt_long, getopt_long_only): Use it.
12432         * lib/getopt.c (_getopt_initialize, _getopt_internal_r,
12433         _getopt_internal, getopt): Likewise.
12434         * lib/getopt1.c (getopt_long, _getopt_long_r, getopt_long_only,
12435         _getopt_long_only_r): Likewise.
12436         * lib/getopt_int.h (_getopt_internal, _getopt_internal_r,
12437         _getopt_long_r, _getopt_long_only_r): Likewise.
12438
12439         * lib/getopt_.h [defined __GETOPT_PREFIX && !defined __need_getopt]:
12440         Include <stdlib.h> and <stdio.h>, and <unistd.h> if available.
12441         Then rename getopt to __GETOPT_PREFIX##getopt, and so forth for
12442         the other external symbols.
12443         (getopt) [!defined __GNU_LIBRARY]: Use prototype, not old-style
12444         declaration, since the above renaming now works around collisions.
12445
12446 2004-11-11  Jim Meyering  <jim@meyering.net>
12447
12448         * lib/linebreak.c: Remove trailing blanks.
12449         * lib/alloca_.h: Likewise.
12450         * lib/acosl.c: Likewise.
12451         * lib/euidaccess.c: Likewise.
12452         * lib/allocsa.h: Likewise.
12453
12454 2004-11-10  Simon Josefsson  <jas@extundo.com>
12455
12456         * m4/getaddrinfo.m4: New file.
12457
12458 2004-11-10  Simon Josefsson  <jas@extundo.com>
12459
12460         * lib/getaddrinfo.h, getaddrinfo.c: New files.
12461
12462 2004-11-10  Simon Josefsson  <jas@extundo.com>
12463
12464         * MODULES.html.sh (Support for systems lacking POSIX:2001): Add
12465         getaddrinfo.
12466
12467         * modules/getaddrinfo: New file.
12468
12469 2004-11-10  Paul Eggert  <eggert@cs.ucla.edu>
12470
12471         * m4/prereq.m4 (gl_PREREQ): Require gt_FUNC_SETENV.
12472
12473 2004-11-10  Paul Eggert  <eggert@cs.ucla.edu>
12474
12475         * lib/mktime.c (SHR): New macro, which is a portable
12476         substitute for >> that should work even on Crays.
12477         (TIME_T_MIDPOINT, ydhms_diff, __mktime_internal): Use it.
12478         Problem reported by Mark D. Baushke in
12479         <http://lists.gnu.org/archive/html/bug-gnulib/2004-11/msg00071.html>.
12480         * lib/getdate.y (SHR): Likewise.
12481         (tm_diff): Use it.
12482         * lib/strftime.c (SHR): Likewise.
12483         (tm_diff): Use it.
12484         * lib/quotearg.c (struct quoting_options): Use unsigned int for
12485         quote_these_too, so that right shifts are well defined.  All uses
12486         changed.
12487
12488 2004-11-10  Jim Meyering  <jim@meyering.net>
12489
12490         Ensure that no close failure goes unreported.
12491         * lib/closeout.c (close_stdout): Always close stdout.  I.e., don't
12492         return early when it seems there's nothing to flush.
12493         Don't include __fpending.h.
12494
12495 2004-11-10  Jim Meyering  <jim@meyering.net>
12496
12497         * modules/closeout (Depends-on): Remove fpending.
12498
12499 2004-11-10  Jim Meyering  <jim@meyering.net>
12500
12501         * m4/jm-macros.m4 (gl_MACROS): Don't require gl_FUNC_FPENDING.
12502
12503 2004-11-09  Paul Eggert  <eggert@cs.ucla.edu>
12504
12505         * m4/strftime.m4 (_gl_STRFTIME_PREREQS): Remove.  Move its body to
12506         gl_FUNC_STRFTIME.
12507         (gl_FUNC_STRFTIME): Use AC_CHECK_FUNCS_ONCE and AC_CHECK_HEADERS_ONCE
12508         and AC_REQUIRE when possible, to avoid duplicate checks.
12509         Check for <wchar.h>.
12510
12511 2004-11-09  Paul Eggert  <eggert@cs.ucla.edu>
12512
12513         * lib/strftime.c (DO_MULTIBYTE): Check for wchar.h, too.
12514
12515 2004-11-09  Bruno Haible  <bruno@clisp.org>
12516
12517         * m4/sockpfaf.m4: New file.
12518
12519 2004-11-05  Bruno Haible  <bruno@clisp.org>
12520
12521         * lib/readlink.c: Include stddef.h, needed for size_t on Woe32.
12522         Reported by Mark D. Baushke <mdb@cvshome.org>.
12523
12524 2004-11-04  Bruno Haible  <bruno@clisp.org>
12525
12526         2004-09-11  Bruno Haible  <bruno@clisp.org>
12527                 * allocsa.valgrind: New file.
12528         2004-02-06  Bruno Haible  <bruno@clisp.org>
12529                 * allocsa.h (sa_alignof): Define differently with HP-UX cc, to
12530                 avoid a bug of this cc on HP-UX 10.20 dealing with enums.
12531                 Reported by Christopher Seip <chris.seip@hp.com>.
12532
12533 2004-11-04  Bruno Haible  <bruno@clisp.org>
12534
12535         * modules/allocsa (Files): Add lib/allocsa.valgrind.
12536         (Makefile.am): Distribute it.
12537
12538 2004-11-03  Paul Eggert  <eggert@cs.ucla.edu>
12539
12540         * lib/xreadlink.c (xreadlink): AIX and HP-UX readlink return -1
12541         with errno == ERANGE if the buffer is too small.
12542         Problem reported by Mark D. Baushke.
12543
12544 2004-11-03  Albert Chin <china@thewrittenword.com>
12545             Paul Eggert  <eggert@cs.ucla.edu>
12546
12547         * m4/uint32_t.m4 (gl_AC_TYPE_UINT32_T): When determining uint32_t
12548         equivalent, substitute $ac_type for equivalent type rather than
12549         blindly using uint32_t *always* which won't work if uint32_t is not
12550         available.  Define _UINT32_T to work around typedef of uint32_t if
12551         <sys/sched.h>, <pthread.h>, or <semaphore.h> used on Solaris
12552         2.5.1.
12553
12554 2004-11-02  Paul Eggert  <eggert@cs.ucla.edu>
12555
12556         * m4/jm-macros.m4: Sync from coreutils.
12557         (gl_MACROS): Check for mbrlen, for pathchk.
12558         (gl_CHECK_ALL_TYPES): Require AC_TYPE_MBSTATE_T, for pathchk.
12559
12560 2004-11-02  Paul Eggert  <eggert@cs.ucla.edu>
12561
12562         * lib/xreadlink.c (MAXSIZE): New macro.
12563         (xreadlink): Use it instead of SSIZE_MAX.  Ensure initial buffer
12564         size does not exceed MAXSIZE.  Avoid cast.
12565         As suggested by Mark D. Baushke in
12566         <http://lists.gnu.org/archive/html/bug-gnulib/2004-11/msg00009.html>,
12567         if readlink fails with buffer size just under MAXSIZE, try again
12568         with MAXSIZE.
12569
12570 2004-11-02  Paul Eggert  <eggert@cs.ucla.edu>
12571
12572         * config/srclist.txt: Add mktime.c; glibc bought all our changes.
12573
12574 2004-11-02  Derek R. Price  <derek@ximbiot.com>
12575         and  Paul Eggert  <eggert@cs.ucla.edu>
12576
12577         * lib/getdate.y [!TEST]: Include <stdio.h>, since we use sprintf now.
12578         (get_date): Overparenthesize to avoid GCC warning.
12579
12580 2004-11-02  Bruno Haible  <bruno@clisp.org>
12581
12582         * m4/setenv.m4 (gt_FUNC_SETENV): Define VOID_UNSETENV if unsetenv()
12583         returns void.
12584
12585 2004-11-02  Bruno Haible  <bruno@clisp.org>
12586
12587         * lib/setenv.h (unsetenv): Define as a macro if the system's unsetenv()
12588         function returns void.
12589
12590 2004-11-01  Paul Eggert  <eggert@cs.ucla.edu>
12591
12592         * m4/getpass.m4 (gl_PREREQ_GETPASS): Check for declarations of
12593         fflush_unlocked, flockfile, funlockfile, funlockfile,
12594         fputs_unlocked, putc_unlocked.
12595
12596 2004-11-01  Paul Eggert  <eggert@cs.ucla.edu>
12597
12598         * lib/getpass.c (fflush_unlocked, flockfile, funlockfile)
12599         (funlockfile, fputs_unlocked, putc_unlocked): Don't define if
12600         already declared.
12601
12602 2004-10-29  Paul Eggert  <eggert@cs.ucla.edu>
12603
12604         * modules/getdate (Files): Add doc/getdate.texi.
12605         (Depends-on): Add setenv, xalloc.
12606
12607 2004-10-29  Paul Eggert  <eggert@cs.ucla.edu>
12608
12609         * lib/getdate.y: Add support for TZ="foo" within a date string.
12610         Fix some bugs near time_t boundaries.  Reject dates with
12611         out-of-range components, e.g., "Sept 31".
12612         Include <stdlib.h>, "setenv.h", "xalloc.h".
12613         (ISDIGIT_LOCALE): Remove; unused.
12614         Note that the TZ and time functions used here are not reentrant.
12615         (mktime_ok, get_tz): New functions.
12616         (TZBUFSIZE): New constant.
12617         (get_date): Parse leading TZ="foo".  Reject out-of-range components;.
12618         This requires that we sometimes generate our own TZ="XXX..." setting.
12619
12620 2004-10-29  Paul Eggert  <eggert@cs.ucla.edu>
12621
12622         * doc/getdate.texi: New file, from coreutils with modifications for
12623         the new TZ parsing.
12624
12625 2004-10-27  Derek R. Price  <derek@ximbiot.com>
12626
12627         * lib/mktime.c (not_equal_tm): Remove redundant check.
12628
12629 2004-10-24  Paul Eggert  <eggert@cs.ucla.edu>
12630
12631         * modules/regex (lib_SOURCES): Add regex.c.
12632         Reported by James Youngman in
12633         <http://lists.gnu.org/archive/html/bug-gnulib/2004-10/msg00199.html>.
12634
12635 2004-10-24  Paul Eggert  <eggert@cs.ucla.edu>
12636
12637         * lib/getdate.y: Use Bison 1.875 features, and some minor
12638         code cleanups.  This change does not affect semantics.
12639         Don't include <stdlib.h>; no longer needed.
12640         Don't include unlocked-io.h; only the "#if TEST" code uses
12641         stdio, and performance isn't crucial there.
12642         (PC, YYLEX_PARAM, YYPARSE_PARAM): Remove; replaced by
12643         Bison 1.875 features as described below.
12644         All uses of "PC." replaced by "pc->".
12645         (YYSTYPE): Add a forward declaration.
12646         (yylex, yyerror): Use full prototypes in forward decls.
12647         Use "%pure-parser" rather than obsolescent "%pure_parser".
12648         Use %parse-param and %lex-param instead of obsolescent
12649         YYPARSE_PARAM and YYLEX_PARAM.
12650         (meridian_table, month_and_day_table, time_units_table,
12651         relative_time_table, time_zone_table, military_table,
12652         lookup_zone, lookup_word, get_date):
12653         Use NULL instead of 0 where appropriate.
12654         (to_hour): Avoid abort (), to avoid a dependency on
12655         stdlib.h.
12656         (yyerror, yylex): Now accepts parser_control * arg.
12657         (main) [TEST]: Use '\0' rather than 0 for char.
12658
12659 2004-10-22  Paul Eggert  <eggert@cs.ucla.edu>
12660
12661         * m4/getpagesize.m4 (gl_GETPAGESIZE): Check for <sys/param.h>.
12662
12663 2004-10-22  Paul Eggert  <eggert@cs.ucla.edu>
12664
12665         * lib/getpagesize.c (getpagesize): Don't assume <sys/param.h> exists.
12666         It's now the caller's responsibility to handle the case where
12667         !HAVE_GETPAGESIZE && !defined getpagesize.
12668
12669         * lib/mktime.c (leapyear): Arg is long int, not int.
12670
12671 2004-10-18  Paul Eggert  <eggert@cs.ucla.edu>
12672
12673         * lib/argp-fs-xinl.c, argp-xinl.c: Update from glibc.
12674
12675 2004-10-17  Paul Eggert  <eggert@cs.ucla.edu>
12676
12677         * gnulib-tool (func_emit_lib_Makefile_am): Fix typo: a $ was
12678         missing.  Problem reported by James Youngman.
12679
12680 2004-10-16  Simon Josefsson  <jas@extundo.com>
12681
12682         * gnulib-tool: Fix comments.  Fix parse problem.
12683         (func_emit_lib_Makefile_am): Don't hard code a in libgl_a_SOURCES.
12684
12685 2004-10-15  Paul Eggert  <eggert@cs.ucla.edu>
12686
12687         * m4/getopt.m4 (gl_GETOPT): Detect and reject the incompatible BSD
12688         implementation of getopt_long.  Problem reported by Alexander Taler in:
12689         http://lists.gnu.org/archive/html/bug-gnulib/2004-10/msg00103.html
12690
12691 2004-10-15  Bruno Haible  <bruno@clisp.org>
12692
12693         * gnulib-tool: Untabify. Initialize supplied_libname.
12694         (func_usage): More homogenous output.
12695         (func_modules_transitive_closure, func_modules_to_filelist,
12696         func_emit_lib_Makefile_am): New functions.
12697         (func_import): New function, extracted from big case statement. Use
12698         func_get_license, func_modules_transitive_closure,
12699         func_modules_to_filelist, func_emit_lib_Makefile_am. Initialize
12700         opt_lgpl. Don't use test -a, as it's not portable.
12701         (func_create_testdir): Use func_modules_transitive_closure,
12702         func_modules_to_filelist, func_emit_lib_Makefile_am.
12703
12704 2004-10-15  Bruno Haible  <bruno@clisp.org>
12705
12706         * gnulib-tool (func_import): Let gl_INIT define LTALLOCA when needed.
12707
12708 2004-10-15  Bruno Haible  <bruno@clisp.org>
12709
12710         * gnulib-tool (func_emit_lib_Makefile_am): Add markers to separate
12711         the portions belonging to each module.
12712         Suggested by Derek Robert Price <derek@ximbiot.com>.
12713
12714 2004-10-12  Simon Josefsson  <jas@extundo.com>
12715
12716         * lib/getpass.c (fflush_unlocked, flockfile, funlockfile)
12717         (fputs_unlocked, putc_unlocked) [!_LIBCS && !USE_UNLOCKED_IO]: Map
12718         to real functions.
12719
12720 2004-10-11  Yoann Vandoorselaere  <yoann@prelude-ids.org>
12721
12722         * modules/vsnprintf: New file.
12723
12724 2004-10-11  Yoann Vandoorselaere  <yoann@prelude-ids.org>
12725
12726         * m4/vsnprintf.m4: New file.
12727
12728 2004-10-11  Yoann Vandoorselaere  <yoann@prelude-ids.org>
12729
12730         * lib/vsnprintf.h: New file.
12731         * lib/vsnprintf.c: New file.
12732
12733 2004-10-11  Bruno Haible  <bruno@clisp.org>
12734
12735         * MODULES.html.sh (Support for systems lacking ISO C 99): Add
12736         vsnprintf.
12737
12738 2004-10-10  Paul Eggert  <eggert@cs.ucla.edu>
12739
12740         * config/srclistvars.sh: Add GNUSTANDARDS (for eggert only).
12741
12742 2004-10-07  Bruno Haible  <bruno@clisp.org>
12743
12744         * lib/snprintf.c (snprintf): Avoid a memory allocation if the result
12745         fits into the provided buffer.
12746
12747 2004-10-06  Paul Eggert  <eggert@cs.ucla.edu>
12748
12749         * lib/diacrit.c, diacrit.h: Add GPL notice.
12750
12751         * lib/atanl.c, logl.c: Add GPL notice, to match glibc's added LGPL
12752         notice.
12753         * lib/atanl.c (atanl): Keep the code as similar to glibc as possible.
12754         * lib/logl.c (logl): Keep the code as similar to glibc as possible.
12755         This avoids a potential constant-folding bug.
12756
12757 2004-10-05  Bruno Haible  <bruno@clisp.org>
12758
12759         * m4/strsep.m4 (gl_FUNC_STRSEP): Require AC_GNU_SOURCE. Don't check
12760         for the declaration of strsep.
12761
12762 2004-10-05  Bruno Haible  <bruno@clisp.org>
12763
12764         * lib/strsep.h: Don't declare strsep() if HAVE_STRSEP.
12765
12766 2004-10-04  Simon Josefsson  <jas@extundo.com>
12767
12768         * modules/memmem: New file.
12769         * tests/test-memmem.c: New file.
12770         * MODULES.html.sh (Extra functions based on ANSI C 89): Add memmem.
12771
12772 2004-10-04  Simon Josefsson  <jas@extundo.com>
12773
12774         * m4/memmem.m4: New file.
12775
12776 2004-10-04  Simon Josefsson  <jas@extundo.com>
12777
12778         * lib/memmem.h: New file.
12779         * lib/memmem.c: New file, taken from glibc.
12780
12781 2004-10-04  Simon Josefsson  <jas@extundo.com>
12782
12783         * lib/error.c, md5.c, regex.c: Use '#if USE_UNLOCKED_IO' instead of
12784         '#ifdef USE_UNLOCKED_IO'.
12785
12786 2004-10-04  Simon Josefsson  <jas@extundo.com>
12787
12788         * config/srclist.txt: Add memmem from glibc.
12789
12790 2004-10-04  Paul Eggert  <eggert@cs.ucla.edu>
12791
12792         * modules/xalloc (Files, Makefile.am): Remove xstrdup.c.
12793
12794         * modules/argmatch, modules/argp, modules/closeout, modules/error,
12795         modules/exclude, modules/getdate, modules/getline,
12796         modules/getndelim2, modules/getpass, modules/getpass-gnu,
12797         modules/getusershell, modules/linebuffer, modules/md5,
12798         modules/mountlist, modules/posixtm, modules/readtokens,
12799         modules/readutmp, modules/regex, modules/sha1,
12800         modules/version-etc, modules/yesno:
12801         Remove dependency on unlocked-io.
12802
12803 2004-10-04  Paul Eggert  <eggert@cs.ucla.edu>
12804
12805         * m4/xalloc.m4 (gl_PREREQ_XSTRDUP): Remove.  All uses removed.
12806
12807         * m4/unlocked-io.m4: Add copyright notice.
12808         (gl_FUNC_GLIBC_UNLOCKED_IO): Define USE_UNLOCKED_IO.
12809
12810 2004-10-04  Paul Eggert  <eggert@cs.ucla.edu>
12811
12812         * lib/xalloc.h (xmemdup): Renamed from xclone.  All uses changed.
12813         * lib/xmalloc.c (xmemdup): Likewise.
12814         * lib/xalloc.h (CCLONE, CLONE, NEW, XCALLOC, XMALLOC, XREALLOC,
12815         XFREE): Remove these long-obsolescent macros.
12816         * lib/xmalloc.c (xstrdup): Implementation moved here from xstrdup.c
12817         * lib/xstrdup.c: Remove.
12818
12819         * lib/regex.c (re_comp): Cast gettext return value to char *,
12820         Problem reported by Martin Neitzel via Mark D. Baushke.
12821
12822 2004-10-04  Paul Eggert  <eggert@cs.ucla.edu>
12823
12824         * lib/argmatch.c, closeout.c, error.c, exclude.c, getdate.y,
12825         getndelim2.c, getpass.c, getusershell.c, linebuffer.c,
12826         md5.c, mountlist.c, posixtm.c, readtokens.c, readutmp.c,
12827         regex.c, sha1.c, version-etc.c, yesno.c:
12828         Include "unlocked-io.h" only if USE_UNLOCKED_IO.
12829         * lib/unlocked-io.h: Don't worry about USE_UNLOCKED_IO; that's now
12830         the includer's responsibility.
12831
12832         Sync from coreutils.
12833
12834         * lib/modechange.c (mode_compile): Don't decrement a pointer that
12835         points to the start of a string, as the C Standard says the
12836         resulting behavior is undefined.
12837
12838         * lib/backupfile.h (enum backuptype): Rename none -> no_backups,
12839         simple -> simple_backups, numbered_existing ->
12840         numbered_existing_backups, numbered -> numbered_backups
12841         to avoid shadowing problems.  All uses changed.
12842         * lib/argmatch.c (enum backuptype) [defined TEST]: Likewise.
12843         * lib/backupfile.c (check_extension, numbered_backup):
12844         Rename locals to avoid shadowing 'basename'.
12845         * lib/backupfile.h (VALID_BACKUP_TYPE): Don't evaluate arg more than
12846         once.
12847
12848         * lib/.cppi-disable: Add getopt_.h, getopt_int.h.
12849         * lib/.cvsignore: Add getopt.h.
12850
12851 2004-10-04  Bruno Haible  <bruno@clisp.org>
12852
12853         * modules/README: New file.
12854         * gnulib-tool (func_all_modules, func_verify_module): modules/README is
12855         not a module.
12856
12857 2004-10-02  Jim Meyering  <jim@meyering.net>
12858
12859         * lib/dirfd.h, getpagesize.h: Add copyright notice.
12860
12861 2004-10-01  Yoann Vandoorselaere <yoann@prelude-ids.org>
12862
12863         * modules/strsep: New file.
12864
12865 2004-10-01  Yoann Vandoorselaere <yoann@prelude-ids.org>
12866
12867         * m4/strsep.m4: New file.
12868
12869 2004-10-01  Yoann Vandoorselaere <yoann@prelude-ids.org>
12870
12871         * lib/strsep.h: New file.
12872         * lib/strsep.c: New file.
12873
12874 2004-10-01  Simon Josefsson  <jas@extundo.com>
12875
12876         * lib/snprintf.c (snprintf): Handle size==0.
12877
12878 2004-10-01  Simon Josefsson  <jas@extundo.com>
12879             Bruno Haible  <bruno@clisp.org>
12880
12881         * lib/snprintf.c: Include <stdarg.h>, <stdlib.h>, <string.h>.
12882         (snprintf): Declare 'args'.
12883
12884 2004-10-01  Paul Eggert  <eggert@cs.ucla.edu>
12885
12886         * lib/snprintf.c: Remove comments as to why each header is needed.
12887
12888 2004-10-01  Bruno Haible  <bruno@clisp.org>
12889
12890         * MODULES.html.sh: Add strsep.
12891
12892 2004-09-30  Simon Josefsson  <jas@extundo.com>
12893
12894         * modules/snprintf: New file.
12895
12896 2004-09-30  Simon Josefsson  <jas@extundo.com>
12897
12898         * m4/snprintf.m4: New file.
12899
12900 2004-09-30  Simon Josefsson  <jas@extundo.com>
12901
12902         * lib/snprintf.h, snprintf.c: New files.
12903
12904 2004-09-30  Sergey Poznyakoff  <gray@Mirddin.farlep.net>
12905
12906         * lib/argp-help.c (canon_doc_option): Fixed coredump if *name==NULL
12907         (hol_entry_help): Never translate an empty string.
12908         Do not translate option tag (opt->name) if OPTION_NO_TRANS is set
12909         * lib/argp.h (OPTION_NO_TRANS): New option.
12910
12911 2004-09-30  Paul Eggert  <eggert@cs.ucla.edu>
12912
12913         * modules/argp (Maintainer): Replace Simon Josefsson
12914         by Sergey Poznyakoff.
12915
12916 2004-09-30  Paul Eggert  <eggert@cs.ucla.edu>
12917
12918         * config/srclist.txt: Comment-out argp/argp.h, until we get the argp
12919         changes merged back into glibc.
12920
12921 2004-09-30  Paul Eggert  <eggert@cs.ucla.edu>
12922
12923         * MODULES.html.sh (Support for systems lacking ISO C 99): Add snprintf.
12924
12925 2004-09-29  Oskar Liljeblad  <oskar@osk.mine.nu>
12926
12927         * lib/xvasprintf.c: Include xalloc.h.
12928         (xvasprintf): Use xalloc_die, not xmalloc_die.
12929
12930 2004-09-29  Bruno Haible  <bruno@clisp.org>
12931
12932         * modules/alloca-opt: New file, derived from modules/alloca.
12933         * modules/allocsa: Depend on alloca-opt instead of alloca.
12934         * modules/setenv: Likewise.
12935         * modules/vasnprintf: Likewise.
12936         * MODULES.html.sh: Add alloca-opt.
12937
12938 2004-09-28  Simon Josefsson  <jas@extundo.com>
12939
12940         * gnulib-tool: New parameter --lgpl, to asseert that modules are
12941         LGPL, and to replace license template from GPL to LGPL.
12942
12943 2004-09-28  Paul Eggert  <eggert@cs.ucla.edu>
12944
12945         * modules/dummy: Change license to LGPL.
12946
12947 2004-09-28  Paul Eggert  <eggert@cs.ucla.edu>
12948
12949         * lib/dummy.c: Change copyright notice to FSF, and license to GPL.
12950
12951 2004-09-24  Simon Josefsson  <jas@extundo.com>
12952
12953         * modules/minmax (License): Change from GPL to LGPL.
12954
12955 2004-09-23  Simon Josefsson  <jas@extundo.com>
12956
12957         * gnulib-tool (--import): Typo.
12958
12959 2004-09-23  Simon Josefsson  <jas@extundo.com>
12960
12961         * gnulib-tool (--import): Make sure *.m4 end up in m4/ by default.
12962
12963 2004-09-22  Bruno Haible  <bruno@clisp.org>
12964
12965         * modules/*: Add 'License' field.
12966         * gnulib-tool: Accept --extract-license option.
12967         (func_get_license): New function.
12968
12969 2004-09-21  Bruno Haible  <bruno@clisp.org>
12970
12971         * modules/vasnprintf (Files): Add m4/stdint_h.m4, m4/inttypes_h.m4.
12972         Reported by Simon Josefsson.
12973
12974 2004-09-20  Paul Eggert  <eggert@cs.ucla.edu>
12975
12976         * modules/inttostr (Files): Add m4/longlong.m4, since it uses
12977         gl_AC_TYPE_LONG_LONG.
12978
12979 2004-09-20  Paul Eggert  <eggert@cs.ucla.edu>
12980
12981         * config/srclist.txt: Add getsubopt.c, since libc bought our changes.
12982
12983 2004-09-18  Simon Josefsson  <jas@extundo.com>
12984         and  Paul Eggert  <eggert@cs.ucla.edu>
12985
12986         * gnulib-tool: Replace various ad-hoc automake/autoconf/aclocal
12987         calls with autoreconf.  Define GL_LIB.
12988
12989 2004-09-14  Karl Berry  <karl@gnu.org>
12990
12991         * config/srclist.txt: unsync setenv.c, sigh.
12992
12993 2004-09-13  Paul Eggert  <eggert@cs.ucla.edu>
12994
12995         * lib/argp-pvh.c (argp_program_version_hook): Provide initial value.
12996         Problem reported by Bruno Haible in:
12997         http://lists.gnu.org/archive/html/bug-tar/2004-09/msg00023.html
12998
12999 2004-09-13  Paul Eggert  <eggert@cs.ucla.edu>
13000
13001         * config/srclist.txt: Comment out argp-pvh.c.
13002
13003 2004-09-11  Paul Eggert  <eggert@cs.ucla.edu>
13004
13005         * lib/mempcpy.h: Wrap the entire include file inside #ifndef mempcpy,
13006         in case some system header has #define'd it.  Problem reported by
13007         Soeren D. Schulze in
13008         <http://lists.gnu.org/archive/html/bug-gnulib/2004-09/msg00017.html>.
13009
13010 2004-09-09  Karl Berry  <karl@gnu.org>
13011
13012         * regex.[ch]: delete from the root.  These were supposed to be
13013                 synced with emacs cvs, but this has not happened for about
13014                 a year, and anyway nothing else uses emacs regex.[ch].
13015                 bug-gnulib mail from Jeff Bailey, 9 Sep 2004 15:49:24 -0700.
13016                 lib/regex[.ch] is untouched.
13017
13018 2004-09-09  Bruno Haible  <bruno@clisp.org>
13019
13020         * modules/vasnprintf (Files): Add m4/eoverflow.m4.
13021
13022 2004-09-09  Bruno Haible  <bruno@clisp.org>
13023
13024         * m4/eoverflow.m4: New file, taken from GNU libiconv eilseq.m4 with
13025         modifications.
13026         * m4/vasnprintf.m4 (gl_FUNC_VASNPRINTF): Require gl_EOVERFLOW.
13027
13028 2004-09-08  Oskar Liljeblad  <oskar@osk.mine.nu>
13029
13030         * modules/xvasprintf: New file.
13031         * MODULES.html.sh (Extra functions based on ANSI C 89): Add vasprintf.
13032
13033 2004-09-08  Oskar Liljeblad  <oskar@osk.mine.nu>
13034
13035         * lib/xvasprintf.h: New file.
13036         * lib/xvasprintf.c: New file.
13037         * lib/xasprintf.c: New file.
13038
13039 2004-09-08  Bruno Haible  <bruno@clisp.org>
13040
13041         * m4/stdint.m4: New file, taken from GNU clisp with modifications.
13042
13043 2004-09-08  Bruno Haible  <bruno@clisp.org>
13044
13045         * lib/vasnprintf.c (VASNPRINTF): Signal EOVERFLOW if the resulting
13046         length is > INT_MAX.
13047         * lib/vasprintf.c (vasprintf): Don't test for length > INT_MAX any
13048         more.
13049
13050 2004-09-08  Bruno Haible  <bruno@clisp.org>
13051
13052         * lib/stdint_.h: New file, taken from GNU clisp.
13053
13054 2004-09-08  Bruno Haible  <bruno@clisp.org>
13055             Oskar Liljeblad  <oskar@osk.mine.nu>
13056
13057         * modules/stdint: New file.
13058         * MODULES.html.sh (Support for systems lacking ISO C 99): Add stdint.
13059
13060 2004-08-19  Paul Eggert  <eggert@cs.ucla.edu>
13061
13062         Import from coreutils.
13063         * lib/userspec.c: Don't use <alloca.h>, so that we don't use alloca on
13064         strings on unbounded length.  alloca's performance benefits aren't
13065         that important here.
13066         (V_STRDUP): Remove.
13067         (parse_with_separator): New function, with most of the internals
13068         of the old parse_user_spec.  Allow user to omit both user and group,
13069         for compatibility with FreeBSD.
13070         Clone only the user name, not the entire spec.
13071         Do not set *uid, *gid unless entirely successful.
13072         Avoid memory leak in some failing cases.
13073         Fix regression for USER.GROUP reported by Dmitry V. Levin in
13074         <http://lists.gnu.org/archive/html/bug-coreutils/2004-08/msg00102.html>
13075         (parse_user_spec): Rewrite to use parse_with_separator.
13076
13077 2004-08-19  Paul Eggert  <eggert@cs.ucla.edu>
13078
13079         * modules/userspec: Don't depend on alloca.
13080
13081 2004-08-19  Paul Eggert  <eggert@cs.ucla.edu>
13082
13083         * m4/userspec.m4 (gl_USERSPEC): Don't require AC_FUNC_ALLOCA.
13084
13085 2004-08-17  Paul Eggert  <eggert@cs.ucla.edu>
13086
13087         * MODULES.html.sh: Add xalloc-die, c-strtod, c-strtold, raise,
13088         readtokens0, getcwd, fcntl-safer, canonicalize, cycle-check,
13089         utimecmp, utimens, xnanosleep.  Rename sha to sha1.
13090
13091 2004-08-16  Simon Josefsson  <jas@extundo.com>
13092
13093         * gnulib-tool: Use sed instead of autoconf --trace, inspired by
13094         libtoolize behaviour by "Gary V. Vaughan" <gary@gnu.org>.
13095         Add --dry-run for --import.
13096         Let user provided command line parameters override configure.ac
13097         settings.
13098
13099 2004-08-12  Simon Josefsson  <jas@extundo.com>
13100
13101         * m4/getopt.m4 (gl_GETOPT_SUBSTITUTE): New macro,
13102         as discussed with Paul Eggert in threads rooted at
13103         <http://lists.gnu.org/archive/html/bug-gnulib/2004-06/msg00039.html>
13104         and
13105         <http://lists.gnu.org/archive/html/bug-gnulib/2004-07/msg00001.html>.
13106         Before, the test was empty, and relied on ELIDE_CODE in source
13107         code.)
13108         (gl_PREREQ_GETOPT): New macro.
13109         (gl_GETOPT): Use them.
13110
13111 2004-08-12  Simon Josefsson  <jas@extundo.com>
13112
13113         * lib/getopt.c, getopt1.c: Remove ELIDE_CODE hack.
13114         * lib/getopt_.h: Renamed from getopt.h.
13115
13116 2004-08-12  Simon Josefsson  <jas@extundo.com>
13117
13118         * gnulib-tool: Add --source-base, --m4-base, --libtool options.
13119         Change default library name from libfoo to libgnu.
13120         Now, if you have a configure.ac that says:
13121                 gl_SOURCE_BASE(gl)
13122                 gl_M4_BASE(gl/m4)
13123                 gl_MODULES(error getopt etcetera)
13124                 gl_INIT
13125         you can import all you need by running:
13126                 ../gnulib/gnulib-tool --import
13127
13128         * modules/getopt (Files): Rename getopt.h to getopt_.h.
13129         (Makefile.am): Rewrite, use logic from argz.
13130         (Include): Use <getopt.h> instead of "getopt.h".
13131
13132 2004-08-12  Paul Eggert  <eggert@cs.ucla.edu>
13133
13134         * modules/argp (Files): Add m4/unlocked-io.m4.
13135         (Depends-on): Add extensions.
13136
13137 2004-08-12  Paul Eggert  <eggert@cs.ucla.edu>
13138
13139         * m4/argp.m4 (gl_ARGP): Do not check for argp.h or argp_parse; nobody
13140         uses HAVE_ARGP_H or HAVE_ARGP_PARSE.
13141         Require gl_FUNC_GLIBC_UNLOCKED_IO, gl_USE_SYSTEM_EXTENSIONS.
13142         Check for program_invocation_name, program_invocation_short_name,
13143         flockfile, funlockfile, features.h, _getopt_long_only_r.
13144
13145 2004-08-12  Paul Eggert  <eggert@cs.ucla.edu>
13146
13147         * lib/argp-help.c, argp-parse.c: Use "gettext.h" instead of
13148         its complicated substitute.
13149         * lib/argp-help.c: Include <errno.h>, for program_invocation_short_name
13150         and program_invocation_name.
13151         (__argp_basename) [!_LIBC]: Remove; the only use was
13152         replaced by its body.
13153         (__argp_short_program_name): Change condition from
13154         !defined __argp_short_program_name to
13155         ! (defined _LIBC || HAVE_DECL_PROGRAM_INVOCATION_SHORT_NAME),
13156         to match argp-namefrob.h.
13157         (__argp_failure): Don't assume strerror_r returns char *.
13158         * lib/argp-parse.c (N_): Define unconditionally.
13159         (argp_default_options): Fill out initializers with 0 to avoid
13160         gcc warnings.
13161
13162 2004-08-12  Paul Eggert  <eggert@cs.ucla.edu>
13163
13164         * config/srclist.txt: Remove getopt.c, getopt.h (renamed to getopt_.h),
13165         getopt1.c.
13166
13167 2004-08-11  Paul Eggert  <eggert@cs.ucla.edu>
13168
13169         Merge from coreutils.
13170
13171         * m4/fnmatch.m4 (_AC_LIBOBJ_FNMATCH): Check for wmemchr and wmemcpy.
13172
13173         * m4/obstack.m4 (gl_PREREQ_OBSTACK): Require
13174         gl_AC_HEADER_INTTYPES_H, gl_AC_HEADER_STDINT_H, gl_AC_TYPE_UINTMAX_T.
13175
13176 2004-08-11  Paul Eggert  <eggert@cs.ucla.edu>
13177
13178         Merge from coreutils.
13179
13180         * lib/fnmatch.c (WIDE_CHAR_SUPPORT): Don't set to 1 if missing
13181         wmemchr or wmemcpy.  Problem reported by Robert Dahlem
13182         for Reliant Unix 5.43.
13183
13184         * lib/obstack.c: Include <inttypes.h> and <stdint.h> if available.
13185         (union fooround): Use uintmax_t, not long int.
13186         The rest is a merge from libc:
13187         [defined _LIBC]: Include <shlib-compat.h>.
13188         (_obstack) [defined _LIBC]: Remove after 2.3.4.
13189
13190         * lib/settime.c (settime): Recode to avoid warning with
13191         Sun Forte C 6U2.
13192
13193         * lib/strverscmp.c: Convert to UTF-8.
13194
13195 2004-08-11  Paul Eggert  <eggert@cs.ucla.edu>
13196
13197         * modules/obstack (Files): Add m4/inttypes_h.m4, m4/stdint_h.m4,
13198         m4/uintmax_t.m4.
13199
13200 2004-08-09  Paul Eggert  <eggert@cs.ucla.edu>
13201
13202         * modules/xalloc-die: New file.
13203         * modules/xalloc: Remove dependencies on error, gettext, exitfail.
13204
13205         * modules/md5 (Files): Add m4/uint32_t.m4.
13206         * modules/sha1: Renamed from modules/sha.
13207         (Files):
13208         Rename lib/sha.h to lib/sha1.h.
13209         Rename lib/sha.c to lib/sha1.c.
13210         Rename m4/sha.m4 to m4/sha1.m4.
13211         (lib_SOURCES): Likewise.
13212         (configure.ac): Rename gl_SHA to gl_SHA1.
13213         (Include): sha.h -> sha1.h.
13214
13215 2004-08-09  Paul Eggert  <eggert@cs.ucla.edu>
13216
13217         * m4/uint32_t.m4, uintptr_t.m4: New files.
13218         * m4/sha1.m4: Renamed from sha.m4.
13219         (gl_SHA1): Renamed from gl_SHA.  All uses changed.
13220
13221 2004-08-09  Paul Eggert  <eggert@cs.ucla.edu>
13222
13223         * lib/obstack.h (obstack_empty_p):
13224         Don't assume that chunk->contents is suitably aligned.
13225         * lib/obstack.c (_obstack_begin, _obstack_begin_1, _obstack_newchunk):
13226         Likewise. Problem reported by Benno in
13227         <http://sources.redhat.com/ml/libc-alpha/2004-08/msg00055.html>.
13228
13229         * lib/chown.c (rpl_chown): Work even if the file is writeable but not
13230         readable.  This could be improved further but it'd take some work.
13231
13232 2004-08-08  Simon Josefsson  <jas@extundo.com>
13233
13234         * modules/xgethostname (Depends-on): Remove exit and error (not
13235         used).
13236
13237         * modules/getpass-gnu: Add getpass.h.
13238         (Depends-on): Add stdbool.
13239         * modules/getpass: Add getpass.h.
13240
13241 2004-08-08  Simon Josefsson  <jas@extundo.com>
13242
13243         * m4/getpass.m4 (gl_FUNC_GETPASS, gl_FUNC_GETPASS_GNU):
13244         Check getpass declaration.
13245
13246 2004-08-08  Simon Josefsson  <jas@extundo.com>
13247
13248         * lib/xgethostname.c: Don't include error.h (not used).
13249
13250         * lib/getpass.h: Add.
13251         * lib/getpass.c: Include getpass.h first.
13252
13253 2004-08-08  Paul Eggert  <eggert@cs.ucla.edu>
13254
13255         * lib/xalloc-die.c: New files.
13256         * lib/xalloc.h (xalloc_fail_func, xalloc_msg_memory_exhausted): Remove.
13257         All uses removed.
13258         * lib/xmalloc.c (xalloc_fail_func, xalloc_msg_memory_exhausted):
13259         Likewise. Move inclusions of gettext.h, error.h, exitfail.h to
13260         xalloc-die.c.
13261         (_, N_, xalloc_die): Move to xalloc-die.c.
13262         * lib/userspec.c (parse_user_spaec): Use xstrdup rather than strdup,
13263         so that we needn't mess with xalloc_msg_memory_exhausted.
13264
13265         * lib/sha1.h: Renamed from sha.h.
13266         (SHA1_H): Renamed from _SHA_H.
13267         (sha1_ctx): Renamed from sha_ctx.
13268         (sha1_init_ctx): Renamed from sha_init_ctx.
13269         (sha1_process_block): Renamed from sha_process_block.
13270         (sha1_process_bytes): Renamed from sha_process_bytes.
13271         (sha1_finish_ctx): Renamed from sha_finish_ctx.
13272         (sha1_read_ctx): Renamed from sha_read_ctx.
13273         (sha1_stream): Renamed from sha_stream.
13274         (sha1_buffer): Renamed from sha_buffer.
13275         * lib/sha1.c: Likewise; renamed from sha.c.
13276         Do not include <sys/types.h>.
13277         Include <stddef.h> rather than <stdlib.h>.
13278
13279 2004-08-08  Bruno Haible  <bruno@clisp.org>
13280
13281         * lib/pathname.h (FILE_SYSTEM_PREFIX_LEN): Renamed from
13282         FILESYSTEM_PREFIX_LEN.
13283         * lib/progreloc.c: Likewise.
13284         * lib/concatpath.c (concatenated_pathname): Use FILE_SYSTEM_PREFIX_LEN.
13285
13286 2004-08-06  Simon Josefsson  <jas@extundo.com>
13287
13288         * modules/progname (Depends-on): Don't depend on stdbool.
13289
13290 2004-08-06  Simon Josefsson  <jas@extundo.com>
13291
13292         * modules/getsubopt: New file.
13293         * MODULES.html.sh (Support for systems lacking POSIX:2001): Add
13294         getsubopt.
13295
13296 2004-08-06  Paul Eggert  <eggert@cs.ucla.edu>
13297
13298         More merge from coreutils.
13299
13300         * m4/utimens.m4, utimecmp.m4: New files.
13301         * m4/backupfile.m4, euidacces.m4, acl.m4, afs.m4, calloc.m4, dirfd.m4,
13302         fsusage.m4, jm-macros.m4, ls-mntd-fs.m4, md5.m4, mountlist.m4,
13303         prereq.m4, sha.m4: Import changes from coreutils.
13304
13305 2004-08-06  Paul Eggert  <eggert@cs.ucla.edu>
13306
13307         More merge from coreutils.
13308         * modules/raise, modules/readtokens0, modules/utimens,
13309         modules/utimecmp, module/xnanosleep: New files.
13310         * modules/strftime: Add lib/strftime.h.
13311         Change include from <time.h> to "strftime.h".
13312         * modules/yesno: Add lib/yesno.h.
13313         * modules/backupfile: Remove lib/addext.c.
13314         * modules/euidaccess: Add stat-macros.h.
13315         * modules/canonicalize, modules/euidaccess,
13316         modules/filemode, modules/lchown, modules/makepath,
13317         modules/rmdir, modules/stat: Likewise.
13318
13319 2004-08-06  Paul Eggert  <eggert@cs.ucla.edu>
13320
13321         Merge from tar.
13322         * lib/argp-help.c (make_hol, hol_append): Don't assume that
13323         SIZE_MAX is a valid preprocessor constant.
13324         (__argp_basename): Change from "#ifndef _LIBC"
13325         to "#ifndef __argp_short_program_name", so that
13326         we don't compile these functions for tar.
13327
13328         More merges from coreutils.
13329         * lib/raise.c, lib/readtokens0.h, lib/readtokens0.c, lib/strftime.h,
13330         lib/utimens.h, lib/utimens.c, lib/utimecmp.h, lib/utimecmp.c,
13331         lib/xnanosleep.h, lib/xnanosleep.c, lib/yesno.h: New files.
13332         * lib/addext.c: Remove; no longer needed.
13333         * lib/yesno.c, lib/argmatch.h, lib/argmatch.c, lib/backupfile.h,
13334         lib/backupfile.c, lib/euidaccess.c, lib/filemode.c, lib/closeout.c,
13335         lib/dup2.c, lib/exclude.c, lib/fileblocks.c, lib/filemode.c,
13336         lib/fnmatch.c, lib/fnmtahc_loop.c, lib/fopen-safer.c, lib/fsusage.c,
13337         lib/fsusage.h, lib/ftruncate.c, lib/full-write.c, lib/getdate.y,
13338         lib/getloadavg.c, lib/getugroups.c, lib/hard-locale.c,
13339         lib/hard-locale.h, lib/hash.c, lib/human.c, lib/human.h, lib/lchown.c,
13340         lib/lchown.h, lib/makepath.c, lib/makepath.h, lib/md5.c, lib/md5.h,
13341         lib/memchr.c, lib/memcoll.c, lib/memrchr.c, lib/modechange.c,
13342         lib/modechange.h, lib/mountlist.c, lib/mountlist.h, lib/nanosleep.c,
13343         lib/posixtm.c, lib/putenv.c, quotearg.c, lib/quotearg.h,
13344         lib/readtokens.c, lib/readutmp.c, lib/readutmp.h, lib/rmdir.c,
13345         lib/safe-read.c, lib/save-cwd.c, lib/savedir.c, lib/setenv.c,
13346         lib/sig2str.c, lib/stat.c, lib/strtoimax.c, lib/strverscmp.c,
13347         lib/userspec.c, lib/utime.c, lib/version-etc.c., lib/xgethostname.c,
13348         lib/xmemcoll.c, lib/xreadlink.c, lib/xstrtod.c, lib/xstrtod.h,
13349         lib/xstrtoimax.c, lib/xstrtol.c, lib/xstrtol.h, lib/xstrtoumax.c:
13350         Import changes from coreutils.
13351
13352 2004-08-05  Simon Josefsson  <jas@extundo.com>
13353
13354         * m4/strdup.m4: Always run gl_PREREQ_STRDUP, since strdup.h need it.
13355
13356 2004-08-05  Simon Josefsson  <jas@extundo.com>
13357
13358         * m4/getsubopt.m4: New file.
13359
13360 2004-08-05  Paul Eggert  <eggert@cs.ucla.edu>
13361
13362         Merge from coreutils.
13363
13364         * m4/c-strtod.m4, canonicalize.m4, fcntl-safer.m4, getcwd-path-max.m4:
13365         New files.
13366
13367         * m4/dos.m4 (gl_AC_DOS): filesystem -> file system renaming.
13368         FILESYSTEM_PREFIX_LEN ->
13369         FILE_SYSTEM_PREFIX_LEN.
13370         FILESYSTEM_ACCEPTS_DRIVE_LETTER_PREFIX ->
13371         FILE_SYSTEM_ACCEPTS_DRIVE_LETTER_PREFIX.
13372         FILESYSTEM_BACKSLASH_IS_FILE_NAME_SEPARATOR ->
13373         FILE_SYSTEM_BACKSLASH_IS_FILE_NAME_SEPARATOR.
13374
13375         * m4/path-concat.m4 (gl_PATH_CONCAT): Don't require gl_AC_DOS, the
13376         prerequisite modules now handle the DOS stuff.
13377         Don't check for unistd.h.
13378
13379 2004-08-05  Paul Eggert  <eggert@cs.ucla.edu>
13380
13381         Merge from coreutils.
13382
13383         * lib/.gdb-history: Remove; this doesn't belong here.
13384
13385         * lib/c-strtod.c, c-strtod.h, c-strtold.c, cycle-check.c,
13386         cycle-check.h, dev-ino.h, canonicalize.h, canonicalize.c,
13387         fcntl-safer.h, fcntl-safer.c, getcwd.c: New files.
13388
13389         * lib/dirname.h: Include <stdbool.h>.
13390         (FILE_SYSTEM_PREFIX_LEN): Renamed from FILESYSTEM_PREFIX_LEN,
13391         for consistency with POSIX terminology.  All uses changed.
13392         (IS_ABSOLUTE_FILE_NAME, IS_RELATIVE_FILE_NAME): New macros.
13393         (strip_trailing_slashes): Use bool for booleans.
13394         * lib/stripslash.c (strip_trailing_slashes): Likewise.
13395
13396         * lib/error.c: Work around bug in OpenBSD 3.4 sterror_r: it
13397         sometimes returns a positive errno value even when it succeeds.
13398         (print_errno_message) [!LIBC]: Fall back on strerror if
13399         __strerror_r fails.
13400
13401         * lib/path-concat.c (mempcpy): Don't define if a system header defines
13402         it. Don't include stdio.h, stdlib.h, unistd.h, strdup.h.
13403         (longest_relative_suffix): New function.
13404         (path_concat): Use it.  Assume first argument is not NULL.
13405         Port to DOS.  Omit redundant separators.
13406         Report an error instead of returning NULL.
13407         Use mempcpy instead of memcpy.
13408         (xpath_concat): Remove: not declared or used.
13409
13410         * lib/same.h: Include <stdbool.h>
13411         (same_name): Return bool, not int.
13412         * lib/same.c (same_name): Likewise.
13413         (errno): Don't declare; we assume C89 or better now.
13414
13415         * lib/stat-macros (S_ISCTG, S_ISOFD, S_ISOFL): New macros,
13416         if not already defined.
13417
13418         * lib/xgetcwd.c (errno): Don't declare; we assume C89 or better now.
13419         * lib/dup-safer.c (errno): Likewise.
13420
13421 2004-08-05  Paul Eggert  <eggert@cs.ucla.edu>
13422
13423         Merge from coreutils.
13424         * modules/c-strtod, modules/c-strtold, modules/canonicalize,
13425         modules/cycle-check, modules/fcntl-safer, modules/getcwd: New files.
13426         * modules/path-concat: Don't depend on strdup.
13427
13428 2004-08-03  Simon Josefsson  <jas@extundo.com>
13429
13430         * lib/strdup.h: Only use HAVE_DECL_STRDUP if defined.
13431         * lib/progname.h: Don't include stdbool.h.
13432
13433 2004-08-03  Paul Eggert  <eggert@cs.ucla.edu>
13434
13435         * modules/fatal: Remove, as the "fatal" module wasn't used or working.
13436         * MODULES.html.sh (func_all_modules): Remove fatal.
13437
13438 2004-08-03  Paul Eggert  <eggert@cs.ucla.edu>
13439
13440         * m4/fatal.m4: Remove, as the "fatal" module wasn't used or working.
13441
13442 2004-08-03  Paul Eggert  <eggert@cs.ucla.edu>
13443
13444         * lib/fatal.c, fatal.h: Remove as the "fatal" module wasn't used or
13445         working.
13446
13447 2004-08-02  Simon Josefsson  <jas@extundo.com>
13448
13449         * lib/getsubopt.h: New file, with comments from Bruno Haible.
13450         * lib/getsubopt.c: New file, from glibc, but slightly modified based on
13451         suggestions from Paul Eggert <eggert@cs.ucla.edu>.
13452
13453 2004-08-01  Simon Josefsson  <jas@extundo.com>
13454
13455         * lib/xgetdomainname.c: Include stdlib.h, for free().
13456
13457 2004-07-19  Bruno Haible  <bruno@clisp.org>
13458
13459         * MODULES.html.sh (func_all_modules): Add dummy.
13460
13461 2004-07-16  Simon Josefsson  <jas@extundo.com>
13462
13463         * modules/dummy: New file.
13464
13465 2004-07-16  Simon Josefsson  <jas@extundo.com>
13466
13467         * lib/dummy.c: New file.
13468
13469 2004-07-16  Bruno Haible  <bruno@clisp.org>
13470
13471         * lib/backupfile.h: Add extern "C" for C++.
13472         * lib/closeout.h: Likewise.
13473         * lib/copy-file.h: Likewise.
13474         * lib/findprog.h: Likewise.
13475         * lib/full-write.h: Likewise.
13476         * lib/pathname.h: Likewise.
13477         * lib/progname.h: Likewise.
13478         * lib/stpcpy.h: Likewise.
13479         * lib/stpncpy.h: Likewise.
13480         * lib/strcase.h: Likewise.
13481         * lib/strstr.h: Likewise.
13482         * lib/xalloc.h: Likewise.
13483
13484         * lib/mbswidth.h: Add extern "C" for C++.
13485         Reported by Albert Chin-A-Young <china@thewrittenword.com>.
13486
13487 2004-07-13  Robert Millan  <robertmh@gnu.org>
13488
13489         * m4/host-os.m4: s/KNetBSD/kNetBSD/g and s/KFreeBSD/kFreeBSD/g.
13490
13491 2004-07-09  Simon Josefsson  <jas@extundo.com>
13492
13493         * lib/getndelim2.c: Include stddef.h, for ptrdiff_t.  (FreeBSD 4.9
13494         failed without this.)
13495
13496 2004-07-09  Paul Eggert  <eggert@cs.ucla.edu>
13497
13498         * modules/chown (Files): Add lib/fchown-stub.c, since
13499         gl_PREREQ_CHOWN invokes AC_LIBOBJ(fchown-stub).
13500
13501 2004-07-09  Paul Eggert  <eggert@cs.ucla.edu>
13502
13503         * lib/fchown-stub.c: New file.
13504
13505 2004-06-24  Jim Meyering  <jim@meyering.net>
13506
13507         * lib/obstack.h (obstack_base): Cast to (void *), per documentation.
13508
13509 2004-06-22  Paul Eggert  <eggert@cs.ucla.edu>
13510
13511         * modules/argz: Omit "#include".
13512
13513         * MODULES.html.sh (func_all_modules): Add calloc, to match
13514         2004-06-01 addition of calloc module.
13515
13516 2004-06-22  Paul Eggert  <eggert@cs.ucla.edu>
13517
13518         * m4/argz.m4: New file, which is autoupdated from libtool.
13519
13520 2004-06-22  Paul Eggert  <eggert@cs.ucla.edu>
13521
13522         * lib/argz.c, argz_.h: New files, which are autoupdated from libtool.
13523
13524 2004-06-22  Paul Eggert  <eggert@cs.ucla.edu>
13525
13526         * config/srclist-update: Don't insist on "USA." before the
13527         close-comment, as libtool omits the period and puts the */ on a
13528         separate line.
13529         * config/srclist.txt: Add argz.c, argz_.h, argz.m4.
13530         * config/srclistvars.sh: Add LIBTOOL (for eggert only).
13531
13532 2004-06-22  Gary V. Vaughan  <gary@gnu.org>
13533
13534         * modules/argz: New file.
13535         * MODULES.html.sh (func_all_modules): Add argz.
13536
13537 2004-06-12  Jim Meyering  <jim@meyering.net>
13538         and  Paul Eggert  <eggert@cs.ucla.edu>
13539
13540         * modules/hash (Files): Add lib/xalloc.h.
13541         * modules/pipe (Depends-on): Add wait-process.
13542         * modules/stat (Depends-on): Add xalloc.
13543         * modules/userspec (Files): Add lib/userspec.h.
13544         * modules/xstrto
13545
13546         Upgrade from gettext-0.13.
13547         * modules/gettext (Files): Add m4/intmax.m4, m4/longdouble.m4,
13548         m4/longlong.m4, m4/printf-posix.m4, m4/signed.m4, m4/size_max.m4,
13549         m4/wchar_t.m4, m4/wint_t.m4, m4/xsize.m4.
13550
13551 2004-06-10  Jim Meyering  <jim@meyering.net>
13552
13553         * lib/calloc.c: New file.
13554
13555 2004-06-06  Paul Eggert  <eggert@cs.ucla.edu>
13556
13557         * lib/getdate.y (yylex): Allow space between sign and number.
13558         Problem reported by Dan Jacobson.
13559
13560 2004-06-01  Paul Eggert  <eggert@cs.ucla.edu>
13561
13562         Merge from coreutils CVS.
13563
13564         * m4/backupfile.m4, dirname.m4, human.m4, inttypes.m4, longlong.m4,
13565         makepath.m4, memchr.m4, memcmp.m4, mountlist.m4, path-concat.m4,
13566         putenv.m4, quotearg.m4, readutmp.m4, strtoimax.m4, strtoll.m4,
13567         strtoull.m4, strtoumax.m4, ulonglong.m4, vasnprintf.m4,
13568         xstrtol.m4: Fix copyright date and/or serial number.
13569
13570         * m4/chown.m4 (gl_PREREQ_CHOWN): Check for fcntl.h.
13571         See if we need an fchown replacement.
13572         (gl_FUNC_CHOWN_FOLLOWS_SYMLINK): New macro.
13573         (gl_FUNC_CHOWN): Require gl_FUNC_CHOWN_FOLLOWS_SYMLINK,
13574         and use the replacement function if we detect either defect.
13575
13576         * m4/prereq.m4 (gl_PREREQ): Add gl_ALLOCSA, gl_CLOEXEC, gl_INTTOSTR,
13577         gl_UTIMECMP.
13578
13579 2004-06-01  Paul Eggert  <eggert@cs.ucla.edu>
13580         and  Jim Meyering  <jim@meyering.net>
13581
13582         Merge from coreutils CVS.
13583
13584         * lib/stat-macros.h: New file, with contents from file-type.h
13585         and coreutils' system.h.
13586         * lib/file-type.c: Include "stat-macros.h".
13587         * lib/file-type.h (file_type): Move all macro definitions to new file,
13588         stat-macros.h.
13589
13590         * lib/chown.c (rpl_chown) [CHOWN_FAILS_TO_HONOR_ID_OF_NEGATIVE_ONE]:
13591         Wrap old code with this conditional.
13592         [CHOWN_MODIFIES_SYMLINK]: Try to work around a chown
13593         function that does not dereference symlinks.
13594         * lib/lchown.c (lchown) [CHOWN_MODIFIES_SYMLINK]: Just call chown.
13595
13596         * lib/xreadlink.c: Include xreadlink.h first, to catch .h file
13597         dependency problems.
13598         (xreadlink): Accept new arg SIZE, for efficiency.
13599         All decls and uses changed.
13600         * lib/xreadlink.h: Include <stddef.h>, for size_t.
13601
13602         * lib/.cppi-disable: Add alloca_.h, allocsa.h, exit.h, getndelim2.h,
13603         gettext.h, localcharset.h, strdup.h, strndup.h, strtoul.c, time_r.h.
13604
13605         * lib/.cvsignore: Add alloca.h, fnmatch.h, poll.h, stdbool.h,
13606         sysexits.h.
13607
13608 2004-06-01  Jim Meyering  <jim@meyering.net>
13609
13610         * m4/calloc.m4: New file.
13611
13612 2004-05-31  Paul Eggert  <eggert@cs.ucla.edu>
13613
13614         * m4/stdbool.m4 (AC_HEADER_STDBOOL): Detect _Bool bug in HP aC++/ANSI
13615         C B3910B A.05.55 [Dec 04 2003].  Problem reported by Jim Meyering.
13616         Also, fix a typo in a diagnostic.
13617
13618 2004-05-30  Paul Eggert  <eggert@cs.ucla.edu>
13619
13620         * m4/xalloc.m4 (gl_PREREQ_XMALLOC): Do not require AC_FUNC_MALLOC
13621         or AC_FUNC_REALLOC.
13622
13623 2004-05-30  Paul Eggert  <eggert@cs.ucla.edu>
13624
13625         * lib/xmalloc.c (HAVE_MALLOC, HAVE_REALLOC): Do not require these
13626         macros to be defined.
13627         (xnmalloc_inline, xnrealloc_inline, xcalloc): Do not die if
13628         the allocator returns NULL because the requested size is zero.
13629
13630 2004-05-20  Paul Eggert  <eggert@cs.ucla.edu>
13631
13632         * lib/malloc/obstack.c (_obstack) [defined _LIBC]: Bring back this
13633         var.  Add comment explaining why libc still defines it.  This
13634         merges the following patch from glibc:
13635         http://sources.redhat.com/ml/libc-alpha/2004-05/msg00157.html
13636
13637 2004-05-20  Andreas Schwab  <schwab@suse.de>
13638
13639         * m4/free.m4: Replace free if it not known to work, not the other
13640         way round.
13641
13642 2004-05-19  Paul Eggert  <eggert@cs.ucla.edu>
13643
13644         * lib/obstack.c (_obstack): Remove unused variable.  It hasn't been
13645         present in glibc since revision 1.1 of this file.
13646         * lib/obstack.h (_obstack_free, obstack_1grow, obstack_1grow_fast,
13647         obstack_alignment_mask, obstack_alloc, obstack_base,
13648         obstack_blank, obstack_blank_fast, obstack_chunk_size,
13649         obstack_copy, obstack_copy0, obstack_finish, obstack_grow,
13650         obstack_grow0, obstack_init, obstack_int_grow,
13651         obstack_int_grow_fast, obstack_make_room, obstack_memory_used,
13652         obstack_next_free, obstack_object_size, obstack_ptr_grow,
13653         obstack_ptr_grow_fast, obstack_room): Remove declarations of
13654         nonexistent functions.
13655
13656 2004-05-18  Karl Berry  <karl@gnu.org>
13657
13658         * config/srclist.txt: break link for vasnprintf.c.
13659
13660 2004-05-17  Paul Eggert  <eggert@cs.ucla.edu>
13661
13662         Port obstack to the AS/400, where pointers are 16 bytes wide and
13663         you cannot cast an integer to a valid pointer.  This patch is
13664         currently waiting to be integrated into glibc; see
13665         <http://sources.redhat.com/ml/libc-alpha/2004-05/msg00073.html>.
13666
13667         * lib/obstack.h (__PTR_TO_INT, __INT_TO_PTR): Remove.
13668         All uses of __INT_TO_PTR (PTR_TO_INT ...) replaced by __PTR_ALIGN.
13669         (__BPTR_ALIGN, __PTR_ALIGN): New macros.
13670         (struct obstack): temp member is now a union of a pointer and
13671         an integer, instead of an integer.  All integer uses changed.
13672         This does not affect the physical layout of struct obstack,
13673         except on hosts (like the AS/400) where the size or alignment of
13674         void * is greater than that of ptrdiff_t.
13675         (obstack_finish) [! (defined __GNUC__ && defined __STDC__ &&
13676         __STDC__)]: Store temporary in pointer member of union, not
13677         integer member.
13678         * lib/obstack.c: Include <stddef.h>, for offsetof.
13679         (struct fooalign): Remove; it doesn't need a name.
13680         (union fooround): Change double to long double, and add void *.
13681         (DEFAULT_ALIGNMENT): Use offsetof to compute.
13682         (DEFAULT_ALIGNMENT, DEFAULT_ROUNDING): Now an enum constant,
13683         not a macro.  Hence the values are always int; so remove all
13684         casts-to-int in uses.
13685
13686 2004-05-17  Paul Eggert  <eggert@cs.ucla.edu>
13687
13688         * config/srclist.txt: Break link for argp-help.c and argp-parse.c until
13689         we can get this patch merged into glibc.
13690
13691 2004-05-17  Derek R. Price  <derek@ximbiot.com>
13692             Paul Eggert  <eggert@cs.ucla.edu>
13693
13694         * m4/argp: Depend on alloca.
13695
13696 2004-05-17  Derek R. Price  <derek@ximbiot.com>
13697             Paul Eggert  <eggert@cs.ucla.edu>
13698
13699         * lib/argp-help.c, argp-parse.c: Assume <alloca.h> rather than
13700         freecoding.
13701
13702 2004-05-17  Bruno Haible  <bruno@clisp.org>
13703
13704         * lib/vasnprintf.c (VASNPRINTF): Correctly handle the case of a
13705         precision that consists of a '.' followed by an empty digit string.
13706         Patch by Tor Lillqvist <tml@iki.fi>.
13707
13708 2004-05-16  Paul Eggert  <eggert@cs.ucla.edu>
13709
13710         * m4/alloca.m4 (gl_FUNC_ALLOCA): Define HAVE_ALLOCA_H always,
13711         for backward compatibility with older code.  We need our own
13712         alloca.h if _AIX is defined.  Define HAVE_ALLOCA if we discover
13713         it under some other name, and our alloca.h will define it.
13714
13715 2004-05-16  Paul Eggert  <eggert@cs.ucla.edu>
13716             Derek Price  <derek@ximbiot.com>
13717
13718         * lib/alloca.c: Include <alloca.h>, to get our interface.
13719         * lib/alloca_.h: Use __alloca on AIX, so that we don't have to
13720         include <alloca.h> first.  Use C89 prototype for alloca; this
13721         requires including <stddef.h> for size_t.  Use extern "C" if C++.
13722         Use #elif for simplicity, since we can assume C89 now.
13723         Don't try to source the system alloca.h since it will not be found
13724         and to prevent recursively including its replacement.
13725         * lib/fnmatch.c: Include <alloca.h> instead of opencoding.
13726         * lib/regex.c: Likewise.
13727
13728 2004-05-16  Derek Price  <derek@ximbiot.com>
13729             Paul Eggert  <eggert@cs.ucla.edu>
13730
13731         getline cleanup.  This changes the getndelim2 API: both order of
13732         arguments, and meaning of delim2 (now uses EOF, not 0, to indicate
13733         no delimiter).
13734
13735         * lib/getline.c: Don't include stddef.h or stdio.h, since our
13736         interface does that.
13737         (getline): Always use getdelim, so that we don't have two
13738         copies of this code.
13739         * lib/getndelim2.c: Include <limits.h>, <inttypes.h>, <stdint.h>
13740         if available.
13741         (PTRDIFF_MAX, SIZE_MAX, SSIZE_MAX): Define if not defined.
13742         (GETNDELIM2_MAXIMUM): New macro.
13743         (getndelim2): Reorder arguments.  delim==EOF now means no delimiter,
13744         instead of the old practice of delim2==0.  All callers changed.
13745         Return -1 on overflow, instead of returning junk.
13746         Do not set *linesize unless allocation succeeds.
13747         * lib/getndelim2.h: Do not include stddef.h; no longer needed, now
13748         that we include sys/types.h.
13749         * lib/getnline.h: Likewise.
13750         * lib/getndelim2.h (GETNLINE_NO_LIMIT): New macro.
13751         (getndelim2): Reorder arguments.
13752         * lib/getnline.c (getnline, getndelim):
13753         Don't discard the NMAX argument.
13754         (getnline): Invoke getndelim, to avoid code duplication.
13755         * lib/getnline.h (GETNLINE_NO_LIMIT): New macro, used instead
13756         of (size_t) -1 by callers of the getnline family.
13757
13758 2004-05-13  Paul Eggert  <eggert@cs.ucla.edu>
13759
13760         * m4/gettime.m4 (gl_GETTIME): Require gl_TIMESPEC.
13761         Check for gettimeofday.
13762         * m4/settime.m4 (gl_SETTIME): Require gl_TIMESPEC.
13763         Check for settimeofday, stime.
13764
13765 2004-05-13  Paul Eggert  <eggert@cs.ucla.edu>
13766
13767         * lib/nanosleep.c (suspended): Change its type from int to
13768         sig_atomic_t volatile.
13769         (first_call): Make it private to rpl_nanosleep, and have it
13770         be zero initially as that's a bit faster.
13771         (my_usleep): Round up fractional times instead of truncating them,
13772         as this is the usual meaning for 'sleep'.
13773
13774         * lib/gettime.c (gettime): Fall back on `time' if `gettimeofday'
13775         doesn't work.
13776         * lib/settime.c: Include <unistd.h>, for stime (on Solaris 8, anyway).
13777         (ENOSYS): Define if not defined.
13778         (settime): Fall back on stime if it exists and settimeofday fails.
13779         But don't bother with fallbacks if a method fails with errno == EPERM.
13780
13781 2004-05-11  Jim Meyering  <jim@meyering.net>
13782
13783         Prior to this change, the save_cwd caller required read access to the
13784         current directory on most systems (ones with the fchdir function).
13785
13786         * lib/save-cwd.c (save_cwd) [HAVE_FCHDIR]: If opening `.' read-only
13787         fails, try write-only, and finally, resort to using xgetcwd.
13788
13789 2004-05-06  Paul Eggert  <eggert@cs.ucla.edu>
13790
13791         * lib/obstack.c, obstack.h: Import changes from libc.
13792
13793 2004-04-28  Bruno Haible  <bruno@clisp.org>
13794
13795         * lib/findprog.c (find_in_path): Treat Cygwin like Windows, since it
13796         also implicitly appends .exe to executables.
13797         * lib/localcharset.c (ISSLASH): Treat Cygwin like Windows, since it now
13798         accepts Windows pathnames.
13799         * lib/pathname.h (ISSLASH, IS_PATH_WITH_DIR, FILESYSTEM_PREFIX_LEN):
13800         Treat Cygwin like Windows, since it now accepts Windows pathnames.
13801         * lib/progreloc.c (ISSLASH, IS_PATH_WITH_DIR, FILESYSTEM_PREFIX_LEN):
13802         Treat Cygwin like Windows, since it now accepts Windows pathnames.
13803         Reported by Derek Robert Price <derek@ximbiot.com>.
13804
13805 2004-04-21  Karl Berry  <karl@gnu.org>
13806
13807         * config/srclist.txt (localcharset.c): break sync.
13808
13809 2004-04-20  Paul Eggert  <eggert@twinsun.com>
13810
13811         * m4/host-os.m4: Add a copyright notice.
13812
13813 2004-04-20  Jim Meyering  <jim@meyering.net>
13814
13815         Change UTILS_ to gl_ in AC_DEFINE'd names.
13816         Change utils_- and jm_-prefixed variables, too.
13817         * m4/mkdir-slash.m4 (gl_FUNC_MKDIR_TRAILING_SLASH): Renamed from
13818         UTILS_FUNC_MKDIR_TRAILING_SLASH.
13819         * m4/mkstemp.m4 (gl_FUNC_MKSTEMP): Renamed from UTILS_FUNC_MKSTEP.
13820
13821         * m4/dirfd.m4 (gl_FUNC_DIRFD): Rename from UTILS_FUNC_DIRFD.
13822         Don't emit trailing blanks.
13823         Also rename jm_-prefixed variables to have gl_ prefix.
13824
13825         * m4/host-os.m4 (gl_HOST_OS): Rename from UTILS_HOST_OS.
13826         Also rename jm_-prefixed variables to have gl_ prefix.
13827
13828         * m4/jm-macros.m4: Reflect the renamings.
13829         * m4/prereq.m4: Likewise.
13830
13831 2004-04-20  Jim Meyering  <jim@meyering.net>
13832
13833         * lib/getndelim2.c (getndelim2): Upon realloc failure, don't leak
13834         memory.
13835
13836 2004-04-20  Jim Meyering  <jim@meyering.net>
13837             Bruno Haible  <bruno@clisp.org>
13838
13839         * lib/localcharset.c (get_charset_aliases) [!VMS && !WIN32]: Don't leak
13840         memory when realloc fails.
13841
13842 2004-04-19  Jim Meyering  <jim@meyering.net>
13843
13844         * m4/readutmp.m4 (gl_PREREQ_READUTMP): Require gl_FUNC_FREE,
13845         now that readutmp.c may call `free (0)'.
13846
13847 2004-04-19  Bruno Haible  <bruno@clisp.org>
13848
13849         * m4/mbrtowc.m4: Change jm_ to gl_ in cache variables as well.
13850         * m4/inttypes_h.m4: Likewise.
13851         * m4/stdint_h.m4: Likewise.
13852         * m4/intmax_t.m4: Likewise.
13853         * m4/uintmax_t.m4: Likewise.
13854
13855 2004-04-18  Jim Meyering  <jim@meyering.net>
13856
13857         * m4/prereq.m4: Don't forbid jm_ prefix.
13858
13859         * m4/afs.m4, m4/allocsa.m4, m4/assert.m4, m4/backupfile.m4:
13860         * m4/bison.m4, m4/check-decl.m4, m4/chown.m4, m4/d-ino.m4:
13861         * m4/d-type.m4, m4/dirname.m4, m4/dos.m4, m4/error.m4, m4/fpending.m4:
13862         * m4/fstypename.m4, m4/fsusage.m4, m4/ftruncate.m4, m4/getdate.m4:
13863         * m4/getgroups.m4, m4/gettext.m4, m4/glibc21.m4, m4/group-member.m4:
13864         * m4/human.m4, m4/intmax.m4, m4/intmax_t.m4, m4/inttostr.m4:
13865         * m4/inttypes.m4, m4/inttypes_h.m4, m4/jm-macros.m4, m4/jm-winsz1.m4:
13866         * m4/jm-winsz2.m4, m4/lchown.m4, m4/lib-check.m4, m4/link-follow.m4:
13867         * m4/localcharset.m4, m4/longlong.m4, m4/ls-mntd-fs.m4, m4/lstat.m4:
13868         * m4/makepath.m4, m4/mbrtowc.m4, m4/mbswidth.m4, m4/memchr.m4:
13869         * m4/memcmp.m4, m4/mkdtemp.m4, m4/mkstemp.m4, m4/mountlist.m4:
13870         * m4/nanosleep.m4, m4/path-concat.m4, m4/perl.m4, m4/prereq.m4:
13871         * m4/putenv.m4, m4/quotearg.m4, m4/regex.m4, m4/stat.m4:
13872         * m4/stdint_h.m4, m4/strftime.m4, m4/strtoimax.m4, m4/strtoll.m4:
13873         * m4/strtoull.m4, m4/strtoumax.m4, m4/timespec.m4, m4/uintmax_t.m4:
13874         * m4/ulonglong.m4, m4/unlink-busy.m4, m4/unlocked-io.m4, m4/uptime.m4,
13875         * m4/utimbuf.m4, m4/utime.m4, m4/utimes-null.m4, m4/vasnprintf.m4:
13876         * m4/xstrtoimax.m4, m4/xstrtol.m4, m4/xstrtoumax.m4:
13877         Change jm_ to gl_ in AC_DEFINE'd names. Update all uses.
13878
13879 2004-04-18  Jim Meyering  <jim@meyering.net>
13880
13881         * lib/readutmp.c (read_utmp) [UTMP_NAME_FUNCTION]: Upon realloc
13882         failure, don't leak memory and do call END_UTMP_ENT.
13883
13884 2004-04-16  Jim Meyering  <jim@meyering.net>
13885
13886         * m4/prereq.m4 (jm_PREREQ_STAT): Remove macro.  It is specific to
13887         coreutils' stat program.
13888         (gl_PREREQ): Don't require jm_PREREQ_STAT.
13889
13890 2004-04-11  Paul Eggert  <eggert@twinsun.com>
13891
13892         * lib/inttostr.h: Include <limits.h> unconditionally, since we assume
13893         C89.
13894         (CHAR_BIT): Remove, since we assume C89.
13895         Include <stdint.h> if available, as per current Autoconf CVS advice.
13896
13897 2004-03-31  Jim Meyering  <jim@meyering.net>
13898
13899         * m4/prereq.m4: Require AC_FUNC_MALLOC, not jm_FUNC_MALLOC.
13900         Require AC_FUNC_REALLOC, not jm_FUNC_REALLOC.
13901         * m4/xalloc.m4: Likewise.
13902
13903 2004-03-30  Paul Eggert  <eggert@twinsun.com>
13904
13905         Merge from coreutils.
13906
13907         * m4/inttostr.m4: New file.
13908         * m4/getdate.m4 (gl_GETDATE): Remove time-related stuff.
13909         Require AM_STDBOOL_H and gl_TIMESPEC instead.
13910         Require gl_CLOCK_TIME.
13911         * m4/clock_time.m4 (gl_CLOCK_TIME): Require AC_GNU_SOURCE.
13912
13913 2004-03-30  Paul Eggert  <eggert@twinsun.com>
13914
13915         * lib/cloexec.h, cloexec.c (set_cloexec_flag): Return int
13916         not bool, to be more consistent with Unix conventions.
13917         Suggested by Bruno Haible.
13918
13919         Merge from coreutils.
13920
13921         * lib/imaxtostr.c, inttostr.c, inttostr.h, offtostr.c, umaxtostr.c:
13922         New files.
13923
13924         * lib/getdate.h: Include stdbool.h, and timespec.h instead of
13925         the usual <time.h> dance.
13926         (get_date): Change signature to support fractional time stamps.
13927         All callers changed.
13928         * lib/getdate.y: Include "getdate.h" first, as we can now
13929         assume C89 and don't need to worry about 'const'.
13930         Similarly, include "unlocked-io.h" near start, not in middle.
13931         Include <limits.h>.
13932         (textint.value): Use long int rather than int.
13933         (textint.digits): Use size_t rather than int.
13934         (BILLION, LOG10_BILLION): New constants.
13935         (parser_control): New member rel_ns.  Members day_ordinal,
13936         time_zone, month, day, hour, minutes, rel_year, rel_month,
13937         rel_day, rel_hour, rel_minutes, rel_seconds
13938         are now long int, not int.  Member seconds is now struct timespec,
13939         not int.  New member timespec_seen.  Members dates_seen, days_seen,
13940         local_zones_seen, rels_seen, times_seen, zones_seen are now size_t,
13941         not int.
13942         (%union.intval): Now long int, not int.
13943         New member timespec.
13944         (tSDECIMAL_NUMBER, tUDECIMAL_NUMBER): New tokens.
13945         (seconds, signed_seconds, unsigned_seconds): New nonterminals.
13946         (spec): Now is a timespec or an item list.
13947         (timespec, items): New nonterminals.
13948         (time, rel, relunit, number, get_date):
13949         Add support for fractional seconds.
13950         (time): Fix bug: seconds weren't cleared in "00:00 +0000" syntax.
13951         (gmtime, localtime, mktime): Remove decls; not needed with C89.
13952         (to_hour): First arg is now long int, not int.
13953         (to_year): Returns long int, not int.
13954         Don't treat year -70 like 70.
13955         (tm_diff): Returns long int, not int.
13956         (lookup_word): Use bool instead of int when appropriate.
13957         (yylex): Use size_t for count, not int.
13958         Detect overflow when parsing large integer constants.
13959         Add support for fractions.
13960         (get_date): Make pointers 'const' if possible.
13961         Use more-portable code to detect integer overflow.
13962         (main) [TEST]: Adjust to above changes.  Test for localtime failure.
13963         Don't use ctime; it's not reliable if the year has >4 digits.
13964
13965         * lib/human.c (humblock): Inspect BLOCKSIZE if BLOCK_SIZE isn't set.
13966         This is for compatibility with BSD.
13967
13968         * lib/timespec.h (ST_TIME_CMP_NS, ST_TIME_CMP): Define.
13969         (ATIME_CMP, CTIME_CMP, MTIME_CMP, TIMESPEC_NS): Likewise.
13970         From coreutils' system.h.
13971
13972         * lib/userspec.c: Don't include "posixver.h".
13973         (parse_user_spec): Fall back on USER.GROUP parsing, regardless
13974         of POSIX version, as POSIX 1003.1-2001 allows that behavior as a
13975         compatible extension.  Simplify code by removing a boolean int
13976         that was always nonzero if a string was nonnull.
13977
13978 2004-03-30  Jim Meyering  <jim@meyering.net>
13979
13980         Merge from coreutils.
13981
13982         Avoid a configure-time warning about sys/ucred.h on OSF V4.0.
13983         * m4/ls-mntd-fs.m4: Test for sys/ucred.h separately, since
13984         on some systems one must include <grp.h> before it.
13985         Reported by Christian Krackowizer.
13986
13987 2004-03-30  Jim Meyering  <jim@meyering.net>
13988
13989         Merge from coreutils.
13990
13991         * lib/mountlist.c [HAVE_SYS_UCRED_H]: Include grp.h before sys/ucred.h.
13992
13993         * lib/readtokens.c (readtoken): Don't leak 64 bytes when reading
13994         an empty input stream.
13995
13996         * lib/readtokens.c: Include <stdbool.h>.
13997         (readtoken): Use `size_t' rather than int/long.
13998         All callers adjusted.
13999         Use `bool' rather than `int' where appropriate.
14000         Use memset rather than an explicit loop.
14001         Use x2nrealloc rather than xrealloc.
14002         Allow the use of `\0' as a delimiter.
14003         (readtokens): Likewise.
14004         * lib/readtokens.h (readtoken, readtokens): Update prototypes.
14005
14006 2004-03-30  Jim Meyering  <jim@meyering.net>
14007
14008         * m4/realloc.m4: Remove file, since now it does no more than
14009         AC_REQUIRE([AC_FUNC_REALLOC]), and that can be done via
14010         the `configure.ac' section of module/realloc.
14011         * m4/malloc.m4: Likewise, but for AC_FUNC_MALLOC.
14012
14013 2004-03-30  Bruno Haible  <bruno@clisp.org>
14014
14015         * lib/getloadavg.c (getloadavg): Don't assume setlocale returns
14016         nonnull.
14017
14018 2004-03-29  Paul Eggert  <eggert@twinsun.com>
14019
14020         Merge changes to getloadavg.c from coreutils and Emacs.
14021
14022         * lib/getloadavg.c [!defined HAVE_SETLOCALE] (setlocale):
14023         Define to an expression, not to the empty string.
14024         Include cloexec.h and xalloc.h.
14025         (getloadavg): Restore LC_NUMERIC locale after setting it temporarily.
14026         Use set_cloexec_flag rather than rolling our own.
14027         * lib/cloexec.c, cloexec.h: New files.
14028
14029 2004-03-29  Paul Eggert  <eggert@twinsun.com>
14030
14031         * m4/cloexec.m4: New file.
14032
14033 2004-03-18  Paul Eggert  <eggert@twinsun.com>
14034
14035         * lib/getopt.h: Sync with libc CVS.
14036
14037 2004-03-18  Paul Eggert  <eggert@twinsun.com>
14038             Bruno Haible  <bruno@clisp.org>
14039
14040         * m4/mbswidth.m4 (gl_MBSWIDTH): Also test whether <wchar.h> declares
14041         mbswidth.
14042
14043 2004-03-18  Paul Eggert  <eggert@twinsun.com>
14044             Bruno Haible  <bruno@clisp.org>
14045
14046         * lib/mbswidth.h: Include <wchar.h> only if
14047         HAVE_DECL_MBSWIDTH_IN_WCHAR_H, not on all platforms that have
14048         <wchar.h>.
14049         * lib/mbswidth.c: Include <stdio.h> and <time.h> before <wchar.h>.
14050
14051 2004-03-09  Paul Eggert  <eggert@twinsun.com>
14052
14053         * lib/argp-parse.c, getopt.c, getopt.h, getopt1.c:
14054         Sync with libc CVS.
14055         * lib/getopt_int.h: New file, also synced from libc.
14056
14057 2004-03-09  Paul Eggert  <eggert@twinsun.com>
14058
14059         * config/srclistvars.sh: Add GNUWWWLICENSES for eggert.
14060         * config/srclist.txt: Sync getopt with libc.  Add getopt_int.h.
14061         Bring back getopt.c, getopt.h, getopt1.c.
14062
14063 2004-03-07  Paul Eggert  <eggert@twinsun.com>
14064
14065         * m4/c-stack.m4 (gl_PREREQ_C_STACK): Renamed from jm_PREREQ_C_STACK.
14066         All uses changed.  Check for sa_sigaction member; this fixes
14067         a bug first reported by Jason Andrade in
14068         <http://mail.gnu.org/archive/html/bug-textutils/2003-03/msg00027.html>.
14069
14070 2004-03-07  Paul Eggert  <eggert@twinsun.com>
14071
14072         * lib/c-stack.c (SIGACTION_WORKS): New macro.  Use it instead of long
14073         '#if' expressions.  Unlike the code it replaces, it does not
14074         depend on (defined _SC_PAGESIZE).  However, it does depend on
14075         HAVE_STRUCT_SIGACTION_SA_SIGACTION; this last change fixes a bug
14076         first reported by Jason Andrade in
14077         <http://mail.gnu.org/archive/html/bug-textutils/2003-03/msg00027.html>.
14078
14079 2004-02-25  Simon Josefsson  <jas@extundo.com>
14080
14081         * m4/strdup.m4 (gl_PREREQ_STRDUP): Check whether strdup is declared.
14082
14083 2004-02-25  Simon Josefsson  <jas@extundo.com>
14084
14085         * lib/strdup.h: New file.
14086         * lib/strdup.c: Include it.
14087         * lib/path-concat.c: Include strdup.h. Drop strdup declaration.
14088         * lib/userspec.c: Include strdup.h. Drop strdup declaration.
14089
14090 2004-02-23  Karl Berry  <karl@gnu.org>
14091
14092         * doc/maintain.texi, standards.texi, make-stds.texi: new files
14093         (from fencepost.gnu.org:/gd/gnuorg).
14094
14095 2004-02-23  Karl Berry  <karl@gnu.org>
14096
14097         * config/srclistvars.sh (GNUORG) [karl]: redefine.
14098         * config/srclist.txt: add maintain/standards documents.
14099
14100 2004-02-18  Bruno Haible  <bruno@clisp.org>
14101
14102         * m4/xsize.m4 (gl_XSIZE): Require AC_C_INLINE.
14103         Reported by Derek Robert Price <derek@ximbiot.com>.
14104
14105 2004-02-16  Karl Berry  <karl@gnu.org>
14106
14107         * config/mkinstalldirs, install-sh: update from automake.
14108
14109 2004-02-06  Karl Berry  <karl@gnu.org>
14110
14111         * m4/po.m4: update from gettext 0.14.1.
14112
14113 2004-02-06  Karl Berry  <karl@gnu.org>
14114
14115         * lib/config.charset: update from gettext 0.14.1.
14116
14117 2004-02-05  Paul Eggert  <eggert@twinsun.com>
14118
14119         Add comments and code, prompted by suggestions from Bruno Haible
14120         for sh-quote.
14121         * lib/quotearg.h (quotearg_alloc): New decl.  Improve the comments
14122         describing the enum quoting_style values.
14123         * lib/quotearg.c (quotearg_alloc): New function.
14124         (quotearg_buffer_restyled): Treat lone { and } as special.
14125         Treat = as special.  Work around bug with older shells
14126         that "see" a '\' that is really the 2nd byte of a multibyte char.
14127         Quote empty string with shell_quoting_style.
14128
14129 2004-02-03  Bruno Haible  <bruno@clisp.org>
14130
14131         * m4/pipe.m4: New file, from GNU gettext.
14132
14133 2004-02-03  Bruno Haible  <bruno@clisp.org>
14134
14135         * lib/pipe.h: New file, from GNU gettext.
14136         * lib/pipe.c: New file, from GNU gettext.
14137
14138 2004-01-27  Bruno Haible  <bruno@clisp.org>
14139
14140         * m4/execute.m4: New file, from GNU gettext.
14141
14142 2004-01-27  Bruno Haible  <bruno@clisp.org>
14143
14144         * lib/execute.h: New file, from GNU gettext.
14145         * lib/execute.c: New file, from GNU gettext.
14146         * lib/w32spawn.h: New file, from GNU gettext.
14147
14148 2004-01-24  Paul Eggert  <eggert@twinsun.com>
14149
14150         Merge from diffutils.
14151
14152         * lib/file-type.c (file_type): Add typed memory objects.
14153         * lib/file-type.h (S_TYPEISTMO): New macro.
14154
14155         * lib/c-stack.h (c_stack_action): Remove argv argument.
14156         * lib/c-stack.c (c_stack_action): Likewise.  All uses changed.
14157         (die): Don't calculate message unless segv_action returns.
14158         (get_stack_location, min_address_from_argv, max_address_from_argv,
14159         volatile stack_base, volatile_stack_size): Remove.
14160         (segv_handler): If ! HAVE_XSI_STACK_OVERFLOW_HEURISTIC, assume
14161         that every segmentation violation is a stack overflow.  (Ouch!)
14162         See Debian bug 136249 (still outstanding) for more info about why
14163         HAVE_XSI_STACK_OVERFLOW_HEURISTIC fails on Linux kernels.
14164
14165 2004-01-24  Paul Eggert  <eggert@twinsun.com>
14166
14167         Exit-status fix from coreutils.
14168
14169         Use exit_failure consistently in place of EXIT_FAILURE,
14170         so that program exit statuses are consistent on failure.
14171
14172         * lib/argmatch.c (ARGMATCH_DIE) [! defined ARGMATCH_DIE]:
14173         Include "exitfail.h", and use exit_failure rather than EXIT_FAILURE.
14174         * lib/argmatch.h: Comment fix to match the above.
14175         * lib/obstack.c (obstack_exit_failure) [!defined _LIBC]:
14176         Now a macro referring to exit_failure, instead of a separate
14177         variable.  Include "exitfail.h" to get it.
14178         * lib/xstrtol.h: Include "exitfail.h".
14179         (STRTOL_FATAL_ERROR): Exit with status exit_failure, not 2.
14180
14181         * lib/long-options.c (parse_long_options): Use prototype
14182         for usage function arg.  Pass it EXIT_SUCCESS rather than 0,
14183         for clarity.
14184
14185 2004-01-21  Jim Meyering  <jim@meyering.net>
14186
14187         * lib/mktime.c (__mktime_internal) [!_LIBC]: Define to mktime_internal
14188         so as not to conflict with a different-sized __mktime_internal
14189         function in GNU libc.
14190         * lib/timegm.c (__mktime_internal) [!_LIBC]: Likewise.
14191         Problem building statically-linked `ls' reported by Michael Brunnbauer.
14192
14193 2004-01-20  Karl Berry  <karl@gnu.org>
14194
14195         * config/config.guess: update from config.
14196
14197         * config/srclistvars.sh: GNUWWWLICENSES for karl.
14198
14199 2004-01-20  Bruno Haible  <bruno@clisp.org>
14200
14201         Safer stack allocation.
14202         * lib/setenv.c: Include allocsa.h.
14203         (alloca): Remove fallback definition.
14204         (freea): Remove macro.
14205         (__add_to_environ) [!_LIBC]: Use allocsa instead of alloca. Use freesa
14206         instead of freea.
14207
14208 2004-01-20  Bruno Haible  <bruno@clisp.org>
14209
14210         * m4/eealloc.m4: New file, from GNU gettext.
14211
14212 2004-01-20  Bruno Haible  <bruno@clisp.org>
14213
14214         * m4/allocsa.m4: New file, from GNU gettext.
14215
14216 2004-01-20  Bruno Haible  <bruno@clisp.org>
14217
14218         * lib/xallocsa.h: New file, from GNU gettext.
14219         * lib/xallocsa.c: New file, from GNU gettext.
14220
14221 2004-01-20  Bruno Haible  <bruno@clisp.org>
14222
14223         * lib/wait-process.c: On Windows, include windows.h. Needed on mingw.
14224
14225 2004-01-20  Bruno Haible  <bruno@clisp.org>
14226
14227         * lib/wait-process.c (wait_subprocess): Add ignore_sigpipe argument.
14228         * lib/wait-process.c (wait_subprocess): Likewise. Handle SIGPIPE
14229         specially.
14230
14231 2004-01-20  Bruno Haible  <bruno@clisp.org>
14232
14233         * lib/wait-process.c (wait_process): Disable the 2003-10-31 waitid()
14234         patch.
14235
14236 2004-01-20  Bruno Haible  <bruno@clisp.org>
14237
14238         * lib/wait-process.c (cleanup_slaves): Use ANSI C declaration.
14239
14240 2004-01-20  Bruno Haible  <bruno@clisp.org>
14241
14242         * lib/eealloc.h: New file.
14243
14244 2004-01-20  Bruno Haible  <bruno@clisp.org>
14245
14246         * lib/binary-io.h: Avoid warnings on Cygwin.
14247
14248 2004-01-20  Bruno Haible  <bruno@clisp.org>
14249
14250         * lib/allocsa.h: New file, from GNU gettext.
14251         * lib/allocsa.c: New file, from GNU gettext.
14252
14253 2004-01-18  Karl Berry  <karl@gnu.org>
14254
14255         * doc/gpl.texi, lgpl.texi: new files.
14256
14257 2004-01-18  Karl Berry  <karl@gnu.org>
14258
14259         * config/srclistvars.sh (GNUWWWLICENSES): new variable.
14260         * config/srclist.txt ({fdl,gpl,lgpl}.text): get from there.
14261
14262 2004-01-15  Paul Eggert  <eggert@twinsun.com>
14263
14264         Merge from coreutils.
14265
14266         * m4/jm-macros.m4 (jm_CHECK_ALL_TYPES): Check for uintptr_t.
14267         * m4/posixver.m4 (gl_POSIXVER): Require gl_DEFAULT_POSIX2_VERSION.
14268         (gl_DEFAULT_POSIX2_VERSION): Move
14269         the documentation from 'configure' into 'config.hin',
14270         so that 'configure --help' isn't burdened by it and
14271         we don't have to worry about its formatting there.
14272         Reword the documentation so that it's more succinct
14273         and can be run together into a single paragraph.
14274         * m4/same.m4 (gl_SAME): Check for pathconf.
14275
14276 2004-01-15  Paul Eggert  <eggert@twinsun.com>
14277
14278         Merge from coreutils.
14279
14280         * lib/posixver.c: Include posixver.h.
14281
14282         * lib/same.c: Include <stdbool.h>, <limits.h>.
14283         (_POSIX_NAME_MAX): Define if not defined.
14284         (MIN): New macro.
14285         (same_name): If file names are silently truncated, report
14286         that the file names are the same if they are the same after
14287         the silent truncation.
14288
14289         * lib/xstrtod.h (xstrtod): Accept an extra arg, specifying the
14290         conversion function.
14291         * lib/xstrtod.c (xstrtod): Likewise.  All callers changed to
14292         include c-strtod.h and use c_strtod.  Don't include stdlib.h; no
14293         longer needed.
14294
14295 2004-01-15  Jim Meyering  <jim@meyering.net>
14296
14297         Merge from coreutils.
14298
14299         * m4/clock_time.m4 (gl_CLOCK_TIME): Don't set LIB_CLOCK_GETTIME
14300         if no library is required.
14301         * m4/jm-macros.m4: Don't require UTILS_SYS_OPEN_MAX.
14302         * m4/jm-macros.m4 (jm_MACROS): Require gl_FUNC_FREE.
14303         * m4/jm-macros.m4 (jm_MACROS): Require autoconf-2.58.
14304         (AC_LANG_SOURCE): Remove definition, now that we require autoconf-2.58.
14305         * m4/jm-macros.m4 (jm_MACROS): Don't require AC_FUNC_FTW.
14306         * m4/lib-check.m4 (jm_LIB_CHECK): Do not set LIB_CRYPT to the
14307         value, $ac_cv_search_crypt, if it's "none required".
14308         * m4/posixver.m4 (gl_DEFAULT_POSIX2_VERSION): New macro.
14309         * m4/prereq.m4 (jm_PREREQ): Require AC_FUNC_GETLOADAVG,
14310         not gl_FUNC_GETLOADAVG.
14311         * m4/prereq.m4 (jm_PREREQ): Require gl_READTOKENS, gl_MD5, gl_MAKEPATH,
14312         gl_LONG_OPTIONS, and gl_IDCACHE, gl_GETUGROUPS.
14313
14314 2004-01-15  Jim Meyering  <jim@meyering.net>
14315
14316         Merge from coreutils.
14317
14318         * lib/md5.h (rol) [__GNUC__ && __i386__]: Don't use `asm' code.  These
14319         days, gcc-3.x does better all by itself.  Patch from Dean Gaudet:
14320         http://mail.gnu.org/archive/html/bug-coreutils/2003-11/msg00144.html
14321
14322         * lib/posixver.c (DEFAULT_POSIX2_VERSION): Use definition of new,
14323         optional configure-time default.
14324
14325         * lib/version-etc.c (version_etc_copyright): Update copyright date.
14326
14327         * lib/xreadlink.c (xreadlink): Correct outdated comment.
14328
14329 2004-01-15  Alexandre Duret-Lutz  <adl@gnu.org>
14330
14331         Merge from coreutils.
14332
14333         * m4/nanosleep.m4 (jm_FUNC_NANOSLEEP): Do not set LIB_NANOSLEEP to the
14334         value, $ac_cv_search_nanosleep, if it's "none required".
14335
14336 2004-01-14  Paul Eggert  <eggert@twinsun.com>
14337
14338         * lib/fnmatch_loop.c (ALLOCA_LIMIT): Remove macro, which collided
14339         with like-named macro in fnmatch.c.
14340         (EXT): Use an internal constant instead.
14341
14342         Merge fnmatch patches from glibc.
14343         * lib/fnmatch.c (mbsinit): Remove define.
14344         Add libc_hidden_ver (__fnmatch, fnmatch).
14345         * lib/fnmatch_loop.c (FCT): Cast to int32_t and UCHAR when appropriate.
14346         Adjust to renaming of collseq_table_lookup to __collseq_table_lookup.
14347
14348 2004-01-14  Karl Berry  <karl@gnu.org>
14349
14350         * config/install-sh: update from automake.
14351
14352 2004-01-13  Karl Berry  <karl@gnu.org>
14353
14354         * config/install-sh: update from automake.
14355
14356 2004-01-09  Karl Berry  <karl@gnu.org>
14357
14358         * config/install-sh: update from automake.
14359
14360 2004-01-05  Karl Berry  <karl@gnu.org>
14361
14362         * config/config.{sub,guess}: update from config.
14363
14364 2003-12-31  Karl Berry  <karl@gnu.org>
14365
14366         * config/depcomp: update from automake.
14367
14368 2003-12-14  Karl Berry  <karl@gnu.org>
14369
14370         * lib/config.charset: update from gettext-runtime.
14371
14372 2003-12-03  Paul Eggert  <eggert@twinsun.com>
14373
14374         * lib/getgroups.c (getgroups): xmalloc takes one argument, not two.
14375         Bug reported by Alfred M. Szmidt.
14376
14377 2003-12-03  Bruno Haible  <bruno@clisp.org>
14378
14379         * m4/gettext.m4: Upgrade from gettext-0.13.
14380         * m4/po.m4: Upgrade from gettext-0.13.
14381         * m4/size_max.m4 (gl_SIZE_MAX): Don't use the _ONCE macros here.
14382         * m4/intmax.m4: New file, from gettext-0.13.
14383         * m4/printf-posix.m4: New file, from gettext-0.13.
14384
14385 2003-11-29  Karl Berry  <karl@gnu.org>
14386
14387         * lib/argp-{help.c,parse.c,namefrob.h}, argp.h: update from libc.
14388
14389 2003-11-25  Paul Eggert  <eggert@twinsun.com>
14390             Bruno Haible  <bruno@clisp.org>
14391
14392         * lib/printf-parse.h: Don't include sys/types.h.
14393         (ARG_NONE): New macro.
14394         (char_directive): Change type of *arg_index fields to size_t.
14395         * lib/printf-parse.c: Don't include sys/types.h.
14396         (SSIZE_MAX): Remove macro.
14397         (PRINTF_PARSE): Change the type of the arg_index variables to size_t.
14398         Remove unnecessary overflow check.
14399         * lib/vasnprintf.c (VASNPRINTF): Update for type change of *arg_index
14400         fields.
14401
14402 2003-11-25  Bruno Haible  <bruno@clisp.org>
14403
14404         * modules/vasnprintf (Files): Remove m4/ssize_t.m4.
14405
14406 2003-11-25  Bruno Haible  <bruno@clisp.org>
14407
14408         * m4/vasnprintf.m4 (gl_PREREQ_PRINTF_PARSE): Don't require
14409         gt_TYPE_SSIZE_T.
14410
14411 2003-11-24  Paul Eggert  <eggert@twinsun.com>
14412
14413         * modules/alloca: Remove dependency on xalloc.
14414
14415 2003-11-24  Paul Eggert  <eggert@twinsun.com>
14416
14417         * lib/alloca.c: Remove dependency on xalloc module.
14418         (xalloc_die): Remove.
14419         (memory_full) [!defined emacs]: New macro.
14420         [!defined emacs]: Don't include xalloc.h.
14421         (alloca): Invoke memory_full, not xalloc_die, if malloc fails or
14422         address arithmetic overflows.  Change datatypes a bit to avoid
14423         unnecessary casts.
14424
14425 2003-11-22  Jim Meyering  <jim@meyering.net>
14426
14427         * lib/xmalloc.c (x2nrealloc_inline): Fix typos in comments:
14428         s/size/size_t/.
14429
14430 2003-11-21  Karl Berry  <karl@gnu.org>
14431
14432         * config/config.{sub,guess}: update from config.
14433
14434 2003-11-18  Karl Berry  <karl@gnu.org>
14435
14436         * config/config.{sub,guess}: update from config.
14437
14438         * config/(printf-{parse,args}.[ch]): sync broken, sigh.
14439
14440 2003-11-17  Paul Eggert  <eggert@twinsun.com>
14441
14442         * README: Mention that S+T cannot overflow if S is the size of
14443         an existing object and T is sufficiently small.
14444
14445 2003-11-17  Jim Meyering  <jim@meyering.net>
14446
14447         On systems without utime and without a utimes function capable of
14448         dealing with a NULL struct utimbuf* argument, this utime replacement
14449         could -- in unusual circumstances -- leak a file descriptor.
14450         * lib/utime.c: Include <unistd.h> and <errno.h>.
14451         (utime_null): Be sure to close `fd' and to preserve errno.
14452         Reported by Geoff Collyer via Arnold Robbins.
14453
14454 2003-11-17  Bruno Haible  <bruno@clisp.org>
14455
14456         * modules/vasnprintf (Files): Add m4/ssize_t.m4.
14457         (Depends-on): Add xsize.
14458
14459 2003-11-17  Bruno Haible  <bruno@clisp.org>
14460
14461         * m4/vasnprintf.m4 (gl_PREREQ_PRINTF_PARSE): Require gt_TYPE_SSIZE_T.
14462
14463 2003-11-17  Bruno Haible  <bruno@clisp.org>
14464
14465         * lib/vasnprintf.c (alloca): Remove fallback definition.
14466         (freea): Remove definition.
14467         (VASNPRINTF): Use alloca only for small sizes, say <= 4000 bytes.
14468         Reported by Paul Eggert.
14469
14470 2003-11-16  Paul Eggert  <eggert@twinsun.com>
14471             Bruno Haible  <bruno@clisp.org>
14472
14473         Protect against address arithmetic overflow.
14474         * lib/printf-args.h: Include stddef.h.
14475         (arguments): Change type of field 'count' to size_t.
14476         * lib/printf-args.c (printf_fetchargs): Use size_t instead of
14477         'unsigned int' where appropriate.
14478         * lib/printf-parse.h: Include sys/types.h.
14479         (char_directive): Change type of *arg_index fields to ssize_t.
14480         (char_directives): Change type of fields 'count', max_*_length to
14481         size_t.
14482         * lib/printf-parse.c: Include sys/types.h and xsize.h.
14483         (SSIZE_MAX): Define fallback value.
14484         (PRINTF_PARSE): Use size_t instead of 'unsigned int' and ssize_t
14485         instead of 'int' where appropriate. Check a_allocated, d_allocated
14486         against overflow. Reject %m$ argument numbers > SSIZE_MAX + 1.
14487         * lib/vasnprintf.c: Include xsize.h.
14488         (VASNPRINTF): Use size_t instead of 'unsigned int' where appropriate.
14489         Check alloca, malloc, realloc, ENSURE_ALLOCATION arguments against
14490         overflow. Avoid wraparound when converting a width or precision from
14491         decimal to binary.
14492
14493 2003-11-16  Bruno Haible  <bruno@clisp.org>
14494
14495         Update from GNU gettext.
14496         * lib/printf-parse.c: Generalize to it can be compiled for wide
14497         strings.
14498         (PRINTF_PARSE, CHAR_T, DIRECTIVE, DIRECTIVES): New macros.
14499         * lib/vasnprintf.c: Generalize to it can be compiled for wide strings.
14500         (VASNPRINTF, CHAR_T, DIRECTIVE, DIRECTIVES, PRINTF_PARSE, USE_SNPRINTF,
14501         SNPRINTF): New macros.
14502         Don't include <alloca.h> if the file is used inside libintl.
14503         (local_wcslen): New function, for Solaris 2.5.1.
14504         (VASNPRINTF): Use it instead of wcslen.
14505
14506 2003-11-16  Bruno Haible  <bruno@clisp.org>
14507
14508         * lib/xsize.h (xmax): New function.
14509         (xsum, xsum3, xsum4): Declare as "pure" functions.
14510
14511 2003-11-12  Paul Eggert  <eggert@twinsun.com>
14512
14513         * modules/xalloc (Files): Undo latest change, since xalloc.h
14514         no longer needs SIZE_MAX or PTRDIFF_MAX.
14515
14516 2003-11-12  Paul Eggert  <eggert@twinsun.com>
14517
14518         * m4/xalloc.m4 (gl_PREREQ_XALLOC): Do not require gl_SIZE_MAX or
14519         gl_PTRDIFF_MAX.
14520
14521 2003-11-12  Paul Eggert  <eggert@twinsun.com>
14522
14523         * lib/xstrtol.c (__xstrtol): Remove "break" immediately after
14524         "return", to pacify some unknown compiler.  Problem reported
14525         by Joerg Schilling.
14526
14527 2003-11-12  Paul Eggert  <eggert@twinsun.com>
14528
14529         * lib/xalloc.h: Do not include <limits.h> or <stdint.h>.
14530         (xalloc_oversized): Use sizeof (ptrdiff_t) and sizeof (size_t) for
14531         the heuristic, rather than PTRDIFF_MAX and SIZE_MAX.  This
14532         heuristic is just as accurate as far as we know, and it removes a
14533         dependency on size_max.m4 and ptrdiff_max.m4.
14534
14535 2003-11-11  Bruno Haible  <bruno@clisp.org>
14536
14537         * modules/xsize (Files): Add m4/size_max.m4.
14538         * modules/xalloc (Files): Add m4/size_max.m4, m4/ptrdiff_max.m4.
14539
14540 2003-11-11  Bruno Haible  <bruno@clisp.org>
14541
14542         * m4/size_max.m4: New file.
14543         * m4/ptrdiff_max.m4: New file.
14544         * m4/xsize,m4 (gl_XSIZE): Require gl_SIZE_MAX.
14545         * m4/xalloc.m4 (gl_PREREQ_XALLOC): New macro.
14546         (gl_XALLOC): Invoke it.
14547
14548 2003-11-11  Bruno Haible  <bruno@clisp.org>
14549
14550         * lib/xsize.h (SIZE_MAX): Remove fallback definition.
14551         * lib/xalloc.h: Include limits.h. Assume SIZE_MAX and PTRDIFF_MAX are
14552         defined.
14553
14554 2003-11-10  Paul Eggert  <eggert@twinsun.com>
14555
14556         * lib/xalloc.h (xalloc_oversized): [! (defined PTRDIFF_MAX &&
14557         PTRDIFF_MAX < SIZE_MAX)]: Fix off-by-one error that would have
14558         rejected some allocations of exactly SIZE_MAX - 2 bytes.
14559         From Bruno Haible.
14560         [defined PTRDIFF_MAX && PTRDIFF_MAX < SIZE_MAX]: Use SIZE_MAX,
14561         not (size_t) -1, since it's defined here.
14562
14563 2003-11-09  Karl Berry  <karl@gnu.org>
14564
14565         * config/mkinstalldirs, depcomp, mdate-sh: update from automake.
14566
14567 2003-11-06  Paul Eggert  <eggert@twinsun.com>
14568
14569         * lib/xalloc.h [HAVE_STDINT_H]: Include <stdint.h>.
14570         (xalloc_oversized) [! (PTRDIFF_MAX < SIZE_MAX)]:
14571         Reject sizes of exactly SIZE_MAX bytes.
14572         * lib/xreadlink.c: Include "xalloc.h" before checking whether SIZE_MAX
14573         is defined, since "xalloc.h" now defines SIZE_MAX on modern hosts.
14574
14575 2003-11-05  Bruno Haible  <bruno@clisp.org>
14576
14577         * lib/xsize.h: Include limits.h, to avoid a possible collision with
14578         SIZE_MAX defined in <limits.h> on Solaris.
14579
14580 2003-11-04  Jim Meyering  <jim@meyering.net>
14581
14582         * modules/sysexits: Use the `$(VAR)' notation for AC_SUBST'd
14583         variable names, rather than @VAR@.
14584         * modules/poll: Likewise.
14585
14586 2003-11-04  Bruno Haible  <bruno@clisp.org>
14587
14588         * modules/xsize: New file.
14589         * modules/linebreak: Depend on xsize.
14590         * MODULES.html.sh (func_all_modules): Add xsize.
14591
14592 2003-11-04  Bruno Haible  <bruno@clisp.org>
14593
14594         * m4/xsize.m4: New file.
14595
14596 2003-11-04  Bruno Haible  <bruno@clisp.org>
14597
14598         * lib/xsize.h: New file.
14599         * lib/linebreak.c: Include xsize.h.
14600         (mbs_possible_linebreaks, mbs_width_linebreaks): Check malloc()
14601         argument for overflow.
14602         Suggested by Paul Eggert.
14603
14604 2003-11-03  Karl Berry  <karl@gnu.org>
14605
14606         * config/config.{guess,sub}: update from config.
14607
14608 2003-11-03  Jim Meyering  <jim@meyering.net>
14609
14610         * modules/userspec (lib_SOURCES): Add userspec.h.
14611         (Include): Add "userspec.h".
14612         Improve description.
14613
14614 2003-11-03  Jim Meyering  <jim@meyering.net>
14615
14616         * lib/userspec.c: Include "userspec.h".
14617         * lib/userspec.h: New file.
14618
14619 2003-11-03  Bruno Haible  <bruno@clisp.org>
14620
14621         * m4/wait-process.m4 (gl_WAIT_PROCESS): Also check for waitid.
14622
14623 2003-11-03  Bruno Haible  <bruno@clisp.org>
14624
14625         * lib/wait-process.c (wait_process): Use waitid with WNOWAIT if
14626         available, to avoid (extremely rare) race condition.
14627         Suggested by Paul Eggert.
14628
14629 2003-11-02  Karl Berry  <karl@gnu.org>
14630
14631         * config/srclist.txt (vasprintf.c): sync broken, sigh.
14632
14633 2003-10-31  Paul Eggert  <eggert@twinsun.com>
14634
14635         * lib/mountlist.h (struct mount_entry.me_type_malloced): New member.
14636         * lib/mountlist.c (SIZE_MAX): Define if not defined already.
14637         (read_filesystem_list): Set and use me_type_malloced.
14638         Use "sizeof *me" rather than "sizeof (struct mount_entry)" (or
14639         whatever the type happens to be), for brevity and consistency.
14640         Check for size calculation overflow on Alphas running OSF/1.
14641
14642 2003-10-31  Jim Meyering  <jim@meyering.net>
14643
14644         * lib/hash.c: Include "xalloc.h" for use of xalloc_oversized.
14645
14646         * lib/linebuffer.c: Include <string.h> for declaration of memset.
14647
14648 2003-10-30  Paul Eggert  <eggert@twinsun.com>
14649             Bruno Haible  <bruno@clisp.org>
14650
14651         * lib/vasprintf.c: Include <limits.h>, <stdlib.h>.
14652         (vasprintf): Fail if the resulting length doesn't fit in an 'int'.
14653
14654 2003-10-30  Paul Eggert  <eggert@cs.ucla.edu>
14655
14656         * m4/host-os.m4 (UTILS_HOST_OS): Change netbsd*-gnu pattern back to
14657         netbsd*-gnu*.  Suggested by Robert Millan.
14658
14659 2003-10-29  Paul Eggert  <eggert@twinsun.com>
14660
14661         * modules/group-member: Depend on stdbool.
14662
14663 2003-10-29  Paul Eggert  <eggert@twinsun.com>
14664
14665         * m4/xalloc.m4 (gl_XALLOC): Undo previous change.
14666
14667 2003-10-29  Paul Eggert  <eggert@twinsun.com>
14668
14669         * m4/host-os.m4 (UTILS_HOST_OS): Resurrect netbsd*-gnu.  Add comments
14670         to it, and to knetbsd*-gnu and kfreebsd*-gnu.  Remove the '*' from
14671         after the 'gnu' in these cases.  This fixes some bugs in the
14672         previous change, and is based on suggestions by Robert Millan.
14673
14674 2003-10-29  Paul Eggert  <eggert@twinsun.com>
14675
14676         * lib/xalloc.h (xalloc_oversized): Now a macro, not a function,
14677         so that it works even if SIZE_MAX < N.  Do not include <stdbool.h>;
14678         no longer needed.
14679         * lib/quotearg.c (quotearg_n_options): Use it.
14680         * lib/group-member.c: Include <stdbool.h>.
14681         (free_group_info): Arg is now const *; don't free arg.
14682         (get_group_info): Now returns bool and accepts struct group_info *,
14683         rather than returning a malloc'ed struct group_info *.
14684         All uses changed.  Check for overflow in internal size calculation.
14685
14686         * lib/getusershell.c (readname): Simplify the code by using x2nrealloc
14687         rather than xmalloc/xrealloc.
14688         * lib/linebuffer.c (initbuffer, readlinebuffer): Simplify the code by
14689         using x2realloc rather than xmalloc/xrealloc.  Also, fix a C
14690         conformance bug: the old code used a pointer after freeing the
14691         storage that it addressed.
14692         * lib/hash.c (hash_initialize): Simplify the code by using
14693         xalloc_oversized rather than doing it by hand.
14694         * lib/getgroups.c (getgroups): Don't use xrealloc, since we don't need
14695         the buffer preserved.  Use free and xmalloc instead.
14696         * lib/quotearg.c (quotearg_n_options): Likewise.
14697         Use a simpler test for size overflow.  Don't use xalloc_oversized
14698         because unsigned int might be wider than size_t (!); this suggests
14699         that we should switch from unsigned int to size_t for slot numbers.
14700
14701 2003-10-28  Paul Eggert  <eggert@twinsun.com>
14702
14703         * m4/host-os.m4 (UTILS_HOST_OS): Identify GNU/KFreeBSD and
14704         GNU/KNetBSD.  These implementations use glibc atop the FreeBSD and
14705         NetBSD kernels.  Requested by Richard Stallman.
14706
14707 2003-10-27  Paul Eggert  <eggert@twinsun.com>
14708
14709         * lib/exclude.c (new_exclude): Use xzalloc rather than xmalloc
14710         to allocate the returned structure.  Do not allocate a subarray,
14711         as x2nrealloc will do that.
14712         (add_exclude): Use x2nrealloc to reallocate ex->exclude,
14713         instead of xnrealloc.
14714         (add_exclude_file): Use x2realloc instead of malloc + xnrealloc.
14715
14716 2003-10-27  Bruno Haible  <bruno@clisp.org>
14717
14718         * lib/stdbool_.h: Better support for BeOS.
14719
14720 2003-10-26  Paul Eggert  <eggert@twinsun.com>
14721
14722         * m4/xalloc.m4 (gl_XALLOC): Requore AC_C_INLINE, since xalloc.h
14723         now uses inline.
14724
14725 2003-10-26  Paul Eggert  <eggert@twinsun.com>
14726
14727         * lib/xalloc.h (xalloc_oversized): New static inline function, for
14728         callers that want to do their own size-overflow checking.  Include
14729         <stdbool.h>, since xalloc_oversized returns bool.
14730         * lib/xalloc.c (array_size_overflow): Remove.  All callers changed
14731         to use xalloc_oversized.
14732
14733         Add two functions x2realloc, x2nrealloc, for programs that grow
14734         arrays dynamically by doubling their sizes.
14735         * lib/xalloc.h (x2realloc, x2nrealloc): New decls.
14736         * lib/xmalloc.c (x2nrealloc_inline, x2nrealloc, x2realloc):
14737         New functions.
14738
14739         Port to C99 semantics for 'inline' of external functions.
14740         Bug reported by Bruno Haible.
14741         * lib/xmalloc.c (xnmalloc_inline): New static inline function,
14742         with the old contents of xnmalloc.
14743         (xnmalloc, xmalloc): Use it.
14744         (xnrealloc_inline): New static inline function,
14745         with the old contents of xnrealloc.
14746         (xnrealloc, xrealloc): Use it.
14747
14748         * lib/alloc.c (alloca): xmalloc cannot return NULL, so don't test for
14749         that.
14750
14751 2003-10-26  Karl Berry  <karl@gnu.org>
14752
14753         * config/srclist.txt (COPYING.DOC): no longer available from
14754         /gd/gnuorg; don't know where the ultimate source is.
14755
14756 2003-10-25  Paul Eggert  <eggert@twinsun.com>
14757
14758         Fix several address-calculation bugs in the hash modules,
14759         plus some minor code cleanup.
14760
14761         * lib/hash.h: Include <stdbool.h>, for bool.
14762         * lib/hash.c: Don't include <stdbool.h>, since hash.h does it now.
14763         * lib/hash.h (Hash_hasher, hash_get_n_buckets, hash_get_n_buckets_used,
14764         hash_get_n_entries, hash_get_max_bucket_length,
14765         hash_get_entries, hash_do_for_each, hash_string, hash_initialize,
14766         hash_rehash): Use size_t rather than unsigned.
14767         * lib/hash.c (struct hash_table, hash_get_n_buckets,
14768         hash_get_n_buckets_used, hash_get_n_entries,
14769         hash_get_max_bucket_length, hash_table_ok, hash_print_statistics,
14770         hash_get_entries, hash_do_for_each, hash_string, is_prime,
14771         next_prime, hash_initialize, hash_rehash, hash_delete, hash_print):
14772         Likewise.
14773         (SIZE_MAX): Define if not defined.
14774         (hash_get_max_bucket_length, hash_table_ok, hash_lookup,
14775         hash_get_first, hash_get_next, hash_get_entries, hash_do_for_each,
14776         hash_print):
14777         Use const * when possible.
14778         (hash_string): Use (unsigned char) *P rather than *(unsigned char *) P.
14779         (check_tuning): Fix bug: if tuning parameters were very close to
14780         0 or 1, rounding errors could have caused subscript violations.
14781         (hash_initialize, allocate_entry, hash_print): Remove unnecessary cast.
14782         (hash_initialize): Add 'fail:' label
14783         to free table and return NULL, and use it to simplify code.
14784         Use calloc rather than clearing the storage ourself.
14785         (hash_initialize, hash_rehash): Check for arithmetic overflow in
14786         buffer size calculations.
14787         * lib/hash-pjw.h (hash_pjw): Use size_t, not unsigned.
14788         Include <stddef.h>, for size_t.
14789         * lib/hash-pjw.c (hash_pjw): Likewise.
14790         Switch to method described by Bruno Haible.
14791         Include <limits.h>, for CHAR_BIT.
14792         (SIZE_BITS): New macro.
14793
14794 2003-10-23  Paul Eggert  <eggert@twinsun.com>
14795
14796         * m4/getline.m4 (AM_FUNC_GETLINE):
14797         Don't include getndelim2.o twice into LIBOBJS; this breaks on some
14798         hosts.  Problem reported by Derek Robert Price in
14799         <http://mail.gnu.org/archive/html/bug-gnulib/2003-10/msg00092.html>.
14800         This patch can be withdrawn after Autoconf 2.58 is required for gnulib.
14801         * m4/getndelim2.m4 (gl_GETNDELIM2): Likewise.
14802
14803 2003-10-21  Paul Eggert  <eggert@twinsun.com>
14804
14805         * lib/getndelim2.c (getndelim2): When size calculation overflows,
14806         ceiling the allocation at NMAX bytes rather than silently
14807         discarding input bytes before NMAX is reached.  This makes
14808         a difference only if NMAX exceeds SIZE_MAX / 2.
14809
14810         * lib/obstack.c: Merge from glibc.
14811         [defined _LIBC]: Include <obstack.h>, not "obstack.h".
14812         Add libc_hidden_def (_obstack_newchunk).
14813         (_obstack_free) [! defined _LIBC]: Remove.
14814         [defined _LIBC]: Make a strong alias from obstack_free, rather than
14815         a clone of the function body.
14816         (fputs) [defined _LIBC && defined USE_IN_LIBIO]: Remove.
14817         [defined _LIBC && !defined USE_IN_LIBIO]: Include <libio/iolibio.h>.
14818
14819         * lib/obstack.h: Indenting cleanup, to make it easier to merge with
14820         glibc.
14821         (obstack_grow, obstack_grow0): Remove unnecessary parentheses around
14822         arg to memcpy.
14823
14824         * lib/obstack.h (obstack_1grow_fast): Properly parenthesize arg.
14825         (obstack_ptr_grow_fast, obstack_int_grow_fast):
14826         Don't use lvalue casts, as GCC plans to remove support for them
14827         in GCC 3.5.  Reported by Joseph S. Myers.  This bug
14828         was also present in the non-GCC version, indicating that this
14829         code had always been buggy and had never been widely used.
14830         (obstack_1grow, obstack_ptr_grow, obstack_int_grow, obstack_blank):
14831         Use the fast variant of each macro, rather than copying the
14832         definiens of the fast variant; that way, we'll be more likely to
14833         catch future bugs in the fast variants.
14834
14835 2003-10-20  Bruno Haible  <bruno@clisp.org>
14836
14837         * modules/wait-process: New file.
14838         * MODULES.html.sh (func_all_modules): Add wait-process.
14839
14840 2003-10-20  Bruno Haible  <bruno@clisp.org>
14841
14842         * m4/wait-process.m4: New file.
14843
14844 2003-10-20  Bruno Haible  <bruno@clisp.org>
14845
14846         * lib/wait-process.h: New file, from GNU gettext.
14847         * lib/wait-process.c: New file, from GNU gettext.
14848
14849 2003-10-19  Jim Meyering  <jim@meyering.net>
14850
14851         * lib/vasnprintf.c (vasnprintf): Work around losing snprintf on
14852         HPUX 10.20.
14853
14854 2003-10-18  Karl Berry  <karl@gnu.org>
14855
14856         * config/config.guess: update from config.
14857
14858 2003-10-16  Paul Eggert  <eggert@twinsun.com>
14859
14860         * lib/getgroups.c: Include <errno.h>, <stdlib.h>.
14861         (getgroups): First arg is int, not size_t.
14862         Don't let 'free' mangle errno.
14863
14864 2003-10-16  Paul Eggert  <eggert@twinsun.com>
14865
14866         * README: Mention that gnulib assumes that (foo *) NULL + 0 == NULL.
14867
14868 2003-10-16  Karl Berry  <karl@gnu.org>
14869
14870         * config/config.{guess,sub}: update from config.
14871
14872 2003-10-16  Jim Meyering  <jim@meyering.net>
14873
14874         * lib/xmalloc.c: Include <string.h>, for declarations of memset and
14875         memcpy.
14876
14877 2003-10-15  Paul Eggert  <eggert@twinsun.com>
14878
14879         * lib/exclude.c: Do not include <inttypes.h> or <stdint.h>.
14880         (SIZE_MAX): Remove.
14881         (new_exclude, add_exclude_file): Initial size no longer needs to
14882         be a power of 2.
14883         (add_exclude, add_exclude_file): Use xnrealloc instead of rolling
14884         our own address arithmetic overflow checking.
14885
14886         * lib/fnmatch.c (SIZE_MAX): Define if standard headers don't.
14887         (fnmatch): Do not alloca more than 2000 wide characters;
14888         instead, use malloc for large buffers.
14889         Check for address arithmetic overflow, and return -1
14890         with errno set to ENOMEM in that case.
14891         * lib/fnmatch_loop.c (ALLOCA_LIMIT): New macro.
14892         (NEW_PATTERN): Do not alloca more than 8000 bytes;
14893         instead, return -1.  Check for address arithmetic overflow.
14894
14895 2003-10-14  Paul Eggert  <eggert@twinsun.com>
14896
14897         Handle invalid suffixes and overflow independently, so that
14898         callers can treat them independently as needed.  Fix some bugs in
14899         suffix handling, e.g., "100k@" was not diagnosed as an invalid
14900         suffix for a human-readable blocksize.  The major caller-visible
14901         change is the addition of a new
14902         LONGINT_INVALID_SUFFIX_CHAR_WITH_OVERFLOW enum value, indicating
14903         that both overflow and suffix chars were found.
14904
14905         * lib/human.c (humblock): Don't check separately for invalid suffix
14906         char; that is xstrtoumax's job (now that its bug is fixed).
14907         * lib/xstrtoimax.c (STRTOL_T_MINIMUM, STRTOL_T_MAXIMUM) [defined
14908         INTMAX_MAX]: New macros.
14909         * lib/xstrtol.c (STRTOL_T_MINIMUM, STRTOL_T_MAXIMUM, TYPE_MINIMUM,
14910         TYPE_MAXIMUM): New macros.
14911         (bkm_scale, bkm_scale_by_power): Return strtol_error, not int.
14912         (bkm_scale, bkm_scale_by_power, __xstrtol): Return maximal values
14913         if overflow occurs, as it's what __strtol does and it's more useful
14914         in practice.
14915         (__xstrtol): If __strtol reports some error other than ERANGE,
14916         reflect it to the caller as LONGINT_INVALID.  If it reports
14917         ERANGE, continue the rest of parsing, and report LONGINT_OVERFLOW
14918         | LONGINT_INVALID_SUFFIX_CHAR if both errors occur.
14919         * lib/xstrtol.h (LONGINT_INVALID_SUFFIX_CHAR_WITH_OVERFLOW): New enum
14920         value.
14921         (_STRTOL_ERROR): Handle it.  Abort when given unknown error codes.
14922         * lib/xstrtoul.c (STRTOL_T_MINIMUM, STRTOL_T_MAXIMUM): New macros.
14923         * lib/xstrtoumax.c (STRTOL_T_MINIMUM, STRTOL_T_MAXIMUM)
14924         [defined UINTMAX_MAX]: New macros.
14925
14926 2003-10-14  Bruno Haible  <bruno@clisp.org>
14927
14928         * modules/fatal-signal: Add m4/sig_atomic_t.m4 to file list.
14929
14930 2003-10-14  Bruno Haible  <bruno@clisp.org>
14931
14932         * m4/sig_atomic_t: New file, from GNU gettext.
14933         * m4/fatal-signal.m4 (gl_FATAL_SIGNAL): Require gt_TYPE_SIG_ATOMIC_T.
14934
14935 2003-10-14  Bruno Haible  <bruno@clisp.org>
14936
14937         * lib/fatal-signal.h: Improved comments. Suggested by Paul Eggert.
14938         * lib/fatal-signal.c: Use sig_atomic_t. Suggested by Paul Eggert.
14939         Also use volatile where needed.
14940
14941 2003-10-12  Paul Eggert  <eggert@twinsun.com>
14942
14943         * modules/xalloc: Do not depend on 'exit'.  Depend on 'stdbool'.
14944         Change maintainer from Bruno Haible to 'all'.
14945
14946 2003-10-12  Paul Eggert  <eggert@twinsun.com>
14947
14948         * m4/xalloc.m4 (gl_PREREQ_XMALLOC): Require AC_C_INLINE.
14949
14950 2003-10-12  Paul Eggert  <eggert@twinsun.com>
14951
14952         * lib/xalloc.h (xnmalloc, xzalloc, xnrealloc, xclone): New decls.
14953         (XMALLOC, XCALLOC, XREALLOC, XFREE, CCLONE, CLONE): Deprecate,
14954         and define in terms of the other primitives.
14955         * lib/xmalloc.c: Include stdbool.h; do not include exit.h.
14956         (SIZE_MAX): Define if not already defined.
14957         (array_size_overflow): New function.
14958         (xalloc_die): Abort instead of exiting if 'error' returns.
14959         (xnmalloc, xnrealloc, xzalloc, xclone): New functions.
14960         (xmalloc, xrealloc): Use them.
14961         (xcalloc): Check for address arithmetic overflow.
14962         * lib/xstrdup.c (xstrdup): Use xclone, since memcpy should be
14963         a bit faster than strcpy.
14964
14965 2003-10-10  Simon Josefsson  <jas@extundo.com>
14966
14967         * modules/argp (Depends-on): Add restrict and strcase.
14968
14969 2003-10-10  Simon Josefsson  <jas@extundo.com>
14970
14971         * m4/argp.m4: Add AC_C_INLINE.
14972
14973 2003-10-08  Paul Eggert  <eggert@twinsun.com>
14974
14975         Merge getpass from libc, plus a few fixes.
14976
14977         * lib/getpass.c (HAVE_STDIO_EXT) [_LIBC]: Define to 1.
14978         Include <stdbool.h>.
14979         Include <stdio_ext.h> if HAVE_STDIO_H, otherwise define
14980         __fsetlocking to empty.
14981         [_LIBC]: Do not include "getline.h" or "unlocked-io.h", but
14982         do include <bits/libc-lock.h>.
14983         Do not include <fcntl.h>; not needed.
14984         [_LIBC]: Include <wchar.h>.
14985         (NOTCANCEL_MODE): New macro.
14986         (flockfile, funlockfile) [_LIBC]: New macros.
14987         (__libc_cleanup_push, __libc_cleanup_pop, __getline, __tcgetattr)
14988         [!_LIBC]: New macros.
14989         (call_fclose): New function.
14990         (getpass): Use it.  Save tty stream separately; this simplifies the
14991         code and makes it more reliable if stdin happens to equal stdout.
14992         Invoke __fsetlocking on tty.
14993         Handle thread cancellation if needed.
14994         Namespace cleanup (use __tcgetattr, __getline).
14995         Use bool for Booleans.
14996         [USE_IN_LIBIO]: Handle wide streams.
14997         [!_LIBC]: Unconditionally do the fseek, since we don't know what
14998         stream might go where.
14999
15000         * lib/unlocked-io.h: Include <stdio.h>, so that the caller
15001         doesn't have to include <stdio.h> before us.
15002         (clearerr_unlocked, feof_unlocked, ferror_unlocked,
15003         fflush_unlocked, fgets_unlocked, fputc_unlocked, fputs_unlocked,
15004         fread_unlocked, fwrite_unlocked, getc_unlocked, getchar_unlocked,
15005         putc_unlocked, putchar_unlocked): Define to the unlocked counterpart
15006         if not declared, so that we can use getpass.c code from libc without
15007         rewriting it.
15008         (flockfile, ftrylockfile, funlockfile): New macros.
15009
15010 2003-10-08  Paul Eggert  <eggert@twinsun.com>
15011
15012         * modules/getpass: Depend on stdbool.
15013
15014 2003-10-08  Paul Eggert  <eggert@twinsun.com>
15015
15016         * m4/getpass.m4 (gl_PREREQ_GETPASS): Check for stdio_ext.h.
15017
15018 2003-10-07  Karl Berry  <karl@gnu.org>
15019
15020         * config/config.{guess,sub}: update from config.
15021
15022 2003-10-06  Jim Meyering  <jim@meyering.net>
15023             Bruno Haible  <bruno@clisp.org>
15024
15025         This lets translators provide better translations for the
15026         "Written by ..." part of --version output.
15027         * lib/version-etc.h: Include stdarg.h.
15028         (version_etc_copyright): Declare as readonly.
15029         (version_etc): Make this function variadic with a NULL-terminated list
15030         of author name strings.
15031         (version_etc_va): New declaration.
15032         * lib/version-etc.c: Include stdarg.h, stdlib.h.
15033         (version_etc_copyright): Declare as readonly.
15034         (version_etc_va): New function. Provide a different translatable string
15035         for each possible number of authors < 10. Abbreviate when there are 10
15036         authors or more.
15037         (version_etc): Make this function variadic. Call version_etc_va.
15038         Suggestion from Gary V. Vaughan.
15039
15040         * lib/long-options.h (parse_long_options): Change prototype: the
15041         authors string is moved to the end and becomes variadic.
15042         * lib/long-options.c: Include stdarg.h.
15043         (parse_long_options): Make this function variadic, too.
15044         Call version_etc_va, not version_etc.
15045
15046 2003-10-06  Bruno Haible  <bruno@clisp.org>
15047
15048         * modules/version-etc-2: Remove file.
15049         * MODULES.html.sh (func_all_modules): Remove version-etc-2.
15050
15051 2003-10-06  Bruno Haible  <bruno@clisp.org>
15052
15053         * modules/fatal-signal: New file.
15054         * MODULES.html.sh (func_all_modules): Add fatal-signal.
15055
15056 2003-10-06  Bruno Haible  <bruno@clisp.org>
15057
15058         * m4/fatal-signal.m4: New file.
15059         * m4/signalblocking.m4: New file, from GNU gettext.
15060
15061 2003-10-06  Bruno Haible  <bruno@clisp.org>
15062
15063         * lib/version-etc-2.h: Remove file.
15064         * lib/version-etc-2.c: Remove file.
15065
15066 2003-10-06  Bruno Haible  <bruno@clisp.org>
15067
15068         * lib/fatal-signal.h: New file, from GNU gettext.
15069         * lib/fatal-signal.c: New file, from GNU gettext.
15070
15071 2003-10-05  Paul Eggert  <eggert@twinsun.com>
15072
15073         * README: Rework advice for preventing empty .o files.
15074         Don't recommend ELIDE constructs.  Recommend <stddef.h>,
15075         not <sys/types.h>.
15076
15077 2003-10-04  Karl Berry  <karl@gnu.org>
15078
15079         * lib/argp*: update from libc.
15080
15081 2003-10-04  Karl Berry  <karl@gnu.org>
15082
15083         * config/config.{guess,sub}: update from config.
15084
15085 2003-10-02  Bruno Haible  <bruno@clisp.org>
15086
15087         * modules/lchown (Include): Add lchown.h.
15088         * modules/time_r (Include): Use "..." syntax.
15089         * modules/xgetdomainname (Include): Add xgetdomainname.h.
15090
15091 2003-10-01  Simon Josefsson  <jas@extundo.com>
15092
15093         * MODULES.html.sh (func_all_modules): Move gethostname from section
15094         'based on' to section 'lacking' POSIX:2001.
15095
15096 2003-10-01  Larry Jones  <lawrence.jones@eds.com>
15097
15098         * lib/getpass.c (getpass): Use a no-op fseek when switching from input
15099         to output mode on the same stream.
15100
15101 2003-09-29  Paul Eggert  <eggert@twinsun.com>
15102
15103         * lib/strftime.c (tm_diff) [! HAVE_TM_GMTOFF]:
15104         Fix arg typo in previous patch.
15105
15106 2003-09-28  Jim Meyering  <jim@meyering.net>
15107
15108         * lib/error.c: Correct cpp indentation.
15109
15110 2003-09-27  Paul Eggert  <eggert@twinsun.com>
15111
15112         * modules/free: New file.
15113
15114 2003-09-27  Paul Eggert  <eggert@twinsun.com>
15115
15116         * m4/free.m4: New file.
15117
15118 2003-09-27  Paul Eggert  <eggert@twinsun.com>
15119
15120         * lib/minmax.h (MIN, MAX)
15121         [__STDC__ && defined __GNUC__ && __GNUC__ >= 2]:
15122         Omit the special code that used __typeof__, since we worry that
15123         it could be more trouble than it's worth.  See:
15124         http://mail.gnu.org/archive/html/bug-gnulib/2003-01/msg00090.html
15125         http://mail.gnu.org/archive/html/bug-gnulib/2003-01/msg00095.html
15126
15127         * lib/free.c: New file.
15128
15129 2003-09-27  Oskar Liljeblad  <oskar@osk.mine.nu>
15130
15131         Trivial fixes to Makefile.am parts of module listings.
15132         * modules/strstr: Append strstr.h to lib_SOURCES.
15133         * modules/strcase: Likewise, for strcase.h.
15134
15135 2003-09-27  Karl Berry  <karl@gnu.org>
15136
15137         * config/mkinstalldirs: update from automake.
15138
15139 2003-09-26  Paul Eggert  <eggert@twinsun.com>
15140
15141         * lib/error.c (SIZE_MAX) [!defined SIZE_MAX]: Define.
15142         (error_tail): Do not loop, reallocating temporary buffer, since
15143         the output cannot contain more wide characters than the input
15144         contains bytes, the size must be big enough already.  This avoids
15145         one potential size overflow calculation.  Check for size overflow
15146         when calculating temporary buffer size.  Free temporary buffer
15147         when done, if it was allocated with malloc; this plugs a memory
15148         leak.  Remove casts from void * to pointers, that are no longer
15149         needed now that we're assuming C89 or better.
15150
15151         Merge error changes from glibc.
15152
15153         * lib/error.c, error.h: Update copyright notice header to match glibc.
15154         * lib/error.c [defined _LIBC]: Include <errno.h>, <bits/libc-lock.h>.
15155         (error, error_at_line) [defined _LIBC && defined __libc_ptf_call]:
15156         Disable cancellation while printing error.
15157         * lib/error.h: Prepend __ to parameter names.
15158
15159 2003-09-26  Jim Meyering  <jim@meyering.net>
15160
15161         * lib/error.c (error_tail): Move some declarations
15162         into inner scope where the local variables are used.
15163
15164 2003-09-26  Bruno Haible  <bruno@clisp.org>
15165
15166         * m4/stpncpy.m4 (gl_FUNC_STPNCPY): Add comments about the AIX
15167         stpncpy().
15168         Don't define stpncpy through config.h; it's now done through stpncpy.h.
15169
15170 2003-09-26  Bruno Haible  <bruno@clisp.org>
15171
15172         * lib/stpncpy.h (gnu_stpncpy): New declaration.
15173         (stpncpy): Define as alias for gnu_stpncpy.
15174         * lib/stpncpy.c [!_LIBC]: Define gnu_stpncpy, not stpncpy.
15175
15176 2003-09-25  Simon Josefsson  <jas@extundo.com>
15177
15178         * lib/xgetdomainname.h: New file.
15179         * lib/xgetdomainname.c: New file.
15180
15181 2003-09-25  Simon Josefsson  <jas@extundo.com>
15182             Bruno Haible  <bruno@clisp.org>
15183
15184         * modules/getdomainname: New file.
15185         * modules/xgetdomainname: New file.
15186         * MODULES.html.sh (func_all_modules): Add getdomainname,
15187         xgetdomainname.
15188
15189 2003-09-25  Simon Josefsson  <jas@extundo.com>
15190             Bruno Haible  <bruno@clisp.org>
15191
15192         * m4/getdomainname.m4: New file.
15193
15194 2003-09-25  Simon Josefsson  <jas@extundo.com>
15195             Bruno Haible  <bruno@clisp.org>
15196
15197         * lib/getdomainname.h: New file.
15198         * lib/getdomainname.c: New file.
15199
15200 2003-09-25  Karl Berry  <karl@gnu.org>
15201
15202         * lib/argp-fmtstream.c, argp-help.c: update from libc.
15203
15204 2003-09-25  Karl Berry  <karl@gnu.org>
15205
15206         * config/install-sh: update from automake.
15207
15208 2003-09-25  Bruno Haible  <bruno@clisp.org>
15209
15210         * modules/version-etc-2: New file, from modules/version-etc with
15211         modifications.
15212         * MODULES.html.sh (func_all_modules): Add version-etc-2.
15213
15214 2003-09-25  Bruno Haible  <bruno@clisp.org>
15215
15216         * lib/version-etc-2.h: New file, from version-etc.h with modifications.
15217         * lib/version-etc-2.c: New file, from version-etc.c with modifications.
15218
15219 2003-09-24  Simon Josefsson  <jas@extundo.com>
15220
15221         * modules/xgethostname: Add xgethostname.h.
15222
15223 2003-09-24  Paul Eggert  <eggert@twinsun.com>
15224
15225         * lib/linebuffer.c (freebuffer): Don't free the argument, just
15226         the buffer associated with the argument.  Bug reported by
15227         Simon Josefsson.
15228
15229 2003-09-24  Paul Eggert  <eggert@twinsun.com>
15230
15231         * README: Document assumptions that 'int' is at least 32 bits
15232         wide, that integer arithmetic is 2's complement without overflow,
15233         that there are no holes in integer values, that adding sizes of
15234         two nonoverlapping objects can't overflow, and that all-bits-zero
15235         yields scalar zero.  Fix spelling and capitalization typos.
15236
15237 2003-09-19  Karl Berry  <karl@gnu.org>
15238
15239         * lib/argp.h: update from libc.
15240
15241 2003-09-17  Paul Eggert  <eggert@twinsun.com>
15242
15243         * m4/extensions.m4 (gl_USE_SYSTEM_EXTENSIONS): Call AC_BEFORE first,
15244         to avoid spurious warnings like "AC_RUN_IFELSE was called before
15245         gl_USE_SYSTEM_EXTENSIONS" from autoreconf.
15246
15247 2003-09-17  Paul Eggert  <eggert@twinsun.com>
15248
15249         * gnulib-tool: Use "test -h", not "test -L", for portability
15250         to Solaris 8 /bin/sh.  (This bug is fixed in Solaris 9.)
15251         (tags_regexp): Remove, since \| doesn't conform to POSIX.
15252         (sed_extract_prog): Issue s commands one-by-one, rather than
15253         using \| in one s command.
15254
15255 2003-09-16  Paul Eggert  <eggert@twinsun.com>
15256
15257         * lib/linebuffer.c (readlinebuffer): Return NULL immediately upon
15258         input error, instead of returning NULL the next time we are called
15259         (and therefore losing track of errno).
15260
15261 2003-09-16  Bruno Haible  <bruno@clisp.org>
15262
15263         * gnulib-tool (func_create_testdir): Warn about duplicated
15264         dependencies.
15265
15266 2003-09-15  Paul Eggert  <eggert@twinsun.com>
15267
15268         * modules/argmatch, modules/fatal, modules/obstack,
15269         modules/xalloc, modules/xgethostname: Sort dependencies by
15270         importance, not alphabetically.
15271
15272 2003-09-15  Paul Eggert  <eggert@twinsun.com>
15273
15274         * lib/getndelim2.c (getndelim2): Don't trash errno when a read
15275         fails, so that the caller gets the proper errno.
15276
15277         * lib/readutmp.c (read_utmp): Likewise.
15278         Check for fstat error.  Close stream and free storage
15279         when failing.
15280
15281 2003-09-14  Karl Berry  <karl@gnu.org>
15282
15283         * config/srclist.txt (strdup.c): disable for c89 changes.
15284
15285 2003-09-14  Jim Meyering  <jim@meyering.net>
15286
15287         * lib/getloadavg.c: Correct cpp indentation.
15288         * lib/strdup.c: Likewise.
15289         * lib/vasnprintf.c: Likewise.
15290
15291 2003-09-14  Bruno Haible  <bruno@clisp.org>
15292
15293         * modules/fwriteerror: New file.
15294         * MODULES.html.sh (func_all_modules): Add fwriteerror.
15295
15296 2003-09-14  Bruno Haible  <bruno@clisp.org>
15297
15298         * lib/fwriteerror.h: New file.
15299         * lib/fwriteerror.c: New file.
15300
15301 2003-09-12  Paul Eggert  <eggert@twinsun.com>
15302
15303         * modules/argmatch, modules/exitfail, modules/fatal, modules/obstack,
15304         modules/xgethostname, modules/xalloc: Depend on exit.
15305
15306 2003-09-12  Paul Eggert  <eggert@twinsun.com>
15307
15308         * m4/error.m4: Require AC_FUNC_STRERROR_R rather than invoking it.
15309
15310         * m4/extensions.m4 (gl_USE_SYSTEM_EXTENSIONS): Require AC_AIX
15311         and AC_MINIX, too, so that their extensions are available.
15312
15313         * m4/prereq.m4 (jm_PREREQ_ADDEXT): Remove.  All uses removed.
15314         This macro has been superseded by gl_BACKUPFILE.
15315
15316         More patches to assume C89 or better.
15317
15318         * m4/error.m4 (gl_ERROR): Don't check for vprintf.
15319
15320         * m4/check-decl.m4 (jm_CHECK_DECLS): Include <string.h>, <stdlib.h>
15321         unconditionally.
15322         * m4/closeout.m4 (gl_CLOSEOUT): Don't check for stdlib.h.
15323         * m4/gettimeofday.m4 (AC_FUNC_GETTIMEOFDAY_CLOBBER):
15324         Include <string.h>, <stdlib.h> unconditionally.
15325         * m4/lstat.m4 (gl_PREREQ_LSTAT): Don't check for stdlib.h, free.
15326         * m4/readdir.m4 (GL_FUNC_READDIR): Don't check for string.h.
15327         * m4/readutmp.m4 (gl_PREREQ_READUTMP): Don't check for standard C
15328         headers or for string.h.
15329         * m4/strtoumax.m4 (gl_PREREQ_STRTOUMAX): Don't check for stdlib.h
15330         or strtoul.
15331
15332         * m4/mkstemp.m4 (jm_PREREQ_TEMPNAME): Do not require standard C
15333         headers.
15334         * m4/strdup.m4 (gl_PREREQ_STRDUP): Likewise.
15335         * m4/userspec.m4 (gl_USERSPEC): Likewise.
15336         * m4/xalloc.m4 (gl_PREREQ_XMALLOC): Likewise.
15337         * m4/xstrtod.m4 (gl_XSTRTOD): Likewise.
15338         * m4/xstrtol.m4 (gl_PREREQ_XSTRTOL): Likewise.
15339         * m4/strftime.m4 (_jm_STRFTIME_PREREQS): Don't check for limits.h,
15340         memcpy, memset.
15341         (jm_FUNC_GNU_STRFTIME): Don't require standard C headers.
15342         * m4/strtod.m4 (gl_FUNC_STRTOD): Do not check for float.h.
15343         * m4/strtoimax.m4 (gl_PREREQ_STRTOIMAX): Do not check for stdlib.h,
15344         strtol.
15345         * m4/strtol.m4 (gl_FUNC_STRTOL): Do not check for limits.h.
15346         * m4/userspec.m4 (gl_USERSPEC): Do not check for string.h.
15347         * m4/xstrtol.m4 (gl_PREREQ_XSTRTOL): Do not check for string.h, strtol,
15348         strtoul.
15349
15350 2003-09-12  Paul Eggert  <eggert@twinsun.com>
15351
15352         * lib/argmatch.c, fatal.c, xgethostname.c, xmalloc.c: Include exit.h.
15353         * lib/obstack.c [!defined _LIBC]: Likewise.
15354         * lib/argmatch.c (EXIT_FAILURE): Remove; now done by exit.h
15355         * lib/exitfail.c, fatal.c, xgethostname.c, xmalloc.c: Likewise.
15356         * lib/exitfail.c: Don't include stdlib.h; no longer needed.
15357
15358         More changes to assume C89 or better.
15359
15360         * lib/error.c (error_tail): Assume vprintf.
15361
15362         * lib/argmatch.c (getenv): Remove decl.
15363         * lib/progreloc.c (get_full_program_name): Define via prototype.
15364         * lib/setenv.c (clearenv): Likewise.
15365         * lib/stpncpy.c: Do not include <string.h> or <sys/types.h>; not
15366         needed.
15367         * lib/strdup.c: Include <stdlib.h>, <string.h> unconditionally.
15368         (malloc, memcpy): Remove decls.
15369         * lib/strftime.c (HAVE_LIMITS_H, STDC_HEADERS) [defined _LIBC]: Remove.
15370         (HAVE_MEMCPY) [defined emacs && !defined HAVE_BCOPY]: Remove.
15371         Include <limits.h>, <stddef.h>, <stdlib.h>, <string.h> unconditionally.
15372         (memcpy): Remove macro.
15373         (MEMCPY) [!defined COMPILE_WIDE]: Define to memcpy unconditionally.
15374         (__P): Remove.  All uses removed.
15375         (PTR): Remove.  All uses changed to void *.
15376         (CHAR_BIT, NULL): Remove.
15377         (spaces, zeros, memset_space, memset_zero)
15378         [!defined memset && !defined HAVE_MEMSET && !defined _LIBC]:
15379         Remove.
15380         (LOCALE_PARAM, LOCALE_PARAM_DECL): Remove.
15381         (memcpy_lowcase, memcpy_uppcase, tm_diff, iso_week_days):
15382         Define with prototype.
15383         Remove now-unnecessary prototype decl.
15384         (extra_args_spec): Assume ANSI C.  All uses changed.
15385         (extra_args_spec_iso): Remove.
15386         (my_strftime, emacs_strftimeu): Define via prototype.
15387         * lib/strtod.c: Include <float.h>, <stdlib.h>, <string.h>
15388         unconditionally.
15389         (DBL_MAX, DBL_MIN, HUGE_VAL, NULL): Remove decls.
15390         * lib/strtoimax.c: Include <stdlib.h> unconditionally.
15391         (strtoul, strtol): Remove decls.
15392         * lib/strtol.c (STDC_HEADERS, HAVE_LIMITS_H, NULL, ULONG_MAX,
15393         LONG_MAX): Remove.
15394         Include <limits.h>, <stddef.h>, <stdlib.h>, <string.h> unconditionally.
15395         (LOCALE_PARAM_DECL): Remove.  All uses changed to LOCALE_PARAM_PROTO.
15396         (LOCALE_PARAM_PROTO): New macro.
15397         (INTERNAL, INTERNAL1, WEAKNAME): Assume ANSI C, not K&R.
15398         (INTERNAL (strtol), strtol): Define with a prototype.
15399         (PARAMS): Remove.  All uses removed.
15400         * lib/tempname.c: Include <string.h> unconditionally.
15401         * lib/userspec.c: Include <stdlib.h>, <string.h> unconditionally.
15402         * lib/xgethostname.c (main): Define with a prototype.
15403         * lib/xmalloc.c: Include "xalloc.h" first, to check interface.
15404         Include <stdlib.h> unconditionally.
15405         (calloc, malloc, realloc, free): Remove decls.
15406         * lib/xstrtod.c: Include "xstrtod.h" first, to check interface.
15407         Include <stdlib.h> unconditionally.  Sort include file names.
15408         (strtod): Remove.
15409         (xstrtod): Define with a prototype.
15410         * lib/xstrtol.c: Include <stdlib.h>, <string.h> unconditionally.
15411         (strtol, strtoul): Remove decls.
15412
15413 2003-09-11  Paul Eggert  <eggert@twinsun.com>
15414
15415         More patches to assume C89 or better.
15416         * m4/strndup.m4 (gl_PREREQ_STRNDUP): Remove STDC_HEADERS check.
15417         * m4/strnlen.m4 (gl_PREREQ_STRNLEN): Don't check for memory.h,
15418         string.h, memchr, STDC_HEADERS.
15419
15420 2003-09-11  Paul Eggert  <eggert@twinsun.com>
15421
15422         * lib/strndup.c: Don't include <stdio.h>, <sys/types.h>.
15423         Include <stdlib.h>, <string.h> unconditionally.
15424         Remove now-unnecessary cast to char *.
15425         * lib/strnlen.c: Include <string.h> unconditionally.
15426         * lib/yesno.c (yesno): Define with a prototype.
15427
15428 2003-09-11  Bruno Haible  <bruno@clisp.org>
15429
15430         * config/srclist.txt (setenv.c, unsetenv.c): Disable for the moment.
15431
15432 2003-09-10  Jim Meyering  <jim@meyering.net>
15433
15434         * lib/error.c: Correct indentation of cpp directives.
15435
15436 2003-09-10  Bruno Haible  <bruno@clisp.org>
15437
15438         * m4/strcspn.m4 (gl_PREREQ_STRCSPN): Remove <string.h> check.
15439         * m4/strpbrk.m4 (gl_PREREQ_STRPBRK): Remove <string.h> check.
15440         * m4/strstr.m4 (gl_PREREQ_STRSTR): Remove <string.h> check.
15441         * m4/unicodeio.m4 (gl_UNICODEIO): Remove <string.h> check.
15442         * m4/setenv.m4 (gl_PREREQ_SETENV, gl_PREREQ_UNSETENV): Remove
15443         <stdlib.h> and <string.h> checks.
15444         * m4/xreadlink.m4 (gl_XREADLINK): Remove <stdlib.h> check.
15445         * m4/yesno.m4 (gl_YESNO): Remove <stdlib.h> check.
15446
15447 2003-09-10  Bruno Haible  <bruno@clisp.org>
15448
15449         * lib/strcspn.c: Include <string.h> unconditionally.
15450         * lib/strpbrk.c: Include <string.h> unconditionally.
15451         * lib/strstr.c: Include <string.h> unconditionally.
15452         * lib/unicodeio.c: Include <string.h> unconditionally.
15453         * lib/setenv.c: Include <stdlib.h> and <string.h> unconditionally.
15454         * lib/unsetenv.c: Likewise.
15455         * lib/xreadlink.c: Include <stdlib.h> unconditionally.
15456         * lib/yesno.c: Include <stdlib.h> unconditionally.
15457         (rpmatch): Add prototype.
15458
15459 2003-09-09  Paul Eggert  <eggert@twinsun.com>
15460
15461         More patches to assume C89 or better.
15462         * m4/getcwd.m4 (AC_FUNC_GETCWD_NULL): Don't check for stdlib.h.
15463         * m4/getopt.m4 (gl_GETOPT): Don't check for string.h.
15464         * m4/getugroups.m4 (gl_GETUGROUPS): Do not check for standard C headers
15465         or for string.h.
15466         * m4/getusershell.m4 (gl_PREREQ_GETUSERSHELL): Do not check for
15467         stdlib.h.
15468         * m4/group-member.m4 (gl_PREREQ_GROUP_MEMBER): Do not require standard
15469         C headers.
15470         * m4/hard-locale.m4 (gl_HARD_LOCALE): Do not check for stdlib.h,
15471         string.h.
15472         * m4/hash.m4 (gl_HASH): Do not check for stdlib.h, malloc, free.
15473         * m4/human.m4 (gl_HUMAN): Do not check for stdlib.h, string.h, getenv.
15474         * m4/idcache.m4 (gl_IDCACHE): Do not check for standard C headers,
15475         or for string.h.
15476         * m4/long-options.m4 (gl_LONG_OPTIONS): Do not check for stdlib.h.
15477         * m4/makepath.m4 (gl_MAKEPATH): Do not check for string.h or standard
15478         C headers.
15479         * m4/md5.m4 (gl_MD5): Don't check for limits.h, standard C headers,
15480         memcpy.
15481         * m4/sha.m4 (gl_SHA): Don't check for standard Cheaders, memcpy.
15482         * m4/memchr.m4 (jm_PREREQ_MEMCHR): Don't check for limits.h, stdlib.h.
15483         * m4/memcmp.m4 (gl_PREREQ_MEMCMP): Don't check for string.h.
15484         * m4/memcoll.m4 (gl_MEMCOLL): Likewise.
15485         * m4/memrchr.c (gl_PREREQ_MEMRCHR): Don't check for limits.h.
15486         * m4/mkdir-slash.m4 (gl_PREREQ_MKDIR): Don't check for stdlib.h,
15487         string.h, free.
15488         * m4/mktime.m4 (gl_PREREQ_MKTIME): Don't check for standard C headers.
15489         * m4/modechange.m4 (gl_MODECHANGE): Don't check for standard C headers.
15490         * m4/mountlist.m4 (gl_PREREQ_MOUNTLIST_EXTRA): Don't check for standard
15491         C headers, or for string.h.
15492         * m4/obstack.m4 (gl_OBSTACK): Don't check for stddefe.h, string.h.
15493         (gl_PREREQ_OBSTACK): Don't check for stdlib.h.
15494         * m4/path-concat.m4 (gl_PATH_CONCAT): Don't check for standard C
15495         headers, memory.h, stdlib.h, string.h, strings.h.
15496         * m4/posixtm.m4 (gl_POSIXTM): Don't check for stdlib.h, string.h.
15497         * m4/posixver.m4 (gl_POSIXVER): Don't check for getenv.
15498         * m4/putenv.m4 (gl_PREREQ_PUTENV): Don't check for string.h, memcpy,
15499         strchr.
15500         * m4/readtokens.m4 (gl_READTOKENS): Don't check for standard C
15501         headers, memory.h, string.h.
15502         * m4/regex.m4 (jm_PREREQ_REGEX): Do not check for limits.h, string.h.
15503         * m4/rename.m4 (gl_PREREQ_RENAME): Do not check for stdlib.h, string.h,
15504         free.
15505         * m4/rpmatch.m4 (gl_PREREQ_RPMATCH): Don't check for standard C
15506         headers.
15507         * m4/same.m4 (gl_SAME): Don't check for stdlib.h, string.h, free.
15508         * m4/save-cwd.m4 (gl_SAVE_CWD): Don't check for standard C headers.
15509         * m4/savedir.m4 (gl_SAVEDIR): Don't check for standard C headers.
15510         * m4/strchrnul.m4 (gl_PREREQ_STRCHRNUL): Don't check for string.h.
15511         * m4/xgetcwd.m4 (gl_XGETCWD): Don't check for stdlib.h.
15512
15513 2003-09-09  Paul Eggert  <eggert@twinsun.com>
15514
15515         More K&R removal.
15516
15517         * lib/acosl.c (main): Use a prototype.
15518         * lib/asinl.c, cosl.c, expl.c, frexpl.c, ldexpl.c, sinl.c,
15519         tanl.c: Likewise.
15520
15521         * lib/getloadavg.c (getloadavg, main): Define via prototypes.
15522
15523         * lib/getopt.h (struct option.name): Assume C89, and use 'const'.
15524         (getopt, etopt_long, getopt_long_only, _getopt_internal)
15525         [defined __GNU_LIBRARY__]: Assume C89, so we can always declare
15526         with a prototype.
15527         * lib/getopt.c (const): Remove macro.
15528         Include <string.h> unconditionally.
15529         (my_index): Remove; all uses changed to strchr.
15530         (strlen): Remove decl.
15531         (exchange): Remove forward decl; no longer needed.
15532         (exchange, _getopt_initialize, _getopt_internal, getopt, main):
15533         Define with prototype.
15534         * lib/getopt1.c (const): Remove macro.
15535         (getopt_long, getopt_long_only, main): Define with prototype.
15536
15537         * lib/getugroups.c: Include <string.h> unconditionally.
15538
15539         * lib/getusershell.c: Include <stdlib.h> unconditionally.
15540         (getusershell, setusershell, endusershell, readname, main):
15541         Define with prototypes.
15542
15543         * lib/group-member.c: Include group-member.h first.
15544         Include <stdlib.h> unconditionally.
15545
15546         * lib/hard-locale.c: Include hard-locale.h first.
15547         Include <stdlib.h>, <string.h> unconditionally.
15548
15549         * lib/hash.c (free, malloc): Remove decls.
15550         Include <stdlib.h> unconditionally.
15551
15552         * lib/human.c: Include <stdlib.h>, <string.h> unconditionally.
15553         (getenv): Do not declare.
15554
15555         * lib/idcache.c: Include <string.h> unconditionally.
15556
15557         * lib/long-options.c: Include long-options.h first, to test interface.
15558         Include <stdlib.h> unconditionally.
15559
15560         * lib/makepath.c: Include makepath.h first, to test interface.
15561         Include <stdlib.h> and <string.h> unconditionally.
15562
15563         * lib/linebuffer.c: Include <stdlib.h>.
15564         (free): Remove decl.
15565
15566         * lib/malloc.c: Include <stdlib.h>, for malloc; don't bother with
15567         stddef.h. rpl_malloc returns void *, not char *.
15568         * lib/realloc.c (rpl_realloc): Likewise.  Also, define with a
15569         prototype.
15570
15571         * lib/md5.h: Include <limits.h> unconditionally.
15572         (UINT_MAX_32_BITS): Don't worry about non-__STDC__ case.
15573         (__P): Remove; all uses removed.
15574         * lib/md5.c: Include "md5.h" first.
15575         (md5_init_ctx, md5_read_ctx, md5_finish_ctx, md5_stream,
15576         md5_buffer, md5_process_bytes, md5_process_block):
15577         Define with prototypes.
15578         * lib/sha.h (__P): Remove all uses.  (It wasn't defined??)
15579         * lib/sha.c: Include "sha.h" first.
15580         Include <stdlib.h>, <string.h> unconditionally.
15581
15582         * lib/memchr.c (__ptr_t): Remove; all uses changed to void *.
15583         * lib/memcmp.c (__ptr_t): Likewise.
15584         * lib/memrchr.c (__ptr_t): Likewise.
15585         * lib/memchr.c, memcmp.c, memcoll.c, memrchr.c:
15586         Include <string.h> unconditionally.
15587         * lib/memchr.c, memrchr.c: Include <limits.h> unconditionally.
15588         * lib/memchr.c: Include <stdlib.h> unconditionally.
15589         * lib/memchr.c (LONG_MAX): Remove.
15590         * lib/memrchr.c (LONG_MAX): Likewise.
15591         * lib/memchr.c (__memchr): Define via a prototype.
15592         * lib/memrchr.c (__memrchr): Likewise.
15593         * lib/memcmp.c (__P): Remove, and remove all uses.
15594         (memcmp_bytes, memcmp_common_alignment, memcmp_not_common_alignment):
15595         Remove forward decls; no longer needed.
15596         * lib/memcpy.c, memmove.c, memset.c: Include <stddef.h>.
15597         Use types required by C89 in prototype.
15598
15599         * lib/mkdir.c: Include <stdlib.h>, <string.h> unconditionally.
15600         * lib/savedir.c: Likewise.
15601         * lib/mkdir.c (free): Remove decl.
15602         * lib/rmdir.c (rmdir): Define with a prototype.
15603         * lib/savedir.c: Include savedir.h first, to test interface.
15604
15605         * lib/mktime.c (STDC_HEADERS): Remove.
15606         Include <stdlib.h>, <string.h> unconditionally.
15607
15608         * lib/modechange.c: Include <stdlib.h> unconditionally.
15609         (malloc): Remove decl.
15610
15611         * lib/mountlist.c: Include <stdlib.h>, <string.h> unconditionally.
15612         (free): Remove decl.
15613
15614         * lib/obstack.h (PTR_INT_TYPE) [!defined __PTRDIFF_TYPE__]:
15615         Define to ptrdiff_t, without bothering to check HAVE_STDDEF_H.
15616         (This type really should be intptr_t, but that's a C99ism.)
15617         (_obstack_memcpy): Remove: all uses changed to memcpy.
15618         Include <string.h> unconditionally.
15619         (struct obstack): Assume __STDC__ for types of members
15620         chunkfun, freefun, extra_arg.
15621         (_obstack_newchunk, _obstack_free, _obstack_begin, _obstack_begin_1,
15622         _obstack_memory_used, obstack_alloc_failed_handler, obstack_init,
15623         obstack_begin, obstack_specify_allocation,
15624         obstack_specify_allocation_with_arg, obstack_chunkfun,
15625         obstack_freefun, obstack_free) [! (defined __STDC__ && __STDC__)]:
15626         Remove unprototyped decls and the macros that use them.
15627         * lib/obstack.c (POINTER): Remove.  All uses changed to void *.
15628         (obstack_alloc_failed_handler, CALL_CHUNKFUN, CALL_FREEFUN,
15629         _obstack_begin, _obstack_begin_1, _obstack_allocated_p)
15630         (defined __STDC__ && __STDC__)]:
15631         Remove nonprototyped code.
15632         Include <stdlib.h> unconditionally.
15633         (_obstack_begin, _obstack_begin_1, _obstack_newchunk,
15634         _obstack_allocated_p, _obstack_free, obstack_free,
15635         _obstack_memory_used, print_and_abort):
15636         Define using prototypes.
15637         (obstack_1grow, obstack_1grow_fast, obstack_alloc, obstack_base,
15638         obstack_blank, obstack_blank_fast, obstack_copy, obstack_copy0,
15639         obstack_finish, obstack_grow, obstack_grow0, obstack_make_room,
15640         obstack_next_free, obstack_object_size, obstack_room) [0]:
15641         Remove unused, unprototyped code.
15642
15643         * lib/path-concat.c: Include <stdlib.h>, <string.h> unconditionally.
15644
15645         * lib/physmem.c (physmem_total, physmem_available, main): Define
15646         with prototypes.
15647
15648         * lib/posixtm.c: Include <stdlib.h>, <string.h> unconditionally.
15649         (main): Define with a prototype.
15650
15651         * lib/posixver.c (getenv): Remove decl.
15652
15653         * lib/putenv.c (malloc): Returns void *, not char *.
15654         Include <string.h> unconditionally.
15655         (strchr, memcpy, NULL): Do not define.
15656
15657         * lib/readtokens.c: Include readtokens.h first, to test interface.
15658         Include <stdlib.h>, <string.h> unconditionally.
15659         (init_tokenbuffer): Define with a prototype.
15660
15661         * lib/regex.c (PARAMS): Remove.  All uses removed.
15662         All uses of _RE_ARGS removed, too.
15663         Include <stddef.h>, <stdlib.h>, <string.h>, <limits.h>
15664         unconditionally.
15665         (bzero): Assume memset exists.
15666         (memcmp, memcpy, NULL): Remove.
15667         (SIGN_EXTEND_CHAR): Remove; all uses replaced by casts to signed
15668         char, or assignments to local vars of type signed char.
15669         (init_syntax_once, PREFIX(extract_number_and_incr),
15670         PREFIX(print_partial_compiled_pattern),
15671         PREFIX(print_compiled_pattern), PREFIX(print_double_string),
15672         convert_mbs_to_wcs, print_fastmap, re_set_syntax,
15673         PREFIX(regex_grow_registers), PREFIX(regex_compile),
15674         PREFIX(store_op1), PREFIX(store_op2), PREFIX(insert_op1),
15675         PREFIX(insert_op2), PREFIX(at_begline_loc_p),
15676         PREFIX(at_endline_loc_p), group_in_compile_stack, insert_space,
15677         wcs_compile_range, byte_compile_range, truncate_wchar,
15678         PREFIX(re_compile_fastmap), re_compile_fastmap, re_set_registers,
15679         re_search, re_search_2, PREFIX(re_search_2), re_match, re_match_2,
15680         count_mbs_length, wcs_re_match_2_internal,
15681         byte_re_match_2_internal, PREFIX(group_match_null_string_p),
15682         PREFIX(alt_match_null_string_p),
15683         PREFIX(common_op_match_null_string_p), PREFIX(bcmp_translate),
15684         re_compile_pattern, re_comp, re_exec, regcomp, regexec, regerror,
15685         regfree, PREFIX(extract_number)): Define with prototype.  Remove
15686         now-unnecessary declaration, if any.
15687         (byte_compile_range, PREFIX(regex_compile), re_comp, re_exec,
15688         regcomp, regexec):
15689         Remove now-unnecessary casts among pointer types.
15690         * lib/regex.h (_RE_ARGS): Remove.  All uses removed.
15691
15692         * lib/rename.c: Include <stdlib.h>, <string.h> unconditionally.
15693         (free): Remove decl.
15694
15695         * lib/rpmatch.c: Include <stdlib.h> unconditionally.
15696
15697         * lib/same.c: Include <stdlib.h>, <string.h> unconditionally.
15698         (free): Remove decl.
15699
15700         * lib/save-cwd.c: Include <stdlib.h> unconditionally.
15701         * lib/xgetcwd.c: Likewise.
15702
15703         * lib/stat.c: Include <stdlib.h>, <string.h> unconditionally.
15704         (free): Remove decl.
15705
15706         * lib/strchrnul.c (strchrnul): Define with a prototype.
15707         Fix bug: c_in was not converted to char before searching.
15708
15709         The following changes are not K&R related:
15710
15711         * lib/group-member.h: Include <sys/types.h>, so that this file is
15712         self-contained.
15713         * lib/makepath.h: Likewise.
15714
15715         * lib/getusershell.c (readname, default_index, line_size, readname):
15716         Use size_t, not int, for sizes.
15717         (readname): If the size overflows, report an error instead of
15718         looping forever.
15719
15720 2003-09-09  Paul Eggert  <eggert@twinsun.com>
15721
15722         * config/srclist.txt: Do not get getopt.h, getopt1.c, or regex.h from
15723         libc.
15724
15725 2003-09-09  Paul Eggert  <eggert@twinsun.com>
15726
15727         * README: New section: portability guidelines.
15728
15729 2003-09-09  Derek Robert Price  <derek@ximbiot.com>
15730
15731         * m4/getndelim2.m4 (gl_PREREQ_GETNDELIM2): Assume stdlib.h per the
15732         C89 spec.
15733
15734 2003-09-09  Derek Robert Price  <derek@ximbiot.com>
15735
15736         * lib/getndelim2.c: Assume stdlib.h per the C89 spec.
15737
15738 2003-09-08  Paul Eggert  <eggert@twinsun.com>
15739
15740         Assume C89 or better; remove K&R cruft.
15741         A few of these changes were first proposed by Derek Robert Price
15742         in <http://mail.gnu.org/archive/html/bug-gnulib/2003-07/msg00105.html>.
15743
15744         * lib/addext.c: Include <string.h> unconditionally.
15745         * lib/backupfile.c: Include <string.h>, <stdlib.h> unconditionally.
15746         Don't declare getenv or malloc.
15747
15748         * lib/alloca.c: Include <string.h>, <stdlib.h> unconditionally.
15749         (POINTER_TYPE, pointer): Remove; all uses changed to void *.
15750         (NULL): Remove.
15751         (find_stack_direction, alloca): Use prototypes.
15752
15753         * lib/atexit.c (atexit): Define using a prototype.
15754
15755         * lib/basename.c, dirname.c, stripslash.c:
15756         Include <string.h> unconditionally.
15757
15758         * lib/bcopy.c: Include <stddef.h>.
15759         (bcopy): Define with prototype, using 'const' and 'void' and 'size_t'.
15760
15761         * lib/canon-host.c: Include <stdlib.h>, <string.h> unconditionally.
15762
15763         * lib/error.h (error, error_at_line, error_print_progname)
15764         [! (defined (__STDC__) && __STDC__)]: Remove decls.
15765         * lib/error.c: Include error.h first, to check interface.
15766         Include <stdarg.h>, <stdlib.h>, <string.h> unconditionally.
15767         (VA_START): Remove; all uses changeed to va_start.
15768         (exit, strerror): Remove decls.
15769         (error_print_progname): Prototype uncondionally.
15770         Don't include <errno.h>; no longer needed.
15771         (private_strerror): Remove.
15772         (error_tail): Always define.
15773         (error, error_at_line): Assume C89 or better; always use prototypes.
15774         * lib/fatal.c: Include "fatal.h" first, to test interface.
15775         Include <stdarg.h>, <stdlib.h>, <string.h> unconditionally.
15776         (VA_START): Remove; all uses changed to va_start.
15777         [! (HAVE_VPRINTF || HAVE_DOPRNT || _LIBC)]: Remove support for
15778         this case.
15779         (exit): Remove decl.
15780         (fatal): Prototype unconditionally.  Assume va_start works.
15781         Abort at end, to pacify gcc.
15782
15783         * lib/euidaccess.c (main): Define with a prototype.
15784
15785         * lib/exclude.c: Include <stdlib.h>, <string.h> unconditionally.
15786
15787         * lib/exitfail.c: Include <stdlib.h> unconditionally.
15788
15789         * lib/fnmatch_.h (__P): Remove.  All uses changed to assume
15790         prototypes.
15791         * lib/fnmatch.c: Include fnmatch.h first, to test interface.
15792         Include <string.h>, <stddef.h>, <stdlib.h> unconditionally.
15793         (getenv): Remove decl.
15794         (fnmatch): Define using a prototype.
15795         * lib/fnmatch_loop.c (FCT): Remove forward decl; no longer needed.
15796         (FCT): Define using a prototype.
15797
15798         * lib/getdate.y: Include <stdlib.h>, <string.h> unconditionally.
15799
15800         * lib/gethostname.c: Include <stddef.h>.
15801         (gethostname): Define with prototype.  Length is size_t, not int.
15802
15803 2003-09-08  Paul Eggert  <eggert@twinsun.com>
15804
15805         Assume C89 or better; remove K&R cruft.
15806         * m4/alloca.m4 (gl_PREREQ_ALLOCA): Don't check for stdlib.h, string.h.
15807         * m4/backupfile.m4 (gl_BACKUPFILE): Don't check for stdlib.h,
15808         string.h, getenv, malloc.
15809         * m4/dirname.m4 (gl_DIRNAME): Don't check for string.h or C standard
15810         headers.
15811         * m4/canon-host.m4 (gl_CANON_HOST): Don't check for string.h, stdlib.h.
15812         * m4/error.m4 (jm_PREREQ_ERROR): Do not require STDC headers, and
15813         do not check for strerror.
15814         * m4/exclude.m4: Do not check for stdlib.h, string.h, strings.h.
15815         * m4/exitfail.m4 (gl_EXITFAIL): Do not check for stdlib.h.
15816         * m4/fatal.m4 (gl_FATAL): Do not require STDC headers, and
15817         do not check for doprnt or vprintf.
15818         * m4/fnmatch.m4 (gl_PREREQ_FNMATCH_EXTRA): Remove.  All uses removed.
15819         * m4/getdate.m4 (gl_GETDATE): Don't check for stdlib.h or string.h.
15820
15821 2003-09-08  Paul Eggert  <eggert@twinsun.com>
15822
15823         * lib/getversion.c: Remove; was migrated to backupfile.c in 1997.
15824         getversion.c should have been removed then, but was accidentally
15825         preserved.
15826
15827         * lib/utime.c [!HAVE_UTIMES_NULL]: Include <sys/stat.h>, <fcntl.h>.
15828         (utime_null): Fix typo: 'st' was sometimes called 'sb'.
15829
15830 2003-09-08  Karl Berry  <karl@gnu.org>
15831
15832         * config/config.sub, config.guess, srclistvars.sh: update from savannah
15833                 config, forget about prep.
15834
15835         * config/depcomp, missing: update from automake.
15836
15837 2003-09-07  Paul Eggert  <eggert@twinsun.com>
15838
15839         * modules/time_r: Depend on 'restrict'.  Fix from Simon Josefsson in
15840         <http://mail.gnu.org/archive/html/bug-gnulib/2003-09/msg00028.html>.
15841
15842 2003-09-07  Paul Eggert  <eggert@twinsun.com>
15843
15844         * lib/time_r.c (gmtime_r, localtime_r): Fix silly typo: missing arg to
15845         copy_tm_result.  Bug reported by Simon Josefsson in
15846         <http://mail.gnu.org/archive/html/bug-gnulib/2003-09/msg00028.html>.
15847
15848 2003-09-06  Paul Eggert  <eggert@twinsun.com>
15849
15850         * m4/time_r.m4: New file.
15851         * m4/mktime.m4 (gl_PREREQ_MKTIME): Remove check for limits.h.
15852         * m4/timegm.m4 (gl_FUNC_TIMEGM): Assume that timegm is buggy if mktime
15853         is. Check for timegm declaration.
15854         (gl_PREREQ_TIMEGM): Require gl_FUNC_MKTIME.
15855         Do not check for gmtime_r.
15856         Replace mktime if __mktime_internal does not exist and if mktime
15857         hasn't been replaced already.
15858
15859 2003-09-06  Paul Eggert  <eggert@twinsun.com>
15860
15861         * lib/time_r.c, time_r.h: New files.
15862
15863         * lib/mktime.c (my_mktime_localtime_r): Remove; all uses changed to
15864         __localtime_r.
15865         (__localtime_r) [!defined _LIBC]: New macro.  Include <time_r.h>.
15866         (__mktime_internal) [!defined _LIBC]: Now extern, not static.
15867
15868         * lib/strftime.c (my_strftime_gmtime_r): Remove; all uses changed to
15869         __gmtime_r.
15870         (my_strftime_localtime_r): Remove; all uses changed to __localtime_r.
15871         (__gtime_r, __localtime_r) [!HAVE_TM_GMTOFF]: New macros.
15872         Include <time_r.h>.
15873
15874         * lib/timegm.c: Switch to glibc implementation, with the following
15875         changes:
15876         [defined HAVE_CONFIG_H]: Include <config.h>.
15877         [!defined _LIBC]: Include "timegm.h" rather than <time.h>.
15878         (__mktime_internal) [!defined _LIBC]: New decl.
15879         (__gmtime_r) [!defined _LIBC]: New macro and function.
15880         (timegm): Use a prototype, since gnulib assumes C89.
15881         Do not bother declaring tmp to be const, as it's not really usefu.
15882         * lib/timegm.h: Hoist "#include <time.h>" out of #ifdef.
15883         (timegm): Declare only if HAVE_DECL_TIMEGM.
15884
15885 2003-09-06  Paul Eggert  <eggert@twinsun.com>
15886
15887         * MODULES.html.sh (func_all_modules): Add time_r.
15888         * modules/time_r: New file.
15889         * modules/mktime, modules/strftime, modules/timegm: Depend on time_r.
15890         * modules/timegm: Depend on mktime.  Change maintainer to "all, glibc".
15891
15892 2003-09-03  Paul Eggert  <eggert@twinsun.com>
15893
15894         * lib/human.c (human_readable): Fix bug that rounded 10501 to 10k.
15895         Bug reported by Lute Kamstra in
15896         <http://mail.gnu.org/archive/html/bug-gnulib/2003-09/msg00003.html>.
15897
15898         * lib/getdate.y (relative_time_table): Use tDAY_UNIT for "tomorrow",
15899         "yesterday", "today", and "now" rather than tMINUTE_UNIT.  Of
15900         course with correspondingly smaller numbers for tomorrow and
15901         yesterday.  From Tadayoshi Funaba.  Originally installed into
15902         sh-utils on 1999-08-07, but the patch got lost (I guess during the
15903         coreutils merge?).
15904
15905 2003-08-31  Simon Josefsson  <jas@extundo.com>
15906
15907         * modules/timegm: New file.
15908         * MODULES.html.sh (func_all_modules): Add timegm.
15909
15910 2003-08-31  Simon Josefsson  <jas@extundo.com>
15911
15912         * m4/timegm.m4: New file.
15913
15914 2003-08-31  Simon Josefsson  <jas@extundo.com>
15915
15916         * lib/timegm.h: New file.
15917         * lib/timegm.c: New file.  Based on
15918         wget-1.8.2/src/http.c:mktime_from_utc.
15919
15920 2003-08-31  Karl Berry  <karl@gnu.org>
15921
15922         * lib/argp.h: update from libc.
15923
15924 2003-08-28  Bruno Haible  <bruno@clisp.org>
15925
15926         * m4/fnmatch.m4 (_AC_LIBOBJ_FNMATCH): Remove AC_DEFINE of fnmatch here.
15927         This avoids havoc on compilers for which '#define fnmatch rpl_fnmatch'
15928         followed by '#define fnmatch fnmatch_posix' gives an error.
15929
15930 2003-08-28  Bruno Haible  <bruno@clisp.org>
15931
15932         * lib/binary-io.h: Undefine O_BINARY before defining it. This avoids a
15933         warning on QNX, which defines O_BINARY to 000000.
15934
15935 2003-08-27  Jim Meyering  <jim@meyering.net>
15936
15937         * m4/mkstemp.m4: Require that the system mkstemp be able to create
15938         70 temporary files, not just 30.  Tru64 V4.0F's mkstemp function
15939         would fail after 32.  Reported by Danny Levinson.  Details here:
15940         http://mail.gnu.org/archive/html/bug-coreutils/2003-08/msg00124.html
15941
15942 2003-08-24  Bruno Haible  <bruno@clisp.org>
15943
15944         * lib/binary-io.h: Include <stdio.h>, to avoid a compilation error when
15945         MSVC7 <stdio.h> is included later.
15946
15947 2003-08-22  Simon Josefsson  <jas@extundo.com>
15948
15949         * modules/strndup (Makefile.am): Add strndup.h to lib_SOURCES.
15950
15951 2003-08-20  Karl Berry  <karl@gnu.org>
15952
15953         * m4/lib-ld.m4: serial 1003 from gettext, no changes besides serial.
15954
15955 2003-08-20  Bruno Haible  <bruno@clisp.org>
15956
15957         * modules/progname: New file.
15958         * MODULES.html.sh (func_all_modules): Add progname.
15959
15960 2003-08-20  Bruno Haible  <bruno@clisp.org>
15961
15962         * lib/progname.h: New file, from GNU gettext.
15963         * lib/progname.c: New file, from GNU gettext.
15964         * lib/progreloc.c: New file, from GNU gettext.
15965
15966 2003-08-19  Jim Meyering  <jim@meyering.net>
15967
15968         * m4/lib-ld.m4: Revert yesterday's change, per Bruno's request here:
15969         http://mail.gnu.org/archive/html/bug-gnulib/2003-08/msg00155.html
15970
15971 2003-08-19  Bruno Haible  <bruno@clisp.org>
15972
15973         * m4/xalloc.m4 (gl_PREREQ_XSTRDUP): Don't check for <string.h> any
15974         more.
15975
15976 2003-08-19  Bruno Haible  <bruno@clisp.org>
15977
15978         * lib/xstrdup.c: Assume <string.h> exists.
15979
15980 2003-08-18  Paul Eggert  <eggert@twinsun.com>
15981
15982         * modules/stdbool: Add BUILT_SOURCES.  Prefer $@ to target name
15983         in makefile rules.
15984
15985 2003-08-18  Jim Meyering  <jim@meyering.net>
15986
15987         * m4/getloadavg.m4: Use [\t ], not [ \t] (where \t is a literal TAB).
15988         * m4/lib-ld.m4: Likewise.
15989
15990 2003-08-18  Jim Meyering  <jim@meyering.net>
15991
15992         * lib/setenv.h: Indent nested cpp directive.
15993         * lib/vasnprintf.c: Remove trailing blanks.
15994
15995 2003-08-17  Simon Josefsson  <jas@extundo.com>
15996
15997         * modules/xstrndup: New file.
15998         * MODULES.html.sh (func_all_modules): Add xstrndup.
15999
16000 2003-08-17  Simon Josefsson  <jas@extundo.com>
16001
16002         * modules/argp: Fix autoconf macro name. Add more dependencies.
16003
16004 2003-08-17  Simon Josefsson  <jas@extundo.com>
16005
16006         * m4/xstrndup.m4: New file.
16007
16008 2003-08-17  Simon Josefsson  <jas@extundo.com>
16009
16010         * m4/argp.m4: New file.
16011
16012 2003-08-17  Simon Josefsson  <jas@extundo.com>
16013             Bruno Haible  <bruno@clisp.org>
16014
16015         * lib/xstrndup.h: New file.
16016         * lib/xstrndup.c: New file.
16017
16018 2003-08-17  Bruno Haible  <bruno@clisp.org>
16019
16020         * modules/strndup (Files, Include): Add lib/strndup.h.
16021
16022 2003-08-17  Bruno Haible  <bruno@clisp.org>
16023
16024         * modules/euidaccess (Files): Add lib/euidaccess.h.
16025
16026 2003-08-17  Bruno Haible  <bruno@clisp.org>
16027
16028         * lib/strndup.h: New file.
16029
16030 2003-08-17  Bruno Haible  <bruno@clisp.org>
16031
16032         * gnulib-tool (func_create_testdir): Handle gl_USE_SYSTEM_EXTENSIONS
16033         like AC_GNU_SOURCE.
16034         * modules/extensions (configure.ac): Comment out the invocation of
16035         gl_USE_SYSTEM_EXTENSIONS.
16036
16037 2003-08-16  Paul Eggert  <eggert@twinsun.com>
16038
16039         Merges from coreutils, etc.
16040         * m4/rpmatch.m4 (gl_PREREQ_RPMATCH): Insert ':' to prevent a syntax
16041         error in gl_FUNC_MATCH.  This fixes a bug I introduced on 2003-05-28.
16042         * m4/readlink.m4 (gl_PREREQ_READLINK): Renamed from gl_PREREQ_READLINE,
16043         fixing a typo.
16044         * m4/host-os.m4 (UTILS_HOST_OS): Add GNU/NetBSD, GNU/FreeBSD.
16045         * m4/hash.m4 (gl_HASH): Use AM_STDBOOL_H, not AC_HEADER_STDBOOL.
16046
16047 2003-08-16  Paul Eggert  <eggert@twinsun.com>
16048
16049         Document merge from coreutils.
16050         * modules/alloca: Append $(ALLOCA_H) to BUILT_SOURCES.
16051         * modules/fnmatch: Append $(FNMATCH_H) to BUILT_SOURCES.
16052         * modules/utime: Add m4/utimes-null.m4.
16053
16054 2003-08-16  Paul Eggert  <eggert@twinsun.com>
16055
16056         * lib/regex.h, strdup.c, strtoll.c, strtoul.c: Do not normalize white
16057         space, undoing this 2003-08-12 change:
16058         <http://mail.gnu.org/archive/html/bug-gnulib/2003-08/msg00080.html>
16059
16060 2003-08-16  Paul Eggert  <eggert@twinsun.com>
16061
16062         * config/srclist.txt: Get regex.h, strdup.c, strtoll.c,
16063         strtoul.c from libc, undoing this 2003-08-12 change:
16064         <http://mail.gnu.org/archive/html/bug-gnulib/2003-08/msg00080.html>
16065
16066 2003-08-16  Jim Meyering  <jim@meyering.net>
16067
16068         Merges from coreutils.
16069         * m4/readdir.m4 (GL_FUNC_READDIR): Change name to have GL_ (not jm_)
16070         prefix.  Adjust cache variables similarly.  Create 500 rather than
16071         just 300 files, to exercise bug on Darwin6.5, too.
16072         * m4/perl.m4 (jm_PERL): Use $am_missing_run, not undefined
16073         $missing_dir.
16074         * m4/jm-winsz1.m4: Require AC_SYS_POSIX_TERMIOS, not
16075         AM_SYS_POSIX_TERMIOS.
16076         Reported by mkc@mathdogs.com.
16077         Also change use of $am_cv_sys_posix_termios
16078         to $ac_cv_sys_posix_termios.  Reported by Andreas Schwab.
16079         * m4/getgroups.m4 (jm_FUNC_GETGROUPS): Rewrite to use AC_FUNC_GETGROUPS
16080         and (if needed) to call AC_LIBOBJ and to set GETGROUPS_LIB.
16081         * m4/fsusage.m4 [__GLIBC__]: GNU libc's statvfs stats each mount point
16082         in /proc/mounts until it finds one with matching device number.  This
16083         is unnecessary when the FILE argument *is* a mount point.  No stat call
16084         is necessary in that case.  So, disable the statvfs-testing code on
16085         systems with GNU libc.  Reported by Andrei Gaponenko via Tim Waugh
16086         as RedHat bug# 84846.
16087         * m4/c-stack.m4 (AC_SYS_XSI_STACK_OVERFLOW_HEURISTIC): Limit stack size
16088         to 1MB, so as not to render systems with no stack size limit (e.g.,
16089         linux-2.2.x) unusable.  Suggestion and code from Bruno Haible.
16090         Include <unistd.h>.  On some systems,
16091         it is required for the definition of _SC_PAGESIZE.
16092
16093 2003-08-16  Jim Meyering  <jim@meyering.net>
16094
16095         Merge from coreutils.
16096         * lib/xstrtoimax.c: #else #if -> #elif.
16097         * lib/xstrtoumax.c: Likewise.
16098
16099 2003-08-16  Jim Meyering  <jim@meyering.net>
16100
16101         * m4/utimes.m4 (gl_FUNC_UTIMES): New file.
16102         * m4/utimes.m4: Removed.
16103         * m4/utimes-null.m4: Renamed from utimes.m4.
16104
16105         * m4/c-stack.m4 (AC_SYS_XSI_STACK_OVERFLOW_HEURISTIC): Limit stack size
16106         to 1MB, so as not to render systems with no stack size limit (e.g.,
16107         linux-2.2.x) unusable.  Suggestion and code from Bruno Haible.
16108         Include <unistd.h>.  On some systems,
16109         it is required for the definition of _SC_PAGESIZE.
16110
16111 2003-08-16  Jim Meyering  <jim@meyering.net>
16112         and Paul Eggert  <eggert@cs.ucla.edu>
16113
16114         Merges from coreutils, etc.
16115
16116         * m4/jm-macros.m4 (AC_LANG_SOURCE(C)): New macro, undefine, then define
16117         using the latest version from cvs.  This avoids problems with #line
16118         directives using a vendor (Sun) compiler.
16119         (jm_MACROS): Bump prerequisite from 2.52g to 2.57.
16120         Don't set GETGROUPS_LIB here; now it's
16121         done via getgroups.m4's wrapper function.
16122         AC_SUBST OPTIONAL_BIN_PROGS, OPTIONAL_BIN_ZCRIPTS, and MAN here,
16123         rather than just in sh-util/configure.in, so that the
16124         now-shared-by-fileutils-and-textutils lib/Makefile.am are all the
16125         same.
16126         Use AC_CONFIG_LIBOBJ_DIR(lib) to tell the new
16127         AC_FUNC_GETLOADAVG where to find getloadavg.c.
16128         Require AC_FUNC_FTW, gt_INTTYPES_PRI, gl_CLOCK_TIME,
16129         UTILS_SYS_OPEN_MAX, GL_FUNC_GETCWD_PATH_MAX, GL_FUNC_READDIR,
16130         gl_FSUSAGE, gl_MOUNTLIST, AC_FUNC_CANONICALIZE_FILE_NAME.
16131         Remove code that is now done by the newly-required macros.
16132         Append $(EXEEXT) to DF_PROG.
16133         AC_LIBOBJ fchdir-stub if fchdir doesn't exist; similarly for fchown.
16134         Do not invoke or require the following here,
16135         since prereq.m4 or some gnulib .m4 now does this for us:
16136         gl_REGEX, UTILS_FUNC_MKDIR_TRAILING_SLASH, jm_BISON, gl_FUNC_MKTIME,
16137         jm_FUNC_LSTAT, jm_FUNC_STAT, jm_FUNC_REALLOC, jm_FUNC_MALLOC,
16138         jm_FUNC_NANOSLEEP, jm_FUNC_READDIR, jm_FUNC_MEMCMP,
16139         jm_FUNC_GLIBC_UNLOCKED_IO, AC_FUNC_FNMATCH_GNU, jm_FUNC_PUTENV,
16140         jm_AC_PREREQ_XSTRTOUMAX, jm_AC_PREREQ_XSTRTOIMAX,
16141         AC_FUNC_ERROR_AT_LINE, jm_FUNC_GNU_STRFTIME, AC_FUNC_VPRINTF,
16142         vb_FUNC_RENAME, UTILS_FUNC_MKSTEP, jm_FUNC_UTIME, AM_FUNC_GETLINE,
16143         AC_FUNC_OBSTACK.
16144         Do not replace the following functions, as this is now the job
16145         of some gnulib .m4: strcasecmp, strncasecmp, dup2, gethostname,
16146         getusershell, sig2str, strcspn, stpcpy, strstr, strtol, strtoul
16147         strpbrk, euidaccess, memcmp, rmdir, rpmatch, strndup, strverscmp,
16148         atexit getpass, strdup, getpagesize.
16149         Replace 'raise'.
16150         Do not check for the following functions, as this is now the job
16151         of some gnulib .m4: bcopy, canonicalize_file_name, fchdir, ftime,
16152         getcwd, getmntinfo, resolvepath.  But check for sysctl, setreuid,
16153         setregid.
16154         (jm_CHECK_ALL_HEADERS): Do not check for fenv.h.
16155         Check for sys/sysctl.h.
16156         (jm_CHECK_ALL_TYPES): Do not require AC_STRUCT_TM, AC_STRUCT_TIMEZONE,
16157         jm_CHECK_TYPE_STRUCT_TIMESPEC.  Invoke gt_TYPE_SSIZE_T instead
16158         of checking for ssize_t ourselves.
16159
16160         * m4/prereq.m4 (jm_PREREQ): Don't invoke macros; AC_REQUIRE them.
16161         Require every macro that gnulib/modules/* suggests for us.
16162         (jm_PREREQ_ADDEXT): New macro.
16163         (jm_PREREQ_STAT): Check for 'struct statfs' on Ultrix 4.4.
16164         Require jm_AC_TYPE_LONG_LONG instead of invoking it.
16165
16166         * m4/physmem.m4 (gl_SYS__SYSTEM_CONFIGURATION): New macro.
16167         (gl_PHYSMEM): Use it.
16168         Also check for `table' function.
16169         Check for new headers and functions.
16170         Add check for sys/sysmp.h.
16171         With suggestions from Kaveh Ghazi.
16172         Ignore headers that are present but cannot be compiled.  This
16173         avoids spurious warnings on Solaris 9 sparc with Forte Developer 7
16174         C 5.4.
16175
16176 2003-08-15  Paul Eggert  <eggert@twinsun.com>
16177
16178         Document merge from coreutils.
16179         * modules/userspec: Depend on posixver.
16180         * modules/strftime: Depend on tzset.
16181
16182 2003-08-15  Paul Eggert  <eggert@twinsun.com>
16183
16184         * lib/config.charset, ref-add.sin, ref-del.sin: Use three spaces,
16185         rather than tab, after '#' in shell-script copyright notices.
16186         Suggested by Bruno Haible.
16187
16188 2003-08-15  Paul Eggert  <eggert@twinsun.com>
16189
16190         * config/srclist-update: Use three spaces, rather than tab, after '#'
16191         in shell-script copyright notices.  Suggested by Bruno Haible.
16192         Remove unnecessary parenthesization in regular expression.
16193
16194 2003-08-15  Jim Meyering  <jim@meyering.net>
16195
16196         Merge from coreutils.
16197         * lib/xgethostname.c: Include <stdlib.h>.
16198         (xghostname): Don't exit for anything other than memory-related
16199         failure; just return NULL.
16200         * lib/userspec.c: Include "posixver.h".
16201         (parse_user_spec): Accept `.' as a separator only
16202         in pre-POSIX-200112 mode.
16203         * lib/strtoimax.c: Use #elif rather than #else #if.
16204         * lib/strftime.c (my_strftime) [!_LIBC && HAVE_TZNAME && HAVE_TZSET]:
16205         Remove function, now that we can rely on a working tzset function.
16206         [!_LIBC]: Ensure that the required autoconf test has been run.
16207         [!defined _NL_CURRENT && HAVE_STRFTIME]:
16208         Use underlying_strftime for %r.
16209         * lib/sha.c: Merge in some clean-up and optimization changes from
16210         glibc.
16211         * lib/sha.c (sha_stream) [BLOCKSIZE]: Move definition to top of file.
16212         Ensure that it is a multiple of 64.
16213         Rearrange loop exit tests so as to avoid performing an
16214         additional fread after encountering an error or EOF.
16215         * lib/realloc.c: Update copyright date.
16216
16217 2003-08-15  Jim Meyering  <jim@meyering.net>
16218         and Paul Eggert  <eggert@twinsun.com>
16219
16220         Merge from coreutils.
16221         * lib/readutmp.h (HAVE_UTMPX_H): Undef if struct utmp has the ut_exit
16222         member but strut utmpx does not.  Needed for AIX 4.3.3.
16223         (UT_EXIT_E_TERMINATION, UT_EXIT_E_EXIT): Define.
16224
16225 2003-08-15  Jim Meyering  <jim@meyering.net>
16226         and Paul Eggert  <eggert@cs.ucla.edu>
16227
16228         Merges from coreutils, etc.
16229         * m4/strftime.m4 (_jm_STRFTIME_PREREQS):
16230         Require gl_FUNC_TZSET_CLOBBER.
16231         * m4/readutmp.m4 (gl_READUTMP): Check for ut_exit.ut_exit,
16232         ut_exit.e_exit, ut_exit.ut_termination, and ut_exit.e_termination
16233         members.
16234
16235 2003-08-14  Paul Eggert  <eggert@twinsun.com>
16236
16237         Help the merge from coreutils.
16238         * m4/gettimeofday.m4 (gl_GETTIMEOFDAY_REPLACE_LOCALTIME): New macro.
16239         (AC_FUNC_GETTIMEOFDAY_CLOBBER): Use it.
16240         * m4/tzset.m4: Use it too.
16241
16242 2003-08-14  Paul Eggert  <eggert@twinsun.com>
16243
16244         * modules/tzset: New file.
16245
16246 2003-08-14  Jim Meyering  <jim@meyering.net>
16247
16248         Merges from coreutils.
16249         * modules/fnmatch: Use the `$(FNMATCH_H)' notation for AC_REPLACED
16250         variable names, rather than @FNMATCH_H@.
16251         * modules/alloca: Likewise for $(ALLOCA_H).
16252
16253         * modules/fnmatch (fnmatch.h): Use `$@' in the commands, in place of
16254         the three copies of the literal target, `fnmatch.h'.
16255         * modules/alloca (alloca.h): Likewise.
16256
16257 2003-08-14  Jim Meyering  <jim@meyering.net>
16258
16259         Merge from coreutils.
16260         * m4/tzset.m4: New file.
16261         * m4/ls-mntd-fs.m4 (jm_LIST_MOUNTED_FILESYSTEMS): Move the
16262         MOUNTED_VMOUNT test to precede the MOUNTED_GETMNTENT1 tests, since
16263         otherwise, AIX 5.1 systems would end up using the latter.
16264         MOUNTED_GETMNTENT1 support is inadequate on such systems: 1) detecting
16265         whether a file system is remote doesn't work  2) the MOUNTED_VMOUNT
16266         code reports the HOSTNAME:/MOUNT_POINT, while the MOUNTED_GETMNTENT1
16267         code reports merely /MOUNT_POINT.  Reported by Mike Jetzer.
16268
16269 2003-08-14  Jim Meyering  <jim@meyering.net>
16270
16271         Merge from coreutils.
16272         * lib/obstack.h: Whitespace changes.
16273         * lib/mountlist.c: Remove anachronistic casts of xmalloc, xrealloc,
16274         and xcalloc return values.
16275         (read_filesystem_list) [MOUNTED_GETFSSTAT]:
16276         Use MNT_NOWAIT, rather than MNT_WAIT.  Otherwise, `df DIR' could
16277         hang on OSF/1 5.1 for DIR on both local and remote file systems.
16278         Reported by (and fix confirmed by) Nelson H. F. Beebe.
16279         (read_filesystem_list) [MOUNTED_VMOUNT]: Detect any
16280         error from mntctl.
16281         Use mntctl's return value to drive the entry-processing loop, since
16282         we can't rely on the value of the vmt_length member in the last
16283         entry.  On some systems doing so could result in exhausting
16284         virtual memory.  Based in part on a patch from Mike Jetzer.
16285
16286 2003-08-14  Jim Meyering  <jim@meyering.net>
16287         and Paul Eggert  <eggert@twinsun.com>
16288
16289         Merges from coreutils, plus other fixes.
16290         * lib/physmem.c: Merge in portability changes from gcc/libiberty
16291         to support AIX, IRIX, Tru64, and Windows.  See the ChangeLog there
16292         for credits and details.  Thanks to Kaveh Ghazi for helping
16293         to keep these files in sync.
16294         (ARRAY_SIZE): Define it.
16295         (physmem_total, physmem_available): Add comments. From Kaveh Ghazi.
16296         * lib/memcasecmp.c: Remove unnecessary parentheses after 'defined'.
16297         (memcasecmp): Don't assume size_t fits in unsigned int.
16298         Remove casts and duplicate code.
16299         * lib/md5.c: Include <string.h> and <stdlib.h> unconditionally.
16300         (memcpy): Remove definition.
16301         Merge in some clean-up and optimization changes from glibc.
16302         [BLOCKSIZE]: Move definition to top of file.
16303         Ensure that it is a multiple of 64.
16304         Rearrange loop exit tests so as to avoid performing an
16305         additional fread after encountering an error or EOF.
16306         * lib/md5.h (md5_uintptr): Define.
16307         * lib/makepath.c (CLEANUP_CWD): Report an error if we failed to
16308         return to the initial working directory.  Preserve errno
16309         for caller.
16310         * lib/idcache.c: Include "xalloc.h".
16311         (xmalloc, xrealloc): Remove decls.
16312         (getuser): Remove casts no longer required in C89.
16313         * lib/human.c: Include stdio.h, for sprintf.
16314         * lib/group-member.c: Include "xalloc.h".
16315         (xmalloc, xrealloc): Remove decls.
16316         (get_group_info): Remove casts no longer required in C89.
16317         * lib/getusershell.c (readname): Remove casts no longer required in
16318         C89.
16319         * lib/gettimeofday.c (rpl_gmtime, rpl_tzset): New functions.
16320         * lib/getline.c: Whitespace fix, from coreutils.
16321
16322 2003-08-13  Paul Eggert  <eggert@twinsun.com>
16323
16324         * m4/exclude.m4 (gl_EXCLUDE): Require AC_C_INLINE, AC_HEADER_STDC.
16325         Check for isascii.
16326
16327         * m4/gettext.m4, iconv.m4, intdiv0.m4, inttypes-pri.m4, lib-link.m4,
16328         lib-prefix.m4, longdouble.m4, po.m4, progtest.m4, signed.m4:
16329         Undo previous (whitespace-only) change.
16330
16331 2003-08-13  Paul Eggert  <eggert@twinsun.com>
16332
16333         * lib/exclude.c: Include <ctype.h>
16334         (IN_CTYPE_DOMAIN): New macro.
16335         (is_space): New fn.
16336         (add_exclude_file): If LINE_END is a space, ignore trailing spaces
16337         and empty lines.
16338
16339         * lib/argp-help.c, argp-parse.c, config.charset, getopt.h:
16340         Undo previous (whitespace-only) change.
16341
16342 2003-08-13  Paul Eggert  <eggert@twinsun.com>
16343
16344         * config/srclist-update: Change update back to the old behavior,
16345         leaving whitespace alone.  Use one 'sed' command rather than a
16346         pipeline.
16347         (fixlicense): Now a variable, not a function.
16348         (remove_trailing_blanks): Remove.
16349         (fixfile): Don't invoke unexpand or cat, or remove trailing blanks.
16350         * config/config.guess, config.sub, install-sh, missing, texinfo.tex:
16351         Undo previous (whitespace-only) change.
16352
16353 2003-08-12  Paul Eggert  <eggert@twinsun.com>
16354
16355         Merge from coreutils.
16356         * modules/euidaccess: Add lib_SOURCES, include for new
16357         file euidaccess.h
16358
16359 2003-08-12  Paul Eggert  <eggert@twinsun.com>
16360
16361         * m4/gettext.m4, iconv.m4, intdiv0.m4, inttypes-pri.m4, lib-link.m4,
16362         lib-prefix.m4, longdouble.m4, po.m4, progtest.m4, signed.m4:
16363         Normalize leading white space and remove trailing white space.
16364
16365         Merge from coreutils
16366         * m4/euidaccess.m4 (gl_FUNC_EUIDACCESS): Check for euidaccess decl.
16367
16368         * m4/lib-ld.m4, lib-link.m4, lib-prefix.m4: Regenerate from gettext
16369         0.12.1.  These files are now being upgraded automatically by
16370         ../config/srclist-update.
16371
16372 2003-08-12  Paul Eggert  <eggert@twinsun.com>
16373
16374         * lib/argp-help.c, argp-parse.c, config.charset, getopt.h:
16375         Normalize leading white space and remove trailing white space.
16376         * lib/ref-add.sin, ref-del.sin: Use '#' before empty line in copyright
16377         notice, as per ../config/srclist-update.
16378
16379         Merge from coreutils.
16380         * lib/euidaccess.h: New file.
16381         * lib/euidaccess.c: Include it.
16382         * lib/.cppi-disable: Add printf-args.h, printf-parse.h, stdbool_.h,
16383         vasnprintf.h, vasprintf.h.  Remove strdup.c, gettext.h.
16384         * lib/regex.h, strdup.c, strtoll.c, strtoul.c: Normalize white space.
16385
16386 2003-08-12  Paul Eggert  <eggert@twinsun.com>
16387
16388         * config/srclist-update: Add copyright notice.
16389         (remove_id_lines, remove_trailing_blanks): New constants.
16390         (fixfile): Use them to normalize spacing a bit in copied files.
16391         * config/config.guess, config.sub, install-sh, missing, texinfo.tex:
16392         Normalize leading white space and remove trailing white space.
16393
16394         * config/texinfo.tex: Sync with texinfo.
16395
16396         * config/srclist.txt: Don't get regex.h, strdup.c, strtoll.c,
16397         strtoul.c from libc, to merge coreutils whitespace changes.
16398
16399         * config/srclist.txt: Get the following m4 files from gettext:
16400         codeset.m4, gettext.m4, glibc21.m4, iconv.m4, intdiv0.m4,
16401         inttypes-pri.m4, lcmessage.m4, lib-ld.m4, lib-link.m4, lib-prefix.m4,
16402         longdouble.m4, nls.m4, po.m4, progtest.m4, signed.m4, wchar_t.m4,
16403         wint_t.m4.
16404
16405 2003-08-12  Karl Berry  <karl@gnu.org>
16406
16407         * config/srclist.txt: can't sync vasnprintf.c any more, changes have
16408         been made.
16409
16410 2003-08-11  Paul Eggert  <eggert@twinsun.com>
16411
16412         * modules/gnu-source, m4/gnu-source.m4:
16413         Remove; we're assuming Autoconf 2.54 or later now.
16414         Suggested by Bruno Haible.
16415         * MODULES.html.sh (func_all_modules): Remove gnu-source.
16416
16417 2003-08-11  Bruno Haible  <bruno@clisp.org>
16418
16419         * m4/vasnprintf.m4 (gl_PREREQ_VASNPRINTF): Also check for wcslen.
16420
16421 2003-08-11  Bruno Haible  <bruno@clisp.org>
16422
16423         * lib/vasnprintf.c (local_wcslen): New function, for Solaris 2.5.1.
16424         (vasnprintf): Use it instead of wcslen.
16425
16426 2003-08-11  Bruno Haible  <bruno@clisp.org>
16427
16428         * lib/stdbool_.h (_Bool): Undo last change; instead use a negative enum
16429         value to ensure that _Bool promotes to int. Use #define for _Bool when
16430         using the Solaris C compiler. Adds comments suggested by Paul Eggert.
16431
16432 2003-08-10  Karl Berry  <karl@gnu.org>
16433
16434         * lib/regex.h: update from libc (whitespace fix).
16435
16436 2003-08-09  Paul Eggert  <eggert@twinsun.com>
16437
16438         Merge some files from coreutils.  These changes were
16439         originally made by Jim Meyering.
16440         * lib/acl.c: Include <sys/types.h> before <sys/stat.h>;
16441         many older Unixes require this.
16442         * lib/alloca.c (alloca): Remove cast to argument of free;
16443         no longer needed in C89.
16444         * lib/alloca_.h, regex.h: Fix white space to match
16445         what GNU indent does.
16446
16447 2003-08-09  Paul Eggert  <eggert@twinsun.com>
16448
16449         * m4/regex.m4 (jm_INCLUDED_REGEX): Change "\201" to "\371";
16450         apparently Emacs's Unicode mode got confused before my 2003-08-05
16451         checkin.
16452
16453 2003-08-08  Paul Eggert  <eggert@twinsun.com>
16454
16455         * m4/extensions.m4: New file.
16456         * m4/timespec.m4 (jm_CHECK_TYPE_STRUCT_TIMESPEC):
16457         Require gl_USE_SYSTEM_EXTENSIONS.
16458         * m4/unlocked-io.m4 (jm_FUNC_GLIBC_UNLOCKED_IO):
16459         Require gl_USE_SYSTEM_EXTENSIONS rather than AC_GNU_SOURCE.
16460
16461 2003-08-08  Paul Eggert  <eggert@twinsun.com>
16462
16463         * MODULES.html.sh (func_all_modules): Add extensions, gnu-source.
16464         * modules/extensions, modules/gnu-source: New files.
16465         * modules/timespec, modules/unlocked-io: Depend on extensions.
16466
16467 2003-08-07 Paul Eggert  <eggert@twinsun.com>
16468
16469         * modules/restrict: New file.
16470         * MODULES.html.sh (func_all_modules): Add restrict.
16471         * modules/regex: Depend on restrict.
16472
16473 2003-08-07  Paul Eggert  <eggert@twinsun.com>
16474
16475         * m4/restrict.m4: New file.
16476         * m4/regex.m4 (jm_PREREQ_REGEX): Add gl_C_RESTRICT.
16477
16478 2003-08-07  Bruno Haible  <bruno@clisp.org>
16479
16480         * modules/getndelim2 (Makefile.am): Add the files to EXTRA_DIST, not
16481         lib_SOURCES, because getndelim2.m4 now uses AC_LIBOBJ(getndelim2).
16482
16483 2003-08-07  Bruno Haible  <bruno@clisp.org>
16484
16485         * m4/getndelim2.m4 (gl_GETNDELIM2): Use AC_LIBOBJ(getndelim2). This
16486         makes the module 'getndelim2' compatible with the module 'getline'.
16487
16488 2003-08-05  Paul Eggert  <eggert@twinsun.com>
16489
16490         * m4/regex.m4 (jm_INCLUDED_REGEX): Replace a single non-ASCII
16491         byte with "\201" to avoid glitches when editing that source file
16492         with multi-gnome-terminal.
16493
16494 2003-08-05  Paul Eggert  <eggert@twinsun.com>
16495
16496         * lib/bumpalloc.h: Remove.
16497
16498 2003-08-05  Paul Eggert  <eggert@twinsun.com>
16499
16500         * MODULES.html.sh (func_all_modules): Remove bumpalloc.
16501         * modules/bumpalloc: Remove.
16502
16503 2003-08-04  Paul Eggert  <eggert@twinsun.com>
16504
16505         * lib/getloadavg.c: Change copyright notice and spacing to conform to
16506         GNU coding style.
16507
16508         Merge from coreutils.
16509         * lib/error.c [!USE_IN_LIBIO]: Omit this case; assume USE_IN_LIBIO is
16510         1. From glibc.
16511         * lib/getdate.y (date): Also accept dates like May-23-2003; suggestion
16512         from Karl Berry, implemented by Jim Meyering.
16513         * lib/getgroups.c: Include "xalloc.h" instead of declaring xalloc fns;
16514         from Dmitry V. Levin.
16515         Remove anachronistic cast of xrealloc.
16516         * lib/fnmatch_.h (__const): Remove.  Use 'const'.
16517         * lib/fnmatch_loop.c (NEW_PATTERN): Cast alloca return value to proper
16518         type. Otherwise, it wouldn't compile with at least /bin/cc on
16519         ymp-cray-unicos9.0.2.X.
16520         Combine two mostly-identical uses of alloca into one.
16521         Thanks to the Cray-Cyber project for access to a Cray Y-MP.
16522
16523 2003-08-04  Dave Love <d.love@dl.ac.uk>
16524
16525         [From Emacs.]
16526
16527         * lib/getloadavg.c: Check `__unix' as well as `unix'.  Use #ifdef, not
16528         #if.  Check HAVE_LIBKSTAT as well as LOAD_AVE_TYPE.  Check
16529         F_SETFD, not FD_SETFD.  Use HAVE_STRUCT_NLIST_N_UN_N_NAME, not
16530         obsolete NLIST_NAME_UNION.
16531         [__GNU__]: Undef BSD and FSCALE.
16532         [!NLIST_STRUCT]: Remove conditional definition of NLIST_STRUCT.
16533
16534 2003-08-03  Paul Eggert  <eggert@twinsun.com>
16535
16536         * lib/stdbool_.h (_Bool): Make it signed char, instead of
16537         an enum type, so that it's guaranteed to promote to int.  See:
16538         <http://mail.gnu.org/archive/html/bug-gnulib/2003-07/msg00124.html>
16539
16540 2003-08-03  Karl Berry  <karl@gnu.org>
16541
16542         * config/depcomp: update from automake.
16543
16544 2003-07-31  Paul Eggert  <eggert@twinsun.com>
16545
16546         * lib/strerror.c: Include config.h, limits.h.  Declare sprintf.
16547         (strerror): Don't assume that a printable int fits in 14 bytes.
16548
16549 2003-07-31  Bruno Haible  <bruno@clisp.org>
16550
16551         * modules/getpass-gnu: New file.
16552         * MODULES.html.sh (func_all_modules): Add getpass-gnu.
16553
16554 2003-07-31  Bruno Haible  <bruno@clisp.org>
16555
16556         * m4/getpass.m4 (gl_FUNC_GETPASS_GNU): New macro.
16557
16558 2003-07-24  Karl Berry  <karl@gnu.org>
16559
16560         * config/missing: update from automake.
16561
16562 2003-07-24  Derek Robert Price  <derek@ximbiot.com>
16563             Bruno Haible  <bruno@clisp.org>
16564
16565         * lib/getline.h (getline, getdelim): Change return type to ssize_t.
16566         * lib/getline.c (getline, getdelim): Likewise.
16567         Remove _GNU_SOURCE define; now it's defined in config.h through
16568         m4/getline.m4.
16569
16570 2003-07-23  Karl Berry  <karl@gnu.org>
16571
16572         * config/config.sub: update from prep.
16573
16574 2003-07-22  Paul Eggert  <eggert@twinsun.com>
16575
16576         * modules/xalloc (Depends-on): Add exitfail.
16577         * modules/xmemcoll: Likewise.
16578
16579 2003-07-22  Paul Eggert  <eggert@twinsun.com>
16580
16581         * lib/xalloc.h (XCALLOC, XREALLOC, CCLONE): Fix under- and
16582         over-parenthesization in macros.
16583
16584         Sync with coreutils.
16585
16586         * lib/xalloc.h (XMALLOC, XCALLOC, XREALLOC): Remove casts not
16587         required by C99.
16588
16589         Use `exit_failure' for xalloc and xmemcoll instead of their own
16590         private exit-failure variables.
16591         * lib/xalloc.h (xalloc_exit_failure): Remove.
16592         * lib/xmalloc.c: Likewise.  Include exitfail.h.
16593         (xalloc_die): Use exit_failure instead of xalloc_exit_failure.
16594         * lib/xmemcoll.h (xmemcoll_exit_failure): Remove.
16595         * lib/xmemcoll.c: Likewise.  Include exitfail.h.
16596         (xmemcoll): Use exit_failure instead of xalloc_exit_failure.
16597
16598 2003-07-20  Jim Meyering  <jim@meyering.net>
16599
16600         * modules/closeout (Depends-on): Add exitfail.
16601         Suggestion from Bruno Haible.
16602
16603 2003-07-19  Karl Berry  <karl@gnu.org>
16604
16605         * config/config.sub: update from prep.
16606
16607 2003-07-18  Paul Eggert  <eggert@twinsun.com>
16608
16609         * lib/closeout.h (close_stdout_set_status, close_stdout_status):
16610         Remove.
16611         * lib/closeout.c: Likewise.  Include "closeout.h" right after config.h,
16612         to test that it can stand by itself.  Include "exitfail.h".
16613         Clients should set exit_failure instead.
16614         (EXIT_FAILURE): Remove; no longer needed.  Do not include <stdlib.h>.
16615
16616 2003-07-18  Bruno Haible  <bruno@clisp.org>
16617
16618         * modules/getndelim2: New file.
16619         * modules/getline: Share files with module getndelim2.
16620         * modules/getnline: Depend on getndelim2 instead of sharing files with
16621         it. Add getnline.c to lib_SOURCES.
16622         * MODULES.html.sh (func_all_modules): Add getndelim2.
16623
16624 2003-07-18  Bruno Haible  <bruno@clisp.org>
16625
16626         * m4/getndelim2.m4: New file.
16627         * m4/getline.m4 (AM_FUNC_GETLINE): Add AC_LIBOBJ of getndelim2.c and
16628         invoke gl_PREREQ_GETNDELIM2.
16629         (gl_PREREQ_GETLINE): Drop AC_HEADER_STDC, now done by
16630         gl_PREREQ_GETNDELIM2.
16631         * m4/getnline.m4 (gl_GETNLINE): Drop AC_HEADER_STDC, now done by
16632         gl_GETNDELIM2.
16633
16634 2003-07-18  Bruno Haible  <bruno@clisp.org>
16635
16636         * lib/getndelim2.h: New file.
16637         * lib/getndelim2.c: Make into a module of its own. Include config.h,
16638         getndelim2.h.
16639         (getndelim2): Make non-static. Change return type to ssize_t.
16640         * lib/getline.h: Change argument names.
16641         * lib/getline.c: Include getndelim2.h instead of getndelim2.c.
16642         * lib/getnline.c: Include getndelim2.h.
16643
16644 2003-07-18  Andreas Schwab  <schwab@suse.de>
16645
16646         * lib/memcoll.c (memcoll) [!HAVE_STRCOLL]: Clear errno.
16647
16648 2003-07-17  Karl Berry  <karl@gnu.org>
16649
16650         * config/config.sub: update from prep.
16651
16652 2003-07-17  Bruno Haible  <bruno@clisp.org>
16653
16654         * modules/getnline: New file.
16655         * modules/getline: Add lib/getndelim2.c to source file list.
16656         * MODULES.html.sh (func_all_modules): Add getnline.
16657
16658 2003-07-17  Bruno Haible  <bruno@clisp.org>
16659
16660         * m4/getnline.m4: New file.
16661
16662 2003-07-17  Bruno Haible  <bruno@clisp.org>
16663
16664         * m4/Makefile.am.in: Remove file.
16665         * m4/Makefile.am: Remove file.
16666         * m4/Makefile.in: Remove file.
16667
16668 2003-07-17  Bruno Haible  <bruno@clisp.org>
16669
16670         * lib/getnline.h: New file.
16671         * lib/getnline.c: New file.
16672         * lib/getndelim2.c: New file, extracted from getline.c.
16673         (getndelim2): Renamed from getdelim2, with added nmax argument.
16674         * lib/getline.c: Include getndelim2.c.
16675         (getdelim2): Moved out to getndelim2.c.
16676         (getline, getdelim): Update.
16677
16678 2003-07-17  Bruno Haible  <bruno@clisp.org>
16679
16680         * lib/Makefile.am: Remove file.
16681         * lib/Makefile.in: Remove file.
16682
16683 2003-07-17  Bruno Haible  <bruno@clisp.org>
16684
16685         * configure.in: Remove file.
16686         * Makefile.in: Remove file.
16687
16688 2003-07-17  Bruno Haible  <bruno@clisp.org>
16689
16690         * MODULES.html.sh: Put the </BODY> right before </HTML>.
16691
16692 2003-07-16  Karl Berry  <karl@gnu.org>
16693
16694         * config/srclist-update: was running fixlicense twice, which caused
16695                 texinfo.tex to be nullified for some reason.  Simplify,
16696                 $gplsrc is no longer needed as far as I can see?
16697
16698 2003-07-16  Jim Meyering  <jim@meyering.net>
16699
16700         * modules/save-cwd: Depend on xgetcwd.  From Derek Price.
16701
16702 2003-07-15  Paul Eggert  <eggert@twinsun.com>
16703
16704         * config/srclist.txt: Get the following files from gettext-runtime/intl
16705         instead: config.charset, localcharset.c, localcharset.h, ref-add.sin,
16706         ref-del.sin.  From Bruno Haible.
16707         * config/srclist-update (fixfile): Change grep pattern again, since the
16708         previous fix didn't work (there was another trailing $).  Use
16709         '[$]' to escape the $s.
16710
16711 2003-07-15  Karl Berry  <karl@gnu.org>
16712
16713         * lib/vasnprintf.c: update from gettext.
16714
16715 2003-07-15  Karl Berry  <karl@gnu.org>
16716
16717         * config/srclist-update (fixfile): Change grep pattern, since 'Id'
16718         gets expanded when surrounded by '$'.
16719
16720 2003-07-15  Jim Meyering  <jim@meyering.net>
16721
16722         * modules/save-cwd: Don't depend on error.  From Derek Price.
16723
16724 2003-07-15  Jim Meyering  <jim@meyering.net>
16725
16726         * lib/makepath.c (make_path): Enclose diagnostic in _(...).
16727
16728 2003-07-14  Simon Josefsson  <jas@extundo.com>
16729
16730         * modules/mempcpy: New file.
16731         * MODULES.html.sh (func_all_modules): Add mempcpy.
16732
16733 2003-07-14  Simon Josefsson  <jas@extundo.com>
16734
16735         * m4/mempcpy.m4: New file.
16736
16737 2003-07-14  Simon Josefsson  <jas@extundo.com>
16738
16739         * lib/mempcpy.h: New file.
16740         * lib/mempcpy.c: New file.
16741
16742 2003-07-14  Paul Eggert  <eggert@twinsun.com>
16743
16744         * modules/getdate, modules/posixtm: Depend on mktime.
16745
16746 2003-07-14  Paul Eggert  <eggert@twinsun.com>
16747
16748         * lib/ceill.c, expl.c, floorl.c, frexpl.c, ldexpl.c, mathl.h,
16749         sincosl.c, sqrtl.c, trigl.c, trigl.h, poll.c, poll_.h, mkstemp.c,
16750         unicodeio.c, unicodeio.h, unlocked-io.h:
16751         Switch from LGPL to GPL.
16752
16753 2003-07-14  Paul Eggert  <eggert@twinsun.com>
16754
16755         * lib/asnprintf.c, asprintf.c, config.charset, gettext.h,
16756         localcharset.c, localcharset.h, mkdtemp.c, printf-args.c,
16757         printf-args.h, printf-parse.c, printf-parse.h, ref-add.sin,
16758         ref-del.sin, setenv.c, unsetenv.c, vasnprintf.c, vasnprintf.h,
16759         vasprintf.c, vasprintf.h: Regenerate.  These files are now being
16760         updated automatically by ../config/srclist-update.  This changes
16761         their license from LPGL to GPL.
16762
16763 2003-07-14  Paul Eggert  <eggert@twinsun.com>
16764
16765         * config/srclist.txt: Add tons more gettext files.  $GETTEXT is now
16766         assumed to refer to the root of the most recent stable gettext version.
16767         * config/srclistvars.sh: Add defaults for eggert.
16768         * config/srclist-update: Convert LGPL to GPL in shell scripts, too.
16769         Match "This program" as well as "The program".  This is needed
16770         for gettext.
16771
16772 2003-07-14  Jim Meyering  <jim@meyering.net>
16773
16774         Don't emit diagnostics.  Let callers do that.
16775         * lib/save-cwd.c: Don't include "error.h".
16776         (save_cwd): Don't call error.  Ensure that errno is valid
16777         when returning nonzero.
16778
16779         * lib/save-cwd.h (restore_cwd): Update prototype.
16780         * lib/save-cwd.c (restore_cwd): Remove two parameters.
16781         Simplify.  Don't call error upon failure.  Let callers do that.
16782         (save_cwd): Mention that Irix 5.3 has the same problem as SunOS 4
16783         when auditing is enabled.  But don't bother updating the #if.
16784
16785 2003-07-11  Alexandre Duret-Lutz  <adl@gnu.org>
16786
16787         * lib/obstack.h (__INT_TO_PTR): Revert change of 2003-03-13;
16788         it breaks C++ compilation.
16789         [!__GNUC__ || !__STDC__] (obstack_finish): Cast result to void*.
16790
16791 2003-07-10  Simon Josefsson  <jas@extundo.com>
16792
16793         * modules/strchrnul (Makefile.am): Add strchrnul.h.
16794
16795 2003-07-10  Jim Meyering  <jim@meyering.net>
16796
16797         * m4/clock_time.m4: Remove trailing blank.
16798         * m4/intmax_t.m4: Likewise.
16799
16800 2003-07-10  Jim Meyering  <jim@meyering.net>
16801
16802         * lib/vasnprintf.c: Remove trailing blanks.
16803         Make cpp indentation consistent.
16804
16805 2003-07-09  Paul Eggert  <eggert@twinsun.com>
16806
16807         * lib/alloca_.h, euidaccess.c, getpass.c, memrchr.c, obstack.h,
16808         posixver.c, strftime.c, strnlen.c, strverscmp.c:
16809         Switch from LGPL to GPL.
16810
16811 2003-07-09  Paul Eggert  <eggert@twinsun.com>
16812
16813         * config/srclist.txt: Sort sublists.  Add
16814         $LIBCSRC/sysdeps/generic/strtoul.c. In comments, add more libc files
16815         that differ from gnulib for one reason or another; we'd like this list
16816         to be smaller but for now let's document what we have.
16817
16818 2003-07-08  Paul Eggert  <eggert@twinsun.com>
16819
16820         * config/srclist-update: Port to POSIX 1003.1-2001 hosts by avoiding
16821         the use of GNU extensions.  Change "x=`eval echo $x`" to the shorter
16822         and sweeter "eval x=$x".
16823         * config/srclist.txt: Get lib/argp* from glibc.
16824
16825 2003-07-07  Paul Eggert  <eggert@twinsun.com>
16826
16827         * lib/mktime.c: Fix some boundary cases and remove need for floating
16828         point.
16829
16830         Issue a compile-time diagnostic if time_t is floating point, or if
16831         two's complement arithmetic is not in effect, or if arithmetic
16832         right shift does not propagate the sign.  These assumptions were
16833         all in the original code but they weren't checked.
16834
16835         (TIME_T_MIDPOINT, verify): New macros.
16836         (__isleap): Remove; it has integer overflow problems.
16837         (leapyear): New function, without those problems.
16838         (ydhms_tm_diff): Remove; splitting into two parts.
16839         (ydhms_diff): New function, containing the arithmetic part of
16840         the old ydhms_tm_diff function.  Issue a compile-time
16841         diagnostic if we are not using C99 integer division.
16842         Avoid casts when possible.
16843         (guess_time_tm): New function, containing the checking part of
16844         the old ydhms_tm_diff function.  Return the new value, rather than
16845         the difference between it and the old.  Accept a new argument T
16846         so that *T specifies the old value.  Check for overflow in the result.
16847
16848         (__mktime_internal): Use a time_t offset, not a long int offset.
16849         This undoes the 2003-06-04 change, which is no longer needed now
16850         that we have better overflow checking.
16851         (localtime_offset): Likewise.
16852
16853         (__mktime_internal): Avoid harmful overflow on hosts where time_t
16854         and long are 64-bit but int is only 32-bit.
16855         (ydhms_diff): Use long int to store year1 and yday1.
16856         Issue a compile-time diagnostic if long int is not wide enough.
16857
16858         (__mktime_internal): Use long int to store adjusted year and yday.
16859         Use plain C rather than preprocessor commands, if that doesn't
16860         affect efficiency.
16861         Check for overflow (and try to repair) after each probe
16862         rather than checking only at the very end.  This avoids some bugs
16863         (e.g., southern hemisphere, behind GMT, and GMT offset at minimum time
16864         does not equal GMT offset at maximum time).
16865         Use integer to check for overflow rather than floating point; this
16866         is more portable to non-IEEE hosts, and is a tad faster.
16867         When we detect that we are oscillating between two values,
16868         don't check whether tm_isdst has the requested value, since
16869         we already know the answer.  When tm_isdst has the wrong value,
16870         use a different heuristic to find the right one, based on the
16871         extreme values actually observed in practice in tz2003a,
16872         rather than the (overly optimistic) "previous 3 calendar quarters".
16873
16874         (not_equal_tm, print_tm, check_result): Use "const T" rather than
16875         "T const" to accommodate glibc style.
16876         (check_result): Use less-confusing report format.  "long" -> "long int.
16877         (main): Likewise.
16878         Don't loop if the iteration overflows time_t.
16879         Allow a negative step in the iteration.
16880
16881 2003-07-06  Karl Berry  <karl@gnu.org>
16882
16883         * config/depcomp: update from automake.
16884         * config/config.sub: update from prep.
16885
16886 2003-07-03  Karl Berry  <karl@gnu.org>
16887
16888         * config/config.guess: update from prep.
16889
16890 2003-07-01  Paul Eggert  <eggert@twinsun.com>
16891
16892         * m4/xreadlink.m4 (gl_XREADLINK): Don't check for sys/types.h, since
16893         xreadlink.c now includes it unconditionally.
16894
16895 2003-07-01  Paul Eggert  <eggert@twinsun.com>
16896
16897         * lib/xreadlink.c: Include <sys/types.h> unconditionally, instead of
16898         having it depend on HAVE_SYS_TYPES_H.
16899
16900 2003-07-01  Bruno Haible  <bruno@clisp.org>
16901
16902         * m4/ssize_t.m4 (gt_TYPE_SSIZE_T): Don't include <unistd.h>.
16903         <sys/types.h> should be sufficient.
16904         Reported by Paul Eggert.
16905
16906 2003-06-26  Karl Berry  <karl@gnu.org>
16907
16908         * config/depcomp: update from automake.
16909
16910 2003-06-26  Bruno Haible  <bruno@clisp.org>
16911
16912         * modules/human: Depend on module stdbool.
16913
16914 2003-06-25  Bruno Haible  <bruno@clisp.org>
16915
16916         * modules/readlink: New file.
16917         * modules/xreadlink: Depend on it.
16918         * MODULES.html.sh (func_all_modules): Add readlink.
16919
16920 2003-06-25  Bruno Haible  <bruno@clisp.org>
16921
16922         * m4/readlink.m4: New file.
16923
16924 2003-06-25  Bruno Haible  <bruno@clisp.org>
16925
16926         * lib/readlink.c: New file.
16927
16928 2003-06-22  Karl Berry  <karl@gnu.org>
16929
16930         * config/srclist.txt: update mkinstalldirs from automake.
16931         * config/mkinstalldirs: update.
16932
16933 2003-06-22  Bruno Haible  <bruno@clisp.org>
16934
16935         Portability to mingw32.
16936         * m4/ssize_t.m4: New file, from GNU gettext.
16937         * m4/safe-read.m4 (gl_PREREQ_SAFE_READ): Require gt_TYPE_SSIZE_T.
16938         * m4/xreadlink.m4 (gl_XREADLINK): Require gt_TYPE_SSIZE_T.
16939
16940 2003-06-22  Bruno Haible  <bruno@clisp.org>
16941
16942         * modules/safe-read: Add m4/ssize_t.m4.
16943         * modules/xreadlink: Add m4/ssize_t.m4.
16944
16945 2003-06-20  Bruno Haible  <bruno@clisp.org>
16946
16947         Assume C89, so PARAMS isn't needed.
16948         * lib/unicodeio.h (PARAMS): Remove.
16949         * lib/unicodeio.c: Don't use PARAMS.
16950
16951 2003-06-18  Karl Berry  <karl@gnu.org>
16952
16953         * config/config.{guess,sub}: update from prep.
16954
16955 2003-06-18  Jim Meyering  <jim@meyering.net>
16956
16957         Merge changes from coreutils.
16958         * lib/readutmp.c: Include <string.h> and <stdlib.h> unconditionally.
16959         Remove explicit declarations of xmalloc and realloc.
16960         Include xalloc.h.
16961         (read_utmp): Remove anachronistic cast of xmalloc.
16962
16963 2003-06-17  Paul Eggert  <eggert@twinsun.com>
16964
16965         Assume C89, so PARAMS isn't needed.
16966         * lib/backupfile.h (PARAMS): Remove.  All uses removed.
16967         * lib/closeout.h, lib/dirname.h, lib/filemode.h, lib/fsusage.h,
16968         lib/getdate.h, lib/getline.h, lib/group-member.h, lib/hard-locale.h,
16969         lib/hash.h, lib/linebuffer.h, lib/long-options.h, lib/makepath.h,
16970         lib/memcasecmp.h, lib/memcoll.h, lib/modechange.h, lib/mountlist.h,
16971         lib/path-concat.h, lib/physmem.h, lib/posixtm.h, lib/quote.h,
16972         lib/readutmp.h, lib/same.h, lib/save-cwd.h, lib/savedir.h,
16973         lib/stdio-safer.h, lib/strtoimax.c, lib/strverscmp.h,
16974         lib/unistd-safer.h, lib/version-etc.h, lib/xalloc.h, lib/xreadlink.h,
16975         lib/xstrtod.h, lib/xstrtol.h: Likewise.
16976         * lib/filemode.h, lib/hard-locale.h, lib/memcoll.h, lib/modechange.h,
16977         lib/physmem.h, lib/same.h, lib/strverscmp.h: Do not include config.h;
16978         no longer needed. Anyway, config.h should always be included before any
16979         other file.
16980
16981 2003-06-11  Simon Josefsson  <jas@extundo.com>
16982
16983         * modules/sysexits: New file.
16984         * MODULES.html.sh (func_all_modules): Add sysexits.
16985
16986 2003-06-11  Simon Josefsson  <jas@extundo.com>
16987
16988         * lib/sysexit_.h: New file.
16989
16990 2003-06-11  Derek Price  <derek@ximbiot.com>
16991
16992         * lib/stat.c [LSTAT]: Compile/use slash_aware_lstat only if it is
16993         necessary.
16994
16995 2003-06-11  Bruno Haible  <bruno@clisp.org>
16996
16997         * m4/sysexits.m4: New file.
16998
16999 2003-06-10  Simon Josefsson <jas@extundo.com>
17000
17001         * lib/argp.h: New file, from glibc.
17002         * lib/argp-ba.c: New file, from glibc.
17003         * lib/argp-eexst.c: New file, from glibc.
17004         * lib/argp-fmtstream.c: New file, from glibc.
17005         * lib/argp-fmtstream.h: New file, from glibc.
17006         * lib/argp-fs-xinl.c: New file, from glibc.
17007         * lib/argp-help.c: New file, from glibc.
17008         * lib/argp-namefrob.h: New file, from glibc.
17009         * lib/argp-parse.c: New file, from glibc.
17010         * lib/argp-pv.c: New file, from glibc.
17011         * lib/argp-pvh.c: New file, from glibc.
17012         * lib/argp-xinl.c: New file, from glibc.
17013
17014 2003-06-10  Simon Josefsson  <jas@extundo.com>
17015
17016         * modules/strchrnul: New file.
17017
17018 2003-06-10  Simon Josefsson  <jas@extundo.com>
17019
17020         * modules/argp: New file.
17021
17022 2003-06-10  Simon Josefsson  <jas@extundo.com>
17023
17024         * m4/strchrnul.m4: New file.
17025
17026 2003-06-10  Simon Josefsson  <jas@extundo.com>
17027
17028         * lib/strchrnul.h: New file.
17029         * lib/strchrnul.c: New file.
17030
17031 2003-06-10  Bruno Haible  <bruno@clisp.org>
17032
17033         * MODULES.html.sh (func_all_modules): Add strchrnul and argp.
17034
17035 2003-06-07  Karl Berry  <karl@gnu.org>
17036
17037         * config/config.{guess,sub}: update from prep.
17038
17039 2003-06-07  Jim Meyering  <jim@meyering.net>
17040
17041         * modules/strtod: Use $(...) notation, not @...@ for
17042         AC_REPLACE'd variables.
17043         * modules/localcharset: Likewise.
17044
17045 2003-06-07  Jim Meyering  <jim@meyering.net>
17046
17047         * lib/readtokens.h: Put `Free Software Foundation, Inc.'
17048         in place of my name in the copyright comment.
17049         Remove definition and uses of __P.
17050
17051         From coreutils.
17052         * lib/stat.c: Don't declare xmalloc explicitly.
17053         Instead, include "xalloc.h".
17054         * lib/readtokens.c (readtokens): Remove anachronistic casts of xmalloc,
17055         xrealloc, and xcalloc return values.
17056         * lib/xgetcwd.c (xgetcwd): Include "xgetcwd.h".
17057         Improve comment.
17058         * lib/xgetcwd.h: Remove definition/uses of PARAMS.
17059
17060 2003-06-07  Bruno Haible  <bruno@clisp.org>
17061
17062         * modules/poll (Makefile.am): Use explicit creation rule for poll.h, to
17063         avoid AC_CONFIG_LINKS.
17064         * modules/fnmatch (Makefile.am): Use explicit creation rule for
17065         fnmatch.h, to avoid AC_CONFIG_LINKS.
17066         * modules/alloca (Makefile.am): Make creation of alloca.h Ctrl-C safe.
17067
17068 2003-06-07  Bruno Haible  <bruno@clisp.org>
17069
17070         * m4/fnmatch.m4 (_AC_LIBOBJ_FNMATCH, gl_FUNC_FNMATCH_POSIX,
17071         gl_FUNC_FNMATCH_GNU): Set FNMATCH_H instead of invoking
17072         AC_CONFIG_LINKS. Needed to allow for a different name of the lib
17073         directory.
17074         * m4/poll.m4 (gl_FUNC_POLL): Set POLL_H instead of invoking
17075         AC_CONFIG_LINKS. Needed to allow for a different name of the lib
17076         directory.
17077
17078 2003-06-06  Jim Meyering  <jim@meyering.net>
17079
17080         Merge from coreutils.
17081         * lib/same.c: (same_name): Declare *_basename locals to be `const'.
17082         Consolidate declarations and initializations of *_base* locals.
17083
17084         Merge from coreutils.
17085         This avoids a core dump on systems without GNU putenv,
17086         when running `env -u SOME_ALREADY_UNSET_VARIABLE'.
17087         * lib/putenv.c (__set_errno, LOCK, UNLOCK): Define.
17088         (unsetenv): New static function, from GNU libc.
17089         (rpl_putenv): Use it.
17090
17091         * lib/modechange.c: Remove trailing blanks.
17092
17093         Merge from coreutils.
17094         * lib/fsusage.c: Remove declaration of statfs.
17095         It conflicted with one from OSF/1 5.1 in <sys/mount.h>.
17096
17097         * lib/posixtm.c: Include <stdbool.h> unconditionally.
17098
17099 2003-06-06  Jim Meyering  <jim@meyering.net>
17100
17101         * lib/stdbool_.h: Renamed from stdbool.h.in.
17102
17103 2003-06-06  Jim Meyering  <jim@meyering.net>
17104             Bruno Haible  <bruno@clisp.org>
17105
17106         * modules/stdbool: Reflect renaming: stdbool.h.in -> stdbool_.h.
17107         Adjust Makefile.am snippet not to redirect directly to target.
17108         Use $(STDBOOL_H) notation, not @STDBOOL_H@ for AC_REPLACE'd variables.
17109
17110 2003-06-05  Paul Eggert  <eggert@twinsun.com>
17111
17112         * lib/mktime.c (__mktime_internal): When resolving a tm_isdst
17113         mismatch, look in future quarters as well as past.  This fixes a
17114         bug when processing fall-backwards gaps immediately after a long
17115         period of daylight-saving time.
17116
17117         * lib/mktime.c: Assume freestanding C89 or better.
17118         (HAVE_LIMITS_H): Remove.  Assume it's 1.
17119         (__P): Remove; not used.
17120         (CHAR_BIT, INT_MIN, INT_MAX): Remove; <limits.h> defines them.
17121         (mktime, not_equal_tm, print_tm, check_result,
17122         main): Use prototypes.  Use const * where appropriate.
17123         (main): Fix typo in testing code that uncovered by above changes.
17124         (Local Variables): Remove -DHAVE_LIMITS_H from compile-command.
17125
17126 2003-06-04  Paul Eggert  <eggert@twinsun.com>
17127
17128         * m4/human.m4 (gl_HUMAN): Require AM_STDBOOL_H.  Check for
17129         locale.h, localeconv.  This merges changes from coreutils.
17130
17131         * m4/mktime.m4 (AC_FUNC_MKTIME): New macro, taken from Autoconf CVS.
17132         It can be removed after the next Autoconf is released.
17133         * m4/exclude.m4 (gl_EXCLUDE): Don't check for sys/types.h; no loner
17134         needed.
17135
17136 2003-06-04  Paul Eggert  <eggert@twinsun.com>
17137
17138         * lib/mktime.c: Fix Debian bug 177940
17139         <http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=177940>.
17140         (localtime_offset): Now long int, not time_t, because we want it
17141         to be guaranteed to be signed.  All uses changed.
17142         (__mktime_internal): If overflow would occur when adding offset,
17143         don't add it.
17144
17145         Merge 'human' changes from coreutils.  Rewrite to support
17146         locale-specific notations like thousands separators.
17147         * lib/human.c: Simplify authorship notice.
17148         Include human.h immediately after config.h.
17149         <sys/types.h>, <stdio.h>: Do not include; no longer needed.
17150         <limits.h>: Do not include, since human.h does.
17151         (SIZE_MAX, UINTMAX_MAX): New macros.
17152         <strings.h>: Include if HAVE_STRINGS_H, not if !HAVE_STRING_H.
17153         <locale.h>: Include if HAVE_LOCALE_H and HAVE_LOCALECONV.
17154         (HUMAN_READABLE_SUFFIX_LENGTH_MAX): New macro.
17155         (power_letter): Renamed from suffixes.
17156         (generate_suffix_backwards): Remove.
17157         (adjust_value): Now takes int style (because of human.h changes)
17158         and long double value (for greater precision on some platforms).
17159         (group_number): New function.
17160         (human_readable): Use it.  Use integer options, not enum.
17161         Put the options before the sizes in the arg list.
17162         Support all the new options.
17163         The old human_readable function has been removed;
17164         use inttostr.h instead.
17165         (human_readable, default_block_size, humblock):
17166         Use uintmax_t, not int, for block sizes.
17167         (human_readable_inexact, block_size_types): Remove.
17168         (block_size_opts): New constant.
17169         (human_options): Renamed from human_block_size, with new signature
17170         that allows block sizes up to UINTMAX_MAX.  All callers changed.
17171         * lib/human.h: Add copyright and authorship notice.
17172         Include <limits.h> and <stdbool.h> unconditionally.
17173         (PARAMS): Remove.  All uses removed.
17174         (LONGEST_HUMAN_READABLE): Add support for thousands separator.
17175         (enum human_inexact_style): Remove tag; now a nameless enum.
17176         (human_floor, human_ceiling, human_round_to_even): Now have
17177         values 2, 0, 1 rather than -1, 1, 0.
17178         (human_group_digits, human_suppress_point_zero, human_autoscale,
17179         human_base_1024, human_SI, human_B): New constants.
17180         (human_readable_inexact, human_block_size): Remove.
17181         (human_readable): Size args are now uintmax_t, not int.
17182         (human_options): New decl.
17183
17184         * lib/exclude.c: (new_exclude, add_exclude): Remove casts that are
17185         unnecessary now that we assume C89 or better.  This change
17186         imported from coreutils.
17187
17188         * lib/mktime.c (__mktime_internal): Do not reject negative timestamps
17189         arbitrarily.  This is the same patch as 2003-05-28, but it got lost
17190         in the 2003-05-30 sync from glibc.
17191
17192         .h files should stand alone, but we shouldn't include <sys/types.h>
17193         if we can get away with just <stddef.h>.
17194
17195         * lib/__fpending.h, addext.c, backupfile.c, exclude.c, getline.c,
17196         malloc.c, putenv.c, realloc.c, strcasecmp.c: Include <stddef.h>
17197         rather than <sys/types.h>, as we merely need size_t.
17198         * lib/dirname.h, memcoll.h, xalloc.h, xmemcoll.h: Include <stddef.h>,
17199         to get size_t.
17200         * lib/hash.h, linebuffer.h, readtokens.h, stdio-safer.h, version-etc.h:
17201         Include <stdio.h>, to get FILE.
17202         * lib/memcasecmp.c: Don't include <sys/types.h>, as we can assume
17203         memcasecmp.h has included <stddef.h> and all we need is size_t.
17204         * lib/memcoll.c: Include "memcoll.h", which gets us size_t and checks
17205         our interface, instead of including <sys/types.h>
17206
17207 2003-06-04  Paul Eggert  <eggert@twinsun.com>
17208
17209         * config/srclist.txt ($LIBCSRC/time/mktime.c lib gpl): Comment out for
17210         now, as glibc mktime is buggy on non-glibc systems.
17211
17212 2003-06-03  Karl Berry  <karl@gnu.org>
17213
17214         * config/config.sub: update from prep.
17215
17216 2003-06-02  Paul Eggert  <eggert@twinsun.com>
17217
17218         [from coreutils]
17219         Fix some minor time-related bugs with POSIX time arguments.
17220         Some valid time stamps were being rejected (notably -1, and
17221         time stamps before 1900 on 64-bit hosts).  And some invalid
17222         time stamps were being accepted, e.g. September 31.
17223
17224         * lib/posixtm.h (posixtime): Return bool instead of time_t, so
17225         that we can return (time_t) -1 successfully.
17226         * lib/posixtm.c: Likewise.
17227         [HAVE_STDBOOL_H]: Include <stdbool.h>.
17228         (bool, false, true) [!HAVE_STDBOOL_H]: New type.
17229         (t): Remove static var.
17230         (year, posix_time_parse): Now takes struct tm * arg to modify, instead
17231         of static var.  All uses changed.
17232         (year): Do not reject years before 1900; they can occur with
17233         64-bit time_t.
17234         (posix_time_parse): Do not check for out-of-range components;
17235         that is now the caller's responsibility, since our checks were
17236         only approximations.
17237         (posixtime): Use mktime to check for out-of-range components,
17238         since it knows them exactly.
17239         If mktime returns (time_t) -1, check whether an error actually occurred
17240         by invoking localtime on -1.
17241         (main) [TEST_POSIXTIME]: Check for input data errors, and report
17242         posixtime failures better.
17243         Improve the test data (in comments only).
17244
17245 2003-06-02  Karl Berry  <karl@gnu.org>
17246
17247         * config/mkinstalldirs (version): new variable.
17248         (--version): new option.
17249         (usage): improve message.
17250
17251 2003-05-30  Karl Berry  <karl@gnu.org>
17252
17253         * lib/mktime.c: update from libc.
17254
17255 2003-05-30  Bruno Haible  <bruno@clisp.org>
17256
17257         * modules/gettext: Add files m4/nls.m4 and m4/po.m4.
17258         * config/config.rpath: Upgrade to gettext-0.12.1.
17259
17260 2003-05-30  Bruno Haible  <bruno@clisp.org>
17261
17262         * m4/gettext.m4: Upgrade to gettext-0.12.1.
17263         * m4/nls.m4: New file, from gettext-0.12.1.
17264         * m4/po.m4: New file, from gettext-0.12.1.
17265         * m4/progtest.m4: Upgrade to gettext-0.12.1.
17266
17267 2003-05-30  Bruno Haible  <bruno@clisp.org>
17268
17269         * lib/config.charset: Upgrade to gettext-0.12.1 and libiconv-1.9.1.
17270         * lib/localcharset.h: Likewise.
17271         * lib/localcharset.c: Likewise.
17272
17273 2003-05-29  Karl Berry  <karl@gnu.org>
17274
17275         * config/config.rpath: update from gettext.
17276
17277 2003-05-28  Paul Eggert  <eggert@twinsun.com>
17278
17279         Assume the headers required for C89 freestanding compilers.
17280         * m4/backupfile.m4 (gl_BACKUPFILE): Don't check for limits.h.
17281         * m4/fsusage.m4 (gl_PREREQ_FSUSAGE_EXTRA): Likewise.
17282         * m4/human.m4 (gl_HUMAN): Likewise.
17283         * m4/pathmax.m4 (gl_PATHMAX): Likewise.
17284         * m4/rpmatch.m4 (gl_FUNC_RPMATCH): Likewise.
17285         * m4/userspec.m4 (gl_USERSPEC): Likewise.
17286         * m4/xreadlink.m4 (gl_XREADLINK): Likewise.
17287         * m4/xstrtol.m4 (gl_PREREQ_XSTRTOL): Likewise.
17288         * m4/quote.m4 (gl_QUOTE): Don't check for stddef.h.
17289
17290 2003-05-28  Paul Eggert  <eggert@twinsun.com>
17291
17292         Assume the headers required for C89 freestanding compilers.
17293         * lib/addext.c, lib/backupfile.c, lib/fsusage.c, lib/human.c,
17294         lib/pathmax.h, lib/rpmatch.c, lib/userspec.c, lib/xreadlink.c,
17295         lib/xstrtol.c: Include <limits.h> without checking for HAVE_LIMITS_H.
17296         * lib/backupfile.c, lib/fsusage.c, lib/hash.c, lib/human.c,
17297         lib/safe-read.c, lib/userspec.c, lib/xstrtol.c (CHAR_BIT): Don't
17298         define, since <limits.h> is guaranteed to do that.
17299         * lib/fatal.c: Include <stdarg.h> without checking for __STDC__.
17300         * lib/exclude.c: Include <stdbool.h> unconditionally.
17301         * lib/tempname.c: Include <stddef.h> unconditionally.
17302         * lib/hash.c: Include <limits.h>, since we no longer define CHAR_BIT.
17303         * lib/modechange.c, rpmatch.c (NULL): Don't define, since
17304         <stddef.h> does that.
17305         * lib/quote.c: Dont include <stddef.h> or <sys/types.h>; not needed.
17306         * lib/safe-read.c (INT_MAX): Don't define, since <limits.h> does that.
17307         * lib/safe-read.c (TYPE_MINIMUM, TYPE_MAXIMUM): Remove; no longer
17308         needed.
17309         * lib/xstrtol.c: Likewise.
17310         * lib/safe-read.c: Remove TYPE_SIGNED; no longer needed.
17311         * lib/savedir.c: Include <stddef.h> instead of defining NULL.
17312
17313         * lib/addext.c (addext): Use assignment rather than cast, to avoid
17314         warnings on some platforms.
17315
17316         * lib/mktime.c (__mktime_internal): Do not reject negative timestamps
17317         arbitrarily.
17318
17319 2003-05-26  Jim Meyering  <jim@meyering.net>
17320
17321         Merge in a change from coreutils:
17322         * m4/dirfd.m4 (UTILS_FUNC_DIRFD): Test the cache variable, not one
17323         that is guaranteed to be `no'.  Use `no_such_member' to indicate
17324         that condition, rather than `-1' which is slightly misleading.
17325         Change the name of the cache variable to have the gl_ prefix.
17326         Prompted by a patch from Richard Dawe for DJGPP.
17327
17328 2003-05-24  Karl Berry  <karl@gnu.org>
17329
17330         * config/config.guess: update from prep.
17331
17332 2003-05-22  Karl Berry  <karl@gnu.org>
17333
17334         * gnulib-tool (func_usage): =LIBRARY not =libRARY in help msg.
17335
17336 2003-05-20  Karl Berry  <karl@gnu.org>
17337
17338         * config/config.guess: update from prep.
17339
17340 2003-05-18  Karl Berry  <karl@gnu.org>
17341
17342         * config/srclistvars.sh (TEXMF): use TEXMFROOT instead, since TEXMF
17343         might actually be set by the user.
17344
17345         * config/depcomp, install-sh, mdate-sh: update from automake.
17346
17347 2003-05-17  Bruno Haible  <bruno@clisp.org>
17348
17349         * m4/dirfd.m4 (UTILS_FUNC_DIRFD): Fix a quoting bug leading to an
17350         invalid expansion for AC_EGREP_CPP.
17351         * m4/strtoimax.m4 (gl_FUNC_STRTOIMAX): Likewise.
17352         * m4/strtoumax.m4 (gl_FUNC_STRTOUMAX): Likewise.
17353         Suggested by Akim Demaille <akim@epita.fr> in
17354         http://mail.gnu.org/archive/html/bug-autoconf/2003-05/threads.html
17355
17356 2003-05-12  Jim Meyering  <jim@meyering.net>
17357
17358         * lib/strftime.c (my_strftime): Let the `-' (no-pad) flag affect
17359         the space-padded-by-default conversion specifiers, %e, %k, %l.
17360
17361 2003-05-12  Bruno Haible  <bruno@clisp.org>
17362
17363         * lib/linebreak.c (iconv_string_length): Don't return -1 just because
17364         the string is longer than 4 KB.
17365
17366 2003-05-11  Karl Berry  <karl@gnu.org>
17367
17368         * config/config.{guess,sub}: update from prep.
17369
17370 2003-05-09  Bruno Haible  <bruno@clisp.org>
17371
17372         * modules/error: Add m4/strerror_r.m4 to file list.
17373
17374 2003-05-03  Bruno Haible  <bruno@clisp.org>
17375
17376         Upgrade to Unicode-4.0.
17377         * lib/linebreak.c (nonspacing_table_data): Change width of U+00AD,
17378         U+0350..U+0357, U+035D..U+035F, U+0600..U+0603, U+0610..U+0615,
17379         U+0656..U+0658, U+0A01, U+0AE2..U+0AE3, U+0CBC, U+17B4..U+17B5,
17380         U+17DD, U+1920..U+1922, U+1927..U+192B, U+1932, U+1939..U+193B
17381         from 1 to 0. Change width of U+0CBF, U+0CC6, U+180E from 0 to 1.
17382         (uc_width): Change width of U+4DC0..U+4DFF from 2 to 1. Change width
17383         of U+2A6D7..U+2F7FF, U+2FA1E..U+2FFFD, U+30000..U+3FFFD from 1 to 2.
17384         Change width of U+E0100..U+E01EF from 1 to 0.
17385
17386 2003-04-25  Jim Meyering  <jim@meyering.net>
17387
17388         * lib/copy-file.c (copy_file_preserving): Declare buf_size to be
17389         of type size_t, not int.
17390
17391 2003-04-25  Bruno Haible  <bruno@clisp.org>
17392
17393         * lib/copy-file.c: Include <stddef.h>, for size_t.
17394
17395 2003-04-21  Paul Eggert  <eggert@twinsun.com>
17396
17397         * m4/error.m4 (gl_ERROR): Do not put under dynamic conditions some
17398         code which expansion is under static control.  Patch imported from
17399         Akim Demaille's patch to Bison; see
17400         <http://mail.gnu.org/archive/html/bison-patches/2003-03/msg00057.html>.
17401
17402 2003-04-14  Bruno Haible  <bruno@clisp.org>
17403
17404         * m4/error.m4 (jm_PREREQ_ERROR): Use AC_FUNC_VPRINTF.
17405
17406 2003-04-11  Jim Meyering  <jim@meyering.net>
17407
17408         Merge changes from Coreutils.
17409
17410         2003-03-22  Jim Meyering  <jim@meyering.net>
17411
17412         * lib/strftime.c (widen): Cast alloca return value to proper type.
17413
17414         2003-01-19  Ulrich Drepper  <drepper@redhat.com>
17415
17416         From GNU libc.
17417         * lib/strftime.c (my_strftime): Handle very large width
17418         specifications for numeric values correctly.  Improve checks for
17419         overflow.
17420
17421         2003-01-19  Jim Meyering  <jim@meyering.net>
17422
17423         * lib/strftime.c (widen) [COMPILE_WIDE]: Merge nearly-identical
17424         definitions.
17425         (nl_get_alt_digit) [! defined my_strftime]: Define.
17426         (my_strftime) [_NL_CURRENT]: Merge nearly-identical uses of
17427         _nl_get_alt_digit and _nl_get_walt_digit.
17428
17429         * lib/strftime.c (my_strftime): Merge in locale-related changes from
17430         libc. These changes have no effect outside of _LIBC.
17431
17432 2003-04-10  Bruno Haible  <bruno@clisp.org>
17433
17434         * modules/findprog: New file.
17435         * MODULES.html.sh (func_all_modules): Add it.
17436
17437 2003-04-10  Bruno Haible  <bruno@clisp.org>
17438
17439         * m4/findprog.m4: New file.
17440         * m4/eaccess.m4: New file.
17441
17442 2003-04-10  Bruno Haible  <bruno@clisp.org>
17443
17444         * lib/findprog.h: New file, from GNU gettext.
17445         * lib/findprog.c: New file, from GNU gettext.
17446
17447 2003-04-05  Jim Meyering  <jim@meyering.net>
17448
17449         Merge changes from Coreutils.
17450
17451         * lib/exclude.h (PARAMS): Remove definition and uses.
17452         * lib/exclude.c: Remove uses of `PARAMS'.
17453
17454         * lib/dirname.c [TEST_DIRNAME]: Update build instructions for test.
17455         Add test-cases for DOS filenames. Declare program_name.
17456         (main): Set up program_name.  Patch by Rich Dawe.
17457
17458         * lib/mountlist.c (read_filesystem_list) [MOUNTED_VMOUNT]: Detect any
17459         error from mntctl.
17460         Use mntctl's return value to drive the entry-processing loop, since
17461         we can't rely on the value of the vmt_length member in the last
17462         entry.  On some systems doing so could result in exhausting
17463         virtual memory.  Based in part on a patch from Mike Jetzer.
17464
17465 2003-04-04  Bruno Haible  <bruno@clisp.org>
17466
17467         * modules/linebreak: New file.
17468         * MODULES.html.sh (func_all_modules): Add it.
17469
17470 2003-04-04  Bruno Haible  <bruno@clisp.org>
17471
17472         * m4/linebreak.m4: New file.
17473
17474 2003-04-04  Bruno Haible  <bruno@clisp.org>
17475
17476         * lib/linebreak.h: New file, from GNU gettext.
17477         * lib/linebreak.c: New file, from GNU gettext with slight
17478         modifications.
17479         * lib/lbrkprop.h: New file, from GNU gettext.
17480
17481 2003-04-03  Bruno Haible  <bruno@clisp.org>
17482
17483         * modules/utf8-ucs4: New file.
17484         * modules/utf16-ucs4: New file.
17485         * modules/ucs4-utf8: New file.
17486         * modules/ucs4-utf16: New file.
17487         * MODULES.html.sh (func_all_modules): Add them.
17488
17489 2003-04-03  Bruno Haible  <bruno@clisp.org>
17490
17491         * m4/utf-ucs4.m4: New file.
17492         * m4/ucs4-utf.m4: New file.
17493
17494 2003-04-03  Bruno Haible  <bruno@clisp.org>
17495
17496         * lib/utf8-ucs4.h: New file, from GNU gettext.
17497         * lib/utf16-ucs4.h: New file, from GNU gettext.
17498         * lib/ucs4-utf8.h: New file, from GNU gettext.
17499         * lib/ucs4-utf16.h: New file, from GNU gettext.
17500
17501 2003-04-02  Bruno Haible  <bruno@clisp.org>
17502
17503         * modules/binary-io: New file.
17504         * MODULES.html.sh (func_all_modules): Add it.
17505
17506 2003-04-02  Bruno Haible  <bruno@clisp.org>
17507
17508         * lib/binary-io.h: New file, from GNU gettext.
17509
17510 2003-04-01  Bruno Haible  <bruno@clisp.org>
17511
17512         * modules/pathname: New file.
17513         * MODULES.html.sh (func_all_modules): Add it.
17514
17515 2003-04-01  Bruno Haible  <bruno@clisp.org>
17516
17517         * lib/pathname.h: New file, from GNU gettext.
17518         * lib/concatpath.c: New file, from GNU gettext.
17519
17520 2003-03-30  Bruno Haible  <bruno@clisp.org>
17521
17522         * m4/copy-file.m4 (gl_COPY_FILE): Add check for chown().
17523
17524 2003-03-30  Bruno Haible  <bruno@clisp.org>
17525
17526         * lib/copy-file.c (copy_file_preserving): Don't set owner if the
17527         function chown() doesn't exist.
17528
17529 2003-03-28  Bruno Haible  <bruno@clisp.org>
17530
17531         * modules/copy-file: New file.
17532         * MODULES.html.sh (func_all_modules): Add it.
17533
17534 2003-03-28  Bruno Haible  <bruno@clisp.org>
17535
17536         * m4/copy-file.m4: New file.
17537
17538 2003-03-28  Bruno Haible  <bruno@clisp.org>
17539
17540         * lib/copy-file.h: New file, from GNU gettext.
17541         * lib/copy-file.c: New file, from GNU gettext.
17542
17543 2003-03-18  Jim Meyering  <jim@meyering.net>
17544
17545         * lib/quote.c (quote_n): Fix typo in comment.
17546
17547 2003-03-18  Bruno Haible  <bruno@clisp.org>
17548
17549         * m4/onceonly.m4: Use m4_defn instead of defn, for better error
17550         checking.
17551         * m4/onceonly_2_57.m4: Likewise.
17552
17553 2003-03-17  Bruno Haible  <bruno@clisp.org>
17554
17555         * m4/onceonly.m4: Require autoconf 2.54 or newer.
17556         (m4_quote): Remove macro.
17557         * m4/onceonly_2_57.m4: Require autoconf 2.54 or newer.
17558
17559 2003-03-14  Jim Meyering  <jim@meyering.net>
17560
17561         Merge changes from Coreutils.
17562         * lib/obstack.h (obstack_object_size): Declare temporary, __o,
17563         to be const, in order to avoid warnings.
17564         (obstack_room): Likewise.
17565         (obstack_empty_p): Likewise.
17566
17567 2003-03-14  Bruno Haible  <bruno@clisp.org>
17568
17569         * m4/onceonly_2_57.m4 (AC_CHECK_HEADERS_ONCE, AC_CHECK_FUNCS_ONCE,
17570         AC_CHECK_DECLS_ONCE): Quote AC_FOREACH variable-expansions properly.
17571
17572 2003-03-13  Paul Eggert  <eggert@twinsun.com>
17573
17574         Merge changes from Bison.
17575         * lib/obstack.h: (__INT_TO_PTR) [__STDC__]: Cast result to
17576         (void *) to avoid diagnostic with native c89 on SGI IRIX 6.5
17577         when compiling Bison 1.875's `bitset bset = obstack_alloc
17578         (bobstack, bytes);'.  Problem reported by Nelson H. F. Beebe.
17579         * lib/hash.c: Include <stdbool.h> unconditionally.
17580
17581 2003-03-13  Paul Eggert  <eggert@twinsun.com>
17582
17583         * m4/onceonly.m4 (m4_quote): New macro.
17584         (AC_CHECK_HEADERS_ONCE, AC_CHECK_FUNCS_ONCE, AC_CHECK_DECLS_ONCE):
17585         Quote AC_FOREACH variable-expansions properly.
17586
17587 2003-03-13  Paul Eggert  <eggert@twinsun.com>
17588
17589         * doc/COPYING.DOC, fdl.texi: Sync with latest FSF version.
17590
17591 2003-03-09  Paul Eggert  <eggert@twinsun.com>
17592
17593         * lib/argmatch.c (EXIT_FAILURE): Define if the system doesn't.
17594         Reported by Bruce Becker; see:
17595         http://mail.gnu.org/archive/html/bug-bison/2003-03/msg00017.html
17596
17597 2003-03-03  Paul Eggert  <eggert@twinsun.com>
17598             Bruno Haible  <bruno@clisp.org>
17599
17600         * lib/mbswidth.h: Include <wchar.h>. Needed for UnixWare 7.1.1.
17601         Reported by John Hughes, see
17602         http://mail.gnu.org/archive/html/bug-bison/2003-02/msg00030.html
17603
17604 2003-02-20  Bruno Haible  <bruno@clisp.org>
17605
17606         * MODULES.html.sh (func_all_modules): Add poll.
17607
17608 2003-02-19  Paolo Bonzini  <bonzini@gnu.org>
17609
17610         * modules/poll: New file.
17611
17612 2003-02-19  Paolo Bonzini  <bonzini@gnu.org>
17613
17614         * lib/poll_.h: New file.
17615         * lib/poll.c: New file.
17616
17617 2003-02-19  Paolo Bonzini  <bonzini@gnu.org>
17618
17619         * m4/poll.m4: New file.
17620
17621 2003-02-18  Paolo Bonzini  <bonzini@gnu.org>
17622
17623         * modules/mathl: New file.
17624
17625 2003-02-18  Paolo Bonzini  <bonzini@gnu.org>
17626
17627         * lib/mathl.h: New file.
17628         * lib/acosl.c: New file.
17629         * lib/asinl.c: New file.
17630         * lib/atanl.c: New file.
17631         * lib/ceill.c: New file.
17632         * lib/cosl.c: New file.
17633         * lib/expl.c: New file.
17634         * lib/floorl.c: New file.
17635         * lib/frexpl.c: New file.
17636         * lib/ldexpl.c: New file.
17637         * lib/logl.c: New file.
17638         * lib/sincosl.c: New file.
17639         * lib/sinl.c: New file.
17640         * lib/sqrtl.c: New file.
17641         * lib/tanl.c: New file.
17642         * lib/trigl.c: New file.
17643         * lib/trigl.h: New file.
17644
17645 2003-02-18  Paolo Bonzini  <bonzini@gnu.org>
17646
17647         * m4/mathl.m4: New file.
17648
17649 2003-02-18  Bruno Haible  <bruno@clisp.org>
17650
17651         * MODULES.html.sh (func_all_modules): Add mathl.
17652
17653 2003-02-17  Bruno Haible  <bruno@clisp.org>
17654
17655         * modules/mkdtemp: New module.
17656         * MODULES.html.sh (func_all_modules): Add it.
17657
17658 2003-02-17  Bruno Haible  <bruno@clisp.org>
17659
17660         * m4/mkdtemp.m4: New file, from GNU gettext with modifications.
17661
17662 2003-02-17  Bruno Haible  <bruno@clisp.org>
17663
17664         * lib/mkdtemp.h: New file, from GNU gettext.
17665         * lib/mkdtemp.c: New file, from GNU gettext.
17666
17667 2003-02-02  Jim Meyering  <jim@meyering.net>
17668
17669         * m4/regex.m4 (jm_INCLUDED_REGEX): Detect broken re_search in
17670         e.g. glibc-2.2.93.
17671
17672 2003-01-31  Bruno Haible  <bruno@clisp.org>
17673
17674         * m4/rename.m4 (vb_FUNC_RENAME): Add a redirection from 'rename' to
17675         'rpl_rename'.
17676         * m4/strnlen.m4 (gl_FUNC_STRNLEN): Add a redirection from 'strnlen' to
17677         'rpl_strnlen'.
17678         * m4/strtod.m4 (gl_FUNC_STRTOD): Add a redirection from 'strtod' to
17679         'rpl_strtod'.
17680         * m4/utime.m4 (jm_FUNC_UTIME): Add a redirection from 'utime' to
17681         'rpl_utime'.
17682
17683 2003-01-31  Bruno Haible  <bruno@clisp.org>
17684
17685         * lib/rename.c: #undef rename before defining rpl_rename.
17686         * lib/strnlen.c: #undef strnlen, define rpl_strnlen instead of strnlen.
17687
17688 2003-01-30  Bruno Haible  <bruno@clisp.org>
17689
17690         * modules/vasnprintf, modules/vasprintf: New modules.
17691         * MODULES.html.sh (func_all_modules): Add them.
17692
17693 2003-01-30  Bruno Haible  <bruno@clisp.org>
17694
17695         * m4/signed.m4: New file, from GNU gettext.
17696         * m4/longdouble.m4: New file, from GNU gettext.
17697         * m4/wchar_t.m4: New file, from GNU gettext.
17698         * m4/wint_t.m4: New file, from GNU gettext.
17699         * m4/vasnprintf.m4: New file.
17700         * m4/vasprintf.m4: New file.
17701
17702 2003-01-30  Bruno Haible  <bruno@clisp.org>
17703
17704         * lib/printf-args.h: New file, from GNU gettext.
17705         * lib/printf-args.c: New file, from GNU gettext.
17706         * lib/printf-parse.h: New file, from GNU gettext.
17707         * lib/printf-parse.c: New file, from GNU gettext.
17708         * lib/vasnprintf.h: New file, from GNU gettext.
17709         * lib/vasnprintf.c: New file, from GNU gettext.
17710         * lib/asnprintf.c: New file, from GNU gettext.
17711         * lib/vasprintf.h: New file, from GNU gettext with modifications.
17712         * lib/vasprintf.c: New file, from GNU gettext.
17713         * lib/asprintf.c: New file, from GNU gettext.
17714
17715 2003-01-29  Bruno Haible  <bruno@clisp.org>
17716
17717         * modules/stpncpy: New module.
17718         * MODULES.html.sh (func_all_modules): Add it.
17719
17720 2003-01-29  Bruno Haible  <bruno@clisp.org>
17721
17722         * m4/stpncpy.m4: New file.
17723
17724 2003-01-29  Bruno Haible  <bruno@clisp.org>
17725
17726         * lib/stpncpy.h: New file, from GNU gettext with modifications.
17727         * lib/stpncpy.c: New file, from GNU gettext with modifications.
17728
17729 2003-01-28  Bruno Haible  <bruno@clisp.org>
17730
17731         * modules/c-ctype: New module.
17732         * MODULES.html.sh (func_all_modules): Add it.
17733
17734 2003-01-28  Bruno Haible  <bruno@clisp.org>
17735
17736         * lib/c-ctype.h: New file, from GNU gettext, with changes suggested by
17737         Paul Eggert.
17738         * lib/c-ctype.c: New file, from GNU gettext, with changes suggested by
17739         Paul Eggert.
17740
17741 2003-01-27  Bruno Haible  <bruno@clisp.org>
17742
17743         * modules/xsetenv: New module.
17744         * MODULES.html.sh (func_all_modules): Add it.
17745
17746 2003-01-27  Bruno Haible  <bruno@clisp.org>
17747
17748         * lib/xsetenv.h: New file, from GNU gettext.
17749         * lib/xsetenv.c: New file, from GNU gettext.
17750
17751 2003-01-23  Jim Meyering  <jim@meyering.net>
17752
17753         * m4/dirfd.m4 (UTILS_FUNC_DIRFD): Correct typo: s/-1/no/ that kept this
17754         from working on systems without dirfd (at least Irix and OSF1/Tru64).
17755
17756 2003-01-23  Bruno Haible  <bruno@clisp.org>
17757
17758         * modules/minmax: New module.
17759         * MODULES.html.sh (func_all_modules): Add it.
17760
17761 2003-01-23  Bruno Haible  <bruno@clisp.org>
17762
17763         * lib/minmax.h: New file, from GNU gettext, with comments from Paul
17764         Eggert.
17765
17766 2003-01-22  Bruno Haible  <bruno@clisp.org>
17767
17768         * modules/exit: New module.
17769         * MODULES.html.sh (func_all_modules): Add it.
17770
17771 2003-01-22  Bruno Haible  <bruno@clisp.org>
17772
17773         * lib/exit.h: New file, from GNU gettext.
17774
17775 2003-01-19  Bruno Haible  <bruno@clisp.org>
17776
17777         * gnulib-tool: Recognize option --extract-maintainer.
17778         (func_get_maintainer): New function.
17779         * modules/*: Add Maintainer entry.
17780
17781 2003-01-16  Jim Meyering  <jim@meyering.net>
17782
17783         * m4/regex.m4: The `regex' struct is both input and output.
17784         Initialize it before each use.  Patch by Tim Waugh.
17785
17786 2003-01-16  Bruno Haible  <bruno@clisp.org>
17787
17788         * MODULES.html.sh: Add a table of contents. Add the module name as
17789         leftmost column. Add hyperlinks.
17790
17791 2003-01-15  Bruno Haible  <bruno@clisp.org>
17792
17793         * m4/md5.m4 (gl_MD5): Require AC_C_INLINE.
17794
17795 2003-01-15  Bruno Haible  <bruno@clisp.org>
17796
17797         * m4/longlong.m4 (jm_AC_TYPE_LONG_LONG): Also test the LL suffix.
17798         * m4/ulonglong.m4 (jm_AC_TYPE_UNSIGNED_LONG_LONG): Also test the ULL
17799         suffix.
17800
17801 2003-01-15  Bruno Haible  <bruno@clisp.org>
17802
17803         * m4/alloca.m4 (gl_FUNC_ALLOCA): Invoke AC_EGREP_CPP prerequisites.
17804
17805 2003-01-15  Bruno Haible  <bruno@clisp.org>
17806
17807         * lib/stpcpy.h (stpcpy): Use ANSI C function declarations.
17808         * lib/strcase.h (strcasecmp, strncasecmp): Likewise.
17809
17810 2003-01-14  Jim Meyering  <jim@meyering.net>
17811
17812         * lib/same.c (same_name): Tweak a comment.
17813
17814 2003-01-14  Bruno Haible  <bruno@clisp.org>
17815
17816         * lib/same.c (same_name): Reorder tests so as to avoid calling stat()
17817         when a string comparison is sufficient.
17818
17819 2003-01-14  Bruno Haible  <bruno@clisp.org>
17820
17821         * lib/readtokens.c (readtoken): Cast character to 'unsigned char', not
17822         'unsigned int'.
17823
17824 2003-01-14  Bruno Haible  <bruno@clisp.org>
17825
17826         * lib/hash-pjw.c: Add comment about low quality of this function.
17827
17828 2003-01-13  Bruno Haible  <bruno@clisp.org>
17829
17830         * modules/stpcpy: Distribute lib/stpcpy.h.
17831         * modules/setenv: Depend on alloca. Distribute lib/setenv.h.
17832
17833 2003-01-13  Bruno Haible  <bruno@clisp.org>
17834
17835         * modules/*: Add a description.
17836         * modules/strpbrk: Fix Makefile.am snippet.
17837         * modules/strtoimax: Fix dependencies.
17838         * modules/strtoumax: Likewise.
17839
17840 2003-01-13  Bruno Haible  <bruno@clisp.org>
17841
17842         * gnulib-tool (func_create_testdir): Substitute lib_OBJECTS.
17843         * modules/alloca (Makefile.am): All object files depend on alloca.h.
17844         * modules/stdbool (Makefile.am): All object files depend on stdbool.h.
17845
17846 2003-01-13  Bruno Haible  <bruno@clisp.org>
17847
17848         * gnulib-tool (func_create_testdir): Store config/* files in the main
17849         directory.
17850         * config.rpath: Move to ...
17851         * config/config.rpath: ... here.
17852         * modules/gettext: Contains config/config.rpath, not config.rpath.
17853         * modules/iconv: Likewise.
17854
17855 2003-01-12  Paul Eggert  <eggert@twinsun.com>
17856
17857         Finish renaming getstr -> getdelim2 and readline -> readlinebuffer,
17858         to avoid collisions with libcurses and libreadline.
17859
17860         * m4/getstr.m4: Remove.
17861         * m4/getline.m4 (gl_PREREQ_GETLINE): Require AC_HEADER_STDC.
17862
17863 2003-01-12  Paul Eggert  <eggert@twinsun.com>
17864
17865         Finish renaming getstr -> getdelim2 and readline -> readlinebuffer,
17866         to avoid collisions with libcurses and libreadline.
17867
17868         * lib/Makefile.am (libfetish_a_SOURCES): Remove getstr.c, getstr.h.
17869         * lib/getstr.h, getstr.c: Remove.
17870         * lib/getline.c: Include "getline.h", to check interface.
17871         Move body of old getstr.c here: this defines MIN_CHUNK and
17872         declares getdelim2, which is renamed from getstr.
17873         (getline, getdelim): Adjust to renaming of getstr -> getdelim2.
17874
17875         * lib/linebuffer.c (readlinebuffer): Renamed from readline.
17876         All uses changed.
17877         * lib/linebuffer.h: Likewise.
17878         (readline): Remove backward-compatibility macro.
17879
17880 2003-01-12  Paul Eggert  <eggert@twinsun.com>
17881
17882         Finish renaming getstr -> getdelim2 and readline -> readlinebuffer,
17883         to avoid collisions with libcurses and libreadline.
17884         * getstr: Remove.
17885         * MODULES.html.sh: Remove getstr.
17886         * modules/getline: Depend on unlocked-io, not getstr.
17887
17888 2003-01-12  Jim Meyering  <jim@meyering.net>
17889
17890         * lib/makepath.c: Don't test HAVE_ERRNO_H.  It's not necessary.
17891
17892 2003-01-10  Bruno Haible  <bruno@clisp.org>
17893
17894         * modules/alloca: Change Makefile.am requirements. Simplify Include
17895         requirements. Add lib/alloca_.h to file list.
17896
17897 2003-01-10  Bruno Haible  <bruno@clisp.org>
17898
17899         * m4/alloca.m4 (gl_FUNC_ALLOCA): Also define ALLOCA_H.
17900
17901 2003-01-10  Bruno Haible  <bruno@clisp.org>
17902
17903         * lib/alloca_.h: New file.
17904         * lib/getdate.y: Unconditionally include alloca.h.
17905         * lib/makepath.c: Likewise.
17906         * lib/setenv.c: Likewise.
17907         * lib/userspec.c: Likewise.
17908
17909 2003-01-09  Karl Berry  <karl@gnu.org>
17910
17911         * MODULES.html.sh: include `dirname $0` in PATH, to find
17912         gnulib-tool.
17913
17914 2003-01-09  Bruno Haible  <bruno@clisp.org>
17915
17916         * modules/stdbool: Change configure.ac, Makefile.am requirements.
17917         Simplify Include requirements. Add lib/stdbool.h.in to file list.
17918
17919 2003-01-09  Bruno Haible  <bruno@clisp.org>
17920
17921         * m4/stdbool.m4 (AM_STDBOOL_H): New macro.
17922
17923 2003-01-09  Bruno Haible  <bruno@clisp.org>
17924
17925         * lib/stdbool.h.in: New file.
17926
17927 2003-01-09  Bruno Haible  <bruno@clisp.org>
17928
17929         * gnulib-tool (func_all_modules): Ignore files ending in ~.
17930         * MODULES.html.sh: Likewise.
17931
17932 2003-01-08  Jim Meyering  <jim@meyering.net>
17933
17934         * lib/full-write.c: Undefine and define-away `const' after inclusion
17935         of errno.h, not before.  Suggestion from Bruno Haible.
17936
17937 2003-01-08  Bruno Haible  <bruno@clisp.org>
17938
17939         * modules/full-read: Depend on full-write.
17940
17941 2003-01-08  Bruno Haible  <bruno@clisp.org>
17942
17943         * lib/safe-read.c: Include specification header first, to ensure its
17944         selfcontainedness.
17945         * lib/full-write.c: Likewise.
17946
17947 2003-01-07  Jim Meyering  <jim@meyering.net>
17948
17949         * lib/full-write.c: Rework so that it may serve to define full_read,
17950         too.
17951         * lib/full-read.c: Simply #define FULL_READ and include full-write.c.
17952
17953 2003-01-07  Bruno Haible  <bruno@clisp.org>
17954
17955         * lib/strtoimax.c: Include <stdint.h> as an alternative to
17956         <inttypes.h>.
17957         * lib/xstrtol.h: Likewise.
17958         * lib/xstrtoimax.c: Likewise.
17959         * lib/xstrtoumax.c: Likewise.
17960         * lib/human.h: Likewise.
17961
17962         * lib/tempname.c: Include <inttypes.h> too. Avoids a compilation error
17963         on systems that have <inttypes.h> but not <stdint.h>.
17964
17965 2003-01-07  Bruno Haible  <bruno@clisp.org>
17966
17967         * MODULES.html.sh: Add copyright notice.
17968         (missed_files): Omit CVS directory entries.
17969         (func_module): Make it work with sed-3.02.
17970         * MODULES.txt: Remove file.
17971
17972 2003-01-06  Jim Meyering  <jim@meyering.net>
17973
17974         * lib/version-etc.c: Update year in translatable copyright string.
17975
17976 2003-01-03  Karl Berry  <karl@gnu.org>
17977
17978         * config/config.{guess,sub}: update from prep.
17979
17980 2003-01-02  Karl Berry  <karl@gnu.org>
17981
17982         * doc/COPYING.DOC: belatedly updated to 1.2.
17983
17984 2003-01-01  Karl Berry  <karl@gnu.org>
17985
17986         * gnulib-tool (func_verify_module): report module name $module in
17987         error message, not $1.
17988         * gnulib-tool (create-testdir): don't complain if destdir couldn't
17989         be created, only if it doesn't exist.
17990         * gnulib-tool (last_checkin_date): don't expand the $Date here.
17991
17992 2002-12-31  Paul Eggert  <eggert@twinsun.com>
17993
17994         * m4/memcoll.m4 (gl_MEMCOLL): Require AC_FUNC_MEMCMP.
17995
17996 2002-12-31  Paul Eggert  <eggert@twinsun.com>
17997
17998         * lib/memcoll.c (memcoll): Fall back on a simple algorithm using
17999         memcmp if strcoll doesn't work.
18000
18001 2002-12-31  Bruno Haible  <bruno@clisp.org>
18002
18003         * lib/utime.c (utime_null): No need to call ftruncate if the file was
18004         nonempty.
18005
18006 2002-12-31  Bruno Haible  <bruno@clisp.org>
18007
18008         * lib/memcoll.c (STRCOLL): New macro.
18009         (memcoll): Use it.
18010
18011 2002-12-31  Bruno Haible  <bruno@clisp.org>
18012
18013         * lib/localcharset.h: New file.
18014         * lib/localcharset.c: Include it.
18015         * lib/unicodeio.c: Likewise.
18016
18017 2002-12-31  Bruno Haible  <bruno@clisp.org>
18018
18019         * lib/getstr.h (getstr): Define, to avoid clash with libcurses.
18020         * lib/linebuffer.h (readline): Define, to avoid clash with libreadline.
18021
18022 2002-12-31  Bruno Haible  <bruno@clisp.org>
18023
18024         * lib/getline.h: Include <stddef.h>, for size_t.
18025
18026         * lib/unicodeio.h: Include <stddef.h>, for size_t.
18027         * lib/unicodeio.c: Don't include <stddef.h>.
18028
18029 2002-12-31  Bruno Haible  <bruno@clisp.org>
18030
18031         * lib/getdate.y (get_date): Test HAVE_STRUCT_TM_TM_ZONE, not
18032         HAVE_TM_ZONE.
18033
18034 2002-12-24  Karl Berry  <karl@gnu.org>
18035
18036         * config/config.guess: update from prep.
18037
18038 2002-12-24  Bruno Haible  <bruno@clisp.org>
18039
18040         General infrasructure.
18041         * m4/README: Rewritten.
18042         * m4/onceonly.m4: New file.
18043         * m4/onceonly_2_57.m4: New file.
18044
18045         Module atexit.
18046         * m4/atexit.m4: New file.
18047
18048         Module strtod.
18049         * m4/strtod.m4: New file.
18050
18051         Module strtol.
18052         * m4/strtol.m4: New file.
18053
18054         Module strtoul.
18055         * m4/strtoul.m4: New file.
18056
18057         Module memchr.
18058         * m4/memchr.m4: New file.
18059
18060         Module memcmp.
18061         * m4/memcmp.m4 (gl_PREREQ_MEMCMP): New macro.
18062         (jm_FUNC_MEMCMP): Invoke it.
18063
18064         Module memcpy.
18065         * m4/memcpy.m4: New file.
18066
18067         Module memmove.
18068         * m4/memmove.m4: New file.
18069
18070         Module memset.
18071         * m4/memset.m4: New file.
18072
18073         Module strcspn.
18074         * m4/strcspn.m4: New file.
18075
18076         Module strpbrk.
18077         * m4/strpbrk.m4: New file.
18078
18079         Module strstr.
18080         * m4/strstr.m4: New file.
18081
18082         Module strerror.
18083         * m4/strerror.m4: New file.
18084
18085         Module mktime.
18086         * m4/mktime.m4: Renamed from jm-mktime.m4.
18087         (gl_PREREQ_MKTIME): New macro.
18088         (gl_FUNC_MKTIME): Renamed from jm_FUNC_MKTIME. Invoke gl_PREREQ_MKTIME.
18089
18090         Module malloc.
18091         * m4/malloc.m4 (gl_PREREQ_MALLOC): New macro.
18092         (jm_FUNC_MALLOC): Use AC_FUNC_MALLOC. Invoke gl_PREREQ_MALLOC.
18093         Don't define HAVE_DONE_WORKING_MALLOC_CHECK, since nothing uses it.
18094
18095         Module realloc.
18096         * m4/realloc.m4 (gl_PREREQ_REALLOC): New macro.
18097         (jm_FUNC_REALLOC): Use AC_FUNC_REALLOC. Invoke gl_PREREQ_REALLOC.
18098         Don't define HAVE_DONE_WORKING_REALLOC_CHECK, since nothing uses it.
18099
18100         Module strftime.
18101         * m4/tm_gmtoff.m4: New file, extracted from strftime.m4.
18102         * m4/strftime.m4 (_jm_STRFTIME_PREREQS): Use AC_FUNC_STRFTIME.
18103         Don't test for bcopy (we are not emacs). Invoke AC_TYPE_MBSTATE_T and
18104         gl_TM_GMTOFF.
18105         (_jm_STRFTIME_PREREQS, jm_FUNC_GNU_STRFTIME): Use onceonly macros.
18106
18107         Module xalloc.
18108         * m4/xalloc.m4: New file.
18109
18110         Module alloca.
18111         * m4/alloca.m4: New file.
18112
18113         Module putenv.
18114         * m4/putenv.m4 (gl_PREREQ_PUTENV): New macro.
18115         (jm_FUNC_PUTENV): Invoke it.
18116
18117         Module setenv.
18118         * m4/setenv.m4 (gt_FUNC_SETENV): New macro.
18119         (gt_CHECK_VAR_DECL): Fix quoting error that led to infinite loop in m4
18120         when invoked twice.
18121         (gt_PREREQ_SETENV, gt_PREREQ_UNSETENV): New macros, replacing old
18122         gt_FUNC_SETENV.
18123
18124         Module memrchr.
18125         * m4/memrchr.m4: New file.
18126
18127         Module stpcpy.
18128         * m4/stpcpy.m4: New file.
18129
18130         Module strcase.
18131         * m4/strcase.m4: New file.
18132
18133         Module strdup.
18134         * m4/strdup.m4: New file.
18135
18136         Module strnlen.
18137         * m4/strnlen.m4: New file.
18138
18139         Module strndup.
18140         * m4/strndup.m4: New file.
18141
18142         Module xstrtod.
18143         * m4/xstrtod.m4: New file.
18144
18145         Module xstrtol.
18146         * m4/xstrtol.m4: New file.
18147
18148         Module getdate.
18149         * m4/getdate.m4: New file.
18150
18151         Module unlocked-io.
18152         * m4/unlocked-io.m4: Renamed from jm-glibc-io.m4.
18153         (jm_FUNC_GLIBC_UNLOCKED_IO): Invoke AC_GNU_SOURCE. Use onceonly macros.
18154         * m4/jm-glibc-io.m4n: Remove file.
18155
18156         Module long-options.
18157         * m4/long-options.m4: New file.
18158
18159         Module md5.
18160         * m4/md5.m4: New file.
18161
18162         Module sha.
18163         * m4/sha.m4: New file.
18164
18165         Module getstr.
18166         * m4/getstr.m4: New file.
18167
18168         Module getline.
18169         * m4/getline.m4 (gl_PREREQ_GETLINE): New macro.
18170         (AM_FUNC_GETLINE): Invoke AC_GNU_SOURCE. Use <stdlib.h>, not
18171         <sys/types.h>, for size_t. Use the function name gnu_getline, not
18172         simply getline. Infoke gl_PREREQ_GETLINE.
18173
18174         Module obstack.
18175         * m4/obstack.m4: New file.
18176
18177         Module hash.
18178         * m4/hash.m4: New file.
18179
18180         Module readtokens.
18181         * m4/readtokens.m4: New file.
18182
18183         Module strverscmp.
18184         * m4/strverscmp.m4: New file.
18185
18186         Module stdbool.
18187         * m4/stdbool.m4 (AC_HEADER_STDBOOL): Add test for _Bool. Needed for
18188         OSF/1.
18189
18190         Module strtoll.
18191         * m4/strtoll.m4: New file.
18192
18193         Module strtoull.
18194         * m4/strtoull.m4: New file.
18195
18196         Module strtoimax.
18197         * m4/strtoimax.m4: New file.
18198
18199         Module strtoumax.
18200         * m4/strtoumax.m4: New file.
18201
18202         Module xstrtoimax.
18203         * m4/xstrtoimax.m4 (jm_XSTRTOIMAX): Renamed from
18204         jm_AC_PREREQ_XSTRTOIMAX.
18205         Moved the strtol prerequisites to strtol.m4.
18206         Moved the strtoll prerequisites to strtoll.m4.
18207         Moved the strtoimax prerequisites to strtoimax.m4.
18208
18209         Module xstrtoumax.
18210         * m4/xstrtoumax.m4 (jm_XSTRTOUMAX): Renamed from
18211         jm_AC_PREREQ_XSTRTOUMAX.
18212         Moved the strtoul prerequisites to strtoul.m4.
18213         Moved the strtoull prerequisites to strtoull.m4.
18214         Moved the strtoumax prerequisites to strtoumax.m4.
18215
18216         Module chown.
18217         * m4/chown.m4 (gl_PREREQ_CHOWN): New macro.
18218         (jm_FUNC_CHOWN): Use AC_FUNC_CHOWN. Invoke gl_PREREQ_CHOWN.
18219
18220         Module dup2.
18221         * m4/dup2.m4: New file.
18222
18223         Module ftruncate.
18224         * m4/ftruncate.m4 (gl_PREREQ_FTRUNCATE): New macro.
18225         (jm_FUNC_FTRUNCATE): Use AC_REPLACE_FUNCS. Invoke gl_PREREQ_FTRUNCATE.
18226
18227         Module getgroups.
18228         * m4/getgroups.m4 (gl_PREREQ_GETGROUPS): New macro.
18229         (jm_FUNC_GETGROUPS): Use AC_FUNC_GETGROUPS. Invoke gl_PREREQ_GETGROUPS.
18230
18231         Module gettimeofday.
18232         * m4/gettimeofday.m4 (gl_PREREQ_GETTIMEOFDAY): New macro.
18233         (AC_FUNC_GETTIMEOFDAY_CLOBBER): Use onceonly macros. Invoke
18234         gl_PREREQ_GETTIMEOFDAY.
18235
18236         Module mkdir.
18237         * m4/mkdir-slash.m4 (gl_PREREQ_MKDIR): New macro.
18238         (UTILS_FUNC_MKDIR_TRAILING_SLASH): Invoke gl_PREREQ_MKDIR.
18239
18240         Module mkstemp.
18241         * m4/mkstemp.m4 (gl_PREREQ_MKSTEMP): New macro.
18242         (jm_PREREQ_TEMPNAME): New macro, from prereq.m4. Also invoke
18243         jm_AC_TYPE_UINTMAX_T.
18244         (UTILS_FUNC_MKSTEMP): Invoke gl_PREREQ_MKSTEMP and jm_PREREQ_TEMPNAME.
18245
18246         Module stat.
18247         * m4/stat.m4 (gl_PREREQ_STAT): New macro.
18248         (jm_FUNC_STAT): Use AC_FUNC_STAT. Invoke gl_PREREQ_STAT.
18249
18250         Module lstat.
18251         * m4/lstat.m4 (gl_PREREQ_LSTAT): New macro.
18252         (jm_FUNC_LSTAT): Use AC_FUNC_LSTAT. Invoke gl_PREREQ_LSTAT.
18253
18254         Module timespec.
18255         * m4/timespec.m4 (gl_TIMESPEC): New macro.
18256         (jm_CHECK_TYPE_STRUCT_TIMESPEC): Add check for <sys/time.h>.
18257         * m4/st_mtim.m4: Indentation.
18258
18259         Module nanosleep.
18260         * m4/nanosleep.m4 (gl_PREREQ_NANOSLEEP): New macro.
18261         (jm_FUNC_NANOSLEEP): Add check for <sys/time.h>. Invoke
18262         gl_PREREQ_NANOSLEEP.
18263
18264         Module regex.
18265         * m4/regex.m4 (jm_PREREQ_REGEX): New macro.
18266         (jm_INCLUDED_REGEX): Invoke jm_PREREQ_REGEX.
18267         (gl_REGEX): New macro.
18268
18269         Module rename.
18270         * m4/rename.m4 (gl_PREREQ_RENAME): New macro.
18271         (vb_FUNC_RENAME): Invoke gl_PREREQ_RENAME.
18272
18273         Module rmdir.
18274         * m4/rmdir.m4: New file.
18275
18276         Module utime.
18277         * m4/utimbuf.m4 (jm_CHECK_TYPE_STRUCT_UTIMBUF): Use onceonly macros.
18278         * m4/utime.m4 (gl_PREREQ_UTIME): New macro.
18279         (jm_FUNC_UTIME): Invoke gl_PREREQ_UTIME.
18280
18281         Module dirname.
18282         * m4/dirname.m4: New file.
18283
18284         Module getopt.
18285         * m4/getopt.m4: New file.
18286
18287         Module unistd-safer.
18288         * m4/unistd-safer.m4: New file.
18289
18290         Module fnmatch.
18291         * m4/fnmatch.m4 (_AC_FUNC_FNMATCH_IF): Include <stdlib.h>, for exit()
18292         declaration.
18293         (gl_PREREQ_FNMATCH_EXTRA): New macro.
18294         (gl_FUNC_FNMATCH_POSIX): New macro.
18295         (gl_FUNC_FNMATCH_GNU): Renamed from AC_FUNC_FNMATCH_GNU. Invoke
18296         gl_PREREQ_FNMATCH_EXTRA. Use the function name gnu_fnmatch, not
18297         simply fnmatch.
18298
18299         Module exclude.
18300         * m4/exclude.m4: New file.
18301
18302         Module human.
18303         * m4/human.m4: New file.
18304
18305         Module acl.
18306         * m4/acl.m4: Nop.
18307
18308         Module backupfile.
18309         * m4/backupfile.m4: New file.
18310         * m4/d-ino.m4: Indentation.
18311
18312         Module fsusage.
18313         * m4/fsusage.m4 (gl_FSUSAGE): New macro.
18314         (jm_STATFS_TRUNCATES): New macro, from coreutils-4.5.4/configure.ac.
18315         (gl_PREREQ_FSUSAGE_EXTRA): New macro.
18316
18317         Module dirfd.
18318         * m4/dirfd.m4 (UTILS_FUNC_DIRFD): Invoke some AC_EGREP_CPP
18319         requirements.
18320
18321         Module euidaccess.
18322         * m4/euidaccess.m4: New file.
18323
18324         Module file-type.
18325         * m4/file-type.m4: New file.
18326
18327         Module fileblocks.
18328         * m4/fileblocks.m4: New file.
18329
18330         Module filemode.
18331         * m4/filemode.m4: New file.
18332
18333         Module isdir.
18334         * m4/isdir.m4: New file.
18335
18336         Module lchown.
18337         * m4/lchown.m4 (gl_PREREQ_LCHOWN): New macro.
18338         (jm_FUNC_LCHOWN): Invoke gl_PREREQ_LCHOWN.
18339
18340         Module makepath.
18341         * m4/makepath.m4: New file.
18342
18343         Module modechange.
18344         * m4/modechange.m4: New file.
18345
18346         Module mountlist.
18347         * m4/mountlist.m4: New file.
18348         * m4/ls-mntd-fs.m4 (jm_LIST_MOUNTED_FILESYSTEMS): Use onceonly macros.
18349         Indentation.
18350
18351         Module path-concat.
18352         * m4/path-concat.m4: New file.
18353
18354         Module pathmax.
18355         * m4/pathmax.m4: New file.
18356
18357         Module same.
18358         * m4/same.m4: New file.
18359
18360         Module save-cwd.
18361         * m4/save-cwd.m4: New file.
18362
18363         Module savedir.
18364         * m4/savedir.m4: New file.
18365
18366         Module xgetcwd.
18367         * m4/xgetcwd.m4: New file.
18368         * m4/getcwd.m4 (AC_FUNC_GETCWD_NULL): Use onceonly macros.
18369
18370         Module xreadlink.
18371         * m4/xreadlink.m4: New file.
18372
18373         Module safe-read.
18374         * m4/safe-read.m4: New file.
18375
18376         Module safe-write.
18377         * m4/safe-write.m4: New file.
18378
18379         Module closeout.
18380         * m4/closeout.m4: New file.
18381
18382         Module stdio-safer.
18383         * m4/stdio-safer.m4: New file.
18384
18385         Module getpass.
18386         * m4/getpass.m4: New file.
18387
18388         Module getugroups.
18389         * m4/getugroups.m4: New file.
18390
18391         Module group-member.
18392         * m4/group-member.m4 (gl_PREREQ_GROUP_MEMBER): New macro.
18393         (jm_FUNC_GROUP_MEMBER): Invoke AC_GNU_SOURCE, gl_PREREQ_GROUP_MEMBER.
18394
18395         Module idcache.
18396         * m4/idcache.m4: New file.
18397
18398         Module userspec.
18399         * m4/userspec.m4: New file.
18400
18401         Module gettime.
18402         * m4/clock_time.m4: New file.
18403         * m4/gettime.m4: New file.
18404
18405         Module settime.
18406         * m4/settime.m4: New file.
18407
18408         Module posixtm.
18409         * m4/posixtm.m4: New file.
18410
18411         Module gethostname.
18412         * m4/gethostname.m4: New file.
18413
18414         Module canon-host.
18415         * m4/canon-host.m4: New file.
18416
18417         Module gettext.
18418         * m4/codeset.m4: New file, from gettext-0.11.5.
18419         * m4/gettext.m4: New file, from gettext-0.11.5.
18420         * m4/glibc21.m4: New file, from gettext-0.11.5.
18421         * m4/iconv.m4: New file, from gettext-0.11.5.
18422         * m4/intdiv0.m4: New file, from gettext-0.11.5.
18423         * m4/inttypes-pri.m4: New file, from gettext-0.11.5.
18424         * m4/inttypes.m4: New file, from gettext-0.11.5.
18425         * m4/inttypes_h.m4: New file, from gettext-0.11.5 with modifications.
18426         * m4/isc-posix.m4: New file, from gettext-0.11.5.
18427         * m4/lcmessage.m4: New file, from gettext-0.11.5.
18428         * m4/lib-ld.m4: New file, from gettext-0.11.5.
18429         * m4/lib-link.m4: New file, from gettext-0.11.5.
18430         * m4/lib-prefix.m4: New file, from gettext-0.11.5.
18431         * m4/progtest.m4: New file, from gettext-0.11.5.
18432         * m4/stdint_h.m4: New file, from gettext-0.11.5 with modifications.
18433         * m4/uintmax_t.m4: New file, from gettext-0.11.5 with modifications.
18434         * m4/ulonglong.m4: New file, from gettext-0.11.5 with modifications.
18435
18436         Module localcharset.
18437         * m4/localcharset.m4: New file.
18438
18439         Module hard-locale.
18440         * m4/hard-locale.m4: New file.
18441
18442         Module mbswidth.
18443         * m4/mbswidth.m4 (gl_MBSWIDTH): Renamed from jm_PREREQ_MBSWIDTH. Use
18444         onceonly macros.
18445         * m4/mbrtowc.m4: Add comment.
18446
18447         Module memcasecmp.
18448         * m4/memcasecmp.m4: New file.
18449
18450         Module memcoll.
18451         * m4/memcoll.m4: New file.
18452
18453         Module unicodeio.
18454         * m4/unicodeio.m4: New file.
18455
18456         Module rpmatch.
18457         * m4/rpmatch.m4: New file.
18458
18459         Module yesno.
18460         * m4/yesno.m4: New file.
18461
18462         Module exitfail.
18463         * m4/exitfail.m4: New file.
18464
18465         Module c-stack.
18466         * m4/c-stack.m4 (gl_C_STACK): New macro.
18467         (jm_PREREQ_C_STACK): Check for <sys/time.h>. Use onceonly macros.
18468
18469         Module error.
18470         * m4/error.m4 (gl_ERROR): New macro.
18471         (jm_PREREQ_ERROR): Use onceonly macros.
18472
18473         Module fatal.
18474         * m4/fatal.m4: New file.
18475
18476         Module getloadavg.
18477         * m4/getloadavg.m4 (AC_FUNC_GETLOADAVG): Use onceonly macros.
18478         (gl_FUNC_GETLOADAVG, gl_PREREQ_GETLOADAVG): New macros.
18479
18480         Module getpagesize.
18481         * m4/getpagesize.m4: New file.
18482
18483         Module getusershell.
18484         * m4/getusershell.m4: New file.
18485
18486         Module physmem.
18487         * m4/physmem.m4: New file.
18488
18489         Module posixver.
18490         * m4/posixver.m4: New file.
18491
18492         Module quotearg.
18493         * m4/quotearg.m4: New file.
18494
18495         Module quote.
18496         * m4/quote.m4: New file.
18497
18498         Module readutmp.
18499         * m4/readutmp.m4: New file, based on jm_PREREQ_READUTMP from prereq.m4.
18500
18501         Module sig2str.
18502         * m4/sig2str.m4: New file.
18503
18504         Other.
18505         * m4/longlong.m4 (jm_AC_TYPE_UNSIGNED_LONG_LONG): Remove, moved to
18506         ulonglong.m4.
18507         * m4/intmax_t.m4: New file.
18508         * m4/d-type.m4: Indentation.
18509         * m4/jm-macros.m4: Update.
18510         * m4/prereq.m4 (jm_PREREQ): Update.
18511         (jm_PREREQ_ADDEXT): Remove, obsoleted by backupfile.m4.
18512         (jm_PREREQ_CANON_HOST): Remove, obsoleted by canon-host.m4.
18513         (jm_PREREQ_DIRNAME): Remove, obsoleted by dirname.m4.
18514         (jm_PREREQ_EXCLUDE): Remove, obsoleted by exclude.m4.
18515         (jm_PREREQ_GETPAGESIZE): Remove, obsoleted by getpagesize.m4.
18516         (jm_PREREQ_HARD_LOCALE): Remove, obsoleted by hard-locale.m4.
18517         (jm_PREREQ_HASH): Remove, obsoleted by hash.m4.
18518         (jm_PREREQ_HUMAN): Remove, obsoleted by human.m4.
18519         (jm_PREREQ_MEMCHR): Remove, obsoleted by memchr.m4.
18520         (jm_PREREQ_PHYSMEM): Remove, obsoleted by physmem.m4.
18521         (jm_PREREQ_POSIXVER): Remove, obsoleted by posixver.m4.
18522         (jm_PREREQ_QUOTEARG): Remove, obsoleted by quotearg.m4.
18523         (jm_PREREQ_READUTMP): Remove, obsoleted by readutmp.m4.
18524         (jm_PREREQ_REGEX): Remove, obsoleted by regex.m4.
18525         (jm_PREREQ_STRNLEN): Remove, obsoleted by strnlen.m4.
18526         (jm_PREREQ_TEMPNAME): Remove, obsoleted by mkstemp.m4.
18527         (jm_PREREQ_XGETCWD): Remove, obsoleted by xgetcwd.m4.
18528         (jm_PREREQ_XREADLINK): Remove, obsoleted by xreadlink.m4.
18529         * m4/readdir.m4 (jm_FUNC_READDIR): Use onceonly macros.
18530
18531 2002-12-24  Bruno Haible  <bruno@clisp.org>
18532
18533         * MODULES.txt: Update according to m4/ changes.
18534
18535         Module gettext.
18536         * config.rpath: New file, from gettext-0.11.5.
18537
18538         * modules/*: New module descriptions.
18539         * gnulib-tool: New file.
18540         * MODULES.html.sh: New file.
18541
18542 2002-12-21  Karl Berry  <karl@gnu.org>
18543
18544         * doc/fdl.texi: update to version 1.2.
18545
18546 2002-12-19  Karl Berry  <karl@gnu.org>
18547
18548         * config/config.guess: update from prep.
18549
18550 2002-12-18  Bruno Haible  <bruno@clisp.org>
18551
18552         * m4/strftime.m4 (_jm_STRFTIME_PREREQS): Don't test for localtime_r.
18553         * m4/jm-mktime.m4 (jm_FUNC_MKTIME): Likewise.
18554
18555 2002-12-17  Bruno Haible  <bruno@clisp.org>
18556
18557         * m4/mbswidth.m4 (jm_PREREQ_MBSWIDTH): Remove checks for limits.h,
18558         stdlib.h, string.h.
18559
18560 2002-12-17  Bruno Haible  <bruno@clisp.org>
18561
18562         * lib/canon-host.c (strdup): Remove unused declaration.
18563
18564         * lib/fsusage.c: Include full_read.h.
18565         (get_fs_usage): Use full_read instead of safe_read.
18566
18567         * lib/utime.c (utime_null): Use SAFE_READ_ERROR.
18568
18569 2002-12-12  Karl Berry  <karl@gnu.org>
18570
18571         * config/config.guess: update from prep.
18572
18573 2002-12-11  Bruno Haible  <bruno@clisp.org>
18574
18575         * m4/setenv.m4: New file, from gettext-0.11.5.
18576
18577 2002-12-11  Bruno Haible  <bruno@clisp.org>
18578
18579         * lib/setenv.h: Rewritten to cope with systems that have setenv() but
18580         not unsetenv().
18581         * lib/setenv.c, unsetenv.c: Taken from glibc-2.2.4 with the following
18582         modifications:
18583
18584         2002-12-11  Bruno Haible  <bruno@clisp.org>
18585
18586                 * setenv.c (alloca): Fall back to malloc.
18587                 (freea): New macro.
18588                 (setenv): Use freea() to free memory allocated with alloca().
18589
18590         2002-11-13  Bruno Haible  <bruno@clisp.org>
18591
18592                 * setenv.c (compar_fn_t, __add_to_environ, setenv): Use ANSI C
18593                 function declarations.
18594                 * unsetenv.c (unsetenv): Likewise.
18595
18596         2002-03-04  Bruno Haible  <bruno@clisp.org>
18597
18598                 Portability to AIX 4.3.3.
18599                 * unsetenv.c: New file, extracted from setenv.c.
18600                 * setenv.c: Move the unsetenv() function to unsetenv.c.
18601
18602         2001-12-20  Bruno Haible  <bruno@clisp.org>
18603
18604                 * setenv.c (__add_to_environ): Don't call realloc(NULL,...),
18605                 use malloc instead. For SunOS 4.
18606
18607         2001-12-11  Bruno Haible  <bruno@clisp.org>
18608
18609                 * setenv.c: Declare alloca.
18610                 (compar_fn_t): New typedef.
18611                 (KNOWN_VALUE, STORE_VALUE): Use it.
18612
18613         * lib/Makefile.am (libfetish_a_SOURCES): Add setenv.c, unsetenv.c,
18614         setenv.h.
18615
18616 2002-12-10  Paul Eggert  <eggert@twinsun.com>
18617
18618         Port exclude.c and exclude.h to more non-GNU systems, e.g. Solaris 7.
18619         * lib/exclude.h (EXCLUDE_ANCHORED, EXCLUDE_INCLUDE, EXCLUDE_WILDCARDS):
18620         Choose values that are less likely to collide with system fnmatch
18621         options.
18622         * lib/exclude.c (FNM_CASEFOLD, FNM_LEADING_DIR): Define to 0 if not
18623         defined (e.g., a pure POSIX system).
18624         (EXCLUDE_macros_do_not_collide_with_FNM_macros): Use FNM_PATHNAME
18625         instead of FNM_FILE_NAME, for compatibility with pure POSIX sytems.
18626
18627 2002-12-06  Paul Eggert  <eggert@twinsun.com>
18628
18629         Undo the 2001-07-02 change for jm-glibc-io, as it was too much of
18630         a pain in practice to deal with generated m4 files.  This change
18631         goes together with the 2002-12-04 unlocked-io.h change in ../lib.
18632
18633         * m4/Makefile.am.in (Makefile.am): Don't mention jm-glibc-io.m4n
18634         and jm-glibc-io.m4, as they are no longer a special case.
18635         * m4/jm-glibc-io.m4: Rename from jm-glibc-io.m4n, and remove the
18636         kludge and the auto-generation stuff.  Check only whether the
18637         functions are declared, not whether they exist, since older hosts
18638         that don't declare the functions can't use the optimization anyway.
18639
18640 2002-12-06  Jim Meyering  <jim@meyering.net>
18641
18642         * lib/error.c: Be consistent: change `#ifndef _LIBC' to `#if !_LIBC'.
18643
18644         Merge in changes from libc's misc/error.c, in preparation
18645         for the merge of gnulib's changes back into libc.
18646
18647         * lib/error.c (_): Define only if not already defined.
18648         Move definition to follow all #include directives.
18649         Include unlocked-io.h only if !_LIBC.
18650         [_LIBC]: Include <libio/libioP.h>.
18651         [USE_IN_LIBIO]: Include <libio/iolibio.h>
18652         (fflush): Tweak definition to use INTUSE.
18653         (putc): Define.
18654
18655 2002-12-05  Paul Eggert  <eggert@twinsun.com>
18656
18657         * lib/alloca.c [defined emacs]: Include "lisp.h".
18658         (xalloc_die) [defined emacs]: New macro.
18659         (free) [defined emacs && defined EMACS_FREE]: Define to EMACS_FREE.
18660         [! defined emacs]: Include <xalloc.h>.
18661         (POINTER_TYPE) [!defined POINTER_TYPE]: New macro.
18662         (pointer): Typedef to POINTER_TYPE *.
18663         (malloc): Remove decl; we now always use xmalloc.
18664         (alloca): Use old-style definition, since Emacs needs this.
18665         Check for arithmetic overflow when computing combined size.
18666
18667 2002-12-04  Paul Eggert  <eggert@twinsun.com>
18668
18669         Do not generate unlocked-io.h automatically, since it's easier to
18670         maintain it by hand.
18671
18672         * lib/unlocked-io.h: New file, from GNU diffutils,
18673         but with proper copyright notice and attribution.
18674         * lib/gen-uio: Remove.
18675         * lib/Makefile.am: Add copyright notice.
18676         (libfetish_a_SOURCES): Add unlocked-io.h.
18677         (BUILT_SOURCES, all-local): Remove unlocked-io.h.
18678         (DISTCLEANFILES, io_functions): Remove macros.
18679         (EXTRA_DIST): Remove gen_uio.
18680         (unlocked-io.h): Remove rule.
18681
18682 2002-12-04  Jim Meyering  <jim@meyering.net>
18683
18684         Reflect the fact that stat.c and lstat.c are no longer generated.
18685         * lib/Makefile.am (BUILT_SOURCES): Remove stat.c and lstat.c.
18686         (DISTCLEANFILES): Likewise.
18687         (EXTRA_DIST): Likewise.
18688         (all_local): Don't depend on stat.c or lstat.c.
18689         (stat.c, lstat.c): Remove rules.
18690         (EXTRA_DIST): Remove xstat.in.
18691
18692         * lib/xstat.in: Remove file.  Contents moved into stat.c.
18693         * lib/stat.c: New file.  Contents mostly from xstat.in.
18694         * lib/stat.c: Rework so that it may serve to define rpl_lstat, too.
18695         * lib/lstat.c: New file. Simply #define LSTAT and include stat.c.
18696
18697         * lib/safe-read.c: Rework so that it may serve to define safe_write,
18698         too.
18699         * lib/safe-write.c: Simply #define SAFE_WRITE and include safe-read.c.
18700
18701 2002-12-03  Jim Meyering  <jim@meyering.net>
18702
18703         * lib/safe-read.c, safe-write.c: Change variable names and comments,
18704         but not semantics, to minimize the differences between these two files.
18705         (safe_read): Change comment to mention SAFE_READ_ERROR.
18706
18707         * lib/safe-read.c (IS_EINTR): Define.
18708         (safe_read): Use IS_EINTR in place of in-function cpp directives.
18709
18710 2002-12-02  Jim Meyering  <jim@meyering.net>
18711
18712         * lib/safe-read.c (EINTR): Define.
18713         (CHAR_BIT, TYPE_SIGNED, TYPE_MINIMUM, TYPE_MAXIMUM): Define.
18714         (INT_MAX): Provide fallback.
18715         (safe_read): Rewrite to iterate IFF the read fails with EINTR.
18716
18717         * lib/safe-read.h (SAFE_READ_ERROR): Define.
18718
18719 2002-12-02  Bruno Haible  <bruno@clisp.org>
18720
18721         * lib/safe-write.c (CHAR_BIT, TYPE_SIGNED, TYPE_MINIMUM, TYPE_MAXIMUM):
18722         Define, taken from safe-read.c.
18723         (INT_MAX): Provide fallback.
18724         (safe_write): Rewrite to iterate IFF the write fails with EINTR.
18725         * lib/safe-write.h (SAFE_WRITE_ERROR): Define.
18726
18727         * lib/safe-read.c (EINTR): Remove definition.
18728         (safe_read): Don't use EINTR if it is absent.
18729
18730 2002-12-01  Jim Meyering  <jim@meyering.net>
18731
18732         * lib/safe-read.c: (safe_read): Also exit the loop when read returns
18733         zero.
18734         (CHAR_BIT, TYPE_SIGNED, TYPE_MINIMUM, TYPE_MAXIMUM, INT_MAX): Define.
18735
18736 2002-11-27  Paul Eggert  <eggert@twinsun.com>
18737
18738         * lib/hash.c (hash_lookup, hash_get_first, hash_get_next,
18739         hash_find_entry, hash_rehash): Replace `if (limit <= value) abort ();'
18740         with `if (! (value < limit)) abort ();', for readability.
18741
18742 2002-11-26  Karl Berry  <karl@gnu.org>
18743
18744         * lib/strdup.c: copy from libc again, with jim's ok.
18745         * lib/.cppi-disable: re-add strdup.c
18746
18747 2002-11-25  Karl Berry  <karl@gnu.org>
18748
18749         * lib/strtoll.c: copy from libc, meaning we now #include <strtol.c>
18750         instead of "strtol.c".
18751
18752 2002-11-25  Karl Berry  <karl@gnu.org>
18753
18754         * config/install-sh: update from automake for variable quoting, $0 in
18755         error msgs, etc.
18756
18757         * config/srclist.txt ($LIBCSRC/time/mktime.c lib gpl): new entry.
18758         * config/srclist.txt ($LIBCSRC/sysdeps/generic/strtoll.c lib gpl): new
18759         entry.
18760
18761 2002-11-25  Jim Meyering  <jim@meyering.net>
18762
18763         * lib/mktime.c: Sync from libc, now that it has the latest fix.
18764
18765 2002-11-24  Karl Berry  <karl@gnu.org>
18766
18767         * lib/error.c, getopt.c, getopt.h, getopt1.c, obstack.c, regex.c,
18768         regex.h, strdup.c, strtoll.c, tempname.c: change license to gpl.
18769
18770 2002-11-24  Jim Meyering  <jim@meyering.net>
18771
18772         Update from coreutils:
18773
18774         * lib/mktime.c: Merge in changes from libc.
18775
18776         Avoid a link-time failure on some Linux systems.
18777         * lib/mktime.c (STATIC): Define to be empty (_LIBC) or `static'
18778         (otherwise).
18779         (__mon_yday): Declare with the STATIC attribute.
18780         (__mktime_internal): Likewise.
18781         Based on a report from Greg Schafer.
18782
18783 2002-11-23  Jim Meyering  <jim@meyering.net>
18784
18785         * lib/sig2str.c (str2signum, sig2str): Avoid a warning from gcc:
18786         Use `unsigned', not `int', as type of index.
18787
18788         * lib/xstat.in [@BEGIN_LSTAT_ONLY@]: Include <string.h>.
18789
18790         * lib/fsusage.c: Remove unneeded parentheses around operands of
18791         `defined'.
18792
18793 2002-11-22  Paul Eggert  <eggert@twinsun.com>
18794
18795         * lib/quotearg.h: Allow multiple inclusion by surrounding with
18796         "#ifndef QUOTEARG_H_".  Include <stddef.h>, for size_t,
18797         so that we can be included first.
18798         (PARAMS): Remove; we now assume C89 or later.  All uses removed.
18799         * lib/quotearg.c: Include quotearg.h immediately after config.h.
18800         No need to include stddef.h or sys/types.h any more.
18801         Surround local include files with "", not "<>".
18802         Assume HAVE_LIMITS_H unconditionally, as we assume C89.
18803         Similarly, assume HAVE_C_BACKSLASH_A, CHAR_BIT, UCHAR_MAX, UINT_MAX,
18804         HAVE_STDLIB_H, HAVE_STRING_H, STDC_HEADERS.
18805         (HAVE_MBSINIT): Undef if !HAVE_MBRTOWC.
18806         (mbsinit): Define to 1 if !defined mbsinit && !HAVE_MBSINIT.
18807         (ISPRINT): Remove; no longer needed now that we assume C89.
18808
18809         (clone_quoting_options, quotearg_buffer, quotearg_n_options):
18810         Preserve errno.
18811
18812         (quotearg_buffer_restyled, quotearg_n, quotearg_n_style,
18813         quotearg_char): Use SIZE_MAX rather than
18814         (size_t) -1 when we are talking about "infinity".
18815
18816         (quotearg_buffer_restyled): Fix bug when quoting trigraphs.
18817
18818 2002-11-22  Paul Eggert  <eggert@twinsun.com>
18819
18820         * lib/hash.c: Avoid use of <assert.h>, as the GNU Coding Standards
18821         hint that one should use `if (! x) abort ();' rather than `assert
18822         (x);', and anyway it's one less thing to worry about configuring.
18823         (hash_lookup, hash_get_first, hash_get_next, hash_find_entry,
18824         hash_rehash, hash_insert): Use abort rather than assert.
18825
18826 2002-11-22  Bruno Haible  <bruno@clisp.org>
18827
18828         * lib/safe-read.h: Assume C89. Add comments.
18829         (safe_read): Change return type to size_t.
18830         * lib/safe-read.c (safe_read): Change return type to size_t. Handle
18831         byte counts > SSIZE_MAX correctly.
18832         * lib/safe-write.h: New file.
18833         * lib/safe-write.c: New file.
18834         * lib/full-read.h: New file.
18835         * lib/full-read.c: New file.
18836         * lib/full-write.h: Assume C89. Add comments.
18837         * lib/full-write.c: Include safe-write.h.
18838         (full_write): Rewritten to use safe_write.
18839         Suggested by Jim Meyering and Paul Eggert.
18840
18841 2002-11-21  Jim Meyering  <jim@meyering.net>
18842
18843         * lib/strdup.c (strdup): Tweak comment and initial #if/#include.
18844
18845         Merge in changes from the coreutils.
18846
18847         2002-09-25  Paul Eggert  <eggert@twinsun.com>
18848         * lib/fsusage.c [! HAVE_INTTYPES_H && HAVE_STDINT_H] Include
18849         <stdint.h>.
18850         (UINTMAX_MAX) [!defined UINTMAX_MAX]: New macro.
18851         (PROPAGATE_ALL_ONES): Work even if X is unsigned and narrower than
18852         int.  Work more efficiently if X is the same width as uintmax_t.
18853         Do not compare X to -1, to avoid bogus compiler warning.
18854         (get_fs_usage): (uintmax_t) -1 -> UINTMAX_MAX to avoid a cast.
18855         Don't assume that f_frsize and f_bsize are the same type.
18856
18857         * lib/mountlist.c: #undef MNT_IGNORE before defining it, to avoid
18858         warning on FreeBSD.
18859
18860         * lib/makepath.c (make_path): Restore umask *before* creating the final
18861         component.
18862         (make_path): Minor reformatting.
18863
18864         * lib/xmalloc.c: Adjust to work with new autoconf macros,
18865         AC_FUNC_MALLOC and AC_FUNC_REALLOC: test #ifndef
18866         HAVE_MALLOC/HAVE_REALLOC.
18867
18868         * lib/mountlist.h (ME_DUMMY): Don't count entries of type `auto' as
18869         dummy ones.  At least on GNU/Linux systems, `auto' means something
18870         else.
18871         From Michael Stone.
18872
18873 2002-11-21  Bruno Haible  <bruno@clisp.org>
18874
18875         Remove case insensitive option matching.
18876         * lib/argmatch.h (argcasematch): Remove declaration.
18877         (ARGCASEMATCH): Remove macro.
18878         (__xargmatch_internal): Remove case_sensitive argument.
18879         (XARGMATCH): Update.
18880         (XARGCASEMATCH): Remove macro.
18881         * lib/argmatch.c (argmatch): Renamed from __argmatch_internal. Remove
18882         case_sensitive argument.
18883         (argcasematch): Remove function.
18884         (__xargmatch_internal): Remove case_sensitive argument.
18885         (main): Use XARGMATCH instead of XARGCASEMATCH.
18886
18887         * lib/xmalloc.c: Change compile-time error message. Add comment about
18888         required autoconf version.
18889
18890 2002-11-20  Paul Eggert  <eggert@twinsun.com>
18891
18892         Merge argmatch cleanups from Bison.  Assume C89.
18893
18894         * lib/argmatch.c: Include config.h here, not in argmatch.h.
18895         Include stdlib.h, for EXIT_FAILURE.
18896         Always include <string.h>, since we assume C89.
18897         (EXIT_FAILURE): Remove pre-C89 bug workaround.
18898         * lib/argmatch.h: Do not include <config.h> or <sys/types.h>.
18899         Include <stddef.h> instead, since it's all we need for size_t.
18900         (PARAMS): Remove.  All uses removed.
18901         (ARRAY_CARDINALITY): Do not bother to #undef.
18902         (ARRAY_CARDINALITY, ARGMATCH, ARGCASEMATCH, invalid_arg,
18903         ARGMATCH_VALID, XARGMATCH, XARGCASEMATCH):
18904         Remove unnecessary parentheses.
18905         (ARGMATCH_VALID, XARGMATCH, XARGCASEMATCH):
18906         Insert necessary parentheses.
18907         (ARGMATCH_CONSTRAINT, ARGMATCH_VERIFY): New macros.
18908         (ARGMATCH_ASSERT): Use ARGMATCH_CONSTRAINT.
18909
18910 2002-11-19  Bruno Haible  <bruno@clisp.org>
18911
18912         * lib/mbswidth.c: Include mbswidth.h right at the beginning.
18913         * lib/mbswidth.h: Include <stddef.h>, for size_t.
18914
18915         * lib/mbswidth.h (PARAMS): Remove macro.
18916         (mbswidth, mbsnwidth): Use ANSI C function declarations.
18917         * lib/mbswidth.c (mbswidth, mbsnwidth): Likewise.
18918
18919         * lib/gcd.h (PARAMS): Remove macro.
18920         (gcd): Use ANSI C function declarations.
18921         * lib/gcd.c (gcd): Likewise.
18922
18923 2002-11-15  Bruno Haible  <bruno@clisp.org>
18924
18925         * lib/strcspn.c: Include <stddef.h>.
18926         (strcspn): Use ANSI C function declaration. Change return type to
18927         size_t. Use NULL.
18928         * lib/strpbrk.c: Minimize diffs to glibc. Include <stddef.h>.
18929         (strpbrk): Use NULL.
18930         * lib/strpbrk.h (PARAMS): Remove macro.
18931         (strpbrk): Use ANSI C function declaration.
18932         * lib/strstr.c: Don't include <sys/types.h>.
18933         * lib/strstr.h (PARAMS): Remove macro.
18934         (strstr): Use ANSI C function declarations.
18935
18936 2002-11-14  Karl Berry  <karl@gnu.org>
18937
18938         * config/mkinstalldirs: `do' on separate line, instead of
18939         `for var; do'.
18940
18941 2002-11-06  Bruno Haible  <bruno@clisp.org>
18942
18943         * lib/gcd.h (gcd): Change argument type to 'unsigned long'.
18944         * lib/gcd.c (gcd): Likewise.
18945
18946 2002-11-05  Bruno Haible  <bruno@clisp.org>
18947
18948         * lib/gcd.h: New file, from gettext-0.11.5.
18949         * lib/gcd.c: New file, from gettext-0.11.5.
18950
18951 2002-11-05  Bruno Haible  <bruno@clisp.org>
18952
18953         * lib/error.c [!_LIBC]: Include gettext.h instead of <libintl.h>.
18954         * lib/getopt.c [!_LIBC]: Include gettext.h instead of <libintl.h>.
18955         * lib/obstack.c [!_LIBC]: Include gettext.h instead of <libintl.h>.
18956         * lib/regex.c [!_LIBC]: Include gettext.h instead of <libintl.h>.
18957
18958         * lib/argmatch.c: Include gettext.h instead of <locale.h> and
18959         <libintl.h>.
18960         * lib/makepath.c: Include gettext.h instead of <locale.h> and
18961         <libintl.h>.
18962
18963         * lib/closeout.c: Include gettext.h instead of <libintl.h>.
18964         * lib/human.c: Include gettext.h instead of <libintl.h>.
18965         * lib/quotearg.c: Include gettext.h instead of <libintl.h>.
18966         * lib/rpmatch.c: Include gettext.h instead of <libintl.h>.
18967         * lib/unicodeio.c: Include gettext.h instead of <libintl.h>.
18968         * lib/userspec.c: Include gettext.h instead of <libintl.h>.
18969         * lib/version-etc.c: Include gettext.h instead of <libintl.h>.
18970         * lib/xmalloc.c: Include gettext.h instead of <libintl.h>.
18971         (textdomain): Remove definition.
18972         * lib/xmemcoll.c: Include gettext.h instead of <libintl.h>.
18973
18974         * lib/long-options.c: Remove include of <libintl.h> and definition of
18975         _.
18976         * lib/same.c: Remove include of <libintl.h> and definition of _.
18977
18978 2002-11-04  Owen Taylor  <otaylor@redhat.com>
18979
18980         * lib/config.charset: A few additions for Solaris.
18981
18982 2002-11-04  Bruno Haible  <haible@clisp.cons.org>
18983
18984         Make it possible to build libcharset with CC=gcc CFLAGS="-x c++".
18985         * lib/localcharset.c (locale_charset): Declare as extern "C".
18986
18987 2002-11-04  Bruno Haible  <haible@clisp.cons.org>
18988
18989         * lib/config.charset: msdos in uk_UA uses CP1125.
18990
18991 2002-11-04  Bruno Haible  <bruno@clisp.org>
18992
18993         * lib/stpcpy.h: New file, from GNU gettext-0.11.5.
18994         * lib/strcase.h: New file, from GNU gettext-0.11.5.
18995         * lib/strpbrk.h: New file, from GNU gettext-0.11.5.
18996         * lib/strstr.h: New file, from GNU gettext-0.11.5.
18997         * lib/xgetcwd.h: New file, from GNU gettext-0.11.5.
18998
18999 2002-11-04  Bruno Haible  <bruno@clisp.org>
19000
19001         * lib/localcharset.c (locale_charset): Don't return an empty string.
19002
19003 2002-11-04  Bruno Haible  <bruno@clisp.org>
19004
19005         * lib/localcharset.c (get_charset_aliases): Add more Windows specific
19006         aliases.
19007
19008 2002-11-04  Bruno Haible  <bruno@clisp.org>
19009
19010         * lib/config.charset: Update for newest glibc. Add canonical names
19011         ISO-8859-14, KOI8-T, TCVN5712-1, GEORGIAN-PS.
19012
19013 2002-11-04  Bruno Haible  <bruno@clisp.org>
19014
19015         * lib/config.charset: Add support for NetBSD.
19016
19017 2002-11-04  Bruno Haible  <bruno@clisp.org>
19018
19019         * lib/config.charset [msdosdjgpp]: For Russian, use CP866.
19020
19021 2002-11-01  Bruno Haible  <bruno@clisp.org>
19022
19023         * configure.in: Add AC_CONFIG_AUX_DIR call.
19024         (AC_OUTPUT): Add m4/Makefile, lib/Makefile. Remove doc/Makefile,
19025         test/Makefile.
19026         * Makefile.in (subdirs): Add m4, lib. Remove doc, test.
19027
19028 2002-09-28  Karl Berry  <karl@gnu.org>
19029
19030         * config/srclist.txt: can't copy install-sh/mkinstalldirs from
19031         installed automake until the next release, since changes have been
19032         made.
19033
19034 2002-09-25  Karl Berry  <karl@gnu.org>
19035
19036         * lib/strdup.c: copy from libc/string (via ../config/srclist*).
19037         * lib/getopt*: copy from libc/posix.
19038         * lib/gettext.h: copy from gettext.
19039         * lib/.cppi-disable: add strdup.c, gettext.h.
19040
19041 2002-09-25  Karl Berry  <karl@gnu.org>
19042
19043         * config/srclist.txt: enable gettext.h check.
19044         * config/config.{guess,sub}: update from prep.
19045         * config/depcomp, install-sh, mdate-sh, missing, mkinstalldirs: update
19046                 from automake 1.6.3.
19047         See srclist*.
19048
19049 2002-08-23  Stefan Monnier  <monnier@cs.yale.edu>
19050
19051         * regex.c (PATFETCH): Remove the translating fetch.
19052         (PATFETCH_RAW): Rename to PATFETCH.
19053         (set_image_of_range): New fun.
19054         (SET_RANGE_TABLE_WORK_AREA): Use it.
19055         (regex_compile): Don't translate the pattern chars so eagerly.
19056         Only do it when inserting an `exactn' bytecode or when handling
19057         a char-range.
19058         (mutually_exclusive_p): Avoid empty statement.
19059
19060 2002-07-06  Jim Meyering  <meyering@lucent.com>
19061
19062         * m4/README: Don't mention Makefile.am.in.
19063         Outline how I've tested changes to .m4 files.  Yep, it's a pain.
19064
19065 2002-07-01  Jim Meyering  <meyering@lucent.com>
19066
19067         * lib/c-stack.c: Include sys/time.h.
19068         From Volker Borchert.
19069
19070 2002-06-26  Paul Eggert  <eggert@twinsun.com>
19071
19072         * m4/fnmatch.m4 (_AC_LIBOBJ_FNMATCH): Check for btowc.
19073
19074 2002-06-26  Paul Eggert  <eggert@twinsun.com>
19075
19076         * lib/fnmatch.c, fnmatch_loop.c (WIDE_CHAR_SUPPORT):
19077         New macro.  Use it uniformly instead of
19078         (defined HAVE_WCTYPE_H && defined HAVE_WCHAR_H).
19079         It also uses HAVE_BTOWC, to fix a porting bug on Solaris 2.5.1
19080         reported by Vin Shelton.
19081
19082 2002-06-22  Paul Eggert  <eggert@twinsun.com>
19083
19084         * lib/c-stack.h (segv_handler, c_stack_action) [! defined SA_SIGINFO]:
19085         Do not assume SA_SIGINFO behavior.
19086         Bug reported by Jim Meyering on NetBSD 1.5.2.
19087
19088 2002-06-22  Jim Meyering  <meyering@lucent.com>
19089
19090         * m4/c-stack.m4: New file, from diffutils-2.8.2.
19091         * m4/prereq.m4 (jm_PREREQ): Add jm_PREREQ_C_STACK.
19092
19093         * m4/jm-macros.m4 (jm_CHECK_ALL_TYPES): Don't require AC__GNU_SOURCE,
19094         now that configure.ac uses AC_GNU_SOURCE.
19095         (jm_MACROS): Rename: jm_FUNC_FNMATCH to AC_FUNC_FNMATCH_GNU.
19096         * m4/prereq.m4 (jm_PREREQ_EXCLUDE): Likewise, wrt jm_FUNC_FNMATCH.
19097
19098         Update to latest tools.  Suggestions from Paul Eggert.
19099         * m4/stdbool.m4: New file, from diffutils-2.8.2.
19100         * m4/gnu-source.m4: Update from diffutils-2.8.2.
19101         * m4/fnmatch.m4: Likewise.
19102         * m4/prereq.m4: Change each use of AC_CHECK_HEADERS(stdbool.h)
19103         to AC_HEADER_STDBOOL
19104
19105 2002-06-22  Jim Meyering  <meyering@lucent.com>
19106
19107         * lib/fnmatch.c (ISASCII, ISPRINT): Undefine, to avoid warning about
19108         redefinition due to Solaris 2.6's definition in /usr/include/sys/euc.h.
19109
19110 2002-06-22  Jim Meyering  <meyering@lucent.com>
19111
19112         * lib/c-stack.c, c-stack.h: New files, from diffutils-2.8.2.
19113
19114         * lib/exitfail.c, exitfail.h: Likewise.
19115         * lib/Makefile.am (libfetish_a_SOURCES): Add exitfail.c and exitfail.h.
19116
19117         * lib/Makefile.am (libfetish_a_SOURCES): Add fnmatch_.h in place
19118         of fnmatch.h.
19119         (EXTRA_DIST): Add fnmatch_loop.c.
19120         (libfetish_a_SOURCES): Add c-stack.c and c-stack.h.
19121
19122         * lib/fnmatch_loop.c: New file, from diffutils-2.8.2.
19123         * lib/fnmatch.c: Update from diffutils-2.8.2.
19124         * lib/fnmatch_.h: New file.  From diffutils-2.8.2.
19125         * lib/fnmatch.h: Remove file.
19126
19127 2002-06-21  Jim Meyering  <meyering@lucent.com>
19128
19129         * m4/c-bs-a.m4: Add comment, from diffutils-2.8.2.
19130         * m4/mbrtowc.m4: Likewise.
19131
19132         * m4/mbstate_t.m4: Update from diffutils-2.8.2.
19133         * m4/mbswidth.m4: Reflect name change:
19134         s/AC_MBSTATE_T/AC_TYPE_MBSTATE_T.
19135         * m4/prereq.m4 (jm_PREREQ_QUOTEARG): Likewise.
19136
19137         * m4/lib-link.m4: Update from gettext-0.11.2.
19138         * m4/gettext.m4: Likewise.
19139
19140         * m4/jm-macros.m4 (jm_CHECK_ALL_HEADERS): Check for hurd.h.
19141         From Alfred M. Szmidt.
19142
19143 2002-06-18  Paul Eggert  <eggert@twinsun.com>
19144
19145         * lib/file-type.h: Report an error if neither S_ISREG nor
19146         S_IFREG is defined, instead of using a test specific to glibc
19147         2.2.  This should be safe, since POSIX requires S_ISREG and
19148         Unix Version 7 had S_IFREG.  We don't need to check for
19149         <sys/types.h> since we don't use any symbols that it defines.
19150
19151 2002-06-15  Richard Dawe  <richdawe@bigfoot.com>
19152
19153         * lib/Makefile.am (lstat.c, stat.c, .sin.sed): Use t-$@, rather than
19154         $@-t, so that each temporary file name is unique and valid in the first
19155         8 characters, for operation under DOS.
19156
19157 2002-06-15  Paul Eggert  <eggert@twinsun.com>
19158
19159         * m4/jm-macros.m4 (jm_CHECK_ALL_TYPES): Check for st_author.
19160
19161 2002-06-15  Jim Meyering  <meyering@lucent.com>
19162
19163         Work even with DJGPP 2.03, which lacks support for symlinks.
19164         From Richard Dawe.
19165         * lib/xstat.in (S_ISLNK): Define to 0 if neither S_ISLNK nor S_IFLNK
19166         is defined.
19167         * lib/lchown.c (S_ISLNK): Likewise.
19168
19169 2002-06-15  Jim Meyering  <meyering@lucent.com>
19170
19171         * lib/file-type.h (FILE_TYPE_H): Guard entire contents with #ifndef.
19172         For GNU libc 2.2 and newer, ensure that <sys/types.h> and <sys/stat.h>
19173         have been included before this file.
19174
19175 2002-06-14  Jim Meyering  <meyering@lucent.com>
19176
19177         * lib/file-type.h: Use the version from diffutils-2.8.2.
19178         * lib/file-type.c: Likewise.
19179
19180 2002-06-07  Jim Meyering  <meyering@lucent.com>
19181
19182         * m4/prereq.m4 (jm_PREREQ_STAT): Check for sys/param.h and sys/mount.h.
19183         They're needed at least for NetBSD 1.5.2.
19184         ($statxfs_includes): Include those same headers.
19185         ($statxfs_includes): Include sys/vfs.h if available.
19186         ($statxfs_includes): Likewise for sys/statvfs.h.
19187         Check for the following members in both structs statfs and statvfs:
19188         f_basetype, f_type, f_fsid.__val, f_namemax, f_namelen.
19189
19190 2002-06-01  Jim Meyering  <meyering@lucent.com>
19191
19192         * m4/d-type.m4 (jm_CHECK_TYPE_STRUCT_DIRENT_D_TYPE): Rename macro:
19193         s/D_TYPE_IN_DIRENT/HAVE_STRUCT_DIRENT_D_TYPE/.
19194
19195 2002-05-28  Jim Meyering  <meyering@lucent.com>
19196
19197         * m4/readdir.m4 (jm_FUNC_READDIR): Undefine `mkdir', not `rmdir'.
19198         Reported by Volker Borchert.
19199
19200 2002-05-27  Jim Meyering  <meyering@lucent.com>
19201
19202         Fix a problem seen only on nonconforming systems whereby ls.c's
19203         use of localtime, and then of gettimeofday would cause trouble:
19204         the localtime call used to initialize rpl_gettimeofday's save
19205         mechanism would clobber ls's current local time information so
19206         that in any long listing the first file would always be listed
19207         with date 1970-01-01.  Analysis by Volker Borchert.
19208
19209         * lib/gettimeofday.c (localtime): Undefine.
19210         (rpl_localtime): New function.
19211
19212 2002-05-27  Jim Meyering  <meyering@lucent.com>
19213
19214         * m4/gettimeofday.m4 (AC_FUNC_GETTIMEOFDAY_CLOBBER): Also replace
19215         localtime.
19216
19217         * m4/readdir.m4 (jm_FUNC_READDIR): Undefine `rmdir' so we don't try to
19218         use the replacement function; it wouldn't resolve at link time.
19219         Reported by Volker Borchert.
19220
19221 2002-05-22  Jim Meyering  <meyering@lucent.com>
19222
19223         * lib/Makefile.am (libfetish_a_SOURCES): Add file-type.c and
19224         file-type.h.
19225         * lib/file-type.h: New file.
19226         * lib/file-type.c (file_type): New file/function.  Extracted from
19227         diffutils.
19228
19229 2002-04-30  Jim Meyering  <meyering@lucent.com>
19230
19231         * m4/prereq.m4 (jm_PREREQ): Add jm_PREREQ_STAT.
19232
19233 2002-04-29  Paul Eggert  <eggert@twinsun.com>
19234
19235         * m4/prereq.m4 (jm_PREREQ_SIG2STR): Remove; all callers changed.
19236
19237 2002-04-29  Paul Eggert  <eggert@twinsun.com>
19238
19239         * m4/prereq.m4 (jm_PREREQ_HARD_LOCALE): Check for stdlib.h.
19240         Do not check for alloca.h (no longer used) or stdbool.h (was never
19241         used?).  Add AM_C_PROTOTYPES since hard-locale.h uses it.
19242
19243 2002-04-29  Paul Eggert  <eggert@twinsun.com>
19244
19245         * lib/hard-locale.c: Upgrade to version used in GNU Diffutils 2.8.1.
19246
19247 2002-04-29  Jim Meyering  <meyering@lucent.com>
19248
19249         * m4/jm-macros.m4 (jm_MACROS): Remove use of AC_FUNC_STRNLEN.
19250         * m4/prereq.m4: Add jm_PREREQ_STRNLEN.
19251         Use AC_FUNC_STRNLEN here instead.
19252
19253         * m4/jm-macros.m4: Don't AC_REQUIRE([AC_PROG_CC_STDC]).
19254         With autoconf-2.53a, it's part of AC_PROG_CC.
19255
19256 2002-04-28  Paul Eggert  <eggert@twinsun.com>
19257
19258         * m4/jm-macros.m4 (jm_MACROS): Add AC_REPLACE_FUNCS(sig2str).
19259         * m4/prereq.m4 (jm_PREREQ): Add jm_PREREQ_SIG2STR.
19260
19261 2002-04-28  Paul Eggert  <eggert@twinsun.com>
19262
19263         * lib/sig2str.h, sig2str.c: New files.
19264         * lib/Makefile.am (libfetish_a_SOURCES): Add sig2str.h.
19265
19266 2002-04-28  Paul Eggert  <eggert@twinsun.com>
19267
19268         * lib/sig2str.h (SIGNUM_BOUND): Do not use WTERMSIG, to avoid
19269         depending on <sys/wait.h> and WTERMSIG.  Default to 64 instead
19270         of 127, since 64 is the largest conceivable number for ancient
19271         nonstandard hosts.
19272         * lib/sig2str.c: Do not include <sys/wait.h>; no longer needed.
19273
19274 2002-04-28  Jim Meyering  <meyering@lucent.com>
19275
19276         * lib/sig2str.c (WTERMSIG): Remove definition (unused).
19277
19278 2002-04-24  Jim Meyering  <meyering@lucent.com>
19279
19280         * m4/prereq.m4 (jm_PREREQ_HARD_LOCALE): New macro.
19281         (jm_PREREQ): Use it.
19282
19283         * m4/getloadavg.m4: Check for these headers: locale.h unistd.h
19284         mach/mach.h fcntl.h.
19285         Check for this function: setlocale.
19286
19287 2002-04-24  Jim Meyering  <meyering@lucent.com>
19288
19289         * lib/gettext.h: New file, from Gettext.
19290         * lib/Makefile.am (INCLUDES): Remove -I../intl.
19291         (libfetish_a_SOURCES): Add gettext.h.
19292
19293 2002-04-16  Jim Meyering  <meyering@lucent.com>
19294
19295         * m4/prereq.m4 (jm_PREREQ_READUTMP): Also check for these members:
19296         ut_pid, ut_id, ut_exit.
19297
19298 2002-04-16  Jim Meyering  <meyering@lucent.com>
19299
19300         * lib/readutmp.h (UT_TYPE): Remove definition (now in who.c).
19301         (HAVE_STRUCT_XTMP_UT_EXIT, HAVE_STRUCT_XTMP_UT_ID): Define.
19302         (HAVE_STRUCT_XTMP_UT_PID, HAVE_STRUCT_XTMP_UT_TYPE): Define.
19303
19304 2002-04-12  Jim Meyering  <meyering@lucent.com>
19305
19306         * m4/ls-mntd-fs.m4 (checking for getmntinfo function...): Remove
19307         now-bogus check for f_type in sys/mount.h.  Instead, just test for the
19308         existence of the getmntinfo function.  Needed for Darwin 5.3.
19309
19310         * m4/dirfd.m4 (UTILS_FUNC_DIRFD): Also detect when dirfd is a macro.
19311         This is necessary at least on Darwin 5.3.
19312
19313         * m4/jm-macros.m4: Don't AC_REPLACE(strnlen), now that we use
19314         AC_FUNC_STRNLEN.  Otherwise, we'd end up putting two copies of
19315         strnlen.o in the library, and that makes some versions of ranlib
19316         object.
19317
19318 2002-04-12  Jim Meyering  <meyering@lucent.com>
19319
19320         * lib/dirfd.h (dirfd): Elide prototype if dirfd is a macro.
19321
19322 2002-04-09  Jim Meyering  <meyering@lucent.com>
19323
19324         * m4/malloc.m4: (jm_FUNC_MALLOC): Change the `checking ...' message
19325         to be more precise.  Rather than saying we're checking whether the
19326         function `works', say what we're testing.
19327         * m4/realloc.m4 (jm_FUNC_REALLOC): Likewise.
19328         Reported by Bruno Haible.
19329
19330 2002-03-10  Jim Meyering  <meyering@lucent.com>
19331
19332         * lib/makepath.c (make_path): Remove a comma from a diagnostic.
19333         Suggestion from Santiago Vila.
19334
19335 2002-03-08  Jim Meyering  <meyering@lucent.com>
19336
19337         * lib/rename.c: Mention that this wrapper is needed also on
19338         mips-dec-ultrix4.4 systems.
19339
19340 2002-03-02  Jim Meyering  <meyering@lucent.com>
19341
19342         * lib/gettime.c (gettime): Test HAVE_CLOCK_GETTIME,
19343         not HAVE_CLOCK_SETTIME.
19344
19345 2002-02-27  Paul Eggert  <eggert@twinsun.com>
19346
19347         * m4/jm-macros.m4 (jm_MACROS): Do not replace stime; no longer used.
19348         Check for clock_settime.
19349
19350 2002-02-27  Paul Eggert  <eggert@twinsun.com>
19351
19352         * lib/nanosleep.h: Rename to....
19353         * lib/timespec.h: New name for nanosleep.h.  All uses changed.
19354
19355         * lib/gettime.c: New file.
19356         * lib/settime.c: New file.
19357         * lib/stime.c: Remove.
19358
19359         * lib/Makefile.am (libfetish_a_SOURCES): Add gettime.c, settime.c,
19360         timespec.h.  Remove nanosleep.h.
19361
19362 2002-02-25  Paul Eggert  <eggert@twinsun.com>
19363
19364         * m4/acl.m4: New file.
19365         * m4/jm-macros.m4 (jm_MACROS): Require AC_FUNC_ACL.
19366         Do not check for acl or sys/acl.h, as AC_FUNC_ACL does that now.
19367
19368 2002-02-25  Paul Eggert  <eggert@twinsun.com>
19369
19370         * lib/acl.c, acl.h: New files.
19371         * lib/Makefile.am (libfetish_a_SOURCES): Add acl.h, acl.c.
19372
19373 2002-02-24  Jim Meyering  <meyering@lucent.com>
19374
19375         * lib/strnlen.c (strnlen): Define-away/undef so that an inconsistent
19376         prototype in string.h (on at least AIX4.3.2.0 w/gcc-2.95.3) doesn't
19377         cause trouble.  Reported by Nelson Beebe.
19378
19379 2002-02-23  Paul Eggert  <eggert@twinsun.com>
19380
19381         * lib/path-concat.c (xpath_concat): Reorder code to pacify
19382         compilers that don't know that xalloc_die never returns.
19383
19384 2002-02-20  Jim Meyering  <meyering@lucent.com>
19385
19386         * lib/getdate.c: Regenerate using bison-1.33.
19387
19388 2002-02-17  Jim Meyering  <meyering@lucent.com>
19389
19390         * config/config.guess (main): Don't use `head -1'; it's no longer
19391         portable. Use `sed 1q' instead.
19392
19393 2002-02-16  gettextize  <bug-gnu-gettext@gnu.org>
19394
19395         * m4/codeset.m4: Upgrade to gettext-0.11.
19396         * m4/gettext.m4: Upgrade to gettext-0.11.
19397         * m4/glibc21.m4: Upgrade to gettext-0.11.
19398         * m4/iconv.m4: Upgrade to gettext-0.11.
19399         * m4/isc-posix.m4: Upgrade to gettext-0.11.
19400         * m4/lcmessage.m4: Upgrade to gettext-0.11.
19401         * m4/lib-ld.m4: New file, from gettext-0.11.
19402         * m4/lib-link.m4: New file, from gettext-0.11.
19403         * m4/lib-prefix.m4: New file, from gettext-0.11.
19404         * m4/progtest.m4: Upgrade to gettext-0.11.
19405
19406 2002-02-15  Paul Eggert  <eggert@twinsun.com>
19407
19408         * m4/prereq.m4 (jm_PREREQ_POSIXVER): New macro.
19409         (jm_PREREQ): Use it.
19410
19411 2002-02-15  Paul Eggert  <eggert@twinsun.com>
19412
19413         * lib/posixver.c, posixver.h: New files.
19414         * lib/Makefile.am (libfetish_a_SOURCES): Add them.
19415
19416 2002-02-02  Paul Eggert  <eggert@twinsun.com>
19417             Bruno Haible  <bruno@clisp.org>
19418
19419         * lib/unicodeio.h (print_unicode_char): Add exit_on_error argument.
19420         (fwrite_success_callback): New declaration.
19421         * lib/unicodeio.c (unicode_to_mb): New function, extracted from
19422         print_unicode_char. Call failure callback instead of error.
19423         (fwrite_success_callback): New function.
19424         (exit_failure_callback): New function.
19425         (fallback_failure_callback): New function.
19426         (print_unicode_char): Call unicode_to_mb.
19427
19428 2002-01-26  Jim Meyering  <meyering@lucent.com>
19429
19430         * m4/jm-macros.m4 (jm_MACROS): Require autoconf-2.52g.
19431         * m4/strnlen.m4: Remove file, now that it's part of autoconf.
19432
19433 2002-01-26  Jim Meyering  <meyering@lucent.com>
19434
19435         * lib/Makefile.am (getdate$U.o): Depend on unlocked-io.h.
19436
19437 2002-01-22  Paul Eggert  <eggert@twinsun.com>
19438
19439         * m4/jm-macros.m4 (jm_MACROS): Require AC_FUNC_FSEEKO.
19440
19441 2002-01-22  Jim Meyering  <meyering@lucent.com>
19442
19443         * lib/Makefile.am (Makefile): Don't depend on $(BUILT_SOURCES).
19444         Otherwise, some versions of automake would omit the rule that makes
19445         Makefile from Makefile.in.
19446
19447 2002-01-21  Paul Eggert  <eggert@twinsun.com>
19448
19449         * lib/xmemcoll.h, xmemcoll.c: New files.
19450         * lib/Makefile.am (libfetish_a_SOURCES): Add them.
19451         * lib/memcoll.c: Include errno.h, and declare errno if not defined.
19452         (memcoll): Set errno to zero if there is no error.
19453
19454         * lib/quotearg.c (quotearg_buffer_restyled):
19455         Fix bug with quoting buffers containing NUL when backslashing escapes.
19456         This bug was exposed by the other changes in this patch.
19457         (quotearg_n_options): New arg ARGSIZE.
19458         All callers changed.
19459         (quoting_options_from_style): New function.
19460         (quotearg_n_style): Use it.
19461         (quotearg_n_style_mem): New function.
19462
19463         * lib/quotearg.h (quotearg_n_style_mem): New function.
19464
19465 2002-01-19  Jim Meyering  <meyering@lucent.com>
19466
19467         * m4/jm-macros.m4 (jm_MACROS): Use AC_FUNC_STRNLEN.
19468         Remove useless quotes: DF_PROG="df".
19469         * m4/strnlen.m4: New file.
19470
19471 2002-01-16  Paul Eggert  <eggert@twinsun.com>
19472
19473         * lib/backupfile.c (ISDIGIT): Comment fix.
19474         * lib/getdate.y (ISDIGIT): Likewise.
19475         * lib/posixtm.c (ISDIGIT, year): Likewise.
19476         * lib/strverscmp.c (ISDIGIT): Likewise.
19477         * lib/userspec.c (ISDIGIT): Likewise.
19478
19479 2002-01-16  Jim Meyering  <meyering@lucent.com>
19480
19481         * lib/getdate.y: Add three semicolons, each just before a closing
19482         brace. Bison (as of version 1.31) no longer papers over that mistake.
19483
19484 2002-01-05  Jim Meyering  <meyering@lucent.com>
19485
19486         * lib/version-etc.c (version_etc_copyright): Update copyright year.
19487
19488 2001-12-19  Paul Eggert  <eggert@twinsun.com>
19489
19490         * lib/closeout.c (close_stdout_status): If ferror (stdout), do
19491         not silently exit merely because the output buffer happens to
19492         have nothing pending.
19493
19494 2001-12-18  Paul Eggert  <eggert@twinsun.com>
19495
19496         See the big note in ../ChangeLog.
19497         * lib/human.c (suffixes): Prefer K to k for 1024.
19498         (generate_suffix_backwards): New function.
19499         (human_readable_inexact): Use it.
19500         * lib/xstrtol.c (__xstrtol): If there is no number but there
19501         is a valid suffix, assume 1.  "MB" now means decimal, "MiB" binary.
19502         Accept 'K' as well as 'k'.
19503
19504 2001-12-15  Jim Meyering  <meyering@lucent.com>
19505
19506         * lib/regex.h (__restrict_arr): Update from libc.
19507
19508         * lib/mountlist.h (ME_REMOTE): Recognize file systems of type smbfs
19509         as `remote' if the name starts with `//'.  Suggested by Michael Stone.
19510         (STREQ): Define.
19511
19512 2001-12-14  Jim Meyering  <meyering@lucent.com>
19513
19514         * m4/jm-macros.m4 (jm_MACROS): Check for iswspace.
19515         Suggestion from Bruno Haible.
19516
19517 2001-12-10  Jim Meyering  <meyering@lucent.com>
19518
19519         * lib/linebuffer.c: Remove explicit declarations of xmalloc and
19520         xrealloc, Instead, include "xalloc.h".
19521         (initbuffer): Don't cast xmalloc return value to char*.
19522         (readline): Reword comment.
19523         Don't cast xrealloc return value to char*
19524         Return NULL, not 0.
19525
19526 2001-12-09  Jim Meyering  <meyering@lucent.com>
19527
19528         * lib/modechange.c (mode_compile): Add cast to avoid pedantic warning
19529         about `signed and unsigned type in conditional expression'.
19530         * lib/posixtm.c (posix_time_parse): Likewise.
19531
19532         * lib/xreadlink.c (xreadlink): Add cast to avoid a pedantic warning.
19533
19534         * lib/readtokens.c (readtoken): Declare an index to be of type unsigned
19535         to avoid a pedantic warning.
19536
19537         * lib/getstr.c: Don't include assert.h.
19538         (getstr): Remove warning-evoking assertions.
19539         Return -1 if offset parameter is out of bounds.
19540         Change the type of a local from int to size_t.
19541
19542         * lib/strftime.c (my_strftime_localtime_r): Include this function
19543         definition in the `#if ! HAVE_TM_GMTOFF' block.
19544
19545         * lib/xgethostname.c: Remove declarations of xmalloc and xrealloc.
19546         Include xalloc.h instead.
19547
19548 2001-12-02  Jim Meyering  <meyering@lucent.com>
19549
19550         * lib/tempname.c: Don't declare getenv, thus reverting the change of
19551         2001-11-18.  It's no longer necessary, now that stdlib.h is always
19552         included.
19553
19554         * lib/regex.c [!__BOUNDED_POINTERS__]: Define away __bounded,
19555         __unbounded, and __ptrvalue.  Reported by Uwe H. Steinfeld.
19556
19557 2001-11-30  Akim Demaille  <akim@epita.fr>
19558
19559         * lib/xstrdup.c: Include xalloc.h, so that xstrdup is declared
19560         before being defined.
19561
19562 2001-11-27  Paul Eggert  <eggert@twinsun.com>
19563
19564         * lib/quotearg.h (quotearg_n, quotearg_n_style):
19565         First arg is int, not unsigned.
19566         * lib/quotearg.c (quotearg_n, quotearg_n_style): Likewise.
19567         (SIZE_MAX, UINT_MAX): New macros.
19568         (quotearg_n_options): Abort if N is negative.
19569         Avoid overflow check on hosts where size_t is 64 bits and int
19570         is 32 bits, as overflow is impossible there.
19571         Fix off-by-one typo that caused unnecessary reallocation.
19572
19573 2001-11-27  Jim Meyering  <meyering@lucent.com>
19574
19575         * lib/tempname.c: Merge with version from libc.
19576         * lib/regex.c: Likewise.
19577
19578         * lib/tempname.c: Include stdlib.h unconditionally.  On some old
19579         systems for which STDC_HEADERS is 0, it was not included, resulting in
19580         a warning about an integer-to-pointer conversion problem with getenv.
19581         Reported by Volker Borchert.
19582
19583 2001-11-26  Jim Meyering  <meyering@lucent.com>
19584
19585         * lib/gtod.h: Remove file.
19586         * lib/Makefile.am (libfetish_a_SOURCES): Remove gtod.h.
19587         * lib/gettimeofday.c: Don't include gtod.h.
19588         (GTOD_init): Remove function.
19589         (rpl_gettimeofday): Do its job here instead, rather than aborting.
19590         Suggestion from Volker Borchert.
19591
19592 2001-11-23  Jim Meyering  <meyering@lucent.com>
19593
19594         * lib/hash.h (struct hash_table): Don't define here.  Merely declare
19595         it.
19596         * lib/hash.c (struct hash_table): Define it here instead.
19597
19598 2001-11-22  Jim Meyering  <meyering@lucent.com>
19599
19600         * lib/hash.h: Bracket contents of file with #ifndef HASH_H_ ... #endif.
19601
19602 2001-11-20  Jim Meyering  <meyering@lucent.com>
19603
19604         * m4/mkstemp.m4 (UTILS_FUNC_MKSTEMP): Update comment to reflect that
19605         SunOS 4.1.4 and Solaris 2.5.1 lose, too.
19606
19607 2001-11-19  Jim Meyering  <meyering@lucent.com>
19608
19609         * m4/mkstemp.m4 (UTILS_FUNC_MKSTEMP): Don't bother with a temporary
19610         directory.  Use "conftestXXXXXX" as the template.
19611         Suggestion from Paul Eggert.
19612
19613         * m4/mkstemp.m4 (UTILS_FUNC_MKSTEMP): Close each descriptor
19614         immediately, so the test doesn't mistakenly hit the max-open-files
19615         limit.
19616
19617 2001-11-18  Paul Eggert  <eggert@twinsun.com>
19618
19619         * lib/tempname.c (TMP_MAX): Remove; no longer needed.
19620         (TEMPORARIES): New macro.
19621         (__gen_tempname): Use TEMPORARIES rather than TMP_MAX.  This
19622         removes an artificial limitation (e.g. HP-UX 10.20, where
19623         TMP_MAX is 17576).
19624
19625 2001-11-18  Jim Meyering  <meyering@lucent.com>
19626
19627         * m4/prereq.m4 (jm_PREREQ_TEMPNAME): Check for declaration of getenv.
19628
19629 2001-11-18  Jim Meyering  <meyering@lucent.com>
19630
19631         * lib/tempname.c [!HAVE_DECL_GETENV]: Declare getenv to avoid warning
19632         on SunOS 4.
19633
19634         * lib/Makefile.am (Makefile): Depend on $(BUILT_SOURCES), so those
19635         files will be created before anything else.
19636
19637 2001-11-17 Paul Eggert  <eggert@twinsun.com>
19638
19639         * m4/jm-winsz1.m4 (jm_WINSIZE_IN_PTEM): Do not define
19640         WINSIZE_IN_PTEM if <termios.h> defines struct winsize.
19641
19642 2001-11-17  Jim Meyering  <meyering@lucent.com>
19643
19644         * m4/mkstemp.m4 (UTILS_FUNC_MKSTEMP): New file and macro.
19645         Prompted by a report from Bob Proulx.
19646
19647         * m4/jm-macros.m4 (jm_MACROS): Don't test for mkstemp here.
19648         Instead, require UTILS_FUNC_MKSTEMP.
19649
19650 2001-11-17  Jim Meyering  <meyering@lucent.com>
19651
19652         * m4/jm-macros.m4 (jm_MACROS): Remove code to set POW_LIBM.
19653         Now, that's done as part of AC_FUNC_STRTOD.
19654
19655 2001-11-17  Jim Meyering  <meyering@lucent.com>
19656
19657         * lib/modechange.c (mode_adjust): Fix error introduced on 1999-04-26
19658         that made e.g., `chmod a=,o=w,g=o F' cause F to be group readable
19659         rather than group writable.  Patch by Juan F. Codagnone.
19660
19661         * lib/readtokens.c: Remove explicit declarations of xmalloc and
19662         xrealloc, Instead, include "xalloc.h".
19663
19664         * lib/mountlist.c: Include unlocked-io.h after all system headers.
19665         Remove explicit declarations of xmalloc, xrealloc,
19666         and xstrdup.  Instead, include "xalloc.h".
19667
19668         * lib/argmatch.c, closeout.c, error.c, exclude.c: Include
19669         unlocked-io.h.
19670         * lib/fatal.c, getdate.y, getpass.c, getstr.c, getusershell.c:
19671         Likewise.
19672         * lib/mountlist.c, posixtm.c, readtokens.c, readutmp.c: Likewise.
19673
19674         * lib/regex.c, sha.c, version-etc.c, yesno.c: Likewise.
19675         Reported by Padraig Brady.
19676
19677         * lib/mkstemp.c: #undef mkstemp.
19678         Include config.h.
19679         (rpl_mkstemp): Rename from mkstemp.
19680         Protoize.
19681
19682 2001-11-16  Jim Meyering  <meyering@lucent.com>
19683
19684         * lib/physmem.c [HAVE_SYS_PSTAT_H]: Include <sys/pstat.h>.
19685         (physmem_total) [HAVE_PSTAT_GETSTATIC]: If sysconf couldn't be used to
19686         determine the amount of total physical memory, use pstat_getstatic.
19687         HPUX-11 doesn't define _SC_PHYS_PAGES.
19688         (physmem_available) [HAVE_PSTAT_GETSTATIC && HAVE_PSTAT_GETDYNAMIC]:
19689         If sysconf couldn't be used to determine the amount of available
19690         physical memory, use both pstat_getstatic and pstat_getdynamic.
19691         Based on a patch from Bob Proulx.
19692
19693 2001-11-10  Jim Meyering  <meyering@lucent.com>
19694
19695         * m4/prereq.m4 (jm_PREREQ_PHYSMEM): New function.
19696         (jm_PREREQ): Use it.
19697
19698 2001-11-09  Jim Meyering  <meyering@lucent.com>
19699
19700         * m4/jm-macros.m4: Require autoconf-2.52f.
19701         (AC_FUNC_ERROR_AT_LINE, AC_FUNC_OBSTACK, AC_FUNC_STRTOD):
19702         Use these AC_-prefixed names, not the AM_-prefixed ones.
19703
19704         * m4/afs.m4 (jm_AFS): Quote the body.  Patch by Akim Demaille.
19705
19706 2001-11-05  Jim Meyering  <meyering@lucent.com>
19707
19708         * lib/xstat.in (slash_aware_lstat): Correct a misleading comment.
19709
19710 2001-11-04  Jim Meyering  <meyering@lucent.com>
19711
19712         * m4/fpending.m4: Remove unused cruft that saved, set, and restored
19713         $DEFS.
19714
19715 2001-11-03  Jim Meyering  <meyering@lucent.com>
19716
19717         * m4/jm-glibc-io.m4n (jm_FUNC_GLIBC_UNLOCKED_IO): Quote first arg
19718         of AC_DEFUN.
19719
19720         * m4/dirfd.m4 (UTILS_FUNC_DIRFD): Rework so dirfd.c doesn't have to
19721         know the name of the variable in the macro definition.
19722
19723 2001-11-03  Jim Meyering  <meyering@lucent.com>
19724
19725         * lib/argmatch.h (ARGMATCH_TO_ARGUMENT): Remove casts of first two args
19726         in argmatch_to_argument call.
19727
19728         * lib/dirfd.c (dirfd): Reflect the fact that DIR_TO_FD now takes an
19729         argument.
19730
19731         * lib/hash.c (hash_clear): Fix a bug that could lead to an infloop or
19732         e.g., a fault due to an attempt to free a NULL pointer.
19733
19734 2001-11-01  Jim Meyering  <meyering@lucent.com>
19735
19736         * m4/dirfd.m4 (UTILS_FUNC_DIRFD): New macro.
19737         * m4/jm-macros.m4 (jm_MACROS): Require UTILS_FUNC_DIRFD.
19738
19739 2001-11-01  Jim Meyering  <meyering@lucent.com>
19740
19741         * lib/dirfd.c, dirfd.h: New files.
19742         * lib/Makefile.am (libfetish_a_SOURCES): Add dirfd.h.
19743
19744         * lib/hash.c (hash_print) [TESTING]: Clean up.
19745
19746 2001-10-22  Paul Eggert  <eggert@twinsun.com>
19747
19748         * lib/hard-locale.c (alloca): Define to __builtin_alloca if __GNUC__,
19749         to avoid a warning if -Wall.
19750
19751 2001-10-22  Jeff Bailey  <jbailey@outpost.dnsalias.org>
19752
19753         * README: New file
19754         * doc/*: Add COPYING, COPYING.LIB, COPYING.DOC, fdl.texi
19755         (per RMS's instructions, this is now the canonical source)
19756         * lgpl/, gpl/: New directories.
19757
19758 2001-10-21  Paul Eggert  <eggert@twinsun.com>
19759
19760         * lib/regex.c (uintptr_t): Remove macro and decl; it's config.h's job.
19761
19762 2001-10-21  Jim Meyering  <meyering@lucent.com>
19763
19764         * lib/obstack.c (_): Honor the setting of ENABLE_NLS.  Otherwise,
19765         this code would end up calling gettext even in packages built
19766         with --disable-nls.
19767         * lib/getopt.c (_): Likewise.
19768         * lib/regex.c (_): Likewise.
19769
19770 2001-10-20  Paul Eggert  <eggert@twinsun.com>
19771
19772         * m4/error.m4 (jm_PREREQ_ERROR):
19773         Do not invoke AC_CHECK_FUNCS with strerror_r, as
19774         AC_FUNC_STRERROR_R does that.
19775         Check for strerror declaration.
19776
19777         * m4/strerror_r.m4: Add copyright notice, as nontrivial m4 files
19778         are supposed to have them these days.
19779         (AC_FUNC_STRERROR_R): Always do char* test, so that it gets cached.
19780         Merge changes from latest Autoconf CVS.
19781         Rename ac_cv_func_strerror_r_works to ac_cv_func_strerror_r_char_p,
19782         and rename HAVE_WORKING_STRERROR_R to STRERROR_R_CHAR_P, since
19783         POSIX decided to standardize on the int flavor of strerror_r.
19784
19785 2001-10-20  Paul Eggert  <eggert@twinsun.com>
19786
19787         * lib/error.c (strerror_r): Do not declare unless !_LIBC.
19788         Do not check for HAVE_DECL_STRERROR_R missing unless STRERROR_R_CHAR_P.
19789         Use strerror_r that is only a macro, even if it is not a function.
19790         (strerror): Check for HAVE_DECL_STRERROR before declaring.
19791         (private_strerror): Use prototypes, not old-style function definition.
19792         (print_errno_message): New function.
19793         Support the POSIX 'int'-flavored strerror_r, as well as the traditional
19794         char*-flavored one.
19795         (error_tail, error, error_at_line): Use it.
19796
19797 2001-10-11  Jim Meyering  <meyering@lucent.com>
19798
19799         * lib/argmatch.c (argmatch_invalid): Use quotearg_n_style (0, ...
19800         and quote_n (1, ... to avoid clobbering a buffer.
19801
19802 2001-10-05  Jim Meyering  <meyering@lucent.com>
19803
19804         * lib/Makefile.am: (libfetish_a_SOURCES): Add hash-pjw.c and
19805         hash-pjw.h.
19806         * lib/hash-pjw.c: New file (factored out of fileutils' remove.c).
19807         * lib/hash-pjw.h: New file.
19808
19809 2001-09-30  Jim Meyering  <meyering@lucent.com>
19810
19811         * m4/ls-mntd-fs.m4 (jm_LIST_MOUNTED_FILESYSTEMS): See if
19812         `struct fsstat' has the `f_fstypename' member.
19813         Use that to define FS_TYPE, which is now used to make
19814         the getfsstat link test tighter.
19815
19816 2001-09-30  Jim Meyering  <meyering@lucent.com>
19817
19818         * lib/mountlist.c [MOUNTED_GETFSSTAT]:
19819         Include <sys/ucred.h>, for Apple Darwin.
19820         Include sys/mount.h and sys/fs_types.h only if available.
19821         (FS_TYPE): Define.
19822         (read_filesystem_list): Use FS_TYPE.
19823
19824 2001-09-29  Paul Eggert  <eggert@twinsun.com>
19825
19826         * lib/exclude.c (excluded_filename): 0 -> false, since it's
19827         a boolean context.
19828
19829 2001-09-29  Jim Meyering  <meyering@lucent.com>
19830
19831         * m4/ls-mntd-fs.m4 (jm_LIST_MOUNTED_FILESYSTEMS)
19832         [one-argument getmntent function]): Include stdio.h before mntent.h.
19833         SunOS 4.1.x needs it for the declaration of `FILE'.
19834         Patch by Volker Borchert.
19835
19836         * m4/ls-mntd-fs.m4 (jm_LIST_MOUNTED_FILESYSTEMS)
19837         Check for these headers: sys/param.h sys/ucred.h sys/mount.h
19838         sys/fs_types.h, and make the link-test for getfsstat guard #include
19839         directives with appropriate #if HAVE_*_H tests so that we can
19840         detect getfsstat on Apple Darwin1.3.7 systems.
19841         Reported by Nelson Beebe.
19842         Fix harmless typo in cache variable name: s/getsstat/getfsstat/.
19843
19844 2001-09-28  Paul Eggert  <eggert@twinsun.com>
19845
19846         Fix bug reported by Petter Reinholdtsen for HP-UX 10.20, which
19847         #defines strtoimax.  Also treat the other strto* functions
19848         like strtoimax.
19849
19850         * m4/xstrtoimax.m4 (jm_AC_PREREQ_XSTRTOIMAX):
19851         Check for strtoul and strtoumax,
19852         as those declarations are made even in the signed case.
19853         * m4/xstrtoumax.m4 (jm_AC_PREREQ_XSTRTOUMAX):
19854         Likewise, for strtol and strtoimax.
19855
19856 2001-09-28  Paul Eggert  <eggert@twinsun.com>
19857
19858         Fix bug reported by Petter Reinholdtsen for HP-UX 10.20, which
19859         #defines strtoimax.  Also treat the other strto* functions
19860         like strtoimax.
19861
19862         * lib/xstrtol.c (strtol): Do not declare if HAVE_DECL_STRTOL.
19863         (strtoul): Do not declare if HAVE_DECL_STRTOUL.
19864         (strtoimax, strtoumax): Do not declare if already defined as a macro.
19865
19866 2001-09-26  Jim Meyering  <meyering@lucent.com>
19867
19868         Most macros in unlocked-io.h had the wrong number of arguments.
19869         * lib/gen-uio: New script.
19870         (USE_UNLOCKED_IO): Define to 1 if not already defined.
19871         * lib/unlocked-io.hin: Remove file.
19872         * lib/Makefile.am (unlocked-io.h): Rewrite to use a separate script,
19873         rather than trying to embed it here.
19874         (EXTRA_DIST): Add gen-uio.  Remove unlocked-io.hin
19875         Reported by Padraig Brady.
19876
19877 2001-09-25  Volker Borchert  <bt@teknon.de>
19878
19879         * lib/gettimeofday.c (rpl_gettimeofday): Declare local variable
19880         `result'.
19881
19882 2001-09-24  Jim Meyering  <meyering@lucent.com>
19883
19884         * m4/gettext.m4: Use the version from gettext-0.10.40, not CVS.
19885
19886 2001-09-23  Jim Meyering  <meyering@lucent.com>
19887
19888         * m4/ls-mntd-fs.m4 (jm_LIST_MOUNTED_FILESYSTEMS): Add a compile-test
19889         instead of the mere test for existence of mntent.h.  The latter
19890         would get a false-positive on AIX 3.4 systems.
19891         In the outer getmntent if-block, don't die if neither of the getmntent
19892         tests succeeds.  Instead, just fall through and continue with the
19893         remaining tests.
19894
19895 2001-09-23  Jim Meyering  <meyering@lucent.com>
19896
19897         * lib/mountlist.c: Remove useless parentheses in #if directives.
19898         (MOUNTED) [!defined MOUNTED]: Define to _PATH_MOUNTED, for when
19899         the deprecated MOUNTED symbol is no longer defined in mntent.h.
19900
19901 2001-09-22  Jim Meyering  <meyering@lucent.com>
19902
19903         * m4/gettext.m4: New file.  From gettext.
19904         * m4/lcmessage.m4: Sync with gettext -- this changes only comments.
19905         * m4/progtest.m4: Likewise
19906         * m4/isc-posix.m4: Decrement serial number to sync with gettext.
19907         * m4/glibc21.m4: Likewise.
19908
19909         * m4/libintl.m4: Remove.  No longer used.
19910
19911 2001-09-22  Jim Meyering  <meyering@lucent.com>
19912
19913         * lib/localcharset.c: Update from latest gettext.
19914         * lib/config.charset: Likewise.
19915
19916 2001-09-20  Jim Meyering  <meyering@lucent.com>
19917
19918         * m4/xstrtoimax.m4 (jm_AC_PREREQ_XSTRTOIMAX): Check for declaration of
19919         strtoimax.
19920         * m4/xstrtoumax.m4 (jm_AC_PREREQ_XSTRTOUMAX): Check for declaration of
19921         strtoumax.
19922
19923 2001-09-20  Jim Meyering  <meyering@lucent.com>
19924
19925         * lib/xstrtol.c (strtoimax): Guard declaration with
19926         `#if !HAVE_DECL_STRTOIMAX', rather than just `#ifndef strtoimax'.
19927         The latter fails because some systems (at least rs6000-ibm-aix4.3.3.0)
19928         have their own, conflicting declaration of strtoimax in sys/inttypes.h.
19929         (strtoumax): Likewise, for completeness (it wasn't necessary).
19930
19931 2001-09-17  Paul Eggert  <eggert@twinsun.com>
19932
19933         * lib/strtoimax.c (HAVE_LONG_LONG):
19934         Redefine to HAVE_UNSIGNED_LONG_LONG if unsigned.
19935         (strtoimax): Use sizeof (long), not sizeof strtol (ptr, endptr, base),
19936         to work around bug in IBM C compiler.
19937
19938 2001-09-17  Jim Meyering  <meyering@lucent.com>
19939
19940         * m4/chown.m4, fstypename.m4, getgroups.m4, gettimeofday.m4,
19941         * m4/jm-mktime.m4, lstat.m4, malloc.m4, memcmp.m4, mkdir-slash.m4,
19942         * m4/nanosleep.m4, putenv.m4, readdir.m4, realloc.m4, rename.m4,
19943         * m4/st_dm_mode.m4, stat.m4, strerror_r.m4, timespec.m4, utimbuf.m4,
19944         * m4/utimes.m4: Use AC_DEFINE rather than AC_DEFINE_UNQUOTED,
19945         whenever the right hand side need not be expanded by the shell.
19946
19947 2001-09-16  Paul Eggert  <eggert@twinsun.com>
19948
19949         * m4/fnmatch.m4 (jm_FUNC_FNMATCH): Remove test for GNU C
19950         library.  It's not correct, as some older glibcs are buggy.
19951         fnmatch wasn't fixed until glibc 2.2.
19952
19953         Use AC_DEFINE, not AC_DEFINE_UNQUOTED, as there's no
19954         special shell magic here.
19955
19956 2001-09-16  Jim Meyering  <meyering@lucent.com>
19957
19958         * m4/mkdir-slash.m4 (UTILS_FUNC_MKDIR_TRAILING_SLASH): New file/macro.
19959         * m4/jm-macros.m4: Require it.
19960
19961 2001-09-16  Jim Meyering  <meyering@lucent.com>
19962
19963         * lib/mkdir.c: New file.
19964
19965 2001-09-15  Jim Meyering  <meyering@lucent.com>
19966
19967         * m4/jm-macros.m4: Check for help2man.
19968
19969 2001-09-11  Jim Meyering  <meyering@lucent.com>
19970
19971         * m4/host-os.m4 (UTILS_HOST_OS): New file/macro.
19972         The body, by Paul Eggert, was moved here from configure.in.
19973         * m4/jm-macros.m4: Require UTILS_HOST_OS.
19974
19975 2001-09-04  Paul Eggert  <eggert@twinsun.com>
19976
19977         * m4/prereq.m4 (jm_PREREQ_XREADLINK): New macro.
19978         (jm_PREREQ): Use it.
19979
19980 2001-09-04  Paul Eggert  <eggert@twinsun.com>
19981
19982         * lib/xreadlink.c (xreadlink): Omit size_t* arg.  All uses changed.
19983         Use ssize_t, not int, to store result of readlink.
19984         Check for ssize_t overflow as well as size_t overflow,
19985         as POSIX says the result of readlink is implementation-defined
19986         when ssize_t overflows.
19987         Remove unnecessary cast to char*.
19988         Use free+malloc instead of realloc, as the storage doesn't need
19989         to be preserved and it's clearer and can be more efficient that way.
19990         (SIZE_MAX, SSIZE_MAX): New macros, if <limits.h> doesn't declare.
19991         * lib/xreadlink.h (xreadlink): Update prototype.
19992
19993 2001-09-04  Paul Eggert  <eggert@twinsun.com>
19994
19995         * lib/xgetcwd.c: Revert some of the previous change; intead,
19996         fix the HAVE_GETCWD_NULL code to behave more like the
19997         !HAVE_GETCWD_NULL code used to.
19998
19999         Include "xalloc.h".
20000         (xgetcwd): Do not return NULL when memory is exhausted; instead,
20001         invoke xalloc_die.
20002
20003 2001-09-03  Paul Eggert  <eggert@twinsun.com>
20004
20005         * m4/prereq.m4 (jm_PREREQ_XGETCWD): Check for limits.h and
20006         sys/param.h, as pathmax.h includes them.
20007
20008 2001-09-03  Paul Eggert  <eggert@twinsun.com>
20009
20010         * m4/prereq.m4 (jm_PREREQ): Add jm_PREREQ_XGETCWD.
20011         (jm_PREREQ_XGETCWD): New macro.
20012
20013         * m4/getcwd.m4: New file.
20014
20015 2001-09-03  Paul Eggert  <eggert@twinsun.com>
20016
20017         * lib/xgetcwd.c: Fix the !HAVE_GETCWD_NULL code to behave more
20018         like the HAVE_GETCWD_NULL code.
20019         Include pathmax.h if not HAVE_GETCWD.
20020         Do not include xalloc.h.
20021         (INITIAL_BUFFER_SIZE): New symbol.
20022         Do not use xmalloc / xrealloc, since the caller is responsible for
20023         handling errors.  Preserve errno around `free' during failure.
20024         Do not overrun buffer when using getwd.
20025
20026 2001-09-03  Paul Eggert  <eggert@twinsun.com>
20027
20028         * lib/xgetcwd.c (xgetcwd): Use HAVE_GETCWD_NULL, not (defined
20029         __GLIBC__ && __GLIBC__ >= 2), to decide whether to use
20030         getcwd (NULL, 0).
20031
20032 2001-09-03  Paul Eggert  <eggert@twinsun.com>
20033
20034         * lib/exclude.c (fnmatch_no_wildcards): Fix confusion between
20035         usage of FNM_CASEFOLD and FNM_LEADING_DIR.  The bug was
20036         spotted by Jim Meyering.
20037
20038 2001-09-03  Jim Meyering  <meyering@lucent.com>
20039
20040         * lib/xreadlink.c (xreadlink): Preserve errno around `free' during
20041         failure.
20042
20043 2001-09-02  Jim Meyering  <meyering@lucent.com>
20044
20045         * lib/error.c: Update from GNU libc.
20046
20047 2001-09-01  Jim Meyering  <meyering@lucent.com>
20048
20049         * m4/jm-macros.m4 (jm_MACROS): Check for canonicalize_file_name.
20050         Used by df.
20051
20052 2001-09-01  Jim Meyering  <meyering@lucent.com>
20053
20054         * lib/xreadlink.c: New file.
20055         * lib/xreadlink.h: New file.
20056         * lib/Makefile.am (libfetish_a_SOURCES): Add xreadlink.c and
20057         xreadlink.h.
20058
20059         * lib/regex.c (uintptr_t) [!_LIBC]: Define to private_uintptr_t, so it
20060         doesn't conflict with sparc Solaris 7's definition in
20061         /usr/include/sys/int_types.h.
20062
20063         * lib/exclude.c: Use `""', not `<>' to #include non-system header
20064         files.
20065         (fnmatch_no_wildcards): Rewrite not to use function names, strcasecmp
20066         and strncasecmp as r-values.  Unixware didn't have declarations.
20067
20068 2001-08-31  Paul Eggert  <eggert@twinsun.com>
20069
20070         * lib/xstrtol.h: Add copyright notice.
20071         (_DECLARE_XSTRTOL): Improve quality of diagnostic for
20072         LONGINT_INVALID_SUFFIX_CHAR.
20073
20074 2001-08-31  Paul Eggert  <eggert@twinsun.com>
20075
20076         * lib/xstrtol.c (strtoimax): New decl.
20077
20078 2001-08-31  Paul Eggert  <eggert@twinsun.com>
20079
20080         * lib/xgetcwd.c: Don't include pathmax.h.
20081         Include stdlib.h and unistd.h if available.
20082         Include xalloc.h.
20083         (xmalloc, xstrdup, free): Remove decls.
20084         (xgetcwd): Don't assume sizes fit in unsigned.
20085         Check for overflow when computing sizes.
20086         Simplify reallocation code.
20087
20088 2001-08-31  Paul Eggert  <eggert@twinsun.com>
20089
20090         * lib/savedir.c (savedir): Remove size parameter, as POSIX says that
20091         a directory's st_size can have an arbitrary value, so the old
20092         usage could waste an arbitrary amount of memory.  All uses
20093         changed.
20094         * lib/savedir.h: Update prototype.
20095
20096 2001-08-31  Paul Eggert  <eggert@twinsun.com>
20097
20098         * lib/Makefile.am (libfetish_a_SOURCES): Remove strtoxmax.c.
20099
20100         * lib/strtoimax.c: Renamed from strtoxmax.c, removing the
20101         old strtoimax.c.
20102
20103         Also, make the following further changes to make this file's
20104         configuration more similar to that of strtol.c:
20105         (UNSIGNED): Renamed from STRTOUXMAX_UNSIGNED.  All uses changed.
20106         (strtoumax, uintmax_t, strtoull, strtol): Remove.
20107         (intmax_t, strtoimax, strtol, strtoll): New macros, if UNSIGNED.
20108         (strtoimax): Renamed from strtoumax.  All uses of unsigned values
20109         changed to signed values.
20110
20111         And make the following changes as well:
20112         Fix copyright notice, as 1999 was missing.
20113         (verify): New macro.
20114         (strtoimax): Check sizes at compile-time, not run-time.
20115         Prefer strtol to strtoll if both work.
20116         (main): Remove; it was not that useful and was a pain to maintain.
20117
20118         * lib/strtoumax.c: Include strtoimax.c, not strtouxmax.c.
20119
20120 2001-08-31  Jim Meyering  <meyering@lucent.com>
20121
20122         * lib/xgetcwd.c (xgetcwd): Reorganize to avoid some duplication.
20123         Use an initial, malloc'd, buffer of length 128 rather than
20124         a statically allocated one of length 1024.
20125
20126 2001-08-30  Paul Eggert  <eggert@twinsun.com>
20127
20128         Simplify code, partly by assuming autoconf 2.52 semantics.
20129
20130         * m4/Makefile.am (EXTRA_DIST): Remove uintmax_t.m4.
20131
20132         * m4/inttypes.m4 (AC_PREREQ): Bump to 2.52.
20133         (jm_AC_HEADER_INTTYPES_H): Remove; now done by autoconf in 2.52.
20134         All uses removed.
20135         (jm_AC_TYPE_INTMAX_T, jm_AC_TYPE_UINTMAX_T):
20136         Move AC_REQUIRE to next-to-top level, to avoid confusion.
20137         Use 2.52's AC_CHECK_TYPE instead of merely looking for the header.
20138         * m4/prereq.m4 (jm_PREREQ_HUMAN): Don't require
20139         jm_AC_HEADER_INTTYPES_H.
20140         * m4/jm-macros.m4 (jm_MACROS): Likewise.
20141
20142         * m4/uintmax_t.m4: Remove, as it duplicates inttypes.m4.
20143
20144         * m4/xstrtoimax.m4 (jm_AC_PREREQ_XSTRTOIMAX):
20145         Quote first arg of AC_DEFUN.
20146         Require jm_AC_TYPE_UINTMAX_T and jm_AC_TYPE_UNSIGNED_LONG_LONG
20147         since they are needed to parse the include file even if we need
20148         only xstrtoimax.  Simplify logic behind the args to AC_REPLACE.
20149         * m4/xstrtoumax.m4 (jm_AC_PREREQ_XSTRTOUMAX): Likewise,
20150         but with opposite signedness.
20151
20152 2001-08-30  Paul Eggert  <eggert@twinsun.com>
20153
20154         Merge 'exclude' changes from tar 1.13.22.
20155         This fixes one or two unlikely storage allocation overflow bugs,
20156         but doesn't change user-visible behavior otherwise.
20157
20158 2001-08-30  Paul Eggert  <eggert@twinsun.com>
20159
20160         * m4/prereq.m4 (jm_PREREQ): Add jm_PREREQ_EXCLUDE.
20161         (jm_PREREQ_EXCLUDE): New macro.
20162
20163 2001-08-30  Paul Eggert  <eggert@twinsun.com>
20164
20165         * lib/quotearg.c: BSD/OS 4.1 wchar.h requires FILE and struct
20166         tm to be declared.
20167
20168 2001-08-30  Paul Eggert  <eggert@twinsun.com>
20169
20170         * lib/hash.c: Remove '2001' from copyright notice.
20171
20172 2001-08-30  Paul Eggert  <eggert@twinsun.com>
20173
20174         * lib/full-write.h: New file.
20175         * lib/Makefile.am (libfetish_a_SOURCES): Add full-write.h.
20176         * lib/full-write.c: Correct credits, as cccp.c no longer
20177         exists and anyway it was so heavily changed from the old cccp
20178         code as to be unrecognizable.  Include full-write.h.
20179         (full_write) Return size_t, with short writes meaning failure.
20180         All callers changed.  This fixes a bug with large buffers
20181         on 64-bit hosts.
20182         * lib/utime.c: Include full-write.h.
20183
20184 2001-08-30  Paul Eggert  <eggert@twinsun.com>
20185
20186         * lib/exclude.c (bool): Declare, perhaps by including stdbool.h.
20187         (<sys/types.h>): Include only if HAVE_SYS_TYPES_H.
20188         (<stdlib.h>, <string.h>, <strings.h>, <inttypes.h>, <stdint.h>):
20189         Include if available.
20190         (<xalloc.h>): Include
20191         (SIZE_MAX): Define if <stdint.h> or <inttypes.h> doesn't.
20192         (verify): New macro.  Use it to verify that EXCLUDE macros do not
20193         collide with FNM macros.
20194         (struct patopts): New struct.
20195         (struct exclude): Use it, as exclude patterns now come with options.
20196         (new_exclude): Support above changes.
20197         (new_exclude, add_exclude_file):
20198         Initial size must now be a power of two to simplify overflow checking.
20199         (free_exclude, fnmatch_no_wildcards): New function.
20200         (excluded_filename): No longer requires options arg, as the options
20201         are determined by add_exclude.  Now returns bool, not int.
20202         (excluded_filename, add_exclude):
20203         Add support for the fancy new exclusion options.
20204         (add_exclude, add_exclude_file): Now takes int options arg.
20205         Check for arithmetic overflow when computing sizes.
20206         (add_exclude_file): xrealloc might modify errno, so don't
20207         realloc until after errno might be used.
20208
20209         * lib/exclude.h (EXCLUDE_ANCHORED, EXCLUDE_INCLUDE,EXCLUDE_WILDCARDS):
20210         New macros.
20211         (free_exclude): New decl.
20212         (add_exclude, add_exclude_file): Now takes int options arg.
20213         (excluded_filename): No longer requires options arg, as the options
20214         are determined by add_exclude.  Now returns bool, not int.
20215
20216 2001-08-30  Paul Eggert  <eggert@twinsun.com>
20217
20218         * lib/alloca.c (alloca): Arg is of type size_t, not unsigned.
20219
20220 2001-08-27  Jim Meyering  <meyering@lucent.com>
20221
20222         * lib/Makefile.am (libfetish_a_SOURCES): Add strtoxmax.c
20223
20224         * lib/version-etc.c (N_): Remove definition.
20225         Revert most of last change.
20226         Instead, simply don't mark the `Copyright...' string for translation.
20227         Based on advice from Paul Eggert.
20228
20229         * lib/strtoxmax.c: Tweak comment.
20230
20231 2001-08-26  Jim Meyering  <meyering@lucent.com>
20232
20233         * m4/jm-macros.m4: Require jm_AC_PREREQ_XSTRTOIMAX.
20234
20235         * m4/xstrtoimax.m4: New file.
20236         * m4/xstrtoumax.m4: Add comments explaining why we
20237         AC_REPLACE_FUNCS(strtol).
20238
20239 2001-08-26  Jim Meyering  <meyering@lucent.com>
20240
20241         * lib/version-etc.c (version_etc_copyright_fmt): Replace literal year
20242         of copyright with `%s' so translators don't get an untranslated
20243         message in 2002.
20244         (COPYRIGHT_YEAR): Define.
20245         (version_etc): Use fprintf rather than fputs.
20246         Suggestion from Ulrich Drepper.
20247
20248         * lib/Makefile.am (libfetish_a_SOURCES): Add xstrtoimax.c.
20249
20250         * lib/strtoll.c: New file, from GNU libc.
20251         * lib/xstrtoimax.c: New file.
20252
20253         * lib/xstrtol.h: Add xstrtoimax.
20254         * lib/strtoumax.c: New file.  Simply include "strtoumax.c".
20255         * lib/strtoimax.c: New file.  Likewise, but first define
20256         STRTOUXMAX_SIGNED.
20257
20258         * lib/strtoumax.c: Factor to work both for unsigned and signed types,
20259         ...
20260         * lib/strtoxmax.c: ... then renamed to this.
20261
20262 2001-08-18  Paul Eggert  <eggert@twinsun.com>
20263
20264         * m4/inttypes.m4: Add AC_PREREQ(2.13).
20265         (jm_AC_HEADER_INTTYPES_H): Test for intmax_t, too.
20266         (jm_AC_TYPE_INTMAX_T): New macro.
20267         (jm_AC_TYPE_UINTMAX_T): Moved here from uintmax_t.m4.
20268
20269         * m4/longlong.m4 (jm_AC_TYPE_LONG_LONG): New macro.
20270
20271         * m4/longlong.m4: Renamed from ulonglong.m4.
20272         * m4/inttypes.m4: Renamed from inttypes_h.m4.
20273         * m4/uintmax_t.m4: Removed.
20274
20275 2001-08-13  Paul Eggert  <eggert@twinsun.com>
20276
20277         * lib/Makefile.am (unlocked-io.h): Do not append "_unlocked" twice.
20278         Port to Solaris 8, where 'sed' requires a space after the 'r'
20279         command, and where sh dislikes "$/".  Clean up the spacing a bit.
20280         Redirect output to $tmp just once.
20281
20282 2001-08-12  Paul Eggert  <eggert@sic.twinsun.com>
20283
20284         * lib/addext.c (<errno.h>): Include.
20285         (errno): Declare if not defined.
20286         (addext): Work correctly when pathconf returns -1 and leaves
20287         errno alone because there is no limit.  Also, work even if
20288         pathconf returns a value greater than SIZE_MAX.
20289
20290 2001-08-12  Jim Meyering  <meyering@lucent.com>
20291
20292         * m4/afs.m4, assert.m4, bison.m4, check-decl.m4, chown.m4, d-ino.m4,
20293         d-type.m4, dos.m4, error.m4, fnmatch.m4, fpending.m4, fstypename.m4,
20294         fsusage.m4, ftruncate.m4, getgroups.m4, glibc.m4, gnu-source.m4,
20295         group-member.m4, jm-glibc-io.m4, jm-macros.m4, jm-mktime.m4,
20296         jm-winsz1.m4, jm-winsz2.m4, lchown.m4, lib-check.m4, libintl.m4,
20297         link-follow.m4, ls-mntd-fs.m4, lstat.m4, malloc.m4, mbrtowc.m4,
20298         mbstate_t.m4, mbswidth.m4, memcmp.m4, nanosleep.m4, perl.m4,
20299         prereq.m4, putenv.m4, readdir.m4, realloc.m4, regex.m4, rename.m4,
20300         rmdir-errno.m4, search-libs.m4, st_dm_mode.m4, st_mtim.m4, stat.m4,
20301         strftime.m4, timespec.m4, unlink-busy.m4, uptime.m4, utimbuf.m4,
20302         utime.m4, utimes.m4, xstrtoumax.m4:
20303         Quote the first argument in each use of AC_DEFUN.
20304
20305 2001-08-12  Jim Meyering  <meyering@lucent.com>
20306
20307         * lib/xgetcwd.c (xgetcwd) [defined __GLIBC__ && __GLIBC__ >= 2]:
20308         Simply `return getcwd (NULL, 0);'.
20309         [! (defined __GLIBC__ && __GLIBC__ >= 2)]:
20310         Use 1300 as initial value for length, not PATH_MAX.
20311
20312         * lib/pathmax.h: Clean up cpp syntax.
20313
20314 2001-08-12  Jim Meyering  <meyering@lucent.com>
20315
20316         * lib/gettimeofday.c: New file.
20317         * lib/gtod.h: New file.
20318         * lib/Makefile.am (libfetish_a_SOURCES): Add gtod.h.
20319
20320 2001-08-05  Jim Meyering  <meyering@lucent.com>
20321
20322         * m4/jm-macros.m4: Require autoconf-2.52.
20323
20324 2001-08-04  Jim Meyering  <meyering@lucent.com>
20325
20326         * lib/error.h (__attribute__): Remove `|| __STRICT_ANSI__' from #if
20327         stmt, to get in sync with glibc.
20328
20329 2001-08-03  Paul Eggert  <eggert@twinsun.com>
20330
20331         The following changes are from gettext 0.10.39 as maintained by
20332         Bruno Haible.
20333
20334         * lib/mbswidth.h (MBSW_REJECT_UNPRINTABLE, MBSW_REJECT_INVALID):
20335         Renamed from MBSW_ACCEPT_UNPRINTABLE and MBSW_ACCEPT_INVALID
20336         with inverted sense.  All uses changed.
20337
20338         * lib/mbswidth.c: Don't include <limits.h>.
20339         Include <stdlib.h> and <string.h> unconditionally.
20340         (iswcntrl, mbsinit, ISCNTRL): New macros.
20341         (mbsnwidth): Use K&R style function declarations.
20342         Don't bother checking for MB_LEN_MAX == 1, since the compiler
20343         can optimize it when MB_CUR_MAX == 1.
20344         The width of control characters is zero, not 1.
20345
20346 2001-08-03  Paul Eggert  <eggert@twinsun.com>
20347
20348         The following changes are from gettext 0.10.39 as maintained by
20349         Bruno Haible, except that getline.m4 continues to use AC_LIBOBJ.
20350
20351         * m4/codeset.m4: Upgrade to serial AM1.
20352         (AM_LANGINFO_CODESET): Renamed from jm_LANGINFO_CODESET;
20353         all uses changed.  Quote first arg of AC_DEFUN.
20354         (am_cv_langinfo_codeset): Renamed from jm_cv_langinfo_codeset.
20355
20356         * m4/iconv.m4: Upgrade to serial AM2.
20357         (AM_ICONV): Renamed from jm_ICONV; all uses changed.
20358         Add --with-libconv-prefix.
20359         Quote first arg of AC_DEFUN.  Add description for ICONV_CONST.
20360         (am_cv_func_iconv): Renamed from jm_cv_func_iconv.
20361         (am_cv_lib_iconv): Renamed from jm_cv_lib_iconv.
20362         (am_cv_proto_iconv): Renamed from jm_cv_proto_iconv.
20363         * m4/jm-macros.m4 (jm_MACROS): Reflect s/jm_/AM_/ renamings.
20364
20365         * m4/c-bs-a.m4 (AC_C_BACKSLASH_A): Quote first arg of AC_DEFUN.
20366         * m4/getline.m4 (AM_FUNC_GETLINE): Likewise.
20367         * m4/glibc21.m4 (jm_GLIBC21): Likewise.
20368         * m4/inttypes_h.m4 (jm_AC_HEADER_INTTYPES_H): Likewise.
20369         * m4/isc-posix.m4 (AC_ISC_POSIX): Likewise.
20370         * m4/lcmessage.m4 (AM_LC_MESSAGES): Likewise.
20371         * m4/progtest.m4 (AM_PATH_PROG_WITH_TEST): Likewise.
20372         * m4/uintmax_t.m4 (jm_AC_TYPE_UINTMAX_T): Likewise.
20373         * m4/ulonglong.m4 (jm_AC_TYPE_UNSIGNED_LONG_LONG): Likewise.
20374
20375         * m4/getline.m4 (AM_FUNC_GETLINE): Don't bother checking for
20376         string.h any more.
20377
20378         * m4/progtest.m4 (AM_PATH_PROG_WITH_TEST): If not found, print "no",
20379         not the default value.
20380
20381         2001-06-25  Bruno Haible  <haible@clisp.cons.org>
20382         * m4/mbswidth.m4 (jm_PREREQ_MBSWIDTH): Don't require AM_C_PROTOTYPES.
20383         Also check for mbsinit.  Needed for SCO 3.2v5.0.2.
20384         Also include <string.h>; this is where AIX 3.2.5 declares wcwidth.
20385         Also check for iswcntrl, used for wcwidth fallback.
20386         Use AC_TRY_COMPILE to emulate AC_CHECK_DECLS, for portability
20387         to Autoconf 2.13.
20388
20389 2001-08-03  Jim Meyering  <meyering@lucent.com>
20390
20391         * m4/mbrtowc.m4 (jm_FUNC_MBRTOWC): Use `#include', not `@%:@include',
20392         as it was in the original.  Reported by Paul Eggert.
20393
20394 2001-07-16  Jim Meyering  <meyering@lucent.com>
20395
20396         * m4/gettimeofday.m4: New file.
20397         Prompted by a report from Bernhard Baehr.
20398
20399 2001-07-15  Jim Meyering  <meyering@lucent.com>
20400
20401         * m4/Makefile.am.in (Makefile.am): Remove most of the unlocked-io.h
20402         stuff. Now it's in ../Makefile.cfg.
20403
20404 2001-07-15  Jim Meyering  <meyering@lucent.com>
20405
20406         * lib/Makefile.am (EXTRA_DIST): Add unlocked-io.hin.
20407         (BUILT_SOURCES): Add unlocked-io.h.
20408         (io_functions): Define.
20409         (unlocked-io.h): New rule.
20410         (DISTCLEANFILES): Add unlocked-io.h.
20411         (all-local): Depend on unlocked-io.h, to ensure it is created.
20412
20413         * lib/unlocked-io.hin: New file
20414
20415         * lib/regex.c: Update from glibc.
20416
20417 2001-07-05  Jim Meyering  <meyering@lucent.com>
20418
20419         * lib/Makefile.am (noinst_HEADERS): Remove definition, per new automake
20420         recommendation.
20421         (libfetish_a_SOURCES): Put all .h files here instead.
20422         Remove a thus-exposed (better checks in automake) duplicate and
20423         two unnecessary .h files.
20424
20425 2001-07-04  Jim Meyering  <meyering@lucent.com>
20426
20427         * m4/Makefile.am.in (glibc-io.struct): New target.  Rework the code
20428         that generates jm-glibc-io.m4 so that it doesn't trigger any make
20429         distcheck failure.
20430
20431 2001-07-02  Jim Meyering  <meyering@lucent.com>
20432
20433         The following changes were prompted by suggestions from Bruno Haible.
20434
20435         * m4/jm-glibc-io.m4n: New file, the template from which jm-glibc-io.m4
20436         is now generated.
20437         * m4/Makefile.am.in (Makefile.am): Include jm-glibc-io.m4n in emitted
20438         definition of EXTRA_DIST.
20439         (Makefile.am): Emit the dependency, `all-local: jm-glibc-io.m4' to
20440         ensure that the generated file is created/updated whenever the list
20441         of $(unlocked_functions) is changed.
20442         (jm-glibc-io.m4): New rule.
20443         (unlocked-io.h): New rule -- currently unused.
20444
20445 2001-06-24  Jim Meyering  <meyering@lucent.com>
20446
20447         * m4/regex.m4 (jm_INCLUDED_REGEX): Use a quadrigraph to represent an
20448         unmatched right bracket, rather than kludging it with an extra,
20449         falsely-matching quote in a comment.  Patch by Akim Demaille.
20450
20451 2001-06-11  Jim Meyering  <meyering@lucent.com>
20452
20453         * lib/regex.c: Update from GNU libc.
20454
20455 2001-05-27  Jim Meyering  <meyering@lucent.com>
20456
20457         * m4/prereq.m4 (jm_PREREQ_READUTMP): Check for ut_type in struct utmpx.
20458         Check for ut_type in struct utmp.
20459
20460 2001-05-27  Jim Meyering  <meyering@lucent.com>
20461
20462         * lib/readutmp.h (UT_TYPE): Define.
20463
20464 2001-05-24  Jim Meyering  <meyering@lucent.com>
20465
20466         * lib/argmatch.c: Include "quote.h".
20467         (argmatch_invalid): Remove explicit `' quotes.  Instead, use the
20468         quote function.  Reported by Göran Uddeborg.
20469
20470 2001-05-22  Jim Meyering  <meyering@lucent.com>
20471
20472         * m4/strftime.m4 (_jm_STRFTIME_PREREQS): Don't use AC_LIBOBJ(strftime),
20473         now that we use the package-supplied version unconditionally.
20474         (jm_FUNC_STRFTIME): Don't replace strftime, for the same reason.
20475
20476 2001-05-21  Jim Meyering  <meyering@lucent.com>
20477
20478         * m4/regex.m4: Change a couple backticks to single quotes to avoid
20479         shell syntax errors.
20480
20481 2001-05-21  Alexandre Duret-Lutz  <duret_g@epita.fr>
20482
20483         * m4/dos.m4 (jm_AC_DOS): Check for _WIN32, __WIN32__, and __MSDOS__.
20484
20485 2001-05-20  Paul Eggert  <eggert@twinsun.com>
20486
20487         * m4/strftime.m4 (jm_FUNC_GNU_STRFTIME):
20488         Don't bother to check library strftime, since
20489         we'll be using our own my_strftime function anyway.
20490         Define my_strftime instead of strftime.
20491
20492 2001-05-20  Alexandre Duret-Lutz  <duret_g@epita.fr>
20493
20494         * lib/dirname.c (dir_name): Compute append_dot using path, not newpath
20495         which is not yet declared.
20496
20497 2001-05-15  Jim Meyering  <meyering@lucent.com>
20498
20499         * m4/regex.m4: Use proper quoting so brackets appear in the test
20500         program.
20501         Reported by, and with help from, Bruno Haible.
20502
20503 2001-05-13  Jim Meyering  <meyering@lucent.com>
20504
20505         * m4/jm-macros.m4 (major_t, minor_t): Define to unsigned int if
20506         undefined.
20507
20508 2001-05-11  Paul Eggert  <eggert@twinsun.com>
20509
20510         dirname code cleanup.  base_name now behaves more compatibly
20511         with POSIX basename when given file names that have trailing
20512         slashes, and similarly for dir_name.  Add new primitives
20513         base_len and dir_len.  Put the directory-name-related decls
20514         into dirname.h.
20515
20516         * lib/addext.c (ISSLASH, base_name): Remove; now in dirname.h.
20517         * lib/backupfile.c (base_name): Likewise.
20518         * lib/basename.c (FILESYSTEM_PREFIX_LEN, PARAMS, ISSLASH): Likewise.
20519         * lib/dirname.c (FILESYSTEM_PREFIX_LEN, ISSLASH): Likewise.
20520         * lib/makepath.c (strip_trailing_slashes): Likewise.
20521         * lib/path-concat.c (DIRECTORY_SEPARATOR, FILESYSTEM_PREFIX_LEN,
20522         ISSLASH): Likewise.
20523         * lib/rename.c (strip_trailing_slashes): Likewise.
20524         * lib/same.c (base_name): Likewise.
20525         * lib/stripslash.c (ISSLASH): Likewise.
20526
20527         * lib/addext.c: Include <dirname.h> after size_t is defined.
20528         * lib/backupfile.c: Likewise.
20529
20530         * lib/addext.c (addext): Use base_len to trim redundant
20531         trailing slashes instead of doing it ourselves.
20532         But do not trim the last slash if it is not redundant.
20533
20534         * lib/backupfile.c (find_backup_file_name,
20535         max_backup_version): Use base_len instead of rolling it ourselves.
20536         Handle the case of "" and (on DOS) "C:" correctly.
20537
20538         * lib/basename.c: Do not include <stdio.h>, <assert.h>; no longer
20539         needed. Include <string.h>, <dirname.h>.
20540         (base_name): Allow file names ending in slashes, other than names
20541         that are all slashes.  In this case, return the basename followed
20542         by the slashes.  This is more general, and can be used in places
20543         where the original base_name purposely had an assertion failure.
20544         (base_len): New function.
20545
20546         * lib/dirname.c: Include <string.h> instead of <stdlib.h>.
20547         Do not include <assert.h>; no longer needed.
20548         Include xalloc.h.
20549         (memrchr): Remove decl.
20550         (dir_name_r): Remove.
20551         (dir_len): Renamed from dirlen.  All callers changed.
20552         Rewrite in terms of base_name, for simplicity and consistency.
20553         (dir_name): Never return NULL.  All callers changed.
20554         Do not include <stdlib.h> in test program; no longer needed.
20555         return 0; is fine for test program.
20556
20557         * lib/dirname.h (DIRECTORY_SEPARATOR, ISSLASH, FILESYSTEM_PREFIX_LEN):
20558         New macros.
20559         (base_name, base_len, dir_len, strip_trailing_slashes): New decls.
20560
20561         * lib/path-concat.c (path_concat): Use base_len to compute
20562         base length, not strlen; this means we cannot rely on memcpy
20563         to null-terminate.
20564
20565         * lib/same.c (STREQ): Remove.
20566         (same_name): Handle the case where the basename ends in trailing '/'.
20567
20568         * lib/stripslash.c (strip_trailing_slashes): Return nonzero if
20569         a slash was stripped.  Do not strip the last slash after a
20570         file system prefix.
20571
20572 2001-05-11  Paul Eggert  <eggert@twinsun.com>
20573
20574         * lib/Makefile.am (libfetish_a_SOURCES):
20575         Add strftime.c, since we now compile it on all hosts.
20576
20577         * lib/strftime.c (my_strftime):
20578         Define to nstrftime if emacs, but only if my_strftime is not defined.
20579         (extra_args, extra_args_spec, extra_args_spec_iso): Rename from
20580         ut_argument, ut_argument_spec, ut_argument_spec_iso, respectively.
20581         Add one more extra argument: a nanoseconds value.
20582         All uses changed.
20583         (ns): New macro.
20584         (my_strftime function): Add %N format.
20585         (emacs_strftimeu): Renamed from emacs_strftime,
20586         with extra ut argument.
20587
20588 2001-05-09  Paul Eggert  <eggert@twinsun.com>
20589
20590         * m4/jm-macros.m4 (jm_MACROS): Do not check for fseeko; no longer used.
20591
20592 2001-04-21  Jim Meyering  <meyering@lucent.com>
20593
20594         * m4/rmdir-errno.m4: Write to a new file, so that a restrictive umask
20595         doesn't interfere.
20596
20597 2001-04-21  Alexandre Duret-Lutz  <duret_g@epita.fr>
20598
20599         * m4/ftruncate.m4: Check for chsize.
20600         Link with ftruncate.o unconditionally if ftruncate is missing.
20601         This was required when cross-compiling to i586-mingw32msvc.
20602
20603 2001-04-08  Jim Meyering  <meyering@lucent.com>
20604
20605         * lib/getdate.y (get_date): Set tm_isdst to -1 to ensure that it is
20606         recomputed; that's necessary when the offset spans a DST transition.
20607         Patch by David J. MacKenzie.  Reported by Hon-Yin Kok.
20608
20609 2001-04-02  Jim Meyering  <meyering@lucent.com>
20610
20611         * lib/regex.h, regex.c: Update from GNU libc.
20612
20613 2001-03-24  Jim Meyering  <meyering@lucent.com>
20614
20615         * m4/jm-macros.m4: Require autoconf-2.49d.
20616
20617 2001-03-20  Bruno Haible  <haible@clisp.cons.org>
20618
20619         * m4/iconv.m4 (jm_ICONV): Recommend GNU libiconv.
20620
20621 2001-03-19  Paul Eggert  <eggert@twinsun.com>
20622
20623         * lib/version-etc.c (version_etc_copyright): Update to 2001.
20624
20625 2001-03-17  Jim Meyering  <meyering@lucent.com>
20626
20627         * m4/memcmp.m4 (jm_AC_FUNC_MEMCMP): Remove my copy of AC_FUNC_MEMCMP,
20628         now that the version in autoconf is equivalent.
20629         (jm_FUNC_MEMCMP): Adjust to use AC_FUNC_MEMCMP.
20630
20631         * m4/error.m4 (jm_PREREQ_ERROR): Invoke AC_FUNC_STRERROR_R.
20632         Suggestion from Akim Demaille.
20633
20634         * m4/prereq.m4 (jm_PREREQ): Add jm_PREREQ_TEMPNAME.
20635         (jm_PREREQ_TEMPNAME): New function.
20636
20637 2001-03-16  Paul Eggert  <eggert@twinsun.com>
20638
20639         * lib/tempname.c (uint64_t): Define to uintmax_t if
20640         not defined, and if UINT64_MAX is not defined.
20641         Required at least for Vax Ultrix4.3, which doesn't define uint64_t.
20642         Reported by John David Anglin.
20643
20644 2001-03-15  Bruno Haible  <haible@clisp.cons.org>
20645
20646         * lib/localcharset.c (locale_charset): Allow wildcard syntax. Also
20647         resolve alias if codeset is empty.
20648         * lib/config.charset (BeOS): Use wildcard syntax.
20649
20650 2001-03-13  Jim Meyering  <meyering@lucent.com>
20651
20652         * lib/path-concat.c (path_concat)
20653         [FILESYSTEM_ACCEPTS_DRIVE_LETTER_PREFIX]: Don't insert a backslash when
20654         concatenating e.g., `C:' and `foo'.
20655         From Bruno Haible.
20656
20657 2001-03-06  Bruno Haible  <haible@clisp.cons.org>
20658
20659         * lib/localcharset.c (locale_charset): Don't use
20660         setlocale(LC_CTYPE,NULL). Don't return NULL.
20661         * lib/unicodeio.c (print_unicode_char): Simplify accordingly.
20662
20663 2001-03-06  Bruno Haible  <haible@clisp.cons.org>
20664
20665         * lib/config.charset: Update for FreeBSD 4.2 and OSF/1 5.1. Add
20666         support for DOS/DJGPP.
20667
20668 2001-03-01  Paul Eggert  <eggert@twinsun.com>
20669
20670         * m4/jm-macros.m4 (jm_MACROS): Use mkstemp replacement if the system
20671         lacks mkstemp.  Compile our own tempname.c if we compile our own
20672         mkstemp.c, as mkstemp relies on tempname.
20673
20674 2001-03-01  Jim Meyering  <meyering@lucent.com>
20675
20676         * m4/dos.m4 (jm_AC_DOS): Remove extra backslashes, now that
20677         AH_VERBATIM really does output its argument verbatim.
20678
20679 2001-02-28  Paul Eggert  <eggert@twinsun.com>
20680
20681         * lib/Makefile.am (libfetish_a_SOURCES):
20682         Add dup-safer.c, fopen-safer.c.
20683         (noinst_HEADERS): Add stdio-safer.h, unistd-safer.h.
20684
20685         * lib/dup-safer.c, lib/fopen-safer.c, lib/stdio-safer.h,
20686         lib/unistd-safer.h: New files.
20687
20688 2001-02-25  Paul Eggert  <eggert@twinsun.com>
20689
20690         The mkstemp replacement is taken from glibc 2.2.2, with some
20691         portability fixes for use outside glibc, as follows:
20692
20693         * lib/tempname.c (struct_stat64): New macro.
20694         (direxists, __gen_tempname): Use it.
20695         This avoids a portability problem with Solaris 8.
20696
20697         * lib/tempname.c (<config.h>): Include if HAVE_CONFIG_H.
20698         (<stddef.h>, <stdint.h>, <string.h>):
20699         Include only if STDC_HEADERS || _LIBC.
20700         (<fcntl.h>): Include only if HAVE_FCNTL_H || _LIBC.
20701         (<unistd.h>): Include only if HAVE_UNISTD_H || _LIBC.
20702         (<sys/time.h>): Include only if HAVE_SYS_TIME_H || _LIBC.
20703         (__set_errno): Define this macro if <errno.h> doesn't.
20704         (P_tmpdir, TMP_MAX, __GT_FILE, __GT_BIGFILE, __GT_DIR, __GT_NOCREATE):
20705         Define these macros if <stdio.h> doesn't.
20706         (S_ISDIR, S_IRUSR, S_IWUSR, S_IXUSR):
20707         Define these macros if <sys/stat.h>
20708         doesn't.  Ignore <sys/stat.h> S_ISDIR if STAT_MACROS_BROKEN.
20709         (stat64, __getpid, __gettimeofday, __mkdir, __open, __open64, lxstat64,
20710         __xstat64): Define if not _LIBC.
20711         (__secure_getenv): Define if ! (HAVE___SECURE_GETENV || _LIBC).
20712         (__gen_tempname): Invoke gettimeofday only if
20713         HAVE_GETTIMEOFDAY || _LIBC;
20714         otherwise, fall back on plain "time".
20715         Use macros like S_IRUSR | S_IWUSR rather than octal values like 0600.
20716
20717         * lib/mkstemp.c (__GT_FILE): Define to zero if not defined.
20718
20719         * lib/mkstemp.c, tempname.c: New files, taken from glibc 2.2.2.
20720
20721 2001-02-18  Paul Eggert  <eggert@twinsun.com>
20722
20723         * m4/jm-macros.m4 (jm_CHECK_ALL_HEADERS): Check for sys/resource.h.
20724
20725 2001-02-17  Paul Eggert  <eggert@twinsun.com>
20726
20727         * m4/mbrtowc.m4: New file, defining jm_FUNC_MBRTOWC.
20728         * m4/mbswidth.m4 (jm_PREREQ_MBSWIDTH):
20729         Use jm_FUNC_MBRTOWC, not AC_CHECK_FUNCS(mbrtowc).
20730         * m4/prereq.m4 (jm_PREREQ_QUOTEARG): Likewise.
20731
20732 2001-02-17  Paul Eggert  <eggert@twinsun.com>
20733
20734         * lib/mbswidth.c, quotearg.c (mbrtowc, mbsinit):
20735         Remove workaround macros for hosts that have mbrtowc but not
20736         mbstate_t, as we now insist on proper declarations for both
20737         before using mbrtowc.
20738
20739 2001-02-17  Jim Meyering  <meyering@lucent.com>
20740
20741         * m4/ls-mntd-fs.m4 (jm_LIST_MOUNTED_FILESYSTEMS): Don't check for
20742         getmntent via AC_CHECK_FUNCS, since that would get a `no' and disrupt
20743         further attempts by AC_FUNC_GETMNTENT to check with e.g., -lgen on
20744         UnixWare 7.1.1.
20745
20746         * m4/mbrtowc.m4 (jm_FUNC_MBRTOWC): Adapt to use AC_CACHE_CHECK etc.,
20747         rather than AC_CACHE_VAL.
20748
20749 2001-02-17  Jim Meyering  <meyering@lucent.com>
20750
20751         * lib/strtoul.c: Sync from GNU libc.  Use double quotes, not <...>
20752         around included file name.
20753
20754         * lib/strnlen.c (__strnlen): Merge in a change from GNU libc.
20755
20756         * lib/strftime.c: Update from GNU libc (the only changes were to
20757         comments).
20758
20759 2001-02-17  Jim Meyering  <meyering@lucent.com>
20760
20761         * lib/regex.c: Update from libc.
20762
20763 2001-02-17  Bruno Haible  <haible@clisp.cons.org>
20764
20765         * lib/mbswidth.h (mbswidth): Also define as macro, to avoid prototype
20766         clash.
20767
20768 2001-02-16  Paul Eggert  <eggert@twinsun.com>
20769
20770         * lib/alloca.c (malloc): Undef before defining, since stdlib.h
20771         may have defined it.  Needed for Encore Umax-3.0.9.16b systems.
20772         Reported by Mark Hounschell via Paul Eggert.
20773
20774 2001-02-07  Jim Meyering  <meyering@lucent.com>
20775
20776         * m4/regex.m4 (jm_INCLUDED_REGEX): Add a test for the latest bug.
20777
20778 2001-02-05  Jim Meyering  <meyering@lucent.com>
20779
20780         * m4/jm-macros.m4: Require autoconf-2.14d (not yet released), because
20781         it includes the patch required for `large file' support with at least
20782         HP-UX's 10.20 /bin/cc.
20783
20784 2001-02-03  Jim Meyering  <meyering@lucent.com>
20785
20786         * m4/ls-mntd-fs.m4 (jm_LIST_MOUNTED_FILESYSTEMS): Restore prior use of
20787         AS_IF, now that it works once again (mysteriously).
20788         * m4/fsusage.m4 (jm_FILE_SYSTEM_USAGE): Likewise.
20789
20790 2001-01-30  Jim Meyering  <meyering@lucent.com>
20791
20792         Don't use filenames that are 8.3-equivalent to "conftest" on DOS.
20793         * m4/chown.m4: Rename conftestchown to conftest.chown.
20794         * m4/rename.m4: s/conftestdir/conftest.d1/ and
20795         s/conftestdir2/conftest.d2/.
20796         * m4/utimes.m4: s/conftestdata/conftest.data/
20797         Inspired by Pavel Roskin's change in autoconf.
20798
20799 2001-01-30  Bruno Haible  <haible@clisp.cons.org>
20800
20801         * lib/config.charset: Update for FreeBSD 4.2.
20802
20803 2001-01-27  Jim Meyering  <meyering@lucent.com>
20804
20805         * m4/ls-mntd-fs.m4 (jm_LIST_MOUNTED_FILESYSTEMS): Open-code what was
20806         a use of AS_IF.
20807         * m4/fsusage.m4 (jm_FILE_SYSTEM_USAGE): Likewise.
20808
20809 2001-01-26  Jim Meyering  <meyering@lucent.com>
20810
20811         * m4/prereq.m4 (jm_PREREQ_QUOTEARG): Check for stddef.h, now that
20812         quotearg.c includes it.
20813
20814 2001-01-26  Jim Meyering  <meyering@lucent.com>
20815
20816         * lib/quotearg.c: Include stddef.h.
20817         * lib/quote.c: Include stddef.h.
20818         Reported by Axel Kittenberger.
20819
20820         * lib/xmalloc.c [HAVE_DONE_WORKING_MALLOC_CHECK]: Enclose error-evoking
20821         line in double quotes so that it evokes a better diagnostic.
20822         [HAVE_DONE_WORKING_REALLOC_CHECK]: Likewise.
20823         Reported by Axel Kittenberger.
20824
20825 2001-01-24  Stefan Monnier  <monnier@cs.yale.edu>
20826
20827         * regex.c (mutually_exclusive_p): Don't blindly handle `charset_not'
20828         as if it was a `charset'.
20829
20830 2001-01-21  Bruno Haible  <haible@clisp.cons.org>
20831
20832         * m4/iconv.m4 (jm_ICONV): Also check whether the iconv declaration
20833         has const.
20834
20835 2001-01-21  Bruno Haible  <haible@clisp.cons.org>
20836
20837         * lib/unicodeio.c (print_unicode_char): Cast the second iconv() arg,
20838         to avoid a warning.  Add back 'const' to inptr.
20839
20840 2001-01-20  Jim Meyering  <meyering@lucent.com>
20841
20842         Be sure that headers are checked before used in code compiled
20843         for the type checks.
20844         * m4/jm-macros.m4 (jm_MACROS): Remove all header checks.
20845         In place of that, invoke jm_CHECK_ALL_TYPES.
20846         (jm_CHECK_ALL_HEADERS): New functions with the above checks.
20847         (jm_CHECK_ALL_TYPES): Require jm_CHECK_ALL_HEADERS.
20848         Alan Iwi reported a build failure on an f300-fujitsu-uxpv4.1_ES;
20849         The check for ssize_t was mistakenly run before the test for unistd.h.
20850
20851         The configure-time check for stdbool.h was missing.
20852         * m4/prereq.m4 (jm_PREREQ): Add jm_PREREQ_HASH.
20853         (jm_PREREQ_HASH): New function.
20854
20855 2001-01-17  Jim Meyering  <meyering@lucent.com>
20856
20857         * m4/fsusage.m4 (jm_FILE_SYSTEM_USAGE): Use AS_IF, not AS_IFELSE,
20858         for autoconf-2.49c.
20859         * m4/ls-mntd-fs.m4 (jm_LIST_MOUNTED_FILESYSTEMS): Likewise.
20860
20861 2001-01-16  Jim Meyering  <meyering@lucent.com>
20862
20863         * lib/basename.c: Include <stdio.h>, needed by assert on SunOS 4.
20864         From Bruno Haible.
20865
20866 2001-01-14  Jim Meyering  <meyering@lucent.com>
20867
20868         * m4/rename.m4: Use temporary directories named conftestdir{,2}, not
20869         foo and bar.  Create conftestdir/ in the script, not in the C code.
20870         Remove directories in the script, not in the C code.
20871         Remove conftestdir{,2} before trying to create the directory.
20872         Make the entire configure script fail if the mkdir fails.
20873
20874 2001-01-14  Jim Meyering  <meyering@lucent.com>
20875
20876         * lib/rename.c: New file.  From Volker Borchert.
20877         Include stdlib.h, string.h or strings.h, and xalloc.h.
20878         Use strip_trailing_slashes rather than open-coding it.
20879
20880 2001-01-03  Paul Eggert  <eggert@twinsun.com>
20881
20882         * lib/strftime.c: Sync with glibc time/strftime.c 1.81.
20883
20884 2001-01-03  Jim Meyering  <meyering@lucent.com>
20885
20886         * lib/unicodeio.c (print_unicode_char): Remove `const' from declaration
20887         of local `inptr' to avoid warning with some system declarations of
20888         iconv.
20889
20890 2001-01-02  Volker Borchert  <bt@teknon.de>
20891
20892         * m4/rename.m4: New file.
20893         * m4/jm-macros.m4 (jm_MACROS): Require vb_FUNC_RENAME.
20894
20895 2001-01-01  Jim Meyering  <meyering@lucent.com>
20896
20897         * m4/prereq.m4 (jm_PREREQ_READUTMP): Include utmp.h (if available),
20898         even on systems with utmpx.h.  It's necessary for the declaration of
20899         utmp's ut_user member.  Reported by Andreas Jaeger.
20900
20901         * m4/check-decl.m4 (jm_CHECK_DECLS): Include grp.h and pwd.h if
20902         available. They are required for the declarations of getgrgid and
20903         getpwuid resp.
20904         (_jm_DECL_HEADERS): Check for grp.h and pwd.h.
20905         Reported by Andreas Jaeger.
20906
20907 2001-01-01  Alexandre Duret-Lutz  <duret_g@epita.fr>
20908
20909         * m4/libintl.m4 (AM_GNU_GETTEXT): Define MKINSTALLDIRS by
20910         expanding the value of $ac_aux_dir, as in AM_MISSING_HAS_RUN,
20911         so `make install' also works in VPATH builds.
20912
20913 2000-12-31  Alexandre Duret-Lutz  <duret_g@epita.fr>
20914
20915         * m4/libintl.m4 (AM_WITH_NLS): When using AC_CONFIG_AUX_DIR,
20916         prepend $(top_srcdir) to the value of MKINSTALLDIRS so that it
20917         can be used in subdirectories.
20918
20919 2000-12-29  Paul Eggert  <eggert@twinsun.com>
20920
20921         * lib/modechange.c: Do not assume that mode_t uses the
20922         traditional octal encoding.  E.g. "chmod 1 FOO" should set
20923         the other-execute bit of FOO even if S_IXOTH != 1.
20924
20925         (SUID, SGID, SVTX, RUSR, WUSR, XUSR, RGRP, WGRP, XGRP, ROTH,
20926         WOTH, XOTH, ALLM): New macros.
20927         (S_ISUID, S_ISGID, S_ISVTX, S_IRUSR, S_IWUSR, S_IXUSR,
20928          S_IRGRP, S_IWGRP, S_IXGRP, S_IROTH, S_IWOTH, S_IXOTH):
20929         Use them.
20930         (S_ISGID): Fix typo; it was defaulting to the same value as S_ISUID.
20931         (S_IRWXU, S_IRWXG, S_IRWXO): Specify defaults in terms of the above.
20932         (mode_compile):
20933         No need to use uintmax_t; unsigned long is long enough.
20934         Don't bother to get suffix since we don't use it.
20935
20936 2000-12-26  Jim Meyering  <meyering@lucent.com>
20937
20938         * m4/dos.m4 (jm_AC_DOS): Rewrite (though it's still a stub) to work
20939         better with autoheader.
20940
20941 2000-12-24  Jim Meyering  <meyering@lucent.com>
20942
20943         * lib/hash.c (is_prime): Return explicit boolean values.
20944         (hash_get_first): Return NULL to appease Irix5.6's 89.
20945         Reported by Nelson Beebe.
20946
20947 2000-12-19  Bruno Haible  <haible@clisp.cons.org>
20948
20949         * lib/localcharset.c (locale_charset): Add support for Win32.
20950
20951 2000-12-18  Paul Eggert  <eggert@twinsun.com>
20952
20953         * lib/physmem.h, physmem.c: New files.
20954
20955         * lib/Makefile.am (libfetish_a_SOURCES): Add physmem.c.
20956         (noinst_HEADERS): Add physmem.h.
20957
20958         * lib/xstrtol.c (__xstrtol): Add undocumented suffixes 'g' and
20959         't' for compatibility with Solaris 8 sort.
20960
20961 2000-12-18  Bruno Haible  <haible@clisp.cons.org>
20962
20963         * lib/config.charset: Add support for BeOS.
20964
20965 2000-12-17  Jim Meyering  <meyering@lucent.com>
20966
20967         * m4/dos.m4 (jm_AC_DOS): New file and macro.
20968         * m4/jm-macros.m4 (jm_MACROS): Require jm_AC_DOS.
20969
20970 2000-12-16  Jim Meyering  <meyering@lucent.com>
20971
20972         This bug had a serious impact on chown: `chown N:M FILE' (for integer
20973         N and M) would have treated it like `chown N:N FILE'.
20974
20975         * lib/userspec.c (parse_user_spec): Fix typo: s/u/g/.
20976
20977 2000-12-16  Jim Meyering  <meyering@lucent.com>
20978
20979         * lib/getusershell.c [!SHELLS_FILE && __DJGPP__]: Define
20980         SHELLS_FILE to a file name that's useful on djgpp systems.
20981         Include stdlib.h.
20982         (ADDITIONAL_DEFAULT_SHELLS): Define.
20983         (default_shells): Prepend ADDITIONAL_DEFAULT_SHELLS.
20984         Based mostly on a patch from Prashant TR.
20985
20986 2000-12-16  Bruno Haible  <haible@clisp.cons.org>
20987
20988         * lib/config.charset: Add ISO-8859-3, BIG5HKSCS, GB18030, JOHAB,
20989         VISCII, CP874, CP949, CP950, CP1250, CP1253, CP1254, CP1255, CP1256,
20990         CP1257 to the list of canonical encodings. Rename EUC-CN to GB2312.
20991
20992 2000-12-08  Andreas Schwab  <schwab@suse.de>
20993
20994         * lib/mbswidth.c (mbsnwidth): Don't loop endlessly when called with an
20995         invalid mulitbyte sequence and with the MBSW_ACCEPT_INVALID flag set.
20996
20997 2000-12-07  Jim Meyering  <meyering@lucent.com>
20998
20999         * lib/stripslash.c (ISSLASH): Define.
21000         (strip_trailing_slashes): Use ISSLASH rather than comparing against
21001         `/'.
21002         From Prashant TR.
21003
21004         * lib/dirname.c (FILESYSTEM_PREFIX_LEN): Define.
21005         (dir_name_r): Declare this function as static.
21006         [BACKSLASH_IS_PATH_SEPARATOR]: Fix a bug that'd
21007         manifest itself on a name containing a mix of slashes and
21008         backslashes.
21009         Make this function work with names starting with a DOS-style
21010         drive letter and colon prefix.
21011         (dir_name): Append `.' if necessary.
21012         Based mostly on patches from Prashant TR and Eli Zaretskii.
21013
21014         * lib/dirname.h (dir_name_r): Remove prototype.
21015
21016 2000-12-06  Paul Eggert  <eggert@twinsun.com>
21017
21018         * m4/off_t-format.m4: Remove this file.
21019         * m4/jm-macros.m4 (jm_MACROS): Remove jm_SYS_OFF_T_PRINTF_FORMAT.
21020
21021 2000-12-06  Jim Meyering  <meyering@lucent.com>
21022
21023         * m4/xstrtoumax.m4 (jm_AC_PREREQ_XSTRTOUMAX): If we need the
21024         replacement strtoull, we may well need the replacement strtoul, too.
21025         Check for declarations of strtoul and strtoull.
21026         Check for strtol.  Mainly as a cue to cause automake to include
21027         strtol.c -- that file is included by each of strtoul.c and strtoull.c.
21028         Check for limits.h -- strtol.c needs it.
21029
21030 2000-12-05  Jim Meyering  <meyering@lucent.com>
21031
21032         * lib/dirname.c (dir_name_r): Add `const' in a few local declarations.
21033
21034 2000-12-04  Jim Meyering  <meyering@lucent.com>
21035
21036         * lib/path-concat.c: [!HAVE_DECL_MALLOC]: Declare malloc.
21037         Also include memory.h, stdlib.h, unistd.h if appropriate.
21038         Reported by Andreas Jaeger (conflicting declaration of malloc).
21039
21040 2000-12-02  Jim Meyering  <meyering@lucent.com>
21041
21042         * m4/off_t-format.m4 (OFF_T_PRINTF_FORMAT_STRING): New file/macro.
21043         * m4/jm-macros.m4 (jm_MACROS): require it.
21044
21045 2000-12-02  Jim Meyering  <meyering@lucent.com>
21046
21047         * lib/closeout.h: Make idempotent, to avoid some obscure warnings.
21048
21049 2000-12-01  Paul Eggert  <eggert@twinsun.com>
21050
21051         * lib/memrchr.c: Include <config.h> before any system include file.
21052
21053 2000-11-30  Jim Meyering  <meyering@lucent.com>
21054
21055         * m4/jm-macros.m4 (jm_MACROS): Check for stdint.h.
21056
21057 2000-11-30  Jim Meyering  <meyering@lucent.com>
21058
21059         * m4/getloadavg.m4: s/ifval/m4_ifval/ to accommodate new autoconf.
21060
21061 2000-11-29  Paul Eggert  <eggert@twinsun.com>
21062
21063         * lib/dirname.c (dir_name_r): Fix typo: int -> size_t.
21064
21065 2000-11-26  Jim Meyering  <meyering@lucent.com>
21066
21067         * lib/memcoll.c: Include sys/types.h.  From Werner Almesberger.
21068
21069 2000-11-22  Paul Eggert  <eggert@twinsun.com>
21070
21071         * lib/strftime.c (my_strftime): Do not invoke mbrlen with a
21072         size of (size_t) -1; it's not portable.
21073
21074 2000-11-17  Jim Meyering  <meyering@lucent.com>
21075
21076         * lib/strstr.c: Update from GNU libc.
21077
21078 2000-11-17  Akim Demaille  <akim@epita.fr>
21079
21080         * lib/obstack.h: Formatting changes.
21081         (obstack_grow, obstack_grow0): Don't cast WHERE at all: that would
21082         prevent type checking.
21083         (obstack_ptr_grow, obstack_ptr_grow_fast): When assigning, don't
21084         cast the value to (void *): assigning a `foo *' to a `void *'
21085         variable is valid.
21086         (obstack_int_grow, obstack_int_grow_fast): Don't cast AINT to int.
21087
21088 2000-11-16  Jim Meyering  <meyering@lucent.com>
21089
21090         * lib/strverscmp.c: Incorporate weak-alias-related changes from glibc.
21091
21092 2000-11-11  Jim Meyering  <meyering@lucent.com>
21093
21094         * lib/error.c: Add a couple #includes, merging from GNU libc version.
21095
21096 2000-11-10  Jim Meyering  <meyering@lucent.com>
21097
21098         * lib/obstack.h: Update from GNU libc.
21099         * lib/obstack.c: Likewise.
21100
21101 2000-11-08  Bruno Haible  <haible@clisp.cons.org>
21102
21103         * m4/jm-macros.m4 (jm_MACROS): Add test for wcrtomb.
21104
21105 2000-11-06  Paul Eggert  <eggert@twinsun.com>
21106
21107         * lib/getusershell.c (setusershell): Use rewind rather than
21108         fseek/fseeko, to avoid configuration hassles with fseeko.
21109         Don't bother opening SHELLS_FILE if shellstream is NULL;
21110         it's not necessary.
21111
21112 2000-11-05  Jim Meyering  <meyering@lucent.com>
21113
21114         * lib/makepath.h (make_dir): Declare.
21115         * lib/makepath.c (make_dir): Remove `static' attribute.
21116         Tweak a comment.
21117
21118 2000-11-04  Jim Meyering  <meyering@lucent.com>
21119
21120         * m4/regex.m4: Use the `m4_' prefix on `syscmd' and `m4_sysval'.
21121
21122 2000-11-04  Alexandre Duret-Lutz  <duret_g@epita.fr>
21123
21124         * lib/hash.c (hash_get_next): Fix a thinko:  when ENTRY is the
21125         last one in a bucket, advance to the next bucket.
21126
21127 2000-11-02  Vesselin Atanasov  <vesselin@bgnet.bg>
21128
21129         * lib/fnmatch.c: Do not comment out all the code if we are using
21130         the GNU C library, because in some cases we are replacing buggy
21131         code in the GNU C library itself.
21132
21133 2000-10-30  Stefan Monnier  <monnier@cs.yale.edu>
21134
21135         * regex.c (re_iswctype, re_wctype_to_bit): Fix braino.
21136         (regex_compile): Catch bogus \(\1\).
21137
21138 2000-10-30  Paul Eggert  <eggert@twinsun.com>
21139
21140         * lib/fnmatch.c (FOLD): Do not assume that characters are unsigned.
21141         (fnmatch): Fix some FNM_FILE_NAME and FNM_LEADING_DIR bugs,
21142         e.g. fnmatch("d*/*1", "d/s/1", FNM_FILE_NAME) incorrectly yielded zero.
21143
21144 2000-10-30  Paul Eggert  <eggert@twinsun.com>
21145
21146         * lib/error.h, getline.h, modechange.h:
21147         Remove "2000" from Copyright line, as the file hasn't been
21148         changed this year other than in the copyright notice.
21149
21150         * lib/xalloc.h: Add "2000" to Copyright line, as this file
21151         was changed this year.
21152
21153 2000-10-29  Jim Meyering  <meyering@lucent.com>
21154
21155         * m4/fsusage.m4: s/AC_SHELL_IFELSE/AS_IFELSE/ to match autoconf
21156         renaming.
21157         * m4/ls-mntd-fs.m4: Likewise
21158
21159 2000-10-29  Jim Meyering  <meyering@lucent.com>
21160
21161         * lib/xstat.in: Fix grammar in comment.
21162
21163 2000-10-29  Greg Louis  <glouis@dynamicro.on.ca>
21164
21165         * lib/regex.h (__restrict_arr): Move definition out of #ifndef block.
21166         Required because egcs-2.91.66 (aka 1.1.2) defines __restrict, but
21167         doesn't define __restrict_arr.
21168
21169 2000-10-28  Jim Meyering  <meyering@lucent.com>
21170
21171         * m4/prereq.m4 (jm_PREREQ): Add jm_PREREQ_MEMCHR.
21172         (jm_PREREQ_MEMCHR): New function.
21173
21174 2000-10-28  Jim Meyering  <meyering@lucent.com>
21175
21176         * lib/memchr.c: Update from libc.
21177         Adjust for portability:
21178         [HAVE_STDLIB_H]: Include stdlib.h.
21179         [HAVE_BP_SYM_H || _LIBC]: Guard inclusion of bp-sym.h.
21180         Undef __memchr, too.
21181         [!weak_alias]: Define __memchr to memchr.
21182
21183         * lib/regex.c: Update from libc.
21184         * lib/regex.h: Likewise.
21185         * lib/getopt1.c: Likewise.
21186         * lib/memcmp.c: Likewise.
21187
21188         * lib/getusershell.c (setusershell) [HAVE_FSEEKO]: Use fseeko.
21189         Avoid using fseek, when possible -- it's broken by design.
21190         Patch by Ulrich Drepper.
21191
21192 2000-10-27  Stefan Monnier  <monnier@cs.yale.edu>
21193
21194         * regex.c (POP_FAILURE_REG_OR_COUNT, re_match_2_internal)
21195         (re_match_2_internal, re_match_2_internal, re_match_2_internal):
21196         Giving in to popular pressure to shut up the compiler with casts.
21197
21198 2000-10-26  Jim Meyering  <meyering@lucent.com>
21199
21200         * lib/strftime.c: Update from libc.
21201
21202 2000-10-25  Stefan Monnier  <monnier@cs.yale.edu>
21203
21204         * regex.c: More `unsigned char' -> `re_char' changes.
21205         Also change several `int' into `re_wchar_t'.
21206         (PATTERN_STACK_EMPTY, PUSH_PATTERN_OP, POP_PATTERN_OP): Remove.
21207         (PUSH_FAILURE_POINTER): Don't cast any more.
21208         (POP_FAILURE_REG_OR_COUNT): Remove the cast that strips `const'.
21209         We want GCC to complain, since this piece of code makes
21210         re_match non-reentrant, which *should* be fixed.
21211         (GET_BUFFER_SPACE): Use size_t rather than unsigned long.
21212         (EXTEND_BUFFER): Use RETALLOC.
21213         (SET_LIST_BIT): Don't cast.
21214         (re_wchar_t): New type.
21215         (re_iswctype, re_wctype_to_bit): Make it crystal clear to GCC
21216         that those two functions will always properly return.
21217         (IMMEDIATE_QUIT_CHECK): Cast to void.
21218         (analyse_first): Use recursion rather than an explicit stack.
21219         (re_compile_fastmap): Can't fail anymore.
21220         (re_search_2): Don't check re_compile_fastmap for failure.
21221         (PUSH_NUMBER): Renamed from PUSH_FAILURE_COUNT.
21222         Now also sets the new value (passed in a new argument).
21223         (re_match_2_internal): Use it.
21224         Also, use a new var `reg' of type size_t when looping through regs
21225         rather than reuse the inappropriate `mcnt'.
21226
21227 2000-10-25  Jim Meyering  <meyering@lucent.com>
21228
21229         * lib/obstack.c: Update from libc.
21230
21231 2000-10-24  Kenichi Handa  <handa@etl.go.jp>
21232
21233         * regex.c (regex_compile): Change the way of handling a range from
21234         a char less than 256 to a char not less than 256.
21235
21236 2000-10-24  Andrew Innes  <andrewi@gnu.org>
21237
21238         * regex.c (IMMEDIATE_QUIT_CHECK): New macro, which does QUIT on
21239         NT-Emacs only.
21240         (re_match_2_internal): Use IMMEDIATE_QUIT_CHECK instead of QUIT,
21241         so that re_search functions only quit when callers expect them to.
21242
21243 2000-10-23  Jim Meyering  <meyering@lucent.com>
21244
21245         * lib/hard-locale.c (hard_locale): Revert last change -- it was simply
21246         wrong.  That set_locale call must not have any side effects.
21247         From Paul Eggert.
21248
21249 2000-10-22  Jim Meyering  <meyering@lucent.com>
21250
21251         * lib/md5.c (md5_process_block) [OP]: Use `rol', not CYCLIC.
21252         [CYCLIC]: Remove now-unused definition.
21253
21254         * lib/save-cwd.c (O_DIRECTORY): Define, if needed.
21255         (save_cwd) [HAVE_FCHDIR]: Use O_DIRECTORY when opening ".".
21256         Suggestion from Ulrich Drepper.
21257
21258 2000-10-21  Jim Meyering  <meyering@lucent.com>
21259
21260         * m4/check-decl.m4 (jm_CHECK_DECLS): Also check for memrchr.
21261         * m4/prereq.m4 (jm_PREREQ_DIRNAME): New macro.
21262         * m4/jm-macros.m4 (AC_REPLACE_FUNCS): Add memrchr.
21263
21264 2000-10-21  Jim Meyering  <meyering@lucent.com>
21265
21266         * lib/dirname.c (memrchr): Declare if necessary.
21267         (dir_name): Remove the restriction that there be no
21268         trailing slashes.  Now, this code skips past them, effectively
21269         ignoring them.
21270         [TEST_DIRNAME] (main): New unit tests.
21271
21272         * lib/memrchr.c: New file from GNU libc.
21273         Undef __memrchr, too.
21274         [!weak_alias]: Define __memrchr to memrchr.
21275         Guard weak_alias use with `#ifdef weak_alias'.
21276
21277 2000-10-21  Jim Meyering  <meyering@lucent.com>
21278
21279         * lib/dirname.c (dir_name_r): New function, factored out of dir_name.
21280         (dir_name): Use dir_name_r.
21281         * lib/dirname.h (dir_name_r): Declare it.
21282
21283 2000-10-17  Jim Meyering  <meyering@lucent.com>
21284
21285         * lib/quote.h (PARAMS): Define and use.
21286         Reported by Akim Demaille.
21287
21288         * lib/getopt.c: Update from libc.
21289
21290 2000-10-16  Jim Meyering  <meyering@lucent.com>
21291
21292         * lib/hard-locale.c (hard_locale): Use "", not 0 as 2nd arg to
21293         setlocale.
21294         From Jan Fedak.
21295
21296 2000-10-15  Stefan Monnier  <monnier@cs.yale.edu>
21297
21298         * regex.c (WIDE_CHAR_SUPPORT): Define if _LIBC as well.
21299
21300 2000-09-25  Jim Meyering  <meyering@lucent.com>
21301
21302         * lib/md5.h (rol): Define (from GnuPG).
21303
21304         * lib/sha.c: Give credit (GnuPG) where due.
21305         (M): Use rol rather than open-coding it.
21306         Add a FIXME comment.
21307
21308 2000-09-21  Jim Meyering  <meyering@lucent.com>
21309
21310         * lib/userspec.c (parse_user_spec): Remove debugging printf I'd added.
21311         Reported by Michael Stone.
21312
21313 2000-09-20  Jim Meyering  <meyering@lucent.com>
21314
21315         * lib/Makefile.am (libfetish_a_SOURCES): Add sha.c.
21316         (noinst_HEADERS): Add sha.h.
21317         Based on code from Scott G. Miller and from GnuPG.
21318
21319 2000-09-18  Jim Meyering  <meyering@lucent.com>
21320
21321         * m4/getloadavg.m4 (AC_FUNC_GETLOADAVG): Restore the initial value of
21322         LIBS. Otherwise, everyone ends up linking with -lelf for some
21323         configurations.
21324         Reported by Mike Stone.
21325
21326 2000-09-15  Jim Meyering  <meyering@lucent.com>
21327
21328         * lib/regex.c: Update from libc.
21329
21330 2000-09-10  Jim Meyering  <meyering@lucent.com>
21331
21332         * lib/getopt.c (_getopt_internal): Update from glibc.
21333
21334 2000-09-09  Jim Meyering  <meyering@lucent.com>
21335
21336         * lib/quotearg.c: Rename ISASCII to IN_CTYPE_DOMAIN, so people don't
21337         think it should be used as a general replacement for isascii.
21338         * lib/fnmatch.c: Likewise.
21339         * lib/mbswidth.c: Likewise
21340         * lib/regex.c: Likewise.
21341
21342         Don't use atoi.
21343         * lib/userspec.c: Include sys/param.h and limits.h.
21344         Include xstrtol.h.
21345         (CHAR_BIT, TYPE_SIGNED, TYPE_MINIMUM, TYPE_MAXIMUM): Define.
21346         (UID_T_MAX, GID_T_MAX, MAXUID, MAXGID): Define.
21347         (parse_user_spec): Use xstrtoul, not atoi when converting numeric
21348         UID, GID.  Check range.
21349
21350 2000-09-06  Jim Meyering  <meyering@lucent.com>
21351
21352         * lib/getopt.c (_getopt_internal): Update from glibc.
21353
21354 2000-08-30  Jim Meyering  <meyering@lucent.com>
21355
21356         * lib/strftime.c: Merge in changes from GNU libc.
21357
21358 2000-08-26  Jim Meyering  <meyering@lucent.com>
21359
21360         * m4/jm-macros.m4: Use jm_FUNC_FPENDING.
21361         * m4/fpending.m4: New file.
21362
21363 2000-08-26  Jim Meyering  <meyering@lucent.com>
21364
21365         * lib/closeout.c: Include "__fpending.h".
21366         (close_stdout_status): Return right away if there's nothing to flush.
21367
21368         * lib/Makefile.am (noinst_HEADERS): Add __fpending.h.
21369         * lib/__fpending.c: New file.
21370         * lib/__fpending.h: New file.
21371
21372 2000-08-20  Jim Meyering  <meyering@lucent.com>
21373
21374         * m4/check-decl.m4: Include utmp.h `#if HAVE_UTMP_H', rather than
21375         `#if !HAVE_UTMPX_H'.  The latter would lose on systems with neither
21376         utmp.h nor utmpx.h.  Reported by Eli Zaretskii.
21377
21378 2000-08-11  J. David Anglin  <dave@hiauly1.hia.nrc.ca>
21379
21380         Improve fileutils installation on systems where running
21381         programs (like install) can't be unlinked.
21382         * m4/unlink-busy.m4 (jm_FUNC_UNLINK_BUSY_TEXT): New file/macro.
21383         * m4/jm-macros.m4: Use jm_FUNC_UNLINK_BUSY_TEXT.
21384
21385 2000-08-07  Paul Eggert  <eggert@twinsun.com>
21386
21387         Standardize on "memory exhausted" instead of "Memory exhausted"
21388         or "virtual memory exhausted".
21389         * lib/obstack.c (print_and_abort): Use "memory exhausted", not
21390         "virtual memory exhausted".
21391         * lib/same.c (same_name): Invoke xalloc_die instead of printing
21392         our own message.
21393         * lib/userspec.c (parse_user_spec): Likewise.
21394         * lib/bumpalloc.h: comment fix
21395         * lib/same.c, userspec.c: Include xalloc.h.
21396
21397         * lib/xalloc.h (xalloc_msg_memory_exhausted): Now char const[],
21398         not char *const and pointing to a constant array.
21399         * lib/xmalloc.c (xalloc_msg_memory_exhausted): Likewise.
21400         (xrealloc): Comment fix.
21401
21402         * lib/userspec.c (parse_user_spec):
21403         Don't translate a message until just before returning,
21404         to avoid unnecessary translation.
21405
21406 2000-08-07  Jim Meyering  <meyering@lucent.com>
21407
21408         * lib/addext.c, argmatch.c, argmatch.h, backupfile.h, bumpalloc.h,
21409         chown.c, diacrit.h, dirname.h, dup2.c, exclude.h, fileblocks.c,
21410         fnmatch.c, fnmatch.h, fsusage.c, fsusage.h, getdate.h,
21411         getgroups.c, gethostname.c, getopt.h, group-member.c,
21412         hard-locale.c, hash.h, isdir.c, lchown.c, linebuffer.c,
21413         linebuffer.h, long-options.h, malloc.c, md5.c, md5.h, memchr.c,
21414         memcmp.c, memcoll.c, memset.c, mktime.c, modechange.h, obstack.h,
21415         pathmax.h, realloc.c, rmdir.c, safe-read.c, save-cwd.c, stime.c,
21416         stpcpy.c, strcasecmp.c, strcspn.c, strdup.c, stripslash.c,
21417         strstr.c, strtod.c, strtol.c, strtoul.c, strtoull.c, strtoumax.c,
21418         utime.c, version-etc.h, xalloc.h, xstrdup.c, xstrtoumax.c,
21419         yesno.c: Back out Copyright date changes for each file with no change
21420         this year.  This eases coordination with other programs using the same
21421         source code modules.  From Paul Eggert.
21422
21423 2000-08-06  Paul Eggert  <eggert@twinsun.com>
21424
21425         * m4/mbstate_t.m4 (AC_MBSTATE_T): Define mbstate_t to be int,
21426         not char, for compatibility with glibc 2.1.3 strftime.c.
21427
21428 2000-08-03  Greg McGary  <greg@mcgary.org>
21429
21430         * lib/regex.c (SET_HIGH_BOUND, MOVE_BUFFER_POINTER,
21431         ELSE_EXTEND_BUFFER_HIGH_BOUND): New macros.
21432         (EXTEND_BUFFER): Use them.
21433
21434 2000-08-01  Jim Meyering  <meyering@lucent.com>
21435
21436         * lib/dirname.c (ISSLASH): Define.
21437         (BACKSLASH_IS_PATH_SEPARATOR): Define.
21438         (dir_name) [BACKSLASH_IS_PATH_SEPARATOR]: Handle the case in which
21439         both `\' and `/' may be use as path separators.
21440         Based on a patch from Prashant TR.
21441
21442 2000-07-31  Paul Eggert  <eggert@twinsun.com>
21443
21444         * lib/quotearg.c (quotearg_n_options): Don't make the initial
21445         slot vector a constant, since it might get modified.
21446
21447 2000-07-31  Jim Meyering  <meyering@lucent.com>
21448
21449         * lib/xmalloc.c: Use `virtual memory exhausted', not
21450         `Memory exhausted'.
21451         * lib/obstack.c (print_and_abort): Likewise.
21452
21453 2000-07-30  Paul Eggert  <eggert@twinsun.com>
21454
21455         * lib/quotearg.c (quotearg_n_options): Preallocate a slot 0
21456         buffer, so that the caller can always quote one small
21457         component of a "memory exhausted" message in slot 0.
21458         From a suggestion by Jim Meyering.
21459
21460 2000-07-30  Jim Meyering  <meyering@lucent.com>
21461
21462         * lib/makepath.c (make_path): Quote the other instance, too.
21463
21464         * lib/quotearg.c (N_STATIC_SLOTVECS): Define.
21465         (STATIC_BUF_SIZE): Define.
21466         (quotearg_n_options): Use only statically allocated storage when
21467         N < N_STATIC_SLOTVECS and the length of the quoted result is smaller
21468         than STATIC_BUF_SIZE.
21469
21470 2000-07-29  Jim Meyering  <meyering@lucent.com>
21471
21472         * lib/diacrit.c (diacrit_diac): Use __MSDOS__ in favor of MSDOS.
21473         * lib/dirname.c (dir_name): Likewise.
21474
21475         * lib/basename.c (base_name): Use ISSLASH rather than comparing against
21476         `/'.
21477
21478         * lib/dirname.c (dir_name) [MSDOS]: Declare `lim' to be const.
21479         (dir_name): Assert that there are no trailing slashes.
21480
21481 2000-07-29  Bruno Haible  <haible@clisp.cons.org>
21482
21483         * lib/mbswidth.h (mbswidth): Add a flags argument.
21484         (mbswidth): New declaration.
21485         (MBSW_ACCEPT_INVALID, MBSW_ACCEPT_UNPRINTABLE): New macros.
21486         * lib/mbswidth.c (mbswidth): Add a flags argument.
21487         (mbsnwidth): New function.
21488
21489 2000-07-24  Jim Meyering  <meyering@lucent.com>
21490
21491         * lib/mbswidth.c: Remove useless #else.  From Bruno Haible.
21492
21493 2000-07-23  Paul Eggert  <eggert@twinsun.com>
21494
21495         * m4/mbswidth.m4 (jm_PREREQ_MBSWIDTH): Check for wcwidth declaration.
21496
21497 2000-07-23  Paul Eggert  <eggert@twinsun.com>
21498
21499         * lib/quotearg.c: Streamline by invoking multibyte code only if needed.
21500         <wchar.h>: Include only if HAVE_MBRTOWC && 1 < MB_LEN_MAX.
21501         (MB_CUR_MAX): Redefine to 1 if ! (HAVE_MBRTOWC && 1 < MB_LEN_MAX).
21502         (quotearg_buffer_restyled): If a unibyte locale, don't bother to
21503         invoke multibyte primitives.
21504
21505 2000-07-23  Paul Eggert  <eggert@twinsun.com>
21506
21507         * lib/quotearg.c:
21508         Include <wchar.h> even if ! (HAVE_MBRTOWC && 1 < MB_LEN_MAX),
21509         so that mbstate_t is always defined.
21510
21511         Do not inspect MB_LEN_MAX, since it's incorrectly defined to
21512         be 1 in at least one GCC installation, and this configuration
21513         error is likely to be common.  Ignoring MB_LEN_MAX hurts
21514         performance on hosts that have mbrtowc but have only unibyte
21515         locales, but I assume these hosts are rare.
21516
21517 2000-07-23  Paul Eggert  <eggert@twinsun.com>
21518
21519         * lib/mbswidth.c (_XOPEN_SOURCE):
21520         Don't define; this causes problems on Solaris 7.
21521         (wcwidth) [!HAVE_DECL_WCWIDTH]: Declare.
21522
21523 2000-07-23  Jim Meyering  <meyering@lucent.com>
21524
21525         * m4/check-decl.m4 (jm_CHECK_DECLS): Check for declarations of these,
21526         too: getgrgid, getpwuid, getuid.
21527
21528 2000-07-23  Jim Meyering  <meyering@lucent.com>
21529
21530         * lib/basename.c (base_name): Add an assertion.
21531
21532 2000-07-23  Bruno Haible  <clisp.cons.org>
21533
21534         * lib/quotearg.c: When the system forces us to redefine mbstate_t,
21535         shadow its mbsinit function.
21536
21537 2000-07-17  Bruno Haible  <haible@clisp.cons.org>
21538
21539         * lib/mbswidth.h: New file.
21540         * lib/mbswidth.c: New file.
21541         * lib/Makefile.am (libfetish_a_SOURCES): Add mbswidth.c.
21542         (noinst_HEADERS): Add mbswidth.h.
21543
21544 2000-07-17  Bruno Haible  <haible@clisp.cons.org>
21545
21546         * lib/config.charset: Add support for FreeBSD. Improve support for
21547         HP-UX and IRIX 6.
21548
21549 2000-07-16  Bruno Haible  <haible@clisp.cons.org>
21550
21551         * m4/mbswidth.m4: New file.
21552         * m4/prereq.m4 (jm_PREREQ): Call jm_PREREQ_MBSWIDTH.
21553
21554 2000-07-15  Jim Meyering  <meyering@lucent.com>
21555
21556         * lib/makepath.c: Include quote.h.
21557         (make_path): Convert "`%s'" in format strings to "%s", and wrap each
21558         corresponding argument in a `quote (...)' call.
21559         Give better diagnostics.
21560
21561         * lib/Makefile.am (libfetish_a_SOURCES): Add quote.c.
21562         (noinst_HEADERS): Add quote.h.
21563
21564         * lib/quote.c (quote, quote_n): New file.  Two functions taken verbatim
21565         from tar's src/misc.c.
21566         * lib/quote.h: New file.  Prototypes for same.
21567
21568 2000-07-14  Paul Eggert  <eggert@twinsun.com>
21569
21570         From a suggestion by Bruno Haible.
21571         * lib/quotearg.c (mbrtowc): Do not use HAVE_WCHAR_H in the definition.
21572         Use defined mbstate_t, not HAVE_MBSTATE_T_OBJECT,
21573         to decide whether to define the BeOS workaround macro;
21574         this adjusts to the change to AC_MBSTATE_T.
21575
21576 2000-07-14  Jim Meyering  <meyering@lucent.com>
21577
21578         * m4/xstrtoumax.m4 (jm_AC_PREREQ_XSTRTOUMAX): Require
21579         jm_AC_TYPE_UINTMAX_T.
21580
21581 2000-07-13  Paul Eggert  <eggert@twinsun.com>
21582
21583         * lib/quotearg.h (enum quoting style): New enum clocale_quoting_style.
21584
21585         * lib/quotearg.c (quoting_style_args, quoting_style_vals,
21586         quotearg_buffer_restyled): Add support for
21587         clocale_quoting_style.  Undo previous change to
21588         locale_quoting_style behavior, and undo the "{LEFT QUOTATION MARK}"
21589         and "{RIGHT QUOTATION MARK}" msgids.
21590
21591 2000-07-10  Paul Eggert  <eggert@twinsun.com>
21592
21593         From a suggestion by Bruno Haible.
21594         * m4/mbstate_t.m4 (AC_MBSTATE_T):
21595         Renamed from AC_MBSTATE_T_OBJECT.  All uses changed.
21596         Change from a two-part test, which defines both HAVE_MBSTATE_T_OBJECT
21597         and mbstate_t, to a single-part test that simply defines mbstate_t.
21598         * m4/prereq.m4 (jm_PREREQ_QUOTEARG):
21599         s/AC_MBSTATE_T_OBJECT/AC_MBSTATE_T/.
21600
21601 2000-07-10  Jim Meyering  <meyering@lucent.com>
21602
21603         * m4/strerror_r.m4: Mirror the correction made in autoconf.
21604
21605         * m4/gnu-source.m4: Output to confdefs.h directly.
21606         Suggestion from Akim Demaille.
21607
21608 2000-07-09  Paul Eggert  <eggert@twinsun.com>
21609
21610         The old behavior of quoting `like this' doesn't look good with
21611         newer, ISO-style fonts.  See:
21612         http://www.cl.cam.ac.uk/~mgk25/ucs/quotes.html
21613
21614         Instead, quote "like this" by default.  Let the translator
21615         tailor the locale-specific quoting behavior by providing
21616         translations for {LEFT QUOTATION MARK} and {RIGHT QUOTATION MARK}.
21617
21618         * lib/quotearg.c (N_): New macro.
21619         (gettext_default): New function.
21620         (quotearg_buffer_restyled): Use
21621         gettext_default ("{LEFT QUOTATION MARK}", "\"") for left quote, and
21622         gettext_default ("{RIGHT QUOTATION MARK}", "\"") for right quote.
21623
21624 2000-07-09  Jim Meyering  <meyering@lucent.com>
21625
21626         * m4/jm-macros.m4 (jm_MACROS): Add a test to see if -lm is required
21627         to link seq.  If so, set SEQ_LIBM to -lm.  From Bruno Haible.
21628
21629         * m4/gnu-source.m4 (AC__GNU_SOURCE): New file/macro.
21630         * m4/jm-macros.m4 (jm_CHECK_ALL_TYPES): Require it.
21631
21632 2000-07-09  Jim Meyering  <meyering@lucent.com>
21633
21634         * lib/Most files: Update copyright dates to include 2000.
21635
21636 2000-07-08  Jim Meyering  <meyering@lucent.com>
21637
21638         * lib/xgethostname.c (ENAMETOOLONG): Define to an unlikely value
21639         if not defined.
21640         (xgethostname): Remove now-unnecessary #ifdef.
21641         Move declaration of `err' into loop where it's used.
21642
21643 2000-07-05  Paul Eggert  <eggert@twinsun.com>
21644         and Bruno Haible  <haible@clisp.cons.org>
21645
21646         * m4/mbstate_t.m4 (AC_MBSTATE_T_OBJECT): Test for mbstate_t
21647         only if the test for an object-type mbstate_t fails.  This
21648         prevents us from mistakenly reporting that mbstate_t is a
21649         system object type after we "#define mbstate_t int" to work
21650         around its lack.
21651
21652 2000-07-05  Paul Eggert  <eggert@twinsun.com>
21653         and Bruno Haible  <haible@clisp.cons.org>
21654
21655         * lib/quotearg.c (mbrtowc): Declare returned type, since BeOS doesn't.
21656
21657 2000-07-05  Bruno Haible  <haible@clisp.cons.org>
21658
21659         * m4/strerror_r.m4 (AC_FUNC_STRERROR_R): Pass a reasonably large buffer
21660         to strerror_r.
21661         Include <ctype.h> for use of isalpha.
21662
21663 2000-07-05  Bruno Haible  <haible@clisp.cons.org>
21664
21665         * lib/xgethostname.c (xgethostname): Protect against the SunOS 5.5 bug
21666         by allocating a larger buffer. Test the gethostname return value for
21667         being >= 0, not == 0, for BeOS.  Don't exhaust memory if gethostname
21668         returns an error and ENAMETOOLONG isn't defined.
21669
21670 2000-07-05  Bruno Haible  <haible@clisp.cons.org>
21671
21672         * lib/quotearg.c (struct quoting_options): Simplify quote_these_too
21673         dimension.
21674
21675 2000-07-04  Jim Meyering  <meyering@lucent.com>
21676
21677         * m4/fsusage.m4 (jm_FILE_SYSTEM_USAGE): Use plain old `echo' instead
21678         of the deprecated AC_CHECKING.
21679
21680 2000-07-04  Jim Meyering  <meyering@lucent.com>
21681
21682         * lib/strndup.c: [!HAVE_DECL_STRNLEN]: Declare strnlen.
21683         Reported by Bruno Haible.
21684
21685 2000-07-04  Jim Meyering  <meyering@lucent.com>
21686
21687         * lib/quotearg.c: Make inclusion of <wchar.h> independent of whether
21688         HAVE_MBRTOWC is set.  Required at least for irix-5.6, which
21689         lacks mbrtowc.
21690
21691 2000-07-03  Paul Eggert  <eggert@twinsun.com>
21692
21693         * m4/mbstate_t.m4 (AC_MBSTATE_T_OBJECT): Port to autoconf 2.13.
21694         Add AC_CHECK_HEADERS(stdlib.h), since we use HAVE_STDLIB_H.
21695
21696 2000-07-03  Paul Eggert  <eggert@twinsun.com>
21697         and Bruno Haible  <haible@clisp.cons.org>
21698
21699         * lib/quotearg.c (mbrtowc):
21700         Assign to *pwc, and return 1 only if result is nonzero.
21701         (iswprint): Use ISPRINT when substituting our own mbrtowc.
21702
21703 2000-07-03  Jim Meyering  <meyering@lucent.com>
21704
21705         * m4/check-decl.m4 (AC_CHECK_DECLS): Add strnlen.
21706
21707 2000-07-03  Jim Meyering  <meyering@lucent.com>
21708
21709         * lib/readutmp.h: [HAVE_UTMPX_H]: Include <utmp.h> if HAVE_UTMP_H.
21710         This is necessary to get a definition of e.g., UTMP_FILE on
21711         HP-UX 10.20.
21712         From Bob Proulx.
21713
21714 2000-07-02  Jim Meyering  <meyering@lucent.com>
21715
21716         * m4/mbstate_t.m4: Also define mbstate_t, if necessary.
21717
21718         * m4/chown.m4: Replace each use of AC_SUBST(LIBOBJS)/LIBOBJS=... with
21719         AC_LIBOBJ(function_name).
21720         * m4/chown.m4: Likewise.
21721         * m4/fnmatch.m4: Likewise.
21722         * m4/ftruncate.m4: Likewise.
21723         * m4/getgroups.m4: Likewise.
21724         * m4/getline.m4: Likewise.
21725         * m4/group-member.m4: Likewise.
21726         * m4/jm-macros.m4: Likewise.
21727         * m4/lstat.m4: Likewise.
21728         * m4/malloc.m4: Likewise.
21729         * m4/memcmp.m4: Likewise.
21730         * m4/nanosleep.m4: Likewise.
21731         * m4/putenv.m4: Likewise.
21732         * m4/realloc.m4: Likewise.
21733         * m4/regex.m4: Likewise.
21734         * m4/stat.m4: Likewise.
21735         * m4/strftime.m4: Likewise.
21736
21737 2000-07-02  Jim Meyering  <meyering@lucent.com>
21738
21739         * lib/quotearg.c (mbstate_t): Don't define here.
21740
21741 2000-07-02  Jim Meyering  <meyering@lucent.com>
21742
21743         * lib/nanosleep.c (SIGCONT): Define if not already defined.
21744
21745 2000-07-01  Jim Meyering  <meyering@lucent.com>
21746
21747         * m4/uptime.m4: Put double quotes around use of $cross_compiling.
21748
21749 2000-07-01  Jim Meyering  <meyering@lucent.com>
21750
21751         * m4/ls-mntd-fs.m4: Remove a `FIXME' comment and fix the associated
21752         problem.
21753
21754 2000-07-01  Bruno Haible  <haible@clisp.cons.org>
21755
21756         * m4/ls-mntd-fs.m4 (jm_LIST_MOUNTED_FILESYSTEMS): Rename BeOS specific
21757         macro from MOUNTED_NEXT_DEV to MOUNTED_FS_STAT_DEV.
21758
21759 2000-07-01  Bruno Haible  <haible@clisp.cons.org>
21760
21761         * lib/mountlist.c: Use MOUNTED_FS_STAT_DEV instead of MOUNTED_NEXT_DEV,
21762         per change in ../m4/ls-mntd-fs.m4.
21763         (read_filesystem_list): Ignore symbolic links.
21764
21765 2000-06-29  Jim Meyering  <meyering@lucent.com>
21766
21767         * lib/same.c: Include <string.h> or <strings.h>, as appropriate,
21768         for declaration of strcmp.
21769
21770         * lib/long-options.c: Include <stdlib.h>, for declaration of exit.
21771
21772         * lib/mountlist.c (fsp_to_string) [HAVE_F_FSTYPENAME_IN_STATFS]:
21773         Avoid warning by casting result to `char *' to remove `const'.
21774
21775 2000-06-28  Jim Meyering  <meyering@lucent.com>
21776
21777         * m4/mbstate_t.m4: Use stdlib.h, not stdio.h.  The latter is not
21778         included by quotearg.c, for which we perform this test.  From
21779         Bruno Haible.
21780
21781 2000-06-27  Bruno Haible  <haible@clisp.cons.org>
21782
21783         * m4/check-decl.m4 (_jm_DECL_HEADERS): Check for utmp.h as well.
21784         * m4/prereq.m4 (jm_PREREQ_READUTMP): Likewise. If either <utmp.h> or
21785         <utmpx.h> exists, put readutmp.o into LIBOBJS.
21786
21787 2000-06-27  Bruno Haible  <haible@clisp.cons.org>
21788
21789         * lib/Makefile.am (libfetish_a_SOURCES): Remove readutmp.c.
21790
21791 2000-06-26  Paul Eggert  <eggert@twinsun.com>
21792
21793         savedir now sets errno on failure and invokes xmalloc to get memory.
21794         Fix a couple of other minor bugs while we're at it.
21795
21796         * lib/savedir.c (<unistd.h>): Do not include; there's no need.
21797         (NAMLEN): Remove macro.
21798         (malloc, realloc): Remove decls.
21799         (stpcpy): Likewise.
21800         ("xalloc.h"): Include.
21801         (NAME_SIZE_DEFAULT): New macro.
21802         (savedir): Use xmalloc / xrealloc to allocate memory.
21803         Use NAME_SIZE_DEFAULT if name_size is negative or overflows to zero.
21804         Skip "" directory entries.
21805         Use strlen to calculate directory entry length, since the old method
21806         is rarely used these days and isn't worth supporting.
21807         Don't use a pointer after freeing it.
21808         Check for integer overflow when calculating allocation size.
21809         Use memcpy to copy entries, instead of stpcpy.
21810         Set errno properly when returning NULL.
21811         Check for readdir error.
21812
21813 2000-06-26  Jim Meyering  <meyering@lucent.com>
21814
21815         * lib/posixtm.c [HAVE_STDLIB_H]: Include stdlib.h, for decl of abort.
21816
21817 2000-06-25  Jim Meyering  <meyering@lucent.com>
21818
21819         * m4/mbstate_t.m4: Include stdio.h before wchar.h to work around
21820         Linux header bug when _XOPEN_SOURCE is defined to 500.
21821
21822 2000-06-25  Bruno Haible  <haible@clisp.cons.org>
21823
21824         * lib/unicodeio.c (print_unicode_char): Work around ansi2knr
21825         deficiency.
21826
21827 2000-06-25  Bruno Haible  <haible@clisp.cons.org>
21828
21829         * lib/getusershell.c (xmalloc, xrealloc): Remove functions.
21830         Include xalloc.h.
21831         Don't include <stdlib.h>.  Don't declare malloc, realloc.
21832
21833 2000-06-24  Jim Meyering  <meyering@lucent.com>
21834
21835         * m4/strerror_r.m4: Revive this file -- to try out an experimental
21836         version of AC_FUNC_STRERROR_R that may work even on BeOS, a system
21837         for which strerror does return char*, but which lacks a conveniently
21838         accessible declaration of the function.  If the compile-test says
21839         strerror_r doesn't work, then resort to a `run'-test that works on
21840         BeOS and segfaults on DEC Unix.
21841
21842 2000-06-24  Jim Meyering  <meyering@lucent.com>
21843
21844         * lib/error.c [!HAVE_DECL_STRERROR_R]: Declare strerror_r.
21845
21846 2000-06-23  Paul Eggert  <eggert@twinsun.com>
21847
21848         * m4/mbstate_t.m4: New file, defining AC_MBSTATE_T_OBJECT.
21849         * m4/prereq.m4 (jm_PREREQ_QUOTEARG): Use it.  Add check for iswprint.
21850
21851 2000-06-23  Paul Eggert  <eggert@twinsun.com>
21852
21853         * lib/quotearg.c: Include <wctype.h> after <wchar.h>, for Solaris 2.5.
21854         (mbrtowc, mbstate_t): Define substitutes if
21855         HAVE_MBRTOWC && HAVE_WCHAR_H && !HAVE_MBSTATE_T_OBJECT.
21856         (iswprint): Define to 1 if !defined iswprint && !HAVE_ISWPRINT,
21857         not if ! (HAVE_MBRTOWC && HAVE_WCHAR_H).
21858
21859 2000-06-23  Jim Meyering  <meyering@lucent.com>
21860
21861         * m4/afs.m4: Add missing AC_MSG_RESULT.
21862         Reported by Bruno Haible.
21863
21864         * m4/fsusage.m4: s/AC_MSG_CHECKING/AC_CHECKING/.
21865         Suggestion from Bruno Haible.
21866
21867 2000-06-23  Jim Meyering  <meyering@lucent.com>
21868
21869         * lib/getpass.c: New file, from Bruno Haible.  Required for BeOS.
21870
21871 2000-06-21  Jim Meyering  <meyering@lucent.com>
21872
21873         * m4/jm-macros.m4 (AC_REPLACE_FUNCS): Add getpass.
21874
21875 2000-06-21  Jim Meyering  <meyering@lucent.com>
21876
21877         * lib/Makefile.am (libfetish_a_SOURCES): Add getstr.c.
21878         (noinst_HEADERS): Add getstr.h.
21879
21880         * lib/getline.c (getstr): Move into a separate file.
21881         * lib/getstr.c (getstr): New file, extracted from getline.c, with
21882         the following changes: new parameter, delim2; both delim[12]
21883         parameters have type `int', not `char'.  The latter would lose
21884         with 8-bit delimiters.
21885         * lib/getstr.h: New file.
21886
21887 2000-06-21  Bruno Haible  <haible@clisp.cons.org>
21888
21889         * lib/xgetcwd.c (xgetcwd): If the required pathname length is smaller
21890         than 1024, return a memory chunk of least possible size, instead
21891         of size PATH_MAX + 2. In the loop, increment the size proportionally.
21892         Use free/xmalloc instead of xrealloc to avoid copying for very long
21893         paths.
21894
21895 2000-06-21  Bruno Haible  <haible@clisp.cons.org>
21896
21897         * lib/path-concat.c (path_concat): Don't access dir[-1] if dir is
21898         the empty string.
21899
21900 2000-06-21  Bruno Haible  <haible@clisp.cons.org>
21901
21902         * lib/canon-host.c (canon_host): Use malloc and memcpy to copy an
21903         address, not strdup.  Include <stdlib.h> and don't declare free().
21904
21905 2000-06-19  Jim Meyering  <meyering@lucent.com>
21906
21907         * lib/getloadavg.c [HAVE_NLIST_H] (NLIST_STRUCT): Define.
21908
21909 2000-06-18  Jim Meyering  <meyering@lucent.com>
21910
21911         * m4/jm-macros.m4 (AC_REPLACE_FUNCS): Remove mkdir.
21912
21913         * m4/link-follow.m4 (jm_AC_FUNC_LINK_FOLLOWS_SYMLINK): Change the
21914         `checking whether...' message to be consistent with that of the
21915         lstat test.
21916
21917 2000-06-18  Jim Meyering  <meyering@lucent.com>
21918
21919         * lib/mkdir.c: Remove file, due mainly to copyright incompatibility.
21920         Besides, these days every porting target provides a mkdir function.
21921
21922         * lib/strnlen.c: Include memory.h, string.h, and/or strings.h as
21923         needed. (this snippet comes from src/system.h).
21924
21925 2000-06-16  Bruno Haible  <haible@clisp.cons.org>
21926
21927         * m4/glibc21.m4 (jm_GLIBC21): Define GLIBC21 for Makefiles, not for C.
21928
21929 2000-06-15  Paul Eggert  <eggert@twinsun.com>
21930
21931         * lib/human.c (adjust_value): New function.
21932         (human_readable_inexact): Apply rounding style even when
21933         printing approximate values.
21934
21935 2000-06-14  Paul Eggert  <eggert@twinsun.com>
21936
21937         * lib/human.c (human_readable_inexact): Allow an input block
21938         size that is not a multiple of the output block size, and vice versa.
21939         Reported by Piergiorgio Sartor.
21940
21941 2000-06-14  Paul Eggert  <eggert@twinsun.com>
21942
21943         * lib/getdate.y (get_date): Apply relative times after time
21944         zone indicator, not before.  Reported by Todd A. Jacobs.
21945
21946 2000-06-13  Jim Meyering  <meyering@lucent.com>
21947
21948         * lib/Makefile.am (all-local): Depend on lstat.c and stat.c.
21949
21950         * lib/xstat.in [!HAVE_DECL_FREE]: Declare free in lstat.c.
21951
21952 2000-06-12  Paul Eggert  <eggert@twinsun.com>
21953
21954         * lib/xstat.in: Include <stdlib.h> in lstat, to declare "free".
21955
21956 2000-06-12  Jim Meyering  <meyering@lucent.com>
21957
21958         * m4/getloadavg.m4 (AM_FUNC_GETLOADAVG): Replace with
21959         AC_FUNC_GETLOADAVG from autoconf, and tweak the latter to accept an
21960         optional argument.
21961         * m4/jm-macros.m4: s/AM_FUNC_GETLOADAVG/AC_FUNC_GETLOADAVG/, and supply
21962         the optional argument, `lib'.
21963
21964 2000-06-08  Jim Meyering  <meyering@lucent.com>
21965
21966         * m4/largefile.m4: Remove file (now that it's part of autoconf).
21967
21968 2000-06-04  Paul Eggert  <eggert@twinsun.com>
21969
21970         Rewrite largefile configuration so that we don't need to run
21971         getconf and don't need AC_CANONICAL_HOST.  [I'm leaving the use of
21972         AC_CANONICAL_HOST in configure.in -- jmm]
21973
21974         * m4/largefile.m4 (AC_SYS_LARGEFILE_FLAGS,
21975         AC_SYS_LARGEFILE_SPACE_APPEND): Remove.
21976         (AC_SYS_LARGEFILE_TEST_INCLUDES): New macro.
21977         (AC_SYS_LARGEFILE_MACRO_VALUE): Change arguments from
21978         CODE-TO-SET-DEFAULT to VALUE, INCLUDES, FUNCTION-BODY.
21979         All uses changed.
21980         Instead of inspecting the output of getconf, try to compile the
21981         test program without and with the macro definition.
21982         (AC_SYS_LARGEFILE): Do not require AC_CANONICAL_HOST or check
21983         for getconf.  Instead, check for the needed flags by compiling
21984         test programs.
21985
21986 2000-06-04  Paul Eggert  <eggert@twinsun.com>
21987
21988         * lib/strnlen.c: Include <config.h> if HAVE_CONFIG_H.
21989
21990 2000-06-04  Jim Meyering  <meyering@lucent.com>
21991
21992         * lib/getugroups.c (getugroups): Cast -1 to gid_t, for systems like
21993         SunOS 4.1.4 for which gid_t is an unsigned type.
21994
21995 2000-06-03  Jim Meyering  <meyering@lucent.com>
21996
21997         * m4/prereq.m4 (jm_PREREQ_HUMAN): Use []-quoted list in AC_CHECK_DECLS,
21998         now that autoconf requires that.
21999
22000         * m4/jm-glibc-io.m4: Add a kludge to make autoheader emit the required
22001         #undefs.  E.g., #undef HAVE_DECL_FERROR_UNLOCKED.
22002         Use []-quoted list in AC_CHECK_DECLS, now that autoconf requires that.
22003
22004 2000-06-03  Jim Meyering  <meyering@lucent.com>
22005
22006         * lib/strnlen.c [!HAVE_DECL_MEMCHR]: Declare memchr.
22007
22008 2000-06-03  Bruno Haible  <haible@clisp.cons.org>
22009
22010         * m4/glibc21.m4: New file.
22011         * m4/jm-macros.m4 (jm_MACROS): Call jm_GLIBC21.
22012
22013 2000-06-03  Bruno Haible  <haible@clisp.cons.org>
22014
22015         * lib/Makefile.am (install-exec-local): On systems with glibc-2.1 or
22016         newer, don't install charset.alias.
22017         * lib/config.charset: Change the Linux/glibc rules so they become empty
22018         on glibc-2.1 or newer.
22019
22020 2000-06-02  Jim Meyering  <meyering@lucent.com>
22021
22022         * lib/mountlist.c: Back out last change.  Instead, do this...
22023         * lib/mountlist.c (read_filesystem_list) [MOUNTED_VMOUNT]: Set the
22024         me_dummy member using the same `ignore'-testing code.
22025         * lib/mountlist.h (ME_DUMMY): Add `autofs' to the list of ignored
22026         fs_type strings.
22027         From Mark D. Roth.
22028
22029 2000-05-29  Jim Meyering  <meyering@lucent.com>
22030
22031         * lib/mountlist.c (read_filesystem_list) [MOUNTED_VMOUNT]: Ignore
22032         mounts with the `ignore' attribute.  Based on a patch from
22033         Mark D. Roth.
22034
22035 2000-05-28  Jim Meyering  <meyering@lucent.com>
22036
22037         * m4/jm-macros.m4 (AC_FUNC_LSTAT_FOLLOWS_SLASHED_SYMLINK): Rename from
22038         jm_FUNC_LSTAT_FOLLOWS_SLASHED_SYMLINK.
22039         * m4/stat.m4: Likewise.
22040         * m4/lstat.m4: Likewise.
22041         * m4/lstat-slash.m4: Remove file (absorbed into autoconf).
22042
22043         * m4/jm-macros.m4 (AC_FUNC_STRERROR_R): Rename from jm_FUNC_STRERROR_R.
22044         * m4/strerror_r.m4: Remove file (absorbed into autoconf).
22045
22046 2000-05-26  Jim Meyering  <meyering@lucent.com>
22047
22048         * m4/uptime.m4: Use `$cross_compiling', not `$ac_cv_prog_cc_cross'.
22049
22050 2000-05-24  Jim Meyering  <meyering@lucent.com>
22051
22052         * m4/prereq.m4: Use []-quoted list in AC_CHECK_MEMBERS, now that
22053         autoconf requires that.
22054         * m4/lib-check.m4: Likewise.
22055         * m4/jm-macros.m4: Likewise.
22056         * m4/strftime.m4: Likewise.
22057
22058         * m4/check-decl.m4 (jm_CHECK_DECLS): Use []-quoted list in
22059         AC_CHECK_DECLS, now that autoconf requires that.
22060
22061 2000-05-22  Jim Meyering  <meyering@lucent.com>
22062
22063         * m4/stat.m4: Require jm_FUNC_LSTAT_FOLLOWS_SLASHED_SYMLINK.
22064         * m4/lstat.m4: Likewise.
22065
22066 2000-05-22  Jim Meyering  <meyering@lucent.com>
22067
22068         * lib/makepath.c: Remove old, now-unnecessary `#ifdef __MSDOS__' block.
22069
22070 2000-05-20  Jim Meyering  <meyering@lucent.com>
22071
22072         * m4/prereq.m4 (jm_PREREQ_HUMAN): New macro.
22073         (jm_PREREQ): Use it.
22074
22075 2000-05-18  Jim Meyering  <meyering@lucent.com>
22076
22077         * lib/hash.c (hash_rehash): Fix a nasty bug: copy the free entry list
22078         back, too, since it may have been modified by allocate_entry.
22079         (hash_delete): Rewrite to use neither the assignment operator
22080         nor the comma operator in an if-expression.
22081
22082 2000-05-15  Paul Eggert  <eggert@twinsun.com>
22083
22084         * lib/closeout.c:
22085         <sys/stat.h>, <sys/types.h>, <unistd.h>, (STDOUT_FILENO):
22086         Remove; no longer needed.
22087         "quotearg.h": Add include.
22088         (file_name): Do not bother to explicitly initialize to NULL; it's less
22089         efficient on some hosts.
22090         (close_stdout_status): Remove test as to whether stdout was already
22091         closed; it breaks for the case "echo x | sort >&-".
22092         Quote file name colons.
22093         Do not assume that _("write error") lacks format strings.
22094
22095 2000-05-15  Jim Meyering  <meyering@lucent.com>
22096
22097         * lib/version-etc.c (version_etc_copyright): Update the copyright
22098         string used in all --version output.
22099
22100 2000-05-14  Jim Meyering  <meyering@lucent.com>
22101
22102         * lib/closeout.c (close_stdout_set_file_name): New function.
22103         (close_stdout_status): Use new file-scoped global.
22104         Return right away if fstat says the stdout file descriptor is invalid.
22105         * lib/closeout.h (close_stdout_set_file_name): Declare.
22106
22107 2000-05-10  Jim Meyering  <meyering@lucent.com>
22108
22109         * lib/closeout.c [default_exit_status]: New file-scoped variable.
22110         (close_stdout_set_status): New function.
22111         * lib/closeout.h (close_stdout_set_status): Declare.
22112
22113 2000-05-09  Jim Meyering  <meyering@lucent.com>
22114
22115         * m4/gettext.m4: Rename this...
22116         * m4/libintl.m4: ...to this.
22117
22118 2000-05-08  Jim Meyering  <meyering@lucent.com>
22119
22120         * lib/long-options.c: Don't include closeout.h.
22121         (parse_long_options): Don't call close_stdout for --version.
22122
22123 2000-05-06  Paul Eggert  <eggert@twinsun.com>
22124
22125         * m4/largefile.m4 (AC_SYS_LARGEFILE): Define _XOPEN_SOURCE to
22126         be 500, instead of _GNU_SOURCE to be 1, to work around glibc
22127         2.1.3 bug.  This avoids a clash when files like regex.c define
22128         _GNU_SOURCE.
22129
22130 2000-05-06  Jim Meyering  <meyering@lucent.com>
22131
22132         * m4/jm-macros.m4 (AC_REPLACE_FUNCS): Add atexit.
22133         (AC_REPLACE_FUNCS): Add strnlen.
22134
22135         * m4/rmdir-errno.m4 (fetish_FUNC_RMDIR_NOTEMPTY): New macro and file.
22136         * m4/jm-macros.m4: Require fetish_FUNC_RMDIR_NOTEMPTY.
22137
22138         * m4/nanosleep.m4 (jm_FUNC_NANOSLEEP): Save and restore LIBS around
22139         AC_SEARCH_LIBS call for nanosleep.
22140         (LIB_NANOSLEEP): Set and AC_SUBST.
22141
22142 2000-05-06  Jim Meyering  <meyering@lucent.com>
22143
22144         * lib/strnlen.c: Undefine __strnlen and strnlen.
22145         [!weak_alias]: Define __strnlen to strnlen.
22146
22147         * lib/atexit.c: New file, from libiberty.
22148
22149 2000-05-06  Jim Meyering  <meyering@lucent.com>
22150
22151         * lib/closeout.c (close_stdout_status): Also check for errors on the
22152         stderr stream.
22153
22154 2000-05-05  Jim Meyering  <meyering@lucent.com>
22155
22156         * m4/jm-macros.m4 (jm_MACROS): Save and restore LIBS around
22157         AC_SEARCH_LIBS call for clock_gettime.
22158         (LIB_CLOCK_GETTIME): Set and AC_SUBST.
22159
22160         * m4/search-libs.m4: Update from autoconf.
22161
22162         su doesn't work on Solaris 2.6.
22163         * m4/lib-check.m4: When checking for struct spwd.sp_pwdp, also include
22164         <shadow.h>.  Reported by Dragos Harabor.
22165
22166 2000-05-05  Bruno Haible  <haible@clisp.cons.org>
22167
22168         * lib/localcharset.c (get_charset_aliases): Use malloc, realloc and
22169         memcpy instead of xmalloc, xrealloc, path_concat.
22170         (locale_charset): Treat empty environment variables as absent.
22171         (DIRECTORY_SEPARATOR, ISSLASH): New macros.
22172
22173 2000-05-04  Jim Meyering  <meyering@lucent.com>
22174
22175         * lib/getopt.c: Update from glibc.
22176         * lib/obstack.c: Likewise.
22177         * lib/obstack.h: Likewise.
22178         * lib/regex.c: Likewise.  NB: K&R compiler support is dropped for this
22179         file
22180
22181         * lib/regex.h: Likewise.
22182         * lib/strndup.c: Likewise.
22183         * lib/strnlen.c: New file, from glibc.
22184
22185 2000-05-03  Jim Meyering  <meyering@lucent.com>
22186
22187         * m4/check-decl.m4 (AC_CHECK_DECLS): Add strndup.
22188
22189 2000-05-02  Paul Eggert  <eggert@twinsun.com>
22190
22191         * m4/largefile.m4 (AC_SYS_LARGEFILE): Define _GNU_SOURCE if
22192         this is needed to make ftello visible (e.g. glibc 2.1.3).  Use
22193         compile-time test, rather than inspecting host and OS, to
22194         decide whether to define _LARGEFILE_SOURCE.
22195
22196 2000-05-01  Jim Meyering  <meyering@lucent.com>
22197
22198         * m4/fsusage.m4: Use AC_MSG_CHECKING instead of obsolete AC_CHECKING.
22199
22200         * m4/ls-mntd-fs.m4 (jm_LIST_MOUNTED_FILESYSTEMS): Add BeOS support.
22201         Based on a patch from Bruno Haible.
22202
22203 2000-05-01  Jim Meyering  <meyering@lucent.com>
22204
22205         * lib/full-write.c (full_write): Remove `FIXME' part of comment.
22206
22207 2000-04-29  Jim Meyering  <meyering@lucent.com>
22208
22209         * lib/path-concat.c: Declare strdup only if it's not defined.
22210         * lib/canon-host.c: Likewise.
22211
22212 2000-04-28  Jim Meyering  <meyering@lucent.com>
22213
22214         * lib/rpmatch.c [HAVE_LIMITS_H]: Include limits.h before regex.h to
22215         avoid redefinition warning on some systems (HPUX).  Otherwise, regex.h
22216         is included first, then limits.h is included by locale.h by libintl.h.
22217         From John David Anglin.
22218
22219 2000-04-25  Jim Meyering  <meyering@lucent.com>
22220
22221         * lib/makepath.c (S_IRWXUGO): Define.
22222         (make_path): Always perform explicit chmod if MODE specifies any
22223         of the `special' permission bits.  Prompted by a bug report against
22224         install from Mate Wierdl and Joost van Baal.
22225
22226 2000-04-18  Jim Meyering  <meyering@lucent.com>
22227
22228         * m4/prereq.m4 (jm_PREREQ_GETPAGESIZE): New macro.
22229         (jm_PREREQ): Use it.
22230
22231 2000-04-18  Jim Meyering  <meyering@lucent.com>
22232
22233         * lib/README: New file.
22234
22235         * lib/getpagesize.h [!getpagesize && HAVE_OS_H && B_PAGE_SIZE]: Define
22236         getpagesize.  For BeOS.  Based on a patch from Bruno Haible.
22237
22238 2000-04-17  Jim Meyering  <meyering@lucent.com>
22239
22240         Get it right :-)
22241         * m4/jm-macros.m4 (jm_CHECK_ALL_TYPES) [_GNU_SOURCE]: Emit the
22242         actual #define via AH_VERBATIM.  Don't need separate AC_DEFINE.
22243         Suggestion from Akim Demaille.
22244
22245 2000-04-17  Jim Meyering  <meyering@lucent.com>
22246
22247         * lib/strftime.c (my_strftime) [strftime]: Declare strftime here, since
22248         the definition of it to rpl_strftime also defined-away the system's
22249         declaration.
22250
22251 2000-04-15  Jim Meyering  <meyering@lucent.com>
22252
22253         Use `C' to denote so-called `contiguous' files, the same way
22254         that tar does.
22255         * lib/filemode.c (S_ISCTG) [!S_ISCTG && S_IFCTG]: Define.
22256         (ftypelet): Use S_ISCTG.
22257         From Michael Deutschmann.
22258
22259 2000-04-14  Jim Meyering  <meyering@lucent.com>
22260
22261         * m4/jm-macros.m4 (jm_CHECK_ALL_TYPES) [_GNU_SOURCE]: Use the one-arg
22262         form of AC_DEFINE.  Otherwise, the #ifndef in AH_VERBATIM gets
22263         clobbered.
22264
22265 2000-04-14  Jim Meyering  <meyering@lucent.com>
22266
22267         * lib/strftime.c (my_strftime) [#ifdef strftime]: Declare strftime.
22268
22269 2000-04-13  Jim Meyering  <meyering@lucent.com>
22270
22271         * m4/jm-macros.m4 (jm_CHECK_ALL_TYPES) [_GNU_SOURCE]: Use new
22272         AH_VERBATIM to insert required #ifndef into config.h.in.
22273         Suggestion from Akim Demaille.
22274
22275 2000-04-12  Jim Meyering  <meyering@lucent.com>
22276
22277         * m4/getloadavg.m4 (AM_FUNC_GETLOADAVG): Use AC_CHECK_HEADERS, not
22278         `AC_CHECK_HEADER' to check for locale.h.  Thanks to a report from
22279         Christian Krackowizer.
22280
22281         More code moved from ../configure.in into (jm_CHECK_ALL_TYPES).
22282         * m4/jm-macros.m4 (_GNU_SOURCE): Define.
22283         (AC_SYS_LARGEFILE): Require.
22284         (AM_C_PROTOTYPES): Require.
22285
22286 2000-04-08  Jim Meyering  <meyering@lucent.com>
22287
22288         * lib/Makefile.am (charset.alias): Use t-$@, not $@-t so the DOS 8.3
22289         names don't conflict.  Reported by Eli Zaretskii.
22290
22291 2000-04-07  Jim Meyering  <meyering@lucent.com>
22292
22293         * lib/putenv.c: Move inclusion of errno.h so it follows that of
22294         sys/types.h, to work around system header problems on AIX 3.2.5.
22295         From Bruno Haible.
22296
22297 2000-04-07  Bruno Haible  <haible@clisp.cons.org>
22298
22299         * lib/unicodeio.c (print_unicode_char): Avoid triggering Solaris iconv
22300         bug.  Deal with the different error behavior of Irix iconv.
22301
22302 2000-04-05  Paul Eggert  <eggert@twinsun.com>
22303
22304         * m4/largefile.m4 (AC_SYS_LARGEFILE_FLAGS): Don't use -n32 on
22305         IRIX if the installer said otherwise.
22306
22307 2000-04-05  Jim Meyering  <meyering@lucent.com>
22308
22309         Portability tweaks required for ultrix4.3.
22310         * m4/check-decl.m4 [!HAVE_UTMPX_H] (headers): Include <utmp.h>.
22311         (jm_CHECK_DECLS): Add getutent to the list of functions.
22312         (_jm_DECL_HEADERS): Add utmpx.h.
22313         From John David Anglin.
22314
22315         * m4/strftime.m4: Back out the 2000-04-02 change.
22316         Instead of that change, simply undefine putenv in the test program.
22317
22318 2000-04-05  Jim Meyering  <meyering@lucent.com>
22319
22320         Portability tweaks required for ultrix4.3.
22321         * lib/readutmp.h [HAVE_UTMPX_H && !HAVE_DECL_GETUTENT]: Declare
22322         getutent.
22323         * lib/readutmp.c: Include sys/types.h before sys/stat.h.
22324         * lib/canon-host.c: Declare strdup.
22325         * lib/path-concat.c: Likewise.
22326         From John David Anglin.
22327
22328 2000-04-04  Jim Meyering  <meyering@lucent.com>
22329
22330         Be more DOS 8.3-friendly.
22331         * lib/ref-add.sin: Renamed from ref-add.sed.in.
22332         * lib/ref-del.sin: Renamed from ref-del.sed.in.
22333         * lib/Makefile.am: Reflect renaming.
22334         Reported by Eli Zaretskii.
22335
22336         Use a temporary file name that won't clash with `charset.alias'
22337         in the DOS 8.3 name space.
22338         * lib/Makefile.am (charset_tmp): Define.
22339         (install-exec-local): Use $(charset_tmp) instead of $(charset_alias)-t.
22340         (uninstall-local): Likewise.
22341         Reported by Eli Zaretskii.
22342
22343 2000-04-03  Jim Meyering  <meyering@lucent.com>
22344
22345         * m4/gettext.m4: Fix typo in comment.
22346
22347         * m4/codeset.m4 (AC_CHECK_HEADERS): Add langinfo.h (moved here from
22348         textutils/configure.in).  Suggestion from Paul Eggert.
22349         (AC_CHECK_FUNCS): Add nl_langinfo.  (also from textutils/configure.in)
22350
22351 2000-04-02  Paul Eggert  <eggert@twinsun.com>
22352
22353         * m4/strftime.m4 (jm_FUNC_GNU_STRFTIME): Set TZ environment
22354         variable in the shell rather than using putenv, which isn't
22355         portable.  This avoids the configure-time inter-test dependency
22356         on the potentially-renamed putenv function.
22357
22358 2000-03-30  Paul Eggert  <eggert@twinsun.com>
22359
22360         * m4/jm-macros.m4 (jm_CHECK_ALL_TYPES): Include <sys/stat.h>
22361         before checking struct stat.st_blksize, so that
22362         HAVE_STRUCT_STAT_ST_BLKSIZE is defined correctly.
22363
22364 2000-03-29  Paul Eggert  <eggert@twinsun.com>
22365
22366         * m4/strftime.m4 (_jm_STRFTIME_PREREQS): Check for strftime,
22367         since strftime.c uses HAVE_STRFTIME to decide whether to use
22368         the underlying strftime.
22369
22370 2000-03-29  Paul Eggert  <eggert@twinsun.com>
22371
22372         * lib/time/strftime.c (my_strftime): Make sure we call the system
22373         strftime, not ourselves, when invoking the underlying strftime.
22374
22375 2000-03-24  Jim Meyering  <meyering@lucent.com>
22376
22377         * lib/Makefile.am (EXTRA_DIST): Add ref-add.sed.in and ref-del.sed.in.
22378         (charset_alias): Define.
22379         (install-exec-local): Factor out common code.
22380         (uninstall-local): Split lines longer than 80.
22381         (ref-add.sed, ref-del.sed): Remove rules... (do the following instead)
22382         (SUFFIXES): Define.
22383         (.sed.in.sed): New rule.  Don't redirect directly to $@.
22384         (CLEANFILES): Add ref-add.sed and ref-del.sed.
22385
22386 2000-03-19  Bruno Haible  <haible@clisp.cons.org>
22387
22388         * lib/config.charset: Output a line containing "Packages using this
22389         file".
22390         * lib/ref-add.sed.in, ref-del.sed.in: New files.
22391         * lib/Makefile.am (install-exec-local, uninstall-local, ref-add.sed,
22392         ref-del.sed): New rules.
22393
22394 2000-03-17  Jim Meyering  <meyering@lucent.com>
22395
22396         * lib/unicodeio.c (<string.h>): Include only #if HAVE_STRING_H.
22397         Otherwise, include <strings.h>
22398
22399 2000-03-17  Bruno Haible  <haible@clisp.cons.org>
22400
22401         * lib/unicodeio.c (utf8_wctomb): New function.
22402         (print_unicode_char): Pass the Unicode character to iconv in UTF-8
22403         format instead of in UCS-4 with platform dependent endianness.
22404
22405 2000-03-10  Jim Meyering  <meyering@lucent.com>
22406
22407         * m4/lib-check.m4: Look for getspnam in -lgen, too.
22408         From Marco Franzen.
22409
22410 2000-03-07  Paul Eggert  <eggert@twinsun.com>
22411
22412         * lib/savedir.c (savedir): Work even if directory size is
22413         negative; this can happen with some screwy NFS configurations.
22414
22415 2000-03-06  Jim Meyering  <meyering@lucent.com>
22416
22417         * lib/localcharset.c (get_charset_aliases): Don't try to free file_name
22418         if it's NULL (because we ran out of memory).  From Bruno Haible.
22419
22420 2000-03-05  Jim Meyering  <meyering@lucent.com>
22421
22422         * lib/localcharset.c ("path-concat.h"): Include.
22423         (get_charset_aliases): Use path_concat instead of ANSI string
22424         concatenation.
22425
22426         * lib/unicodeio.h (PARAMS): Define.
22427         Use it to guard prototype.
22428
22429 2000-03-04  Jim Meyering  <meyering@lucent.com>
22430
22431         * m4/jm-macros.m4 (jm_CHECK_ALL_TYPES): Require AC_C_VOLATILE,
22432         for lib/localcharset.c.
22433
22434 2000-03-04  Jim Meyering  <meyering@lucent.com>
22435
22436         * lib/Makefile.am (install-exec-local): Create $(libdir) before
22437         installing into it.
22438         (uninstall-local): Uncomment this rule so `make distcheck' works
22439         once again.
22440
22441         * lib/unicodeio.c (<errno.h>): Include it.
22442         (errno): Declare if not defined.
22443
22444         * lib/localcharset.c: Add Bruno's comment justifying use of volatile.
22445
22446         * lib/config.charset: New version, incorporating remarks from a linux
22447         i18n mailing list.  From Bruno Haible.
22448
22449 2000-03-04  Bruno Haible  <haible@clisp.cons.org>
22450
22451         * m4/codeset.m4: New file.
22452         * m4/iconv.m4: New file.
22453         * m4/jm-macros.m4 (jm_MACROS): Call jm_LANGINFO_CODESET and jm_ICONV.
22454
22455 2000-03-03  Jim Meyering  <meyering@lucent.com>
22456
22457         * m4/regex.m4: Make sure re_compile_pattern accepts patterns like `{1'.
22458
22459 2000-03-02  Jim Meyering  <meyering@lucent.com>
22460
22461         * m4/timespec.m4: Require AC_HEADER_TIME before the cache check so
22462         the messages come out on separate lines.
22463
22464         * m4/jm-glibc-io.m4 (jm_FUNC_GLIBC_UNLOCKED_IO): Use AC_CHECK_DECLS,
22465         rather than jm_CHECK_DECLARATIONS.
22466         * m4/decl.m4: Remove now-unused file.
22467
22468         * m4/check-decl.m4 (AC_CHECK_DECLS): Add getlogin, ttyname, and
22469         geteuid.
22470
22471 2000-03-02  Jim Meyering  <meyering@lucent.com>
22472
22473         * lib/Makefile.am (EXTRA_DIST): Add config.charset.
22474
22475 2000-03-01  Jim Meyering  <meyering@lucent.com>
22476
22477         * lib/localcharset.c: Guard some #includes with `#if HAVE_...'.
22478         * lib/unicodeio.c: Likewise.
22479
22480 2000-03-01  Bruno Haible  <haible@clisp.cons.org>
22481
22482         * lib/config.charset: New file.
22483         * lib/localcharset.c: New file.
22484         * lib/unicodeio.h, unicodeio.c: New files.
22485         * lib/Makefile.am (DEFS): Add -DLIBDIR=...
22486         (libfetish_a_SOURCES): Add localcharset.c and unicodeio.c.
22487         (noinst_HEADERS): Add unicodeio.h.
22488         (all-local, install-exec-local, charset.alias): New targets.
22489
22490 2000-02-28  Paul Eggert  <eggert@twinsun.com>
22491
22492         * lib/quotearg.c (ALERT_CHAR): New macro.
22493         (quotearg_buffer_restyled): Use it.
22494
22495 2000-02-27  Jim Meyering  <meyering@lucent.com>
22496
22497         * m4/check-decl.m4: Add getenv to the list.
22498
22499 2000-02-27  Jim Meyering  <meyering@lucent.com>
22500
22501         * lib/strtoumax.c: Fix typo in decl of strtoul: s/long long/long/.
22502         Guard declaration of strtoull also with `&& HAVE_UNSIGNED_LONG_LONG'.
22503
22504         * lib/backupfile.c: Guard inclusion of stdlib.h with
22505         `#if HAVE_STDLIB_H', not `#if STDC_HEADERS'.
22506         Declare malloc if needed.
22507
22508         * lib/backupfile.c: Use `#if !HAVE_DECL...' instead of
22509         `#ifndef HAVE_DECL..'
22510         now that autoconf always defines the HAVE_DECL_ symbols.
22511         * lib/human.c: Likewise.
22512         * lib/same.c: Likewise.
22513         * lib/strtoumax.c: Likewise.
22514
22515         * lib/backupfile.c: Arrange for cpp to fail if the configure-time
22516         declaration check was not run.
22517         * lib/hash.c: Likewise.
22518         * lib/human.c: Likewise.
22519         * lib/same.c: Likewise.
22520         * lib/strtoumax.c: Likewise.
22521
22522         * lib/userspec.c (parse_user_spec): If there is no `:' but there is a
22523         `.', then first look up the entire `.'-containing string as a login
22524         name.
22525
22526 2000-02-23  Jim Meyering  <meyering@lucent.com>
22527
22528         * m4/check-decl.m4: Now that we have the new AC_CHECK_DECLS, use it
22529         in place of my hack.
22530
22531 2000-02-18  Paul Eggert  <eggert@twinsun.com>
22532
22533         * lib/getdate.y: Handle two-digit years with leading zeros correctly.
22534         (textint): New typedef.
22535         (parser_control): Member year changed from int to textint.
22536         All uses changed.
22537         (YYSTYPE): Removed; replaced by %union with int and textint members.
22538         (tDAY, tDAY_UNIT, tDAYZONE, tHOUR_UNIT, tID, tLOCAL_ZONE, tMERIDIAN,
22539         tMINUTE_UNIT, tMONTH, tMONTH_UNIT tSEC_UNIT, tSNUMBER, tUNUMBER,
22540         tYEAR_UNIT, tZONE, o_merid): Now of type <intval>.
22541         (tSNUMBER, tUNUMBER): Now of type <textintval>.
22542         (date, number, to_year): Use width of number in digits, not its value,
22543         to determine whether it's a 2-digit year, or a 2-digit time.
22544         (yylex): Store number of digits of numeric tokens.
22545         Reported by John Kendall.
22546
22547         (parser_control): Changed from struct parser_control to typedef (for
22548         consistency).  All uses changed.
22549
22550         (tID): Removed; not used.
22551         (yylex): Return '?' for unknown identifiers, rather than (unused) tID.
22552
22553 2000-02-14  Paul Eggert  <eggert@twinsun.com>
22554
22555         * lib/getpagesize.h (getpagesize): Port to VMS for Alpha;
22556         adapted from changes to grep getpagesize.h by Martin P.J. Zinser.
22557
22558 2000-02-12  Jim Meyering  <meyering@lucent.com>
22559
22560         * lib/userspec.c (ISDIGIT): Define it.
22561         (isdigit): Remove definition.
22562         (is_number): Use ISDIGIT, not isdigit.
22563         <libintl.h>: Include.
22564         (_ and N_): Define.
22565         (parse_user_spec): Mark translatable strings.
22566
22567 2000-02-10  Jim Meyering  <meyering@lucent.com>
22568
22569         With these changes, nanosleep.[ch] are finally enough like the other
22570         lib/* replacement files to compile on a few more losing systems.
22571
22572         * lib/nanosleep.h: Don't include config.h.
22573         Remove prototype from declaration of nanosleep.
22574         (PARAMS): Remove now-unneeded definition.
22575         * lib/nanosleep.c: #undef nanosleep.
22576         (rpl_nanosleep): Rename from nanosleep.
22577
22578 2000-02-10  Jim Meyering  <meyering@lucent.com>
22579
22580         * m4/nanosleep.m4 (jm_FUNC_NANOSLEEP): Rename replacement function from
22581         gnu_nanosleep to rpl_nanosleep.
22582
22583 2000-02-09  Jim Meyering  <meyering@lucent.com>
22584
22585         * m4/lib-check.m4 (jm_LIB_CHECK): Fix typo: check for sp_pwdp in
22586         struct spwd, rather than in struct passwd.  Reported by Gaël Quéri.
22587
22588 2000-02-08  Akim Demaille  <akim@epita.fr>
22589
22590         * m4/largefile.m4 (AC_SYS_LARGEFILE_FLAGS): Quote square brackets with
22591         `[' and `]' and remove uses of `changequote'.
22592         (AC_SYS_LARGEFILE_MACRO_VALUE): Likewise.
22593         (AC_SYS_LARGEFILE): Likewise.
22594         * m4/gettext.m4 (AM_GNU_GETTEXT): Likewise.
22595         * m4/strftime.m4 (jm_FUNC_GNU_STRFTIME): Remove now-unnecessary use
22596         of changequote.
22597         * m4/regex.m4 (jm_INCLUDED_REGEX): Likewise.
22598         * m4/readdir.m4 (jm_FUNC_READDIR): Likewise
22599         * m4/memcmp.m4 (jm_AC_FUNC_MEMCMP): Likewise, and add `int' for main.
22600         * m4/getloadavg.m4 (AM_FUNC_GETLOADAVG): Likewise.
22601
22602 2000-02-05  Jim Meyering  <meyering@lucent.com>
22603
22604         * m4/jm-macros.m4 (jm_CHECK_ALL_TYPES): Require most macros.
22605         Remove explicit use of AC_HEADER_TIME.  It is required by
22606         jm_CHECK_TYPE_STRUCT_TIMESPEC.  Using AC_HEADER_TIME and
22607         `AC_REQUIRE'ing jm_CHECK_TYPE_STRUCT_TIMESPEC provoked a but
22608         in autoconf whereby the expansion of the latter ended up preceding
22609         the expansion of its prerequisite, AC_HEADER_TIME.
22610         Reported by Volker Borchert.
22611
22612 2000-02-03  Jim Meyering  <meyering@lucent.com>
22613
22614         * m4/prereq.m4 (jm_PREREQ_READUTMP): Check for utmpxname.
22615
22616 2000-02-03  Jim Meyering  <meyering@lucent.com>
22617
22618         * lib/readutmp.c (read_utmp): Guard with `#ifdef UTMP_NAME_FUNCTION',
22619         rather than with `#if HAVE_UTMPNAME'.
22620
22621 2000-02-02  Jim Meyering  <meyering@lucent.com>
22622
22623         * m4/prereq.m4 (jm_PREREQ_ADDEXT): Fix typo that resulted in no
22624         definition of HAVE_PATHCONF: s/AC_CHECK_FUNC/AC_CHECK_FUNCS/.
22625         Reported by Eli Zaretskii.
22626
22627 2000-02-01  Jim Meyering  <meyering@lucent.com>
22628
22629         * lib/readutmp.h (UT_USER): Add parens.  From Andreas Schwab.
22630
22631 2000-01-31  Jim Meyering  <meyering@lucent.com>
22632
22633         * m4/check-decl.m4 (jm_CHECK_DECLS): Add nanosleep to the list of
22634         functions.  Add the time.h and sys/time.h headers along with the
22635         AC_REQUIRE'ment of AC_HEADER_TIME.
22636
22637 2000-01-31  Jim Meyering  <meyering@lucent.com>
22638
22639         * lib/nanosleep.h (nanosleep): Guard declaration with
22640         `#if ! HAVE_DECL_NANOSLEEP'.
22641         Without this, OFS gets a redeclaration error for rpl_nanosleep, due to
22642         the declaration in that vendor's sys/timers.h.
22643         Reported by Christian Krackowizer.
22644
22645         * lib/quotearg.c (ISASCII): Add #undef and move definition to follow
22646         inclusion of wctype.h to work around Solaris 2.6 namespace pollution.
22647         (ISPRINT): Likewise.
22648         Reported by Tom Tromey.
22649
22650 2000-01-30  Jim Meyering  <meyering@lucent.com>
22651
22652         * m4/lib-check.m4: Clean up some kludgy old shadow password tests.
22653
22654         * m4/prereq.m4 (utmp_includes): Define.
22655         Check for ut_user and ut_name members in both struct utmpx
22656         and struct utmp.
22657
22658 2000-01-30  Jim Meyering  <meyering@lucent.com>
22659
22660         * lib/readutmp.c (extract_trimmed_name): Use UT_USER instead of
22661         hard-coding uses of ->ut_name.  The latter doesn't work with new Linux
22662         header files where only utmpx.ut_user is declared.
22663
22664         * lib/readutmp.h (UT_USER): Define.
22665
22666 2000-01-29  Jim Meyering  <meyering@lucent.com>
22667
22668         * m4/lib-check.m4: New file containing library-related checks from
22669         fileutils and sh-utils (textutils had none).
22670
22671 2000-01-28  Jim Meyering  <meyering@lucent.com>
22672
22673         * m4/perl.m4: Change format of warning message to look more like that
22674         from the missing script.  Suggestion from François Pinard.
22675
22676 2000-01-25  Jim Meyering  <meyering@lucent.com>
22677
22678         * m4/timespec.m4: Require AC_HEADER_TIME, and include sys/time.h as
22679         well as time.h in the compile check.
22680         * m4/nanosleep.m4: Require AC_HEADER_TIME rather than simply using it.
22681         Fix typo in cross-compiling case: s/yes/no/.
22682
22683 2000-01-23  Jim Meyering  <meyering@lucent.com>
22684
22685         * m4/jm-macros.m4: Move df-related tests here from
22686         fileutils/configure.in
22687
22688         * m4/ls-mntd-fs.m4: s/list_mounted_fs/ac_list_mounted_fs/
22689         (jm_LIST_MOUNTED_FILESYSTEMS): Take two parameters.
22690
22691         * m4/fsusage.m4: New file.  Extracted from fileutils/configure.in.
22692         s/space/ac_fsusage_space/.
22693         (jm_FILE_SYSTEM_USAGE): Take two parameters.
22694
22695         * m4/ftruncate.m4: New file (derived from part of
22696         fileutils/configure.in).
22697         * m4/jm-macros.m4 (jm_FUNC_FTRUNCATE): AC_REQUIRE it.
22698         (jm_CHECK_ALL_TYPES): Require AC_HEADER_MAJOR and AC_HEADER_DIRENT.
22699
22700         * m4/jm-macros.m4 (OPTIONAL_BIN_PROGS, OPTIONAL_BIN_ZCRIPTS, MAN):
22701         AC_SUBST these here, rather than just in sh-util/configure.in, so
22702         that the now-shared-by-fileutils-and-textutils lib/Makefile.am are
22703         all the same.
22704         (AM_FUNC_OBSTACK): Add (from fileutils/configure.in).
22705         (AC_CHECK_FUNCS): Merge all checks from fileutils, textutils, sh-utils.
22706         (AM_FUNC_STRTOD): Added (from textutils', sh-utils' configure.in).
22707         (AC_SUBST(POW_LIBM)): Likewise.
22708         (AC_SUBST(DF_PROG)): Moved from fileutils/configure.in.
22709
22710 2000-01-23  Jim Meyering  <meyering@lucent.com>
22711
22712         * lib/Makefile.am (libfetish_a_SOURCES): Remove explicit mention of
22713         obstack.c.
22714
22715 2000-01-22  Jim Meyering  <meyering@lucent.com>
22716
22717         * m4/jm-macros.m4: Call AC_PROG_CC_STDC just before AC_C_CONST.
22718
22719         * m4/prereq.m4 (jm_PREREQ_QUOTEARG): Add wctype.h.
22720
22721         * m4/jm-macros.m4 (AC_CHECK_HEADERS): Add checks from fileutils'
22722         configure.in
22723         (AC_CHECK_HEADERS): Likewise for sh-utils.
22724         (AC_CHECK_HEADERS): Likewise for textutils.
22725         Merge the three lists of headers.
22726
22727         * m4/prereq.m4 (jm_PREREQ_ADDEXT): New macro.  Parts moved here
22728         from fileutils' configure.in.
22729
22730         * m4/decl.m4: Remove kludgy `test -z $ac_...AC_CHECK_HEADERS(...)'
22731         code. Moved tests into their own function (_jm_DECL_HEADERS) in
22732         check-decl.m4.
22733
22734         * m4/check-decl.m4: Use #if rather than #ifdef.
22735         Add HAVE_DECL_STRTOUL and HAVE_DECL_STRTOULL.
22736         (jm_CHECK_DECLARATIONS): Add strtoul strtoull.
22737         (_jm_DECL_HEADERS): Define new function.
22738         (jm_CHECK_DECLARATIONS): Require it.
22739
22740 2000-01-22  Jim Meyering  <meyering@lucent.com>
22741
22742         * lib/strtoumax.c: [! HAVE_DECL_STRTOUL]: Declare strtoul.
22743         [! HAVE_DECL_STRTOULL]: Declare strtoull.
22744         Required for some AIX systems.  Reported by Christian Krackowizer.
22745         [TESTING] (main): New function.
22746
22747         1997-10-17  Eli Zaretskii  <eliz@is.elta.co.il>
22748         * lib/dirname.c (dir_name): Support for DOS-style file names with drive
22749         letters.
22750
22751         * lib/quotearg.c [HAVE_WCTYPE_H]: Include <wctype.h> for decl of
22752         iswprint.
22753
22754         * lib/strverscmp.c (ISDIGIT): Define.
22755         (strverscmp): Use ISDIGIT, not isdigit.
22756
22757 2000-01-19  Jim Meyering  <meyering@lucent.com>
22758
22759         * m4/nanosleep.m4 (jm_FUNC_NANOSLEEP): Include <sys/time.h>, too.
22760         Use AC_HEADER_TIME.  Volker Borchert reported that OpenBSD-2.3/sparc
22761         defines `struct timespec' in <sys/time.h>
22762
22763         * m4/c-bs-a.m4: Remove uses of changequote altogether.
22764         Thanks to Akim for explaining.
22765
22766 2000-01-17  Paul Eggert  <eggert@twinsun.com>
22767
22768         * lib/nanosleep.c (nanosleep):
22769         Don't use SA_INTERRUPT to decide whether to call sigaction, as
22770         POSIX.1 doesn't require SA_INTERRUPT and some systems
22771         (e.g. Solaris 7) don't define it.  Use SA_NOCLDSTOP instead;
22772         it's been part of POSIX.1 since day 1 (in 1988).
22773
22774 2000-01-17  Jim Meyering  <meyering@lucent.com>
22775
22776         * lib/interlock: Remove unused file.  Reported by François Pinard.
22777
22778 2000-01-16  Paul Eggert  <eggert@twinsun.com>
22779
22780         * lib/quotearg.c (quotearg_buffer_restyled): Do not quote
22781         alert, backslash, formfeed, and vertical tab unnecessarily in
22782         shell quoting style.
22783
22784 2000-01-16  Jim Meyering  <meyering@lucent.com>
22785
22786         * m4/jm-macros.m4: Require jm_FUNC_GROUP_MEMBER, jm_FUNC_PUTENV,
22787         AM_FUNC_ERROR_AT_LINE, jm_FUNC_GNU_STRFTIME, jm_FUNC_MKTIME,
22788         jm_FUNC_GETGROUPS AC_FUNC_VPRINTF, AC_FUNC_ALLOCA,
22789         AM_FUNC_GETLOADAVG, and jm_SYS_PROC_UPTIME.
22790
22791 2000-01-16  Jim Meyering  <meyering@lucent.com>
22792
22793         * m4/c-bs-a.m4: Use `changequote(<<,>>)', rather than `changequote(, )'
22794         because the latter didn't work.
22795
22796 2000-01-15  Jim Meyering  <meyering@lucent.com>
22797
22798         * m4/jm-macros.m4 (AC_REPLACE_FUNCS): Add gethostname and getusershell.
22799         (AC_REPLACE_FUNCS): Add memcpy and memset.
22800         Add these, too: stime strcspn stpcpy strstr strtol strtoul.
22801         Add strpbrk.
22802         Add these: euidaccess memcmp mkdir rmdir rpmatch strndup strverscmp.
22803
22804 2000-01-12  Jim Meyering  <meyering@lucent.com>
22805
22806         * m4/prereq.m4 (jm_PREREQ_CANON_HOST): New macro.
22807         (jm_PREREQ): Use it.
22808         (jm_PREREQ_READUTMP): New macro.
22809         (jm_PREREQ): Use it.
22810
22811 2000-01-11  Paul Eggert  <eggert@twinsun.com>
22812
22813         Quote multibyte characters correctly.
22814         * m4/c-bs-a.m4: New file.
22815         * m4/prereq.m4 (jm_PREREQ_QUOTEARG): New macro.
22816         (jm_PREREQ): Use it.
22817
22818 2000-01-11  Paul Eggert  <eggert@twinsun.com>
22819
22820         * m4/uintmax_t.m4: Port to autoconf 2.13.
22821
22822 2000-01-08  Jim Meyering  <meyering@ascend.com>
22823
22824         * m4/strerror_r.m4 (jm_FUNC_STRERROR_R): New file/macro.
22825         * m4/jm-macros.m4 (jm_FUNC_STRERROR_R): Require it.
22826
22827 2000-01-04  Jim Meyering  <meyering@ascend.com>
22828
22829         * m4/d-type.m4 (jm_CHECK_TYPE_STRUCT_DIRENT_D_TYPE): Rename from
22830         jm_STRUCT_DIRENT_D_TYPE.
22831         * m4/d-ino.m4 (jm_CHECK_TYPE_STRUCT_DIRENT_D_INO): Rename from
22832         jm_STRUCT_DIRENT_D_INO.
22833         * m4/utimbuf.m4 (jm_CHECK_TYPE_STRUCT_UTIMBUF): Rename from
22834         jm_STRUCT_UTIMBUF.
22835         * m4/jm-macros.m4: Reflect s/jm_STRUCT_/jm_CHECK_TYPE_STRUCT_/
22836         renamings.
22837         * m4/utime.m4: Likewise.
22838
22839         * m4/timespec.m4 (jm_CHECK_TYPE_STRUCT_TIMESPEC): New file, macro.
22840         * m4/jm-macros.m4 (jm_CHECK_TYPE_STRUCT_TIMESPEC): Require it.
22841
22842 2000-01-03  Paul Eggert  <eggert@twinsun.com>
22843
22844         * m4/nanosleep.m4 (jm_FUNC_NANOSLEEP): Search for nanosleep in -lrt
22845         (for Solaris 7) and in -lposix4 (for Solaris 2.5.1).
22846
22847 2000-01-02  Jim Meyering  <meyering@ascend.com>
22848
22849         * m4/search-libs.m4: Escape `$' in $3 of dnl comment.  I no longer
22850         remember if this is necessary.
22851
22852 1999-12-26  Jim Meyering  <meyering@ascend.com>
22853
22854         * m4/jm-macros.m4: Use it here.
22855         * m4/nanosleep.m4 (jm_FUNC_NANOSLEEP): New file/macro.
22856
22857 1999-12-23  Jim Meyering  <meyering@ascend.com>
22858
22859         * m4/jm-macros.m4: Check for clock_gettime (moved from
22860         fileutils/configure.in)
22861         Check for gettimeofday.
22862
22863 1999-12-20  Jim Meyering  <meyering@ascend.com>
22864
22865         * m4/strftime.m4: Remove kludge, now that I'm using the fixed
22866         autoconf-2.14a-1999-12-20.
22867
22868 1999-12-19  Jim Meyering  <meyering@ascend.com>
22869
22870         * m4/lstat-slash.m4: New file.
22871         * m4/jm-macros.m4: Use the new macro:
22872         jm_FUNC_LSTAT_FOLLOWS_SLASHED_SYMLINK.
22873
22874 1999-12-07  Jim Meyering  <meyering@ascend.com>
22875
22876         * m4/perl.m4: Require that File::Compare be available, too.
22877         Too many systems seem to lack it.
22878
22879         * m4/strftime.m4: Add checks for most of the cpp macros tested in
22880         GNU's strftime.c.  Prompted by a patch from Paul Eggert.
22881
22882 1999-11-18  Paul Eggert  <eggert@twinsun.com>
22883
22884         * m4/largefile.m4 (AC_SYS_LARGEFILE_FLAGS): Work around a
22885         problem with the QNX 4.25 shell, which doesn't propagate exit
22886         status of failed commands inside shell assignments.
22887
22888 1999-11-17  Jim Meyering  <meyering@ascend.com>
22889
22890         * m4/gettext.m4: Use new AC_CONFIG_LINKS in place of AC_LINK_FILES.
22891
22892 1999-11-07  Jim Meyering  <meyering@ascend.com>
22893
22894         * m4/getloadavg.m4: Add `, 1, [FIXME]' to each use of AC_DEFINE.
22895
22896 1999-11-06  Jim Meyering  <meyering@ascend.com>
22897
22898         * m4/link-follow.m4 (jm_AC_FUNC_LINK_FOLLOWS_SYMLINK): New file/macro.
22899         * m4/jm-macros.m4 (jm_MACROS): Use it here.
22900
22901 1999-11-05  Jim Meyering  <meyering@ascend.com>
22902
22903         * m4/jm-macros.m4 (jm_CHECK_ALL_TYPES): Move some tests from
22904         configure.in of textutils, fileutils, and sh-utils into this one
22905         (shared between those packages) file.
22906         Use `AC_CHECK_MEMBERS((struct stat.st_blksize))' instead of deprecated
22907         AC_STRUCT_ST_BLKSIZE.
22908
22909 1999-11-03  Jim Meyering  <meyering@ascend.com>
22910
22911         * m4/ssize_t.m4: Remove file.  No longer needed since the new version
22912         of AC_CHECK_TYPE checks includes unistd.h.
22913         * m4/jm-macros.m4: Use straight `AC_CHECK_TYPE(ssize_t, int)'.
22914         Suggestion from Akim Demaille.
22915
22916 1999-10-30  Jim Meyering  <meyering@ascend.com>
22917
22918         * m4/uintmax_t.m4: Require 2.14a.  Remove backslash before backtick in
22919         m4-quoted string.
22920         * m4/ls-mntd-fs.m4: Likewise.
22921         * m4/jm-macros.m4: Likewise.  Also, use AC_TYPE_SSIZE_T instead
22922         * m4/jm-winsz1.m4: Likewise.
22923
22924         * m4/const.m4: Remove file, since the fix made it into the experimental
22925         version of autoconf.
22926         * m4/mktime.m4: Likewise.
22927
22928         * m4/check-type.m4: Remove file, now that the latest version of
22929         AC_CHECK_TYPE takes a third arg to specify additional #includes.
22930
22931         * m4/ssize_t.m4: New file, requires experimental version of autoconf.
22932         * m4/jm-macros.m4: Use new AC_TYPE_SSIZE_T instead of my hacked
22933         AC_CHECK_TYPE.
22934
22935 1999-10-04  Jim Meyering  <meyering@ascend.com>
22936
22937         * m4/jm-macros.m4: Don't require autoconf-2.14.1.
22938
22939 1999-09-22  Paul Eggert  <eggert@twinsun.com>
22940
22941         * m4/largefile.m4 (AC_SYS_LARGEFILE_FLAGS): Work around GCC
22942         2.95.1 bug with HP-UX 10.20.
22943
22944 1999-09-17  Jim Meyering  <meyering@ascend.com>
22945
22946         * m4/jm-macros.m4 (AC_REPLACE_FUNCS): Add strdup.
22947         Paul Nevai reported a link failure on a NeXT CUBE with NeXTSTEP 3.3
22948         due to missing strdup (against sh-utils-2.0).
22949
22950 1999-08-29  Jim Meyering  <meyering@ascend.com>
22951
22952         * m4/jm-macros.m4: Require jm_BISON.
22953         * m4/bison.m4: New file.
22954
22955 1999-08-17  Paul Eggert  <eggert@twinsun.com>
22956
22957         * m4/largefile.m4 (AC_SYS_LARGEFILE): Fix typo: missing comma
22958         in value for _FILE_OFFSET_BITS, which broke ports to HP-UX 10.20.
22959
22960 1999-08-05  Jim Meyering  <meyering@ascend.com>
22961
22962         * m4/getline.m4: Rename test file from conftestdata to conftest.data
22963         to avoid conflicts with `conftest' on 8+3 filesystems.
22964         Suggestion from Eli Zaretskii.
22965
22966 1999-08-04  Jim Meyering  <meyering@ascend.com>
22967
22968         * m4/jm-macros.m4: Move a 4-line block of code from the configure.in of
22969         fileutils and sh-utils (textutils's getline test was inadequate).
22970         (AM_FUNC_GETLINE): Run this test.
22971         (AC_CHECK_FUNCS): Check for getdelim.
22972         Reported by Bob Proulx.
22973
22974 1999-08-02  Jim Meyering  <meyering@ascend.com>
22975
22976         * m4/jm-macros.m4: Add a comment.
22977
22978 1999-08-01  Paul Eggert  <eggert@twinsun.com>
22979
22980         * m4/xstrtoumax.m4 (jm_AC_PREREQ_XSTRTOUMAX): Check whether
22981         <inttypes.h> defines strtoumax as a macro (and not as a
22982         function).
22983
22984 1999-08-01  Paul Eggert  <eggert@twinsun.com>
22985
22986         * m4/ulonglong.m4 (jm_AC_TYPE_UNSIGNED_LONG_LONG): Make sure
22987         that we can shift, multiply and divide unsigned long long
22988         values; Ultrix cc can't do it.
22989
22990 1999-08-01  Paul Eggert  <eggert@twinsun.com>
22991
22992         * m4/mktime.m4: New file, which is a preview of what should appear
22993         in the next public autoconf release.
22994
22995 1999-08-01  Paul Eggert  <eggert@twinsun.com>
22996
22997         * m4/lfs.m4: Remove this file.
22998         * m4/largefile.m4: New file.  It contains the old contents of
22999         lfs.m4, except that all names with prefix AC_LFS have been
23000         changed to use the prefix AC_SYS_LARGEFILE instead, to be
23001         compatible with future autoconf versions.  Also, some minor m4
23002         quoting problems have been fixed.
23003
23004 1999-08-01  Paul Eggert  <eggert@twinsun.com>
23005
23006         * m4/gettext.m4 (AM_WITH_NLS): Remove unnecessary lines.
23007         Fix typo: $nls_cv_header_intl was misspelled as $nsl_cv_header_intl.
23008         (AM_GNU_GETTEXT): Fix problem with brackets and m4 quoting,
23009         and simplify the shell code.
23010
23011 1999-08-01  Jim Meyering  <meyering@ascend.com>
23012
23013         * m4/mktime.m4 (AC_FUNC_MKTIME): Undefine to avoid syntax errors from
23014         m4.
23015
23016 1999-07-20  Jim Meyering  <meyering@ascend.com>
23017
23018         * m4/jm-macros.m4 (AC_REPLACE_FUNCS): Add memmove.
23019
23020 1999-07-15  Jim Meyering  <meyering@ascend.com>
23021
23022         * m4/jm-macros.m4 (AC_CHECK_FUNCS): Check for getpagesize.
23023
23024 1999-05-22  Jim Meyering  <meyering@ascend.com>
23025
23026         * m4/jm-macros.m4 (AC_REPLACE_FUNCS): Add memchr.
23027
23028 1999-05-20  Jim Meyering  <meyering@ascend.com>
23029
23030         * m4/search-libs.m4 [AC_SEARCH_LIBS]: Quote name in undefine.
23031         Add a colon after each `then' in case $4 is empty.
23032
23033 1999-05-16  Jim Meyering  <meyering@ascend.com>
23034
23035         * m4/search-libs.m4: New file to override autoconf's AC_SEARCH_LIBS.
23036
23037 1999-05-10  Jim Meyering  <meyering@ascend.com>
23038
23039         * m4/jm-mktime.m4: Reflect renaming: AM_FUNC_MKTIME -> AC_FUNC_MKTIME.
23040
23041         * m4/jm-macros.m4: Require 2.14.1, since we use newly-renamed
23042         AC_FUNC_MKTIME.
23043
23044 1999-05-10  Andreas Schwab  <schwab@issan.cs.uni-dortmund.de>
23045
23046         * m4/jm-mktime.m4, putenv.m4: Fix typos in config.h comments.
23047
23048 1999-05-04  Paul Eggert  <eggert@twinsun.com>
23049
23050         * m4/lfs.m4 (AC_LFS): -n32, -o32, and -n64 should be in CFLAGS,
23051         not CPPFLAGS, so that linking works correctly in IRIX.
23052
23053 1999-04-30  Paul Eggert  <eggert@twinsun.com>
23054
23055         * m4/jm-macros.m4 (AC_REPLACE_FUNCS): Add dup2.
23056
23057 1999-04-20  Paul Eggert  <eggert@twinsun.com>
23058
23059         * m4/uintmax_t.m4 (jm_AC_TYPE_UINTMAX_T): Move unsigned long
23060         long check into new jm_AC_TYPE_UNSIGNED_LONG_LONG macro.
23061         * m4/jm-macros.m4 (jm_CHECK_ALL_TYPES): Require
23062         jm_AC_TYPE_UNSIGNED_LONG_LONG.
23063         * m4/ulonglong.m4 (jm_AC_TYPE_UNSIGNED_LONG_LONG): New file/macro.
23064
23065         * m4/lfs.m4: Port to AIX and HP-UX.  Support cross-compilation.
23066
23067 1999-04-20  Jim Meyering  <meyering@ascend.com>
23068
23069         * m4/xstrtoumax.m4: Require jm_AC_TYPE_UNSIGNED_LONG_LONG.
23070         AC_REPLACE xstroull if necessary.  From Paul Eggert.
23071         (AC_CHECK_FUNCS): Remove strtoull, strtoumax, strtouq.
23072
23073 1999-04-18  Jim Meyering  <meyering@ascend.com>
23074
23075         * m4/xstrtoumax.m4 (jm_AC_PREREQ_XSTRTOUMAX): New file/macro.
23076         * m4/jm-macros.m4: Use it.
23077
23078 1999-04-06  Jim Meyering  <meyering@ascend.com>
23079
23080         * m4/strftime.m4: Remove test for %f.
23081
23082 1999-03-29  Jim Meyering  <meyering@ascend.com>
23083
23084         * m4/jm-macros.m4 (jm_CHECK_ALL_TYPES): New macro, contains the
23085         superset of the AC_TYPE_* checks in the textutils, fileutils,
23086         and sh-utils, plus AC_TYPE_PID_T.  Paul Eggert suggested adding
23087         AC_TYPE_PID_T.
23088
23089 1999-03-28  Jim Meyering  <meyering@ascend.com>
23090
23091         * m4/jm-macros.m4: Define GNU_PACKAGE here.
23092         Be sure to AC_SUBST it, once again, so that @GNU_PACKAGE@ is
23093         replaced e.g., in the *.sh files of the sh-utils.
23094
23095 1999-03-20  Jim Meyering  <meyering@ascend.com>
23096
23097         * m4/jm-macros.m4: s/jm_WITH_REGEX/jm_INCLUDED_REGEX/.
23098         * m4/regex.m4 (jm_INCLUDED_REGEX): Rename from jm_WITH_REGEX.
23099         Don't depend on AM_GLIBC.  Suggestions from Alain Magloire.
23100
23101 1999-03-19  Jim Meyering  <meyering@ascend.com>
23102
23103         * m4/jm-winsz1.m4 (jm_WINSIZE_IN_PTEM): New macro.
23104
23105 1999-03-12  Jim Meyering  <meyering@ascend.com>
23106
23107         * m4/jm-macros.m4: Use AC_FUNC_SETVBUF_REVERSED.
23108
23109 1999-03-07  Jim Meyering  <meyering@ascend.com>
23110
23111         * m4/jm-glibc-io.m4: Use only those *_unlocked macros that are
23112         declared.
23113
23114 1999-02-17  Jim Meyering  <meyering@ascend.com>
23115
23116         * m4/gettext.m4 (AM_GNU_GETTEXT): Do `changequote' around use of
23117         brackets in macro definition.  From Eli Zaretskii and Alain Magloire.
23118
23119 1999-02-07  Jim Meyering  <meyering@ascend.com>
23120
23121         * m4/group-member.m4: New file -- extracted from sh-utils'
23122         configure.in.
23123
23124         1999-02-05  Eli Zaretskii  <eliz@is.elta.co.il>
23125         * m4/gettext.m4: Support DOS-style d:/foo/bar absolute file names.
23126
23127 1999-02-06  Jim Meyering  <meyering@ascend.com>
23128
23129         * m4/chown.m4: Use `AC_SUBST(LIBOBJS)' since we set LIBOBJS.
23130         * m4/fnmatch.m4: Likewise.
23131         * m4/getgroups.m4: Likewise.
23132         * m4/lstat.m4: Likewise.
23133         * m4/malloc.m4: Likewise.
23134         * m4/putenv.m4: Likewise.
23135         * m4/realloc.m4: Likewise.
23136         * m4/regex.m4: Likewise.
23137         * m4/stat.m4: Likewise.
23138         * m4/strftime.m4: Likewise.
23139         Suggestion from Alain Magloire.
23140
23141         * m4/chown.m4: Use `.$ac_objext', not `.o'.
23142         * m4/fnmatch.m4: Likewise.
23143         * m4/getgroups.m4: Likewise.
23144         * m4/getline.m4: Likewise.
23145         * m4/lstat.m4: Likewise.
23146         * m4/malloc.m4: Likewise.
23147         * m4/memcmp.m4: Likewise.
23148         * m4/putenv.m4: Likewise.
23149         * m4/realloc.m4: Likewise.
23150         * m4/regex.m4: Likewise.
23151         * m4/stat.m4: Likewise.
23152         * m4/strftime.m4: Likewise.
23153         Suggestion from Alain Magloire.
23154
23155         * m4/jm-macros.m4: Actually invoke jm_WITH_REGEX now that it requires
23156         an argument.
23157
23158         * m4/regex.m4: Add a run-time Test for proper operation of
23159         re_compile_pattern.
23160
23161 1999-01-31  Jim Meyering  <meyering@ascend.com>
23162
23163         * m4/getloadavg.m4: Check for locale.h and the function, setlocale.
23164
23165 1999-01-30  Jim Meyering  <meyering@ascend.com>
23166
23167         * m4/check-type.m4: Use 3-arg form of AC_DEFINE.
23168
23169         * m4/jm-mktime.m4: Make this a wrapper around the official
23170         AM_FUNC_MKTIME rather than my private copy, now that the official one
23171         is up to date.
23172         * m4/mktime.m4: Remove file.
23173
23174         * m4/getloadavg.m4: Use 3-arg form of AC_DEFINE.
23175         * m4/uptime.m4: Likewise.
23176         * m4/uintmax_t.m4: Likewise.
23177
23178 1999-01-28  Jim Meyering  <meyering@ascend.com>
23179
23180         * m4/jm-macros.m4: Use jm_AFS.
23181         * m4/afs.m4: New file (from fileutils' configure.in).
23182
23183         * m4/assert.m4: Use the 3-argument forms of AC_DEFINE* macros.
23184         * m4/chown.m4: Likewise.
23185         * m4/d-ino.m4: Likewise.
23186         * m4/d-type.m4: Likewise.
23187         * m4/fnmatch.m4: Likewise.
23188         * m4/getgroups.m4: Likewise.
23189         * m4/gettext.m4: Likewise.
23190         * m4/jm-mktime.m4: Likewise.
23191         * m4/jm-winsz2.m4: Likewise.
23192         * m4/lcmessage.m4: Likewise.
23193         * m4/ls-mntd-fs.m4: Likewise.
23194         * m4/malloc.m4: Likewise.
23195         * m4/memcmp.m4: Likewise.
23196         * m4/putenv.m4: Likewise.
23197         * m4/realloc.m4: Likewise.
23198         * m4/st_mtim.m4: Likewise.
23199         * m4/strftime.m4: Likewise.
23200
23201 1999-01-16  Jim Meyering  <meyering@ascend.com>
23202
23203         * m4/jm-macros.m4 (ARGMATCH_DIE): Define.
23204         (ARGMATCH_DIE_DECL): Define.
23205
23206 1999-01-12  Jim Meyering  <meyering@ascend.com>
23207
23208         * m4/Makefile.am.in: Rewrite to avoid using fmt.
23209         Reported by Lars Hecking.
23210
23211 1999-01-10  Jim Meyering  <meyering@ascend.com>
23212
23213         * m4/fstypename.m4: Use the new 3-arg form of AC_DEFINE instead of my
23214         gross kludge.
23215         * m4/inttypes_h.m4: Likewise.
23216         * m4/lstat.m4: Likewise.
23217         * m4/malloc.m4: Likewise.
23218         * m4/readdir.m4: Likewise.
23219         * m4/realloc.m4: Likewise.
23220         * m4/st_dm_mode.m4: Likewise.
23221         * m4/stat.m4: Likewise.
23222         * m4/utimbuf.m4: Likewise.
23223         * m4/utimes.m4: Likewise.
23224
23225         * m4/check-decl.m4: Use the new 3-arg form of AC_DEFINE instead of the
23226         AC_CHECK_FUNCS hack.  Now, it's still a hack, but at least the
23227         comments in config.h.in are meaningful.
23228
23229         * m4/jm-macros.m4: Require autoconf-2.13 here.
23230
23231         * m4/regex.m4: By default, don't use the included regex.c on systems
23232         with glibc 2.  Suggestion from Uli Drepper.
23233
23234 1999-01-02  Jim Meyering  <meyering@ascend.com>
23235
23236         * m4/jm-macros.m4: Replace strcasecmp and strncasecmp.
23237
23238 1998-12-18  Jim Meyering  <meyering@ascend.com>
23239
23240         * m4/Makefile.am.in (Makefile.am): Simplify rule.
23241         Based on a suggestion from Lars Hecking.
23242
23243 1998-11-16  Paul Eggert  <eggert@twinsun.com>
23244
23245         * m4/lfs.m4 (AC_LFS): Add support for HP-UX 10.20 and HP-UX 11.
23246
23247 1998-11-16  Jim Meyering  <meyering@ascend.com>
23248
23249         * m4/lfs.m4: Double-quote the `uname...` expression.
23250
23251 1998-11-14  Jim Meyering  <meyering@ascend.com>
23252
23253         * m4/lstat.m4: Correct comment.  POSIX does not permit it to succeed.
23254         * m4/stat.m4: Likewise.
23255
23256 1998-11-03  Jim Meyering  <meyering@ascend.com>
23257
23258         * m4/stat.m4: Rewrite to set HAVE_STAT_EMPTY_STRING_BUG.
23259         * m4/lstat.m4: Rewrite to set HAVE_LSTAT_EMPTY_STRING_BUG.
23260
23261 1998-10-18  Jim Meyering  <meyering@ascend.com>
23262
23263         * m4/check-decl.m4 (jm_CHECK_DECL_LOCALTIME_R): Remove macro.
23264
23265 1998-10-17  Jim Meyering  <meyering@ascend.com>
23266
23267         * m4/decl.m4 (jm_CHECK_DECLARATION): Don't hard-code which headers to
23268         include, though we still hard-code the `require'-like AC_CHECK_HEADERS
23269         calls for those previously hard-coded headers.  Instead, take a new
23270         parameter.
23271         (jm_CHECK_DECLARATIONS): Reflect interface change.
23272         * m4/check-decl.m4 (jm_CHECK_DECLS): Likewise.
23273         (jm_CHECK_DECL_LOCALTIME_R): New macro.
23274
23275         * m4/mktime.m4: Test for spring-forward gap before long-running test.
23276
23277 1998-10-14  Jim Meyering  <meyering@ascend.com>
23278
23279         * m4/mktime.m4: Use the more portable "TZ=PST8PDT,M4.1.0,M10.5.0"
23280         instead of "TZ=America/Vancouver".  From Paul Eggert.
23281
23282 1998-10-11  Jim Meyering  <meyering@ascend.com>
23283
23284         * m4/mktime.m4 (jm_AM_FUNC_MKTIME): New file and macro.
23285         This adds a test for a recently added compatibility fix for mktime.c.
23286         * m4/jm-mktime.m4: Require jm_AM_FUNC_MKTIME, not AM_FUNC_MKTIME.
23287
23288 1998-09-27  Jim Meyering  <meyering@ascend.com>
23289
23290         * m4/jm-macros.m4 (jm_MACROS): Require jm_FUNC_FNMATCH.
23291
23292         * m4/fnmatch.m4 (jm_FUNC_FNMATCH): New file/macro.  Extracted from
23293         ../configure.in, including a change from Gordon Matzigkeit to allow
23294         cross-compiling for the Hurd.
23295
23296         * m4/glibc.m4: New file/macro to test for the GNU C Library
23297         versions 1 and 2.  From Gordon Matzigkeit.
23298         Indent.
23299
23300 1998-09-21  Jim Meyering  <meyering@ascend.com>
23301
23302         * m4/chown.m4: Declare locals: before, after.  From Andries Brouwer.
23303
23304 1998-08-18  Paul Eggert  <eggert@twinsun.com>
23305
23306         Port nanosecond-resolution times to UnixWare 2.1.2 and
23307         pedantic Solaris 2.6.
23308
23309         * m4/st_mtim.m4 (AC_STRUCT_ST_MTIM_NSEC): Renamed from
23310         AC_STRUCT_ST_MTIM.
23311         * m4/st_mtim.m4 (AC_STRUCT_ST_MTIM_NSEC):
23312         Generate name of ns member, instead of just 1 or undef.
23313         Allow for UnixWare 2.1.2 and Solaris 2.6 if in pedantic mode.
23314
23315 1998-08-15  Jim Meyering  <meyering@ascend.com>
23316
23317         * m4/ssize_t.m4 (jm_TYPE_SSIZE_T): Remove file.
23318         * m4/check-type.m4: New file.  Replacement for AC_CHECK_TYPE.
23319         * m4/jm-macros.m4: Use the new AC_CHECK_TYPE(ssize_t, int)
23320         instead of jm_TYPE_SSIZE_T.
23321
23322 1998-08-12  Jim Meyering  <meyering@ascend.com>
23323
23324         * m4/st_dm_mode.m4: New file.  From Johan Danielsson.
23325
23326 1998-08-02  Jim Meyering  <meyering@ascend.com>
23327
23328         * m4/st_mtim.m4: Use hack to avoid having to put #undef HAVE_ST_MTIM
23329         in acconfig.h manually.
23330
23331 1998-07-31  Paul Eggert  <eggert@twinsun.com>
23332
23333         * m4/st_mtim.m4: New file.
23334
23335 1998-07-28  Jim Meyering  <meyering@ascend.com>
23336
23337         * m4/utimes.m4: Undef stat.
23338
23339 1998-07-25  Jim Meyering  <meyering@ascend.com>
23340
23341         * m4/utime.m4 (jm_FUNC_UTIME): New file and macro.
23342         * m4/utimes.m4 (jm_FUNC_UTIMES_NULL): New file and macro.
23343
23344 1998-07-09  Manfred Hollstein  <manfred@s-direktnet.de>
23345
23346         * m4/chown.m4 (jm_FUNC_CHOWN): Add a check to verify that the
23347         uid and gid actually remain unchanged.
23348
23349 1998-07-07  Jim Meyering  <meyering@ascend.com>
23350
23351         * m4/jm-glibc-io.m4: Remove fclose_unlocked.
23352
23353 1998-07-04  Jim Meyering  <meyering@ascend.com>
23354
23355         * m4/regex.m4: Use syscmd, ifelse, and sysval.  Mainly as an exercise
23356         to prove that this macro can be used in packages without regex.c.
23357
23358 1998-07-04  Andreas Schwab  <schwab@issan.informatik.uni-dortmund.de>
23359
23360         * m4/gettext.m4 (AM_WITH_NLS): Remove intl/libintl.h if <libintl.h>
23361         is to be used.
23362
23363 1998-07-03  Jim Meyering  <meyering@ascend.com>
23364
23365         * m4/gettext.m4: Add -lintl if it's found to be necessary.
23366
23367         * m4/gettext.m4: New file -- from gettext-0.10.35.
23368         * m4/lcmessage.m4: Likewise.
23369         * m4/progtest.m4: Likewise.
23370
23371         * m4/regex.m4 (jm_WITH_REGEX): New file and macro.
23372         * m4/jm-macros.m4: Require the new macro.
23373
23374 1998-06-29  Jim Meyering  <meyering@ascend.com>
23375
23376         * m4/fstypename.m4: Include sys/param.h.  NetBSD 1.3.1 requires this
23377         for the definition of NGROUPS (used in a system header included
23378         by sys/mount.h).
23379
23380 1998-06-28  Jim Meyering  <meyering@ascend.com>
23381
23382         * m4/ls-mntd-fs.m4: New file.
23383         * m4/fstypename.m4: New file.
23384
23385         * m4/jm-macros.m4: Require the new macro.
23386         * m4/jm-glibc-io.m4: New file.
23387
23388 1998-05-19  Jim Meyering  <meyering@ascend.com>
23389
23390         * m4/jm-macros.m4: Add jm_FUNC_LCHOWN.
23391         * m4/lchown.m4: New file.
23392
23393         * m4/Makefile.am.in: New file.
23394         * m4/Makefile.am (Makefile.am): Depend on Makefile.am.in.
23395
23396 1998-05-14  Jim Meyering  <meyering@ascend.com>
23397
23398         * m4/Makefile.am (EXTRA_DIST): Add them.
23399         * m4/jm-macros.m4: New file.
23400         * m4/utimbuf.m4: New file.
23401
23402 1998-05-12  Jim Meyering  <meyering@ascend.com>
23403
23404         * m4/Makefile.am (EXTRA_DIST): Add isc-posix.m4.
23405
23406 1998-05-11  Jim Meyering  <meyering@ascend.com>
23407
23408         * m4/isc-posix.m4: New file.
23409
23410 1998-05-10  Jim Meyering  <meyering@ascend.com>
23411
23412         * m4/jm-mktime.m4: Use AM_FUNC_MKTIME, now that it's up to date.
23413
23414 1998-05-09  Jim Meyering  <meyering@ascend.com>
23415
23416         * m4/Makefile.am (EXTRA_DIST): Add ssize_t.m4.
23417         (EXTRA_DIST): Remove mktime.m4, now that the new version is included
23418         with automake.
23419
23420         * m4/ssize_t.m4: New file.
23421         * m4/mktime.m4: Remove file -- the new automake has this now.
23422
23423 1998-04-26  Jim Meyering  <meyering@ascend.com>
23424
23425         * m4/assert.m4: New file.
23426         * m4/Makefile.am (EXTRA_DIST): Add assert.m4.
23427
23428 1998-04-05  Jim Meyering  <meyering@ascend.com>
23429
23430         * m4/prereq.m4 (jm_PREREQ_REGEX): New macro.
23431         (jm_PREREQ): Use it here.
23432
23433 1998-03-23  Jim Meyering  <meyering@eng.ascend.com>
23434
23435         * m4/inttypes_h.m4: Kludges so I don't have to add HAVE_INTTYPES_H
23436         in acconfig.h.
23437
23438 1998-03-15  Jim Meyering  <meyering@eng.ascend.com>
23439
23440         * m4/prereq.m4: New file.
23441         * m4/error.m4: New file.
23442         * m4/Makefile.am (EXTRA_DIST): Add error.m4 and prereq.m4.
23443
23444 1998-02-07  Jim Meyering  <meyering@eng.ascend.com>
23445
23446         * m4/getline.m4: Don't set am_cv_func_working_getline before the
23447         cache-check for the same variable -- that defeated the purpose of
23448         the test; the test program was never run.  This was a problem only
23449         on systems with losing getline functions -- HP-UX 10.20 is one.
23450         Reported by Bjorn Helgaas.
23451
23452 1998-02-06  Jim Meyering  <meyering@eng.ascend.com>
23453
23454         * m4/Makefile.am (EXTRA_DIST): Add perl.m4.
23455
23456 1998-01-10  Jim Meyering  <meyering@na-net.ornl.gov>
23457
23458         * m4/Makefile.am (EXTRA_DIST): Add const.m4.
23459
23460         * m4/const.m4: New file.  Use an initializer in this declaration
23461         typedef int charset[2]; const charset x;
23462         Reported by Bob Glickstein.
23463
23464 1997-12-21  Jim Meyering  <meyering@na-net.ornl.gov>
23465
23466         * m4/chown.m4: Fix reversed types on -1 args to chown.
23467         From Kaveh Ghazi.
23468
23469 1997-12-14  Jim Meyering  <meyering@na-net.ornl.gov>
23470
23471         * m4/check-decl.m4: s/DECLARATION_/DECL_/g.
23472         Add lseek and memchr.
23473
23474         * m4/decl.m4: s/HAVE_DECLARATION_/HAVE_DECL_/g.
23475         T.E.Dickey <dickey@clark.net> said that some older preprocessors
23476         have a 20-character limit on names.
23477
23478 1997-11-30  Jim Meyering  <meyering@na-net.ornl.gov>
23479
23480         * m4/inttypes_h.m4: New file.
23481         * m4/uintmax_t.m4: New file.
23482         * m4/Makefile.am (EXTRA_DIST): Add inttypes_h.m4 and uintmax_t.m4.
23483
23484 Copyright (C) 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006
23485   Free Software Foundation, Inc.
23486 Copying and distribution of this file, with or without modification,
23487 are permitted provided the copyright notice and this notice are preserved.