Rename tests/test-floorf.c to tests/test-floorf1.c.
[gnulib.git] / ChangeLog
1 2007-10-12  Bruno Haible  <bruno@clisp.org>
2
3         * tests/test-floorf1.c: Renamed from tests/test-floorf.c.
4         * modules/floorf-tests: Update.
5
6 2007-10-12  Bruno Haible  <bruno@clisp.org>
7
8         * tests/test-trunc2.c: New file.
9         * modules/trunc-tests: (Files, Depends-on, Makefile.am): Add new test.
10
11         * tests/test-trunc1.c: Renamed from tests/test-trunc.c.
12         * modules/trunc-tests: Update.
13
14 2007-10-12  Bruno Haible  <bruno@clisp.org>
15
16         * lib/trunc.c (FUNC): Avoid rounding errors for values near a power
17         of 2.
18         * tests/test-truncf2.c: New file.
19         * modules/truncf-tests: (Files, Depends-on, Makefile.am): Add new test.
20
21         * tests/test-truncf1.c: Renamed from tests/test-truncf.c.
22         * modules/truncf-tests: Update.
23
24 2007-10-11  Eric Blake  <ebb9@byu.net>
25
26         Don't claim strerror is broken on Interix.
27         * doc/functions/strerror.texi (strerror): Known broken systems are
28         now Solaris 8, and not Interix.
29         * m4/strerror.m4 (gl_FUNC_STRERROR_SEPARATE): No longer filter out
30         Interix on cross-compile.
31         Reported by Martin Koeppe in
32         http://lists.gnu.org/archive/html/bug-gnulib/2007-10/msg00005.html.
33
34 2007-10-11  Bruno Haible  <bruno@clisp.org>
35
36         * modules/i-ring-tests: New file.
37         * tests/test-i-ring.c: Renamed from lib/i-ring-test.c. Use ASSERT
38         instead of assert.
39
40 2007-10-11  Bruno Haible  <bruno@clisp.org>
41
42         * modules/filenamecat-tests: New file.
43         * tests/test-filenamecat.c: New file, extracted from lib/filenamecat.c.
44         * lib/filenamecat.c: Remove test code.
45
46 2007-10-11  Paul Eggert  <eggert@cs.ucla.edu>
47
48         Simplify and modernize strerror substitute, partly to fix Solaris 8 bug.
49
50         * lib/strerror.c: Include <string.h> always, to test interface,
51         and to remove the need for the dummy.
52         Include intprops.h to compute width instead of doing it ourselves
53         and missing a CHAR_BIT declaration, which broke tar 1.19 on Solaris 8.
54         (strerror): Define it to return NULL if there's no system strerror.
55         (rpl_strerror): Use INT_STRLEN_BOUND to compute bound.
56         Omit !HAVE_STRERROR code.  We don't need to worry about supporting
57         ancient pre-strerror Unix systems well any more.  Saying "unknown
58         system error" is enough.
59         * lib/string.in.h (strerror): Simplify the ifdef to reflect the
60         simpler strerror.c implementation.
61         * m4/strerror.m4 (gl_FUNC_STRERROR_SEPARATE, gl_PREREQ_STDERROR):
62         Simplify the tests to reflect the simpler strerror implementation.
63         * modules/strerror (Depends-on): Add intprops.
64
65 2007-10-09  Eric Blake  <ebb9@byu.net>
66
67         Silence test-fpending.
68         * modules/fpending-tests (Files): Add wrapper script.
69         * tests/test-fpending.sh: New file.
70
71 2007-10-09  Bruno Haible  <bruno@clisp.org>
72
73         * MODULES.html.sh (func_module): Don't create a hyperlink for
74         function names like 'printf_frexp'.
75         (Misc): Add crc, memxor.
76         (Characteristics of floating types): New section.
77         (Mathematics): Add ceilf, ceill, floorf, floorl, frexpl-nolibm,
78         isnanf-nolibm, signbit, trunc, truncf, truncl.
79         (Enhancements for ISO C 99 functions): New subsection Input/output.
80         (Support for systems lacking POSIX:2001): Add arpa_inet, calloc-posix,
81         fcntl, fopen, freopen, fseek, fseeko, ftell, ftello, iconv_open,
82         locale, malloc-posix, netinet_in, open, realloc-posix, signal, sleep.
83         (Compatibility checks for POSIX:2001 functions): Add clock-time.
84         (Enhancements for POSIX:2001 functions): Add chdir-long.
85         (File system functions): Add areadlink, chdir-safer, read-file.
86         Remove cycle-check.
87         (File system as inode set): New section.
88         (Date and time): Add gethrxtime.
89         (Multithreading): Add openmp.
90         (Internationalization functions): Add localename.
91         (Unicode string functions): Add unistr/u*-mbsnlen.
92         (Support for maintaining and releasing projects): Add git-version-gen.
93         (Lone files): Remove directories.
94
95 2007-10-08  Ben Pfaff  <blp@gnu.org>
96
97         * lib/xmalloca.h: Fix typo in comment.
98
99 2007-10-08  Paul Eggert  <eggert@cs.ucla.edu>
100
101         * lib/xnanosleep.c (xnanosleep): Don't assume GCC 4.3.0 behavior
102         when avoiding problems with integer overflow.  Use a portable test
103         instead.
104
105 2007-10-08  Simon Josefsson  <simon@josefsson.org>
106
107         * modules/dummy (License): Change to LGPLv2+.
108         * modules/float (License): Likewise
109         * modules/realloc (License): Likewise
110         * modules/stdlib (License): Likewise
111
112 2007-10-07  Bruno Haible  <bruno@clisp.org>
113
114         * trunc.c (TWO_MANT_DIG): Change type to DOUBLE.
115         * floor.c (TWO_MANT_DIG): Likewise.
116         * ceil.c (TWO_MANT_DIG): Likewise.
117         Reported by Ben Pfaff.
118
119 2007-10-07  Bruno Haible  <bruno@clisp.org>
120
121         Avoid gcc warnings "declaration of 'exp' shadows a global declaration".
122         * lib/math.in.h (frexp, frexpl): Change parameter name to 'expptr'.
123         * lib/frexp.c (FUNC): Likewise.
124         * lib/printf-frexp.h (printf_frexp): Likewise.
125         * lib/printf-frexpl.h (printf_frexpl): Likewise.
126         * lib/printf-frexp.c (FUNC): Likewise.
127         Suggested by Jim Meyering.
128
129 2007-10-07  Jim Meyering  <meyering@redhat.com>
130
131         Make xnanosleep's integer overflow test more robust.
132         * lib/xnanosleep.c (xnanosleep): Declare a temporary to be "volatile",
133         so that gcc-4.3.0 doesn't optimize away this test for overflow.
134
135 2007-10-07  Bruno Haible  <bruno@clisp.org>
136
137         * NEWS: Mention the license change.
138
139         * doc/gnulib-intro.texi (Copyright): Update the meaning of the license
140         abbreviations in the modules files.
141
142         Change copyright notice from GPLv2+ to GPLv3+.
143         * README: Change copyright notice.
144         * MODULES.html.sh: Likewise.
145         * build-aux/bootstrap.conf: Likewise.
146         * build-aux/config.libpath: Likewise.
147         * build-aux/csharpcomp.sh.in: Likewise.
148         * build-aux/csharpexec.sh.in: Likewise.
149         * build-aux/install-reloc: Likewise.
150         * build-aux/javacomp.sh.in: Likewise.
151         * build-aux/javaexec.sh.in: Likewise.
152         * build-aux/ldd.sh.in: Likewise.
153         * build-aux/reloc-ldflags: Likewise.
154         * build-aux/relocatable.sh.in: Likewise.
155         * build-aux/x-to-1.in: Likewise.
156         * check-module: Likewise.
157         * config/srclistvars.sh: Likewise.
158         * gnulib-tool: Likewise.
159         * lib/acl-internal.h: Likewise.
160         * lib/acl.c: Likewise.
161         * lib/acl.h: Likewise.
162         * lib/acl_entries.c: Likewise.
163         * lib/areadlink-with-size.c: Likewise.
164         * lib/areadlink.c: Likewise.
165         * lib/areadlink.h: Likewise.
166         * lib/argmatch.c: Likewise.
167         * lib/argmatch.h: Likewise.
168         * lib/argp-ba.c: Likewise.
169         * lib/argp-eexst.c: Likewise.
170         * lib/argp-fmtstream.c: Likewise.
171         * lib/argp-fmtstream.h: Likewise.
172         * lib/argp-fs-xinl.c: Likewise.
173         * lib/argp-help.c: Likewise.
174         * lib/argp-namefrob.h: Likewise.
175         * lib/argp-parse.c: Likewise.
176         * lib/argp-pin.c: Likewise.
177         * lib/argp-pv.c: Likewise.
178         * lib/argp-pvh.c: Likewise.
179         * lib/argp-xinl.c: Likewise.
180         * lib/argp.h: Likewise.
181         * lib/at-func.c: Likewise.
182         * lib/atanl.c: Likewise.
183         * lib/backupfile.c: Likewise.
184         * lib/backupfile.h: Likewise.
185         * lib/basename.c: Likewise.
186         * lib/binary-io.h: Likewise.
187         * lib/byteswap.in.h: Likewise.
188         * lib/c-stack.c: Likewise.
189         * lib/c-stack.h: Likewise.
190         * lib/c-strcasestr.c: Likewise.
191         * lib/c-strcasestr.h: Likewise.
192         * lib/c-strstr.c: Likewise.
193         * lib/c-strstr.h: Likewise.
194         * lib/c-strtod.c: Likewise.
195         * lib/calloc.c: Likewise.
196         * lib/canon-host.c: Likewise.
197         * lib/canon-host.h: Likewise.
198         * lib/canonicalize-lgpl.c: Likewise.
199         * lib/canonicalize.c: Likewise.
200         * lib/canonicalize.h: Likewise.
201         * lib/ceil.c: Likewise.
202         * lib/ceilf.c: Likewise.
203         * lib/ceill.c: Likewise.
204         * lib/chdir-long.c: Likewise.
205         * lib/chdir-long.h: Likewise.
206         * lib/chdir-safer.c: Likewise.
207         * lib/chdir-safer.h: Likewise.
208         * lib/chown.c: Likewise.
209         * lib/classpath.c: Likewise.
210         * lib/classpath.h: Likewise.
211         * lib/clean-temp.c: Likewise.
212         * lib/clean-temp.h: Likewise.
213         * lib/cloexec.c: Likewise.
214         * lib/close-stream.c: Likewise.
215         * lib/closein.c: Likewise.
216         * lib/closein.h: Likewise.
217         * lib/closeout.c: Likewise.
218         * lib/closeout.h: Likewise.
219         * lib/concat-filename.c: Likewise.
220         * lib/copy-file.c: Likewise.
221         * lib/copy-file.h: Likewise.
222         * lib/count-one-bits.h: Likewise.
223         * lib/crc.c: Likewise.
224         * lib/crc.h: Likewise.
225         * lib/creat-safer.c: Likewise.
226         * lib/csharpcomp.c: Likewise.
227         * lib/csharpcomp.h: Likewise.
228         * lib/csharpexec.c: Likewise.
229         * lib/csharpexec.h: Likewise.
230         * lib/cycle-check.c: Likewise.
231         * lib/cycle-check.h: Likewise.
232         * lib/diacrit.c: Likewise.
233         * lib/diacrit.h: Likewise.
234         * lib/diffseq.h: Likewise.
235         * lib/dirchownmod.c: Likewise.
236         * lib/dirent.in.h: Likewise.
237         * lib/dirfd.c: Likewise.
238         * lib/dirfd.h: Likewise.
239         * lib/dirname.c: Likewise.
240         * lib/dirname.h: Likewise.
241         * lib/dummy.c: Likewise.
242         * lib/dup-safer.c: Likewise.
243         * lib/dup2.c: Likewise.
244         * lib/eealloc.h: Likewise.
245         * lib/error.c: Likewise.
246         * lib/error.h: Likewise.
247         * lib/euidaccess.c: Likewise.
248         * lib/exclude.c: Likewise.
249         * lib/exclude.h: Likewise.
250         * lib/execute.c: Likewise.
251         * lib/execute.h: Likewise.
252         * lib/exitfail.c: Likewise.
253         * lib/exitfail.h: Likewise.
254         * lib/expl.c: Likewise.
255         * lib/fatal-signal.c: Likewise.
256         * lib/fatal-signal.h: Likewise.
257         * lib/fbufmode.c: Likewise.
258         * lib/fbufmode.h: Likewise.
259         * lib/fchdir.c: Likewise.
260         * lib/fchmodat.c: Likewise.
261         * lib/fchownat.c: Likewise.
262         * lib/fcntl--.h: Likewise.
263         * lib/fcntl-safer.h: Likewise.
264         * lib/fcntl.in.h: Likewise.
265         * lib/fd-safer.c: Likewise.
266         * lib/fflush.c: Likewise.
267         * lib/file-has-acl.c: Likewise.
268         * lib/file-set.c: Likewise.
269         * lib/file-type.c: Likewise.
270         * lib/file-type.h: Likewise.
271         * lib/fileblocks.c: Likewise.
272         * lib/filemode.c: Likewise.
273         * lib/filemode.h: Likewise.
274         * lib/filename.h: Likewise.
275         * lib/filenamecat.c: Likewise.
276         * lib/filenamecat.h: Likewise.
277         * lib/findprog.c: Likewise.
278         * lib/findprog.h: Likewise.
279         * lib/float.in.h: Likewise.
280         * lib/floor.c: Likewise.
281         * lib/floorf.c: Likewise.
282         * lib/floorl.c: Likewise.
283         * lib/fopen-safer.c: Likewise.
284         * lib/fopen.c: Likewise.
285         * lib/fpending.c: Likewise.
286         * lib/fpending.h: Likewise.
287         * lib/fprintf.c: Likewise.
288         * lib/fprintftime.h: Likewise.
289         * lib/fpucw.h: Likewise.
290         * lib/fpurge.c: Likewise.
291         * lib/fpurge.h: Likewise.
292         * lib/freadable.c: Likewise.
293         * lib/freadable.h: Likewise.
294         * lib/freadahead.c: Likewise.
295         * lib/freadahead.h: Likewise.
296         * lib/freading.c: Likewise.
297         * lib/freading.h: Likewise.
298         * lib/free.c: Likewise.
299         * lib/freopen.c: Likewise.
300         * lib/frexp.c: Likewise.
301         * lib/frexpl.c: Likewise.
302         * lib/fseek.c: Likewise.
303         * lib/fseterr.c: Likewise.
304         * lib/fseterr.h: Likewise.
305         * lib/fstatat.c: Likewise.
306         * lib/fstrcmp.c: Likewise.
307         * lib/fstrcmp.h: Likewise.
308         * lib/fsusage.c: Likewise.
309         * lib/fsusage.h: Likewise.
310         * lib/ftell.c: Likewise.
311         * lib/ftello.c: Likewise.
312         * lib/fts-cycle.c: Likewise.
313         * lib/fts.c: Likewise.
314         * lib/fts_.h: Likewise.
315         * lib/full-read.c: Likewise.
316         * lib/full-read.h: Likewise.
317         * lib/full-write.c: Likewise.
318         * lib/full-write.h: Likewise.
319         * lib/fwritable.c: Likewise.
320         * lib/fwritable.h: Likewise.
321         * lib/fwriteerror.c: Likewise.
322         * lib/fwriteerror.h: Likewise.
323         * lib/fwriting.c: Likewise.
324         * lib/fwriting.h: Likewise.
325         * lib/gcd.c: Likewise.
326         * lib/gcd.h: Likewise.
327         * lib/getcwd.c: Likewise.
328         * lib/getdate.h: Likewise.
329         * lib/getdate.y: Likewise.
330         * lib/getdomainname.c: Likewise.
331         * lib/getdomainname.h: Likewise.
332         * lib/getgroups.c: Likewise.
333         * lib/gethostname.c: Likewise.
334         * lib/gethrxtime.c: Likewise.
335         * lib/gethrxtime.h: Likewise.
336         * lib/getloadavg.c: Likewise.
337         * lib/getndelim2.c: Likewise.
338         * lib/getndelim2.h: Likewise.
339         * lib/getnline.c: Likewise.
340         * lib/getnline.h: Likewise.
341         * lib/getopt.c: Likewise.
342         * lib/getopt.in.h: Likewise.
343         * lib/getopt1.c: Likewise.
344         * lib/getopt_int.h: Likewise.
345         * lib/getpagesize.h: Likewise.
346         * lib/getsubopt.c: Likewise.
347         * lib/gettime.c: Likewise.
348         * lib/getugroups.c: Likewise.
349         * lib/getugroups.h: Likewise.
350         * lib/getusershell.c: Likewise.
351         * lib/gl_anyavltree_list1.h: Likewise.
352         * lib/gl_anyavltree_list2.h: Likewise.
353         * lib/gl_anyhash_list1.h: Likewise.
354         * lib/gl_anyhash_list2.h: Likewise.
355         * lib/gl_anylinked_list1.h: Likewise.
356         * lib/gl_anylinked_list2.h: Likewise.
357         * lib/gl_anyrbtree_list1.h: Likewise.
358         * lib/gl_anyrbtree_list2.h: Likewise.
359         * lib/gl_anytree_list1.h: Likewise.
360         * lib/gl_anytree_list2.h: Likewise.
361         * lib/gl_anytree_oset.h: Likewise.
362         * lib/gl_anytreehash_list1.h: Likewise.
363         * lib/gl_anytreehash_list2.h: Likewise.
364         * lib/gl_array_list.c: Likewise.
365         * lib/gl_array_list.h: Likewise.
366         * lib/gl_array_oset.c: Likewise.
367         * lib/gl_array_oset.h: Likewise.
368         * lib/gl_avltree_list.c: Likewise.
369         * lib/gl_avltree_list.h: Likewise.
370         * lib/gl_avltree_oset.c: Likewise.
371         * lib/gl_avltree_oset.h: Likewise.
372         * lib/gl_avltreehash_list.c: Likewise.
373         * lib/gl_avltreehash_list.h: Likewise.
374         * lib/gl_carray_list.c: Likewise.
375         * lib/gl_carray_list.h: Likewise.
376         * lib/gl_linked_list.c: Likewise.
377         * lib/gl_linked_list.h: Likewise.
378         * lib/gl_linkedhash_list.c: Likewise.
379         * lib/gl_linkedhash_list.h: Likewise.
380         * lib/gl_list.c: Likewise.
381         * lib/gl_list.h: Likewise.
382         * lib/gl_oset.c: Likewise.
383         * lib/gl_oset.h: Likewise.
384         * lib/gl_rbtree_list.c: Likewise.
385         * lib/gl_rbtree_list.h: Likewise.
386         * lib/gl_rbtree_oset.c: Likewise.
387         * lib/gl_rbtree_oset.h: Likewise.
388         * lib/gl_rbtreehash_list.c: Likewise.
389         * lib/gl_rbtreehash_list.h: Likewise.
390         * lib/gl_sublist.c: Likewise.
391         * lib/gl_sublist.h: Likewise.
392         * lib/group-member.c: Likewise.
393         * lib/group-member.h: Likewise.
394         * lib/hard-locale.c: Likewise.
395         * lib/hard-locale.h: Likewise.
396         * lib/hash-pjw.c: Likewise.
397         * lib/hash-pjw.h: Likewise.
398         * lib/hash-triple.c: Likewise.
399         * lib/hash.c: Likewise.
400         * lib/hash.h: Likewise.
401         * lib/human.c: Likewise.
402         * lib/human.h: Likewise.
403         * lib/i-ring.c: Likewise.
404         * lib/i-ring.h: Likewise.
405         * lib/idcache.c: Likewise.
406         * lib/imaxabs.c: Likewise.
407         * lib/imaxdiv.c: Likewise.
408         * lib/inet_pton.c: Likewise.
409         * lib/inet_pton.h: Likewise.
410         * lib/intprops.h: Likewise.
411         * lib/inttostr.c: Likewise.
412         * lib/inttostr.h: Likewise.
413         * lib/inttypes.in.h: Likewise.
414         * lib/isapipe.c: Likewise.
415         * lib/isdir.c: Likewise.
416         * lib/isnan.c: Likewise.
417         * lib/isnan.h: Likewise.
418         * lib/isnanf.c: Likewise.
419         * lib/isnanf.h: Likewise.
420         * lib/isnanl-nolibm.h: Likewise.
421         * lib/isnanl.c: Likewise.
422         * lib/isnanl.h: Likewise.
423         * lib/javacomp.c: Likewise.
424         * lib/javacomp.h: Likewise.
425         * lib/javaexec.c: Likewise.
426         * lib/javaexec.h: Likewise.
427         * lib/javaversion.c: Likewise.
428         * lib/javaversion.h: Likewise.
429         * lib/javaversion.java: Likewise.
430         * lib/lbrkprop.h: Likewise.
431         * lib/lchmod.h: Likewise.
432         * lib/lchown.c: Likewise.
433         * lib/ldexpl.c: Likewise.
434         * lib/linebreak.c: Likewise.
435         * lib/linebreak.h: Likewise.
436         * lib/linebuffer.c: Likewise.
437         * lib/linebuffer.h: Likewise.
438         * lib/locale.in.h: Likewise.
439         * lib/logl.c: Likewise.
440         * lib/long-options.c: Likewise.
441         * lib/long-options.h: Likewise.
442         * lib/lstat.c: Likewise.
443         * lib/lstat.h: Likewise.
444         * lib/math.in.h: Likewise.
445         * lib/mbchar.c: Likewise.
446         * lib/mbchar.h: Likewise.
447         * lib/mbfile.h: Likewise.
448         * lib/mbiter.h: Likewise.
449         * lib/mbscasecmp.c: Likewise.
450         * lib/mbscasestr.c: Likewise.
451         * lib/mbschr.c: Likewise.
452         * lib/mbscspn.c: Likewise.
453         * lib/mbslen.c: Likewise.
454         * lib/mbsncasecmp.c: Likewise.
455         * lib/mbsnlen.c: Likewise.
456         * lib/mbspbrk.c: Likewise.
457         * lib/mbspcasecmp.c: Likewise.
458         * lib/mbsrchr.c: Likewise.
459         * lib/mbssep.c: Likewise.
460         * lib/mbsspn.c: Likewise.
461         * lib/mbsstr.c: Likewise.
462         * lib/mbstok_r.c: Likewise.
463         * lib/mbswidth.c: Likewise.
464         * lib/mbswidth.h: Likewise.
465         * lib/mbuiter.h: Likewise.
466         * lib/memcasecmp.c: Likewise.
467         * lib/memcasecmp.h: Likewise.
468         * lib/memchr.c: Likewise.
469         * lib/memcmp.c: Likewise.
470         * lib/memcoll.c: Likewise.
471         * lib/memcoll.h: Likewise.
472         * lib/memcpy.c: Likewise.
473         * lib/memrchr.c: Likewise.
474         * lib/mkancesdirs.c: Likewise.
475         * lib/mkdir-p.c: Likewise.
476         * lib/mkdir-p.h: Likewise.
477         * lib/mkdir.c: Likewise.
478         * lib/mkdirat.c: Likewise.
479         * lib/mkdtemp.c: Likewise.
480         * lib/mkstemp-safer.c: Likewise.
481         * lib/mkstemp.c: Likewise.
482         * lib/modechange.c: Likewise.
483         * lib/modechange.h: Likewise.
484         * lib/mountlist.c: Likewise.
485         * lib/mountlist.h: Likewise.
486         * lib/mpsort.c: Likewise.
487         * lib/nanosleep.c: Likewise.
488         * lib/obstack.c: Likewise.
489         * lib/obstack.h: Likewise.
490         * lib/open-safer.c: Likewise.
491         * lib/open.c: Likewise.
492         * lib/openat-die.c: Likewise.
493         * lib/openat-priv.h: Likewise.
494         * lib/openat-proc.c: Likewise.
495         * lib/openat.c: Likewise.
496         * lib/openat.h: Likewise.
497         * lib/pagealign_alloc.c: Likewise.
498         * lib/pagealign_alloc.h: Likewise.
499         * lib/physmem.c: Likewise.
500         * lib/physmem.h: Likewise.
501         * lib/pipe-safer.c: Likewise.
502         * lib/pipe.c: Likewise.
503         * lib/pipe.h: Likewise.
504         * lib/posixtm.c: Likewise.
505         * lib/posixtm.h: Likewise.
506         * lib/posixver.c: Likewise.
507         * lib/printf-frexp.c: Likewise.
508         * lib/printf-frexp.h: Likewise.
509         * lib/printf-frexpl.c: Likewise.
510         * lib/printf-frexpl.h: Likewise.
511         * lib/printf.c: Likewise.
512         * lib/progname.c: Likewise.
513         * lib/progname.h: Likewise.
514         * lib/progreloc.c: Likewise.
515         * lib/putenv.c: Likewise.
516         * lib/quote.c: Likewise.
517         * lib/quote.h: Likewise.
518         * lib/quotearg.c: Likewise.
519         * lib/quotearg.h: Likewise.
520         * lib/raise.c: Likewise.
521         * lib/readline.c: Likewise.
522         * lib/readline.h: Likewise.
523         * lib/readlink.c: Likewise.
524         * lib/readtokens.c: Likewise.
525         * lib/readtokens.h: Likewise.
526         * lib/readtokens0.c: Likewise.
527         * lib/readtokens0.h: Likewise.
528         * lib/readutmp.c: Likewise.
529         * lib/readutmp.h: Likewise.
530         * lib/realloc.c: Likewise.
531         * lib/relocwrapper.c: Likewise.
532         * lib/rename-dest-slash.c: Likewise.
533         * lib/rename.c: Likewise.
534         * lib/rmdir.c: Likewise.
535         * lib/rpmatch.c: Likewise.
536         * lib/safe-read.c: Likewise.
537         * lib/safe-read.h: Likewise.
538         * lib/safe-write.c: Likewise.
539         * lib/safe-write.h: Likewise.
540         * lib/same-inode.h: Likewise.
541         * lib/same.c: Likewise.
542         * lib/same.h: Likewise.
543         * lib/save-cwd.c: Likewise.
544         * lib/save-cwd.h: Likewise.
545         * lib/savedir.c: Likewise.
546         * lib/savedir.h: Likewise.
547         * lib/savewd.c: Likewise.
548         * lib/savewd.h: Likewise.
549         * lib/search.in.h: Likewise.
550         * lib/setenv.c: Likewise.
551         * lib/setenv.h: Likewise.
552         * lib/settime.c: Likewise.
553         * lib/sh-quote.c: Likewise.
554         * lib/sh-quote.h: Likewise.
555         * lib/sig2str.c: Likewise.
556         * lib/sig2str.h: Likewise.
557         * lib/signal.in.h: Likewise.
558         * lib/signbitd.c: Likewise.
559         * lib/signbitf.c: Likewise.
560         * lib/signbitl.c: Likewise.
561         * lib/sigprocmask.c: Likewise.
562         * lib/sincosl.c: Likewise.
563         * lib/sleep.c: Likewise.
564         * lib/sprintf.c: Likewise.
565         * lib/sqrtl.c: Likewise.
566         * lib/stat-time.h: Likewise.
567         * lib/stdio--.h: Likewise.
568         * lib/stdio-safer.h: Likewise.
569         * lib/stdlib--.h: Likewise.
570         * lib/stdlib-safer.h: Likewise.
571         * lib/stdlib.in.h: Likewise.
572         * lib/stpcpy.c: Likewise.
573         * lib/stpncpy.c: Likewise.
574         * lib/strchrnul.c: Likewise.
575         * lib/strcspn.c: Likewise.
576         * lib/strerror.c: Likewise.
577         * lib/strftime.c: Likewise.
578         * lib/strftime.h: Likewise.
579         * lib/striconveh.c: Likewise.
580         * lib/striconveh.h: Likewise.
581         * lib/striconveha.c: Likewise.
582         * lib/striconveha.h: Likewise.
583         * lib/stripslash.c: Likewise.
584         * lib/strnlen1.c: Likewise.
585         * lib/strnlen1.h: Likewise.
586         * lib/strtod.c: Likewise.
587         * lib/strtoimax.c: Likewise.
588         * lib/strtok_r.c: Likewise.
589         * lib/strtol.c: Likewise.
590         * lib/strtoll.c: Likewise.
591         * lib/strtoul.c: Likewise.
592         * lib/strtoull.c: Likewise.
593         * lib/sysexits.in.h: Likewise.
594         * lib/tempname.c: Likewise.
595         * lib/tempname.h: Likewise.
596         * lib/timespec.h: Likewise.
597         * lib/tls.c: Likewise.
598         * lib/tls.h: Likewise.
599         * lib/tmpdir.c: Likewise.
600         * lib/tmpdir.h: Likewise.
601         * lib/tmpfile-safer.c: Likewise.
602         * lib/tmpfile.c: Likewise.
603         * lib/trigl.c: Likewise.
604         * lib/trigl.h: Likewise.
605         * lib/trim.c: Likewise.
606         * lib/trim.h: Likewise.
607         * lib/trunc.c: Likewise.
608         * lib/truncf.c: Likewise.
609         * lib/truncl.c: Likewise.
610         * lib/tsearch.c: Likewise.
611         * lib/unicodeio.c: Likewise.
612         * lib/unicodeio.h: Likewise.
613         * lib/unistd--.h: Likewise.
614         * lib/unistd-safer.h: Likewise.
615         * lib/unistdio/ulc-fprintf.c: Likewise.
616         * lib/unistdio/ulc-vfprintf.c: Likewise.
617         * lib/unlinkdir.c: Likewise.
618         * lib/unlinkdir.h: Likewise.
619         * lib/unlocked-io.h: Likewise.
620         * lib/unsetenv.c: Likewise.
621         * lib/userspec.c: Likewise.
622         * lib/utime.c: Likewise.
623         * lib/utimecmp.c: Likewise.
624         * lib/utimecmp.h: Likewise.
625         * lib/utimens.c: Likewise.
626         * lib/verify.h: Likewise.
627         * lib/verror.c: Likewise.
628         * lib/verror.h: Likewise.
629         * lib/version-etc-fsf.c: Likewise.
630         * lib/version-etc.c: Likewise.
631         * lib/version-etc.h: Likewise.
632         * lib/vfprintf.c: Likewise.
633         * lib/vprintf.c: Likewise.
634         * lib/vsprintf.c: Likewise.
635         * lib/w32spawn.h: Likewise.
636         * lib/wait-process.c: Likewise.
637         * lib/wait-process.h: Likewise.
638         * lib/wcwidth.c: Likewise.
639         * lib/write-any-file.c: Likewise.
640         * lib/xalloc-die.c: Likewise.
641         * lib/xalloc.h: Likewise.
642         * lib/xasprintf.c: Likewise.
643         * lib/xgetcwd.c: Likewise.
644         * lib/xgetcwd.h: Likewise.
645         * lib/xgetdomainname.c: Likewise.
646         * lib/xgetdomainname.h: Likewise.
647         * lib/xgethostname.c: Likewise.
648         * lib/xmalloc.c: Likewise.
649         * lib/xmalloca.c: Likewise.
650         * lib/xmalloca.h: Likewise.
651         * lib/xmemcoll.c: Likewise.
652         * lib/xnanosleep.c: Likewise.
653         * lib/xreadlink.c: Likewise.
654         * lib/xreadlink.h: Likewise.
655         * lib/xsetenv.c: Likewise.
656         * lib/xsetenv.h: Likewise.
657         * lib/xstriconv.c: Likewise.
658         * lib/xstriconv.h: Likewise.
659         * lib/xstrndup.c: Likewise.
660         * lib/xstrndup.h: Likewise.
661         * lib/xstrtod.c: Likewise.
662         * lib/xstrtod.h: Likewise.
663         * lib/xstrtol-error.c: Likewise.
664         * lib/xstrtol.c: Likewise.
665         * lib/xstrtol.h: Likewise.
666         * lib/xtime.h: Likewise.
667         * lib/xvasprintf.c: Likewise.
668         * lib/xvasprintf.h: Likewise.
669         * lib/yesno.c: Likewise.
670         * lib/yesno.h: Likewise.
671         * posix-modules: Likewise.
672         * tests/test-alloca-opt.c: Likewise.
673         * tests/test-arcfour.c: Likewise.
674         * tests/test-arctwo.c: Likewise.
675         * tests/test-argmatch.c: Likewise.
676         * tests/test-argp-2.sh: Likewise.
677         * tests/test-argp.c: Likewise.
678         * tests/test-arpa_inet.c: Likewise.
679         * tests/test-array_list.c: Likewise.
680         * tests/test-array_oset.c: Likewise.
681         * tests/test-atexit.c: Likewise.
682         * tests/test-avltree_list.c: Likewise.
683         * tests/test-avltree_oset.c: Likewise.
684         * tests/test-avltreehash_list.c: Likewise.
685         * tests/test-base64.c: Likewise.
686         * tests/test-binary-io.c: Likewise.
687         * tests/test-byteswap.c: Likewise.
688         * tests/test-c-ctype.c: Likewise.
689         * tests/test-c-strcasecmp.c: Likewise.
690         * tests/test-c-strcasestr.c: Likewise.
691         * tests/test-c-strncasecmp.c: Likewise.
692         * tests/test-c-strstr.c: Likewise.
693         * tests/test-canonicalize-lgpl.c: Likewise.
694         * tests/test-canonicalize.c: Likewise.
695         * tests/test-carray_list.c: Likewise.
696         * tests/test-ceilf.c: Likewise.
697         * tests/test-ceill.c: Likewise.
698         * tests/test-count-one-bits.c: Likewise.
699         * tests/test-crc.c: Likewise.
700         * tests/test-dirname.c: Likewise.
701         * tests/test-fbufmode.c: Likewise.
702         * tests/test-fcntl.c: Likewise.
703         * tests/test-fflush.c: Likewise.
704         * tests/test-floorf.c: Likewise.
705         * tests/test-floorl.c: Likewise.
706         * tests/test-fopen.c: Likewise.
707         * tests/test-fprintf-posix.c: Likewise.
708         * tests/test-fprintf-posix.h: Likewise.
709         * tests/test-fpurge.c: Likewise.
710         * tests/test-freadable.c: Likewise.
711         * tests/test-freadahead.c: Likewise.
712         * tests/test-freading.c: Likewise.
713         * tests/test-freopen.c: Likewise.
714         * tests/test-frexp.c: Likewise.
715         * tests/test-frexpl.c: Likewise.
716         * tests/test-fseek.c: Likewise.
717         * tests/test-fseeko.c: Likewise.
718         * tests/test-fseterr.c: Likewise.
719         * tests/test-fstrcmp.c: Likewise.
720         * tests/test-ftell.c: Likewise.
721         * tests/test-ftello.c: Likewise.
722         * tests/test-fwritable.c: Likewise.
723         * tests/test-fwriting.c: Likewise.
724         * tests/test-getaddrinfo.c: Likewise.
725         * tests/test-getpass.c: Likewise.
726         * tests/test-gettimeofday.c: Likewise.
727         * tests/test-hmac-md5.c: Likewise.
728         * tests/test-hmac-sha1.c: Likewise.
729         * tests/test-iconv.c: Likewise.
730         * tests/test-iconvme.c: Likewise.
731         * tests/test-inttypes.c: Likewise.
732         * tests/test-isnan.c: Likewise.
733         * tests/test-isnanf.c: Likewise.
734         * tests/test-isnanl-nolibm.c: Likewise.
735         * tests/test-isnanl.c: Likewise.
736         * tests/test-isnanl.h: Likewise.
737         * tests/test-ldexpl.c: Likewise.
738         * tests/test-linked_list.c: Likewise.
739         * tests/test-linkedhash_list.c: Likewise.
740         * tests/test-locale.c: Likewise.
741         * tests/test-localename.c: Likewise.
742         * tests/test-lock.c: Likewise.
743         * tests/test-lseek.c: Likewise.
744         * tests/test-malloca.c: Likewise.
745         * tests/test-math.c: Likewise.
746         * tests/test-mbscasecmp.c: Likewise.
747         * tests/test-mbscasestr1.c: Likewise.
748         * tests/test-mbscasestr2.c: Likewise.
749         * tests/test-mbscasestr3.c: Likewise.
750         * tests/test-mbscasestr4.c: Likewise.
751         * tests/test-mbschr.c: Likewise.
752         * tests/test-mbscspn.c: Likewise.
753         * tests/test-mbsncasecmp.c: Likewise.
754         * tests/test-mbspbrk.c: Likewise.
755         * tests/test-mbspcasecmp.c: Likewise.
756         * tests/test-mbsrchr.c: Likewise.
757         * tests/test-mbsspn.c: Likewise.
758         * tests/test-mbsstr1.c: Likewise.
759         * tests/test-mbsstr2.c: Likewise.
760         * tests/test-mbsstr3.c: Likewise.
761         * tests/test-md5.c: Likewise.
762         * tests/test-memmem.c: Likewise.
763         * tests/test-netinet_in.c: Likewise.
764         * tests/test-open.c: Likewise.
765         * tests/test-printf-frexp.c: Likewise.
766         * tests/test-printf-frexpl.c: Likewise.
767         * tests/test-printf-posix.c: Likewise.
768         * tests/test-printf-posix.h: Likewise.
769         * tests/test-rbtree_list.c: Likewise.
770         * tests/test-rbtree_oset.c: Likewise.
771         * tests/test-rbtreehash_list.c: Likewise.
772         * tests/test-read-file.c: Likewise.
773         * tests/test-rijndael.c: Likewise.
774         * tests/test-search.c: Likewise.
775         * tests/test-signbit.c: Likewise.
776         * tests/test-sleep.c: Likewise.
777         * tests/test-snprintf-posix.c: Likewise.
778         * tests/test-snprintf-posix.h: Likewise.
779         * tests/test-snprintf.c: Likewise.
780         * tests/test-sprintf-posix.c: Likewise.
781         * tests/test-sprintf-posix.h: Likewise.
782         * tests/test-stat-time.c: Likewise.
783         * tests/test-stdbool.c: Likewise.
784         * tests/test-stdint.c: Likewise.
785         * tests/test-stdio.c: Likewise.
786         * tests/test-stdlib.c: Likewise.
787         * tests/test-stpncpy.c: Likewise.
788         * tests/test-strcasestr.c: Likewise.
789         * tests/test-striconv.c: Likewise.
790         * tests/test-striconveh.c: Likewise.
791         * tests/test-striconveha.c: Likewise.
792         * tests/test-string.c: Likewise.
793         * tests/test-sys_select.c: Likewise.
794         * tests/test-sys_socket.c: Likewise.
795         * tests/test-sys_stat.c: Likewise.
796         * tests/test-sys_time.c: Likewise.
797         * tests/test-sysexits.c: Likewise.
798         * tests/test-time.c: Likewise.
799         * tests/test-tls.c: Likewise.
800         * tests/test-trunc.c: Likewise.
801         * tests/test-truncf.c: Likewise.
802         * tests/test-truncl.c: Likewise.
803         * tests/test-unistd.c: Likewise.
804         * tests/test-vasnprintf-posix.c: Likewise.
805         * tests/test-vasnprintf-posix2.c: Likewise.
806         * tests/test-vasnprintf.c: Likewise.
807         * tests/test-vasprintf-posix.c: Likewise.
808         * tests/test-vasprintf.c: Likewise.
809         * tests/test-verify.c: Likewise.
810         * tests/test-vfprintf-posix.c: Likewise.
811         * tests/test-vprintf-posix.c: Likewise.
812         * tests/test-vsnprintf-posix.c: Likewise.
813         * tests/test-vsnprintf.c: Likewise.
814         * tests/test-vsprintf-posix.c: Likewise.
815         * tests/test-wchar.c: Likewise.
816         * tests/test-wctype.c: Likewise.
817         * tests/test-wcwidth.c: Likewise.
818         * tests/test-xstrtol.c: Likewise.
819         * tests/test-xvasprintf.c: Likewise.
820         * tests/uniconv/test-u16-conv-from-enc.c: Likewise.
821         * tests/uniconv/test-u16-conv-to-enc.c: Likewise.
822         * tests/uniconv/test-u16-strconv-from-enc.c: Likewise.
823         * tests/uniconv/test-u16-strconv-to-enc.c: Likewise.
824         * tests/uniconv/test-u32-conv-from-enc.c: Likewise.
825         * tests/uniconv/test-u32-conv-to-enc.c: Likewise.
826         * tests/uniconv/test-u32-strconv-from-enc.c: Likewise.
827         * tests/uniconv/test-u32-strconv-to-enc.c: Likewise.
828         * tests/uniconv/test-u8-conv-from-enc.c: Likewise.
829         * tests/uniconv/test-u8-conv-to-enc.c: Likewise.
830         * tests/uniconv/test-u8-strconv-from-enc.c: Likewise.
831         * tests/uniconv/test-u8-strconv-to-enc.c: Likewise.
832         * tests/uniname/test-uninames.c: Likewise.
833         * tests/unistdio/test-u16-asnprintf1.c: Likewise.
834         * tests/unistdio/test-u16-asnprintf1.h: Likewise.
835         * tests/unistdio/test-u16-printf1.h: Likewise.
836         * tests/unistdio/test-u16-vasnprintf1.c: Likewise.
837         * tests/unistdio/test-u16-vasnprintf2.c: Likewise.
838         * tests/unistdio/test-u16-vasnprintf3.c: Likewise.
839         * tests/unistdio/test-u16-vasprintf1.c: Likewise.
840         * tests/unistdio/test-u16-vsnprintf1.c: Likewise.
841         * tests/unistdio/test-u16-vsprintf1.c: Likewise.
842         * tests/unistdio/test-u32-asnprintf1.c: Likewise.
843         * tests/unistdio/test-u32-asnprintf1.h: Likewise.
844         * tests/unistdio/test-u32-printf1.h: Likewise.
845         * tests/unistdio/test-u32-vasnprintf1.c: Likewise.
846         * tests/unistdio/test-u32-vasnprintf2.c: Likewise.
847         * tests/unistdio/test-u32-vasnprintf3.c: Likewise.
848         * tests/unistdio/test-u32-vasprintf1.c: Likewise.
849         * tests/unistdio/test-u32-vsnprintf1.c: Likewise.
850         * tests/unistdio/test-u32-vsprintf1.c: Likewise.
851         * tests/unistdio/test-u8-asnprintf1.c: Likewise.
852         * tests/unistdio/test-u8-asnprintf1.h: Likewise.
853         * tests/unistdio/test-u8-printf1.h: Likewise.
854         * tests/unistdio/test-u8-vasnprintf1.c: Likewise.
855         * tests/unistdio/test-u8-vasnprintf2.c: Likewise.
856         * tests/unistdio/test-u8-vasnprintf3.c: Likewise.
857         * tests/unistdio/test-u8-vasprintf1.c: Likewise.
858         * tests/unistdio/test-u8-vsnprintf1.c: Likewise.
859         * tests/unistdio/test-u8-vsprintf1.c: Likewise.
860         * tests/unistdio/test-ulc-asnprintf1.c: Likewise.
861         * tests/unistdio/test-ulc-asnprintf1.h: Likewise.
862         * tests/unistdio/test-ulc-printf1.h: Likewise.
863         * tests/unistdio/test-ulc-vasnprintf1.c: Likewise.
864         * tests/unistdio/test-ulc-vasnprintf2.c: Likewise.
865         * tests/unistdio/test-ulc-vasnprintf3.c: Likewise.
866         * tests/unistdio/test-ulc-vasprintf1.c: Likewise.
867         * tests/unistdio/test-ulc-vsnprintf1.c: Likewise.
868         * tests/unistdio/test-ulc-vsprintf1.c: Likewise.
869         * tests/uniwidth/test-u16-strwidth.c: Likewise.
870         * tests/uniwidth/test-u16-width.c: Likewise.
871         * tests/uniwidth/test-u32-strwidth.c: Likewise.
872         * tests/uniwidth/test-u32-width.c: Likewise.
873         * tests/uniwidth/test-u8-strwidth.c: Likewise.
874         * tests/uniwidth/test-u8-width.c: Likewise.
875         * tests/uniwidth/test-uc_width.c: Likewise.
876         * config/srclist-update: Likewise.
877         (fixlicense): Update to GPLv3+.
878
879         Change copyright notice from LGPLv2.1+ to LGPLv3+.
880         * tests/test-tsearch.c: Change copyright notice.
881
882         Change copyright notice from LGPLv2.0+ to LGPLv3+.
883         * lib/c-strcaseeq.h: Change copyright notice.
884         * lib/streq.h: Likewise.
885         * lib/uniconv.h: Likewise.
886         * lib/uniconv/u-conv-from-enc.h: Likewise.
887         * lib/uniconv/u-conv-to-enc.h: Likewise.
888         * lib/uniconv/u-strconv-from-enc.h: Likewise.
889         * lib/uniconv/u-strconv-to-enc.h: Likewise.
890         * lib/uniconv/u16-conv-from-enc.c: Likewise.
891         * lib/uniconv/u16-conv-to-enc.c: Likewise.
892         * lib/uniconv/u16-strconv-from-enc.c: Likewise.
893         * lib/uniconv/u16-strconv-from-locale.c: Likewise.
894         * lib/uniconv/u16-strconv-to-enc.c: Likewise.
895         * lib/uniconv/u16-strconv-to-locale.c: Likewise.
896         * lib/uniconv/u32-conv-from-enc.c: Likewise.
897         * lib/uniconv/u32-conv-to-enc.c: Likewise.
898         * lib/uniconv/u32-strconv-from-enc.c: Likewise.
899         * lib/uniconv/u32-strconv-from-locale.c: Likewise.
900         * lib/uniconv/u32-strconv-to-enc.c: Likewise.
901         * lib/uniconv/u32-strconv-to-locale.c: Likewise.
902         * lib/uniconv/u8-conv-from-enc.c: Likewise.
903         * lib/uniconv/u8-conv-to-enc.c: Likewise.
904         * lib/uniconv/u8-strconv-from-enc.c: Likewise.
905         * lib/uniconv/u8-strconv-from-locale.c: Likewise.
906         * lib/uniconv/u8-strconv-to-enc.c: Likewise.
907         * lib/uniconv/u8-strconv-to-locale.c: Likewise.
908         * lib/uniname.h: Likewise.
909         * lib/uniname/uniname.c: Likewise.
910         * lib/unistdio.h: Likewise.
911         * lib/unistdio/u-asnprintf.h: Likewise.
912         * lib/unistdio/u-asprintf.h: Likewise.
913         * lib/unistdio/u-printf-args.c: Likewise.
914         * lib/unistdio/u-printf-args.h: Likewise.
915         * lib/unistdio/u-printf-parse.h: Likewise.
916         * lib/unistdio/u-snprintf.h: Likewise.
917         * lib/unistdio/u-sprintf.h: Likewise.
918         * lib/unistdio/u-vasprintf.h: Likewise.
919         * lib/unistdio/u-vsnprintf.h: Likewise.
920         * lib/unistdio/u-vsprintf.h: Likewise.
921         * lib/unistdio/u16-asnprintf.c: Likewise.
922         * lib/unistdio/u16-asprintf.c: Likewise.
923         * lib/unistdio/u16-printf-parse.c: Likewise.
924         * lib/unistdio/u16-snprintf.c: Likewise.
925         * lib/unistdio/u16-sprintf.c: Likewise.
926         * lib/unistdio/u16-u16-asnprintf.c: Likewise.
927         * lib/unistdio/u16-u16-asprintf.c: Likewise.
928         * lib/unistdio/u16-u16-snprintf.c: Likewise.
929         * lib/unistdio/u16-u16-sprintf.c: Likewise.
930         * lib/unistdio/u16-u16-vasnprintf.c: Likewise.
931         * lib/unistdio/u16-u16-vasprintf.c: Likewise.
932         * lib/unistdio/u16-u16-vsnprintf.c: Likewise.
933         * lib/unistdio/u16-u16-vsprintf.c: Likewise.
934         * lib/unistdio/u16-vasnprintf.c: Likewise.
935         * lib/unistdio/u16-vasprintf.c: Likewise.
936         * lib/unistdio/u16-vsnprintf.c: Likewise.
937         * lib/unistdio/u16-vsprintf.c: Likewise.
938         * lib/unistdio/u32-asnprintf.c: Likewise.
939         * lib/unistdio/u32-asprintf.c: Likewise.
940         * lib/unistdio/u32-printf-parse.c: Likewise.
941         * lib/unistdio/u32-snprintf.c: Likewise.
942         * lib/unistdio/u32-sprintf.c: Likewise.
943         * lib/unistdio/u32-u32-asnprintf.c: Likewise.
944         * lib/unistdio/u32-u32-asprintf.c: Likewise.
945         * lib/unistdio/u32-u32-snprintf.c: Likewise.
946         * lib/unistdio/u32-u32-sprintf.c: Likewise.
947         * lib/unistdio/u32-u32-vasnprintf.c: Likewise.
948         * lib/unistdio/u32-u32-vasprintf.c: Likewise.
949         * lib/unistdio/u32-u32-vsnprintf.c: Likewise.
950         * lib/unistdio/u32-u32-vsprintf.c: Likewise.
951         * lib/unistdio/u32-vasnprintf.c: Likewise.
952         * lib/unistdio/u32-vasprintf.c: Likewise.
953         * lib/unistdio/u32-vsnprintf.c: Likewise.
954         * lib/unistdio/u32-vsprintf.c: Likewise.
955         * lib/unistdio/u8-asnprintf.c: Likewise.
956         * lib/unistdio/u8-asprintf.c: Likewise.
957         * lib/unistdio/u8-printf-parse.c: Likewise.
958         * lib/unistdio/u8-snprintf.c: Likewise.
959         * lib/unistdio/u8-sprintf.c: Likewise.
960         * lib/unistdio/u8-u8-asnprintf.c: Likewise.
961         * lib/unistdio/u8-u8-asprintf.c: Likewise.
962         * lib/unistdio/u8-u8-snprintf.c: Likewise.
963         * lib/unistdio/u8-u8-sprintf.c: Likewise.
964         * lib/unistdio/u8-u8-vasnprintf.c: Likewise.
965         * lib/unistdio/u8-u8-vasprintf.c: Likewise.
966         * lib/unistdio/u8-u8-vsnprintf.c: Likewise.
967         * lib/unistdio/u8-u8-vsprintf.c: Likewise.
968         * lib/unistdio/u8-vasnprintf.c: Likewise.
969         * lib/unistdio/u8-vasprintf.c: Likewise.
970         * lib/unistdio/u8-vsnprintf.c: Likewise.
971         * lib/unistdio/u8-vsprintf.c: Likewise.
972         * lib/unistdio/ulc-asnprintf.c: Likewise.
973         * lib/unistdio/ulc-asprintf.c: Likewise.
974         * lib/unistdio/ulc-printf-parse.c: Likewise.
975         * lib/unistdio/ulc-snprintf.c: Likewise.
976         * lib/unistdio/ulc-sprintf.c: Likewise.
977         * lib/unistdio/ulc-vasnprintf.c: Likewise.
978         * lib/unistdio/ulc-vasprintf.c: Likewise.
979         * lib/unistdio/ulc-vsnprintf.c: Likewise.
980         * lib/unistdio/ulc-vsprintf.c: Likewise.
981         * lib/unistr.h: Likewise.
982         * lib/unistr/u-cpy-alloc.h: Likewise.
983         * lib/unistr/u-cpy.h: Likewise.
984         * lib/unistr/u-endswith.h: Likewise.
985         * lib/unistr/u-move.h: Likewise.
986         * lib/unistr/u-set.h: Likewise.
987         * lib/unistr/u-startswith.h: Likewise.
988         * lib/unistr/u-stpcpy.h: Likewise.
989         * lib/unistr/u-stpncpy.h: Likewise.
990         * lib/unistr/u-strcat.h: Likewise.
991         * lib/unistr/u-strcpy.h: Likewise.
992         * lib/unistr/u-strcspn.h: Likewise.
993         * lib/unistr/u-strdup.h: Likewise.
994         * lib/unistr/u-strlen.h: Likewise.
995         * lib/unistr/u-strncat.h: Likewise.
996         * lib/unistr/u-strncpy.h: Likewise.
997         * lib/unistr/u-strnlen.h: Likewise.
998         * lib/unistr/u-strpbrk.h: Likewise.
999         * lib/unistr/u-strspn.h: Likewise.
1000         * lib/unistr/u-strstr.h: Likewise.
1001         * lib/unistr/u-strtok.h: Likewise.
1002         * lib/unistr/u16-check.c: Likewise.
1003         * lib/unistr/u16-chr.c: Likewise.
1004         * lib/unistr/u16-cmp.c: Likewise.
1005         * lib/unistr/u16-cpy-alloc.c: Likewise.
1006         * lib/unistr/u16-cpy.c: Likewise.
1007         * lib/unistr/u16-endswith.c: Likewise.
1008         * lib/unistr/u16-mblen.c: Likewise.
1009         * lib/unistr/u16-mbsnlen.c: Likewise.
1010         * lib/unistr/u16-mbtouc-aux.c: Likewise.
1011         * lib/unistr/u16-mbtouc-unsafe-aux.c: Likewise.
1012         * lib/unistr/u16-mbtouc-unsafe.c: Likewise.
1013         * lib/unistr/u16-mbtouc.c: Likewise.
1014         * lib/unistr/u16-mbtoucr.c: Likewise.
1015         * lib/unistr/u16-move.c: Likewise.
1016         * lib/unistr/u16-next.c: Likewise.
1017         * lib/unistr/u16-prev.c: Likewise.
1018         * lib/unistr/u16-set.c: Likewise.
1019         * lib/unistr/u16-startswith.c: Likewise.
1020         * lib/unistr/u16-stpcpy.c: Likewise.
1021         * lib/unistr/u16-stpncpy.c: Likewise.
1022         * lib/unistr/u16-strcat.c: Likewise.
1023         * lib/unistr/u16-strchr.c: Likewise.
1024         * lib/unistr/u16-strcmp.c: Likewise.
1025         * lib/unistr/u16-strcpy.c: Likewise.
1026         * lib/unistr/u16-strcspn.c: Likewise.
1027         * lib/unistr/u16-strdup.c: Likewise.
1028         * lib/unistr/u16-strlen.c: Likewise.
1029         * lib/unistr/u16-strmblen.c: Likewise.
1030         * lib/unistr/u16-strmbtouc.c: Likewise.
1031         * lib/unistr/u16-strncat.c: Likewise.
1032         * lib/unistr/u16-strncmp.c: Likewise.
1033         * lib/unistr/u16-strncpy.c: Likewise.
1034         * lib/unistr/u16-strnlen.c: Likewise.
1035         * lib/unistr/u16-strpbrk.c: Likewise.
1036         * lib/unistr/u16-strrchr.c: Likewise.
1037         * lib/unistr/u16-strspn.c: Likewise.
1038         * lib/unistr/u16-strstr.c: Likewise.
1039         * lib/unistr/u16-strtok.c: Likewise.
1040         * lib/unistr/u16-to-u32.c: Likewise.
1041         * lib/unistr/u16-to-u8.c: Likewise.
1042         * lib/unistr/u16-uctomb-aux.c: Likewise.
1043         * lib/unistr/u16-uctomb.c: Likewise.
1044         * lib/unistr/u32-check.c: Likewise.
1045         * lib/unistr/u32-chr.c: Likewise.
1046         * lib/unistr/u32-cmp.c: Likewise.
1047         * lib/unistr/u32-cpy-alloc.c: Likewise.
1048         * lib/unistr/u32-cpy.c: Likewise.
1049         * lib/unistr/u32-endswith.c: Likewise.
1050         * lib/unistr/u32-mblen.c: Likewise.
1051         * lib/unistr/u32-mbsnlen.c: Likewise.
1052         * lib/unistr/u32-mbtouc-unsafe.c: Likewise.
1053         * lib/unistr/u32-mbtouc.c: Likewise.
1054         * lib/unistr/u32-mbtoucr.c: Likewise.
1055         * lib/unistr/u32-move.c: Likewise.
1056         * lib/unistr/u32-next.c: Likewise.
1057         * lib/unistr/u32-prev.c: Likewise.
1058         * lib/unistr/u32-set.c: Likewise.
1059         * lib/unistr/u32-startswith.c: Likewise.
1060         * lib/unistr/u32-stpcpy.c: Likewise.
1061         * lib/unistr/u32-stpncpy.c: Likewise.
1062         * lib/unistr/u32-strcat.c: Likewise.
1063         * lib/unistr/u32-strchr.c: Likewise.
1064         * lib/unistr/u32-strcmp.c: Likewise.
1065         * lib/unistr/u32-strcpy.c: Likewise.
1066         * lib/unistr/u32-strcspn.c: Likewise.
1067         * lib/unistr/u32-strdup.c: Likewise.
1068         * lib/unistr/u32-strlen.c: Likewise.
1069         * lib/unistr/u32-strmblen.c: Likewise.
1070         * lib/unistr/u32-strmbtouc.c: Likewise.
1071         * lib/unistr/u32-strncat.c: Likewise.
1072         * lib/unistr/u32-strncmp.c: Likewise.
1073         * lib/unistr/u32-strncpy.c: Likewise.
1074         * lib/unistr/u32-strnlen.c: Likewise.
1075         * lib/unistr/u32-strpbrk.c: Likewise.
1076         * lib/unistr/u32-strrchr.c: Likewise.
1077         * lib/unistr/u32-strspn.c: Likewise.
1078         * lib/unistr/u32-strstr.c: Likewise.
1079         * lib/unistr/u32-strtok.c: Likewise.
1080         * lib/unistr/u32-to-u16.c: Likewise.
1081         * lib/unistr/u32-to-u8.c: Likewise.
1082         * lib/unistr/u32-uctomb.c: Likewise.
1083         * lib/unistr/u8-check.c: Likewise.
1084         * lib/unistr/u8-chr.c: Likewise.
1085         * lib/unistr/u8-cmp.c: Likewise.
1086         * lib/unistr/u8-cpy-alloc.c: Likewise.
1087         * lib/unistr/u8-cpy.c: Likewise.
1088         * lib/unistr/u8-endswith.c: Likewise.
1089         * lib/unistr/u8-mblen.c: Likewise.
1090         * lib/unistr/u8-mbsnlen.c: Likewise.
1091         * lib/unistr/u8-mbtouc-aux.c: Likewise.
1092         * lib/unistr/u8-mbtouc-unsafe-aux.c: Likewise.
1093         * lib/unistr/u8-mbtouc-unsafe.c: Likewise.
1094         * lib/unistr/u8-mbtouc.c: Likewise.
1095         * lib/unistr/u8-mbtoucr.c: Likewise.
1096         * lib/unistr/u8-move.c: Likewise.
1097         * lib/unistr/u8-next.c: Likewise.
1098         * lib/unistr/u8-prev.c: Likewise.
1099         * lib/unistr/u8-set.c: Likewise.
1100         * lib/unistr/u8-startswith.c: Likewise.
1101         * lib/unistr/u8-stpcpy.c: Likewise.
1102         * lib/unistr/u8-stpncpy.c: Likewise.
1103         * lib/unistr/u8-strcat.c: Likewise.
1104         * lib/unistr/u8-strchr.c: Likewise.
1105         * lib/unistr/u8-strcmp.c: Likewise.
1106         * lib/unistr/u8-strcpy.c: Likewise.
1107         * lib/unistr/u8-strcspn.c: Likewise.
1108         * lib/unistr/u8-strdup.c: Likewise.
1109         * lib/unistr/u8-strlen.c: Likewise.
1110         * lib/unistr/u8-strmblen.c: Likewise.
1111         * lib/unistr/u8-strmbtouc.c: Likewise.
1112         * lib/unistr/u8-strncat.c: Likewise.
1113         * lib/unistr/u8-strncmp.c: Likewise.
1114         * lib/unistr/u8-strncpy.c: Likewise.
1115         * lib/unistr/u8-strnlen.c: Likewise.
1116         * lib/unistr/u8-strpbrk.c: Likewise.
1117         * lib/unistr/u8-strrchr.c: Likewise.
1118         * lib/unistr/u8-strspn.c: Likewise.
1119         * lib/unistr/u8-strstr.c: Likewise.
1120         * lib/unistr/u8-strtok.c: Likewise.
1121         * lib/unistr/u8-to-u16.c: Likewise.
1122         * lib/unistr/u8-to-u32.c: Likewise.
1123         * lib/unistr/u8-uctomb-aux.c: Likewise.
1124         * lib/unistr/u8-uctomb.c: Likewise.
1125         * lib/unitypes.h: Likewise.
1126         * lib/uniwidth.h: Likewise.
1127         * lib/uniwidth/cjk.h: Likewise.
1128         * lib/uniwidth/u16-strwidth.c: Likewise.
1129         * lib/uniwidth/u16-width.c: Likewise.
1130         * lib/uniwidth/u32-strwidth.c: Likewise.
1131         * lib/uniwidth/u32-width.c: Likewise.
1132         * lib/uniwidth/u8-strwidth.c: Likewise.
1133         * lib/uniwidth/u8-width.c: Likewise.
1134         * lib/uniwidth/width.c: Likewise.
1135
1136 2007-10-07  Bruno Haible  <bruno@clisp.org>
1137
1138         * lib/inttypes.in.h: Change copyright notice from LGPL to GPL.
1139         The file is still under LGPL (see modules/inttypes).
1140
1141 2007-10-06  Bruno Haible  <bruno@clisp.org>
1142
1143         * modules/trunc (Dependencies): Add 'extensions'.
1144         * m4/trunc.m4 (gl_FUNC_TRUNC): Require gl_USE_SYSTEM_EXTENSIONS.
1145         Reported by Ben Pfaff <blp@gnu.org>.
1146
1147 2007-10-06  Bruno Haible  <bruno@clisp.org>
1148
1149         * modules/freopen-tests: New file.
1150         * tests/test-freopen.c: New file.
1151
1152         * modules/fopen-tests: New file.
1153         * tests/test-fopen.c: New file.
1154
1155         * modules/fopen: New file.
1156         * lib/fopen.c: New file.
1157         * m4/fopen.m4: New file.
1158         * modules/freopen: New file.
1159         * lib/freopen.c: New file.
1160         * m4/freopen.m4: New file.
1161         * lib/stdio.in.h (fopen, freopen): New declarations.
1162         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Initialize also GNULIB_FOPEN,
1163         GNULIB_FREOPEN, REPLACE_FOPEN, REPLACE_FREOPEN.
1164         * modules/stdio (Makefile.am): Substitute also GNULIB_FOPEN,
1165         GNULIB_FREOPEN, REPLACE_FOPEN, REPLACE_FREOPEN.
1166         * doc/functions/fopen.texi: Mention the 'fopen' module.
1167         * doc/functions/freopen.texi: Mention the 'freopen' module.
1168
1169 2007-10-06  Bruno Haible  <bruno@clisp.org>
1170
1171         * modules/open-tests: New file.
1172         * tests/test-open.c: New file.
1173
1174         * modules/open: New file.
1175         * lib/open.c: New file.
1176         * m4/open.m4: New file.
1177         * lib/fchdir.c (open): If the gnulib module 'open' is used, do what
1178         lib/open.c does.
1179         * lib/fcntl.in.h (open): Declare also if replaced by the 'open' module.
1180         * m4/fcntl_h.m4 (gl_FCNTL_MODULE_INDICATOR, gl_FCNTL_H_DEFAULTS): New
1181         macros.
1182         (gl_FCNTL_H): Require gl_FCNTL_H_DEFAULTS.
1183         * modules/fcntl (Makefile.am): Also substitute GNULIB_OPEN and
1184         REPLACE_OPEN.
1185         * doc/functions/open.texi: Mention the 'open' module.
1186
1187 2007-10-04  Bruno Haible  <bruno@clisp.org>
1188
1189         * modules/ceill-tests: New file.
1190         * tests/test-ceill.c: New file.
1191
1192         * modules/ceill: New file.
1193         * lib/ceill.c: Replace entire file.
1194         * m4/ceill.m4: New file.
1195         * lib/math.in.h (ceill): Replace declaration.
1196         * m4/math_h.m4 (gl_MATH_H_DEFAULTS): Initialize GNULIB_CEILL.
1197         * modules/math (Makefile.am): Substitute also GNULIB_CEILL.
1198         * doc/functions/ceill.texi: Mention the 'ceill' module.
1199         * modules/mathl (Files): Remove lib/ceill.c.
1200         (Depends-on): Add ceill.
1201
1202 2007-10-04  Bruno Haible  <bruno@clisp.org>
1203
1204         * modules/ceilf-tests: New file.
1205         * tests/test-ceilf.c: New file.
1206
1207         * modules/ceilf: New file.
1208         * lib/ceil.c: New file.
1209         * lib/ceilf.c: New file.
1210         * m4/ceilf.m4: New file.
1211         * lib/math.in.h (ceilf): New declaration.
1212         * m4/math_h.m4 (gl_MATH_H_DEFAULTS): Initialize GNULIB_CEILF and
1213         HAVE_DECL_CEILF.
1214         * modules/math (Makefile.am): Substitute also GNULIB_CEILF and
1215         HAVE_DECL_CEILF.
1216         * doc/functions/ceilf.texi: Mention the 'ceilf' module.
1217
1218 2007-10-04  Bruno Haible  <bruno@clisp.org>
1219
1220         * modules/floorl-tests: New file.
1221         * tests/test-floorl.c: New file.
1222
1223         * modules/floorl: New file.
1224         * lib/floorl.c: Replace entire file.
1225         * m4/floorl.m4: New file.
1226         * lib/math.in.h (floorl): Replace declaration.
1227         * m4/math_h.m4 (gl_MATH_H_DEFAULTS): Initialize GNULIB_FLOORL.
1228         * modules/math (Makefile.am): Substitute also GNULIB_FLOORL.
1229         * doc/functions/floorl.texi: Mention the 'floorl' module.
1230         * modules/mathl (Files): Remove lib/floorl.c.
1231         (Depends-on): Add floorl.
1232
1233 2007-10-04  Bruno Haible  <bruno@clisp.org>
1234
1235         * modules/floorf-tests: New file.
1236         * tests/test-floorf.c: New file.
1237
1238         * modules/floorf: New file.
1239         * lib/floor.c: New file.
1240         * lib/floorf.c: New file.
1241         * m4/floorf.m4: New file.
1242         * lib/math.in.h (floorf): New declaration.
1243         * m4/math_h.m4 (gl_MATH_H_DEFAULTS): Initialize GNULIB_FLOORF and
1244         HAVE_DECL_FLOORF.
1245         * modules/math (Makefile.am): Substitute also GNULIB_FLOORF and
1246         HAVE_DECL_FLOORF.
1247         * doc/functions/floorf.texi: Mention the 'floorf' module.
1248
1249 2007-10-04  Benoit Sigoure  <tsuna@lrde.epita.fr>
1250             Bruno Haible  <bruno@clisp.org>
1251
1252         Advertise for the Git server instead of the CVS server.
1253         * doc/gnulib-intro.texi (Steady Development): Mention the Git
1254         repository instead of the CVS one.
1255         * doc/gnulib-tool.texi (VCS Issues): Renamed from "CVS Issues". Talk
1256         about all VCS systems generically.
1257         * doc/gnulib.texi (Introduction): Capitalize `Git'.
1258
1259 2007-10-04  Bruno Haible  <bruno@clisp.org>
1260
1261         * doc/gnulib.texi (Function Substitutes): Explain what an absent module
1262         means.
1263         Reported by Benoît Sigoure <tsuna@lrde.epita.fr>.
1264
1265 2007-10-04  Bruno Haible  <bruno@clisp.org>
1266
1267         * modules/truncl-tests: New file.
1268         * tests/test-truncl.c: New file.
1269
1270         * modules/truncl: New file.
1271         * lib/truncl.c: New file.
1272         * m4/truncl.m4: New file.
1273         * lib/math.in.h (truncl): New declaration.
1274         * m4/math_h.m4 (gl_MATH_H_DEFAULTS): Initialize GNULIB_TRUNCL and
1275         HAVE_DECL_TRUNCL.
1276         * modules/math (Makefile.am): Substitute also GNULIB_TRUNCL and
1277         HAVE_DECL_TRUNCL.
1278         * doc/functions/truncl.texi: Mention the 'truncl' module.
1279
1280 2007-10-04  Bruno Haible  <bruno@clisp.org>
1281
1282         * modules/truncf-tests: New file.
1283         * tests/test-truncf.c: New file.
1284
1285         * modules/truncf: New file.
1286         * lib/trunc.c: Make paramerizable through USE_* macros.
1287         * lib/truncf.c: New file.
1288         * m4/truncf.m4: New file.
1289         * lib/math.in.h (truncf): New declaration.
1290         * m4/math_h.m4 (gl_MATH_H_DEFAULTS): Initialize GNULIB_TRUNCF and
1291         HAVE_DECL_TRUNCF.
1292         * modules/math (Makefile.am): Substitute also GNULIB_TRUNCF and
1293         HAVE_DECL_TRUNCF.
1294         * doc/functions/truncf.texi: Mention the 'truncf' module.
1295
1296 2007-10-03  Bruno Haible  <bruno@clisp.org>
1297
1298         * gnulib-tool (func_get_automake_snippet): Synthesize an EXTRA_DIST
1299         augmentation also for tests modules.
1300         * modules/argp-tests (Makefile.am): Remove EXTRA_DIST augmentation.
1301         * modules/atexit-tests (Makefile.am): Likewise.
1302         * modules/binary-io-tests (Makefile.am): Likewise.
1303         * modules/c-strcase-tests (Makefile.am): Likewise.
1304         * modules/canonicalize-lgpl-tests (Makefile.am): Likewise.
1305         * modules/canonicalize-tests (Makefile.am): Likewise.
1306         * modules/closein-tests (Makefile.am): Likewise.
1307         * modules/fprintf-posix-tests (Makefile.am): Likewise.
1308         * modules/freadahead-tests (Makefile.am): Likewise.
1309         * modules/fseek-tests (Makefile.am): Likewise.
1310         * modules/fseeko-tests (Makefile.am): Likewise.
1311         * modules/ftell-tests (Makefile.am): Likewise.
1312         * modules/ftello-tests (Makefile.am): Likewise.
1313         * modules/isnanl-nolibm-tests (Makefile.am): Likewise.
1314         * modules/isnanl-tests (Makefile.am): Likewise.
1315         * modules/lseek-tests (Makefile.am): Likewise.
1316         * modules/mbscasecmp-tests (Makefile.am): Likewise.
1317         * modules/mbscasestr-tests (Makefile.am): Likewise.
1318         * modules/mbschr-tests (Makefile.am): Likewise.
1319         * modules/mbscspn-tests (Makefile.am): Likewise.
1320         * modules/mbsncasecmp-tests (Makefile.am): Likewise.
1321         * modules/mbspbrk-tests (Makefile.am): Likewise.
1322         * modules/mbspcasecmp-tests (Makefile.am): Likewise.
1323         * modules/mbsrchr-tests (Makefile.am): Likewise.
1324         * modules/mbsspn-tests (Makefile.am): Likewise.
1325         * modules/mbsstr-tests (Makefile.am): Likewise.
1326         * modules/printf-posix-tests (Makefile.am): Likewise.
1327         * modules/snprintf-posix-tests (Makefile.am): Likewise.
1328         * modules/sprintf-posix-tests (Makefile.am): Likewise.
1329         * modules/tsearch-tests (Makefile.am): Likewise.
1330         * modules/uniname/uniname-tests (Makefile.am): Likewise.
1331         * modules/unistdio/u16-vasnprintf-tests (Makefile.am): Likewise.
1332         * modules/unistdio/u32-vasnprintf-tests (Makefile.am): Likewise.
1333         * modules/unistdio/u8-vasnprintf-tests (Makefile.am): Likewise.
1334         * modules/unistdio/ulc-vasnprintf-tests (Makefile.am): Likewise.
1335         * modules/vasnprintf-posix-tests (Makefile.am): Likewise.
1336         * modules/vfprintf-posix-tests (Makefile.am): Likewise.
1337         * modules/vprintf-posix-tests (Makefile.am): Likewise.
1338         * modules/vsnprintf-posix-tests (Makefile.am): Likewise.
1339         * modules/vsprintf-posix-tests (Makefile.am): Likewise.
1340         * modules/xstrtoimax-tests (Makefile.am): Likewise.
1341         * modules/xstrtol-tests (Makefile.am): Likewise.
1342         * modules/xstrtoumax-tests (Makefile.am): Likewise.
1343         * modules/yesno-tests (Makefile.am): Likewise.
1344
1345 2007-10-03  Bruno Haible  <bruno@clisp.org>
1346
1347         * modules/trunc-tests: New file.
1348         * tests/test-trunc.c: New file.
1349
1350         * modules/trunc: New file.
1351         * lib/trunc.c: New file.
1352         * m4/trunc.m4: New file.
1353         * lib/math.in.h (trunc): New declaration.
1354         * m4/math_h.m4 (gl_MATH_H_DEFAULTS): Initialize GNULIB_TRUNC and
1355         HAVE_DECL_TRUNC.
1356         * modules/math (Makefile.am): Substitute also GNULIB_TRUNC and
1357         HAVE_DECL_TRUNC.
1358         * doc/functions/trunc.texi: Mention the 'trunc' module.
1359
1360 2007-10-03  Bruno Haible  <bruno@clisp.org>
1361
1362         * tests/test-fpending.c: New file, mostly copied
1363         from coreutils/lib/t-fpending.c.
1364         * modules/fpending-tests: New file.
1365
1366 2007-10-03  Bruno Haible  <bruno@clisp.org>
1367
1368         Port the stdio extensions to QNX (untested).
1369         * lib/fseterr.c (fseterr): Add support for QNX.
1370         * lib/fbufmode.c (fbufmode): Likewise.
1371         * lib/freadable.c (freadable): Likewise.
1372         * lib/fwritable.c (fwritable): Likewise.
1373         * lib/freading.c (freading): Likewise.
1374         * lib/fwriting.c (fwriting): Likewise.
1375         * lib/freadahead.c (freadahed): Likewise.
1376         * lib/fpurge.c (fpurge): Likewise.
1377         * lib/fseeko.c (rpl_fseeko): Likewise.
1378
1379 2007-10-03  Bruno Haible  <bruno@clisp.org>
1380             Jim Meyering  <jim@meyering.net>
1381             Eric Blake  <ebb9@byu.net>
1382
1383         * doc/relocatable.texi: Use @command instead of @program.
1384
1385 2007-10-02  Jim Meyering  <jim@meyering.net>
1386
1387         Perform one more "_.h" -> ".in.h" substitution.
1388         * modules/unistd (Makefile.am) [unistd.h]: Use unistd.h.in
1389         instead of unistd_.h here, too.
1390
1391 2007-10-01  Bruno Haible  <bruno@clisp.org>
1392
1393         * gnulib-tool (func_emit_initmacro_done): Special case for alloca.c.
1394         Needed for the alloca-opt module.
1395
1396 2007-09-30  Bruno Haible  <bruno@clisp.org>
1397
1398         * lib/alloca.in.h: Renamed from lib/alloca_.h.
1399         * modules/alloca-opt (Files, Makefile.am): Use alloca.in.h instead of
1400         alloca_.h.
1401         * lib/argz.in.h: Renamed from lib/argz_.h.
1402         * modules/argz (Files, Makefile.am): Use argz.in.h instead of argz_.h.
1403         * lib/byteswap.in.h: Renamed from lib/byteswap_.h.
1404         * modules/byteswap (Files, Makefile.am): Use byteswap.in.h instead of
1405         byteswap_.h.
1406         * lib/dirent.in.h: Renamed from lib/dirent_.h.
1407         * modules/fchdir (Files, Makefile.am): Use dirent.in.h instead of
1408         dirent_.h.
1409         * lib/fcntl.in.h: Renamed from lib/fcntl_.h.
1410         * modules/fcntl (Files, Makefile.am): Use fcntl.in.h instead of
1411         fcntl_.h.
1412         * lib/float.in.h: Renamed from lib/float_.h.
1413         * modules/float (Files, Makefile.am): Use float.in.h instead of
1414         float_.h.
1415         * lib/fnmatch.in.h: Renamed from lib/fnmatch_.h.
1416         * modules/fnmatch (Files, Makefile.am): Use fnmatch.in.h instead of
1417         fnmatch_.h.
1418         * lib/getopt.in.h: Renamed from lib/getopt_.h.
1419         * modules/getopt (Files, Makefile.am): Use getopt.in.h instead of
1420         getopt_.h.
1421         * lib/glob.in.h: Renamed from lib/glob_.h.
1422         * modules/glob (Files, Makefile.am): Use glob.in.h instead of glob_.h.
1423         * lib/iconv.in.h: Renamed from lib/iconv_.h.
1424         * modules/iconv_open (Files, Makefile.am): Use iconv.in.h instead of
1425         iconv_.h.
1426         * lib/inttypes.in.h: Renamed from lib/inttypes_.h.
1427         * modules/inttypes (Files, Makefile.am): Use inttypes.in.h instead of
1428         inttypes_.h.
1429         * lib/locale.in.h: Renamed from lib/locale_.h.
1430         * modules/locale (Files, Makefile.am): Use locale.in.h instead of
1431         locale_.h.
1432         * lib/math.in.h: Renamed from lib/math_.h.
1433         * modules/math (Files, Makefile.am): Use math.in.h instead of math_.h.
1434         * lib/netinet_in.in.h: Renamed from lib/netinet_in_.h.
1435         * modules/netinet_in (Files, Makefile.am): Use netinet_in.in.h instead
1436         of netinet_in_.h. Add dependency.
1437         * lib/poll.in.h: Renamed from lib/poll_.h.
1438         * modules/poll (Files, Makefile.am): Use poll.in.h instead of poll_.h.
1439         * lib/search.in.h: Renamed from lib/search_.h.
1440         * modules/search (Files, Makefile.am): Use search.in.h instead of
1441         search_.h.
1442         * lib/signal.in.h: Renamed from lib/signal_.h.
1443         * modules/signal (Files, Makefile.am): Use signal.in.h instead of
1444         _signal.h.
1445         * lib/stdbool.in.h: Renamed from lib/stdbool_.h.
1446         * modules/stdbool (Files, Makefile.am): Use stdbool.in.h instead of
1447         stdbool_.h.
1448         * lib/stdint.in.h: Renamed from lib/stdint_.h.
1449         * modules/stdint (Files, Makefile.am): Use stdint.in.h instead of
1450         stdint_.h.
1451         * lib/stdio.in.h: Renamed from lib/stdio_.h.
1452         * modules/stdio (Files, Makefile.am): Use stdio.in.h instead of
1453         stdio_.h.
1454         * lib/stdlib.in.h: Renamed from lib/stdlib_.h.
1455         * modules/stdlib (Files, Makefile.am): Use stdlib.in.h instead of
1456         stdlib_.h.
1457         * lib/string.in.h: Renamed from lib/string_.h.
1458         * modules/string (Files, Makefile.am): Use string.in.h instead of
1459         string_.h.
1460         * doc/gnulib-tool.texi (Initial import): Update.
1461         * lib/sys_select.in.h: Renamed from lib/sys_select_.h.
1462         * modules/sys_select (Files, Makefile.am): Use sys_select.in.h instead
1463         of sys_select_.h. Add dependency.
1464         * lib/sys_socket.in.h: Renamed from lib/sys_socket_.h.
1465         * modules/sys_socket (Files, Makefile.am): Use sys_socket.in.h instead
1466         of sys_socket_.h.
1467         * lib/sys_stat.in.h: Renamed from lib/sys_stat_.h.
1468         * modules/sys_stat (Files, Makefile.am): Use sys_stat.in.h instead of
1469         sys_stat_.h.
1470         * lib/sys_time.in.h: Renamed from lib/sys_time_.h.
1471         * modules/sys_time (Files, Makefile.am): Use sys_time.in.h instead of
1472         sys_time_.h.
1473         * lib/sysexits.in.h: Renamed from lib/sysexits_.h.
1474         * modules/sysexits (Files, Makefile.am): Use sysexits.in.h instead of
1475         sysexits_.h.
1476         * lib/time.in.h: Renamed from lib/time_.h.
1477         * modules/time (Files, Makefile.am): Use time.in.h instead of time_.h.
1478         * lib/unistd.in.h: Renamed from lib/unistd_.h.
1479         * modules/unistd (Files, Makefile.am): Use unistd.in.h instead of
1480         unistd_.h.
1481         * lib/wchar.in.h: Renamed from lib/wchar_.h.
1482         * modules/wchar (Files, Makefile.am): Use wchar.in.h instead of
1483         wchar_.h.
1484         * lib/wctype.in.h: Renamed from lib/wctype_.h.
1485         * modules/wctype (Files, Makefile.am): Use wctype.in.h instead of
1486         wctype_.h.
1487         * build-aux/bootstrap (slurp): Update.
1488         * lib/.cppi-disable: Update.
1489
1490 2007-09-30  Bruno Haible  <bruno@clisp.org>
1491
1492         * tests/test-getaddrinfo.c (AF_UNSPEC): Provide a fallback definition.
1493         Needed on BeOS.
1494
1495 2007-09-30  Bruno Haible  <bruno@clisp.org>
1496
1497         * modules/dirname-tests (check_PROGRAMS): Renamed from noinst_PROGRAMS.
1498
1499 2007-09-29  Bruno Haible  <bruno@clisp.org>
1500
1501         * lib/stdio_.h (getdelim, getline): Add identifiers. Doc tweak.
1502
1503 2007-09-29  Bruno Haible  <bruno@clisp.org>
1504
1505         * lib/xreadlink.c (xreadlink): Simplify to a wrapper around areadlink.
1506         * modules/xreadlink (Depends-on): Add areadlink, remove readlink etc.
1507         * build-aux/install-reloc: Compile also areadlink.c.
1508         * modules/relocatable-prog-wrapper (Files): Add lib/areadlink.[hc].
1509
1510 2007-09-29  Bruno Haible  <bruno@clisp.org>
1511
1512         * gnulib-tool (func_emit_initmacro_done): Indentation.
1513
1514 2007-09-29  Bruno Haible  <bruno@clisp.org>
1515
1516         * README: Add CVS checkout update instructions.
1517         Info from Bob Proulx <bob@proulx.com>.
1518
1519 2007-09-28  Eric Blake  <ebb9@byu.net>
1520
1521         Provide move-if-change.
1522         * build-aux/move-if-change: New file, based on best practice
1523         rather than any canonical upstream location.
1524
1525 2007-09-28  Jim Meyering  <jim@meyering.net>
1526
1527         Fix canonicalize loop-detection corner case.
1528         Do not attempt to stat the symlink values stored via seen_triple.
1529         Without this, coreutils' tests/misc/readlink-fp-loop test would fail
1530         on linux-2.6.18, (but not 2.6.22).
1531         * lib/canonicalize.c (seen_triple): Use triple_compare_ino_str, not
1532         triple_compare.  The former compares dev,ino,filename, while the latter
1533         would actually stat dirname(filename) when dev and ino were equal.
1534         * lib/hash-triple.c: Install <string.h>.
1535         (STREQ): Define.
1536         (triple_compare_ino_str): New function.
1537         * lib/hash-triple.h (triple_compare_ino_str): Declare it.
1538
1539 2007-09-28  Eric Blake  <ebb9@byu.net>
1540
1541         Enforce that AC_REPLACE_FUNCS files exist.
1542         * gnulib-tool (func_emit_initmacro_done): Make AC_LIBSOURCES
1543         override check for typos.
1544
1545         Fix test-closein on Solaris 10.
1546         * tests/test-closein.c (main): Don't assume stdin can be inherited
1547         closed on all systems.
1548         * tests/test-closein.sh: Likewise.
1549         Reported by Piotr Tarnowski.
1550
1551 2007-09-28  Jim Meyering  <jim@meyering.net>
1552
1553         * m4/nanosleep.m4 (gl_FUNC_NANOSLEEP): Fix typo in comment.
1554
1555 2007-09-27  Jim Meyering  <jim@meyering.net>
1556
1557         canonicalize: Avoid a false-positive cycle failure.
1558         * modules/canonicalize (Depends-on): Add file-set and hash-triple.
1559         Sort.  Remove cycle-check.
1560         * lib/canonicalize.c: Include file-set.h and hash-triple.h,
1561         not cycle-check.h.
1562         (seen_triple): New function.
1563         (canonicalize_filename_mode): Use it instead of cycle-check.
1564         * tests/test-canonicalize.c: Add a test for this bug.
1565         * tests/test-canonicalize.sh: Set up and run the test.
1566
1567         New module, file-set, from coreutils.
1568         * modules/file-set: Define it.
1569         * lib/file-set.c, lib/file-set.h: Implement.
1570
1571         New module, hash-triple, from coreutils.
1572         * modules/hash-triple: Define it.
1573         * lib/hash-triple.c, lib/hash-triple.h: Implement.
1574
1575 2007-09-25  Eric Blake  <ebb9@byu.net>
1576
1577         Fix strerror on Interix.
1578         * lib/string_.h (strerror): Declare replacement.
1579         * doc/functions/strerror.texi (strerror): Document the Interix
1580         shortcoming.
1581         * modules/string (Makefile.am): Support new hooks.
1582         * m4/string_h.m4 (gl_HEADER_STRING_H_DEFAULTS): Add new hooks.
1583         * m4/strerror.m4 (gl_FUNC_STRERROR): Defer to
1584         gl_FUNC_STRERROR_SEPARATE.
1585         (gl_FUNC_STRERROR_SEPARATE): Check for Interix bug.
1586         * lib/strerror.c (rpl_strerror): Provide replacement.
1587         * modules/strerror (Depends-on): Add string.
1588         (configure.ac): Detect use of module.
1589         * tests/test-strerror.c: New file.
1590         * modules/strerror-tests: New test module.
1591         * modules/argp (Depends-on): Add strerror.
1592         * modules/error (Depends-on): Likewise.
1593         Reported by Martin Koeppe.
1594
1595 2007-09-24  Bruno Haible  <bruno@clisp.org>
1596
1597         * README: Update git instructions.
1598
1599 2007-09-24  Eric Blake  <ebb9@byu.net>
1600
1601         Revert fpending breakage from 2007-09-08.
1602         * m4/fpending.m4 (gl_FUNC_FPENDING): Don't require existence of
1603         __fpending.c.
1604
1605 2007-09-24  Jim Meyering  <jim@meyering.net>
1606
1607         filenamecat.c: Add a test.
1608         * lib/filenamecat.c (main) [TEST_FILE_NAME_CONCAT]: Add a test
1609         showing how the function works when DIR is the empty string.
1610
1611 2007-09-21  Simon Josefsson  <simon@josefsson.org>
1612
1613         * tests/test-canonicalize.sh: Turn on executable bit.
1614
1615 2007-09-19  Eric Blake  <ebb9@byu.net>
1616
1617         * README: Update CVS instructions.
1618
1619 2007-09-18  Bruno Haible  <bruno@clisp.org>
1620
1621         * modules/areadlink: New file.
1622         * lib/areadlink.h (areadlink): New declaration.
1623         * lib/areadlink.c: New file, based on lib/xreadlink.c.
1624
1625 2007-09-17  Jim Meyering  <jim@meyering.net>
1626
1627         * lib/savewd.c (ESTALE) [!defined]: Define.
1628         Reported to be required on Interix by Martin Koeppe.
1629
1630 2007-09-17  Bruno Haible  <bruno@clisp.org>
1631
1632         * gnulib-tool (func_version): Use $version.
1633
1634 2007-09-16  Bruno Haible  <bruno@clisp.org>
1635
1636         * m4/printf.m4 (gl_PRINTF_LONG_DOUBLE, gl_PRINTF_INFINITE,
1637         gl_PRINTF_INFINITE_LONG_DOUBLE): Increase buf's size from 100 to 10000.
1638         Needed on glibc-2.6.1 with -fstack-protector -D_FORTIFY_SOURCE=2.
1639         Reported by Greg Schafer <gschafer@zip.com.au>.
1640
1641 2007-09-15  Bruno Haible  <bruno@clisp.org>
1642
1643         * gnulib-tool (sed): Try a little harder to make bash understand the
1644         alias.
1645         Reported by Bruce Korb <bruce.korb@gmail.com>.
1646
1647 2007-09-13  Eric Blake  <ebb9@byu.net>
1648
1649         * ChangeLog: Remove conflict markers.
1650
1651 2007-09-13  Simon Josefsson  <simon@josefsson.org>
1652
1653         * lib/gc-gnulib.c (gc_hash_open): Catch NULL calloc return value.
1654         Reported by Bruno Haible <bruno@clisp.org>.
1655
1656 2007-09-12  Bruno Haible  <bruno@clisp.org>
1657
1658         * m4/lock.m4: Don't provide an AC_USE_SYSTEM_EXTENSIONS definition.
1659         (gl_LOCK_EARLY_BODY): Use AC_GNU_SOURCE when AC_USE_SYSTEM_EXTENSIONS
1660         is not defined.
1661
1662 2007-09-12  Eric Blake  <ebb9@byu.net>
1663
1664         Track CVS Autoconf on AC_USE_SYSTEM_EXTENSIONS.
1665         * m4/extensions.m4 (AC_USE_SYSTEM_EXTENSIONS): Update to CVS
1666         Autoconf definition.
1667         * modules/euidaccess (Depends-on): Add extensions, for
1668         AC_USE_SYSTEM_EXTENSIONS with autoconf <= 2.59.
1669         * modules/fnmatch (Depends-on): Likewise.
1670         * modules/getaddrinfo (Depends-on): Likewise.
1671         * modules/getdelim (Depends-on): Likewise.
1672         * modules/getline (Depends-on): Likewise.
1673         * modules/getsubopt (Depends-on): Likewise.
1674         * modules/gettext (Depends-on): Likewise.
1675         * modules/group-member (Depends-on): Likewise.
1676         * modules/mbchar (Depends-on): Likewise.
1677         * modules/memmem (Depends-on): Likewise.
1678         * modules/mempcpy (Depends-on): Likewise.
1679         * modules/memrchr (Depends-on): Likewise.
1680         * modules/pagealign_alloc (Depends-on): Likewise.
1681         * modules/readutmp (Depends-on): Likewise.
1682         * modules/stpcpy (Depends-on): Likewise.
1683         * modules/stpncpy (Depends-on): Likewise.
1684         * modules/strchrnul (Depends-on): Likewise.
1685         * modules/strndup (Depends-on): Likewise.
1686         * modules/strsep (Depends-on): Likewise.
1687         * modules/strverscmp (Depends-on): Likewise.
1688         * modules/vasprintf (Depends-on): Likewise.
1689         * modules/wcwidth (Depends-on): Likewise.
1690         * m4/euidaccess.m4 (gl_FUNC_EUIDACCESS): AC_GNU_SOURCE will be
1691         obsolete in Autoconf 2.62; use AC_USE_SYSTEM_EXTENSIONS instead.
1692         * m4/fnmatch.m4 (gl_FUNC_FNMATCH_GNU): Likewise.
1693         * m4/getaddrinfo.m4 (gl_PREREQ_GETADDR_INFO): Likewise.
1694         * m4/getdelim.m4 (gl_FUNC_GETDELIM): Likewise.
1695         * m4/getline.m4 (gl_FUNC_GETLINE): Likewise.
1696         * m4/getsubopt.m4 (gl_FUNC_GETSUBOPT): Likewise.
1697         * m4/glob.m4 (gl_PREREQ_GLOB): Likewise.
1698         * m4/group-member.m4 (gl_FUNC_GROUP_MEMBER): Likewise.
1699         * m4/mbchar.m4 (gl_MBCHAR): Likewise.
1700         * m4/memmem.m4 (gl_FUNC_MEMMEM): Likewise.
1701         * m4/mempcpy.m4 (gl_FUNC_MEMPCPY): Likewise.
1702         * m4/memrchr.m4 (gl_FUNC_MEMRCHR): Likewise.
1703         * m4/mmap-anon.m4 (gl_FUNC_MMAP_ANON): Likewise.
1704         * m4/pagealign_alloc.m4 (gl_PAGEALIGN_ALLOC): Likewise.
1705         * m4/readutmp.m4 (gl_READUTMP): Likewise.
1706         * m4/regex.m4 (gl_PREREQ_REGEX): Likewise.
1707         * m4/stpcpy.m4 (gl_FUNC_STPCPY): Likewise.
1708         * m4/stpncpy.m4 (gl_FUNC_STPNCPY): Likewise.
1709         * m4/strchrnul.m4 (gl_FUNC_STRCHRNUL): Likewise.
1710         * m4/strndup.m4 (gl_FUNC_STRNDUP): Likewise.
1711         * m4/strnlen.m4 (gl_FUNC_STRNLEN): Likewise.
1712         * m4/strsep.m4 (gl_FUNC_STRSEP): Likewise.
1713         * m4/strverscmp.m4 (gl_FUNC_STRVERSCMP): Likewise.
1714         * m4/vasprintf.m4 (gl_PREREQ_VASPRINTF_H): Likewise.
1715         * m4/wcwidth.m4 (gl_FUNC_WCWIDTH): Likewise.
1716         * m4/lock.m4 (gl_LOCK_EARLY_BODY): Likewise, but provide fallback,
1717         so that lock.m4 can be used in gettext without extensions module.
1718
1719 2007-09-11  Bruno Haible  <bruno@clisp.org>
1720
1721         * m4/isc-posix.m4: Remove file.
1722         Suggested by Eric Blake.
1723
1724 2007-09-11  Eric Blake  <ebb9@byu.net>
1725
1726         * ChangeLog: Restore lines accidentally truncated 2007-04-06.
1727
1728 2007-09-10  Bruno Haible  <bruno@clisp.org>
1729
1730         * posix-modules: Fix typo in error message.
1731         Reported by Matt <mkraai@beckman.com>.
1732
1733 2007-09-09  Bruno Haible  <bruno@clisp.org>
1734
1735         * doc/functions/getdelim.texi: Update list of platforms lacking the
1736         function.
1737         * doc/functions/getline.texi: Likewise.
1738
1739 2007-09-09  Jim Meyering  <jim@meyering.net>
1740
1741         * lib/hash.c (hash_initialize): Detect calloc failure.
1742         Reported by Bruno Haible.
1743
1744 2007-09-09  Bruno Haible  <bruno@clisp.org>
1745
1746         * lib/canonicalize-lgpl.c (__realpath): Set errno to ENOMEM when
1747         malloc or realloc fails.
1748
1749 2007-09-09  Bruno Haible  <bruno@clisp.org>
1750
1751         * modules/getcwd (Depends-on): Add malloc-posix.
1752         * modules/glob (Depends-on): Likewise.
1753         * modules/putenv (Depends-on): Likewise.
1754         * modules/strdup (Depends-on): Likewise.
1755         * modules/getdelim (Depends-on): Add realloc-posix.
1756         * modules/read-file (Depends-on): Likewise.
1757
1758 2007-09-09  Bruno Haible  <bruno@clisp.org>
1759
1760         * m4/malloc.m4 (gl_CHECK_MALLOC_POSIX): New macro.
1761         (gl_FUNC_MALLOC_POSIX): Require it.
1762         * m4/realloc.m4 (gl_FUNC_REALLOC_POSIX): Likewise.
1763         * m4/calloc.m4 (gl_FUNC_CALLOC_POSIX): Likewise.
1764         * modules/realloc (Files): Add m4/malloc.m4.
1765         * modules/calloc (Files): Likewise.
1766
1767 2007-09-09  Bruno Haible  <bruno@clisp.org>
1768
1769         * modules/malloc-posix: New file.
1770         * modules/malloc (Depends-on): Add malloc-posix.
1771         * lib/malloc.c: Include errno.h.
1772         (rpl_malloc): Merge the requirements of a glibc-compatible malloc
1773         and a POSIX-compatible malloc into a single function. Set ENOMEM
1774         when returning NULL.
1775         * m4/malloc.m4: New file.
1776         * doc/functions/malloc.texi: Mention the malloc-posix module.
1777         * lib/stdlib_.h (malloc): New declaration.
1778         * m4/stdlib_h.m4 (gl_STDLIB_H_DEFAULTS): Initialize
1779         GNULIB_MALLOC_POSIX and HAVE_MALLOC_POSIX.
1780         * modules/stdlib (stdlib.h): Substitute also GNULIB_MALLOC_POSIX
1781         and HAVE_MALLOC_POSIX.
1782
1783 2007-09-09  Bruno Haible  <bruno@clisp.org>
1784
1785         * modules/realloc-posix: New file.
1786         * modules/realloc (Depends-on): Add realloc-posix.
1787         * lib/realloc.c: Include errno.h.
1788         (rpl_realloc): Merge the requirements of a glibc-compatible realloc
1789         and a POSIX-compatible realloc into a single function. Set ENOMEM
1790         when returning NULL.
1791         * m4/realloc.m4: New file.
1792         * doc/functions/realloc.texi: Mention the realloc-posix module.
1793         * lib/stdlib_.h (realloc): New declaration.
1794         * m4/stdlib_h.m4 (gl_STDLIB_H_DEFAULTS): Initialize
1795         GNULIB_REALLOC_POSIX and HAVE_REALLOC_POSIX.
1796         * modules/stdlib (stdlib.h): Substitute also GNULIB_REALLOC_POSIX
1797         and HAVE_REALLOC_POSIX.
1798
1799 2007-09-09  Bruno Haible  <bruno@clisp.org>
1800
1801         * modules/calloc-posix: New file.
1802         * modules/calloc (Depends-on): Add calloc-posix.
1803         * lib/calloc.c: Include errno.h.
1804         (rpl_calloc): Merge the requirements of a glibc-compatible calloc
1805         and a POSIX-compatible calloc into a single function. Set ENOMEM
1806         when returning NULL.
1807         * m4/calloc.m4 (gl_FUNC_CALLOC_POSIX): New macro.
1808         * doc/functions/calloc.texi: Mention the calloc-posix module.
1809         * lib/stdlib_.h (calloc): New declaration.
1810         * m4/stdlib_h.m4 (gl_STDLIB_H_DEFAULTS): Initialize
1811         GNULIB_CALLOC_POSIX and HAVE_CALLOC_POSIX.
1812         * modules/stdlib (stdlib.h): Substitute also GNULIB_CALLOC_POSIX
1813         and HAVE_CALLOC_POSIX.
1814
1815 2007-09-09  Bruno Haible  <bruno@clisp.org>
1816
1817         Allow for modules to show an arbitrary notice.
1818         * modules/TEMPLATE-EXTENDED: Add 'Notice' field.
1819         * gnulib-tool: New option --extract-notice.
1820         (func_usage): Document it.
1821         (sed_extract_prog): Update.
1822         (func_get_notice): New function.
1823         (func_modules_notice): New function.
1824         (func_import, func_create_testdir): Invoke it.
1825         Suggested by Jim Meyering.
1826
1827 2007-09-09  Bruno Haible  <bruno@clisp.org>
1828
1829         * gnulib-tool: New options --verbose, --quiet.
1830         (func_usage): Document them.
1831         (verbose): New variable.
1832         (func_execute_command): New function.
1833         (func_import): Don't show the module list and the file list if
1834         $verbose < 0.
1835         (func_create_testdir): Likewise. Use func_execute_command.
1836         (func_create_megatestdir): Use func_execute_command.
1837
1838 2007-09-08  Bruno Haible  <bruno@clisp.org>
1839
1840         * gnulib-tool (func_import): Prefer rsync over wget when available,
1841         for fetching the PO files.
1842
1843 2007-09-08  Bruno Haible  <bruno@clisp.org>
1844
1845         * posix-modules: New file. Portions copied from gnulib-tool.
1846         * doc/gnulib.texi (POSIX Substitutes Library): New chapter.
1847
1848 2007-09-08  Jim Meyering  <jim@meyering.net>
1849
1850         Rename __fpending.c -> fpending.c and __fpending.h -> fpending.h
1851         * lib/fpending.h: Rename from __fpending.h.
1852         * lib/fpending.c: Rename from __fpending.c.
1853         Include "fpending.h", not "__fpending.h".
1854         * lib/__fpending.h, lib/__fpending.c: Remove files.
1855         * modules/fpending (Files): Reflect new file names.
1856         * lib/close-stream.c: Include "fpending.h", not "__fpending.h".
1857
1858 2007-09-08  Bruno Haible  <bruno@clisp.org>
1859
1860         * m4/inttypes-h.m4: Remove stub file.
1861
1862 2007-09-07  Simon Josefsson  <simon@josefsson.org>
1863
1864         * doc/headers/stdint.texi: Discuss #include_next issue.
1865
1866 2007-09-06  Paul Eggert  <eggert@cs.ucla.edu>
1867
1868         * build-aux/bootstrap: Remove obsolete comment about wget --help.
1869
1870 2007-09-06  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
1871
1872         * m4/time_h.m4 (gl_CHECK_TYPE_STRUCT_TIMESPEC): Fix misspelling
1873         in variable name.
1874
1875 2007-09-03  Jim Meyering  <jim@meyering.net>
1876
1877         New module: git-version-gen.
1878         * modules/git-version-gen: New file.
1879
1880         Import changes from coreutils for bootstrap script.
1881
1882         * build-aux/bootstrap (WGET_COMMAND): Remove code to set this variable.
1883
1884         bootstrap: uses rsync to download the .po files
1885         * build-aux/bootstrap (po_download_command_format): New global.
1886         (download_po_files): Use rsync.
1887         (update_po_files): Don't remove .po files after download,
1888         so future rsync runs can take advantage of the copies.
1889
1890         * build-aux/bootstrap (gnulib_tool): Make sha1sum check quietly.
1891
1892         Solve the unnecessary-.po-file-regeneration problem once and for all.
1893         * build-aux/bootstrap (download_po_files): New function, renamed from
1894         get_translations.  Now, downloads, but doesn't update LINGUAS.
1895         (update_po_files): New function.
1896
1897         bootstrap: Ignore more.
1898         * build-aux/bootstrap (symlink_to_dir): Add a directory name like
1899         uniwidth to e.g., lib/.gitignore.
1900         (slurp): Handle the sys_stat_.h -> sys mapping, too.
1901
1902         * build-aux/bootstrap: New setting: vc_ignore.
1903         (insert_sorted_if_absent): Create $file if absent.
1904         Adapt to new, possibly empty, list: $vc_ignore.
1905
1906         bootstrap: generate more ignorable names
1907         * build-aux/bootstrap (slurp): When generating ignorable names,
1908         also map .sin to .sed, .gperf to .c, and .y to .c.
1909
1910 2007-09-03  Jim Meyering  <jim@meyering.net>
1911
1912         * build-aux/git-version-gen: New file, from coreutils.  For details, see
1913         http://git.sv.gnu.org/gitweb/?p=coreutils.git;a=commitdiff;h=bfe49f506
1914
1915 2007-09-02  Bruno Haible  <bruno@clisp.org>
1916
1917         Fix mis-recognition of 'mcs' on QNX 6.
1918         * m4/csharpcomp.m4 (gt_CSHARPCOMP): Test whether the "mcs --version"
1919         output contains the string "Mono".
1920         * lib/csharpcomp.c (compile_csharp_using_mono): Likewise.
1921         Reported by <kraai@ftbfs.org> at <https://savannah.gnu.org/bugs/?18337>.
1922
1923 2007-09-01  Bruno Haible  <bruno@clisp.org>
1924
1925         Fix collision between uniwidth/* and linebreak modules.
1926         * lib/linebreak.h (locale_charset, uc_width, u8_width, u16_width,
1927         u32_width): Remove declarations.
1928         * lib/linebreak.c: Include uniwidth.h, uniwidth/cjk.h, streq.h.
1929         (u32_mbtouc_unsafe, streq9, streq8, streq7, streq6, streq5, streq4,
1930         streq3, streq2, streq1, streq0): Remove functions.
1931         (STREQ): Remove macro.
1932         (is_cjk_encoding): Remove function.
1933         (nonspacing_table_data, nonspacing_table_ind): Remove constants.
1934         (uc_width, u8_width, u16_width, u32_width): Remove functions.
1935         * modules/linebreak (Depends-on): Add streq, uniwidth/width.
1936         * NEWS: Document the change.
1937
1938 2007-09-01  Bruno Haible  <bruno@clisp.org>
1939
1940         * lib/streq.h: Add double-inclusion guard.
1941
1942 2007-09-01  Karl Berry  <karl@gnu.org>
1943
1944         * MODULES.html.sh: Rename mreadlink_with_size to areadlink_with_size.
1945
1946 2007-08-28  Jim Meyering  <jim@meyering.net>
1947
1948         Rename mreadlink_with_size to areadlink_with_size.
1949         * NEWS: Document the change.
1950         * lib/mreadlink-with-size.c (mreadlink_with_size): Rename this to...
1951         * lib/areadlink-with-size.c (areadlink_with_size): ...this.
1952         * lib/mreadlink.h: Rename this to...
1953         * lib/areadlink.h: ...this.
1954         * modules/mreadlink-with-size: Rename this to...
1955         * modules/areadlink-with-size: ...this.
1956         * lib/canonicalize.c: Reflect the renaming.
1957         * modules/canonicalize: Likewise.
1958
1959 2007-08-26  Bruno Haible  <bruno@clisp.org>
1960
1961         * gnulib-tool (func_import): When deciding which files to remove,
1962         consider also dangling symbolic links.
1963         Reported by Eric Blake.
1964
1965 2007-08-26  Bruno Haible  <bruno@clisp.org>
1966
1967         * gnulib-tool (func_ln_if_changed): Use "test -h", not "test -L".
1968
1969 2007-08-23  Simon Josefsson  <simon@josefsson.org>
1970
1971         * lib/readline.c: Don't include getline.h, the prototype is now
1972         found in stdio.h.
1973
1974 2007-08-23  Jim Meyering  <jim@meyering.net>
1975
1976         Getdelim touchup.
1977         * lib/getdelim.c (getdelim): Don't bother to save/restore errno
1978         around the funlockfile call, since funlockfile never sets errno.
1979         Don't set errno upon failed realloc.
1980
1981 2007-08-22  Eric Blake  <ebb9@byu.net>
1982
1983         Getline touchups.
1984         * lib/getdelim.c (getdelim): Revert regression that required *n to
1985         be 0 when *lineptr is NULL.  Preserve errno across funlockfile.
1986         * m4/getdelim.m4 (gl_FUNC_GETDELIM): Check for declaration of
1987         getdelim, rather than whether implementation is missing.
1988         * m4/getline.m4 (gl_FUNC_GETLINE): Likewise for getline.
1989         * lib/stdio_.h (getline): Also declare if replacement is
1990         required.
1991         * doc/functions/getdelim.texi: New file.
1992         * doc/functions/getline.texi: Likewise.
1993         * doc/gnulib.texi (Function Substitutes): Add new files.
1994         Reported by Bruno Haible.
1995
1996 2007-08-22  Ludovic Courtès  <ludo@gnu.org>
1997
1998         * users.txt: Add Guile.
1999
2000 2007-08-22  Eric Blake  <ebb9@byu.net>
2001
2002         * tests/test-getdelim.c (main): Use remove, not unlink.
2003         * tests/test-getline.c (main): Likewise.
2004
2005         Move getline and getdelim into stdio.h, per POSIX 200x.
2006         * modules/getline (Files): Remove getline.h.
2007         (Depends-on): Add stdio.
2008         (configure.ac): Add module indicator.
2009         * modules/getdelim (Files): Remove getdelim.h.
2010         (Depends-on): Add stdio.
2011         (configure.ac): Add module indicator.
2012         * modules/stdio (Makefile.am): Work with new indicators.
2013         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Add new defaults.
2014         * m4/getdelim.m4 (gl_FUNC_GETDELIM): Work with stdio needs.
2015         * m4/getline.m4 (gl_FUNC_GETLINE): Likewise.
2016         * lib/getdelim.h: Delete.
2017         * lib/getline.h: Delete.
2018         * lib/stdio_.h (getdelim, getline): Declare.
2019         * modules/getdelim-tests: New module.
2020         * modules/getline-tests: Likewise.
2021         * tests/test-getdelim.c: New file.
2022         * tests/test-getline.c: Likewise.
2023         * NEWS: Document the change.
2024         * lib/getline.c: Update choice of header.
2025         * lib/csharpcomp.c: Likewise.
2026         * lib/getpass.c: Likewise.
2027         * lib/javacomp.c: Likewise.
2028         * lib/javaversion.c: Likewise.
2029         * lib/yesno.c: Likewise.
2030         * lib/getdelim.c: Likewise.
2031         (getdelim): Set errno on failure, and avoid memory leak.
2032
2033 2007-08-19  Bruno Haible  <bruno@clisp.org>
2034
2035         * modules/closein (Depends-on): Add freadahead.
2036         * lib/closein.c: Include freadahead.h.
2037         (close_stdin): Skip the fseeko and fflush calls if freadahead(stdin)
2038         is zero.
2039
2040 2007-08-19  Bruno Haible  <bruno@clisp.org>
2041
2042         * modules/freadahead-tests: New file.
2043         * tests/test-freadahead.sh: New file.
2044         * tests/test-freadahead.c: New file.
2045
2046         * modules/freadahead: New file.
2047         * lib/freadahead.h: New file.
2048         * lib/freadahead.c: New file.
2049         * MODULES.html.sh (File stream based Input/Output): Add freadahead,
2050         fbufmode, fpurge, freadable, fwritable.
2051
2052 2007-08-19  Eric Blake  <ebb9@byu.net>
2053
2054         Test yesno in combination with closein.
2055         * lib/yesno.c (yesno): Document use of stdin.
2056         * modules/yesno-tests (Files): New module.
2057         * tests/test-yesno.c (main): New file.
2058         * tests/test-yesno.sh: Likewise.
2059
2060 2007-08-19  Bruno Haible  <bruno@clisp.org>
2061
2062         * lib/fbufmode.c (fbufmode): Add tentative support for Solaris/AMD64.
2063         * lib/fseeko.c (rpl_fseeko): Likewise.
2064         * lib/fseterr.c (fseterr): Likewise.
2065
2066 2007-08-19  Bruno Haible  <bruno@clisp.org>
2067
2068         * tests/test-lseek.c (main): Disable a test for BeOS.
2069         * doc/functions/lseek.texi: Document the BeOS bug.
2070
2071 2007-08-19  Bruno Haible  <bruno@clisp.org>
2072             Eric Blake  <ebb9@byu.net>
2073
2074         * lib/lseek.c: Include <sys/stat.h>.
2075         (rpl_lseek): Add workaround code also for Unix platforms.
2076         Needed for BeOS.
2077         * m4/lseek.m4 (gl_FUNC_LSEEK): When cross-compiling, fail on BeOS.
2078         * doc/functions/lseek.texi: Document BeOS definiency.
2079
2080 2007-08-18  Bruno Haible  <bruno@clisp.org>
2081
2082         * modules/fstrcmp-tests: New file.
2083         * tests/test-fstrcmp.c: New file.
2084
2085 2007-08-18  Bruno Haible  <bruno@clisp.org>
2086
2087         * modules/fstrcmp: New file, from GNU gettext with modifications.
2088         * lib/fstrcmp.h: New file, from GNU gettext.
2089         * lib/fstrcmp.c: New file, from GNU gettext.
2090         * MODULES.html.sh (String handling): Add fstrcmp.
2091
2092 2007-08-18  Bruno Haible  <bruno@clisp.org>
2093
2094         * lib/diffseq.h (struct context): Change type of 'heuristic' field to
2095         'bool'.
2096         (diag, compareseq): Remove const from the ctxt argument.
2097         (USE_HEURISTIC): Undefine at the end.
2098
2099 2007-08-18  Jim Meyering  <jim@meyering.net>
2100
2101         New file: lib/idcache.h
2102         * NEWS: Mention the addition.
2103         * modules/idcache (Files): Add lib/idcache.h
2104         * lib/idcache.c: Include "idcache.h".
2105         Don't include <sys/types.h>.
2106         Add a FIXME comment.
2107         Move file-scoped "static" declarations to the top.
2108         * lib/idcache.h: New file.  Include <sys/types.h> here, instead.
2109
2110 2007-08-17  Bruno Haible  <bruno@clisp.org>
2111         and Paul Eggert  <eggert@cs.ucla.edu>
2112
2113         * MODULES.html.sh: Add diffseq.
2114         * modules/diffseq: New file.
2115         * lib/diffseq.h: New file, from GNU gettext with a few minor changes,
2116         extracted from GNU gettext's fstrcmp.c and GNU diff's analyze.c.
2117
2118 2007-08-15  Paul Eggert  <eggert@cs.ucla.edu>
2119
2120         Import changes from coreutils for bootstrap script.
2121
2122         2007-07-21  Paul Eggert  <eggert@cs.ucla.edu>
2123
2124         * build-aux/bootstrap (slurp): Work even in environments where
2125         "ls" defaults to "ls -A".  Put in a FIXME, though, since the
2126         current code does not slurp files whose names start with ".", and
2127         this looks like it might be a troublesome area.
2128
2129         2007-07-11  Jim Meyering  <jim@meyering.net>
2130
2131         If there's a GPL vN copyright comment, require that N == 3.
2132
2133         2007-07-08  Jim Meyering  <jim@meyering.net>
2134
2135         Run the coreutils-specific code only if tests/Makefile.am.in exists.
2136         * build-aux/bootstrap (mam_template): Move definition out of loop.
2137
2138         Create symlinks for gl/{lib,m4}/*, just as for gnulib/{lib,m4}/*.
2139
2140         * build-aux/bootstrap (symlink_to_dir): Rename function from
2141         symlink_to_gnulib.  Add a directory parameter.  Update all
2142         callers.
2143         (cp_mark_as_generated): Also check for -- and link to -- files in
2144         gl/.
2145
2146         2007-07-08  Jim Meyering  <jim@meyering.net>
2147
2148         Adapt to deeper hierarchy in gnulib.
2149         * build-aux/bootstrap (symlink_to_dir): If the destination
2150         directory doesn't exist, create it. This is required at least for
2151         "lib/uniwidth/cjk.h".
2152
2153         2007-05-15  Jim Meyering  <jim@meyering.net>
2154
2155         * build-aux/bootstrap: Now that generated Makefile.am files
2156         are no longer under version control, they must be created at
2157         bootstrap time.
2158
2159 2007-08-14  Ben Pfaff  <blp@gnu.org>
2160
2161         * lib/count-one-bits.h: Add comments.  From Bruno Haible.
2162
2163 2007-08-14  Paul Eggert  <eggert@cs.ucla.edu>
2164
2165         * lib/count-one-bits.h: Don't include <limits.h>; no longer needed
2166         given the changes below.
2167         (COUNT_ONE_BITS): Use 'verify' rather than 'verify_true'.  Work
2168         even on hosts that have padding bits beyond the supported 64.
2169
2170 2007-08-10  Paul Eggert  <eggert@cs.ucla.edu>
2171
2172         * NEWS: In xstrtol, remove STRTOL_FATAL_ERROR and add xstrtol_fatal.
2173         * lib/xstrtol.h: Don't include exitfail.h; that's now internal to
2174         xstrtol.c.  Include getopt.h, since xstrtol_fatal's signature
2175         depends on it.
2176         (xstrtol_error): Remove.
2177         (xstrtol_fatal): New decl, replacing the functionality of xstrtol_error
2178         but with a different signature.
2179         (ATTRIBUTE_NORETURN, __attribute__): New macros.
2180         * lib/xstrtol-error.c: Include exitfail.h.
2181         (xstrtol_fatal): New function, with a different signature from the
2182         old xstrtol_error, so that the caller need not worry about passing
2183         in an exit status, or about storage management of the option argument.
2184         (xstrtol_error): Now a static function.  Redo signature to
2185         implement xstrtol_fatal.  Output the correct number of hyphens in
2186         front of the option so that the caller need not worry about
2187         storage management.
2188         (N_): New macro.
2189         (_): Remove; not used now.
2190         * modules/xstrtol: Depend on getopt.
2191         * tests/test-xstrtol.c (main): Use new xstrtol_error function instead
2192         of old STRTOL_FATAL_ERROR macro.
2193         * tests/test-xstrtol.sh (t-xstrtol.xo): Adjust to match new behavior
2194         of test program.
2195         * tests/test-xstrtoimax.sh (t-xstrtoimax.xo): Likewise.
2196         * tests/test-xstrtoumax.sh (t-xstrtoumax.xo): Likewise.
2197
2198 2007-08-08  Eric Blake  <ebb9@byu.net>
2199
2200         * lib/xstrtol-error.c: Add missing include.
2201
2202         Move xstrtol messages into gnulib domain, when --pobase is used.
2203         * lib/xstrtol.h (_STRTOL_ERROR): Move messages out of macro...
2204         * lib/xstrtol-error.c (xstrtol_error): ...into new file.
2205         * modules/xstrtol (Files): Distribute new file.
2206         * m4/xstrtol.m4 (gl_XSTRTOL): Build new file.
2207         * lib/xstrtol.c (TESTING_XSTRTO): Move tests...
2208         * tests/test-xstrtol.c: ...into new file.
2209         * tests/test-xstrtoul.c: Also test xstrtoul.
2210         * tests/test-xstrtoimax.c: Also test xstrtoimax.
2211         * tests/test-xstrtoumax.c: Also test xstrtoumax.
2212         * tests/test-xstrtol.sh: Drive the tests.
2213         * tests/test-xstrtoimax.sh: Likewise.
2214         * tests/test-xstrtoumax.sh: Likewise.
2215         * modules/xstrtol-tests: New module.
2216         * modules/xstrtoimax-tests: Likewise.
2217         * modules/xstrtoumax-tests: Likewise.
2218
2219 2007-08-08  Jim Meyering  <jim@meyering.net>
2220
2221         New function: mfile_name_concat.
2222         * lib/filenamecat.c (mfile_name_concat): New function, just like
2223         file_name_concat, but return NULL upon failure rather than exiting
2224         with a diagnostic.
2225         * lib/filenamecat.h: Declare it.
2226
2227 2007-08-07  Bruno Haible  <bruno@clisp.org>
2228
2229         * m4/inttypes.m4 (gl_INTTYPES_H): Use GL_TRIGGER_STDC_LIMIT_MACROS
2230         instead of __STDC_LIMIT_MACROS_TRIGGER. This avoids a redefinition
2231         warning from gcc.
2232         Reported by Eric Blake.
2233
2234 2007-08-07  Simon Josefsson  <simon@josefsson.org>
2235
2236         * modules/crypto/arctwo (License): Use the synonymous term "LGPLv2+".
2237         * modules/crypto/arcfour (License): Likewise.
2238         * modules/crypto/des-tests (License): Likewise.
2239         * modules/crypto/gc-arctwo-tests (License): Likewise.
2240         * modules/crypto/gc-des-tests (License): Likewise.
2241         * modules/crypto/gc-hmac-md5-tests (License): Likewise.
2242         * modules/crypto/gc-hmac-sha1-tests (License): Likewise.
2243         * modules/crypto/gc-md2-tests (License): Likewise.
2244         * modules/crypto/gc-md4-tests (License): Likewise.
2245         * modules/crypto/gc-md5-tests (License): Likewise.
2246         * modules/crypto/gc-pbkdf2-sha1-tests (License): Likewise.
2247         * modules/crypto/gc-rijndael-tests (License): Likewise.
2248         * modules/crypto/gc-sha1-tests (License): Likewise.
2249         * modules/crypto/gc-tests (License): Likewise.
2250         * modules/crypto/hmac-md5 (License): Likewise.
2251         * modules/crypto/hmac-sha1 (License): Likewise.
2252         * modules/crypto/md2-tests (License): Likewise.
2253         * modules/crypto/md4-tests (License): Likewise.
2254         * modules/crypto/md5 (License): Likewise.
2255         * modules/crypto/rijndael (License): Likewise.
2256         * modules/crypto/sha1 (License): Likewise.
2257         * modules/memxor (License): Likewise.
2258
2259 2007-08-06  Paul Eggert  <eggert@cs.ucla.edu>
2260         and Bruno Haible  <bruno@clisp.org>
2261
2262         * NEWS: Describe interface changes to human, xstrtol.
2263         * lib/human.h: Include <xstrtol.h>.
2264         (human_options): Return enum strtol_error, not int.  Remove
2265         bool arg; take int * instead.
2266         * lib/human.c: Don't include "gettext.h".
2267         (_): Remove; no longer used.
2268         Don't include <xstrtol.h>, since human.h does it.
2269         (human_options): Adjust to abovementioned interface changes.
2270         Do not report error to stderr; that's now the caller's
2271         responsibility.
2272         * lib/xstrtol.c (main) [defined TESTING_XSTRTO]: Adjust to
2273         interface change.
2274         * lib/xstrtol.h (_STRTOL_ERROR): Take Option, Arg rather than
2275         Str, Argument_type_string.  All uses changed.  Put " argument"
2276         in diagnostics to make them clearer.  Change wording of suffix
2277         message for clarity.
2278         (STRTOL_FATAL_ERROR): Take Option, Arg rather than Str,
2279         Argument_type_string.
2280         (STRTOL_FATAL_WARN): Remove; no longer used.
2281         * modules/human (Depends-on): Remove gettext-h.
2282
2283 2007-08-06  Simon Josefsson  <simon@josefsson.org>
2284
2285         * build-aux/maint.mk, build-aux/GNUmakefile: Relicense to GPLv3+.
2286
2287 2007-07-31  Bruno Haible  <bruno@clisp.org>
2288
2289         * m4/stdint.m4 (gl_STDINT_H): Test whether WCHAR_MIN and WCHAR_MAX
2290         are defined by <stdint.h> (as opposed to <wchar.h>, as on Dragonfly).
2291         Reported by Joerg Sonnenberger <joerg@britannica.bec.de>.
2292
2293 2007-07-31  Bruno Haible  <bruno@clisp.org>
2294
2295         * lib/fflush.c (rpl_fflush): On BSD systems, use the __SNPT flag.
2296         Suggested by Joerg Sonnenberger <joerg@britannica.bec.de>.
2297
2298 2007-07-30  Bruno Haible  <bruno@clisp.org>
2299
2300         * modules/base64 (License): Use the synonymous term "LGPLv2+".
2301         * modules/c-ctype (License): Likewise.
2302         * modules/c-strcase (License): Likewise.
2303         * modules/check-version (License): Likewise.
2304         * modules/iconv (License): Likewise.
2305         * modules/iconv_open (License): Likewise.
2306         * modules/read-file (License): Likewise.
2307         * modules/striconv (License): Likewise.
2308         * modules/strverscmp (License): Likewise.
2309         * modules/vasprintf (License): Likewise.
2310         * modules/crypto/des (License): Likewise.
2311         * modules/crypto/gc (License): Likewise.
2312         * modules/crypto/gc-arcfour (License): Likewise.
2313         * modules/crypto/gc-arctwo (License): Likewise.
2314         * modules/crypto/gc-des (License): Likewise.
2315         * modules/crypto/gc-hmac-md5 (License): Likewise.
2316         * modules/crypto/gc-hmac-sha1 (License): Likewise.
2317         * modules/crypto/gc-md2 (License): Likewise.
2318         * modules/crypto/gc-md4 (License): Likewise.
2319         * modules/crypto/gc-md5 (License): Likewise.
2320         * modules/crypto/gc-pbkdf2-sha1 (License): Likewise.
2321         * modules/crypto/gc-random (License): Likewise.
2322         * modules/crypto/gc-rijndael (License): Likewise.
2323         * modules/crypto/gc-sha1 (License): Likewise.
2324         * modules/crypto/md2 (License): Likewise.
2325         * modules/crypto/md4 (License): Likewise.
2326
2327 2007-07-30  Jim Meyering  <jim@meyering.net>
2328
2329         * lib/fts.c (fts_read): Upon failure to chdir into a subdirectory,
2330         set fts_info to FTS_DNR, not to FTS_ERR, so that the caller knows
2331         it has valid stat data.  This bug would cause du not to count the
2332         sizes of inaccessible directories.
2333         Patch by Bryan Mason <bmason@redhat.com>, via Jose Maria Plans
2334         in <http://bugzilla.redhat.com/250077>.
2335
2336 2007-07-25  Peter O'Gorman  <peter@pogma.com>
2337             Bruno Haible  <bruno@clisp.org>
2338
2339         * m4/include_next.m4 (gl_INCLUDE_NEXT): Test whether #include_next
2340         really works. Needed because AIX 4.3 "xlc -E" doesn't understand
2341         #include_next, gives a diagnostic about it, but reports no error in
2342         the exit code.
2343         Reported by Gary V. Vaughan <gary@thewrittenword.com>.
2344
2345 2007-07-24  Ben Pfaff  <blp@gnu.org>
2346
2347         Improve name: "count-one-bits" is better than "popcount".
2348         * MODULES.html.sh: Update name.
2349         * lib/popcount.h: Renamed lib/count-one-bits.h.
2350         (popcount): Renamed count_one_bits.
2351         (popcountl): Renamed count_one_bits_l.
2352         (popcountll): Renamed count_one_bits_ll.
2353         * m4/popcount.m4: Renamed m4/count-one-bits.m4.
2354         * modules/popcount: Renamed module/count-one-bits.
2355         * modules/popcount-tests: Renamed module/count-one-bits-tests.
2356         * tests/test-popcount.c: Renamed tests/test-count-one-bits.c.
2357
2358 2007-07-23  Ben Pfaff  <blp@gnu.org>
2359
2360         * lib/popcount.h (popcount32): Reduce size of constants, to allow
2361         better code generation, and add U to large constants to avoid
2362         warnings, in non-GCC case.
2363         Suggested by Bruno Haible.
2364
2365 2007-07-23  Ben Pfaff  <blp@gnu.org>
2366
2367         * lib/popcount.h: Use verify_true instead of if...abort.
2368         * modules/popcount: Depend on verify module.
2369         Suggested by Jim Meyering.
2370
2371 2007-07-23  Bruno Haible  <bruno@clisp.org>
2372
2373         * gnulib-tool (func_import): Create a .cvsignore file also when the
2374         directory is not yet in CVS but the toplevel directory is. When
2375         creating a .cvsignore file, add ".deps" and ".dirstamp" to it.
2376         Reported by Karl Berry.
2377
2378 2007-07-22  Ben Pfaff  <blp@gnu.org>
2379
2380         * lib/popcount.h: Use faster, branchless algorithm for non-GCC
2381         case.
2382         Suggested by Eric Blake.
2383
2384 2007-07-22  Ben Pfaff  <blp@gnu.org>
2385
2386         New module: popcount.
2387         * MODULES.html.sh: Add popcount.
2388         * modules/popcount: New file.
2389         * modules/popcount-tests: New file.
2390         * tests/test-popcount.c: New file.
2391         * lib/popcount.h: New file.
2392         * m4/popcount.m4: New file.
2393
2394 2007-07-22  Paul Eggert  <eggert@cs.ucla.edu>
2395
2396         * build-aux/announce-gen: Update to GPLv3.
2397
2398         * build-aux/config.guess: Update from config.
2399
2400 2007-07-21  Bruno Haible  <bruno@clisp.org>
2401
2402         * lib/error.c (_) [ENABLE_NLS]: Define to gettext.
2403         * lib/verror.c (_) [ENABLE_NLS]: Likewise.
2404
2405 2007-07-20  Jim Meyering  <jim@meyering.net>
2406
2407         * check-module: Diagnose a self-dependency.
2408
2409 2007-07-19  Bruno Haible  <bruno@clisp.org>
2410
2411         * gnulib-tool (func_import): Don't abort if pobase or po_domain is
2412         empty.
2413         Reported by Eric Blake.
2414
2415 2007-07-18  Bruno Haible  <bruno@clisp.org>
2416
2417         * gnulib-tool: New options --po-base, --po-domain.
2418         (func_usage): Document them.
2419         (pobase, po_domain): New variables.
2420         (func_emit_lib_Makefile_am): Augment AM_CPPFLAGS, defining
2421         DEFAULT_TEXT_DOMAIN.
2422         (func_emit_po_Makevars, func_emit_po_POTFILES_in): New functions.
2423         (func_import): Consider pobase and po_domain. Create a po/ directory.
2424         (func_create_testdir): Set pobase and po_domain to empty.
2425         * build-aux/po/Makefile.in.in: New file, from GNU gettext 0.16.1.
2426         * build-aux/po/remove-potcdate.sin: New file, from GNU gettext 0.16.1.
2427
2428 2007-07-18  Bruno Haible  <bruno@clisp.org>
2429
2430         * gnulib-tool (func_get_automake_snippet): Synthesize also an
2431         EXTRA_DIST augmentation for files in build-aux/.
2432
2433 2007-07-16  Bruno Haible  <bruno@clisp.org>
2434
2435         * modules/lseek (License): Use the synonymous term "LGPLv2+".
2436         * modules/getdelim (License): Likewise.
2437
2438 2007-07-16  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
2439
2440         * modules/arpa_inet (License): Use the synonymous term LGPLv2+.
2441         * modules/d-type (License): Likewise.
2442         * modules/extensions (License): Likewise.
2443         * modules/fnmatch (License): Likewise.
2444         * modules/fseeko (License): Likewise.
2445         * modules/getaddrinfo (License): Likewise.
2446         * modules/getline (License): Likewise.
2447         * modules/getlogin_r (License): Likewise.
2448         * modules/getpass (License): Likewise.
2449         * modules/gettimeofday (License): Likewise.
2450         * modules/glob (License): Likewise.
2451         * modules/inet_ntop (License): Likewise.
2452         * modules/malloc (License): Likewise.
2453         * modules/malloca (License): Likewise.
2454         * modules/memmem (License): Likewise.
2455         * modules/mempcpy (License): Likewise.
2456         * modules/memset (License): Likewise.
2457         * modules/minmax (License): Likewise.
2458         * modules/mktime (License): Likewise.
2459         * modules/netinet_in (License): Likewise.
2460         * modules/pathmax (License): Likewise.
2461         * modules/poll (License): Likewise.
2462         * modules/regex (License): Likewise.
2463         * modules/snprintf (License): Likewise.
2464         * modules/stdbool (License): Likewise.
2465         * modules/stdint (License): Likewise.
2466         * modules/stdio (License): Likewise.
2467         * modules/strcase (License): Likewise.
2468         * modules/strcasestr (License): Likewise.
2469         * modules/strdup (License): Likewise.
2470         * modules/string (License): Likewise.
2471         * modules/strndup (License): Likewise.
2472         * modules/strnlen (License): Likewise.
2473         * modules/strpbrk (License): Likewise.
2474         * modules/strptime (License): Likewise.
2475         * modules/strsep (License): Likewise.
2476         * modules/sys_select (License): Likewise.
2477         * modules/sys_socket (License): Likewise.
2478         * modules/sys_stat (License): Likewise.
2479         * modules/sys_time (License): Likewise.
2480         * modules/time (License): Likewise.
2481         * modules/time_r (License): Likewise.
2482         * modules/timegm (License): Likewise.
2483         * modules/unistd (License): Likewise.
2484         * modules/vsnprintf (License): Likewise.
2485         * modules/wctype (License): Likewise.
2486
2487 2007-07-16  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
2488
2489         * modules/argz (License): LGPLv2+.
2490
2491 2007-07-15  Karl Berry  <karl@gnu.org>
2492
2493         * doc/gnulib.texi: revise node structure per new fdl.texi.
2494
2495 2007-07-14  Bruno Haible  <bruno@clisp.org>
2496
2497         * lib/uniname/gen-uninames.lisp (main): Emit a "do not edit" line to
2498         the output file.
2499         * lib/uniname/uninames.h: Regenerated.
2500
2501 2007-07-14  Karl Berry  <karl@gnu.org>
2502
2503         * doc/*gpl*.texi, doc/fdl.texi: new versions, consistently
2504         omitting sectioning and index commands.
2505
2506 2007-07-13  Bruno Haible  <bruno@clisp.org>
2507
2508         New gnulib-tool option --more-symlinks.
2509         * gnulib-tool (func_usage): Document --more-symlinks.
2510         (do_copyrights): New variable.
2511         Recognize option --more-symlinks.
2512         (func_import): Don't add a copyright notice transform to
2513         sed_transform_lib_file if do_copyrights is empty.
2514
2515 2007-07-13  Bruno Haible  <bruno@clisp.org>
2516
2517         * lib/vasnprintf.c (decimal_point_char): Define also if
2518         (NEED_PRINTF_LONG_DOUBLE || NEED_PRINTF_INFINITE_DOUBLE)
2519         && !NEED_PRINTF_DIRECTIVE_A.
2520         Reported by Clemens Koller <clemens.koller@anagramm.de> via
2521         Gary V. Vaughan <gary@gnu.org>.
2522
2523 2007-07-13  Paul Eggert  <eggert@cs.ucla.edu>
2524
2525         * lib/inttypes_.h: Undo previous change, since it was fixed
2526         in a different way in the 2007-07-02 fix to m4/inttypes.m4.
2527
2528 2007-07-13  Bruno Haible  <bruno@clisp.org>
2529
2530         * lib/stdint_.h: Fix typo: _GL_JUST_INCLUDE_SYSTEM_INTTYPES_H was
2531         misspelled as _GL_JUST_INCLUDE_ABSOLUTE_INTTYPES_H.
2532
2533 2007-07-13  Jim Meyering  <jim@meyering.net>
2534
2535         df: Don't fail for Tru64's "file-on-file mount".
2536         * m4/fsusage.m4 (gl_FSUSAGE): Reject Tru64's buggy statvfs,
2537         so we fall through and use statfs instead.  Details here:
2538         <http://thread.gmane.org/gmane.comp.gnu.coreutils.bugs/10878>
2539         Reported by Albert Chin.
2540
2541 2007-07-13  Bruno Haible  <bruno@clisp.org>
2542
2543         * modules/alloca-opt (License): Use the synonymous term "LGPLv2+".
2544         * modules/configmake (License): Likewise.
2545         * modules/gettext (License): Likewise.
2546         * modules/gettext-h (License): Likewise.
2547         * modules/include_next (License): Likewise.
2548         * modules/link-warning (License): Likewise.
2549         * modules/localcharset (License): Likewise.
2550         * modules/localename (License): Likewise.
2551         * modules/lock (License): Likewise.
2552         * modules/relocatable-lib-lgpl (License): Likewise.
2553         * modules/size_max (License): Likewise.
2554         * modules/vasnprintf (License): Likewise.
2555         * modules/wchar (License): Likewise.
2556         * modules/xsize (License): Likewise.
2557
2558 2007-07-13  Bruno Haible  <bruno@clisp.org>
2559
2560         * gnulib-tool (func_import): Treat LGPLv2 as synonymous to LGPL.
2561         (func_create_testdir): Handle copying terms "GPLv2+" and "LGPLv2+".
2562
2563 2007-07-12  Bruno Haible  <bruno@clisp.org>
2564
2565         * doc/gnulib-intro.texi (Copyright): Clarify the license abbreviations
2566         in the modules files.
2567
2568 2007-07-11  Karl Berry  <karl@gnu.org>
2569
2570         * MODULES.html.sh (func_module): use
2571          sed -e '\|^'"${includefile}"'$|d'
2572          instead of /.../d, to avoid errors on $includefile's containing /.
2573
2574 2007-07-10  Sergey Poznyakoff  <gray@gnu.org.ua>
2575
2576         * gnulib-tool (func_import): Avoid duplication of --avoid
2577         statements
2578         (func_dest_tmpfilename,func_create_testdir): Translate `-' in file
2579         names to `_' in variable names.
2580
2581 2007-07-10  Eric Blake  <ebb9@byu.net>
2582
2583         * lib/version-etc.c (version_etc_va): Default to GPLv3+.
2584         * NEWS: Document this change.
2585
2586 2007-07-08  Bruno Haible  <bruno@clisp.org>
2587
2588         Update to Unicode 5.0.
2589         * lib/uniwidth/width.c (nonspacing_table_data): Add U+00AD,
2590         U+0350..U+035F, U+05A2, U+05BA, U+05C5, U+05C7, U+0600..U+0603,
2591         U+0610..U+0615, U+0656..U+065E, U+07EB..U+07F3, U+0A01, U+0AE2..U+0AE3,
2592         U+0CBC. Remove U+0CBF, U+0CC6. Add U+0CE2..U+0CE3, U+135F,
2593         U+17B4..U+17B5, U+17DD. Remove U+180E. Add U+1920..U+1922,
2594         U+1927..U+192B, U+1932, U+1939..U+193B, U+1A17..U+1A18, U+1B00..U+1B03,
2595         U+1B34, U+1B36..U+1B3A, U+1B3C, U+1B42, U+1B6B..U+1B73, U+1DC0..U+1DCA,
2596         U+1DFE..U+1DFF, U+20EB..U+20EF, U+A802, U+A806, U+A80B, U+A825..U+A826,
2597         U+10A01..U+10A03, U+10A05..U+10A06, U+10A0C..U+10A0F, U+10A38..U+10A3A,
2598         U+10A3F, U+1D242..U+1D244.
2599         (nonspacing_table_ind): Update.
2600         (uc_width): Assign width 0 to U+E0100..U+E01EF. Assign width 1 to
2601         U+4DC0..U+4DFF. Assign width 2 to U+2329..U+232A, U+FE10..U+FE1F.
2602
2603 2007-07-08  Bruno Haible  <bruno@clisp.org>
2604
2605         Update to Unicode 5.0.
2606         * lib/uniname/gen-uninames.lisp (main): Add the range 0x12xxx to the
2607         code transform. Extend the name index field of unicode_name_to_code and
2608         unicode_code_to_name from 16 to 24 bits.
2609         * lib/uniname/uniname.c (unicode_character_name,
2610         unicode_name_character): Add the range 0x12xxx to the code transform.
2611         * lib/uniname/uninames.h: Regenerated.
2612         * tests/uniname/UnicodeDataNames.txt: Update to Unicode 5.0.
2613
2614 2007-07-07  Bruno Haible  <bruno@clisp.org>
2615
2616         * modules/wcwidth-tests: New file.
2617         * tests/test-wcwidth.c: New file.
2618
2619         Work around MacOS X wcwidth() bug.
2620         * m4/wcwidth.m4 (gl_FUNC_WCWIDTH): Test against MacOS X 10.3 bug.
2621         * lib/wcwidth.c: Include localcharset.h, streq.h, uniwidth.h.
2622         (rpl_wcwidth): Special-case the UTF-8 locales. Fall back to the
2623         original wcwidth in non-UTF-8 locales.
2624         * modules/wcwidth (Depends-on): Add localcharset, streq,
2625         uniwidth/width.
2626         * doc/functions/wcwidth.texi: Update.
2627
2628 2007-07-07  Bruno Haible  <bruno@clisp.org>
2629
2630         * lib/wchar_.h: Include the GL_LINK_WARNING macro.
2631         (wcwidth): New declaration.
2632         * m4/wchar.m4 (gl_WCHAR_MODULE_INDICATOR, gl_WCHAR_H_DEFAULTS): New
2633         macros.
2634         (gl_WCHAR_H): Require gl_WCHAR_H_DEFAULTS. Don't set WCHAR_H to empty
2635         here. Prepare for creating <wchar.h> unconditionally.
2636         * modules/wchar (Depends-on): Add link-warning.
2637         (Makefile.am): Substitute also GNULIB_WCWIDTH, HAVE_DECL_WCWIDTH,
2638         REPLACE_WCWIDTH, and GL_LINK_WARNING.
2639         * lib/wcwidth.h: Remove file.
2640         * m4/wcwidth.m4 (gl_FUNC_WCWIDTH): Require gl_WCHAR_H_DEFAULTS. Set
2641         HAVE_DECL_WCWIDTH, REPLACE_WCWIDTH, WCHAR_H.
2642         * modules/wcwidth (Files): Remove lib/wcwidth.h.
2643         (configure.ac): Invoke gl_WCHAR_MODULE_INDICATOR.
2644         (Include): Replace wcwidth.h with <wchar.h>.
2645         * lib/wcwidth.c: Include <wchar.h> instead of wcwidth.h.
2646         * lib/mbchar.h: Don't include wcwidth.h.
2647         * lib/mbswidth.c: Likewise.
2648         * NEWS: Mention the change.
2649
2650 2007-07-07  Bruno Haible  <bruno@clisp.org>
2651
2652         * lib/wcwidth.c: New file, extracted from lib/wcwidth.h.
2653         * lib/wcwidth.h: Don't include wctype.h. Replace inline function
2654         definition with an external declaration.
2655         * m4/wcwidth.m4 (gl_FUNC_WCWIDTH): Use wcwidth.c when wcwidth is not
2656         defined as a function. Remove AC_C_INLINE requirement.
2657         * modules/wcwidth (Files): Add lib/wcwidth.c.
2658         (Makefile.am): Remove redundant statement.
2659
2660 2007-07-07  Bruno Haible  <bruno@clisp.org>
2661
2662         * MODULES.html.sh (Unicode string functions): Add the new modules.
2663
2664         * tests/uniwidth/test-u32-strwidth.c: New file.
2665         * modules/uniwidth/u32-strwidth-tests: New file.
2666
2667         * lib/uniwidth/u32-strwidth.c: New file.
2668         * modules/uniwidth/u32-strwidth: New file.
2669
2670         * tests/uniwidth/test-u16-strwidth.c: New file.
2671         * modules/uniwidth/u16-strwidth-tests: New file.
2672
2673         * lib/uniwidth/u16-strwidth.c: New file.
2674         * modules/uniwidth/u16-strwidth: New file.
2675
2676         * tests/uniwidth/test-u8-strwidth.c: New file.
2677         * modules/uniwidth/u8-strwidth-tests: New file.
2678
2679         * lib/uniwidth/u8-strwidth.c: New file.
2680         * modules/uniwidth/u8-strwidth: New file.
2681
2682         * tests/uniwidth/test-u32-width.c: New file.
2683         * modules/uniwidth/u32-width-tests: New file.
2684
2685         * lib/uniwidth/u32-width.c: New file.
2686         * modules/uniwidth/u32-width: New file.
2687
2688         * tests/uniwidth/test-u16-width.c: New file.
2689         * modules/uniwidth/u16-width-tests: New file.
2690
2691         * lib/uniwidth/u16-width.c: New file.
2692         * modules/uniwidth/u16-width: New file.
2693
2694         * tests/uniwidth/test-u8-width.c: New file.
2695         * modules/uniwidth/u8-width-tests: New file.
2696
2697         * lib/uniwidth/u8-width.c: New file.
2698         * modules/uniwidth/u8-width: New file.
2699
2700         * tests/uniwidth/test-uc_width.c: New file.
2701         * modules/uniwidth/width-tests: New file.
2702
2703         * lib/uniwidth/width.c: New file, from GNU libiconv.
2704         * lib/uniwidth/cjk.h: New file, from GNU libiconv.
2705         * modules/uniwidth/width: New file.
2706
2707         * lib/uniwidth.h: New file, from GNU libiconv.
2708         * modules/uniwidth/base: New file.
2709
2710 2007-07-07  Bruno Haible  <bruno@clisp.org>
2711
2712         * lib/uniname.h: New file, from GNU gettext.
2713         * lib/uniname/gen-uninames.lisp: New file, from GNU gettext.
2714         * lib/uniname/uninames.h: New file, from GNU gettext.
2715         * lib/uniname/uniname.c: New file, from GNU gettext.
2716         * tests/uniname/test-uninames.sh: New file.
2717         * tests/uniname/test-uninames.c: New file, from GNU gettext.
2718         * tests/uniname/UnicodeDataNames.txt: New file, from GNU gettext.
2719         * modules/uniname/base: New file.
2720         * modules/uniname/uniname: New file.
2721         * modules/uniname/uniname-tests: New file.
2722         * MODULES.html.sh (Unicode string functions): Add the new modules.
2723
2724 2007-07-06  Bruno Haible  <bruno@clisp.org>
2725
2726         * doc/Makefile (TEXI2HTML): Specify a --reference-limit.
2727
2728 2007-07-06  Bruno Haible  <bruno@clisp.org>
2729
2730         * lib/sys_time_.h: Use a recursion-safe inclusion guard rather than
2731         a split double-inclusion guard. Needed for cygwin, where <sys/time.h>
2732         includes <cygwin/sys_time.h> which includes <sys/select.h> which
2733         include <sys/time.h>.
2734         Reported by Eric Blake.
2735
2736 2007-07-06  Eric Blake  <ebb9@byu.net>
2737
2738         Fix testing canonicalize on cygwin.
2739         * modules/canonicalize-lgpl-tests (test_canonicalize_lgpl_LDADD):
2740         Revert patch from 2007-06-19.
2741         * tests/test-canonicalize-lgpl.c (main): Instead, skip test when
2742         canonicalize module is also in use.
2743         * tests/test-canonicalize.c: New file.
2744         * tests/test-canonicalize.sh: Likewise.
2745         * modules/canonicalize-tests: Likewise.
2746
2747 2007-07-06  Jim Meyering  <jim@meyering.net>
2748
2749         * lib/getugroups.c (getugroups): Detect getgrent failure.
2750         Adjust comment to reflect reality: this function may return -1.
2751
2752 2007-07-05  Sergey Poznyakoff  <gray@gnu.org.ua>
2753
2754         * build-aux/bootstrap (TP_URL,get_translations): Update to use
2755         the new TP address.
2756         (usage): Fix typo
2757         (gnulib_mk): New variable.
2758
2759 2007-07-05  Jim Meyering  <jim@meyering.net>
2760
2761         Don't let endgrent clobber errno, no matter how improbable.
2762         * lib/getugroups.c (getugroups): Save and restore errno around
2763         endgrent call.
2764
2765         Close the group DB even when failing with 2^31 or more members.
2766         * lib/getugroups.c (getugroups): Don't return without calling endgrent.
2767
2768 2007-07-04  Jim Meyering  <jim@meyering.net>
2769
2770         * lib/getugroups.h: New file.
2771         * lib/getugroups.c: Include "getugroups.h".
2772         Remove uses of "register" keyword.
2773         Move local variable, "cp", down into scope where used.
2774         Give "username" parameter the "const" attribute.
2775         * modules/getugroups (Files): Add lib/getugroups.h
2776
2777 2007-07-04  Karl Berry  <karl@gnu.org>
2778
2779         * MODULES.html.sh (func_all_modules): Complete rename of
2780         gpl/lgpl to gpl-2.0 and lgpl-2.1, and add gpl-3.0.
2781
2782 2007-07-02  Bruno Haible  <bruno@clisp.org>
2783
2784         * m4/inttypes.m4 (gl_INTTYPES_H): Define __STDC_LIMIT_MACROS in C++
2785         mode, when inttypes.h comes from gnulib.
2786         Reported by Joel E. Denny <jdenny@ces.clemson.edu>.
2787
2788 2007-07-02  Simon Josefsson  <simon@josefsson.org>
2789
2790         * NEWS: Mention lgpl module name change.
2791
2792         * modules/lgpl-2.1: Renamed from lgpl.
2793
2794         * NEWS: Mention gpl module name change.
2795
2796         * modules/gpl-3.0: New file, based on gpl-2.0.
2797
2798         * modules/gpl-2.0: Renamed from gpl.
2799
2800         * modules/gpl: Fix filename, doc/gpl.texi is now found at
2801         doc/gpl-2.0.texi.
2802
2803 2007-07-02  Paul Eggert  <eggert@cs.ucla.edu>
2804
2805         * lib/inttypes_.h [defined __cplusplus&&!defined __STDC_LIMIT_MACROS]:
2806         #define __STDC_LIMIT_MACROS temporarily while including
2807         <stdint.h>, so that __STDC_LIMIT_MACROS is defined.
2808         Problem reported by Joel E. Denny in
2809         <http://lists.gnu.org/archive/html/bug-gnulib/2007-07/msg00008.html>.
2810
2811 2007-07-01  Bruno Haible  <bruno@clisp.org>
2812
2813         * lib/unistdio.h: New file.
2814         * lib/unistdio/u-asnprintf.h: New file.
2815         * lib/unistdio/u-asprintf.h: New file.
2816         * lib/unistdio/u-printf-args.c: New file.
2817         * lib/unistdio/u-printf-args.h: New file.
2818         * lib/unistdio/u-printf-parse.h: New file.
2819         * lib/unistdio/u-snprintf.h: New file.
2820         * lib/unistdio/u-sprintf.h: New file.
2821         * lib/unistdio/u-vasprintf.h: New file.
2822         * lib/unistdio/u-vsnprintf.h: New file.
2823         * lib/unistdio/u-vsprintf.h: New file.
2824         * lib/unistdio/ulc-asnprintf.c: New file.
2825         * lib/unistdio/ulc-asprintf.c: New file.
2826         * lib/unistdio/ulc-fprintf.c: New file, based on lib/fprintf.c.
2827         * lib/unistdio/ulc-printf-parse.c: New file.
2828         * lib/unistdio/ulc-snprintf.c: New file.
2829         * lib/unistdio/ulc-sprintf.c: New file.
2830         * lib/unistdio/ulc-vasnprintf.c: New file.
2831         * lib/unistdio/ulc-vasprintf.c: New file.
2832         * lib/unistdio/ulc-vfprintf.c: New file, based on lib/vfprintf.c.
2833         * lib/unistdio/ulc-vsnprintf.c: New file.
2834         * lib/unistdio/ulc-vsprintf.c: New file.
2835         * lib/unistdio/u8-asnprintf.c: New file.
2836         * lib/unistdio/u8-asprintf.c: New file.
2837         * lib/unistdio/u8-printf-parse.c: New file.
2838         * lib/unistdio/u8-snprintf.c: New file.
2839         * lib/unistdio/u8-sprintf.c: New file.
2840         * lib/unistdio/u8-vasnprintf.c: New file.
2841         * lib/unistdio/u8-vasprintf.c: New file.
2842         * lib/unistdio/u8-vsnprintf.c: New file.
2843         * lib/unistdio/u8-vsprintf.c: New file.
2844         * lib/unistdio/u8-u8-asnprintf.c: New file.
2845         * lib/unistdio/u8-u8-asprintf.c: New file.
2846         * lib/unistdio/u8-u8-snprintf.c: New file.
2847         * lib/unistdio/u8-u8-sprintf.c: New file.
2848         * lib/unistdio/u8-u8-vasnprintf.c: New file.
2849         * lib/unistdio/u8-u8-vasprintf.c: New file.
2850         * lib/unistdio/u8-u8-vsnprintf.c: New file.
2851         * lib/unistdio/u8-u8-vsprintf.c: New file.
2852         * lib/unistdio/u16-asnprintf.c: New file.
2853         * lib/unistdio/u16-asprintf.c: New file.
2854         * lib/unistdio/u16-printf-parse.c: New file.
2855         * lib/unistdio/u16-snprintf.c: New file.
2856         * lib/unistdio/u16-sprintf.c: New file.
2857         * lib/unistdio/u16-vasnprintf.c: New file.
2858         * lib/unistdio/u16-vasprintf.c: New file.
2859         * lib/unistdio/u16-vsnprintf.c: New file.
2860         * lib/unistdio/u16-vsprintf.c: New file.
2861         * lib/unistdio/u16-u16-asnprintf.c: New file.
2862         * lib/unistdio/u16-u16-asprintf.c: New file.
2863         * lib/unistdio/u16-u16-snprintf.c: New file.
2864         * lib/unistdio/u16-u16-sprintf.c: New file.
2865         * lib/unistdio/u16-u16-vasnprintf.c: New file.
2866         * lib/unistdio/u16-u16-vasprintf.c: New file.
2867         * lib/unistdio/u16-u16-vsnprintf.c: New file.
2868         * lib/unistdio/u16-u16-vsprintf.c: New file.
2869         * lib/unistdio/u32-asnprintf.c: New file.
2870         * lib/unistdio/u32-asprintf.c: New file.
2871         * lib/unistdio/u32-printf-parse.c: New file.
2872         * lib/unistdio/u32-snprintf.c: New file.
2873         * lib/unistdio/u32-sprintf.c: New file.
2874         * lib/unistdio/u32-vasnprintf.c: New file.
2875         * lib/unistdio/u32-vasprintf.c: New file.
2876         * lib/unistdio/u32-vsnprintf.c: New file.
2877         * lib/unistdio/u32-vsprintf.c: New file.
2878         * lib/unistdio/u32-u32-asnprintf.c: New file.
2879         * lib/unistdio/u32-u32-asprintf.c: New file.
2880         * lib/unistdio/u32-u32-snprintf.c: New file.
2881         * lib/unistdio/u32-u32-sprintf.c: New file.
2882         * lib/unistdio/u32-u32-vasnprintf.c: New file.
2883         * lib/unistdio/u32-u32-vasprintf.c: New file.
2884         * lib/unistdio/u32-u32-vsnprintf.c: New file.
2885         * lib/unistdio/u32-u32-vsprintf.c: New file.
2886         * tests/unistdio/test-ulc-asnprintf1.c: New file.
2887         * tests/unistdio/test-ulc-asnprintf1.h: New file.
2888         * tests/unistdio/test-ulc-printf1.h: New file.
2889         * tests/unistdio/test-ulc-vasnprintf1.c: New file.
2890         * tests/unistdio/test-ulc-vasnprintf2.c: New file.
2891         * tests/unistdio/test-ulc-vasnprintf2.sh: New file.
2892         * tests/unistdio/test-ulc-vasnprintf3.c: New file.
2893         * tests/unistdio/test-ulc-vasnprintf3.sh: New file.
2894         * tests/unistdio/test-ulc-vasprintf1.c: New file.
2895         * tests/unistdio/test-ulc-vsnprintf1.c: New file.
2896         * tests/unistdio/test-ulc-vsprintf1.c: New file.
2897         * tests/unistdio/test-u8-asnprintf1.c: New file.
2898         * tests/unistdio/test-u8-asnprintf1.h: New file.
2899         * tests/unistdio/test-u8-printf1.h: New file.
2900         * tests/unistdio/test-u8-vasnprintf1.c: New file.
2901         * tests/unistdio/test-u8-vasnprintf2.c: New file.
2902         * tests/unistdio/test-u8-vasnprintf2.sh: New file.
2903         * tests/unistdio/test-u8-vasnprintf3.c: New file.
2904         * tests/unistdio/test-u8-vasnprintf3.sh: New file.
2905         * tests/unistdio/test-u8-vasprintf1.c: New file.
2906         * tests/unistdio/test-u8-vsnprintf1.c: New file.
2907         * tests/unistdio/test-u8-vsprintf1.c: New file.
2908         * tests/unistdio/test-u16-asnprintf1.c: New file.
2909         * tests/unistdio/test-u16-asnprintf1.h: New file.
2910         * tests/unistdio/test-u16-printf1.h: New file.
2911         * tests/unistdio/test-u16-vasnprintf1.c: New file.
2912         * tests/unistdio/test-u16-vasnprintf2.c: New file.
2913         * tests/unistdio/test-u16-vasnprintf2.sh: New file.
2914         * tests/unistdio/test-u16-vasnprintf3.c: New file.
2915         * tests/unistdio/test-u16-vasnprintf3.sh: New file.
2916         * tests/unistdio/test-u16-vasprintf1.c: New file.
2917         * tests/unistdio/test-u16-vsnprintf1.c: New file.
2918         * tests/unistdio/test-u16-vsprintf1.c: New file.
2919         * tests/unistdio/test-u32-asnprintf1.c: New file.
2920         * tests/unistdio/test-u32-asnprintf1.h: New file.
2921         * tests/unistdio/test-u32-printf1.h: New file.
2922         * tests/unistdio/test-u32-vasnprintf1.c: New file.
2923         * tests/unistdio/test-u32-vasnprintf2.c: New file.
2924         * tests/unistdio/test-u32-vasnprintf2.sh: New file.
2925         * tests/unistdio/test-u32-vasnprintf3.c: New file.
2926         * tests/unistdio/test-u32-vasnprintf3.sh: New file.
2927         * tests/unistdio/test-u32-vasprintf1.c: New file.
2928         * tests/unistdio/test-u32-vsnprintf1.c: New file.
2929         * tests/unistdio/test-u32-vsprintf1.c: New file.
2930         * modules/unistdio/base: New file.
2931         * modules/unistdio/u-printf-args: New file.
2932         * modules/unistdio/ulc-asnprintf: New file.
2933         * modules/unistdio/ulc-asprintf: New file.
2934         * modules/unistdio/ulc-fprintf: New file.
2935         * modules/unistdio/ulc-printf-parse: New file.
2936         * modules/unistdio/ulc-snprintf: New file.
2937         * modules/unistdio/ulc-sprintf: New file.
2938         * modules/unistdio/ulc-vasnprintf: New file.
2939         * modules/unistdio/ulc-vasprintf: New file.
2940         * modules/unistdio/ulc-vfprintf: New file.
2941         * modules/unistdio/ulc-vsnprintf: New file.
2942         * modules/unistdio/ulc-vsprintf: New file.
2943         * modules/unistdio/u8-asnprintf: New file.
2944         * modules/unistdio/u8-asprintf: New file.
2945         * modules/unistdio/u8-printf-parse: New file.
2946         * modules/unistdio/u8-snprintf: New file.
2947         * modules/unistdio/u8-sprintf: New file.
2948         * modules/unistdio/u8-vasnprintf: New file.
2949         * modules/unistdio/u8-vasprintf: New file.
2950         * modules/unistdio/u8-vsnprintf: New file.
2951         * modules/unistdio/u8-vsprintf: New file.
2952         * modules/unistdio/u8-u8-asnprintf: New file.
2953         * modules/unistdio/u8-u8-asprintf: New file.
2954         * modules/unistdio/u8-u8-snprintf: New file.
2955         * modules/unistdio/u8-u8-sprintf: New file.
2956         * modules/unistdio/u8-u8-vasnprintf: New file.
2957         * modules/unistdio/u8-u8-vasprintf: New file.
2958         * modules/unistdio/u8-u8-vsnprintf: New file.
2959         * modules/unistdio/u8-u8-vsprintf: New file.
2960         * modules/unistdio/u16-asnprintf: New file.
2961         * modules/unistdio/u16-asprintf: New file.
2962         * modules/unistdio/u16-printf-parse: New file.
2963         * modules/unistdio/u16-snprintf: New file.
2964         * modules/unistdio/u16-sprintf: New file.
2965         * modules/unistdio/u16-vasnprintf: New file.
2966         * modules/unistdio/u16-vasprintf: New file.
2967         * modules/unistdio/u16-vsnprintf: New file.
2968         * modules/unistdio/u16-vsprintf: New file.
2969         * modules/unistdio/u16-u16-asnprintf: New file.
2970         * modules/unistdio/u16-u16-asprintf: New file.
2971         * modules/unistdio/u16-u16-snprintf: New file.
2972         * modules/unistdio/u16-u16-sprintf: New file.
2973         * modules/unistdio/u16-u16-vasnprintf: New file.
2974         * modules/unistdio/u16-u16-vasprintf: New file.
2975         * modules/unistdio/u16-u16-vsnprintf: New file.
2976         * modules/unistdio/u16-u16-vsprintf: New file.
2977         * modules/unistdio/u32-asnprintf: New file.
2978         * modules/unistdio/u32-asprintf: New file.
2979         * modules/unistdio/u32-printf-parse: New file.
2980         * modules/unistdio/u32-snprintf: New file.
2981         * modules/unistdio/u32-sprintf: New file.
2982         * modules/unistdio/u32-vasnprintf: New file.
2983         * modules/unistdio/u32-vasprintf: New file.
2984         * modules/unistdio/u32-vsnprintf: New file.
2985         * modules/unistdio/u32-vsprintf: New file.
2986         * modules/unistdio/u32-u32-asnprintf: New file.
2987         * modules/unistdio/u32-u32-asprintf: New file.
2988         * modules/unistdio/u32-u32-snprintf: New file.
2989         * modules/unistdio/u32-u32-sprintf: New file.
2990         * modules/unistdio/u32-u32-vasnprintf: New file.
2991         * modules/unistdio/u32-u32-vasprintf: New file.
2992         * modules/unistdio/u32-u32-vsnprintf: New file.
2993         * modules/unistdio/u32-u32-vsprintf: New file.
2994         * modules/unistdio/ulc-asnprintf-tests: New file.
2995         * modules/unistdio/ulc-vasnprintf-tests: New file.
2996         * modules/unistdio/ulc-vasprintf-tests: New file.
2997         * modules/unistdio/ulc-vsnprintf-tests: New file.
2998         * modules/unistdio/ulc-vsprintf-tests: New file.
2999         * modules/unistdio/u8-asnprintf-tests: New file.
3000         * modules/unistdio/u8-vasnprintf-tests: New file.
3001         * modules/unistdio/u8-vasprintf-tests: New file.
3002         * modules/unistdio/u8-vsnprintf-tests: New file.
3003         * modules/unistdio/u8-vsprintf-tests: New file.
3004         * modules/unistdio/u16-asnprintf-tests: New file.
3005         * modules/unistdio/u16-vasnprintf-tests: New file.
3006         * modules/unistdio/u16-vasprintf-tests: New file.
3007         * modules/unistdio/u16-vsnprintf-tests: New file.
3008         * modules/unistdio/u16-vsprintf-tests: New file.
3009         * modules/unistdio/u32-asnprintf-tests: New file.
3010         * modules/unistdio/u32-vasnprintf-tests: New file.
3011         * modules/unistdio/u32-vasprintf-tests: New file.
3012         * modules/unistdio/u32-vsnprintf-tests: New file.
3013         * modules/unistdio/u32-vsprintf-tests: New file.
3014         * MODULES.html.sh (Unicode string functions): Add the new modules.
3015
3016 2007-07-01  Bruno Haible  <bruno@clisp.org>
3017
3018         * lib/sprintf.c (sprintf): Limit the available length estimation,
3019         to avoid address wraparound.
3020         * lib/vsprintf.c (vsprintf): Likewise.
3021         * modules/sprintf-posix (Dependencies): Add stdint.
3022         * modules/vsprintf-posix (Dependencies): Likewise.
3023
3024 2007-07-01  Bruno Haible  <bruno@clisp.org>
3025
3026         * gnulib-tool (self_abspathname): Determine PATH_SEPARATOR and handle
3027         Windows PATH as well. Conservative double-quoting. Comments.
3028
3029 2007-07-01  Bruno Haible  <bruno@clisp.org>
3030             Eric Blake  <ebb9@byu.net>
3031             Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
3032
3033         * gnulib-tool (self_abspathname): Fix algorithm to cope with
3034         empty components in $PATH, denoting '.'.
3035
3036 2007-07-01  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
3037
3038         * gnulib-tool: Fix indentation.
3039         (func_create_megatestdir): Likewise.
3040         Report by Bruno Haible.
3041
3042 2007-06-30  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
3043
3044         Sync from Automake.
3045         * build-aux/gnupload: Fix shell portability issues with for loops.
3046         Report by Karl Berry.
3047
3048 2007-06-29  Simon Josefsson  <simon@josefsson.org>
3049
3050         * build-aux/maint.mk (POURL): Use translationproject.org.
3051
3052 2007-06-27  Simon Josefsson  <simon@josefsson.org>
3053             Bruno Haible  <bruno@clisp.org>
3054
3055         * m4/getaddrinfo.m4 (gl_GETADDRINFO): Require gl_HEADER_SYS_SOCKET
3056         before using HAVE_WS2TCPIP_H. Check for gai_strerror through an
3057         explicit link test, rather than AC_REPLACE_FUNCS - for mingw.
3058         (gl_PREREQ_GETADDRINFO): Require gl_HEADER_SYS_SOCKET before using
3059         HAVE_SYS_SOCKET_H and HAVE_WS2TCPIP_H.
3060
3061 2007-06-27  Bruno Haible  <bruno@clisp.org>
3062
3063         * build-aux/config.rpath: Upgrade to libtool-1.5.24.
3064         * build-aux/config.libpath: Upgrade to libtool-1.5.24.
3065
3066 2007-06-26  Karl Berry  <karl@gnu.org>
3067
3068         * MODULES.html.sh: remove xreadlink-with-size.
3069
3070 2007-06-23  Paul Eggert  <eggert@cs.ucla.edu>
3071
3072         * lib/time_.h: Port to Solaris 8 with Sun Studio 11, using a
3073         method that I hope also handles the double-include problem noted
3074         by Bruno Haible in
3075         <http://lists.gnu.org/archive/html/bug-gnulib/2007-05/msg00186.html>.
3076
3077 2007-06-23  Bruno Haible  <bruno@clisp.org>
3078
3079         * gnulib-tool (func_emit_lib_Makefile_am, func_emit_tests_Makefile_am):
3080         Don't let the 'mostlyclean' target fail if the last subdirectory could
3081         not be removed.
3082         Reported by Karl Berry.
3083
3084 2007-06-23  Bruno Haible  <bruno@clisp.org>
3085
3086         * gnulib-tool (echo): Add a speedier workaround for ksh.
3087         * tests/test-echo.sh: Likewise.
3088
3089 2007-06-23  Bruno Haible  <bruno@clisp.org>
3090
3091         * gnulib-tool (echo): Add workarounds also for bash versions < 2.04.
3092         * tests/test-echo.sh: Likewise.
3093
3094 2007-06-23  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
3095
3096         * gnulib-tool (IFS): Initialize early, so we don't set it to
3097         empty later.
3098         (self_abspathname): Rewrite algorithm to set it, reindent.
3099         (func_emit_lib_Makefile_am, func_emit_tests_Makefile_am)
3100         (func_create_megatestdir): Merge some sed scripts.
3101
3102 2007-06-23  Paul Eggert  <eggert@cs.ucla.edu>
3103
3104         * m4/include_next.m4 (gl_CHECK_NEXT_HEADERS): Check some typos
3105         exposed by Sun Studio 11 cc on Solaris 8.
3106
3107 2007-06-22  Bruno Haible  <bruno@clisp.org>
3108
3109         * gnulib-tool (echo): Ensure the echo primitive does not interpret
3110         backslashes.
3111         * tests/test-echo.sh: New file.
3112
3113 2007-06-22  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
3114
3115         * gnulib-tool (func_add_or_update, func_create_testdir): Do not
3116         simplify `sed_replace_build_aux' scripts, they are portable but
3117         echoing them with `echo' is not.
3118         Report and analysis by Fernando Ferreira <fernando.prog@netcabo.pt>.
3119
3120 2007-06-21  Karl Berry  <karl@gnu.org>
3121
3122         * config/srclist.txt: guess we can't handle the licenses via
3123         srclist at the moment.
3124
3125 2007-06-21  Paul Eggert  <eggert@cs.ucla.edu>
3126
3127         * MODULES.html.sh: Add include_next.
3128         * modules/include_next: New file.
3129
3130 2007-06-20  Paul Eggert  <eggert@cs.ucla.edu>
3131
3132         * m4/include_next.m4 (gl_INCLUDE_NEXT): Define and AC_SUBST
3133         INCLUDE_NEXT.
3134         (gl_CHECK_NEXT_HEADERS): New macro.
3135         * m4/fcntl_h.m4 (gl_FCNTL_H): use gl_CHECK_NEXT_HEADERS instead of
3136         the obsolescent gl_ABSOLUTE_HEADER.
3137         * m4/fchdir.m4 (gl_FUNC_FCHDIR): Likewise.
3138         * m4/float_h.m4 (gl_FLOAT_H): Likewise.
3139         * m4/iconv_h.m4 (gl_ICONV_H): Likewise.
3140         * m4/inttypes.m4 (gl_INTTYPES_H): Likewise.
3141         * m4/locale_h.m4 (gl_LOCALE_H): Likewise.
3142         * m4/math_h.m4 (gl_MATH_H): Likewise.
3143         * m4/netinet_in_h.m4 (gl_HEADER_NETINET_IN): Likewise.
3144         * m4/search_h.m4 (gl_SEARCH_H): Likewise.
3145         * m4/signal_h.m4 (gl_SIGNAL_H): Likewise.
3146         * m4/stdint.m4 (gl_STDINT_H): Likewise.
3147         * m4/stdio_h.m4 (gl_STDIO_H): Likewise.
3148         * m4/stdlib_h.m4 (gl_STDLIB_H): Likewise.
3149         * m4/string_h.m4 (gl_HEADER_STRING_H_BODY): Likewise.
3150         * m4/sys_select_h.m4 (gl_HEADER_SYS_SELECT): Likewise.
3151         * m4/sys_socket_h.m4 (gl_HEADER_SYS_SOCKET): Likewise.
3152         * m4/sys_stat_h.m4 (gl_HEADER_SYS_STAT_H): Likewise.
3153         * m4/sys_time_h.m4 (gl_HEADER_SYS_TIME_H_BODY): Likewise.
3154         * m4/sysexits.m4 (gl_SYSEXITS): Likewise.
3155         * m4/time_h.m4 (gl_HEADER_TIME_H_BODY): Likewise.
3156         * m4/unistd_h.m4 (gl_UNISTD_H): Likewise.
3157         * m4/wchar.m4 (gl_WCHAR_H): Likewise.
3158         * m4/wctype.m4 (gl_WCTYPE_H): Likewise.
3159         * m4/inttypes.m4 (gl_INTTYPES_H): Define
3160         _GL_JUST_INCLUDE_SYSTEM_INTTYPES_H to avoid the problem of unclean
3161         builds, since ABSOLUTE_INTTYPES_H is no longer being defined.
3162         * m4/stdint.m4 (gl_STDINT_H): Likewise, for
3163         _GL_JUST_INCLUDE_SYSTEM_STDINT_H.
3164         * lib/fcntl_.h: Use @INCLUDE_NEXT@ @NEXT_foo_H@
3165         rather than @HAVE_INCLUDE_NEXT@ and @ABSOLUTE_foo_H@.
3166         * lib/float_.h: Likewise.
3167         * lib/inttypes_.h: Likewise.
3168         * lib/math_.h: Likewise.
3169         * lib/search_.h: Likewise.
3170         * lib/signal_.h: Likewise.
3171         * lib/stdint_.h: Likewise.
3172         * lib/stdio_.h: Likewise.
3173         * lib/stdlib_.h: Likewise.
3174         * lib/string_.h: Likewise.
3175         * lib/sys_stat_.h: Likewise.
3176         * lib/sys_time_.h: Likewise.
3177         * lib/time_.h: Likewise.
3178         * lib/unistd_.h: Likewise.
3179         * lib/wchar_.h: Likewise.
3180         * lib/wctype_.h: Likewise.
3181         * lib/dirent_.h: Likewise.
3182         * lib/iconv_.h: Likewise.
3183         * lib/locale_.h: Likewise.
3184         * lib/netinet_in_.h: Likewise.
3185         * lib/sys_select_.h: Likewise.
3186         * lib/sys_socket_.h: Likewise.
3187         * lib/sysexits_.h: Likewise.
3188         * modules/fcntl (Depends-on): Depend on include_next, not
3189         absolute_header.
3190         (Makefile): Substitute INCLUDE_NEXT and NEXT_foo_H, not
3191         HAVE_INCLUDE_NEXT and ABSOLUTE_foo_H.
3192         * modules/fchdir: Likewise.
3193         * modules/float: Likewise.
3194         * modules/iconv_open: Likewise.
3195         * modules/inttypes: Likewise.
3196         * modules/locale: Likewise.
3197         * modules/math: Likewise.
3198         * modules/netinet_in: Likewise.
3199         * modules/search: Likewise.
3200         * modules/signal: Likewise.
3201         * modules/stdint: Likewise.
3202         * modules/stdio: Likewise.
3203         * modules/stdlib: Likewise.
3204         * modules/string: Likewise.
3205         * modules/sys_select: Likewise.
3206         * modules/sys_socket: Likewise.
3207         * modules/sys_stat: Likewise.
3208         * modules/sys_time: Likewise.
3209         * modules/sysexits: Likewise.
3210         * modules/time: Likewise.
3211         * modules/unistd: Likewise.
3212         * modules/wchar: Likewise.
3213         * modules/wctype: Likewise.
3214         * modules/sys_stat: Change maintainer to "all".
3215         * modules/unistd: Likewise.
3216
3217 2007-06-20  Karl Berry  <karl@gnu.org>
3218
3219         * config/srclist.txt: track www changes in license files.
3220
3221 2007-06-20  Sergey Poznyakoff  <gray@gnu.org.ua>
3222
3223         * build-aux/bootstrap: Remove stray dot.
3224         Make sure build_aux settings are honored when linking
3225         gnulib_extra_files.
3226
3227 2007-06-19  Eric Blake  <ebb9@byu.net>
3228
3229         * modules/canonicalize-lgpl-tests (test_canonicalize_lgpl_LDADD):
3230         Allow compilation on cygwin.
3231
3232 2007-06-19  Jim Meyering  <jim@meyering.net>
3233
3234         xreadlink-with-size: Remove module.  No longer used.
3235         Ex-callers now use xreadlink or mreadlink-with-size.
3236         * modules/xreadlink-with-size: Remove module.
3237         * lib/xreadlink-with-size.c: Remove file.
3238         * lib/xreadlink.h (xreadlink_with_size): Remove prototype.
3239         (xreadlink): Remove inaccurate comment.  The one in xreadlink.c,
3240         just before the function definition *is* accurate.
3241
3242         Eliminate one way canonicalize_filename_mode could exit.
3243         * lib/canonicalize.c (canonicalize_filename_mode):
3244         Use mreadlink_with_size, not xreadlink_with_size.
3245
3246 2007-06-18  Paul Eggert  <eggert@cs.ucla.edu>
3247
3248         Detect porting problems to FreeBSD/arm, which has time_t wider than
3249         long int.  Original problem reported for GNU diff by Xin Li in
3250         <http://lists.gnu.org/archive/html/bug-gnu-utils/2007-06/msg00091.html>.
3251         * modules/getdate (Depends-on): Add intprops, verify.
3252         * lib/getdate.y: Include intprops.h, verify.h.  Verify that time_t
3253         is an integer type no wider than long int.
3254
3255 2007-06-18  Jim Meyering  <jim@meyering.net>
3256
3257         New module: mreadlink-with-size.
3258         * MODULES.html.sh: Add mreadlink-with-size.
3259         * modules/mreadlink-with-size: New module
3260         * modules/canonicalize (Depends-on): Depend on mreadlink-with-size,
3261         not xreadlink-with-size.
3262         * lib/mreadlink-with-size.c, lib/mreadlink.h: New files.
3263
3264 2007-06-16  Bruno Haible  <bruno@clisp.org>
3265
3266         * m4/frexpl.m4 (gl_FUNC_FREXPL_WORKS): Catch the MacOS X 10.4 bug.
3267         * doc/functions/frexpl.texi: Document the MacOS X 10.4 bug.
3268         Reported by Gary V. Vaughan <gary@gnu.org>.
3269
3270 2007-06-15  Paul Eggert  <eggert@cs.ucla.edu>
3271
3272         Revamp lchown so that it lives in unistd.h where it belongs.
3273         * lib/lchown.h: Remove.
3274         * lib/dirchownmod.c: Don't include lib/lchown.h.
3275         * lib/fchownat.c: Likewise.
3276         * lib/openat.c: Likewise.
3277         * lib/lchown.c (REPLACE_CHOWN): Define to 0 if the system chown
3278         does not follow symlinks.
3279         (EOPNOTSUPP): Define if not defined.
3280         * lib/unistd_.h (chown): Do not replace if REPLADE_CHOWN
3281         is defined to 0.
3282         (lchown): New decl.
3283         * m4/lchown.m4 (gl_FUNC_LCHOWN): Require gl_UNISTD_H_DEFAULTS.
3284         Do not check for lchown decl.
3285         Set REPLACE_LCHOWN.
3286         * m4/unistd_h.m4 (gl_UNISTD_H_DEFAULTS): Set GNULIB_LCHOWN,
3287         REPLACE_LCHOWN.
3288         * modules/chown: Make it clear it follows symlinks.
3289         * modules/lchown: Make it clear it doesn't follow symlinks.
3290         (Files): Remove lib/lchown.h
3291         (Depends-on): Add unistd.
3292         (configure.ac): Add gl_UNISTD_MODULE_INDICATOR([lchown]).
3293         (Include): Include <unistd.h>, not "lchown.h".
3294         * modules/unistd (unistd.h): Substitude GNULIB_LCHOWN and
3295         REPLACE_LCHOWN.
3296
3297 2007-06-15  Jim Meyering  <jim@meyering.net>
3298
3299         Change license (GPL to LGPL) of fsusage and dependents.
3300         * modules/fsusage (License): Change to LGPL.
3301         * modules/full-read (License): Likewise.
3302         * modules/full-write (License): Likewise.
3303         * modules/safe-read (License): Likewise.
3304         * modules/safe-write (License): Likewise.
3305
3306 2007-06-14  Ben Pfaff  <blp@gnu.org>
3307
3308         Missing part of allocsa -> malloca transition.
3309         * modules/relocatable-prog-wrapper: gl_ALLOCSA should be
3310         gl_MALLOCA.
3311
3312 2007-06-12  Bruno Haible  <bruno@clisp.org>
3313
3314         * m4/isnanl.m4 (gl_FUNC_ISNANL_WORKS): Guess no when cross-compiling
3315         to ia64, x86_64, i386.
3316         Reported by Eric Blake.
3317
3318 2007-06-12  Bruno Haible  <bruno@clisp.org>
3319
3320         * m4/printf.m4 (gl_PRINTF_INFINITE_LONG_DOUBLE): Guess no also when
3321         cross-compiling to x86_64.
3322
3323 2007-06-12  Paul Eggert  <eggert@cs.ucla.edu>
3324
3325         * m4/absolute-header.m4 (gl_ABSOLUTE_HEADER): Fix POSIX sed portability
3326         glitch reported by Ralf Wildenhues in
3327         <http://lists.gnu.org/archive/html/bug-gnulib/2007-06/msg00114.html>.
3328
3329         * m4/regex.m4 (gl_REGEX): Catch a bug with [[:alnum:]_-] reported by
3330         Vin Shelton.
3331
3332 2007-06-11  Bruno Haible  <bruno@clisp.org>
3333
3334         * lib/printf-args.c (PRINTF_FETCHARGS) [ENABLE_UNISTDIO]: Fix NULL
3335         replacement string.
3336         Reported by Eric Blake.
3337
3338 2007-06-10  Bruno Haible  <bruno@clisp.org>
3339
3340         Prepare vasnprintf code for use with Unicode strings.
3341         * lib/printf-args.h (PRINTF_FETCHARGS): New macro.
3342         (arg_type) [ENABLE_UNISTDIO]: Define TYPE_U8_STRING, TYPE_U16_STRING,
3343         TYPE_U32_STRING.
3344         (argument) [ENABLE_UNISTDIO]: Add a_u8_string, a_u16_string,
3345         a_u32_string variants.
3346         (PRINTF_FETCHARGS): Renamed from printf_fetchargs.
3347         * lib/printf-args.c: Don't include config.h and the specification
3348         header if PRINTF_FETCHARGS is already defined.
3349         (PRINTF_FETCHARGS): Renamed from printf_fetchargs.
3350         (PRINTF_FETCHARGS) [ENABLE_UNISTDIO]: Add code for TYPE_U8_STRING,
3351         TYPE_U16_STRING, TYPE_U32_STRING.
3352         * lib/printf-parse.h [ENABLE_UNISTDIO] (u8_directive, u8_directives,
3353         u16_directive, u16_directives, u32_directive, u32_directives): New
3354         types.
3355         (ulc_printf_parse, u8_printf_parse, u16_printf_parse, u32_printf_parse):
3356         New declarations.
3357         * lib/printf-parse.c: Don't include config.h and the specification
3358         header if PRINTF_PARSE is already defined. Eliminate the set of
3359         parameters for WIDE_CHAR_VERSION; the user of this file must provide
3360         them now. Include c-ctype.h.
3361         (PRINTF_PARSE) [ENABLE_UNISTDIO]: Add code implementing the 'U'
3362         directive and CHAR_T_ONLY_ASCII.
3363         * lib/vasnprintf.c: Don't include config.h and the specification header
3364         if VASNPRINTF is already defined.
3365         (DCHAR_IS_TCHAR, DCHAR_CPY): New macros.
3366         (VASNPRINTF): Use PRINTF_FETCHARGS instead of printf_fetchargs. Use
3367         DCHAR_CPY. Handle the case that DCHAR_T and FCHAR_T are not the same
3368         type. Handle the case that TCHAR_T and FCHAR_T are not of the same
3369         size. Handle the case that DCHAR_T and TCHAR_T are not the same type,
3370         add a conversion from TCHAR_T[] to DCHAR_T[], and rework the padding
3371         code accordingly.
3372         (VASNPRINTF) [ENABLE_UNISTDIO]: Implement the 'U' directive. Enable
3373         pad_ourselves also in this case, with the 'c' and 's' directives, and
3374         with a different notion of "width".
3375         * m4/vasnprintf.m4 (gl_PREREQ_VASNPRINTF_WITH_EXTRAS): New macros.
3376
3377 2007-06-10  Bruno Haible  <bruno@clisp.org>
3378
3379         * modules/unistr/u32-mbsnlen: New file.
3380         * lib/unistr/u32-mbsnlen.c: New file.
3381
3382         * modules/unistr/u16-mbsnlen: New file.
3383         * lib/unistr/u16-mbsnlen.c: New file.
3384
3385         * modules/unistr/u8-mbsnlen: New file.
3386         * lib/unistr/u8-mbsnlen.c: New file.
3387
3388         * lib/unistr.h (u8_mbsnlen, u16_mbsnlen, u32_mbsnlen): New
3389         declarations.
3390
3391 2007-06-10  Bruno Haible  <bruno@clisp.org>
3392
3393         * lib/string_.h (mbsnlen): New declaration.
3394         * lib/mbsnlen.c: New file.
3395         * m4/mbsnlen.m4: New file.
3396         * modules/mbsnlen: New file.
3397         * m4/string_h.m4 (gl_HEADER_STRING_H_DEFAULTS): Set GNULIB_MBSNLEN.
3398         * modules/string (string.h): Substitute GNULIB_MBSNLEN.
3399         * MODULES.html.sh (Internationalization functions): Add mbsnlen.
3400
3401 2007-06-10  Bruno Haible  <bruno@clisp.org>
3402
3403         * lib/mbslen.c: Include <stdlib.h>, needed for MB_CUR_MAX.
3404
3405 2007-06-10  Bruno Haible  <bruno@clisp.org>
3406
3407         * lib/mbiter.h: Include <stddef.h>, needed for ptrdiff_t.
3408         * lib/mbuiter.h: Likewise.
3409
3410 2007-06-10  Bruno Haible  <bruno@clisp.org>
3411
3412         * m4/vasnprintf.m4 (gl_PREREQ_VASNPRINTF): Check for _snprintf
3413         declaration.
3414
3415 2007-06-10  Karl Berry  <karl@gnu.org>
3416
3417         * config/srclist.txt: remove gettext entries, Bruno prefers
3418         to update individually.
3419
3420 2007-06-10  Bruno Haible  <bruno@clisp.org>
3421
3422         * lib/vasnprintf.c (VASNPRINTF) [!USE_SNPRINTF]: Remove variable
3423         'maxlen'. Ensure only length + width bytes are allocated, not
3424         length + 1 + width.
3425
3426 2007-06-09  Bruno Haible  <bruno@clisp.org>
3427
3428         * lib/vasnprintf.c (FCHAR_T, DCHAR_T, TCHAR_T): New macros.
3429         (CHAR_T): Remove macro.
3430         (VASNPRINTF): Update.
3431
3432 2007-06-09  Bruno Haible  <bruno@clisp.org>
3433
3434         * MODULES.html.sh (Unicode string functions): Add the new modules.
3435
3436         * modules/uniconv/u32-conv-to-enc: New file.
3437         * lib/uniconv/u32-conv-to-enc.c: New file.
3438         * modules/uniconv/u32-conv-to-enc-tests: New file.
3439         * tests/uniconv/test-u32-conv-to-enc.c: New file.
3440
3441         * modules/uniconv/u16-conv-to-enc: New file.
3442         * lib/uniconv/u16-conv-to-enc.c: New file.
3443         * lib/uniconv/u-conv-to-enc.h: New file.
3444         * modules/uniconv/u16-conv-to-enc-tests: New file.
3445         * tests/uniconv/test-u16-conv-to-enc.c: New file.
3446
3447         * modules/uniconv/u8-conv-to-enc: New file.
3448         * lib/uniconv/u8-conv-to-enc.c: New file.
3449         * modules/uniconv/u8-conv-to-enc-tests: New file.
3450         * tests/uniconv/test-u8-conv-to-enc.c: New file.
3451
3452         * lib/uniconv.h (u8_conv_to_encoding, u16_conv_to_encoding,
3453         u32_conv_to_encoding): New declarations.
3454
3455 2007-06-09  Bruno Haible  <bruno@clisp.org>
3456
3457         * tests/uniconv/test-u32-strconv-to-enc.c (main): Remove unused code.
3458
3459 2007-06-09  Bruno Haible  <bruno@clisp.org>
3460
3461         Rename 'allocsa' -> 'malloca', 'freesa' -> 'freea'.
3462         * modules/malloca: Renamed from modules/allocsa, updated.
3463         * lib/malloca.h: Renamed from lib/allocsa.h, updated.
3464         * lib/malloca.c: Renamed from lib/allocsa.c, updated.
3465         * lib/malloca.valgrind: Renamed from lib/allocsa.valgrind, updated.
3466         * m4/malloca.m4: Renamed from m4/allocsa.m4, updated.
3467         * modules/malloca-tests: Renamed from modules/allocsa-tests, updated.
3468         * tests/test-malloca.c: Renamed from tests/test-allocsa.c, updated.
3469         * modules/xmalloca: Renamed from modules/xallocsa, updated.
3470         * lib/xmalloca.h: Renamed from lib/xallocsa.h, updated.
3471         * lib/xmalloca.c: Renamed from lib/xallocsa.c, updated.
3472         * modules/c-strcasestr (Depends-on): Update.
3473         * lib/c-strcasestr.c: Update.
3474         * modules/c-strstr (Depends-on): Update.
3475         * lib/c-strstr.c: Update.
3476         * modules/canonicalize-lgpl (Depends-on): Update.
3477         * lib/canonicalize-lgpl.c: Update.
3478         * modules/clean-temp (Depends-on): Update.
3479         * lib/clean-temp.c: Update.
3480         * modules/csharpcomp (Depends-on): Update.
3481         * lib/csharpcomp.c: Update.
3482         * modules/csharpexec (Depends-on): Update.
3483         * lib/csharpexec.c: Update.
3484         * modules/javacomp (Depends-on): Update.
3485         * lib/javacomp.c: Update.
3486         * modules/javaexec (Depends-on): Update.
3487         * lib/javaexec.c: Update.
3488         * modules/mbscasestr (Depends-on): Update.
3489         * lib/mbscasestr.c: Update.
3490         * modules/mbsstr (Depends-on): Update.
3491         * lib/mbsstr.c: Update.
3492         * modules/setenv (Depends-on): Update.
3493         * lib/setenv.c: Update.
3494         * modules/strcasestr (Depends-on): Update.
3495         * lib/strcasestr.c: Update.
3496         * modules/striconveha (Depends-on): Update.
3497         * lib/striconveha.c: Update.
3498         * modules/relocatable-prog-wrapper (Files): Update.
3499         * lib/relocwrapper.c: Update.
3500         * build-aux/install-reloc: Update.
3501         * MODULES.html.sh (Memory management functions <stdlib.h>): Update.
3502
3503 2007-06-08  Bruno Haible  <bruno@clisp.org>
3504
3505         Port to uClibc.
3506         * lib/fbufmode.c (fbufmode): Add special code for uClibc.
3507         * lib/fpurge.c (fpurge): Likewise.
3508         * lib/freading.c (freading): Likewise.
3509         * lib/fseeko.c (rpl_fseeko): Likewise.
3510         * lib/fseterr.c (fseterr): Likewise.
3511         * lib/fwriting.c (fwriting): Likewise.
3512         * tests/test-fflush.c (main): Avoid a failure on uClibc.
3513
3514 2007-06-08  Bruno Haible  <bruno@clisp.org>
3515
3516         * m4/intlmacosx.m4: New file, extracted from gettext.m4.
3517         * m4/gettext.m4 (gt_INTL_MACOSX): Remove macro, moved to intlmacosx.m4.
3518         * modules/gettext (Files): Add m4/intlmacosx.m4.
3519
3520 2007-06-07  Bruno Haible  <bruno@clisp.org>
3521
3522         * modules/localename-tests: New file.
3523         * tests/test-localename.c: New file.
3524
3525         New module 'localename'.
3526         * lib/localename.h: New file.
3527         * lib/localename.c: New file, from GNU gettext.
3528         * m4/localename.m4: New file.
3529         * modules/localename: New file.
3530
3531 2007-06-07  Bruno Haible  <bruno@clisp.org>
3532
3533         Work around the lack of <wchar.h> on some builds of uClibc.
3534         * doc/headers/wchar.texi: Update.
3535         * lib/wchar_.h: Include <wchar.h> only if it exists.
3536         * m4/wchar.m4 (gl_WCHAR_H): Check for <wchar.h>. Set HAVE_WCHAR_H.
3537         * m4/stdint.m4 (gl_STDINT_H): Check for <wchar.h>.
3538         (gl_STDINT_TYPE_PROPERTIES): Don't try to include <wchar.h> if it
3539         doesn't exist.
3540         * modules/wchar (wchar.h): Substitute HAVE_WCHAR_H.
3541         * modules/mbfile (Depends-on): Add wchar.
3542         * modules/mbiter (Depends-on): Likewise.
3543         * modules/mbuiter (Depends-on): Likewise.
3544         Reported by Simon Josefsson.
3545
3546 2007-06-06  Paul Eggert  <eggert@cs.ucla.edu>
3547
3548         Work around problem reported by Steven M. Schweda in
3549         <http://lists.gnu.org/archive/html/bug-tar/2007-06/msg00002.html>:
3550         Tru64 5.1B with the Compaq compiler environment installed declares
3551         an 'isblank' function but does not define it in the C library.
3552         * lib/fnmatch.c (isblank): Check for HAVE_ISBLANK, too.
3553         * lib/regex_internal.h (isblank): Likewise.
3554         * m4/fnmatch.m4 (_AC_LIBOBJ_FNMATCH): Check for isblank existence.
3555         * m4/regex.m4 (gl_PREREQ_REGEX): Likewise.
3556
3557 2007-06-05  Bruno Haible  <bruno@clisp.org>
3558
3559         Fix *printf so that it recognizes non-IEEE numbers on i386, x86_64,
3560         ia64.
3561         * modules/printf-safe: New file.
3562         * modules/fprintf-posix (Depends-on): Add printf-safe.
3563         * modules/printf-posix (Depends-on): Likewise.
3564         * modules/snprintf-posix (Depends-on): Likewise.
3565         * modules/sprintf-posix (Depends-on): Likewise.
3566         * modules/vasnprintf-posix (Depends-on): Likewise.
3567         * modules/vasprintf-posix (Depends-on): Likewise.
3568         * modules/vfprintf-posix (Depends-on): Likewise.
3569         * modules/vprintf-posix (Depends-on): Likewise.
3570         * modules/vsnprintf-posix (Depends-on): Likewise.
3571         * modules/vsprintf-posix (Depends-on): Likewise.
3572         * m4/printf.m4 (gl_PRINTF_INFINITE_LONG_DOUBLE): Require
3573         AC_C_BIGENDIAN. Define CHECK_PRINTF_SAFE if printf-safe is used. Test
3574         non-IEEE numbers on i386, x86_64, ia64. When cross-compiling, guess
3575         "no" on i386, x86_64, ia64.
3576         * tests/test-snprintf-posix.h (LDBL80_WORDS): New macro.
3577         (test_function): Check result of %La, %Lf, %Le, %Lg on non-IEEE numbers
3578         on i386, x86_64, ia64.
3579         * tests/test-sprintf-posix.h (LDBL80_WORDS): New macro.
3580         (test_function): Check result of %La, %Lf, %Le, %Lg on non-IEEE numbers
3581         on i386, x86_64, ia64.
3582         * tests/test-vasnprintf-posix.c: Include float.h.
3583         (LDBL80_WORDS): New macro.
3584         (test_function): Check result of %La, %Lf, %Le, %Lg on non-IEEE numbers
3585         on i386, x86_64, ia64.
3586         * tests/test-vasprintf-posix.c: Include float.h.
3587         (LDBL80_WORDS): New macro.
3588         (test_function): Check result of %La, %Lf, %Le, %Lg on non-IEEE numbers
3589         on i386, x86_64, ia64.
3590         * tests/test-snprintf-posix.c: Include float.h.
3591         * tests/test-sprintf-posix.c: Likewise.
3592         * tests/test-vsnprintf-posix.c: Likewise.
3593         * tests/test-vsprintf-posix.c: Likewise.
3594
3595 2007-06-05  Bruno Haible  <bruno@clisp.org>
3596
3597         Fix isnanl so that it recognizes non-IEEE numbers on i386, x86_64, ia64.
3598         * m4/isnanl.m4 (gl_FUNC_ISNANL_WORKS): Require AC_C_BIGENDIAN. Test
3599         non-IEEE numbers on i386, x86_64, ia64.
3600         (gl_LONG_DOUBLE_EXPONENT_LOCATION): Require AC_C_BIGENDIAN.
3601         * lib/isnan.c (FUNC): Add special code for i386, x86_64, ia64.
3602         * tests/test-isnanl.h: Include float.h.
3603         (main): Check also non-IEEE numbers on i386, x86_64, ia64.
3604
3605 2007-06-05  Bruno Haible  <bruno@clisp.org>
3606
3607         * lib/vasnprintf.c (VASNPRINTF): Do the extra handling of NaN and Inf
3608         also the %a / %A. Handle the %a / %A code before this extra handling.
3609
3610 2007-06-05  Bruno Haible  <bruno@clisp.org>
3611
3612         * lib/vasnprintf.c [NEED_PRINTF_LONG_DOUBLE ||
3613         NEED_PRINTF_INFINITE_LONG_DOUBLE]: Include fpucw.h.
3614
3615 2007-06-05  Bruno Haible  <bruno@clisp.org>
3616
3617         * m4/vasnprintf.m4 (gl_PREREQ_VASNPRINTF_INFINITE_LONG_DOUBLE): Fix
3618         typo in variable name.
3619
3620 2007-06-05  Eric Blake  <ebb9@byu.net>
3621
3622         * m4/lseek.m4 (gl_FUNC_LSEEK): Work when cross-compiling.
3623         Reported by Simon Josefsson.
3624
3625 2007-06-04  Bruno Haible  <bruno@clisp.org>
3626
3627         Avoid test failures on some PowerPC platforms.
3628         * tests/test-printf-frexpl.c (MIN_NORMAL_EXP, MIN_SUBNORMAL_EXP):
3629         Define differently for PowerPC.
3630         * tests/test-frexpl.c (MIN_NORMAL_EXP): Likewise.
3631         Reported by Gary V. Vaughan <gary@gnu.org>.
3632
3633 2007-06-02  Bruno Haible  <bruno@clisp.org>
3634
3635         Fix test-stdint failure on FreeBSD/ia64.
3636         * m4/stdint.m4 (gl_STDINT_H): Check the values of PTRDIFF_MIN,
3637         PTRDIFF_MAX, SIG_ATOMIC_MIN, SIG_ATOMIC_MAX, SIZE_MAX, WCHAR_MIN,
3638         WCHAR_MAX, WINT_MIN, WINT_MAX entirely, not only for plausibility.
3639         * doc/headers/stdint.texi: Update.
3640
3641 2007-06-01  Bruno Haible  <bruno@clisp.org>
3642
3643         * tests/test-binary-io.c (main): Pass a third argument to open().
3644         Reported by Gary V. Vaughan <gary@gnu.org>.
3645
3646 2007-06-01  Bruno Haible  <bruno@clisp.org>
3647
3648         * doc/functions/frexpl.texi: Update for mingw.
3649
3650 2007-06-01  Bruno Haible  <bruno@clisp.org>
3651
3652         * tests/test-lseek.c (main): Disable test of errno for invalid third
3653         argument.
3654         * doc/functions/lseek.texi: Update.
3655         Reported by Gary V. Vaughan <gary@gnu.org>.
3656
3657 2007-05-28  Bruno Haible  <bruno@clisp.org>
3658
3659         * m4/intl.m4 (AM_INTL_SUBDIR): Substitute variables WOE32, WINDRES.
3660
3661 2007-05-31  Eric Blake  <ebb9@byu.net>
3662
3663         * m4/frexpl.m4 (gl_FUNC_FREXPL_WORKS): Guess no on mingw when
3664         cross compiling.
3665
3666 2007-05-30  Eric Blake  <ebb9@byu.net>
3667         and Bruno Haible  <bruno@clisp.org>
3668
3669         Work around mingw test failures exposed by m4-1.4.9b.
3670         * m4/stdint.m4 (gl_STDINT_H): Detect mingw bug.
3671         * tests/test-unistd.c: Disable uid_t and git_t tests for the
3672         moment.
3673
3674 2007-05-30  Bruno Haible  <bruno@clisp.org>
3675
3676         * tests/test-lseek.c: Explicitly close file descriptors 0 and 1 before
3677         assuming that they are closed. Needed on HP-UX 11.
3678
3679 2007-05-29  Bruno Haible  <bruno@clisp.org>
3680
3681         Fix a problem with #include_next.
3682         * lib/dirent_.h: Split the double-inclusion guard.
3683         * lib/fcntl_.h: Likewise.
3684         * lib/float_.h: Likewise.
3685         * lib/iconv_.h: Likewise.
3686         * lib/inttypes_.h: Likewise.
3687         * lib/locale_.h: Likewise.
3688         * lib/math_.h: Likewise.
3689         * lib/netinet_in_.h: Likewise.
3690         * lib/search_.h: Likewise.
3691         * lib/signal_.h: Likewise.
3692         * lib/stdint_.h: Likewise.
3693         * lib/stdio_.h: Likewise.
3694         * lib/stdlib_.h: Likewise.
3695         * lib/string_.h: Likewise.
3696         * lib/sys_select_.h: Likewise.
3697         * lib/sys_socket_.h: Likewise.
3698         * lib/sys_stat_.h: Likewise.
3699         * lib/sys_time_.h: Likewise.
3700         * lib/sysexits_.h: Likewise.
3701         * lib/time_.h: Likewise.
3702         * lib/unistd_.h: Likewise.
3703         * lib/wchar_.h: Likewise.
3704         * lib/wctype_.h: Likewise.
3705
3706 2007-05-29  Bruno Haible  <bruno@clisp.org>
3707
3708         * tests/test-unistd.c: Disable the tests for useconds_t and intptr_t
3709         for the moment.
3710
3711 2007-05-29  Bruno Haible  <bruno@clisp.org>
3712
3713         * m4/isnan.m4 (gl_DOUBLE_EXPONENT_LOCATION): Silence the AC_C_BIGENDIAN
3714         invocation.
3715         Reported by Eric Blake.
3716
3717 2007-05-29  Bruno Haible  <bruno@clisp.org>
3718
3719         * m4/isnanf.m4 (gl_FLOAT_EXPONENT_LOCATION): Fix typo in cross-
3720         compiling case.
3721
3722 2007-05-29  Eric Blake  <ebb9@byu.net>
3723             Bruno Haible  <bruno@clisp.org>
3724
3725         * m4/isnanf.m4 (gl_FUNC_ISNANF_NO_LIBM): Avoid syntax error on
3726         cross compiles.
3727
3728 2007-05-28  Eric Blake  <ebb9@byu.net>
3729
3730         * modules/closein-tests (test_closein_LDADD): Support test on
3731         cygwin with libtool.
3732
3733 2007-05-28  Bruno Haible  <bruno@clisp.org>
3734
3735         * tests/uniconv/test-u16-conv-from-enc.c: Remove #ifdef HAVE_CONFIG_H.
3736         * tests/uniconv/test-u16-strconv-from-enc.c: Likewise.
3737         * tests/uniconv/test-u16-strconv-to-enc.c: Likewise.
3738         * tests/uniconv/test-u32-conv-from-enc.c: Likewise.
3739         * tests/uniconv/test-u32-strconv-from-enc.c: Likewise.
3740         * tests/uniconv/test-u32-strconv-to-enc.c: Likewise.
3741         * tests/uniconv/test-u8-conv-from-enc.c: Likewise.
3742         * tests/uniconv/test-u8-strconv-from-enc.c: Likewise.
3743         * tests/uniconv/test-u8-strconv-to-enc.c: Likewise.
3744
3745 2007-05-28  Eric Blake  <ebb9@byu.net>
3746
3747         Unconditionally include <config.h> in unit tests.
3748         * tests/test-alloca-opt.c: Remove #ifdef HAVE_CONFIG_H.
3749         * tests/test-allocsa.c, tests/test-arcfour.c,
3750         tests/test-arctwo.c, tests/test-argmatch.c, tests/test-argp.c,
3751         tests/test-array_list.c, tests/test-array_oset.c,
3752         tests/test-atexit.c, test-avltree_list.c, test-avltree_oset.c,
3753         test-avltreehash_list.c, test-base64.c, test-binary-io.c,
3754         test-c-ctype.c, test-c-strcasecmp.c, test-c-strcasestr.c,
3755         test-c-strncasecmp.c, test-c-strstr.c, test-canonicalize-lgpl.c,
3756         test-carray_list.c, test-crc.c, test-des.c, test-dirname.c,
3757         test-fflush.c, test-fprintf-posix.c, test-gc-arcfour.c,
3758         test-gc-arctwo.c, test-gc-des.c, test-gc-hmac-md5.c,
3759         test-gc-hmac-sha1.c, test-gc-md2.c, test-gc-md4.c, test-gc-md5.c,
3760         test-gc-pbkdf2-sha1.c, test-gc-rijndael.c, test-gc-sha1.c,
3761         test-gc.c, test-getpass.c, test-hmac-md5.c, test-hmac-sha1.c,
3762         test-iconv.c, test-linked_list.c, test-linkedhash_list.c,
3763         test-lock.c, test-mbscasecmp.c, test-mbscasestr1.c,
3764         test-mbscasestr2.c, test-mbscasestr3.c, test-mbscasestr4.c,
3765         test-mbschr.c, test-mbscspn.c, test-mbsncasecmp.c, test-mbspbrk.c,
3766         test-mbspcasecmp.c, test-mbsrchr.c, test-mbsspn.c, test-mbsstr1.c,
3767         test-mbsstr2.c, test-mbsstr3.c, test-md2.c, test-md4.c,
3768         test-md5.c, test-memmem.c, test-printf-posix.c,
3769         test-rbtree_list.c, test-rbtree_oset.c, test-rbtreehash_list.c,
3770         test-read-file.c, test-rijndael.c, test-snprintf-posix.c,
3771         test-snprintf.c, test-sprintf-posix.c, test-stdint.c,
3772         test-strcasestr.c, test-striconv.c, test-striconveh.c,
3773         test-striconveha.c, test-tls.c, test-vasnprintf-posix.c,
3774         test-vasnprintf-posix2.c, test-vasnprintf.c,
3775         test-vasprintf-posix.c, test-vasprintf.c, test-verify.c,
3776         test-vfprintf-posix.c, test-vprintf-posix.c,
3777         test-vsnprintf-posix.c, test-vsnprintf.c, test-vsprintf-posix.c,
3778         test-xvasprintf.c: Likewise.
3779
3780 2007-05-28  Bruno Haible  <bruno@clisp.org>
3781
3782         * gnulib-tool (func_import): Remember the --with-tests command-line
3783         option through the macro gl_WITH_TESTS in the gnulib-cache.m4.
3784         Reported by Eric Blake.
3785
3786 2007-05-28  Bruno Haible  <bruno@clisp.org>
3787
3788         * modules/ftell-tests: New file.
3789         * tests/test-ftell.c: New file, based on tests/test-ftello.c.
3790         * tests/test-ftell.sh: New file, based on tests/test-ftello.sh.
3791
3792         * lib/ftell.c: New file.
3793         * modules/ftell: New file.
3794         * m4/ftell.m4: New file.
3795         * doc/functions/ftell.texi: Update.
3796         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Set also GNULIB_FTELL,
3797         REPLACE_FTELL.
3798         * lib/stdio_.h (rpl_ftell): New declaration.
3799         * modules/stdio (Makefile.am): Substitute also GNULIB_FTELL,
3800         REPLACE_FTELL.
3801
3802 2007-05-28  Eric Blake  <ebb9@byu.net>
3803
3804         * lib/allocsa.h (safe_alloca): Avoid compiler warning.
3805
3806 2007-05-28  Bruno Haible  <bruno@clisp.org>
3807
3808         * modules/fseek-tests: New file.
3809         * tests/test-fseek.c: New file, based on tests/test-fseeko.c.
3810         * tests/test-fseek.sh: New file, based on tests/test-fseeko.sh.
3811
3812         * lib/fseek.c: New file.
3813         * modules/fseek: New file.
3814         * m4/fseek.m4: New file.
3815         * doc/functions/fseek.texi: Update.
3816         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Set also GNULIB_FSEEK,
3817         REPLACE_FSEEK.
3818         * lib/stdio_.h (rpl_fseek): New declaration.
3819         * modules/stdio (Makefile.am): Substitute also GNULIB_FSEEK,
3820         REPLACE_FSEEK.
3821
3822 2007-05-28  Bruno Haible  <bruno@clisp.org>
3823
3824         * lib/stdio_.h (fflush): More comments.
3825
3826 2007-05-28  Bruno Haible  <bruno@clisp.org>
3827
3828         * m4/lseek.m4 (gl_FUNC_LSEEK): When not cross-compiling, perform a real
3829         runtime test.
3830
3831 2007-05-28  Eric Blake  <ebb9@byu.net>
3832
3833         Improve lseek module.
3834         * lib/lseek.c (rpl_lseek): Detect EBADF on mingw.
3835         * lib/unistd_.h (lseek): Scale back link warning message.
3836         * tests/test-lseek.c: Beef up test.
3837         * tests/test-lseek.sh: Exercise more facets of lseek.
3838         Reported by Bruno Haible.
3839
3840 2007-05-28  Bruno Haible  <bruno@clisp.org>
3841
3842         * tests/test-unistd.c: Test all the types that <unistd.h> is expected
3843         to define.
3844
3845 2007-05-27  Bruno Haible  <bruno@clisp.org>
3846
3847         * m4/iconv.m4 (AM_ICONV_LINK): Fix 2007-03-31 patch.
3848
3849 2007-05-27  Bruno Haible  <bruno@clisp.org>
3850
3851         * modules/openmp: New file.
3852         * m4/openmp.m4: New file, taken from autoconf's CVS with changes by
3853         Noah Misch.
3854
3855 2007-05-26  Bruno Haible  <bruno@clisp.org>
3856
3857         * modules/chdir-long (Depends-on): Add fchdir.
3858         * modules/chdir-safer (Depends-on): Likewise.
3859         * modules/fts (Depends-on): Likewise.
3860         * modules/fts-lgpl (Depends-on): Likewise.
3861         * modules/openat (Depends-on): Likewise.
3862         * modules/savewd (Depends-on): Likewise.
3863
3864 2007-05-24  Eric Blake  <ebb9@byu.net>
3865
3866         Fix lseek on mingw.
3867         * modules/lseek: New module.
3868         * m4/lseek.m4: New file.
3869         * lib/lseek.c: New file.
3870         * modules/lseek-tests: New file.
3871         * tests/test-lseek.c: New file.
3872         * tests/test-lseek.sh: New file.
3873         * MODULES.html.sh: Document lseek module.
3874         * modules/fflush (Depends-on): Add lseek, fseeko.
3875         * modules/fseeko (Depends-on): Likewise.
3876         * modules/ftello (Depends-on): Likewise.
3877         * m4/fseeko.m4 (gl_FUNC_FSEEKO): Replace fseek[o] if lseek is
3878         broken.
3879         * m4/ftello.m4 (gl_FUNC_FTELLO): Replace ftell[o] if lseek is
3880         broken.
3881         * m4/fflush.m4 (gl_REPLACE_FFLUSH): Trigger fseeko module.
3882         * lib/fseeko.c (rpl_fseeko): Quit early on non-seekable files.
3883         * lib/ftello.c (rpl_ftello): Likewise.
3884         * tests/test-fseeko.c (main): Test this.
3885         * tests/test-fseeko.sh: Likewise.
3886         * tests/test-ftello.c (main): Likewise.
3887         * tests/test-ftello.sh: Likewise.
3888         * lib/stdio_.h (fseek, ftell): Simplify, since missing fseeko now
3889         implies replacing fseek.
3890         * modules/stdio (Makefile.am): No longer need HAVE_FSEEKO,
3891         HAVE_FTELLO.
3892         * m4/unistd_h.m4 (gl_UNISTD_H_DEFAULTS): Add lseek info.
3893         * modules/unistd (Makefile.am): Likewise.
3894         * lib/unistd_.h (lseek): Declare a replacement.
3895         * doc/functions/lseek.texi (lseek): Document this fix.
3896         * doc/functions/fseek.texi (fseek): Likewise.
3897         * doc/functions/ftell.texi (ftell): Likewise.
3898
3899 2007-05-24  Bruno Haible  <bruno@clisp.org>
3900
3901         * tests/test-vasnprintf-posix.c (test_function): Allow up to 50 bytes
3902         in the printed representation of a NaN.
3903         * tests/test-vasprintf-posix.c (test_function): Likewise.
3904         * tests/test-snprintf-posix.h (test_function): Likewise.
3905         * tests/test-sprintf-posix.h (test_function): Likewise.
3906         Reported by Eric Blake.
3907
3908 2007-05-23  Eric Blake  <ebb9@byu.net>
3909
3910         Fix fseeko/ftello on cygwin 1.5.24.
3911         * doc/functions/fseeko.texi (fseeko): Document the fix.
3912         * doc/functions/ftello.texi (ftello): Document the fix.
3913         * doc/functions/stdin.texi (stdin): Document the cygwin bug.
3914         * doc/functions/stdout.text (stdout): New file.
3915         * doc/functions/stderr.text (stderr): New file.
3916         * doc/gnulib.texi (Function Substitutes): Use new files.
3917         * tests/test-fseeko.c (main): Check for broken fseeko on cygwin
3918         prior to 1.7.0.
3919         * tests/test-ftello.c (main): Likewise for ftello.
3920         * tests/test-fseeko.sh: New file.
3921         * tests/test-ftello.sh: New file.
3922         * modules/fseeko-tests (Makefile.am): Ensure test-fseeko is run
3923         with seekable stdin.
3924         * modules/ftello-tests (Makefile.am): Likewise for test-ftello.
3925         * m4/fseeko.m4 (gl_FUNC_FSEEKO): Detect the cygwin bug.
3926         (gl_REPLACE_FSEEKO): New macro.
3927         * m4/ftello.m4 (gl_FUNC_FTELLO, gl_REPLACE_FTELLO): Likewise.
3928         * modules/fseeko (Files): Distribute fseeko.c.
3929         * modules/ftello (Files): Distribute ftello.c.
3930         * lib/fseeko.c (rpl_fseeko) [__CYGWIN__]: Convert stdin to 64-bit
3931         mode.
3932         * lib/ftello.c (rpl_ftello): New file.
3933         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Allow replacement of
3934         fseeko, ftello.
3935         (gl_STDIN_LARGE_OFFSET): New macro.
3936         * modules/stdio (Makefile.am): Perform the replacement.
3937         * lib/stdio_.h (rpl_fseeko, rpl_ftello): Define when needed.
3938
3939 2007-05-23  Bruno Haible  <bruno@clisp.org>
3940
3941         * lib/stdio_.h (fseeko, ftello): Provide a link warning only if
3942         GNULIB_POSIXCHECK is defined.
3943
3944 2007-05-21  Bruno Haible  <bruno@clisp.org>
3945
3946         * m4/printf.m4 (gl_PRINTF_INFINITE, gl_PRINTF_INFINITE_LONG_DOUBLE):
3947         Check also the output for NaN arguments. When cross-compiling, guess
3948         no on IRIX.
3949         * lib/vasnprintf.c: Update comments.
3950         * tests/test-vasnprintf-posix.c (strisnan): New function.
3951         (test_function): Use it.
3952         * tests/test-vasprintf-posix.c (strisnan): New function.
3953         (test_function): Use it.
3954         * tests/test-snprintf-posix.h (strisnan): New function.
3955         (test_function): Use it.
3956         * tests/test-sprintf-posix.h (strisnan): New function.
3957         (test_function): Use it.
3958         Reported by Eric Blake.
3959
3960 2007-05-20  Bruno Haible  <bruno@clisp.org>
3961
3962         * m4/frexpl.m4 (gl_FUNC_FREXPL_WORKS): Add test for large finite
3963         numbers that fails on BeOS.
3964         * doc/functions/frexpl.texi: Update.
3965
3966 2007-05-20  Jim Meyering  <jim@meyering.net>
3967
3968         * NEWS: Mention the incompatible change (s/futimens/gl_futimens/)
3969         forced upon us by glibc-2.6.
3970
3971 2007-05-20  Bruno Haible  <bruno@clisp.org>
3972
3973         Fix *printf result for NaN, Inf on AIX, Solaris, OSF/1.
3974         * m4/printf.m4 (gl_PRINTF_INFINITE): Update cross-compiling guesses.
3975         (gl_PRINTF_INFINITE_LONG_DOUBLE): New macro.
3976         * lib/vasnprintf.c: Use NEED_PRINTF_INFINITE_DOUBLE instead of
3977         NEED_PRINTF_INFINITE.
3978         (is_infinitel): New function.
3979         (VASNPRINTF): Handle NEED_PRINTF_INFINITE_LONG_DOUBLE case.
3980         * m4/vasnprintf.m4 (gl_PREREQ_VASNPRINTF_INFINITE_DOUBLE): Renamed from
3981         gl_PREREQ_VASNPRINTF_INFINITE.
3982         (gl_PREREQ_VASNPRINTF_INFINITE_LONG_DOUBLE): New macro.
3983         * m4/fprintf-posix.m4 (gl_FUNC_FPRINTF_POSIX): Invoke
3984         gl_PRINTF_INFINITE_LONG_DOUBLE and test its result. Invoke
3985         gl_PREREQ_VASNPRINTF_INFINITE_DOUBLE and
3986         gl_PREREQ_VASNPRINTF_INFINITE_LONG_DOUBLE instead of
3987         gl_PREREQ_VASNPRINTF_INFINITE.
3988         * m4/snprintf-posix.m4 (gl_FUNC_SNPRINTF_POSIX): Likewise.
3989         * m4/sprintf-posix.m4 (gl_FUNC_SPRINTF_POSIX): Likewise.
3990         * m4/vasnprintf-posix.m4 (gl_FUNC_VASNPRINTF_POSIX): Likewise.
3991         * m4/vasprintf-posix.m4 (gl_FUNC_VASPRINTF_POSIX): Likewise.
3992         * m4/vfprintf-posix.m4 (gl_FUNC_VFPRINTF_POSIX): Likewise.
3993         * m4/vsnprintf-posix.m4 (gl_FUNC_VSNPRINTF_POSIX): Likewise.
3994         * m4/vsprintf-posix.m4 (gl_FUNC_VSPRINTF_POSIX): Likewise.
3995         * doc/functions/fprintf.texi: Update.
3996         * doc/functions/printf.texi: Update.
3997         * doc/functions/snprintf.texi: Update.
3998         * doc/functions/sprintf.texi: Update.
3999         * doc/functions/vfprintf.texi: Update.
4000         * doc/functions/vprintf.texi: Update.
4001         * doc/functions/vsnprintf.texi: Update.
4002         * doc/functions/vsprintf.texi: Update.
4003
4004 2007-05-20  Bruno Haible  <bruno@clisp.org>
4005
4006         * m4/frexpl.m4 (gl_FUNC_FREXPL_NO_LIBM): Set REPLACE_FREXPL if frexpl
4007         was not found in libc.
4008         * m4/printf-frexpl.m4 (gl_FUNC_PRINTF_FREXPL): Likewise.
4009
4010 2007-05-20  Bruno Haible  <bruno@clisp.org>
4011
4012         * tests/test-vasnprintf-posix.c (test_function): Allow NaN to be
4013         printed as "-nan" instead of "nan".
4014         * tests/test-vasprintf-posix.c (test_function): Likewise.
4015         * tests/test-snprintf-posix.h (test_function): Likewise.
4016         * tests/test-sprintf-posix.h (test_function): Likewise.
4017         Needed for HP-UX 11.
4018
4019 2007-05-20  Jim Meyering  <jim@meyering.net>
4020
4021         Fix buggy test for the fchownat-deref bug.
4022         * m4/openat.m4 (gl_FUNC_FCHOWNAT_DEREF_BUG): Create the dangling
4023         symlink required for the run-test.  Without it, this test would
4024         always declare that fchownat doesn't work, and client code would
4025         unnecessarily use the replacement function with fixed libc.
4026         (gl_FUNC_FCHOWNAT): Eliminate a variable that wasn't initialized.
4027         Reported by Greg Schafer.
4028
4029 2007-05-19  Bruno Haible  <bruno@clisp.org>
4030
4031         * m4/isnanf.m4 (gl_ISNANF_WORKS): New macro.
4032         (gl_FUNC_ISNANF_NO_LIBM): Invoke it.
4033         * lib/isnan.c (FUNC): Use run-time expressions for SGI compiler.
4034         Needed for IRIX 6.5 and Solaris 2.5.1.
4035
4036 2007-05-19  Bruno Haible  <bruno@clisp.org>
4037
4038         * tests/test-vasnprintf-posix.c (have_minus_zero): New function.
4039         (test_function): Skip tests involving -0.0 on platforms where
4040         -0.0 = 0.0.
4041         * tests/test-vasprintf-posix.c (have_minus_zero): New function.
4042         (test_function): Skip tests involving -0.0 on platforms where
4043         -0.0 = 0.0.
4044         * tests/test-snprintf-posix.h (have_minus_zero): New function.
4045         (test_function): Skip tests involving -0.0 on platforms where
4046         -0.0 = 0.0.
4047         * tests/test-sprintf-posix.h (have_minus_zero): New function.
4048         (test_function): Skip tests involving -0.0 on platforms where
4049         -0.0 = 0.0.
4050         * tests/test-fprintf-posix.h (test_function): Remove all -0.0 related
4051         tests.
4052         * tests/test-printf-posix.h (test_function): Likewise.
4053         * tests/test-printf-posix.output: Remove all -0.0 related results.
4054         Needed for IRIX 6.5.
4055
4056 2007-05-19  Bruno Haible  <bruno@clisp.org>
4057
4058         * tests/test-vasnprintf-posix.c (test_function): Allow NaN to be
4059         printed as "nan0x7fffffff" instead of "nan".
4060         * tests/test-vasprintf-posix.c (test_function): Likewise.
4061         * tests/test-snprintf-posix.h (test_function): Likewise.
4062         * tests/test-sprintf-posix.h (test_function): Likewise.
4063         * tests/test-fprintf-posix.h (NaN): Remove macro.
4064         (test_function): Remove all NaN related tests.
4065         * tests/test-printf-posix.h (NaN): Remove macro.
4066         (test_function): Remove all NaN related tests.
4067         * tests/test-printf-posix.output: Remove all NaN related results.
4068         Needed for IRIX 6.5.
4069
4070 2007-05-19  Bruno Haible  <bruno@clisp.org>
4071
4072         * m4/frexp.m4 (gl_FUNC_FREXP_WORKS): Fix C89 syntax error in test code.
4073         * m4/frexpl.m4 (gl_FUNC_FREXPL_WORKS): Likewise.
4074
4075 2007-05-19  Bruno Haible  <bruno@clisp.org>
4076
4077         * lib/float_.h: New file.
4078         * m4/float_h.m4: New file.
4079         * modules/float: New file.
4080         * modules/isnanl (Dependencies): Add float.
4081         * modules/isnanl-nolibm (Dependencies): Likewise.
4082         * modules/mathl (Dependencies): Likewise.
4083         * modules/printf-frexpl (Dependencies): Likewise.
4084         * modules/signbit (Dependencies): Likewise.
4085         * modules/vasnprintf (Dependencies): Likewise.
4086         * doc/headers/float.texi: Update.
4087
4088 2007-05-19  Jim Meyering  <jim@meyering.net>
4089
4090         * lib/utimens.c (gl_futimens): Rename from futimens,
4091         now that glibc-2.6 declares futimens.
4092         * lib/utimens.h: Likewise.
4093
4094 2007-05-19  Bruno Haible  <bruno@clisp.org>
4095
4096         Avoid test failures on mingw.
4097         * tests/test-fprintf-posix.sh: Convert CR/LF to LF in output.
4098         * tests/test-printf-posix.sh: Likewise.
4099         * tests/test-vfprintf-posix.sh: Likewise.
4100         * tests/test-vprintf-posix.sh: Likewise.
4101
4102 2007-05-19  Bruno Haible  <bruno@clisp.org>
4103
4104         Fix *printf result for NaN, Inf, -0.0 on mingw.
4105         * m4/printf.m4 (gl_PRINTF_INFINITE): New macro.
4106         * lib/vasnprintf.c: Include math.h and isnan.h.
4107         (is_infinite_or_zero): New function.
4108         (VASNPRINTF): Fix also the handling of infinite or zero 'double'
4109         values in the %f, %F, %e, %E, %g, %G directives.
4110         * m4/vasnprintf.m4 (gl_PREREQ_VASNPRINTF_INFINITE): New macro.
4111         * m4/fprintf-posix.m4 (gl_FUNC_FPRINTF_POSIX): Invoke
4112         gl_PRINTF_INFINITE and test its result. Invoke
4113         gl_PREREQ_VASNPRINTF_INFINITE.
4114         * m4/snprintf-posix.m4 (gl_FUNC_SNPRINTF_POSIX): Likewise.
4115         * m4/sprintf-posix.m4 (gl_FUNC_SPRINTF_POSIX): Likewise.
4116         * m4/vasnprintf-posix.m4 (gl_FUNC_VASNPRINTF_POSIX): Likewise.
4117         * m4/vasprintf-posix.m4 (gl_FUNC_VASPRINTF_POSIX): Likewise.
4118         * m4/vfprintf-posix.m4 (gl_FUNC_VFPRINTF_POSIX): Likewise.
4119         * m4/vsnprintf-posix.m4 (gl_FUNC_VSNPRINTF_POSIX): Likewise.
4120         * m4/vsprintf-posix.m4 (gl_FUNC_VSPRINTF_POSIX): Likewise.
4121         * doc/functions/fprintf.texi: Update.
4122         * doc/functions/printf.texi: Update.
4123         * doc/functions/snprintf.texi: Update.
4124         * doc/functions/sprintf.texi: Update.
4125         * doc/functions/vfprintf.texi: Update.
4126         * doc/functions/vprintf.texi: Update.
4127         * doc/functions/vsnprintf.texi: Update.
4128         * doc/functions/vsprintf.texi: Update.
4129
4130 2007-05-19  Bruno Haible  <bruno@clisp.org>
4131
4132         * lib/vasnprintf.c (convert_to_decimal): Add an extra_zeroes argument.
4133         (scale10_round_decimal_long_double): Inline scale10_round_long_double.
4134         Instead of multiplying with 10^k, set extra_zeroes to k.
4135         (scale10_round_long_double): Remove function.
4136
4137 2007-05-18  Bruno Haible  <bruno@clisp.org>
4138
4139         * lib/vasnprintf.c (VASNPRINTF) [NEED_PRINTF_FLAG_ZERO]: Fix logic bug
4140         introduced on 2007-05-06.
4141
4142 2007-05-18  Bruno Haible  <bruno@clisp.org>
4143
4144         * tests/test-vasnprintf-posix.c (test_function): Also test the %e and
4145         %g directives.
4146         * tests/test-vasprintf-posix.c (test_function): Likewise.
4147         * tests/test-snprintf-posix.h (test_function): Likewise.
4148         * tests/test-sprintf-posix.h (test_function): Likewise.
4149
4150 2007-05-18  Bruno Haible  <bruno@clisp.org>
4151
4152         * tests/test-vasnprintf-posix.c (SIZEOF): New macro.
4153         (strmatch): New function.
4154         (test_function): Test the %f directive on numbers of various exponents.
4155         * tests/test-vasprintf-posix.c (SIZEOF): New macro.
4156         (strmatch): New function.
4157         (test_function): Test the %f directive on numbers of various exponents.
4158         * tests/test-snprintf-posix.h (strmatch): New function.
4159         (test_function): Test the %f directive on numbers of various exponents.
4160         * tests/test-sprintf-posix.h (strmatch): New function.
4161         (test_function): Test the %f directive on numbers of various exponents.
4162         * tests/test-snprintf-posix.c (SIZEOF): New macro.
4163         * tests/test-sprintf-posix.c (SIZEOF): New macro.
4164         * tests/test-vsnprintf-posix.c (SIZEOF): New macro.
4165         * tests/test-vsprintf-posix.c (SIZEOF): New macro.
4166
4167 2007-05-18  Bruno Haible  <bruno@clisp.org>
4168
4169         Add support for 'long double' number output.
4170         * m4/printf.m4 (gl_PRINTF_LONG_DOUBLE): New macro.
4171         * lib/vasnprintf.c: Include math.h and float+.h.
4172         (mp_limb_t): New type.
4173         (GMP_LIMB_BITS): New macro.
4174         (mp_twolimb_t): New type.
4175         (GMP_TWOLIMB_BITS): New macro.
4176         (mpn_t): New type.
4177         (multiply, divide, convert_to_decimal, decode_long_double,
4178         scale10_round_long_double, scale10_round_decimal_long_double,
4179         floorlog10l): New functions.
4180         (VASNPRINTF) [NEED_PRINTF_LONG_DOUBLE]: Implement 'long double' support
4181         for the %f, %F, %e, %E, %g, %G directives.
4182         * m4/vasnprintf.m4 (gl_PREREQ_VASNPRINTF_LONG_DOUBLE): New macro.
4183         * m4/fprintf-posix.m4 (gl_FUNC_FPRINTF_POSIX): Invoke
4184         gl_PRINTF_LONG_DOUBLE and test its result. Invoke
4185         gl_PREREQ_VASNPRINTF_LONG_DOUBLE.
4186         * m4/snprintf-posix.m4 (gl_FUNC_SNPRINTF_POSIX): Likewise.
4187         * m4/sprintf-posix.m4 (gl_FUNC_SPRINTF_POSIX): Likewise.
4188         * m4/vasnprintf-posix.m4 (gl_FUNC_VASNPRINTF_POSIX): Likewise.
4189         * m4/vasprintf-posix.m4 (gl_FUNC_VASPRINTF_POSIX): Likewise.
4190         * m4/vfprintf-posix.m4 (gl_FUNC_VFPRINTF_POSIX): Likewise.
4191         * m4/vsnprintf-posix.m4 (gl_FUNC_VSNPRINTF_POSIX): Likewise.
4192         * m4/vsprintf-posix.m4 (gl_FUNC_VSPRINTF_POSIX): Likewise.
4193         * modules/fprintf-posix (Depends-on): Add frexpl-nolibm.
4194         * modules/snprintf-posix (Depends-on): Likewise.
4195         * modules/sprintf-posix (Depends-on): Likewise.
4196         * modules/vasnprintf-posix (Depends-on): Likewise.
4197         * modules/vasprintf-posix (Depends-on): Likewise.
4198         * modules/vfprintf-posix (Depends-on): Likewise.
4199         * modules/vsnprintf-posix (Depends-on): Likewise.
4200         * modules/vsprintf-posix (Depends-on): Likewise.
4201         * modules/vasnprintf (Files): Add lib/float+.h.
4202         * doc/functions/fprintf.texi: Update.
4203         * doc/functions/printf.texi: Update.
4204         * doc/functions/snprintf.texi: Update.
4205         * doc/functions/sprintf.texi: Update.
4206         * doc/functions/vfprintf.texi: Update.
4207         * doc/functions/vprintf.texi: Update.
4208         * doc/functions/vsnprintf.texi: Update.
4209         * doc/functions/vsprintf.texi: Update.
4210
4211 2007-05-18  Bruno Haible  <bruno@clisp.org>
4212
4213         * lib/vasnprintf.c (USE_SNPRINTF): Define to 0 on BeOS.
4214
4215 2007-05-18  Bruno Haible  <bruno@clisp.org>
4216
4217         * lib/vasnprintf.c (VASNPRINTF) [WIN32]: Use %I64d instead of %lld
4218         for printing 64-bit integers. Needed for mingw.
4219
4220 2007-05-18  Bruno Haible  <bruno@clisp.org>
4221
4222         * m4/printf-frexpl.m4 (gl_FUNC_PRINTF_FREXPL): Invoke
4223         gl_FUNC_FREXPL_WORKS.
4224         * modules/printf-frexpl (Files): Add m4/frexpl.m4.
4225
4226 2007-05-18  Bruno Haible  <bruno@clisp.org>
4227
4228         * modules/frexpl-nolibm-tests: New file.
4229
4230         * modules/frexpl-nolibm: New file.
4231         * m4/frexpl.m4 (gl_FUNC_FREXPL_NO_LIBM): New macro.
4232
4233 2007-05-17  Paul Eggert  <eggert@cs.ucla.edu>
4234
4235         * lib/dirent_.h: Prefer #include_next <foo.h> to #include
4236         @ABSOLUTE_FOO_H@ if @HAVE_INCLUDE_NEXT@.  This works better with
4237         GCC 4.2, which otherwise issues a lot of warnings.
4238         * lib/iconv_.h, lib/locale_.h, lib/netinet_in_.h, lib/sys_select_.h:
4239         * lib/sys_socket_.h, lib/sys_stat_.h, lib/sysexits_.h, lib/unistd_.h:
4240         Likewise.
4241         * modules/fchdir (dirent.h): Substitute @HAVE_INCLUDE_NEXT@.
4242         * modules/iconv_open (iconv.h): Likewise.
4243         * modules/locale (locale.h): Likewise.
4244         * modules/netinet_in (netinet/in.h): Likewise.
4245         * modules/sys_select (sys_select.h): Likewise.
4246         * modules/sys_socket (sys/socket.h): Likewise.
4247         * modules/sys_stat (sys/stat.h): Likewise.
4248         * modules/sysexits (sysexits.h): Likewise.
4249         * modules/unistd (unistd.h): Likewise.
4250
4251 2007-05-17  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
4252
4253         * modules/closein-tests (Makefile.am): Distribute
4254         `test-closein.sh'.
4255
4256 2007-05-17  Bruno Haible  <bruno@clisp.org>
4257
4258         * tests/test-printf-posix.output: Renamed from
4259         tests/test-fprintf-posix.out.
4260         * modules/fprintf-posix-tests: Update.
4261         * modules/printf-posix-tests: Update.
4262         * modules/vfprintf-posix-tests: Update.
4263         * modules/vprintf-posix-tests: Update.
4264         * tests/test-fprintf-posix.sh: Update.
4265         * tests/test-printf-posix.sh: Update.
4266         * tests/test-vfprintf-posix.sh: Update.
4267         * tests/test-vprintf-posix.sh: Update.
4268         Reported by Ralf Wildenhues.
4269
4270 2007-05-16  Paul Eggert  <eggert@cs.ucla.edu>
4271
4272         * lib/fcntl_.h: Prefer #include_next <foo.h> to #include
4273         @ABSOLUTE_FOO_H@ if @HAVE_INCLUDE_NEXT@.  This works better with
4274         GCC 4.2, which otherwise issues a lot of warnings.
4275         * lib/inttypes_.h, lib/math_.h, lib/search_.h, lib/signal_.h:
4276         * lib/stdint_.h, lib/stdio_.h, lib/stdlib_.h, lib/string_.h:
4277         * lib/sys_time_.h, lib/time_.h, lib/wchar_.h, lib/wctype_.h: Likewise.
4278         * lib/stdlib_.h: Don't bother with #pragma GCC system_header, as
4279         it should no longer be needed.
4280         * lib/string_.h: Likewise.
4281         * modules/absolute-header (HAVE_INCLUDE_NEXT): New 'make' define.
4282         * modules/fcntl (fcntl.h): Substitute @HAVE_INCLUDE_NEXT@.
4283         * modules/inttypes (inttypes.h): Likewise.
4284         * modules/math (math.h): Likewise.
4285         * modules/search (search.h): Likewise.
4286         * modules/signal (signal.h): Likewise.
4287         * modules/stdint (stdint.h): Likewise.
4288         * modules/stdio (stdio.h): Likewise.
4289         * modules/stdlib (stdlib.h): Likewise.
4290         * modules/string (string.h): Likewise.
4291         * modules/sys_time (sys/time.h): Likewise.
4292         * modules/time (time.h): Likewise.
4293         * modules/wchar (wchar.h): Likewise.
4294         * modules/wctype (wtype.h): Likewise.
4295
4296 2007-05-16  Thien-Thi Nguyen  <ttn@gnuvola.org>  (tiny change)
4297
4298         * doc/gnulib-tool.texi (CVS Issues): Fix typo.
4299
4300 2007-05-13  Bruno Haible  <bruno@clisp.org>
4301
4302         * stpcpy.m4 (gl_FUNC_STPCPY): Require AC_C_RESTRICT.
4303         * stpncpy.m4 (gl_FUNC_STPNCPY): Likewise.
4304         * strsep.m4 (gl_FUNC_STRSEP): Likewise.
4305         * strtok_r.m4 (gl_FUNC_STRTOK_R): Likewise.
4306         (gl_PREREQ_STRTOK_R): Don't require it here.
4307
4308 2007-05-13  Bruno Haible  <bruno@clisp.org>
4309
4310         * lib/stdlib_.h (mkdtemp, mkstemp): Comment out argument name. Needed
4311         when used in C++ mode.
4312
4313 2007-05-12  Bruno Haible  <bruno@clisp.org>
4314
4315         * lib/linebuffer.h: Tweak doc.
4316         * lib/linebuffer.c: Likewise.
4317
4318 2007-05-12  James Youngman  <jay@gnu.org>
4319
4320         * lib/linebuffer.c (readlinebuffer_delim): New function,
4321         like readlinebuffer, but use a caller-specified delimiter.
4322         (readlinebuffer): Just call readlinebuffer_delim with '\n'
4323         as the delimiter.
4324         * lib/linebuffer.h (readlinebuffer_delim): Declare it.
4325
4326 2007-05-12  Sergey Poznyakoff  <gray@gnu.org.ua>
4327
4328         * m4/openat.m4 (gl_FUNC_OPENAT): Do not require openat-die.
4329         * modules/openat (Files): Remove openat-die.c.
4330         (Depends-on): Add openat-die.
4331         * modules/openat-die: New module.
4332
4333 2007-05-06  Bruno Haible  <bruno@clisp.org>
4334
4335         * m4/printf.m4 (gl_PRINTF_FLAG_GROUPING, gl_VSNPRINTF_ZEROSIZE_C99):
4336         Update with info about Cygwin.
4337         * doc/functions/fprintf.texi: Update.
4338         * doc/functions/printf.texi: Update.
4339         * doc/functions/snprintf.texi: Update.
4340         * doc/functions/sprintf.texi: Update.
4341         * doc/functions/vfprintf.texi: Update.
4342         * doc/functions/vprintf.texi: Update.
4343         * doc/functions/vsnprintf.texi: Update.
4344         * doc/functions/vsprintf.texi: Update.
4345         Reported by Eric Blake.
4346
4347 2007-05-06  Bruno Haible  <bruno@clisp.org>
4348
4349         * lib/vasnprintf.c (VASNPRINTF) [NEED_PRINTF_FLAG_ZERO]: Perform the
4350         padding ourselves for the floating-point directives.
4351         * m4/printf.m4 (gl_PRINTF_FLAG_ZERO): New macro.
4352         * m4/vasnprintf.m4 (gl_PREREQ_VASNPRINTF_FLAG_ZERO): New macro.
4353         * m4/snprintf-posix.m4 (gl_FUNC_SNPRINTF_POSIX): Invoke
4354         gl_PRINTF_FLAG_ZERO and test its result. Invoke
4355         gl_PREREQ_VASNPRINTF_FLAG_ZERO.
4356         * m4/sprintf-posix.m4 (gl_FUNC_SPRINTF_POSIX): Likewise.
4357         * m4/fprintf-posix.m4 (gl_FUNC_FPRINTF_POSIX): Likewise.
4358         * m4/vasnprintf-posix.m4 (gl_FUNC_VASNPRINTF_POSIX): Likewise.
4359         * m4/vasprintf-posix.m4 (gl_FUNC_VASPRINTF_POSIX): Likewise.
4360         * m4/vfprintf-posix.m4 (gl_FUNC_VFPRINTF_POSIX): Likewise.
4361         * m4/vsnprintf-posix.m4 (gl_FUNC_VSNPRINTF_POSIX): Likewise.
4362         * m4/vsprintf-posix.m4 (gl_FUNC_VSPRINTF_POSIX): Likewise.
4363         * tests/test-snprintf-posix.h (test_function): Also check the width
4364         and some flags in the %f directive.
4365         * tests/test-sprintf-posix.h (test_function): Likewise.
4366         * tests/test-vasnprintf-posix.c (test_function): Likewise.
4367         * tests/test-vasprintf-posix.c (test_function): Likewise.
4368         * doc/functions/fprintf.texi: Update.
4369         * doc/functions/printf.texi: Update.
4370         * doc/functions/snprintf.texi: Update.
4371         * doc/functions/sprintf.texi: Update.
4372         * doc/functions/vfprintf.texi: Update.
4373         * doc/functions/vprintf.texi: Update.
4374         * doc/functions/vsnprintf.texi: Update.
4375         * doc/functions/vsprintf.texi: Update.
4376
4377 2007-05-06  Bruno Haible  <bruno@clisp.org>
4378
4379         * lib/vasnprintf.c (VASNPRINTF) [NEED_PRINTF_FLAG_GROUPING]: Don't
4380         pass the ' flag character to sprintf or snprintf.
4381         * m4/printf.m4 (gl_PRINTF_FLAG_GROUPING): New macro.
4382         * m4/vasnprintf.m4 (gl_PREREQ_VASNPRINTF_FLAG_GROUPING): New macro.
4383         * m4/snprintf-posix.m4 (gl_FUNC_SNPRINTF_POSIX): Invoke
4384         gl_PRINTF_FLAG_GROUPING and test its result. Invoke
4385         gl_PREREQ_VASNPRINTF_FLAG_GROUPING.
4386         * m4/sprintf-posix.m4 (gl_FUNC_SPRINTF_POSIX): Likewise.
4387         * m4/fprintf-posix.m4 (gl_FUNC_FPRINTF_POSIX): Likewise.
4388         * m4/vasnprintf-posix.m4 (gl_FUNC_VASNPRINTF_POSIX): Likewise.
4389         * m4/vasprintf-posix.m4 (gl_FUNC_VASPRINTF_POSIX): Likewise.
4390         * m4/vfprintf-posix.m4 (gl_FUNC_VFPRINTF_POSIX): Likewise.
4391         * m4/vsnprintf-posix.m4 (gl_FUNC_VSNPRINTF_POSIX): Likewise.
4392         * m4/vsprintf-posix.m4 (gl_FUNC_VSPRINTF_POSIX): Likewise.
4393         * tests/test-snprintf-posix.h (test_function): Also check the grouping
4394         flag.
4395         * tests/test-sprintf-posix.h (test_function): Likewise.
4396         * tests/test-vasnprintf-posix.c (test_function): Likewise.
4397         * tests/test-vasprintf-posix.c (test_function): Likewise.
4398         * doc/functions/fprintf.texi: Update.
4399         * doc/functions/printf.texi: Update.
4400         * doc/functions/snprintf.texi: Update.
4401         * doc/functions/sprintf.texi: Update.
4402         * doc/functions/vfprintf.texi: Update.
4403         * doc/functions/vprintf.texi: Update.
4404         * doc/functions/vsnprintf.texi: Update.
4405         * doc/functions/vsprintf.texi: Update.
4406
4407 2007-05-01  Bruno Haible  <bruno@clisp.org>
4408
4409         * tests/test-argp-2.sh (func_compare): Drop .exe suffix.
4410
4411 2007-05-03  Paul Eggert  <eggert@cs.ucla.edu>
4412
4413         * m4/d-ino.m4 (gl_CHECK_TYPE_STRUCT_DIRENT_D_INO): Use better
4414         comment for D_INO_IN_DIRENT.  Problem reported by James Youngman.
4415
4416 2007-05-02  Paul Eggert  <eggert@cs.ucla.edu>
4417
4418         * m4/d-ino.m4 (gl_CHECK_TYPE_STRUCT_DIRENT_D_INO): Test whether
4419         readdir returns garbage in d_ino.  Problem reported by Kaz Sasayama in
4420         <http://lists.gnu.org/archive/html/bug-gnulib/2007-05/msg00021.html>.
4421
4422 2007-05-02  Sergey Poznyakoff  <gray@gnu.org.ua>
4423
4424         * lib/argp-help.c (struct hol_entry): New member `ord'.
4425         (HOL_ENTRY_PTRCMP): Use ord for comparison
4426         (hol_sort): Initialize ord.
4427
4428 2007-05-01  Bruno Haible  <bruno@clisp.org>
4429
4430         * doc/functions/_Exit_C99.texi: Renamed from doc/functions/_Exit.texi.
4431         Reported by Eric Blake.
4432         * doc/gnulib.texi (Function Substitutes): Update.
4433
4434 2007-05-01  Bruno Haible  <bruno@clisp.org>
4435
4436         * doc/functions.texi: Remove file, now redundant through
4437         doc/functions/*.texi.
4438
4439 2007-05-01  Bruno Haible  <bruno@clisp.org>
4440
4441         * modules/argp (Depends-on): Add sleep.
4442
4443 2007-05-01  Bruno Haible  <bruno@clisp.org>
4444
4445         * modules/sleep-tests: New file.
4446         * tests/test-sleep.c: New file.
4447
4448         * modules/sleep: New file.
4449         * lib/sleep.c: New file.
4450         * m4/sleep.m4: New file.
4451         * lib/unistd_.h (sleep): New declaration.
4452         * m4/unistd_h.m4 (gl_UNISTD_H_DEFAULTS): Initialize GNULIB_SLEEP,
4453         HAVE_SLEEP.
4454         * modules/unistd (Makefile.am): Substitute GNULIB_SLEEP, HAVE_SLEEP.
4455         * doc/functions/sleep.texi: Document the sleep module.
4456
4457 2007-05-01  Bruno Haible  <bruno@clisp.org>
4458
4459         * lib/sigprocmask.h: Remove file.
4460         * lib/signal_.h: Incorporate the previous contents of sigprocmask.h.
4461         * lib/sigprocmask.c: Include <signal.h> instead of sigprocmask.h.
4462         * m4/signal_h.m4 (gl_SIGNAL_H_DEFAULTS): Substitute GNULIB_SIGPROCMASK,
4463         HAVE_POSIX_SIGNALBLOCKING, HAVE_SIGSET_T.
4464         * m4/signalblocking.m4 (gl_SIGNALBLOCKING): Require
4465         gl_SIGNAL_H_DEFAULTS. Set HAVE_POSIX_SIGNALBLOCKING as a shell variable.
4466         (gl_PREREQ_SIGPROCMASK): Require gl_SIGNAL_H_DEFAULTS. Set
4467         HAVE_SIGSET_T as a shell variable.
4468         * modules/signal (Makefile.am): Substitute GNULIB_SIGPROCMASK,
4469         HAVE_POSIX_SIGNALBLOCKING, HAVE_SIGSET_T into signal.h.
4470         * modules/sigprocmask (Files): Remove lib/sigprocmask.h.
4471         (Depends-on): Add signal. Remove verify.
4472         (configure.ac): Invoke gl_SIGNAL_MODULE_INDICATOR.
4473         (Include): Mention <signal.h> instead of sigprocmask.h.
4474         * NEWS: Mention the change.
4475         * lib/fatal-signal.c: Don't include sigprocmask.h.
4476
4477 2007-05-01  Bruno Haible  <bruno@clisp.org>
4478
4479         * modules/signal: New file.
4480         * lib/signal_.h: New file.
4481         * m4/signal_h.m4: New file.
4482
4483 2007-05-01  Bruno Haible  <bruno@clisp.org>
4484
4485         * lib/wctype_.h: Test HAVE_ISWCNTRL at configure time.
4486         * m4/wctype.m4 (gl_WCTYPE_H): Substitute HAVE_ISWCNTRL.
4487         * modules/wctype (Makefile.am): Substitute HAVE_ISWCNTRL instead of
4488         HAVE_WCTYPE_CTMP_BUG into wctype.h.
4489
4490 2007-05-01  Bruno Haible  <bruno@clisp.org>
4491
4492         * lib/sys_stat_.h: Test HAVE_LSTAT, HAVE_DECL_MKDIR, HAVE_IO_H at
4493         configure time.
4494         * m4/sys_stat_h.m4 (gl_HEADER_SYS_STAT_H): Substitute HAVE_LSTAT,
4495         HAVE_DECL_MKDIR, HAVE_IO_H via AC_SUBST.
4496         * modules/sys_stat (Makefile.am): Substitute their values into
4497         sys/stat.h.
4498
4499 2007-05-01  Bruno Haible  <bruno@clisp.org>
4500
4501         * lib/glob_.h: Test HAVE_SYS_CDEFS_H at configure time.
4502         * m4/glob.m4 (gl_PREREQ_GLOB): Substitute HAVE_SYS_CDEFS_H via AC_SUBST.
4503         * modules/glob (Makefile.am): Put HAVE_SYS_CDEFS_H value into glob.h.
4504
4505 2007-05-01  Bruno Haible  <bruno@clisp.org>
4506
4507         * doc/header/assert.texi: Undo last change: don't mention the gnulib
4508         'assert' module here.
4509
4510 2007-05-01  Bruno Haible  <bruno@clisp.org>
4511
4512         * doc/functions/*.texi: New files.
4513         * doc/functions/google-ranking.txt: New file.
4514         * doc/gnulib.texi (Function Substitutes): New chapter.
4515         (ctime, inet_ntoa): Remove sections.
4516         * doc/ctime.texi: Remove file.
4517         * doc/inet_ntoa.texi: Remove file.
4518         * doc/Makefile (gnulib.info, gnulib.html, gnulib.dvi): Update
4519         dependencies.
4520         (%.info): New rule, specifying a --reference-limit.
4521
4522 2007-05-01  Bruno Haible  <bruno@clisp.org>
4523
4524         * MODULES.html.sh (posix_functions): Remove 'exec', 'toc'.
4525
4526 2007-05-01  Bruno Haible  <bruno@clisp.org>
4527
4528         * modules/mkdir (Depends-on): Add sys_stat, because sys_stat provides
4529         the portability of 'mkdir' to mingw systems.
4530
4531 2007-05-01  Bruno Haible  <bruno@clisp.org>
4532
4533         * doc/headers/google-ranking.txt: New file.
4534
4535 2007-04-30  Eric Blake  <ebb9@byu.net>
4536
4537         Prefer fseeko to fseek.
4538         * modules/getpass (Depends-on): Add fseeko.
4539         * lib/getpass.c (getpass): Use fseeko, not fseek.
4540
4541 2007-04-30  Sergey Poznyakoff  <gray@gnu.org.ua>
4542
4543         * lib/argp-help.c (hol_entry_cmp): Option sorting algorithm
4544         assumes the sorting is stable, while most qsort implementations
4545         are not.  Use argument addresses to ensure they never compare as
4546         equal.
4547
4548         * tests/test-argp-2.sh (usage-indent test): Fix output
4549         (func_compare): Restore diff options
4550         * tests/test-argp.c: Restore #include "progname.h"
4551
4552 2007-04-29  Bruno Haible  <bruno@clisp.org>
4553
4554         * m4/printf.m4 (gl_VSNPRINTF_ZEROSIZE_C99): New macro.
4555         * m4/snprintf-posix.m4 (gl_FUNC_SNPRINTF_POSIX): Invoke
4556         gl_VSNPRINTF_ZEROSIZE_C99. Test gl_cv_func_vsnprintf_zerosize_c99.
4557         * m4/vsnprintf-posix.m4 (gl_FUNC_VSNPRINTF_POSIX): Likewise.
4558         * modules/snprintf-posix-tests (Files): Add tests/test-snprintf.c.
4559         (configure.ac): Define CHECK_SNPRINTF_POSIX.
4560         (TESTS, check_PROGRAMS): Add test-snprintf.
4561         * modules/vsnprintf-posix-tests (Files): Add tests/test-vsnprintf.c.
4562         (configure.ac): Define CHECK_VSNPRINTF_POSIX.
4563         (TESTS, check_PROGRAMS): Add test-vsnprintf.
4564         * tests/test-snprintf.c (main) [!CHECK_SNPRINTF_POSIX]: Disable
4565         assertions that fail on HP-UX, OSF/1, or IRIX.
4566         * tests/test-vsnprintf.c (main) [!CHECK_VSNPRINTF_POSIX]: Likewise.
4567
4568 2007-04-29  Bruno Haible  <bruno@clisp.org>
4569
4570         * MODULES.html.sh (posix_functions): Remove 'contents'.
4571
4572 2007-04-29  Karl Berry  <karl@gnu.org>
4573
4574         * config/srclist.txt (gendocs_template_min): new entry.
4575
4576 2007-04-29  Bruno Haible  <bruno@clisp.org>
4577
4578         Work around fpurge bug on BSD systems.
4579         * modules/fpurge (Makefile.am): Compile fpurge.c unconditionally.
4580         * m4/fpurge.m4 (gl_FUNC_FPURGE): Don't invoke AC_LIBOBJ.
4581         * lib/fpurge.h (fpurge): Don't handle __fpurge wrapper here. Define
4582         fpurge to rpl_fpurge if the system already has this function.
4583         * lib/fpurge.c (fpurge): Handle also the __fpurge wrapper case and
4584         the case where the system already has this function. Correct invariants
4585         on BSD systems.
4586         * lib/fseeko.c (rpl_fseeko): Update recognition of preceding fflush on
4587         BSD systems.
4588
4589 2007-04-29  Sergey Poznyakoff  <gray@gnu.org.ua>
4590
4591         * lib/argp-help.c (hol_cluster_cmp): Reverse comparison.  Change
4592         proposed by Sven Verdoolaege.
4593
4594         * tests/test-argp.c: Fix option ordering.  Test deeply clustered
4595         options.
4596         * tests/test-argp-2.sh (func_compare): Use diff instead of cmp.
4597         (usage and help tests): Update
4598
4599 2007-04-29  Bruno Haible  <bruno@clisp.org>
4600
4601         * tests/test-fflush.c (main): Use a file of size 17, not 10.
4602         Print more information in case of failure. Disable a test on BeOS.
4603
4604 2007-04-29  Bruno Haible  <bruno@clisp.org>
4605
4606         * tests/**/test-*.[hc] (ASSERT): Use fprintf to show the line number.
4607         This helps debugging on systems on which no gdb is available.
4608
4609 2007-04-29  Bruno Haible  <bruno@clisp.org>
4610
4611         * lib/freading.h: Improve comments.
4612         * lib/fwriting.h: Likewise.
4613         * tests/test-freading.c (main): Don't check freading immediately after
4614         repositioning. Needed for glibc.
4615
4616 2007-04-29  Bruno Haible  <bruno@clisp.org>
4617
4618         * lib/freading.c (freading): Trivial simplification.
4619
4620 2007-04-28  Bruno Haible  <bruno@clisp.org>
4621
4622         * tests/test-fwriting.c (main): Also test the interaction between
4623         fflush and fwriting.
4624         * modules/fwriting-tests (Depends-on): Add fflush.
4625
4626         * tests/test-freading.c (main): Also test the interaction between
4627         fflush and freading.
4628         * modules/freading-tests (Depends-on): Add fflush.
4629
4630 2007-04-28  Bruno Haible  <bruno@clisp.org>
4631
4632         * lib/stdio_.h (fseek, ftell): Provide link warnings suggesting to use
4633         fseeko and ftello.
4634         Suggested by Eric Blake.
4635
4636 2007-04-28  Jim Meyering  <jim@meyering.net>
4637
4638         Avoid false-negative in gl_STDINT_H's C99 conformance test.
4639         * m4/stdint.m4 (gl_STDINT_H): When checking whether stdint.h conforms
4640         to C99, include all of gl_STDINT_INCLUDES, not just <stddef.h>.
4641
4642 2007-04-27  Eric Blake  <ebb9@byu.net>
4643
4644         * doc/headers/assert.texi (assert.h): Document assert module use.
4645
4646 2007-04-27  Bruno Haible  <bruno@clisp.org>
4647
4648         * doc/headers/*.texi: New files.
4649         * doc/gnulib.texi (Header File Substitutes): New chapter.
4650         * doc/Makefile (gnulib.info, gnulib.html, gnulib.dvi): Specify
4651         dependencies.
4652         (standards.info ,standards.html, standards.dvi): Update dependencies.
4653         (mostlyclean, clean): New targets.
4654
4655 2007-04-27  Bruno Haible  <bruno@clisp.org>
4656
4657         * lib/sysexits_.h: Renamed from lib/sysexit_.h.
4658         * modules/sysexits (Files, Makefile.am): Update.
4659
4660         * lib/sys_socket_.h: Renamed from lib/socket_.h.
4661         * modules/sys_socket (Files, Makefile.am): Update.
4662
4663         * lib/sys_stat_.h: Renamed from lib/stat_.h.
4664         * modules/sys_stat (Files, Makefile.am): Update.
4665
4666 2007-04-27  Eric Blake  <ebb9@byu.net>
4667
4668         * lib/freading.h: Improve comments.
4669         * lib/fwriting.h: Likewise.
4670         * lib/fflush.c: Likewise.
4671
4672         Fix closein for mingw.
4673         * modules/closein-tests: Add tests for closein.
4674         * tests/test-closein.c: New file.
4675         * tests/test-closein.sh: Likewise.
4676         * lib/unistd_.h [!SEEK_CUR]: Mingw also needs stdlib.h for _exit.
4677         * lib/closein.c (close_stdin): Don't fflush non-seekable streams.
4678
4679 2007-04-27  Bruno Haible  <bruno@clisp.org>
4680
4681         * lib/inttypes_.h [_DECC]: Don't use #include_next if the compiler
4682         version is < 6.
4683         * lib/math_.h [__DECC]: Likewise.
4684         * lib/stdio_.h [__DECC]: Likewise.
4685         * lib/stdlib_.h [__DECC]: Likewise.
4686         * lib/string_.h [__DECC]: Likewise.
4687         * lib/time_.h [__DECC]: Likewise.
4688         * lib/wchar_.h [__DECC]: Likewise.
4689         * lib/wctype_.h [__DECC]: Likewise.
4690
4691 2007-04-27  Bruno Haible  <bruno@clisp.org>
4692
4693         * tests/test-fbufmode.c (main): Relax test, to avoid failure on mingw.
4694
4695 2007-04-27  Bruno Haible  <bruno@clisp.org>
4696
4697         * lib/fflush.c: Add comments.
4698         * modules/fpurge-tests (Depends-on): Add fflush.
4699         * modules/freadable-tests (Depends-on): Likewise.
4700         * modules/fwritable-tests (Depends-on): Likewise.
4701
4702 2007-04-27  Charles Wilson  <libtool@cwilson.fastmail.fm>
4703
4704         * m4/argz.m4 (gl_FUNC_ARGZ): Use !HAVE_WORKING_ARGZ instead of
4705         SYSTEM_ARGZ_IS_BROKEN.  Also, minor stylistic improvements.
4706         Report by Bruno Haible <bruno@clisp.org>.
4707
4708 2007-04-26  Eric Blake  <ebb9@byu.net>
4709
4710         Fix fflush on mingw.
4711         * modules/fflush (Depends-on): Add freading.
4712         * lib/fflush.c (rpl_fflush): Use freading to avoid losing buffered
4713         but unread data.
4714
4715 2007-04-26  Eric Blake  <ebb9@byu.net>
4716         and Bruno Haible  <bruno@clisp.org>
4717
4718         Implement freading and fwriting.
4719         * lib/freading.c: New file.
4720         * lib/freading.h: Likewise.
4721         * m4/freading.m4: Likewise.
4722         * modules/freading: Likewise.
4723         * modules/freading-tests: Likewise.
4724         * tests/test-freading.c: Likewise.
4725         * lib/fwriting.c: New file.
4726         * lib/fwriting.h: Likewise.
4727         * m4/fwriting.m4: Likewise.
4728         * modules/fwriting: Likewise.
4729         * modules/fwriting-tests: Likewise.
4730         * tests/test-fwriting.c: Likewise.
4731         * MODULES.html.sh (File stream based Input/Output): Mention them.
4732
4733 2007-04-26  Bruno Haible  <bruno@clisp.org>
4734
4735         * lib/stdio_.h (fseeko, ftello): Check that off_t has the same size as
4736         'long' when we assume it.
4737         Suggested by Eric Blake.
4738
4739 2007-04-26  Bruno Haible  <bruno@clisp.org>
4740
4741         Ensure fseeko, ftello are declared on glibc systems.
4742         * modules/fflush (configure.ac-early): Require AC_FUNC_FSEEKO.
4743         * modules/fseeko (configure.ac-early): Likewise.
4744         * modules/ftello (configure.ac-early): Likewise.
4745         * m4/fflush.m4 (gl_REPLACE_FFLUSH): Don't define HAVE_FSEEKO, rely on
4746         AC_FUNC_FSEEKO for this.
4747         * m4/fseeko.m4 (gl_FUNC_FSEEKO): Inline gl_CHECK_FSEEKO.
4748         (gl_CHECK_FSEEKO): Remove macro.
4749
4750 2007-04-26  Bruno Haible  <bruno@clisp.org>
4751
4752         * tests/test-fflush.c (main): Also check the ftell result after
4753         fflush and fseek/fseeko.
4754         * lib/fflush.c (rpl_fflush): For BSD implementations, update the
4755         file descriptor position cache in the stream.
4756         * lib/fseeko.c (rpl_fseeko): Likewise.
4757
4758 2007-04-26  Bruno Haible  <bruno@clisp.org>
4759
4760         * modules/fflush-tests (Depends-on): Add fseeko.
4761
4762 2007-04-25  Charles Wilson  <libtool@cwilson.fastmail.fm>
4763             Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
4764
4765         * lib/argz_.h: ensure error_t definition is obtained in same
4766         mechanism system argz.h would have.
4767         * m4/argz.m4 (gl_FUNC_ARGZ): add new test to check if $host's
4768         argz facilities are known bad.  Err on the side of caution if
4769         cross-compiling.
4770
4771 2007-04-25  Eric Blake  <ebb9@byu.net>
4772
4773         * lib/fpurge.c (includes): Use stdlib.h for free.
4774         * tests/test-fflush.c (main): Also test fflush-fseeko.
4775
4776 2007-04-25  Bruno Haible  <bruno@clisp.org>
4777
4778         Make fflush+fseek POSIX-compliant on FreeBSD and MacOS X.
4779         * lib/fseeko.c: New file.
4780         * lib/stdio_.h: Include <sys/types.h> when off_t is needed.
4781         (fseeko, fseek): Define to replacements if REPLACE_FFLUSH.
4782         * m4/fseeko.m4 (gl_CHECK_FSEEKO): New macro, extracted from
4783         gl_FUNC_FSEEKO.
4784         (gl_FUNC_FSEEKO): Invoke it.
4785         * m4/fflush.m4 (gl_REPLACE_FFLUSH): Arrange to compile fseeko.c. Invoke
4786         gl_CHECK_FSEEKO. Define HAVE_FSEEKO.
4787         * modules/fflush (Files): Add lib/fseeko.c, m4/fseeko.m4.
4788
4789 2007-04-25  Bruno Haible  <bruno@clisp.org>
4790
4791         * modules/fflush (Depends-on): Add ftello.
4792
4793 2007-04-25  Bruno Haible  <bruno@clisp.org>
4794
4795         * modules/ftello-tests: New file.
4796         * tests/test-ftello.c: New file.
4797
4798         * modules/ftello: New file.
4799         * m4/ftello.m4: New file.
4800         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Set also GNULIB_FTELLO,
4801         HAVE_FTELLO.
4802         * lib/stdio_.h (ftello): New declaration.
4803         * modules/stdio (Makefile.am): Substitute also GNULIB_FTELLO,
4804         HAVE_FTELLO.
4805
4806 2007-04-25  Bruno Haible  <bruno@clisp.org>
4807
4808         * modules/fseeko-tests: New file.
4809         * tests/test-fseeko.c: New file.
4810
4811         * modules/fseeko: New file.
4812         * m4/fseeko.m4: New file.
4813         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Set also GNULIB_FSEEKO,
4814         HAVE_FSEEKO.
4815         * lib/stdio_.h (fseeko): New declaration.
4816         * modules/stdio (Makefile.am): Substitute also GNULIB_FSEEKO,
4817         HAVE_FSEEKO.
4818
4819 2007-04-25  Bruno Haible  <bruno@clisp.org>
4820
4821         * lib/stdio_.h (fflush): Add support for GNULIB_POSIXCHECK.
4822
4823 2007-04-25  Bruno Haible  <bruno@clisp.org>
4824
4825         * lib/unistd_.h: Include <stdio.h> if needed to get the SEEK_* macros.
4826         * tests/test-stdio.c: Check that the various SEEK_* macros are defined.
4827         * tests/test-unistd.c: Likewise.
4828         * tests/test-fcntl.c: Likewise.
4829
4830 2007-04-23  Eric Blake  <ebb9@byu.net>
4831
4832         * lib/fflush.c: Fix missing include.
4833         Reported by Bruno Haible.
4834
4835 2007-04-23  Bruno Haible  <bruno@clisp.org>
4836
4837         * lib/fpurge.c (fpurge) [glibc, BSD]: Free a malloc()ed ungetc buffer.
4838         Reported by Eric Blake.
4839
4840 2007-04-23  Bruno Haible  <bruno@clisp.org>
4841
4842         * lib/fbufmode.c (fbufmode): Port to Solaris/SPARC64.
4843
4844 2007-04-23  Bruno Haible  <bruno@clisp.org>
4845
4846         * lib/fseterr.c (fseterr): Don't hardcode the value of _IOERR.
4847
4848 2007-04-23  Bruno Haible  <bruno@clisp.org>
4849
4850         * tests/test-fbufmode.c (main): Be prepared to a failure of setvbuf.
4851         Needed on HP-UX 11.
4852
4853 2007-04-16  Eric Blake  <ebb9@byu.net>
4854
4855         Make fflush rely on fpurge.
4856         * lib/fflush.c (rpl_fflush): Rely on fpurge module, rather than
4857         open coding all variants.
4858         * modules/fflush (Depends-on): Add fpurge and unistd.
4859         * modules/fflush-tests (Depends-on): Unistd is no longer extra.
4860         * m4/fflush.m4 (gl_REPLACE_FFLUSH): Simplify.
4861
4862         Fix --with-tests compilation on cygwin.
4863         * modules/argmatch-tests (Makefile.am): List gnulib library first
4864         in LDADD.
4865         * modules/argp-tests (Makefile.am): Likewise.
4866         * modules/array-list-tests (Makefile.am): Likewise.
4867         * modules/array-oset-tests (Makefile.am): Likewise.
4868         * modules/avltree-list-tests (Makefile.am): Likewise.
4869         * modules/avltree-oset-tests (Makefile.am): Likewise.
4870         * modules/avltreehash-list-tests (Makefile.am): Likewise.
4871         * modules/carray-list-tests (Makefile.am): Likewise.
4872         * modules/dirname-tests (Makefile.am): Likewise.
4873         * modules/frexp-tests (Makefile.am): Likewise.
4874         * modules/isnanl-tests (Makefile.am): Likewise.
4875         * modules/linked-list-tests (Makefile.am): Likewise.
4876         * modules/linkedhash-list-tests (Makefile.am): Likewise.
4877         * modules/lock-tests (Makefile.am): Likewise.
4878         * modules/rbtree-list-tests (Makefile.am): Likewise.
4879         * modules/rbtree-oset-tests (Makefile.am): Likewise.
4880         * modules/rbtreehash-list-tests (Makefile.am): Likewise.
4881         * modules/tls-tests (Makefile.am): Likewise.
4882         * modules/tsearch-tests (Makefile.am): Likewise.
4883         * modules/xvasprintf-tests (Makefile.am): Likewise.
4884
4885         Fix fpurge for cygwin.
4886         * lib/fpurge.c (fpurge): Fix order of operation flub, and return a
4887         value.
4888         * modules/fpurge-tests (Depends-on): Clean up trash.
4889
4890 2007-04-16  Simon Josefsson  <simon@josefsson.org>
4891
4892         * lib/gc-libgcrypt.c (gc_hash_open): Shut up compiler warnings.
4893
4894         * m4/autobuild.m4: Re-indent.
4895
4896 2007-04-13  Bruno Haible  <bruno@clisp.org>
4897
4898         * modules/fpurge-tests: New file.
4899         * tests/test-fpurge.c: New file.
4900
4901         * modules/fpurge: New file.
4902         * lib/fpurge.h: New file.
4903         * lib/fpurge.c: New file.
4904         * m4/fpurge.m4: New file.
4905
4906 2007-04-13  Bruno Haible  <bruno@clisp.org>
4907
4908         * modules/fbufmode-tests: New file.
4909         * tests/test-fbufmode.c: New file.
4910
4911         * modules/fbufmode: New file.
4912         * lib/fbufmode.h: New file.
4913         * lib/fbufmode.c: New file.
4914         * m4/fbufmode.m4: New file.
4915
4916 2007-04-13  Bruno Haible  <bruno@clisp.org>
4917
4918         * modules/fwritable-tests: New file.
4919         * tests/test-fwritable.c: New file.
4920
4921         * modules/fwritable: New file.
4922         * lib/fwritable.h: New file.
4923         * lib/fwritable.c: New file.
4924         * m4/fwritable.m4: New file.
4925
4926 2007-04-13  Bruno Haible  <bruno@clisp.org>
4927
4928         * modules/freadable-tests: New file.
4929         * tests/test-freadable.c: New file.
4930
4931         * modules/freadable: New file.
4932         * lib/freadable.h: New file.
4933         * lib/freadable.c: New file.
4934         * m4/freadable.m4: New file.
4935
4936 2007-04-13  Bruno Haible  <bruno@clisp.org>
4937
4938         * modules/fflush-tests (Makefile.am): Remove EXTRA_DIST. Augment
4939         MOSTLYCLEANFILES.
4940
4941 2007-04-13  Paul Eggert  <eggert@cs.ucla.edu>
4942
4943         * build-aux/bootstrap (gnulib_tool_option_extras): New var, used by
4944         gzip bootstrap.conf to avoid dragging in i18n machinery.
4945         (gnulib_tool_option): Use it.
4946
4947 2007-04-13  Bruno Haible  <bruno@clisp.org>
4948
4949         * tests/test-vasnprintf-posix.c (test_function): Add tests for %f and
4950         %F directives.
4951         * tests/test-vasprintf-posix.c (test_function): Likewise.
4952         * tests/test-snprintf-posix.h (test_function): Likewise.
4953         * tests/test-sprintf-posix.h (test_function): Likewise.
4954         * tests/test-fprintf-posix.h (test_function): Likewise.
4955         * tests/test-printf-posix.h (test_function): Likewise.
4956         * tests/test-fprintf-posix.out: Likewise.
4957
4958 2007-04-13  Bruno Haible  <bruno@clisp.org>
4959
4960         * modules/lock-tests (configure.ac): For LIBSCHED, try also -lposix4.
4961         * modules/tls-tests (configure.ac): Likewise.
4962         Reported by Arto C. Nirkko <anirkko@insel.ch>.
4963
4964 2007-04-13  Bruno Haible  <bruno@clisp.org>
4965
4966         * lib/tls.c (glthread_tls_get): Fix return type.
4967         Patch by Arto C. Nirkko <anirkko@insel.ch>.
4968
4969 2007-04-12  Eric Blake  <ebb9@byu.net>
4970
4971         * modules/gettime (Depends-on): Remove gettime.
4972         Reported by Dmitry V. Levin.
4973
4974 2007-04-12  Bruno Haible  <bruno@clisp.org>
4975
4976         * modules/fflush (Include): Mention <stdio.h>.
4977         * modules/strtoimax (Include): Mention <inttypes.h>.
4978         * modules/strtoumax (Include): Likewise.
4979
4980 2007-04-12  Eric Blake  <ebb9@byu.net>
4981
4982         * .cvsignore: New file.
4983         * .gitignore: Likewise.
4984
4985 2007-04-12  Bruno Haible  <bruno@clisp.org>
4986
4987         * modules/iconv-tests (test_iconv_LDADD): Mention -liconv after LDADD,
4988         not before, since $(LDADD) often contains libgnu.a.
4989         * modules/striconv-tests (test_striconv_LDADD): Likewise.
4990         * modules/striconveh-tests (test_striconveh_LDADD): Likewise.
4991         * modules/striconveha-tests (test_striconveha_LDADD): Likewise.
4992         Needed on Cygwin.
4993
4994 2007-04-12  Eric Blake  <ebb9@byu.net>
4995
4996         Work around glibc's failure to flush stdin on fclose.
4997         * lib/closein.c (close_stdin): Flush stdin before closing.
4998
4999         Work around glibc's failure to reset seekable stdin on exit.
5000         * modules/closein: New module.
5001         * lib/closein.c: New file.
5002         * lib/closein.h: Likewise.
5003         * m4/closein.m4: Likewise.
5004         * MODULES.html.sh (File stream based Input/Output): Document it.
5005
5006 2007-04-12  Simon Josefsson  <simon@josefsson.org>
5007
5008         * gnulib-tool: Rename generated 'autobuild' script to
5009         'do-autobuild' in --create-megatestdir output.
5010
5011         * doc/gnulib.texi (Build robot for gnulib): Fix.
5012
5013 2007-04-12  Simon Josefsson  <simon@josefsson.org>
5014
5015         * modules/sysexits (Depends-on): Add absolute-header.
5016
5017 2007-04-12  Eric Blake  <ebb9@byu.net>
5018
5019         No need to preserve errno on success.
5020         * lib/fflush.c (rpl_fflush): Simplify errno tracking.
5021         Reported by Bruno Haible.
5022
5023 2007-04-12  Simon Josefsson  <simon@josefsson.org>
5024
5025         * MODULES.html.sh (Support for maintaining and releasing
5026         projects): Add autobuild.  Suggested by Eric Blake <ebb9@byu.net>.
5027
5028 2007-04-12  Simon Josefsson  <simon@josefsson.org>
5029
5030         * gnulib-tool (func_modules_add_dummy): Respect --avoid=dummy.
5031
5032 2007-04-12  Simon Josefsson  <simon@josefsson.org>
5033
5034         * modules/autobuild: New module.
5035
5036         * m4/autobuild.m4: New file.
5037
5038 2007-04-11  Bruno Haible  <bruno@clisp.org>
5039
5040         * lib/vasnprintf.c (VASNPRINTF): Implement the %F directive using the
5041         %f directive, if NEED_PRINTF_DIRECTIVE_F is defined.
5042         * m4/printf.m4 (gl_PRINTF_DIRECTIVE_F): New macro.
5043         * m4/vasnprintf.m4 (gl_PREREQ_VASNPRINTF_DIRECTIVE_F): New macro.
5044         * m4/fprintf-posix.m4 (gl_FUNC_FPRINTF_POSIX): Invoke
5045         gl_PRINTF_DIRECTIVE_F. Test gl_cv_func_printf_directive_f. Invoke
5046         gl_PREREQ_VASNPRINTF_DIRECTIVE_F for the replacement.
5047         * m4/snprintf-posix.m4 (gl_FUNC_SNPRINTF_POSIX): Invoke
5048         gl_PRINTF_DIRECTIVE_F. Test gl_cv_func_printf_directive_f. Invoke
5049         gl_PREREQ_VASNPRINTF_DIRECTIVE_F for the replacement.
5050         * m4/sprintf-posix.m4 (gl_FUNC_SPRINTF_POSIX): Invoke
5051         gl_PRINTF_DIRECTIVE_F. Test gl_cv_func_printf_directive_f. Invoke
5052         gl_PREREQ_VASNPRINTF_DIRECTIVE_F for the replacement.
5053         * m4/vasnprintf-posix.m4 (gl_FUNC_VASNPRINTF_POSIX): Invoke
5054         gl_PRINTF_DIRECTIVE_F. Test gl_cv_func_printf_directive_f. Invoke
5055         gl_PREREQ_VASNPRINTF_DIRECTIVE_F for the replacement.
5056         * m4/vasprintf-posix.m4 (gl_FUNC_VASPRINTF_POSIX): Invoke
5057         gl_PRINTF_DIRECTIVE_F. Test gl_cv_func_printf_directive_f. Invoke
5058         gl_PREREQ_VASNPRINTF_DIRECTIVE_F for the replacement.
5059         * m4/vfprintf-posix.m4 (gl_FUNC_VFPRINTF_POSIX): Invoke
5060         gl_PRINTF_DIRECTIVE_F. Test gl_cv_func_printf_directive_f. Invoke
5061         gl_PREREQ_VASNPRINTF_DIRECTIVE_F for the replacement.
5062         * m4/vsnprintf-posix.m4 (gl_FUNC_VSNPRINTF_POSIX): Invoke
5063         gl_PRINTF_DIRECTIVE_F. Test gl_cv_func_printf_directive_f. Invoke
5064         gl_PREREQ_VASNPRINTF_DIRECTIVE_F for the replacement.
5065         * m4/vsprintf-posix.m4 (gl_FUNC_VSPRINTF_POSIX): Invoke
5066         gl_PRINTF_DIRECTIVE_F. Test gl_cv_func_printf_directive_f. Invoke
5067         gl_PREREQ_VASNPRINTF_DIRECTIVE_F for the replacement.
5068         Reported by Eric Blake.
5069
5070 2007-04-11  Bruno Haible  <bruno@clisp.org>
5071
5072         * m4/printf.m4 (gl_PRINTF_DIRECTIVE_A): Fix test. It always failed.
5073
5074 2007-04-10  Bruno Haible  <bruno@clisp.org>
5075
5076         * m4/printf.m4 (gl_PRINTF_DIRECTIVE_A): Add a test for correct result
5077         for NaN and Infinity. Needed on FreeBSD 6.1.
5078         * tests/test-vasnprintf-posix.c (test_function): Undo last change
5079         regarding results for "%010a" of Infinity and NaN.
5080         * tests/test-vasprintf-posix.c (test_function): Likewise.
5081         * tests/test-snprintf-posix.h (test_function): Likewise.
5082         * tests/test-sprintf-posix.h (test_function): Likewise.
5083         * tests/test-fprintf-posix.h (test_function): Likewise.
5084         * tests/test-printf-posix.h (test_function): Likewise.
5085         * tests/test-fprintf-posix.out: Likewise.
5086
5087 2007-04-10  Bruno Haible  <bruno@clisp.org>
5088
5089         * modules/locale-tests: New file.
5090         * tests/test-locale.c: New file.
5091
5092         * modules/locale: New file.
5093         * lib/locale_.h: New file.
5094         * m4/locale_h.m4: New file.
5095
5096 2007-04-10  Paul Eggert  <eggert@cs.ucla.edu>
5097             Bruno Haible  <bruno@clisp.org>
5098
5099         * m4/signbit.m4 (gl_SIGNBIT): When the sign bit position could not
5100         be determined, test for availability of the copysignf, copysign,
5101         copysignl functions.
5102         * lib/signbitf.c (gl_signbitf): Use copysignf if available in libc.
5103         * lib/signbitd.c (gl_signbitd): Use copysign if available in libc.
5104         * lib/signbitl.c (gl_signbitl): Use copysignl if available in libc.
5105
5106 2007-04-09  Eric Blake  <ebb9@byu.net>
5107
5108         * lib/stdio_.h [REPLACE_FFLUSH]: Declare rpl_fflush.
5109         * modules/stdio (Makefile.am): Support fflush.
5110         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Likewise.
5111         * modules/fflush: New file.
5112         * lib/fflush.c: Likewise.
5113         * m4/fflush.m4: Likewise.
5114         * modules/fflush-tests: New test.
5115         * tests/test-fflush.c: Likewise.
5116         * MODULES.html.sh (Input/output <stdio.h>): Document new module.
5117
5118 2007-04-06  Bruno Haible  <bruno@clisp.org>
5119
5120         * lib/vasnprintf.c: Include <math.h>. Don't include float+.h.
5121         (VASNPRINTF): Use signbit for faster determination whether to print a
5122         minus sign.
5123         * modules/vasnprintf (Files): Remove lib/float+.h.
5124         * modules/fprintf-posix (Depends-on): Add signbit.
5125         * modules/snprintf-posix (Depends-on): Likewise.
5126         * modules/sprintf-posix (Depends-on): Likewise.
5127         * modules/vasnprintf-posix (Depends-on): Likewise.
5128         * modules/vasprintf-posix (Depends-on): Likewise.
5129         * modules/vfprintf-posix (Depends-on): Likewise.
5130         * modules/vsnprintf-posix (Depends-on): Likewise.
5131         * modules/vsprintf-posix (Depends-on): Likewise.
5132
5133 2007-04-06  Bruno Haible  <bruno@clisp.org>
5134
5135         * tests/test-frexp.c (main): Test also the sign bit of zero results.
5136         * tests/test-frexpl.c (main): Likewise.
5137         * tests/test-ldexpl.c (main): Likewise.
5138         * modules/frexp-tests (Depends-on): Add signbit.
5139         * modules/frexpl-tests (Depdends-on): Likewise.
5140         * modules/ldexpl-tests (Depdends-on): Likewise.
5141
5142 2007-04-06  Bruno Haible  <bruno@clisp.org>
5143
5144         * modules/signbit-tests: New file.
5145         * tests/test-signbit.c: New file.
5146
5147         * modules/signbit: New file.
5148         * lib/signbitf.c: New file.
5149         * lib/signbitd.c: New file.
5150         * lib/signbitl.c: New file.
5151         * m4/signbit.m4: New file.
5152         * lib/math_.h (gl_signbitf, gl_signbitd, gl_signbitl): New declarations.
5153         (signbit): New macro.
5154         * m4/math_h.m4 (gl_MATH_H_DEFAULTS): Initialize GNULIB_SIGNBIT and
5155         REPLACE_SIGNBIT.
5156         * modules/math (Makefile.am) Substibute also GNULIB_SIGNBIT and
5157         REPLACE_FREXPL into math.h.
5158
5159 2007-04-06  Bruno Haible  <bruno@clisp.org>
5160
5161         * modules/isnanf-nolibm-tests: New file.
5162         * tests/test-isnanf.c: New file.
5163
5164         * modules/isnanf-nolibm: New file.
5165         * lib/isnanf.h: New file.
5166         * lib/isnanf.c: New file.
5167         * lib/isnan.c: Consider the USE_FLOAT macro.
5168         * m4/isnanf.m4: New file.
5169
5170 2007-04-06  Bruno Haible  <bruno@clisp.org>
5171
5172         * modules/gettext-h (configure.ac): AC_SUBST LIBINTL and LTLIBINTL.
5173         (Link): New section.
5174
5175         * modules/canonicalize-lgpl-tests (Makefile.am): Undo last change.
5176
5177 2007-04-06  Bruno Haible  <bruno@clisp.org>
5178
5179         Assume the 'long double' type.
5180         * m4/longdouble.m4: Remove file.
5181         * config/srclist.txt: Don't mention longdouble.m4.
5182         * lib/allocsa.h: Assume HAVE_LONG_DOUBLE to be true.
5183         * lib/float+.h: Likewise.
5184         * lib/frexp.c: Likewise.
5185         * lib/printf-args.h: Likewise.
5186         * lib/printf-args.c: Likewise.
5187         * lib/printf-frexp.c: Likewise.
5188         * lib/printf-parse.c: Likewise.
5189         * lib/vasnprintf.c: Likewise.
5190         * m4/allocsa.m4: Remove gt_TYPE_LONGDOUBLE invocation.
5191         * m4/intl.m4: Likewise.
5192         * m4/isnanl.m4: Likewise.
5193         * m4/printf.m4: Likewise.
5194         * m4/printf-frexpl.m4: Likewise.
5195         * m4/vasnprintf.m4: Likewise.
5196         * modules/allocsa (Files): Remove m4/longdouble.m4.
5197         * modules/gettext (Files): Likewise.
5198         * modules/relocatable-prog-wrapper (Files): Likewise.
5199         * modules/vasnprintf (Files): Likewise.
5200         * modules/isnanl (Files): Likewise.
5201         (Include): Simplify.
5202         * modules/isnanl-nolibm (Files): Remove m4/longdouble.m4.
5203         (Include): Simplify.
5204         * modules/printf-frexpl (Files): Remove m4/longdouble.m4.
5205         (Include): Simplify.
5206         * modules/snprintf-posix-tests (Files): Remove m4/longdouble.m4.
5207         (configure.ac): Remove gt_TYPE_LONGDOUBLE invocation.
5208         * modules/sprintf-posix-tests (Files): Remove m4/longdouble.m4.
5209         (configure.ac): Remove gt_TYPE_LONGDOUBLE invocation.
5210         * modules/vasnprintf-posix-tests (Files): Remove m4/longdouble.m4.
5211         (configure.ac): Remove gt_TYPE_LONGDOUBLE invocation.
5212         * modules/vasprintf-posix-tests (Files): Remove m4/longdouble.m4.
5213         (configure.ac): Remove gt_TYPE_LONGDOUBLE invocation.
5214         * modules/vsnprintf-posix-tests (Files): Remove m4/longdouble.m4.
5215         (configure.ac): Remove gt_TYPE_LONGDOUBLE invocation.
5216         * modules/vsprintf-posix-tests (Files): Remove m4/longdouble.m4.
5217         (configure.ac): Remove gt_TYPE_LONGDOUBLE invocation.
5218         * tests/test-isnanl-nolibm.c: Assume HAVE_LONG_DOUBLE to be true.
5219         * tests/test-isnanl.c: Likewise.
5220         * tests/test-snprintf-posix.h: Likewise.
5221         * tests/test-sprintf-posix.h: Likewise.
5222         * tests/test-vasnprintf-posix.c: Likewise.
5223         * tests/test-vasnprintf-posix2.c: Likewise.
5224         * tests/test-vasprintf-posix.c: Likewise.
5225
5226 2007-04-06  Bruno Haible  <bruno@clisp.org>
5227
5228         Fix problem with Compaq (ex-DEC) Desktop C compiler on Tru64.
5229         * lib/math_.h [__DECC]: Include the overridden include file through
5230         #include_next, outside the double-inclusion guard.
5231         * lib/stdio_.h [__DECC]: Likewise.
5232         * lib/stdlib_.h [__DECC]: Likewise.
5233         * lib/string_.h [__DECC]: Likewise.
5234         * lib/time_.h [__DECC]: Likewise.
5235         * lib/wchar_.h [__DECC]: Likewise.
5236         * lib/wctype_.h [__DECC]: Likewise.
5237         * lib/inttypes_.h [__DECC]: Likewise.
5238         Reported by Albert Chin <china@thewrittenword.com> in
5239         <http://lists.gnu.org/archive/html/bug-gnulib/2007-04/msg00088.html>.
5240
5241 2007-04-04  Eric Blake  <ebb9@byu.net>
5242
5243         * m4/stdint.m4 (gl_STDINT_H): Detect WINT_MAX bug in cygwin
5244         1.5.x.
5245
5246 2007-04-04  Bruno Haible  <bruno@clisp.org>
5247
5248         * m4/printf.m4 (gl_PRINTF_DIRECTIVE_A): Add a test for correct
5249         rounding. Don't assume that FreeBSD 6 and NetBSD 4 pass this test.
5250
5251 2007-04-04  Bruno Haible  <bruno@clisp.org>
5252
5253         * tests/test-vasnprintf-posix.c (test_function): Allow two possible
5254         results for "%010a" of Infinity and NaN.
5255         * tests/test-vasprintf-posix.c (test_function): Likewise.
5256         * tests/test-snprintf-posix.h (test_function): Likewise.
5257         * tests/test-sprintf-posix.h (test_function): Likewise.
5258         * tests/test-fprintf-posix.h (test_function): Remove these tests.
5259         * tests/test-printf-posix.h (test_function): Likewise.
5260         * tests/test-fprintf-posix.out: Update.
5261         Needed for FreeBSD 6.1.
5262
5263 2007-04-04  Bruno Haible  <bruno@clisp.org>
5264
5265         * DEPENDENCIES: Remove mentions of tar and gzip, since they are not
5266         directly used by the gnulib modules nor by gnulib-tool.
5267
5268 2007-04-04  Paul Eggert  <eggert@cs.ucla.edu>
5269
5270         * DEPENDENCIES: Give overall description of version dependency
5271         desirability.  Use more-typical names for apps.
5272         Add shell, coreutils, diffutils, grep, tar, gzip.
5273
5274 2007-04-04  Simon Josefsson  <simon@josefsson.org>
5275
5276         * MODULES.html.sh: Rename crypto modules.  Remove iconvme.
5277
5278 2007-04-04  Karl Berry  <karl@gnu.org>
5279
5280         * MODULES.html.sh (func_module): missing '.
5281
5282 2007-04-03  Bruno Haible  <bruno@clisp.org>
5283
5284         * modules/argmatch-tests (Makefile.am): New variable
5285         test_argmatch_LDADD.
5286         * modules/argp-tests (Makefile.am): New variable test_argp_LDADD.
5287         * modules/array-list-tests (Makefile.am): New variable
5288         test_array_list_LDADD.
5289         * modules/array-oset-tests (Makefile.am): New variable
5290         test_array_oset_LDADD.
5291         * modules/avltree-list-tests (Makefile.am): New variable
5292         test_avltree_list_LDADD.
5293         * modules/avltree-oset-tests (Makefile.am): New variable
5294         test_avltree_oset_LDADD.
5295         * modules/avltreehash-list-tests (Makefile.am): New variable
5296         test_avltreehash_list_LDADD.
5297         * modules/canonicalize-lgpl-tests (Makefile.am): New variable
5298         test_canonicalize_lgpl_LDADD.
5299         * modules/carray-list-tests (Makefile.am): New variable
5300         test_carray_list_LDADD.
5301         * modules/dirname-tests (Makefile.am): New variable
5302         test_dirname_LDADD.
5303         * modules/linked-list-tests (Makefile.am): New variable
5304         test_linked_list_LDADD.
5305         * modules/linkedhash-list-tests (Makefile.am): New variable
5306         test_linkedhash_list_LDADD.
5307         * modules/rbtree-list-tests (Makefile.am): New variable
5308         test_rbtree_list_LDADD.
5309         * modules/rbtree-oset-tests (Makefile.am): New variable
5310         test_rbtree_oset_LDADD.
5311         * modules/rbtreehash-list-tests (Makefile.am): New variable
5312         test_rbtreehash_list_LDADD.
5313         * modules/xvasprintf-tests (Makefile.am): New variable
5314         test_xvasprintf_LDADD.
5315         Reported by Eric Blake.
5316
5317 2007-04-03  Eric Blake  <ebb9@byu.net>
5318
5319         * DEPENDENCIES: Weaken m4 requirements.
5320
5321 2007-04-03  Bruno Haible  <bruno@clisp.org>
5322
5323         * modules/frexp-tests (configure.ac): Remove AC_SUBST.
5324         * modules/isnanl-tests (configure.ac): Likewise.
5325
5326 2007-04-03  Ben Pfaff  <blp@gnu.org>
5327
5328         * modules/iconv_open: Add $(srcdir)/ to source directory
5329         references in Makefile fragments that call gperf, to fix VPATH
5330         builds.
5331
5332 2007-04-03  Bruno Haible  <bruno@clisp.org>
5333
5334         * modules/ldexpl (Depends-on): Add isnanl, remove isnanl-nolibm.
5335         * lib/ldexpl.c: Undo last change.
5336
5337 2007-04-03  Bruno Haible  <bruno@clisp.org>
5338
5339         * modules/printf-frexpl (Depends-on): Undo last change.
5340         (Files): Add m4/ldexpl.m4.
5341
5342 2007-04-03  Bruno Haible  <bruno@clisp.org>
5343
5344         * m4/isnanl.m4 (gl_FUNC_ISNANL): Substitute ISNANL_LIBM.
5345         * modules/isnanl (Link): New section.
5346
5347         * m4/frexp.m4 (gl_FUNC_FREXP): Substitute FREXP_LIBM.
5348         * modules/frexp (Link): New section.
5349
5350         * m4/frexpl.m4 (gl_FUNC_FREXPL): Substitute FREXPL_LIBM.
5351         * modules/frexpl (Link): New section.
5352
5353         * m4/ldexpl.m4 (gl_FUNC_LDEXPL): Substitute LDEXPL_LIBM.
5354         * modules/ldexpl (Link): New section.
5355
5356 2007-04-03  Bruno Haible  <bruno@clisp.org>
5357
5358         * modules/TEMPLATE-EXTENDED: New file.
5359         * gnulib-tool (func_all_modules, func_verify_module): Exclude it.
5360
5361 2007-04-03  Bruno Haible  <bruno@clisp.org>
5362
5363         * DEPENDENCIES: New file.
5364         Suggested by Simon Josefsson.
5365
5366 2007-04-03  Bruno Haible  <bruno@clisp.org>
5367
5368         * doc/gnulib.texi: Escape @.
5369
5370 2007-04-03  James Youngman  <jay@gnu.org>
5371         and Paul Eggert  <eggert@cs.ucla.edu>
5372
5373         * lib/stat-time.h (get_stat_birthtime): Check for zero-valued
5374         birthtime on all systems that have birthtime, not just those which
5375         use st_birthtimensec rather than st_birthtim.  Putting zero in
5376         st_birthtim.tv_sec is how (for example) FreeBSD/x86 6.1 indicates
5377         that the birth time is not available for files on an NFS mount.
5378
5379 2007-04-03  Simon Josefsson  <simon@josefsson.org>
5380
5381         * modules/memxor: Move back from crypto/, suggested by Bruno.
5382         * modules/crypto/hmac-sha1: Fix memxor dependency.
5383
5384         * modules/crypto/gc: Moved from ../.
5385
5386 2007-04-02  Eric Blake  <ebb9@byu.net>
5387
5388         * lib/ldexpl.c (includes): Avoid libm.
5389
5390         * modules/printf-frexpl (Depends-on): Depend on ldexpl.
5391
5392 2007-04-02  Bruno Haible  <bruno@clisp.org>
5393
5394         * lib/sysexit_.h (EX_OK): Disable the EX_OK definition from <unistd.h>
5395         on IRIX.
5396
5397 2007-04-02  Bruno Haible  <bruno@clisp.org>
5398
5399         * m4/intdiv0.m4 (gt_INTDIV0): Avoid performing the test for real on
5400         x86 or x86_64 platforms running MacOS X.
5401         Reported by Ryan Schmidt <@ryandesign.com>.
5402
5403 2007-04-02  Bruno Haible  <bruno@clisp.org>
5404
5405         * m4/intdiv0.m4 (gt_INTDIV0): When cross-compiling, treat x86_64 like
5406         i386.
5407
5408 2007-04-01  Simon Josefsson  <simon@josefsson.org>
5409
5410         * modules/crypto/arcfour: Moved from ../.
5411         * modules/crypto/arcfour-tests: Moved from ../.
5412         * modules/crypto/arctwo: Moved from ../.
5413         * modules/crypto/arctwo-tests: Moved from ../.
5414         * modules/crypto/des: Moved from ../.
5415         * modules/crypto/des-tests: Moved from ../.
5416         * modules/crypto/gc-arcfour: Moved from ../.
5417         * modules/crypto/gc-arcfour-tests: Moved from ../.
5418         * modules/crypto/gc-arctwo: Moved from ../.
5419         * modules/crypto/gc-arctwo-tests: Moved from ../.
5420         * modules/crypto/gc-des: Moved from ../.
5421         * modules/crypto/gc-des-tests: Moved from ../.
5422         * modules/crypto/gc-hmac-md5: Moved from ../.
5423         * modules/crypto/gc-hmac-md5-tests: Moved from ../.
5424         * modules/crypto/gc-hmac-sha1: Moved from ../.
5425         * modules/crypto/gc-hmac-sha1-tests: Moved from ../.
5426         * modules/crypto/gc-md2: Moved from ../.
5427         * modules/crypto/gc-md2-tests: Moved from ../.
5428         * modules/crypto/gc-md4: Moved from ../.
5429         * modules/crypto/gc-md4-tests: Moved from ../.
5430         * modules/crypto/gc-md5: Moved from ../.
5431         * modules/crypto/gc-md5-tests: Moved from ../.
5432         * modules/crypto/gc-pbkdf2-sha1: Moved from ../.
5433         * modules/crypto/gc-pbkdf2-sha1-tests: Moved from ../.
5434         * modules/crypto/gc-random: Moved from ../.
5435         * modules/crypto/gc-rijndael: Moved from ../.
5436         * modules/crypto/gc-rijndael-tests: Moved from ../.
5437         * modules/crypto/gc-sha1: Moved from ../.
5438         * modules/crypto/gc-sha1-tests: Moved from ../.
5439         * modules/crypto/gc-tests: Moved from ../.
5440         * modules/crypto/hmac-md5: Moved from ../.
5441         * modules/crypto/hmac-md5-tests: Moved from ../.
5442         * modules/crypto/hmac-sha1: Moved from ../.
5443         * modules/crypto/hmac-sha1-tests: Moved from ../.
5444         * modules/crypto/md2: Moved from ../.
5445         * modules/crypto/md2-tests: Moved from ../.
5446         * modules/crypto/md4: Moved from ../.
5447         * modules/crypto/md4-tests: Moved from ../.
5448         * modules/crypto/md5: Moved from ../.
5449         * modules/crypto/md5-tests: Moved from ../.
5450         * modules/crypto/memxor: Moved from ../.
5451         * modules/crypto/rijndael: Moved from ../.
5452         * modules/crypto/rijndael-tests: Moved from ../.
5453         * modules/crypto/sha1: Moved from ../.
5454
5455 2007-03-30  James Youngman  <jay@gnu.org>
5456
5457         * tests/test-stat-time.c (prepare_test): use chmod() rather than
5458         rename() to change the ctime of a file (because ctime is unaffected
5459         by rename on jfs2 on AIX 5.1).
5460         (main): Start by doing cleanup, in case a previous run failed leaving
5461         test files behind.
5462
5463 2007-03-31  Bruno Haible  <bruno@clisp.org>
5464
5465         Support old proprietary implementations of iconv.
5466         * modules/iconv_open: New file.
5467         * lib/iconv_.h: New file.
5468         * m4/iconv_h.m4: New file.
5469         * lib/iconv_open.c: New file.
5470         * lib/iconv_open-aix.gperf: New file.
5471         * lib/iconv_open-hpux.gperf: New file.
5472         * lib/iconv_open-irix.gperf: New file.
5473         * lib/iconv_open-osf.gperf: New file.
5474         * m4/iconv_open.m4: New file.
5475         * modules/linebreak (Depends-on): Add iconv_open.
5476         * modules/striconv (Depends-on): Likewise.
5477         * modules/striconveh (Depends-on): Likewise.
5478         * modules/unicodeio (Depends-on): Likewise.
5479         * lib/striconveh.h (mem_cd_iconveh, str_cd_iconveh): Allow cd to be
5480         (iconv_t)(-1).
5481         * lib/striconveh.c (mem_cd_iconveh_internal): Use an indirect
5482         conversion if cd is (iconv_t)(-1).
5483         (mem_iconveh, str_iconveh): Don't fail just because a direct conversion
5484         is not possible.
5485
5486 2007-03-31  Bruno Haible  <bruno@clisp.org>
5487
5488         * tests/test-striconveha.c (main): Don't expect "autodetect_jp" to
5489         work on Solaris either. Protect also second use of "autodetect_jp".
5490
5491 2007-03-31  Bruno Haible  <bruno@clisp.org>
5492
5493         * m4/frexpl.m4 (gl_FUNC_FREXPL): Set HAVE_DECL_FREXPL to 0 when
5494         the function is not present.
5495
5496 2007-03-31  Bruno Haible  <bruno@clisp.org>
5497
5498         * m4/ldexpl.m4 (gl_FUNC_LDEXPL): Set HAVE_DECL_LDEXPL to 0 when
5499         the function is not present.
5500
5501 2007-03-31  Bruno Haible  <bruno@clisp.org>
5502
5503         * m4/iconv.m4 (AM_ICONV_LINK): Fix 2007-03-29 patch. Test also against
5504         a bug in HP-UX iconv_open().
5505
5506 2007-03-31  Bruno Haible  <bruno@clisp.org>
5507
5508         * MODULES.html.sh (func_module): Don't show gnulib-common.m4.
5509         (Mathematics <math.h>): New section, add fpieee.
5510         (Input/output <stdio.h>): Add fseterr.
5511         (Mathematics <math.h>): New section, add printf-frexp.
5512         (Container data structures): Add sublist.
5513         (Core language properties): Add fpucw, inline.
5514         (Functions for greatest-width integer types <inttypes.h>): Add
5515         imaxabs, imaxdiv, inttypes.
5516         (Mathematics <math.h>): Add frexp, frexpl, isnan-nolibm, isnanl,
5517         isnanl-nolibm, ldexp.
5518         (Mathematics <math.h>): New section, add printf-frexpl.
5519         (Support for systems lacking POSIX:2001): Add fprintf-posix,
5520         printf-posix, snprintf-posix, sprintf-posix, string, search, socklen,
5521         sys_select, sys_socket, vasnprintf-posix, vasprintf-posix,
5522         vfprintf-posix, vprintf-posix, vsnprintf-posix, vsprintf-posix.
5523         (Unicode string functions): Add unistr/u*-mbtoucr.
5524         (Java): Add javacomp-script, javaexec-script.
5525         (C#): Add csharpcomp-script, csharpexec-script.
5526         (Support for building libraries and executables): Add havelib,
5527         relocatable-*.
5528         (Support for maintaining and releasing projects): Renamed from
5529         'Support for maintaining and release projects'. Add announce-gen.
5530
5531 2007-03-31  Bruno Haible  <bruno@clisp.org>
5532
5533         * README: Talk primarily about git.
5534         (git and CVS): Renamed from CVS.
5535         * doc/gnulib.texi (Introduction, Build robot for gnulib): Mention that
5536         gnulib is available through git.
5537         * doc/gnulib-tool.texi (CVS Issues): Mention git and svn as well.
5538
5539 2007-03-30  Bruno Haible  <bruno@clisp.org>
5540
5541         * lib/alloca_.h: Change prefix of double-inclusion guard macro to _GL_.
5542         * lib/poll_.h: Likewise.
5543         * lib/stat_.h: Likewise.
5544         * lib/sys_time_.h: Likewise.
5545         * lib/sysexit_.h: Likewise.
5546         * lib/glob_.h: Prefix double-inclusion guard macro with _GL_.
5547         * lib/stdbool_.h: Likewise.
5548         * lib/byteswap_.h: Add double-inclusion guard.
5549
5550 2007-03-30  Sergey Poznyakoff  <gray@mirddin.farlep.net>
5551
5552         * lib/sysexit_.h: Prefix double-inclusion guard macro with _GNULIB.
5553
5554 2007-03-30  Karl Berry  <karl@gnu.org>
5555
5556         * config/srclist-update: double space after USA in the license
5557         substitution, since that's how it's usually (?) written.
5558
5559 2007-03-30  Paul Eggert  <eggert@cs.ucla.edu>
5560
5561         * lib/write-any-file.c (can_write_any_file): Fix else-else bug
5562         reported by Bruno Haible.
5563
5564 2007-03-29  Bruno Haible  <bruno@clisp.org>
5565
5566         * m4/iconv.m4 (AM_ICONV_LINK): Require AC_CANONICAL_HOST. Test against
5567         a bug in AIX iconv().
5568
5569 2007-03-29  Bruno Haible  <bruno@clisp.org>
5570
5571         * modules/ldexpl-tests: New file.
5572         * tests/test-ldexpl.c: New file.
5573
5574 2007-03-29  Bruno Haible  <bruno@clisp.org>
5575
5576         * lib/ldexpl.c: Include fpucw.h.
5577         (ldexpl): Use BEGIN/END_LONG_DOUBLE_ROUNDING. Skip the last unneeded
5578         multiplication.
5579         * modules/ldexpl (Depends-on): Add fpucw.
5580
5581 2007-03-29  Bruno Haible  <bruno@clisp.org>
5582
5583         * modules/ldexpl: New file.
5584         * m4/ldexpl.m4: New file.
5585         * lib/math_.h (ldexpl): Define to a replacement if REPLACE_LDEXPL is
5586         set.
5587         * m4/math_h.m4 (gl_MATH_H_DEFAULTS): Initialize also GNULIB_LDEXPL,
5588         REPLACE_LDEXPL.
5589         * modules/math (Makefile.am): Substitute also GNULIB_LDEXPL,
5590         REPLACE_LDEXPL.
5591         * m4/printf-frexpl.m4 (gl_FUNC_PRINTF_FREXPL): Invoke
5592         gl_FUNC_LDEXPL_WORKS.
5593         * m4/mathl.m4 (gl_FUNC_LONG_DOUBLE_MATH): Remove test for ldexpl.
5594         * modules/mathl (Files): Remove lib/ldexpl.c.
5595         (Depends-on): Add ldexpl.
5596
5597 2007-03-29  Bruno Haible  <bruno@clisp.org>
5598
5599         * m4/frexpl.m4 (gl_FUNC_FREXPL_WORKS): Declare frexpl.
5600
5601 2007-03-29  Bruno Haible  <bruno@clisp.org>
5602
5603         * tests/test-striconveh.c (main): Don't assume that a direct conversion
5604         between ISO-8859-1 and ISO-8859-2 is possible. Needed for OSF/1, IRIX
5605         and possibly also HP-UX.
5606         * tests/test-striconveha.c (main): Don't expect "autodetect_jp" to
5607         work on AIX, IRIX, HP-UX, OSF/1.
5608         * tests/uniconv/test-u16-conv-from-enc.c (main): Likewise.
5609         * tests/uniconv/test-u16-strconv-from-enc.c (main): Likewise.
5610         * tests/uniconv/test-u32-conv-from-enc.c (main): Likewise.
5611         * tests/uniconv/test-u32-strconv-from-enc.c (main): Likewise.
5612         * tests/uniconv/test-u8-conv-from-enc.c (main): Likewise.
5613         * tests/uniconv/test-u8-strconv-from-enc.c (main): Likewise.
5614
5615 2007-03-29  Bruno Haible  <bruno@clisp.org>
5616
5617         * tests/test-stat-time.c: Include <fcntl.h>, not <sys/fcntl.h>.
5618
5619 2007-03-29  Paul Eggert  <eggert@cs.ucla.edu>
5620
5621         * lib/acl-internal.h (acl_get_fd, acl_set_fd): undef before defining,
5622         to work around a problem on OSF/1 5.1 reported by Bruno Haible.
5623
5624 2007-03-29  Eric Blake  <ebb9@byu.net>
5625
5626         * lib/acl-internal.h: Remove redundant include.
5627         (ACL_NOT_WELL_SUPPORTED): Also filter on EBUSY, returned by
5628         Cygwin when a file is locked.
5629
5630 2007-03-29  Bruno Haible  <bruno@clisp.org>
5631
5632         * lib/vasprintf.c [IN_LIBASPRINTF]: Include different specification
5633         file.
5634         * lib/asprintf.c [IN_LIBASPRINTF]: Likewise.
5635
5636 2007-03-29  Paul Eggert  <eggert@cs.ucla.edu>
5637
5638         * m4/getcwd-path-max.m4 (gl_FUNC_GETCWD_PATH_MAX): Don't bother to
5639         try to remove a parent directory if the child couldn't be removed
5640         (except for the first rmdir, which could fail because the child
5641         doesn't exist).  Problem reported by Jeff Blaine in
5642         <http://lists.gnu.org/archive/html/bug-tar/2007-03/msg00014.html>.
5643
5644 2007-03-28  Bruno Haible  <bruno@clisp.org>
5645
5646         * lib/striconveh.c (utf8conv_carefully): New function.
5647         (mem_cd_iconveh_internal): Invoke it.
5648
5649 2007-03-28  Bruno Haible  <bruno@clisp.org>
5650
5651         * lib/striconveh.c (mem_cd_iconveh_internal): Use u8_mbtoucr instead
5652         of u8_mbtouc in order to distinguish invalid and incomplete UTF-8
5653         input.
5654         * modules/striconveh (Depends-on): Add unistr/u8-mbtoucr. Replace
5655         utf8-ucs4 with unistr/u8-mbtouc. Replace ucs4-utf8 with
5656         unistr/u8-uctomb.
5657
5658 2007-03-28  Bruno Haible  <bruno@clisp.org>
5659
5660         * modules/unistr/u8-mbtoucr: New file.
5661         * lib/unistr/u8-mbtoucr.c: New file.
5662         * modules/unistr/u16-mbtoucr: New file.
5663         * lib/unistr/u16-mbtoucr.c: New file.
5664         * modules/unistr/u16-mbtoucr: New file.
5665         * lib/unistr/u16-mbtoucr.c: New file.
5666         * lib/unistr.h (u8_mbtoucr, u16_mbtoucr, u32_mbtoucr): New declarations.
5667
5668 2007-03-27  Simon Josefsson  <simon@josefsson.org>
5669             Bruno Haible  <bruno@clisp.org>
5670
5671         * m4/vasprintf.m4: Convert AC_SUBST into shell variable for
5672         REPLACE_VASPRINTF.  Set HAVE_VASPRINTF.  Add
5673         AC_REQUIRE([gl_STDIO_H_DEFAULTS]).
5674
5675         * m4/stdio_h.m4: Add stubs for vasprintf too.
5676
5677         * modules/stdio: Support vasprintf in sed command.
5678
5679         * modules/vasprintf: Depend on stdio for prototypes.  Remove
5680         vasprintf.h.  Add stdio module indicator.
5681
5682         * lib/stdio_.h: Declare asprintf and vasprintf, based on
5683         vasprintf.h.
5684
5685         * lib/vasprintf.h: File removed.
5686
5687         * lib/asprintf.c: Use stdio.h instead of vasprintf.h.
5688         * lib/vasprintf.c: Ditto.
5689         * lib/xvasprintf.c: Ditto.
5690         * tests/test-vasprintf-posix.c: Ditto.
5691         * tests/test-vasprintf.c: Ditto.
5692
5693 2007-03-27  Bruno Haible  <bruno@clisp.org>
5694
5695         Make vasnprintf multithread-safe.
5696         * lib/vasnprintf.c (decimal_point_char): New function.
5697         (VASNPRINTF): Use it.
5698         Suggested by Simon Josefsson.
5699
5700 2007-03-27  Eric Blake  <ebb9@byu.net>
5701
5702         Support sub-second birthtime on cygwin.
5703         * m4/stat-time.m4 (gl_STAT_BIRTHTIME): Also check for st_birthtim.
5704         * lib/stat-time.h (STAT_TIMESPEC): Adjust comments.
5705         (get_stat_birthtime): Also work with st_birthtim.
5706
5707 2007-03-27  Paul Eggert  <eggert@cs.ucla.edu>
5708
5709         * lib/stat-time.h (USE_BIRTHTIME): Remove.
5710         (get_stat_atime_ns, get_stat_ctime_ns, get_stat_mtime_ns):
5711         (get_stat_birthtime_ns): Do not try to use "spare" fields.
5712         (get_stat_birthtime_ns): Simplify compile-time tests.
5713         (get_stat_birthtime): Change the API to look like
5714         get_stat_mtime etc., except return a negative tv_nsec on error.
5715         * m4/stat-time.m4 (gl_STAT_TIME, gl_STAT_BIRTHTIME):
5716         Don't check for "spare" fields.
5717         (gl_STAT_BIRTHTIME): Don't check for struct stat.st_birthtimespec.tv_sec
5718         or for struct stat.st_birthtime, as these tests aren't used.
5719         * tests/test-stat-time.c (test_birthtime): Adjust to new API.
5720
5721 2007-03-27  Bruno Haible  <bruno@clisp.org>
5722
5723         * lib/stat-time.h: Include <sys/stat.h>.
5724
5725 2007-03-27  James Youngman  <jay@gnu.org>
5726
5727         * lib/stat-time.h (get_stat_birthtime): New function for
5728           retrieving st_birthtime as provided by UFS2 (hence *BSD).
5729         * m4/stat-time.m4 (gl_STAT_BIRTHTIME): Probe for st_birthtime
5730           and its variants.
5731         * modules/stat-time (configure.ac): call gl_STAT_BIRTHTIME.
5732         * modules/stat-time-test: New file.
5733         * tests/test-stat-time.c: New test, devised by Bruno Haible.
5734
5735 2007-03-26  Bruno Haible  <bruno@clisp.org>
5736
5737         Better support of signalling NaNs.
5738         * lib/atanl.c: Include isnanl.h.
5739         (atanl): Perform test for NaN at the beginning of the function and
5740         through a call to isnanl.
5741         * lib/cosl.c: Include isnanl.h.
5742         (cosl): Perform test for NaN at the beginning of the function and
5743         through a call to isnanl.
5744         * lib/ldexpl.c: Include isnanl.h.
5745         (ldexpl): Perform test for NaN through a call to isnanl.
5746         * lib/logl.c: Include isnanl.h.
5747         (logl): Perform test for NaN at the beginning of the function and
5748         through a call to isnanl.
5749         * lib/sinl.c: Include isnanl.h.
5750         (sinl): Perform test for NaN at the beginning of the function and
5751         through a call to isnanl.
5752         * lib/sqrtl.c: Include isnanl.h.
5753         (sqrtl): Perform test for NaN at the beginning of the function and
5754         through a call to isnanl.
5755         * lib/tanl.c: Include isnanl.h.
5756         (tanl): Perform test for NaN at the beginning of the function and
5757         through a call to isnanl.
5758         * lib/trigl.c (ieee754_rem_pio2l): Remove test for NaN.
5759         * modules/mathl (Depends-on): Add isnanl.
5760
5761 2007-03-26  Eric Blake  <ebb9@byu.net>
5762
5763         * m4/vasnprintf.m4 (gl_PREREQ_VASNPRINTF_DIRECTIVE_A): Fix
5764         regression in logic sense of previous patch.
5765
5766 2007-03-26  Bruno Haible  <bruno@clisp.org>
5767
5768         * m4/vasnprintf.m4 (gl_PREREQ_VASNPRINTF_DIRECTIVE_A): Don't use
5769         unportable shell command "if ! ...".
5770         Reported by Ralf Wildenhues.
5771
5772 2007-03-25  Bruno Haible  <bruno@clisp.org>
5773
5774         * lib/sysexit_,h: If HAVE_SYSEXITS_H is defined, include the original
5775         <sysexits.h> file, and only add EX_CONFIG.
5776         * m4/sysexits.m4 (gl_SYSEXITS): If <sysexits.h> exists, check its
5777         absolute file name and whether it is sufficient. Substitute also
5778         HAVE_SYSEXITS_H and ABSOLUTE_SYSEXITS_H.
5779         * modules/sysexits (Makefile.am): Substitute HAVE_SYSEXITS_H and
5780         ABSOLUTE_SYSEXITS_H into sysexits.h.
5781
5782 2007-03-25  Bruno Haible  <bruno@clisp.org>
5783
5784         * lib/getaddrinfo.c (getaddrinfo): Don't access hints->ai_flags when
5785         hints is NULL.
5786
5787 2007-03-25  Bruno Haible  <bruno@clisp.org>
5788
5789         * lib/uniconv/u8-conv-from-enc.c (u8_conv_from_encoding): Add a cast.
5790         * lib/uniconv/u8-strconv-to-enc.c (u8_strconv_to_encoding): Likewise.
5791
5792 2007-03-25  Bruno Haible  <bruno@clisp.org>
5793
5794         * lib/vasnprintf.c: Include langinfo.h.
5795         (VASNPRINTF): Prefer nl_langinfo over localeconv, since it's more
5796         multithread-safe.
5797         * m4/vasnprintf.m4 (gl_PREREQ_VASNPRINTF_DIRECTIVE_A): New macro.
5798         * m4/fprintf-posix.m4 (gl_FUNC_FPRINTF_POSIX): Invoke it.
5799         * m4/snprintf-posix.m4 (gl_FUNC_SNPRINTF_POSIX): Likewise.
5800         * m4/sprintf-posix.m4 (gl_FUNC_SPRINTF_POSIX): Likewise.
5801         * m4/vasnprintf-posix.m4 (gl_FUNC_VASNPRINTF_POSIX): Likewise.
5802         * m4/vasprintf-posix.m4 (gl_FUNC_VASPRINTF_POSIX): Likewise.
5803         * m4/vfprintf-posix.m4 (gl_FUNC_VFPRINTF_POSIX): Likewise.
5804         * m4/vsnprintf-posix.m4 (gl_FUNC_VSNPRINTF_POSIX: Likewise.
5805         * m4/vsprintf-posix.m4 (gl_FUNC_VSPRINTF_POSIX): Likewise.
5806         Reported by Simon Josefsson.
5807
5808 2007-03-25  Bruno Haible  <bruno@clisp.org>
5809
5810         * lib/printf-parse.c [!IN_LIBINTL]: Include <stdint.h>, for intmax_t.
5811         (PRINTF_PARSE): Make the support for size specifier 'j' unconditional.
5812         * modules/vasnprintf (Depends-on): Add stdint.
5813
5814 2007-03-25  Bruno Haible  <bruno@clisp.org>
5815
5816         * modules/fpieee: New file.
5817         * m4/fpieee.m4: New file.
5818         * modules/isnan-nolibm (Depends-on): Add fpieee.
5819         * modules/isnanl-nolibm (Depends-on): Add fpieee.
5820         * modules/isnanl (Depends-on): Add fpieee.
5821
5822 2007-03-25  Bruno Haible  <bruno@clisp.org>
5823
5824         * m4/frexpl.m4 (gl_FUNC_FREXPL_WORKS): Test also finite numbers.
5825
5826 2007-03-25  Bruno Haible  <bruno@clisp.org>
5827
5828         Avoid test failures on IRIX 6.5.
5829         * tests/test-frexpl.c (MIN_NORMAL_EXP): New macro.
5830         (main): Use it.
5831         * tests/test-printf-frexpl.c (MIN_NORMAL_EXP, MIN_SUBNORMAL_EXP): New
5832         macros.
5833         (main): Use them.
5834
5835 2007-03-25  Bruno Haible  <bruno@clisp.org>
5836
5837         * m4/frexpl.m4 (gl_FUNC_FREXPL_WORKS): New macro.
5838         (gl_FUNC_FREXPL): Invoke it. Set REPLACE_FREXPL to 1 if it frexpl
5839         exists but doesn't work.
5840         * lib/math_.h (frexpl): Define as a replacement macro if REPLACE_FREXPL
5841         is set. Don't provide a prototype if REPLACE_FREXPL is not set.
5842         * m4/math_h.m4 (gl_MATH_H_DEFAULTS): Initialize REPLACE_FREXPL.
5843         * modules/math (Makefile.am) Substibute also REPLACE_FREXPL into math.h.
5844
5845 2007-03-25  Bruno Haible  <bruno@clisp.org>
5846
5847         * m4/frexp.m4 (gl_FUNC_FREXP_WORKS): Add check whether frexp(inf)
5848         returns inf. Needed on IRIX 6.5.
5849
5850 2007-03-25  Bruno Haible  <bruno@clisp.org>
5851
5852         * tests/test-frexpl.c: Include isnanl-nolibm.h.
5853         (main): Use isnanl instead of x != x idiom.
5854         * modules/frexpl-tests (Depends-on): Add isnanl-nolibm.
5855
5856         * tests/test-frexp.c: Include isnan.h.
5857         (main): Use isnan instead of x != x idiom.
5858         * modules/frexp-tests (Depends-on): Add isnan-nolibm.
5859
5860 2007-03-25  Bruno Haible  <bruno@clisp.org>
5861
5862         * tests/test-frexp.c (NaN): New function/macro.
5863         (main): Use it instead of 0.0 / 0.0.
5864         * tests/test-isnan.c (NaN): New function/macro.
5865         (main): Use it instead of 0.0 / 0.0.
5866         * tests/test-vasnprintf-posix.c (NaN): New function/macro.
5867         (test_function): Use it instead of 0.0 / 0.0.
5868         * tests/test-vasprintf-posix.c (NaN): New function/macro.
5869         (test_function): Use it instead of 0.0 / 0.0.
5870         * tests/test-snprintf-posix.h (NaN): New function/macro.
5871         (test_function): Use it instead of 0.0 / 0.0.
5872         * tests/test-sprintf-posix.h (NaN): New function/macro.
5873         (test_function): Use it instead of 0.0 / 0.0.
5874         * tests/test-fprintf-posix.h (NaN): New function/macro.
5875         (test_function): Use it instead of 0.0 / 0.0.
5876         * tests/test-printf-posix.h (NaN): New function/macro.
5877         (test_function): Use it instead of 0.0 / 0.0.
5878
5879         * lib/isnan.c (FUNC): Work around a DEC C compiler bug.
5880
5881 2007-03-25  Bruno Haible  <bruno@clisp.org>
5882
5883         * lib/glob_.h: Include <sys/stat.h>. Avoids warnings on AIX 5.1.
5884
5885 2007-03-25  Bruno Haible  <bruno@clisp.org>
5886
5887         * lib/regexec.c (merge_state_with_log): Make static.
5888
5889 2007-03-25  Bruno Haible  <bruno@clisp.org>
5890
5891         * lib/trigl.c (kernel_rem_pio2): Make static.
5892
5893 2007-03-25  Bruno Haible  <bruno@clisp.org>
5894
5895         * lib/sincosl.c (sincosl_table): Make static.
5896
5897 2007-03-25  Bruno Haible  <bruno@clisp.org>
5898
5899         * lib/argp.h (__restrict): Define to empty, rather than to 'restrict',
5900         if the compiler does not support C99.
5901
5902 2007-03-25  Bruno Haible  <bruno@clisp.org>
5903
5904         * modules/time (Makefile.am): Ensure all rule action lines start with a
5905         tab.
5906
5907 2007-03-24  Bruno Haible  <bruno@clisp.org>
5908
5909         * modules/tsearch-tests: New file.
5910         * tests/test-tsearch.sh: New file.
5911         * tests/test-tsearch.c: New file, mostly copied from glibc.
5912
5913         * modules/search-tests: New file.
5914         * tests/test-search.c: New file.
5915
5916         * modules/search: New file.
5917         * lib/search_.h: New file, incorporating lib/tsearch.h.
5918         * m4/search_h.m4: New file.
5919         * lib/tsearch.h: Remove file.
5920         * lib/tsearch.c: Include search.h instead of tsearch.h.
5921         * m4/tsearch.m4 (gl_FUNC_TSEARCH): Require gl_SEARCH_H_DEFAULTS. Set
5922         HAVE_TSEARCH.
5923         * modules/tsearch (Files): Remove lib/tsearch.h.
5924         (Depends-on): Add search.
5925         (configure.ac): Invoke gl_SEARCH_MODULE_INDICATOR.
5926         (Include): Change tsearch.h into search.h.
5927
5928 2007-03-24  Bruno Haible  <bruno@clisp.org>
5929
5930         * modules/fpucw: New file.
5931         * lib/fpucw.h: New file.
5932         * lib/frexp.c: Include fpucw.h.
5933         (DECL_ROUNDING, BEGIN_ROUNDING, END_ROUNDING): New macros.
5934         (FUNC): Use them.
5935         * lib/printf-frexp.c: Include fpucw.h.
5936         (DECL_ROUNDING, BEGIN_ROUNDING, END_ROUNDING): New macros.
5937         (FUNC): Use them.
5938         * lib/vasnprintf.c: Include fpucw.h.
5939         (VASNPRINTF): Invoke BEGIN/END_LONG_DOUBLE_ROUNDING around the
5940         'long double' calculations.
5941         * tests/test-frexpl.c: Include fpucw.h.
5942         (main): Invoke BEGIN_LONG_DOUBLE_ROUNDING.
5943         * tests/test-printf-frexpl.c: Include fpucw.h.
5944         (main): Invoke BEGIN_LONG_DOUBLE_ROUNDING.
5945         * modules/frexpl (Depends-on): Add fpucw.
5946         * modules/printf-frexpl (Depends-on): Likewise.
5947         * modules/fprintf-posix (Depends-on): Likewise.
5948         * modules/snprintf-posix (Depends-on): Likewise.
5949         * modules/sprintf-posix (Depends-on): Likewise.
5950         * modules/vasnprintf-posix (Depends-on): Likewise.
5951         * modules/vasprintf-posix (Depends-on): Likewise.
5952         * modules/vfprintf-posix (Depends-on): Likewise.
5953         * modules/vsnprintf-posix (Depends-on): Likewise.
5954         * modules/vsprintf-posix (Depends-on): Likewise.
5955         * modules/frexpl-tests (Depends-on): Likewise.
5956         * modules/printf-frexpl-tests (Depends-on): Likewise.
5957
5958 2007-03-24  Bruno Haible  <bruno@clisp.org>
5959
5960         * lib/float+.h: New file.
5961         * lib/isnan.c: Include float+.h.
5962         (SIZE): New macro.
5963         (FUNC): Compare only SIZE bytes of the value.
5964         * lib/vasnprintf.c: Include float+.h.
5965         (VASNPRINTF): When comparing agains +0.0L or +0.0, compare only
5966         SIZEOF_LDBL or SIZEOF_DBL bytes.
5967         * modules/isnan-nolibm (Files): Add lib/float+.h.
5968         * modules/isnanl-nolibm (Files): Add lib/float+.h.
5969         * modules/isnanl (Files): Add lib/float+.h.
5970         * modules/vasnprintf (Files): Add lib/float+.h.
5971
5972 2007-03-24  Bruno Haible  <bruno@clisp.org>
5973
5974         * lib/vasnprintf.c [!HAVE_LONG_DOUBLE]: Include printf-frexp.h. Don't
5975         include isnanl-nolibm.h.
5976
5977 2007-03-24  Bruno Haible  <bruno@clisp.org>
5978
5979         * tests/test-read-file.c (main): Don't produce spurious output for
5980         expected situations. Make the test fail if it encountered unexpected
5981         results.
5982
5983 2007-03-24  Bruno Haible  <bruno@clisp.org>
5984
5985         * m4/locale-fr.m4 (gt_LOCALE_FR): Remove the special-casing of NetBSD,
5986         since its fr_FR.ISO8859-1 locale wouldn't pass the tests.
5987
5988 2007-03-24  Bruno Haible  <bruno@clisp.org>
5989
5990         * m4/locale-fr.m4 (gt_LOCALE_FR, gt_LOCALE_FR_UTF8): Fix last change.
5991
5992 2007-03-24  Bruno Haible  <bruno@clisp.org>
5993
5994         * modules/unistr/base (Depends-on): Remove utf8-ucs4-unsafe,
5995         utf16-ucs4-unsafe, utf8-ucs4, utf16-ucs4, ucs4-utf8, ucs4-utf16.
5996
5997         * modules/unistr/u8-mbtouc: Add source files from module utf8-ucs4.
5998         * modules/utf8-ucs4: Turn into a symbolic link to module
5999         unistr/u8-mbtouc.
6000
6001         * modules/unistr/u8-mbtouc-unsafe: Add source files from module
6002         utf8-ucs4-unsafe.
6003         * modules/utf8-ucs4-unsafe: Turn into a symbolic link to module
6004         unistr/u8-mbtouc-unsafe.
6005
6006         * modules/unistr/u16-mbtouc: Add source files from module utf16-ucs4.
6007         * modules/utf16-ucs4: Turn into a symbolic link to module
6008         unistr/u16-mbtouc.
6009
6010         * modules/unistr/u16-mbtouc-unsafe: Add source files from module
6011         utf16-ucs4-unsafe.
6012         * modules/utf16-ucs4-unsafe: Turn into a symbolic link to module
6013         unistr/u16-mbtouc-unsafe.
6014
6015         * modules/unistr/u8-uctomb: Add source files from module utf4-utf8.
6016         * modules/ucs4-utf8: Turn into a symbolic link to module
6017         unistr/u8-ubtomb.
6018
6019         * modules/unistr/u16-uctomb: Add source files from module utf4-utf16.
6020         * modules/ucs4-utf16: Turn into a symbolic link to module
6021         unistr/u16-ubtomb.
6022
6023 2007-03-24  Bruno Haible  <bruno@clisp.org>
6024
6025         * lib/unistr/u8-mbtouc-aux.c: Renamed from lib/unistr/utf8-ucs4.c.
6026         Enable the function only if HAVE_INLINE.
6027         * lib/unistr/u8-mbtouc-unsafe-aux.c: Renamed from
6028         lib/unistr/utf8-ucs4-unsafe.c. Enable the function only if HAVE_INLINE.
6029         * lib/unistr/u16-mbtouc-aux.c: Renamed from lib/unistr/utf16-ucs4.c.
6030         Enable the function only if HAVE_INLINE.
6031         * lib/unistr/u16-mbtouc-unsafe-aux.c: Renamed from
6032         lib/unistr/utf16-ucs4-unsafe.c. Enable the function only if HAVE_INLINE.
6033         * lib/unistr/u8-uctomb-aux.c: Renamed from lib/unistr/ucs4-utf8.c.
6034         Enable the function only if HAVE_INLINE.
6035         * lib/unistr/u16-uctomb-aux.c: Renamed from lib/unistr/ucs4-utf16.c.
6036         Enable the function only if HAVE_INLINE.
6037         * modules/utf8-ucs4: Update.
6038         * modules/utf8-ucs4-unsafe: Update.
6039         * modules/utf16-ucs4: Update.
6040         * modules/utf16-ucs4-unsafe: Update.
6041         * modules/ucs4-utf8: Update.
6042         * modules/ucs4-utf16: Update.
6043
6044 2007-03-24  Bruno Haible  <bruno@clisp.org>
6045
6046         * lib/utf8-ucs4.h: Remove file.
6047         * lib/utf8-ucs4-unsafe.h: Remove file.
6048         * lib/utf16-ucs4.h: Remove file.
6049         * lib/utf16-ucs4-unsafe.h: Remove file.
6050         * lib/ucs4-utf8.h: Remove file.
6051         * lib/ucs4-utf16.h: Remove file.
6052         * lib/unistr.h: Include their previous contents.
6053         * m4/utf-ucs4.m4: Remove file.
6054         * m4/ucs4-utf.m4: Remove file.
6055         * modules/utf8-ucs4 (Files): Remove lib/utf8-ucs4.h.
6056         (Depends-on): Add unistr/base.
6057         (configure.ac): Remove gl_UTF_UCS4.
6058         (Makefile.am): Update.
6059         (Include): Change to unistr.h.
6060         * modules/utf8-ucs4-unsafe (Files): Remove lib/utf8-ucs4-unsafe.h.
6061         (Depends-on): Add unistr/base.
6062         (configure.ac): Remove gl_UTF_UCS4.
6063         (Makefile.am): Update.
6064         (Include): Change to unistr.h.
6065         * modules/utf16-ucs4 (Files): Remove lib/utf16-ucs4.h.
6066         (Depends-on): Add unistr/base.
6067         (configure.ac): Remove gl_UTF_UCS4.
6068         (Makefile.am): Update.
6069         (Include): Change to unistr.h.
6070         * modules/utf16-ucs4-unsafe (Files): Remove lib/utf16-ucs4-unsafe.h.
6071         (Depends-on): Add unistr/base.
6072         (configure.ac): Remove gl_UTF_UCS4.
6073         (Makefile.am): Update.
6074         (Include): Change to unistr.h.
6075         * modules/ucs4-utf8 (Files): Remove lib/ucs4-utf8.h.
6076         (Depends-on): Add unistr/base.
6077         (configure.ac): Remove gl_UCS4_UTF.
6078         (Makefile.am): Update.
6079         (Include): Change to unistr.h.
6080         * modules/ucs4-utf16 (Files): Remove lib/ucs4-utf16.h.
6081         (Depends-on): Add unistr/base.
6082         (configure.ac): Remove gl_UCS4_UTF.
6083         (Makefile.am): Update.
6084         (Include): Change to unistr.h.
6085         * lib/unistr/utf8-ucs4.c: Include unistr.h instead of utf8-ucs4.h.
6086         * lib/unistr/utf8-ucs4-unsafe.c: Include unistr.h instead of
6087         utf8-ucs4-unsafe.h.
6088         * lib/unistr/utf16-ucs4.c: Include unistr.h instead of utf16-ucs4.h.
6089         * lib/unistr/utf16-ucs4-unsafe.c: Include unistr.h instead of
6090         utf16-ucs4-unsafe.h.
6091         * lib/unistr/ucs4-utf8.c: Include unistr.h instead of ucs4-utf8.h.
6092         * lib/unistr/ucs4-utf16.c: Include unistr.h instead of ucs4-utf16.h.
6093         * lib/unistr/u8-chr.c: Don't include ucs4-utf8.h.
6094         * lib/unistr/u8-strchr.c: Likewise.
6095         * lib/unistr/u8-strrchr.c: Likewise.
6096         * lib/unistr/u16-chr.c: Don't include ucs4-utf16.h.
6097         * lib/unistr/u16-strchr.c: Likewise.
6098         * lib/unistr/u16-strrchr.c: Likewise.
6099         * lib/striconveh.c: Update.
6100         * lib/linebreak.c: Update.
6101
6102 2007-03-24  Bruno Haible  <bruno@clisp.org>
6103
6104         * lib/argp-help.c (fill_in_uparams, canon_doc_option): Cast the
6105         arguments of isspace, isalpha, isalnum, isdigit to 'unsigned char'.
6106
6107 2007-03-22  Bruno Haible  <bruno@clisp.org>
6108
6109         * lib/strptime.c (__strptime_internal): Use ANSI C syntax.
6110
6111 2007-03-23  Paul Eggert  <eggert@cs.ucla.edu>
6112
6113         * MODULES.html.sh (File system functions): New module write-any-file.
6114         * modules/write-any-file, lib/write-any-file.c, lib/write-any-file.h:
6115         * m4/write-any-file.m4: New files.
6116
6117 2007-03-23  Eric Blake  <ebb9@byu.net>
6118
6119         * gnulib-tool: Rearrange space-tab sequences, since some editors
6120         like to eat them.
6121
6122 2007-03-23  Eric Blake  <ebb9@byu.net>
6123
6124         * lib/version-etc.c (version_etc_va): Update license wording to
6125         be more concise.  Recommended by Richard Stallman.
6126
6127 2007-03-22  Bruno Haible  <bruno@clisp.org>
6128
6129         * lib/poll.c (MSG_PEEK): New fallback definition.
6130
6131 2007-03-22  Bruno Haible  <bruno@clisp.org>
6132
6133         * modules/sys_socket-tests (configure.ac): Check for shutdown function.
6134         * tests/test-sys_socket.c (a): Test only if shutdown() exists.
6135         (main): Update.
6136         Fixes a compilation error on BeOS.
6137
6138 2007-03-22  Bruno Haible  <bruno@clisp.org>
6139
6140         * modules/frexpl-tests: New file.
6141         * tests/test-frexpl.c: New file.
6142
6143         * modules/frexpl: New file.
6144         * m4/frexpl.m4: New file.
6145         * modules/math (Makefile.am): Also substitute GNULIB_FREXPL into math.h.
6146         * lib/math_.h (frexpl): Test GNULIB_FREXPL instead of GNULIB_MATHL.
6147         * m4/math_h.m4 (gl_MATH_H_DEFAULTS): Initialize GNULIB_FREXPL.
6148         * modules/mathl (Files): Remove lib/frexpl.c, lib/frexp.c.
6149         (Depends-on): Add frexpl. Remove isnanl-nolibm.
6150         * m4/mathl.m4 (gl_FUNC_LONG_DOUBLE_MATH): Don't test for frexpl.
6151
6152 2007-03-22  Bruno Haible  <bruno@clisp.org>
6153
6154         * lib/frexpl.c: Share code with lib/frexp.c.
6155         * modules/mathl (Files): Add lib/frexp.c.
6156         (Depends-on): Add isnanl-nolibm.
6157
6158 2007-03-22  Bruno Haible  <bruno@clisp.org>
6159
6160         * modules/printf-frexp (Files): Add m4/frexp.m4.
6161         * m4/printf-frexp.m4 (gl_FUNC_PRINTF_FREXP): Define HAVE_FREXP_IN_LIBC
6162         only if the found frexp function actually works.
6163
6164 2007-03-22  Bruno Haible  <bruno@clisp.org>
6165
6166         * lib/frexp.c: Remove older implementation that uses divisions.
6167
6168 2007-03-21  Bruno Haible  <bruno@clisp.org>
6169
6170         * modules/frexp-tests: New file.
6171         * tests/test-frexp.c: New file.
6172
6173         * modules/frexp: New file.
6174         * lib/frexp.c: New file.
6175         * m4/frexp.m4: New file.
6176         * lib/math_.h (frexp): New declaration.
6177         * m4/math_h.m4 (gl_MATH_H_DEFAULTS): Also initialize GNULIB_FREXP and
6178         REPLACE_FREXP.
6179         * modules/math (math.h): Also substitute GNULIB_FREXP, REPLACE_FREXP.
6180
6181 2007-03-21  Bruno Haible  <bruno@clisp.org>
6182
6183         * modules/isnanl-tests: New file.
6184         * tests/test-isnanl.c: New file.
6185
6186         * modules/isnanl: New file.
6187         * lib/isnanl.h: New file.
6188         * m4/isnanl.m4 (gl_FUNC_ISNANL): New macro.
6189         (gl_FUNC_ISNANL_NO_LIBM): Invoke gl_HAVE_ISNANL_NO_LIBM,
6190         gl_FUNC_ISNANL_WORKS.
6191         (gl_HAVE_ISNANL_NO_LIBM, gl_HAVE_ISNANL_IN_LIBM, gl_FUNC_ISNANL_WORKS):
6192         New macros.
6193
6194 2007-03-21  Bruno Haible  <bruno@clisp.org>
6195
6196         * modules/isnanl-nolibm (Files): Add lib/isnanl-nolibm.h, remove
6197         lib/isnanl.h.
6198         (Include): Update.
6199         * lib/isnanl-nolibm.h: Renamed from lib/isnanl.h.
6200         * lib/vasnprintf.c: Update.
6201         * modules/isnanl-nolibm-tests (Files): Add tests/test-isnanl-nolibm.c,
6202         tests/test-isnanl.h, remove tests/test-isnanl.c.
6203         (Makefile.am): Update.
6204         * tests/test-isnanl-nolibm.c: New file.
6205         * tests/test-isnanl.h: New file.
6206         * tests/test-isnanl.c: Remove file.
6207
6208 2007-03-21  Jim Meyering  <jim@meyering.net>
6209
6210         When trying to open ".", treat ESTALE like EACCES.
6211         * lib/savewd.c (savewd_save): Resort to forking not just upon
6212         failure with EACCES, but also when errno is ESTALE.
6213
6214 2007-03-20  Bruno Haible  <bruno@clisp.org>
6215
6216         * lib/string_.h (strndup): Enable declaration also if HAVE_STRNDUP.
6217         Needed on AIX 5.1. Reported by Matthew Woehlke.
6218
6219 2007-03-19  Paul Eggert  <eggert@cs.ucla.edu>
6220
6221         Suggestions by Bruno Haible:
6222         * lib/acl-internal.h: Include "gettext.h" rather than rolling
6223         our own.
6224         (ACL_NOT_WELL_SUPPORTED): Parenthesize arg when used.
6225         * modules/acl (Depends-on): Add gettext.
6226
6227 2007-03-19  Bruno Haible  <bruno@clisp.org>
6228
6229         * modules/iconvme: Remove file.
6230         * lib/iconvme.h: Remove file.
6231         * lib/iconvme.c: Remove file.
6232         * m4/iconvme.m4: Remove file.
6233
6234 2007-03-19  Bruno Haible  <bruno@clisp.org>
6235
6236         * doc/relocatable-maint.texi: Break long shell script line.
6237         Suggested by Thien-Thi Nguyen <ttn@gnuvola.org>.
6238
6239 2007-03-19  Paul Eggert  <eggert@cs.ucla.edu>
6240
6241         Add limited support for Solaris 10 ZFS-style ACLs: just enough to
6242         handle file_has_acl.
6243         * lib/acl-internal.h, lib/acl_entries.c, lib/file-has-acl.c: New files.
6244         * lib/acl.c: Move header inclusions and related macro defns into
6245         lib/acl-internal.h.
6246         (S_ISLNK): Remove defn, since that's now done for us.
6247         (file_has_acl): Move to lib/file-has-acl.c.
6248         Call acl_trivial if available.  This is the crucial part of the fix.
6249         (acl_entries): Move to lib/acl_entries.c.  Now extern, since it's
6250         shared within the library.  Rewrite a bit, partly to make it compatible
6251         with the GNU coding style.
6252         * m4/acl.m4 (AC_FUNC_ACL): Add AC_LIBOBJ([file-has-acl]).
6253         Remove unnecessary double-quotes.
6254         Don't test for acl_to_text; the build will catch that.
6255         Replace acl_entries if it doesn't exist and it is needed.
6256         Check for -lsec and acl_trivial (as used on Solaris 10).
6257         * modules/acl (Files): Add lib/acl-internal.h, lib/acl_entries.c,
6258         lib/file-has-acl.c.
6259         (Depends-on): Add sys_stat, for S_ISLNK.
6260
6261 2007-03-19  Ben Pfaff  <blp@gnu.org>
6262
6263         * doc/gnulib.texi: Fix typos.
6264         Suggested by Thien-Thi Nguyen <ttn@gnuvola.org>.
6265
6266 2007-03-19  Paul Eggert  <eggert@cs.ucla.edu>
6267
6268         * lib/getcwd.c (__getcwd): Remove redundant comparison of buf to NULL.
6269         If size is zero here, buf must be zero.
6270
6271 2007-03-19  Simon Josefsson  <simon@josefsson.org>
6272
6273         * des.c: Remove weak_keys_chksum.  Reported by Bruno Haible
6274         <bruno@clisp.org>.
6275
6276 2007-03-18  Bruno Haible  <bruno@clisp.org>
6277
6278         * lib/vasnprintf.c (VASNPRINTF): Undo first part of last patch.
6279         Suggested by Eric Blake.
6280
6281 2007-03-18  Ben Pfaff  <blp@gnu.org>
6282
6283         * doc/relocatable.texi: Recommend using as prefix a directory
6284         that does not exist and will never be created.  Based on
6285         discussion with Bruno Haible, Ralf Wildenhues, Matthew Woehlke,
6286         and others.
6287
6288 2007-03-17  Bruno Haible  <bruno@clisp.org>
6289
6290         * lib/fchownat.c: Include lchown.h.
6291
6292 2007-03-17  Bruno Haible  <bruno@clisp.org>
6293
6294         Fix endless loop when the given allocated size was > INT_MAX.
6295         * lib/vasnprintf.c (EOVERFLOW): New fallback definition.
6296         (VASNPRINTF): Fail with EOVERFLOW when the given allocated size is
6297         larger than INT_MAX, or when it grow to a value larger than INT_MAX.
6298         * lib/vsprintf.c (vsprintf): Don't pass a size > INT_MAX to vasnprintf.
6299         * lib/sprintf.c (sprintf): Likewise.
6300
6301 2007-03-17  Bruno Haible  <bruno@clisp.org>
6302
6303         * tests/test-argp-2.sh (func_compare): Output a context diff.
6304
6305 2007-03-17  Bruno Haible  <bruno@clisp.org>
6306
6307         * m4/locale-fr.m4 (gt_LOCALE_FR, gt_LOCALE_FR_UTF8): Check also the
6308         locale's decimal-point character.
6309
6310 2007-03-17  Bruno Haible  <bruno@clisp.org>
6311
6312         * lib/vasnprintf.c (VASNPRINTF): Clear out the memory used for arg_mem
6313         before comparing it. Needed because on some platforms (e.g. x86) a
6314         'long double' occupies less bytes than sizeof (long double).
6315
6316 2007-03-17  Bruno Haible  <bruno@clisp.org>
6317
6318         * tests/test-crc.c (main): Make printf statements 64-bit clean.
6319         * tests/test-gc-pbkdf2-sha1.c (main): Likewise.
6320         * tests/test-getaddrinfo.c (simple): Likewise.
6321         * tests/test-read-file.c (main): Likewise.
6322
6323 2007-03-17  Bruno Haible  <bruno@clisp.org>
6324
6325         * tests/test-dirname.c (main): Make printf statements 64-bit clean.
6326
6327 2007-03-17  Bruno Haible  <bruno@clisp.org>
6328
6329         * tests/test-xvasprintf.c (test_xvasprintf, test_xasprintf): Remove
6330         unused variable.
6331
6332 2007-03-17  Bruno Haible  <bruno@clisp.org>
6333
6334         * tests/test-c-strcasecmp.c: Include c-strcase.h.
6335         * tests/test-c-strncasecmp.c: Likewise.
6336
6337 2007-03-17  Bruno Haible  <bruno@clisp.org>
6338
6339         * modules/stdlib (Depends-on): Add unistd.
6340         * lib/stdlib_.h: Include <unistd.h> if mkstemp is desired.
6341         Needed for MacOS X 10.3.
6342
6343 2007-03-17  Bruno Haible  <bruno@clisp.org>
6344
6345         * lib/unistr/u-strdup.h: Include <stdlib.h>.
6346
6347 2007-03-17  Bruno Haible  <bruno@clisp.org>
6348
6349         * lib/unistr/u-cpy-alloc.h: Include <stdlib.h>.
6350
6351 2007-03-17  Bruno Haible  <bruno@clisp.org>
6352
6353         * gnulib-tool (func_import): Update .cvsignore and .gitignore files
6354         to reflect files copied from gnulib (with or without modifications).
6355         Suggested by Jim Meyering.
6356
6357 2007-03-17  Eric Blake  <ebb9@byu.net>
6358
6359         * NEWS: Document stdlib change from 2007-02-18.
6360
6361 2007-03-17  Jim Meyering  <jim@meyering.net>
6362
6363         Detect use of AC_CONFIG_AUX_DIR also when its argument is quoted.
6364         * build-aux/bootstrap: Put ""s around use of $build_aux, in case
6365         someone uses a name containing shell meta-characters.
6366         Reported by Alfred M. Szmidt.
6367
6368         * build-aux/bootstrap: Don't use \> in grep regexp.  For HP-UX.
6369
6370 2007-03-16  Alfred M. Szmidt  <ams@gnu.org>
6371
6372         * build-aux/bootstrap (with_gettext): New variable.  Run autopoint
6373         and copy gettext configuration files only if configure.ac contains
6374         a use of AM_GNU_GETTEXT_VERSION.
6375
6376 2007-03-16  Alfred M. Szmidt  <ams@gnu.org>
6377
6378         * build-aux/bootstrap (gnulib_name): New variable.
6379         (gnulib_tool_options): Use it.
6380
6381 2007-03-13  Simon Josefsson  <simon@josefsson.org>
6382
6383         * tests/test-des.c: Use new namespace.
6384
6385 2007-03-15  Bruno Haible  <bruno@clisp.org>
6386
6387         * lib/dummy.c (gl_dummy_symbol): Renamed from 'dummy'.
6388         Reported by James Youngman <jay@gnu.org>.
6389
6390 2007-03-15  Bruno Haible  <bruno@clisp.org>
6391
6392         * lib/glob.c (glob): Add 'restrict' so that prototype matches the
6393         declared prototype. Needed with cc on OSF/1 5.1.
6394
6395 2007-03-15  Bruno Haible  <bruno@clisp.org>
6396
6397         * lib/gl_list.h (gl_listelement_dispose_fn): New type.
6398         (gl_list_create_empty, gl_list_create): Add dispose_fn argument.
6399         (struct gl_list_implementation): Add dispose_fn argument to the
6400         'create_empty', 'create' methods.
6401         (struct gl_list_impl_base): Add field 'dispose_fn'.
6402         * lib/gl_list.c (gl_list_create_empty, gl_list_create): Add dispose_fn
6403         argument.
6404         * lib/gl_array_list.c (gl_array_create_empty, gl_array_create): Add
6405         dispose_fn argument.
6406         (gl_array_remove_node, gl_array_remove_at, gl_array_list_free): Call
6407         dispose_fn on the dropped values.
6408         * lib/gl_carray_list.c (gl_carray_create_empty, gl_carray_create): Add
6409         dispose_fn argument.
6410         (gl_carray_remove_at, gl_carray_list_free): Call dispose_fn on the
6411         dropped values.
6412         * lib/gl_anyavltree_list2.h (gl_tree_create): Add dispose_fn argument.
6413         (gl_tree_remove_node): Call dispose_fn on the dropped value.
6414         * lib/gl_anyrbtree_list2.h (gl_tree_create): Add dispose_fn argument.
6415         (gl_tree_remove_node): Call dispose_fn on the dropped value.
6416         * lib/gl_anytree_list2.h (gl_tree_create_empty): Add dispose_fn
6417         argument.
6418         (gl_tree_list_free): Call dispose_fn on the dropped values.
6419         * lib/gl_anytreehash_list2.h (gl_tree_list_free): Call dispose_fn on
6420         the dropped values.
6421         * lib/gl_anylinked_list2.h (gl_linked_create_empty, gl_linked_create):
6422         Add dispose_fn argument.
6423         (gl_linked_remove_node, gl_linked_remove_at, gl_linked_list_free):
6424         Call dispose_fn on the dropped values.
6425         * lib/gl_sublist.c (gl_sublist_create_empty, gl_sublist_create_fill):
6426         Add dispose_fn argument.
6427         (gl_sublist_create): Initialize the 'dispose_fn' field.
6428         * lib/clean-temp.c (create_temp_dir, register_fd): Update.
6429         * tests/test-array_list.c (main): Update.
6430         * tests/test-carray_list.c (main): Update.
6431         * tests/test-avltree_list.c (main): Update.
6432         * tests/test-rbtree_list.c (main): Update.
6433         * tests/test-avltreehash_list.c (main): Update.
6434         * tests/test-rbtreehash_list.c (main): Update.
6435         * tests/test-linked_list.c (main): Update.
6436         * tests/test-linkedhash_list.c (main): Update.
6437         * tests/test-array_oset.c (main): Update.
6438
6439 2007-03-15  Bruno Haible  <bruno@clisp.org>
6440
6441         * lib/gl_oset.h (gl_setelement_dispose_fn): New type.
6442         (gl_oset_create_empty): Add dispose_fn argument.
6443         (struct gl_oset_implementation): Add dispose_fn argument to
6444         'create_empty' method.
6445         (struct gl_oset_impl_base): Add dispose_fn field.
6446         * lib/gl_oset.c (gl_oset_create_empty): Add dispose_fn argument.
6447         * lib/gl_array_oset.c (gl_array_create_empty): Add dispose_fn argument.
6448         (gl_array_remove_at, gl_array_free): Call dispose_fn on the dropped
6449         values.
6450         * lib/gl_anytree_oset.h (gl_tree_create_empty): Add dispose_fn argument.
6451         (gl_tree_oset_free): Call dispose_fn on the dropped values.
6452         * lib/gl_avltree_oset.c (gl_tree_remove_node): Call dispose_fn on the
6453         dropped value.
6454         * lib/gl_rbtree_oset.c (gl_tree_remove_node): Call dispose_fn on the
6455         dropped value.
6456         * tests/test-array_oset.c (main): Update.
6457         * tests/test-avltree_oset.c (main): Update.
6458         * tests/test-rbtree_oset.c (main): Update.
6459         * lib/gl_anytreehash_list1.h (add_to_bucket): Update.
6460
6461 2007-03-13  Bruno Haible  <bruno@clisp.org>
6462
6463         * tests/test-stdbool.c (i): Update after last patch.
6464
6465 2007-03-12  Bruno Haible  <bruno@clisp.org>
6466
6467         * lib/quotearg.c: Include <wctype.h> early, before the definition of
6468         the iswprint macro. Needed on Solaris 2.5.1.
6469
6470 2007-03-12  Bruno Haible  <bruno@clisp.org>
6471
6472         * tests/test-printf-frexp.c (main): Declare x as volatile.
6473
6474 2007-03-12  Simon Josefsson  <simon@josefsson.org>
6475
6476         * doc/gnulib.texi (Build robot for gnulib): New section.
6477
6478 2007-03-12  Jim Meyering  <jim@meyering.net>
6479
6480         * build-aux/bootstrap: New file.
6481         * build-aux/bootstrap.conf: New file, from coreutils.
6482
6483 2007-03-11  Bruno Haible  <bruno@clisp.org>
6484
6485         * m4/cycle-check.m4 (gl_CYCLE_CHECK): Require AC_C_INLINE.
6486
6487 2007-03-12  Simon Josefsson  <simon@josefsson.org>
6488
6489         * lib/des.h, lib/des.c, lib/gc-gnulib.c: Use gl_ namespace, to
6490         avoid collisions with 'des_setkey'.  Reported by Bruno Haible
6491         <bruno@clisp.org>.  Also change 'tripledes_' to '3des_'.
6492
6493 2007-03-11  Bruno Haible  <bruno@clisp.org>
6494
6495         * m4/locale-tr.m4 (gt_LOCALE_TR_UTF8): If the test program fails to
6496         compile, set LOCALE_TR_UTF8 to 'none' instead of empty.
6497
6498 2007-03-11  Bruno Haible  <bruno@clisp.org>
6499
6500         * lib/stdint_.h (INT64_MIN, INTMAX_MIN): Avoid using the ~INT..._MAX
6501         formula. Needed for SunPRO C 5.0.
6502
6503 2007-03-11  Bruno Haible  <bruno@clisp.org>
6504
6505         * modules/long-options (Depends-on): Add getopt.
6506
6507 2007-03-11  Bruno Haible  <bruno@clisp.org>
6508
6509         * modules/modechange (Depends-on): Add stdbool.
6510
6511 2007-03-11  Bruno Haible  <bruno@clisp.org>
6512
6513         * modules/i-ring (Depends-on): Add stdbool.
6514
6515 2007-03-11  Bruno Haible  <bruno@clisp.org>
6516
6517         * modules/gc-des (Depends-on): Add stdbool.
6518
6519 2007-03-11  Bruno Haible  <bruno@clisp.org>
6520
6521         * m4/mktime.m4 (gl_PREREQ_MKTIME): Require AC_C_INLINE.
6522
6523 2007-03-11  Bruno Haible  <bruno@clisp.org>
6524
6525         * m4/mempcpy.m4 (gl_FUNC_MEMPCPY): Require AC_C_RESTRICT.
6526
6527 2007-03-11  Bruno Haible  <bruno@clisp.org>
6528
6529         * lib/unistr/u32-mbtouc-unsafe.c (u32_mbtouc_unsafe): Fix syntax error.
6530
6531 2007-03-11  Bruno Haible  <bruno@clisp.org>
6532
6533         * lib/vasnprintf.c (sprintf): Undefine.
6534
6535 2007-03-11  Bruno Haible  <bruno@clisp.org>
6536
6537         * lib/isnan.c (rpl_isnan, rpl_isnanl): Work around bug regarding
6538         initializers in SunPRO C and Compaq C compilers.
6539
6540 2007-03-11  Bruno Haible  <bruno@clisp.org>
6541
6542         * lib/gl_array_oset.c (gl_array_iterator_next): Make pointer
6543         decrementing code ANSI C compliant.
6544
6545 2007-03-11  Bruno Haible  <bruno@clisp.org>
6546
6547         * lib/dummy.c [__sun]: Define a dummy variable, not just a typedef.
6548         Needed for Solaris 2.5.1 ranlib and SunPRO C 5.0.
6549
6550 2007-03-11  Bruno Haible  <bruno@clisp.org>
6551
6552         * tests/test-stdbool.c (s, d, e, xlcbug): Disable checks that gnulib's
6553         <stdbool.h> substitute doesn't pass.
6554
6555 2007-03-11  Bruno Haible  <bruno@clisp.org>
6556
6557         * lib/vasnprintf.c (snprintf): Undefine. Avoids an endless recursion.
6558
6559 2007-03-11  Bruno Haible  <bruno@clisp.org>
6560
6561         * gnulib-tool (func_create_megatestdir): Create also an autobuild
6562         script, for submission to autobuild.josefsson.org.
6563
6564 2007-03-10  Bruno Haible  <bruno@clisp.org>
6565
6566         * modules/canonicalize-lgpl-tests: New file.
6567         * tests/test-canonicalize-lgpl.sh: New file.
6568         * tests/test-canonicalize-lgpl.c: New file.
6569
6570         * modules/c-strcase-tests: New file.
6571         * tests/test-c-strcase.sh: New file.
6572         * tests/test-c-strcasecmp.c: New file.
6573         * tests/test-c-strncasecmp.c: New file.
6574
6575         * modules/atexit-tests: New file.
6576         * tests/test-atexit.sh: New file.
6577         * tests/test-atexit.c: New file.
6578
6579 2007-03-10  Bruno Haible  <bruno@clisp.org>
6580
6581         * tests/test-binary-io.sh: Use temporary filenames that are not so
6582         likely to clash with those of other tests (in a parallel make).
6583         * tests/test-binary-io.c: Likewise.
6584
6585 2007-03-10  Bruno Haible  <bruno@clisp.org>
6586
6587         * lib/fseterr.c (fseterr): Port to Solaris/SPARC64. Deactivate the
6588         fallback; use #error instead.
6589         Suggested by Simon Josefsson.
6590
6591 2007-03-10  Bruno Haible  <bruno@clisp.org>
6592
6593         * gnulib-tool (func_create_testdir): Treat MOSTLYCLEANFILES like
6594         CLEANFILES. Put spaces in each line of $cleaned_files, not only the
6595         first and the last.
6596
6597 2007-03-10  Bruno Haible  <bruno@clisp.org>
6598
6599         * lib/stdint_.h (uint_least64_t): Fix typo in last patch.
6600
6601 2007-03-10  Bruno Haible  <bruno@clisp.org>
6602
6603         * modules/snprintf-posix-tests (EXTRA_DIST): New variable. Needed for
6604         "make distcheck".
6605         * modules/sprintf-posix-tests (EXTRA_DIST): Likewise.
6606         * modules/vsnprintf-posix-tests (EXTRA_DIST): Likewise.
6607         * modules/vsprintf-posix-tests (EXTRA_DIST): Likewise.
6608
6609 2007-03-10  Bruno Haible  <bruno@clisp.org>
6610
6611         * modules/allocsa-tests (test_allocsa_SOURCES): Remove redundant
6612         variable.
6613         * modules/dirname-tests (test_dirname_SOURCES): Remove redundant
6614         variable.
6615
6616 2007-03-09  Eric Blake  <ebb9@byu.net>
6617         and Matthew Woehlke  <mw_triad@users.sourceforge.net>  (tiny change)
6618
6619         * lib/stdint_.h (int64_t, uint64_t): Don't undefine if 64-bit
6620         types are not being provided by gnulib.
6621         (GL_INT64_T, GL_UINT64_T): New witnesses of whether gnulib 64-bit
6622         types are supported.
6623
6624 2007-03-10  Bruno Haible  <bruno@clisp.org>
6625
6626         * lib/stdio_.h (__attribute__): New macro.
6627         (fprintf, vfprintf, printf, vprintf, snprintf, vsnprintf, sprintf,
6628         vsprintf): Specify __attribute__ __format__ for GCC.
6629         Suggested by Eric Blake.
6630
6631 2007-03-09  Bruno Haible  <bruno@clisp.org>
6632
6633         * modules/printf-posix-tests: New file.
6634         * tests/test-printf-posix.sh: New file.
6635         * tests/test-printf-posix.c: New file.
6636
6637         * modules/printf-posix: New file.
6638         * lib/printf.c: New file.
6639         * m4/printf-posix-rpl.m4: New file.
6640         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Set also GNULIB_PRINTF_POSIX,
6641         REPLACE_PRINTF.
6642         * lib/stdio_.h (printf): New declaration.
6643         (format, __format__, ____printf____, ____scanf____, ____strftime____,
6644         ____strfmon____): New macros.
6645         * modules/stdio (Makefile.am): Substitute also GNULIB_PRINTF_POSIX,
6646         REPLACE_PRINTF.
6647
6648 2007-03-09  Bruno Haible  <bruno@clisp.org>
6649
6650         * tests/test-vasnprintf-posix2.sh: New file.
6651         * tests/test-vasnprintf-posix2.c: New file.
6652         * modules/vasnprintf-posix-tests (Files): Add them and m4/locale-fr.m4.
6653         (configure.ac): Invoke gt_LOCALE_FR and gt_LOCALE_FR_UTF8.
6654         (Makefile.am): Activate test-vasnprintf-posix2.sh.
6655
6656         * lib/vasnprintf.c (VASNPRINTF): For the 'a' and 'A' directives, use
6657         a locale dependent decimal point, rather than always '.'.
6658
6659 2007-03-09  Eric Blake  <ebb9@byu.net>
6660
6661         * lib/stdlib_.h (EXIT_FAILURE): GNU code expects this to be 1, in
6662         spite of platforms like Tandem/NSK that define it to -1.
6663
6664 2007-03-08  Bruno Haible  <bruno@clisp.org>
6665
6666         * modules/vprintf-posix-tests: New file.
6667         * tests/test-vprintf-posix.sh: New file.
6668         * tests/test-vprintf-posix.c: New file.
6669         * tests/test-printf-posix.h: New file.
6670
6671         * modules/vprintf-posix: New file.
6672         * lib/vprintf.c: New file.
6673         * m4/vprintf-posix.m4: New file.
6674         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Set also GNULIB_VPRINTF_POSIX,
6675         REPLACE_VPRINTF.
6676         * lib/stdio_.h (vprintf): New declaration.
6677         * modules/stdio (Makefile.am): Substitute also GNULIB_VPRINTF_POSIX,
6678         REPLACE_VPRINTF.
6679
6680 2007-03-08  Bruno Haible  <bruno@clisp.org>
6681
6682         * modules/fprintf-posix-tests: New file.
6683         * tests/test-fprintf-posix.sh: New file.
6684         * tests/test-fprintf-posix.c: New file.
6685
6686         * modules/fprintf-posix: New file.
6687         * lib/fprintf.c: New file.
6688         * m4/fprintf-posix.m4: New file.
6689         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Set also GNULIB_FPRINTF_POSIX,
6690         REPLACE_FPRINTF.
6691         * lib/stdio_.h (fprintf): New declaration.
6692         * modules/stdio (Makefile.am): Substitute also GNULIB_FPRINTF_POSIX,
6693         REPLACE_FPRINTF.
6694
6695 2007-03-08  Bruno Haible  <bruno@clisp.org>
6696
6697         * modules/vfprintf-posix-tests: New file.
6698         * tests/test-vfprintf-posix.sh: New file.
6699         * tests/test-vfprintf-posix.c: New file.
6700         * tests/test-fprintf-posix.h: New file.
6701         * tests/test-fprintf-posix.out: New file.
6702
6703         * modules/vfprintf-posix: New file.
6704         * lib/vfprintf.c: New file.
6705         * m4/vfprintf-posix.m4: New file.
6706         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Set also GNULIB_VFPRINTF_POSIX,
6707         REPLACE_VFPRINTF.
6708         * lib/stdio_.h (vfprintf): New declaration.
6709         * modules/stdio (Makefile.am): Substitute also GNULIB_VFPRINTF_POSIX,
6710         REPLACE_VFPRINTF.
6711
6712 2007-03-08  Bruno Haible  <bruno@clisp.org>
6713
6714         * lib/stdio_.h: Treat __need___FILE like __need_FILE.
6715
6716 2007-03-08  Bruno Haible  <bruno@clisp.org>
6717
6718         * m4/snprintf-posix.m4 (gl_FUNC_SNPRINTF_POSIX): Use 'case' statements
6719         instead of 'expr' invocations.
6720         * m4/sprintf-posix.m4 (gl_FUNC_SPRINTF_POSIX): Likewise.
6721         * m4/vasnprintf-posix.m4 (gl_FUNC_VASNPRINTF_POSIX): Likewise.
6722         * m4/vasprintf-posix.m4 (gl_FUNC_VASPRINTF_POSIX): Likewise.
6723         * m4/vsnprintf-posix.m4 (gl_FUNC_VSNPRINTF_POSIX): Likewise.
6724         * m4/vsprintf-posix.m4 (gl_FUNC_VSPRINTF_POSIX): Likewise.
6725         Suggested by Paul Eggert.
6726
6727 2007-03-08  Bruno Haible  <bruno@clisp.org>
6728
6729         * modules/fseterr-tests: New file.
6730         * tests/test-fseterr.c: New file.
6731
6732         * modules/fseterr: New file.
6733         * lib/fseterr.h: New file.
6734         * lib/fseterr.c: New file.
6735
6736 2007-03-08  Bruno Haible  <bruno@clisp.org>
6737
6738         * lib/fnmatch_.h: Convert tabs in the middle of lines to spaces.
6739         * lib/getopt_.h: Likewise.
6740         * lib/mbswidth.h: Likewise.
6741         * lib/setenv.h: Likewise.
6742         * lib/vasnprintf.h: Likewise.
6743         * lib/vasprintf.h: Likewise.
6744         * lib/verror.h: Likewise.
6745         * lib/xsetenv.h: Likewise.
6746         * lib/xvasprintf.h: Likewise.
6747
6748 2007-03-08  Jim Meyering  <jim@meyering.net>
6749
6750         * users.txt: Add parted.
6751
6752         * ChangeLog: Restore 1500 lines mistakenly removed from the end.
6753
6754 2007-03-07  Bruno Haible  <bruno@clisp.org>
6755
6756         * m4/printf.m4: Make the shell script snippets copy&pastable.
6757
6758 2007-03-02  Bruno Haible  <bruno@clisp.org>
6759
6760         * lib/netinet_in_.h: New file.
6761         * m4/netinet_in_h.m4 (gl_HEADER_NETINET_IN): Test whether netinet/in.h
6762         is self-contained. Set ABSOLUTE_NETINET_IN_H, HAVE_NETINET_IN_H.
6763         * modules/netinet_in (Files): Add lib/netinet_in_.h.
6764         (Depends-on): Add absolute-header.
6765         (Makefile.am): Substitute ABSOLUTE_NETINET_IN_H, HAVE_NETINET_IN_H
6766         into netinet/in.h.
6767
6768 2007-03-03  Bruno Haible  <bruno@clisp.org>
6769
6770         * lib/sys_select_.h: New file.
6771         * m4/sys_socket_h.m4 (gl_HEADER_SYS_SELECT): Test whether sys/select.h
6772         is self-contained. Set ABSOLUTE_SYS_SELECT_H, HAVE_SYS_SELECT_H.
6773         * modules/sys_select (Files): Add lib/sys_select_.h.
6774         (Depends-on): Add absolute-header.
6775         (Makefile.am): Substitute ABSOLUTE_SYS_SELECT_H, HAVE_SYS_SELECT_H
6776         into sys/select.h.
6777
6778 2007-03-02  Bruno Haible  <bruno@clisp.org>
6779
6780         * lib/socket_.h: If sys/socket.h exists, include that and <sys/types.h>
6781         before it. Turn HAVE_WINSOCK2_H and HAVE_WS2TCPIP_H into configute-time
6782         values.
6783         * m4/sys_socket_h.m4 (gl_HEADER_SYS_SOCKET): Test also whether
6784         <sys/socket.h> is self-contained. Set ABSOLUTE_SYS_SOCKET_H,
6785         HAVE_SYS_SOCKET_H, HAVE_WINSOCK2_H, HAVE_WS2TCPIP_H.
6786         * modules/sys_socket (Depends-on): Add absolute-header.
6787         (Makefile.am): Substitute ABSOLUTE_SYS_SOCKET_H, HAVE_SYS_SOCKET_H,
6788         HAVE_WINSOCK2_H, HAVE_WS2TCPIP_H into sys/socket.h.
6789         (Include): Remove requirement of inclusion of <sys/types.h>.
6790
6791 2007-03-02  Bruno Haible  <bruno@clisp.org>
6792
6793         * lib/byteswap_.h (bswap_32): Fix formula.
6794
6795 2007-03-06  Bruno Haible  <bruno@clisp.org>
6796
6797         * modules/sprintf-posix-tests: New file.
6798         * tests/test-sprintf-posix.c: New file.
6799
6800         * modules/sprintf-posix: New file.
6801         * lib/sprintf.c: New file.
6802         * m4/sprintf-posix.m4: New file.
6803         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Set also GNULIB_SPRINTF_POSIX,
6804         REPLACE_SPRINTF.
6805         * lib/stdio_.h (sprintf): New declaration.
6806         * modules/stdio (Makefile.am): Substitute also GNULIB_SPRINTF_POSIX,
6807         REPLACE_SPRINTF.
6808
6809 2007-03-06  Bruno Haible  <bruno@clisp.org>
6810
6811         * modules/vsprintf-posix-tests: New file.
6812         * tests/test-vsprintf-posix.c: New file.
6813         * tests/test-sprintf-posix.h: New file.
6814
6815         * modules/vsprintf-posix: New file.
6816         * lib/vsprintf.c: New file.
6817         * m4/vsprintf-posix.m4: New file.
6818         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Set also GNULIB_VSPRINTF_POSIX,
6819         REPLACE_VSPRINTF.
6820         * lib/stdio_.h (vsprintf): New declaration.
6821         * modules/stdio (Makefile.am): Substitute also GNULIB_VSPRINTF_POSIX,
6822         REPLACE_VSPRINTF.
6823
6824 2007-03-06  Bruno Haible  <bruno@clisp.org>
6825
6826         * modules/vsnprintf (Depend-on): Remove minmax.
6827
6828 2007-03-06  Bruno Haible  <bruno@clisp.org>
6829
6830         * modules/snprintf-posix-tests: New file.
6831         * tests/test-snprintf-posix.c: New file.
6832
6833         * modules/snprintf-posix: New file.
6834         * m4/snprintf-posix.m4: New file.
6835         * m4/snprintf.m4 (gl_REPLACE_SNPRINTF): New macro, extracted from
6836         gl_FUNC_SNPRINTF.
6837         (gl_FUNC_SNPRINTF): Invoke it.
6838         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Set also REPLACE_SNPRINTF.
6839         * lib/stdio_.h (snprintf): Define as a replacement if REPLACE_SNPRINTF
6840         is set.
6841         * modules/stdio (Makefile.am): Substitute also REPLACE_SNPRINTF.
6842
6843 2007-03-06  Bruno Haible  <bruno@clisp.org>
6844
6845         * modules/vsnprintf-posix-tests: New file.
6846         * tests/test-vsnprintf-posix.c: New file.
6847         * tests/test-snprintf-posix.h: New file.
6848
6849         * modules/vsnprintf-posix: New file.
6850         * m4/vsnprintf-posix.m4: New file.
6851         * m4/vsnprintf.m4 (gl_REPLACE_VSNPRINTF): New macro, extracted from
6852         gl_FUNC_VSNPRINTF.
6853         (gl_FUNC_VSNPRINTF): Invoke it.
6854         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Set also REPLACE_VSNPRINTF.
6855         * lib/stdio_.h (vsnprintf): Define as a replacement if
6856         REPLACE_VSNPRINTF is set.
6857         * modules/stdio (Makefile.am): Substitute also REPLACE_VSNPRINTF.
6858
6859 2007-03-06  Bruno Haible  <bruno@clisp.org>
6860
6861         * m4/vasnprintf.m4 (gl_REPLACE_VASNPRINTF): Test for vasnprintf here.
6862         * m4/vasprintf-posix.m4 (gl_FUNC_VASPRINTF_POSIX): ... not here.
6863
6864 2007-03-06  Bruno Haible  <bruno@clisp.org>
6865
6866         * lib/math_.h (acosl): Declare also if HAVE_DECL_ACOSL is set.
6867         (asinl): Declare also if HAVE_DECL_ASINL is set.
6868         (atanl): Declare also if HAVE_DECL_ATANL is set.
6869         (ceill): Declare also if HAVE_DECL_CEILL is set.
6870         (cosl): Declare also if HAVE_DECL_COSL is set.
6871         (expl): Declare also if HAVE_DECL_EXPL is set.
6872         (floorl): Declare also if HAVE_DECL_FLOORL is set.
6873         (frexpl): Declare also if HAVE_DECL_FREXPL is set.
6874         (ldexpl): Declare also if HAVE_DECL_LDEXPL is set.
6875         (logl): Declare also if HAVE_DECL_LOGL is set.
6876         (sinl): Declare also if HAVE_DECL_SINL is set.
6877         (sqrtl): Declare also if HAVE_DECL_SQRTL is set.
6878         (tanl): Declare also if HAVE_DECL_TANL is set.
6879         * modules/math (Makefile.am): Substitute the values of HAVE_DECL_*.
6880         * m4/math_h.m4 (gl_MATH_H_DEFAULTS): Set HAVE_DECL_* to 1.
6881         * m4/printf-frexpl.m4 (gl_FUNC_PRINTF_FREXPL): Fix tests for the
6882         declaration of frexpl, ldexpl.
6883         * modules/printf-frexpl (Depends-on): Add math.
6884         * lib/printf-frexp.c (frexpl, ldexpl): Undo last change.
6885
6886 2007-03-05  Bruno Haible  <bruno@clisp.org>
6887
6888         * m4/printf-frexpl.m4 (gl_FUNC_PRINTF_FREXPL): Also test whether
6889         frexpl and ldexpl are declared.
6890         * lib/printf-frexp.c (frexpl, ldexpl): Provide fallback declarations.
6891
6892 2007-03-05  Bruno Haible  <bruno@clisp.org>
6893
6894         * gnulib-tool (func_get_automake_snippet): Don't synthesize an
6895         EXTRA_lib_SOURCES augmentation for the relocatable-prog-wrapper module.
6896
6897 2007-03-05  Bruno Haible  <bruno@clisp.org>
6898
6899         * lib/stdio_.h: Include <stddef.h>.
6900
6901 2007-03-05  Bruno Haible  <bruno@clisp.org>
6902
6903         * m4/printf.m4 (gl_SNPRINTF_DIRECTIVE_N): New macro.
6904
6905 2007-03-05  Bruno Haible  <bruno@clisp.org>
6906
6907         * m4/printf.m4: Update with info about OpenBSD 3.9, HP-UX 10.20,
6908         NetBSD 4, from Ralf Wildenhues.
6909
6910 2007-03-04  Bruno Haible  <bruno@clisp.org>
6911
6912         * lib/vasprintf.h: Update #if logic for the case when the functions
6913         exist but are overridden.
6914
6915 2007-03-04  Bruno Haible  <bruno@clisp.org>
6916
6917         * m4/printf.m4 (gl_PRINTF_DIRECTIVE_A): Exclude two buggy
6918         implementations: glibc-2.4 and MacOS X 10.3.
6919         * tests/test-vasnprintf-posix.c (test_function): Test also the case
6920         that exhibits the bugs in glibc-2.4 and MacOS X 10.3.
6921         * tests/test-vasprintf-posix.c (test_function): Likewise.
6922
6923 2007-03-04  Bruno Haible  <bruno@clisp.org>
6924
6925         * modules/vasprintf-posix-tests: New file.
6926         * tests/test-vasprintf-posix.c: New file.
6927
6928         * modules/vasprintf-posix: New file.
6929         * lib/vasprintf.h (asprintf, vasprintf): Rename if REPLACE_VASPRINTF is
6930         defined.
6931         * m4/vasprintf-posix.m4: New file.
6932         * m4/vasprintf.m4 (gl_REPLACE_VASPRINTF): New macro, extracted from
6933         gl_FUNC_VASPRINTF.
6934         (gl_FUNC_VASPRINTF): Invoke it.
6935         * m4/vasnprintf.m4 (gl_REPLACE_VASNPRINTF): Define REPLACE_VASNPRINTF
6936         here.
6937         * m4/vasnprintf-posix.m4 (gl_FUNC_VASNPRINTF_POSIX): Not here.
6938
6939 2007-03-04  Bruno Haible  <bruno@clisp.org>
6940
6941         * lib/sys_time_.h: Rename GETTIMEOFDAY_REPLACEMENT to
6942         REPLACE_GETTIMEOFDAY.
6943         * modules/sys_time (Makefile.am): Likewise.
6944         * m4/sys_time_h.m4: Likewise.
6945         * m4/gettimeofday.m4: Likewise.
6946
6947 2007-03-04  Bruno Haible  <bruno@clisp.org>
6948
6949         * modules/vasnprintf-posix-tests: New file.
6950         * tests/test-vasnprintf-posix.c: New file.
6951
6952         * modules/vasnprintf-posix: New file.
6953         * lib/vasnprintf.c: Include isnan.h, isnanl.h, printf-frexp.h,
6954         printf-frexpl.h.
6955         (VASNPRINTF): Handle the 'a' and 'A' directives here, if needed.
6956         * lib/vasnprintf.h (asnprintf, vasnprintf): Rename if
6957         REPLACE_VASNPRINTF is defined.
6958         * m4/vasnprintf.m4 (gl_REPLACE_VASNPRINTF): New macro, extracted from
6959         gl_FUNC_VASNPRINTF.
6960         (gl_FUNC_VASNPRINTF): Invoke it.
6961         * m4/vasnprintf-posix.m4: New file.
6962         * m4/printf.m4: New file.
6963
6964 2007-03-04  Bruno Haible  <bruno@clisp.org>
6965
6966         Compile progreloc.c only if --enable-relocatable is specified.
6967         * m4/relocatable.m4 (gl_RELOCATABLE): Arrange to compile progreloc.c
6968         if --enable-relocatable was specified.
6969         * modules/relocatable-prog (Makefile.am): Remove progreloc.c from
6970         lib_SOURCES.
6971
6972 2007-03-04  Jim Meyering  <jim@meyering.net>
6973
6974         * lib/acl.c (ACL_NOT_WELL_SUPPORTED): New macro.
6975         Use it consistently, rather than enumerating errno constants.
6976
6977 2007-03-04  Bruno Haible  <bruno@clisp.org>
6978
6979         * modules/xvasprintf-tests: New file.
6980         * tests/test-xvasprintf.c: New file.
6981
6982         * modules/vasprintf-tests: New file.
6983         * tests/test-vasprintf.c: New file.
6984
6985         * modules/vasnprintf-tests: New file.
6986         * tests/test-vasnprintf.c: New file.
6987
6988         * modules/vsnprintf-tests: New file.
6989         * tests/test-vsnprintf.c: New file.
6990
6991         * modules/snprintf-tests: New file.
6992         * tests/test-snprintf.c: New file.
6993
6994 2007-03-04  Bruno Haible  <bruno@clisp.org>
6995
6996         Compile relocatable.c only if --enable-relocatable is specified.
6997         * m4/relocatable-lib.m4 (gl_RELOCATABLE_LIBRARY_BODY): Renamed from
6998         gl_RELOCATABLE_LIBRARY.
6999         (gl_RELOCATABLE_LIBRARY, gl_RELOCATABLE_LIBRARY_SEPARATE): New macros.
7000         * m4/relocatable.m4 (gl_RELOCATABLE): Invoke gl_RELOCATABLE_LIBRARY.
7001         (gl_RELOCATABLE_BODY): Require gl_RELOCATABLE_LIBRARY_BODY instead of
7002         gl_RELOCATABLE_LIBRARY.
7003         * modules/relocatable-lib (configure.ac): Invoke gl_RELOCATABLE_LIBRARY.
7004         (Makefile.am): Remove lib_SOURCES.
7005         * modules/relocatable-lib-lgpl (configure.ac): Invoke
7006         gl_RELOCATABLE_LIBRARY.
7007         (Makefile.am): Remove lib_SOURCES.
7008         * modules/relocatable-prog (Makefile.am): Don't compile relocatable.c
7009         always.
7010         * modules/relocatable-prog-wrapper (configure.ac): Invoke
7011         gl_RELOCATABLE_LIBRARY_SEPARATE instead of gl_RELOCATABLE_LIBRARY.
7012
7013 2007-03-04  Bruno Haible  <bruno@clisp.org>
7014
7015         * modules/argmatch-tests: New file.
7016         * tests/test-argmatch.c: New file.
7017
7018         * tests/test-allocsa.c (main): Halve the number of loop runs.
7019
7020         * modules/alloca-opt-tests: New file.
7021         * tests/test-alloca-opt.c: New file.
7022
7023 2007-03-04  Jim Meyering  <jim@meyering.net>
7024
7025         Work around difference between Linux ACLs and Solaris 10 ZFS.
7026         * lib/acl.c (set_acl): Revert to using chmod_or_fchmod also
7027         for EINVAL.
7028
7029 2007-03-03  Bruno Haible  <bruno@clisp.org>
7030
7031         * modules/relocatable-prog (Depends-on): Add back progreloc's
7032         dependencies: canonicalize-lgpl, xalloc, xreadlink, stdbool, unistd.
7033
7034 2007-03-03  Bruno Haible  <bruno@clisp.org>
7035
7036         * modules/relocatable-lib-lgpl: Renamed from modules/relocatable-lib.
7037         * modules/relocatable-lib: New file.
7038
7039 2007-03-03  Bruno Haible  <bruno@clisp.org>
7040
7041         * modules/relocatable-prog: Renamed from modules/relocatable.
7042         * doc/relocatable-maint.texi: Talk about module 'relocatable-prog'.
7043
7044 2007-03-03  Bruno Haible  <bruno@clisp.org>
7045
7046         * modules/relocatable-script (Files): Add doc/relocatable.texi,
7047         m4/relocatable-lib.m4.
7048         (Depends-on): Remove 'relocatable'.
7049         (configure.ac): Add gl_RELOCATABLE_NOP.
7050
7051 2007-03-03  Bruno Haible  <bruno@clisp.org>
7052
7053         * modules/relocatable-prog-wrapper: New file.
7054         * modules/relocatable (Depends-on): Add it. Remove all other
7055         dependencies except progname.
7056         (Files): Remove build-aux/install-reloc, lib/relocwrapper.c.
7057
7058         * m4/strerror.m4 (gl_FUNC_STRERROR_SEPARATE): New macro.
7059         (gl_FUNC_STRERROR): Nop.
7060         * lib/strerror.c: Compile the file only if !HAVE_STRERROR.
7061
7062         * m4/setenv.m4 (gl_FUNC_SETENV_SEPARATE): New macro.
7063         * lib/setenv.c: Compile the file only if _LIBC || !HAVE_SETENV.
7064
7065         * m4/readlink.m4 (gl_FUNC_READLINK_SEPARATE): New macro.
7066         (gl_FUNC_READLINK): Update.
7067
7068         * m4/canonicalize-lgpl.m4 (gl_CANONICALIZE_LGPL_SEPARATE): New macro.
7069
7070 2007-03-03  Bruno Haible  <bruno@clisp.org>
7071
7072         * lib/xreadlink.c: Include <unistd.h> unconditionally.
7073         * modules/xreadlink (Depends-on): Add unistd.
7074         * modules/xreadlink-with-size (Depends-on): Likewise.
7075
7076 2007-03-03  Bruno Haible  <bruno@clisp.org>
7077
7078         * m4/setenv.m4 (gl_FUNC_SETENV, gl_FUNC_UNSETENV): New macros,
7079         extracted from gt_FUNC_SETENV.
7080         (gt_FUNC_SETENV): Remove macro.
7081         * modules/setenv (configure.ac): Add gl_FUNC_SETENV, gl_FUNC_UNSETENV,
7082         remove gt_FUNC_SETENV.
7083
7084 2007-03-03  Bruno Haible  <bruno@clisp.org>
7085
7086         * m4/relocatable-lib.m4 (gl_RELOCATABLE_LIBRARY): Define
7087         ENABLE_RELOCATABLE here.
7088         * m4/relocatable.m4 (gl_RELOCATABLE_BODY): Don't define it here.
7089
7090 2007-03-03  Bruno Haible  <bruno@clisp.org>
7091
7092         * modules/rbtreehash-list-tests (Depends-on): Add progname.
7093         * tests/test-rbtreehash_list.c: Include progname.h.
7094         (main): Call set_program_name.
7095
7096         * modules/rbtree-oset-tests (Depends-on): Add progname.
7097         * tests/test-rbtree_oset.c: Include progname.h.
7098         (main): Call set_program_name.
7099
7100         * modules/rbtree-list-tests (Depends-on): Add progname.
7101         * tests/test-rbtree_list.c: Include progname.h.
7102         (main): Call set_program_name.
7103
7104         * modules/linked-list-tests (Depends-on): Add progname.
7105         * tests/test-linked_list.c: Include progname.h.
7106         (main): Call set_program_name.
7107
7108 2007-03-03  Bruno Haible  <bruno@clisp.org>
7109
7110         * lib/glob-libc.h (_Restrict_): New macro, copied from lib/regex.h.
7111         All uses of __restrict changed to _Restrict_.
7112         * lib/glob_.h (__restrict): Remove macro.
7113
7114 2007-03-02  Bruno Haible  <bruno@clisp.org>
7115
7116         * modules/gettext (configure.ac): Require gettext infrastructure
7117         from version 0.16.1.
7118
7119 2007-03-02  Bruno Haible  <bruno@clisp.org>
7120
7121         * modules/linkedhash-list-tests (Depends-on): Add progname.
7122         * tests/test-linkedhash_list.c: Include progname.h.
7123         (main): Call set_program_name.
7124
7125         * modules/carray-list-tests (Depends-on): Add progname.
7126         * tests/test-carray_list.c: Include progname.h.
7127         (main): Call set_program_name.
7128
7129         * modules/avltreehash-list-tests (Depends-on): Add progname.
7130         * tests/test-avltreehash_list.c: Include progname.h.
7131         (main): Call set_program_name.
7132
7133         * modules/avltree-oset-tests (Depends-on): Add progname.
7134         * tests/test-avltree_oset.c: Include progname.h.
7135         (main): Call set_program_name.
7136
7137         * modules/avltree-list-tests (Depends-on): Add progname.
7138         * tests/test-avltree_list.c: Include progname.h.
7139         (main): Call set_program_name.
7140
7141         * modules/array-oset-tests (Depends-on): Add progname.
7142         * tests/test-array_oset.c: Include progname.h.
7143         (main): Call set_program_name.
7144
7145         * modules/array-list-tests (Depends-on): Add progname.
7146         * tests/test-array_list.c: Include progname.h.
7147         (main): Call set_program_name.
7148
7149         * modules/argp-tests (Depends-on): Add progname.
7150         * tests/test-argp.c: Include argp.h first. Include progname.h.
7151         (main): Call set_program_name.
7152
7153 2007-03-02  Paul Eggert  <eggert@cs.ucla.edu>
7154
7155         * doc/gnulib-tool.texi (Initial import): Reword description of
7156         _FILE_OFFSET_BITS and _GNU_SOURCE, since they sometimes have a
7157         limited effect even if defined after the first system include.
7158
7159 2007-03-01  Bruno Haible  <bruno@clisp.org>
7160
7161         * build-aux/config.libpath: Update to libtool-1.5.22.
7162         Reported by Albert Chin <bug-gnulib@mlists.thewrittenword.com>.
7163
7164 2007-03-01  Bruno Haible  <bruno@clisp.org>
7165
7166         * doc/relocatable-maint.texi: Recommend to set foo_CPPFLAGS, not
7167         foo_CFLAGS.
7168         Reported by Ralf Wildenhues.
7169
7170 2007-03-01  Bruno Haible  <bruno@clisp.org>
7171
7172         * build-aux/install-reloc: Remove object files left over by some
7173         compilers.
7174         Reported by Ralf Wildenhues.
7175
7176 2007-03-01  Bruno Haible  <bruno@clisp.org>
7177
7178         * build-aux/install-reloc: Break long lines.
7179
7180 2007-03-01  Bruno Haible  <bruno@clisp.org>
7181
7182         * doc/relocatable.texi: Document that it may not work on OpenBSD.
7183         Reported by Ralf Wildenhues.
7184
7185 2007-03-01  Bruno Haible  <bruno@clisp.org>
7186
7187         * doc/gnulib-tool.texi (Initial import): Remove paragraph about
7188         include ordering constraints.
7189
7190 2007-03-01  Paul Eggert  <eggert@cs.ucla.edu>
7191
7192         Followup to the 2007-02-12 patch, using suggestions from Bruno Haible in
7193         <http://lists.gnu.org/archive/html/bug-gnulib/2007-02/msg00136.html>.
7194         * doc/gnulib-tool.texi (Initial import): Mention _FILE_OFFSET_BITS
7195         as another example.
7196         * lib/time_.h: Fix misspelling.
7197         * m4/nanosleep.m4 (gl_FUNC_NANOSLEEP):
7198         Require gl_HEADER_TIME_H_DEFAULTS.
7199         * m4/strptime.m4 (gl_FUNC_STRPTIME): Likewise.
7200         * m4/time_r.m4 (gl_TIME_R): Likewise.
7201         * m4/timegm.m4 (gl_FUNC_TIMEGM): Likewise.
7202
7203 2007-03-01  Bruno Haible  <bruno@clisp.org>
7204
7205         * m4/utimecmp.m4 (gl_UTIMECMP): Don't require gl_TIMESPEC.
7206         * m4/utimens.m4 (gl_UTIMENS): Likewise.
7207
7208 2007-03-01  Jim Meyering  <jim@meyering.net>
7209
7210         * modules/xreadlink (Maintainer): Add my name.
7211         * modules/xreadlink-with-size (Depends-on): Alphabetize.
7212
7213 2007-02-26  Ben Pfaff  <blp@cs.stanford.edu>
7214             Bruno Haible  <bruno@clisp.org>
7215
7216         * build-aux/install-reloc: Compile also c-ctype.c.
7217         * build-aux/relocatable.sh.in: New file.
7218         * doc/relocatable.texi: New file.
7219         * doc/relocatable-maint.texi: New file.
7220         * doc/gnulib.texi: Include relocatable-maint.texi.
7221         * lib/progreloc.c: Include unistd.h unconditionally.
7222         * lib/relocwrapper.c: Include unistd.h unconditionally.
7223         Include c-ctype.h.
7224         (add_dotbin): Use c_tolower.
7225         * m4/relocatable-lib.m4: New file, extracted from m4/relocatable.m4.
7226         (gl_RELOCATABLE_LIBRARY): Renamed from AC_RELOCATABLE_LIBRARY.
7227         (gl_RELOCATABLE_NOP): Renamed from AC_RELOCATABLE_NOP.
7228         * m4/relocatable.m4 (AC_RELOCATABLE_LIBRARY, AC_RELOCATABLE_NOP): Move
7229         to m4/relocatable-lib.m4.
7230         (gl_RELOCATABLE): Renamed from AC_RELOCATABLE. Set also
7231         RELOCATABLE_CONFIG_H_DIR, RELOCATABLE_SRC_DIR, RELOCATABLE_BUILD_DIR.
7232         (gl_RELOCATABLE_BODY): Renamed from AC_RELOCATABLE_BODY. Don't
7233         require obsolete macro AC_EXEEXT. Don't check for unistd.h. Don't set
7234         SET_RELOCATABLE. Instead set RELOCATABLE_LDFLAGS, INSTALL_PROGRAM_ENV.
7235         * modules/relocatable: New file.
7236         * modules/relocatable-lib: New file.
7237         * modules/relocatable-script: New file.
7238
7239 2007-02-28  Bruno Haible  <bruno@clisp.org>
7240
7241         Import --enable-relocatable infrastructure.
7242         * build-aux/config.libpath: New file, from GNU gettext.
7243         * build-aux/install-reloc: New file, from GNU gettext.
7244         * build-aux/reloc-ldflags: New file, from GNU gettext.
7245         * lib/relocatable.h: New file, from GNU gettext.
7246         * lib/relocatable.c: New file, from GNU gettext.
7247         * lib/relocwrapper.c: New file, from GNU gettext.
7248         * m4/relocatable.m4: New file, from GNU gettext.
7249
7250 2007-02-28  Bruno Haible  <bruno@clisp.org>
7251
7252         * MODULES.html.sh (File system functions): Add xreadlink-with-size.
7253
7254         * modules/xreadlink: New file, from GNU gettext with modifications.
7255         * lib/xreadlink.c: New file, from GNU gettext.
7256         * lib/xreadlink.h: Add comments.
7257         (xreadlink): New declaration.
7258
7259         * modules/xreadlink-with-size: Renamed from modules/xreadlink.
7260         (Files): Remove m4/xreadlink.m4. Replace lib/xreadlink.c with
7261         lib/xreadlink-with-size.c.
7262         (configure.ac): Remove gl_XREADLINK invocation.
7263         (Makefile.am): Augment lib_SOURCES.
7264         * m4/xreadlink.m4: Remove file.
7265         * lib/xreadlink-with-size.c: Renamed from lib/xreadlink.c.
7266         (xreadlink_with_size): Renamed from xreadink.
7267         * lib/xreadlink.h (xreadlink_with_size): Renamed from xreadink.
7268         * modules/canonicalize (Depends-on): Replace xreadlink with
7269         xreadlink-with-size.
7270         * lib/canonicalize.c (canonicalize_filename_mode): Update.
7271
7272 2007-02-25  Jim Meyering  <jim@meyering.net>
7273
7274         * build-aux/announce-gen: When complaining about excess arguments,
7275         list them.
7276
7277 2007-02-25  Paul Eggert  <eggert@cs.ucla.edu>
7278
7279         * README: Document signed integer overflow situation more
7280         accurately.
7281
7282 2007-02-25  Bruno Haible  <bruno@clisp.org>
7283
7284         * lib/vasnprintf.c (VASNPRINTF): Fix estimate of size needed for a
7285         'a' or 'A' conversion.
7286
7287 2007-02-25  Bruno Haible  <bruno@clisp.org>
7288
7289         * modules/filename: Renamed from modules/pathname.
7290         (Files): Replace lib/pathname.h with lib/filename.h. Replace
7291         lib/concatpath.c with lib/concat-filename.c.
7292         (Makefile.am): Update.
7293         (Include): Replace pathname.h with filename.h.
7294         * lib/filename.h: Renamed from lib/pathname.h.
7295         (concatenated_filename): Renamed from concatenated_pathname.
7296         * lib/concat-filename.c: Renamed from lib/concatpath.c.
7297         (concatenated_filename): Renamed from concatenated_pathname.
7298         * lib/findprog.c: Include filename.h instead of pathname.h.
7299         (find_in_path): Update.
7300         * lib/javacomp.c: Include filename.h instead of pathname.h.
7301         (is_envjavac_gcj43_usable, is_envjavac_oldgcj_14_14_usable,
7302         is_envjavac_oldgcj_14_13_usable, is_envjavac_nongcj_usable,
7303         is_gcj_present, is_gcj43_usable, is_oldgcj_14_14_usable,
7304         is_oldgcj_14_13_usable, is_javac_usable): Update.
7305         * lib/javaexec.c: Include filename.h instead of pathname.h.
7306         (execute_java_class): Update.
7307         * modules/findprog: Update.
7308         * modules/javacomp: Update.
7309         * modules/javaexec: Update.
7310         * MODULES.html.sh (File system functions): Add 'filename', remove
7311         'pathname'.
7312
7313 2007-02-25  Bruno Haible  <bruno@clisp.org>
7314
7315         * modules/printf-frexpl-tests: New file.
7316         * tests/test-printf-frexpl.c: New file.
7317
7318         * modules/printf-frexpl: New file.
7319         * lib/printf-frexpl.h: New file.
7320         * lib/printf-frexpl.c: New file.
7321         * m4/printf-frexpl.m4: New file.
7322
7323 2007-02-25  Bruno Haible  <bruno@clisp.org>
7324
7325         * modules/printf-frexp-tests: New file.
7326         * tests/test-printf-frexp.c: New file.
7327
7328         * modules/printf-frexp: New file.
7329         * lib/printf-frexp.h: New file.
7330         * lib/printf-frexp.c: New file.
7331         * m4/printf-frexp.m4: New file.
7332
7333 2007-02-25  Bruno Haible  <bruno@clisp.org>
7334
7335         Assume automake >= 1.10 for the tests.
7336         * modules/arcfour-tests (TESTS): Remove $(EXEEXT) suffix.
7337         * modules/arctwo-tests: Likewise.
7338         * modules/argp-tests: Likewise.
7339         * modules/avltree-list-tests: Likewise.
7340         * modules/avltree-oset-tests: Likewise.
7341         * modules/avltreehash-list-tests: Likewise.
7342         * modules/carray-list-tests: Likewise.
7343         * modules/crc-tests: Likewise.
7344         * modules/des-tests: Likewise.
7345         * modules/gc-arcfour-tests: Likewise.
7346         * modules/gc-arctwo-tests: Likewise.
7347         * modules/gc-des-tests: Likewise.
7348         * modules/gc-hmac-md5-tests: Likewise.
7349         * modules/gc-hmac-sha1-tests: Likewise.
7350         * modules/gc-md2-tests: Likewise.
7351         * modules/gc-md4-tests: Likewise.
7352         * modules/gc-md5-tests: Likewise.
7353         * modules/gc-pbkdf2-sha1-tests: Likewise.
7354         * modules/gc-rijndael-tests: Likewise.
7355         * modules/gc-sha1-tests: Likewise.
7356         * modules/gc-tests: Likewise.
7357         * modules/getaddrinfo-tests: Likewise.
7358         * modules/hmac-md5-tests: Likewise.
7359         * modules/hmac-sha1-tests: Likewise.
7360         * modules/linked-list-tests: Likewise.
7361         * modules/linkedhash-list-tests: Likewise.
7362         * modules/lock-tests: Likewise.
7363         * modules/md2-tests: Likewise.
7364         * modules/md4-tests: Likewise.
7365         * modules/md5-tests: Likewise.
7366         * modules/rbtree-list-tests: Likewise.
7367         * modules/rbtree-oset-tests: Likewise.
7368         * modules/rbtreehash-list-tests: Likewise.
7369         * modules/read-file-tests: Likewise.
7370         * modules/rijndael-tests: Likewise.
7371         * modules/stdint-tests: Likewise.
7372         * modules/tls-tests: Likewise.
7373
7374 2007-02-24  Bruno Haible  <bruno@clisp.org>
7375
7376         * lib/isnanl.h (isnanl): Define through isnan if isnan is a macro.
7377         * m4/isnan.m4 (gl_FUNC_ISNAN_NO_LIBM): Don't check for isnan as a
7378         function; instead check whether isnan with a double argument links.
7379         * m4/isnanl.m4 (gl_FUNC_ISNANL_NO_LIBM): Don't check for isnanl as a
7380         function; instead check whether isnan with a 'long double' argument
7381         links.
7382         Reported by Eric Blake <ebb9@byu.net>.
7383
7384 2007-02-24  Bruno Haible  <bruno@clisp.org>
7385
7386         * lib/isnan.c: Support the 'long double' case if USE_LONG_DOUBLE is
7387         defined.
7388         * lib/isnanl.c: Remove all code. Just include isnan.c.
7389         * modules/isnanl-nolibm (Files): Add lib/isnan.c.
7390
7391 2007-02-25  Jim Meyering  <jim@meyering.net>
7392
7393         Avoid conflicting types for 'unsetenv' on FreeBSD.
7394         * lib/putenv.c (_unsetenv): Rename from "unsetenv", to avoid
7395         conflicting with FreeBSD's (5.0 and 6.1) function declaration
7396         in stdlib.h.
7397
7398 2007-02-24  Bruno Haible  <bruno@clisp.org>
7399
7400         * modules/isnanl-nolibm-tests: New file.
7401         * tests/test-isnanl.c: New file.
7402
7403         * modules/isnanl-nolibm: New file.
7404         * lib/isnanl.h: New file.
7405         * lib/isnanl.c: New file.
7406         * m4/isnanl.m4: New file.
7407
7408 2007-02-24  Bruno Haible  <bruno@clisp.org>
7409
7410         * modules/isnan-nolibm-tests: New file.
7411         * tests/test-isnan.c: New file.
7412
7413         * modules/isnan-nolibm: New file.
7414         * lib/isnan.h: New file.
7415         * lib/isnan.c: New file.
7416         * m4/isnan.m4: New file.
7417
7418 2007-02-24  Bruno Haible  <bruno@clisp.org>
7419
7420         * lib/frexpl.c (frexpl): Correct return values for x = 1.0L. Don't
7421         assume that an exponent fits in 20 bits.
7422
7423 2007-02-24  Jim Meyering  <jim@meyering.net>
7424
7425         * m4/regex.m4: Update the description of the configure-time option,
7426         --without-included-regex, to state accurately what the defaults are,
7427         and perhaps to give people an idea why using this option is risky.
7428
7429 2007-02-24  Paul Eggert  <eggert@cs.ucla.edu>
7430
7431         * m4/nanosleep.m4 (gl_FUNC_NANOSLEEP): Check for a nanosleep that
7432         loops on small arguments.  This attempts to avoid the problem
7433         Bruno Haible reported for AIX 4.3.2 in
7434         <http://lists.gnu.org/archive/html/bug-gnulib/2007-02/msg00309.html>.
7435
7436 2007-02-23  Bruno Haible  <bruno@clisp.org>
7437
7438         * m4/perl.m4 (gl_PERL): Require version 5.005, not 5.003.
7439         Needed for help2man.
7440
7441 2007-02-23  Karl Berry  <karl@gnu.org>
7442
7443         * doc/gnulib-tool.texi (CVS Issues): mention that when foo_.h
7444         exists, foo.h should be cvs-ignored, not committed.
7445
7446 2007-02-23  Eric Blake  <ebb9@byu.net>
7447
7448         * lib/getdate.h (includes):  Include <time.h>, not "timespec.h".
7449         * lib/stat-time.h (includes): Likewise.
7450         * lib/utimecmp.c (includes): Likewise.
7451         * lib/utimens.h (includes): Likewise.
7452         * lib/getdate.y (includes): Also include "timespec.h" for use
7453         internal to the module.
7454         * modules/utimens (Depends-on): Revert yesterday's patch.
7455         * modules/nanosleep (Depends-on): Add missing dependency.
7456
7457 2007-02-22  Bruno Haible  <bruno@clisp.org>
7458
7459         * lib/glob.c: Don't include getlogin_r.h.
7460
7461 2007-02-22  Jim Meyering  <jim@meyering.net>
7462
7463         * modules/utimens (Depends-on): Add timespec, required for
7464         utimens.h's inclusion of timespec.h.
7465
7466 2007-02-21  Paul Eggert  <eggert@cs.ucla.edu>
7467
7468         * lib/getcwd.c (__getcwd): Undo previous change; it mishandled
7469         long unreadable paths in GNU/Linux.  Problem reported by Andreas
7470         Schwab in
7471         <http://lists.gnu.org/archive/html/bug-gnulib/2007-02/msg00261.html>.
7472         I'll try to think of a better way to fix the Solaris problem.
7473
7474         * lib/getcwd.c (__getcwd): Don't assume getcwd (NULL, 0) works
7475         like glibc; on Solaris 10, it fails with errno == EINVAL.
7476         POSIX says the behavior is unspecified if the first argument is NULL,
7477         so play it safe and never pass NULL to the system getcwd.
7478
7479 2007-02-21  Jim Meyering  <jim@meyering.net>
7480
7481         * lib/gettimeofday.c (rpl_gettimeofday): Remove declaration
7482         of gettimeofday.  It would conflict with the one now always
7483         provided via sys_time_.h.  Reported by Matthew Woehlke, as
7484         an IRIX 6.5 build failure.
7485
7486 2007-02-20  Paul Eggert  <eggert@cs.ucla.edu>
7487
7488         Minor fixups to port to Solaris 10 with Sun C 5.8.
7489         * lib/getcwd.c [!_LIBC]: Include dirfd.h, since we use dirfd.
7490         * modules/getcwd (Depends-on): Add dirfd.
7491         * lib/putenv.c (putenv): #undef it.
7492         (rpl_putenv): New decl.
7493         (malloc, free): Include <stdlib.h> rather than prototyping separately.
7494
7495 2007-02-20  Bruno Haible  <bruno@clisp.org>
7496
7497         * modules/stdio-tests: New file.
7498         * tests/test-stdio.c: New file.
7499
7500         * modules/vsnprintf (Files): Remove lib/vsnprintf.h.
7501         (Depends-on): Add stdio.
7502         (configure.ac): Invoke gl_STDIO_MODULE_INDICATOR.
7503         (Include): Use <stdio.h> instead of vsnprintf.h.
7504         * m4/vsnprintf.m4 (gl_FUNC_VSNPRINTF): Require gl_STDIO_H_DEFAULTS. Set
7505         HAVE_DECL_VSNPRINTF.
7506         * lib/vsnprintf.c: Include <stdio.h> instead of vsnprintf.h.
7507
7508         * modules/snprintf (Files): Remove lib/snprintf.h.
7509         (Depends-on): Add stdio.
7510         (configure.ac): Invoke gl_STDIO_MODULE_INDICATOR.
7511         (Include): Use <stdio.h> instead of snprintf.h.
7512         * m4/snprintf.m4 (gl_FUNC_SNPRINTF): Require gl_STDIO_H_DEFAULTS. Set
7513         HAVE_DECL_SNPRINTF.
7514         * lib/snprintf.c: Include <stdio.h> instead of snprintf.h.
7515         * lib/getaddrinfo.c: Likewise.
7516
7517         * modules/stdio: New file.
7518         * lib/stdio_.h: New file, incorporating snprintf.h and vsnprintf.h.
7519         * lib/snprintf.h: Remove file.
7520         * lib/vsnprintf.h: Remove file.
7521         * lib/.cppi-disable: Remove snprintf.h.
7522         * m4/stdio_h.m4: New file.
7523         * MODULES.html.sh (Support for systems lacking ISO C 99): Add stdio.
7524
7525 2007-02-20  Jim Meyering  <jim@meyering.net>
7526
7527         * lib/ftruncate.c [HAVE_CHSIZE]: Document that this code is
7528         used by e.g., mingw.  From Bruno Haible.
7529
7530 2007-02-19  Bruno Haible  <bruno@clisp.org>
7531
7532         * lib/string_.h: Use "#pragma GCC system_header" to suppress some gcc
7533         warnings.
7534         Reported by Ben Pfaff <blp@cs.stanford.edu>.
7535
7536 2007-02-19  Bruno Haible  <bruno@clisp.org>
7537
7538         * m4/ftruncate.m4 (gl_FUNC_FTRUNCATE): Don't request a complaint mail
7539         from mingw users.
7540
7541 2007-02-19  Bruno Haible  <bruno@clisp.org>
7542
7543         * lib/stdlib_.h: Use "#pragma GCC system_header" to suppress some gcc
7544         warnings.
7545         Reported by Joel E. Denny <jdenny@ces.clemson.edu> via Paul Eggert.
7546
7547 2007-02-19  Jim Meyering  <jim@meyering.net>
7548
7549         Don't use FD after a successful "fdopendir (fd)".
7550         * lib/getcwd.c (__getcwd) [AT_FDCWD]: fdopendir (fd) usually closes fd.
7551         Reset it by calling dirfd on the just-obtained DIR*.
7552
7553         * m4/ftruncate.m4: Adjust comment to give this module a 3-year reprieve.
7554         Prompted by a report from Bruno Haible that mingw lacks ftruncate.
7555
7556 2007-02-18  Bruno Haible  <bruno@clisp.org>
7557
7558         * lib/readlink.c: Include <unistd.h>.
7559         * m4/readlink.m4 (gl_FUNC_READLINK): Require gl_UNISTD_H_DEFAULTS. Set
7560         HAVE_READLINK.
7561         * modules/readlink (Depends-on): Add unistd.
7562         (configure.ac): Invoke gl_UNISTD_MODULE_INDICATOR.
7563         (Include): Add <unistd.h>.
7564
7565         * lib/getlogin_r.h: Remove file.
7566         * lib/getlogin_r.c: Include <unistd.h> instead of getlogin_r.h.
7567         * m4/getlogin_r.m4 (gl_GETLOGIN_R_SUBSTITUTE): Remove macro.
7568         (gl_GETLOGIN_R): Inline it here. Require gl_UNISTD_H_DEFAULTS. Set
7569         HAVE_DECL_GETLOGIN_R.
7570         * modules/getlogin_r (Files): Remove lib/getlogin_r.h.
7571         (configure.ac): Invoke gl_UNISTD_MODULE_INDICATOR.
7572         (Include): Use <unistd.h> instead of getlogin_r.h.
7573
7574         * lib/getcwd.h: Remove file.
7575         * lib/getcwd.c: Include <unistd.h> instead of getcwd.h.
7576         * lib/xgetcwd.c: Likewise.
7577         * m4/getcwd.m4 (gl_FUNC_GETCWD): Require gl_UNISTD_H_DEFAULTS. Set
7578         REPLACE_GETCWD. Don't define __GETCWD_PREFIX.
7579         * modules/getcwd (Files): Remove lib/getcwd.h.
7580         (Depends-on): Add unistd.
7581         (configure.ac): Invoke gl_UNISTD_MODULE_INDICATOR.
7582         (Include): Use <unistd.h> instad of getcwd.h.
7583
7584         * lib/ftruncate.c: Include <unistd.h> first.
7585         * m4/ftruncate.m4 (gl_FUNC_FTRUNCATE): Require gl_UNISTD_H_DEFAULTS.
7586         Set HAVE_FTRUNCATE.
7587         * modules/ftruncate (Depends-on): Add unistd.
7588         (configure.ac): Invoke gl_UNISTD_MODULE_INDICATOR.
7589
7590         * lib/fchdir.c: Include <unistd.h> first.
7591         * lib/dirent_.h: Test REPLACE_FCHDIR, not FCHDIR_REPLACEMENT.
7592         * m4/fchdir.m4 (gl_FUNC_FCHDIR): Require gl_UNISTD_H_DEFAULTS instead
7593         of gl_HEADER_UNISTD_DEFAULTS. Set REPLACE_FCHDIR. Don't set UNISTD_H.
7594         * modules/fchdir (configure.ac): Invoke gl_UNISTD_MODULE_INDICATOR.
7595         (Makefile.am): Substitute also REPLACE_FCHDIR into dirent.h.
7596
7597         * lib/dup2.c: Include <unistd.h> first.
7598         * m4/dup2.m4 (gl_FUNC_DUP2): Require gl_UNISTD_H_DEFAULTS. Set
7599         HAVE_DUP2.
7600         * modules/dup2 (Depends-on): Add unistd.
7601         (configure.ac): Invoke gl_UNISTD_MODULE_INDICATOR.
7602
7603         * lib/chown.c: Include <unistd.h> first. Undefine chown later.
7604         * m4/chown.m4 (gl_FUNC_CHOWN): Require gl_UNISTD_H_DEFAULTS. Set
7605         REPLACE_CHOWN. Don't define chown as a macro here.
7606         * modules/chown (Depends-on): Add unistd.
7607         (configure.ac): Invoke gl_UNISTD_MODULE_INDICATOR.
7608
7609         * lib/unistd_.h: Test HAVE_UNISTD_H determined at configure time.
7610         Add definition for GL_LINK_WARNING.
7611         (chown, dup2): New declarations.
7612         (fchdir): Test REPLACE_FCHDIR, not FCHDIR_REPLACEMENT. Provide optional
7613         link warning.
7614         (ftruncate): New declaration.
7615         (getcwd): New declaration, taken from old getcwd.h.
7616         (getlogin_r): New declaration, taken from old getlogin_r.h.
7617         (readlink): New declaration.
7618         * m4/unistd_h.m4 (gl_UNISTD_H): Renamed from gl_HEADER_UNISTD. Don't
7619         set UNISTD_H. Inline gl_PREREQ_UNISTD. Set HAVE_UNISTD_H.
7620         (gl_PREREQ_UNISTD): Remove macro.
7621         (gl_UNISTD_MODULE_INDICATOR): New macro.
7622         (gl_UNISTD_H_DEFAULTS): Renamed from gl_HEADER_UNISTD_DEFAULTS. Set
7623         many new variables. Don't set UNISTD_H.
7624         * modules/unistd (Description): Change.
7625         (Depends-on): Add link-warning.
7626         (configure.ac): Update.
7627         (Makefile.am): Create unistd.h always. Substitute many new variables
7628         into it.
7629
7630 2007-02-18  Bruno Haible  <bruno@clisp.org>
7631
7632         * lib/stdlib_.h (getsubopt): New declaration, copied from getsubopt.h.
7633         * modules/stdlib (stdlib.h): Also substitute GNULIB_GETSUBOPT and
7634         HAVE_GETSUBOPT.
7635         * m4/stdlib_h.m4 (gl_STDLIB_H_DEFAULTS): Also initialize
7636         GNULIB_GETSUBOPT and HAVE_GETSUBOPT.
7637         * lib/getsubopt.h: Remove file.
7638         * modules/getsubopt (Files): Remove lib/getsubopt.h.
7639         (Depends-on): Add stdlib.
7640         (configure.ac): Invoke gl_STDLIB_MODULE_INDICATOR.
7641         (Includes): Use <stdlib.h> instead of getsubopt.h.
7642         * m4/getsubopt.m4 (gl_FUNC_GETSUBOPT): Require gl_STDLIB_H_DEFAULTS.
7643         Set HAVE_GETSUBOPT.
7644         * lib/getsubopt.c: Don't include getsubopt.h.
7645
7646 2007-02-18  Bruno Haible  <bruno@clisp.org>
7647
7648         * modules/fchdir (Depends-on): Add dup2.
7649
7650 2007-02-18  Bruno Haible  <bruno@clisp.org>
7651
7652         * lib/stdlib_.h: Handle glibc's special invocation convention
7653         specially.
7654
7655 2007-02-18  Bruno Haible  <bruno@clisp.org>
7656
7657         * modules/stdlib-tests: New file.
7658         * tests/test-stdlib.c: New file.
7659
7660         * modules/mkstemp (Files): Remove lib/mkstemp.h.
7661         (Depends-on): Add stdlib.
7662         (configure.ac): Invoke gl_STDLIB_MODULE_INDICATOR.
7663         (Includes): Use <stdlib.h> instead of mkstemp.h.
7664         * m4/mkstemp.m4 (gl_FUNC_MKSTEMP): Require gl_STDLIB_H_DEFAULTS. Set
7665         REPLACE_MKSTEMP. Remove definition of __MKSTEMP_PREFIX.
7666         * lib/mkstemp.c: Don't include mkstemp.h.
7667         * lib/mkstemp-safer.c: Include <stdlib.h> instead of mkstemp.h.
7668         * lib/stdlib--.h: Don't include mkstemp.h.
7669
7670         * modules/mkdtemp (Files): Remove lib/mkdtemp.h.
7671         (Depends-on): Add stdlib.
7672         (configure.ac): Invoke gl_STDLIB_MODULE_INDICATOR.
7673         (Includes): Use <stdlib.h> instead of mkdtemp.h.
7674         * m4/mkdtemp.m4 (gt_FUNC_MKDTEMP): Require gl_STDLIB_H_DEFAULTS. Set
7675         HAVE_MKDTEMP.
7676         * lib/mkdtemp.c: Don't include mkdtemp.h.
7677         * lib/clean-temp.c: Don't include mkdtemp.h.
7678
7679         * modules/exit (Files): Remove lib/exit.h.
7680         (Depends-on): Add stdlib.
7681         (Makefile.am): Remove lib_SOURCES.
7682         (Include): Use <stdlib.h> instead of exit.h.
7683         * lib/argmatch.c: Don't include exit.h.
7684         * lib/execute.c: Likewise.
7685         * lib/pagealign_alloc.c: Likewise.
7686         * lib/pipe.c: Likewise.
7687         * lib/wait-process.c: Likewise.
7688         * lib/copy-file.c: Include <stdlib.h> instead of exit.h.
7689         * lib/exitfail.c: Likewise.
7690         * lib/savewd.c: Likewise.
7691         * lib/xsetenv.c: Likewise.
7692
7693         * modules/stdlib: New file.
7694         * lib/stdlib_.h: New file, incorporating exit.h, mkdtemp.h, mkstemp.h
7695         and extra comments about mkstemp().
7696         * lib/exit.h: Remove file.
7697         * lib/mkdtemp.h: Remove file.
7698         * lib/mkstemp.h: Remove file.
7699         * m4/stdlib_h.m4: New file.
7700         * MODULES.html.sh (Support for systems lacking ANSI C 89): Add stdlib.
7701
7702 2007-02-18  Bruno Haible  <bruno@clisp.org>
7703
7704         * modules/math-tests: New file.
7705         * tests/test-math.c: New file.
7706
7707         * modules/math: New file.
7708         * modules/mathl (Files): Remove lib/mathl.h.
7709         (Depends-on): Add math.
7710         (Makefile.am): Don't mention mathl.h.
7711         (Include): Use <math.h> instead of mathl.h.
7712         * lib/math_.h: New file.
7713         * lib/mathl.h: Remove file.
7714         * lib/acosl.c: Include <config.h> and <math.h> first. Don't include
7715         mathl.h.
7716         * lib/asinl.c: Likewise.
7717         * lib/atanl.c: Likewise.
7718         * lib/ceill.c: Likewise.
7719         * lib/cosl.c: Likewise.
7720         * lib/expl.c: Likewise.
7721         * lib/floorl.c: Likewise.
7722         * lib/frexpl.c: Likewise.
7723         * lib/ldexpl.c: Likewise.
7724         * lib/logl.c: Likewise.
7725         * lib/sincosl.c: Likewise.
7726         * lib/sinl.c: Likewise.
7727         * lib/sqrtl.c: Likewise.
7728         * lib/tanl.c: Likewise.
7729         * lib/trigl.c: Likewise.
7730         * m4/math_h.m4: New file.
7731         * MODULES.html.sh (Mathematics): Add math.
7732
7733 2007-02-17  Bruno Haible  <bruno@clisp.org>
7734
7735         * modules/wctype-tests: New file.
7736         * tests/test-wctype.c: New file.
7737
7738         * modules/wchar-tests: New file.
7739         * tests/test-wchar.c: New file.
7740
7741         * modules/unistd-tests: New file.
7742         * tests/test-unistd.c: New file.
7743
7744         * modules/time-tests: New file.
7745         * tests/test-time.c: New file.
7746
7747         * modules/sysexits-tests: New file.
7748         * tests/test-sysexits.c: New file.
7749
7750         * modules/sys_time-tests: New file.
7751         * tests/test-sys_time.c: New file.
7752
7753         * modules/sys_stat-tests: New file.
7754         * tests/test-sys_stat.c: New file.
7755
7756         * modules/sys_socket-tests: New file.
7757         * tests/test-sys_socket.c: New file.
7758
7759         * modules/sys_select-tests: New file.
7760         * tests/test-sys_select.c: New file.
7761
7762         * modules/string-tests: New file.
7763         * tests/test-string.c: New file.
7764
7765         * modules/stdbool-tests: New file.
7766         * tests/test-stdbool.c: New file.
7767
7768         * modules/netinet_in-tests: New file.
7769         * tests/test-netinet_in.c: New file.
7770
7771         * modules/inttypes-tests: New file.
7772         * tests/test-inttypes.c: New file.
7773
7774         * modules/fcntl-tests: New file.
7775         * tests/test-fcntl.c: New file.
7776
7777         * modules/byteswap-tests: New file.
7778         * tests/test-byteswap.c: New file.
7779
7780         * modules/arpa_inet-tests: New file.
7781         * tests/test-arpa_inet.c: New file.
7782
7783 2007-02-17  Bruno Haible  <bruno@clisp.org>
7784
7785         * lib/inttypes_.h: Add definition for GL_LINK_WARNING.
7786         (imaxabs, imaxdiv, strtoimax, strtoumax): Don't declare the function
7787         if the corresponding module is not enabled. Emit link warnings if
7788         the function is used nevertheless.
7789         * m4/inttypes.m4 (gl_INTTYPES_H): Never use the existing <inttypes.h>.
7790         Don't AC_SUBST HAVE_DECL_IMAXABS, HAVE_DECL_IMAXDIV,
7791         HAVE_DECL_STRTOIMAX, HAVE_DECL_STRTOUMAX.
7792         (gl_INTTYPES_MODULE_INDICATOR, gl_INTTYPES_H_DEFAULTS): New macros.
7793         * modules/inttypes (Depends-on): Add link-warning.
7794         (Makefile.am): Copy the contents of build-aux/link-warning.h into
7795         inttypes.h. Substitute also GNULIB_IMAXABS, GNULIB_IMAXDIV,
7796         GNULIB_STRTOIMAX, GNULIB_STRTOUMAX.
7797         * modules/imaxabs (configure.ac): Invoke gl_INTTYPES_MODULE_INDICATOR.
7798         * modules/imaxdiv (configure.ac): Likewise.
7799         * modules/strtoimax (configure.ac): Likewise.
7800         * modules/strtoumax (configure.ac): Likewise.
7801
7802 2007-02-17  Bruno Haible  <bruno@clisp.org>
7803
7804         * m4/string_h.m4 (gl_HEADER_STRING_H_DEFAULTS): Include the contents of
7805         gl_STRING_MODULE_INDICATOR_DEFAULTS.
7806         (gl_STRING_MODULE_INDICATOR_DEFAULTS): Remove macro.
7807         (gl_HEADER_STRING_H_BODY, gl_STRING_MODULE_INDICATOR): Update.
7808
7809 2007-02-17  Bruno Haible  <bruno@clisp.org>
7810
7811         * modules/link-warning: New file.
7812         * build-aux/link-warning.h: New file, extracted from lib/string_.h.
7813         * lib/string_.h (GL_LINK_WARNING): Remove definition.
7814         * modules/string (Depends-on): Add link-warning.
7815         (Makefile.am): Copy the contents of build-aux/link-warning.h into
7816         string.h.
7817         * MODULES.html.sh (Support for building libraries and executables): Add
7818         link-warning.
7819
7820 2007-02-17  Bruno Haible  <bruno@clisp.org>
7821
7822         * lib/string_.h (memmem, mempcpy, memrchr, stpcpy, stpncpy, strcasecmp,
7823         strncasecmp, strchr, strchrnul, strdup, strndup, strnlen, strcspn,
7824         strpbrk, strspn, strrchr, strsep, strstr, strcasestr, strtok_r): Break
7825         long lines.
7826
7827 2007-02-17  Ben Pfaff  <blp@cs.stanford.edu>
7828             Bruno Haible  <bruno@clisp.org>
7829
7830         * modules/tmpfile: New file.
7831         * lib/tmpfile.c: New file.
7832         * m4/tmpfile.m4: New file.
7833         * MODULES.html.sh (func_all_modules): New section "Input/output".
7834
7835 2007-02-15  Bruno Haible  <bruno@clisp.org>
7836
7837         * lib/clean-temp.c [WIN32 && !CYGWIN]: Include <windows.h>.
7838         (supports_delete_on_close): New function.
7839         (open_temp, fopen_temp): Use _O_TEMPORARY when supported.
7840
7841 2007-02-14  Bruno Haible  <bruno@clisp.org>
7842
7843         * modules/mbspcasecmp-tests: New file.
7844         * tests/test-mbspcasecmp.sh: New file.
7845         * tests/test-mbspcasecmp.c: New file.
7846
7847         New module mbspcasecmp.
7848         * modules/mbspcasecmp: New file.
7849         * lib/mbspcasecmp.c: New file.
7850         * lib/string_.h (strncasecmp): Change warning message.
7851         (mbspcasecmp): New declaration.
7852         * m4/mbspcasecmp.m4: New file.
7853         * m4/string_h.m4 (gl_STRING_MODULE_INDICATOR_DEFAULTS): Initialize
7854         GNULIB_MBSPCASECMP.
7855         * modules/string (string.h): Also substitute GNULIB_MBSPCASECMP.
7856         * MODULES.html.sh (Internationalization functions): Add mbspcasecmp.
7857
7858 2007-02-14  Bruno Haible  <bruno@clisp.org>
7859
7860         * modules/mbsncasecmp-tests: New file.
7861         * tests/test-mbsncasecmp.sh: New file.
7862         * tests/test-mbsncasecmp.c: New file.
7863
7864         New module mbsncasecmp.
7865         * modules/mbsncasecmp: New file.
7866         * lib/mbsncasecmp.c: New file.
7867         * lib/string_.h (mbsncasecmp): New declaration.
7868         * m4/mbsncasecmp.m4: New file.
7869         * m4/string_h.m4 (gl_STRING_MODULE_INDICATOR_DEFAULTS): Initialize
7870         GNULIB_MBSNCASECMP.
7871         * modules/string (string.h): Also substitute GNULIB_MBSNCASECMP.
7872         * MODULES.html.sh (Internationalization functions): Add mbsncasecmp.
7873
7874 2007-02-14  Paul Eggert  <eggert@cs.ucla.edu>
7875
7876         * lib/exclude.c (FNM_EXTMATCH): Define if system does not.
7877         Verify that it doesn't overlap with our flags.
7878         (fnmatch_no_wildcards): Don't use strcasecmp or strncasecmp, which
7879         do not have the desired effect in multibyte locales; instead, use
7880         mbscasecmp.
7881         * modules/exclude (Depends-on): Depend on mbscasecmp, not strcase.
7882         Add dependency on xalloc.  Depend on fnmatch, not fnmatch-gnu, since
7883         we don't require GNU fnmatch ourselves (if our users require it, they
7884         should do so explicitly).
7885
7886         Fix regex code so it doesn't rely on strcasecmp.
7887         * lib/regex_internal.h: Include <langinfo.h> only if _LIBC is defined.
7888         Otherwise, include gnulib's langinfo.h.
7889         * lib/regcomp.c (init_dfa): Don't use strcasecmp, as it can have
7890         undesirable behavior in non-C locales.  Instead, rely on localecharset.
7891         * m4/regex.m4 (gl_PREREQ_REGEX): Don't require AM_LANGINFO_CODESET.
7892         * modules/regex (FILES): Remove m4/codeset.m4.
7893         (Depends-on): Add localcharset.  Remove strcase.
7894
7895 2007-02-13  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
7896
7897         * m4/unlinkdir.m4 (gl_UNLINKDIR): Fix m4 quoting bug.
7898         * m4/unlink-busy.m4 (gl_FUNC_UNLINK_BUSY_TEXT): Likewise.
7899
7900 2007-02-13  Bruno Haible  <bruno@clisp.org>
7901
7902         * m4/intdiv0.m4 (gt_INTDIV0): Assume ANSI C. Fix underquoting bug.
7903         Reported by Ralf Wildenhues <Ralf.Wildenhues@gmx.de>.
7904
7905 2007-02-12  Bruno Haible  <bruno@clisp.org>
7906
7907         * lib/string_.h (memmem, mempcpy, memrchr, stpcpy, stpncpy, strchrnul,
7908         strdup, strndup, strnlen, strpbrk, strsep, strtok_r): If
7909         GNULIB_POSIXCHECK and the gnulib module not enabled, provoke a link-
7910         time warning rather than a link error.
7911
7912 2007-02-12  Bruno Haible  <bruno@clisp.org>
7913
7914         * m4/locale-fr.m4 (gt_LOCALE_FR): Fix m4 quoting bug.
7915         * m4/locale-zh.m4 (gt_LOCALE_ZH_CN): Likewise.
7916         Reported by Ralf Wildenhues <Ralf.Wildenhues@gmx.de>.
7917
7918 2007-02-12  Paul Eggert  <eggert@cs.ucla.edu>
7919
7920         * lib/string_.h (strncasecmp): Fix typo: this macro takes 3
7921         args, not 2.
7922
7923 2007-02-12  Paul Eggert  <eggert@cs.ucla.edu>
7924
7925         New module 'time', so that apps can include <time.h> as per
7926         POSIX and GNU instead of separate include files like time_r.h
7927         and timegm.h.  This implementation tries out a simpler approach
7928         for replacing decls in standard include files (as compared to
7929         the string module), somewhat as an experiment.
7930
7931         * config/srclist.txt: Comment out mktime.c for now.
7932         * doc/gnulib-tool.texi (Initial import): Don't use time_r as an example
7933         since it doesn't apply any more.  Use generic wording instead.
7934         * MODULES.html.sh (Support for systems lacking POSIX:2001): New module
7935         'time'.
7936         * lib/time_.h, m4/time_h.m4, modules/time: New files.
7937         * lib/strptime.h, lib/time_r.h, lib/timegm.h: Remove.
7938         * lib/mktime.c: Include config.h depending on _LIBC, not HAVE_CONFIG_H.
7939         Don't include <sys/types.h>; no longer needed since we assume C89.
7940         * lib/mktime.c: Don't include "time_r.h"; no longer needed.
7941         * lib/strftime.c: Likewise.
7942         * lib/time_r.c: Likewise.
7943         * lib/nanosleep.c (nanosleep): #undef after include files, not before.
7944         * lib/nanosleep.c: Include <time.h> first, to check interface.
7945         * lib/strptime.c: Likewise.
7946         * lib/time_r.c: Likewise.
7947         * lib/timegm.c: Likewise.
7948         * lib/strptime.c: Don't include strptime.h or time_r.h; no longer
7949         needed.
7950         * lib/timegm.c: Don't include timegm.h; no longer needed.
7951         * lib/timespec.h: Don't include <sys/time.h> before <time.h>;
7952         time.h now handles any problems in that area.
7953         (struct timespec, nanosleep): Remove; time.h now arranges for these.
7954         * lib/xnanosleep.c: Don't include timespec.h; no longer needed now
7955         that time.h defines struct timespec.
7956         * m4/nanosleep.m4 (gl_FUNC_NANOSLEEP): Check that nanosleep is declared.
7957         Set REPLACE_NANOSLEEP.  Don't AC_DEFINE nanosleep; the time module now
7958         handles that.
7959         * m4/strptime.m4 (gl_FUNC_STPRTIME): Set REPLACE_STRPTIME.
7960         * m4/time_r.m4 (gl_TIME_R): Don't define HAVE_TIME_R_POSIX; no longer
7961         needed.  Set REPLACE_LOCALTIME.
7962         * m4/timegm.m4 (gl_FUNC_TIMEGM): Set REPLACE_TIMEGM.
7963         * m4/timespec.m4 (gl_CHECK_TYPE_STRUCT_TIMESPEC): Move to time_h.m4.
7964         (gl_TIMESPEC): Don't check for sys/time.h or struct timespec or
7965         nanosleep; time_h.m4 now does that.  Don't require
7966         gl_USE_SYSTEM_EXTENSIONS; no longer needed directly, and the time
7967         module handles this now.
7968         * modules/getdate (Depends-on): Remove timespec.  Add time.
7969         * modules/nanosleep (Depends-on): Likewise.
7970         * modules/stat-time (Depends-on): Likewise.
7971         * modules/nanosleep (Include): Include time.h, not timespec.h.
7972         * modules/strptime (Files): Remove lib/strptime.h.
7973         (Depends-on): Add extensions, time.
7974         (Include): Include time.h, not strptime.h.
7975         * modules/time_r (Files): Remove lib/time_r.h.
7976         (Depends-on): Add time.
7977         (Include): Include time.h, not time_r.h.
7978         * modules/timegm: Likewise.
7979         * modules/timespec (Description): Now does timespec-related decls
7980         of our own, instead of struct timespec itself.
7981         (Depends-on): Add time; remove extensions.
7982         (Maintainer): Add self.
7983         * modules/utimecmp (Depends-on): Add time; remove timespec.
7984         * modules/utimens (Depends-on): Likewise.
7985         * modules/xnanosleep (Depends-on): Likewise.
7986
7987 2007-02-11  Bruno Haible  <bruno@clisp.org>
7988
7989         * lib/c-strstr.c: Include allocsa.h.
7990         (knuth_morris_pratt): Use allocsa/freesa instead of malloc/free.
7991         * lib/c-strcasestr.c: Include allocsa.h.
7992         (knuth_morris_pratt): Use allocsa/freesa instead of malloc/free.
7993         * lib/strcasestr.c: Include allocsa.h.
7994         (knuth_morris_pratt): Use allocsa/freesa instead of malloc/free.
7995         * lib/mbsstr.c: Include allocsa.h.
7996         (knuth_morris_pratt_unibyte, knuth_morris_pratt_multibyte): Use
7997         allocsa/freesa instead of malloc/free.
7998         * lib/mbscasestr.c: Include allocsa.h.
7999         (knuth_morris_pratt_unibyte, knuth_morris_pratt_multibyte): Use
8000         allocsa/freesa instead of malloc/free.
8001         * modules/c-strstr (Depends-on): Add allocsa.
8002         * modules/c-strcasestr (Depends-on): Likewise.
8003         * modules/strcasestr (Depends-on): Likewise.
8004         * modules/mbsstr (Depends-on): Likewise.
8005         * modules/mbscasestr (Depends-on): Likewise.
8006
8007 2007-02-11  Bruno Haible  <bruno@clisp.org>
8008
8009         * lib/mbsspn.c (mbsspn): Fix bug. Remove unnecessary strlen call.
8010
8011         * modules/mbsspn-tests: New file.
8012         * tests/test-mbsspn.sh: New file.
8013         * tests/test-mbsspn.c: New file.
8014
8015 2007-02-11  Bruno Haible  <bruno@clisp.org>
8016
8017         * lib/mbspbrk.c (mbspbrk): Remove unneeded cast.
8018
8019         * modules/mbspbrk-tests: New file.
8020         * tests/test-mbspbrk.sh: New file.
8021         * tests/test-mbspbrk.c: New file.
8022
8023 2007-02-11  Bruno Haible  <bruno@clisp.org>
8024
8025         * lib/mbscspn.c (mbscspn): Remove unnecessary strlen call and
8026         unneeded cast.
8027
8028         * modules/mbscspn-tests: New file.
8029         * tests/test-mbscspn.sh: New file.
8030         * tests/test-mbscspn.c: New file.
8031
8032 2007-02-11  Bruno Haible  <bruno@clisp.org>
8033
8034         * modules/mbscasecmp-tests: New file.
8035         * tests/test-mbscasecmp.sh: New file.
8036         * tests/test-mbscasecmp.c: New file.
8037
8038 2007-02-11  Bruno Haible  <bruno@clisp.org>
8039
8040         Ensure O(n) worst-case complexity of mbscasestr.
8041         * lib/mbscasestr.c: Include stdbool.h.
8042         (knuth_morris_pratt_unibyte, knuth_morris_pratt_multibyte): New
8043         functions.
8044         (mbscasestr): Add some bookkeeping. Invoke knuth_morris_pratt_* when
8045         the bookkeeping indicates that it's worth it.
8046         * modules/mbscasestr (Depends-on): Add stdbool, mbslen, strnlen.
8047
8048         * modules/mbscasestr-tests: New file.
8049         * tests/test-mbscasestr1.c: New file.
8050         * tests/test-mbscasestr2.sh: New file.
8051         * tests/test-mbscasestr2.c: New file.
8052         * tests/test-mbscasestr3.sh: New file.
8053         * tests/test-mbscasestr3.c: New file.
8054         * tests/test-mbscasestr4.sh: New file.
8055         * tests/test-mbscasestr4.c: New file.
8056         * m4/locale-tr.m4: New file.
8057
8058 2007-02-11  Bruno Haible  <bruno@clisp.org>
8059
8060         Ensure O(n) worst-case complexity of mbsstr.
8061         * lib/mbsstr.c: Include stdbool.h.
8062         (knuth_morris_pratt_unibyte, knuth_morris_pratt_multibyte): New
8063         functions.
8064         (mbsstr): Add some bookkeeping. Invoke knuth_morris_pratt_* when the
8065         bookkeeping indicates that it's worth it.
8066         * modules/mbsstr (Depends-on): Add stdbool, mbslen, strnlen.
8067
8068         * modules/mbsstr-tests: New file.
8069         * tests/test-mbsstr1.c: New file.
8070         * tests/test-mbsstr2.sh: New file.
8071         * tests/test-mbsstr2.c: New file.
8072         * tests/test-mbsstr3.sh: New file.
8073         * tests/test-mbsstr3.c: New file.
8074         * m4/locale-fr.m4: New file.
8075
8076 2007-02-11  Bruno Haible  <bruno@clisp.org>
8077
8078         * lib/mbsrchr.c (mbsrchr): Fix bug.
8079
8080         * modules/mbsrchr-tests: New file.
8081         * tests/test-mbsrchr.sh: New file.
8082         * tests/test-mbsrchr.c: New file.
8083
8084 2007-02-11  Bruno Haible  <bruno@clisp.org>
8085
8086         * lib/mbschr.c (mbschr): Fix bug.
8087
8088         * modules/mbschr-tests: New file.
8089         * tests/test-mbschr.sh: New file.
8090         * tests/test-mbschr.c: New file.
8091         * m4/locale-zh.m4: New file.
8092
8093 2007-02-11  Bruno Haible  <bruno@clisp.org>
8094
8095         Support for copying multibyte string iterators.
8096         * lib/mbiter.h: Include <string.h>.
8097         (mbiter_multi_copy): New function.
8098         (mbi_copy): New macro.
8099         * lib/mbuiter.h: Include <string.h>.
8100         (mbuiter_multi_copy): New function.
8101         (mbui_copy): New macro.
8102
8103 2007-02-11  Bruno Haible  <bruno@clisp.org>
8104
8105         New module mbslen.
8106         * modules/mbslen: New file.
8107         * lib/mbslen.c: New file.
8108         * lib/string_.h (mbslen): New declaration.
8109         * m4/mbslen.m4: New file.
8110         * m4/string_h.m4 (gl_STRING_MODULE_INDICATOR_DEFAULTS): Initialize
8111         GNULIB_MBSLEN.
8112         * modules/string (string.h): Also substitute GNULIB_MBSLEN.
8113         * MODULES.html.sh (Internationalization functions): Add mbslen.
8114
8115 2007-02-11  Bruno Haible  <bruno@clisp.org>
8116
8117         Ensure O(n) worst-case complexity of strcasestr substitute.
8118         * lib/strcasestr.c: Include stdbool.h.
8119         (knuth_morris_pratt): New function.
8120         (strcasestr): Add some bookkeeping. Invoke knuth_morris_pratt when the
8121         bookkeeping indicates that it's worth it.
8122         * modules/strcasestr (Depends-on): Add stdbool, strnlen.
8123
8124         * modules/strcasestr-tests: New file.
8125         * tests/test-strcasestr.c: New file.
8126
8127 2007-02-11  Bruno Haible  <bruno@clisp.org>
8128
8129         Ensure O(n) worst-case complexity of c_strcasestr.
8130         * lib/c-strcasestr.c: Include stdbool.h, string.h.
8131         (knuth_morris_pratt): New function.
8132         (c_strcasestr): Add some bookkeeping. Invoke knuth_morris_pratt when
8133         the bookkeeping indicates that it's worth it.
8134         * modules/c-strcasestr (Depends-on): Add stdbool, strnlen.
8135
8136         * modules/c-strcasestr-tests: New file.
8137         * tests/test-c-strcasestr.c: New file.
8138
8139 2007-02-11  Bruno Haible  <bruno@clisp.org>
8140
8141         Ensure O(n) worst-case complexity of c_strstr.
8142         * lib/c-strstr.c: Include stdbool.h, string.h.
8143         (knuth_morris_pratt): New function.
8144         (c_strstr): Add some bookkeeping. Invoke knuth_morris_pratt when the
8145         bookkeeping indicates that it's worth it.
8146         * modules/c-strstr (Depends-on): Add stdbool, strnlen.
8147
8148         * lib/c-strstr.c: Complete rewrite for maintainability.
8149
8150         * modules/c-strstr-tests: New file.
8151         * tests/test-c-strstr.c: New file.
8152
8153 2007-02-11  Bruno Haible  <bruno@clisp.org>
8154
8155         * m4/javacomp.m4 (gt_JAVACOMP): Work around a 'tr' bug in coreutils
8156         5.2.1 and earlier, whereby \055 was treated just like the range
8157         delimiter '-'.
8158         Reported by Joel E. Denny <jdenny@ces.clemson.edu>.
8159
8160 2007-02-08  Bruno Haible  <bruno@clisp.org>
8161
8162         * modules/regex (Depends-on): Add stdbool.
8163         Reported by Dalibor Topic <robilad@kaffe.org>.
8164
8165 2007-02-05  Paul Eggert  <eggert@cs.ucla.edu>
8166
8167         * m4/regex.m4 (gl_REGEX): Check for glibc bug #3957.
8168         Prefer returning from main to exiting from it.
8169         Remove unnecessary parens after sizeof.
8170
8171 2007-02-05  Bruno Haible  <bruno@clisp.org>
8172
8173         New module mbssep.
8174         * modules/mbssep: New file.
8175         * lib/mbssep.c: New file.
8176         * lib/string_.h (strsep): Add a conditional link warning.
8177         (mbssep): New declaration.
8178         * m4/mbssep.m4: New file.
8179         * m4/string_h.m4 (gl_STRING_MODULE_INDICATOR_DEFAULTS): Initialize
8180         GNULIB_MBSSEP.
8181         * modules/string (string.h): Also substitute GNULIB_MBSSEP.
8182         * MODULES.html.sh (Internationalization functions): Add mbssep.
8183
8184 2007-02-05  Bruno Haible  <bruno@clisp.org>
8185
8186         * lib/strsep.c (strsep): Fix actions in case of no delimiters.
8187         Optimize search in case of 1 delimiter.
8188
8189 2007-02-05  Paolo Bonzini  <bonzini@gnu.org>
8190
8191         * lib/acl.h: Include sys/types.h before sys/acl.h.
8192
8193 2007-02-05  Paolo Bonzini  <bonzini@gnu.org>
8194
8195         Merge upstream fix for glibc bugzilla #3957:
8196
8197         2007-02-05  Jakub Jelinek  <jakub@redhat.com>
8198
8199         * lib/regcomp.c (parse_bracket_exp): Set '\n' bit rather than '\0'
8200         bit for RE_HAT_LISTS_NOT_NEWLINE.
8201         (build_charclass_op): Remove bogus comment.
8202
8203 2007-02-05  Simon Josefsson  <simon@josefsson.org>
8204
8205         * lib/gc.h, lib/gc-libgcrypt.c: Support SHA-256/384/512.
8206
8207 2007-02-04  Paul Eggert  <eggert@cs.ucla.edu>
8208
8209         * lib/getsubopt.c [!_LIBC]: Include config.h and getsubopt.h.
8210         * lib/memmem.c [!defined _LIBC]: Include config.h.
8211
8212 2007-02-04  Bruno Haible  <bruno@clisp.org>
8213
8214         * lib/string_.h (GL_LINK_WARNING2): Put the word "warning:" into the
8215         warning message.
8216
8217 2007-02-04  Bruno Haible  <bruno@clisp.org>
8218
8219         New module mbstok_r.
8220         * modules/mbstok_r: New file.
8221         * lib/mbstok_r.c: New file.
8222         * lib/string_.h (strtok_r): Change argument names to match the
8223         comments. Add a conditional link warning.
8224         (mbstok_r): New declaration.
8225         * m4/mbstok_r.m4: New file.
8226         * m4/string_h.m4 (gl_STRING_MODULE_INDICATOR_DEFAULTS): Initialize
8227         GNULIB_MBSTOK_R.
8228         * modules/string (string.h): Also substitute GNULIB_MBSTOK_R.
8229         * MODULES.html.sh (Internationalization functions): Add mbstok_r.
8230
8231 2007-02-04  Bruno Haible  <bruno@clisp.org>
8232
8233         New module mbsspn.
8234         * modules/mbsspn: New file.
8235         * lib/mbsspn.c: New file.
8236         * lib/string_.h (strspn): Add a conditional link warning.
8237         (mbsspn): New declaration.
8238         * m4/mbsspn.m4: New file.
8239         * m4/string_h.m4 (gl_STRING_MODULE_INDICATOR_DEFAULTS): Initialize
8240         GNULIB_MBSSPN.
8241         * modules/string (string.h): Also substitute GNULIB_MBSSPN.
8242         * MODULES.html.sh (Internationalization functions): Add mbsspn.
8243
8244 2007-02-04  Bruno Haible  <bruno@clisp.org>
8245
8246         New module mbspbrk.
8247         * modules/mbspbrk: New file.
8248         * lib/mbspbrk.c: New file.
8249         * lib/string_.h (strpbrk): Add a conditional link warning.
8250         (mbspbrk): New declaration.
8251         * m4/mbspbrk.m4: New file.
8252         * m4/string_h.m4 (gl_STRING_MODULE_INDICATOR_DEFAULTS): Initialize
8253         GNULIB_MBSPBRK.
8254         * modules/string (string.h): Also substitute GNULIB_MBSPBRK.
8255         * MODULES.html.sh (Internationalization functions): Add mbspbrk.
8256
8257 2007-02-04  Bruno Haible  <bruno@clisp.org>
8258
8259         New module mbscspn.
8260         * modules/mbscspn: New file.
8261         * lib/mbscspn.c: New file.
8262         * lib/string_.h (strcspn): Add a conditional link warning.
8263         (mbscspn): New declaration.
8264         * m4/mbscspn.m4: New file.
8265         * m4/string_h.m4 (gl_STRING_MODULE_INDICATOR_DEFAULTS): Initialize
8266         GNULIB_MBSCSPN.
8267         * modules/string (string.h): Also substitute GNULIB_MBSCSPN.
8268         * MODULES.html.sh (Internationalization functions): Add mbscspn.
8269
8270 2007-02-04  Bruno Haible  <bruno@clisp.org>
8271
8272         New module mbscasestr, reduced goal of strcasestr.
8273         * modules/mbscasestr: New file.
8274         * lib/mbscasestr.c: New file, copied from lib/strcasestr.c.
8275         (mbscasestr): Renamed from strcasestr.
8276         * lib/strcasestr.c: Don't include mbuiter.h.
8277         (strcasestr): Remove support for multibyte locales.
8278         * lib/string_.h (strcasestr): Don`t rename. Declare only if missing.
8279         Change the conditional link warning.
8280         (mbscasestr): New declaration.
8281         * m4/mbscasestr.m4: New file.
8282         * m4/strcasestr.m4 (gl_FUNC_STRCASESTR): Enable the replacement only if
8283         the system does not have strcasestr. Set HAVE_STRCASESTR instead of
8284         REPLACE_STRCASESTR.
8285         (gl_PREREQ_STRCASESTR): Don't require gl_FUNC_MBRTOWC.
8286         * m4/string_h.m4 (gl_HEADER_STRING_H_DEFAULTS): Initialize
8287         HAVE_STRCASESTR instead of REPLACE_STRCASESTR.
8288         (gl_STRING_MODULE_INDICATOR_DEFAULTS): Initialize GNULIB_MBSCASESTR.
8289         * modules/string (string.h): Also substitute GNULIB_MBSCASESTR.
8290         Substitute HAVE_STRCASESTR instead of REPLACE_STRCASESTR.
8291         * modules/strcasestr (Files): Remove m4/mbrtowc.m4.
8292         (Depends-on): Remove mbuiter.
8293         * MODULES.html.sh (Internationalization functions): Add mbscasestr.
8294
8295 2007-02-04  Bruno Haible  <bruno@clisp.org>
8296
8297         Simplify handling of strncasecmp.
8298         * lib/string_.h (strncasecmp): Remove test for GNULIB_STRCASE. Change
8299         the conditional link warning.
8300         * m4/string_h.m4 (gl_HEADER_STRING_H_DEFAULTS): Initialize
8301         HAVE_STRCASECMP, not REPLACE_STRCASECMP.
8302         (gl_STRING_MODULE_INDICATOR_DEFAULTS): Don't initialize GNULIB_STRCASE.
8303         * modules/strcase (configure.ac): Don't invoke
8304         gl_STRING_MODULE_INDICATOR.
8305         * modules/string (string.h): Don't substitute GNULIB_STRCASE.
8306
8307 2007-02-04  Bruno Haible  <bruno@clisp.org>
8308
8309         New module mbscasecmp, reduced goal of strcasecmp.
8310         * modules/mbscasecmp: New file.
8311         * lib/mbscasecmp.c: New file, copied from lib/strcasecmp.c.
8312         (mbscasecmp): Renamed from strcasecmp.
8313         * lib/strcasecmp.c: Don't include mbuiter.h.
8314         (strcasecmp): Remove support for multibyte locales.
8315         * lib/string_.h (strcasecmp): Don`t rename. Declare only if missing.
8316         Change the conditional link warning.
8317         (mbscasecmp): New declaration.
8318         * m4/mbscasecmp.m4: New file.
8319         * m4/strcase.m4 (gl_FUNC_STRCASECMP): Enable the replacement only if
8320         the system lacks strcasecmp. Set HAVE_STRCASECMP instead of
8321         REPLACE_STRCASECMP.
8322         (gl_PREREQ_STRCASECMP): Don't require gl_FUNC_MBRTOWC.
8323         * m4/string_h.m4 (gl_STRING_MODULE_INDICATOR_DEFAULTS): Initialize
8324         GNULIB_MBSCASECMP.
8325         * modules/string (string.h): Also substitute GNULIB_MBSCASECMP.
8326         Substitute HAVE_STRCASECMP instead of REPLACE_STRCASECMP.
8327         * modules/strcase (Files): Remove m4/mbrtowc.m4.
8328         (Depends-on): Remove mbuiter.
8329         * MODULES.html.sh (Internationalization functions): Add mbscasecmp.
8330
8331 2007-02-04  Bruno Haible  <bruno@clisp.org>
8332
8333         New module mbsstr. Remove module strstr.
8334         * modules/mbsstr: New file.
8335         * modules/strstr: Remove file.
8336         * lib/mbsstr.c: Renamed from lib/strstr.c.
8337         (mbsstr): Renamed from strstr.
8338         * lib/string_.h (strstr): Remove declaration. Change the conditional
8339         link warning.
8340         (mbsstr): New declaration.
8341         * m4/mbsstr.m4: New file.
8342         * m4/strstr.m4: Remove file.
8343         * m4/string_h.m4 (gl_HEADER_STRING_H_DEFAULTS): Don't initialize
8344         REPLACE_STRSTR.
8345         (gl_STRING_MODULE_INDICATOR_DEFAULTS): Initialize GNULIB_MBSSTR.
8346         Don't initialize GNULIB_STRSTR.
8347         * modules/string (string.h): Also substitute GNULIB_MBSSTR. Don't
8348         substitute GNULIB_STRSTR and REPLACE_STRSTR.
8349         * MODULES.html.sh (Internationalization functions): Add mbsstr.
8350         (Support for systems lacking ANSI C 89): Remove strstr.
8351
8352 2007-02-04  Bruno Haible  <bruno@clisp.org>
8353
8354         New module mbsrchr.
8355         * modules/mbsrchr: New file.
8356         * lib/mbsrchr.c: New file.
8357         * lib/string_.h (strrchr): Add a conditional link warning.
8358         (mbsrchr): New declaration.
8359         * m4/mbsrchr.m4: New file.
8360         * m4/string_h.m4 (gl_STRING_MODULE_INDICATOR_DEFAULTS): Initialize
8361         GNULIB_MBSRCHR.
8362         * modules/string (string.h): Also substitute GNULIB_MBSRCHR.
8363         * MODULES.html.sh (Internationalization functions): Add mbsrchr.
8364
8365 2007-02-04  Bruno Haible  <bruno@clisp.org>
8366
8367         New module mbschr.
8368         * modules/mbschr: New file.
8369         * lib/mbschr.c: New file.
8370         * lib/string_.h (strchr): Add a conditional link warning.
8371         (mbschr): New declaration.
8372         * m4/mbschr.m4: New file.
8373         * m4/string_h.m4 (gl_STRING_MODULE_INDICATOR_DEFAULTS): Initialize
8374         GNULIB_MBSCHR.
8375         * modules/string (string.h): Also substitute GNULIB_MBSCHR.
8376         * MODULES.html.sh (Internationalization functions): Add mbschr.
8377
8378 2007-02-04  Paul Eggert  <eggert@cs.ucla.edu>
8379
8380         * lib/stdbool_.h: Mention that bool bit-fields aren't supported.
8381
8382         * modules/stdarg (configure.ac-early): Require AC_PROG_CC_STDC.
8383
8384 2007-02-04  Bruno Haible  <bruno@clisp.org>
8385
8386         New module description section 'configure.ac-early'.
8387         * gnulib-tool (sed_extract_prog): Recognize configure.ac-early.
8388         (func_get_autoconf_early_snippet): New function.
8389         (func_import, func_create_testdir): Use it. Remove special cases for
8390         modules 'extensions' and 'lock'.
8391         * modules/extensions (configure.ac-early): Require
8392         gl_USE_SYSTEM_EXTENSIONS.
8393         * modules/lock (configure.ac-early): Require gl_LOCK_EARLY.
8394
8395 2007-02-04  Bruno Haible  <bruno@clisp.org>
8396
8397         Make use of gcj-4.3's -fsource and -ftarget option.
8398         * m4/javacomp.m4 (gt_JAVACOMP): Test whether gcj is in version >= 4.3,
8399         and if so try the options -fsource and -ftarget.
8400         * lib/javacomp.c (compile_using_gcj): Add fsource_option,
8401         source_version, ftarget_option, target_version arguments.
8402         (is_envjavac_gcj43, is_envjavac_gcj43_usable): New functions.
8403         (is_envjavac_oldgcj_14_14_usable): Renamed from
8404         is_envjavac_gcj_14_14_usable.
8405         (is_envjavac_oldgcj_14_13_usable): Renamed from
8406         is_envjavac_gcj_14_13_usable.
8407         (is_gcj_present): Update.
8408         (is_gcj_43, is_gcj43_usable): New functions.
8409         (is_oldgcj_14_14_usable): Renamed from is_gcj_14_14_usable. Update.
8410         (is_oldgcj_14_13_usable): Renamed from is_gcj_14_13_usable. Update.
8411         (compile_java_class): Test whether gcj is in version >= 4.3, and if so
8412         try the options -fsource and -ftarget.
8413
8414 2007-02-03  Paul Eggert  <eggert@cs.ucla.edu>
8415
8416         * lib/xalloc.h (x2nrealloc): Fix an unlikely bug in the overflow
8417         checking code.  Set N = ceil (1.5 * N) rather than to a slightly
8418         larger value.
8419
8420 2007-02-03  Jim Meyering  <jim@meyering.net>
8421
8422         Give tools a better chance to allocate space for very large buffers.
8423         * lib/xalloc.h (x2nrealloc): Use 3/2, not 2, as buffer size factor.
8424
8425         Make pwd and readlink work also when run with an unreadable parent dir
8426         on systems with openat support.
8427         * lib/getcwd.c (__getcwd) [HAVE_PARTLY_WORKING_GETCWD]: Use the system
8428         provided getcwd function, even when we have openat support.
8429         Reported by Dmitry V. Levin in <http://bugzilla.redhat.com/227168>.
8430
8431 2007-02-02  Bruno Haible  <bruno@clisp.org>
8432
8433         * lib/string_.h (memmem, mempcpy, memrchr, stpcpy, stpncpy, strchrnul,
8434         strdup, strndup, strnlen, strpbrk, strsep, strtok_r): Provoke a link
8435         error only if GNULIB_POSIXCHECK is defined. Needed to avoid artificial
8436         portability problems if one of these functions is only used on specific
8437         platforms.
8438         Reported by Paul Eggert.
8439
8440 2007-02-02  Paul Eggert  <eggert@cs.ucla.edu>
8441
8442         Avoid mempcpy in the regex code, as the string.h mempcpy stuff
8443         is causing more trouble than it's curing.
8444         * lib/regex_internal.h (__mempcpy): Remove.
8445         * lib/regcomp.c (regerror): Rewrite to avoid the need for mempcpy
8446         (and make the code a tad smaller to boot).
8447         * m4/regex.m4 (gl_PREREQ_REGEX): Don't check for mempcpy.
8448
8449 2007-02-02  Jim Meyering  <jim@meyering.net>
8450
8451         * modules/arpa_inet: Put AC_PROG_MKDIR_P in the configure.ac:
8452         section, not in the Makefile.am: one.
8453
8454 2007-02-02  Eric Blake  <ebb9@byu.net>
8455
8456         * lib/strchrnul.c: Always include config.h first.
8457
8458         * modules/mountlist (Depends-on): Revert 2007-01-31 change,
8459         gnulib strstr is not necessary here.
8460
8461 2007-02-02  Simon Josefsson  <simon@josefsson.org>
8462
8463         * m4/socklen.m4: Fix typo.
8464
8465 2007-02-02  Eric Blake  <ebb9@byu.net>
8466
8467         * modules/arpa_inet (Makefile.am): Use MKDIR_P to avoid races.
8468         * modules/netinet_in (Makefile.am): Likewise.
8469
8470 2007-02-01  Bruno Haible  <bruno@clisp.org>
8471
8472         * lib/string_.h (GL_LINK_WARNING): New macro.
8473         (strcasecmp, strstr, strcasestr): If provided by the system,
8474         conditionally define as a macro that leads to a warning instead of to
8475         an error.
8476         (strncasecmp): Conditionally define as a macro that leads to a warning.
8477
8478 2007-02-01  Karl Berry  <karl@gnu.org>
8479
8480         * config/srclist.txt (strtok_r.c): lose sync, no more strtok_r.h.
8481
8482 2007-02-01  Bruno Haible  <bruno@clisp.org>
8483
8484         * MODULES.html.sh (Unicode string functions): Update after 2007-01-27
8485         renamings.
8486
8487 2007-02-01  Eric Blake  <ebb9@byu.net>
8488
8489         * modules/regex (Depends-on): Revert dependence on mempcpy.
8490         * lib/regex_internal.h [! _LIBC && !__mempcpy]: Undo string
8491         module's definition of mempcpy.
8492         Reported by Paul Eggert.
8493
8494 2007-02-01  Paul Eggert  <eggert@cs.ucla.edu>
8495
8496         * lib/string_.h: If the gnulib module XYZ is not present, undefine
8497         the symbol XYZ before redefining it.  This fixes a problem with
8498         programs that don't use XYZ, when compiled on systems that define
8499         XYZ to something else.
8500
8501 2007-01-31  Paul Eggert  <eggert@cs.ucla.edu>
8502
8503         * lib/mkdir-p.c (make_dir_parents): Close a race condition that
8504         occurs when "mkdir -m foo" creates a setgid directory that is (1)
8505         writeable to group or other and (2) is intended to have a special
8506         mode bit that is set or cleared.  In such a case, the directory
8507         should be neither group- nor other-writeable until the special
8508         mode bits are right.
8509
8510 2007-01-31  Eric Blake  <ebb9@byu.net>
8511
8512         * modules/mountlist (Depends-on): Add strstr.
8513
8514         * m4/string_h.m4 (gl_STRING_MODULE_INDICATOR): Correct m4 usage
8515         bug.
8516         * modules/string (Makefile.am): Remove redundant replacement.
8517         * modules/regex (Depends-on): Add mempcpy.
8518
8519 2007-01-31  Bruno Haible  <bruno@clisp.org>
8520
8521         New module description field 'Link'.
8522         * gnulib-tool (func_usage): Document --extract-link-directive.
8523         (sed_extract_prog): Recognize 'Link' directive.
8524         (func_get_link_directive): New function.
8525         (func_import): Show summary of link directives.
8526         Handle --extract-link-directive option.
8527         * modules/acl (Link): New section.
8528         * modules/clock-time (Link): New section.
8529         * modules/euidaccess (Link): New section.
8530         * modules/gettext (Link): New section.
8531         * modules/iconv (Link): New section.
8532         * modules/lock (Link): New section.
8533         * modules/nanosleep (Link): New section.
8534         * modules/readline (Link): New section.
8535
8536 2007-01-27  Bruno Haible  <bruno@clisp.org>
8537
8538         Enforce the use of gnulib modules for unportable <string.h> functions.
8539         * m4/string_h.m4 (gl_STRING_MODULE_INDICATOR): New macro.
8540         (gl_STRING_MODULE_INDICATOR_DEFAULTS): New macro.
8541         (gl_HEADER_STRING_H_BODY): Require it.
8542         * lib/string_.h: If the gnulib module XYZ is not present, redefine
8543         the symbol XYZ to one that gives a link error.
8544         * modules/string (Makefile.am): Also substitute the GNULIB_* variables.
8545         * modules/memmem (configure.ac): Invoke gl_STRING_MODULE_INDICATOR.
8546         * modules/mempcpy (configure.ac): Likewise.
8547         * modules/memrchr (configure.ac): Likewise.
8548         * modules/stpcpy (configure.ac): Likewise.
8549         * modules/stpncpy (configure.ac): Likewise.
8550         * modules/strcase (configure.ac): Likewise.
8551         * modules/strcasestr (configure.ac): Likewise.
8552         * modules/strchrnul (configure.ac): Likewise.
8553         * modules/strdup (configure.ac): Likewise.
8554         * modules/strndup (configure.ac): Likewise.
8555         * modules/strnlen (configure.ac): Likewise.
8556         * modules/strpbrk (configure.ac): Likewise.
8557         * modules/strsep (configure.ac): Likewise.
8558         * modules/strstr (configure.ac): Likewise.
8559         * modules/strtok_r (configure.ac): Likewise.
8560
8561 2007-01-31  Jean-Louis Martineau  <martineau@zmanda.com>  (tiny change)
8562
8563         * lib/gai_strerror.c (values): Add EAI_OVERFLOW.
8564
8565 2007-01-30  Jim Meyering  <jim@meyering.net>
8566
8567         * lib/mpsort.c (mpsort): Remove spurious "return" in void function.
8568
8569 2007-01-29  Bruno Haible  <bruno@clisp.org>
8570
8571         * lib/allocsa.h: Use '#if HAVE_*' instead of '#ifdef HAVE_*'.
8572         * lib/execute.c: Likewise.
8573         * lib/pipe.c: Likewise.
8574         * lib/printf-args.h: Likewise.
8575         * lib/printf-args.c: Likewise.
8576         * lib/printf-parse.c: Likewise.
8577         * lib/vasnprintf.c: Likewise.
8578
8579 2007-01-29  Eric Blake  <ebb9@byu.net>
8580
8581         * lib/memrchr.c: Assume <string.h> unconditionally, to pull in
8582         declaration.
8583
8584 2007-01-29  Paul Eggert  <eggert@cs.ucla.edu>
8585
8586         * lib/strptime.h (strptime): Use 'restrict' for args where
8587         POSIX requires this.
8588         * lib/strptime.c (strptime): Likewise.
8589         Change license notice from LGPL to GPL, since gnulib-tool will
8590         change this as needed.
8591         Include <config.h> if _LIBC is not defined, not if HAVE_CONFIG_H is
8592         defined.
8593         Include "strptime.h" first, to check interface.
8594         Do not #undef _LIBC and _NL_CURRENT.
8595         Do not include <stdlib.h>; no longer needed.
8596         Include "time_r.h" and declare ptime_locale_status
8597         only if _LIBC is not defined.
8598         (__P): Remove unused macro.
8599         (match_string): Bring back glibc version, but use it only if _LIBC
8600         is defined.
8601         (__strptime_internal): Compile tm_gmtoff code if _LIBC is defined, too.
8602         Remove unnecessary assertion and abort() call.
8603         Use #ifdef _NL_CURRENT rather than #if 0, for benefit of glibc.
8604         * m4/strptime.m4: Fix serial number comment.
8605         (gl_FUNC_STRPTIME): Require AC_C_RESTRICT, gl_TM_GMTOFF.
8606         * modules/strptime (Files): Add m4/tm_gmtoff.m4.
8607         (Depends-on): Add time_r.
8608
8609 2007-01-29  Bruno Haible  <bruno@clisp.org>
8610
8611         * MODULES.html.sh (Support for systems lacking POSIX:2001): Add
8612         strptime.
8613         * modules/strptime (Depends-on): Add stdbool.
8614         * lib/strptime.h: Include <time.h> always. Add comments.
8615
8616 2007-01-29  Yoann Vandoorselaere  <yoann@prelude-ids.org>
8617
8618         * modules/strptime: New file.
8619         * lib/strptime.h: New file.
8620         * lib/strptime.c: New file.
8621         * m4/strptime.m4: New file.
8622
8623 2007-01-28  Paul Eggert  <eggert@cs.ucla.edu>
8624
8625         * MODULES.html.sh: New module mpsort.
8626         * lib/mpsort.c, lib/mpsort.h, m4/mpsort.m4, modules/mpsort: New files.
8627
8628         * lib/regex.h (_Restrict_): Renamed from __restrict, to avoid
8629         a circularity problem with HP-UX ia64 reported by Bob Proulx in
8630         <http://lists.gnu.org/archive/html/bug-gnulib/2007-01/msg00394.html>.
8631         All uses changed.
8632         (_Restrict_arr_): Renamed from __restrict_arr, for similar reasons.
8633         All uses changed.
8634         * lib/regcomp.c, lib/regexec.c: Change all uses from __restrict
8635         to _Restrict_.
8636         * lib/regexec.c (regexec): Declare pmatch with _Restrict_arr_, so that
8637         the parameter matches the prototype.
8638
8639 2007-01-28  Jim Meyering  <jim@meyering.net>
8640
8641         * modules/sys_time (Makefile.am) [MOSTLYCLEANFILES]: Do use
8642         sys/time.h here, reverting that part of the previous patch:
8643         <http://thread.gmane.org/gmane.comp.lib.gnulib.bugs/8959>.
8644
8645 2007-01-28  Bruno Haible  <bruno@clisp.org>
8646
8647         * modules/sys_time (Makefile.am): Build sys/time.h only when it's the
8648         value of $(SYS_TIME_H).
8649         [MOSTLYCLEANFILES]: Now that sys/time.h is created only when needed,
8650         remove it conditionally, too. [added by Jim Meyering]
8651         * m4/sys_time_h.m4 (gl_HEADER_SYS_TIME_H_BODY): Set SYS_TIME_H.
8652         * m4/gettimeofday.m4 (gl_FUNC_GETTIMEOFDAY):
8653         (gl_FUNC_GETTIMEOFDAY_CLOBBER): Set SYS_TIME_H when setting
8654         GETTIMEOFDAY_REPLACEMENT to 1.
8655
8656 2007-01-28  Bruno Haible  <bruno@clisp.org>
8657
8658         * m4/unistd_h.m4 (gl_HEADER_UNISTD_DEFAULTS): New macro.
8659         (gl_HEADER_UNISTD): Require it. Don't set UNISTD_H to empty here.
8660         * m4/fchdir.m4 (gl_FUNC_FCHDIR): Require gl_HEADER_UNISTD_DEFAULTS.
8661         Set UNISTD_H instead of UNISTD_H2.
8662         * modules/fchdir (BUILT_SOURCES): Drop $(UNISTD_H2).
8663
8664 2007-01-28  Bruno Haible  <bruno@clisp.org>
8665
8666         * modules/mbchar (Makefile.am): Add mbchar.c to lib_SOURCES.
8667         * m4/mbchar.m4 (gl_MBCHAR): Remove AC_LIBOBJ invocation.
8668
8669 2007-01-28  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
8670
8671         * gnulib-tool (func_emit_lib_Makefile_am, func_add_or_update)
8672         (func_create_testdir): Ensure C locale for `grep' and `tr'
8673         character ranges.
8674         (func_create_megatestdir): Avoid one `grep'.  Fix bug in
8675         ACLOCAL_AMFLAGS parsing state machine.
8676
8677 2007-01-27  Bruno Haible  <bruno@clisp.org>
8678
8679         * modules/unistr/base: Update.
8680
8681 2007-01-27  Bruno Haible  <bruno@clisp.org>
8682
8683         Rename u32-mbtouc -> u32-mbtouc-unsafe, u32-mbtouc-safe -> u32-mbtouc,
8684         u32_mbtouc -> u32_mbtouc_unsafe, u32_mbtouc_safe -> u32_mbtouc.
8685         * modules/unistr/u32-mbtouc-unsafe: Renamed from
8686         modules/unistr/u32-mbtouc.
8687         * lib/unistr/u32-mbtouc-unsafe.c: Renamed from lib/unistr/u32-mbtouc.c.
8688         * lib/unistr.h: Update.
8689         * lib/linebreak.c: Update.
8690         * modules/unistr/u32-mbtouc: Renamed from
8691         modules/unistr/u32-mbtouc-safe.
8692         * lib/unistr/u32-mbtouc.c: Renamed from lib/unistr/u32-mbtouc-safe.c.
8693         * lib/unistr.h: Update.
8694         * lib/unistr/u32-to-u8.c: Update.
8695         * lib/unistr/u32-to-u16.c: Update.
8696
8697 2007-01-27  Bruno Haible  <bruno@clisp.org>
8698
8699         Rename utf16-ucs4 -> utf16-ucs4-unsafe, utf16-ucs4-safe -> utf16-ucs4,
8700         u16_mbtouc -> u16_mbtouc_unsafe, u16_mbtouc_safe -> u16_mbtouc.
8701         * modules/utf16-ucs4-unsafe: Renamed from modules/utf16-ucs4.
8702         * lib/utf16-ucs4-unsafe.h: Renamed from lib/utf16-ucs4.h.
8703         * lib/unistr/utf16-ucs4-unsafe.c: Renamed from lib/unistr/utf16-ucs4.c.
8704         * modules/unistr/u16-mbtouc-unsafe: Renamed from
8705         modules/unistr/u16-mbtouc.
8706         * lib/unistr/u16-mbtouc-unsafe.c: Renamed from lib/unistr/u16-mbtouc.c.
8707         * lib/unistr.h: Update.
8708         * lib/linebreak.c: Update.
8709         * modules/linebreak: Update.
8710         * modules/utf16-ucs4: Renamed from modules/utf16-ucs4-safe.
8711         * lib/utf16-ucs4.h: Renamed from lib/utf16-ucs4-safe.h.
8712         * lib/unistr/utf16-ucs4.c: Renamed from lib/unistr/utf16-ucs4-safe.c.
8713         * modules/unistr/u16-mbtouc: Renamed from
8714         modules/unistr/u16-mbtouc-safe.
8715         * lib/unistr/u16-mbtouc.c: Renamed from lib/unistr/u16-mbtouc-safe.c.
8716         * lib/unistr.h: Update.
8717         * lib/unistr/u16-to-u8.c: Update.
8718         * modules/unistr/u16-to-u8: Update.
8719         * lib/unistr/u16-to-u32.c: Update.
8720         * modules/unistr/u16-to-u32: Update.
8721
8722 2007-01-27  Bruno Haible  <bruno@clisp.org>
8723
8724         Rename utf8-ucs4 -> utf8-ucs4-unsafe, utf8-ucs4-safe -> utf8-ucs4,
8725         u8_mbtouc -> u8_mbtouc_unsafe, u8_mbtouc_safe -> u8_mbtouc.
8726         * modules/utf8-ucs4-unsafe: Renamed from modules/utf8-ucs4.
8727         * lib/utf8-ucs4-unsafe.h: Renamed from lib/utf8-ucs4.h.
8728         * lib/unistr/utf8-ucs4-unsafe.c: Renamed from lib/unistr/utf8-ucs4.c.
8729         * modules/unistr/u8-mbtouc-unsafe: Renamed from
8730         modules/unistr/u8-mbtouc.
8731         * lib/unistr/u8-mbtouc-unsafe.c: Renamed from lib/unistr/u8-mbtouc.c.
8732         * lib/unistr.h: Update.
8733         * lib/striconveh.c: Update.
8734         * modules/striconveh: Update.
8735         * lib/linebreak.c: Update.
8736         * modules/linebreak: Update.
8737         * modules/utf8-ucs4: Renamed from modules/utf8-ucs4-safe.
8738         * lib/utf8-ucs4.h: Renamed from lib/utf8-ucs4-safe.h.
8739         * lib/unistr/utf8-ucs4.c: Renamed from lib/unistr/utf8-ucs4-safe.c.
8740         * modules/unistr/u8-mbtouc: Renamed from modules/unistr/u8-mbtouc-safe.
8741         * lib/unistr/u8-mbtouc.c: Renamed from lib/unistr/u8-mbtouc-safe.c.
8742         * lib/unistr.h: Update.
8743         * lib/striconveh.c: Update.
8744         * modules/striconveh: Update.
8745         * lib/unistr/u8-to-u16.c: Update.
8746         * modules/unistr/u8-to-u16: Update.
8747         * lib/unistr/u8-to-u32.c: Update.
8748         * modules/unistr/u8-to-u32: Update.
8749
8750 2007-01-27  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
8751
8752         Sync from Libtool.
8753         * lib/argz.c: Do not include strings.h nor memory.h, include
8754         string.h unconditionally.  Patch by Simon Josefsson.
8755
8756 2007-01-27  Bruno Haible  <bruno@clisp.org>
8757
8758         * m4/string_h.m4 (gl_HEADER_STRING_H_DEFAULTS): New macro, extracted
8759         from gl_HEADER_STRING_H_BODY.
8760         (gl_HEADER_STRING_H_BODY): Require it.
8761         * m4/memmem.m4 (gl_FUNC_MEMMEM): Require gl_HEADER_STRING_H_DEFAULTS.
8762         * m4/mempcpy.m4 (gl_FUNC_MEMPCPY): Likewise.
8763         * m4/memrchr.m4 (gl_FUNC_MEMRCHR): Likewise.
8764         * m4/stpcpy.m4 (gl_FUNC_STPCPY): Likewise.
8765         * m4/stpncpy.m4 (gl_FUNC_STPNCPY): Likewise.
8766         * m4/strcase.m4 (gl_FUNC_STRCASECMP, gl_FUNC_STRNCASECMP): Likewise.
8767         * m4/strcasestr.m4 (gl_FUNC_STRCASESTR): Likewise.
8768         * m4/strchrnul.m4 (gl_FUNC_STRCHRNUL): Likewise.
8769         * m4/strdup.m4 (gl_FUNC_STRDUP): Likewise.
8770         * m4/strndup.m4 (gl_FUNC_STRNDUP): Likewise.
8771         * m4/strnlen.m4 (gl_FUNC_STRNLEN): Likewise.
8772         * m4/strpbrk.m4 (gl_FUNC_STRPBRK): Likewise.
8773         * m4/strsep.m4 (gl_FUNC_STRSEP): Likewise.
8774         * m4/strstr.m4 (gl_FUNC_STRSTR): Likewise.
8775         * m4/strtok_r.m4 (gl_FUNC_STRTOK_R): Likewise.
8776
8777 2007-01-27  Bruno Haible  <bruno@clisp.org>
8778
8779         * gnulib-tool (func_emit_lib_Makefile_am): If $for_test is true, turn
8780         check_PROGRAMS into noinst_PROGRAMS.
8781         (func_emit_tests_Makefile_am): Likewise. Also don't initialize
8782         check_PROGRAMS in this case.
8783         (func_import): Set for_test to false.
8784         (func_create_testdir): Set for_test to true.
8785
8786 2007-01-27  Yoann Vandoorselaere <yoann.v@prelude-ids.com>
8787             Bruno Haible  <bruno@clisp.org>
8788
8789         * modules/strcasestr (Files): Remove lib/strcasestr.h.
8790         (Depends-on): Add string.
8791         (Includes): Use <string.h> instead of strcasestr.h.
8792         * modules/string (Makefile.am): Also substitute the value of
8793         REPLACE_STRCASESTR.
8794         * m4/strcasestr.m4 (gl_FUNC_STRCASESTR): Don't define strcasestr here;
8795         assume strcasestr is declared in <string.h> not <strings.h>. Also
8796         set REPLACE_STRCASESTR.
8797         * m4/string_h.m4 (gl_HEADER_STRING_H_BODY): Provide a default value for
8798         REPLACE_STRCASESTR.
8799         * lib/strcasestr.h: Remove file.
8800         * lib/strcasestr.c: Include <string.h> instead of strcasestr.h.
8801         * lib/string_.h (strcasestr): New declaration.
8802
8803 2007-01-27  Bruno Haible  <bruno@clisp.org>
8804
8805         * lib/string_.h: Use 'extern'.
8806
8807 2007-01-27  Jim Meyering  <jim@meyering.net>
8808
8809         * lib/regex_internal.c (re_string_reconstruct): Remove declaration
8810         of set-but-not-used local, "q".
8811
8812         * lib/mempcpy.c: Include <config.h> before <string.h>.
8813         This fixes a compilation error on HP-UX, due to the system's
8814         "restrict"-using mempcpy prototype.
8815
8816 2007-01-26  Bruno Haible  <bruno@clisp.org>
8817
8818         Small optimization.
8819         * lib/javacomp.c: Include c-strstr.h.
8820          (is_envjavac_gcj): Use c_strstr instead of strstr.
8821         * modules/javacomp (Depends-on): Add c-strstr, remove strstr.
8822
8823 2007-01-26  Bruno Haible  <bruno@clisp.org>
8824
8825         * MODULES.html.sh (Unicode string functions): Add the new modules.
8826
8827         * modules/uniconv/u32-strconv-to-locale: New file.
8828         * lib/uniconv/u32-strconv-to-locale.c: New file.
8829
8830         * modules/uniconv/u16-strconv-to-locale: New file.
8831         * lib/uniconv/u16-strconv-to-locale.c: New file.
8832
8833         * modules/uniconv/u8-strconv-to-locale: New file.
8834         * lib/uniconv/u8-strconv-to-locale.c: New file.
8835
8836         * modules/uniconv/u32-strconv-from-locale: New file.
8837         * lib/uniconv/u32-strconv-from-locale.c: New file.
8838
8839         * modules/uniconv/u16-strconv-from-locale: New file.
8840         * lib/uniconv/u16-strconv-from-locale.c: New file.
8841
8842         * modules/uniconv/u8-strconv-from-locale: New file.
8843         * lib/uniconv/u8-strconv-from-locale.c: New file.
8844
8845         * modules/uniconv/u32-strconv-to-enc: New file.
8846         * lib/uniconv/u32-strconv-to-enc.c: New file.
8847         * modules/uniconv/u32-strconv-to-enc-tests: New file.
8848         * tests/uniconv/test-u32-strconv-to-enc.c: New file.
8849
8850         * modules/uniconv/u16-strconv-to-enc: New file.
8851         * lib/uniconv/u16-strconv-to-enc.c: New file.
8852         * lib/uniconv/u-strconv-to-enc.h: New file.
8853         * modules/uniconv/u16-strconv-to-enc-tests: New file.
8854         * tests/uniconv/test-u16-strconv-to-enc.c: New file.
8855
8856         * modules/uniconv/u8-strconv-to-enc: New file.
8857         * lib/uniconv/u8-strconv-to-enc.c: New file.
8858         * modules/uniconv/u8-strconv-to-enc-tests: New file.
8859         * tests/uniconv/test-u8-strconv-to-enc.c: New file.
8860
8861         * modules/uniconv/u32-strconv-from-enc: New file.
8862         * lib/uniconv/u32-strconv-from-enc.c: New file.
8863         * modules/uniconv/u32-strconv-from-enc-tests: New file.
8864         * tests/uniconv/test-u32-strconv-from-enc.c: New file.
8865
8866         * modules/uniconv/u16-strconv-from-enc: New file.
8867         * lib/uniconv/u16-strconv-from-enc.c: New file.
8868         * modules/uniconv/u16-strconv-from-enc-tests: New file.
8869         * tests/uniconv/test-u16-strconv-from-enc.c: New file.
8870
8871         * modules/uniconv/u8-strconv-from-enc: New file.
8872         * lib/uniconv/u8-strconv-from-enc.c: New file.
8873         * lib/uniconv/u-strconv-from-enc.h: New file.
8874         * modules/uniconv/u8-strconv-from-enc-tests: New file.
8875         * tests/uniconv/test-u8-strconv-from-enc.c: New file.
8876
8877         * modules/uniconv/u32-conv-from-enc: New file.
8878         * lib/uniconv/u32-conv-from-enc.c: New file.
8879         * modules/uniconv/u32-conv-from-enc-tests: New file.
8880         * tests/uniconv/test-u32-conv-from-enc.c: New file.
8881
8882         * modules/uniconv/u16-conv-from-enc: New file.
8883         * lib/uniconv/u16-conv-from-enc.c: New file.
8884         * lib/uniconv/u-conv-from-enc.h: New file.
8885         * modules/uniconv/u16-conv-from-enc-tests: New file.
8886         * tests/uniconv/test-u16-conv-from-enc.c: New file.
8887
8888         * modules/uniconv/u8-conv-from-enc: New file.
8889         * lib/uniconv/u8-conv-from-enc.c: New file.
8890         * modules/uniconv/u8-conv-from-enc-tests: New file.
8891         * tests/uniconv/test-u8-conv-from-enc.c: New file.
8892
8893         * modules/uniconv/base: New file.
8894         * lib/uniconv.h: New file.
8895
8896 2007-01-26  Paul Eggert  <eggert@cs.ucla.edu>
8897
8898         * doc/gnulib-tool.texi (Initial import): Update to match current
8899         behavior with strdup module.
8900         * lib/.cppi-disable: Remove strcase.h, strdup.h, strndup.h, strnlen.h.
8901         * lib/memmem.h: Remove; all uses removed.  This is now done
8902         by <string.h>.
8903         * lib/mempcpy.h: Likewise.
8904         * lib/memrchr.h: Likewise.
8905         * lib/stpcpy.h: Likewise.
8906         * lib/stpncpy.h: Likewise.
8907         * lib/strcase.h: Likewise.
8908         * lib/strchrnul.h: Likewise.
8909         * lib/strdup.h: Likewise.
8910         * lib/strndup.h: Likewise.
8911         * lib/strnlen.h: Likewise.
8912         * lib/strpbrk.h: Likewise.
8913         * lib/strsep.h: Likewise.
8914         * lib/strstr.h: Likewise.
8915         * lib/strtok_r.h: Likewise.
8916         * lib/string_.h: New file.
8917         * lib/argp-namefrob.h: Don't include no-longer-existent include files.
8918         Rely on <string.h> instead.
8919         * lib/canon-host.c: Likewise.
8920         * lib/chdir-long.c: Likewise.
8921         * lib/concatpath.c: Likewise.
8922         * lib/exclude.c: Likewise.
8923         * lib/fchdir.c: Likewise.
8924         * lib/getaddrinfo.c: Likewise.
8925         * lib/getcwd.c: Likewise.
8926         * lib/getsubopt.c: Likewise.
8927         * lib/glob.c: Likewise.
8928         * lib/hard-locale.c: Likewise.
8929         * lib/iconvme.c: Likewise.
8930         * lib/javacomp.c: Likewise.
8931         * lib/mempcpy.c: Likewise.
8932         * lib/memrchr.c: Likewise.
8933         * lib/regex_internal.h: Likewise.
8934         * lib/stpncpy.c: Likewise.
8935         * lib/strcasecmp.c: Likewise.
8936         * lib/strchrnul.c: Likewise.
8937         * lib/strdup.c: Likewise.
8938         * lib/striconv.c: Likewise.
8939         * lib/striconveh.c: Likewise.
8940         * lib/striconveha.c: Likewise.
8941         * lib/strncasecmp.c: Likewise.
8942         * lib/strndup.c: Likewise.
8943         * lib/strnlen.c: Likewise.
8944         * lib/strsep.c: Likewise.
8945         * lib/strstr.c: Likewise.
8946         * lib/strtok_r.c: Likewise.
8947         * lib/userspec.c: Likewise.
8948         * lib/w32spawn.h: Likewise.
8949         * lib/xstrndup.c: Likewise.
8950         * lib/mountlist.c (strstr): Remove decl.
8951         * m4/string_h.m4: New file.
8952         * m4/memmem.m4 (gl_FUNC_MEMMEM): Set HAVE_DECL_MEMMEM if necessary.
8953         * m4/mempcpy.m4 (gl_FUNC_MEMPCPY): Set HAVE_MEMPCPY if necessary.
8954         * m4/memrchr.m4 (gl_FUNC_MEMRCHR): Set HAVE_MEMRCHR
8955         * m4/stpcpy.m4 (gl_FUNC_STPCPY): Set HAVE_STPCPY if necessary.
8956         * m4/stpncpy.m4 (gl_PREREQ_STPNCPY): Set HAVE_STPNCPY if necessary.
8957         * m4/strcase.m4 (gl_FUNC_STRCASECMP):
8958         Set REPLACE_STRCASECMP if necessary.
8959         (gl_FUNC_STRNCASECMP): Set HAVE_DECL_STRNCASECMP if necessary.
8960         * m4/strchrnul.m4 (gl_FUNC_STRCHRNUL): Set HAVE_STRCHRNUL if necessary.
8961         * m4/strdup.m4 (gl_FUNC_STRDUP): Set HAVE_DECL_STRDUP if necessary.
8962         * m4/strndup.m4 (gl_FUNC_STRNDUP): Set HAVE_DECL_STRNLEN and
8963         HAVE_DECL_STRDUP if necessary.
8964         (gl_PREREQ_STRNLEN): Don't bother to check for strnlen decl,
8965         since gl_FUNC_STRNDUP does that now.
8966         * m4/strnlen.m4 (gl_FUNC_STRNLEN): Set HAVE_DECL_STRNLEN if necessary.
8967         Check for decl here...
8968         (gl_PREREQ_STRNLEN): ... not here.
8969         * m4/strpbrk.m4 (gl_FUNC_STRPBRK): Set HAVE_STRPBRK if necessary.
8970         * m4/strsep.m4 (gl_FUNC_STRSEP): Set HAVE_STRSEP if necessary.
8971         * m4/strstr.m4 (gl_FUNC_STRSTR): Set REPLACE_STRSTR if necessary.
8972         * m4/strtok_r.m4 (gl_FUNC_STRTOK_R): Set HAVE_DECL_STRTOK_R if
8973         necessary.
8974         * modules/string: New file.
8975         * modules/memmem (Files): Remove special-purpose include file.
8976         (Depends-on): Add string.
8977         (Include): Include <string.h>, not the removed file.
8978         * modules/mempcpy: Likewise.
8979         * modules/memrchr: Likewise.
8980         * modules/stpcpy: Likewise.
8981         * modules/stpncpy: Likewise.
8982         * modules/strcase: Likewise.
8983         * modules/strchrnul: Likewise.
8984         * modules/strdup: Likewise.
8985         * modules/strndup: Likewise.
8986         * modules/strnlen: Likewise.
8987         * modules/strpbrk: Likewise.
8988         * modules/strsep: Likewise.
8989         * modules/strstr: Likewise.
8990         * modules/strtok_r: Likewise.
8991         * tests/test-dirname.c: Don't include "strdup.h", since
8992         <string.h> now suffices.
8993         * tests/test-memmem.c: Don't include "memmem.h", since
8994         <string.h> now suffices.
8995
8996 2007-01-25  Bruno Haible  <bruno@clisp.org>
8997
8998         * lib/striconveh.c (mem_cd_iconveh_internal): Ignore *lengthp if
8999         *resultp is 0.
9000
9001         * lib/unistr/u16-to-u8.c (u16_to_u8): Fix u8_uctomb invocation.
9002         * lib/unistr/u32-to-u8.c (u32_to_u8): Likewise.
9003         * lib/unistr/u8-to-u16.c (u8_to_u16): Fix u16_uctomb invocation.
9004         * lib/unistr/u32-to-u16.c (u32_to_u16): Likewise.
9005
9006         * modules/unistr/u8-to-u16 (Depends-on): Add missing modules.
9007         * modules/unistr/u8-to-u32 (Depends-on): Add missing modules.
9008         * modules/unistr/u16-to-u8 (Depends-on): Add missing modules.
9009         * modules/unistr/u16-to-u32 (Depends-on): Add missing modules.
9010         * modules/unistr/u32-to-u8 (Depends-on): Add missing modules.
9011         * modules/unistr/u32-to-u16 (Depends-on): Add missing modules.
9012
9013 2007-01-24  Bruno Haible  <bruno@clisp.org>
9014
9015         Don't AC_REQUIRE autoconf macros that invoke AC_LIBOBJ. See
9016         <http://lists.gnu.org/archive/html/bug-gnulib/2006-10/msg00279.html>.
9017         * m4/argp.m4 (gl_ARGP): Invoke, don't require, gl_GETOPT_SUBSTITUTE.
9018         * m4/fts.m4 (gl_FUNC_FTS, gl_FUNC_FTS_LGPL): Invoke, don't require,
9019         gl_FUNC_FTS_CORE.
9020         (gl_FUNC_FTS_CORE): Invoke, don't require, gl_FUNC_OPENAT.
9021         * m4/lstat.m4 (gl_FUNC_LSTAT): Invoke, don't require,
9022         AC_FUNC_LSTAT_FOLLOWS_SLASHED_SYMLINK.
9023         * m4/memcmp.m4 (gl_FUNC_MEMCMP): Invoke, don't require, AC_FUNC_MEMCMP.
9024         * m4/mktime.m4 (gl_FUNC_MKTIME): Invoke, don't require, AC_FUNC_MKTIME.
9025         * m4/openat.m4 (gl_FUNC_OPENAT): Invoke, don't require,
9026         gl_FUNC_FCHOWNAT.
9027         * m4/strftime.m4 (gl_FUNC_GNU_STRFTIME): Invoke, don't require,
9028         gl_FUNC_STRFTIME.
9029         * m4/strtod.m4 (gl_FUNC_STRTOD): Invoke, don't require, AC_FUNC_STRTOD.
9030         Reported by Ralf Wildenhues.
9031
9032 2007-01-24  Bruno Haible  <bruno@clisp.org>
9033
9034         Drop AC_REQUIRE calls that are redundant with the module dependencies.
9035         * m4/canon-host.m4 (gl_PREREQ_CANON_HOST): Don't require
9036         gl_GETADDRINFO.
9037         * m4/chdir-long.m4 (gl_PREREQ_CHDIR_LONG): Don't require AM_STDBOOL_H,
9038         gl_FUNC_MEMPCPY, gl_FUNC_OPENAT, gl_FUNC_MEMRCHR.
9039         * m4/openat.m4 (gl_PREREQ_OPENAT): Don't require gl_SAVE_CWD.
9040
9041 2007-01-24  Paul Eggert  <eggert@cs.ucla.edu>
9042
9043         * m4/fnmatch.m4 (_AC_FUNC_FNMATCH_IF): Add test for glibc bug 361.
9044         Don't use 'exit'; just return from 'main'.
9045         (_AC_LIBOBJ_FNMATCH): Check for headers and functions just once.
9046
9047         * lib/fnmatch_.h: Readjust white space and comments to match
9048         glibc, to avoid spurious diffs.
9049
9050 2007-01-23  Paul Eggert  <eggert@cs.ucla.edu>
9051
9052         * lib/fnmatch_loop.c (internal_fnmatch) [!_LIBC]: #if-out the
9053         2004-12-01 change by Jakub Jelinek, since this code won't compile
9054         if !LIBC.  Problem reported by Bob Proulx.
9055
9056 2007-01-23  Bruno Haible  <bruno@clisp.org>
9057
9058         * lib/striconveh.c: Include c-strcaseeq.h.
9059         (mem_iconveh, str_iconveh): Use STRCASEEQ instead of c_strcasecmp.
9060         * modules/striconveh (Depends-on): Add c-strcaseeq.
9061
9062 2007-01-23  Bruno Haible  <bruno@clisp.org>
9063
9064         * MODULES.html.sh (String handling): Add streq, c-strcaseeq.
9065
9066         * modules/c-strcaseeq: New file.
9067         * lib/c-strcaseeq.h: New file.
9068
9069         * modules/streq: New file.
9070         * lib/streq.h: New file.
9071
9072 2007-01-23  Bruno Haible  <bruno@clisp.org>
9073
9074         * modules/striconveha-tests: New file.
9075         * tests/test-striconveha.c: New file.
9076
9077         * lib/striconveha.h: Include <stdbool.h>.
9078         (mem_iconveha, str_iconveha): Add 'transliterate' argument.
9079         * lib/striconveha.c: Include allocsa.h, strdup.h, c-strcase.h.
9080         (mem_iconveha_notranslit): Renamed from mem_iconveha.
9081         (mem_iconveha): New function.
9082         (str_iconveha_notranslit): Renamed from str_iconveha.
9083         (str_iconveha): New function.
9084         * modules/striconveha (Depends-on): Add stdbool, allocsa, strdup,
9085         c-strcase.
9086
9087 2007-01-23  Bruno Haible  <bruno@clisp.org>
9088
9089         * lib/striconveha.c (mem_iconveha): Fix endless recursion. Try all
9090         encodings without forgiving before trying any encoding with handler.
9091         (str_iconveha): Try all encodings without forgiving before trying any
9092         encoding with handler.
9093
9094 2007-01-23  Paul Eggert  <eggert@cs.ucla.edu>
9095
9096         Import the following changes from libc.
9097
9098         2005-10-14  Ulrich Drepper  <drepper@redhat.com>
9099
9100         * lib/fnmatch_loop.c: Adjust for changed secondary hash function.
9101
9102         2004-12-01  Jakub Jelinek  <jakub@redhat.com>
9103
9104         * lib/fnmatch_loop.c (internal_fnmatch): Clear is_seqval after
9105         normal_bracket label.
9106
9107         2004-09-01  Jakub Jelinek  <jakub@redhat.com>
9108
9109         [BZ #361]
9110         * lib/fnmatch_loop.c (FCT): For backslash between brackets, branch
9111         to normal_bracket after fetching the next character.
9112
9113 2007-01-22  Bruno Haible  <bruno@clisp.org>
9114
9115         * lib/striconveh.h (mem_cd_iconveh, mem_iconveh): Add 'offsets'
9116         argument.
9117         * lib/striconveh.c (iconv_carefully_1): New function.
9118         (mem_cd_iconveh_internal, mem_cd_iconveh, mem_iconveh): Add 'offsets'
9119         argument.
9120         (str_cd_iconveh): Update.
9121         * lib/striconveha.h (mem_iconveha): Add 'offsets' argument.
9122         * lib/striconveha.c (mem_iconveha): Add 'offsets' argument.
9123         * tests/test-striconveh.c (MAGIC): New macro.
9124         (new_offsets): New function.
9125         (main): Test call with and without offsets.
9126
9127 2007-01-22  Bruno Haible  <bruno@clisp.org>
9128
9129         * modules/sys_stat (Makefile.am): Use @MKDIR_P@ instead of $(MKDIR_P).
9130         * modules/sys_select (Makefile.am): Likewise.
9131         * modules/sys_socket (Makefile.am): Likewise.
9132         * modules/sys_time (Makefile.am): Likewise.
9133
9134 2007-01-22  Paul Eggert  <eggert@cs.ucla.edu>
9135
9136         * modules/gettimeofday (License): Change from GPL to LGPL, since
9137         gettimeofday is a library function.
9138
9139 2007-01-22  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
9140
9141         * lib/poll.c (rpl_poll): Don't check against FD_SETSIZE under Win32.
9142
9143 2007-01-21  Bruno Haible  <bruno@clisp.org>
9144
9145         * m4/gnulib-common.m4 (AC_PROG_MKDIR_P): New macro.
9146
9147 2007-01-21  Bruno Haible  <bruno@clisp.org>
9148
9149         * modules/striconveha: New file.
9150         * lib/striconveha.h: New file.
9151         * lib/striconveha.c: New file.
9152         * MODULES.html.sh (Internationalization functions): Add striconveha.
9153         * lib/striconv.c (str_iconv): Optimize the case of an empty input
9154         string.
9155         * lib/striconveh.c (mem_iconveh, str_iconveh): Likewise.
9156
9157 2007-01-21  Bruno Haible  <bruno@clisp.org>
9158
9159         * lib/striconv.c (str_iconv): Guarantee errno is set when strdup fails.
9160         * lib/striconveh.c (str_iconveh): Likewise.
9161
9162 2007-01-21  Bruno Haible  <bruno@clisp.org>
9163
9164         * lib/striconveh.h (mem_iconveh): New declaration.
9165         * lib/striconveh.c (mem_iconveh): New function.
9166         * tests/test-striconveh.c (main): Add tests for mem_iconveh.
9167
9168 2007-01-21  Bruno Haible  <bruno@clisp.org>
9169
9170         * lib/xstriconv.h (xmem_cd_iconv): Change specification.
9171
9172         * lib/striconveh.h (mem_cd_iconveh): Change specification.
9173         * lib/striconveh.c (mem_cd_iconveh): Don't free the user-supplied
9174         original result buffer.
9175         (str_cd_iconveh): Update.
9176         * tests/test-striconveh.c (main): Update.
9177
9178         * lib/striconv.h (mem_cd_iconv): Change specification.
9179         * lib/striconv.c (mem_cd_iconv): Don't free the user-supplied original
9180         result buffer.
9181         (str_cd_iconv): Update.
9182         * tests/test-striconv.c (main): Update.
9183
9184 2007-01-21  Bruno Haible  <bruno@clisp.org>
9185
9186         * gnulib-tool: Fix test whether sed is GNU sed supporting --posix.
9187
9188 2007-01-20  Jim Meyering  <jim@meyering.net>
9189
9190         * lib/userspec.c (parse_with_separator): If a user or group string
9191         starts with "+", skip the corresponding name-to-ID look-up, since
9192         such a look-up must fail: user and group names may not include "+".
9193
9194 2007-01-19  Paul Eggert  <eggert@cs.ucla.edu>
9195
9196         * lib/poll.c: Include sys/time.h and time.h unconditionally,
9197         since we now assume the sys_time module.
9198         * m4/poll.m4 (gl_PREREQ_POLL): Don't require AC_HEADER_TIME or
9199         check for sys/time.h; no longer needed.
9200         * modules/poll (Depends-on): Depend on sys_time.
9201
9202 2007-01-18  Bruno Haible  <bruno@clisp.org>
9203
9204         * m4/mktime.m4 (AC_FUNC_MKTIME): Remove test for <sys/time.h>.
9205         * m4/strftime.m4 (gl_FUNC_STRFTIME): Likewise.
9206
9207         * m4/tempname.m4 (gl_PREREQ_TEMPNAME): Remove tests for sys/time.h and
9208         gettimeofday.
9209
9210         * tests/test-gettimeofday.c: Include <time.h>.
9211         (dummy): Remove variable.
9212
9213         * m4/sys_time_h.m4 (gl_HEADER_SYS_TIME_H_BODY): Renamed from
9214         gl_HEADER_SYS_TIME_H.
9215         (gl_HEADER_SYS_TIME_H): New macro.
9216
9217         * lib/sys_time_.h: Test GETTIMEOFDAY_REPLACEMENT instead of
9218         HAVE_GETTIMEOFDAY_POSIX_SIGNATURE and GETTIMEOFDAY_CLOBBERS_LOCALTIME.
9219         * m4/gettimeofday.m4 (gl_FUNC_GETTIMEOFDAY,
9220         gl_FUNC_GETTIMEOFDAY_CLOBBER): Set GETTIMEOFDAY_REPLACEMENT instead of
9221         HAVE_GETTIMEOFDAY_POSIX_SIGNATURE and GETTIMEOFDAY_CLOBBERS_LOCALTIME.
9222         * m4/sys_time_h.m4 (gl_HEADER_SYS_TIME_H): Initialize
9223         GETTIMEOFDAY_REPLACEMENT instead of HAVE_GETTIMEOFDAY_POSIX_SIGNATURE
9224         and GETTIMEOFDAY_CLOBBERS_LOCALTIME.
9225         * modules/sys_time (sys/time.h): Substitute GETTIMEOFDAY_REPLACEMENT
9226         instead of HAVE_GETTIMEOFDAY_POSIX_SIGNATURE and
9227         GETTIMEOFDAY_CLOBBERS_LOCALTIME.
9228
9229         * m4/gettimeofday.m4 (gl_GETTIMEOFDAY_REPLACE_LOCALTIME): Undo the
9230         last change; it caused a compilation error when cross-compiling to
9231         Cygwin.
9232
9233 2007-01-18  Jim Meyering  <jim@meyering.net>
9234
9235         Use "$(MKDIR_P) sys", not race-prone "test -d sys || mkdir sys".
9236         * modules/sys_stat (Makefile.am): Use "$(MKDIR_P) sys", rather
9237         than the race-prone "test -d sys || mkdir sys".
9238         (configure.ac): Use AC_PROG_MKDIR_P.
9239         * modules/sys_select: Likewise.
9240         * modules/sys_socket: Likewise.
9241         * modules/sys_time: Likewise.
9242
9243 2007-01-18  Eric Blake  <ebb9@byu.net>
9244
9245         * m4/gettimeofday.m4 (gl_GETTIMEOFDAY_REPLACE_LOCALTIME): Also
9246         replace gettimeofday.
9247         * lib/gettimeofday.c (rpl_gettimeofday): Declare with replacement
9248         name, to avoid infinite recursion.
9249
9250 2007-01-17  Paul Eggert  <eggert@cs.ucla.edu>
9251
9252         * MODULES.html.sh (Support for systems lacking POSIX:2001): New
9253         module sys_time.
9254         * lib/gethrxtime.c: Include <sys/time.h>, since we can no longer
9255         assume timespec.h defines struct timeval.
9256         * lib/settime.c: Likewise.
9257         * lib/utimens.c: Likewise.
9258         * lib/gettime.c (gettime): Remove test against HAVE_GETTIMEOFDAY,
9259         since we now assume the gettimeofday module.
9260         * lib/tempname.c (__gen_tempname): Likewise.
9261         * lib/gettimeofday.h: Remove.
9262         * lib/gettimeofday.c: Include <sys/time.h> instead of "gettimeofday.h".
9263         Don't include <sys/types.h> and <stdlib.h>; shouldn't be needed.
9264         Include <time.h>, for 'time()'.
9265         (localtime_buffer_addr): Also use this workaround if
9266         TZSET_CLOBBERS_LOCALTIME.  Set to a dummy static variable by default,
9267         to simplify the uses.  All uses changed.
9268         (localtime, gmtime, tzset, gettimeofday): Reformat slightly so
9269         that #undef is inside {}, and 'const' follows type name consistently.
9270         (tzset): Define replacement only if TZSET_CLOBBERS_LOCALTIME.
9271         (gettimeofday): Do not use the maximum possible value for
9272         tv->tv_usec, since that might break usages other than ls.c.
9273         Instead, we'll leave ls.c alone.  This undoes today's patch
9274         by Bruno.  Add a compile-time warning for 1s-clock resolution;
9275         we've never observed the problem but might as well keep the
9276         canary.
9277         * lib/nanosleep.c: Include timespec.h first, for interface check.
9278         * lib/nanosleep.c: Include <sys/time.h> unconditionally, since we
9279         now assume the sys_time module.
9280         * lib/tempname.c: Likewise.
9281         * lib/timespec.h: Likewise.
9282         * lib/nanosleep.c: Don't worry about TIME_WITH_SYS_TIME; no longer
9283         needed.
9284         * lib/strftime.c: Likewise.
9285         * lib/timespec.h: Likewise.
9286         * lib/posixtm.c: Include posixtm.h first, for interface check.
9287         Don't worry about TM_IN_SYS_TIME; that's wayyy obsolete.
9288         * lib/posixtm.h: Include stdbool.h and time.h, for proper interface.
9289         * lib/strftime.c: Don't include <sys/types.h>; shouldn't be needed.
9290         * lib/sys_time_.h: New file.
9291         * lib/timespec.h (struct timespec): Use long int, not long.
9292         * m4/gettimeofday.m4 (gl_FUNC_GETTIMEOFDAY):
9293         (gl_FUNC_GETTIMEOFDAY_CLOBBER, gl_PREREQ_GETTIMEOFDAY):
9294         Remove obsolescent call to AC_HEADER_TIME.
9295         * m4/mktime.m4 (AC_FUNC_MKTIME): Likewise.
9296         * m4/nanosleep.m4 (gl_FUNC_NANOSLEEP): Likewise.
9297         * m4/strftime.m4 (gl_FUNC_STRFTIME): Likewise.
9298         * m4/timespec.m4 (gl_TIMESPEC, gl_CHECK_TYPE_STRUCT_TIMESPEC):
9299         Likewise.
9300         * m4/tzset.m4 (gl_FUNC_TZSET_CLOBBER): Likewise.
9301         * m4/utimbuf.m4 (gl_CHECK_TYPE_STRUCT_UTIMBUF): Likewise.
9302         * m4/gettimeofday.m4 (gl_FUNC_GETTIMEOFDAY): Move sys/time.h tests
9303         into the sys_time module.  Check for gettimeofday just once.
9304         Prefix our variables with gl_, not with ac_ or jm_.  Tighten test
9305         for gettimeofday signature to just check the signature.  Merely
9306         compile it, since linking doesn't test signature.  Improve test for
9307         whether gettimeofday.o is actually needed.
9308         (gl_FUNC_GETTIMEOFDAY_CLOBBER): Renamed from
9309         AC_FUNC_GETTIMEOFDAY_CLOBBER.  All uses changed.  Use
9310         AC_RUN_IFELSE rather than AC_TRY_RUN.  If clobbering, set
9311         and define GETTIMEOFDAY_CLOBBERS_LOCALTIME.
9312         (gl_GETTIMEOFDAY_REPLACE_LOCALTIME): Don't define
9313         GETTIMEOFDAY_CLOBBERS_LOCALTIME; that's gl_FUNC_GETTIMEOFDAY_CLOBBER's
9314         job.  Don't define tzset; that's gl_FUNC_TZSET_CLOBBER's job.
9315         * m4/mktime.m4 (AC_FUNC_MKTIME): Just include <time.h> rather
9316         than worrying about sys/time.h.
9317         * m4/nanosleep.m4 (gl_FUNC_NANOSLEEP):
9318         Don't bother worrying about TIME_WITH_SYS_TIME.
9319         * m4/stat-time.m4 (gl_STAT_TIME): Likewise.
9320         * m4/posixtm.m4 (gl_POSIXTM): Remove obsolescent call to AC_STRUCT_TM.
9321         * m4/sys_time_h.m4: New file.
9322         * m4/tzset.m4 (gl_FUNC_TZSET_CLOBBER): Require gl_HEADER_SYS_TIME_H.
9323         Don't include sys/time.h.  Return from main rather than exiting.
9324         Define TZSET_CLOBBERS_LOCALTIME, for consistency with other names;
9325         all uses changed.
9326         * modules/gethrxtime (Depends-on): Add sys_time.
9327         * modules/gettime (Depends-on): Likewise.
9328         * modules/gettimeofday (Depends-on): Likewise.
9329         * modules/nanosleep (Depends-on): Likewise.
9330         * modules/settime (Depends-on): Likewise.
9331         * modules/tempname (Depends-on): Likewise.
9332         * modules/utimens (Depends-on): Likewise.
9333         * modules/gettimeofday (Files): Remove lib/gettimeofday.h.
9334         (Include:) Change back to <sys/time.h>.
9335         (Maintainer:) Add self.
9336         * modules/sys_time: New file.
9337         * modules/tempname (Depends-on): Add gettimeofday.
9338         * tests/test-gettimeofday.c: Include <sys/time.h>
9339         rather than gettimeofday.h.
9340
9341 2007-01-17  Bruno Haible  <bruno@clisp.org>
9342
9343         * gnulib-tool (func_get_license): Revert last patch. Instead, let
9344         the license default to GPL.
9345         (func_create_testdir): Don't complain if a module is LGPL and its
9346         tests module depends on GPLed modules.
9347
9348 2007-01-17  Bruno Haible  <bruno@clisp.org>
9349
9350         * lib/gettimeofday.c (gettimeofday): Add code for the case
9351         HAVE_GETTIMEOFDAY && !GETTIMEOFDAY_CLOBBERS_LOCALTIME. Use the
9352         maximum possible value for tv->tv_usec, rather than the minimum one.
9353
9354 2005-10-08  Martin Lambers  <marlam@marlam.de>
9355 2005-10-08  Paul Eggert  <eggert@cs.ucla.edu>
9356 2007-01-16  Bruno Haible  <bruno@clisp.org>
9357
9358         * modules/gettimeofday (Files): Add lib/gettimeofday.h.
9359         (configure.ac): Remove AC_FUNC_GETTIMEOFDAY_CLOBBER. Add
9360         gl_FUNC_GETTIMEOFDAY.
9361         (Include): Add gettimeofday.h.
9362         * m4/gettimeofday.m4 (gl_FUNC_GETTIMEOFDAY): New macro.
9363         (AC_FUNC_GETTIMEOFDAY_CLOBBER): Don't invoke gl_PREREQ_GETTIMEOFDAY.
9364         (gl_GETTIMEOFDAY_REPLACE_LOCALTIME): Define
9365         GETTIMEOFDAY_CLOBBERS_LOCALTIME. Invoke gl_PREREQ_GETTIMEOFDAY here.
9366         (gl_PREREQ_GETTIMEOFDAY): Check for <sys/timeb.h> and _ftime.
9367         * lib/gettimeofday.h: New file.
9368         * lib/gettimeofday.c: Include <sys/timeb.h>.
9369         (localtime_buffer_addr, rpl_localtime, rpl_gmtime, rpl_tzset): Define
9370         only if GETTIMEOFDAY_CLOBBERS_LOCALTIME.
9371         (rpl_gettimeofday) [!HAVE_GETTIMEOFDAY]: Use _ftime() when available;
9372         fall back on time().
9373
9374         * tests/test-gettimeofday.c: New file.
9375         * modules/gettimeofday-tests: New file.
9376
9377 2007-01-16  Eric Blake  <ebb9@byu.net>
9378
9379         * modules/fnmatch (Depends-on): Depend on wchar.
9380         * lib/fnmatch.c (WIDE_CHAR_SUPPORT): Assume <wchar.h>.
9381         * m4/fnmatch.m4: Likewise.
9382         * modules/mbchar (Makefile.am): Assume <wchar.h>.
9383         * m4/mbchar.m4: Likewise.
9384         * modules/mbswidth (Depends-on): Depend on wchar.
9385         * lib/mbswidth.c: Assume <wchar.h>.
9386         * m4/mbswidth.m4: Likewise.
9387         * modules/quotearg (Depends-on): Depend on wchar.
9388         * lib/quotearg.c: Assume <wchar.h>.
9389         * m4/quotearg.m4: Likewise.
9390         * modules/regex (Depends-on): Depend on wchar.
9391         * lib/regex_internal.h: Assume <wchar.h>.
9392         * m4/regex.m4: Likewise.
9393         * modules/stdint (Depends-on): Depend on wchar.
9394         * lib/stdint_.h [!defined WCHAR_MIN]: Assume <wchar.h>.
9395         * m4/stdint.m4: Likewise.
9396         * tests/test-stdint.c [HAVE_WINT_T]: Likewise.
9397         * modules/strftime (Depends-on): Depend on wchar.
9398         * lib/strftime.c (DO_MULTIBYTE): Assume <wchar.h>.
9399         * modules/strtol (Depends-on): Depend on wchar.
9400         * lib/strtol.c: Assume <wchar.h>.
9401         * modules/wcwidth (Depends-on): Depend on wchar.
9402         * lib/wcwidth.h: Assume <wchar.h>.
9403         * m4/wcwidth.m4: Likewise.
9404
9405 2007-01-16  Bruno Haible  <bruno@clisp.org>
9406
9407         * modules/csharpexec-script: New, created from...
9408         * modules/csharpexec: ... this.
9409
9410 2007-01-16  Paolo Bonzini  <bonzini@gnu.org>
9411
9412         * modules/javaexec-script: New, created from...
9413         * modules/javaexec: ... this.
9414
9415 2007-01-16  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
9416
9417         * modules/poll (Dependencies): Add sys_select.
9418
9419 2007-01-15  Jim Meyering  <jim@meyering.net>
9420
9421         * m4/readutmp.m4 (gl_READUTMP): Work around AIX 4.3 struct-
9422         redefinition bug when using both <utmp.h> and <utmpx.h> headers.
9423         * lib/readutmp.h: Likewise.  Reported by Daniel Richard G. in
9424         <http://article.gmane.org/gmane.comp.gnu.core-utils.bugs/9415>.
9425
9426 2007-01-15  Bruno Haible  <bruno@clisp.org>
9427
9428         * modules/striconveh: New file.
9429         * lib/striconveh.h: New file.
9430         * lib/striconveh.c: New file.
9431         * MODULES.html.sh (Internationalization functions): Add striconveh.
9432
9433         * modules/striconveh-tests: New file.
9434         * tests/test-striconveh.c: New file.
9435
9436 2007-01-15  Bruno Haible  <bruno@clisp.org>
9437
9438         * lib/striconv.c (str_cd_iconv): Use the first algorithm if iconv is
9439         not from GNU libiconv or GNU libc.
9440
9441 2007-01-15  Bruno Haible  <bruno@clisp.org>
9442
9443         * doc/gnulib-intro.texi (Copyright): Explain the different license
9444         terms for module descriptions, autoconf macros, tests, documentation.
9445
9446 2007-01-14  Bruno Haible  <bruno@clisp.org>
9447
9448         * modules/striconv-tests: New file.
9449         * tests/test-striconv.c: New file.
9450
9451 2007-01-14  Bruno Haible  <bruno@clisp.org>
9452
9453         * modules/iconv-tests: New file.
9454         * tests/test-iconv.c: New file.
9455
9456 2007-01-14  Bruno Haible  <bruno@clisp.org>
9457
9458         * gnulib-tool (func_get_license): For test modules, use the license of
9459         the main module.
9460
9461 2007-01-14  Bruno Haible  <bruno@clisp.org>
9462
9463         * modules/iconv (Include): Clarify that <iconv.h> can only be included
9464         if iconv is found to exist.
9465
9466 2007-01-14  Bruno Haible  <bruno@clisp.org>
9467
9468         * modules/c-ctype-tests: New file.
9469         * tests/test-c-ctype.c: New file.
9470
9471 2007-01-14  Bruno Haible  <bruno@clisp.org>
9472
9473         * modules/binary-io-tests: New file.
9474         * tests/test-binary-io.sh: New file.
9475         * tests/test-binary-io.c: New file.
9476
9477 2007-01-14  Bruno Haible  <bruno@clisp.org>
9478
9479         * modules/array-oset-tests: New file.
9480         * tests/test-array_oset.c: New file.
9481
9482 2007-01-14  Bruno Haible  <bruno@clisp.org>
9483
9484         * modules/array-list-tests: New file.
9485         * tests/test-array_list.c: New file.
9486
9487 2007-01-14  Bruno Haible  <bruno@clisp.org>
9488
9489         * gnulib-tool (func_create_testdir): Don't unnecessarily run configure
9490         and make.
9491         Reported by Simon Josefsson in
9492         <http://lists.gnu.org/archive/html/bug-gnulib/2007-01/msg00139.html>
9493
9494 2007-01-14  Bruno Haible  <bruno@clisp.org>
9495
9496         * modules/allocsa-tests: New file.
9497         * tests/test-allocsa.c: New file.
9498
9499 2007-01-14  Bruno Haible  <bruno@clisp.org>
9500
9501         * modules/fchdir (Depends-on): Add absolute-header.
9502         * modules/unistd (Depends-on): Likewise.
9503
9504 2006-12-30  Bruno Haible  <bruno@clisp.org>
9505
9506         * modules/fchdir: New file.
9507         * modules/unistd (Files): Add lib/unistd_.h.
9508         (Makefile.am): Generate unistd.h from unistd_.h.
9509         * lib/fchdir.c: New file.
9510         * lib/dirent_.h: New file.
9511         * lib/unistd_.h: New file.
9512         * lib/fcntl_.h (open) [FCHDIR_REPLACEMENT]: New replacement.
9513         * m4/fchdir.m4: New file.
9514         * m4/unistd_h.m4 (gl_PREREQ_UNISTD): New macro.
9515         (gl_HEADER_UNISTD): Invoke it.
9516         * lib/dup-safer.c (dup_safer) [FCHDIR_REPLACEMENT]: Use the dup
9517         function.
9518         * lib/backupfile.c (opendir, closedir): Undefine.
9519         * lib/chown.c (open, close): Undefine.
9520         * lib/clean-temp.c (open, close): Undefine.
9521         * lib/copy-file.c (open, close): Undefine.
9522         * lib/execute.c (open, close): Undefine.
9523         * lib/fsusage.c (open, close): Undefine.
9524         * lib/gc-gnulib.c (open, close): Undefine.
9525         * lib/getcwd.c (opendir, closedir): Undefine.
9526         * lib/glob.c (opendir, closedir): Undefine.
9527         * lib/javacomp.c (open, close): Undefine.
9528         * lib/mountlist.c (open, close, opendir, closedir): Undefine.
9529         * lib/openat-proc.c (open, close): Undefine.
9530         * lib/pagealign_alloc.c (open, close): Undefine.
9531         * lib/pipe.c (open, close): Undefine.
9532         * lib/progreloc.c (open, close): Undefine.
9533         * lib/savedir.c (opendir, closedir): Undefine.
9534         * lib/utime.c (open, close): Undefine.
9535         * MODULES.html.sh (Support for systems lacking POSIX:2001): Add fchdir.
9536
9537 2007-01-10  Bruno Haible  <bruno@clisp.org>
9538
9539         * lib/striconv.c (mem_cd_iconv): Align the temporary buffer.
9540
9541 2007-01-12  Eric Blake  <ebb9@byu.net>
9542
9543         Provide a robust <wchar.h>.  Further simplifications are now
9544         possible in other modules, but not included here.
9545         * modules/wchar: New module.
9546         * m4/wchar.m4: New file.
9547         * lib/wchar_.h: Likewise.
9548         * modules/mbchar (Depends-on): Depend on wchar, as the first use
9549         of the new module.
9550         * MODULES.html.sh (Extended multibyte and wide character utilities):
9551         New section.
9552
9553 2007-01-12  Paul Eggert  <eggert@cs.ucla.edu>
9554
9555         * lib/xreadlink.c (SYMLINK_MAX) [!defined SYMLINK_MAX]: Define
9556         to a reasonable default for memory allocation.
9557         (xreadlink): Don't allocate a huge buffer, to work around a buggy
9558         file system that reports garbage st_size values for symlinks.
9559         Problem reported by Liyang Hu.
9560
9561 2007-01-11  Simon Josefsson  <simon@josefsson.org>
9562
9563         * gnulib-tool (func_all_modules): Exclude all .* files (e.g.,
9564         Emacs .#* auto-save files).
9565
9566 2007-01-11  Bruno Haible  <bruno@clisp.org>
9567
9568         * gnulib-tool (func_all_modules): Exclude all files inside the CVS
9569         directory.
9570
9571 2007-01-10  Paul Eggert  <eggert@cs.ucla.edu>
9572
9573         Use @...@ consistently in lib/wctype_.h.
9574         * lib/wctype_.h [HAVE_WINT_T]: Go back to using @...@, but rely
9575         on it being set to 1 or 0.
9576         * m4/wctype.m4 (gl_WCTYPE_H): Set HAVE_WINT_T to 1 or 0, and
9577         go back to AC_SUBSTing it.
9578         * modules/wctype (Makefile.am): Undo previous change.
9579
9580 2007-01-10  Eric Blake  <ebb9@byu.net>
9581
9582         * lib/wctype_.h [HAVE_WINT_T]: Rely on AC_DEFINE.
9583         * m4/wctype.m4 (gl_WCTYPE_H): No need to AC_SUBST(HAVE_WINT_T).
9584         * modules/wctype (Makefile.am): Likewise.
9585         Reported by Chris McGuire.
9586
9587 2007-01-10  Jim Meyering  <jim@meyering.net>
9588
9589         fts.c: a small readability/maintainability improvement
9590         * lib/fts.c (fts_read): Make this code slightly more readable and
9591         maintainable by hoisting the "sp->fts_cur = p" assignments to
9592         immediately follow the statements that set P.  Derived from
9593         the patch by Miloslav Trmac in http://bugzilla.redhat.com/222089.
9594
9595 2007-01-10  Eric Blake  <ebb9@byu.net>
9596
9597         * lib/wctype_.h [HAVE_WINT_T]: Include <stddef.h> before
9598         <wchar.h>, to work around BSDI bug in BSD/OS 4.0.1.
9599         * m4/wcwidth.m4 (gl_FUNC_WCWIDTH): Likewise.
9600         * m4/wint_t.m4 (gt_TYPE_WINT_T): Likewise.
9601         Reported by Chris McGuire.
9602
9603 2007-01-09  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
9604
9605         * gnulib-tool (func_all_modules): Use POSIX conforming escaping
9606         in sed script.
9607
9608 2007-01-09  Bruno Haible  <bruno@clisp.org>
9609
9610         * MODULES.html.sh: Accept options --cvs-urls, --git-urls.
9611         (repo_url_prefix, repo_url_suffix, repo_url_suffix_repl): New
9612         variables.
9613         (func_module): Use them.
9614
9615 2007-01-09  Bruno Haible  <bruno@clisp.org>
9616
9617         * modules/unistr/base: New file.
9618         * lib/unistr.h: New file.
9619
9620         * modules/unistr/u8-to-u16: New file.
9621         * lib/unistr/u8-to-u16.c: New file.
9622
9623         * modules/unistr/u8-to-u32: New file.
9624         * lib/unistr/u8-to-u32.c: New file.
9625
9626         * modules/unistr/u16-to-u8: New file.
9627         * lib/unistr/u16-to-u8.c: New file.
9628
9629         * modules/unistr/u16-to-u32: New file.
9630         * lib/unistr/u16-to-u32.c: New file.
9631
9632         * modules/unistr/u32-to-u8: New file.
9633         * lib/unistr/u32-to-u8.c: New file.
9634
9635         * modules/unistr/u32-to-u16: New file.
9636         * lib/unistr/u32-to-u16.c: New file.
9637
9638         * modules/unistr/u8-check: New file.
9639         * modules/unistr/u16-check: New file.
9640         * modules/unistr/u32-check: New file.
9641         * lib/unistr/u8-check.c: New file.
9642         * lib/unistr/u16-check.c: New file.
9643         * lib/unistr/u32-check.c: New file.
9644
9645         * modules/unistr/u8-chr: New file.
9646         * modules/unistr/u16-chr: New file.
9647         * modules/unistr/u32-chr: New file.
9648         * lib/unistr/u8-chr.c: New file.
9649         * lib/unistr/u16-chr.c: New file.
9650         * lib/unistr/u32-chr.c: New file.
9651
9652         * modules/unistr/u8-cmp: New file.
9653         * modules/unistr/u16-cmp: New file.
9654         * modules/unistr/u32-cmp: New file.
9655         * lib/unistr/u8-cmp.c: New file.
9656         * lib/unistr/u16-cmp.c: New file.
9657         * lib/unistr/u32-cmp.c: New file.
9658
9659         * modules/unistr/u8-cpy: New file.
9660         * modules/unistr/u16-cpy: New file.
9661         * modules/unistr/u32-cpy: New file.
9662         * lib/unistr/u8-cpy.c: New file.
9663         * lib/unistr/u16-cpy.c: New file.
9664         * lib/unistr/u32-cpy.c: New file.
9665         * lib/unistr/u-cpy.h: New file.
9666
9667         * modules/unistr/u8-cpy-alloc: New file.
9668         * modules/unistr/u16-cpy-alloc: New file.
9669         * modules/unistr/u32-cpy-alloc: New file.
9670         * lib/unistr/u8-cpy-alloc.c: New file.
9671         * lib/unistr/u16-cpy-alloc.c: New file.
9672         * lib/unistr/u32-cpy-alloc.c: New file.
9673         * lib/unistr/u-cpy-alloc.h: New file.
9674
9675         * modules/unistr/u8-endswith: New file.
9676         * modules/unistr/u16-endswith: New file.
9677         * modules/unistr/u32-endswith: New file.
9678         * lib/unistr/u8-endswith.c: New file.
9679         * lib/unistr/u16-endswith.c: New file.
9680         * lib/unistr/u32-endswith.c: New file.
9681         * lib/unistr/u-endswith.h: New file.
9682
9683         * modules/unistr/u8-mblen: New file.
9684         * modules/unistr/u16-mblen: New file.
9685         * modules/unistr/u32-mblen: New file.
9686         * lib/unistr/u8-mblen.c: New file.
9687         * lib/unistr/u16-mblen.c: New file.
9688         * lib/unistr/u32-mblen.c: New file.
9689
9690         * modules/unistr/u8-mbtouc: New file.
9691         * modules/unistr/u16-mbtouc: New file.
9692         * modules/unistr/u32-mbtouc: New file.
9693         * lib/unistr/u8-mbtouc.c: New file.
9694         * lib/unistr/u16-mbtouc.c: New file.
9695         * lib/unistr/u32-mbtouc.c: New file.
9696
9697         * modules/unistr/u8-mbtouc-safe: New file.
9698         * modules/unistr/u16-mbtouc-safe: New file.
9699         * modules/unistr/u32-mbtouc-safe: New file.
9700         * lib/unistr/u8-mbtouc-safe.c: New file.
9701         * lib/unistr/u16-mbtouc-safe.c: New file.
9702         * lib/unistr/u32-mbtouc-safe.c: New file.
9703
9704         * modules/unistr/u8-move: New file.
9705         * modules/unistr/u16-move: New file.
9706         * modules/unistr/u32-move: New file.
9707         * lib/unistr/u8-move.c: New file.
9708         * lib/unistr/u16-move.c: New file.
9709         * lib/unistr/u32-move.c: New file.
9710         * lib/unistr/u-move.h: New file.
9711
9712         * modules/unistr/u8-next: New file.
9713         * modules/unistr/u16-next: New file.
9714         * modules/unistr/u32-next: New file.
9715         * lib/unistr/u8-next.c: New file.
9716         * lib/unistr/u16-next.c: New file.
9717         * lib/unistr/u32-next.c: New file.
9718
9719         * modules/unistr/u8-prev: New file.
9720         * modules/unistr/u16-prev: New file.
9721         * modules/unistr/u32-prev: New file.
9722         * lib/unistr/u8-prev.c: New file.
9723         * lib/unistr/u16-prev.c: New file.
9724         * lib/unistr/u32-prev.c: New file.
9725
9726         * modules/unistr/u8-set: New file.
9727         * modules/unistr/u16-set: New file.
9728         * modules/unistr/u32-set: New file.
9729         * lib/unistr/u8-set.c: New file.
9730         * lib/unistr/u16-set.c: New file.
9731         * lib/unistr/u32-set.c: New file.
9732         * lib/unistr/u-set.h: New file.
9733
9734         * modules/unistr/u8-startswith: New file.
9735         * modules/unistr/u16-startswith: New file.
9736         * modules/unistr/u32-startswith: New file.
9737         * lib/unistr/u8-startswith.c: New file.
9738         * lib/unistr/u16-startswith.c: New file.
9739         * lib/unistr/u32-startswith.c: New file.
9740         * lib/unistr/u-startswith.h: New file.
9741
9742         * modules/unistr/u8-stpcpy: New file.
9743         * modules/unistr/u16-stpcpy: New file.
9744         * modules/unistr/u32-stpcpy: New file.
9745         * lib/unistr/u8-stpcpy.c: New file.
9746         * lib/unistr/u16-stpcpy.c: New file.
9747         * lib/unistr/u32-stpcpy.c: New file.
9748         * lib/unistr/u-stpcpy.h: New file.
9749
9750         * modules/unistr/u8-stpncpy: New file.
9751         * modules/unistr/u16-stpncpy: New file.
9752         * modules/unistr/u32-stpncpy: New file.
9753         * lib/unistr/u8-stpncpy.c: New file.
9754         * lib/unistr/u16-stpncpy.c: New file.
9755         * lib/unistr/u32-stpncpy.c: New file.
9756         * lib/unistr/u-stpncpy.h: New file.
9757
9758         * modules/unistr/u8-strcat: New file.
9759         * modules/unistr/u16-strcat: New file.
9760         * modules/unistr/u32-strcat: New file.
9761         * lib/unistr/u8-strcat.c: New file.
9762         * lib/unistr/u16-strcat.c: New file.
9763         * lib/unistr/u32-strcat.c: New file.
9764         * lib/unistr/u-strcat.h: New file.
9765
9766         * modules/unistr/u8-strchr: New file.
9767         * modules/unistr/u16-strchr: New file.
9768         * modules/unistr/u32-strchr: New file.
9769         * lib/unistr/u8-strchr.c: New file.
9770         * lib/unistr/u16-strchr.c: New file.
9771         * lib/unistr/u32-strchr.c: New file.
9772
9773         * modules/unistr/u8-strcmp: New file.
9774         * modules/unistr/u16-strcmp: New file.
9775         * modules/unistr/u32-strcmp: New file.
9776         * lib/unistr/u8-strcmp.c: New file.
9777         * lib/unistr/u16-strcmp.c: New file.
9778         * lib/unistr/u32-strcmp.c: New file.
9779
9780         * modules/unistr/u8-strcpy: New file.
9781         * modules/unistr/u16-strcpy: New file.
9782         * modules/unistr/u32-strcpy: New file.
9783         * lib/unistr/u8-strcpy.c: New file.
9784         * lib/unistr/u16-strcpy.c: New file.
9785         * lib/unistr/u32-strcpy.c: New file.
9786         * lib/unistr/u-strcpy.h: New file.
9787
9788         * modules/unistr/u8-strcspn: New file.
9789         * modules/unistr/u16-strcspn: New file.
9790         * modules/unistr/u32-strcspn: New file.
9791         * lib/unistr/u8-strcspn.c: New file.
9792         * lib/unistr/u16-strcspn.c: New file.
9793         * lib/unistr/u32-strcspn.c: New file.
9794         * lib/unistr/u-strcspn.h: New file.
9795
9796         * modules/unistr/u8-strdup: New file.
9797         * modules/unistr/u16-strdup: New file.
9798         * modules/unistr/u32-strdup: New file.
9799         * lib/unistr/u8-strdup.c: New file.
9800         * lib/unistr/u16-strdup.c: New file.
9801         * lib/unistr/u32-strdup.c: New file.
9802         * lib/unistr/u-strdup.h: New file.
9803
9804         * modules/unistr/u8-strlen: New file.
9805         * modules/unistr/u16-strlen: New file.
9806         * modules/unistr/u32-strlen: New file.
9807         * lib/unistr/u8-strlen.c: New file.
9808         * lib/unistr/u16-strlen.c: New file.
9809         * lib/unistr/u32-strlen.c: New file.
9810         * lib/unistr/u-strlen.h: New file.
9811
9812         * modules/unistr/u8-strmblen: New file.
9813         * modules/unistr/u16-strmblen: New file.
9814         * modules/unistr/u32-strmblen: New file.
9815         * lib/unistr/u8-strmblen.c: New file.
9816         * lib/unistr/u16-strmblen.c: New file.
9817         * lib/unistr/u32-strmblen.c: New file.
9818
9819         * modules/unistr/u8-strmbtouc: New file.
9820         * modules/unistr/u16-strmbtouc: New file.
9821         * modules/unistr/u32-strmbtouc: New file.
9822         * lib/unistr/u8-strmbtouc.c: New file.
9823         * lib/unistr/u16-strmbtouc.c: New file.
9824         * lib/unistr/u32-strmbtouc.c: New file.
9825
9826         * modules/unistr/u8-strncat: New file.
9827         * modules/unistr/u16-strncat: New file.
9828         * modules/unistr/u32-strncat: New file.
9829         * lib/unistr/u8-strncat.c: New file.
9830         * lib/unistr/u16-strncat.c: New file.
9831         * lib/unistr/u32-strncat.c: New file.
9832         * lib/unistr/u-strncat.h: New file.
9833
9834         * modules/unistr/u8-strncmp: New file.
9835         * modules/unistr/u16-strncmp: New file.
9836         * modules/unistr/u32-strncmp: New file.
9837         * lib/unistr/u8-strncmp.c: New file.
9838         * lib/unistr/u16-strncmp.c: New file.
9839         * lib/unistr/u32-strncmp.c: New file.
9840
9841         * modules/unistr/u8-strncpy: New file.
9842         * modules/unistr/u16-strncpy: New file.
9843         * modules/unistr/u32-strncpy: New file.
9844         * lib/unistr/u8-strncpy.c: New file.
9845         * lib/unistr/u16-strncpy.c: New file.
9846         * lib/unistr/u32-strncpy.c: New file.
9847         * lib/unistr/u-strncpy.h: New file.
9848
9849         * modules/unistr/u8-strnlen: New file.
9850         * modules/unistr/u16-strnlen: New file.
9851         * modules/unistr/u32-strnlen: New file.
9852         * lib/unistr/u8-strnlen.c: New file.
9853         * lib/unistr/u16-strnlen.c: New file.
9854         * lib/unistr/u32-strnlen.c: New file.
9855         * lib/unistr/u-strnlen.h: New file.
9856
9857         * modules/unistr/u8-strpbrk: New file.
9858         * modules/unistr/u16-strpbrk: New file.
9859         * modules/unistr/u32-strpbrk: New file.
9860         * lib/unistr/u8-strpbrk.c: New file.
9861         * lib/unistr/u16-strpbrk.c: New file.
9862         * lib/unistr/u32-strpbrk.c: New file.
9863         * lib/unistr/u-strpbrk.h: New file.
9864
9865         * modules/unistr/u8-strrchr: New file.
9866         * modules/unistr/u16-strrchr: New file.
9867         * modules/unistr/u32-strrchr: New file.
9868         * lib/unistr/u8-strrchr.c: New file.
9869         * lib/unistr/u16-strrchr.c: New file.
9870         * lib/unistr/u32-strrchr.c: New file.
9871
9872         * modules/unistr/u8-strspn: New file.
9873         * modules/unistr/u16-strspn: New file.
9874         * modules/unistr/u32-strspn: New file.
9875         * lib/unistr/u8-strspn.c: New file.
9876         * lib/unistr/u16-strspn.c: New file.
9877         * lib/unistr/u32-strspn.c: New file.
9878         * lib/unistr/u-strspn.h: New file.
9879
9880         * modules/unistr/u8-strstr: New file.
9881         * modules/unistr/u16-strstr: New file.
9882         * modules/unistr/u32-strstr: New file.
9883         * lib/unistr/u8-strstr.c: New file.
9884         * lib/unistr/u16-strstr.c: New file.
9885         * lib/unistr/u32-strstr.c: New file.
9886         * lib/unistr/u-strstr.h: New file.
9887
9888         * modules/unistr/u8-strtok: New file.
9889         * modules/unistr/u16-strtok: New file.
9890         * modules/unistr/u32-strtok: New file.
9891         * lib/unistr/u8-strtok.c: New file.
9892         * lib/unistr/u16-strtok.c: New file.
9893         * lib/unistr/u32-strtok.c: New file.
9894         * lib/unistr/u-strtok.h: New file.
9895
9896         * modules/unistr/u8-uctomb: New file.
9897         * modules/unistr/u16-uctomb: New file.
9898         * modules/unistr/u32-uctomb: New file.
9899         * lib/unistr/u8-uctomb.c: New file.
9900         * lib/unistr/u16-uctomb.c: New file.
9901         * lib/unistr/u32-uctomb.c: New file.
9902
9903         * MODULES.html.sh (Unicode string functions): Add the new modules.
9904
9905 2007-01-08  Bruno Haible  <bruno@clisp.org>
9906
9907         * gnulib-tool (func_all_modules): Use find, not ls, to traverse the
9908         modules directory. Filter out CVS, ChangeLog, COPYING, README also from
9909         subdirectories.
9910
9911 2007-01-08  Karl Berry  <karl@gnu.org>
9912
9913         * doc/error.texi: mention that main() fns must set program_name
9914         when progname is used.
9915
9916 2007-01-08  Paul Eggert  <eggert@cs.ucla.edu>
9917
9918         * m4/wctype.m4 (gl_WCTYPE_H): Compute ABSOLUTE_WCTYPE_H even if
9919         WCTYPE_H is empty, for the benefit of builds from non-distclean
9920         directories.  Problem reported by Eric Blake in
9921         <http://lists.gnu.org/archive/html/bug-gnulib/2007-01/msg00157.html>.
9922
9923 2007-01-08  Bruno Haible  <bruno@clisp.org>
9924
9925         * m4/canonicalize.m4 (AC_FUNC_CANONICALIZE_FILE_NAME): Remove
9926         PROVIDE_CANONICALIZE_FILENAME_MODE macro definition.
9927         * lib/canonicalize.h: Test GNULIB_CANONICALIZE instead of
9928         PROVIDE_CANONICALIZE_FILENAME_MODE.
9929         * modules/canonicalize (configure.ac): Use gl_MODULE_INDICATOR.
9930
9931 2007-01-08  Bruno Haible  <bruno@clisp.org>
9932
9933         * m4/fts.m4 (gl_FUNC_FTS_LGPL): Remove _LGPL_PACKAGE macro definition.
9934         * lib/fts_.h (_LGPL_PACKAGE): Remove macro.
9935         Use !GNULIB_FTS instead of _LGPL_PACKAGE.
9936         * lib/fts.c: Likewise.
9937         * modules/fts (configure.ac): Use gl_MODULE_INDICATOR.
9938
9939 2006-12-25  Bruno Haible  <bruno@clisp.org>
9940
9941         * modules/utf8-ucs4-safe: New file.
9942         * lib/utf8-ucs4-safe.h: New file.
9943         * lib/unistr/utf8-ucs4-safe.c: New file.
9944
9945         * modules/utf16-ucs4-safe: New file.
9946         * lib/utf16-ucs4-safe.h: New file.
9947         * lib/unistr/utf16-ucs4-safe.c: New file.
9948
9949         * MODULES.html.sh (Unicode string functions): Add the new modules.
9950
9951 2007-01-08  Bruno Haible  <bruno@clisp.org>
9952
9953         * modules/utf8-ucs4 (Files, lib_SOURCES): Add unistr/utf8-ucs4.c.
9954         (Depends-on): Add unitypes.
9955         * lib/utf8-ucs4.h: Add double-inclusion guard. Include unitypes.h.
9956         (u8_mbtouc_aux): Move out to separate file.
9957         (u8_mbtouc): Use ucs4_t, uint8_t types.
9958         * lib/unistr/utf8-ucs4.c: New file.
9959
9960         * modules/utf16-ucs4 (Files, lib_SOURCES): Add unistr/utf16-ucs4.c.
9961         (Depends-on): Add unitypes.
9962         * lib/utf16-ucs4.h: Add double-inclusion guard. Include unitypes.h.
9963         (u16_mbtouc_aux): Move out to separate file.
9964         (u16_mbtouc): Use ucs4_t, uint16_t types.
9965         * lib/unistr/utf16-ucs4.c: New file.
9966
9967         * modules/ucs4-utf8 (Files, lib_SOURCES): Add unistr/ucs4-utf8.c.
9968         (Depends-on): Add unitypes.
9969         * lib/ucs4-utf8.h: Add double-inclusion guard. Include unitypes.h.
9970         (u8_uctomb_aux): Move out to separate file.
9971         (u8_uctomb): Use ucs4_t, uint8_t types.
9972         * lib/unistr/ucs4-utf8.c: New file.
9973
9974         * modules/ucs4-utf16 (Files, lib_SOURCES): Add unistr/ucs4-utf16.c.
9975         (Depends-on): Add unitypes.
9976         * lib/ucs4-utf16.h: Add double-inclusion guard. Include unitypes.h.
9977         (u16_uctomb_aux): Move out to separate file.
9978         (u16_uctomb): Use ucs4_t, uint16_t types.
9979         * lib/unistr/ucs4-utf16.c: New file.
9980
9981 2006-12-25  Bruno Haible  <bruno@clisp.org>
9982
9983         * modules/unitypes: New file.
9984         * lib/unitypes.h: New file.
9985         * MODULES.html.sh (func_all_modules): New section "Unicode string
9986         functions". Move ucs4-utf8, ucs4-utf16, utf8-ucs4, utf16-ucs4 to
9987         this section. Add unitypes.
9988
9989 2007-01-08  Bruno Haible  <bruno@clisp.org>
9990
9991         Avoid variable names that conflict with those from libtool.
9992         * m4/lib-link.m4 (AC_LIB_RPATH, AC_LIB_LINKFLAGS_BODY,
9993         AC_LIB_LINKFLAGS_FROM_LIBS): Rename libext to acl_libext,
9994         shlibext to acl_shlibext, libname_spec to acl_libname_spec,
9995         library_names_spec to acl_library_names_spec, hardcode_* to
9996         acl_hardcode_*.
9997         Reported by Ralf Wildenhues.
9998
9999 2007-01-08  Bruno Haible  <bruno@clisp.org>
10000
10001         * m4/gc-arcfour.m4 (gl_GC_ARCFOUR): Remove GC_USE_ARCFOUR macro
10002         definition.
10003         * m4/gc-arctwo.m4 (gl_GC_ARCTWO): Remove GC_USE_ARCTWO macro
10004         definition.
10005         * m4/gc-des.m4 (gl_GC_DES): Remove GC_USE_DES macro definition.
10006         * m4/gc-hmac-md5.m4 (gl_GC_HMAC_MD5): Remove GC_USE_HMAC_MD5 macro
10007         definition.
10008         * m4/gc-hmac-sha1.m4 (gl_GC_HMAC_SHA1): Remove GC_USE_HMAC_SHA1 macro
10009         definition.
10010         * m4/gc-md2.m4 (gl_GC_MD2): Remove GC_USE_MD2 macro definition.
10011         * m4/gc-md4.m4 (gl_GC_MD4): Remove GC_USE_MD4 macro definition.
10012         * m4/gc-md5.m4 (gl_GC_MD5): Remove GC_USE_MD5 macro definition.
10013         * m4/gc-random.m4 (gl_GC_RANDOM): Remove GC_USE_RANDOM macro
10014         definition.
10015         * m4/gc-rijndael.m4 (gl_GC_RIJNDAEL): Remove GC_USE_RIJNDAEL macro
10016         definition.
10017         * m4/gc-sha1.m4 (gl_GC_SHA1): Remove GC_USE_SHA1 macro definition.
10018         * lib/gc-gnulib.c: Use GNULIB_GC_<algorithm> instead of
10019         GC_USE_<algorithm>.
10020         * lib/gc-libgcrypt.c: Likewise.
10021         * modules/gc-arcfour (configure.ac): Use gl_MODULE_INDICATOR.
10022         * modules/gc-arctwo (configure.ac): Likewise.
10023         * modules/gc-des (configure.ac): Likewise.
10024         * modules/gc-hmac-md5 (configure.ac): Likewise.
10025         * modules/gc-hmac-sha1 (configure.ac): Likewise.
10026         * modules/gc-md2 (configure.ac): Likewise.
10027         * modules/gc-md4 (configure.ac): Likewise.
10028         * modules/gc-md5 (configure.ac): Likewise.
10029         * modules/gc-random (configure.ac): Likewise.
10030         * modules/gc-rijndael (configure.ac): Likewise.
10031         * modules/gc-sha1 (configure.ac): Likewise.
10032
10033 2007-01-08  Bruno Haible  <bruno@clisp.org>
10034
10035         * m4/close-stream.m4 (gl_CLOSE_STREAM): Remove GNULIB_CLOSE_STREAM
10036         macro definition.
10037         * m4/fcntl-safer.m4 (gl_FCNTL_SAFER): Remove GNULIB_FCNTL_SAFER macro
10038         definition.
10039         * m4/stdio-safer.m4 (gl_FOPEN_SAFER): Remove GNULIB_FOPEN_SAFER macro
10040         definition.
10041         * modules/close-stream (configure.ac): Invoke gl_MODULE_INDICATOR.
10042         * modules/fcntl-safer (configure.ac): Likewise.
10043         * modules/fopen-safer (configure.ac): Likewise.
10044         * modules/fwriteerror (configure.ac): Likewise. Remove explicit
10045         GNULIB_FWRITEERROR macro definition.
10046
10047 2007-01-08  Bruno Haible  <bruno@clisp.org>
10048
10049         * m4/gnulib-common.m4: New file.
10050         * gnulib-tool (func_get_autoconf_snippet): Undo last change.
10051         (func_get_filelist): Add m4/gnulib-common.m4.
10052
10053 2007-01-08  Bruno Haible  <bruno@clisp.org>
10054
10055         * m4/lib-link.m4 (AC_LIB_LINKFLAGS_BODY): Simplify the sorting
10056         command.
10057
10058 2007-01-08  Jim Meyering  <jim@meyering.net>
10059
10060         Use a more robust test for a "can't happen" condition.
10061         * lib/fts.c (fts_read): Revert the change of 2006-11-22, since it
10062         narrowed the st_size value.  Presuming the "can't happen" condition
10063         is true, that narrowing could conceivably convert an invalid st_size
10064         value into a valid one.  Instead, use a change based on Matthew
10065         Woehlke's original patch.
10066
10067         Slight readability improvement: use an assert-like macro
10068         in place of literal "abort ()" uses.
10069         * lib/fts.c (fts_assert): Define.
10070         (fts_set_stat_required, cwd_advance_fd, fts_read, fd_ring_check):
10071         Use this macro instead of a bare 'abort'.
10072
10073 2007-01-05  Paul Eggert  <eggert@cs.ucla.edu>
10074
10075         Don't worry about using IRIX 5.3's wctype.h broken definitions;
10076         simply work around them.
10077         * lib/wctype_.h: Remove test for HAVE_WCTYPE_CTMP_BUG.
10078         (iswalnum, iswalpha, iswblank, iswcntrl, iswdigit, iswgraph, iswlower):
10079         (iswprint, iswpunct, iswspace, iswupper, iswxdigit): Undef before
10080         declaring.
10081         Don't bother to define as macros, since the standard doesn't require it.
10082         * m4/wctype.m4 (WCTYPE_H, ABSOLUTE_WCTYPE_H): Simplify, since we no
10083         longer worry about IRIX 5.3.
10084         (HAVE_WCTYPE_CTMP_BUG): Remove.
10085
10086 2007-01-04  Paul Eggert  <eggert@cs.ucla.edu>
10087
10088         * lib/wctype_.h (_ctmp_) [HAVE_WCTYPE_CTMP_BUG]: Now of type wchar_t,
10089         not wint_t.  Also, include <ctype.h>, to fix another IRIX bug.
10090         * m4/wctype.m4 (gl_WCTYPE_H): Likewise.
10091         Problems reported by Georg Schwarz for IRIX 5.3.
10092
10093         * gnulib-tool (autoconf_minversion): Take the maximum version number
10094         found, not the minimum.  Problem reported by James Youngman.
10095
10096 2007-01-03  Karl Berry  <karl@gnu.org>
10097
10098         * doc/error.texi: new file, explaining interaction with progname.
10099         * doc/gnulib.texi: include it.  Update copyright.
10100
10101 2007-01-03  Simon Josefsson  <simon@josefsson.org>
10102
10103         * gnulib-tool (func_create_testdir): Run AC_CANONICAL_BUILD and
10104         AC_CANONICAL_HOST, to improve autobuild outputs.
10105
10106 2007-01-03  Paolo Bonzini  <bonzini@gnu.org>
10107             Yoann Vandoorselaere <yoann.v@prelude-ids.com>
10108
10109         * lib/poll.c (poll): Use recv on Mac OS X to distinguish connected
10110         sockets, server sockets, and other file descriptors.  Count errors
10111         to compute the return value.  Reorder the code a bit to be easier
10112         to follow.  Don't set event bits that were not requested (except
10113         POLLERR and POLLHUP).
10114
10115 2007-01-01  Bruno Haible  <bruno@clisp.org>
10116
10117         * modules/lchmod (Include): Require lchmod.h, not lchown.h.
10118
10119 2007-01-03  Jim Meyering  <jim@meyering.net>
10120
10121         * modules/fts-lgpl (Depends-on): Add i-ring.  Reported by Bruno Haible.
10122
10123 2007-01-02  Bruno Haible  <bruno@clisp.org>
10124
10125         * modules/settime (Include): Require timespec.h.
10126         * modules/nanosleep (Include): Likewise.
10127
10128 2007-01-01  Bruno Haible  <bruno@clisp.org>
10129
10130         * gnulib-tool (func_emit_copyright_notice): Bump year.
10131         (func_get_autoconf_snippet): Emit a GNULIB_<modulename> macro.
10132
10133 2007-01-01  Bruno Haible  <bruno@clisp.org>
10134
10135         Improve support for OpenBSD.
10136         * build-aux/config.rpath (libname_spec): Export.
10137         (library_names_spec): New variable. Export.
10138         * m4/lib-link.m4 (AC_LIB_LINKFLAGS_BODY): Extract libname_spec and
10139         library_names_spec from the config.rpath output. Locate shared library
10140         through the name pattern in library_names_spec.
10141
10142 2007-01-01  Eric Blake  <ebb9@byu.net>
10143
10144         * lib/version-etc.c (COPYRIGHT_YEAR): Bump for new year.
10145
10146 2006-12-30  Paul Eggert  <eggert@cs.ucla.edu>
10147
10148         * gnulib-tool (SORT): Remove, since we no longer assume GNU sort.
10149         Rewrite so as not to assume GNU sort or "tail -1".  Also, don't
10150         assume the C locale, and avoid an "eval" that could cause trouble.
10151         Problem with SORT reported by Bob Proulx.
10152
10153         * lib/getpagesize.h (getpagesize) [defined __amigaos4__]:
10154         Define.  Trivial patch from Henning Nielsen Lund, originally
10155         sent to bug-grep@gnu.org today.
10156
10157 2006-12-29  Paul Eggert  <eggert@cs.ucla.edu>
10158
10159         * lib/acl.h: Include sys/types.h and sys/stat.h, for mode_t and
10160         struct stat.  Problem reported by Henning Nielsen Lund.
10161         * lib/acl.c: Include acl.h first, to check interface.  Don't
10162         bother to include sys/types.h and sys/stat.h again.
10163
10164 2006-12-28  Paul Eggert  <eggert@cs.ucla.edu>
10165
10166         Import the following change from libc; problem reported by
10167         Sven Verdoolaege.
10168
10169         2005-10-13  Ulrich Drepper  <drepper@redhat.com>
10170
10171         [BZ #1373]
10172         * lib/argp.h: Remove __NTH for __argp_usage inline function.
10173
10174 2006-12-28  Jim Meyering  <jim@meyering.net>
10175
10176         * build-aux/announce-gen: Do not assume that the package
10177         builds any of tar.gz, tar.bz2, and .xdelta files.
10178         Suggestion from Simon Josefsson.
10179
10180 2006-12-28  Simon Josefsson  <simon@josefsson.org>
10181
10182         * modules/announce-gen: New file.
10183
10184 2006-12-27  Paul Eggert  <eggert@cs.ucla.edu>
10185
10186         * lib/mbchar.h: Just include <wctype.h>; the wctype module
10187         handles its gotchas now.
10188         * lib/mbswidth.c: Likewise.
10189         * lib/wcwidth.h: Likewise.
10190         * m4/mbchar.m4 (gl_MBCHAR): Don't bother checking for wctype.h
10191         and iswcntrl; the wctype module does this stuff now.
10192         * m4/mbswidth.m4 (gl_MBSWIDTH): Likewise.
10193         * m4/wcwidth.m4 (gl_FUNC_WCWIDTH): Likewise.
10194         * modules/mbchar (Depends-on): Add wctype.
10195         * modules/mbswidth (Depends-on): Likewise.
10196         * modules/wcwidth (Depends-on): Likewise.
10197
10198 2006-12-27  Eric Blake  <ebb9@byu.net>
10199
10200         * lib/fnmatch.c: Reinstate inclusion of <wchar.h>, since this
10201         module uses more than what <wctype.h> is required to provide.
10202
10203 2006-12-26  Eric Blake  <ebb9@byu.net>
10204
10205         * gnulib-tool (sed_extract_prog): Avoid space-tab.
10206
10207 2006-12-26  Eric Blake  <ebb9@byu.net>
10208
10209         * modules/absolute-header: New module.
10210         * modules/fcntl (Depends-on): Depend on it.
10211         * modules/inttypes (Depends-on): Likewise.
10212         * modules/stdint (Depends-on): Likewise.
10213         * modules/sys_stat (Depends-on): Likewise.
10214         * modules/wctype (Depends-on): Likewise.
10215         * MODULES.html.sh (Support for building libraries and
10216         executables): Document it.
10217
10218 2006-12-25  Paul Eggert  <eggert@cs.ucla.edu>
10219
10220         * gnulib-tool (SED): Remove, undoing previous change.
10221         The problem was that it broke coreutils on Solaris, because
10222         "sed --posix" leaked into a makefile.
10223         (sed): New alias, if 'alias' and GNU sed.
10224
10225 2006-12-24  Jim Meyering  <jim@meyering.net>
10226
10227         Work around an fchownat bug in glibc-2.4:
10228         http://lists.ubuntu.com/archives/ubuntu-users/2006-September/093218.html
10229         This bug would cause "chown -RP ... DIR" to follow symlinks in DIR,
10230         in spite of the -P option.
10231         * m4/openat.m4 (gl_FUNC_FCHOWNAT, gl_FUNC_FCHOWNAT_DEREF_BUG):
10232         New macros.
10233         (gl_PREREQ_OPENAT): Require gl_FUNC_FCHOWNAT.
10234         * modules/openat (Files): Add lib/fchownat.c.
10235         * lib/openat.c (fchownat): Don't define here.  Move to...
10236         * lib/fchownat.c: ...this new file.
10237
10238 2006-12-23  Paul Eggert  <eggert@cs.ucla.edu>
10239
10240         Fix bug reported by Bruno Haible in
10241         <http://lists.gnu.org/archive/html/bug-gnulib/2006-12/msg00228.html>
10242         where quotearg.c didn't compile on Mac OS X 10.2 because it
10243         lacks <wchar.h> and wint_t.
10244         * lib/wctype_.h (__wctype_wint_t): New type.
10245         Include <stdio.h>, <time.h>, <wchar.h> only if HAVE_WINT_T.
10246         (iswalnum, iswalpha, iswblank, iswcntrl, iswdigit, iswgraph):
10247         (iswlower, iswprint, iswpunct, iswspace, iswupper, ixwxdigit):
10248         Arg is now of type __wctype_wint_t, not wint_t.
10249         * m4/wctype.m4 (gl_WCTYPE_H): Require gt_TYPE_WINT_T, and
10250         substitute HAVE_WINT_T.
10251         * modules/wctype (Files): Add m4/wint_t.m4.
10252         (wctype.h): Substitute HAVE_WINT_T.
10253
10254 2006-12-23  Bruno Haible  <bruno@clisp.org>
10255
10256         * lib/safe-read.h [C++]: Wrap declarations in extern "C".
10257
10258 2006-12-23  Bruno Haible  <bruno@clisp.org>
10259
10260         * lib/canonicalize-lgpl.c (__realpath): Test HAVE_READLINK instead of
10261         S_ISLNK.
10262         Needed because gnulib's sys/stat.h replacement defines S_ISLNK on
10263         mingw.
10264
10265 2006-12-22  Bruno Haible  <bruno@clisp.org>
10266
10267         * lib/copy-file.c: Include acl.h.
10268         (copy_file_preserving) [USE_ACL]: Use copy_acl instead of chmod.
10269         Close the file descriptors only after being done with copy_acl.
10270         * modules/copy-file (Depends-on): Add acl.
10271
10272 2006-12-22  Bruno Haible  <bruno@clisp.org>
10273
10274         * gnulib-tool (SED): New variable.
10275         Use $SED instead of sed everywhere.
10276
10277 2006-12-22  Bruno Haible  <bruno@clisp.org>
10278
10279         * modules/no-c++: New file.
10280         * m4/no-c++.m4: New file.
10281         * MODULES.html.sh (Support for building libraries and executables):
10282         Add no-c++.
10283
10284 2006-12-22  Paul Eggert  <eggert@cs.ucla.edu>
10285
10286         * m4/mktime.m4 (AC_FUNC_MKTIME): Sync from Autoconf.
10287         Include <limits.h>, and use its INT_MAX to rewrite the
10288         j loop so that it does not overflow 'int'.  Problem reported by
10289         Ralf Wildenhues in
10290         <http://lists.gnu.org/archive/html/bug-gnulib/2006-12/msg00084.html>.
10291         Play it safe by shifting left by 1 rather than multiplying by 2,
10292         as GCC is less likely to optimize this away when the value
10293         is signed (when it assumes overflow leads to undefined behavior).
10294         Also, don't assume time_t uses two's complement.
10295
10296 2006-12-21  Paul Eggert  <eggert@cs.ucla.edu>
10297
10298         * MODULES.html.sh: New module wctype.
10299         * lib/wctype_.h, m4/wctype.m4, modules/wctype: New files.
10300         * lib/fnmatch.c: Don't bother to include <wchar.h> before
10301         <wctype.h>, since the new wctype module should fix this.
10302         * lib/quotearg.c: Include <wctype.h> unconditionally, since
10303         the wctype module should arrange for it.
10304         * lib/regex_internal.h: Likewise.
10305         * m4/quotearg.m4 (gl_QUOTEARG): Don't check for wctype.h or iswprint,
10306         since the wctype module should handle this now.
10307         * m4/regex.m4 (gl_PREREQ_REGEX): Don't check for wctype.h.
10308         * modules/fnmatch (Depends-on): Add wctype.
10309         * modules/quotearg (Depends-on): Likewise.
10310         * modules/regex (Depends-on): Likewise.
10311
10312 2006-12-19  Bruno Haible  <bruno@clisp.org>
10313
10314         * lib/strdup.h [C++]: Wrap definitions in extern "C".
10315         Suggested by Lorenzo Bettini <bettini@dsi.unifi.it>.
10316
10317 2006-12-19  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
10318
10319         * modules/savewd (Depends-on): Fix dependency on fcntl.
10320
10321 2006-12-18  Paul Eggert  <eggert@cs.ucla.edu>
10322
10323         * m4/stdint.m4 (gl_STDINT_H): Set STDINT_H to empty if stdint.h
10324         conforms to C99, rather than relying on the user's environment
10325         setting of STDINT_H.
10326
10327 2006-12-18  Paul Eggert  <eggert@cs.ucla.edu>
10328         and Eric Blake  <ebb9@byu.net>
10329
10330         * lib/dirname.h (DOUBLE_SLASH_IS_DISTINCT_ROOT): Default to 0, not 1.
10331         This is more consistent with the other defines here.
10332         * m4/double-slash-root.m4 (gl_DOUBLE_SLASH_ROOT):
10333         Port to z/OS.  Problem reported by Paul Gilmartin.
10334         Change local vars to use gl_ prefix rather than ac_.
10335         Don't define DOUBLE_SLASH_IS_DISTINCT_ROOT to 0, for consistency
10336         with other defines.
10337         * modules/double-slash-root: New module.
10338         * modules/dirname (Files): Remove m4/double-slash-root.m4.
10339         (Depends-on): Add double-slash-root.
10340         * MODULES.html.sh (File system functions): Mention new module.
10341
10342 2006-12-14  Paul Eggert  <eggert@cs.ucla.edu>
10343
10344         * lib/yesno.c [!ENABLE_NLS]: Don't include getline.h.
10345         (yesno) [!ENABLE_NLS]: Don't invoke getline or rpmatch.
10346         This is for the benefit of gzip, which doesn't do i18n.
10347
10348 2006-12-12  Jim Meyering  <jim@meyering.net>
10349
10350         * m4/acl.m4 (gl_ACL_GET_FILE): Fix logic error.
10351         Reported by Andreas Schwab <schwab@suse.de>.
10352
10353 2006-12-12  Bruno Haible  <bruno@clisp.org>
10354
10355         Merge these changes.
10356         2006-09-05  Bruno Haible  <bruno@clisp.org>
10357         * lib/iconvme.c (iconv_string): No need to save and restore errno when
10358         iconv_alloc succeeded.
10359         (iconv_alloc): Don't assume that malloc() or realloc(), when failing,
10360         sets errno to ENOMEM. (malloc on GNU/kFreeBSD doesn't.) No need to
10361         test for " && dest " at the end - dest is always != NULL there. Call
10362         iconv with 4xNULL arguments initially, to reset the state. Call iconv
10363         with 2xNULL arguments, also to flush the state storage. Handle the
10364         IRIX iconv behaviour. Realloc the final result, to throw away unused
10365         memory.
10366
10367 2006-12-11  Paul Eggert  <eggert@cs.ucla.edu>
10368
10369         * m4/openat.m4 (gl_FUNC_OPENAT): Don't compile mkdirat
10370         and fchmodat unconditionally, since glibc 2.4 has them.
10371         Problem reported by Arkadiusz Miskiewicz.
10372
10373 2006-12-10  Bruno Haible  <bruno@clisp.org>
10374
10375         * gnulib-tool (func_import): Show the include files only for those
10376         modules that are copied and specified.
10377         Reported by Karl Berry.
10378
10379 2006-12-08  Jim Meyering  <jim@meyering.net>
10380
10381         * build-aux/announce-gen ($VERSION): Don't use of $Revision...$.
10382         Instead, use Emacs' time-stamp write hook.  Note that the time is UTC.
10383
10384         * build-aux/announce-gen: Add two new options, both optional:
10385         --bootstrap-tools=TOOL_LIST
10386               a comma-separated list of tools, e.g.,
10387               autoconf,automake,bison,gnulib
10388         --gnulib-snapshot-date=DATE
10389               if gnulib is in the bootstrap tool list,
10390               then report this as the snapshot date.
10391               If not specified, use the current date/time.
10392               If you specify a date here, be sure it's UTC.
10393
10394 2006-12-05  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
10395
10396         * tests/test-argp-2.sh: Fix test to match actual output.
10397         (func_compare): Fix sed script to be portable.
10398
10399 2006-12-05  Paul Eggert  <eggert@cs.ucla.edu>
10400
10401         * lib/utimens.c (futimens) [HAVE_BUGGY_NFS_TIME_STAMPS]: Add a
10402         workaround for this case.  It is not autoconfigured now; offhand
10403         it's hard to see how to autoconfigure it.
10404
10405 2006-12-03  Paul Eggert  <eggert@cs.ucla.edu>
10406
10407         * lib/mkdir-p.c (make_dir_parents): Fix race condition when making
10408         a directory that is about to be chowned.  Such a directory's
10409         initial file permissions should permit the owner only and this
10410         should not be changed until after the chown, since the group and
10411         other bits would be incorrect if they granted permission before
10412         the chown.
10413
10414         Fix porting problem for iswctype reported by Georg Schwarz in:
10415         http://lists.gnu.org/archive/html/bug-coreutils/2006-12/msg00017.html
10416         * lib/fnmatch.c (WIDE_CHAR_SUPPORT): Require HAVE_ISWCTYPE, too.
10417         * lib/regex_internal.h (RE_ENABLE_I18N): Likewise.
10418         * m4/fnmatch.m4 (_AC_LIBOBJ_FNMATCH): Check for iswctype, too.
10419         * m4/regex.m4 (gl_PREREQ_REGEX): Likewise.
10420
10421 2006-12-03  Jim Meyering  <jim@meyering.net>
10422
10423         * lib/fts.c (fts_load): Don't set sp->fts_dev here, since
10424         p->fts_statp may not yet be defined.
10425         (fts_read): Instead, set it in the caller, once p->fts_statp is
10426         sure to be defined, and corresponds to a top-level directory.
10427         This bug made du -x fail.  Here's the coreutils test case:
10428         http://git.sv.gnu.org/gitweb/?p=coreutils.git;a=commit;h=ba45154d8e9f
10429         Reported by Mike Frysinger.
10430
10431 2006-12-01  Jim Meyering  <jim@meyering.net>
10432
10433         * modules/savewd (Depends-on): Add fcntl_h to avoid self-test
10434         build failure due to missing definition of HAVE_WORKING_O_NOFOLLOW.
10435         Reported by Simon Josefsson.
10436
10437 2006-11-30  Jim Meyering  <jim@meyering.net>
10438
10439         * m4/warning.m4: Use the all-permissive copyright notice
10440         recommended by RMS (rather than LGPL).
10441         * m4/vararrays.m4: Likewise.
10442         * m4/flexmember.m4: Likewise.
10443
10444 2006-11-29  Bruno Haible  <bruno@clisp.org>
10445
10446         * gnulib-tool (func_emit_lib_Makefile_am): Initialize also
10447         noinst_LIBRARIES. Augment noinst_LIBRARIES and noinst_LTLIBRARIES
10448         using +=.
10449         Reported by Simon Josefsson <simon@josefsson.org>.
10450
10451 2006-11-28  James Youngman <jay@gnu.org>
10452
10453         * README: Advise users that they might find the bug-gnulib@gnu.org
10454         and autotools-announce@gnu.org mailing lists useful.
10455
10456 2006-11-28  Bruno Haible  <bruno@clisp.org>
10457
10458         * m4/ptrdiff_max.m4: Remove file.
10459
10460 2006-11-21  Bruno Haible  <bruno@clisp.org>
10461
10462         * m4/eoverflow.m4 (gl_EOVERFLOW): Use AC_COMPUTE_INT instead of
10463         _AC_COMPUTE_INT.
10464         (AC_COMPUTE_INT): Add fallback definition for autoconf < 2.61.
10465         * m4/ptrdiff_max.m4 (gl_PTRDIFF_MAX): Use AC_COMPUTE_INT instead of
10466         _AC_COMPUTE_INT.
10467         (AC_COMPUTE_INT): Add fallback definition for autoconf < 2.61.
10468         * m4/size_max.m4 (gl_SIZE_MAX): Use AC_COMPUTE_INT instead of
10469         _AC_COMPUTE_INT.
10470         (AC_COMPUTE_INT): Add fallback definition for autoconf < 2.61.
10471
10472 2006-11-28  Jim Meyering  <jim@meyering.net>
10473
10474         * lib/regcomp.c (parse_branch): Rename local, exp->expr, to avoid
10475         warning from "gcc -Wshadow" about shadowing the builtin.
10476
10477 2006-11-27  Bruno Haible  <bruno@clisp.org>
10478
10479         * m4/stdint.m4 (gl_STDINT_BITSIZEOF): Use AC_COMPUTE_INT instead of
10480         _AC_COMPUTE_INT.
10481         (AC_COMPUTE_INT): Add fallback definition for autoconf < 2.61.
10482
10483 2006-11-27  Bruno Haible  <bruno@clisp.org>
10484             Paul Eggert  <eggert@cs.ucla.edu>
10485
10486         * lib/regex.h (__restrict_arr): Redo logic of #if, for clarity.
10487
10488 2006-11-26  Bruno Haible  <bruno@clisp.org>
10489
10490         * gnulib-tool (func_emit_lib_Makefile_am): Initialize also
10491         noinst_LTLIBRARIES.
10492
10493 2006-11-27  Paul Eggert  <eggert@cs.ucla.edu>
10494             Bruno Haible  <bruno@clisp.org>
10495
10496         * lib/gettext.h (_LIBGETTEXT_HAVE_VARIABLE_SIZE_ARRAYS): Define to 0
10497         if compiling with "gcc -ansi".
10498
10499 2006-11-26  Paul Eggert  <eggert@cs.ucla.edu>
10500
10501         Fix some incompatibilities with gcc -ansi -pedantic.
10502         * lib/regex.h (__restrict_arr): Don't use the [restrict] syntax
10503         if compiling pedantically with GCC, unless it's C99 or later.
10504         Don't trust sys/cdefs.h's definition of __restrict_arr, either, as
10505         it mishandles gcc -ansi -pedantic as well.
10506         * lib/regex_internal.h (re_token_t): Don't use enum bitfields
10507         if gcc -pedantic.
10508         * lib/regexec.c (check_node_accept_bytes): Don't use auto
10509         initializers for struct if -pedantic, unless it's C99 or later.
10510
10511 2006-11-25  Nix  <nix@esperi.org.uk>  (tiny change)
10512
10513         * m4/fcntl_h.m4 (gl_FCNTL_H): Test the atime, not the mtime.
10514         Don't close an fd more than once. Identical atimes indicate
10515         success, not failure.
10516
10517 2006-11-22  Robinson Mittmann <bob@hoplon.com>  (tiny change)
10518
10519         * lib/sincosl.c (kernel_sinl): Fix typo in threshold.
10520
10521 2006-11-23  Jim Meyering  <jim@meyering.net>
10522
10523         * build-aux/announce-gen: New file.  From coreutils.
10524
10525 2006-11-22  Jim Meyering  <jim@meyering.net>
10526
10527         Work around a compile-time error from the HP-UX 11.00 /bin/cc.
10528         * lib/fts.c (enum Fts_stat): Give this previously-anon enum a name.
10529         (fts_read): Use a temporary to narrow the overused st_size member
10530         before using it in a switch statement.  Reported by Matthew Woehlke.
10531
10532         * m4/clock_time.m4 (gl_CLOCK_TIME): Quote AC_SUBST argument.
10533         * m4/euidaccess.m4 (gl_PREREQ_EUIDACCESS): Likewise.
10534
10535 2006-11-20  Bruno Haible  <bruno@clisp.org>
10536
10537         * gettext.m4 (AM_GNU_GETTEXT): Revert 2005-07-28 patch: Use
10538         changequote instead of pairs of brackets.
10539         Reported by Andreas Schwab <schwab@suse.de>.
10540
10541 2006-11-21  Jim Meyering  <jim@meyering.net>
10542
10543         * lib/fts.c (fts_safe_changedir): Move a declaration "up",
10544         so as to remain compatible with older compilers.
10545         Patch from Michael Deutschmann.
10546
10547 2006-11-20  Paul Eggert  <eggert@cs.ucla.edu>
10548
10549         * MODULES.html.sh (File system functions): Add openat.
10550
10551         * lib/openat.h (rpl_fstatat): New macro, if
10552         [HAVE_OPENAT && ! LSTAT_FOLLOWS_SLASHED_SYMLINK.
10553         (fstatat): Define to rpl_fstatat under the same conditions,
10554         unless COMPILING_FSTATAT.
10555         * m4/openat.m4 (gl_FUNC_OPENAT): Compile fstatat.c too, if fstatat
10556         seems to have the bug.
10557         * lib/fstatat.c: New file.
10558         * modules/openat (Files): Add it.
10559
10560 2006-11-20  Bruno Haible  <bruno@clisp.org>
10561
10562         * Makefile: New file.
10563
10564 2006-11-20  Jim Meyering  <jim@meyering.net>
10565
10566         The beginnings of syntax-related checks for gnulib.
10567         * lib/Makefile: New file.
10568         * lib/t-idcache: New script.  Ensure that the two halves of
10569         idcache.c stay in sync.
10570
10571         * lib/idcache.c: Adjust comments in user- and group- portions to
10572         be more accurate, and to be consistent with one another.
10573
10574 2006-11-20  Jim Meyering  <jim@meyering.net>
10575
10576         * lib/idcache.c: Restore most of the 2006-11-06 patch, so as to
10577         continue using the flexible array member (thus, this module performs
10578         half as many malloc calls), with the addition that...
10579         (getgroup, getuser): Consistently record a non-match via an empty
10580         "name" string, and map an empty string match to a NULL return value.
10581         * modules/idcache (Depends-on): Re-add flexmember.
10582
10583         * lib/idcache.c (getuser): Remove all uses of the register keyword.
10584         (getuidbyname, getgroup, getgidbyname): Likewise.
10585
10586         Use cleaner syntax: NULL rather than 0.
10587         * lib/idcache.c (getuidbyname, getgidbyname): Return NULL, not 0.
10588
10589 2006-11-20  Paul Eggert  <eggert@cs.ucla.edu>
10590
10591         * lib/idcache.c: Undo most recent patch, dated 2006-11-06.
10592         It mishandled the case where the group was missing.
10593         Problem reported by Greg Schafer.
10594         * modules/idcache: Likewise.
10595
10596 2006-11-18  Jim Meyering  <jim@meyering.net>
10597
10598         * check-module (%exempt_header): Add exception for some
10599         conditionally-included headers.
10600
10601         * modules/i-ring (Depends-on): Add verify.
10602         (License): Change to LGPL.
10603
10604 2006-11-16  Paul Eggert  <eggert@cs.ucla.edu>
10605
10606         * modules/getaddinfo (Depends-on): Remove inttostr; add snprintf.
10607         * lib/getaddrinfo.c: Include snprintf.h rather than intprops.h
10608         and inttostr.h.  Use snprintf rather than uinttostr, so that
10609         LGPLed code doesn't depend on GPLed.
10610
10611 2006-11-17  Paul Eggert  <eggert@cs.ucla.edu>
10612
10613         * modules/inline (License): Change from GPL to LGPL.
10614
10615 2006-11-17  Jim Meyering  <jim@meyering.net>
10616
10617         * modules/d-type (License): Switch to LGPL.
10618
10619 2006-11-15  Bruno Haible  <bruno@clisp.org>
10620
10621         * m4/alloca.m4 (gl_FUNC_ALLOCA): Fix the AC_CACHE_CHECK message.
10622
10623 2006-11-15  Eric Blake  <ebb9@byu.net>
10624
10625         * m4/allocsa.m4 (gl_ALLOCSA): Don't invoke macro already picked up by
10626         the module dependency.
10627
10628 2006-11-15  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
10629             Bruno Haible  <bruno@clisp.org>
10630
10631         * gnulib-tool (func_create_testdir): Add license consistency check.
10632
10633 2006-11-15  Eric Blake  <ebb9@byu.net>
10634
10635         * m4/alloca.m4 (gl_FUNC_ALLOCA): Use AC_CACHE_CHECK to avoid a
10636         random "(cached)" in configure output.
10637
10638 2006-11-14  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
10639
10640         * m4/inttypes.m4 (gl_INTTYPES_H): Use AC_CACHE_CHECK so that the
10641         test for conforming inttypes.h is both announced and cached.
10642
10643         * MODULES.html.sh (seen_modules, seen_files): New variables.
10644         (func_module): Rewrite to use a few less gnulib-tool and sed
10645         invocations.  Avoid a couple of quadratic algorithms for ...
10646         (missed_modules, missed_files): ... these, with ...
10647         (func_append, func_tmpdir): ... these new functions, from
10648         gnulib-tool.  Analogously, install traps for cleanup.
10649
10650         * tests/test-gc.c (main): Remove unused variables.
10651         * tests/test-read-file.c: Include stdlib.h, for 'free'.
10652
10653 2006-11-14  Paul Eggert  <eggert@cs.ucla.edu>
10654
10655         * modules/inttostr (License): Change to LGPL.
10656
10657 2006-11-14  Eric Blake  <ebb9@byu.net>
10658
10659         * modules/tempname (License): Change to LGPL.
10660
10661 2006-11-14  Eric Blake  <ebb9@byu.net>
10662
10663         * doc/functions.texi (Function Portability): *printf functions on
10664         Cygwin now understand all POSIX size specifiers.
10665
10666 2006-11-14  Bruno Haible  <bruno@clisp.org>
10667
10668         * modules/c-ctype (License): Change to LGPL.
10669
10670 2006-11-12  Bruno Haible  <bruno@clisp.org>
10671
10672         * m4/lib-link.m4 (AC_LIB_LINKFLAGS, AC_LIB_HAVE_LINKFLAGS,
10673         AC_LIB_LINKFLAGS_BODY): Also set a LIB${NAME}_PREFIX variable. Needed
10674         for GNOME libraries, for which the include files are installed in
10675         subdirectories of $prefix/include.
10676
10677 2006-11-12  Bruno Haible  <bruno@clisp.org>
10678
10679         * m4/lib-link.m4: Require at least autoconf-2.54.
10680         (AC_LIB_LINKFLAGS_BODY) [autoconf < 2.61]: Turn dots into the library
10681         name to underscores for the --with option.
10682
10683 2006-11-13  Bruno Haible  <bruno@clisp.org>
10684
10685         * gnulib-tool (func_create_testdir): Set gl_source_base correctly in
10686         the tests directory.
10687         Reported by Ralf Wildenhues.
10688
10689 2006-11-13  Bruno Haible  <bruno@clisp.org>
10690
10691         * gnulib-tool (func_emit_initmacro_start): Also override AC_LIBSOURCES.
10692         (func_emit_initmacro_end): Undo the override here.
10693         (func_emit_initmacro_done): Emit a definition for gl_LIBSOURCES.
10694         Works around the famous automake error in coreutils.
10695
10696 2006-11-13  Eric Blake  <ebb9@byu.net>
10697
10698         * lib/gl_anytree_oset.h (gl_tree_search_atleast): Return the
10699         element, not its node.
10700
10701 2006-11-12  Bruno Haible  <bruno@clisp.org>
10702
10703         * gnulib-tool (func_emit_lib_Makefile_am): Replace occurrences of
10704         '$(top_srcdir)/build-aux/', taking into account the real auxdir.
10705
10706 2006-11-12  Bruno Haible  <bruno@clisp.org>
10707
10708         * gnulib-tool: New option --local-symlink.
10709         (func_usage): Document it.
10710         (lsymbolic): New variable.
10711         (func_import, func_create_testdir): If --symlink was not specified,
10712         test whether --local-symlink was specified and the file comes from
10713         the local_gnulib_dir.
10714
10715 2006-11-12  Bruno Haible  <bruno@clisp.org>
10716
10717         * gnulib-tool (func_ln): New function.
10718         (func_ln_if_changed, func_create_testdir): Use it instead of "ln -s".
10719
10720 2006-11-12  Bruno Haible  <bruno@clisp.org>
10721
10722         Finish support for source files in subdirectories.
10723         * gnulib-tool (func_emit_lib_Makefile_am): If some of the source files
10724         are in subdirectories, set uses_subdirs and add 'subdir-objects' to
10725         AUTOMAKE_OPTIONS.
10726         (func_import, func_create_testdir): Invoke AM_PROG_CC_C_O in this case.
10727
10728 2006-11-12  Bruno Haible  <bruno@clisp.org>
10729
10730         * gnulib-tool (func_get_automake_snippet): Synthesize also an
10731         EXTRA_lib_SOURCES augmentation.
10732         (func_emit_lib_Makefile_am): Initialize EXTRA_lib..._SOURCES to empty.
10733
10734 2006-11-12  Jim Meyering  <jim@meyering.net>
10735
10736         Make fts (in FTS_CWDFD mode) more efficient by caching a few open
10737         file descriptors.  This also averts a failure on systems with
10738         native openat support when a traversed directory lacks "x" access.
10739         * lib/fts_.h: Include "i-ring.h"
10740         (struct FTS) [fts_fd_ring]: New member.
10741         * lib/fts.c (RESTORE_INITIAL_CWD): Also call fd_ring_clear.
10742         (FCHDIR): Add parentheses.
10743         (fd_ring_check, fd_ring_print) [!FTS_DEBUG]: Define away.
10744         (cwd_advance_fd): Add a 3rd parameter.  Adjust all callers.
10745         When descending, rather than simply closing the previous
10746         fts_cwd_fd value, push that file descriptor onto the ring.
10747         (same_fd, fd_ring_print, fd_ring_check) [FTS_DEBUG]: New functions.
10748         (fts_open): Initialize the new fd_ring member.
10749         (fts_close): Clear the ring.
10750         (fts_safe_changedir): When possible, use our new fd_ring to skip
10751         the diropen and fstat and dev/ino comparison that would normally
10752         accompany a virtual `chdir ("..")'.
10753
10754         * modules/fts (Depends-on): Add i-ring.
10755         * modules/i-ring: New module.
10756         * lib/i-ring.c, lib/i-ring.h, lib/i-ring-test.c: New files.
10757         * m4/i-ring.m4: New file.
10758
10759 2006-11-12  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
10760
10761         * gnulib-tool (func_create_testdir): Fix replacement of
10762         `build-aux' in configure.ac.  Run autotools in gltests
10763         subdirectory.
10764         (func_create_testdir, func_create_megatestdir, test): There is
10765         no need for '--force' in most autotool invocations in a new
10766         tree.  Actually fail the whole test if any of the tools, or the
10767         configure or make stages fail.
10768
10769         Sync from Automake.
10770         * build-aux/gnupload: Revert last change.  Add pointer to upload
10771         instructions of the GNU Maintenance Instructions.
10772         Suggestion by Karl Berry.
10773
10774 2006-11-10  Jim Meyering  <jim@meyering.net>
10775
10776         * lib/fts.c [FTS_DEBUG]: Don't try to print a pointer via %s.
10777
10778 2006-11-09  Paul Eggert  <eggert@cs.ucla.edu>
10779
10780         * lib/gettext.h (dgettext, dcgettext, ngettext) [! ENABLE_NLS]:
10781         (dngettext, dcngettext, bindtextdomain) [! ENABLE_NLS]:
10782         (bind_textdomain_codeset) [! ENABLE_NLS]:
10783         Evaluate all the arguments.  That way, callers get compatible behavior
10784         if the arguments have side effects.  Also, it avoids some GCC
10785         diagnostics in some cases; Joel E. Denny reported problems when Bison
10786         was configured with --enable-gcc-warnigs.
10787
10788 2006-11-10  Jim Meyering  <jim@meyering.net>
10789
10790         * m4/inline.m4 (gl_INLINE): Check with the compiler, not cpp, so that
10791         relevant options in CFLAGS (like -O, -fno-inline) are taken into
10792         account.
10793
10794 2006-11-10  Jim Meyering  <jim@meyering.net>
10795
10796         * modules/inline: New file/module.
10797         * modules/xalloc (Files): Remove m4/inline.m4.
10798         (Depends-on): Add inline, instead.
10799         * modules/oset: Likewise.
10800         * modules/list: Likewise.
10801
10802 2006-11-09  Paul Eggert  <eggert@cs.ucla.edu>
10803
10804         * lib/stdint_.h (uintmax_t): Fix typo: int64_t -> uint64_t.
10805         Problem reported by Matthew Woehlke.
10806
10807 2006-11-09  Bruno Haible  <bruno@clisp.org>
10808
10809         * lib/tempname.c (gen_tempname): Remove variant that invokes
10810         __gen_tempname.
10811         * m4/tempname.m4 (gl_FUNC_GEN_TEMPNAME): Don't test for
10812         __gen_tempname.
10813
10814 2006-11-08  Bruno Haible  <bruno@clisp.org>
10815
10816         * m4/longlong.m4 (AC_TYPE_LONG_LONG_INT): Set ac_cv_type_long_long_int
10817         to 'yes' instead of 'cross-compiling'.
10818
10819 2006-11-08  Paul Eggert  <eggert@cs.ucla.edu>
10820
10821         * lib/quotearg.h (quotearg_free): New decl.
10822         * lib/quotearg.c (quotearg_free): New function.
10823         (slot0, nslots, slotvec0, slotvec):
10824         Now file-scope so that quotearg_free can get at them.
10825
10826 2006-11-08  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
10827
10828         Sync from Automake.
10829         * build-aux/gnupload: Add missing 'gnu' to example URL.
10830         Report by Karl Berry.
10831
10832 2006-11-08  Bruno Haible  <bruno@clisp.org>
10833
10834         * m4/inline.m4 (gl_INLINE): Also test __NO_INLINE__.
10835         Suggested by Paul Eggert.
10836
10837 2006-11-08  Jim Meyering  <jim@meyering.net>
10838
10839         * lib/fts.c [!_LGPL_PACKAGE]: Don't include fcntl--.h twice.
10840         It's already included if !_LIBC.
10841         (fts_safe_changedir): Add a comment.
10842
10843 2006-11-07  Paul Eggert  <eggert@cs.ucla.edu>
10844
10845         * m4/longlong.m4 (AC_TYPE_LONG_LONG_INT): Detect bug in
10846         Tandem NonStop Kernel (OSS) cc -O circa 2004, reported by
10847         Matthew Woehlke.
10848
10849         * lib/xalloc.h (XMALLOC, XNMALLOC, XZALLOC, XCALLOC): Move
10850         definitions up, to avoid colliding with change below.
10851         (static_inline) [HAVE_INLINE]: New macro.
10852         (xnmalloc, xnrealloc, x2nrealloc, xcharalloc):
10853         Provide extern decls when !HAVE_INLINE.  Do not define unless
10854         static_inline is defined, either by us or by xmalloc.c.  Use
10855         static_inline rather than static inline.
10856         (XCALLOC): Optimize sizeof(T) = 1 case.
10857         * lib/xmalloc.c (static_inline) [!HAVE_INLINE]: New macro.
10858
10859 2006-11-07  Bruno Haible  <bruno@clisp.org>
10860
10861         * lib/xalloc.h (XNMALLOC): Restore optimization of sizeof(T) = 1 case.
10862         * m4/xalloc.m4 (gl_PREREQ_XALLOC): Require gl_INLINE instead of
10863         AC_C_INLINE.
10864         * modules/xalloc (Files): Add m4/inline.m4.
10865
10866 2006-11-07  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
10867
10868         * README: Fix typo.
10869         * doc/gnulib.texi (Miscellaneous Notes): Likewise, rename...
10870         (Miscellanous Notes): ...from this.
10871
10872 2006-11-07  Paul Eggert  <eggert@cs.ucla.edu>
10873
10874         * m4/flexmember.m4 (AC_C_FLEXIBLE_ARRAY_MEMBER):
10875         Mention that offsetof should be used instead of sizeof.
10876         From Bruno Haible.
10877
10878 2006-11-07  Bruno Haible  <bruno@clisp.org>
10879
10880         * lib/w32spawn.h (prepare_spawn): Use XNMALLOC instead of xmalloc.
10881
10882 2006-11-06  Paul Eggert  <eggert@cs.ucla.edu>
10883
10884         Simplify xmalloc expressions. Add overflow check in xmalloc arguments.
10885         * lib/gl_anyavltree_list2.h (create_subtree_with_contents):
10886         (gl_tree_create, gl_tree_add_first, gl_tree_add_last):
10887         (gl_tree_add_before, gl_tree_add_after):
10888         Use XMALLOC instead of xmalloc, and XCALLOC instead of xzalloc.
10889         * lib/gl_anyhash_list2.h (hash_resize): Likewise.
10890         * lib/gl_anylinked_list2.h (gl_linked_create_empty, gl_linked_create):
10891         (gl_linked_add_first, gl_linked_add_last, gl_linked_add_before):
10892         (gl_linked_add_after, gl_linked_add_at): Likewise.
10893         * lib/gl_anyrbtree_list2.h (create_subtree_with_contents):
10894         (gl_tree_create, gl_tree_add_first, gl_tree_add_last):
10895         (gl_tree_add_before, gl_tree_add_after): Likewise.
10896         * lib/gl_anytree_list2.h (gl_tree_create_empty): Likewise.
10897         * lib/gl_anytree_oset.h (gl_tree_create_empty): Likewise.
10898         * lib/gl_anytreehash_list1.h (add_to_bucket): Likewise.
10899
10900 2006-11-06  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
10901
10902         * lib/gl_oset.h: Use C comment style, not C++ comment style.
10903
10904 2006-11-06  Bruno Haible  <bruno@clisp.org>
10905
10906         * m4/inline.m4: New file.
10907         * m4/gl_list.m4 (gl_LIST): Require gl_INLINE.
10908         * modules/list (Files): Add m4/inline.m4.
10909         * modules/oset (Files): Likewise.
10910
10911 2006-11-06  Paul Eggert  <eggert@cs.ucla.edu>
10912
10913         * lib/idcache.c: Include <stddef.h>, for offsetof.
10914         (struct userid.name): Change from char * to a flexible array member.
10915         All uses changed.
10916         * modules/idcache (Depends-on): Add flexmember.
10917
10918         * MODULES.html.sh (Core language properties): New module flexmember.
10919         * modules/flexmember, m4/flexmember.m4: New files.
10920
10921         * lib/xalloc.h (xnmalloc, xnrealloc, x2nrealloc): Now static
10922         inline functions that are identical with the old xnmalloc_inline,
10923         xnrealloc_inline, x2nrealloc_inline of lib/xmalloc.c.  This is so
10924         that we can avoid some unnecessary integer multiplications and
10925         divisions in the common case where the element size is known at
10926         compile time.
10927         (XNMALLOC) [HAVE_INLINE]: Remove special case, which is no longer
10928         needed.
10929         (xnboundedmalloc): Remove.
10930         (XMALLOC, XNMALLOC, XZALLOC, XCALLOC): Use lower-case letters for
10931         arguments, for consistency with rest of this header.
10932         (xcharalloc): Rewrite using XNMALLOC.
10933         * lib/xmalloc.c (xnmalloc_inline, xnmalloc, xnrealloc_inline):
10934         (xnrealloc, x2nrealloc_inline, x2nrealloc): Remove.  The *_inline
10935         versions have been moved to lib/xalloc.h and renamed to be the
10936         non-*_inline versions.
10937         (xmalloc, xrealloc): Implement without reference to the xnmalloc
10938         and xnrealloc functions, since those functions are now inline and
10939         now call us.
10940         (x2realloc): Invoke x2realloc, not x2realloc_inline, to accommodate
10941         renaming described above.
10942         * m4/xalloc.m4 (gl_PREREQ_XMALLOC): Remove AC_C_INLINE since
10943         xmalloc.c no longer uses inline directly.  gl_PREREQ_XALLOC now
10944         captures the dependency in AC_C_INLINE.
10945
10946         New module canonicalize-lgpl, proposed by Charles Wilson in
10947         <http://lists.gnu.org/archive/html/bug-gnulib/2006-11/msg00020.html>
10948         with a few small changes afterwards.
10949         * MODULES.html.sh (File system functions): New module
10950         canonicalize-lgpl.
10951         * lib/canonicalize.h: Add comments for canonicalize_filename_mode
10952         and canonicalize_file_name.
10953         * lib/canonicalize-lgpl.c, m4/canonicalize-lgpl.m4:
10954         * modules/canonicalize-lgpl: New files.
10955
10956 2006-11-05  Bruno Haible  <bruno@clisp.org>
10957
10958         * gnulib-tool (func_import, func_create_testdir): Create directories
10959         also for files in subdirectories of lib/.
10960
10961 2006-11-05  Bruno Haible  <bruno@clisp.org>
10962
10963         * lib/gl_array_list.c (gl_array_iterator_next): Make pointer decrement
10964         ANSI C compliant.
10965
10966 2006-11-03  Bruno Haible  <bruno@clisp.org>
10967
10968         Simplify xmalloc expressions. Add overflow check in xmalloc arguments.
10969         * m4/xalloc.m4 (gl_PREREQ_XALLOC): Require AC_C_INLINE.
10970         * lib/xalloc.h (XMALLOC, XNMALLOC, XZALLOC, XCALLOC): New macros.
10971         (xnboundedmalloc): New inline function.
10972         * lib/classpath.c (new_classpath): Use XNMALLOC instead of xmalloc.
10973         * lib/clean-temp.c (create_temp_dir): Use XNMALLOC, XMALLOC instead of
10974         xmalloc.
10975         * lib/concatpath.c (concatenated_pathname): Use XNMALLOC instead of
10976         xmalloc.
10977         * lib/fatal-signal.c (at_fatal_signal): Use XNMALLOC instead of xmalloc.
10978         * lib/findprog.c (find_in_path): Use XNMALLOC instead of xmalloc.
10979         * lib/gl_array_list.c (gl_array_create_empty): Use XMALLOC instead of
10980         xmalloc.
10981         (gl_array_create): Use XNMALLOC, XMALLOC instead of xmalloc.
10982         * lib/gl_array_oset.c (gl_array_create_empty): Use XNMALLOC instead of
10983         xmalloc.
10984         * lib/gl_avltree_oset.c (gl_tree_add_first, gl_tree_add_before,
10985         gl_tree_add_after): Use XMALLOC instead of xmalloc.
10986         * lib/gl_carray_list.c (gl_carray_create_empty): Use XMALLOC instead of
10987         xmalloc.
10988         (gl_carray_create): Use XNMALLOC, XMALLOC instead of xmalloc.
10989         * lib/gl_rbtree_oset.c (gl_tree_add_first, gl_tree_add_before,
10990         gl_tree_add_after): Use XMALLOC instead of xmalloc.
10991         * lib/gl_sublist.c (gl_sublist_create): Use XMALLOC instead of xmalloc.
10992         * lib/pagealign_alloc.c (new_memnode): Use XMALLOC instead of xmalloc.
10993         * lib/sh-quote.c (shell_quote_argv): Use XNMALLOC instead of xmalloc.
10994         * lib/xvasprintf.c (xstrcat): Use XNMALLOC instead of xmalloc.
10995
10996 2006-11-03  Bruno Haible  <bruno@clisp.org>
10997
10998         * lib/c-ctype.h [C++]: Define functions without name mangling.
10999         * lib/fwriteerror.h [C++]: Likewise.
11000         * lib/gcd.h [C++]: Likewise.
11001         * lib/linebreak.h [C++]: Likewise.
11002
11003 2006-11-03  Paul Eggert  <eggert@cs.ucla.edu>
11004
11005         * lib/canonicalize.h: (canonicalize_mode_t, CAN_EXISTING):
11006         (CAN_ALL_BUT_LAST, CAN_MISSING, canonicalize_filename_mode):
11007         Define only if PROVIDE_CANONICALIZE_FILENAME_MODE is defined.
11008         * m4/canonicalize.m4 (AC_FUNC_CANONICALIZE_FILE_NAME):
11009         Check for functions and headers just once.
11010         Check for declaration of canonicalize_file_name.
11011         Define PROVIDE_CANONICALIZE_FILENAME_MODE.
11012
11013 2006-11-02  Charles Wilson  <cygwin@cwilson.fastmail.fm>
11014
11015         * gnulib-tool (func_import): Fix typo in actioncmd.
11016
11017 2006-11-02  Bruno Haible  <bruno@clisp.org>
11018
11019         * gnulib-tool (func_get_automake_snippet): Interpret a backslash-
11020         newline sequence in the Makefile.am snippet as a space, like "make"
11021         does.
11022         Reported by Roger Persson <perrog@gmail.com>.
11023
11024 2006-11-01  Bruno Haible  <bruno@clisp.org>
11025
11026         * m4/strcase.m4 (gl_FUNC_STRNCASECMP): Check whether strncasecmp is
11027         already declared in <string.h>.
11028         * lib/strcase.h (strncasecmp): Don't declare it if yes.
11029
11030 2006-11-01  Bruno Haible  <bruno@clisp.org>
11031
11032         * m4/strcase.m4 (gl_FUNC_STRCASECMP): Don't define strcasecmp here.
11033         * lib/strcase.h: Include <string.h>.
11034         (strcasecmp): Define to rpl_strcasecmp here.
11035
11036 2006-11-01  Bruno Haible  <bruno@clisp.org>
11037
11038         * lib/printf-parse.c (PRINTF_PARSE): Cast malloc/realloc results.
11039
11040 2006-11-01  Eric Blake  <ebb9@byu.net>
11041
11042         * lib/mkstemp-safer.c (mkstemp_safer): Allow C++ compilation.
11043
11044         * m4/mkstemp.m4 (gl_FUNC_MKSTEMP): Allow C++ configuration.
11045
11046 2006-10-29  Bruno Haible  <bruno@clisp.org>
11047
11048         Make it compile in C++ mode.
11049         * lib/full-write.c (full_rw): Add a cast.
11050
11051 2006-11-01  Bruno Haible  <bruno@clisp.org>
11052
11053         * gnulib-tool (func_get_automake_snippet): Change sed_combine_lines to
11054         be POSIX compliant.
11055         Reported by Roger Persson <perrog@gmail.com>.
11056
11057 2006-11-01  Eric Blake  <ebb9@byu.net>
11058
11059         * lib/getopt_.h: Fix comments.
11060
11061 2006-10-31  Eric Blake  <ebb9@byu.net>
11062
11063         * modules/tmpdir (Depends-on): Add sys_stat.
11064         * modules/mkdtemp (Depends-on): Add tempname, drop unistd.
11065         * lib/mkdtemp.c (gen_tempname): Remove; tempname covers this.
11066         * lib/tmpdir.c (S_ISDIR): Simplify, thanks to sys_stat.
11067         * m4/mkdtemp.m4 (gl_PREREQ_MKDTEMP): Simplify, thanks to
11068         tempname.
11069
11070 2006-10-31  Paul Eggert  <eggert@cs.ucla.edu>
11071
11072         Avoid some C++ diagnostics reported by Bruno Haible.
11073         * lib/quotearg.c (clone_quoting_options): Use xmemdup rather than
11074         xmalloc.
11075         (quotearg_alloc): Use xcharalloc rather than xmalloc.
11076         (struct slotvec): Move to top level.
11077         (quotearg_n_options): Rewrite to avoid xmalloc.
11078         * lib/xalloc.h (xcharalloc): New function.
11079         * (xrealloc, xnrealloc, x2realloc, x2nrealloc, xmemdup):
11080         [defined __cplusplus]: Add function template that provides result
11081         type propagation.  This part of the change is from Bruno Haible.
11082
11083 2006-10-29  Bruno Haible  <bruno@clisp.org>
11084
11085         Make it compile in C++ mode.
11086         * lib/striconv.c (mem_cd_iconv): Cast malloc/realloc result.
11087         * lib/strnlen1.c (strnlen1): Cast memchr result.
11088         * lib/mbchar.h (mb_copy): Rename arguments to 'new_mbc', 'old_mbc'.
11089         * lib/clean-temp.c (string_equals, string_hash): Add casts.
11090         (create_temp_dir): Rename local variable 'template'.
11091         (compile_csharp_using_sscli): Add cast.
11092         * lib/fatal-signal.c (at_fatal_signal): Cast xmalloc result.
11093         * lib/findprog.c (find_in_path): Likewise.
11094         * lib/linebreak.c (mbs_width_linebreaks): Cast malloc result.
11095         * lib/wait-process.c (register_slave_subprocess): Likewise.
11096
11097 2006-10-22  Bruno Haible  <bruno@clisp.org>
11098
11099         * modules/tsearch: New file.
11100         * lib/tsearch.h: New file.
11101         * lib/tsearch.c: New file, from glibc-2.5 with small modifications.
11102         * m4/tsearch.m4: New file.
11103         * MODULES.html.sh (Support for systems lacking POSIX:2001): Add tsearch.
11104
11105 2006-10-29  Eric Blake  <ebb9@byu.net>
11106
11107         * lib/arcfour.c: Assume config.h.
11108         * lib/arctwo.c: Likewise.
11109         * lib/base64.c: Likewise.
11110         * lib/check-version.c: Likewise.
11111         * lib/crc.c: Likewise.
11112         * lib/des.c: Likewise.
11113         * lib/gc-gnulib.c: Likewise.
11114         * lib/gc-libgcrypt.c: Likewise.
11115         * lib/gc-pbkdf2-sha1.c: Likewise.
11116         * lib/getaddrinfo.c: Likewise.
11117         * lib/getdelim.c: Likewise.
11118         * lib/getline.c: Likewise.
11119         * lib/hmac-md5.c: Likewise.
11120         * lib/hmac-sha1.c: Likewise.
11121         * lib/iconvme.c: Likewise.
11122         * lib/md2.c: Likewise.
11123         * lib/md4.c: Likewise.
11124         * lib/memxor.c: Likewise.
11125         * lib/read-file.c: Likewise.
11126         * lib/readline.c: Likewise.
11127         * lib/rijndael-alg-fst.c: Likewise.
11128         * lib/rijndael-api-fst.c: Likewise.
11129         * lib/xgetdomainname.c: Likewise.
11130
11131 2006-10-28  Eric Blake  <ebb9@byu.net>
11132
11133         * lib/xstrndup.c: Assume config.h.
11134
11135 2006-10-27  Paul Eggert  <eggert@cs.ucla.edu>
11136
11137         Move stat.h-substitute stuff from lib/stat-macros.h to lib/stat_.h.
11138         stat-macros.h is now for our own macros, whereas stat_h is for
11139         macros in the <sys/stat.h> name space.
11140         * lib/stat-macros.h: Remove copyright notice, as this file is now tiny.
11141         (STAT_MACROS_H): Remove.
11142         (S_IFMT, S_ISBLK, S_ISCHR, S_ISDIR, S_ISFIFO, S_ISLNK, S_ISNAM):
11143         (S_ISMPB, S_ISMPC, S_ISNWK, S_ISREG, S_ISSOCK, S_ISDOOR, S_ISPORT):
11144         (S_TYPEISMQ, S_TYPEISTMO, S_TYPEISSEM, S_TYPEISSHM, S_ISCTG, S_ISOFD):
11145         (S_ISOFL, S_ISWHT, S_ISUID, S_ISGID, S_ISVTX, S_IRUSR, S_IRGRP):
11146         (S_IROTH, S_IWUSR, S_IWGRP, S_IWOTH, S_IXUSR, S_IXGRP, S_IXOTH):
11147         (S_IRWXU, S_IRWXG, S_IRWXO, S_IXUGO, S_IRWXUGO):
11148         Move these macros to ...
11149         * lib/stat_.h: here.  Don't include stat-macros.h.
11150         * lib/canonicalize.c: Don't include stat-macros.h.
11151         * lib/chown.c: Likewise.
11152         * lib/euidaccess.c: Likewise.
11153         * lib/file-type.c: Likewise.
11154         * lib/filemode.c: Likewise.
11155         * lib/glob.c: Likewise.
11156         * lib/isapipe.c: Likewise.
11157         * lib/lchown.c: Likewise.
11158         * lib/lstat.c: Likewise.
11159         * lib/mkdir-p.c: Likewise.
11160         * lib/rmdir.c: Likewise.
11161         * m4/lchown.m4 (gl_FUNC_LCHOWN): Don't require gl_STAT_MACROS.
11162         * m4/sys_stat_h.m4 (gl_HEADER_SYS_STAT_H): Don't check for io.h
11163         unless mkdir isn't declared, to speed up 'configure'.
11164         Always create sys/stat.h, since it's unlikely any real sys/stat.h
11165         would define all the S_* symbols.
11166         * modules/canonicalize (Depends-on):
11167         Depend on sys_stat, not stat-macros.
11168         * modules/chown: Likewise.
11169         * modules/euidaccess: Likewise.
11170         * modules/filemode: Likewise.
11171         * modules/file-type: Likewise.
11172         * modules/glob: Likewise.
11173         * modules/isapipe: Likewise.
11174         * modules/lchown: Likewise.
11175         * modules/lstat: Likewise.
11176         * modules/mkancesdirs: Likewise.
11177         * modules/rmdir: Likewise.
11178         * modules/mkdir-p (Depends-on): Also depend on sys_stat.
11179         * modules/modechange: Likewise.
11180         * modules/stat-macros (Files): Remove m4/stat-macros.m4.
11181         (configure.ac): Remove gl_STAT_MACROS.
11182         * modules/sys_stat (Depends-on): Remove stat-macros.
11183
11184 2006-10-27  Bruno Haible  <bruno@clisp.org>
11185
11186         * m4/signed.m4: Remove file.
11187         * m4/vasnprintf.m4 (gl_PREREQ_PRINTF_ARGS_: Remove bh_C_SIGNED
11188         invocation.
11189         * modules/vasnprintf (Files): Remove m4/signed.m4.
11190
11191 2006-10-27  Bruno Haible  <bruno@clisp.org>
11192
11193         Update to GNU gettext 0.16.
11194         * modules/gettext (Files): Add m4/intl.m4, m4/intldir.m4. Remove
11195         m4/inttypes-h.m4, m4/signed.m4.
11196         * m4/gettext.m4: Update to GNU gettext 0.16.
11197         * m4/intl.m4: New file, from GNU gettext.
11198         * m4/intldir.m4: New file, from GNU gettext.
11199         * config/srclist.txt: Update
11200
11201 2006-10-27  Eric Blake  <ebb9@byu.net>
11202
11203         * MODULES.html.sh: Document tempname.
11204         * modules/mkstemp (Depends-on): Add tempname, and drop transitive
11205         dependencies.
11206         (Files): Move lib/tempname.c...
11207         * modules/tempname: ...to this new module.
11208         * m4/mkstemp.m4 (gl_FUNC_MKSTEMP): Remove tempname checks.
11209         (gl_PREREQ_TEMPNAME): Move...
11210         * m4/tempname.m4: ...to this new file.
11211         * lib/mkstemp.c (includes) [!_LIBC]: Use tempname.h.
11212         * modules/sys_stat (Depends-on): Add stat-macros.
11213         * lib/stat_.h (includes): Pick up stat macros.
11214         * m4/sys_stat_h.m4 (gl_HEADER_SYS_STAT_H): Replace <sys/stat.h>
11215         if stat macros are broken.
11216         * lib/tempname.c (includes): No need to include "stat-macros.h".
11217         (__gen_tempname) [!_LIBC]: Expose as gen_tempname.
11218         (direxists, __path_search) [!_LIBC]: Don't compile these in
11219         gnulib; the tmpdir module covers that.
11220         * lib/tempname.h: New file.
11221
11222 2006-10-26  Paul Eggert  <eggert@cs.ucla.edu>
11223
11224         * COPYING: Explain how gnulib-tool converts licence headers.
11225         Almost all wording by Eric Blake.
11226
11227 2006-10-25  Paul Eggert  <eggert@cs.ucla.edu>
11228
11229         * lib/mbchar.h (is_basic_table): Make read-only.
11230         * lib/mbchar.c (is_basic_table): Likewise.
11231         Reported by John Darrington.
11232
11233 2006-10-25  Bruno Haible  <bruno@clisp.org>
11234
11235         * lib/progname.h (set_program_name): Undefine before defining.
11236
11237 2006-10-25  Bruno Haible  <bruno@clisp.org>
11238
11239         * lib/gettext.h (_LIBGETTEXT_HAVE_VARIABLE_SIZE_ARRAYS): Define to
11240         false for non-gcc C++ compilers.
11241         Reported by Nelson H. F. Beebe <beebe@math.utah.edu>.
11242
11243 2006-10-24  Bruno Haible  <bruno@clisp.org>
11244
11245         * lib/striconv.c (mem_cd_iconv, str_cd_iconv): Treat all non-GNU
11246         iconv implementations like Irix iconv.
11247
11248 2006-10-24  Paul Eggert  <eggert@cs.ucla.edu>
11249
11250         * modules/vararrays: New file.
11251         * m4/vararrays.m4: New file, taken from diffutils.
11252         * MODULES.html.sh: New module vararrays.
11253
11254 2006-10-24  Karl Berry  <karl@gnu.org>
11255
11256         * doc/gnulib-intro.texi: --- instead of --; non-naive naive.
11257         Don't call GNU Unix.
11258
11259 2006-10-24  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
11260
11261         * users.txt: Add Libtool.
11262
11263         Sync from Libtool:
11264
11265         2006-10-24  Paul Eggert  <eggert@cs.ucla.edu>
11266
11267         * lib/argz.c: Remove check for HAVE_CONFIG_H, to conform
11268         to gnulib's policy of including config.h unconditionally.
11269
11270 2006-10-24  Bruno Haible  <bruno@clisp.org>
11271
11272         * modules/wcwidth (Files): Add m4/wint_t.m4.
11273         * m4/wcwidth.m4 (gl_FUNC_WCWIDTH): Require gt_TYPE_WINT_T.
11274         * lib/wcwidth.h (iswprint): Use 'int' if 'wint_t' is not defined.
11275
11276 2006-10-24  Paul Eggert  <eggert@cs.ucla.edu>
11277
11278         * lib/getdate.y (yyerror): Make the arguments pointer-to-const,
11279         to pacify GCC with some -W flags enabled.  Problem reported by
11280         Bruno Haible.
11281
11282 2006-10-24  Jim Meyering  <jim@meyering.net>
11283
11284         * MODULES.html.sh: Remove uinttostr.  It's not a module.
11285         Reported by Karl Berry.
11286
11287 2006-10-23  Bruno Haible  <bruno@clisp.org>
11288
11289         * lib/fts.c (fts_build): Move variable declaration, for C89 compliance.
11290
11291 2006-10-24  Bruno Haible  <bruno@clisp.org>
11292
11293         * lib/gl_list.h: Use C comment style, not C++ comment style.
11294
11295 2006-10-23  Eric Blake  <ebb9@byu.net>
11296
11297         * lib/getaddrinfo.c (includes): Add missing include.
11298
11299 2006-10-23  Bruno Haible  <bruno@clisp.org>
11300             Paul Eggert  <eggert@cs.ucla.edu>
11301
11302         Ability to rename obstack_free.
11303         * lib/obstack.h (__obstack_free): New macro. Declare instead of
11304         obstack_free.
11305         (obstack_free): Invoke the __obstack_free macro.
11306         * lib/obstack.c (obstack_free): Use __obstack_free macro.
11307
11308 2006-10-23  Bruno Haible  <bruno@clisp.org>
11309             Paul Eggert  <eggert@cs.ucla.edu>
11310
11311         * lib/argp.h (argp_parse, __argp_parse): Comment out the identifiers
11312         __argc, __argv from the declaration. (They are defined as macros on
11313         mingw.)
11314
11315 2006-10-22  Bruno Haible  <bruno@clisp.org>
11316
11317         * doc/gnulib-intro.texi: New file.
11318         * doc/gnulib.texi: Include it.
11319
11320 2006-10-21  Bruno Haible  <bruno@clisp.org>
11321
11322         * doc/gnulib.texi: Split the chapter "Gnulib" into 3 chapters
11323         "Introduction", "Miscellanous Notes", "Particular Modules".
11324
11325 2006-10-21  Bruno Haible  <bruno@clisp.org>
11326
11327         * gnulib-tool (func_emit_lib_Makefile_am, func_emit_tests_Makefile_am):
11328         Change mostlyclean-local rule to avoid sh syntax error from bash
11329         versions 2.00..2.05 when $(MOSTLYCLEANDIRS) is empty.
11330
11331 2006-10-23  Jim Meyering  <jim@meyering.net>
11332
11333         * lib/getaddrinfo.c (getnameinfo): Use new lightweight uinttostr,
11334         in place of snprintf.
11335
11336         * modules/inttostr (Files): Add lib/uinttostr.c.
11337         * lib/uinttostr.c (inttostr): New file/function.
11338         * lib/inttostr.h (uinttostr): Declare.
11339         * m4/inttostr.m4: Add AC_LIBOBJ([uinttostr]).
11340         * MODULES.html.sh (Numeric conversion functions <stdlib.h>):
11341         Add uinttostr.
11342         * modules/getaddrinfo (Depends-on): Remove snprintf.  Add inttostr.
11343
11344 2006-10-21  Paul Eggert  <eggert@cs.ucla.edu>
11345
11346         * lib/canonicalize.c (ELOOP): Define if not already defined.
11347         Problem reported by Bruno Haible in
11348         <http://lists.gnu.org/archive/html/bug-gnulib/2006-10/msg00282.html>.
11349
11350 2006-10-21  Paul Eggert  <eggert@cs.ucla.edu>
11351
11352         * lib/stdint_.h [defined _AIX]: Don't include <sys/types.h>.
11353         Problem reported by Perry Smith and Ville Laurikari.
11354
11355         * lib/getndelim2.c (SSIZE_MAX): Use same defn that getdelim.c
11356         uses.
11357
11358 2006-10-19  Bruno Haible  <bruno@clisp.org>
11359
11360         * lib/getndelim2.c (SSIZE_MAX): Provide fallback definition. Needed
11361         for mingw.
11362
11363 2006-10-19  Bruno Haible  <bruno@clisp.org>
11364
11365         * lib/openat-priv.h (EOPNOTSUPP): Provide fallback definition.
11366         Needed for mingw.
11367
11368 2006-10-19  Bruno Haible  <bruno@clisp.org>
11369
11370         * m4/size_max.m4 (gl_SIZE_MAX): Cache the result.
11371
11372 2006-10-19  Bruno Haible  <bruno@clisp.org>
11373
11374         * m4/allocsa.m4 (gl_ALLOCSA): Invoke gl_FUNC_ALLOCA, don't AC_REQUIRE
11375         it.
11376
11377 2006-10-19  Bruno Haible  <bruno@clisp.org>
11378
11379         * m4/alloca.m4 (gl_FUNC_ALLOCA): Cache the result of the AC_EGREP_CPP
11380         invocation.
11381
11382 2006-10-19  Bruno Haible  <bruno@clisp.org>
11383
11384         * gnulib-tool (func_create_testdir): Don't include ftruncate and
11385         mountlist by default.
11386
11387 2006-10-16  Bruno Haible  <bruno@clisp.org>
11388
11389         * lib/c-strstr.c: Include c-strstr.h.
11390
11391 2006-10-18  Charles Wilson  <cygwin@cwilson.fastmail.fm>
11392
11393         * gnulib-tool: Don't clobber $sourcebase when $local_gnulib_dir ends
11394         in a slash.
11395
11396 2006-10-18  Bruno Haible  <bruno@clisp.org>
11397
11398         * lib/lock.h [C++]: Wrap definitions in extern "C".
11399
11400 2006-10-18  Bruno Haible  <bruno@clisp.org>
11401
11402         * gnulib-tool (func_emit_initmacro_end): Remove duplicates from the
11403         gl_LIBOBJS list.
11404
11405 2006-10-18  Bruno Haible  <bruno@clisp.org>
11406
11407         * lib/findprog.c (find_in_path): Avoid "gcc -Wwrite-strings" warning.
11408
11409 2006-10-19  Paul Eggert  <eggert@cs.ucla.edu>
11410
11411         * lib/xstrtol.h: Include gettext.h.
11412         (_STRTOL_ERROR): Wrap English-language formats inside gettext.
11413         Problem reported by Eric Blake.
11414         * modules/xstrtol (Depends-on): Add gettext-h.
11415
11416 2006-10-19  Paul Eggert  <eggert@cs.ucla.edu>  (tiny change)
11417
11418         * lib/strftime.c (advance): New macro.
11419         (add): Use it to avoid adding 0 to a FILE *.  FILE can be an
11420         incomplete type, so you can't add 0 to it.  Problem and patch
11421         reported by Eelco Dolstra for dietlibc.
11422
11423 2006-10-18  Jim Meyering  <jim@meyering.net>
11424
11425         * lib/readutmp.c (desirable_utmp_entry): Use "bool" as the
11426         type for a local, and rename it: s/up/user_proc/.
11427
11428 2006-10-18  Sergey Poznyakoff  <gray@gnu.org.ua>
11429
11430         * lib/readutmp.c (desirable_utmp_entry): Implement new flag:
11431         READ_UTMP_USER_PROCESS.
11432         * lib/readutmp.h (READ_UTMP_USER_PROCESS): New flag
11433
11434 2006-10-17  Paul Eggert  <eggert@cs.ucla.edu>
11435
11436         * lib/localcharset.c: Do not check HAVE_SETLOCALE.
11437         * m4/localcharset.m4 (gl_LOCALCHARSET): Don't check for setlocale.
11438
11439 2006-10-17  Eric Blake  <ebb9@byu.net>
11440
11441         * lib/sigprocmask.c (sigprocmask): Fix typo.
11442
11443         * m4/signalblocking.m4 (gl_PREREQ_SIGPROCMASK): Fix typo.
11444
11445         * modules/clean-temp (Makefile.am): Don't add to make output...
11446         (configure.ac): ...instead define SIGNAL_SAFE_LIST inside
11447         config.h.
11448
11449 2006-10-17  Bruno Haible  <bruno@clisp.org>
11450
11451         * lib/gettext.h (gettext, ngettext, pgettext, npgettext): Define
11452         differently if DEFAULT_TEXT_DOMAIN is set.
11453
11454 2006-10-16  Bruno Haible  <bruno@clisp.org>
11455
11456         * lib/clean-temp.c: Include fwriteerror.h.
11457
11458 2006-10-16  Bruno Haible  <bruno@clisp.org>
11459
11460         * getndelim2.m4 (gl_GETNDELIM2): Remove 2003-10-23 hack.
11461
11462 2006-10-16  Bruno Haible  <bruno@clisp.org>
11463
11464         * m4/signalblocking.m4 (gl_PREREQ_SIGPROCMASK): Also test for sigset_t.
11465         * lib/sigprocmask.h: Include <sys/types.h>.
11466         (sigset_t): Use the system's definition if present.
11467
11468 2006-10-17  Eric Blake  <ebb9@byu.net>
11469
11470         * lib/xvasprintf.c (includes): Assume config.h.
11471         * lib/xasprintf.c (includes): Likewise.
11472
11473 2006-10-16  Paul Eggert  <eggert@cs.ucla.edu>
11474
11475         * lib/fsusage.c (PROPAGATE_ALL_ONES): Don't assume uintmax_t is
11476         at least as wide as intmax_t.
11477
11478 2006-10-16  Alexandre Duret-Lutz  <adl@gnu.org>
11479
11480         (Imported from Automake.)
11481         * build-aux/gnupload: Update to version 1.1 of directive file.
11482
11483 2006-10-16  Eric Blake  <ebb9@byu.net>
11484
11485         * modules/configmake (Makefile.am): Add pkglibexecdir support, to
11486         match Automake 1.10a.
11487
11488 2006-10-14  Bruno Haible  <bruno@clisp.org>
11489
11490         * modules/sigprocmask: New file.
11491         * lib/sigprocmask.h: New file.
11492         * lib/sigprocmask.c: New file.
11493         * m4/signalblocking.m4 (gl_SIGNALBLOCKING): Renamed from
11494         gt_SIGNALBLOCKING. When not defining HAVE_POSIX_SIGNALBLOCKING,
11495         request sigprocmask.o.
11496         (gl_PREREQ_SIGPROCMASK): New macro.
11497         * modules/fatal-signal (Files): Remove m4/signalblocking.m4.
11498         (Depends-on): Add sigprocmask.
11499         * m4/fatal-signal.m4 (gl_FATAL_SIGNAL): Don't require
11500         gt_SIGNALBLOCKING. Test for 'raise' only once.
11501         * lib/fatal-signal.c: Include sigprocmask.h.
11502         (fatal_signal_set, init_fatal_signal_set, block_fatal_signals,
11503         unblock_fatal_signals): Define always.
11504         * MODULES.html.sh (Support for systems lacking POSIX:2001): Add
11505         sigprocmask.
11506
11507 2006-10-14  Paul Eggert  <eggert@cs.ucla.edu>
11508
11509         Sync from Automake.
11510         * build-aux/install-sh (posix_mkdir): Reject FreeBSD 6.1 mkdir -p -m,
11511         which incorrectly sets the mode of an existing destination
11512         directory.  In some cases the unpatched install-sh could do the
11513         equivalent of "chmod 777 /" or "chmod 0 /" on a buggy FreeBSD
11514         system.  We hope this is rare in practice, but it's clearly worth
11515         fixing.  Problem reported by Alex Unleashed in
11516         <http://lists.gnu.org/archive/html/bug-autoconf/2006-10/msg00012.html>.
11517         Also, don't bother to check for -m bugs unless we're using -m;
11518         suggested by Stepan Kasal.
11519
11520 2006-10-14  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
11521
11522         Sync from Automake.
11523         * build-aux/depcomp (gcc3): Put dependency extraction flags before the
11524         `-c' flag, so they appear at the same position as in %FASTDEP%
11525         mode in depend2.am.  Fixes build failure for FreeBSD's c89,
11526         which ignores unknown options only after the first non-option.
11527         Bug report against M4 by Nelson H. F. Beebe.
11528
11529 2006-10-13  Jim Meyering  <jim@meyering.net>
11530
11531         Fix a bug in yesterday's change.
11532         * lib/fts.c (fts_open): When using FTS_XDEV|FTS_NOSTAT,
11533         p->fts_statp->st_dev would be used uninitialized.
11534         Ensures that we always call fts_stat on the very first entry.
11535         Miklos Szeredi reported that find -xdev stopped working.
11536
11537 2006-10-12  Bruno Haible  <bruno@clisp.org>
11538
11539         * gnulib-tool (func_get_automake_snippet): Append an automatically
11540         computed EXTRA_DIST augmentation.
11541         * modules/acl (Makefile.am): Remove EXTRA_DIST augmentation.
11542         * modules/alloca-opt (Makefile.am): Likewise.
11543         * modules/allocsa (Makefile.am): Likewise.
11544         * modules/arcfour (Makefile.am): Likewise.
11545         * modules/arctwo (Makefile.am): Likewise.
11546         * modules/argmatch (Makefile.am): Likewise.
11547         * modules/argz (Makefile.am): Likewise.
11548         * modules/atexit (Makefile.am): Likewise.
11549         * modules/backupfile (Makefile.am): Likewise.
11550         * modules/byteswap (Makefile.am): Likewise.
11551         * modules/c-strtod (Makefile.am): Likewise.
11552         * modules/c-strtold (Makefile.am): Likewise.
11553         * modules/calloc (Makefile.am): Likewise.
11554         * modules/canon-host (Makefile.am): Likewise.
11555         * modules/canonicalize (Makefile.am): Likewise.
11556         * modules/chdir-long (Makefile.am): Likewise.
11557         * modules/chdir-safer (Makefile.am): Likewise.
11558         * modules/check-version (Makefile.am): Likewise.
11559         * modules/chown (Makefile.am): Likewise.
11560         * modules/cloexec (Makefile.am): Likewise.
11561         * modules/close-stream (Makefile.am): Likewise.
11562         * modules/closeout (Makefile.am): Likewise.
11563         * modules/crc (Makefile.am): Likewise.
11564         * modules/csharpexec (Makefile.am): Likewise.
11565         * modules/cycle-check (Makefile.am): Likewise.
11566         * modules/des (Makefile.am): Likewise.
11567         * modules/dev-ino (Makefile.am): Likewise.
11568         * modules/dirfd (Makefile.am): Likewise.
11569         * modules/dirname (Makefile.am): Likewise.
11570         * modules/dup2 (Makefile.am): Likewise.
11571         * modules/eealloc (Makefile.am): Likewise.
11572         * modules/error (Makefile.am): Likewise.
11573         * modules/euidaccess (Makefile.am): Likewise.
11574         * modules/exclude (Makefile.am): Likewise.
11575         * modules/exitfail (Makefile.am): Likewise.
11576         * modules/fcntl-safer (Makefile.am): Likewise.
11577         * modules/fcntl (Makefile.am): Likewise.
11578         * modules/file-type (Makefile.am): Likewise.
11579         * modules/fileblocks (Makefile.am): Likewise.
11580         * modules/filemode (Makefile.am): Likewise.
11581         * modules/filenamecat (Makefile.am): Likewise.
11582         * modules/fnmatch (Makefile.am): Likewise.
11583         * modules/fopen-safer (Makefile.am): Likewise.
11584         * modules/fpending (Makefile.am): Likewise.
11585         * modules/fprintftime (Makefile.am): Likewise.
11586         * modules/free (Makefile.am): Likewise.
11587         * modules/fsusage (Makefile.am): Likewise.
11588         * modules/ftruncate (Makefile.am): Likewise.
11589         * modules/fts (Makefile.am): Likewise.
11590         * modules/gc-arcfour (Makefile.am): Likewise.
11591         * modules/gc-des (Makefile.am): Likewise.
11592         * modules/gc-hmac-md5 (Makefile.am): Likewise.
11593         * modules/gc-hmac-sha1 (Makefile.am): Likewise.
11594         * modules/gc-md4 (Makefile.am): Likewise.
11595         * modules/gc-pbkdf2-sha1 (Makefile.am): Likewise.
11596         * modules/gc-sha1 (Makefile.am): Likewise.
11597         * modules/gc (Makefile.am): Likewise.
11598         * modules/getaddrinfo (Makefile.am): Likewise.
11599         * modules/getcwd (Makefile.am): Likewise.
11600         * modules/getdelim (Makefile.am): Likewise.
11601         * modules/getdomainname (Makefile.am): Likewise.
11602         * modules/getgroups (Makefile.am): Likewise.
11603         * modules/gethostname (Makefile.am): Likewise.
11604         * modules/gethrxtime (Makefile.am): Likewise.
11605         * modules/getline (Makefile.am): Likewise.
11606         * modules/getloadavg (Makefile.am): Likewise.
11607         * modules/getlogin_r (Makefile.am): Likewise.
11608         * modules/getndelim2 (Makefile.am): Likewise.
11609         * modules/getopt (Makefile.am): Likewise.
11610         * modules/getpagesize (Makefile.am): Likewise.
11611         * modules/getpass-gnu (Makefile.am): Likewise.
11612         * modules/getpass (Makefile.am): Likewise.
11613         * modules/getsubopt (Makefile.am): Likewise.
11614         * modules/gettime (Makefile.am): Likewise.
11615         * modules/gettimeofday (Makefile.am): Likewise.
11616         * modules/getugroups (Makefile.am): Likewise.
11617         * modules/getusershell (Makefile.am): Likewise.
11618         * modules/glob (Makefile.am): Likewise.
11619         * modules/group-member (Makefile.am): Likewise.
11620         * modules/hard-locale (Makefile.am): Likewise.
11621         * modules/hash (Makefile.am): Likewise.
11622         * modules/hmac-md5 (Makefile.am): Likewise.
11623         * modules/hmac-sha1 (Makefile.am): Likewise.
11624         * modules/human (Makefile.am): Likewise.
11625         * modules/idcache (Makefile.am): Likewise.
11626         * modules/imaxabs (Makefile.am): Likewise.
11627         * modules/imaxdiv (Makefile.am): Likewise.
11628         * modules/inet_ntop (Makefile.am): Likewise.
11629         * modules/inet_pton (Makefile.am): Likewise.
11630         * modules/intprops (Makefile.am): Likewise.
11631         * modules/inttostr (Makefile.am): Likewise.
11632         * modules/inttypes (Makefile.am): Likewise.
11633         * modules/isapipe (Makefile.am): Likewise.
11634         * modules/javaversion (Makefile.am): Likewise.
11635         * modules/lchmod (Makefile.am): Likewise.
11636         * modules/lchown (Makefile.am): Likewise.
11637         * modules/localcharset (Makefile.am): Likewise.
11638         * modules/long-options (Makefile.am): Likewise.
11639         * modules/lstat (Makefile.am): Likewise.
11640         * modules/malloc (Makefile.am): Likewise.
11641         * modules/mathl (Makefile.am): Likewise.
11642         * modules/mbchar (Makefile.am): Likewise.
11643         * modules/md2 (Makefile.am): Likewise.
11644         * modules/md4 (Makefile.am): Likewise.
11645         * modules/md5 (Makefile.am): Likewise.
11646         * modules/memcasecmp (Makefile.am): Likewise.
11647         * modules/memchr (Makefile.am): Likewise.
11648         * modules/memcmp (Makefile.am): Likewise.
11649         * modules/memcoll (Makefile.am): Likewise.
11650         * modules/memcpy (Makefile.am): Likewise.
11651         * modules/memmem (Makefile.am): Likewise.
11652         * modules/memmove (Makefile.am): Likewise.
11653         * modules/mempcpy (Makefile.am): Likewise.
11654         * modules/memrchr (Makefile.am): Likewise.
11655         * modules/memset (Makefile.am): Likewise.
11656         * modules/memxor (Makefile.am): Likewise.
11657         * modules/mkancesdirs (Makefile.am): Likewise.
11658         * modules/mkdir-p (Makefile.am): Likewise.
11659         * modules/mkdir (Makefile.am): Likewise.
11660         * modules/mkdtemp (Makefile.am): Likewise.
11661         * modules/mkstemp (Makefile.am): Likewise.
11662         * modules/mktime (Makefile.am): Likewise.
11663         * modules/modechange (Makefile.am): Likewise.
11664         * modules/mountlist (Makefile.am): Likewise.
11665         * modules/nanosleep (Makefile.am): Likewise.
11666         * modules/obstack (Makefile.am): Likewise.
11667         * modules/openat (Makefile.am): Likewise.
11668         * modules/pagealign_alloc (Makefile.am): Likewise.
11669         * modules/pathmax (Makefile.am): Likewise.
11670         * modules/physmem (Makefile.am): Likewise.
11671         * modules/poll (Makefile.am): Likewise.
11672         * modules/posixtm (Makefile.am): Likewise.
11673         * modules/posixver (Makefile.am): Likewise.
11674         * modules/putenv (Makefile.am): Likewise.
11675         * modules/quote (Makefile.am): Likewise.
11676         * modules/quotearg (Makefile.am): Likewise.
11677         * modules/raise (Makefile.am): Likewise.
11678         * modules/read-file (Makefile.am): Likewise.
11679         * modules/readline (Makefile.am): Likewise.
11680         * modules/readlink (Makefile.am): Likewise.
11681         * modules/readtokens (Makefile.am): Likewise.
11682         * modules/readutmp (Makefile.am): Likewise.
11683         * modules/realloc (Makefile.am): Likewise.
11684         * modules/regex (Makefile.am): Likewise.
11685         * modules/rename-dest-slash (Makefile.am): Likewise.
11686         * modules/rename (Makefile.am): Likewise.
11687         * modules/rijndael (Makefile.am): Likewise.
11688         * modules/rmdir (Makefile.am): Likewise.
11689         * modules/rpmatch (Makefile.am): Likewise.
11690         * modules/safe-read (Makefile.am): Likewise.
11691         * modules/safe-write (Makefile.am): Likewise.
11692         * modules/same-inode (Makefile.am): Likewise.
11693         * modules/same (Makefile.am): Likewise.
11694         * modules/save-cwd (Makefile.am): Likewise.
11695         * modules/savedir (Makefile.am): Likewise.
11696         * modules/setenv (Makefile.am): Likewise.
11697         * modules/settime (Makefile.am): Likewise.
11698         * modules/sha1 (Makefile.am): Likewise.
11699         * modules/sig2str (Makefile.am): Likewise.
11700         * modules/snprintf (Makefile.am): Likewise.
11701         * modules/stat-macros (Makefile.am): Likewise.
11702         * modules/stat-time (Makefile.am): Likewise.
11703         * modules/stdbool (Makefile.am): Likewise.
11704         * modules/stdint (Makefile.am): Likewise.
11705         * modules/stdlib-safer (Makefile.am): Likewise.
11706         * modules/stpcpy (Makefile.am): Likewise.
11707         * modules/stpncpy (Makefile.am): Likewise.
11708         * modules/strcase (Makefile.am): Likewise.
11709         * modules/strcasestr (Makefile.am): Likewise.
11710         * modules/strchrnul (Makefile.am): Likewise.
11711         * modules/strcspn (Makefile.am): Likewise.
11712         * modules/strdup (Makefile.am): Likewise.
11713         * modules/strerror (Makefile.am): Likewise.
11714         * modules/strftime (Makefile.am): Likewise.
11715         * modules/strndup (Makefile.am): Likewise.
11716         * modules/strnlen (Makefile.am): Likewise.
11717         * modules/strpbrk (Makefile.am): Likewise.
11718         * modules/strsep (Makefile.am): Likewise.
11719         * modules/strstr (Makefile.am): Likewise.
11720         * modules/strtod (Makefile.am): Likewise.
11721         * modules/strtoimax (Makefile.am): Likewise.
11722         * modules/strtok_r (Makefile.am): Likewise.
11723         * modules/strtol (Makefile.am): Likewise.
11724         * modules/strtoll (Makefile.am): Likewise.
11725         * modules/strtoul (Makefile.am): Likewise.
11726         * modules/strtoull (Makefile.am): Likewise.
11727         * modules/strtoumax (Makefile.am): Likewise.
11728         * modules/strverscmp (Makefile.am): Likewise.
11729         * modules/sys_socket (Makefile.am): Likewise.
11730         * modules/sys_stat (Makefile.am): Likewise.
11731         * modules/sysexits (Makefile.am): Likewise.
11732         * modules/time_r (Makefile.am): Likewise.
11733         * modules/timegm (Makefile.am): Likewise.
11734         * modules/timespec (Makefile.am): Likewise.
11735         * modules/tmpfile-safer (Makefile.am): Likewise.
11736         * modules/trim (Makefile.am): Likewise.
11737         * modules/unistd-safer (Makefile.am): Likewise.
11738         * modules/unlinkdir (Makefile.am): Likewise.
11739         * modules/unlocked-io (Makefile.am): Likewise.
11740         * modules/userspec (Makefile.am): Likewise.
11741         * modules/utime (Makefile.am): Likewise.
11742         * modules/utimecmp (Makefile.am): Likewise.
11743         * modules/utimens (Makefile.am): Likewise.
11744         * modules/vasnprintf (Makefile.am): Likewise.
11745         * modules/vasprintf (Makefile.am): Likewise.
11746         * modules/vsnprintf (Makefile.am): Likewise.
11747         * modules/xalloc (Makefile.am): Likewise.
11748         * modules/xgetcwd (Makefile.am): Likewise.
11749         * modules/xnanosleep (Makefile.am): Likewise.
11750         * modules/xreadlink (Makefile.am): Likewise.
11751         * modules/xstrtod (Makefile.am): Likewise.
11752         * modules/xstrtol (Makefile.am): Likewise.
11753         * modules/xstrtold (Makefile.am): Likewise.
11754         * modules/yesno (Makefile.am): Likewise.
11755         * modules/getdate (Makefile.am): Don't add getdate.h to EXTRA_DIST.
11756
11757 2006-10-12  Paul Eggert  <eggert@cs.ucla.edu>
11758
11759         * modules/error (Makefile.am): Distribute files through
11760         EXTRA_DIST, not lib_SOURCES.
11761
11762 2006-10-12  Eric Blake  <ebb9@byu.net>
11763
11764         * modules/error (Makefile.am): Distribute files in /lib.
11765         * modules/obstack (Makefile.am): Likewise.
11766
11767 2006-10-12  Bruno Haible  <bruno@clisp.org>
11768
11769         * modules/acl (Makefile.am): Distribute all files in lib/ through
11770         EXTRA_DIST.
11771         * modules/arcfour (Makefile.am): Likewise.
11772         * modules/arctwo (Makefile.am): Likewise.
11773         * modules/argmatch (Makefile.am): Likewise.
11774         * modules/argz (Makefile.am): Likewise.
11775         * modules/atexit (Makefile.am): Likewise.
11776         * modules/backupfile (Makefile.am): Likewise.
11777         * modules/c-strtod (Makefile.am): Likewise.
11778         * modules/c-strtold (Makefile.am): Likewise.
11779         * modules/calloc (Makefile.am): Likewise.
11780         * modules/canon-host (Makefile.am): Likewise.
11781         * modules/canonicalize (Makefile.am): Likewise.
11782         * modules/chdir-long (Makefile.am): Likewise.
11783         * modules/chdir-safer (Makefile.am): Likewise.
11784         * modules/check-version (Makefile.am): Likewise.
11785         * modules/chown (Makefile.am): Likewise.
11786         * modules/cloexec (Makefile.am): Likewise.
11787         * modules/close-stream (Makefile.am): Likewise.
11788         * modules/closeout (Makefile.am): Likewise.
11789         * modules/crc (Makefile.am): Likewise.
11790         * modules/cycle-check (Makefile.am): Likewise.
11791         * modules/des (Makefile.am): Likewise.
11792         * modules/dirfd (Makefile.am): Likewise.
11793         * modules/dirname (Makefile.am): Likewise.
11794         * modules/dup2 (Makefile.am): Likewise.
11795         * modules/euidaccess (Makefile.am): Likewise.
11796         * modules/exclude (Makefile.am): Likewise.
11797         * modules/exitfail (Makefile.am): Likewise.
11798         * modules/fcntl-safer (Makefile.am): Likewise.
11799         * modules/file-type (Makefile.am): Likewise.
11800         * modules/fileblocks (Makefile.am): Likewise.
11801         * modules/filemode (Makefile.am): Likewise.
11802         * modules/filenamecat (Makefile.am): Likewise.
11803         * modules/fnmatch (Makefile.am): Likewise.
11804         * modules/fopen-safer (Makefile.am): Likewise.
11805         * modules/fpending (Makefile.am): Likewise.
11806         * modules/fprintftime (Makefile.am): Likewise.
11807         * modules/free (Makefile.am): Likewise.
11808         * modules/fsusage (Makefile.am): Likewise.
11809         * modules/ftruncate (Makefile.am): Likewise.
11810         * modules/fts (Makefile.am): Likewise.
11811         * modules/gc (Makefile.am): Likewise.
11812         * modules/gc-pbkdf2-sha1 (Makefile.am): Likewise.
11813         * modules/getaddrinfo (Makefile.am): Likewise.
11814         * modules/getcwd (Makefile.am): Likewise.
11815         * modules/getdelim (Makefile.am): Likewise.
11816         * modules/getdomainname (Makefile.am): Likewise.
11817         * modules/getgroups (Makefile.am): Likewise.
11818         * modules/gethostname (Makefile.am): Likewise.
11819         * modules/gethrxtime (Makefile.am): Likewise.
11820         * modules/getline (Makefile.am): Likewise.
11821         * modules/getloadavg (Makefile.am): Likewise.
11822         * modules/getlogin_r (Makefile.am): Likewise.
11823         * modules/getopt (Makefile.am): Likewise.
11824         * modules/getpass (Makefile.am): Likewise.
11825         * modules/getpass-gnu (Makefile.am): Likewise.
11826         * modules/getsubopt (Makefile.am): Likewise.
11827         * modules/gettime (Makefile.am): Likewise.
11828         * modules/gettimeofday (Makefile.am): Likewise.
11829         * modules/getugroups (Makefile.am): Likewise.
11830         * modules/getusershell (Makefile.am): Likewise.
11831         * modules/glob (Makefile.am): Likewise.
11832         * modules/group-member (Makefile.am): Likewise.
11833         * modules/hard-locale (Makefile.am): Likewise.
11834         * modules/hash (Makefile.am): Likewise.
11835         * modules/hmac-md5 (Makefile.am): Likewise.
11836         * modules/hmac-sha1 (Makefile.am): Likewise.
11837         * modules/human (Makefile.am): Likewise.
11838         * modules/idcache (Makefile.am): Likewise.
11839         * modules/imaxabs (Makefile.am): Likewise.
11840         * modules/imaxdiv (Makefile.am): Likewise.
11841         * modules/inet_ntop (Makefile.am): Likewise.
11842         * modules/inet_pton (Makefile.am): Likewise.
11843         * modules/inttostr (Makefile.am): Likewise.
11844         * modules/isapipe (Makefile.am): Likewise.
11845         * modules/lchown (Makefile.am): Likewise.
11846         * modules/long-options (Makefile.am): Likewise.
11847         * modules/lstat (Makefile.am): Likewise.
11848         * modules/malloc (Makefile.am): Likewise.
11849         * modules/mathl (Makefile.am): Likewise.
11850         * modules/mbchar (Makefile.am): Likewise.
11851         * modules/md2 (Makefile.am): Likewise.
11852         * modules/md4 (Makefile.am): Likewise.
11853         * modules/md5 (Makefile.am): Likewise.
11854         * modules/memcasecmp (Makefile.am): Likewise.
11855         * modules/memchr (Makefile.am): Likewise.
11856         * modules/memcmp (Makefile.am): Likewise.
11857         * modules/memcoll (Makefile.am): Likewise.
11858         * modules/memcpy (Makefile.am): Likewise.
11859         * modules/memmem (Makefile.am): Likewise.
11860         * modules/memmove (Makefile.am): Likewise.
11861         * modules/mempcpy (Makefile.am): Likewise.
11862         * modules/memrchr (Makefile.am): Likewise.
11863         * modules/memset (Makefile.am): Likewise.
11864         * modules/memxor (Makefile.am): Likewise.
11865         * modules/mkancesdirs (Makefile.am): Likewise.
11866         * modules/mkdir (Makefile.am): Likewise.
11867         * modules/mkdir-p (Makefile.am): Likewise.
11868         * modules/mkdtemp (Makefile.am): Likewise.
11869         * modules/mkstemp (Makefile.am): Likewise.
11870         * modules/mktime (Makefile.am): Likewise.
11871         * modules/modechange (Makefile.am): Likewise.
11872         * modules/mountlist (Makefile.am): Likewise.
11873         * modules/nanosleep (Makefile.am): Likewise.
11874         * modules/openat (Makefile.am): Likewise.
11875         * modules/pagealign_alloc (Makefile.am): Likewise.
11876         * modules/physmem (Makefile.am): Likewise.
11877         * modules/poll (Makefile.am): Likewise.
11878         * modules/posixtm (Makefile.am): Likewise.
11879         * modules/posixver (Makefile.am): Likewise.
11880         * modules/putenv (Makefile.am): Likewise.
11881         * modules/quote (Makefile.am): Likewise.
11882         * modules/quotearg (Makefile.am): Likewise.
11883         * modules/raise (Makefile.am): Likewise.
11884         * modules/read-file (Makefile.am): Likewise.
11885         * modules/readline (Makefile.am): Likewise.
11886         * modules/readlink (Makefile.am): Likewise.
11887         * modules/readtokens (Makefile.am): Likewise.
11888         * modules/readutmp (Makefile.am): Likewise.
11889         * modules/realloc (Makefile.am): Likewise.
11890         * modules/regex (Makefile.am): Likewise.
11891         * modules/rename (Makefile.am): Likewise.
11892         * modules/rename-dest-slash (Makefile.am): Likewise.
11893         * modules/rijndael (Makefile.am): Likewise.
11894         * modules/rmdir (Makefile.am): Likewise.
11895         * modules/rpmatch (Makefile.am): Likewise.
11896         * modules/safe-read (Makefile.am): Likewise.
11897         * modules/safe-write (Makefile.am): Likewise.
11898         * modules/same (Makefile.am): Likewise.
11899         * modules/save-cwd (Makefile.am): Likewise.
11900         * modules/savedir (Makefile.am): Likewise.
11901         * modules/setenv (Makefile.am): Likewise.
11902         * modules/settime (Makefile.am): Likewise.
11903         * modules/sha1 (Makefile.am): Likewise.
11904         * modules/sig2str (Makefile.am): Likewise.
11905         * modules/snprintf (Makefile.am): Likewise.
11906         * modules/stdlib-safer (Makefile.am): Likewise.
11907         * modules/stpcpy (Makefile.am): Likewise.
11908         * modules/stpncpy (Makefile.am): Likewise.
11909         * modules/strcase (Makefile.am): Likewise.
11910         * modules/strcasestr (Makefile.am): Likewise.
11911         * modules/strchrnul (Makefile.am): Likewise.
11912         * modules/strcspn (Makefile.am): Likewise.
11913         * modules/strdup (Makefile.am): Likewise.
11914         * modules/strerror (Makefile.am): Likewise.
11915         * modules/strftime (Makefile.am): Likewise.
11916         * modules/strndup (Makefile.am): Likewise.
11917         * modules/strnlen (Makefile.am): Likewise.
11918         * modules/strpbrk (Makefile.am): Likewise.
11919         * modules/strsep (Makefile.am): Likewise.
11920         * modules/strstr (Makefile.am): Likewise.
11921         * modules/strtod (Makefile.am): Likewise.
11922         * modules/strtoimax (Makefile.am): Likewise.
11923         * modules/strtok_r (Makefile.am): Likewise.
11924         * modules/strtol (Makefile.am): Likewise.
11925         * modules/strtoll (Makefile.am): Likewise.
11926         * modules/strtoul (Makefile.am): Likewise.
11927         * modules/strtoull (Makefile.am): Likewise.
11928         * modules/strtoumax (Makefile.am): Likewise.
11929         * modules/strverscmp (Makefile.am): Likewise.
11930         * modules/time_r (Makefile.am): Likewise.
11931         * modules/timegm (Makefile.am): Likewise.
11932         * modules/tmpfile-safer (Makefile.am): Likewise.
11933         * modules/unistd-safer (Makefile.am): Likewise.
11934         * modules/unlinkdir (Makefile.am): Likewise.
11935         * modules/userspec (Makefile.am): Likewise.
11936         * modules/utime (Makefile.am): Likewise.
11937         * modules/utimecmp (Makefile.am): Likewise.
11938         * modules/utimens (Makefile.am): Likewise.
11939         * modules/vasnprintf (Makefile.am): Likewise.
11940         * modules/vasprintf (Makefile.am): Likewise.
11941         * modules/vsnprintf (Makefile.am): Likewise.
11942         * modules/xalloc (Makefile.am): Likewise.
11943         * modules/xgetcwd (Makefile.am): Likewise.
11944         * modules/xnanosleep (Makefile.am): Likewise.
11945         * modules/xreadlink (Makefile.am): Likewise.
11946         * modules/xstrtod (Makefile.am): Likewise.
11947         * modules/xstrtol (Makefile.am): Likewise.
11948         * modules/xstrtold (Makefile.am): Likewise.
11949         * modules/yesno (Makefile.am): Likewise.
11950
11951 2006-10-12  Jim Meyering  <jim@meyering.net>
11952
11953         * m4/getloadavg.m4: Revert the change below.
11954
11955         * m4/getloadavg.m4 (gl_GETLOADAVG): Test for the existence of
11956         lib/getloadavg.c using "ls -L", not "test -f".  The latter would
11957         fail with a symlink, which is what coreutils' ./bootstrap now
11958         creates by default.
11959
11960 2006-10-12  Bruno Haible  <bruno@clisp.org>
11961
11962         * lib/inttypes_.h (_LONG_LONG_FORMAT_PREFIX): Don't define for MSVC or
11963         mingw.
11964         (_PRI64_PREFIX, _PRIu64_PREFIX, _SCN64_PREFIX, _SCNu64_PREFIX): Handle
11965         MSVC and mingw explicitly.
11966
11967 2006-10-11  Simon Josefsson  <jas@extundo.com>
11968             Bruno Haible  <bruno@clisp.org>
11969
11970         Add support for multiple gnulib-tool invocations in the scope of a
11971         single configure.ac file.
11972         * gnulib-tool (func_emit_lib_Makefile_am): In the _LIBADD variable,
11973         use a private [LT]LIBOBJS variant. Define a _DEPENDENCIES variable
11974         with the same contents as the _LIBADD variable.
11975         (func_emit_initmacro_start, func_emit_initmacro_end,
11976         func_emit_initmacro_done): New functions.
11977         (func_import, func_create_testdir): Invoke them. Allow the identifiers
11978         gl_LIBOBJS and gl_LTLIBOBJS.
11979
11980 2006-10-11  Bruno Haible  <bruno@clisp.org>
11981
11982         * gnulib-tool (GETTEXTPATH, AUTOHEADER, AUTOPOINT): New variables.
11983         (func_create_testdir): Don't create po/Makefile.am, don't invoke
11984         autoreconf. Instead, invoke autopoint explicitly but move back the
11985         *.m4 files from gnulib.
11986
11987 2006-10-11  Bruno Haible  <bruno@clisp.org>
11988
11989         * gnulib-tool (func_usage): Make module names after --create-testdir
11990         optional.
11991         (func_create_testdir): If no module was specified, use nearly all
11992         modules.
11993
11994 2006-10-12  Jim Meyering  <jim@meyering.net>
11995
11996         Big performance improvement for fts-based tools that use FTS_NOSTAT.
11997         Avoid spurious inode-mismatch problems on non-POSIX file systems.
11998         Details: http://article.gmane.org/gmane.comp.lib.gnulib.bugs/7416
11999         * lib/fts_.h (FTS_DEFER_STAT): Define new flag.
12000         (FTS_OPTIONMASK): Extend the mask to reflect this addition.
12001         * lib/fts.c (DT_IS_KNOWN, DT_MUST_BE): Define.
12002         (FTS_NO_STAT_REQUIRED, FTS_STAT_REQUIRED): Define.
12003         (fts_set_stat_required): New function.
12004         (fts_open): Defer the calls to fts_stat, if possible or requested.
12005         Move the code that maps a command-line fts_info value FTS_DOT to FTS_D
12006         into fts_stat itself.
12007         (fts_read): Perform any required (deferred) fts_stat call.
12008         (fts_build): Likewise, for the directory we're about to open and read.
12009         In the readdir loop, carefully decide whether each entry will require
12010         an eventual call to fts_stat, using dirent.d_type info if available.
12011         (fts_stat): Move the test for whether to honor FTS_COMFOLLOW on
12012         a command line argument into this function.  Update all callers.
12013         Map a return value of FTS_DOT to FTS_D for a command line argument.
12014         * modules/fts (Depends-on): Add d-type.  Alphabetize.
12015         Thanks to Miklos Szeredi for his tenacity and for the initial
12016         bug report about "find" failing on a FUSE-based file system.
12017
12018         * lib/fts.c (fts_open): Use consistent indentation.
12019
12020 2006-10-12  Paul Eggert  <eggert@cs.ucla.edu>
12021
12022         * m4/extensions.m4 (AC_USE_SYSTEM_EXTENSIONS): Renamed from
12023         gl_USE_SYSTEM_EXTENSIONS, to fix a coreutils bootstrap failure
12024         reported by Jim Meyering.  All uses of cache variables renamed
12025         to match Autoconf's.
12026         (gl_USE_SYSTEM_EXTENSIONS): New macro, which simply requires
12027         the other one.
12028
12029         * m4/rename-dest-slash.m4 (gl_FUNC_RENAME_TRAILING_DEST_SLASH):
12030         Fix misspelling in diagnostic.
12031
12032 2006-10-11  Paul Eggert  <eggert@cs.ucla.edu>
12033
12034         * lib/mkdir-p.c (HAVE_FCHMOD): Define to false if not already
12035         defined.  Problem reported by Matthew Woehlke.
12036
12037         * lib/inttypes_.h (_LONG_LONG_FORMAT_PREFIX): New macro.
12038         Add support for Tandem NonStop R series.
12039         (_PRI64_PREFIX, _PRIu64_PREFIX, _SCN64_PREFIX, _SCNu64_PREFIX):
12040         Use new macro.
12041
12042         * lib/rename-dest-slash.c: Include stdbool.h but not string.h.
12043         (has_trailing_slash): Omit size arg; all callers changed.
12044         Omit 'inline', since it doesn't help performance and we'd
12045         need to configure it.
12046         Don't count //, ///, etc. as having a trailing slash.
12047         As a side effect, this removes a C99ism reported by Matthew Woehlke.
12048         (rpl_rename_dest_slash): On failure, use rename's errno rather
12049         than (in some cases) an incorrect or junk errno.
12050         Simplify code by removing need to compute length; this does
12051         cause it to make two passes instead of one over the file name,
12052         but it's worth it.
12053
12054         * m4/extensions.m4 (gl_USE_SYSTEM_EXTENSIONS): Undo previous
12055         change, since Autoconf's version may no longer be appropriate now
12056         that we are using CVS Autoconf's version.  Add support for Tandem.
12057
12058 2006-10-11  Paul Eggert  <eggert@cs.ucla.edu>
12059             Bruno Haible  <bruno@clisp.org>
12060
12061         * lib/allocsa.h (sa_alignment_longlong, sa_alignment_max): Test
12062         HAVE_LONG_LONG_INT instead of HAVE_LONG_LONG.
12063         * m4/allocsa.m4 (gl_ALLOCSA): Invoke AC_TYPE_LONG_LONG_INT instead of
12064         gl_AC_TYPE_LONG_LONG.
12065
12066         * lib/printf-args.h (arg_type, argument): Test HAVE_LONG_LONG_INT
12067         instead of HAVE_LONG_LONG.
12068         * lib/printf-args.c (printf_fetchargs): Likewise.
12069         * lib/printf-parse.c (PRINTF_PARSE): Likewise.
12070         * lib/vasnprintf.c (VASNPRINTF): Likewise.
12071         * m4/vasnprintf.m4 (gl_PREREQ_PRINTF_ARGS, gl_PREREQ_PRINTF_PARSE,
12072         gl_PREREQ_VASNPRINTF): Invoke AC_TYPE_LONG_LONG_INT instead of
12073         gl_AC_TYPE_LONG_LONG.
12074
12075 2006-10-11  Bruno Haible  <bruno@clisp.org>
12076
12077         * m4/longlong.m4: Add comments.
12078         * m4/ulonglong.m4: Likewise.
12079
12080 2006-10-10  Bruno Haible  <bruno@clisp.org>
12081
12082         Make it possible to #define stpcpy, strdup to aliases.
12083         * lib/stpcpy.c (stpcpy) [!_LIBC]: Don't undefine.
12084         * lib/strdup.c (strdup) [!_LIBC]: Don't undefine.
12085
12086 2006-10-10  Bruno Haible  <bruno@clisp.org>
12087
12088         Make it possible to #define gcd to an alias.
12089         * lib/gcd.c: Include config.h.
12090
12091 2006-10-10  Bruno Haible  <bruno@clisp.org>
12092
12093         Make it possible to #define c_isascii to an alias.
12094         * lib/c-ctype.h: Don't define the macros if NO_C_CTYPE_MACROS is
12095         defined. Undefine the macros before defining them, to avoid gcc
12096         warnings.
12097         * lib/c-ctype.c: Include config.h. Don't undefine the macros; instead,
12098         define NO_C_CTYPE_MACROS early.
12099
12100 2006-10-10  Bruno Haible  <bruno@clisp.org>
12101
12102         Make it possible to #define set_program_name to an alias.
12103         * lib/progname.c: Don't undefine set_program_name; instead, undefine
12104         ENABLE_RELOCATABLE early.
12105
12106 2006-10-10  Paul Eggert  <eggert@cs.ucla.edu>
12107
12108         Port to Tandem NSK OSS, which has 64-bit signed int but at most
12109         32-bit unsigned int.  Problem reported by Matthew Woehlke in:
12110         http://lists.gnu.org/archive/html/bug-coreutils/2006-10/msg00062.html
12111         More generally, don't assume that 64-bit signed int is available
12112         if unsigned int is, and vice versa.
12113         * lib/inttypes_.h (_PRIu64_PREFIX, _SCNu64_PREFIX): Depend on
12114         unsigned symbols, not on their signed counterparts.
12115         * lib/stdint_.h (uint64_t, uint_least64_t, uint_fast64_t, uintmax_t):
12116         (UINT64_MAX, UINT_LEAST64_MAX, UINT_FAST64_MAX, UINTMAX_MAX):
12117         (UINT64_C, UINTMAX_C):
12118         Likewise.
12119         * lib/strtoimax.c (strtoll): Depend on signed symbols, not their
12120         unsigned counterparts.
12121         (Have_long_long, Unsigned): New macros.
12122         (Int): Renamed from INT.
12123         (strtoimax): Use the new macros.
12124         * m4/stdint.m4 (gl_STDINT_H): Require AC_TYPE_UNSIGNED_LONG_LONG_INT
12125         and substitute HAVE_UNSIGNED_LONG_LONG_INT.
12126         * modules/inttypes (inttypes.h): Substitute
12127         HAVE_UNSIGNED_LONG_LONG_INT.
12128         * modules/stdint (stdint.h): Likewise.
12129         (Files): Add m4/ulonglong.m4.
12130
12131 2006-10-10  Bruno Haible  <bruno@clisp.org>
12132
12133         Fix a gcc -Wshadow warning.
12134         * lib/gl_anyhash_list2.h (hash_resize): Rename local variable 'index'
12135         to 'bucket'.
12136         * lib/gl_anylinked_list2.h (gl_linked_search_from_to,
12137         gl_linked_indexof_from_to): Likewise.
12138         * lib/gl_linkedhash_list.c (add_to_bucket, remove_from_bucket):
12139         Likewise.
12140         * lib/gl_anytreehash_list1.h (add_to_bucket, remove_from_bucket):
12141         Likewise.
12142         * lib/gl_anytreehash_list2.h (gl_tree_search_from_to): Likewise.
12143         Reported by Eric Blake.
12144
12145 2006-10-09  Paul Eggert  <eggert@cs.ucla.edu>
12146
12147         * lib/filemode.h [HAVE_DECL_STRMODE]: Include unistd.h too,
12148         for NetBSD.  Problem reported by Bruno Haible.
12149
12150 2006-10-09  Jim Meyering  <jim@meyering.net>
12151
12152         * lib/lchown.c: Include <sys/stat.h> before "stat-macros.h".
12153         Patch from Bruno Haible.
12154
12155 2006-10-09  Jim Meyering  <jim@meyering.net>
12156
12157         * lib/fts-cycle.c (leave_dir): When "leaving" a top level directory due
12158         to FTS_SKIP, don't copy the parent's uninitialized dev/ino values.
12159         Trigger with e.g., mkdir d && valgrind ./chmod u+rwx d d
12160
12161 2006-10-08  Paul Eggert  <eggert@cs.ucla.edu>
12162
12163         Don't include <config.h> twice; this doesn't work in some cases,
12164         e.g., when config.h has "#define intmax_t long long int" and
12165         we include <config.h>, <inttypes.h>, <config.h> in that order.
12166         Problem reported by Matthew Woehlke in:
12167         http://lists.gnu.org/archive/html/bug-coreutils/2006-10/msg00073.html
12168         * lib/fprintftime.c: Don't include config.h or fprintftime.h.
12169         * lib/fts-cycle.c: Don't include config.h.
12170         * lib/strftime.c: Include fprintftime.h if FPRINTFTIME is defined.
12171         * lib/xstrtoimax.c: Remove copyright notice since it's short tnow.
12172         Don't include config.h or xstrtol.h.  Define STRTOL_T_MINIMUM
12173         and STRTOL_T_MAXIMUM unconditionally, since we now assume gnulib
12174         inttypes.h.
12175         * lib/xstrtoumax.c: Likewise.
12176         * lib/xstrtol.c: Include config.h and xstrtol.h after defining
12177         __strtol and the like, so that this module is more like its siblings.
12178         (STRTOL_T_MINIMUM, STRTOL_T_MAXIMUM) [! defined STRTOL_T_MINIMUM]:
12179         Remove; no longer needed now that we assume gnulib inttypes.h.
12180
12181 2006-10-08  Bruno Haible  <bruno@clisp.org>
12182
12183         * doc/gnulib-tool.texi: Emphasize the drawbacks of the --symlink
12184         option.
12185
12186 2006-10-07  Jim Meyering  <jim@meyering.net>
12187
12188         * modules/inttypes (inttypes.h): Revert what seems to have been
12189         an inadvertent part of today's change: use "|", not "/" in the
12190         substitution for the "/"-containing string, $(ABSOLUTE_INTTYPES_H).
12191
12192 2006-10-07  Bruno Haible  <bruno@clisp.org>
12193
12194         * modules/sublist: New file.
12195
12196 2006-10-07  Bruno Haible  <bruno@clisp.org>
12197
12198         * modules/alloca-opt (alloca.h): Add a "DO NOT EDIT" comment.
12199         * modules/argz (argz.h): Likewise.
12200         * modules/arpa_inet (arpa/inet.h): Likewise.
12201         * modules/byteswap (byteswap.h): Likewise.
12202         * modules/configmake (configmake.h): Likewise.
12203         * modules/fcntl (fcntl.h): Likewise.
12204         * modules/fnmatch (fnmatch.h): Likewise.
12205         * modules/getopt (getopt.h): Likewise.
12206         * modules/glob (glob.h): Likewise.
12207         * modules/inttypes (inttypes.h): Likewise.
12208         * modules/netinet_in (netinet/in.h): Likewise.
12209         * modules/poll (poll.h): Likewise.
12210         * modules/stdbool (stdbool.h): Likewise.
12211         * modules/stdint (stdint.h): Likewise.
12212         * modules/sys_select (sys/select.h): Likewise.
12213         * modules/sys_socket (sys/socket.h): Likewise.
12214         * modules/sys_stat (sys/stat.h): Likewise.
12215         * modules/sysexits (sysexits.h): Likewise.
12216         * modules/unistd (unistd.h): Likewise.
12217         * gnulib-tool (func_emit_lib_Makefile_am, func_emit_tests_Makefile_am):
12218         Add a "DO NOT EDIT" comment to the generated file.
12219         (func_import): Likewise for gnulib-comp.m4.
12220
12221 2006-10-07  Bruno Haible  <bruno@clisp.org>
12222
12223         * lib/gl_sublist.h: New file.
12224         * lib/gl_sublist.c: New file.
12225
12226 2006-10-06  Paul Eggert  <eggert@cs.ucla.edu>
12227
12228         * lib/mkancesdirs.c (mkancesdirs): Pass to MAKE_DIR both the full file
12229         name (relative to the original working directory) and the file
12230         name component (relative to the temporary working directory).  All
12231         callers changed.
12232         * lib/mkancesdirs.h (mkancesdirs): Adjust prototype to match.
12233         * lib/mkdir-p.c (make_dir_parents): Likewise.
12234         * lib/mkdir-p.h (make_dir_parents): Likewise.
12235
12236 2006-10-06  Eric Blake  <ebb9@byu.net>
12237
12238         Define several macros for use by the clean-temp module.
12239         * m4/close-stream.m4 (gl_CLOSE_STREAM): Define GNULIB_CLOSE_STREAM.
12240         * m4/fcntl-safer.m4 (gl_FCNTL_SAFER): Define GNULIB_FCNTL_SAFER.
12241         * m4/stdio-safer.m4 (gl_FOPEN_SAFER): Define GNULIB_FOPEN_SAFER.
12242
12243         * lib/clean-temp.h (close_stream_temp): New declaration.
12244         * lib/clean-temp.c (includes): Pull in headers according to what
12245         other modules are in use.
12246         (close_stream_temp) [GNULIB_CLOSE_STREAM]: New function.
12247
12248 2006-10-06  Bruno Haible  <bruno@clisp.org>
12249
12250         * lib/javacomp.c (write_temp_file): Use fopen_temp, fwriteerror_temp
12251         instead of fopen, fwriteerror.
12252
12253 2006-10-06  Bruno Haible  <bruno@clisp.org>
12254
12255         * lib/clean-temp.h (cleanup_temp_file, cleanup_temp_subdir,
12256         cleanup_temp_dir_contents, cleanup_temp_dir): Change return type to
12257         int.
12258         * lib/clean-temp.c (do_unlink, do_rmdir, cleanup_temp_file,
12259         cleanup_temp_subdir, cleanup_temp_dir_contents, cleanup_temp_dir):
12260         Return an error indicator.
12261         Suggested by Eric Blake.
12262
12263 2006-10-06  Bruno Haible  <bruno@clisp.org>
12264
12265         * lib/clean-temp.c (PATH_MAX): Provide a fallback for GNU Hurd.
12266         Reported by Eric Blake.
12267
12268 2006-10-06  Bruno Haible  <bruno@clisp.org>
12269
12270         * modules/closeout (Description): Mention stderr too.
12271
12272 2006-10-06  Bruno Haible  <bruno@clisp.org>
12273         and Paul Eggert  <eggert@cs.ucla.edu>
12274
12275         * lib/closeout.c (close_stdout): Also close stderr.
12276         * lib/closeout.h: Update comment.
12277
12278 2006-10-05  Paul Eggert  <eggert@cs.ucla.edu>
12279
12280         Fix some Darwin-7.9.0 porting problems reported by Bruno Haible in
12281         <http://lists.gnu.org/archive/html/bug-coreutils/2006-10/msg00063.html>.
12282         * lib/dirchownmod.c: Include lchown.h.
12283         * lib/lchown.c: Don't include files that lchown.h now includes.
12284         Don't declare chown, since lchown.h now does that.
12285         * lib/lchown.h: Include errno.h, sys/types.h, unistd.h.
12286         (lchown): Define to rpl_chown if lchown is declared but
12287         does not exist.  Declare using a prototype if lchown is not
12288         declared.  Add a copyright notice.
12289         * lib/mkstemp.h: Include <unistd.h>.
12290         * lib/openat.c: Include lchown.h.
12291
12292         * lib/fcntl_.h (O_NOFOLLOW): Don't depend on O_NOFOLLOW_IS_INEFFECTIVE;
12293         we now test for that separately.
12294         * lib/fts.c (fts_safe_changedir): Inspect HAVE_WORKING_O_NOFOLLOW
12295         rather than O_NOFOLLOW, when testing whether it's possible to
12296         avoid a race condition reliably.
12297         * lib/savewd.c (savewd_chdir): Likewise.
12298
12299         Remove macros that are no longer needed now that stdint.h is
12300         reliable.
12301         * lib/fsusage.c (UINTMAX_MAX): Remove.
12302         * lib/human.c (SIZE_MAX, UINTMAX_MAX): Remove.
12303         * lib/utimecmp.c (SIZE_MAX): Remove.
12304
12305         * m4/lchown.m4 (gl_FUNC_LCHOWN): Check whether lchown is declared.
12306
12307         * m4/fcntl_h.m4 (gl_FCNTL_H): Define HAVE_WORKING_O_NOFOLLOW instead
12308         of O_NOFOLLOW_IS_INEFFECTIVE.  Define HAVE_WORKING_O_NOATIME if
12309         O_NOATIME works.
12310
12311 2006-10-05  Bruno Haible  <bruno@clisp.org>
12312
12313         * lib/gl_list.h (gl_sortedlist_search_from_to,
12314         gl_sortedlist_indexof_from_to): New declarations.
12315         (gl_list_implementation): New fields sortedlist_search_from_to,
12316         sortedlist_indexof_from_to.
12317         (gl_sortedlist_search_from_to, gl_sortedlist_indexof_from_to): New
12318         inline functions.
12319         * lib/gl_list.c (gl_sortedlist_search_from_to,
12320         gl_sortedlist_indexof_from_to): New functions.
12321         * lib/gl_array_list.c (gl_array_sortedlist_indexof_from_to): New
12322         function.
12323         (gl_array_sortedlist_indexof, gl_array_sortedlist_search): Use it.
12324         (gl_array_sortedlist_search_from_to): New function.
12325         (gl_array_list_implementation): Update.
12326         * lib/gl_carray_list.c (gl_carray_sortedlist_indexof_from_to): New
12327         function.
12328         (gl_carray_sortedlist_indexof, gl_carray_sortedlist_search): Use it.
12329         (gl_carray_sortedlist_search_from_to): New function.
12330         (gl_carray_list_implementation): Update.
12331         * lib/gl_anylinked_list2.h (gl_linked_sortedlist_search_from_to,
12332         gl_linked_sortedlist_indexof_from_to): New functions.
12333         * lib/gl_linked_list.c (gl_linked_list_implementation): Update.
12334         * lib/gl_linkedhash_list.c (gl_linkedhash_list_implementation): Update.
12335         * lib/gl_anytree_list2.h (gl_tree_sortedlist_search_from_to,
12336         gl_tree_sortedlist_indexof_from_to): New functions.
12337         * lib/gl_avltree_list.c (gl_avltree_list_implementation): Update.
12338         * lib/gl_avltreehash_list.c (gl_avltreehash_list_implementation):
12339         Update.
12340         * lib/gl_rbtree_list.c (gl_rbtree_list_implementation): Update.
12341         * lib/gl_rbtreehash_list.c (gl_avltreehash_list_implementation):
12342         Update.
12343
12344 2006-10-05  Bruno Haible  <bruno@clisp.org>
12345
12346         * lib/gl_list.h (gl_list_search_from, gl_list_search_from_to,
12347         gl_list_indexof_from, gl_list_indexof_from_to): New declarations.
12348         (struct gl_list_implementation): Add fields search_from_to,
12349         indexof_from_to. Remove fields search, indexof.
12350         (gl_list_search): Use the search_from_to method.
12351         (gl_list_search_from, gl_list_search_from_to): New functions.
12352         (gl_list_indexof): Use the indexof_from_to method.
12353         (gl_list_indexof_from, gl_list_indexof_from_to): New functions.
12354         * lib/gl_list.c (gl_list_search): Use the search_from_to method.
12355         (gl_list_search_from, gl_list_search_from_to): New functions.
12356         (gl_list_indexof): Use the indexof_from_to method.
12357         (gl_list_indexof_from, gl_list_indexof_from_to): New functions.
12358         * lib/gl_array_list.c (gl_array_indexof_from_to): Renamed from
12359         gl_array_indexof. Add start_index, end_index arguments.
12360         (gl_array_search_from_to): Renamed from gl_array_search. Add
12361         start_index, end_index arguments.
12362         (gl_array_remove, gl_array_list_implementation): Update.
12363         * lib/gl_carray_list.c (gl_carray_indexof_from_to): Renamed from
12364         gl_carray_indexof. Add start_index, end_index arguments.
12365         (gl_carray_search_from_to): Renamed from gl_carray_search. Add
12366         start_index, end_index arguments.
12367         (gl_carray_remove, gl_carray_list_implementation): Update.
12368         * lib/gl_anylinked_list2.h (gl_linked_search_from_to): Renamed from
12369         gl_linked_search. Add start_index, end_index arguments.
12370         (gl_linked_indexof_from_to): Renamed from gl_linked_indexof. Add
12371         start_index, end_index arguments.
12372         (gl_linked_remove): Update.
12373         * lib/gl_linked_list.c (gl_linked_list_implementation): Update.
12374         * lib/gl_linkedhash_list.c (gl_linkedhash_list_implementation): Update.
12375         * lib/gl_anytree_list1.h (iterstack_item_t): Change type of 'rightp'
12376         field to 'size_t'.
12377         * lib/gl_anytree_list2.h (gl_tree_search_from_to): Renamed from
12378         gl_tree_search. Add start_index, end_index arguments.
12379         (gl_tree_indexof_from_to): Renamed from gl_tree_indexof. Add
12380         start_index, end_index arguments.
12381         (gl_tree_remove): Update.
12382         * lib/gl_avltree_list.c (gl_avltree_list_implementation): Update.
12383         * lib/gl_rbtree_list.c (gl_rbtree_list_implementation): Update.
12384         * lib/gl_anytreehash_list1.h (compare_position_threshold): New
12385         function.
12386         * lib/gl_anytreehash_list2.h (gl_tree_search_from_to): Renamed from
12387         gl_tree_search. Add start_index, end_index arguments.
12388         (gl_tree_indexof_from_to): Renamed from gl_tree_indexof. Add
12389         start_index, end_index arguments.
12390         * lib/gl_avltreehash_list.c (gl_avltreehash_list_implementation):
12391         Update.
12392         * lib/gl_rbtreehash_list.c (gl_rbtreehash_list_implementation): Update.
12393
12394 2006-10-05  Bruno Haible  <bruno@clisp.org>
12395
12396         * modules/fwriteerror (configure.ac): Define GNULIB_FWRITEERROR.
12397
12398         * lib/clean-temp.h (open_temp, fopen_temp, close_temp, fclose_temp,
12399         fwriteerror_temp): New declarations.
12400         * lib/clean-temp.c (uintptr_t): Provide fallback definition.
12401         (descriptors): New variable.
12402         (cleanup): First, close the descriptors.
12403         (register_fd, unregister_fd, open_temp, fopen_temp, close_temp,
12404         fclose_temp, fwriteerror_temp): New functions.
12405
12406 2006-10-04  Jim Meyering  <jim@meyering.net>
12407
12408         * lib/fts.c (fts_open): Tiny comment change.
12409
12410 2006-10-04  Bruno Haible  <bruno@clisp.org>
12411
12412         Make it possible to invoke AC_GNU_SOURCE after gl_LOCK_EARLY.
12413         * m4/lock.m4 (gl_LOCK_EARLY_BODY): New macro, extracted code from
12414         gl_LOCK_BODY.
12415         (gl_LOCK_EARLY): Require gl_LOCK_EARLY_BODY, not gl_LOCK_BODY.
12416         (gl_LOCK_BODY): Remove settings of CPPFLAGS, now done in
12417         gl_LOCK_EARLY_BODY.
12418         (gl_LOCK): Require gl_LOCK_BODY.
12419
12420 2006-10-04  Bruno Haible  <bruno@clisp.org>
12421
12422         * lib/gl_oset.h (gl_setelement_threshold_fn): New type.
12423         (gl_oset_search_atleast): New declaration.
12424         (struct gl_oset_implementation): Add field 'search_atleast'.
12425         (gl_oset_search_atleast): New inline function.
12426         * lib/gl_oset.c (gl_oset_search_atleast): New function.
12427         * lib/gl_array_oset.c (gl_array_search_atleast): New function.
12428         (gl_array_oset_implementation): Update.
12429         * lib/gl_anytree_oset.h (gl_tree_search_atleast): New function.
12430         * lib/gl_avltree_oset.c (gl_avltree_oset_implementation): Update.
12431         * lib/gl_rbtree_oset.c (gl_rbtree_oset_implementation): Update.
12432
12433 2006-10-04  Bruno Haible  <bruno@clisp.org>
12434
12435         * lib/fatal-signal.c (fatal_signals) [WOE32]: Add the SIGBREAK signal.
12436
12437 2006-10-03  Bruno Haible  <bruno@clisp.org>
12438
12439         * lib/gl_rbtreehash_list.c (gl_rbtreehash_list_implementation): Renamed
12440         from gl_avltreehash_list_implementation.
12441
12442 2006-10-03  Bruno Haible  <bruno@clisp.org>
12443
12444         * lib/gl_oset.c (gl_oset_add): Fix return type.
12445
12446 2006-10-02  Paolo Bonzini  <bonzini@gnu.org>  (tiny change)
12447
12448         * lib/quotearg.c (mbstate_t) [!HAVE_MBRTOWC]: #define to int.
12449
12450 2006-10-02  Eric Blake  <ebb9@byu.net>
12451
12452         * modules/strnlen (Depends-on): Add extensions.
12453
12454 2006-10-02  Eric Blake  <ebb9@byu.net>
12455
12456         * m4/extensions.m4 (gl_USE_SYSTEM_EXTENSIONS): Use autoconf's
12457         definition in 2.60+.
12458
12459 2006-10-02  Dmitry V. Levin  <ldv@altlinux.org>
12460
12461         * lib/fts.c (fts_close, fts_build, fts_palloc): Remove redundant
12462         checks.
12463
12464 2006-10-02  Bruno Haible  <bruno@clisp.org>
12465
12466         * gnulib-tool (func_emit_lib_Makefile_am): Don't add no-dependencies
12467         to the AUTOMAKE_OPTIONS.
12468         Reported by Jim Meyering.
12469
12470 2006-09-29  Paul Eggert  <eggert@cs.ucla.edu>
12471
12472         Work around bug in Solaris 10 /proc file system:
12473         /proc/self/fd/NNN/.. isn't the parent directory of
12474         the directory whose file descriptor is NNN.  This needs to
12475         be worked around at run time, not compile time, since a
12476         program might be built on Solaris 8, where things work, and
12477         run on Solaris 10.
12478         * lib/openat-priv.h (BUILD_PROC_NAME): Remove.  All callers changed
12479         to use the following interface instead:
12480         (OPENAT_BUFFER_SIZE): New macro.
12481         (openat_proc_name): New function.
12482         * lib/at-func.c (AT_FUNC_NAME): Adjust to above changes.
12483         * lib/openat.c (openat_permissive, openat_needs_fchdir, fdopendir):
12484         Likewise.
12485         * lib/openat-proc.c: New file.
12486         * modules/openat (Files): Add lib/openat-proc.c.
12487         (Depends-on): Add same-inode, stdbool.
12488         * m4/openat.m4 (gl_FUNC_OPENAT): Add AC_LIBOBJ(openat-proc).
12489
12490 2006-09-29  Bruno Haible  <bruno@clisp.org>
12491
12492         * lib/fwriteerror.h (fwriteerror_no_ebadf): New declaration.
12493         * lib/(do_fwriteerror): Renamed from fwriteerror. Add ignore_ebadf
12494         argument. Set stdout_closed before testing for ferror, not after.
12495         (fwriteerror, fwriteerror_no_ebadf): New functions.
12496
12497 2006-09-28  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
12498
12499         * m4/intmax.m4 (gt_TYPE_INTMAX_T): Avoid unused variables warning.
12500
12501 2006-09-28  Paolo Bonzini  <bonzini@gnu.org>
12502
12503         * lib/poll.c (rpl_poll) [__APPLE__]: Use FIONREAD instead of MSG_PEEK.
12504         * m4/poll.m4: Look for sys/ioctl.h and sys/filio.h.
12505
12506 2006-09-28  Jim Meyering  <jim@meyering.net>
12507
12508         * lib/mkdir-p.c: Include "dirchownmod.h", not "dirchownmod.c".
12509         Include <unistd.h>.
12510
12511 2006-09-28  Bruno Haible  <bruno@clisp.org>
12512
12513         * modules/avltreehash-list (Depends-on): Add stdint, remove size_max.
12514         * modules/linkedhash-list (Depends-on): Likewise.
12515         * modules/rbtreehash-list (Depends-on): Likewise.
12516
12517 2006-09-28  Bruno Haible  <bruno@clisp.org>
12518
12519         * lib/strndup.h: Simplify the redefinition of strndup.
12520         (_GL_CONCAT, _GL_XCONCAT, __STRNDUP_ID): Remove macros.
12521         * m4/strndup.m4 (gl_FUNC_STRNDUP): Don't define __STRNDUP_PREFIX.
12522
12523 2006-09-28  Bruno Haible  <bruno@clisp.org>
12524
12525         * lib/gl_avltreehash_list.c: Include <stdint.h> instead of size_max.h.
12526         * lib/gl_linkedhash_list.c: Likewise.
12527         * lib/gl_rbtreehash_list.c: Likewise.
12528
12529 2006-09-27  Paul Eggert  <eggert@cs.ucla.edu>
12530
12531         * lib/canon-host.c (canon_host_r): Work around bug in Darwin 7.9.0
12532         getaddrinfo.
12533
12534         * lib/__fpending.h: Don't include <stdio_ext.h> unless
12535         HAVE_DECL___FPENDING.  This avoids a bug with lsbcc, where
12536         it causes <stdio_ext.h> to cause a compile-time error.
12537         Problem reported by Nelson H. F. Beebe.
12538         * lib/getpass.c: Likewise, except for HAVE_DECL___FSETLOCKING instead
12539         of HAVE_DECL___PENDING.
12540
12541         * m4/fpending.m4 (gl_FUNC_FPENDING): Check for stdio_ext at most once.
12542         * m4/getpass.m4 (gl_PREREQ_GETPASS): Check for __fsetlocking's
12543         declaration.
12544
12545 2006-09-27  Jim Meyering  <jim@meyering.net>
12546
12547         This file could end up with a definition for a function
12548         named __strndup, rather than rpl_strndup on a system with
12549         incomplete weak_alias support.
12550         * lib/strndup.c (strndup): Rename from __strndup.
12551         Remove #defines that used to map __strndup to strndup.
12552         Don't use K&R prototypes.
12553         Remove LIBC-related code, since this file is not sync'd with glibc.
12554         * lib/strndup.h: Revamp, accordingly.
12555         * m4/strndup.m4: Modernize.
12556
12557 2006-09-26  Paul Eggert  <eggert@cs.ucla.edu>
12558
12559         * modules/savewd (Depends-on): Add 'raise'.
12560         * lib/savewd.c: Include <signal.h>, for 'raise'.
12561
12562 2006-09-26  Jim Meyering  <jim@meyering.net>
12563
12564         * m4/acl.m4 (AC_FUNC_ACL): Disable ACL support altogether
12565         when we detect Darwin 8.7.0's acl_get_file bug.
12566         Rearrange to perform the new (below) run-test while $LIBS
12567         contains any acl-related library.  Set USE_ACL at the end.
12568         (gl_ACL_GET_FILE): New function.
12569
12570 2006-09-26  Eric Blake  <ebb9@byu.net>
12571
12572         * lib/verror.c: Include <config.h> unconditionally.
12573
12574 2006-09-25  Paul Eggert  <eggert@cs.ucla.edu>
12575
12576         * modules/clock-time (Maintainer): Add self.
12577         * modules/getlogin_r (Depends-on): Add extensions.
12578
12579 2006-09-25  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
12580
12581         * modules/clock-time: New module.
12582         * modules/nanosleep (Depends-on): Add clock-time.
12583         * modules/gethrxtime (Depends-on): Likewise.
12584         * modules/gettime (Depends-on): Likewise.
12585         * modules/settime (Depends-on): Likewise.
12586
12587         * modules/fts-lgpl: Depend on openat.
12588         * modules/mkancesdirs: Depend on savewd.
12589         * modules/mkdir-p: Likewise.
12590
12591 2006-09-25  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
12592
12593         * m4/host-os.m4 (gl_HOST_OS): Require AC_CANONICAL_HOST.
12594
12595         * m4/chdir-long.m4 (gl_FUNC_CHDIR_LONG): Rename cache variable from
12596         `gl_have_arbitrary_file_name_length_limit' to
12597         `gl_cv_have_arbitrary_file_name_length_limit', so that caching
12598         actually works between configure runs.
12599
12600 2006-09-25  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
12601             Bruno Haible  <bruno@clisp.org>
12602
12603         * m4/stpncpy.m4 (gl_FUNC_STPNCPY): Include <string.h>.
12604
12605 2006-09-25  Jim Meyering  <jim@meyering.net>
12606
12607         * m4/fcntl_h.m4 (gl_FCNTL_H): Fix typo in test for failed open.
12608         This typo caused coreutils/tests/dd/misc to fail on Darwin 8.7.0.
12609
12610 2006-09-25  Eric Blake  <ebb9@byu.net>
12611
12612         * gnulib-tool (func_import, func_create_testdir): Fix typos in
12613         exec's in 2006-09-18 patch when shuffling fds.
12614
12615 2006-09-25  Bruno Haible  <bruno@clisp.org>
12616
12617         * m4/getloadavg.m4 (gl_GETLOADAVG): Fix directory in error message.
12618         Reported by Jim Meyering.
12619
12620 2006-09-24  Jim Meyering  <jim@meyering.net>
12621
12622         * m4/ls-mntd-fs.m4 (gl_LIST_MOUNTED_FILE_SYSTEMS): Don't use '>' to
12623         compare a pointer against a literal "0".  That caused failures with
12624         at least HP-UX's hpcc.
12625
12626 2006-09-22  Simon Josefsson  <jas@extundo.com>
12627
12628         * modules/gc-sha1:
12629         * modules/gc-md4:
12630         * modules/gc-hmac-sha1:
12631         * modules/gc-hmac-md5:
12632         * modules/gc-des:
12633         * modules/gc-arcfour: Distribute more files.
12634
12635 2006-09-22  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
12636
12637         * lib/gl_anylinked_list2.h [lint] (gl_linked_iterator)
12638         (gl_linked_iterator_from_to): Initialize struct completely.
12639         * lib/gl_anytree_list2.h [lint] (gl_tree_iterator): Likewise.
12640         (gl_tree_iterator_from_to): Likewise
12641         * lib/gl_anytree_oset.h [lint] (gl_tree_iterator): Likewise.
12642         * lib/gl_array_list.c [lint] (gl_array_iterator)
12643         (gl_array_iterator_from_to): Likewise.
12644         * lib/gl_array_oset.c [lint] (gl_array_iterator): Likewise.
12645         * lib/gl_carray_list.c [lint] (gl_carray_iterator)
12646         (gl_carray_iterator_from_to): Likewise.
12647
12648         * lib/gc-gnulib.c [GC_USE_HMAC_SHA1]: include hmac.h for hmac_sha1.
12649         * lib/md4.c (md4_process_block): Remove unused variable.
12650         * lib/rijndael-api-fst.c (rijndaelBlockDecrypt): GCC suggests
12651         parentheses for clarity.
12652
12653 2006-09-22  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
12654
12655         * modules/bison-i18n (Depends-on): Add gettext.
12656
12657 2006-09-22  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
12658
12659         * m4/fsusage.m4 (gl_STATFS_TRUNCATES): Avoid unused variable.
12660         * m4/getdate.m4 (gl_C_COMPOUND_LITERALS): Likewise.
12661         * m4/jm-winsz1.m4 (gl_HEADER_TIOCGWINSZ_IN_TERMIOS_H): Likewise;
12662         also add missing comma that caused broken test.
12663         * m4/link-follow.m4 (gl_AC_FUNC_LINK_FOLLOWS_SYMLINK): Include
12664         stdlib.h, for `abort'.
12665         * m4/ls-mntd-fs.m4 (gl_LIST_MOUNTED_FILE_SYSTEMS): Avoid unused
12666         variables.
12667         * m4/mkdir-slash.m4 (gl_FUNC_MKDIR_TRAILING_SLASH): Check for and
12668         include unistd.h if present, for `rmdir'.
12669         * m4/physmem.m4 (gl_SYS__SYSTEM_CONFIGURATION): Avoid unused
12670         variables.
12671         * m4/putenv.m4 (gl_FUNC_PUTENV): Rewrite using AC_RUN_IFELSE, and
12672         in the process include standard headers for prototypes.
12673         * m4/readutmp.m4 (gl_READUTMP): Require AC_GNU_SOURCE, so utmpxname
12674         gets declared on GNU/Linux.
12675         * m4/rmdir-errno.m4 (gl_FUNC_RMDIR_NOTEMPTY): Check for and include
12676         unistd.h, for `rmdir'.
12677         * m4/time_r.m4 (gl_TIME_R): Avoid unused variables.
12678
12679         * m4/fnmatch.m4 (_AC_FUNC_FNMATCH_IF): Avoid expression that is
12680         always true.
12681         * m4/strndup.m4 (gl_FUNC_STRNDUP): include stdlib.h, for `free'.
12682
12683         * m4/sockpfaf.m4 (gl_SOCKET_FAMILIES): Avoid gcc -Wall warnings.
12684
12685 2006-09-22  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
12686
12687         * gnulib-tool (func_version): Create output all at once.  This
12688         may help avoid triggering unnecessary SIGPIPEs, and at any
12689         rate it doesn't hurt.
12690
12691 2006-09-22  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
12692             Bruno Haible  <bruno@clisp.org>
12693
12694         * m4/lock.m4 (gl_LOCK_BODY): Avoid unused variables warning.
12695         * m4/mbswidth.m4 (gl_MBSWIDTH): Likewise.
12696         * m4/signed.m4 (bh_C_SIGNED): Likewise.
12697
12698         * m4/vasprintf.m4 (gl_PREREQ_VASPRINTF_H): New macro.
12699         (gl_FUNC_VASPRINTF): Invoke it.
12700
12701 2006-09-22  Bruno Haible  <bruno@clisp.org>
12702
12703         * m4/getloadavg.m4 (gl_GETLOADAVG): Expect the directory of
12704         getloadavg.c as first argument.
12705
12706 2006-09-22  Bruno Haible  <bruno@clisp.org>
12707
12708         * gnulib-tool (func_import, func_create_testdir): Set gl_source_base
12709         at the beginning of the gl_INIT macro.
12710         * modules/getloadavg (configure.ac): Pass $gl_source_base to
12711         gl_GETLOADAVG.
12712
12713 2006-09-22  Bruno Haible  <bruno@clisp.org>
12714
12715         * gnulib-tool (func_create_megatestdir): Don't include the config-h
12716         module.
12717         Suggested by Ralf Wildenhues.
12718
12719 2006-09-20  Paul Eggert  <eggert@cs.ucla.edu>
12720
12721         Import this patch from libc:
12722
12723         2006-09-06  Jakub Jelinek  <jakub@redhat.com>
12724
12725         * lib/regex_internal.c (re_string_reconstruct): Handle
12726         offset < pstr->valid_raw_len && pstr->offsets_needed case.
12727         Ensure no bytes read before raw_mbs array.  Pass a saved copy of
12728         pstr->valid_len - 1 rather than pstr->valid_raw_len - 1 to
12729         re_string_context_at.
12730
12731         * m4/regex.m4 (gl_REGEX): Check for locale.h, since the test
12732         now requires it.
12733         (gl_PREREQ_REGEX): Don't check for locale.h any more, since
12734         gl_REGEX now does it for us.
12735         (gl_REGEX): Add test taken from
12736         http://sourceware.org/ml/libc-hacker/2006-09/msg00008.html.
12737
12738         * m4/mkstemp.m4 (gl_FUNC_MKSTEMP): Require AC_SYS_LARGEFILE.
12739         Check that large offsets work.  Modernize Autoconf usages.
12740         Prefer "yes" to mean a good thing rather than a bad.
12741         Don't put "#define mkstemp" in config.h, as this might interfere
12742         with standard system headers that "#define mkstemp mkstemp64".
12743
12744         * modules/mkstemp (Depends-on): Add extensions, so that
12745         mkstemp is visible on some platforms.
12746         (Makefile.am): Add mkstemp.h to EXTRA_DIST.
12747         (Include): Change to "mkstemp.h" from <stdlib.h>.
12748         (Files): Add mkstemp.h.
12749
12750         * lib/mkstemp.h: New file, since some standard headers
12751         #define mkstemp.
12752         * lib/mkstemp.c: Revamp to put the !_LIBC code together.
12753         Include "mkstemp.h".
12754         Make the _LIBC code resemble glibc original more,
12755         e.g., use K&R style.
12756         * lib/mkstemp-safer.c: Include "mkstemp.h" instead of <stdlib.h>.
12757         (mkstemp): Remove, since mkstemp.h does this for us.
12758         * lib/stdlib--.h: Include mkstemp.h.
12759
12760         Import this patch from libc:
12761
12762         2006-04-07  Ulrich Drepper  <drepper@redhat.com>
12763
12764         * lib/tempname.c (__gen_tempname): Change attempts_min
12765         into a macro.  Use preprocessor to decide how to initialize
12766         attempts [Coverity CID 67].
12767
12768 2006-09-20  Bruno Haible  <bruno@clisp.org>
12769
12770         * lib/mkdtemp.c: Import from libc.
12771         2006-04-07  Ulrich Drepper  <drepper@redhat.com>
12772                 * sysdeps/posix/tempname.c (__gen_tempname): Change
12773                 attempts_min into a macro.  Use preprocessor to decide how to
12774                 initialize attempts [Coverity CID 67].
12775         2001-11-27  Paul Eggert  <eggert@twinsun.com>
12776                 * sysdeps/posix/tempname.c (__gen_tempname): Try at least
12777                 ATTEMPTS_MIN or TMP_MAX times, whichever is greater.
12778
12779 2006-09-19  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
12780
12781         * gnulib-tool (func_exit): New function, to allow to pass the
12782         exit status portably through the trap.  Use everywhere.
12783         (--help, --version): Signal a write error.
12784         (trap): catch SIGPIPE, for write errors.
12785         Exit at the end of the trap, with the correct exit status.
12786
12787 2006-09-19  Karl Berry  <karl@gnu.org>
12788
12789         * doc/gnulib.texi: note about the license texinfo files.
12790
12791 2006-09-19  Eric Blake  <ebb9@byu.net>
12792
12793         * gnulib-tool: Avoid space-tab.
12794
12795 2006-09-18  Paul Eggert  <eggert@cs.ucla.edu>
12796
12797         * lib/getaddrinfo.c (getaddrinfo) [defined HAVE_IPV6]: Fix typo
12798         that prevented coreutils 6.1 from building.  Problem reported
12799         by Petter Reinholdtsen.
12800
12801 2006-09-18  Paul Eggert  <eggert@cs.ucla.edu>
12802
12803         * gnulib-tool (avoidlist): Fix typo that broke options like
12804         --avoid=lock that are used by coreutils bootstrap.
12805
12806 2006-09-18  Mark D. Baushke  <mdb@gnu.org>
12807
12808         * m4/inttypes.m4 (gl_INTTYPES_H): Quote "test" args
12809         more systematically.
12810
12811 2006-09-18  Jim Meyering  <jim@meyering.net>
12812
12813         * lib/savewd.c (savewd_restore): Don't shadow: s/status/child_status/.
12814
12815 2006-09-18  Bruno Haible  <bruno@clisp.org>
12816
12817         * modules/inttypes (Files): Remove m4/inttypes-h.m4.
12818
12819 2006-09-18  Bruno Haible  <bruno@clisp.org>
12820
12821         * m4/inttypes-h.m4 (gl_HEADER_INTTYPES_H): Remove macro.
12822         * m4/inttypes-pri.m4: Require autoconf >= 2.52.
12823         (gt_INTTYPES_PRI): Invoke AC_CHECK_HEADERS on inttypes.h. Test
12824         ac_cv_header_inttypes_h instead of gl_cv_header_inttypes_h.
12825         * m4/gettext.m4: Require autoconf >= 2.52.
12826         (gt_INTL_SUBDIR_CORE): Invoke AC_CHECK_HEADERS on inttypes.h.
12827         * m4/inttypes.m4 (gl_INTTYPES_H): Test ac_cv_header_inttypes_h instead
12828         of gl_cv_header_inttypes_h.
12829
12830 2006-09-18  Bruno Haible  <bruno@clisp.org>
12831
12832         * lib/javaversion.c: Include configmake.h.
12833
12834 2006-09-18  Bruno Haible  <bruno@clisp.org>
12835
12836         * gnulib-tool (func_import, func_create_testdir): Use exec tricks to
12837         avoid that the while loops be executed in a subshell.
12838
12839 2006-09-18  Bruno Haible  <bruno@clisp.org>
12840
12841         * MODULES.html.sh (func_module): Break long lines.
12842         Suggested by Bruce Korb <bkorb@gnu.org>.
12843
12844 2006-09-17  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
12845
12846         Speed up by a factor of 1.12.
12847         * gnulib-tool (nl): New variable.
12848         (func_import): Rewrite include directive extraction to only read each
12849         directive once.
12850
12851 2006-09-17  Bruno Haible  <bruno@clisp.org>
12852
12853         * modules/javaversion (Makefile.am): Remove DEFS setting.
12854         (Depends-on): Add configmake, for PKGDATADIR definition.
12855
12856 2006-09-17  Bruno Haible  <bruno@clisp.org>
12857
12858         * gnulib-tool (func_create_testdir): Rewrite all files at once.
12859
12860 2006-09-17  Bruno Haible  <bruno@clisp.org>
12861
12862         * gnulib-tool (func_append): New function, stolen from libtool.m4.
12863         (func_modules_transitive_closure, func_modules_add_dummy,
12864         func_modules_to_filelist, func_import, func_create_testdir,
12865         func_create_megatestdir, ...): Use it wherever possible.
12866         Suggested by Ralf Wildenhues.
12867
12868 2006-09-16  Karl Berry  <karl@gnu.org>
12869
12870         * doc/fdl.texi (ADDENDUM): switch to @heading from @appendixsubsec,
12871         to avoid sectioning errors.
12872         * doc/lgpl.texi, gpl.texi (Copying): downcase @unnumbered title.
12873         [ifinfo]: blank line after @center-ed titles.
12874         * doc/lgpl.texi (Library Copying): Rename main node to GNU LGPL.
12875         Spell FSF address consistently with others.
12876         (These changes approved by rms.)
12877
12878 2006-09-15  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
12879
12880         Speed up by a factor of 1.61.
12881         * gnulib-tool (func_modules_transitive_closure): Rewrite to not check
12882         already checked module names again.
12883
12884 2006-09-15  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
12885
12886         Speed up by a factor of 1.13.
12887         * gnulib-tool (func_import): Rewrite all old_files at once; likewise
12888         for new_files, and the input to func_add_or_update.
12889
12890 2006-09-15  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
12891
12892         * gnulib-tool (func_all_modules, func_modules_to_filelist, func_import,
12893         func_create_testdir, ...): Change 'sort | uniq' to 'sort -u'.
12894
12895 2006-09-15  Paul Eggert  <eggert@cs.ucla.edu>
12896
12897         * modules/mkancesdirs (Depends-on): Add fcntl.
12898         * modules/savewd: New file.
12899         * MODULES.html.sh (File system functions): Add savewd.
12900
12901         * modules/configmake (Makefile.am): Add support for the
12902         Automake-supplied PKGLIBDIR, PKGINCLUDEDIR, PKGDATADIR.
12903
12904 2006-09-15  Paul Eggert  <eggert@cs.ucla.edu>
12905
12906         * m4/savewd.m4: New file.
12907
12908 2006-09-15  Paul Eggert  <eggert@cs.ucla.edu>
12909
12910         * lib/dirchownmod.c: Don't include fcntl.h; no longer needed.
12911         (dirchownmod): New arg FD.  All callers changed.
12912         Use FD rather than opening the directory ourself, as opening is
12913         now the caller's responsibility.
12914         * lib/dirchownmod.h: Likewise.
12915         * lib/mkancesdirs.c: Include <sys/types.h>, for portability to older
12916         hosts that require <sys/types.h> before <sys/stat.h>.  Include
12917         fcntl.h, savewd.h, and unistd.h, not dirname.h and stat-macros.h.
12918         (test_dir): Remove.
12919         (mkancesdirs): Return length of prefix of FILE that has already
12920         been made, or -2 if there is a child doing the work.  Redo
12921         algorithm so that it is O(N) rather than O(N**2).  Optimize away
12922         ".", and treat ".." specially since it might stray back into
12923         already-created areas.  Use a subprocess if necessary.  New arg
12924         WD; all users changed.  MAKE_DIR function should now return 1
12925         if it creates a directory that is not readable.  Return -2 if
12926         a child process is spun off.
12927         * lib/mkancesdirs.h: Include <stddef.h>, for ptrdiff_t.
12928         Adjust signature to match code.
12929         * lib/mkdir-p.c: Include dirname.h, for IS_ABSOLUTE_FILE_NAME.
12930         (make_dir_parents): Use a subprocess if necessary.  New arg WD;
12931         all users changed.
12932         * lib/savewd.c, lib/savewd.h: New files.
12933
12934 2006-09-15  Jim Meyering  <jim@meyering.net>
12935
12936         * modules/rename-dest-slash: New module.
12937         * MODULES.html.sh (posix_compat): Add it here.
12938
12939         * modules/rename: Reflect vb_FUNC_RENAME -> gl_FUNC_RENAME change.
12940
12941 2006-09-15  Jim Meyering  <jim@meyering.net>
12942
12943         * m4/rename-dest-slash.m4 (gl_FUNC_RENAME_TRAILING_DEST_SLASH): New
12944         file.
12945
12946         * m4/rename.m4 (gl_FUNC_RENAME): Rename from vb_FUNC_RENAME.
12947
12948 2006-09-15  Jim Meyering  <jim@meyering.net>
12949
12950         * lib/rename-dest-slash.c (has_trailing_slash): Use
12951         FILE_SYSTEM_PREFIX_LEN, for non-POSIX systems.
12952         (rpl_rename_dest_slash): Perform the cheaper trailing slash
12953         test before testing whether SRC is a directory.
12954         Suggestions from Bruno Haible.
12955
12956         Avoid a warning about an unused variable.
12957         * lib/regex_internal.c (re_dfa_add_node): Move declaration of "type"
12958         into the #ifdef block where it's used.
12959
12960         * lib/rename-dest-slash.c: New file.
12961
12962 2006-09-14  Bruno Haible  <bruno@clisp.org>
12963
12964         * lib/allocsa.c: Include <config.h> unconditionally.
12965         * lib/asnprintf.c: Likewise.
12966         * lib/asprintf.c: Likewise.
12967         * lib/c-strcasecmp.c: Likewise.
12968         * lib/c-strcasestr.c: Likewise.
12969         * lib/c-strncasecmp.c: Likewise.
12970         * lib/c-strstr.c: Likewise.
12971         * lib/classpath.c: Likewise.
12972         * lib/clean-temp.c: Likewise.
12973         * lib/concatpath.c: Likewise.
12974         * lib/copy-file.c: Likewise.
12975         * lib/csharpcomp.c: Likewise.
12976         * lib/csharpexec.c: Likewise.
12977         * lib/execute.c: Likewise.
12978         * lib/fatal-signal.c: Likewise.
12979         * lib/findprog.c: Likewise.
12980         * lib/fwriteerror.c: Likewise.
12981         * lib/gl_array_list.c: Likewise.
12982         * lib/gl_array_oset.c: Likewise.
12983         * lib/gl_avltree_list.c: Likewise.
12984         * lib/gl_avltree_oset.c: Likewise.
12985         * lib/gl_avltreehash_list.c: Likewise.
12986         * lib/gl_carray_list.c: Likewise.
12987         * lib/gl_linked_list.c: Likewise.
12988         * lib/gl_linkedhash_list.c: Likewise.
12989         * lib/gl_list.c: Likewise.
12990         * lib/gl_oset.c: Likewise.
12991         * lib/gl_rbtree_list.c: Likewise.
12992         * lib/gl_rbtree_oset.c: Likewise.
12993         * lib/gl_rbtreehash_list.c: Likewise.
12994         * lib/imaxabs.c: Likewise.
12995         * lib/imaxdiv.c: Likewise.
12996         * lib/javacomp.c: Likewise.
12997         * lib/javaexec.c: Likewise.
12998         * lib/javaversion.c: Likewise.
12999         * lib/linebreak.c: Likewise.
13000         * lib/localcharset.c: Likewise.
13001         * lib/lock.c: Likewise.
13002         * lib/mbchar.c: Likewise.
13003         * lib/mbswidth.c: Likewise.
13004         * lib/mkdtemp.c: Likewise.
13005         * lib/pipe.c: Likewise.
13006         * lib/printf-args.c: Likewise.
13007         * lib/printf-parse.c: Likewise.
13008         * lib/progname.c: Likewise.
13009         * lib/progreloc.c: Likewise.
13010         * lib/readlink.c: Likewise.
13011         * lib/sh-quote.c: Likewise.
13012         * lib/stpcpy.c: Likewise.
13013         * lib/stpncpy.c: Likewise.
13014         * lib/strcasecmp.c: Likewise.
13015         * lib/strcasestr.c: Likewise.
13016         * lib/strcspn.c: Likewise.
13017         * lib/striconv.c: Likewise.
13018         * lib/strncasecmp.c: Likewise.
13019         * lib/strnlen1.c: Likewise.
13020         * lib/strstr.c: Likewise.
13021         * lib/strtok_r.c: Likewise.
13022         * lib/tls.c: Likewise.
13023         * lib/tmpdir.c: Likewise.
13024         * lib/unicodeio.c: Likewise.
13025         * lib/unsetenv.c: Likewise.
13026         * lib/vasnprintf.c: Likewise.
13027         * lib/vasprintf.c: Likewise.
13028         * lib/wait-process.c: Likewise.
13029         * lib/xallocsa.c: Likewise.
13030         * lib/xsetenv.c: Likewise.
13031         * lib/xstriconv.c: Likewise.
13032
13033 2006-09-13  Simon Josefsson  <jas@extundo.com>
13034
13035         * m4/getdate.m4: Don't AC_LIBOBJ([getdate]), automake takes care of
13036         that internally, suggested by Ralf Wildenhues
13037         <Ralf.Wildenhues@gmx.de>.
13038
13039 2006-09-13  Simon Josefsson  <jas@extundo.com>
13040
13041         * gnulib-tool (func_emit_lib_Makefile_am): Use $(LIBOBJS), not
13042         @LIBOBJS@.
13043         Suggested by Ralf Wildenhues <Ralf.Wildenhues@gmx.de>.
13044
13045 2006-09-13  Paul Eggert  <eggert@cs.ucla.edu>
13046
13047         * lib/_fpending.c: Include <config.h> unconditionally, since we no
13048         longer worry about uses that don't define HAVE_CONFIG_H.
13049         * lib/acl.c, lib/alloca.c, lib/argmatch.c, lib/atexit.c:
13050         * lib/backupfile.c, lib/basename.c, lib/c-stack.c, lib/c-strtod.c:
13051         * lib/calloc.c,lib/ canon-host.c, lib/canonicalize.c, lib/chdir-long.c:
13052         * lib/chdir-safer.c, lib/chown.c, lib/cloexec.c, lib/close-stream.c:
13053         * lib/closeout.c, lib/creat-safer.c, lib/cycle-check.c, lib/diacrit.c:
13054         * lib/dirchownmod.c, lib/dirfd.c, lib/dirname.c, lib/dup-safer.c:
13055         * lib/dup2.c, lib/error.c, lib/euidaccess.c, lib/exclude.c:
13056         * lib/exitfail.c, lib/fchmodat.c, lib/fchown-stub.c, lib/fd-safer.c:
13057         * lib/file-type.c, lib/fileblocks.c, lib/filemode.c, lib/filenamecat.c:
13058         * lib/fnmatch.c, lib/fopen-safer.c, lib/fprintftime.c, lib/free.c:
13059         * lib/fsusage.c, lib/ftruncate.c, lib/fts-cycle.c, lib/fts.c:
13060         * lib/full-write.c, lib/gai_strerror.c, lib/getcwd.c, lib/getdate.y:
13061         * lib/getdomainname.c, lib/getgroups.c, lib/gethostname.c:
13062         * lib/gethrxtime.c, lib/getloadavg.c, lib/getlogin_r.c:
13063         * lib/getndelim2.c, lib/getnline.c, lib/getopt.c, lib/getopt1.c:
13064         * lib/getpass.c, lib/gettime.c, lib/gettimeofday.c, lib/getugroups.c:
13065         * lib/getusershell.c, lib/glob.c, lib/group-member.c:
13066         * lib/hard-locale.c, lib/hash-pjw.c, lib/hash.c, lib/human.c:
13067         * lib/idcache.c, lib/inet_ntop.c, lib/inet_pton.c, lib/inttostr.c:
13068         * lib/isdir.c, lib/lchown.c, lib/linebuffer.c, lib/long-options.c:
13069         * lib/lstat.c, lib/malloc.c, lib/md5.c, lib/memcasecmp.c, lib/memchr.c:
13070         * lib/memcmp.c, lib/memcoll.c, lib/memcpy.c, lib/memmove.c:
13071         * lib/memrchr.c, lib/mkancesdirs.c, lib/mkdir-p.c, lib/mkdir.c:
13072         * lib/mkdirat.c, lib/mkstemp-safer.c, lib/mkstemp.c, lib/modechange.c:
13073         * lib/mountlist.c, lib/nanosleep.c, lib/obstack.c, lib/open-safer.c:
13074         * lib/openat-die.c, lib/openat.c, lib/pagealign_alloc.c, lib/physmem.c:
13075         * lib/pipe-safer.c, lib/posixtm.c, lib/posixver.c, lib/putenv.c:
13076         * lib/quote.c, lib/quotearg.c, lib/raise.c, lib/readtokens.c:
13077         * lib/readtokens0.c, lib/readutmp.c, lib/realloc.c, lib/regex.c:
13078         * lib/rename.c, lib/rmdir.c, lib/rpmatch.c, lib/safe-read.c:
13079         * lib/same.c, lib/save-cwd.c, lib/savedir.c, lib/setenv.c:
13080         * lib/settime.c, lib/sha1.c, lib/sig2str.c, lib/snprintf.c:
13081         * lib/strdup.c, lib/strerror.c, lib/strftime.c, lib/stripslash.c:
13082         * lib/strndup.c, lib/strnlen.c, lib/strpbrk.c, lib/strtod.c:
13083         * lib/strtoimax.c, lib/strtol.c, lib/strverscmp.c, lib/tempname.c:
13084         * lib/time_r.c, lib/timegm.c, lib/tmpfile-safer.c, lib/unlinkdir.c:
13085         * lib/userspec.c, lib/utime.c, lib/utimecmp.c, lib/utimens.c:
13086         * lib/version-etc-fsf.c, lib/version-etc.c, lib/xalloc-die.c:
13087         * lib/xgetcwd.c, lib/xgethostname.c, lib/xmalloc.c, lib/xmemcoll.c:
13088         * lib/xnanosleep.c, lib/xreadlink.c, lib/xstrtod.c, lib/xstrtoimax.c:
13089         * lib/xstrtol.c, lib/xstrtoumax.c, lib/yesno.c:
13090         Likewise.
13091
13092 2006-09-13  Eric Blake  <ebb9@byu.net>
13093
13094         * lib/getopt.c: Fix typo in last commit.
13095
13096 2006-09-12  Sergey Poznyakoff  <gray@gnu.org.ua>
13097
13098         * lib/argp-help.c (argp_doc): Make sure NULL is not passed to
13099         dgettext.
13100
13101 2006-09-12  Jim Meyering  <jim@meyering.net>
13102
13103         * lib/nanosleep.c: Include <sys/types.h> before sys/select.h, to avoid
13104         compilation failure (due to use of pid_t in latter) on NetBSD 1.6.
13105         Reported by Nelson H. F. Beebe.
13106
13107 2006-09-10  Sergey Poznyakoff  <gray@gnu.org.ua>
13108
13109         * lib/argp-parse.c (__argp_parse) [!_LIBC]: Make sure
13110         program_invocation_name and program_invocation_short_name are
13111         initialized.
13112         * lib/argp-namefrob.h: Move declarations of program_invocation_name
13113         and program_invocation_short_name to argp.h, so they are visible
13114         to user programs.
13115         * lib/argp.h: Likewise
13116
13117 2006-09-10  Bruno Haible  <bruno@clisp.org>
13118
13119         * modules/mkdtemp (Files): Remove m4/ulonglong.m4, m4/stdint_h.m4,
13120         m4/inttypes_h.m4, m4/uintmax_t.m4.
13121
13122 2006-09-10  Bruno Haible  <bruno@clisp.org>
13123
13124         * m4/mkdtemp.m4 (gl_PREREQ_MKDTEMP): Don't require
13125         gl_AC_TYPE_UINTMAX_T.
13126
13127 2006-09-10  Bruno Haible  <bruno@clisp.org>
13128
13129         * lib/mkdtemp.c: Include <stdint.h> always. Don't include <inttypes.h>.
13130
13131 2006-09-09  Sergey Poznyakoff  <gray@gnu.org.ua>
13132
13133         * lib/argp.h (struct argp): Document the N_("..") "\v" N_("..")
13134         convention.  Text proposed by Bruno Haible.
13135         (struct argp_option): Document the use of N_() wrappers.
13136
13137         * lib/argp-help.c (argp_doc): Split the untranslated doc string on
13138         '\v', and translate the two parts separately, instead of feeding
13139         the whole string to gettext.  This allows to exclude
13140         '\v' from the strings visible to the translator by writing doc
13141         strings as N_("..") "\v" N_("..").
13142
13143 2006-09-09  Paul Eggert  <eggert@cs.ucla.edu>
13144
13145         * config/srclist.txt: Undo latest change; the bug was fixed.
13146
13147 2006-09-09  Bruno Haible  <bruno@clisp.org>
13148
13149         * gnulib-tool (func_emit_lib_Makefile_am): Eliminate lib_LDFLAGS
13150         assignments if building a library without libtool.
13151         (func_emit_tests_Makefile_am): Likewise. Handle lib_* variables as
13152         in func_emit_lib_Makefile_am.
13153         (func_import): When building a static library libfoo.a, arrange to
13154         define variables LIBFOO_LIBDEPS and LIBFOO_LTLIBDEPS.
13155         (func_create_testdir): Likewise.
13156         * modules/gc (configure.ac, Makefile.am): If building statically,
13157         augment gl_libdeps and gl_ltlibdeps instead of lib_LDFLAGS.
13158         * modules/iconvme (configure.ac, Makefile.am): Likewise.
13159         * modules/striconv (configure.ac, Makefile.am): Likewise.
13160         Based on a suggestion by Ralf Wildenhues.
13161
13162 2006-09-08  Paul Eggert  <eggert@cs.ucla.edu>
13163
13164         * m4/mktime.m4 (AC_FUNC_MKTIME): Sync from Autoconf.
13165         Check for unistd.h too, since Autoconf doesn't assume POSIX.
13166         Also:
13167
13168         2006-09-08  Paul Eggert  <eggert@cs.ucla.edu>
13169         Add year_2050_test to catch glibc bug 2821
13170         <http://sourceware.org/bugzilla/show_bug.cgi?id=2821>.
13171
13172         2006-08-15  Paul Eggert  <eggert@cs.ucla.edu>
13173         Prefer #ifdef to #if.
13174
13175         2006-04-02  Paul Eggert  <eggert@cs.ucla.edu>
13176         Return from 'main' instead of calling 'exit'.
13177
13178 2006-09-08  Paul Eggert  <eggert@cs.ucla.edu>
13179
13180         * lib/mktime.c (guess_time_tm): Fix bug where mktime
13181         returned the maximum time_t value rather than (time_t) -1.
13182         Problem originally reported by William Bardwell
13183         <http://sourceware.org/bugzilla/show_bug.cgi?id=2821>.
13184
13185         * lib/isapipe.h (HAVE_FIFO_PIPES) [!defined HAVE_FIFO_PIPES]:
13186         Moved to here ...
13187         * lib/isapipe.c (HAVE_FIFO_PIPES) [!defined HAVE_FIFO_PIPES]:
13188         ... from here.
13189
13190 2006-09-08  Paul Eggert  <eggert@cs.ucla.edu>
13191
13192         * config/srclist.txt: Temporarily comment out mktime.c until glibc bug
13193         2821 is fixed.
13194
13195 2006-09-08  Jim Meyering  <jim@meyering.net>
13196
13197         Don't make generated files read-only.  That would bother too many
13198         people.  However, do retain the ability to work when targets are
13199         read-only: remove the destination and temporary files before writing
13200         them (when generated via sed or echo), or by using the -f option for
13201         both cp and mv commands.  Suggestion to use -f from Paul Eggert.
13202         * modules/alloca-opt, modules/argz, modules/arpa_inet:
13203         * modules/byteswap, modules/configmake, modules/fcntl:
13204         * modules/fnmatch, modules/getopt, modules/glob, modules/inttypes:
13205         * modules/localcharset, modules/netinet_in, modules/poll:
13206         * modules/stdbool, modules/stdint, modules/sys_select:
13207         * modules/sys_socket, modules/sys_stat, modules/sysexits:
13208
13209 2006-09-08  Jim Meyering  <jim@meyering.net>
13210
13211         Avoid new build failure on FreeBSD 6.0.
13212         * m4/ls-mntd-fs.m4 (gl_LIST_MOUNTED_FILE_SYSTEMS): Include
13213         <sys/param.h> when testing whether getmntinfo uses statvfs.  Patch by
13214         Pavel Tsekov, in <http://savannah.gnu.org/bugs/?17643>.
13215
13216 2006-09-07  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
13217
13218         * m4/fsusage.m4 (gl_FILE_SYSTEM_USAGE): Don't use plain echo.
13219
13220 2006-09-07  Jim Meyering  <jim@meyering.net>
13221
13222         Fix global typo in last change: use chmod u-w, not chmod u-x.
13223         Spotted by Paul Eggert and Bruce Korb.
13224         * modules/alloca-opt, modules/argz, modules/arpa_inet:
13225         * modules/byteswap, modules/configmake, modules/fcntl:
13226         * modules/fnmatch, modules/getopt, modules/glob, modules/inttypes:
13227         * modules/localcharset, modules/netinet_in, modules/poll:
13228         * modules/stdbool, modules/stdint, modules/sys_select:
13229         * modules/sys_socket, modules/sys_stat, modules/sysexits:
13230
13231 2006-09-06  Jim Meyering  <jim@meyering.net>
13232
13233         Make generated files be read-only.
13234         * modules/alloca-opt (Makefile.am): Work also when $@ is read-only.
13235         Ensure that each generated file is now read-only.
13236         * modules/argz: Likewise.
13237         * modules/arpa_inet: Likewise.
13238         * modules/byteswap: Likewise.
13239         * modules/configmake: Likewise.
13240         * modules/fcntl: Likewise.
13241         * modules/fnmatch: Likewise.
13242         * modules/getopt: Likewise.
13243         * modules/glob: Likewise.
13244         * modules/inttypes: Likewise.
13245         * modules/netinet_in: Likewise.
13246         * modules/poll: Likewise.
13247         * modules/stdbool: Likewise.
13248         * modules/stdint: Likewise.
13249         * modules/sys_select: Likewise.
13250         * modules/sys_socket: Likewise.
13251         * modules/sys_stat: Likewise.
13252         * modules/sysexits: Likewise.
13253         * modules/localcharset: Same as above, but continue using temporary
13254         file named "t-$@" (why different?) rather than the "$@-t" used
13255         everywhere else.
13256
13257         * modules/sysexits (Makefile.am): Replace literal occurrences
13258         of "sysexit.h" more readable, and more consistent, "$@".
13259
13260 2006-09-06  Bruno Haible  <bruno@clisp.org>
13261
13262         * modules/striconv: New file.
13263         * modules/xstriconv: New file.
13264         * MODULES.html.sh (Internationalization functions): Add striconv,
13265         xstriconv.
13266
13267 2006-09-06  Bruno Haible  <bruno@clisp.org>
13268
13269         * modules/gc (Makefile.am): Augment lib_LDFLAGS, not lib_LIBADD.
13270         * modules/iconvme (Makefile.am): Likewise. Also handle the case of
13271         not using libtool correctly.
13272
13273 2006-09-06  Bruno Haible  <bruno@clisp.org>
13274
13275         * lib/striconv.h: New file.
13276         * lib/striconv.c: New file, merging iconvme.c with GNU gettext's
13277         iconvstring.c.
13278         * lib/xstriconv.h: New file.
13279         * lib/xstriconv.c: New file.
13280
13281 2006-09-06  Bruno Haible  <bruno@clisp.org>
13282
13283         * gnulib-tool (func_emit_lib_Makefile_am): Initialize also
13284         lib_..._LDFLAGS.
13285
13286 2006-09-05  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
13287
13288         * lib/argz_.h: Sync from Libtool.
13289
13290         2006-09-04  George Bosilca <bosilca@cs.utk.edu>
13291                 and Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
13292
13293         * lib/libltdl/argz_.h: It's __cplusplus, not _cplusplus.
13294
13295 2006-09-05  Davide Angelocola  <davide.angelocola@tiscali.it>
13296
13297         * modules/trim: New file.
13298
13299 2006-09-05  Davide Angelocola  <davide.angelocola@tiscali.it>
13300
13301         * lib/trim.h: New file.
13302         * lib/trim.c: New file.
13303
13304 2006-09-05  Bruno Haible  <bruno@clisp.org>
13305
13306         * MODULES.html.sh (String handling): Add trim.
13307
13308 2006-09-04  Karl Berry  <karl@gnu.org>
13309
13310         * config/srclist.txt (signed.m4, gettext.m4): changes not propagated
13311         until next release.
13312
13313 2006-09-03  Bruno Haible  <bruno@clisp.org>
13314
13315         * m4/lib-link.m4 (AC_LIB_LINKFLAGS_BODY): Locate mingw shared libraries
13316         correctly.
13317
13318 2006-09-01  Paul Eggert  <eggert@cs.ucla.edu>
13319
13320         * m4/getloadavg.m4 (gl_GETLOADAVG): Use CONFIGURING_GETLOADAVG,
13321         not gl_GETLOADAVG.  Omit unneeded semicolons.
13322         Problems reported by Ralf Wildenhues in
13323         <http://lists.gnu.org/archive/html/bug-gnulib/2006-09/msg00000.html>.
13324         (gl_PREREQ_GETLOADAVG): Use AC_DEFUN, not m4_define.  Put
13325         at the end, which is the usual gnulib style.
13326
13327         * m4/fstypename.m4 (gl_FSTYPENAME): Use AC_CHECK_MEMBERS instead
13328         of doing all the work ourselves.
13329         * m4/fsusage.m4 (gl_PREREQ_FSUSAGE_EXTRA): Don't check for
13330         sys/statvfs.h since the code doesn't use HAVE_SYS_STATVFS_H.
13331
13332 2006-09-01  Paul Eggert  <eggert@cs.ucla.edu>
13333
13334         * lib/getloadavg.c: Use CONFIGURING_GETLOADAVG, not gl_GETLOADAVG.
13335         Problem reported by Ralf Wildenhues in
13336         <http://lists.gnu.org/archive/html/bug-gnulib/2006-09/msg00000.html>.
13337
13338         * lib/mountlist.c: All uses of HAVE_F_FSTYPENAME_IN_STATFS replaced by
13339         HAVE_STRUCT_STATFS_F_FSTYPENAME.
13340
13341 2006-09-01  Paul Eggert  <eggert@cs.ucla.edu>
13342
13343         * gnulib-tool (func_emit_lib_Makefile_am): Fix typos in
13344         yesterday's patch by changing test -n to test -z.
13345
13346 2006-08-31  Paul Eggert  <eggert@cs.ucla.edu>
13347
13348         * modules/getloadavg (Files): Add m4/getloadavg.m4.
13349         (configure.ac): AC_FUNC_GETLOADAVG -> gl_GETLOADAVG, as
13350         the former is now obsolescent.
13351
13352         * modules/chdir-long (Depends-on): Add fcntl.
13353
13354 2006-08-31  Paul Eggert  <eggert@cs.ucla.edu>
13355
13356         * m4/fnmatch.m4: Add comment that Autoconf AC_FUNC_FNMATCH is
13357         obsolescent, and programs should use gnulib instead.
13358         * m4/getloadavg.m4: New file, with contents taken from Autoconf
13359         but with prefixes changed.
13360
13361 2006-08-31  Paul Eggert  <eggert@cs.ucla.edu>
13362
13363         * lib/getloadavg.c [defined gl_GETLOADAVG]: Don't include config.h
13364         or stdbool.h, because they might not exist while configuring.
13365
13366         * lib/chdir-long.c: Include <fcntl.h>, for O_DIRECTORY.
13367         Don't include unistd.h or limits.h; not needed, since chdir-long.h
13368         does that for us.
13369         (O_DIRECTORY): Remove.
13370
13371 2006-08-31  Eric Blake  <ebb9@byu.net>
13372
13373         * gnulib-tool: Don't let emacs change spaces to TAB.
13374
13375 2006-08-31  Bruno Haible  <bruno@clisp.org>
13376
13377         * gnulib-tool: When calling func_import more than once, do it in a
13378         subshell.
13379         Reported by Eric Blake <ebb9@byu.net>.
13380
13381 2006-08-31  Bruno Haible  <bruno@clisp.org>
13382
13383         * gnulib-tool (nl): Remove variable.
13384         (sed_transform_lib_file): Use more robust test for config-h module.
13385         (func_import): Fix typo in 2006-08-25 patch.
13386
13387 2006-08-31  Bruno Haible  <bruno@clisp.org>
13388
13389         * gnulib-tool (func_emit_lib_Makefile_am): When --makefile-name was
13390         specified, augment Makefile.am variables instead of assigning them.
13391
13392 2006-08-30  Paul Eggert  <eggert@cs.ucla.edu>
13393
13394         Work around a bug in both the Linux and SunOS 64-bit kernels:
13395         nanosleep mishandles sleeps for longer than 2**31 seconds.
13396         Problem reported by Frank v Waveren in
13397         <http://lists.gnu.org/archive/html/bug-coreutils/2006-08/msg00298.html>.
13398         * m4/nanosleep.m4 (gl_FUNC_NANOSLEEP): Require gl_CLOCK_TIME.
13399         Check for nanosleep bug.
13400         (LIB_NANOSLEEP): Append clock_gettime library if needed.
13401
13402 2006-08-30  Paul Eggert  <eggert@cs.ucla.edu>
13403
13404         Work around a bug in both the Linux and SunOS 64-bit kernels:
13405         nanosleep mishandles sleeps for longer than 2**31 seconds.
13406         Problem reported by Frank v Waveren in
13407         <http://lists.gnu.org/archive/html/bug-coreutils/2006-08/msg00298.html>.
13408         * lib/nanosleep.c (BILLION): New constant.
13409         (getnow) [HAVE_BUG_BIG_NANOSLEEP]: New functions.
13410         (rpl_nanosleep) [HAVE_BUG_BIG_NANOSLEEP]: Completely new
13411         implementation.
13412
13413 2006-08-30  Paul Eggert  <eggert@cs.ucla.edu>
13414
13415         * modules/nanosleep (Depends-on): Add gettime.
13416
13417 2006-08-30  Paul Eggert  <eggert@cs.ucla.edu>
13418         and Simon Josefsson  <jas@extundo.com>
13419         and Oskar Liljeblad  <oskar@osk.mine.nu>
13420
13421         * MODULES.html.sh (Support for building documentation): Add gpl, lgpl.
13422         * gnulib-tool (func_import): New license type 'unmodifiable license
13423         text'.
13424         * modules/fdl: Use it.  Longer description.
13425         * module/gpl, module/lgpl: New files.
13426
13427 2006-08-30  Jim Meyering  <jim@meyering.net>
13428
13429         * lib/isapipe.c (isapipe): Rename local s/fd/fd_pair/ to avoid
13430         shadowing the parameter.
13431
13432 2006-08-29  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
13433
13434         Sync from Libtool:
13435
13436         2006-08-28  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
13437
13438         * lib/libltdl/argz.c: Use `#ifdef HAVE_CONFIG_H', to facilitate code
13439         sharing with gnulib.  Report by Eric Blake.
13440
13441 2006-08-29  Paul Eggert  <eggert@cs.ucla.edu>
13442
13443         * modules/isapipe: New file.
13444         * MODULES.html.sh (File descriptor based Input/Output): Add isapipe.
13445
13446 2006-08-29  Paul Eggert  <eggert@cs.ucla.edu>
13447
13448         * modules/configmake (Makefile.am): Add a comment, and omit
13449         the CONFIGMAKE_ prefix from generated macro names.  Suggested
13450         by Bruno Haible.
13451
13452 2006-08-29  Paul Eggert  <eggert@cs.ucla.edu>
13453
13454         * m4/isapipe.m4: New file.
13455
13456 2006-08-29  Paul Eggert  <eggert@cs.ucla.edu>
13457
13458         * lib/isapipe.c, lib/isapipe.h: New files.
13459
13460 2006-08-29  Jim Meyering  <jim@meyering.net>
13461
13462         * modules/configmake (Makefile.am): Make configmake.h depend on
13463         Makefile.  Otherwise, a stale configmake.h could hang around.
13464
13465 2006-08-29  Eric Blake  <ebb9@byu.net>
13466
13467         * lib/error.c (error_at_line, print_errno_message): Match libc, after
13468         resolution of upstream bug 3044.
13469
13470 2006-08-29  Bruno Haible  <bruno@clisp.org>
13471
13472         * modules/localcharset (Depends-on): Add configmake.
13473         (Makefile.am): Remove setting of LIBDIR through DEFS.
13474
13475 2006-08-29  Bruno Haible  <bruno@clisp.org>
13476
13477         * lib/localcharset.c: Include configmake.h in order to get LIBDIR
13478         defined.
13479
13480 2006-08-28  Paul Eggert  <eggert@cs.ucla.edu>
13481
13482         * modules/fcntl: New file.
13483         * modules/chdir-safer (Depends-on): Add fcntl.
13484         * modules/fts: Likewise.
13485         * modules/mkdir-p: Likewise.
13486
13487         * modules/stdint (Makefile.am): Do not substitute ABSOLUTE_INTTYPES_H.
13488         This undoes the most recent change, since we're now addressing the
13489         problem in a different way.
13490
13491         * gnulib-tool (emit_lib_Makefile_am): Don't put $makefile_name
13492         into output, since the output might be called Makefile.am even
13493         if $makefile_name is something different.
13494         (func_import): Use $makefile_am rather than
13495         ${makefile_name-Makefile.am}, to fix a bug where makefile_name was
13496         empty.
13497
13498         * modules/inttypes (Files): Add m4/inttypes-h.m4.
13499
13500 2006-08-28  Paul Eggert  <eggert@cs.ucla.edu>
13501
13502         * m4/inttypes.m4 (gl_INTTYPES_H): Move ABSOLUTE_INTTYPES_H code here...
13503         * m4/stdint.m4 (gl_STDINT_H): ... from here.  This undoes the most
13504         recent change to stdint.m4, since we're now addressing the problem in a
13505         different way.
13506
13507 2006-08-28  Paul Eggert  <eggert@cs.ucla.edu>
13508
13509         * m4/fcntl_h.m4: New file.
13510
13511 2006-08-28  Paul Eggert  <eggert@cs.ucla.edu>
13512
13513         * lib/fcntl_.h: New file.
13514         * lib/chdir-safer.c (O_DIRECTORY, O_NOFOLLOW): Remove, now that we have
13515         the fcntl module.
13516         * lib/dirchownmod.c: Likewise.
13517         * lib/fts.c: Likewise.
13518
13519         * lib/inttypes_.h [defined _GL_JUST_INCLUDE_ABSOLUTE_INTTYPES_H]:
13520         Include @ABSOLUTE_INTTYPES_H@ if available, but do nothing else.
13521         * lib/stdint_.h (_GL_JUST_INCLUDE_ABSOLUTE_INTTYPES_H): Define
13522         just before including <inttypes.h>, to avoid circular inclusion.
13523
13524 2006-08-28  Jim Meyering  <jim@meyering.net>
13525
13526         * doc/visibility.texi: Actually read and correct the grammar of the
13527         sentence affected by yesterday's change.
13528
13529 2006-08-28  Eric Blake  <ebb9@byu.net>
13530
13531         * modules/inttypes (Makefile.am): Fix sed error when inttypes.h
13532         needs wrapper.
13533
13534 2006-08-28  Eric Blake  <ebb9@byu.net>
13535
13536         * m4/inttypes.m4 (gl_INTTYPES_H): Fix missing #endif.
13537
13538 2006-08-28  Eric Blake  <ebb9@byu.net>
13539
13540         * m4/codeset.m4 (AM_LANGINFO_CODESET): Avoid compiler warning.
13541
13542 2006-08-28  Bruno Haible  <bruno@clisp.org>
13543
13544         * modules/c-strstr: New file, from GNU gettext.
13545         * MODULES.html.sh (String handling): Add c-strstr.
13546
13547 2006-08-28  Bruno Haible  <bruno@clisp.org>
13548
13549         * m4/inttypes.m4 (gl_INTTYPES_H): Don't test for the existence of SCNX*
13550         macros.
13551         Reported by Eric Blake.
13552
13553 2006-08-28  Bruno Haible  <bruno@clisp.org>
13554
13555         * lib/vasnprintf.c (EOVERFLOW): Remove definition.
13556         (VASNPRINTF): Return a string of length > INT_MAX without failing.
13557         * lib/vasprintf.c: Include errno.h, limits.h.
13558         (EOVERFLOW): New fallback definition.
13559         (vasprintf): Test here whether the string length is > INT_MAX.
13560         * lib/vsnprintf.c: Include errno.h, limits.h.
13561         (EOVERFLOW): New fallback definition.
13562         (vsnprintf): Fix bug when generated string was too long for the buffer.
13563         Test here whether the string length is > INT_MAX.
13564
13565 2006-08-28  Bruno Haible  <bruno@clisp.org>
13566
13567         * lib/inttypes_.h (SCNX*): Remove definitions.
13568         Reported by Eric Blake.
13569
13570 2006-08-28  Bruno Haible  <bruno@clisp.org>
13571
13572         * lib/c-strstr.h: New file, from GNU gettext.
13573         * lib/c-strstr.c: New file, from GNU gettext.
13574
13575 2006-08-28  Bruno Haible  <bruno@clisp.org>
13576
13577         * gnulib-tool: Reorder some statements.
13578
13579 2006-08-28  Bruno Haible  <bruno@clisp.org>
13580
13581         * gnulib-tool: New option --makefile-name.
13582         (func_emit_lib_Makefile_am, func_emit_tests_Makefile_am): Use
13583         $makefile_name.
13584         (func_import): Write $makefile_name to the cache file, and read it from
13585         there unless explicitly specified. Use $makefile_name as file name
13586         instead of Makefile.am. Adjust the recommendations accordingly.
13587
13588 2006-08-28  Bruno Haible  <bruno@clisp.org>
13589
13590         * gnulib-tool (func_verify_module): Check against misapplying patch.
13591
13592 2006-08-28  Bruno Haible  <bruno@clisp.org>
13593
13594         * gnulib-tool (func_relativize, func_relconcat): New functions.
13595         Give an error if --local-dir is given with --update.
13596         Remove trailing slashes from $local_gnulib_dir.
13597         (func_import): Store the relativized $local_gnulib_dir in
13598         gnulib-cache.m4, and read it from there if not specified explicitly.
13599
13600 2006-08-28  Bruno Haible  <bruno@clisp.org>
13601
13602         * gnulib-tool (func_get_tests_module): Don't assume that $gnulib_dir
13603         is the current directory. Respect also $local_gnulib_dir.
13604
13605 2006-08-28  Bruno Haible  <bruno@clisp.org>
13606             Simon Josefsson  <jas@extundo.com>
13607
13608         BeOS portability.
13609         * lib/getaddrinfo.c (PF_INET, PF_UNSPEC): New macros.
13610
13611 2006-08-27  Jim Meyering  <jim@meyering.net>
13612
13613         * doc/visibility.texi: Remove duplicate word: "pointer".
13614
13615 2006-08-26  Bruno Haible  <bruno@clisp.org>
13616
13617         * modules/inttypes (Files): Add lib/inttypes_.h, remove lib/inttypes.h.
13618         Add m4/inttypes.m4, remove m4/_inttypes_h.m4 and m4/include_next.m4.
13619         (Makefile.am): Create inttypes.h from inttypes_.h.
13620         * modules/stdint (Makefile.am): Substitute also ABSOLUTE_INTTYPES_H.
13621
13622         * modules/imaxabs: New file.
13623
13624         * modules/imaxdiv: New file.
13625
13626 2006-08-26  Bruno Haible  <bruno@clisp.org>
13627
13628         * m4/inttypes.m4: New file.
13629         * m4/_inttypes_h.m4: Remove file.
13630         * m4/inttypes-pri.m4 (gt_INTTYPES_PRI): Also AC_SUBST
13631         PRI_MACROS_BROKEN.
13632         * m4/stdint.m4 (gl_STDINT_H): Define also ABSOLUTE_INTTYPES_H.
13633
13634         * m4/imaxabs.m4: New file.
13635
13636         * m4/imaxdiv.m4: New file.
13637
13638 2006-08-26  Bruno Haible  <bruno@clisp.org>
13639
13640         * lib/inttypes_.h: New file.
13641         * lib/inttypes.h: Remove file.
13642         * lib/stdint_.h: Include <inttypes.h> through its absolute filename.
13643
13644         * lib/imaxabs.c: New file.
13645
13646         * lib/imaxdiv.c: New file.
13647
13648 2006-08-25  Paul Eggert  <eggert@cs.ucla.edu>
13649
13650         New config-h module, so that "make" output needn't be cluttered
13651         by -DHAVE_CONFIG_H.
13652         * MODULES.html.sh (Support for building libraries and executables):
13653         Add config-h.
13654         * modules/config-h: New file.
13655         * gnulib-tool (nl, sed_transform_lib_file): New vars.
13656         (func_import): Turn "#ifdef HAVE_CONFIG_H" to "#if 1" if
13657         the config-h module is used.
13658
13659         New configmake module, so that "make" output needn't be cluttered
13660         by fluff like '-DLIBDIR=\"/usr/local/lib\"'.
13661         * MODULES.html.sh (Support for building libraries and executables):
13662         Add configmake.
13663         * modules/configmake: New file.
13664
13665 2006-08-25  Paul Eggert  <eggert@cs.ucla.edu>
13666
13667         * m4/config-h.m4: New file.
13668
13669 2006-08-24  Paul Eggert  <eggert@cs.ucla.edu>
13670
13671         * config/srclist.txt: Add elisp-comp.
13672
13673 2006-08-24  Paul Eggert  <eggert@cs.ucla.edu>
13674
13675         * MODULES.html.sh (Support for building libraries and executables):
13676         Add elisp-comp.
13677         * build-aux/elisp-comp: New file.
13678         * modules/elisp-comp: New file.
13679
13680 2006-08-24  Bruno Haible  <bruno@clisp.org>
13681
13682         * gnulib-tool (func_create_testdir): Use non-default values of
13683         sourcebase and m4base.
13684
13685 2006-08-24  Bruno Haible  <bruno@clisp.org>
13686
13687         * MODULES.html.sh (Compatibility checks for POSIX:2001 functions: Fix
13688         HTML structure.
13689
13690 2006-08-23  Paul Eggert  <eggert@cs.ucla.edu>
13691
13692         * modules/openat (Depends-on): Add lchown.
13693
13694 2006-08-23  Bruno Haible  <bruno@clisp.org>
13695
13696         * gnulib-tool (func_import, func_create_testdir): Emit an invocation
13697         of gl_LOCK_EARLY instead of gl_LOCK.
13698
13699 2006-08-23  Bruno Haible  <bruno@clisp.org>
13700
13701         * m4/lock.m4 (gl_LOCK_BODY): Change the default value of gl_use_threads
13702         on OSF/1 to no.
13703         Reported by Stephen Cartwright <sgcartwr@ucalgary.ca>.
13704
13705 2006-08-23  Bruno Haible  <bruno@clisp.org>
13706
13707         * m4/fsusage.m4 (gl_FILE_SYSTEM_USAGE): Don't consider BeOS statvfs
13708         as unusable.
13709
13710         * m4/lock.m4 (gl_LOCK_EARLY): Renamed from gl_LOCK.
13711         (gl_LOCK_BODY): Remove gl_PREREQ_LOCK invocation.
13712         (gl_LOCK): New macro.
13713
13714 2006-08-22  Simon Josefsson  <jas@extundo.com>
13715
13716         * modules/gc-md5 (Makefile.am): Need to add md5.h, after changes
13717         to md5 module.
13718
13719 2006-08-22  Simon Josefsson  <jas@extundo.com>
13720
13721         * MODULES.html.sh: Add "Support for maintaining and release
13722         projects".
13723
13724         * build-aux/gnupload: New file, from coreutils.
13725
13726 2006-08-22  Paul Eggert  <eggert@cs.ucla.edu>
13727
13728         Avoid the need for AC_LIBSOURCES in m4 macros.
13729         * modules/arcfour (EXTRA_DIST): Add arcfour.h.
13730         * modules/arctwo (EXTRA_DIST): Add arctwo.h.
13731         * modules/check-version (EXTRA_DIST): Add check-version.h.
13732         * modules/crc (EXTRA_DIST): Add crc.h.
13733         * modules/des (EXTRA_DIST): Add des.h.
13734         * modules/gc (EXTRA_DIST): Add gc.h.
13735         * modules/getdelim (EXTRA_DIST): Add getdelim.h.
13736         * modules/getline (EXTRA_DIST): Add getline.h.
13737         * modules/getlogin_r (EXTRA_DIST): Add getlogin_r.h.
13738         * modules/hmac-md5 (EXTRA_DIST): Add hmac.h.
13739         * modules/hmac-sha1 (EXTRA_DIST): Add hmac.h.
13740         * modules/md2 (EXTRA_DIST): Add md2.h.
13741         * modules/md4 (EXTRA_DIST): Add md4.h.
13742         * modules/pagealign_alloc (EXTRA_DIST): Add pagealign_alloc.h.
13743         * modules/read-file (EXTRA_DIST): Add read-file.h.
13744         * modules/readline (EXTRA_DIST): Add readline.h.
13745         * modules/rijndael (EXTRA_DIST): Add rijndael-alg-fst.h,
13746         rijndael-api-fst.h.
13747
13748 2006-08-22  Paul Eggert  <eggert@cs.ucla.edu>
13749
13750         * m4/rijndael.m4 (gl_ARCFOUR):
13751         * m4/arctwo.m4 (gl_ARCTWO):
13752         * m4/check-version.m4 (gl_CHECK_VERSION):
13753         * m4/crc.m4 (gl_CRC):
13754         * m4/des.m4 (gl_DES):
13755         * m4/gc-pbkdf2-sha1.m4 (gl_GC_PBKDF2_SHA1):
13756         * m4/gc.m4 (gl_GC):
13757         * m4/getdelim.m4 (gl_FUNC_GETDELIM):
13758         * m4/getline.m4 (gl_FUNC_GETLINE):
13759         * m4/getlogin_r.m4 (gl_GETLOGIN_R_SUBSTITUTE):
13760         * m4/hmac-md5.m4 (gl_HMAC_MD5):
13761         * m4/hmac-sha1.m4 (gl_HMAC_SHA1):
13762         * m4/md2.m4 (gl_MD2):
13763         * m4/md4.m4 (gl_MD4):
13764         * m4/pagealign_alloc.m4 (gl_PAGEALIGN_ALLOC):
13765         * m4/read-file.m4 (gl_FUNC_READ_FILE):
13766         * m4/readline.m4 (gl_FUNC_READLINE):
13767         * m4/rijndael.m4 (gl_RIJNDAEL):
13768         Don't use AC_LIBSOURCES; instead, rely on the files in ../modules/
13769         to get the necessary .h files and whatnot.
13770
13771 2006-08-22  Paul Eggert  <eggert@cs.ucla.edu>
13772
13773         * config/srclist.txt: Remove gnupload, since coreutils now syncs from
13774         gnulib rather than the other way around.
13775         * config/srclistvars.sh (COREUTILS): Remove.
13776
13777 2006-08-22  Jim Meyering  <jim@meyering.net>
13778
13779         * modules/mkdir-p (Makefile.am): Fix typo: s/lib+SOURCES/lib_SOURCES/.
13780
13781         * modules/getpass-gnu (Makefile.am): Add getpass.h to EXTRA_DIST.
13782
13783 2006-08-22  Eric Blake  <ebb9@byu.net>
13784
13785         * modules/regexprops-generic: New file.
13786         * MODULES.html.sh (Support for building documentation): List it.
13787
13788 2006-08-22  Eric Blake  <ebb9@byu.net>
13789
13790         * m4/stdint_h.m4 (gl_AC_HEADER_STDINT_H): Avoid compiler warning.
13791         * m4/inttypes_h.m4 (gl_AC_HEADER_INTTYPES_H): Likewise.
13792         * m4/longlong.m4 (AC_TYPE_LONG_LONG_INT): Likewise.
13793         * m4/intmax_t.m4 (gt_AC_TYPE_INTMAX_T): Likewise.
13794
13795 2006-08-22  Bruno Haible  <bruno@clisp.org>
13796
13797         * gnulib-tool (func_emit_lib_Makefile_am): Don't treat lib_LIBRARIES
13798         and lib_LTLIBRARIES like the other lib_* variables.
13799
13800 2006-08-22  Bruno Haible  <bruno@clisp.org>
13801
13802         * build-aux/x-to-1.in: New file, from GNU gettext.
13803
13804 2006-08-22  Bruno Haible  <bruno@clisp.org>
13805
13806         * m4/readutmp.m4 (gl_READUTMP): Compile readutmp.c only if <utmp.h> or
13807         <utmpx.h> exists.
13808
13809 2006-08-22  Bruno Haible  <bruno@clisp.org>
13810
13811         * lib/readutmp.h: Skip most definitions if neither <utmp.h> nor
13812         <utmpx.h> exists.
13813
13814 2006-08-21  Paul Eggert  <eggert@cs.ucla.edu>
13815
13816         BeOS portability.
13817         * lib/dirchownmod.c (dirchownmod): Don't use fchmod if it doesn't
13818         exist.
13819         Problem reported by Bruno Haible.
13820
13821 2006-08-21  Paul Eggert  <eggert@cs.ucla.edu>
13822
13823         Avoid the need for AC_LIBSOURCES in m4 macros.
13824         * modules/acl (EXTRA_DIST): Add acl.h.
13825         * modules/argmatch (Files): Add m4/argmatch.m4.
13826         (configure.ac): Add gl_ARGMATCH.
13827         (EXTRA_DIST): Renamed from lib_SOURCES, for
13828         consistency with the other modules.  Remove argmatch.c.
13829         * modules/backupfile (EXTRA_DIST): Add backupfile.h.
13830         * modules/c-strtod (EXTRA_DIST): Add c-strtod.h.
13831         * modules/c-strtold (EXTRA_DIST): Add c-strtod.c, c-strtod.h.
13832         * modules/canonhost (EXTRA_DIST): Add c-canonhost.h.
13833         * modules/canonicalize (EXTRA_DIST): Add canonicalize.h.
13834         * modules/chdir-long (EXTRA_DIST): Add chdir-long.h.
13835         * modules/chdir-safer (EXTRA_DIST): Add chdir-safer.h.
13836         * modules/cloexec (EXTRA_DIST): Add cloexec.h.
13837         * modules/close-stream (EXTRA_DIST): Add close-stream.h.
13838         * modules/closeout (EXTRA_DIST): Add closeout.h.
13839         * modules/cycle-check (EXTRA_DIST): Add cycle-check.h.
13840         * modules/dev-ino (EXTRA_DIST): Add dev-ino.h.
13841         * modules/dirfd (EXTRA_DIST): Add dirfd.h.
13842         * modules/dirname (EXTRA_DIST): Renamed from lib_SOURCES.  Add
13843         dirname.h; remove basename.c and stripslash.c.
13844         * modules/exclude (EXTRA_DIST): Add exclude.h.
13845         * modules/exitfail (EXTRA_DIST): Add exitfail.h.
13846         * modules/fcntl-safer (EXTRA_DIST): Add fcntl-safer.h fcntl--.h.
13847         * modules/file-type (EXTRA_DIST): Add file-type.h.
13848         * modules/filemode (EXTRA_DIST): Add filemode.h.
13849         * modules/filenamecat (EXTRA_DIST): Add filenamecat.h.
13850         * modules/fopen-safer (EXTRA_DIST): Add stdio-safer.h stdio--.h.
13851         * modules/fpending (EXTRA_DIST): Add __fpending.h.
13852         * modules/fprintftime (EXTRA_DIST): Add fprintftime.h.
13853         * modules/fsusage (EXTRA_DIST): Add fsusage.h.
13854         * modules/fts (EXTRA_DIST): Add fts_.h fts-cycle.c.
13855         * modules/getcwd (EXTRA_DIST): Add getcwd.h.
13856         * modules/getdate (EXTRA_DIST): Add getdate.c.
13857         * modules/gethrxtime (EXTRA_DIST): Add gethrxtime.h xtime.h.
13858         * modules/getpagesize (EXTRA_DIST): Add getpagesize.h.
13859         * modules/getpass (EXTRA_DIST): Add getpass.h.
13860         * modules/glob (EXTRA_DIST): Add glob_.h glob-libc.h.
13861         * modules/group-member (EXTRA_DIST): Add group-member.h.
13862         * modules/hard-locale (EXTRA_DIST): Add hard-locale.h.
13863         * modules/hash (EXTRA_DIST): Add hash.h.
13864         * modules/human (EXTRA_DIST): Add human.h.
13865         * modules/inttypes (EXTRA_DIST): Add inttypes.h.
13866         * modules/lchmod (EXTRA_DIST): Add lchmod.h.
13867         * modules/lchown (EXTRA_DIST): Add lchown.h.
13868         * modules/long-options (EXTRA_DIST): Add long-options.h.
13869         * modules/lstat (EXTRA_DIST): Add lstat.h.
13870         * modules/md5 (EXTRA_DIST): Add memcasecmp.h.
13871         * modules/memcoll (EXTRA_DIST): Add memcoll.h.
13872         * modules/mempcpy (EXTRA_DIST): Add mempcpy.h.
13873         * modules/memrchr (EXTRA_DIST): Add memrchr.h.
13874         * modules/memxor (EXTRA_DIST): Add memxor.h.
13875         * modules/mkancesdirs (EXTRA_DIST): Add mkancesdirs.h.
13876         * modules/mkdir-p (EXTRA_DIST): Add modechange.h.
13877         * modules/mountlist (EXTRA_DIST): Add mountlist.h.
13878         * modules/openat (EXTRA_DIST): Add at-func.c openat.h openat-priv.h.
13879         * modules/pathmax (EXTRA_DIST): Add pathmax.h.
13880         * modules/physmem (EXTRA_DIST): Add physmem.h.
13881         * modules/posixtm (EXTRA_DIST): Add posixtm.h.
13882         * modules/posixver (EXTRA_DIST): Add posixver.h.
13883         * modules/quote (EXTRA_DIST): Add quote.h.
13884         * modules/quotearg (EXTRA_DIST): Add quotearg.h.
13885         * modules/readtokens (EXTRA_DIST): Add readtokens.h.
13886         * modules/readutmp (EXTRA_DIST): Add readutmp.h.
13887         * modules/regex (EXTRA_DIST): Add regcomp.c regex.h regex_internal.c
13888         regex_internal.h regexec.c.
13889         * modules/safe-read (EXTRA_DIST): Add safe-read.h.
13890         * modules/safe-write (EXTRA_DIST): Add safe-write.h.
13891         * modules/same (EXTRA_DIST): Add same.h.
13892         * modules/same-inode (EXTRA_DIST): Add same-inode.h.
13893         * modules/save-cwd (EXTRA_DIST): Add save-cwd.h.
13894         * modules/savedir (EXTRA_DIST): Add savedir.h.
13895         * modules/sha1 (EXTRA_DIST): Add sha1.h.
13896         * modules/sig2str (EXTRA_DIST): Add sig2str.h.
13897         * modules/stat-macros (EXTRA_DIST): Add stat-macros.h.
13898         * modules/stat-time (EXTRA_DIST): Add stat-time.h.
13899         * modules/stdlib-safer (EXTRA_DIST): Add stdlib-safer.h stdlib--.h.
13900         * modules/strdup (EXTRA_DIST): Add strdup.h.
13901         * modules/strftime (EXTRA_DIST): Add strftime.h.
13902         * modules/strndup (EXTRA_DIST): Add strndup.h.
13903         * modules/strnlen (EXTRA_DIST): Add strnlen.h.
13904         * modules/strverscmp (EXTRA_DIST): Add strverscmp.h.
13905         * modules/time_r (EXTRA_DIST): Add time_r.h.
13906         * modules/timespec (EXTRA_DIST): Add timespec.h.
13907         * modules/tmpfile-safer (EXTRA_DIST): Add stdio-safer.h stdio--.h.
13908         * modules/unistd-safer (EXTRA_DIST): Add unistd-safer.h unistd--.h.
13909         * modules/unlinkdir (EXTRA_DIST): Add unlinkdir.h.
13910         * modules/unlocked-io (EXTRA_DIST): Add unlocked-io.h.
13911         * modules/userspec (EXTRA_DIST): Add userspec.h.
13912         * modules/utimecmp (EXTRA_DIST): Add utimecmp.h.
13913         * modules/utimens (EXTRA_DIST): Add utimens.h.
13914         * modules/xalloc (EXTRA_DIST): Add xalloc.h.
13915         * modules/xgetcwd (EXTRA_DIST): Add xgetcwd.h.
13916         * modules/xnanosleep (EXTRA_DIST): Add xnanosleep.h.
13917         * modules/xreadlink (EXTRA_DIST): Add xreadlink.h.
13918         * modules/xstrtod (EXTRA_DIST): Add xstrtod.h.
13919         * modules/xstrtol (EXTRA_DIST): Add xstrtol.h.
13920         * modules/xstrtold (EXTRA_DIST): Add xstrtod.c xstrtod.h.
13921         * modules/yesno (EXTRA_DIST): Add yesno.h.
13922
13923 2006-08-21  Paul Eggert  <eggert@cs.ucla.edu>
13924
13925         * m4/mkdir-p.m4 (gl_MKDIR_PARENTS): Check for fchmod.
13926
13927         * m4/argmatch.m4: New file, from coreutils with AC_LIBSOURCES removed.
13928         * m4/dev-ino.m4, same-inode.m4: Remove.
13929
13930         * m4/_inttypes_h.m4 (gl_INTTYPES_H):
13931         * m4/acl.m4 (AC_FUNC_ACL):
13932         * m4/backupfile.m4 (gl_BACKUPFILE):
13933         * m4/c-strtod.m4 (gl_C99_STRTOLD):
13934         * m4/canon-host.m4 (gl_CANON_HOST):
13935         * m4/canonicalize.m4 (AC_FUNC_CANONICALIZE_FILE_NAME):
13936         * m4/chdir-long.m4 (gl_FUNC_CHDIR_LONG):
13937         * m4/chdir-safer.m4 (gl_CHDIR_SAFER):
13938         * m4/cloexec.m4 (gl_CLOEXEC):
13939         * m4/close-stream.m4 (gl_CLOSE_STREAM):
13940         * m4/closeout.m4 (gl_CLOSEOUT):
13941         * m4/dirfd.m4 (gl_FUNC_DIRFD):
13942         * m4/dirname.m4 (gl_DIRNAME):
13943         * m4/exclude.m4 (gl_EXCLUDE):
13944         * m4/exitfail.m4 (gl_EXITFAIL):
13945         * m4/fcntl-safer.m4 (gl_FCNTL_SAFER):
13946         * m4/file-type.m4 (gl_FILE_TYPE):
13947         * m4/filemode.m4 (gl_FILEMODE):
13948         * m4/filenamecat.m4 (gl_FILE_NAME_CONCAT):
13949         * m4/fpending.m4 (gl_FUNC_FPENDING):
13950         * m4/fprintftime.m4 (gl_FPRINTFTIME):
13951         * m4/fts.m4 (gl_FUNC_FTS):
13952         * m4/getcwd.m4 (gl_FUNC_GETCWD_NULL):
13953         * m4/getdate.m4 (gl_GETDATE):
13954         * m4/gethrxtime.m4 (gl_GETHRXTIME):
13955         * m4/getpagesize.m4 (gl_GETPAGESIZE):
13956         * m4/getpass.m4 (gl_FUNC_GETPASS):
13957         * m4/gettime.m4 (gl_GETTIME):
13958         * m4/getugroups.m4 (gl_GETUGROUPS):
13959         * m4/glob.m4 (gl_GLOB_SUBSTITUTE):
13960         * m4/group-member.m4 (gl_FUNC_GROUP_MEMBER):
13961         * m4/hard-locale.m4 (gl_HARD_LOCALE):
13962         * m4/hash.m4 (gl_HASH):
13963         * m4/idcache.m4 (gl_IDCACHE):
13964         * m4/lchmod.m4 (gl_FUNC_LCHMOD):
13965         * m4/lchown.m4 (gl_FUNC_LCHOWN):
13966         * m4/long-options.m4 (gl_LONG_OPTIONS):
13967         * m4/lstat.m4 (gl_FUNC_LSTAT):
13968         * m4/md5.m4 (gl_MD5):
13969         * m4/memcasecmp.m4 (gl_MEMCASECMP):
13970         * m4/memcoll.m4 (gl_MEMCOLL):
13971         * m4/mempcpy.m4 (gl_FUNC_MEMPCPY):
13972         * m4/memrchr.m4 (gl_FUNC_MEMRCHR):
13973         * m4/memxor.m4 (gl_MEMXOR):
13974         * m4/mkancesdirs.m4 (gl_MKANCESDIRS):
13975         * m4/mkdir-p.m4 (gl_MKDIR_PARENTS):
13976         * m4/modechange.m4 (gl_MODECHANGE):
13977         * m4/mountlist.m4 (gl_MOUNTLIST):
13978         * m4/nanosleep.m4 (gl_FUNC_NANOSLEEP):
13979         * m4/openat.m4 (gl_FUNC_OPENAT):
13980         * m4/pathmax.m4 (gl_PATHMAX):
13981         * m4/physmem.m4 (gl_PHYSMEM):
13982         * m4/posixtm.m4 (gl_POSIXTM):
13983         * m4/posixver.m4 (gl_POSIXVER):
13984         * m4/quote.m4 (gl_QUOTE):
13985         * m4/quotearg.m4 (gl_QUOTEARG):
13986         * m4/readtokens.m4 (gl_READTOKENS):
13987         * m4/readutmp.m4 (gl_READUTMP):
13988         * m4/regex.m4 (gl_REGEX):
13989         * m4/safe-read.m4 (gl_SAFE_READ):
13990         * m4/safe-write.m4 (gl_SAFE_WRITE):
13991         * m4/same.m4 (gl_SAME):
13992         * m4/save-cwd.m4 (gl_SAVE_CWD):
13993         * m4/savedir.m4 (gl_SAVEDIR):
13994         * m4/settime.m4 (gl_SETTIME):
13995         * m4/sha1.m4 (gl_SHA1):
13996         * m4/sig2str.m4 (gl_FUNC_SIG2STR):
13997         * m4/stat-macros.m4 (gl_STAT_MACROS):
13998         * m4/stat-time.m4 (gl_STAT_TIME):
13999         * m4/stdio-safer.m4 (gl_FOPEN_SAFER):
14000         * m4/stdlib-safer.m4 (gl_STDLIB_SAFER):
14001         * m4/strdup.m4 (gl_FUNC_STRDUP):
14002         * m4/strftime.m4 (gl_FUNC_GNU_STRFTIME):
14003         * m4/strndup.m4 (gl_FUNC_STRNDUP):
14004         * m4/strnlen.m4 (gl_FUNC_STRNLEN):
14005         * m4/strverscmp.m4 (gl_FUNC_STRVERSCMP):
14006         * m4/time_r.m4 (gl_TIME_R):
14007         * m4/timespec.m4 (gl_TIMESPEC):
14008         * m4/unistd-safer.m4 (gl_UNISTD_SAFER):
14009         * m4/unlinkdir.m4 (gl_UNLINKDIR):
14010         * m4/unlocked-io.m4 (gl_FUNC_GLIBC_UNLOCKED_IO):
14011         * m4/userspec.m4 (gl_USERSPEC):
14012         * m4/utimecmp.m4 (gl_UTIMECMP):
14013         * m4/utimens.m4 (gl_UTIMENS):
14014         * m4/xalloc.m4 (gl_XALLOC):
14015         * m4/xgetcwd.m4 (gl_XGETCWD):
14016         * m4/xnanosleep.m4 (gl_XNANOSLEEP):
14017         * m4/xreadlink.m4 (gl_XREADLINK):
14018         * m4/xstrtod.m4 (gl_XSTRTOD):
14019         * m4/yesno.m4 (gl_YESNO):
14020         Don't use AC_LIBSOURCES; instead, rely on the files in ../modules/
14021         to get the necessary .h files and whatnot.
14022
14023 2006-08-21  Mark D. Baushke  <mdb@gnu.org>
14024             Bruno Haible  <bruno@clisp.org>
14025
14026         * gnulib-tool (func_verify_module): Work around Sun's non-POSIX 1003.2
14027         /bin/sh understanding of '!' conditional negation.
14028
14029 2006-08-21  Jim Meyering  <jim@meyering.net>
14030
14031         * modules/openat (Depends-on): Really alphabetize.
14032
14033         * modules/acl (Depends-on): Add error and quote.
14034
14035         * check-module (find_included_lib_files): Add at-func.c to the
14036         ok-to-include-more-than-once white list.
14037
14038         * modules/openat (Depends-on): Add lstat.  Alphabetize.
14039
14040 2006-08-21  Bruno Haible  <bruno@clisp.org>
14041
14042         * gnulib-tool (func_emit_lib_Makefile_am, func_emit_tests_Makefile_am):
14043         Emit a pkgdata_DATA variable only if some snippets add contents to it.
14044         Reported by Martin Lambers <marlam@marlam.de>.
14045
14046 2006-08-21  Bruno Haible  <bruno@clisp.org>
14047
14048         * gnulib-tool (func_emit_lib_Makefile_am): If the snippets already
14049         specify an installation location, don't emit a noinst_LIBRARIES or
14050         noinst_LTLIBRARIES assignment.
14051
14052 2006-08-21  Bruno Haible  <bruno@clisp.org>
14053
14054         BeOS portability.
14055         * modules/mbchar (Include): Don't test HAVE_WCTYPE_H any more, since
14056         BeOS has mbrtowc() but no <wctype.h>.
14057
14058 2006-08-21  Bruno Haible  <bruno@clisp.org>
14059
14060         BeOS portability.
14061         * m4/mbchar.m4 (gl_MBCHAR): Compile mbchar.c also if <wctype.h> doesn't
14062         exist.
14063
14064 2006-08-21  Bruno Haible  <bruno@clisp.org>
14065
14066         BeOS portability.
14067         * lib/mbchar.h: Include <wctype.h> only if it exists.
14068
14069 2006-08-20  Paul Eggert  <eggert@cs.ucla.edu>
14070
14071         Remove files that are no longer needed by their respective modules.
14072         * m4/obstack.m4: Remove.
14073         * m4/strerror_r.m4: Remove.
14074         * m4/uint32_t.m4: Remove.
14075         * m4/uintptr_t.m4: Remove.
14076         * m4/ullong_max.m4: Remove.
14077         * m4/xstrtoimax.m4: Remove.
14078         * m4/xstrtoumax.m4: Remove.
14079
14080         * m4/cycle-check.m4 (gl_CYCLE_CHECK): Do not require
14081         gl_AC_TYPE_UINTMAX_T, gl_STRUCT_DEV_INO, or gl_SAME_INODE, since gnulib
14082         dependencies now capture this.
14083
14084         * m4/cycle-check.m4 (gl_CYCLE_CHECK):
14085         Do not use AC_LIBSOURCES, since gnulib modules now do this.
14086         * m4/fsusage.m4 (gl_FSUSAGE): Likewise.
14087         * m4/human.m4 (gl_HUMAN): Likewise.
14088         * m4/inttostr.m4 (gl_INTTOSTR): Likewise.
14089         * m4/xstrtol.m4 (gl_XSTRTOL): Likewise.
14090
14091         * m4/filemode.m4 (gl_FILEMODE): Require AC_STRUCT_ST_DM_MODE.
14092
14093         * m4/filemode.m4 (gl_PREREQ_FSUSAGE_EXTRA): Do not require
14094         gl_AC_TYPE_INTMAX_T or gl_AC_TYPE_UINTMAX_T, since we now require
14095         stdint.
14096         * m4/human.m4 (gl_HUMAN): Likewise.
14097         * m4/inttostr.m4 (gl_PREREQ_INTTOSTR): Likewise.
14098         * m4/mkstemp.m4 (gl_PREREQ_TEMPNAME): Likewise.
14099         * m4/strtoimax.m4 (gl_PREREQ_STRTOIMAX): Likewise.
14100         * m4/strtoumax.m4 (gl_PREREQ_STRTOUMAX): Likewise.
14101         * m4/xstrtol (gl_XSTRTOL): Likewise.
14102
14103         * m4/gethrxtime.m4 (gl_XTIME): gl_AC_TYPE_LONG_LONG ->
14104         AC_TYPE_LONG_LONG_INT.
14105         * m4/strtoimax.m4 (gl_PREREQ_STRTOIMAX): Likewise.
14106         * m4/strtoll.m4 (gl_FUNC_STRTOLL): Likewise.
14107         * m4/strtoull.m4 (gl_FUNC_STRTOULL): Likewise, for unsigned long.
14108         * m4/strtoumax.m4 (gl_PREREQ_STRTOUMAX): Likewise.
14109
14110         * m4/human.m4 (gl_HUMAN): Do not require AM_STDBOOL_H since we depend
14111         on stdbool.
14112
14113         * m4/xstrtol.m4 (gl_PREREQ_XSTRTOL_H, gl_PREREQ_XSTRTOL): Remove.
14114         (gl_PREREQ_XSTRTOUL): Remove.
14115
14116         * m4/ls-mntd-fs.m4 (gl_LIST_MOUNTED_FILE_SYSTEMS): Check for hasmntopt.
14117
14118         * m4/posixver.m4: Fix comment since head -1 now works even in POSIX
14119         mode.
14120
14121 2006-08-20  Paul Eggert  <eggert@cs.ucla.edu>
14122
14123         Add and change modules to make it easier for coreutils to use
14124         gnulib-tool.
14125         * modules/backupfile (Files): Remove m4/d-ino.m4.
14126         (Depends-on): Add d-ino.
14127         * modules/cycle-check (Depends-on): Add stdint.
14128         (lib_SOURCES): Add cycle-check.h.
14129         * modules/d-ino: New module.
14130         * modules/d-type: New module.
14131         * modules/error (Files): Remove m4/strerror_r.m4.
14132         * modules/filemode (Files): Add m4/st_dm_mode.m4.
14133         * modules/fsuage (Files): Remove m4/ulonglong.m4, m4/stdint_h.m4,
14134         m4/inttypes_h.m4, m4/uintmax_t.m4.
14135         (Depends-on): Add stdint.
14136         (lib_SOURCES): Add fsusage.h.
14137         * modules/getcwd (Files): Remove d-ino.m4.
14138         (Depends-on): Add d-ino.
14139         * modules/getndelim2 (Depends-on): Add stdint.
14140         * modules/glob (Files): Remove m4/d-type.m4.
14141         (Depends-on): Add d-type.
14142         * modules/host-os: New module.
14143         * modules/human (Files):  Remove m4/ulonglong.m4, m4/stdint_h.m4,
14144         m4/inttypes_h.m4, m4/uintmax_t.m4.
14145         * Depends-on: Add stdint.
14146         (lib_SOURCES): Add human.h.
14147         * modules/inttostr (Files): Remove m4/intmax_t.m4,
14148         m4/inttostr.m4, m4/inttypes_h.m4, m4/longlong.m4, m4/stdint_h.m4,
14149         m4/uintmax_t.m4, m4/ulonglong.m4.
14150         (Depends-on): Add stdint.
14151         (EXTRA_DIST): Add inttostr.h.
14152         * modules/lchmod: New module.
14153         * modules/link-follow: New module.
14154         * modules/mkdir-p (Files): Remove lib/lchmod.h, m4/lchmod.m4.
14155         (Depends-on): Add lchmod.
14156         * modules/mkstemp (Files): Remove m4/ulonglong.m4,
14157         m4/stdint_h.m4, m4/inttypes_h.m4, m4/uintmax_t.m4.
14158         (Depends-on): Add stdint.
14159         * modules/obstack (Files): Remove m4/inttypes_h.m4, m4/obstack.m4,
14160         m4/stdint_h.m4, m4/uintmax_t.m4, m4/ulonglong.m4.
14161         (Depends-on): Add stdint.
14162         (configure.ac): Change gl_OBSTACK to AC_FUNC_OBSTACK.
14163         * modules/perl: New module.
14164         * modules/regex (Depends-on): Add stdint.
14165         * modules/rmdir-errno: New module.
14166         * modules/strtoimax (Files): Remove m4/stdint_h.m4, m4/inttypes_h.m4,
14167         m4/intmax_t.m4.
14168         (Depends-on): Add stdint.
14169         * modules/strtoumax (Files): Remove m4/stdint_h.m4, m4/inttypes_h.m4,
14170         m4/uintmax_t.m4.
14171         (Depends-on): Add stdint.
14172         * modules/unlink-busy: New module.
14173         * modules/utimecmp (Depends-on): Add stdint.
14174         * modules/uptime: New module.
14175         * modules/winsz-ioctl: New module.
14176         * modules/winsz-termios: New module.
14177         * modules/xnanosleep (Depends-on): Add nanosleep.
14178         * modules/ullong_max: Remove.
14179         * modules/xstrtoimax (Files): Remove m4/xstrtoimax.m4.
14180         (configure.ac): Remove gl_XSTRTOIMAX; no action needed now.
14181         * modules/xstrtol (Files): Remove m4/ulonglong.m4, m4/longlong.m4,
14182         m4/stdint_h.m4, m4/inttypes_h.m4, m4/uintmax_t.m4, m4/intmax_t.m4.
14183         (Depends-on): Add inttypes.
14184         (lib_SOURCES): Add xstrtol.h.
14185         * modules/xstrtoumax (Files): Remove m4/xstrtoumax.m4.
14186         (configure.ac): Remove gl_XSTRTOUMAX; no action needed now.
14187         * MODULES.html.sh: Move 'assert' into the assert section.
14188         Move 'dummy' into the linking section.
14189         Remove ullong_max.
14190         Add section for compatibility checks for POSIX:2001 functions,
14191         and put d-ino, d-type, link-follow, rmdir-errno, unlink-busy,
14192         winsz-ioctl, and winsz-termios into it.
14193         Add lchmod.
14194         Add top-level Misc section and put host-os, perl, and uptime
14195         into it.
14196
14197 2006-08-20  Paul Eggert  <eggert@cs.ucla.edu>
14198
14199         * lib/cycle-check.h: Include <stdint.h> unconditionally, since we
14200         now assume the stdint module.  Do not include inttypes.h.
14201         * lib/fsusage.h: Likewise.
14202         * lib/getndelim2.c: Likewise.
14203         * lib/human.h: Likewise.
14204         * lib/inttostr.h: Likewise.
14205         * lib/obstack.c: Likewise.
14206         * lib/regex_internal.h: Likewise.
14207         * lib/tempname.c: Likewise.
14208         * lib/utimecmp.c: Likewise.
14209         * lib/xstrtol.h: Likewise.
14210
14211         * lib/stat_.h: Fix typo: HAVE_FUNC_LSTAT -> HAVE_LSTAT.
14212
14213         * lib/strtoimax.c: Adjust to macro name changes in Autoconf,
14214         e.g., HAVE_LONG_LONG -> HAVE_LONG_LONG_INT.
14215         * lib/xtime.h: Likewise.
14216
14217 2006-08-19  Paul Eggert  <eggert@cs.ucla.edu>
14218
14219         * modules/openat (Files): Add lib/fchmodat.c.
14220         Fixes problem reported by Jay Youngman.
14221
14222 2006-08-19  Paul Eggert  <eggert@cs.ucla.edu>
14223
14224         * lib/fchmodat.c: New file, from coreutils.  This was inadvertently
14225         omitted in the 2006-08-17 update.  Problem reported by Jay Youngman.
14226
14227 2006-08-18  Paul Eggert  <eggert@cs.ucla.edu>
14228             Bruno Haible  <bruno@clisp.org>
14229
14230         * m4/bison-i18n.m4 (BISON_I18N): Also handle the case where yacc exists
14231         and is a script that invokes bison. Tighten the code. Add comments.
14232
14233 2006-08-18  Jim Meyering  <jim@meyering.net>
14234
14235         * m4/gethrxtime.m4 (gl_PREREQ_GETHRXTIME): Also check for
14236         CLOCK_REALTIME, since gethrxtime may revert to using clock_gettime via
14237         gettime.c.  Gabor Z. Papp reported that gethrxtime-using programs
14238         failed to link due to unresolved clock_gettime on a linux-2.4.x system.
14239
14240 2006-08-18  Bruno Haible  <bruno@clisp.org>
14241
14242         * modules/bison-i18n: New file.
14243         * MODULES.html.sh (Internationalization functions): Add it.
14244
14245 2006-08-18  Bruno Haible  <bruno@clisp.org>
14246
14247         * m4/ls-mntd-fs.m4 (gl_LIST_MOUNTED_FILE_SYSTEMS): Also check for
14248         sys/statvfs.h. When getmntinfo was found, check its declaration and
14249         set either MOUNTED_GETMNTINFO or MOUNTED_GETMNTINFO2 depending on it.
14250
14251 2006-08-18  Bruno Haible  <bruno@clisp.org>
14252
14253         * m4/bison-i18n.m4: New file, from bison.
14254
14255 2006-08-18  Bruno Haible  <bruno@clisp.org>
14256
14257         * lib/mountlist.c [MOUNTED_GETMNTINFO2]: Include sys/statvfs.h.
14258         (ME_DUMMY): Treat "kernfs" as a dummy.
14259         (read_file_system_list) [MOUNTED_GETMNTINFO2]: Implement.
14260
14261 2006-08-17  Paul Eggert  <eggert@cs.ucla.edu>
14262
14263         Update from coreutils.
14264
14265         2006-08-15  Jim Meyering  <jim@meyering.net>
14266
14267         * m4/openat.m4 (gl_FUNC_OPENAT): Add at-func.c via AC_LIBSOURCES.
14268
14269         2006-01-17  Jim Meyering  <jim@meyering.net>
14270
14271         * m4/fts.m4 (gl_FUNC_FTS_CORE): Depend on gl_FUNC_OPENAT.
14272
14273         2006-01-11  Jim Meyering  <jim@meyering.net>
14274
14275         * m4/openat.m4 (gl_FUNC_OPENAT): Require and compile fchmodat.c.
14276         Check for the lchmod function.
14277
14278 2006-08-17  Paul Eggert  <eggert@cs.ucla.edu>
14279
14280         Update from coreutils.
14281
14282         * lib/__fpending.h: Add copyright notice.
14283         * lib/fprintftime.h: Likewise.
14284         * lib/savedir.c: Use (C) in copyright notice.
14285         * lib/savedir.h: Likewise.
14286
14287         2006-08-15  Jim Meyering  <jim@meyering.net>
14288
14289         * lib/at-func.c: New file, with the logic of all emulated at-functions.
14290         * lib/openat-priv.h: Include <errno.h> and define ENOSYS,
14291         in support of the EXPECTED_ERRNO macro.
14292         * lib/openat.c (fstatat, unlinkat, fchownat): Remove function
14293         definitions.  Instead, define the appropriate symbols and include
14294         "at-func.c".
14295         * lib/mkdirat.c (mkdirat): Likewise.
14296         * lib/fchmodat.c (fchmodat): Likewise.
14297         (ENOSYS): Remove definition.
14298         * lib/openat.c: Don't include <errno.h>, now that "openat-priv.h" does
14299         it.  Don't include "unistd--.h" -- it wasn't ever used.
14300
14301         2006-01-17  Jim Meyering  <jim@meyering.net>
14302
14303         Rewrite fts.c not to change the current working directory,
14304         by using openat, fstatat, fdopendir, etc..
14305
14306         * lib/fts.c [! _LIBC]: Include "openat.h" and "unistd--.h".
14307         (HAVE_OPENAT_SUPPORT): Define.
14308         [_LIBC] (fchdir): Don't undef or define; no longer used.
14309         (FCHDIR): Define in terms of cwd_advance_fd rather than fchdir.
14310         Now, this `function' always succeeds, and consumes its file descriptor
14311         parameter -- so callers must not close such FDs.  Update callers.
14312         (diropen_fd, opendirat, cwd_advance_fd): New functions.
14313         (diropen): Add parameter, SP.  Adjust all callers.
14314         Implement using diropen_fd, rather than open.
14315         (fts_open): Initialize new member, fts_cwd_fd.
14316         Remove fts_rft-setting code.
14317         (fts_close): Close fts_cwd_fd, if necessary.
14318         (__opendir2): Define in terms of opendir or opendirat,
14319         depending on whether the FST_NOCHDIR flag is set.
14320         (fts_build): Since fts_safe_changedir consumes its FD, and since
14321         this code must do `closedir(dirp)', dup the dirfd(dirp) argument,
14322         and close the dup'd file descriptor upon failure.
14323         (fts_stat): Use fstatat(...AT_SYMLINK_NOFOLLOW) in place of lstat.
14324         (fts_safe_changedir): Tweak semantics to reflect that this function
14325         now calls cwd_advance_fd and hence consumes its FD argument.
14326         * lib/fts_.h [struct FTS] (fts_cwd_fd): New member.
14327         [struct FTS] (fts_rft): Remove now-unused member.
14328         [struct FTS] (fts_cycle.state): Improve comment.
14329
14330         * lib/openat.c (openat_needs_fchdir): New function.
14331         * lib/openat.h (openat_needs_fchdir): Declare it.
14332
14333 2006-08-16  Paul Eggert  <eggert@cs.ucla.edu>
14334
14335         * lib/memcoll.c (memcoll): Set errno = 0 in the shortcut case, too.
14336         Problem and fix reported by Pádraig Brady in
14337         <http://lists.gnu.org/archive/html/bug-coreutils/2006-08/msg00099.html>.
14338
14339 2006-08-15  Paul Eggert  <eggert@cs.ucla.edu>
14340
14341         * modules/cycle-check (configure.ac): Add gl_CYCLE_CHECK.
14342
14343 2006-08-15  Paul Eggert  <eggert@cs.ucla.edu>
14344
14345         * lib/memcoll.c (memcoll): Optimize for the common case where the
14346         arguments are bytewise equal.
14347
14348 2006-08-15  Paul Eggert  <eggert@cs.ucla.edu>
14349
14350         * doc/regexprops-generic.texi: Add a copyright notice.
14351
14352 2006-08-15  Bruno Haible  <bruno@clisp.org>
14353
14354         * modules/tmpdir (License): Change to LGPL.
14355
14356 2006-08-15  Bruno Haible  <bruno@clisp.org>
14357
14358         * gnulib-tool (func_all_modules, func_verify_module): COPYING is not a
14359         module.
14360
14361 2006-08-14  Simon Josefsson  <jas@extundo.com>
14362
14363         * config/srclist.txt: Add gnupload.
14364
14365 2006-08-14  Paul Eggert  <eggert@cs.ucla.edu>
14366
14367         Change copyright notice from LGPL 2 to GPL 2, since that's the
14368         standard form used in the gnulib repository.
14369         * tests/test-lock.c: Likewise.
14370         * tests/test-stdint.c: Likewise.
14371         * tests/test-tls.c: Likewise.
14372
14373         * users.txt: Add bison, diffutils, libprelude, prelude-lml,
14374         prelude-manager.  User shorter URLs for GNU projects, without '?'.
14375         Add copyright notice.
14376
14377         * check-module: Add copyright notice.  Output a copyright
14378         notice if "--version" is specified.
14379         * modules/COPYING: New file.
14380         * tests/test-getaddrinfo.c: Add copyright notice.
14381         * tests/test-verify.c: Likewise.
14382
14383 2006-08-14  Paul Eggert  <eggert@cs.ucla.edu>
14384
14385         Change copyright notice from LGPL 2 to GPL 2, since that's the
14386         standard form used in the gnulib repository.
14387         * lib/lock.c: LGPL -> GPL.
14388         * lib/lock.h: Likewise.
14389         * lib/strnlen1.c: Likewise.
14390         * lib/strnlen1.h: Likewise.
14391         * lib/tls.c: Likewise.
14392         * lib/tls.h: Likewise.
14393         * lib/tmpdir.c: Likewise.
14394
14395         * lib/TODO: Remove; this belongs only in coreutils.
14396
14397 2006-08-14  Paul Eggert  <eggert@cs.ucla.edu>
14398
14399         Add copyright notices to long-enough files that lack them, since
14400         otherwise the files aren't clearly free.  Use the same notice that
14401         getdate.texi already uses.
14402         * doc/alloca-opt.texi: Add copyright notice.
14403         * doc/alloca.texi: Likewise.
14404         * doc/ctime.texi: Likewise.
14405         * doc/functions.texi: Likewise.
14406         * doc/gcd.texi: Likewise.
14407         * doc/gnulib-tool.texi: Likewise.
14408         * doc/inet_ntoa.texi: Likewise.
14409         * doc/visibility.texi: Likewise.
14410
14411         * doc/getdate.texi: Update FDL version from 1.1 to 1.2.
14412         * doc/quote.texi: Add copyright notice.
14413
14414         * doc/solaris-versions: Add SunOS 5.10, SunOS 1.x, SunOS 4.0, SunOS
14415         4.0.x, SunOS 4.1.1.1, SunOS 4.1.1_U1, SunOS 4.1.3B.  SunOS 4.1.3
14416         was Solaris 1.1A.  Remove space before B in Solaris 1.1.1B.
14417         Mention SunOS 5.11.  Mention that everything before SunOS 5.7
14418         is now obsolete, and give a pointer to the Sun list.
14419         Add copyright notice.
14420
14421 2006-08-14  Paul Eggert  <eggert@cs.ucla.edu>
14422
14423         * config/srclistvars.sh: Add copyright notice.
14424
14425 2006-08-14  Eric Blake  <ebb9@byu.net>
14426
14427         Import the following change from libc:
14428
14429         2006-08-12  Ulrich Drepper  <drepper@redhat.com>
14430
14431         Upstream bug 2997.
14432         * lib/misc/error.c: Add space between program name and message if file
14433         name is missing.
14434
14435 2006-08-12  Karl Berry  <karl@gnu.org>
14436
14437         * config/srclist.txt (ssize_t.m4, sig_atomic_t.m4, signalblocking.m4):
14438         remove, these originate in gnulib now.
14439
14440 2006-08-11  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
14441
14442         * doc/Makefile (standards.info standards.html standards.dvi):
14443         Also depend on make-stds.texi.
14444
14445 2006-08-11  Paul Eggert  <eggert@cs.ucla.edu>
14446
14447         * lib/pipe-safer.c (pipe_safer): Fix misspelling: HAVE_FUNC_PIPE ->
14448         HAVE_PIPE.  Fix a file descriptor leak when fd_safer fails.
14449
14450         * lib/regex_internal.c (re_string_skip_chars): Don't assume WEOF fits
14451         in wchar_t.  Problem reported by Eric Blake.
14452
14453         * lib/snprintf.c (snprintf): memcpy LEN bytes, not SIZE - 1, when
14454         LEN is smaller than SIZE.  Suggested by Bruno Haible.
14455         Also, help the compiler to keep LEN in a register.
14456
14457 2006-08-11  Eric Blake  <ebb9@byu.net>
14458
14459         * users.txt: Sort.  Add tar.
14460
14461 2006-08-11  Bruno Haible  <bruno@clisp.org>
14462
14463         * users.txt: New file.
14464
14465 2006-08-11  Bruno Haible  <bruno@clisp.org>
14466
14467         * m4/wcwidth.m4 (gl_FUNC_WCWIDTH): Include <stdio.h> and <time.h>
14468         before <wchar.h>. Needed for OSF/1 and BSD/OS.
14469
14470 2006-08-10  Paul Eggert  <eggert@cs.ucla.edu>
14471
14472         * modules/snprintf (Depends-on): Remove minmax.
14473         (Maintainer): Add self and Bruno.
14474
14475 2006-08-10  Paul Eggert  <eggert@cs.ucla.edu>
14476
14477         * lib/.cppi-disable: Add snprintf.h, socket_.h.
14478         * lib/snprintf.c: Include <errno.h> and <limits.h>.
14479         (EOVERFLOW): Define if the system does not.
14480         Do not include "minmax.h"; it wasn't used.
14481         (snprintf): Don't assume size_t promotes to an unsigned type.
14482         Fix bug when generated string was too long for the buffer: the
14483         buffer's contents are supposed to be the initial prefix of the
14484         output.  Don't assume vasnprintf returns EOVERFLOW if the size
14485         exceeds INT_MAX; do the check ourselves.
14486
14487         Import the following changes from libc:
14488
14489         2006-06-02  Jakub Jelinek  <jakub@redhat.com>
14490
14491         * lib/posix/regex_internal.c (re_string_skip_chars): If no character
14492         has been converted at all, set *last_wc to WEOF.  If mbrtowc failed,
14493         set wc to the byte which couldn't be converted.
14494         (re_string_reconstruct): Don't clear valid_raw_len before calling
14495         re_string_skip_chars.  If wc is WEOF after re_string_skip_chars, set
14496         tip_context using re_string_context_at.
14497
14498         2006-05-02  Ulrich Drepper  <drepper@redhat.com>
14499
14500         * lib/posix/regex.h: g++ still cannot handled [restrict].
14501
14502         2006-04-21  Ulrich Drepper  <drepper@redhat.com>
14503
14504         * lib/posix/regex.h: Remove special handling for VMS.
14505
14506 2006-08-10  Jim Meyering  <jim@meyering.net>
14507
14508         * modules/same-inode: New module.
14509         * modules/dev-ino: New module.
14510         * modules/cycle-check: Depend on these modules, rather than simply
14511         including their .h files.
14512         (Makefile.am): Don't list cycle-check.[ch] here, now that they're
14513         required via m4/cycle-check.m4.
14514         * modules/same: Depend on new same-inode module, rather than
14515         including same-inode.h.
14516         * modules/chdir-safer: New file.
14517
14518         * modules/chown (Depends-on): Add stat-macros.
14519
14520 2006-08-10  Jim Meyering  <jim@meyering.net>
14521
14522         * m4/cycle-check.m4: New file.
14523         Require gl_STRUCT_DEV_INO and gl_SAME_INODE.
14524         * m4/dev-ino.m4, m4/same-inode.m4: New files.
14525
14526 2006-08-10  Eric Blake  <ebb9@byu.net>
14527
14528         * modules/verror (Depends-on): Remove bogus gl_VERROR that snuck
14529         in from original proposal.
14530
14531 2006-08-10  Eric Blake  <ebb9@byu.net>
14532         and Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
14533
14534         * gnulib-tool (func_import): Detect unexpanded macros in gnulib
14535         namespace.
14536
14537 2006-08-10  Bruno Haible  <bruno@clisp.org>
14538
14539         * gnulib-tool (func_create_testdir): Detect unexpanded macros here
14540         as well.
14541
14542 2006-08-09  Paul Eggert  <eggert@cs.ucla.edu>
14543
14544         Sync from coreutils.
14545
14546         2006-07-19  Mike Frysinger  <vapier@gentoo.org>
14547
14548         * lib/mountlist.c [ME_REMOTE]: Filter out cifs.
14549         Reported by Toralf Förster in <http://bugs.gentoo.org/141012>.
14550
14551 2006-08-09  Paul Eggert  <eggert@cs.ucla.edu>
14552
14553         * modules/restrict: Remove; no longer needed now that we assume
14554         Autoconf 2.59 or later.
14555         * MODULES.html.sh: Remove 'restrict'.
14556         * modules/argp (Depends-on): Remove 'restrict'.
14557         * modules/base64 (Depends-on): Likewise.
14558         * modules/gc (Depends-on): Likewise.
14559         * modules/getaddrinfo (Depends-on): Likewise.
14560         * modules/glob (Depends-on): Likewise.
14561         * modules/inet_ntop (Depends-on): Likewise.
14562         * modules/inet_pton (Depends-on): Likewise.
14563         * modules/memxor (Depends-on): Likewise.
14564         * modules/regex (Depends-on): Likewise.
14565         * modules/strtok_r (Depends-on): Likewise.
14566         * modules/time_r (Depends-on): Likewise.
14567
14568 2006-08-09  Paul Eggert  <eggert@cs.ucla.edu>
14569
14570         * m4/argp.m4 (gl_ARGP): Require AC_C_RESTRICT.
14571         * m4/gc.m4 (gl_PREREQ_GC): Likewise.
14572         * m4/glob.m4 (gl_PREREQ_GLOB): Likewise.
14573         * m4/inet_ntop.m4 (gl_PREREQ_INET_NTOP): Likewise.
14574         * m4/inet_pton.m4 (gl_PREREQ_INET_PTON): Likewise.
14575         * m4/memxor.m4 (gl_MEMXOR): Likewise.
14576         * m4/restrict.m4: Remove; no longer needed.  All remaining uses of
14577         gl_C_RESTRICT replaced by AC_C_RESTRICT.
14578
14579         Merge from coreutils.
14580         * m4/regex.m4 (gl_PREREQ_REGEX): Require AC_C_RESTRICT, not
14581         gl_C_RESTRICT, now that we assume Autoconf 2.59 or later.
14582         * m4/strtok_r.m4 (gl_FUNC_STRTOK_R): Likewise.
14583         * m4/time_r.m4 (gl_TIME_R): Likewise.
14584
14585 2006-08-09  Karl Berry  <karl@gnu.org>
14586
14587         * config/srclist.txt: no more gettext-tools, per Bruno.
14588
14589 2006-08-08  Eric Blake  <ebb9@byu.net>
14590
14591         * modules/verror: New module.
14592         * MODULES.html.sh: Document it.
14593
14594 2006-08-08  Eric Blake  <ebb9@byu.net>
14595
14596         * lib/verror.h, lib/verror.c: New files.
14597
14598 2006-08-08  Eric Blake  <ebb9@byu.net>
14599
14600         * lib/verror.c (verror_at_line): Work around glibc bug 2997, so that
14601         verror_at_line output complies with GNU Coding Standards even when
14602         file is NULL.
14603
14604 2006-08-07  Bruno Haible  <bruno@clisp.org>
14605
14606         * lib/allocsa.h (sa_alignof) [_AIX]: Also consider 'long long' in newer
14607         versions of AIX.
14608         Reported by Ralf Wildenhues.
14609
14610 2006-08-07  Bruno Haible  <bruno@clisp.org>
14611
14612         * gnulib-tool (func_create_testdir): Wrap the set of autoconf snippets
14613         in an AC_DEFUN. Needed so that the autoconf snippets can use
14614         AC_REQUIRE.
14615
14616 2006-08-06  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
14617
14618         * gnulib-tool (func_emit_lib_Makefile_am, func_emit_tests_Makefile_am):
14619         Initialize pkgdata_DATA.
14620         * modules/javaversion (Makefile.am): Add to pkgdata_DATA, rather than
14621         overriding it.
14622
14623 2006-08-06  Eric Blake  <ebb9@byu.net>
14624
14625         * lib/error.h: Fold in some upstream changes from glibc.
14626         * lib/error.c: Likewise.
14627
14628 2006-08-04  Bruno Haible  <bruno@clisp.org>
14629
14630         * gnulib-tool (func_emit_lib_Makefile_am, func_emit_tests_Makefile_am):
14631         Make the mostlyclean-local rule depend on mostlyclean-generic.
14632         Reported by Jim Meyering. Solution suggested by Ralf Wildenhues.
14633
14634 2006-07-31  Bruno Haible  <bruno@clisp.org>
14635
14636         * m4/localcharset.m4 (gl_LOCALCHARSET): Remove tests for <stddef.h>,
14637         <stdlib.h>, <string.h>.
14638
14639 2006-07-30  Bruno Haible  <bruno@clisp.org>
14640
14641         * modules/readlink (License): Change to LGPL.
14642
14643 2006-07-30  Bruno Haible  <bruno@clisp.org>
14644
14645         * modules/javaversion (Makefile.am): Distribute javaversion.java and
14646         javaversion.class. Also install javaversion.class in $(pkgdatadir) and
14647         set PKGDATADIR to point to it.
14648
14649 2006-07-30  Bruno Haible  <bruno@clisp.org>
14650
14651         * modules/csharpexec (configure.ac): Comment out macro invocation.
14652         * modules/javaexec (configure.ac): Likewise.
14653         * modules/javacomp-script (configure.ac): Likewise.
14654
14655         * modules/csharpcomp-script (configure.ac): Use AC_REQUIRE.
14656
14657 2006-07-30  Bruno Haible  <bruno@clisp.org>
14658
14659         * modules/clean-temp (Depends-on): Add linkedhash-list, remove
14660         linked-list.
14661
14662 2006-07-30  Bruno Haible  <bruno@clisp.org>
14663
14664         * m4/wcwidth.m4 (gl_FUNC_WCWIDTH): Assume <string.h> exists.
14665
14666 2006-07-30  Bruno Haible  <bruno@clisp.org>
14667
14668         * gnulib-tool (func_emit_lib_Makefile_am, func_emit_tests_Makefile_am):
14669         Initialize MOSTLYCLEANFILES to core and *.stackdump, so that core dumps
14670         get removed.
14671
14672 2006-07-29  Bruno Haible  <bruno@clisp.org>
14673
14674         Make it possible for gnulib-tool to work with locally modified or
14675         augmented gnulib repositories.
14676         * gnulib-tool (func_usage): Document --local-dir option.
14677         (local_gnulib_dir): New variable.
14678         Handle --local-dir option.
14679         (func_lookup_file): New function.
14680         (func_all_modules, func_verify_module): Look also in $local_gnulib_dir.
14681         (func_get_description, func_get_filelist, func_get_description,
14682         func_get_filelist, func_get_dependencies, func_get_autoconf_snippet,
14683         func_get_automake_snippet, func_get_include_directive,
14684         func_get_license, func_get_maintainer): Use func_lookup_file.
14685         (func_import, func_create_testdir): Use func_lookup_file.
14686
14687 2006-07-29  Bruno Haible  <bruno@clisp.org>
14688
14689         * modules/setenv (Depends-on): Add unistd.
14690
14691 2006-07-29  Bruno Haible  <bruno@clisp.org>
14692
14693         * lib/setenv.c: Undo unintended modification done on 2006-02-27.
14694
14695 2006-07-29  Bruno Haible  <bruno@clisp.org>
14696
14697         * lib/localcharset.c: Assume <stddef.h>, <stdlib.h>, <string.h> exist.
14698
14699 2006-07-29  Bruno Haible  <bruno@clisp.org>
14700
14701         * gnulib-tool (import, update): If there is no Makefile.am, look at
14702         aclocal.m4, instead of bailing out.
14703
14704 2006-07-29  Bruno Haible  <bruno@clisp.org>
14705
14706         * gnulib-tool (func_usage): Revert most of the 2006-07-15 change.
14707         Categorize the options by when they are useful.
14708
14709 2006-07-29  Bruno Haible  <bruno@clisp.org>
14710
14711         * gnulib-tool (func_usage): Document option --no-libtool.
14712         Handle option --no-libtool.
14713         (func_emit_lib_Makefile_am, func_emit_tests_Makefile_am): Update
14714         for changed semantics of $libtool variable.
14715         (func_import): Likewise. If libtool is not used, show this through
14716         an option --no-libtool.
14717         (func_create_testdir): Update.
14718
14719 2006-07-29  Bruno Haible  <bruno@clisp.org>
14720
14721         * gnulib-tool (func_import): Extend error message about missing
14722         --doc-base.
14723
14724 2006-07-29  Bruno Haible  <bruno@clisp.org>
14725
14726         * gnulib-tool (func_import): Don't create the $docbase directory if
14727         there is no file to store there.
14728
14729 2006-07-29  Bruno Haible  <bruno@clisp.org>
14730
14731         * gnulib-tool (autoconf_minversion): If a --dir option is given and
14732         relevant, look for configure.ac there, not in the current directory.
14733         Also use a simple search for AC_PREREQ, not "autoconf --trace".
14734
14735 2006-07-29  Bruno Haible  <bruno@clisp.org>
14736
14737         * gnulib-tool (SORT): New variable.
14738         (func_usage): Undocument --assume-autoconf option.
14739         Remove --assume-autoconf option handling.
14740         (autoconf_minversion): Determine from the contents of configure.ac.
14741         (func_import): Remove autoconf_minversion handling.
14742         Suggested by Eric Blake.
14743
14744 2006-07-29  Bruno Haible  <bruno@clisp.org>
14745
14746         * doc/gnulib-tool.texi (gl_LIBTOOL): Mention --no-libtool option.
14747
14748 2006-07-29  Bruno Haible  <bruno@clisp.org>
14749
14750         * config/srclist.txt (*setenv.[ch]): Remove rules.
14751
14752 2006-07-28  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
14753
14754         * m4/inet_pton.m4, inet_ntop.m4: Check for netinet/in.h too.
14755
14756 2006-07-28  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
14757
14758         * lib/inet_ntop.h, inet_pton.h: Need to include netinet/in.h before
14759         arpa/inet.h.
14760
14761 2006-07-28  Simon Josefsson  <jas@extundo.com>
14762
14763         * modules/inet_ntop (Depends-on): Depend on arpa_inet.
14764         * modules/inet_pton (Depends-on): Likewise.
14765
14766 2006-07-28  Simon Josefsson  <jas@extundo.com>
14767
14768         * m4/netinet_in_h.m4: New file.
14769
14770 2006-07-28  Simon Josefsson  <jas@extundo.com>
14771
14772         * lib/inet_ntop.h, inet_pton.h: No need to guard netinet/in.h
14773         #include's.
14774
14775 2006-07-28  Simon Josefsson  <jas@extundo.com>
14776
14777         * lib/inet_ntop.h, inet_pton.h: No need to guard arpa/inet.h
14778         #include's.
14779
14780 2006-07-28  Paul Eggert  <eggert@cs.ucla.edu>
14781
14782         * lib/modechange.c (mode_compile): Numeric modes now affect setuid and
14783         setgid on directories only if they set these bits.
14784         * lib/modechange.h: Remove obsolete comment about masks.
14785
14786 2006-07-28  Eric Blake  <ebb9@byu.net>
14787
14788         * lib/regex_internal.h (struct re_dfa_t) [!_LIBC]: Avoid invalid C89
14789         macro expansion.
14790
14791 2006-07-28  Bruno Haible  <bruno@clisp.org>
14792
14793         * lib/inet_ntop.h, inet_pton.h: Use #if HAVE* instead of #ifdef HAVE*.
14794
14795 2006-07-28  Bruno Haible  <bruno@clisp.org>
14796
14797         * m4/mbchar.m4 (gl_MBCHAR): Also test for iswcntrl.
14798
14799 2006-07-28  Bruno Haible  <bruno@clisp.org>
14800
14801         * lib/mbchar.h (iswalnum, iswalpha, iswblank, iswcntrl, iswdigit,
14802         iswgraph, iswlower, iswprint, iswpunct, iswspace, iswupper, iswxdigit):
14803         Define fallbacks.
14804         Avoids link error on FreeBSD 4.x.
14805         Reported by Yoann Vandoorselaere <yoann.v@prelude-ids.com>.
14806
14807         * lib/wcwidth.h (iswprint): Assume an ASCII compatible wide character
14808         encoding.
14809         * lib/mbswidth.c (iswcntrl): Likewise.
14810
14811 2006-07-27  Bruno Haible  <bruno@clisp.org>
14812
14813         * m4/stdint.m4 (gl_STDINT_H): Define __STDC_CONSTANT_MACROS during the
14814         test.
14815
14816 2006-07-27  Bruno Haible  <bruno@clisp.org>
14817
14818         * lib/stdint_.h (INT*_C, UINT*_C) [C++]: Define these if
14819         __STDC_CONSTANT_MACROS is defined, not if __STDC_LIMIT_MACROS is
14820         defined.
14821
14822 2006-07-26  Eric Blake  <ebb9@byu.net>
14823
14824         * m4/unistd-safer.m4 (gl_UNISTD_SAFER): Check for missing pipe.
14825
14826 2006-07-26  Eric Blake  <ebb9@byu.net>
14827
14828         * lib/mkstemp-safer.c [! HAVE_MKSTEMP]: Add prototype for platforms
14829         like mingw that lack mkstemp.
14830         * lib/pipe-safer.c (pipe_safer) [!HAVE_FUNC_PIPE]: Provide fallback to
14831         avoid compilation warning on mingw.
14832
14833 2006-07-26  Bruno Haible  <bruno@clisp.org>
14834
14835         * m4/stdint.m4 (gl_STDINT_H): Also verify the existence of the macros
14836         INT*_MIN, INT_LEAST*_MAX, INT_LEAST*_MIN, UINT_LEAST*_MAX,
14837         INT_FAST*_MIN, INTPTR_MIN.
14838
14839 2006-07-25  Bruno Haible  <bruno@clisp.org>
14840
14841         * modules/version-etc (Depends-on): Add stdarg.
14842
14843 2006-07-25  Bruno Haible  <bruno@clisp.org>
14844
14845         * m4/stdint.m4 (gl_INTEGER_TYPE_SUFFIX): Avoid 'eval' in front of
14846         complex commands.
14847
14848 2006-07-25  Bruno Haible  <bruno@clisp.org>
14849
14850         * lib/version-etc.c (version_etc_va): Use va_copy, assumed to be
14851         defined in <stdarg.h> or config.h.
14852
14853 2006-07-24  Paul Eggert  <eggert@cs.ucla.edu>
14854
14855         * m4/stdio-safer.m4 (gl_FOPEN_SAFER, gl_TMPFILE_SAFER): New macros.
14856         (gl_STDIO_SAFER): Remove.
14857
14858 2006-07-24  Paul Eggert  <eggert@cs.ucla.edu>
14859
14860         * MODULES.html.sh (File stream based Input/Output):
14861         Add fopen-safer, tmpfile-safer; remove stdio-safer.
14862         * modules/getusershell (Depends-on): Change stdio-safer to fopen-safer.
14863         * modules/fopen-safer, modules/tmpfile-safer: New files.
14864         * modules/stdio-safer: Remove.
14865
14866 2006-07-24  Bruno Haible  <bruno@clisp.org>
14867
14868         * modules/tmpdir: New file.
14869         * MODULES.html.sh (File system functions): Add it.
14870
14871 2006-07-24  Bruno Haible  <bruno@clisp.org>
14872
14873         * modules/javacomp (Depends-on): Add unistd, javaversion, binary-io,
14874         getline, pathname, fwriteerror, clean-temp, xvasprintf, strstr.
14875
14876 2006-07-24  Bruno Haible  <bruno@clisp.org>
14877
14878         * modules/clean-temp: New file.
14879
14880 2006-07-24  Bruno Haible  <bruno@clisp.org>
14881
14882         * m4/tmpdir.m4: New file, from GNU gettext.
14883
14884 2006-07-24  Bruno Haible  <bruno@clisp.org>
14885
14886         * lib/tmpdir.h: New file, from GNU gettext.
14887         * lib/tmpdir.c: New file, from GNU gettext.
14888
14889 2006-07-24  Bruno Haible  <bruno@clisp.org>
14890
14891         * lib/clean-temp.h: New file, from GNU gettext.
14892         * lib/clean-temp.c: New file, from GNU gettext.
14893
14894 2006-07-23  Eric Blake  <ebb9@byu.net>
14895
14896         * modules/stdio-safer (Files): Add tmpfile-safer.c.
14897         (Depends-on): Add binary-io.
14898
14899 2006-07-23  Eric Blake  <ebb9@byu.net>
14900
14901         * m4/stdio-safer.m4 (gl_STDIO_SAFER): Add tmpfile-safer.c.
14902
14903 2006-07-23  Eric Blake  <ebb9@byu.net>
14904
14905         * lib/tmpfile-safer.c: New file.
14906         * lib/stdio-safer.h (fopen_safer): Add prototype.
14907         * lib/stdio--.h (tmpfile): Make safer.
14908
14909 2006-07-23  Bruno Haible  <bruno@clisp.org>
14910
14911         * lib/gl_anylinked_list2.h (ASYNCSAFE): New macro.
14912         (gl_linked_add_first, gl_linked_add_last, gl_linked_add_before,
14913         gl_linked_add_after, gl_linked_add_at, gl_linked_remove_node,
14914         gl_linked_remove_at): Use it.
14915
14916 2006-07-22  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
14917         and Simon Josefsson <jas@extundo.com>
14918
14919         * lib/getaddrinfo.h (AI_PASSIVE): Make sure it is defined.
14920
14921         * lib/getaddrinfo.c (getaddrinfo): Support AI_PASSIVE.
14922
14923 2006-07-22  Paul Eggert  <eggert@cs.ucla.edu>
14924
14925         * modules/close-stream: New file.
14926         * modules/closeout (Description): Make it clear that it exits
14927         with a diagnostic on error.
14928         (Depends-on): Add close-stream.  Remove fpending, stdbool.
14929         * MODULES.html.sh (File stream based Input/Output): Add close-stream.
14930
14931 2006-07-22  Paul Eggert  <eggert@cs.ucla.edu>
14932
14933         * m4/close-stream.m4: New file.
14934
14935 2006-07-22  Paul Eggert  <eggert@cs.ucla.edu>
14936
14937         * lib/close-stream.c, lib/close-stream.h: New files.
14938
14939 2006-07-22  Bruno Haible  <bruno@clisp.org>
14940
14941         Merge from GNU gettext 0.15.
14942
14943         2006-05-01  Bruno Haible  <bruno@clisp.org>
14944
14945                 * build-aux/javacomp.sh.in: Update for changed javacomp.m4.
14946
14947         2006-07-22  Bruno Haible  <bruno@clisp.org>
14948
14949                 * modules/javaversion: New file.
14950                 * MODULES.html.sh (Java): Add javaversion.
14951
14952         2006-03-12  Bruno Haible  <bruno@clisp.org>
14953
14954                 * build-aux/javaexec.sh.in: Update for changed javaexec.m4.
14955
14956         2005-12-04  Bruno Haible  <bruno@clisp.org>
14957
14958                 * build-aux/csharpexec.sh.in: Add support for 'clix' launcher
14959                 (untested).
14960
14961         2006-06-21  Bruno Haible  <bruno@clisp.org>
14962
14963                 Avoid warnings from recent versions of mcs.
14964                 * build-aux/csharpcomp.sh.in (options_mcs): Don't use options
14965                 -o, -L, -r any more. Use options documented since mcs-1.0
14966                 instead. Similarly for -g.
14967
14968         2005-12-04  Bruno Haible  <bruno@clisp.org>
14969
14970                 * build-aux/csharpcomp.sh.in: Suffix for resources is
14971                 .resources, not .resource.
14972
14973         2005-07-09  Bruno Haible  <bruno@clisp.org>
14974
14975                 * build-aux/csharpcomp.sh.in (options_csc): For -l option,
14976                 add a .dll suffix.
14977                 Reported by Mark Junker <mjscod@gmx.de>.
14978
14979         2006-07-22  Bruno Haible  <bruno@clisp.org>
14980
14981                 * modules/gettext: Upgrade to gettext-0.15.
14982                 (Files): Remove m4/isc-posix.m4. Add m4/lock.m4,
14983                 m4/visibility.m4.
14984                 Replace m4/inttypes.m4 with m4/inttypes-h.m4.
14985
14986 2006-07-22  Bruno Haible  <bruno@clisp.org>
14987
14988         Merge from GNU gettext 0.15.
14989
14990         2006-03-25  Bruno Haible  <bruno@clisp.org>
14991
14992                 * lib-link.m4 (AC_LIB_LINKFLAGS_FROM_LIBS): New macro.
14993
14994         2006-07-21  Bruno Haible  <bruno@clisp.org>
14995
14996                 * javacomp.m4 (gt_JAVACOMP): Convert target_version "null" to
14997                 "1.1".
14998
14999         2006-05-09  Bruno Haible  <bruno@clisp.org>
15000
15001                 * javacomp.m4 (gt_JAVACOMP): On Cygwin, set
15002                 CLASSPATH_SEPARATOR to a semicolon. Use CLASSPATH_SEPARATOR
15003                 for the conftestver execution.
15004
15005         2006-05-01  Bruno Haible  <bruno@clisp.org>
15006
15007                 * javacomp.m4 (gt_JAVACOMP): Accept a source-version and an
15008                 optional target-version argument. Verify that the compiler
15009                 groks source of the specified source-version, or add -source
15010                 option as necessary. Verify that the compiler produces
15011                 bytecode in the specified target-version, or add -target and
15012                 -source options as necessary. Make the result of the test
15013                 available as variable CONF_JAVAC. Also log error output in
15014                 config.log.
15015
15016         2006-03-11  Bruno Haible  <bruno@clisp.org>
15017
15018                 * javacomp.m4 (gt_JAVACOMP): Treat gcj-4.x like gcj-3.x.
15019
15020         2006-05-09  Bruno Haible  <bruno@clisp.org>
15021
15022                 * javaexec.m4 (gt_JAVAEXEC): On Cygwin, set
15023                 CLASSPATH_SEPARATOR to a semicolon.
15024
15025         2006-03-12  Bruno Haible  <bruno@clisp.org>
15026
15027                 * javaexec.m4 (gt_JAVAEXEC): Make the result of the test
15028                 available as variable CONF_JAVA, for subsequent autoconf
15029                 tests. Also log error output in config.log.
15030
15031         2006-07-19  Bruno Haible  <bruno@clisp.org>
15032
15033                 * getline.m4 (AM_FUNC_GETLINE): When cross-compiling, assume
15034                 that getline works on glibc2 systems. Needed to avoid trouble
15035                 in relocatable.c.
15036                 Reported by Nils Magnus Larsgard <nmlarsgaard@atmel.no>.
15037
15038         2005-12-04  Bruno Haible  <bruno@clisp.org>
15039
15040                 * csharpexec.m4 (gt_CSHARPEXEC): Add support for 'clix'
15041                 launcher (untested).
15042
15043         2005-12-04  Bruno Haible  <bruno@clisp.org>
15044
15045                 * csharpcomp.m4 (gt_CSHARPCOMP): Also set CSHARPCOMPFLAGS.
15046
15047         2006-07-22  Bruno Haible  <bruno@clisp.org>
15048
15049                 * gettext.m4: Update from GNU gettext-0.15.
15050                 * nls.m4: Likewise.
15051                 * po.m4: Likewise.
15052                 * inttypes-pri.m4: Likewise.
15053                 * inttypes-h.m4: Renamed from inttypes.m4.
15054                 (gl_HEADER_INTTYPES_H): Renamed from gt_HEADER_INTTYPES_H.
15055
15056 2006-07-22  Bruno Haible  <bruno@clisp.org>
15057
15058         Merge from GNU gettext 0.15.
15059
15060         2005-07-05  Bruno Haible  <bruno@clisp.org>
15061
15062                 * printf-args.c (printf_fetchargs): Work around broken
15063                 definition of wint_t on mingw.
15064
15065         2005-02-12  Bruno Haible  <bruno@clisp.org>
15066
15067                 * xallocsa.h: Add extern "C" for C++.
15068
15069         2006-05-17  Bruno Haible  <bruno@clisp.org>
15070
15071                 Cygwin portability.
15072                 * progreloc.c (WIN32_NATIVE): Renamed from WIN32.
15073
15074         2006-04-30  Bruno Haible  <bruno@clisp.org>
15075
15076                 * progreloc.c: Include <mach-o/dyld.h> if available.
15077                 (find_executable): Use _NSGetExecutablePath when possible.
15078
15079         2006-05-06  Charles Wilson  <cygwin@cwilson.fastmail.fm>
15080
15081                 * progreloc.c (maybe_executable) [CYGWIN]: Use the access()
15082                 function.
15083
15084         2005-12-29  Bruno Haible  <bruno@clisp.org>
15085
15086                 * progreloc.c (set_program_name_and_installdir): Fix
15087                 compilation error.
15088
15089         2005-12-04  Bruno Haible  <bruno@clisp.org>
15090
15091                 Cygwin portability.
15092                 * progreloc.c: Include <windows.h> also on Cygwin.
15093                 (find_executable): Add support for Cygwin.
15094                 (set_program_name_and_installdir): Handle also platforms with
15095                 nonempty EXEEXT.
15096
15097         2006-07-11  Bruno Haible  <bruno@clisp.org>
15098
15099                 * javacomp.c: Fix a comment.
15100                 Reported by Jim Meyering.
15101
15102         2006-04-30  Bruno Haible  <bruno@clisp.org>
15103
15104                 * javacomp.h (compile_java_class): Add source_version,
15105                 target_version arguments.
15106                 * javacomp.c: Rewritten to choose only a compiler that
15107                 respects the specified source_version and target_version.
15108
15109         2006-06-27  Bruno Haible  <bruno@clisp.org>
15110
15111                 Assume correct S_ISDIR macro.
15112                 * mkdtemp.c: Remove test of STAT_MACROS_BROKEN.
15113
15114         2006-07-22  Bruno Haible  <bruno@clisp.org>
15115
15116                 * javaversion.h: New file, from GNU gettext.
15117                 * javaversion.c: New file, from GNU gettext.
15118                 * javaversion.java: New file, from GNU gettext.
15119                 * javaversion.class: New file, from GNU gettext.
15120
15121         2006-05-17  Bruno Haible  <bruno@clisp.org>
15122
15123                 Cygwin portability.
15124                 * javaexec.c (execute_java_class): Test for jview program
15125                 also on Cygwin.
15126
15127         2006-04-09  Bruno Haible  <bruno@clisp.org>
15128
15129                 * fatal-signal.c: Don't include string.h.
15130                 (at_fatal_signal): Use a copying loop instead of memcpy.
15131
15132         2005-12-04  Bruno Haible  <bruno@clisp.org>
15133
15134                 * csharpexec.c: Add support for 'clix' launcher (untested).
15135                 (execute_csharp_using_sscli): New function.
15136                 (execute_csharp_program): Call it.
15137
15138         2006-06-21  Bruno Haible  <bruno@clisp.org>
15139
15140                 Avoid warnings from recent versions of mcs.
15141                 * csharpcomp.c (compile_csharp_using_mono): Don't use options
15142                 -o, -L, -r any more. Use options documented since mcs-1.0
15143                 instead. Similarly for -g.
15144
15145         2005-07-09  Bruno Haible  <bruno@clisp.org>
15146
15147                 * csharpcomp.c (compile_csharp_using_sscli): For -l option,
15148                 add a .dll suffix.
15149                 Reported by Mark Junker <mjscod@gmx.de>.
15150
15151         2006-06-17  Bruno Haible  <bruno@clisp.org>
15152
15153                 * config.charset: Update for NetBSD 3.0.
15154
15155         2006-05-17  Bruno Haible  <bruno@clisp.org>
15156
15157                 Cygwin portability.
15158                 * localcharset.c (WIN32_NATIVE): Renamed from WIN32.
15159
15160         2006-05-16  Bruno Haible  <bruno@clisp.org>
15161
15162                 * localcharset.c [CYGWIN]: Include <windows.h>.
15163                 (get_charset_aliases): For Cygwin, return the same CPxxx
15164                 aliases list as under WIN32.
15165                 (locale_charset) [CYGWIN]: Try to retrieve the encoding from
15166                 the environment variables. Fall back to GetACP().
15167
15168         2006-04-05  Bruno Haible  <bruno@clisp.org>
15169
15170                 * config.charset: Update Juan Manuel Guerrero's address.
15171
15172         2005-02-12  Bruno Haible  <bruno@clisp.org>
15173
15174                 * allocsa.h: Add extern "C" for C++.
15175
15176         2005-02-10  Bruno Haible  <bruno@clisp.org>
15177
15178                 * allocsa.h (sa_alignof): Define differently with AIX xlc, to
15179                 avoid a bug of this compiler on AIX 3.2.5 dealing with enums.
15180
15181         2006-07-22  Bruno Haible  <bruno@clisp.org>
15182
15183                 * gettext.h: Update to GNU gettext-0.15.
15184
15185 2006-07-22  Bruno Haible  <bruno@clisp.org>
15186
15187         * config/srclist.txt: Resync printf-args.c, vasnprintf.c,
15188         localcharset.c, mkdtemp.c, config.rpath, lib-ld.m4, lib-link.m4,
15189         lib-prefix.m4, longdouble.m4, ssize_t.m4.
15190
15191 2006-07-21  Eric Blake  <ebb9@byu.net>
15192
15193         * modules/stdlib-safer: New file.
15194         * MODULES.html.sh (File stream based Input/Output): Add
15195         stdlib-safer.
15196
15197 2006-07-21  Eric Blake  <ebb9@byu.net>
15198
15199         * lib/stdlib-safer.h: New file from coreutils, required by
15200         stdlib--.h.
15201
15202 2006-07-20  Paul Eggert  <eggert@cs.ucla.edu>
15203
15204         * gnulib-tool (func_usage): Document --assume-autoconf='latest-stable'.
15205
15206 2006-07-20  Bruno Haible  <bruno@clisp.org>
15207
15208         * gnulib-tool: Recognize new option --assume-autoconf.
15209         (autoconf_minversion): New variable.
15210         (func_get_filelist): Use it to decide whether to add onceonly_2_57.m4.
15211
15212 2006-07-20  Bruno Haible  <bruno@clisp.org>
15213
15214         * MODULES.html.sh (func_all_modules): Add a missing func_begin_table.
15215
15216 2006-07-19  Derek R. Price  <derek@ximbiot.com>
15217
15218         * lib/getaddrinfo.h: Don't define unimplemented AI_* flags.
15219         Reindent and repaginate.
15220
15221 2006-07-19  Derek Price  <derek@ximbiot.com>
15222
15223         * doc/gnulib.texi (Libtool and Windows):  Eliminate passive voice.
15224         Correct grammar.
15225
15226 2006-07-17  Bruno Haible  <bruno@clisp.org>
15227
15228         * modules/list: New file.
15229         * modules/array-list: New file.
15230         * modules/carray-list, modules/carray-list-tests: New files.
15231         * modules/linked-list, modules/linked-list-tests: New files.
15232         * modules/avltree-list, modules/avltree-list-tests: New files.
15233         * modules/rbtree-list, modules/rbtree-list-tests: New files.
15234         * modules/linkedhash-list, modules/linkedhash-list-tests: New files.
15235         * modules/avltreehash-list, modules/avltreehash-list-tests: New files.
15236         * modules/rbtreehash-list, modules/rbtreehash-list-tests: New files.
15237         * modules/oset: New file.
15238         * modules/array-oset: New file.
15239         * modules/avltree-oset, modules/avltree-oset-tests: New files.
15240         * modules/rbtree-oset, modules/rbtree-oset-tests: New files.
15241         * tests/test-carray_list.c: New file.
15242         * tests/test-linked_list.c: New file.
15243         * tests/test-avltree_list.c: New file.
15244         * tests/test-rbtree_list.c: New file.
15245         * tests/test-linkedhash_list.c: New file.
15246         * tests/test-avltreehash_list.c: New file.
15247         * tests/test-rbtreehash_list.c: New file.
15248         * tests/test-avltree_oset.c: New file.
15249         * tests/test-rbtree_oset.c: New file.
15250         * MODULES.html.sh (Container data structures): New section.
15251
15252 2006-07-17  Bruno Haible  <bruno@clisp.org>
15253
15254         * m4/gl_list.m4: New file.
15255
15256 2006-07-17  Bruno Haible  <bruno@clisp.org>
15257
15258         * lib/gl_list.h: New file.
15259         * lib/gl_list.c: New file.
15260         * lib/gl_array_list.h: New file.
15261         * lib/gl_array_list.c: New file.
15262         * lib/gl_carray_list.h: New file.
15263         * lib/gl_carray_list.c: New file.
15264         * lib/gl_linked_list.h: New file.
15265         * lib/gl_linked_list.c: New file.
15266         * lib/gl_anylinked_list1.h: New file.
15267         * lib/gl_anylinked_list2.h: New file.
15268         * lib/gl_avltree_list.h: New file.
15269         * lib/gl_avltree_list.c: New file.
15270         * lib/gl_anyavltree_list1.h: New file.
15271         * lib/gl_anyavltree_list2.h: New file.
15272         * lib/gl_rbtree_list.h: New file.
15273         * lib/gl_rbtree_list.c: New file.
15274         * lib/gl_anyrbtree_list1.h: New file.
15275         * lib/gl_anyrbtree_list2.h: New file.
15276         * lib/gl_anytree_list1.h: New file.
15277         * lib/gl_anytree_list2.h: New file.
15278         * lib/gl_linkedhash_list.h: New file.
15279         * lib/gl_linkedhash_list.c: New file.
15280         * lib/gl_anyhash_list1.h: New file.
15281         * lib/gl_anyhash_list2.h: New file.
15282         * lib/gl_avltreehash_list.h: New file.
15283         * lib/gl_avltreehash_list.c: New file.
15284         * lib/gl_rbtreehash_list.h: New file.
15285         * lib/gl_rbtreehash_list.c: New file.
15286         * lib/gl_anytreehash_list1.h: New file.
15287         * lib/gl_anytreehash_list2.h: New file.
15288
15289         * lib/gl_oset.h: New file.
15290         * lib/gl_oset.c: New file.
15291         * lib/gl_array_oset.h: New file.
15292         * lib/gl_array_oset.c: New file.
15293         * lib/gl_avltree_oset.h: New file.
15294         * lib/gl_avltree_oset.c: New file.
15295         * lib/gl_rbtree_oset.h: New file.
15296         * lib/gl_rbtree_oset.c: New file.
15297         * lib/gl_anytree_oset.h: New file.
15298
15299 2006-07-16  Paul Eggert  <eggert@cs.ucla.edu>
15300
15301         * m4/mkancesdirs.m4: New file.
15302         * m4/mkdir-p.m4 (gl_MKDIR_PARENTS): Mention dirchownmod.c,
15303         dirchownmod.h.  Don't require AC_FUNC_ALLOCA, gl_AFS, gl_CHDIR_SAFER;
15304         no longer needed.  Require gl_FUNC_LCHOWN, since dirchownmod.c needs
15305         it.
15306
15307 2006-07-16  Paul Eggert  <eggert@cs.ucla.edu>
15308
15309         * lib/dirchownmod.c, lib/dirchownmod.h, lib/mkancesdirs.c:
15310         * lib/mkancesdirs.h: New files.
15311         * lib/mkdir-p.c: Don't include alloca.h, stdio.h, sys/types.h,
15312         unistd.h, string.h, chdir-safer.h, dirname.h, lchmod.h, lchown.h,
15313         save-cwd.h.  Instead, include dirchownmod.h and mkancesdirs.h.
15314         (make_dir_parents): New args MAKE_ANCESTOR, OPTIONS, ANNOUNCE,
15315         MODE_BITS.  Remove options VERBOSE_FMT_STRING, CWD_ERRNO.  All
15316         callers changed.  Revamp internals significantly, by not
15317         attempting to create directories that are temporarily more
15318         permissive than the final results.  Do not attempt to use
15319         save_cwd/restore_cwd; it isn't worth it for mkdir and install.
15320         This removes some race conditions, fixes some bugs, and simplifies
15321         things.  Use new dirchownmod function to do owner and mode changes.
15322         * lib/mkdir-p.h: Likewise.
15323         * lib/modechange.c (octal_to_mode): New function.
15324         (struct mode_change): New member mentioned.
15325         (make_node_op_equals): New arg mentioned.  All callers changed.
15326         (mode_compile): Keep track of which mode bits the user has explicitly
15327         mentioned.
15328         (mode_adjust): New arg DIR, so that we implement the X op correctly.
15329         New arg PMODE_BITS, to keep track of which mode bits the user
15330         mentioned; it treats S_ISUID and S_ISGID speciall.
15331         All callers changed.
15332         * lib/modechange.h: Likewise.
15333
15334 2006-07-16  Paul Eggert  <eggert@cs.ucla.edu>
15335
15336         * MODULES.html.sh: Add mkancestors.
15337         * modules/mkancesdirs: New module.
15338         * modules/mkdir-p (Files): Remove lib/chdir-safer.c, lib/chdir-safer.h,
15339         lib/same-inode.h, m4/afs.m4, m4/chdir-safer.m4.
15340         The chdir-safer and afs files are now orphans; I'll remove them
15341         unless someone speaks up.
15342         Add lib/dirchownmod.c, lib/dirchownmod.h.
15343         (Depends-on): Remove alloca, chown, save-cwd, dirname.
15344         Add lchown, mkancesdirs.
15345         (Maintainer): Add self.
15346
15347 2006-07-15  Karl Berry  <karl@gnu.org>
15348
15349         * gnulib-tool: help message wording/arrangement.
15350
15351 2006-07-14  Simon Josefsson  <jas@extundo.com>
15352
15353         * doc/gnulib.texi (Libtool and Windows): New section.
15354
15355 2006-07-12  Simon Josefsson  <jas@extundo.com>
15356
15357         * modules/gendocs (License): Fix license, approved by Karl.
15358
15359 2006-07-12  Eric Blake  <ebb9@byu.net>
15360
15361         * MODULES.html.sh: Add gendocs.
15362
15363 2006-07-11  Eric Blake  <ebb9@byu.net>
15364
15365         * modules/fdl: New module, to install doc/fdl.texi.
15366         * MODULES.html.sh: Add new section for documentation modules.
15367         * gnulib-tool: Avoid space-tab.
15368         (--doc-base): New option, to manage files from doc.
15369
15370 2006-07-11  Eric Blake  <ebb9@byu.net>
15371
15372         * m4/absolute-header.m4: Fix comments to match recent change.
15373
15374 2006-07-11  Eric Blake  <ebb9@byu.net>
15375
15376         * gnulib-tool: List --doc-base before --tests-base.
15377
15378 2006-07-11  Derek R. Price  <derek@ximbiot.com>
15379
15380         * lib/glob.c: s/NAMLEN/_D_EXACT_NAMLEN/.
15381
15382 2006-07-11  Bruno Haible  <bruno@clisp.org>
15383
15384         * README: Mention where to put documentation.
15385
15386 2006-07-10  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
15387
15388         * doc/functions.texi, gnulib-tool.texi, gnulib.texi: Fix some typos.
15389
15390 2006-07-10  Paul Eggert  <eggert@cs.ucla.edu>
15391
15392         * m4/sys_stat_h.m4 (gl_HEADER_SYS_STAT_H): Like today's change
15393         to stdint.m4.
15394
15395 2006-07-10  Paul Eggert  <eggert@cs.ucla.edu>
15396
15397         * m4/stdint.m4 (gl_STDINT_H): Like yesterday's change to
15398         absolute-header.m4.  Also, set ABSOLUTE_STDINT_H to a string
15399         "no/such/file/stdint.h" when there is no such file, so that
15400         the resulting C code can be parsed by dodgy compilers.
15401         Problems reported by Bob Proulx.
15402
15403 2006-07-10  Derek R. Price  <derek@ximbiot.com>
15404
15405         * lib/backupfile.c, dirfd.h, fts.c, getcwd.c, glob.c, glob_.h:
15406         Ignore the obsolescent !HAVE_DIRENT_H case.  Consolidate NAMLEN
15407         macros into the GNU _D_EXACT_NAMLEN.
15408         * lib/savedir.c:  Likewise.
15409         (savedirstream): Use _D_EXACT_NAMLEN in preference to strlen.
15410
15411 2006-07-10  Derek R. Price  <derek@ximbiot.com>
15412         and Paul Eggert  <eggert@cs.ucla.edu>
15413
15414         * m4/backupfile.m4, d-ino.m4, d-type.m4, dirfd.m4, fts.m4, getcwd.m4:
15415         * m4/savedir.m4:
15416         Ignore the obsolescent !HAVE_DIRENT_H case.  Consolidate NAMLEN
15417         macros into the GNU _D_EXACT_NAMLEN.
15418
15419 2006-07-09  Paul Eggert  <eggert@cs.ucla.edu>
15420
15421         * m4/absolute-header.m4 (gl_ABSOLUTE_HEADER): Use "" rather than <>
15422         around the absolute name, to work around a problem with the HP-UX
15423         11.23 native C compiler, reported by Bob Proulx.
15424
15425 2006-07-09  Paul Eggert  <eggert@cs.ucla.edu>
15426
15427         * doc/maintain.texi, make-stds.texi: Sync from
15428         <http://savannah.gnu.org/projects/gnustandards>.
15429
15430 2006-07-09  Paul Eggert  <eggert@cs.ucla.edu>
15431
15432         * build-aux/depcomp, build-aux/install-sh: Sync from Automake.
15433
15434 2006-07-09  Jim Meyering  <jim@meyering.net>
15435
15436         * m4/glob.m4: Remove a doubled word in a comment.
15437
15438 2006-07-09  Jim Meyering  <jim@meyering.net>
15439
15440         * lib/argp-pv.c: Remove a doubled word in a comment.
15441         * lib/check-version.c (check_version): Likewise.
15442         * lib/javacomp.c (compile_java_class): Likewise.
15443
15444 2006-07-08  Paul Eggert  <eggert@cs.ucla.edu>
15445
15446         * gnulib-tool (func_get_filelist): Don't echo m4/onceonly_2_57.m4,
15447         for the benefit of people using Autoconf 2.60.  If you want to
15448         support older Autoconf versions you can copy m4/onceonly_2_57.m4
15449         (or m4/onceonly.m4, if pre-2.57) manually.
15450
15451 2006-07-08  Jim Meyering  <jim@meyering.net>
15452
15453         * m4/link-follow.m4: Remove one of two adjacent "whether"s in a
15454         comment.
15455         * m4/getopt.m4: Remove one of two adjacent "your"s in a comment.
15456         * m4/regex.m4 (gl_REGEX): Remove one of two adjacent "the"s in a
15457         comment.
15458
15459 2006-07-08  Jim Meyering  <jim@meyering.net>
15460
15461         * lib/getndelim2.h (getndelim2): Remove doubled "after" in comment.
15462
15463 2006-07-07  Simon Josefsson  <jas@extundo.com>
15464
15465         * tests/test-crc.c: Change expected crc value, the test vector
15466         were probably computed using the old broken crc.c?
15467
15468 2006-07-06  Simon Josefsson  <jas@extundo.com>
15469
15470         * modules/sys_socket (Files): Add m4/sockpfaf.m4 (this module is
15471         now the canonical place for the M4 file).
15472
15473         * modules/getaddrinfo (Files): Remove m4/sockpfaf.m4, we get it
15474         from the sys_socket dependency now.
15475
15476         * modules/inet_pton (Files): Ditto.
15477
15478         * modules/inet_ntop (Files): Ditto.
15479
15480 2006-07-06  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>  (tiny change)
15481
15482         * modules/getusershell (configure.ac): Use gl_FUNC_GETUSERSHELL,
15483         not gl_PREREQ_GETUSERSHELL.
15484
15485 2006-07-06  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
15486
15487         * m4/_inttypes_h.m4 (gl_INTTYPES_H): Use AC_CHECK_DECLS_ONCE
15488         with only one argument, for Autoconf 2.60.
15489         * m4/fileblocks.m4 (gl_PREREQ_FILEBLOCKS): AC_CHECK_DECLS_ONCE may
15490         expand to nothing, so add a shell command to avoid syntax error.
15491         * m4/getpass.m4 (gl_PREREQ_GETPASS): Likewise.
15492
15493 2006-07-06  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
15494
15495         * lib/strtod.c (strtod): cast the argument of tolower to unsigned char.
15496
15497 2006-07-06  Paul Eggert  <eggert@cs.ucla.edu>
15498
15499         * m4/fnmatch.m4 (_AC_LIBOBJ_FNMATCH): Don't check for getenv decl;
15500         no longer needed.  Check for isblank decl.
15501         * m4/mkstemp.m4 (gl_PREREQ_TEMPNAME): Don't check for getenv decl.
15502         * m4/regex.m4 (gl_PREREQ_REGEX): Dheck for isblank decl instead
15503         of existence.
15504
15505 2006-07-06  Paul Eggert  <eggert@cs.ucla.edu>
15506
15507         * lib/getloadavg.c: Use __VMS, not VMS.
15508         * lib/getopt.c: Likewise.
15509         * lib/getpagesize.h: Likewise.
15510         * lib/glob.c: Remove most VMS cruft; it hasn't been tested for a while
15511         and probably does not work.
15512
15513 2006-07-06  Paul Eggert  <eggert@cs.ucla.edu>
15514
15515         * lib/.cppi-disable: Add wcwidth.
15516         * lib/fnmatch.c (ISBLANK): Remove.  All uses changed to isblank.
15517         (isblank) [! (defined isblank || HAVE_DECL_ISBLANK)]: New macro.
15518         (ISGRAPH): Remove.  All uses changed to isgraph.
15519         (FOLD) [!defined _LIBC]: Remove special case.
15520         * lib/getdate.y (lookup_word): Remove no-longer-needed call to islower.
15521         * lib/regex_internal.h (isblank): Depend on HAVE_DECL_ISBLANK, not
15522         HAVE_ISBLANK.
15523         * lib/strftime.c (TOLOWER, TOUPPER) [!defined _LIBC]: Remove special
15524         case.
15525
15526 2006-07-06  Jim Hyslop  <jhyslop@dreampossible.ca>  (tiny change)
15527
15528         * lib/getaddrinfo.c: Changes to compile under MSVC6: changed
15529         '#if WIN32_NATIVE' to '#ifdef' & moved WSAAPI macro inside
15530         brackets.  Other minor changes to suppress some compiler
15531         warnings.
15532
15533 2006-07-06  Derek R. Price  <derek@ximbiot.com>
15534         and Paul Eggert  <eggert@cs.ucla.edu>
15535
15536         * m4/backupfile.m4 (gl_BACKUPFILE): Check for dirent.h, instead
15537         of invoking obsolescent AC_HEADER_DIRENT macro.
15538         * m4/d-ino.m4 (gl_CHECK_TYPE_STRUCT_DIRENT_D_INO): Likewise.
15539         * m4/d-type.m4 (gl_CHECK_TYPE_STRUCT_DIRENT_D_TYPE): Likewise.
15540         * m4/dirfd.m4 (gl_FUNC_DIRFD): Likewise.
15541         * m4/fts.m4 (gl_FUNC_FTS_CORE): Likewise.
15542         * m4/getcwd.m4 (gl_PREREQ_GETCWD): Likewise.
15543         * m4/glob.m4 (gl_PREREQ_GLOB): Likewise.
15544         * m4/savedir.m4 (gl_SAVEDIR): Likewise.
15545         * m4/readdir.m4: Remove; no longer needed.
15546
15547 2006-07-06  Derek R. Price  <derek@ximbiot.com>
15548         and Paul Eggert  <eggert@cs.ucla.edu>
15549
15550         * lib/backupfile.c [HAVE_DIRENT_H && ! HAVE_NDIR_H]:
15551         Don't worry about this obsolete case any more.
15552         (HAVE_DIR): Remove.  All uses removed; we now assume you can read
15553         directories.
15554         * lib/dirfd.h [HAVE_DIRENT_H && ! HAVE_NDIR_H]: Don't
15555         worry about this obsolete case any more.
15556         * lib/fts.c: Likewise.
15557         * lib/getcwd.c: Likewise.
15558         * lib/glob.h: Likewise.
15559         * lib/savedir.c: Likewise.
15560
15561 2006-07-05  Paul Eggert  <eggert@cs.ucla.edu>
15562
15563         * m4/xstrtol.m4 (gl_PREREQ_XSTRTOL): Use AC_CHECK_DECLS_ONCE
15564         rather than AC_CHECK_DECLS for strtoimax and strtoumax.
15565         * m4/getusershell.m4 (gl_PREREQ_GETUSERSHELL): Remove; no longer
15566         needed.
15567         All uses removed.
15568         * m4/strtol.m4 (gl_PREREQ_STRTOL): Likewise.
15569         * m4/strtoul.m4 (gl_PREREQ_STRTOUL): Likewise.
15570         * m4/exclude.m4 (gl_EXCLUDE): Don't check for isascii; no longer
15571         needed.
15572         * m4/getdate.m4 (gl_GETDATE): Likewise.
15573         * m4/getusershell.m4 (gl_PREREQ_GETUSERSHELL): Likewise.
15574         * m4/memcasecmp.m4 (gl_MEMCASECMP): Likewise.
15575         * m4/strtod.m4 (gl_FUNC_STRTOD): Likewise.
15576         * m4/strtol.m4 (gl_PREREQ_STRTOL): Likewise.
15577         * m4/strtoul.m4 (gl_PREREQ_STRTOUL): Likewise.
15578         * m4/xstrtol.m4 (gl_PREREQ_XSTRTOL): Likewise.
15579         * m4/exclude.m4 (gl_EXCLUDE): Don't require AC_C_INLINE; no longer
15580         needed.
15581
15582 2006-07-05  Paul Eggert  <eggert@cs.ucla.edu>
15583
15584         * lib/memcasecmp.c: Include <limits.h>.
15585         (memcasecmp): Don't assume UCHAR_MAX <= INT_MAX.
15586         * lib/strtod.c (strtod): Don't assume isspace works on negative chars.
15587         Don't assume isdigit succeeds only on '0' through '9'.
15588
15589 2006-07-05  Eric Blake  <ebb9@byu.net>
15590
15591         * modules/getaddrinfo (Depends-on): Add snprintf.
15592
15593 2006-07-05  Eric Blake  <ebb9@byu.net>
15594
15595         * m4/sockpfaf.m4 (gl_SOCKET_FAMILIES): Use gl_HEADER_SYS_SOCKET
15596         to avoid 'header present but could not be compiled' on cygwin.
15597
15598 2006-07-05  Eric Blake  <ebb9@byu.net>
15599
15600         * lib/getaddrinfo.h (NI_NUMERICHOST, NI_NUMERICSERV): Define if
15601         missing from netdb.h.
15602         * lib/getaddrinfo.c (includes): Include inet_ntop and snprintf.
15603
15604 2006-07-05  Derek R. Price  <derek@ximbiot.com>
15605
15606         * m4/calloc.m4 (_AC_FUNC_CALLOC_IF): Don't require AC_HEADER_STDC;
15607         no longer needed.
15608         * m4/exclude.m4 (gl_EXCLUDE): Likewise.
15609         * m4/getdate.m4 (gl_GETDATE): Likewise.
15610         * m4/getusershell.m4 (gl_PREREQ_GETUSERSHELL): Likewise.
15611         * m4/memcasecmp.m4 (gl_MEMCASECMP): Likewise.
15612         * m4/strtod.m4 (gl_FUNC_STRTOD): Likewise.
15613         * m4/strtol.m4 (gl_PREREQ_STRTOL): Likewise.
15614         * m4/xstrtol.m4 (gl_PREREQ_XSTRTOL): Likewise.
15615
15616 2006-07-05  Derek R. Price  <derek@ximbiot.com>
15617
15618         * lib/exclude.c (IN_CTYPE_DOMAIN, is_space): Remove; no longer needed.
15619         All uses of is_space replaced by isspace.
15620         * lib/exit.h: Don't talk about STDC_HEADERS.
15621         * lib/fnmatch.c (ISASCII): Remove; no longer needed.  All uses removed.
15622         (ISPRINT, ISDIGIT, ISALNUM, ISALPHA, ISCNTRL, ISLOWER, ISPUNCT):
15623         (ISSPACE, ISUPPER, ISXDIGIT): Remove; no longer needed.  All uses
15624         replaced by isprint etc.
15625         * lib/getdate.y (IN_CTYPE_DOMAIN, ISSPACE, ISALPHA, ISLOWER): Likewise.
15626         * lib/getusershell.c (IN_CTYPE_DOMAIN, ISSPACE): Likewise.
15627         * lib/memcasecmp.c (IN_CTYPE_DOMAIN, ISLOWER, TOUPPER): Likewise.
15628         * lib/strtod.c (IN_CTYPE_DOMAIN, ISSPACE, ISDIGIT, TOLOWER): Likewise.
15629         * lib/strtol.c (IN_CTYPE_DOMAIN): Likewise.
15630         * lib/xstrtol.c (IN_CTYPE_DOMAIN, ISSPACE): Likewise.
15631
15632 2006-07-05  Bruno Haible  <bruno@clisp.org>
15633
15634         * m4/strndup.m4 (gl_FUNC_STRNDUP): When cross-compiling, check whether
15635         the function exists, before testing against AIX.
15636         Reported by Martin Lambers <marlam@marlam.de>.
15637
15638 2006-07-04  Paul Eggert  <eggert@cs.ucla.edu>
15639
15640         * modules/cycle-check (lib_SOURCES): Add same-inode.h.
15641         From Mark D. Baushke.
15642
15643 2006-07-04  Paul Eggert  <eggert@cs.ucla.edu>
15644
15645         * m4/absolute-header.m4 (gl_ABSOLUTE_HEADER): Prepend three slashes
15646         to the absolute name, not just one, to bypass Sun C 5.8's
15647         "warning: #include of /usr/include/... may be non-portable".
15648
15649 2006-07-04  Eric Blake  <ebb9@byu.net>
15650
15651         * modules/dirname-tests: New test module.
15652         * tests/test-dirname.c: New file, replacing dirname.c
15653         TEST_DIRNAME section that was recently deleted.
15654
15655 2006-07-04  Bruno Haible  <bruno@clisp.org>
15656
15657         Assume ANSI C header files and <ctype.h> functions.
15658         * lib/mbswidth.c (IN_CTYPE_DOMAIN, ISPRINT, ISCNTRL): Remove macros.
15659         (mbsnwidth): Use isprint, iscntrl instead.
15660
15661 2006-07-03  Paul Eggert  <eggert@cs.ucla.edu>
15662
15663         Merge from coreutils.
15664         * MODULES.html.sh: Add xstrtold.
15665         * modules/xstrtold: New file.
15666         * modules/cycle-check (Files): Add lib/same-inode.h.
15667         * modules/dirname (Files): Add m4/double-slash-root.m4.
15668         * modules/getcwd (Files): Add m4/getcwd-abort-bug.m4.
15669         * modules/mkdir-p (Files): Add lib/same-inode.h.
15670         * modules/same (Files): Add lib/same-inode.h.
15671
15672 2006-07-03  Paul Eggert  <eggert@cs.ucla.edu>
15673
15674         * m4/absolute-header.m4: Renamed from full-header-path.m4.
15675         This is to keep the terminology clean; POSIX talks about
15676         "absolute pathnames", not "full pathnames", but the GNU
15677         Coding Standards say to use "path" for something else;
15678         so use "absolute" to keep both sides happy.
15679         (gl_ABSOLUTE_HEADER): Renamed from gl_FULL_HEADER_PATH.
15680         Set gl_absolute_header, not gl_full_header_path.
15681         Set gl_cv_absolute_<header>, not gl_full_path_<header>.
15682         Define ABSOLUTE_<HEADER>, not FULL_PATH_<HEADER>.
15683         All uses changed.
15684
15685         Merge from coreutils.
15686
15687         2006-06-30  Paul Eggert  <eggert@cs.ucla.edu>
15688
15689         * m4/c-strtod.m4 (gl_C_STRTOLD): Add c-strtod.c to LIBSOURCES.
15690         Require gl_USE_SYSTEM_EXTENSIONS, not gl_C_STRTOD, since we don't
15691         want to require the building of c-strtod.o.
15692         * m4/lib-check.m4 (cu_LIB_CHECK): Remove SEQ_LIBM, since seq no longer
15693         needs -lm directly.
15694         * m4/xstrtod.m4 (gl_XSTRTOLD): New macro.
15695
15696         2006-06-19  Paul Eggert  <eggert@cs.ucla.edu>
15697
15698         * m4/lib-ignore.m4 (gl_IGNORE_UNUSED_LIBRARIES): Prefer binutils's
15699         --as-needed option if available.  Problem reported by Albert Chin in
15700         <http://lists.gnu.org/archive/html/bug-gnulib/2006-06/msg00114.html>.
15701         However, use -Wl,--as-needed, not bare --as-needed, since HP-UX 11.11
15702         cc merely issues a bunch of annoying warnings for --as-needed
15703         (this problem was reported by Bob Proulx).  Also, try linking with
15704         -lm to detect a bug in binutils 2.16 (this problem was reported
15705         by Ralf Wildenhues).
15706
15707         2006-06-18  Jim Meyering  <jim@meyering.net>
15708
15709         Test for a bug that causes glibc's getcwd to suffer a failed assertion.
15710         * m4/getcwd-abort-bug.m4 (gl_FUNC_GETCWD_ABORT_BUG): New file and
15711         macro.
15712         * m4/getcwd.m4 (gl_FUNC_GETCWD): If we detect support for getcwd_null,
15713         also check for glibc-2.4's abort-inducing bug.
15714
15715         * m4/getcwd-path-max.m4 (gl_FUNC_GETCWD_PATH_MAX): Fix typo.
15716         Low-probability clean-up should be to use rmdir to get rid of
15717         the just-created directory, not unlink.
15718
15719         * m4/ftruncate.m4 (gl_FUNC_FTRUNCATE): If ftruncate is missing, make
15720         configure fail, and request a bug report to inform us about it.
15721         Add a comment that, barring reports to the contrary, in 2007 we'll
15722         assume ftruncate is universally available.
15723
15724         2006-04-17  Paul Eggert  <eggert@cs.ucla.edu>
15725
15726         * m4/filemode.m4 (gl_FILEMODE): Check for strmode declaration.
15727
15728         2006-03-12  Jim Meyering  <jim@meyering.net>
15729
15730         * m4/chdir-safer.m4 (gl_CHDIR_SAFER): Add same-inode.h to the list.
15731         * m4/cycle-check.m4 (gl_CYCLE_CHECK): Likewise.
15732         * m4/same.m4 (gl_SAME): Likewise.
15733         * m4/root-dev-ino.m4 (gl_ROOT_DEV_INO): Likewise.
15734
15735         2006-03-11  Eric Blake  <ebb9@byu.net>
15736
15737         * m4/double-slash-root.m4: New file, provides gl_DOUBLE_SLASH_ROOT.
15738         * m4/dirname.m4 (gl_DIRNAME): Use gl_DOUBLE_SLASH_ROOT.
15739         * m4/dos.m4 (FILE_SYSTEM_PREFIX_LEN): Move from here to dirname.h.
15740         (FILE_SYSTEM_DRIVE_PREFIX_CAN_BE_RELATIVE): New define.
15741
15742 2006-07-03  Paul Eggert  <eggert@cs.ucla.edu>
15743
15744         * lib/stdint_.h: Include <sys/types.h> after @FULL_PATH_STDINT_H@, for
15745         MacOS X 10.4.6.  Don't mention <sys/int_types.h>.  Problems
15746         reported by Mark D. Baushke, one in
15747         <http://lists.gnu.org/archive/html/bug-gnulib/2006-07/msg00015.html>.
15748
15749         Merge from coreutils.
15750
15751         * lib/.cppi-disable: Add stdint_.h.
15752         * lib/.cvsignore: Add stdint.h.
15753
15754         2006-06-30  Paul Eggert  <eggert@cs.ucla.edu>
15755
15756         * lib/xstrtod.c (XSTRTOD, DOUBLE): New macros, so that we can support
15757         both double and long double versions.
15758         (XSTRTOD): Renamed from xstrtod.  Use DOUBLE internally.
15759         * lib/xstrtold.c: New file.
15760         * lib/xstrtod.h (xstrtold): New decl.
15761
15762         2006-05-22  Paul Eggert  <eggert@cs.ucla.edu>
15763
15764         * lib/filemode.c (setst): Remove.
15765         (strmode): Rewrite to avoid setst.  This makes the code shorter,
15766         (arguably) clearer, and the generated code is a bit smaller on my
15767         Debian GNU/Linux stable x86 host.
15768
15769         2006-04-17  Paul Eggert  <eggert@cs.ucla.edu>
15770
15771         * lib/filemode.c: Include "filemode.h" first, to test the interface.
15772         Assume that filemode.h includes sys/types.h and sys/stat.h.
15773         (HAVE_ST_DM_MODE): New macro, moved here from ls.c.
15774         (ftypelet): Reorder to put common cases first, for efficiency.
15775         Add 'P', 'w'.  Remove 'M', since it's now the caller's responsibility
15776         to do 'M'.
15777         (strmode): Renamed from mode_string, and now stores 12 bytes instead
15778         of 10, for compatibility with FreeBSD.  All callers changed.
15779         (filemodestring): Now stores 12 bytes instead of 10, and sets file
15780         types that can't be deduced solely from st_mode.  First arg is now a
15781         const pointer.
15782         * lib/filemode.h (HAVE_DECL_STRMODE): Include <string.h> for strmode.
15783         (strmode): Renamed from mode_string.
15784         (filemodestring): New decl.
15785         * lib/stat-macros.h: Don't undef S_ISDOOR, since it's never buggy.
15786         (S_ISDOOR): Don't bother with S_IFDOOR, since that code is never
15787         needed.
15788         (S_ISPORT, S_ISWHT): New macros, if not already defined.
15789
15790         2006-04-12  Paul Eggert  <eggert@cs.ucla.edu>
15791
15792         * lib/fsusage.c: Don't include <inttypes.h> or <stdint.h>, since
15793         fsusage.h now does that.  Include fsusage.h first, to test interface.
15794         Prefer statvfs if it works, since it's blessed by POSIX.  Attempt
15795         at most one method (the old code could have generated decls that
15796         didn't conform to C89, not that this was ever exercised).
15797         * lib/fsusage.h: Include <inttypes.h> and <stdint.h> if they exist.
15798
15799         2006-03-19  Jim Meyering  <jim@meyering.net>
15800
15801         Work even in a chroot where d_ino values for entries in "/"
15802         don't match the stat.st_ino values for the same names.
15803         * lib/getcwd.c (__getcwd): When no d_ino value matches the target inode
15804         number, iterate through all entries again, using lstat instead.
15805         Reported by Kenshi Muto in http://bugs.debian.org/355810, and by
15806         Zouhir Hafidi in https://bugzilla.redhat.com/bugzilla/190656.
15807
15808         * lib/getcwd.c (__getcwd): Clarify a comment.
15809         Use memcpy in place of a call to strcpy.
15810
15811         2006-03-12  Jim Meyering  <jim@meyering.net>
15812
15813         * lib/fts-cycle.c (leave_dir): If cycle-check's saved dev-ino pair
15814         matches that of the current directory (which we're about to chdir ".."
15815         out of), then save the dev-ino of the parent, instead.
15816
15817         * lib/same-inode.h (SAME_INODE): New file/macro.
15818         * lib/chdir-safer.c (SAME_INODE): Remove definition.
15819         Include "same-inode.h", instead.
15820         * lib/same.c: Likewise.
15821         * lib/cycle-check.h: Include "same-inode.h".
15822         (CYCLE_CHECK_REFLECT_CHDIR_UP): Define.
15823         * lib/cycle-check.c (SAME_INODE): Remove definition.
15824         * lib/root-dev-ino.h: Include "same-inode.h".
15825
15826         2006-03-11  Eric Blake  <ebb9@byu.net>
15827
15828         * lib/same.c (same_name): s/base_name/last_component/
15829         * lib/backupfile.c (check_extension, numbered_backup): Likewise.
15830         * lib/filenamecat.c (file_name_concat): Likewise.
15831
15832         2006-03-11  Eric Blake  <ebb9@byu.net>,
15833                     Paul Eggert  <eggert@cs.ucla.edu>
15834
15835         * lib/dirname.h (FILE_SYSTEM_PREFIX_LEN): Move here from dos.m4.
15836         [FILE_SYSTEM_ACCEPTS_DRIVE_LETTER_PREFIX]: Don't treat 1: as a
15837         drive prefix.
15838         (IS_ABSOLUTE_FILE_NAME): Treat all drive letters as absolute on
15839         platforms like cygwin with FILE_SYSTEM_DRIVE_PREFIX_IS_ABSOLUTE.
15840         (last_component): New method.
15841         * lib/dirname.c (dir_len): Determine when drive letters need a
15842         subsequent slash.  Preserve // when it is special.
15843         (dir_name): Don't append dot when drive letter is absolute.
15844         [TEST_DIRNAME]: Move into a full-blown gnulib test.
15845         * lib/basename.c (base_name): New semantics - malloc the result.
15846         Preserve // when it is special.  Preserve relative files that look
15847         like drive letters.
15848         (base_len): Preserve // when it is special.
15849         (last_component): New method, similar to old base_name semantics.
15850         * lib/stripslash.c (strip_trailing_slashes): Use last_component, not
15851         base_name.  Strip redundant slashes from ///.
15852
15853 2006-07-03  Jim Meyering  <jim@meyering.net>
15854
15855         * lib/cycle-check.h (CYCLE_CHECK_REFLECT_CHDIR_UP): Abort if this
15856         macro is used before the first cycle_check call.
15857
15858 2006-07-03  Eric Blake  <ebb9@byu.net>
15859
15860         * modules/dirname (Depends-on): Add xstrndup.
15861
15862 2006-07-02  Paul Eggert  <eggert@cs.ucla.edu>
15863
15864         * m4/stdint.m4 (gl_STDINT_H): Use more-mnemonic identifiers for
15865         test cases, so that config.log is a bit easier to follow.
15866
15867 2006-07-02  Paul Eggert  <eggert@cs.ucla.edu>
15868
15869         * lib/stdint_.h (intmax_t, uintmax_t): Prefer long to long long if
15870         both are 64 bits, since this seems to be the tradition, and this
15871         prevents gcc -Wformat from warning about usages with PRIuMAX.  If
15872         we ever run into a host that prefers long long to long in this
15873         case, we'll need another configure-time test.  Problem reported by
15874         Jim Meyering.
15875
15876 2006-07-02  Eric Blake  <ebb9@byu.net>
15877
15878         * m4/wcwidth.m4 (gl_FUNC_WCWIDTH): Simplify by using AC_CHECK_DECLS.
15879
15880 2006-07-01  Paul Eggert  <eggert@cs.ucla.edu>
15881
15882         * modules/inttypes (Depends-on): No longer depends on stdint.
15883         * modules/stdint (Description): Say more about assumptions.
15884         Say that the fast types might differ.  Say macros are used.
15885         (Files): Remove m4/size_max.m4, m4/wchar_t.m4.  Add m4/longlong.m4.
15886         (Makefile.am): Revise list of substituted symbols to match
15887         new stdint.m4.
15888         * modules/stdint-tests (Files): Add m4/wchar_t.m4, m4/wint_t.m4.
15889         (configure.ac): Add gt_TYPE_WCHAR_T, gt_TYPE_WINT_T.
15890         * tests/test-stdint.c (verify_same_types)
15891         [! (__GNUC__ >= 2 && DO_PEDANTIC)]: Put in a decl, so that
15892         the code conforms to C99/C89.
15893         Test for WCHAR_MIN and WCHAR_MAX only if HAVE_WCHAR_T.
15894         Test for WINT_MIN and WINT_MAX only if HAVE_WINT_T.
15895
15896 2006-07-01  Paul Eggert  <eggert@cs.ucla.edu>
15897
15898         * m4/longlong.m4 (AC_TYPE_LONG_LONG_INT): Backport from Autoconf 2.60,
15899         but fix a bug, by requiring at least 64 bits.
15900         * m4/ulonglong.m4 (AC_TYPE_UNSIGNED_LONG_LONG_INT): Likewise.
15901         * m4/longlong.m4 (gl_AC_TYPE_LONG_LONG): Now just call
15902         AC_TYPE_LONG_LONG_INT.  This macro is obsolete and will go soon.
15903         * m4/ulonglong.m4 (gl_AC_TYPE_UNSIGNED_LONG_LONG) Likewise.
15904
15905         * m4/stdint.m4 (gl_STDINT_H): Rewrite to accommodate stdint_.h
15906         changes.  Make 2.59 a prerequisite.  Check and substitute for
15907         HAVE_LONG_LONG_INT.  Rely on Autoconf to check for stdint.h and
15908         inttypes.h.  Do not use special include files; just use the
15909         defaults.  Check for sys/inttypes.h and sys/bitypes.h in the usual
15910         way now.  Remove no-longer-needed tests for HAVE_LONG_64BIT,
15911         HAVE_LONG_LONG_64BIT, int8_t, int16_t, int32_t, int64_t, uint8_t,
15912         uint16_t, uint32_t uint64_t, int_least8_t, int_least16_t,
15913         int_least32_t, int_least64_t, uint_least8_t, uint_least16_t,
15914         uint_least32_t, uint_least64_t, int_fast8_t, int_fast16_t,
15915         int_fast32_t, int_fast64_t, uint_fast8_t uint_fast16_t,
15916         uint_fast32_t, uint_fast64_t, intptr_t, uintptr_t, intmax_t,
15917         uintmax_t, INT8_MIN, INT8_MAX, UINT8_MAX, INT16_MIN, INT16_MAX,
15918         UINT16_MAX, INT32_MIN, INT32_MAX, UINT32_MAX, INT64_MIN,
15919         INT64_MAX, UINT64_MAX, INT_LEAST8_MIN, INT_LEAST8_MAX,
15920         UINT_LEAST8_MAX, INT_LEAST16_MIN, INT_LEAST16_MAX,
15921         UINT_LEAST16_MAX, INT_LEAST32_MIN, INT_LEAST32_MAX,
15922         UINT_LEAST32_MAX, INT_LEAST64_MIN, INT_LEAST64_MAX,
15923         UINT_LEAST64_MAX, INT_FAST8_MIN, INT_FAST8_MAX, UINT_FAST8_MAX,
15924         INT_FAST16_MIN, INT_FAST16_MAX, UINT_FAST16_MAX, INT_FAST32_MIN,
15925         INT_FAST32_MAX, UINT_FAST32_MAX, INT_FAST64_MIN, INT_FAST64_MAX,
15926         UINT_FAST64_MAX, INTPTR_MIN, INTPTR_MAX, UINTPTR_MAX, INTMAX_MIN,
15927         INTMAX_MAX, UINTMAX_MAX, PTRDIFF_MIN, PTRDIFF_MAX, SIG_ATOMIC_MIN,
15928         SIG_ATOMIC_MAX, SIZE_MAX, WCHAR_MIN, WCHAR_MAX, WINT_MIN,
15929         WINT_MAX.  Check for C99 conformance more strictly, by detecting
15930         bugs in glibc 2.4, Solaris 10, and OpenBSD 3.9.  On the other hand do
15931         not check for things that C99 does not require, e.g., int8_t.  If
15932         a test isn't needed unless <stdint.h> isn't working, and is
15933         unlikely to be needed for any other reason, then don't do it
15934         unless <stdint.h> isn't working.  Do not check for ptrdiff_t or
15935         size_t, since we assume C89 freestanding at least.  Do not check
15936         for sig_atomic_t, wchar_t, or wint_t, since the code now does
15937         the right thing even if the types are not defined.  Instead use:
15938         (gl_STDINT_TYPE_PROPERTIES): New macro.
15939         (gl_HEADER_STDINT_H, gl_HEADER_INTTYPES_H): Remove.  Don't bother
15940         testing whether <sys/types.h> clashes, as Autoconf does this for
15941         us now.  All uses removed.
15942         (gl_STDINT_CHECK_TYPES, gl_STDINT_MISSING_BOUND):
15943         (gl_STDINT_MISSING_BOUNDS, gl_STDINT_MISSING_BOUNDS2):
15944         (gl_CHECK_TYPE_SAME):
15945         Remove; no longer needed.
15946         (gl_STDINT_BITSIZEOF): Don't bother to check whether the type
15947         exists, since we'll return 0 anyway in that case.
15948         (gl_INTEGER_TYPE_SUFFIX, gl_STDINT_INCLUDES): New macros.
15949
15950 2006-07-01  Paul Eggert  <eggert@cs.ucla.edu>
15951
15952         * lib/stdint_.h (_GL_STDINT_H): Renamed from _STDINT_H, to avoid
15953         possible collision with system files.
15954         (<stdio.h>, <time.h>, <wchar.h>) [defined __cplusplus && ! defined
15955         __STDC_CONSTANT_MACROS)]: Do not include, since we don't need
15956         WCHAR_MIN and WCHAR_MAX in this case.
15957         (<stddef.h>): Do not include; no longer needed.
15958         (<sys/types.h>): Include if @HAVE_SYS_TYPES_H@, not if
15959         (defined(__OpenBSD__) || defined(__bsdi__) || defined(__sgi)).
15960         (<sys/inttypes.h>): Include if @HAVE_SYS_INTTYPES_H@ &&
15961         !@HAVE_INTTYPES_H@, not if (defined(__FreeBSD__)
15962         && (__FreeBSD__ >= 3) && (__FreeBSD__ <= 4)).
15963         (__STDINT_H__) [@HAVE_STDINT_H@ && defined __sgi && ! defined
15964         __c99]: Define, to work around IRIX <stdint.h> incompatibility.
15965         (@FULL_PATH_STDINT_H@) [!(defined(__sgi) && @HAVE_INTTYPES_H@ &&
15966         !defined(__c99))]: Include in this case too, since it's harmless
15967         now.
15968         (<inttypes.h>) [@HAVE_INTTYPES_H@]: Include, since it's no longer
15969         dangerous to do so.
15970         (@FULL_PATH_INTTYPES_H@) [(defined(__hpux) || defined(_AIX)) &&
15971         @HAVE_INTTYPES_H@]: Do not include, since we now include <inttypes.h>.
15972         (_STDINT_MIN, _STDINT_MAX): New macros.
15973         (int8_t, uint8_t, int16_t, uint16_t, int32_t, uint32_t, int64_t):
15974         (uint64_t, int_least8_t, uint_least8_t, int_least16_t):
15975         (uint_least16_t, int_least32_t, uint_least32_t, int_least64_t):
15976         (uint_least64_t, int_fast8_t, uint_fast8_t, int_fast16_t):
15977         (uint_fast16_t, int_fast32_t, uint_fast32_t, int_fast64_t):
15978         (uint_fast64_t, intptr_t, uintptr_t, intmax_t, uintmax_t): Now
15979         macros, not typedefs; this simplifies things quite a bit.
15980         Use long int for all types narrower than int64_t.
15981         (intmax_t, uintmax_t, INTMAX_C, UINTMAX_C):
15982         Define in terms of long long int or int64_t or long int,
15983         not int64_t or int32_t.  This saves some compile-time testing.
15984         (INT8_MIN, INT8_MAX, UINT8_MAX, INT16_MIN, INT16_MAX, UINT16_MAX):
15985         (INT32_MIN, INT32_MAX, UINT32_MAX, INT64_MIN, INT64_MAX):
15986         (UINT64_MAX, INT_LEAST8_MIN, INT_LEAST8_MAX, UINT_LEAST8_MAX):
15987         (INT_LEAST16_MIN, INT_LEAST16_MAX, UINT_LEAST16_MAX):
15988         (INT_LEAST32_MIN, INT_LEAST32_MAX, UINT_LEAST32_MAX):
15989         (INT_LEAST64_MIN, INT_LEAST64_MAX, UINT_LEAST64_MAX, INT_FAST8_MIN):
15990         (INT_FAST8_MAX, UINT_FAST8_MAX, INT_FAST16_MIN, INT_FAST16_MAX):
15991         (UINT_FAST16_MAX, INT_FAST32_MIN, INT_FAST32_MAX, UINT_FAST32_MAX):
15992         (INT_FAST64_MIN, INT_FAST64_MAX, UINT_FAST64_MAX, INTPTR_MIN):
15993         (INTPTR_MAX, UINTPTR_MAX, INTMAX_MIN, INTMAX_MAX, UINTMAX_MAX):
15994         (PTRDIFF_MIN, PTRDIFF_MAX, SIG_ATOMIC_MIN, SIG_ATOMIC_MAX):
15995         (SIZE_MAX, WCHAR_MIN, WCHAR_MAX, WINT_MIN, WINT_MAX):
15996         undef any previous version and define our own version, for
15997         simplicity and consistency with the new macros for types.
15998         (PTRDIFF_MIN, PTRDIFF_MAX, SIG_ATOMIC_MIN, SIG_ATOMIC_MAX):
15999         (SIZE_MAX, WCHAR_MIN, WCHAR_MAX, WINT_MIN, WINT_MAX):
16000         Simplify definitions by using _STDINT_MIN and _STDINT_MAX
16001         where appropriate.  Rely on new symbols @PTRDIFF_T_SUFFIX@,
16002         @SIG_ATOMIC_T_SUFFIX@, @SIZE_T_SUFFIX@, @WCHAR_T_SUFFIX@,
16003         @WINT_T_SUFFIX@ to keep things simple here.
16004         (UINT8_C, UINT16_C, UINT32_C, INT64_C, UINT64_C):
16005         Simplify by assuming typical 8/16/32/64 host, since we're
16006         already doing that elsewhere anyway.
16007         Use (LONG_MAX >> 31 >> 31 == 1) rather than @HAVE_LONG_64BIT@,
16008         and assume long long int is 64 bits if available.  This
16009         speeds up 'configure'.
16010
16011 2006-07-01  Eric Blake  <ebb9@byu.net>
16012
16013         * m4/stdarg.m4 (gl_STDARG_H): Use proper AH_VERBATIM.
16014         Reported by Andreas Buening.
16015
16016 2006-07-01  Eric Blake  <ebb9@byu.net>
16017
16018         * m4/stdarg.m4 (gl_STDARG_H): Properly parenthesize gl_va_copy.
16019
16020 2006-06-30  Jim Hyslop  <jhyslop@dreampossible.ca>  (tiny change)
16021
16022         * lib/getaddrinfo.c: fixed typo
16023
16024 2006-06-29  Jim Meyering  <jim@meyering.net>
16025
16026         * modules/strftime (Maintainer): Add my name, since with the
16027         FPRINTFTIME changes strftime.c has forked from glibc.
16028
16029 2006-06-29  Eric Blake  <ebb9@byu.net>
16030
16031         * m4/sys_stat_h.m4 (gl_HEADER_SYS_STAT_H): Use AC_C_INLINE.
16032
16033 2006-06-29  Eric Blake  <ebb9@byu.net>
16034
16035         * m4/sys_stat_h.m4 (gl_HEADER_SYS_STAT_H): New file.
16036
16037 2006-06-29  Eric Blake  <ebb9@byu.net>
16038
16039         * lib/stat_.h: New file.
16040
16041 2006-06-29  Eric Blake  <ebb9@byu.net>
16042
16043         * lib/stat_.h (rpl_mkdir): Declare inline, to avoid warnings about
16044         unused static function.
16045
16046 2006-06-29  Eric Blake  <ebb9@byu.net>
16047
16048         * doc/functions.texi (Function Portability): Document missing lstat
16049         on mingw.
16050
16051 2006-06-29  Eric Blake  <ebb9@byu.net>
16052
16053         * MODULES.html.sh: Add sys_stat.
16054         * modules/sys_stat: New module.
16055         * modules/mkstemp (Depends-on): Add sys_stat.
16056
16057 2006-06-29  Derek R. Price  <derek@ximbiot.com>
16058
16059         * m4/strftime.m4: Don't call AC_FUNC_STRFTIME.
16060
16061 2006-06-29  Derek R. Price  <derek@ximbiot.com>
16062
16063         * m4/c-bs-a.m4: Removed.
16064
16065 2006-06-29  Derek R. Price  <derek@ximbiot.com>
16066
16067         * lib/strftime.c: Assume strftime() exists.
16068
16069 2006-06-29  Derek Price  <derek@ximbiot.com>
16070
16071         * modules/c-bs-a: Removed - \a is C89.
16072         * MODULES.html.sh: Remove c-bs-a.
16073
16074 2006-06-29  Bruno Haible  <bruno@clisp.org>
16075
16076         * modules/wcwidth (License): Change to LGPL.
16077
16078 2006-06-28  Simon Josefsson  <jas@extundo.com>
16079
16080         * tests/test-getaddrinfo.c: Test getnameinfo too.  Call WSAStartup
16081         on _WIN32.
16082
16083         * modules/getaddrinfo (Depends-on): Add inet_ntop, needed by
16084         getnameinfo.
16085
16086 2006-06-28  Simon Josefsson  <jas@extundo.com>
16087
16088         * m4/getaddrinfo.m4: Look for getnameinfo prototypes too.
16089
16090 2006-06-28  Simon Josefsson  <jas@extundo.com>
16091
16092         * lib/getaddrinfo.c: Try to load ws2_32.dll on Windows, to find the
16093         functions there.  It will succeed on Windows XP, but on Windows
16094         2000 and (presumably) earlier, it will fail, and use the internal
16095         re-implementation.
16096         (use_win32_p): New function.
16097         (getaddrinfo): Use strtoul on servname, to support numeric ports.
16098         Support AI_NUMERICSERV to disable getservbyname.
16099         (getnameinfo): New function, only supports
16100         NI_NUMERICHOST|NI_NUMERICSERV for now.
16101
16102         * lib/getaddrinfo.h: Test and check for AI_* flags separately, MinGW
16103         only have some of them.  Add AI_NUMERICSERV.  Add prototype for
16104         getnameinfo.
16105
16106 2006-06-28  Eric Blake  <ebb9@byu.net>
16107
16108         * modules/wcwidth: New file.
16109         * modules/mbchar (Depends-on): Add wcwidth.
16110         * modules/mbswidth (Depends-on): Add wcwidth.
16111         * MODULES.html.sh: Add wcwidth.
16112
16113 2006-06-28  Eric Blake  <ebb9@byu.net>
16114
16115         * m4/mbswidth.m4 (gl_MBSDWIDTH): Move wcwidth from here...
16116         * m4/wcwidth.m4 (gl_FUNC_WCWIDTH): ...to this new file.
16117
16118 2006-06-28  Eric Blake  <ebb9@byu.net>
16119
16120         * lib/xvasprintf.h: Fix comments.
16121
16122 2006-06-28  Eric Blake  <ebb9@byu.net>
16123
16124         * lib/mbchar.h (wcwidth): Include wcwidth.h.
16125         * lib/mbswidth.c (wcwidth): Move from here...
16126         * lib/wcwidth.h: ...to this new file.
16127
16128 2006-06-28  Derek R. Price  <derek@ximbiot.com>
16129
16130         * m4/savedir.m4: Remove AC_FUNC_CLOSEDIR_VOID requirement.
16131
16132         * m4/fnmatch.m4 (_AC_LIBOBJ_FNMATCH): Don't require AC_C_CONST, since
16133         it's obsolete.
16134         * m4/strftime.m4 (gl_FUNC_GNU_STRFTIME): Likewise.
16135
16136 2006-06-28  Derek R. Price  <derek@ximbiot.com>
16137
16138         * lib/savedir.c (CLOSEDIR): Remove.  All uses changed to closedir.
16139         Autoconf 2.60 says this stuff was obsolete.
16140
16141 2006-06-28  Bruno Haible  <bruno@clisp.org>
16142
16143         * modules/wcwidth (Files): Add m4/wchar_t.m4.
16144
16145 2006-06-28  Bruno Haible  <bruno@clisp.org>
16146
16147         * m4/wcwidth.m4 (gl_FUNC_WCWIDTH): Also require AC_C_INLINE and
16148         gt_TYPE_WCHAR_T.
16149
16150 2006-06-28  Bruno Haible  <bruno@clisp.org>
16151
16152         * lib/wcwidth.h: Declare nothing if !HAVE_WCHAR_T. Provide a fallback
16153         declaration for wcwidth.
16154         * lib/mbswidth.c: Restore the includes of <wchar.h> and <wctypes.h>.
16155
16156 2006-06-28  Bruno Haible  <bruno@clisp.org>
16157
16158         * lib/mkdtemp.c [MINGW]: Include <io.h>.
16159         (mkdir): Define using _mkdir.
16160
16161 2006-06-28  Bruno Haible  <bruno@clisp.org>
16162
16163         * lib/getaddrinfo.h: Fix POSIX URL.
16164         * lib/getaddrinfo.c (WIN32_NATIVE): New macro. Use it instead of
16165         _WIN32.
16166         (use_win32_p): Make static.
16167         (getaddrinfo): Reject service name if it is empty or does not consist
16168         solely of decimal digits, or if its value is > 65535.
16169         (getnameinfo): Remove useless casts.
16170
16171 2006-06-27  Simon Josefsson  <jas@extundo.com>
16172
16173         * modules/sys_select: New file, suggested by Bruno Haible, Paul
16174         Eggert and Martin Lambers.
16175
16176 2006-06-27  Simon Josefsson  <jas@extundo.com>
16177
16178         * m4/sys_select_h.m4: New file, suggested by Bruno Haible, Paul
16179         Eggert and Martin Lambers.
16180
16181 2006-06-27  Bruno Haible  <bruno@clisp.org>
16182
16183         * m4/stdint.m4 (gl_STDINT_BITSIZEOF): For nonexistent types, set the
16184         result to 0, not to empty.
16185         Reported by Martin Neitzel <neitzel@sco.gaertner.de>.
16186
16187 2006-06-27  Bruno Haible  <bruno@clisp.org>
16188
16189         * lib/stdint_.h (intmax_t, uintmax_t): Undefine before typedef.
16190
16191 2006-06-26  Simon Josefsson  <jas@extundo.com>
16192
16193         * m4/inet_ntop.m4: Don't check for sys/types.h, we assume it is
16194         present.
16195
16196 2006-06-26  Paul Eggert  <eggert@cs.ucla.edu>
16197
16198         * lib/base64.c (B64): Use _ as the formal parameter, not x, to avoid
16199         bug in IBM C V6 for AIX.  Problem reported by Larry Jones in
16200         <http://lists.gnu.org/archive/html/bug-gnulib/2006-06/msg00181.html>.
16201
16202 2006-06-26  Mark D. Baushke  <mdb@gnu.org>
16203
16204         * m4/stdint.m4 (gl_STDINT_H): Treat BSD/OS like OpenBSD.
16205
16206 2006-06-26  Bruno Haible  <bruno@clisp.org>
16207
16208         * modules/stdint (Makefile.am): Also substitute HAVE_WCHAR_H.
16209
16210 2006-06-26  Bruno Haible  <bruno@clisp.org>
16211
16212         * m4/stdint.m4 (gl_STDINT_H): Test also for <wchar.h>.
16213
16214 2006-06-26  Bruno Haible  <bruno@clisp.org>
16215
16216         * m4/stdint.m4 (gl_STDINT_H): Don't include <stdint.h> when using the
16217         SGI C compiler in pre-C99 mode.
16218         Suggested by Mark D. Baushke and Larry Jones.
16219
16220 2006-06-26  Bruno Haible  <bruno@clisp.org>
16221
16222         * lib/stdint_.h: Include <wchar.h> if necessary for WCHAR_MIN or
16223         WCHAR_MAX.
16224         Reported by Mark D. Baushke and Larry Jones.
16225
16226 2006-06-26  Bruno Haible  <bruno@clisp.org>
16227
16228         * lib/stdint_.h: Don't include <stdint.h> when using the SGI C compiler
16229         in pre-C99 mode.
16230         Suggested by Mark D. Baushke and Larry Jones.
16231
16232 2006-06-23  Simon Josefsson  <jas@extundo.com>
16233             Bruno Haible  <bruno@clisp.org>
16234
16235         * gnulib-tool (func_emit_lib_Makefile_am): Define MOSTLYCLEANDIRS.
16236         Emit mostlyclean-local rule.
16237         (func_emit_tests_Makefile_am): Likewise.
16238         * modules/sys_socket (Makefile.am): Use MOSTLYCLEANDIRS.
16239
16240 2006-06-23  Mark D. Baushke  <mdb@gnu.org>
16241
16242         * lib/stdint_.h: Treat BSD/OS like OpenBSD.
16243
16244 2006-06-23  Bruno Haible  <bruno@clisp.org>
16245
16246         * tests/test-stdint.c: Update to match ISO C 99 Technical
16247         Corrigendum 1.
16248
16249 2006-06-23  Bruno Haible  <bruno@clisp.org>
16250
16251         * m4/stdint.m4 (gl_STDINT_H): Treat IRIX like OpenBSD.
16252
16253 2006-06-23  Bruno Haible  <bruno@clisp.org>
16254
16255         * lib/stdint_.h: Treat IRIX like OpenBSD.
16256
16257 2006-06-23  Bruno Haible  <bruno@clisp.org>
16258
16259         * lib/stdint_.h (UINT8_C, UINT16_C, UINT32_C): Define according to
16260         ISO C 99 Technical Corrigendum 1.
16261
16262 2006-06-22  Simon Josefsson  <jas@extundo.com>
16263
16264         * m4/sockpfaf.m4: Include winsock2.h too, to make it work under
16265         MinGW.
16266
16267 2006-06-22  Paul Eggert  <eggert@cs.ucla.edu>
16268
16269         * lib/glob.c (collated_compare): Remove 'const' uses that weren't
16270         needed.  Some compiler complained about some of them.  Problem reported
16271         by Larry Jones in
16272         <http://lists.gnu.org/archive/html/bug-gnulib/2006-06/msg00172.html>.
16273
16274 2006-06-21  Simon Josefsson  <jas@extundo.com>
16275
16276         * tests/test-getaddrinfo.c: New file.
16277
16278         * modules/getaddrinfo-tests: New file.
16279
16280         * MODULES.html.sh: Add inet_pton.
16281
16282         * modules/inet_pton: New file.
16283
16284 2006-06-21  Simon Josefsson  <jas@extundo.com>
16285
16286         * m4/getaddrinfo.m4: Don't define WINVER.  Look for gethostbyname in
16287         -lws2_32 too.  Fixes getaddrinfo on Windows 2000, with the price
16288         of using the (limited) gnulib implementation on Windows XP.
16289
16290         * m4/inet_pton.m4: New file.
16291
16292 2006-06-21  Simon Josefsson  <jas@extundo.com>
16293
16294         * lib/getaddrinfo.c (getaddrinfo): Set ai_family in the return
16295         variable.
16296
16297         * lib/socket_.h: Don't define WINVER.
16298
16299         * lib/inet_pton.h, inet_pton.c: New file, taken from glibc but
16300         slightly modified to work in gnulib.
16301
16302 2006-06-21  Simon Josefsson  <jas@extundo.com>
16303
16304         * doc/gnulib.texi (Windows sockets): Add.
16305
16306 2006-06-21  Paul Eggert  <eggert@cs.ucla.edu>
16307
16308         * lib/read-file.c (fread_file): Start with buffer allocation of
16309         0 bytes rather than 1 byte; this simplifies the code.
16310         Don't invoke feof; it's not needed.  Refactor to avoid duplicate
16311         code to free buffer and save/restore errno.
16312         (internal_read_file): Remove unused local.
16313
16314 2006-06-20  Paul Eggert  <eggert@cs.ucla.edu>
16315
16316         * lib/openat.c (openat): Use ?:, not if, to work around GCC bug 4210
16317         <http://gcc.gnu.org/bugzilla/show_bug.cgi?id=4210>.
16318         Problem reported by Denis Excoffier in
16319         <http://lists.gnu.org/archive/html/bug-tar/2006-06/msg00023.html>.
16320
16321 2006-06-19  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
16322
16323         * modules/sys_socket, modules/socklen: Include sys/types since
16324         FreeBSD 4.x's sys/socket.h needs it.
16325
16326 2006-06-19  Simon Josefsson  <jas@extundo.com>
16327
16328         * lib/inet_ntop.c: Always build inet_ntop4, since inet_ntop6 calls it.
16329
16330 2006-06-19  Paul Eggert  <eggert@cs.ucla.edu>
16331
16332         * lib/alloca_.h (alloca) [defined alloca]: Don't define or declare.
16333
16334 2006-06-19  Bruno Haible  <bruno@clisp.org>
16335
16336         * m4/stdint.m4 (gl_STDINT_H): Enclose the values of FULL_PATH_STDINT_H
16337         and FULL_PATH_INTTYPES_H in angle brackets.
16338         Reported by Mark D. Baushke <mdb@gnu.org>.
16339
16340 2006-06-17  Eric Blake  <ebb9@byu.net>
16341
16342         * m4/rmdir-errno.m4 (gl_FUNC_FMDIR_NOTEMPTY): Assume errno.h declares
16343         errno.
16344
16345 2006-06-17  Bruno Haible  <bruno@clisp.org>
16346
16347         * m4/stdint.m4 (gl_STDINT_H) [FreeBSD >= 5]: Don't include
16348         <sys/inttypes.h>.
16349
16350 2006-06-17  Bruno Haible  <bruno@clisp.org>
16351
16352         * m4/setenv.m4 (gl_PREREQ_SETENV, gl_PREREQ_UNSETENV): Remove test
16353         whether errno is declared. Assume <errno.h> declares errno.
16354
16355 2006-06-17  Bruno Haible  <bruno@clisp.org>
16356
16357         * lib/stdint_.h [FreeBSD >= 5]: Don't include <sys/inttypes.h>.
16358
16359 2006-06-17  Bruno Haible  <bruno@clisp.org>
16360
16361         * lib/stdint_.h (_UINT8_T, _UINT32_T, _UINT64_T): New macros. Fixes a
16362         problem on Solaris 2.5.1.
16363
16364 2006-06-16  Eric Blake  <ebb9@byu.net>
16365
16366         * lib/unsetenv.c [!defined errno]: Assume errno.h declares errno.
16367         * lib/unicodeio.c [!defined errno]: Likewise.
16368         * lib/strtol.c [!defined errno]: Likewise.
16369         * lib/strtod.c [!defined errno]: Likewise.
16370
16371 2006-06-15  Eric Blake  <ebb9@byu.net>
16372
16373         * m4/ssize_t.m4 (gt_TYPE_SSIZE_T): Work in spite of -Werror.
16374
16375 2006-06-15  Eric Blake  <ebb9@byu.net>
16376
16377         * config/srclist.txt (ssize_t.m4): Lose sync.
16378
16379 2006-06-15  Bruno Haible  <bruno@clisp.org>
16380
16381         * modules/stdint (Files): Include m4/full-header-path.m4,
16382         m4/size_max.m4, m4/wchar_t.m4.
16383         (Makefile.am): Many more substitutions.
16384         * modules/stdint-tests: New file.
16385         * tests/test-stdint.c: New file.
16386
16387 2006-06-15  Bruno Haible  <bruno@clisp.org>
16388
16389         * m4/stdint.m4 (gl_STDINT_H): Rewritten to produce a complete stdint.h.
16390         (gl_HEADER_STDINT_H, gl_HEADER_INTTYPES_H, gl_STDINT_CHECK_TYPES,
16391         gl_STDINT_MISSING_BOUND, gl_STDINT_MISSING_BOUNDS,
16392         gl_STDINT_MISSING_BOUNDS2, gl_STDINT_BITSIZEOF, gl_CHECK_TYPES_SIGNED,
16393         gl_CHECK_TYPE_SAME): New macros.
16394
16395 2006-06-15  Bruno Haible  <bruno@clisp.org>
16396
16397         * m4/size_max.m4 (gl_SIZE_MAX): Make it work also when cross-compiling.
16398
16399 2006-06-15  Bruno Haible  <bruno@clisp.org>
16400
16401         * lib/stdint_.h: Rewritten to be fully auto-configured.
16402         Fixes bug on HP-UX/IA64.
16403
16404 2006-06-11  Paul Eggert  <eggert@cs.ucla.edu>
16405
16406         * lib/getdate.y (__attribute__): Don't define if already defined.
16407         Problem reported by Larry Jones.
16408         * lib/utimens.c (__attribute__): Likewise.
16409
16410 2006-06-04  Paul Eggert  <eggert@cs.ucla.edu>
16411
16412         * lib/regexec.c (group_nodes_into_DFAstates): Fix a buffer overrun
16413         reported by Andreas Schwab.
16414
16415 2006-05-30  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
16416             Bruno Haible  <bruno@clisp.org>
16417
16418         * m4/strndup.m4 (gl_FUNC_STRNDUP): Replace the AC_REPLACE_FUNCS with a
16419         check for the declaration of strnlen and a run test that exposes the
16420         AIX 5.1 strnlen bug.  In the failure case, #define strndup to
16421         rpl_strndup.
16422
16423 2006-05-30  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
16424             Bruno Haible  <bruno@clisp.org>
16425
16426         * lib/strndup.c (strndup) [!_LIBC]: Don't undefine macro definition.
16427
16428 2006-05-28  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
16429
16430         * m4/c-strtod.m4 (gl_C99_STRTOLD): Use a link test rather than a
16431         compile test, for Tru64 4.0D.
16432
16433 2006-05-28  Karl Berry  <karl@gnu.org>
16434
16435         * config/srclist.txt (printf-args.c): lose sync.
16436
16437 2006-05-26  Martin Lambers  <marlam@marlam.de>
16438
16439         * lib/getpass.c: Updates the test for the native W32 API, and adds
16440         missing includes, thus fixing compilation warnings.
16441
16442 2006-05-25  Sergey Poznyakoff  <gray@gnu.org.ua>
16443
16444         * lib/exclude.c (exclude_fnmatch): New function.
16445         (excluded_file_name): Call exclude_fnmatch.
16446         * lib/exclude.h (excluded_file_name): New prototype
16447
16448 2006-05-25  Paul Eggert  <eggert@cs.ucla.edu>
16449
16450         * lib/tempname.c (small_open, large_open): New macros.
16451         (__open, __open64) [!_LIBC]: Remove.
16452         (__gen_tempname): Use small_open and large_open instead of __open
16453         and __open64.  This fixes a portability bug on HP-UX 11.11i
16454         reported by Simon Wing-Tang in
16455         <http://lists.gnu.org/archive/html/bug-coreutils/2006-05/msg00114.html>.
16456
16457 2006-05-24  Bruno Haible  <bruno@clisp.org>
16458
16459         * lib/printf-args.c (printf_fetchargs): Turn NULL pointers for
16460         TYPE_STRING and TYPE_WIDE_STRING into a non-NULL replacement.
16461         Reported by Thorsten Maerz <torte@netztorte.de> via
16462         Aaron Stone <aaron@serendipity.cx>.
16463
16464 2006-05-19  Paul Eggert  <eggert@cs.ucla.edu>
16465
16466         * m4/nanosleep.m4 (gl_FUNC_NANOSLEEP): Rename cache variables to use
16467         gl_ rather than jm_.  Link, don't run, so that cross-compiles are
16468         allowed.  Check that resulting type is arithmetic.  Move AC_REQUIRE
16469         and AC_CHECK_HEADERS_ONCE outside of AC_CACHE_CHECK, since they're
16470         not really conditional on the cache.
16471         (gl_PREREQ_NANOSLEEP): Check for sys/select.h.
16472
16473 2006-05-19  Paul Eggert  <eggert@cs.ucla.edu>
16474
16475         * lib/nanosleep.c [HAVE_SYS_SELECT_H]: Include <sys/select.h>.
16476         Use the usual Autoconf way to include <time.h> and/or sys/time.h.
16477         (my_usleep): Don't mishandle maximum value.
16478
16479 2006-05-19  Jim Meyering  <jim@meyering.net>
16480
16481         * lib/getugroups.c: Correct an outdated comment.  From Bruno Haible.
16482
16483 2006-05-17  Bruno Haible  <bruno@clisp.org>
16484
16485         Cygwin portability.
16486         * lib/classpath.c (PATH_SEPARATOR) [CYGWIN]: Define as ':'.
16487
16488 2006-05-17  Bruno Haible  <bruno@clisp.org>
16489
16490         * lib/stdint_.h: Fix recognition of Cygwin.
16491
16492 2006-05-15  Bruno Haible  <bruno@clisp.org>
16493
16494         * build-aux/config.rpath: Improve support for Sun C 5.9 on Linux, based
16495         on libtool patch by Ralf Wildenhues.
16496
16497 2006-05-14  Paul Eggert  <eggert@cs.ucla.edu>
16498
16499         * m4/stdbool.m4 (AC_HEADER_STDBOOL): Fix overly-picky
16500         test for C99 conformance; (bool) 0.5 is an integer constant
16501         expression, but (bool) -0.5 is not.  Problem reported by Fedor
16502         Sergeev in <http://forum.sun.com/jive/thread.jspa?threadID=96202>.
16503
16504 2006-05-11  Simon Josefsson  <jas@extundo.com>
16505
16506         * m4/xvasprintf.m4: Fix obvious typo.
16507
16508 2006-05-11  Jim Meyering  <jim@meyering.net>
16509
16510         * lib/sha1.c (sha1_buffer): Correct comment: s/MD5/SHA1/.  From
16511         James Lemley.
16512
16513 2006-05-10  Simon Josefsson  <jas@extundo.com>
16514
16515         * lib/md4.c: Typo fix, update copyright years.
16516         (K1, K2): Don't use L because it turn computations into 64-bit on
16517         64-bit platforms.
16518
16519 2006-05-10  Paul Eggert  <eggert@cs.ucla.edu>
16520
16521         * lib/crc.c (crc32_update): Remove unnecessary L suffix.
16522         * lib/md4.c (rol): Cast right-shift arg to uint32_t to prevent
16523         unwanted sign propagation, e.g., on hosts with 64-bit int.
16524         There still are some problems with reeelly weird theoretical hosts
16525         (e.g., 33-bit int) but it's not worth worrying about now.
16526         * lib/sha1.c (rol): Likewise.
16527         (K1, K2, K3, K4): Remove unnecessary L suffix.
16528
16529 2006-05-10  Bruno Haible  <bruno@clisp.org>
16530
16531         * lib/des.c: Cast to avoid warnings.
16532
16533 2006-05-09  Bruno Haible  <bruno@clisp.org>
16534
16535         * modules/xvasprintf (Files): Add m4/xvasprintf.m4.
16536         (Depends-on): Depend also on xsize, stdarg.
16537         (configure.ac): Add gl_XVASPRINTF.
16538
16539 2006-05-09  Bruno Haible  <bruno@clisp.org>
16540
16541         * m4/xvasprintf.m4: New file.
16542
16543 2006-05-09  Bruno Haible  <bruno@clisp.org>
16544
16545         * lib/xvasprintf.c: Include limits.h, string.h, xsize.h.
16546         (EOVERFLOW): Define fallback value.
16547         (xstrcat): New function.
16548         (xvasprintf): Recognize the special case of a string concatenation.
16549
16550 2006-05-08  Eric Blake  <ebb9@byu.net>
16551
16552         * gnulib-tool (func_version): Base copyright year on CVS date.
16553         (func_emit_copyright_notice): New function.
16554         (func_emit_lib_Makefile_am): Use it.
16555         (func_emit_tests_Makefile_am): Likewise.
16556         (func_import): Likewise.
16557
16558 2006-05-08  Bruno Haible  <bruno@clisp.org>
16559
16560         * modules/stdarg: New file.
16561         * MODULES.html.sh (func_all_modules): Add section for <stdarg.h>.
16562
16563 2006-05-08  Bruno Haible  <bruno@clisp.org>
16564
16565         * m4/stdarg.m4: New file, from GNU gettext.
16566
16567 2006-05-08  Bruno Haible  <bruno@clisp.org>
16568
16569         * config/srclist.txt (build-aux/config.rpath): different from latest
16570         release.
16571
16572 2006-05-08  Bruno Haible  <bruno@clisp.org>
16573
16574         * build-aux/config.rpath: Add support for Sun C 5.9 on Linux.
16575
16576 2006-05-05  Jim Meyering  <jim@meyering.net>
16577
16578         * m4/warning.m4: New file, derived from bison's file by the same name.
16579
16580 2006-05-03  Bruno Haible  <bruno@clisp.org>
16581
16582         * lib/stdint_.h: Shorter URL.
16583         * lib/inttypes.h: Likewise.
16584
16585 2006-05-02  Paul Eggert  <eggert@cs.ucla.edu>
16586
16587         * modules/inttypes (Maintainer): Change from Derek Price to 'all'.
16588
16589 2006-05-02  Paul Eggert  <eggert@cs.ucla.edu>
16590
16591         * lib/verify.h: Document the internals better.  Most of this change
16592         was written by Bruno Haible.
16593
16594 2006-05-02  Paul Eggert  <eggert@cs.ucla.edu>
16595
16596         * doc/verify.texi: New file, partly based on a proposal by
16597         Bruno Haible.
16598
16599 2006-05-02  Bruno Haible  <bruno@clisp.org>
16600
16601         * m4/full-header-path.m4 (gl_FULL_HEADER_PATH): Move the include_next
16602         test from here...
16603         * m4/_inttypes_h.m4 (gl_INTTYPES_H): ... to here.
16604
16605 2006-04-29  Bruno Haible  <bruno@clisp.org>
16606
16607         * lib/gcd.c: Use WORD_T and GCD instead of unsigned long and gcd.
16608         Suggested by Oskar Liljeblad <oskar@osk.mine.nu>.
16609
16610 2006-04-29  Bruno Haible  <bruno@clisp.org>
16611
16612         * gnulib-tool: Make --update option actually work.
16613
16614 2006-04-29  Bruno Haible  <bruno@clisp.org>
16615
16616         * doc/gcd.texi: New file.
16617         * doc/gnulib.texi: Include it.
16618
16619 2006-04-25  Paul Eggert  <eggert@cs.ucla.edu>
16620
16621         * lib/getdate.y (get_date): When adding relative date, start with the
16622         initial time, not with the result of the first mktime call.
16623
16624 2006-04-25  Bruno Haible  <bruno@clisp.org>
16625
16626         * gnulib-tool (func_import): Output the include directives in three
16627         blocks, sorted separately.
16628         Reported by Ben Pfaff <blp@cs.stanford.edu>.
16629
16630 2006-04-24  Paul Eggert  <eggert@cs.ucla.edu>
16631
16632         * m4/unlink-busy.m4 (gl_FUNC_UNLINK_BUSY_TEXT): Use prototype
16633         to define main with arguments, for C++.  Reported by Eric Blake.
16634         * m4/c-stack.m4 (AC_SYS_XSI_STACK_OVERFLOW_HEURISTIC):
16635         Prefer 'int main ()' to 'int main (void)', for C++.
16636         * m4/getcwd-path-max.m4 (gl_FUNC_GETCWD_PATH_MAX): Likewise.
16637         * m4/fsusage.m4 (gl_FILE_SYSTEM_USAGE): Specify a return type
16638         for 'main', for C99 and C++.
16639
16640 2006-04-24  Paul Eggert  <eggert@cs.ucla.edu>
16641
16642         * m4/fsusage.m4 (gl_FILE_SYSTEM_USAGE): Use return, not exit.
16643         Don't assume that exit status -1 is valid.
16644         * m4/nanosleep.m4 (gl_FUNC_NANOSLEEP): Likewise.
16645         * m4/putenv.m4 (gl_FUNC_PUTENV): Likewise.
16646         * m4/rmdir-errno.m4 (gl_FUNC_RMDIR_NOTEMPTY): Likewise.
16647         * m4/readdir.m4 (GL_FUNC_READDIR): Include <stdlib.h>.
16648         * m4/rename.m4 (vb_FUNC_RENAME): Likewise.
16649         * m4/unlink-busy.m4 (gl_FUNC_UNLINK_BUSY_TEXT): Use AC_RUN_IFELSE,
16650         not AC_TRY_RUN.  Use return, not exit.  Don't assume that
16651         functions can be used without declaring them, or that you can
16652         exit with status -1.
16653         * m4/utimes-null.m4 (gl_FUNC_UTIMES_NULL): Likewise.
16654
16655 2006-04-24  Karl Berry  <karl@gnu.org>
16656
16657         * config/srclist.txt (longdouble.m4): sync lost.
16658
16659 2006-04-24  Eric Blake  <ebb9@byu.net>
16660
16661         * m4/strerror_r.m4 (AC_FUNC_STRERROR_R): Avoid unused variable warning.
16662
16663 2006-04-24  Bruno Haible  <bruno@clisp.org>
16664
16665         * m4/poll.m4 (gl_FUNC_POLL): When cross-compiling, reject also the
16666         poll() implementation in AIX.
16667         Reported by Ralf Wildenhues <Ralf.Wildenhues@gmx.de>.
16668
16669 2006-04-24  Bruno Haible  <bruno@clisp.org>
16670
16671         * m4/poll.m4 (gl_FUNC_POLL): Rearrange code, so that POLL_H gets
16672         assigned exactly once.
16673
16674 2006-04-23  Claudio Fontana  <claudio@gnu.org>
16675             Bruno Haible  <bruno@clisp.org>
16676
16677         * modules/gettext (Makefile.am): Add a -I flag for <libintl.h>.
16678         * gnulib-tool (func_emit_lib_Makefile_am): Emit empty default value
16679         for AM_CPPFLAGS.
16680
16681 2006-04-23  Bruno Haible  <bruno@clisp.org>
16682
16683         * modules/copy-file: Depend on unistd.
16684         * modules/execute: Likewise.
16685         * modules/fatal-signal: Likewise.
16686         * modules/findprog: Likewise.
16687         * modules/mkdtemp : Likewise.
16688         * modules/pipe: Likewise.
16689         * modules/wait-process: Likewise.
16690
16691 2006-04-23  Bruno Haible  <bruno@clisp.org>
16692
16693         * lib/fwriteerror.c (fwriteerror): Call fclose also when an error
16694         condition was already detected.
16695         Reported by Ben Pfaff <blp@cs.stanford.edu>.
16696
16697 2006-04-23  Bruno Haible  <bruno@clisp.org>
16698
16699         * lib/copy-file.c: Include <unistd.h> unconditionally.
16700         * lib/execute.c: Likewise.
16701         * lib/fatal-signal.c: Likewise.
16702         * lib/findprog.c: Likewise.
16703         * lib/mkdtemp.c: Likewise.
16704         * lib/pipe.h: Likewise.
16705         * lib/pipe.c: Likewise.
16706         * lib/wait-process.h: Likewise.
16707
16708 2006-04-23  Bruno Haible  <bruno@clisp.org>
16709
16710         * gnulib-tool (func_usage): Fix --import description. Document
16711         --update.
16712         (func_import): Create temporary file in a temporary directory, if
16713         --dry-run is specified. Silence errors from 'grep' when there are no
16714         m4 files in $m4dir.
16715         (func_create_testdir): Silence errors from 'grep' when there are no
16716         m4 files in $m4dir.
16717         Reported by Karl Berry <karl@freefriends.org>.
16718
16719 2006-04-20  Bruno Haible  <bruno@clisp.org>
16720
16721         * m4/argp.m4 (gl_ARGP): Don't call AC_CHECK_DECLS_ONCE with more than
16722         one argument, so that the code will be portable to Autoconf 2.60.
16723         * m4/getlogin_r.m4 (gl_PREREQ_GETLOGIN_R): Likewise.
16724         * m4/getpass.m4 (gl_PREREQ_GETPASS): Likewise.
16725         * m4/unlocked-io.m4 (gl_FUNC_GLIBC_UNLOCKED_IO): Likewise.
16726
16727 2006-04-19  Derek Price  <derek@ximbiot.com>
16728             Eric Blake  <ebb9@byu.net>
16729
16730         * m4/full-header-path.m4 (gl_FULL_HEADER_PATH): Use </full/path.h>
16731         rather than "/full/path.h".  Update comment to match.  Shorten &
16732         generalize m4_translit call via AS_TR_CPP.
16733
16734 2006-04-19  Derek Price  <derek@ximbiot.com>
16735             Eric Blake  <ebb9@byu.net>
16736
16737         * lib/inttypes.h: Correct grammar in comment.
16738
16739 2006-04-18  Derek Price  <derek@ximbiot.com>
16740             Paul Eggert  <eggert@cs.ucla.edu>
16741
16742         * modules/inttypes: New file.
16743         * modules/strtoimax, modules/strtoumax: Depend on inttypes.
16744
16745 2006-04-18  Derek Price  <derek@ximbiot.com>
16746             Paul Eggert  <eggert@cs.ucla.edu>
16747
16748         * m4/_inttypes_h.m4, m4/full-header-path.m4, m4/include_next.m4:
16749         New files.
16750
16751 2006-04-18  Derek Price  <derek@ximbiot.com>
16752             Paul Eggert  <eggert@cs.ucla.edu>
16753
16754         * lib/inttypes.h: New file.
16755         * lib/strtoimax.c: Assume <inttypes.h>.
16756
16757 2006-04-15  Paul Eggert  <eggert@cs.ucla.edu>
16758
16759         * lib/utimens.c (futimens): glibc futimesat messes up if /proc
16760         isn't mounted.  Problem reported by Kir Kolyshkin.
16761
16762 2006-04-13  Paul Eggert  <eggert@cs.ucla.edu>
16763
16764         * lib/regcomp.c (init_dfa): Don't use wchar_t or wctype_t if
16765         RE_ENABLE_I18N is not defined.  Problem reported by Mark D. Baushke via
16766         Derek R. Price.
16767         * lib/regex.h (RE_DUP_MAX): Update comment to match current
16768         implementation.
16769
16770 2006-04-12  Eric Blake  <ebb9@byu.net>
16771
16772         * modules/time_r (Makefile.am): Remove lib_SOURCES line, as this
16773         is now done automatically by the corresponding Autoconf macro.
16774
16775 2006-04-11  Paul Eggert  <eggert@cs.ucla.edu>
16776
16777         * m4/time_r.m4 (gl_TIME_R): Add AC_LIBSOURCES for time_r.c and
16778         time_r.h.
16779
16780 2006-04-09  Paul Eggert  <eggert@cs.ucla.edu>
16781
16782         Merge regex changes from libc, removing some of our
16783         POSIX-conformance changes that were rejected and redoing them in a
16784         less-intrusive way.
16785
16786         * lib/regcomp.c (re_compile_internal, init_dfa):
16787         Length arg is now size_t, not Idx.  All uses changed.
16788         (peek_token): Forward decl now says internal_function.
16789         (__re_error_msgid, __re_error_msgid_idx):
16790         Now static rather than extern with attribute_hidden.
16791         (re_compile_pattern) [!defined _LIBC]: Use K&R-style defn.
16792         For some reason libc prefers K&R style defns for external functions.
16793         (regerror) [!defined _LIBC]: Likewise.
16794         (re_set_syntax, re_compile_fastmap, regcomp, regfree, re_comp):
16795         (seek_collating_symbol_entry, lookup_collation_sequence_value):
16796         (build_range_exp, build_collating_symbol):
16797         Use K&R-style defn.
16798         (re_compile_fastmap): Use '\0' to memset, not 0.
16799         (utf8_sb_map): Make the calculations more obvious.
16800         (init_dfa, parse_bracket_exp, build_charclass_op):
16801         Call calloc and cast result, as glibc does.
16802         (init_word_char, fetch_token, peek_token, peek_token_bracket):
16803         (build_range_exp, build_collating_symbol):
16804         Now internal functions.
16805
16806         * lib/regex.c [!defined _LIBC]: Allow compiling with C++ compilers.
16807
16808         * lib/regex.h (__USE_GNU_REGEX): New macro.  Don't depend on
16809         _REGEX_SOURCE any more; depend on _GNU_SOURCE instead.
16810         Don't depend on VMS; depend on __VMS instead, for POSIX
16811         namespace cleanness.
16812         (regoff_t): Define to ssize_t, not long int.
16813
16814         Remove the REG_ macros named below.  Instead, make the old names
16815         (e.g., RE_BACKSLASH_ESCAPE_IN_LISTS) visible only if
16816         __USE_GNU_REGEX.
16817         (REG_BACKSLASH_ESCAPE_IN_LISTS):
16818         (REG_BK_PLUS_QM, REG_CHAR_CLASSES, REG_CONTEXT_INDEP_ANCHORS):
16819         (REG_CONTEXT_INDEP_OPS, REG_CONTEXT_INVALID_OPS):
16820         (REG_DOT_NEWLINE, REG_DOT_NOT_NULL, REG_HAT_LISTS_NOT_NEWLINE):
16821         (REG_INTERVALS, REG_LIMITED_OPS, REG_NEWLINE_ALT):
16822         (REG_NO_BK_BRACES, REG_NO_BK_PARENS, REG_NO_BK_REFS):
16823         (REG_NO_BK_VBAR, REG_NO_EMPTY_RANGES):
16824         (REG_UNMATCHED_RIGHT_PAREN_ORD, REG_NO_POSIX_BACKTRACKING):
16825         (REG_NO_GNU_OPS, REG_DEBUG, REG_INVALID_INTERVAL_ORD):
16826         (REG_IGNORE_CASE, REG_CARET_ANCHORS_HERE):
16827         (REG_CONTEXT_INVALID_DUP, REG_NO_SUB, REG_SYNTAX_EMACS):
16828         (REG_SYNTAX_AWK, REG_SYNTAX_GNU_AWK, REG_SYNTAX_POSIX_AWK):
16829         (REG_SYNTAX_GREP, REG_SYNTAX_EGREP, REG_SYNTAX_POSIX_EGREP):
16830         (REG_SYNTAX_ED, REG_SYNTAX_SED, _REG_SYNTAX_POSIX_COMMON):
16831         (REG_SYNTAX_POSIX_BASIC, REG_SYNTAX_POSIX_MINIMAL_BASIC):
16832         (REG_SYNTAX_POSIX_EXTENDED, REG_SYNTAX_POSIX_MINIMAL_EXTENDED):
16833         (REG_DUP_MAX, REG_UNALLOCATED, REG_REALLOCATE, REG_FIXED):
16834         (REG_NREGS):
16835         Remove.  All uses replaced by the old RE_* names.
16836         (RE_BACKSLASH_ESCAPE_IN_LISTS):
16837         (RE_BK_PLUS_QM, RE_CHAR_CLASSES, RE_CONTEXT_INDEP_ANCHORS):
16838         (RE_CONTEXT_INDEP_OPS, RE_CONTEXT_INVALID_OPS):
16839         (RE_DOT_NEWLINE, RE_DOT_NOT_NULL, RE_HAT_LISTS_NOT_NEWLINE):
16840         (RE_INTERVALS, RE_LIMITED_OPS, RE_NEWLINE_ALT):
16841         (RE_NO_BK_BRACES, RE_NO_BK_PARENS, RE_NO_BK_REFS):
16842         (RE_NO_BK_VBAR, RE_NO_EMPTY_RANGES):
16843         (RE_UNMATCHED_RIGHT_PAREN_ORD, RE_NO_POSIX_BACKTRACKING):
16844         (RE_NO_GNU_OPS, RE_DEBUG, RE_INVALID_INTERVAL_ORD):
16845         (RE_IGNORE_CASE, RE_CARET_ANCHORS_HERE):
16846         (RE_CONTEXT_INVALID_DUP, RE_NO_SUB):
16847         Don't bother having these macros be independent of each others'
16848         values, since they no longer exist in the POSIX name space.
16849
16850         Rename the following member names back to their old names,
16851         unless !__USE_GNU_REGEX.  All uses changed back.
16852         (buffer): Renamed from re_buffer.
16853         (allocated): Renamed from re_allocated.
16854         (used): Renamed from re_used.
16855         (syntax): Renamed from re_syntax.
16856         (fastmap): Renamed from re_fastmap.
16857         (translate): Renamed from re_translate.
16858         (can_be_null): Renamed from re_can_be_null.
16859         (regs_allocated): Renamed from re_regs_allocated.
16860         (fastmap_accurate): Renamed from re_fastmap_accurate.
16861         (no_sub): Renamed from re_no_sub.
16862         (not_bol): Renamed from re_not_bol.
16863         (not_eol): Renamed from re_not_eol.
16864         (newline_anchor): Renamed from re_newline_anchor.
16865         (num_regs): Renamed from rm_num_regs.
16866         (start): Renamed from rm_start.
16867         (end): Renamed from rm_end.
16868
16869         (free_state): Move up a bit.
16870
16871         * lib/regex_internal.h (inline) [__GNUC__ < 3 && defined _LIBC]:
16872         #define to be empty.
16873         (ASCII_CHARS): New macro, replacing all uses of 0x80 and/or SBC_MAX / 2
16874         when that is what is intended.
16875         (SBC_MAX): Define to UCHAR_MAX + 1, not 256.
16876         (__re_error_msgid, __re_error_msgid_idx): Remove decls; not needed.
16877         (MAX): New macro.
16878         (re_xmalloc, re_calloc, re_xrealloc, re_x2realloc): Remove.
16879         All uses changed back to re_malloc, etc.  It's now the caller's
16880         responsibility to check for overflow; all callers changed.
16881         (re_alloc_oversized, re_x2alloc_oversized, re_xnmalloc, re_xnrealloc):
16882         (re_x2nrealloc): Remove.
16883         (free_state): Remove decl.
16884
16885         * lib/regexc.c (regexec, re_match, re_search, re_match_2, re_search_2):
16886         (re_set_registers, re_exec):
16887         Use K&R-style defn.
16888
16889         2006-01-31  Roland McGrath  <roland@redhat.com>
16890
16891         * lib/regcomp.c (calc_eclosure_iter): Remove dead variables.
16892         Reported by Mike Frysinger <vapier@gentoo.org>.
16893
16894         2006-01-15  Andreas Jaeger  <aj@suse.de>
16895
16896         [BZ #1950]
16897         * lib/regex_internal.c (re_string_reconstruct): Adjust for
16898         build_wcs_upper_buffer change.
16899         (build_wcs_upper_buffer): Change return type.
16900
16901         2005-12-10  Ulrich Drepper  <drepper@redhat.com>
16902
16903         * lib/regex_internal.h: Include <stdint.h> if available.
16904
16905         2005-12-06  Paolo Bonzini  <bonzini@gnu.org>
16906
16907         * lib/regex_internal.h (SIZE_MAX): Provide a default definition.
16908
16909         2005-10-14  Ulrich Drepper  <drepper@redhat.com>
16910
16911         * lib/regcomp.c: Adjust for changed secondary hash function.
16912
16913         2005-09-30  Ulrich Drepper  <drepper@redhat.com>
16914
16915         * lib/regex.h: Pretty printing.
16916         Clean up namespace a bit.
16917
16918         2005-09-30  Jakub Jelinek  <jakub@redhat.com>
16919
16920         * lib/regexec.c (update_cur_sifted_state, check_arrival,
16921         check_arrival_add_next_nodes): Avoid using uninitialized variable.
16922
16923         2005-09-06  Paul Eggert  <eggert@cs.ucla.edu>
16924                     Ulrich Drepper  <drepper@redhat.com>
16925
16926         [BZ #1302]
16927         * lib/regex_internal.h (bitset_t): Renamed from bitset.  All uses
16928         changed.
16929         (bitset_word_t): Renamed from bitset_word.  All uses changed.
16930
16931         2005-09-22  Ulrich Drepper  <drepper@redhat.com>
16932
16933         [BZ #281]
16934         * lib/regex.h: Define RE_TRANSLATE_TYPE as unsigned char *.
16935         * lib/regcomp.c: Remove unnecessary uses of
16936         unsigned RE_TRANSLATE_TYPE.
16937         * lib/regex_internal.h: Likewise.
16938         * lib/regex_internal.c: Likewise.
16939         * lib/regexec.c: Likewise.
16940         Based on a patch by Stepan Kasal <kasal@ucw.cz>.
16941
16942         2005-09-07  Ulrich Drepper  <drepper@redhat.com>
16943
16944         * lib/regexec.c (find_recover_state): Remove unnecessary
16945         initialization.
16946         (transit_state_bkref): Make DFA a const pointer.
16947         (get_subexp): Likewise.
16948         (check_arrival): Likewise.
16949         (update_cur_sifted_state): Likewise.
16950         (re_search_internal): Likewise.
16951         (prune_impossible_nodes): Likewise.
16952         (acquire_init_state_context): Likewise.
16953         (proceed_next_node): Likewise.
16954         (set_regs): Likewise.
16955         (free_fail_stack_return): Likewise.
16956         (check_arrival_expand_ecl): Mark DFA parameter as const.
16957         (check_arrival_expand_ecl_sub): Likewise.
16958         (check_subexp_limits): Likewise.
16959         (sub_epsilon_src_nodes):  Likewise.
16960         (add_epsilon_src_nodes):  Likewise.
16961         (merge_state_array): Likewise.
16962         (update_regs): Likewise.
16963         (build_trtable): Likewise.
16964         (sift_states_backward): Mark MCTX parameter as const.
16965         (build_sifted_states): Likewise.
16966         (update_cur_sifted_state): Likewise.
16967         (sift_states_mkref): Likewise.
16968         (check_arrival_expand_ecl): Mark eclosure as const.
16969         (check_dst_limits_calc_pos_1): Likewise.
16970         * lib/regex_internal.h (re_match_context_t): Make dfa a const
16971         pointer.
16972
16973         2005-09-06  Ulrich Drepper  <drepper@redhat.com>
16974
16975         * lib/regexec.c (merge_state_with_log): Define dfa as const pointer.
16976         (transit_state_sb): Likewise.
16977         (transit_state_mb): Likewise.
16978         (sift_states_iter_mb): Likewise.
16979         (check_arrival_add_next_nodes): Likewise.
16980         (check_node_accept_bytes): Change first parameter to pointer-to-const.
16981         [_LIBC] (re_search_2_stub): Use mempcpy.
16982
16983         * lib/regex_internal.c (re_string_reconstruct): Avoid calling
16984         mbrtowc for very simple UTF-8 case.
16985
16986         * lib/regex_internal.c (re_acquire_state): Make DFA pointer arg
16987         a pointer-to-const.
16988         (re_acquire_state_context): Likewise.
16989         * lib/regex_internal.h: Adjust prototypes.
16990
16991         * lib/regex.c: Prevent using C++ compilers.
16992
16993         * lib/regex_internal.c (re_acquire_state): Minor code rearrangement.
16994         (re_acquire_state_context): Likewise.
16995
16996 2006-04-09  Paul Eggert  <eggert@cs.ucla.edu>
16997
16998         * modules/regex (Depends-on): Add ssize_t.
16999
17000 2006-04-09  Paul Eggert  <eggert@cs.ucla.edu>
17001
17002         * m4/regex.m4 (gl_REGEX): Check for new glibc interface to
17003         translation table.
17004
17005 2006-04-09  Paul Eggert  <eggert@cs.ucla.edu>
17006
17007         * doc/gnulib-tool.texi (Modified imports): pathname -> file name.
17008
17009 2006-03-29  Mark D. Baushke  <mdb@gnu.org>
17010             Bruno Haible  <bruno@clisp.org>
17011
17012         * lib/stdint_.h: On OpenBSD, don't redefine types already included in
17013         <sys/types.h> and <inttypes.h>.
17014
17015 2006-03-25  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
17016
17017         * m4/argz.m4 (gl_FUNC_ARGZ): If we define `error_t', also define
17018         `__error_t_defined', so argp.h will not typedef the former.
17019
17020 2006-03-25  Paul Eggert  <eggert@cs.ucla.edu>
17021
17022         * m4/regex.m4 (gl_REGEX): Don't insist on REG_SYNTAX_POSIX_EGREP,
17023         REG_SYNTAX_EMACS, and REG_IGNORE_CASE.  Settle for the traditional
17024         glibc names.  Even if glibc is changed to conform to POSIX, the
17025         traditional names will be available anyway, since regex depends on
17026         the extensions module.  Also, fix a longstanding typo in the
17027         implementation of Spencer ERE test #75 from grep 2.3.  Problems
17028         reported by Emanuele Giaquinta.  Also, change sense of cached
17029         variable, so that the message makes sense.
17030
17031 2006-03-24  Simon Josefsson  <jas@extundo.com>
17032
17033         * lib/base64.c: Fix problems reported by Eric Blake <ebb9@byu.net>,
17034         including some doc fixes.
17035         (base64_encode_alloc): Fix +1 bug on allocation failures.
17036
17037 2006-03-24  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
17038
17039         * lib/base64.c (base64_encode): Do not read past end of array with
17040         unsanitized input on systems with CHAR_BIT > 8.
17041
17042 2006-03-24  Eric Blake  <ebb9@byu.net>
17043
17044         * lib/time_r.c (copy_string_result): Remove, as it is no longer used.
17045
17046 2006-03-22  Karl Berry  <karl@gnu.org>
17047
17048         * config/srclist.txt (*setenv.[ch]): get from coreutils.
17049         * config/srclistvars.sh (COREUTILS): new var.
17050
17051 2006-03-17  Jim Meyering  <jim@meyering.net>
17052
17053         * m4/regex.m4 (gl_REGEX): Fix typo in last change:
17054         s/_REGEX_WIDE_OFFSETS/_REGEX_LARGE_OFFSETS/.
17055
17056 2006-03-16  Paul Eggert  <eggert@cs.ucla.edu>
17057
17058         * m4/regex.m4 (gl_REGEX): Don't check for off_t, since the code
17059         no longer needs it.  Instead, check that regoff_t is as least
17060         as wide as ptrdiff_t.
17061
17062         Don't define _REGEX_WIDE_OFFSETS unless using the included regex,
17063         so that our regex.h stays compatible with the installed regex.
17064         This is helpful for installers who configure --without-included-regex.
17065         Problem reported by Emanuele Giaquinta.
17066
17067 2006-03-16  Paul Eggert  <eggert@cs.ucla.edu>
17068
17069         * lib/regex.h (regoff_t) [defined _REGEX_LARGE_OFFSETS]:
17070         Typedef to long int, not to off_, as POSIX will likely change
17071         in that direction.
17072
17073 2006-03-15  Eric Blake  <ebb9@byu.net>
17074
17075         * m4/dirfd.m4 (gl_FUNC_DIRFD): Use AC_REQUIRE for AC_HEADER_DIRENT.
17076
17077 2006-03-13  Sergey Poznyakoff  <gray@gnu.org.ua>
17078
17079         * lib/argp-help.c (validate_uparams): Fix typo
17080         * lib/argp-parse.c (argp_default_options): Consistently begin help
17081         messages with a lowercase letter.
17082
17083 2006-03-11  Paul Eggert  <eggert@cs.ucla.edu>
17084
17085         * lib/time_r.h (asctime_r, ctime_r): Remove.  These functions can
17086         overrun buffers and shouldn't be used (much as gets shouldn't be
17087         used).
17088         * lib/time_r.c (asctime_r, ctime_r): Likewise.
17089
17090 2006-03-08  Simon Josefsson  <jas@extundo.com>
17091
17092         * m4/gc-random.m4: Permit 'no' as variable values and fix warnings,
17093         suggested by Ralf Wildenhues <Ralf.Wildenhues@gmx.de>.
17094
17095 2006-03-08  Simon Josefsson  <jas@extundo.com>
17096
17097         * m4/gc-random.m4: Call AC_CANONICAL_HOST and use $host_os instead of
17098         $target, suggested by Ralf Wildenhues <Ralf.Wildenhues@gmx.de>.
17099
17100 2006-03-08  Simon Josefsson  <jas@extundo.com>
17101
17102         * lib/gc-gnulib.c (randomize): Don't open files called 'no', they
17103         signal that configure disabled the device.
17104
17105 2006-03-08  Simon Josefsson  <jas@extundo.com>
17106
17107         * build-aux/maint.mk: Fix refresh-po, to handle no translated
17108         languages.
17109
17110 2006-03-07  Simon Josefsson  <jas@extundo.com>
17111
17112         * modules/getopt (Depends-on): Add unistd.
17113
17114         * modules/unistd: New file.
17115
17116 2006-03-07  Simon Josefsson  <jas@extundo.com>
17117
17118         * modules/gc-random: New file.
17119
17120 2006-03-07  Simon Josefsson  <jas@extundo.com>
17121
17122         * m4/unistd_h.m4: New file.
17123
17124 2006-03-07  Simon Josefsson  <jas@extundo.com>
17125
17126         * m4/readline.m4 (gl_FUNC_READLINE): Rewrite the cached part of the
17127         test to be side-effect free by storing the result in the cache
17128         variable gl_cv_lib_readline, and moving the assignment of
17129         LIBREADLINE and LTLIBREADLINE outside the COMMANDS-TO-SET-IT.
17130         From Ralf Wildenhues <Ralf.Wildenhues@gmx.de>.
17131
17132 2006-03-07  Simon Josefsson  <jas@extundo.com>
17133
17134         * m4/gc-random.m4: New file, mostly from gc.m4.  Warn instead of
17135         error on missing devices (the functions will return an error).
17136
17137         * m4/gc.m4: Move random stuff to gc-random.m4
17138
17139 2006-03-07  Simon Josefsson  <jas@extundo.com>
17140
17141         * lib/unistd_.h: New file.
17142
17143 2006-03-07  Simon Josefsson  <jas@extundo.com>
17144
17145         * lib/gc-libgcrypt.c, gc-gnulib.c: Use GC_USE_RANDOM.
17146
17147 2006-03-07  Paul Eggert  <eggert@cs.ucla.edu>
17148
17149         * m4/unistd_h.m4 (gl_HEADER_UNISTD): Rename, to match modules file.
17150         Problem reported by Juan Manuel Guerrero.
17151
17152 2006-03-07  Paul Eggert  <eggert@cs.ucla.edu>
17153
17154         * lib/c-stack.c: Include unistd.h unconditionally, since we now assume
17155         the unistd module.
17156         * lib/getlogin_r.c: Likewise.
17157         * lib/getlogin_r.h: Likewise.
17158         * lib/glob.c: Likewise.
17159         * lib/pagealign_alloc.c: Likewise.
17160         * lib/unistd_.h: Remove; no longer needed.
17161
17162 2006-03-07  Paul Eggert  <eggert@cs.ucla.edu>
17163
17164         * MODULES.html.sh (Support for systems lacking POSIX:2001):
17165         Add unistd.
17166         * modules/c-stack (Depends-on): Add unistd.
17167         * modules/getlogin_r: Likewise.
17168         * modules/glob: Likewise.
17169         * modules/pagealign_alloc: Likewise.
17170         * modules/unistd (Files): Remove lib/unistd_.h.
17171         (EXTRA_DIST): Remove.
17172         (unistd.h): Create using 'echo' rather than 'cp', so that we don't
17173         need unistd_.h.
17174         (MOSTLYCLEANFILES): Remove unistd.h-t.
17175
17176 2006-03-03  Simon Josefsson  <jas@extundo.com>
17177
17178         * build-aux/maint.mk: Add several syntax checks from CoreUtils.
17179
17180 2006-03-03  Simon Josefsson  <jas@extundo.com>
17181
17182         * build-aux/maint.mk: Add refresh-po rule, based on ideas from
17183         libidn and bison.
17184
17185 2006-03-03  Simon Josefsson  <jas@extundo.com>
17186
17187         * build-aux/maint.mk: Add indent target.
17188
17189 2006-03-03  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de> (tiny change)
17190
17191         * m4/poll.m4 (gl_FUNC_POLL): If we deem poll(2) unacceptable, use
17192         our replacement poll.h in any case, to avoid a differing
17193         declaration from a system header.  Seen on AIX.
17194
17195 2006-03-01  Simon Josefsson  <jas@extundo.com>
17196
17197         * lib/readline.c: Fix typo, tiny patch from Stepan Kasal
17198         <kasal@ucw.cz>.
17199
17200 2006-03-01  Paul Eggert  <eggert@cs.ucla.edu>
17201
17202         * modules/gettime (Depends-on): Add extensions module.
17203         * modules/nanosleep (Depends-on): Likewise.
17204         * modules/settime (Depends-on): Likewise.
17205
17206 2006-03-01  Paul Eggert  <eggert@cs.ucla.edu>
17207
17208         * m4/clock_time.m4 (gl_CLOCK_TIME): Require gl_USE_SYSTEM_EXTENSIONS,
17209         not merely AC_GNU_SOURCE, for the benefit of Solaris 10 when compiled
17210         pedantically.
17211         * m4/nanosleep.m4 (gl_FUNC_NANOSLEEP): Likewise.
17212         * m4/timespec.m4 (gl_TIMESPEC): Likewise.
17213
17214         * m4/extensions.m4 (gl_USE_SYSTEM_EXTENSIONS): Use "=" with "test",
17215         not "==".  Reported by Ralf Wildenhues.
17216
17217 2006-03-01  Karl Berry  <karl@gnu.org>
17218
17219         * doc/Copyright/request-*: new files, synced from gnuorg.
17220
17221 2006-03-01  Karl Berry  <karl@gnu.org>
17222
17223         * config/srclist.txt (Copyright/*): new entries.
17224
17225 2006-02-28  Simon Josefsson  <jas@extundo.com>
17226
17227         * lib/getopt.c: Protect #include of unistd.h, for MSVS.
17228
17229 2006-02-27  Simon Josefsson  <jas@extundo.com>
17230
17231         * lib/base64.h: Indent #define's.  From Jim Meyering
17232         <jim@meyering.net>.
17233
17234 2006-02-27  Jim Meyering  <jim@meyering.net>
17235
17236         Revert the change of 2006-02-24, so these files can continue
17237         to be sync'd from gettext.
17238         * lib/mkdtemp.c, setenv.c, unsetenv.c: *Un*-normalize inclusion
17239         of `config.h'.
17240
17241 2006-02-26  Paul Eggert  <eggert@cs.ucla.edu>
17242
17243         * modules/intprops: New file.
17244         * MODULES.html.sh (Numeric conversion functions <stdlib.h>):
17245         Add intprops.
17246         * modules/getloadavg (Files): Remove lib/intprops.h.
17247         (Depends-on): Add intprops.
17248         * modules/human: Likewise.
17249         * modules/inttostr: Likewise.
17250         * modules/openat: Likewise.
17251         * modules/sig2str: Likewise.
17252         * modules/userspec: Likewise.
17253         * modules/utimecmp: Likewise.
17254         * modules/xnanosleep: Likewise.
17255         * modules/xstrtol: Likewise.
17256
17257 2006-02-24  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>  (tiny changes)
17258
17259         * modules/xstrtod: Omit xstrtod.h, xstrtod.c; they're in LIB_SOURCES.
17260         * modules/lock-tests (TESTS): Use $(EXEEXT).
17261         * modules/tls-tests: Likewise.
17262         * modules/argp-tests: Likewise.
17263         (check_PROGRAMS): New var, replacing...
17264         (noinst_PROGRAMS, test_argp_SOURCES): Remove.
17265
17266 2006-02-24  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
17267
17268         * lib/mkdtemp.c, lib/setenv.c, lib/unsetenv.c: Normalize inclusion of
17269         `config.h'.
17270
17271 2006-02-24  Paul Eggert  <eggert@cs.ucla.edu>
17272
17273         * lib/glob.c: Say "invalid" rather than "illegal" in comments.
17274
17275 2006-02-22  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
17276
17277         Sync from coreutils.
17278         * m4/mkdir-p.m4 (gl_MKDIR_PARENTS): Require gl_FUNC_LCHMOD and
17279         gl_CHDIR_SAFER.
17280
17281 2006-02-22  Jim Meyering  <jim@meyering.net>
17282
17283         Sync from coreutils.
17284         * m4/chdir-safer.m4: New file.
17285
17286 2006-02-20  Paul Eggert  <eggert@cs.ucla.edu>
17287
17288         * lib/getcwd.c (AT_FDCWD): Work around a bug in Solaris 9 and 10, where
17289         AT_FDCWD exceeds INT_MAX.
17290         * lib/openat.h (AT_FDCWD): Likewise.
17291
17292 2006-02-17  Eric Blake  <address@hidden>
17293
17294         * m4/getaddrinfo.m4 (gl_GETADDRINFO): Fix caching error.
17295
17296 2006-02-16  Simon Josefsson  <jas@extundo.com>
17297
17298         * modules/getaddrinfo (Depends-on): Add sys_socket.
17299
17300 2006-02-15  Simon Josefsson  <jas@extundo.com>
17301
17302         * build-aux/maint.mk: Add dsyntax-check rule.
17303
17304 2006-02-15  Eric Blake  <ebb9@byu.net>
17305
17306         * m4/sys_socket_h.m4 (gl_HEADER_SYS_SOCKET): Don't attempt using
17307         winsock2.h or ws2tcpip.h when sys/socket.h is present. Fixes
17308         'present but cannot compile' warnings on cygwin.
17309         * m4/socklen.m4 (gl_TYPE_SOCKLEN_T): Use gl_HEADER_SYS_SOCKET.  Don't
17310         use ws2tcpip.h if sys/socket.h works.
17311         * m4/getaddrinfo.m4 (gl_PREREQ_GETADDRINFO): Use gl_HEADER_SYS_SOCKET.
17312         (gl_GETADDRINFO): Don't use ws2tcpip.h when sys/socket.h is present.
17313
17314 2006-02-14  Simon Josefsson  <jas@extundo.com>
17315
17316         * modules/maintainer-makefile (Files): Rename.
17317
17318         * build-aux/GNUmakefile: Rename Makefile.maint to maint.mk
17319         and (the local) Makefile.cfg to maint-cfg.mk.
17320
17321         * build-aux/Makefile.maint, build-aux/maint.mk: Renamed the former
17322         to the latter.
17323
17324         * modules/maintainer-makefile: New module.
17325
17326         * build-aux/Makefile.maint: New file, from GNU CoreUtils, although
17327         severaly stripped to make it possible to build it up from scratch
17328         with reliable tests.
17329
17330         * build-aux/GNUmakefile: New file, from GNU CoreUtils with some
17331         fixes to permit overriding the default actions when configure and
17332         makefile are not available.
17333
17334 2006-02-14  Paul Eggert  <eggert@cs.ucla.edu>
17335
17336         Sync from coreutils.
17337         * modules/lstat (Depends-on): Don't depend on xalloc.
17338         (License): Change from GPL to LGPL, since this is now simply a
17339         replacement for a libc function.
17340
17341 2006-02-14  Jim Meyering  <jim@meyering.net>
17342
17343         Sync from coreutils.
17344
17345         Eliminate the unwelcome (albeit unlikely) possibility of xmalloc
17346         failure on deficient systems, and simplify gnulib lgpl dependencies.
17347         * lib/lstat.c (rpl_lstat): Rewrite to use stat() in place of the
17348         xmalloc/lstat combination.  Based on a patch from Bruno Haible.
17349
17350         * lib/xalloc-die.c: Remove unused definition of N_.
17351
17352 2006-02-14  Jim Meyering  <jim@meyering.net>
17353
17354         Sync from coreutils.
17355         * m4/ls-mntd-fs.m4 (AC_FUNC_GETMNTENT): Invoke
17356         AC_CHECK_FUNCS(getmntent) unconditionally so that tests of
17357         $ac_cv_func_getmntent (e.g., in gl_LIST_MOUNTED_FILE_SYSTEMS) need not
17358         double-quote uses of that variable, to accommodate the rare case in
17359         which getmntent is available in none of the libraries checked.  This
17360         happens at least on FreeBSD 5.0.
17361
17362 2006-02-13  Simon Josefsson  <jas@extundo.com>
17363
17364         * gnulib-tool (Usage): Fix --import, from
17365         karl@freefriends.org (Karl Berry).
17366
17367 2006-02-13  Sergey Poznyakoff  <gray@gnu.org.ua>
17368
17369         * lib/argp-fmtstream.c: Restore another bugfix lost on 2005-12-12
17370
17371 2006-02-07  Sergey Poznyakoff  <gray@gnu.org.ua>
17372
17373         * lib/argp-namefrob.h: Restore changes accidentally lost during the
17374         "autoupdate" on 2005-12-12.
17375
17376 2006-02-07  Paul Eggert  <eggert@cs.ucla.edu>
17377
17378         * modules/closeout (Depends-on): Remove atexit.
17379
17380 2006-02-07  Paul Eggert  <eggert@cs.ucla.edu>
17381
17382         * lib/closeout.c (close_stdout): Don't assume 'bool' converts nonzero
17383         ints to 0 or 1, as this isn't true for the stdbool.h substitute.
17384
17385 2006-02-05  Paul Eggert  <eggert@cs.ucla.edu>
17386
17387         * m4/extensions.m4 (gl_USE_SYSTEM_EXTENSIONS): Don't #define
17388         __EXTENSIONS__ if this causes compilation to fail.  Problem
17389         reported by Nelson H. F. Beebe with Solaris 10 and Sun C 5.7
17390         c89 -D_XOPEN_SOURCE -D_XOPEN_SOURCE_EXTENDED.
17391
17392 2006-01-27  Paul Eggert  <eggert@cs.ucla.edu>
17393
17394         * lib/fnmatch.c (L_): Renamed from L, to work around a bug in
17395         Mac OS X 10.3.9 with GCC 3 reported by Claudio Fontana in
17396         <http://lists.gnu.org/archive/html/bug-gnulib/2006-01/msg00074.html>.
17397         All uses changed.
17398
17399 2006-01-26  Simon Josefsson  <jas@extundo.com>
17400
17401         * lib/socket_.h: Set WINVER to 0x0501, to make sure getaddrinfo
17402         prototype is visible on mingw32.
17403
17404         * lib/getaddrinfo.h: Define EAI_ADDRFAMILY and EAI_SYSTEM if not set,
17405         for mingw32.
17406
17407         * lib/gai_strerror.c, getaddrinfo.h: Protect netdb.h #include (for
17408         mingw32).
17409
17410 2006-01-26  Paul Eggert  <eggert@cs.ucla.edu>
17411
17412         * lib/fts.c (diropen): Open with O_NOCTTY | O_NONBLOCK too.  Don't
17413         attempt to open for write; this always fails, at least on POSIX
17414         hosts.  This reinstates the 2006-01-09 change, which was
17415         inadvertently removed.
17416
17417 2006-01-26  Bruno Haible  <bruno@clisp.org>
17418
17419         * gnulib-tool (func_import): Use "trap 'exit $?' instead of "trap :".
17420         Reported by Paul Eggert.
17421
17422 2006-01-26  Bruno Haible  <bruno@clisp.org>
17423             Paul Eggert  <eggert@cs.ucla.edu>
17424
17425         * lib/stdbool_.h (_Bool)
17426         [(! (defined __cplusplus || defined __BEOS__)
17427           && !defined __GNUC__
17428           && !(defined __HP_cc || defined __xlc__
17429                || (defined __SUNPRO_C && (__SUNPRO_C < 0x550 || __STDC__ == 1))
17430                || defined __sgi))]:
17431         #define to signed char in these cases too; this simplifies
17432         the code (so that we don't have to worry about HP-UX, AIX, SunPRO,
17433         etc., separately) and makes it more conservative.
17434
17435 2006-01-25  Simon Josefsson  <jas@extundo.com>
17436
17437         * m4/getaddrinfo.m4: Look for getaddrinfo inside ws2tcip.h and
17438         -lws2_32.  Protect sys/socket.h and netdb.h #include's.  Include
17439         ws2tcpip.h with WINVER=0x0501.  All for mingw32.
17440
17441 2006-01-25  Sergey Poznyakoff  <gray@gnu.org.ua>
17442
17443         * lib/argp-namefrob.h: Bugfix. Remove stray #
17444
17445 2006-01-25  Paul Eggert  <eggert@cs.ucla.edu>
17446
17447         * m4/stdbool.m4 (AC_HEADER_STDBOOL): Check for xlc bug if __GCC__ too,
17448         so that we test the test.
17449         Check for yet another HP-UX cc bug involving *bool |= bool.
17450
17451 2006-01-25  Karl Berry  <karl@gnu.org>
17452
17453         * config/srclist.txt (vasnprintf.c): sync lost.
17454
17455 2006-01-25  Jim Meyering  <jim@meyering.net>
17456
17457         Sync from the stable (b5) branch of coreutils:
17458
17459         * lib/fts.c (fts_children): Don't let close() clobber errno from
17460         failed fchdir().
17461
17462         * lib/fts.c (fts_stat): When following a symlink-to-directory,
17463         don't necessarily interpret stat-fails+lstat-succeeds as indicating
17464         a dangling symlink.  That can also happen at least for ELOOP.
17465         The fix: return FTS_SLNONE only when the stat errno is ENOENT.
17466         FYI, this bug predates the inclusion of fts.c in coreutils.
17467
17468         * lib/fts.c (fts_open): Put new maxarglen declaration and uses
17469         in their own block, so pre-c99 compilers don't object.
17470
17471         Avoid the double-free (first in fts_read, second in fts_close) that
17472         would occur when an `active' directory is made inaccessible (e.g.,
17473         via chmod a-x) during a traversal.
17474         * lib/fts.c (fts_read): After a failed fchdir, update sp->fts_cur
17475         before returning.  Reproduce this failure by
17476         mkdir -p a/b; cd a; chmod a-x . b
17477         Reported by Stavros Passas.
17478
17479 2006-01-25  Jim Meyering  <jim@meyering.net>
17480
17481         * lib/fileblocks.c: Remove more useless parentheses.
17482         * lib/readutmp.h: Likewise.
17483
17484 2006-01-25  Bruno Haible  <bruno@clisp.org>
17485
17486         * lib/stdbool_.h (_Bool) [IRIX cc]: Define as 'signed char', to avoid
17487         warnings.
17488         Reported by Paul Eggert.
17489
17490 2006-01-25  Bruno Haible  <bruno@clisp.org>
17491
17492         * gnulib-tool (func_import): Use "trap :" instead of "trap -" to get
17493         rid of a trap command. For Solaris sh.
17494         Reported by Mark D. Baushke <mdb@gnu.org>.
17495
17496 2006-01-24  Simon Josefsson  <jas@extundo.com>
17497
17498         * lib/socket_.h (SHUT_WR, SHUT_RDWR): Don't hardcode, suggested by
17499         Bruno.
17500
17501 2006-01-24  Karl Berry  <karl@gnu.org>
17502
17503         * config/srclist.txt (argp-namefrob.h): sync lost.
17504
17505 2006-01-24  Jim Meyering  <jim@meyering.net>
17506
17507         * modules/openat (Files): Add lib/intprops.h.
17508         From Mark D. Baushke.
17509
17510 2006-01-24  Jim Meyering  <jim@meyering.net>
17511
17512         * m4/openat.m4 (gl_FUNC_OPENAT): Add AC_LIBSOURCES([intprops.h]).
17513         Reported by Mark D. Baushke.
17514
17515 2006-01-24  Jim Meyering  <jim@meyering.net>
17516
17517         * lib/socket_.h: Remove useless parentheses in uses of cpp `defined'.
17518
17519 2006-01-24  Bruno Haible  <bruno@clisp.org>
17520
17521         * modules/strnlen (Maintainer): Change from glibc to all.
17522
17523 2006-01-24  Bruno Haible  <bruno@clisp.org>
17524
17525         * m4/stdbool.m4 (AC_HEADER_STDBOOL): Check for IBM and HP-UX bugs.
17526         Patch by Paul Eggert.
17527
17528 2006-01-24  Bruno Haible  <bruno@clisp.org>
17529
17530         * lib/stdbool_.h (_Bool) [__cplusplus]: Don't define if the compiler
17531         already has it.
17532         Report and patch by Albert Chin-A-Young  <china@thewrittenword.com> on
17533         2005-11-26.
17534
17535         * lib/stdbool_.h (_Bool) [HP-UX cc, AIX cc,xlc]: Define as
17536         'signed char' to avoid problems with the built-in _Bool type.
17537         Reported by Paul Eggert on 2005-11-26.
17538
17539 2006-01-24  Bruno Haible  <bruno@clisp.org>
17540
17541         * gnulib-tool (func_import): Avoid constructing complicated sed
17542         expressions inside backquote.
17543         Report and solution by Mark D. Baushke <mdb@gnu.org>.
17544
17545 2006-01-23  Ulrich Drepper  <drepper@redhat.com>
17546
17547         These changes imported from libc.
17548         * lib/getopt.c: Use __fxprintf instead of inline stream orientation
17549         test and two separate function calls.
17550         * lib/strndup.c (__strndup): Add libc_hidden_def.
17551
17552 2006-01-23  Simon Josefsson  <jas@extundo.com>
17553
17554         * modules/lock-tests: Use check_PROGRAMS instead of noinst_PROGRAMS.
17555         Remove the test_*_SOURCES variable: automake infers it by default.
17556         * modules/tls-tests: Likewise.
17557
17558 2006-01-23  Paul Eggert  <eggert@cs.ucla.edu>
17559
17560         Work around porting bugs reported by Dieter in
17561         <http://lists.gnu.org/archive/html/bug-bison/2006-01/msg00049.html>.
17562         * lib/getopt.c (_NOPROTO): Remove; no longer needed.
17563         Include <stdlib.h> and <unistd.h> in all environments; it's safe now.
17564         Include "getopt.h" first, to check interface.
17565         (getenv): Declare only if defined HAVE_DECL_GETENV &&
17566         !HAVE_DECL_GETENV.
17567         * lib/strndup.c [!_LIBC]: Include "strndup.h" to get prototype.
17568         (__strndup): Revert to K&R-style function dfns, the glibc style.
17569         * lib/strnlen.c: Don't claim it's taken from glibc; it's not.
17570         (strnlen, __strnlen): Remove #defines and #undefs; not needed.
17571         Include strnlen.h first, to get prototype properly.
17572         (strnlen): Renamed from __strnlen.
17573         Remove weak alias.
17574
17575 2006-01-23  Paul Eggert  <eggert@cs.ucla.edu>
17576
17577         * m4/getopt.m4 (gl_PREREQ_GETOPT): Check for getenv decl.
17578
17579 2006-01-23  Paul Eggert  <eggert@cs.ucla.edu>
17580
17581         * config/srclist.txt: Adjust to reflect glibc reorganization.
17582         This affects only comments.
17583
17584 2006-01-22  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>  (tiny change)
17585
17586          * gnulib-tool, build-aux/csharpcomp.sh.in: Do not pass `-q' to mktemp.
17587          Reported by Bruce Korb <bkorb@gnu.org>.
17588
17589 2006-01-22  Paul Eggert  <eggert@cs.ucla.edu>
17590
17591         * lib/quotearg.c (quotearg_buffer_restyled): Add "default: break;"
17592         to pacify gcc -Wswitch-default.
17593
17594 2006-01-22  Bruno Haible  <bruno@clisp.org>
17595
17596         * lib/vasnprintf.c (VASNPRINTF): In the computation of the size of the
17597         temporary buffer for sprintf, take into account the precision also
17598         for 'd', 'i', 'u', 'o', 'x', 'X'.
17599
17600 2006-01-21  Sergey Poznyakoff  <gray@gnu.org.ua>
17601
17602         * modules/argp-tests: New module
17603         * tests/test-argp.c: New file
17604         * tests/test-argp-2.sh: New file
17605
17606 2006-01-21  Sergey Poznyakoff  <gray@gnu.org.ua>
17607
17608         * lib/argp-help.c (usage_long_opt): Do not print DOC options.
17609         (__argp_base_name): Removed
17610         * lib/argp-namefrob.h (__argp_basename): Removed definition. Was a
17611         typo.
17612         (__argp_base_name): Provide macro definition or extern declaration
17613         depending on the configuration
17614
17615 2006-01-20  Simon Josefsson  <jas@extundo.com>
17616
17617         * modules/inet_ntop (Depends-on): Depend on sys_socket.
17618
17619 2006-01-20  Simon Josefsson  <jas@extundo.com>
17620
17621         * lib/inet_ntop.h: Unconditionally include sys/socket.h.
17622
17623 2006-01-20  Paul Eggert  <eggert@cs.ucla.edu>
17624
17625         * m4/lib-ignore.m4 (gl_IGNORE_UNUSED_LIBRARIES): Use -Wl,-z,ignore
17626         rather than -Xlinker -z -Xlinker ignore, as it's more portable.
17627         Suggested by Bruno Haible.
17628
17629 2006-01-20  Karl Berry  <karl@gnu.org>
17630
17631         * config/srclist.txt (argp-fmtstream.h, localcharset.c): comment out
17632         until changes propagate, I guess.
17633
17634 2006-01-19  Simon Josefsson  <jas@extundo.com>
17635
17636         * m4/socklen.m4: Look in ws2tcpip.h too, for mingw32.
17637
17638 2006-01-19  Simon Josefsson  <jas@extundo.com>
17639
17640         * lib/socket_.h: Map SHUT_RD, SHUT_WR, SHUT_RDWR correctly.
17641
17642 2006-01-19  Simon Josefsson  <jas@extundo.com>
17643
17644         * gnulib-tool: Set check_PROGRAMS.
17645
17646         * modules/arcfour-tests, modules/arctwo-tests, modules/crc-tests,
17647         modules/des-tests, modules/gc-arcfour-tests,
17648         modules/gc-arctwo-tests, modules/gc-des-tests,
17649         modules/gc-hmac-md5-tests, modules/gc-hmac-sha1-tests,
17650         modules/gc-md2-tests, modules/gc-md4-tests, modules/gc-md5-tests,
17651         modules/gc-pbkdf2-sha1-tests, modules/gc-rijndael-tests,
17652         modules/gc-sha1-tests, modules/gc-tests, modules/hmac-md5-tests,
17653         modules/hmac-sha1-tests, modules/md2-tests, modules/md4-tests,
17654         modules/md5-tests, modules/readline, modules/rijndael-tests: Use
17655         check_PROGRAMS instead of noinst_PROGRAMS to be able to remove
17656         test_*_SOURCES.
17657
17658 2006-01-18  Simon Josefsson  <jas@extundo.com>
17659
17660         * modules/socklen (Depends-on): Depend on sys_socket.
17661
17662 2006-01-18  Simon Josefsson  <jas@extundo.com>
17663
17664         * modules/arcfour-tests, modules/arctwo-tests, modules/crc-tests,
17665         modules/des-tests, modules/gc-arcfour-tests,
17666         modules/gc-arctwo-tests, modules/gc-des-tests,
17667         modules/gc-hmac-md5-tests, modules/gc-hmac-sha1-tests,
17668         modules/gc-md2-tests, modules/gc-md4-tests, modules/gc-md5-tests,
17669         modules/gc-pbkdf2-sha1-tests, modules/gc-rijndael-tests,
17670         modules/gc-sha1-tests, modules/gc-tests, modules/hmac-md5-tests,
17671         modules/hmac-sha1-tests, modules/md2-tests, modules/md4-tests,
17672         modules/md5-tests, modules/readline, modules/rijndael-tests: Add
17673         $(EXEEXT) to automake TESTS variable, for mingw32.
17674
17675 2006-01-17  Simon Josefsson  <jas@extundo.com>
17676
17677         * modules/socklen (Include): Need sys/socket.h.
17678
17679 2006-01-17  Bruno Haible  <bruno@clisp.org>
17680
17681         * modules/ssize_t (Include): Add <sys/types.h>.
17682
17683 2006-01-16  Paul Eggert  <eggert@cs.ucla.edu>
17684
17685         * m4/lib-ignore.m4 (gl_IGNORE_UNUSED_LIBRARIES): Don't use ldd, as
17686         it's not portable and it doesn't work with cross-compiles.
17687         Problem reported by Bruno Haible.  Fix missing-$ typo in
17688         'test "gl_cv_ignore_unused_libraries" ...' that prevented
17689         -zignore from being used with Sun's C compiler.
17690
17691 2006-01-12  Simon Josefsson  <jas@extundo.com>
17692
17693         * lib/base64.c: Fix warning, reported by Bruno Haible
17694         <bruno@clisp.org> and patch by Paul Eggert <eggert@CS.UCLA.EDU>.
17695
17696 2006-01-12  Bruno Haible  <bruno@clisp.org>
17697
17698         * modules/ldd: New file.
17699         * build-aux/ldd.sh.in: New file.
17700         * MODULES.html.sh (Support for building libraries and executables): Add
17701         ldd.
17702
17703 2006-01-12  Bruno Haible  <bruno@clisp.org>
17704
17705         * m4/ldd.m4: New file.
17706
17707 2006-01-12  Bruno Haible  <bruno@clisp.org>
17708
17709         * gnulib-tool (func_import, func_create_testdir): Don't go into an
17710         endless loop while replacing $auxdir with build-aux.
17711
17712 2006-01-11  Simon Josefsson  <jas@extundo.com>
17713
17714         * lib/stdint_.h (SIZE_MAX): Add missing (.
17715
17716 2006-01-11  Paul Eggert  <eggert@cs.ucla.edu>
17717
17718         Sync from coreutils.
17719         * lib/md5.c: Fix commentary typos.
17720         (alignof, UNALIGNED_P): No need for a GCC-specific version.
17721         * lib/md5.h (__attribute__): Remove; unused.
17722         * lib/sha1.c: Fix commentary to match md5 better.
17723         * lib/sha1.h (struct sha1_ctx): Use a word buffer, not a byte buffer,
17724         so that we don't need to worry about alignment.  All uses changed.
17725         This merges the 2005-10-28 md5 change into sha1.
17726
17727 2006-01-11  Jim Meyering  <jim@meyering.net>
17728
17729         Sync from coreutils.
17730         * lib/md5.c (OP): Fix spacing.
17731
17732 2006-01-11  Bruno Haible  <bruno@clisp.org>
17733
17734         Ensure automatic ordering between gl_LOCK and gl_ARGP.
17735         * m4/lock.m4 (gl_LOCK_BODY): Renamed from gl_LOCK.
17736         (gl_LOCK): New macro, requiring gl_LOCK_BODY.
17737
17738 2006-01-11  Bruno Haible  <bruno@clisp.org>
17739
17740         Ensure automatic ordering between gl_LOCK and gl_ARGP.
17741         * gnulib-tool (func_import, func_create_testdir): Put gl_LOCK into
17742         the "early" section as well.
17743
17744 2006-01-11  Bruno Haible  <bruno@clisp.org>
17745
17746         Avoid "ar: no archive members specified" error on MacOS X.
17747         * gnulib-tool (func_modules_add_dummy): New function.
17748         (func_import, func_create_testdir): Invoke it.
17749
17750 2006-01-11  Bruno Haible  <bruno@clisp.org>
17751
17752         * gnulib-tool (func_import, func_create_testdir): Replace build-aux
17753         with $auxdir in AC_CONFIG_FILES statements.
17754
17755 2006-01-11  Bruno Haible  <bruno@clisp.org>
17756
17757         * gnulib-tool (func_emit_lib_Makefile_am, func_emit_tests_Makefile_am):
17758         Initialize also noinst_HEADERS to empty.
17759
17760 2006-01-11  Bruno Haible  <bruno@clisp.org>
17761
17762         * gnulib-tool (AUTOMAKEPATH, AUTOCONF, ACLOCAL, AUTOMAKE): New
17763         variables.
17764         (func_create_megatestdir): Call aclocal, autoconf, automake here, not
17765         autoreconf.
17766
17767 2006-01-11  Bruno Haible  <bruno@clisp.org>
17768
17769         * gnulib-tool (AUTOCONF, ACLOCAL, AUTOMAKE, AUTORECONF): Make
17770         overridable by the user.
17771         Reported by Ralf Wildenhues <Ralf.Wildenhues@gmx.de>.
17772
17773 2006-01-10  Simon Josefsson  <jas@extundo.com>
17774
17775         * modules/sys_socket: New file.
17776
17777 2006-01-10  Simon Josefsson  <jas@extundo.com>
17778
17779         * m4/sys_socket_h.m4: New file.
17780
17781 2006-01-10  Simon Josefsson  <jas@extundo.com>
17782
17783         * lib/socket_.h: New file.
17784
17785 2006-01-10  Paul Eggert  <eggert@cs.ucla.edu>
17786
17787         * modules/readutmp (Maintainer): Add myself.
17788
17789 2006-01-10  Paul Eggert  <eggert@cs.ucla.edu>
17790
17791         * m4/memcoll.m4 (gl_MEMCOLL): Don't require AC_FUNC_MEMCMP, undoing
17792         the 2002-12-31 change.  Problem and fix reported by Bruno Haible.
17793         People who are still concerned with buggy memcmp implementations
17794         can invoke gl_FUNC_MEMCMP themselves.
17795
17796 2006-01-10  Paul Eggert  <eggert@cs.ucla.edu>
17797
17798         * lib/regex_internal.h (BITSET_WORD_BITS):
17799         Work around a bug in 64-bit PGC (before version 6.1-2), where the
17800         preprocessor mishandles large unsigned values as if they were signed.
17801         Problem reported by Claudio Fontana in
17802         <http://lists.gnu.org/archive/html/bug-gnulib/2005-12/msg00061.html>.
17803
17804 2006-01-10  Jim Meyering  <jim@meyering.net>
17805
17806         Avoid the double-free (first in fts_read, second in fts_close) that
17807         would occur when an `active' directory is made inaccessible (e.g.,
17808         via chmod a-x) during a traversal.
17809         * lib/fts.c (fts_read): After a failed fchdir, update sp->fts_cur
17810         before returning.  Reproduce this failure by
17811         mkdir -p a/b; cd a; chmod a-x . b
17812         Reported by Stavros Passas.
17813
17814         Sync from coreutils.
17815         * lib/sha1.c: Tweak grammar in a comment.
17816
17817 2006-01-10  Jim Meyering  <jim@meyering.net>
17818
17819         * m4/fpending.m4: Also include <stdio.h>, for Dragonfly.
17820         Patch by Joerg Sonnenberger.
17821
17822 2006-01-10  Bruno Haible  <bruno@clisp.org>
17823
17824         * modules/readutmp: Depend on module free.
17825         * modules/strtok_r: Depend on module restrict.
17826
17827 2006-01-10  Bruno Haible  <bruno@clisp.org>
17828
17829         * modules/gettext (configure.ac): Add an invocation of
17830         AM_GNU_GETTEXT_VERSION. Needed since autoreconf is used by gnulib-tool.
17831
17832 2006-01-10  Bruno Haible  <bruno@clisp.org>
17833
17834         * m4/localcharset.m4 (gl_LOCALCHARSET): Also test for getc_unlocked.
17835         Reported by Werner Lemberg <wl@gnu.org>.
17836
17837 2006-01-10  Bruno Haible  <bruno@clisp.org>
17838
17839         * lib/localcharset.c: Update from GNU gettext.
17840
17841 2006-01-10  Bruno Haible  <bruno@clisp.org>
17842
17843         * lib/argp.h (__const): Remove macro. Use const instead.
17844         * lib/argp-fmtstream.h (__const): Likewise.
17845         * lib/glob_.h (__const): Remove macro.
17846         * lib/glob-libc.h: Use const instead of __const.
17847
17848 2006-01-10  Bruno Haible  <bruno@clisp.org>
17849
17850         * gnulib-tool (func_emit_tests_Makefile_am): Emit an empty SUBDIR
17851         variable.
17852         Needed to avoid an automake error regarding the 'gettext' module.
17853
17854 2006-01-09  Simon Josefsson  <jas@extundo.com>
17855
17856         * modules/inet_ntop (Depends-on): Add restrict.
17857
17858 2006-01-09  Simon Josefsson  <jas@extundo.com>
17859
17860         * modules/gc-rijndael-tests (License): Put under LGPL.
17861
17862         * modules/gc-des-tests (License): Likewise.
17863
17864         * modules/gc-arcfour-tests (License): Likewise.
17865
17866         * modules/gc-arctwo-tests (License): Likewise.
17867
17868         * modules/gc-pbkdf2-sha1-tests (License): Likewise.
17869
17870         * modules/gc-hmac-sha1-tests (Files): Likewise.
17871
17872         * modules/gc-hmac-md5-tests (License): Likewise.
17873
17874         * modules/gc-sha1-tests (License): Likewise.
17875
17876         * modules/gc-md5-tests (License): Likewise.
17877
17878         * modules/gc-md4-tests (License): Likewise.
17879
17880         * modules/gc-md2-tests (License): Likewise.
17881
17882         * modules/gc-tests (License): Likewise.
17883
17884         * modules/des-tests (License): Likewise.
17885
17886         * modules/md4-tests (License): Likewise.
17887
17888         * modules/md2-tests (License): Likewise.
17889
17890 2006-01-09  Paul Eggert  <eggert@cs.ucla.edu>
17891
17892         Sync from coreutils:
17893
17894         * MODULES.html.sh (build_lib): New section, with new lib-ignore module.
17895         * modules/lib-ignore: New file.
17896         * modules/mkdir-p (Files): Add chdir-safer.c, chdir-safer.h, lchmod.h,
17897         chdir-safer.m4, lchmod.m4.
17898         * modules/openat: Add mkdirat.c, openat-priv.h.
17899
17900 2006-01-09  Paul Eggert  <eggert@cs.ucla.edu>
17901
17902         Sync from coreutils.
17903         * m4/lib-ignore.m4: New file.
17904         * m4/lchmod.m4: New file.
17905
17906 2006-01-09  Paul Eggert  <eggert@cs.ucla.edu>
17907
17908         Sync from coreutils.
17909         * lib/chdir-long.c (cdb_free): Don't bother trying to open directory
17910         for write access: POSIX says that must fail.
17911         * lib/fts.c (diropen): Likewise.
17912         * lib/save-cwd.c (save_cwd): Likewise.
17913         * lib/chdir-long.c (cdb_free): Open with O_NOCTTY | O_NONBLOCK as
17914         well, for minor improvements on hosts that lack O_DIRECTORY.
17915         * lib/chown.c (rpl_chown) [CHOWN_MODIFIES_SYMLINK]:
17916         Don't try O_WRONLY unless O_RDONLY failed wth EACCES.
17917         Fall back on chown if open failed with EACCES.
17918
17919         * lib/gettime.c (gettime) [!defined OK_TO_USE_1S_CLOCK]:
17920         Report an error at compile-time if only a 1-second nominal clock
17921         resolution is found.
17922
17923         * lib/lchmod.h: New file.
17924         * lib/mkdir-p.c: Include lchmod.h, lchown.h.
17925         (make_dir_parents): Use lchown rather than chown, and
17926         lchmod rather than chmod.
17927
17928         * lib/mountlist.c (ME_DUMMY): "none" and "proc" file systems are
17929         dummies too.  Problem with "none" reported by Bob Proulx.  Problem with
17930         "proc" reported by n0dalus.
17931
17932         * lib/mountlist.c: Include <limits.h>.
17933         (dev_from_mount_options)
17934         [defined MOUNTED_GETMNTENT1 || defined MOUNTED_GETMNTENT2]:
17935         New function.  It no longer assumes "dev=" has the System V meaning
17936         on Linux (since it doesn't).  It also parses "dev=" more carefully.
17937         (read_file_system_list)
17938         [defined MOUNTED_GETMNTENT1 || defined MOUNTED_GETMNTENT2]: Use it.
17939         MOUNTED_GETMNTENT2 is new here; the code didn't used to look for
17940         dev= in that case.
17941
17942         * lib/posixtm.h (PDS_PRE_2000): New macro.
17943         * lib/posixtm.c (year): Arg is now syntax_bits rather than
17944         allow_century.  All usages changed.  Reject dates outside the range
17945         1969-1999 if PDS_PRE_2000 is used.
17946
17947 2006-01-09  Paul Eggert  <eggert@cs.ucla.edu>
17948
17949         Sync from coreutils.
17950         * doc/getdate.texi (General date syntax): Invalid dates are rejected.
17951         (Time of day items): Mention the possibility of leap seconds.
17952         Problem reported by Dr. David Alan Gilbert.
17953
17954 2006-01-09  Jim Meyering  <jim@meyering.net>
17955
17956         Sync from coreutils.
17957
17958         * lib/version-etc.c (COPYRIGHT_YEAR): Update to 2006.
17959
17960         * lib/chdir-safer.h, lib/chdir-safer.c: New files.
17961
17962         * lib/modechange.c (mode_compile): Reject an invalid mode string
17963         that starts with an octal digit.  From Andreas Gruenbacher.
17964
17965         * lib/openat.c: Include "fcntl--.h" and "unistd--.h", to map open
17966         and dup to open_safer and dup_safer, respectively.
17967         (openat_permissive): Fix typo in comment.
17968
17969         * lib/openat.c: Don't include <stdlib.h>, <unistd.h>, <fcntl.h>,
17970         "gettext.h"; either no longer needed or are guaranteed by openat.h.
17971         (_): Remove; no longer needed.
17972         (openat): Renamed from rpl_openat; no need for rpl_openat
17973         since openat.h renames openat for us.
17974         Replace most of the body with a call to openat_permissive,
17975         to avoid duplicate code.
17976         Port to (probably hypothetical) environments were mode_t is
17977         wider than int.
17978         (openat_permissive): Require mode arg, so that we can check
17979         types better.  Put it just after flags.  Change cwd failure
17980         indicator from pointer-to-bool to pointer-to-errno-value.
17981         All callers changed.
17982         Invoke openat_save_fail and/or openat_restore_fail if
17983         cwd_errno is null, so that openat can call us.
17984         (openat_permissive, fdopendir, fstatat, unlinkat):
17985         Simplify errno handling to avoid some duplicate code,
17986         as it's OK to set errno on success.
17987         * lib/openat.h: Revamp code so that function macros depend on
17988         __OPENAT_PREFIX only, not also on AT_FDCWD.
17989         (openat_ro): Remove.  Caller changed to use openat_permissive.
17990         (openat_permissive): Now a macro, if not a function.
17991         (openat_restore_fail, openat_save_fail): Now always functions,
17992         since mkdirat needs them even if __OPENAT_PREFIX is defined.
17993
17994         * lib/openat-priv.h: New file, defining macros used by mkdirat.c
17995         and openat.c.
17996         * lib/mkdirat.c: Include openat-priv.h.
17997         Remove definitions of macros defined therein.
17998         * lib/openat.c: Likewise.
17999
18000         * lib/mkdirat.c (mkdirat): New file and function.
18001         * lib/openat.h (mkdirat): Declare.
18002
18003         * lib/openat.c (fdopendir): Don't change errno when returning non-NULL.
18004
18005         * lib/openat.h (openat_permissive): Declare.
18006         (openat_ro): Define.
18007
18008         * lib/openat.c (EXPECTED_ERRNO): New macro.
18009         (openat_permissive): New function -- used in remove.c rewrite.
18010         (all functions): Set errno just before returning, only if there
18011         was an actual failure.
18012         Use EXPECTED_ERRNO rather than comparing against only ENOTDIR.
18013
18014         Emulate openat-family functions using Linux's procfs, if possible.
18015         Idea and some code based on Ulrich Drepper's glibc changes.
18016
18017         * lib/openat.c: (BUILD_PROC_NAME): New macro.
18018         Include <stdio.h>, <string.h>, "alloca.h" and "intprops.h".
18019         (rpl_openat): Emulate by trying to open /proc/self/fd/%d/%s,
18020         before falling back on save_cwd and restore_cwd.
18021         (fdopendir, fstatat, unlinkat): Likewise.
18022
18023         * lib/openat.c (fstatat, unlinkat): Perform the syscall directly,
18024         skipping the save_cwd...restore_cwd overhead, if FILE is absolute.
18025
18026         * lib/openat.c (rpl_openat): Use the promoted type (int), not mode_t,
18027         as second argument to va_arg.  Otherwise, some versions of gcc
18028         warn that `if this code is reached, the program will abort'.
18029
18030 2006-01-09  Jim Meyering  <jim@meyering.net>
18031
18032         Sync from coreutils.
18033         * m4/openat.m4 (gl_FUNC_OPENAT): Require and compile mkdirat.c.
18034         Require openat-priv.h.
18035
18036 2006-01-09  Bruno Haible  <bruno@clisp.org>
18037
18038         * modules/strnlen (Include): Use strnlen.h.
18039
18040 2006-01-09  Bruno Haible  <bruno@clisp.org>
18041
18042         * m4/stdint.m4 (gl_STDINT_H): Also test for <sys/bitypes.h>.
18043
18044 2006-01-09  Bruno Haible  <bruno@clisp.org>
18045
18046         * lib/sysexit_.h (EX_OK): New macro.
18047         Suggested by Martin Lambers <marlam@marlam.de>.
18048
18049 2006-01-09  Bruno Haible  <bruno@clisp.org>
18050
18051         * lib/stdint_.h: On Linux libc4 and libc5, include <sys/bitypes.h> and
18052         don't define _STDINT_H_NEED_SIGNED_INT_TYPES.
18053
18054 2006-01-09  Bruno Haible  <bruno@clisp.org>
18055
18056         * lib/stdint_.h (SIZE_MAX): Write the value without involving negative
18057         numbers.
18058
18059 2006-01-09  Bruno Haible  <bruno@clisp.org>
18060
18061         * lib/javacomp.sh.in: Move to ../build-aux/javacomp.sh.in.
18062         * lib/javaexec.sh.in: Move to ../build-aux/javaexec.sh.in.
18063         * lib/csharpcomp.sh.in: Move to ../build-aux/csharpcomp.sh.in.
18064         * lib/csharpexec.sh.in: Move to ../build-aux/csharpexec.sh.in.
18065
18066 2006-01-09  Bruno Haible  <bruno@clisp.org>
18067
18068         * build-aux/javacomp.sh.in: New file, moved from lib/.
18069         * modules/javacomp-script (Files): Update.
18070         (configure.ac): Add AC_CONFIG_FILES invocation.
18071         (EXTRA_DIST): Remove variable.
18072
18073         * build-aux/javaexec.sh.in: New file, moved from lib/.
18074         * modules/javaexec (Files): Update.
18075         (configure.ac): Add AC_CONFIG_FILES invocation.
18076         (EXTRA_DIST): Remove javaexec.sh.in.
18077
18078         * build-aux/csharpcomp.sh.in: New file, moved from lib/.
18079         * modules/csharpcomp-script (Files): Update.
18080         (configure.ac): Add AC_CONFIG_FILES invocation.
18081         (EXTRA_DIST): Remove variable.
18082
18083         * build-aux/csharpexec.sh.in: New file, moved from lib/.
18084         * modules/csharpexec (Files): Update.
18085         (configure.ac): Add AC_CONFIG_FILES invocation.
18086         (EXTRA_DIST): Remove csharpexec.sh.in.
18087
18088 2006-01-09  Andreas Gruenbacher  <agruen@suse.de>
18089
18090         Sync from coreutils.
18091
18092         Add POSIX ACL support
18093         * lib/acl.h (copy_acl, set_acl): Add declarations.
18094         * lib/acl.c (acl_entries): Add fallback implementation for POSIX ACL
18095         systems other than Linux.
18096         (chmod_or_fchmod): New function: use fchmod when possible,
18097         and chmod otherwise.
18098         (file_has_acl): Add a POSIX ACL implementation, with a
18099         Linux-specific subcase.
18100         (copy_acl): Add: copy an acl and S_ISUID, S_ISGID, and
18101         S_ISVTX from one file to another.  Fall back to fchmod/chmod when
18102         acls are unsupported.
18103         (set_acl): Add: set a file's acl and S_ISUID, S_ISGID, and
18104         S_ISVTX to a defined value.  Fall back to fchmod/chmod when acls
18105         are unsupported.
18106
18107 2006-01-09  Andreas Gruenbacher  <agruen@suse.de>
18108
18109         Sync from coreutils.
18110         * m4/acl.m4 (AC_FUNC_ACL): Add POSIX ACL and Linux-specific acl tests.
18111
18112 2006-01-07  Bruno Haible  <bruno@clisp.org>
18113
18114         * gnulib-tool (func_import): Add an AC_PROG_RANLIB dependency to
18115         gl_EARLY.
18116
18117 2006-01-04  Paul Eggert  <eggert@cs.ucla.edu>
18118
18119         * lib/strftime.c (tzname): Don't declare if it is already #defined.
18120         Problem reported for Mingw by Mark Junker.
18121
18122 2006-01-04  Paul Eggert  <eggert@cs.ucla.edu>
18123
18124         * README: Gnulib normally doesn't generate a tarball.
18125
18126 2006-01-03  Paul Eggert  <eggert@cs.ucla.edu>
18127
18128         * lib/xtime.h (xtime_make, xtime_nonnegative_nsec, xtime_nsec): Use
18129         long int, not int, for nanosecond counts, so that people who are
18130         used to POSIX struct timespec won't be surprised.  Reported by Jim
18131         Meyering.
18132
18133 2005-12-28  Bruno Haible  <bruno@clisp.org>
18134
18135         * build-aux/config.rpath: Update from GNU gettext.
18136
18137 2005-12-16  Jim Meyering  <jim@meyering.net>
18138
18139         * modules/fprintftime: New module.
18140         * MODULES.html.sh (Date and time <time.h>): Add fprintftime.
18141
18142 2005-12-16  Jim Meyering  <jim@meyering.net>
18143
18144         * m4/fprintftime.m4: New file.
18145
18146 2005-12-16  Jim Meyering  <jim@meyering.net>
18147
18148         * lib/fprintftime.c, lib/fprintftime.h: New files.
18149
18150 2005-12-15  Simon Josefsson  <jas@extundo.com>
18151
18152         * modules/socklen (configure.ac): Fix M4 macro name, to align with
18153         new m4/socklen.m4.
18154
18155 2005-12-10  Sergey Poznyakoff  <gray@gnu.org.ua>
18156
18157         * m4/argp.m4: Define HAVE_DECL_PROGRAM_INVOCATION_NAME and
18158         HAVE_DECL_PROGRAM_INVOCATION_SHORT_NAME
18159
18160 2005-12-10  Sergey Poznyakoff  <gray@gnu.org.ua>
18161
18162         * lib/argp-fmtstream.c (__argp_fmtstream_update): Fix coredump
18163         * lib/argp-help.c (fill_in_uparams): Check if the constructed
18164         struct uparams is valid. Fall back to the default values if it is
18165         not.
18166
18167 2005-12-09  Sergey Poznyakoff  <gray@gnu.org.ua>
18168
18169         * modules/argp (Files): Add argp-pin.c
18170         (Depends-on): dirname
18171         (lib_SOURCES): Add argp-pin.c
18172
18173 2005-12-09  Sergey Poznyakoff  <gray@gnu.org.ua>
18174
18175         * m4/argp.m4:  Check if program_invocation_name and
18176         program_invocation_short_name are declared and define appropriate
18177         macros if they are not.
18178
18179 2005-12-09  Sergey Poznyakoff  <gray@gnu.org.ua>
18180
18181         * lib/argp-help.c (__argp_base_name): New function
18182         (__argp_short_program_name): Rewrite using __argp_base_name
18183         * lib/argp-namefrob.h: Define program_invocation_name and
18184         program_invocation_short_name if requested
18185         (__argp_base_name): Add prototype
18186         * lib/argp-parse.c (argp_def): Use gettext wrappers
18187         (argp_default_parser): Use __argp_base_name
18188         * lib/argp-pin.c: New file. Defines program_invocation_name and
18189         program_invocation_short_name on systems that lack them.
18190
18191 2005-12-07  Paul Eggert  <eggert@cs.ucla.edu>
18192
18193         * m4/stat-time.m4 (gl_STAT_TIME): Add check for
18194         TYPEOF_STRUCT_STAT_ST_ATIM_IS_STRUCT_TIMESPEC, to fix IRIX 5.3
18195         porting problem reported by Georg Schwarz in
18196         <http://lists.gnu.org/archive/html/bug-coreutils/2005-12/msg00083.html>.
18197
18198 2005-12-07  Paul Eggert  <eggert@cs.ucla.edu>
18199
18200         * lib/stat-time.h (STATE_TIMESPEC, STAT_TIMESPEC_NS): Add check for
18201         TYPEOF_STRUCT_STAT_ST_ATIM_IS_STRUCT_TIMESPEC, to fix IRIX 5.3
18202         porting problem reported by Georg Schwarz in
18203         <http://lists.gnu.org/archive/html/bug-coreutils/2005-12/msg00083.html>.
18204
18205 2005-12-05  Bruno Haible  <bruno@clisp.org>
18206
18207         * lib/csharpcomp.sh.in (options_csc): For -l option, add a .dll suffix.
18208         * lib/csharpcomp.c (compile_csharp_using_sscli): Likewise.
18209         Reported by Mark Junker <mjscod@gmx.de>.
18210
18211 2005-12-02  Paul Eggert  <eggert@cs.ucla.edu>
18212
18213         * m4/socklen.m4 (gl_TYPE_SOCKLEN_T): Renamed from gl_SOCKLEN_T.
18214         Use implementation from Albert Chin, with some
18215         comments/corrections by Stepan Kasal and myself.
18216
18217 2005-12-02  Bruno Haible  <bruno@clisp.org>
18218
18219         * gnulib-tool (func_import): Accept GPLed build tool modules when
18220         --lgpl is given.
18221         * modules/csharpcomp-script: New file.
18222         * modules/csharpcomp: Depend on it.
18223         * modules/javacomp-script: New file.
18224         * modules/javacomp: Depend on it.
18225         Suggested by Simon Josefsson.
18226
18227 2005-12-01  Paul Eggert  <eggert@cs.ucla.edu>
18228
18229         * m4/regex.m4 (gl_REGEX): Check whether off_t can be used in a switch
18230         statement, to work around an HP-UX 10.20 compiler bug reported by
18231         Peter O'Gorman.
18232
18233 2005-11-29  Paul Eggert  <eggert@cs.ucla.edu>
18234
18235         * modules/savedir (Depends-on): Add openat.
18236
18237 2005-11-29  Paul Eggert  <eggert@cs.ucla.edu>
18238
18239         * lib/stdint_.h (intmax_t) [defined intmax_t]: Do not declare.
18240         (uintmax_t) [defined uintmax_t]: Do not declare.
18241         (SIZE_MAX) [defined SIZE_MAX]: Do not define.
18242         This works around a problem if intmax_t.m4 and/or uintmax_t.m4
18243         and/or size_max.m4 are also used.  Problem reported by Mark D. Baushke.
18244         (SIZE_MAX): Define to ((size_t) -1), not (~(size_t)0), for the
18245         sake of portability to weird hosts that C allows (though we don't
18246         know of any practical examples).
18247
18248         * lib/savedir.h (fdsavedir): New decl.
18249         * lib/savedir.c (fdsavedir, savedirstream): New functions; the latter
18250         contains most of the former guts of savedir.
18251         (savedir): Use savedirstream.
18252         Include "openat.h".
18253
18254 2005-11-25  Paul Eggert  <eggert@cs.ucla.edu>
18255
18256         * modules/obstack (Files): Add m4/ulonglong.m4.
18257         Problem reported by Davide Angelocola.
18258
18259 2005-11-15  Paul Eggert  <eggert@cs.ucla.edu>
18260
18261         * lib/xstrtod.c: Don't bother with #pragma STDC FENV_ACCESS ON, as
18262         coreutils no longer futzes with rounding modes.
18263
18264 2005-11-14  Jim Meyering  <jim@meyering.net>
18265
18266         * lib/mkstemp-safer.c: Include <config.h>, required for possible
18267         replacement of mkstemp.
18268
18269 2005-11-10  Simon Josefsson  <jas@extundo.com>
18270
18271         * lib/readline.c: Remove EOL.
18272
18273 2005-11-10  Paul Eggert  <eggert@cs.ucla.edu>
18274
18275         * modules/gethrxtime (Depends-on): Add gettime.
18276
18277 2005-11-10  Paul Eggert  <eggert@cs.ucla.edu>
18278
18279         * m4/gethrxtime.m4 (gl_PREREQ_GETHRXTIME): Don't require AC_HEADER_TIME
18280         or gettimeofday; no longer needed.
18281
18282 2005-11-10  Paul Eggert  <eggert@cs.ucla.edu>
18283
18284         * lib/gethrxtime.c: Include "timespec.h" rather than the sys/time /
18285         time business.
18286         (gethrxtime) [! (HAVE_NANOUPTIME
18287         || (defined CLOCK_MONOTONIC && HAVE_CLOCK_GETTIME)
18288         || HAVE_MICROUPTIME)]: Fall back on gettime rather than rolling
18289         our own approximation.
18290
18291 2005-11-08  Eric Blake  <ebb9@byu.net>
18292
18293         * lib/inet_ntop.h: Use #if !, not #ifndef, for AC_CHECK_DECLS.
18294
18295 2005-11-08  Eric Blake  <ebb9@byu.net>
18296
18297         * lib/getaddrinfo.h: Use #if !, not #ifndef, for AC_CHECK_DECLS.
18298
18299 2005-11-04  Bruno Haible  <bruno@clisp.org>
18300
18301         * gnulib-tool: Implement --update mode.
18302
18303 2005-10-30  Paul Eggert  <eggert@cs.ucla.edu>
18304
18305         Fix porting problem reported by Theodoros V. Kalamatianos.
18306         * lib/utimens.c (futimens) [HAVE_WORKING_UTIMES && HAVE_FUTIMES]:
18307         Don't assume that futimes failing means we must fail.
18308
18309 2005-10-30  Paul Eggert  <eggert@cs.ucla.edu>
18310
18311         * m4/chdir-long.m4 (gl_FUNC_CHDIR_LONG): Revamp wording and local
18312         variables to suggest the intended function of the PATH_MAX check.
18313
18314 2005-10-30  Kean Johnston  <jkj@sco.com>
18315
18316         Trivial changes to support SCO systems.
18317         * m4/chdir-long.m4 (gl_FUNC_CHDIR_LONG): Check for MAXPATHLEN as well
18318         as PATH_MAX.
18319         * m4/fpending.m4 (gl_FUNC_FPENDING): Correct check for SCO systems,
18320         where __ptr is null when no I/O is pending.
18321
18322 2005-10-29  Paul Eggert  <eggert@cs.ucla.edu>
18323
18324         * lib/getcwd.c (__getcwd): Don't assume that system calls after readdir
18325         leave errno alone.  Problem reported by Dmitry V. Levin.
18326
18327 2005-10-28  Simon Josefsson  <jas@extundo.com>
18328
18329         * tests/test-gc-md4.c, tests/test-gc-md5.c, tests/test-gc-sha1.c:
18330         Test more.
18331
18332         * tests/test-gc-md2.c, tests/test-md2.c: New files.
18333
18334         * modules/md2, modules/md2-tests: New files.
18335
18336 2005-10-28  Simon Josefsson  <jas@extundo.com>
18337
18338         * m4/inet_ntop.m4: More tests.
18339
18340         * m4/gc-md2.m4, md2.m4: New file.
18341
18342 2005-10-28  Simon Josefsson  <jas@extundo.com>
18343
18344         * lib/inet_ntop.h, inet_ntop.c: Make it work under mingw32: Add
18345         "restrict" keywords, as per POSIX.  Protect the function
18346         declaration around HAVE_DECL_INET_NTOP rather than HAVE_INET_NTOP.
18347         Don't use K&R prototypes.  Check the sprintf return values.
18348         Re-define EAFNOSUPPORT if not present.  Indent.
18349
18350         * lib/md5.h, md5.c: Simplify buffer handling visavi alignment,
18351         suggested by Bruno Haible <bruno@clisp.org>.
18352
18353         * lib/gc-gnulib.c, gc-libgcrypt.c: Check calloc return value.
18354
18355         * lib/gc.h: Add MD2 and RMD160 length defines.  Add prototypes.
18356
18357         * lib/gc-libgcrypt.c: Add MD2 (which is not available through
18358         libgcrypt).
18359
18360         * lib/gc-gnulib.c: Add MD2.  Implement gc_hash_* API.
18361
18362         * lib/md2.h, lib/md2.c: New files.
18363
18364 2005-10-28  Paul Eggert  <eggert@cs.ucla.edu>
18365
18366         * lib/savedir.c (savedir): Don't assume that xrealloc etc. leave
18367         errno alone.  Problem reported by Frederic Jolliton.
18368
18369 2005-10-27  Paul Eggert  <eggert@cs.ucla.edu>
18370
18371         * modules/verify (License): Change from GPL to LGPL.  This is a
18372         tiny module and there are apparently near-equivalents that are
18373         under the BSD license.
18374
18375 2005-10-24  Simon Josefsson  <jas@extundo.com>
18376
18377         * modules/sha1: Relicense to LGPL.
18378
18379 2005-10-24  Simon Josefsson  <jas@extundo.com>
18380
18381         * lib/md4.h: Shrink buffer size, now that we changed the type.
18382
18383 2005-10-23  Simon Josefsson  <jas@extundo.com>
18384
18385         * gnulib-tool (func_import): Fix --tests-base.
18386
18387 2005-10-22  Simon Josefsson  <jas@extundo.com>
18388
18389         * modules/arcfour (Depends-on): Need stdint.
18390
18391 2005-10-22  Simon Josefsson  <jas@extundo.com>
18392
18393         * m4/gc.m4: Don't be fooled by --disable-*random-device parameters,
18394         suggested by Bruno Haible <bruno@clisp.org>.  Fix error messages.
18395
18396 2005-10-22  Simon Josefsson  <jas@extundo.com>
18397
18398         * lib/md4.h, md4.c: Simplify buffer handling visavi alignment,
18399         suggested by Bruno Haible <bruno@clisp.org>.
18400
18401 2005-10-22  Simon Josefsson  <jas@extundo.com>
18402
18403         * lib/crc.h: Include stddef.h, for size_t.
18404
18405 2005-10-22  Simon Josefsson  <jas@extundo.com>
18406
18407         * lib/arcfour.h, arcfour.c: Use fixed size indices in the
18408         arcfour_context struct (simplify test vector testing in GNU
18409         Shishi).
18410
18411 2005-10-21  Simon Josefsson  <jas@extundo.com>
18412
18413         * modules/des, modules/des-tests: New files.
18414
18415         * modules/gc-des, modules/gc-des-tests: New files.
18416
18417         * tests/test-des.c, tests/test-gc-des.c: New file.
18418
18419 2005-10-21  Simon Josefsson  <jas@extundo.com>
18420
18421         * modules/arctwo, modules/arctwo-tests: New files.
18422
18423         * tests/test-arctwo.c: New file.
18424
18425         * modules/gc-arctwo, modules/gc-arctwo-tests: New files.
18426
18427         * tests/test-gc-arctwo.c: New file.
18428
18429 2005-10-21  Simon Josefsson  <jas@extundo.com>
18430
18431         * m4/gc.m4: Don't use libgcrypt if gcrypt.h isn't found, suggested by
18432         Bruno Haible <bruno@clisp.org>.
18433
18434         * m4/gc-des.m4: New file.
18435
18436 2005-10-21  Simon Josefsson  <jas@extundo.com>
18437
18438         * m4/arctwo.m4: New file.
18439
18440         * m4/gc-arctwo.m4: New file.
18441
18442 2005-10-21  Simon Josefsson  <jas@extundo.com>
18443
18444         * lib/rijndael-api-fst.c: Fix bugs in CBC mode for more than one
18445         block.
18446
18447 2005-10-21  Simon Josefsson  <jas@extundo.com>
18448
18449         * lib/hmac-md5.c (hmac_md5): Add comments, suggested by Bruno Haible
18450         <bruno@clisp.org>.
18451
18452         * lib/hmac-sha1.c (hmac_sha1): Likewise.
18453
18454         * lib/crc.c (crc32_update): Actually use crc parameter, suggested by
18455         Bruno Haible <bruno@clisp.org>.
18456
18457         * lib/crc.h: Include stdint.h directly, suggested by Bruno Haible
18458         <bruno@clisp.org>.
18459
18460 2005-10-21  Simon Josefsson  <jas@extundo.com>
18461
18462         * lib/gc-libgcrypt.c (gc_cipher_open): Handle ECB.
18463
18464 2005-10-21  Simon Josefsson  <jas@extundo.com>
18465
18466         * lib/gc-gnulib.c: Support ARCTWO in CBC mode.
18467
18468 2005-10-21  Simon Josefsson  <jas@extundo.com>
18469
18470         * lib/des.h, lib/des.c: New files.
18471
18472         * lib/gc-gnulib.c: Support DES.c
18473
18474 2005-10-21  Simon Josefsson  <jas@extundo.com>
18475
18476         * lib/arctwo.h, lib/arctwo.c: New files.
18477
18478         * lib/gc-gnulib.c: Support ARCTWO.
18479
18480 2005-10-21  Simon Josefsson  <jas@extundo.com>
18481
18482         * lib/arctwo.h (arctwo_setkey): Protect variable in CPP macro,
18483         suggested by Ralf Wildenhues <Ralf.Wildenhues@gmx.de>.
18484
18485 2005-10-21  Simon Josefsson  <jas@extundo.com>
18486
18487         * gnulib-tool (func_import, func_create_testdir): Define automake
18488         conditional GL_COND_LIBTOOL if libtool is used (to be used by modules
18489         Makefile.am snippet),
18490         suggested by Bruno Haible <bruno@clisp.org>.
18491
18492         * modules/gc (Makefile.am): Use it.
18493
18494 2005-10-21  Bruno Haible  <bruno@clisp.org>
18495
18496         * gnulib-tool (func_import, func_create_testdir): Add quoting to last
18497         patch.
18498
18499 2005-10-19  Simon Josefsson  <jas@extundo.com>
18500
18501         * tests/test-gc-rijndael.c: New file.
18502
18503         * modules/gc-rijndael, modules/gc-rijndael-test: New files.
18504
18505 2005-10-19  Simon Josefsson  <jas@extundo.com>
18506
18507         * tests/test-gc-md4.c, tests/test-gc-md5.c: Test gc_hash_buffer
18508         interface too.
18509
18510 2005-10-19  Simon Josefsson  <jas@extundo.com>
18511
18512         * tests/test-gc-arcfour.c: New file.
18513
18514         * modules/gc-arcfour, modules/gc-arcfour-tests: New files.
18515
18516 2005-10-19  Simon Josefsson  <jas@extundo.com>
18517
18518         * modules/gc-md4, modules/gc-md4-tests: New file.
18519
18520         * tests/test-gc-md4.c: New file.
18521
18522 2005-10-19  Simon Josefsson  <jas@extundo.com>
18523
18524         * m4/gc-md4.m4: New file.
18525
18526 2005-10-19  Simon Josefsson  <jas@extundo.com>
18527
18528         * m4/gc-hmac-md5.m4, gc-hmac-sha1.m4, gc-md4.m4,
18529         gc-md5.m4, gc-sha1.m4: Fix typo, suggested by Stepan Kasal
18530         <kasal@ucw.cz>.
18531
18532 2005-10-19  Simon Josefsson  <jas@extundo.com>
18533
18534         * m4/gc-arcfour.m4: New file.
18535
18536         * m4/gc-rijndael.m4: New file.
18537
18538 2005-10-19  Simon Josefsson  <jas@extundo.com>
18539
18540         * lib/gc.h, gc-gnulib.c, gc-libgcrypt.c: Support MD4.
18541
18542 2005-10-19  Simon Josefsson  <jas@extundo.com>
18543
18544         * lib/gc-gnulib.c: Support ARCFOUR.
18545
18546 2005-10-19  Simon Josefsson  <jas@extundo.com>
18547
18548         * lib/gc-gnulib.c: Implement gc_cipher_* API, currently only with AES
18549         support.
18550
18551         * lib/gc.h: Add ECB enum type.
18552
18553         * lib/hmac-md5.c, hmac-sha1.c: Include memxor.h.
18554
18555 2005-10-18  Simon Josefsson  <jas@extundo.com>
18556
18557         * tests/test-md5.c: New file.
18558
18559         * modules/md5-tests: New file.
18560
18561 2005-10-18  Simon Josefsson  <jas@extundo.com>
18562
18563         * tests/test-md4.c: New file.
18564
18565         * modules/md4, modules/md4-tests: New files.
18566
18567 2005-10-18  Simon Josefsson  <jas@extundo.com>
18568
18569         * m4/md4.m4: New file.
18570
18571 2005-10-18  Simon Josefsson  <jas@extundo.com>
18572
18573         * lib/md4.h, lib/md4.c: New files, based on md5.?.
18574
18575 2005-10-17  Stepan Kasal  <kasal@ucw.cz>
18576
18577         * gnulib-tool (func_create_testdir): Omit the second check whether
18578         BUILT_SOURCES in nonempty.
18579
18580 2005-10-17  Simon Josefsson  <jas@extundo.com>
18581
18582         * tests/test-rijndael.c: New file.
18583
18584 2005-10-17  Simon Josefsson  <jas@extundo.com>
18585
18586         * modules/sha1: Depend on stdint instead of md5.
18587
18588         * modules/md5: Depend on stdint, remove uint32_t.
18589
18590 2005-10-17  Simon Josefsson  <jas@extundo.com>
18591
18592         * modules/gc-sha1-tests: New file.
18593
18594         * tests/test-gc-sha1.c: New file.
18595
18596 2005-10-17  Simon Josefsson  <jas@extundo.com>
18597
18598         * m4/md5.m4: Remove call to uint32_t.m4.
18599
18600 2005-10-17  Simon Josefsson  <jas@extundo.com>
18601
18602         * lib/sha1.c: Use uint32_t instead of md5_uint32.t
18603
18604         * lib/sha1.h: Use stdint.h and uint32_t instead of md5_uint32 from
18605         md5.h.
18606
18607         * lib/md5.c: Use uin32_t.  Fix non-gcc UNALIGNED_P macro.
18608
18609         * lib/md5.h: Use stdint.h and uint32_t.  Doc fix.
18610
18611 2005-10-17  Simon Josefsson  <jas@extundo.com>
18612
18613         * lib/gc.h, gc-libgcrypt.c: Add more hash types/functions.
18614
18615 2005-10-17  Simon Josefsson  <jas@extundo.com>
18616
18617         * lib/gc.h, gc-libgcrypt.c: Add ciphers.
18618
18619 2005-10-17  Simon Josefsson  <jas@extundo.com>
18620
18621         * lib/gc-libgcrypt.c (gc_hmac_sha1): Fix assert.
18622
18623         * lib/gc.h (gc_nonce, gc_pseudo_random, gc_random): Add prototypes.
18624
18625 2005-10-17  Bruno Haible  <bruno@clisp.org>
18626
18627         * m4/stdbool.m4 (AC_HEADER_STDBOOL): Change the return statement so
18628         that it can also be used in a test.
18629
18630 2005-10-16  Bruno Haible  <bruno@clisp.org>
18631
18632         * gnulib-tool (func_emit_tests_Makefile_am): Also define
18633         TESTS_ENVIRONMENT, so that individual tests can augment it.
18634
18635         * gnulib-tool (func_create_testdir): Use an intermediate target for
18636         building $(BUILT_SOURCES). Needed because BUILT_SOURCES can contain
18637         macros, like $(ALLOCA_H), which cannot be passed through the command
18638         line.
18639
18640 2005-10-15  Simon Josefsson  <jas@extundo.com>
18641
18642         * modules/rijndael-tests: New file.
18643
18644         * modules/rijndael: New file.
18645
18646 2005-10-15  Simon Josefsson  <jas@extundo.com>
18647
18648         * m4/rijndael.m4: New file.
18649
18650 2005-10-15  Simon Josefsson  <jas@extundo.com>
18651
18652         * lib/rijndael-api-fst.h, lib/rijndael-api-fst.c: New files.
18653
18654         * lib/rijndael-alg-fst.h, lib/rijndael-alg-fst.c: New files.
18655
18656 2005-10-14  Simon Josefsson  <jas@extundo.com>
18657
18658         * tests/test-arcfour.c: New file.
18659
18660         * modules/arcfour, modules/arcfour-tests: New files.
18661
18662 2005-10-14  Simon Josefsson  <jas@extundo.com>
18663
18664         * m4/arcfour.m4: New file.
18665
18666 2005-10-14  Simon Josefsson  <jas@extundo.com>
18667
18668         * lib/arcfour.h, lib/arcfour.c: New files.
18669
18670 2005-10-14  Roland McGrath  <roland@redhat.com>
18671
18672         Import from libc.  [BZ #1331]
18673         * lib/obstack.h [!__STDC__] (obstack_int_grow_fast): Fix misnamed
18674         macro argument.
18675         Reported by Matej Vela <vela@debian.org>.
18676
18677 2005-10-14  Paul Eggert  <eggert@cs.ucla.edu>
18678
18679         * lib/obstack.c [defined _LIBC && defined USE_IN_LIBIO]: Don't
18680         include <wchar.h>; no longer needed.
18681
18682 2005-10-14  Paul Eggert  <eggert@cs.ucla.edu>
18683
18684         * config/srclist.txt: Add glibc bug 321 for obstack.c, obstack.h.
18685
18686 2005-10-14  Jakub Jelinek  <jakub@redhat.com>
18687         and  Ulrich Drepper  <drepper@redhat.com>
18688
18689         Import from libc.
18690         * lib/obstack.c (print_and_abort) [defined _LIBC]: Use __fxprintf
18691         instead of inline stream orientation test and two separate
18692         function calls.  Pay no attention to USE_IN_LIBIO.
18693
18694 2005-10-13  Simon Josefsson  <jas@extundo.com>
18695
18696         * modules/gc-hmac-md5-tests: New file.
18697
18698         * tests/test-gc-hmac-sha1.c: New file.
18699
18700         * tests/test-gc.c (main): Remove MD5 and HMAC-MD5 tests.
18701
18702         * modules/gc-hmac-md5-tests: New file.
18703
18704         * tests/test-gc-md5.c: New file.
18705
18706         * modules/gc-md5-tests: New file.
18707
18708 2005-10-13  Simon Josefsson  <jas@extundo.com>
18709
18710         * lib/gc-pbkdf2-sha1.c (gc_pbkdf2_sha1): Optimize CEIL computation.
18711         Move memory allocation outside of loop.
18712
18713 2005-10-13  Paul Eggert  <eggert@cs.ucla.edu>
18714
18715         * lib/mkdir-p.c (make_dir_parents): Don't report an error if an
18716         intermediate directory is in a read-only file system.  Problem
18717         reported by Eric Blake.
18718
18719 2005-10-13  Oskar Liljeblad  <oskar@osk.mine.nu>
18720
18721         * modules/human (Depends-on): Depend on xstrtoumax, not xstrtol.
18722
18723 2005-10-12  Simon Josefsson  <jas@extundo.com>
18724
18725         * tests/test-hmac-sha1.c: New file.
18726
18727         * modules/hmac-sha1-tests: New file.
18728
18729         * modules/hmac-sha1: New file.
18730
18731 2005-10-12  Simon Josefsson  <jas@extundo.com>
18732
18733         * modules/gc-sha1: New file.
18734
18735 2005-10-12  Simon Josefsson  <jas@extundo.com>
18736
18737         * modules/gc-pbkdf2-sha1, modules/gc-pbkdf2-sha1-tests: New files.
18738
18739         * tests/test-gc-pbkdf2-sha1.c: New file.
18740
18741 2005-10-12  Simon Josefsson  <jas@extundo.com>
18742
18743         * modules/gc-md5, modules/gc-hmac-md5: New files.
18744
18745         * modules/gc (Files): Remove md5, memxor and hmac files.
18746
18747 2005-10-12  Simon Josefsson  <jas@extundo.com>
18748
18749         * m4/gc-pbkdf2-sha1.m4: New file.
18750
18751         * m4/gc-hmac-sha1.m4: New file.
18752
18753         * m4/gc-sha1: New file.
18754
18755         * m4/hmac-sha1.m4: New file.
18756
18757 2005-10-12  Simon Josefsson  <jas@extundo.com>
18758
18759         * m4/gc-md5.m4, m4/gc-hmac-md5.m4: New files.
18760
18761         * m4/gc.m4: Don't call gl_MD5, gl_MEMXOR or gl_HMAC_MD5.
18762
18763 2005-10-12  Simon Josefsson  <jas@extundo.com>
18764
18765         * lib/gc.h, gc-gnulib.c, gc-libgcrypt.c: Use Gc_rc for return types,
18766         suggested by Bruno Haible <bruno@clisp.org>.
18767
18768 2005-10-12  Simon Josefsson  <jas@extundo.com>
18769
18770         * lib/gc.h, gc-gnulib.c, gc-libgcrypt.c: Support SHA-1.
18771
18772 2005-10-12  Simon Josefsson  <jas@extundo.com>
18773
18774         * lib/gc-pbkdf2-sha1.c: New file.
18775
18776         * lib/gc.h: Add gc_pbkdf2_sha1 prototype.
18777
18778 2005-10-12  Simon Josefsson  <jas@extundo.com>
18779
18780         * lib/gc-libgcrypt.c (gc_hmac_sha1): New function.
18781
18782         * lib/gc-gnulib.c (gc_hmac_sha1): New function.
18783
18784 2005-10-12  Simon Josefsson  <jas@extundo.com>
18785
18786         * lib/gc-gnulib.c: Condition MD5 and HMAC-MD5 use on GC_USE_MD5 and
18787         GC_USE_HMAC_MD5, respectively.
18788
18789         * lib/gc-libgcrypt.c (gc_md5): Fix assert call.
18790         (gc_md5): Fix typo.
18791
18792         * lib/gc.h (gc_hash_buffer): Use gc_hash in prototype.
18793
18794         * lib/gc-libgcrypt.c (gc_hash_buffer): Ditto.
18795
18796         * lib/gc-gnulib.c (gc_hash_buffer): Ditto.
18797
18798 2005-10-12  Bruno Haible  <bruno@clisp.org>
18799
18800         * m4/stdbool.m4 (gl_STDBOOL_H): Define as an alias of AM_STDBOOL_H.
18801         Reported by Stepan Kasal <kasal@ucw.cz>.
18802
18803 2005-10-11  Simon Josefsson  <jas@extundo.com>
18804
18805         * tests/test-crc.c: New file.
18806
18807         * modules/crc, modules/crc-tests: New files.
18808
18809 2005-10-11  Simon Josefsson  <jas@extundo.com>
18810
18811         * m4/crc.m4: New file.
18812
18813 2005-10-11  Simon Josefsson  <jas@extundo.com>
18814
18815         * lib/gc.h: Add gc_hash and gc_hash_buffer.
18816
18817         * lib/gc-gnulib.c (gc_hash_buffer): Add.  Reorder #include's.
18818
18819         * lib/gc-libgcrypt.c (gc_hash_buffer): Add.
18820
18821 2005-10-11  Simon Josefsson  <jas@extundo.com>
18822
18823         * lib/crc.h, lib/crc.c: New files.
18824
18825         * lib/gc.h (gc_hash_buffer): Add doc.
18826
18827 2005-10-11  Bruno Haible  <bruno@clisp.org>
18828
18829         * modules/c-strcasestr: New file.
18830         * MODULES.html.sh (String handling <string.h>): Add c-strcasestr.
18831
18832 2005-10-11  Bruno Haible  <bruno@clisp.org>
18833
18834         * modules/c-strcase: New file.
18835         * MODULES.html.sh (String handling <string.h>): Add c-strcase.
18836
18837 2005-10-11  Bruno Haible  <bruno@clisp.org>
18838
18839         * lib/strcasecmp.c: Include limits.h.
18840         (strcasecmp): Avoid integer overflow on exotic platforms.
18841         * lib/strncasecmp.c: Include limits.h.
18842         (strncasecmp): Avoid integer overflow on exotic platforms.
18843         Reported by Paul Eggert.
18844
18845 2005-10-11  Bruno Haible  <bruno@clisp.org>
18846
18847         * lib/c-strcasestr.h: New file, from GNU gettext.
18848         * lib/c-strcasestr.c: New file, from GNU gettext.
18849
18850 2005-10-11  Bruno Haible  <bruno@clisp.org>
18851
18852         * lib/c-strcase.h: New file, from GNU gettext.
18853         * lib/c-strcasecmp.c: New file, from GNU gettext.
18854         * lib/c-strncasecmp.c: New file, from GNU gettext.
18855
18856 2005-10-10  Paul Eggert  <eggert@cs.ucla.edu>
18857
18858         * modules/mempcpy (License): GPL -> LGPL.
18859         * modules/strchrnul (License): Likewise.
18860         * modules/sysexits (License): Likewise.
18861
18862 2005-10-08  Simon Josefsson  <jas@extundo.com>
18863
18864         * config/srclist.txt: Bug 1423 is closed, but 1439 remains.
18865
18866 2005-10-07  Simon Josefsson  <jas@extundo.com>
18867
18868         * m4/memxor.m4: Remove gl_C_RESTRICT call.
18869
18870 2005-10-06  Simon Josefsson  <jas@extundo.com>
18871
18872         * tests/test-hmac-md5.c: New file.
18873
18874         * modules/hmac-md5-tests: New file.
18875
18876         * modules/hmac-md5: New file.
18877
18878 2005-10-06  Simon Josefsson  <jas@extundo.com>
18879
18880         * m4/hmac-md5.m4: New file.
18881
18882         * m4/memxor.m4: Require gl_C_RESTRICT.
18883
18884 2005-10-06  Simon Josefsson  <jas@extundo.com>
18885
18886         * lib/memxor.c (memxor): Avoid casts and warnings.
18887
18888 2005-10-06  Simon Josefsson  <jas@extundo.com>
18889
18890         * lib/hmac-md5.c: New file.
18891
18892         * lib/hmac.h: New file.
18893
18894 2005-10-06  Paul Eggert  <eggert@cs.ucla.edu>
18895
18896         * m4/stdbool.m4 (AC_HEADER_STDBOOL): Check that bool
18897         promotes to int, not unsigned int, to catch the AIX 5.3
18898         compiler bug.
18899
18900 2005-10-05  Simon Josefsson  <jas@extundo.com>
18901
18902         * modules/memxor: New file.
18903
18904         * modules/iconv (Files): Move config.rpath to havelib, it is used
18905         there.
18906
18907         * modules/havelib (Files): Add config.rpath.
18908
18909 2005-10-05  Simon Josefsson  <jas@extundo.com>
18910
18911         * m4/memxor.m4: New file.
18912
18913 2005-10-05  Simon Josefsson  <jas@extundo.com>
18914
18915         * lib/memxor.c (memxor): Fix compiler error.
18916
18917         * lib/md5.h (MD5_DIGEST_SIZE, MD5_BLOCK_SIZE): Add, see also
18918         <http://sourceware.org/bugzilla/show_bug.cgi?id=1423>.
18919
18920         * lib/memxor.h, lib/memxor.c: New files.
18921
18922         * lib/getaddrinfo.h: Don't protect sys/types.h with HAVE_SYS_TYPES_H,
18923         we assume all systems have it, suggested by Jim Meyering
18924         <jim@meyering.net>.  Remove HAVE_SYS_SOCKET_H test too, to see if
18925         any systems lack sys/socket.h; mingw32 is known to lack it, but we
18926         don't support it yet anyway.  Also remove HAVE_NETDB_H test, for
18927         same reasons.
18928
18929 2005-10-05  Simon Josefsson  <jas@extundo.com>
18930
18931         * config/srclist.txt: Add glibc bug 1423 for md5.h.
18932
18933 2005-10-05  Paul Eggert  <eggert@cs.ucla.edu>
18934
18935         * m4/getaddrinfo.m4 (gl_PREREQ_GETADDRINFO): Don't check for
18936         sys/socket.h, netdb.h, sys/types.h; the checks areno longer
18937         needed, since the source code now assumes these .h files.
18938
18939 2005-10-05  Derek Price  <derek@ximbiot.com>
18940
18941         * lib/getdelim.c (SIZE_MAX): New macro, if not already defined.
18942
18943 2005-10-05  Bruno Haible  <bruno@clisp.org>
18944
18945         * modules/stdint (License): Change to LGPL.
18946
18947 2005-10-04  Simon Josefsson  <jas@extundo.com>
18948
18949         * lib/getaddrinfo.h: Move sys/types.h include first, reported by "Mark
18950         D. Baushke" <mdb@gnu.org>.
18951
18952 2005-10-04  Bruno Haible  <bruno@clisp.org>
18953
18954         * lib/verify.h (verify_true): Provide alternative definition for C++.
18955
18956 2005-10-03  Paul Eggert  <eggert@cs.ucla.edu>
18957
18958         * lib/getdelim.c: Include getdelim.h first.  Include <limits.h>.
18959         (SSIZE_MAX): New macro, if not already defined.
18960         (getdelim): Fix buffer overrun on 64-bit hosts with lines longer
18961         than 2 GiB.
18962
18963 2005-10-02  Paul Eggert  <eggert@cs.ucla.edu>
18964
18965         Sync from coreutils.
18966         * m4/openat.m4 (gl_FUNC_OPENAT): Check for fdopendir.
18967         * m4/ullong_max.m4 (gl_ULLONG_MAX): Simplify so that it merely
18968         defines ULONG_MAX_LT_ULLONG_MAX.  Thomas M.Ott reports that
18969         ULLONG_MAX doesn't work with 2.7.2.1.
18970
18971 2005-10-02  Paul Eggert  <eggert@cs.ucla.edu>
18972
18973         * modules/xreadlink (Makefile.am): Remove lib_SOURCES.
18974         From Ben Pfaff.
18975
18976         * modules/exclude (Depends-on): Depend on verify.
18977         * modules/strtoimax (Depends-on): Likewise.
18978         * modules/utimecmp (Depends-on): Likewise.
18979
18980 2005-10-02  Paul Eggert  <eggert@cs.ucla.edu>
18981
18982         * lib/exclude.c: Include verify.h.
18983         (verify): Remove.  All callers changed to use verify.h's version.
18984         * lib/strtoimax.c: Likewise.
18985         * lib/utimecmp.c: Likewis.e
18986
18987         Sync from coreutils.
18988         * lib/.cppi-disable: Add getaddrinfo.h, getdelim.h, getline.h,
18989         getpass.c, mbchar.h, mbuiter.h, strcase.h, strnlen.h, strnlen1.h.
18990         * lib/.cvsignore: Add fts.h, search.h, t-fpending.
18991         * lib/settime.c (settime): Fix { typo in previous patch.  Also, don't
18992         bother returning ENOSYS if settimeofday or stime fails; just let
18993         them return whatever errno they want to return.
18994         * lib/utimens.c: Include unistd.h, for dup2.
18995         (futimens): Fix typo: HAVE_FUTIMESAT was misspelled in an #if.
18996         (futimens) [! HAVE_FUTIMESAT]: If !file, set errno before returning -1.
18997
18998 2005-10-02  Jim Meyering  <jim@meyering.net>
18999
19000         Sync from coreutils.
19001         * m4/utimes.m4 (gl_FUNC_UTIMES): Detect the version of utimes
19002         from glibc-2.2.5 that fails for read-only files.
19003
19004 2005-10-02  Jim Meyering  <jim@meyering.net>
19005
19006         Sync from coreutils.
19007         * lib/fts-cycle.c [HAVE_CONFIG_H]: Include <config.h>.
19008         * lib/openat-die.c: Use `#ifdef HAVE_CONFIG_H', not
19009         `#if HAVE_CONFIG_H'.
19010         * lib/openat.c (fdopendir): Do not define if HAVE_FDOPENDIR.
19011         Remove AT_FDCWD test.
19012         Do not consume the fd unless successful.
19013         * lib/openat.h (fdopendir): Do not define if HAVE_FDOPENDIR.
19014         * lib/settime.c (settime): Move the HAVE_STIME block `up' into an #elif
19015         block, so that we don't even try to compile it if settimeofday is
19016         available.  This works around a compilation failure on OSF1 V5.1,
19017         due to stime requiring a `long int*' while tv_sec is `int'.
19018
19019 2005-10-02  Alfred M. Szmidt  <ams@gnu.org>
19020
19021         Sync from coreutils.
19022         * m4/chdir-long.m4 (gl_FUNC_CHDIR_LONG): Compare $gl_have_path...
19023         against `yes', rather than just testing for nonempty.
19024
19025 2005-10-01  Simon Josefsson  <jas@extundo.com>
19026
19027         * m4/getaddrinfo.m4: Include sys/types.h for sys/socket.h, on FreeBSD
19028         and Darwin.
19029
19030         * m4/getaddrinfo.m4: Use AC_GNU_SOURCE, GNU only declare getaddrinfo
19031         as an (POSIX) extension.  Check for sys/types.h, sys/socket.h, and
19032         netdb.h too, needed by getaddrinfo.h.  Check if getaddrinfo,
19033         freeaddrinfo and gai_strerror are declared by the POSIX headers.
19034         Check if struct addrinfo is declared.
19035
19036 2005-10-01  Simon Josefsson  <jas@extundo.com>
19037
19038         * lib/getaddrinfo.h: Protect #include's of sys/socket.h and netdb.h.
19039         Only define struct addrinfo if !HAVE_STRUCT_ADDRINFO.  Protect
19040         AI_* and EAI_* definitions.  Protect function declarations.
19041
19042 2005-10-01  Jim Meyering  <jim@meyering.net>
19043
19044         Sync from coreutils.
19045
19046         * m4/getaddrinfo.m4 (gl_GETADDRINFO): Look for getservbyname in these
19047         libraries [inet nsl socket xnet].  Nelson Beebe reported that with
19048         native cc on Solaris 7, getaddrinfo.c requires -lsocket.
19049         * m4/getaddrinfo.m4 (gl_GETADDRINFO): Check for gethostbyname
19050         in the inet and nsl libraries.  Required on Solaris 5.7.
19051
19052 2005-10-01  Jim Meyering  <jim@meyering.net>
19053
19054         Sync from coreutils.
19055         * m4/getaddrinfo.m4 (gl_GETADDRINFO): Check for gethostbyname
19056         in the inet and nsl libraries.  Required on Solaris 5.7.
19057
19058 2005-10-01  Eric Blake  <ebb9@byu.net>  (tiny change)
19059
19060         * lib/getdelim.c (getdelim): Remove unused variables.
19061
19062 2005-09-29  Paul Eggert  <eggert@cs.ucla.edu>
19063
19064         * lib/xtime.h (XTIME_PRECISION): Now of type int, not long long int,
19065         so that the code works even with ancient cpp.  Portability problem
19066         with GCC 2.7.2.1 reported by Thomas M.Ott.
19067
19068 2005-09-27  Paul Eggert  <eggert@cs.ucla.edu>
19069
19070         * modules/regex (Depends-on): Add strcase.
19071
19072         * modules/gethostname (Licence): Change from GPL to LGPL, since
19073         gethostname.c is a trivial implementation of a standard library
19074         function.
19075         * modules/poll (License): Change from GPL to LGPL, since it's
19076         derived from LGPL code.
19077
19078 2005-09-27  Jim Meyering  <jim@meyering.net>
19079
19080         * lib/getcwd.c: Change #ifdef<TAB>HAVE_CONFIG_H to #ifdef
19081         HAVE_CONFIG_H.
19082
19083         * lib/intprops.h (signed_type_or_expr__): Define.
19084         (INT_STRLEN_BOUND) [__GNUC__]: Use a slightly tighter bound
19085         for unsigned types.
19086
19087 2005-09-26  Paul Eggert  <eggert@cs.ucla.edu>
19088
19089         * lib/verify.h (verify_expr): Remove, replacing with:
19090         (verify_true): New macro that returns true instead of void.
19091         (verify_type__): Remove.
19092         (verify): Use verify_true rather than verify_type__.
19093
19094 2005-09-26  Bruno Haible  <bruno@clisp.org>
19095
19096         * modules/mbchar (Include): Mention that HAVE_WCHAR_H && HAVE_WCTYPE_H
19097         is necessary.
19098         (lib_SOURCES): Remove mbchar.c.
19099         * modules/mbfile (Include): Mention that HAVE_MBRTOWC is necessary.
19100         (Files): Add m4/mbrtowc.m4.
19101         * modules/mbiter: Likewise.
19102         * modules/mbuiter: Likewise.
19103
19104 2005-09-26  Bruno Haible  <bruno@clisp.org>
19105
19106         * m4/mbchar.m4 (gl_MBCHAR): Check for wchar.h and wctype.h. Don't
19107         compile mbchar.c if they are not both present.
19108         * m4/mbfile.m4 (gl_MBFILE): Require gl_FUNC_MBRTOWC.
19109         * m4/mbiter.m4 (gl_MBITER): Likewise.
19110         * m4/strstr.m4 (gl_PREREQ_STRSTR): Use AC_REQUIRE.
19111         * m4/strcasestr.m4 (gl_PREREQ_STRCASESTR): Likewise.
19112         * m4/strcase.m4 (gl_PREREQ_STRCASECMP): Likewise.
19113
19114 2005-09-25  Jim Meyering  <jim@meyering.net>
19115
19116         * modules/inet_ntop (Depends-on): Add socklen, since inet_ntop.c
19117         also uses socklen_t.
19118
19119 2005-09-24  Paul Eggert  <eggert@cs.ucla.edu>
19120
19121         * lib/utimens.c (ENOSYS): Define if not already defined.
19122         (futimens): Support having a null PATH if the file descriptor
19123         is nonnegative.
19124
19125         * lib/regex_internal.h (__GNUC_PREREQ, always_inline, inline, pure):
19126         Remove.
19127         (__attribute): Define to empty unless GCC 3.1 or later.
19128         This works around a core dump on OpenBSD 3.4, which has GCC
19129         2.95.3, which dumps core when given __attribute__(()).  It also
19130         simplifies other tests, since we really don't want to bother with
19131         worrying about which ancient version of GCC supported what.
19132         Original problem reported by Yoann Vandoorselaere, with part of
19133         the fix suggested by Derek Price.
19134
19135 2005-09-24  Jim Meyering  <jim@meyering.net>
19136
19137         * lib/verify.h (verify_type__): Use `unsigned int' as the bitfield type
19138         so we can once again use a positive bitfield width of 1 -- now we
19139         don't have to explain why we were using a bitfield width of 2.
19140
19141 2005-09-23  Paul Eggert  <eggert@cs.ucla.edu>
19142
19143         * m4/regex.m4 (gl_REGEX): If replacing, define regcomp to rpl_regcomp,
19144         and similarly for the other external symbols.  Problem reported
19145         by James Gallager.
19146
19147         * m4/fnmatch.m4 (_AC_FUNC_FNMATCH_IF): Catch Sun Studio 10u1 on Linux
19148         bug reported by Jim Meyering.
19149
19150         * m4/utimens.m4 (gl_UTIMENS): Check for futimesat.
19151         * m4/getaddrinfo.m4 (gl_PREREQ_GETADDRINFO): Undo previous change;
19152         not needed, since socklen is a prerequisite module.
19153
19154 2005-09-23  Paul Eggert  <eggert@cs.ucla.edu>
19155
19156         * lib/getaddrinfo.c [HAVE_NETINET_IN_H]: Include <netinet/in.h>.
19157         Problem reported by Eric Blake.
19158         (getaddrinfo): Initialize se so that it's not garbage.
19159         Redo internal storage allocation so that it doesn't make unportable
19160         assumptions about alignment.
19161         Fix a memory leak.
19162
19163         * lib/utimens.c (futimens): Use futimesat if available.
19164         Prefer it to futimes since it doesn't have the futimes bug.
19165
19166         * lib/verify.h (GL_CONCAT0, GL_CONCAT): Remove.
19167         (verify): Don't use the __LINE__ trick, as it doesn't work in general.
19168         Instead, declare a function that returns a pointer to an array,
19169         and use verify_type__ to declare the size of the array.
19170         Problem and germ of a solution reported by Bruno Haible.
19171         (verify_type__): Use 2, not 1, for bitfield size, to avoid
19172         a warning with Irix 6.5 cc.  Problem reported by Bruno Haible.
19173
19174 2005-09-23  Jim Meyering  <jim@meyering.net>
19175
19176         Sync from coreutils.
19177         Correct build failure (socklen_t not defined) on at least
19178         mips-sgi-irix6.5 and alphaev67-dec-osf5.1.
19179         * m4/getaddrinfo.m4 (gl_PREREQ_GETADDRINFO): Require gl_SOCKLEN_T.
19180
19181 2005-09-23  Jim Meyering  <jim@meyering.net>
19182
19183         * modules/getaddrinfo (Depends-on): Add socklen.
19184
19185 2005-09-23  Bruno Haible  <bruno@clisp.org>
19186
19187         * tests/test-verify.c: New file.
19188
19189 2005-09-22  Paul Eggert  <eggert@cs.ucla.edu>
19190
19191         Sync from coreutils.
19192
19193         * modules/argmatch (Depends-on): Add verify.
19194         * modules/getloadavg (Depends-on): Depend on fcntl-safer, not
19195         unistd-safer.
19196         * modules/save-cwd (Depends-on): Likewise.
19197
19198         * modules/openat (Files): Add lib/openat-die.c.
19199         (Depends-on): Remove error, exitfail.
19200         Add dirname.
19201
19202         * modules/verify: New file.
19203         * MODULES.html.sh (Diagnostics <assert.h>): New section,
19204         with "verify" module.
19205
19206 2005-09-22  Paul Eggert  <eggert@cs.ucla.edu>
19207
19208         Sync from coreutils.
19209
19210         * m4/backupfile.m4, calloc.m4, chown.m4, cloexec.m4, dup2.m4:
19211         * m4/fileblocks.m4, free.m4, ftruncate.m4, getcwd.m4, getpagesize.m4:
19212         * m4/getugroups.m4, group-member.m4, idcache.m4, link-follow.m4:
19213         * m4/mkstemp.m4, mktime.m4, mountlist.m4, nanosleep.m4, pathmax.m4:
19214         * m4/physmem.m4, posixver.m4, putenv.m4, safe-read.m4, same.m4:
19215         * m4/save-cwd.m4, stdio-safer.m4, unistd-safer.m4, unlinkdir.m4:
19216         * m4/userspec.m4, xgetcwd.m4, xreadlink.m4:
19217         Don't bother checking for string.h, stdlib.h, unistd.h.
19218         * m4/fts.m4 (gl_FUNC_FTS_CORE): Don't require
19219         AC_FUNC_LSTAT_FOLLOWS_SLASHED_SYMLINK; that's now the lstat
19220         module's job.
19221         * m4/jm-macros.m4 (gl_MACROS): Likewise.
19222         * m4/prereq.m4 (gl_PREREQ): Add gl_FUNC_LSTAT.
19223
19224         * m4/getdate.m4 (gl_C_COMPOUND_LITERALS): New macro.
19225         (gl_GETDATE): Use it.
19226
19227         * m4/mkdir-p.m4 (gl_MKDIR_PARENTS): Don't bother checking for unistd.h.
19228
19229 2005-09-22  Paul Eggert  <eggert@cs.ucla.edu>
19230
19231         Sync from coreutils.
19232
19233         * lib/.cppi-disable: Add regcomp.c, regex_internal.c, regex_internal.h,
19234         stat-time.h.
19235         * lib/argmatch.h: Include verify.h
19236         (ARGMATCH_VERIFY): Use verify rather than rolling our own.
19237         (ARGMATCH_ASSERT): Remove; unused.
19238         * lib/canonicalize.c: Assume STDC_HEADERS.
19239         * lib/exclude.c: Include "strcase.h".
19240         * lib/regex_internal.h [!defined _LIBC]: Likewise.
19241         * lib/getusershell.c: Include stdio--.h rather than stdio.h
19242         and stdio-safer.h.
19243         (getusershell): Call fopen, not fopen_safer.
19244         * lib/save-cwd.c: Include fcntl--.h rather than fcntl.h.
19245         Do not include unistd-safer.h.
19246         (save_cwd): Don't call fd_safer; no longer needed
19247         now that we include fcntl--.h.
19248
19249         * lib/getdate.y (relative_time): New type.
19250         (RELATIVE_TIME_0): New constant.
19251         (parser_control): Use relative_time instead of doing it ourselves.
19252         (%union): Add new relative_time rel member.
19253         (tYEAR_UNIT, tMONTH_UNIT, tHOUR_UNIT, tMINUTE_UNIT, tSEC_UNIT):
19254         Now typeless.
19255         (relunit, relunit_snumber): Now of type rel.
19256         (zone, rel, relunit, get_date): Adjust to above changes.
19257
19258         * lib/getloadavg.c: Include fcntl--.h rather than fcntl.h.
19259         Do not include unistd-safer.h.
19260         (getloadavg): Don't call fd_safer; no longer needed
19261         now that we include fcntl--.h.
19262
19263         * lib/mkdir-p.c (ENOSYS): Define to EEXIST if not defined.
19264         (make_dir_parents): Treat ENOSYS like EEXIST.
19265
19266         Improve quality of diagnostics on restore_cwd failure.
19267         * lib/mkdir-p.h (make_dir): Remove.  All uses replaced by mkdir.
19268         (make_dir_parents): Last arg is now int * (for errno), not bool *.
19269         * lib/mkdir-p.c (make_dir, make_dir_parents): Likewise.
19270         Rewrite "mkdir -p" algorithm to avoid the need for "stat"
19271         each time through the loop.  Do not diagnose restore_cwd failure;
19272         that is the caller's job (and perhaps the caller does not care).
19273
19274         * lib/mkdir-p.c (CLEANUP_CWD, CLEANUP): Remove.
19275         (make_dir_parents): Revamp to avoid need for CLEANUP_CWD, CLEANUP.
19276         If the file already exists but is not a directory, don't bother
19277         to try to make its parents.
19278         Close potential file descriptor leak if we can't chdir("/") (!).
19279         Don't always return true if chdir($PWD) fails; return true only
19280         if the requested action was done successfully (except for the
19281         chdir($PWD)).
19282         Don't log final directory unless we actually made it.
19283         Refactor to avoid duplicate code to fix up permissions.
19284         Don't attempt to fix up parent permissions if chdir($PWD) fails.
19285
19286         * lib/strftime.c (my_strftime): Rewrite the previous change slightly,
19287         to make it a bit faster and (I hope) clearer.
19288         * lib/strftime.c (my_strftime): Add support for %:z, %::z, %:::z.
19289         Fix bug in formats like %2N.
19290
19291         * lib/verify.h: New file.
19292
19293 2005-09-22  Paul Eggert  <eggert@cs.ucla.edu>
19294
19295         Sync from coreutils.
19296         * m4/getaddrinfo.m4 (gl_PREREQ_GETADDRINFO): Check for netinet/in.h.
19297
19298 2005-09-22  Jim Meyering  <jim@meyering.net>
19299
19300         Sync from coreutils.
19301
19302         * m4/lstat.m4 (gl_FUNC_LSTAT):
19303         Use AC_LIBSOURCES to require lstat.c and lstat.h.
19304         Remove obsolete comment.
19305         * m4/xreadlink.m4: Use AC_LIBSOURCES and AC_LIBOBJ.
19306         * m4/xstrtod.m4: Likewise.
19307
19308         * m4/openat.m4 (gl_FUNC_OPENAT): Add openat-die.c.
19309
19310 2005-09-22  Jim Meyering  <jim@meyering.net>
19311
19312         Sync from coreutils.
19313
19314         * lib/backupfile.c: Use ARGMATCH_VERIFY, just in case.
19315
19316         * lib/posixtm.c (posixtime) [lint]: Initialize *all* of tm0, not just
19317         the .tm_year member, since otherwise gcc-4.0 would now warn about
19318         tm_zone, tm_gmtoff, tm_isdst, tm_yday, tm_wday.
19319
19320         * lib/quotearg.c (quotearg_n_options): Change code to be suboptimal, in
19321         order to avoid an unsuppressible warning from gcc on 64-bit systems.
19322
19323         * lib/getdate.y (get_date): Undo part of the 2005-04-04 change, so that
19324         the command "date -d'2005-03-27 +1 day'" succeeds once again, even
19325         when run in a time zone for which daylight savings time is in effect
19326         for the starting date.
19327
19328         * lib/mkdir-p.c (make_dir_parents): Don't let a failed chdir($PWD)
19329         stop us from restricting permissions of just-created absolute-named
19330         directories.
19331         * lib/mkdir-p.c (CLEANUP_CWD): Return *true*, not false when failing
19332         to restore initial working directory.
19333         * lib/mkdir-p.c (make_dir_parents): New parameter:
19334         different_working_dir, to tell caller if/when we change the working
19335         directory and are unable to return to the initial one.
19336         * lib/mkdir-p.h (make_dir_parents): Update prototype.
19337         * lib/mkdir-p.c (CLEANUP_CWD): Change one more `return 1' to
19338         `return false'.  This fixes a bug introduced on 2004-07-30.
19339
19340         * lib/openat.c (fdopendir): Be sure to close the supplied
19341         file descriptor before returning.  This makes our replacement
19342         implementation a little closer to Solaris's, where fdopendir
19343         ties the file descriptor to the returned DIR* pointer.
19344         * lib/openat.c (unlinkat): New function.
19345         * lib/openat.h (unlinkat): Add prototype.
19346         * lib/openat-die.c (openat_save_fail): Rename from openat_save_die.
19347         (openat_restore_fail): Rename from openat_restore_die.
19348         * lib/openat.c, openat.h: Reflect s/_die/_fail/ renaming.
19349
19350         Provide an alternative to exiting immediately upon save_cwd or
19351         restore_cwd failure.  Now, an application can arrange e.g.,
19352         to perform a longjump in that case.
19353         * lib/openat.c: Include dirname.h.
19354         Use IS_ABSOLUTE_FILE_NAME rather than testing for leading slash.
19355         (rpl_openat, fdopendir, fstatat): Call openat_save_die
19356         and openat_restore_die rather than calling error directly.
19357         Don't include "error.h" or "exitfail.h"; they're no longer needed.
19358
19359         * lib/openat-die.c (openat_save_die, openat_restore_die): New file.
19360         * lib/openat.h (openat_save_die, openat_restore_die): Declare and
19361         define.
19362
19363         * lib/strftime.c [FPRINTFTIME] (fprintftime): Provide a new interface:
19364         size_t fprintftime (FILE *fp, char const *fmt, struct tm const *tm,
19365                             int utc, int nanoseconds);
19366         Background:
19367         date should not have to allocate a megabyte of virtual memory to
19368         handle a format argument like +%1048575T.  When implemented with
19369         strftime, it must allocate such a buffer, use strftime to fill it
19370         in, print it, then free it.
19371         With fprintftime, it simply prints everything and exits.
19372         With no need for memory allocation, that's one fewer way to fail.
19373         * lib/strftime.c (my_strftime): Parse the colons of %:::z *after* the
19374         optional field width, not before, so we accept %9:z, not %:9z.
19375         (my_strftime): Be sure to use L_('x') for literals.
19376
19377         * lib/backupfile.c, lib/canon-host.c, lib/canonicalize.c, lib/chown.c:
19378         * lib/cloexec.c, lib/dup-safer.c, lib/dup2.c, lib/euidaccess.c:
19379         * lib/fd-safer.c, lib/fileblocks.c, lib/fopen-safer.c, lib/fsusage.c:
19380         * lib/ftruncate.c, lib/getcwd.c, lib/getcwd.h, lib/getloadavg.c:
19381         * lib/getopt_.h, lib/getpagesize.h, lib/getugroups.c:
19382         * lib/group-member.c, lib/human.h, lib/idcache.c, lib/mkdir-p.c:
19383         * lib/mountlist.c, lib/nanosleep.c, lib/pathmax.h, lib/physmem.c:
19384         * lib/posixver.c, lib/putenv.c, lib/raise.c, lib/safe-read.c:
19385         * lib/same.c, lib/save-cwd.c, lib/setenv.c, lib/settime.c:
19386         * lib/tempname.c, lib/unlinkdir.c, lib/unsetenv.c, lib/userspec.c:
19387         * lib/xgethostname.c, lib/xreadlink.c:
19388         Assume HAVE_UNISTD_H, i.e., include <unistd.h> unconditionally.
19389
19390         * lib/chown.c, lib/cloexec.c, lib/dup-safer.c, lib/dup2.c:
19391         * lib/fsusage.c, lib/getcwd.c, lib/getloadavg.c, lib/mountlist.c:
19392         * lib/openat.h, lib/save-cwd.c, lib/tempname.c:
19393         Assume HAVE_FCNTL_H (i.e., include <fcntl.h> unconditionally,
19394         and don't include <sys/file.h>).
19395
19396 2005-09-22  Eric Blake  <ebb9@byu.net>  (tiny change)
19397
19398         Sync from coreutils.
19399
19400         * lib/getloadavg.c (getloadavg) [__CYGWIN__]: Port to cygwin.
19401         [__linux__]: Allocate a big enough buffer for /proc/loadavg.
19402         [!LDAV_DONE]: Avoid unused variable warning.
19403
19404 2005-09-21  Bruno Haible  <bruno@clisp.org>
19405
19406         * lib/unicodeio.h (unicode_to_mb): New declaration.
19407
19408 2005-09-20  Derek Price  <derek@ximbiot.com>
19409
19410         * lib/getaddrinfo.c: Don't include <netdb.h> included from
19411         getaddrinfo.h.
19412
19413 2005-09-20  Bruno Haible  <bruno@clisp.org>
19414
19415         * gnulib-tool: Remove trailing slashes from the values specified for
19416         --source-base, --m4-base, --tests-base, --aux-dir.
19417         Suggested by Simon Josefsson <jas@extundo.com>.
19418
19419 2005-09-20  Bruno Haible  <bruno@clisp.org>
19420
19421         * gnulib-tool (func_all_modules, func_modules_transitive_closure,
19422         func_modules_to_filelist, func_import, func_create_testdir): Make all
19423         sorting results locale-independent, so that gnulib-cache.m4 doesn't
19424         change when gnulib-tool is invoked in a different locale.
19425
19426 2005-09-19  Simon Josefsson  <jas@extundo.com>
19427
19428         * m4/socklen.m4: Fix typo.
19429
19430 2005-09-19  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
19431
19432         Use a consistent style for including <config.h>.
19433         * lib/__fpending.c, lib/acl.c, lib/argmatch.c, lib/argp-help.c,
19434         lib/argp-parse.c, lib/argp-pvh.c, lib/backupfile.c, lib/basename.c,
19435         lib/c-stack.c, lib/calloc.c, lib/check-version.c, lib/cloexec.c,
19436         lib/closeout.c, lib/copy-file.c, lib/creat-safer.c, lib/cycle-check.c,
19437         lib/dirfd.c, lib/dirname.c, lib/dup-safer.c, lib/dup2.c,
19438         lib/euidaccess.c, lib/exclude.c, lib/exitfail.c, lib/fatal-signal.c,
19439         lib/fd-safer.c, lib/file-type.c, lib/fileblocks.c, lib/filemode.c,
19440         lib/filenamecat.c, lib/findprog.c, lib/fnmatch.c, lib/fopen-safer.c,
19441         lib/free.c, lib/fsusage.c, lib/ftruncate.c, lib/full-write.c,
19442         lib/fwriteerror.c, lib/getaddrinfo.c, lib/getcwd.c, lib/getdelim.c,
19443         lib/getline.c, lib/getlogin_r.c, lib/getndelim2.c, lib/getnline.c,
19444         lib/getopt1.c, lib/getpass.c, lib/group-member.c, lib/hard-locale.c,
19445         lib/hash-pjw.c, lib/hash.c, lib/human.c, lib/idcache.c,
19446         lib/inet_ntop.c, lib/isdir.c, lib/long-options.c, lib/malloc.c,
19447         lib/memcasecmp.c, lib/memcmp.c, lib/memcoll.c, lib/memcpy.c,
19448         lib/memmove.c, lib/mkdir-p.c, lib/modechange.c, lib/mountlist.c,
19449         lib/open-safer.c, lib/physmem.c, lib/pipe-safer.c, lib/pipe.c,
19450         lib/poll.c, lib/posixver.c, lib/progname.c, lib/progreloc.c,
19451         lib/putenv.c, lib/quote.c, lib/quotearg.c, lib/readline.c,
19452         lib/readlink.c, lib/realloc.c, lib/regex.c, lib/rename.c, lib/rmdir.c,
19453         lib/rpmatch.c, lib/safe-read.c, lib/same.c, lib/save-cwd.c,
19454         lib/savedir.c, lib/sig2str.c, lib/strcspn.c, lib/strerror.c,
19455         lib/stripslash.c, lib/strncasecmp.c, lib/strndup.c, lib/strnlen.c,
19456         lib/strnlen1.c, lib/strsep.c, lib/strstr.c, lib/strtod.c,
19457         lib/strtoimax.c, lib/strtol.c, lib/strverscmp.c, lib/tempname.c,
19458         lib/time_r.c, lib/userspec.c, lib/utimecmp.c, lib/version-etc-fsf.c,
19459         lib/version-etc.c, lib/wait-process.c, lib/xalloc-die.c, lib/xgetcwd.c,
19460         lib/xmalloc.c, lib/xmemcoll.c, lib/xnanosleep.c, lib/xreadlink.c,
19461         lib/xsetenv.c, lib/xstrndup.c, lib/xstrtoimax.c, lib/xstrtol.c,
19462         lib/xstrtoumax.c, lib/yesno.c:
19463         Standardize inclusion of config.h.
19464         * lib/__fpending.h, lib/dirfd.h, lib/getdate.h, lib/human.h,
19465         lib/inttostr.h:  Removed inclusion of config.h from header files.
19466         * lib/inttostr.c:  Adjusted in-tree users.
19467         * lib/timespec.h: Remove superfluous warning to include config.h.
19468         * lib/atexit.c, lib/chdir-long.c, lib/chown.c, lib/fchown-stub.c,
19469         lib/getgroups.c, lib/gettimeofday.c, lib/lchown.c, lib/lstat.c,
19470         lib/mkdir.c, lib/mkstemp.c, lib/nanosleep.c, lib/openat.c, lib/raise.c,
19471         lib/readtokens0.c, lib/readutmp.c, lib/unlinkdir.c: Guard inclusion of
19472         config.h with HAVE_CONFIG_H.
19473
19474 2005-09-19  Jim Meyering  <jim@meyering.net>
19475
19476         * modules/pathmax (License): Change to LGPL.
19477
19478 2005-09-19  Derek Price  <derek@ximbiot.com>
19479
19480         * config/srclist.txt: glibc's glob.h is now in lib/glob-libc.h.
19481
19482 2005-09-19  Bruno Haible  <bruno@clisp.org>
19483
19484         * gnulib-tool (import): Provide default for --tests-base.
19485
19486 2005-09-19  Bruno Haible  <bruno@clisp.org>
19487
19488         * doc/quote.texi: New file, extracted from gnulib.texi.
19489         * doc/ctime.texi: New file, extracted from gnulib.texi.
19490         * doc/inet_ntoa.texi: New file, extracted from gnulib.texi.
19491         * doc/gnulib-tool.texi: New file, extracted from gnulib.texi.
19492         * doc/gnulib.texi: Include them.
19493
19494 2005-09-18  Bruno Haible  <bruno@clisp.org>
19495
19496         Portability fix.
19497         * gnulib-tool (func_readlink): New function.
19498         (func_ln_if_changed): Use it.
19499
19500 2005-09-18  Bruno Haible  <bruno@clisp.org>
19501
19502         * gnulib-tool: Support --with-tests also with --import.
19503         (func_emit_tests_Makefile_am): Use variables $m4base and $testsbase.
19504         (func_import): Use variables $testsbase and $inctests. Emit a
19505         gl_TESTS_BASE form into gnulib-cache.m4. Create $testsbase/Makefile.am.
19506         Remind the user to add AC_CONFIG_FILES($testsdir/Makefile) and
19507         SUBDIRS += $testsdir.
19508         (func_create_testdir): Update.
19509
19510 2005-09-18  Bruno Haible  <bruno@clisp.org>
19511
19512         * gnulib-tool: Revise --dry-run implementation. Use variable $doit
19513         instead of $dry_run.
19514         (func_cp_if_changed, func_mv_if_changed): Remove functions.
19515         (func_ln_if_changed): Don't handle dry-run here.
19516         (func_import): In dry-run mode, detect more precisely which actions
19517         would be performed, and don't use "...ing" verbs.
19518
19519 2005-09-18  Bruno Haible  <bruno@clisp.org>
19520
19521         * gnulib-tool (func_tmpdir): New function, taken from GNU gettextize.
19522         (func_import): Use join on two temporary files instead of three nested
19523         loops, in order to determine which files are new or old.
19524
19525 2005-09-18  Bruno Haible  <bruno@clisp.org>
19526
19527         * gnulib-tool (func_import): Comment out code that spits out the
19528         new files with --dry-run.
19529
19530 2005-09-18  Bruno Haible  <bruno@clisp.org>
19531
19532         * doc/gnulib.texi (Invoking gnulib-tool): 50% rewritten.
19533
19534 2005-09-16  Paul Eggert  <eggert@cs.ucla.edu>
19535
19536         * lib/stat-time.h: New file.
19537         * lib/timespec.h (ST_TIME_CMP_NS, ST_TIME_CMP, ATIME_CMP, CTIME_CMP):
19538         (MTIME_CMP, TIMESPEC_NS): Remove.  Now done by stat-time.h,
19539         in a different way.
19540         (timespec_cmp): New function.
19541         * lib/utimecmp.c: Include stat-time.h.
19542         (SYSCALL_RESOLUTION): Depend on whether various struct stat
19543         members exist, not on the obsolescent ST_MTIM_NSEC.
19544         (utimecmp): Use the new stat-time functions rater than TIMESPEC_NS.
19545
19546 2005-09-16  Paul Eggert  <eggert@cs.ucla.edu>
19547
19548         * config/srclist.txt: Remove glibc bug 1033 and uncomment mktime.c.
19549
19550 2005-09-16  Paul Eggert  <eggert@cs.ucla.edu>
19551
19552         * MODULES.html.sh (File system functions): Add stat-time.
19553         * modules/stat-time: New file.
19554         * modules/timespec (Files): Remove m4/st_mtim.m4; this
19555         is now done in a different way, by the stat-time module.
19556         * modules/utimecmp (Depends-on): Add stat-time.
19557
19558 2005-09-15  Paul Eggert  <eggert@cs.ucla.edu>
19559
19560         * m4/st_mtim.m4: Remove.  Superseded by...
19561         * m4/stat-time.m4: New file.
19562         * m4/timespec.m4 (gl_TIMESPEC): Require AC_C_INLINE.
19563         Do not invoke AC_STRUCT_ST_MTIM_NSEC; no longer needed.
19564
19565 2005-09-15  Derek Price  <derek@ximbiot.com>
19566
19567         * m4/strstr.m4 (gl_FUNC_STRSTR): Don't define strstr here.
19568
19569 2005-09-15  Derek Price  <derek@ximbiot.com>
19570
19571         * lib/regex_internal.h: Blank `pure' for GNUC < 3.
19572         * lib/regex_internal.c: Ditto, using this...
19573         (__GNUC_PREREQ): ...new macro.
19574         * lib/regcomp.c, regexec.c: Blank `always_inline' for GNUC < 3.1
19575         using...
19576         (__GNUC_PREREQ): ...this new macro.
19577
19578         * lib/strstr.h: Include string.h. Define strstr as a macro here.
19579
19580 2005-09-15  Derek Price  <derek@ximbiot.com>
19581             Paul Eggert  <eggert@cs.ucla.edu>
19582
19583         * lib/regcomp.c, regexec.c, regex_internal.c: Back out previous
19584         changes, consolidating in...
19585         * lib/regex_internal.h: ...this file.
19586
19587 2005-09-13  Jim Meyering  <jim@meyering.net>
19588
19589         * lib/canon-host.c: Filter through gnu indent and reword comments
19590         slightly.
19591         * lib/canon-host.h (ch_strerror_r): Tweak cpp indentation and spacing.
19592
19593 2005-09-13  Derek Price  <derek@ximbiot.com>
19594
19595         * lib/canon-host.c (canon_host_r): Set *cherror on memory allocation
19596         failure.
19597         Reported by Jim Meyering  <jim@meyering.net>.
19598
19599 2005-09-12  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>  (tiny change)
19600
19601         * lib/base64.c: Typo.
19602         (base64_encode): Put b64str in initialized data section.
19603
19604 2005-09-12  Paul Eggert  <eggert@cs.ucla.edu>
19605
19606         Merge glibc and coreutils changes into gnulib, plus a few
19607         extra fixes.
19608         * lib/md5.c: Use #error rather than a string.
19609         (CYCLIC): New macro, from glibc source.  Use it instead of rol.
19610         * lib/md5.h (__GNUC_PREREQ, __THROW): Define if not defined already.
19611         (__attribute__): Define to empty for non recent-GCC.
19612         (__md5_buffer, __md5_finish_ctx, __md5_init_ctx, __md5_process_block):
19613         (__md5_process_bytes, __md5_read_ctx, __md5_stream):
19614         Renamed from their non-__ counterparts, with new macros replacing
19615         them if not _LIBC.  Add __THROW attribute.
19616         (rol): Remove.
19617         (struct md5_ctx): Align buffer if using GCC.
19618         * lib/sha1.h (struct sha1_ctx): Likewise.
19619         * lib/sha1.c (SWAP): Renamed from the NOTSWAP.  All uses changed.
19620         The old name was backwards.
19621         (NOTSWAP): Remove; not used.
19622         (rol): New macro, moved here from md5.h.
19623         (sha1_process_block): Remove a FIXME that doesn't make sense.
19624
19625 2005-09-12  Derek Price  <derek@ximbiot.com>
19626
19627         Return usable errors from canon-host.
19628         * lib/canon-host.h: New file.
19629         * lib/canon-host.c (canon_host): Wrap...
19630         (canon_host_r): ...this new function, which now relies exclusively on
19631         getaddrinfo.
19632         (ch_strerror): New function.
19633         (last_cherror): New global.
19634         * lib/getaddrinfo.c: Move include of getaddrinfo.h first to test
19635         interface.
19636         (getaddrinfo): Add AI_CANONNAME functionality.  Don't do arithmetic on
19637         void *.
19638         (freeaddrinfo): Free ai->ai_canonname when set.
19639
19640 2005-09-12  Derek Price  <derek@ximbiot.com>
19641
19642         Make canon-host require getaddrinfo.
19643         * m4/canon-host.m4 (gl_CANON_HOST): Remove most dependencies.
19644         AC_LIBSOURCE canon-host.h.  Call...
19645         (gl_PREREQ_CANON_HOST): ...this new function, which requires
19646         gl_GETADDRINFO.
19647         * m4/getaddrinfo.m4 (gl_GETADDRINFO): Compile gai_strerror when needed.
19648
19649 2005-09-12  Derek Price  <derek@ximbiot.com>
19650
19651         * modules/canon-host: Add canon-host.h.  Depend on getaddrinfo.  Make
19652         LGPL.
19653         * modules/getaddrinfo: Add link to opengroup spec.  Depend on strdup.
19654
19655 2005-09-12  Derek Price  <derek@ximbiot.com>
19656
19657         * lib/gai_strerror.c: Include config.h when available.  Include
19658         getaddrinfo.h before other headers to test interface.
19659         Reported by Larry Jones <lawrence.jones@ugs.com>.
19660
19661 2005-09-12  Derek Price  <derek@ximbiot.com>
19662             Paul Eggert  <eggert@cs.ucla.edu>
19663
19664         * modules/glob (Files): Add glob-libc.h.
19665
19666 2005-09-12  Derek Price  <derek@ximbiot.com>
19667             Paul Eggert  <eggert@cs.ucla.edu>
19668
19669         * m4/glob.m4 (gl_GLOB_SUBSTITUTE): AC_LIBSOURCES for glob.c,
19670         glob_.h, glob-libc.h.
19671         (gl_PREREQ_GLOB): Remove _SYS_CDEFS_H hack; no longer needed.
19672
19673 2005-09-12  Derek Price  <derek@ximbiot.com>
19674             Paul Eggert  <eggert@cs.ucla.edu>
19675
19676         * lib/glob-libc.h: Renamed from glob_.h.  The new version is
19677         taken from libc's glob.h, except with '#ifdef __GLOB_GNULIB'
19678         protecting things that should be done only in gnulib contexts.
19679         * lib/glob_.h: New file, containing only the glob things needed for
19680         gnulib.
19681         (GLOB_PREFIX): Remove.  All uses changed to look for __GLOB_GNULIB.
19682         (__GLOB_CONCAT, __GLOB_XCONCAT, __GLOB_ID): Remove; no longer needed.
19683         (glob, globfree, glob_pattern_p): Now defined simply in terms of
19684         rpl_glob, rpl_globfree, rpl_glob_pattern_p.
19685         (__GLOB_GNULIB): New macro, to keep the glob.h changes clearer
19686         and to respect the namespace rules better.
19687
19688 2005-09-08  Simon Josefsson  <jas@extundo.com>
19689
19690         * modules/socklen: New file.
19691
19692 2005-09-08  Simon Josefsson  <jas@extundo.com>
19693
19694         * m4/socklen.m4: New file.
19695
19696 2005-09-08  Paul Eggert  <eggert@cs.ucla.edu>
19697
19698         * modules/utimens (Files): Add m4/utimbuf.m4, since
19699         m4/utimens.m4 requires gl_CHECK_TYPE_STRUCT_UTIMBUF.
19700         Reported by Sergey Poznyakoff.
19701
19702 2005-09-08  Paul Eggert  <eggert@cs.ucla.edu>
19703
19704         * lib/glob.c (glob, globfree, __glob_pattern_p): Use old-style function
19705         definitions, since that's the preferred style in glibc.
19706         Fix a minor spacing issue, and update copyright notice to match
19707         glibc's.
19708
19709 2005-09-08  Paul Eggert  <eggert@cs.ucla.edu>
19710
19711         * config/srclist.txt: Remove glibc bug 1061; it's been fixed.
19712
19713 2005-09-06  Simon Josefsson  <jas@extundo.com>
19714
19715         * lib/getpass.c (getpass): Fix typo, test for HAVE_TCSETATTR and not
19716         TCSETATTR.  Reported by Derek Price <derek@ximbiot.com>.
19717
19718 2005-09-06  Paul Eggert  <eggert@cs.ucla.edu>
19719
19720         * lib/regex_internal.h (bitset_not): Add parens to avoid gcc -Wall
19721         warning.
19722
19723 2005-09-06  Paul Eggert  <eggert@cs.ucla.edu>
19724
19725         * config/srclist.txt: Add glibc bug 1302.
19726
19727 2005-09-05  Paul Eggert  <eggert@cs.ucla.edu>
19728
19729         Change bitset word type from unsigned int to unsigned long int,
19730         as this has better performance on typical 64-bit hosts.
19731         Port bitset code to hosts with unusual word sizes.
19732         * lib/regcomp.c (build_equiv_class, build_charclass, build_range_exp):
19733         (build_collating_symbol):
19734         Prefer bitset to re_bitset_ptr_t in prototypes, when the actual
19735         argument is a bitset.  This is merely a style issue, but it makes
19736         it clearer that an entire array is expected.
19737         (re_compile_fastmap_iter, init_dfa, init_word_char, optimize_subexps):
19738         * lib/regcomp.c (lower_subexp, parse_bracket_exp, built_charclass_op):
19739         Port to the case where bitset_word is not the same as unsigned int.
19740         * lib/regex_internal.h (bitset_set, bitset_clear, bitset_contain):
19741         (bitset_not, bitset_merge, bitset_set_all, bitset_mask):
19742         Likewise.
19743         * lib/regexec.c (check_dst_limits_calc_pos_1,
19744         check_subexp_matching_top):
19745         (build_trtable, group_nodes_into_DFAstates):
19746         Likewise.
19747         * lib/regcomp.c (re_compile_fastmap_iter, utf8_sb_map, optimize_utf8):
19748         Don't assume that SBC_MAX is a multiple of BITSET_WORD_BITS.
19749         * lib/regex_internal.h (bitset_set_all, bitset_not): Likewise.
19750         * lib/regexec.c (group_nodes_into_DFAstates): Likewise.
19751         * lib/regcomp.c (utf8_sb_map): Don't assume UINT_MAX == 0xffffffff.
19752         * lib/regcomp.c (optimize_subexps, lower_subexp):
19753         Work even if bitset_word has holes in its bitwise representation.
19754         * lib/regex_internal.h (BITSET_WORD_BITS): Likewise.
19755         * lib/regexec.c (check_dst_limits_calc_pos_1,
19756         check_subexp_matching_top):
19757         Likewise.
19758         * lib/regex_internal.c (re_string_reconstruct):
19759         Don't assume UCHAR_MAX == 255.
19760         * lib/regex_internal.h (bitset_set_all): Likewise.
19761         * lib/regex_internal.h (BITSET_WORD_BITS): Renamed from UINT_BITS.
19762         All uses changed.
19763         (BITSET_WORDS): Renamed from BITSET_UINTS.  All uses changed.
19764         (bitset_word): New type, replacing 'unsigned int' for bitset uses.
19765         All uses changed.
19766         (BITSET_WORD_MAX): New macro.
19767         (bitset_set, bitset_clear, bitset_contain, bitset_empty):
19768         (bitset_set_all, bitset_copy):  Now inline functions, not macros.
19769         (bitset_empty, bitset_copy):
19770         Prefer sizeof (bitset) to multiplying it out ourselves.
19771         (bitset_not_merge): Remove; unused.
19772         (bitset_contain): Return bool, not unsigned int with one bit on.
19773         All callers changed.
19774         * lib/regexec.c (build_trtable): Don't assume bitset has no stricter
19775         alignment than re_node_set; do this by defining a new internal
19776         type struct dests_alloc and using it to allocate memory.
19777
19778 2005-09-05  Bruno Haible  <bruno@clisp.org>
19779
19780         * gnulib-tool (func_import): Fix comparison in handling of symbolic
19781         links.
19782
19783 2005-09-04  Martin Lambers  <marlam@marlam.de>  (tiny change)
19784
19785         * modules/size_max (Makefile.am): Add size_max.h
19786
19787 2005-09-04  Derek Price  <derek@ximbiot.com>
19788
19789         * gnulib-tool (func_import): Fix reversed $symbolic logic.
19790
19791 2005-09-03  Simon Josefsson  <jas@extundo.com>
19792
19793         * gnulib-tool: Fix typo.
19794
19795 2005-09-03  Simon Josefsson  <jas@extundo.com>
19796
19797         * config/srclist.txt: Add glibc bug 1293.
19798
19799 2005-09-03  Derek Price  <derek@ximbiot.com>
19800
19801         * m4/getlogin_r (gl_GETLOGIN_R): Fix cut & paste error.
19802         From Larry Jones <lawrence.jones@ugs.com>.
19803
19804 2005-09-02  Simon Josefsson  <jas@extundo.com>
19805
19806         * modules/socklen: New file.
19807
19808 2005-09-02  Simon Josefsson  <jas@extundo.com>
19809
19810         * modules/havelib: New module.
19811
19812         * modules/gettext, modules/iconv, modules/lock, modules/readline:
19813         Use havelib.
19814
19815 2005-09-02  Paul Eggert  <eggert@cs.ucla.edu>
19816
19817         Check for arithmetic overflow when calculating sizes, to prevent
19818         some buffer-overflow issues.  These patches are conservative, in the
19819         sense that when I couldn't determine whether an overflow was possible,
19820         I inserted a run-time check.
19821         * lib/regex_internal.h (re_xmalloc, re_xrealloc, re_x2realloc): New
19822         macros.
19823         (SIZE_MAX) [!defined SIZE_MAX]: New macro.
19824         (re_alloc_oversized, re_x2alloc_oversized, re_xnmalloc):
19825         (re_xnrealloc, re_x2nrealloc): New inline functions.
19826         * lib/regcomp.c (init_dfa, analyze, build_range_exp,
19827         parse_bracket_exp):
19828         (build_equiv_class, build_charclass): Check for arithmetic overflow
19829         in size expression calculations.
19830         * lib/regex_internal.c (re_string_realloc_buffers):
19831         (build_wcs_upper_buffer, re_node_set_add_intersect):
19832         (re_node_set_init_union, re_node_set_insert, re_node_set_insert_last):
19833         (re_dfa_add_node, register_state): Likewise.
19834         * lib/regexec.c (re_search_stub, re_copy_regs, re_search_internal):
19835         (prune_impossible_nodes, push_fail_stack, set_regs, check_arrival):
19836         (build_trtable, extend_buffers, match_ctx_init, match_ctx_add_entry):
19837         (match_ctx_add_subtop, match_ctx_add_sublast): Likewise.
19838
19839 2005-09-02  Paul Eggert  <eggert@cs.ucla.edu>
19840
19841         * modules/inttostr (Files): Add m4/inttypes_h.m4, m4/stdint_h.m4,
19842         m4/ulonglong.m4.  Problem reported by Martin Lambers.
19843
19844 2005-09-02  Bruno Haible  <bruno@clisp.org>
19845
19846         Support for lib vs. lib64 distinction on biarch platforms.
19847         * m4/lib-prefix.m4 (AC_LIB_PREPARE_MULTILIB): New macro.
19848         (AC_LIB_PREFIX): Require it. Use $acl_libdirstem instead of 'lib'.
19849         * m4/lib-link.m4 (AC_LIB_LINKFLAGS_BODY): Likewise.
19850
19851 2005-09-02  Bruno Haible  <bruno@clisp.org>
19852
19853         * gnulib-tool (import): In the other first-use case, provide defaults
19854         as well.
19855
19856 2005-09-02  Bruno Haible  <bruno@clisp.org>
19857
19858         * config/srclist.txt: lib-link.m4 and lib-prefix.m4 currently have
19859         patches not yet found in the latest gettext release.
19860
19861 2005-09-01  Paul Eggert  <eggert@cs.ucla.edu>
19862
19863         * lib/glob.c (GET_LOGIN_NAME_MAX): Renamed from LOGIN_NAME_MAX,
19864         to avoid a collision with bits/local_lim.h in glibc.
19865         All uses changed.  Problem reported by Dmitry V. Levin in
19866         <http://sources.redhat.com/bugzilla/show_bug.cgi?id=1060>.
19867
19868         * lib/regex_internal.c (build_wcs_upper_buffer): Fix portability
19869         bugs in int versus size_t comparisons.
19870         (re_string_context_at): Fix bug where the code assumed that
19871         Idx is signed.
19872
19873         Use bool where appropriate.
19874         * lib/regcomp.c (re_set_fastmap): ICASE arg is bool, not int.
19875         All callers changed.
19876         (calc_eclosure_iter): Likewise, for ROOT arg.
19877         (parse_bracket_element): Likewise, for ACCEPT_HYPHEN arg.
19878         (build_charclass_op): Likewise, for NON_MATCH arg.
19879         * lib/regex_internal.c (re_string_allocate, re_string_construct):
19880         (re_string_construct_common): Likewise, for ICASE arg.
19881         * lib/regexec.c (re_search_2_stub, re_search_stub):
19882         Likewise, for RET_LEN arg.
19883         (check_matching): Likewise, for FL_LONGEST_MATCH arg.
19884         (set_regs): Likewise, for FL_BACKTRACK arg.
19885         * lib/regcomp.c (re_compile_fastmap_iter, optimize_utf8):
19886         (duplicate_node_closure, calc_inveclosure, calc_eclosure):
19887         (calc_eclosure_iter, parse_bracket_exp):
19888         Use bool for internal variables that are booleans.
19889         * lib/regexec.c (re_search_internal, check_matching,
19890         proceed_next_node):
19891         (set_regs, build_sifted_states, sift_states_bkref):
19892         (check_arrival_add_next_nodes, check_arrival_expand_ecl_sub):
19893         (expand_bkref_cache, build_trtable, group_nodes_into_DFAstates):
19894         (find_collation_sequence_value):
19895         Likewise.
19896         * lib/regex_internal.c (re_node_set_insert, re_node_set_insert_last):
19897         (re_node_set_compare):
19898         Return bool, not int. All callers changed.
19899         * lib/regexec.c (check_halt_node_context, check_dst_limits):
19900         (build_trtable, check_node_accept): Likewise.
19901         * lib/regex_internal.h: Include stdbool.h.
19902
19903         Fix bugs uncovered when converting to bool.
19904         * lib/regcomp.c (calc_eclosure_iter): Check for storage allocation
19905         failure instead of charging ahead blindly.
19906         * lib/regex_internal.c (register_state): Likewise.
19907         * lib/regexec.c (re_search_2_stub): Use simpler method than boolean
19908         for freeing internal storage.
19909         (group_nodes_into_DFA_states): Use unsigned int, not int, for
19910         bitset pieces used as boolean, to avoid undefined behavior
19911         on hosts that do int overflow checking.
19912
19913 2005-09-01  Paul Eggert  <eggert@cs.ucla.edu>
19914
19915         * config/srclist.txt: Add glibc bugs 1285-1287.
19916
19917 2005-09-01  Jim Meyering  <jim@meyering.net>
19918
19919         * m4/lchown.m4: Require gl_FUNC_CHOWN, for the definition of
19920         CHOWN_MODIFIES_SYMLINK, which is used by lchown.c.
19921         Require gl_STAT_MACROS, too.
19922
19923 2005-09-01  Bruno Haible  <bruno@clisp.org>
19924
19925         * gnulib-tool (import): In the first-use case, provide defaults.
19926
19927 2005-09-01  Bruno Haible  <bruno@clisp.org>
19928
19929         * gnulib-tool (func_import): Remove the .tmp files.
19930
19931 2005-09-01  Bruno Haible  <bruno@clisp.org>
19932
19933         * gnulib-tool (func_import): Fix handling of symbolic links.
19934
19935 2005-08-31  Paul Eggert  <eggert@cs.ucla.edu>
19936
19937         On 64-bit hosts (where size_t is 64 bits and int is 32 bits), the
19938         old glibc regex code mishandles strings longer than 2**31 bytes.
19939         This patch fixes this when the regex code is used in gnulib
19940         (i.e., outside glibc).
19941
19942         This patch should not affect the use of the regex code inside
19943         glibc.  No doubt this problem also needs to be handled for glibc
19944         as well, but the result will be an incompatible change to the
19945         glibc ABI, and the old ABI will have to be supported too.  That
19946         can be the the subject for another patch.
19947
19948         * lib/regex.h (_REGEX_LARGE_OFFSETS): New feature-test macro,
19949         governing whether the rest of this patch is active.  By default,
19950         the macro is disabled and the patch has no effect.
19951         (regoff_t) [defined _REGEX_LARGE_OFFSETS]: Define to off_t, not int.
19952         (__re_idx_t, __re_size_t, __re_long_size_t): New types.
19953         (struct re_pattern_buffer, re_search, re_search_2, re_match):
19954         (re_match_2, re_set_registers): Use the new types.
19955         * lib/regex_internal.h (Idx, re_hashval_t): New types.
19956         (REG_MISSING, REG_ERROR, REG_VALID_INDEX, REG_VALID_NONZERO_INDEX):
19957         New macros.
19958         (re_node_set, re_charset_t, re_token_t, re_string_realloc_buffers):
19959         (re_string_context_at, bin_tree_t, re_dfastate_t):
19960         (struct re_state_table_entry, state_array_t, re_sub_match_last_t):
19961         (re_sub_match_top_t, re_match_context_t, re_sift_context_t):
19962         (struct re_fail_stack_ent_t, struct re_fail_stack_t, struct re_dfa_t):
19963         (re_string_char_size_at, re_string_wchar_at):
19964         (re_string_elem_size_at):
19965         Use the new types and macros to port to 64-bit hosts.
19966         Use unsigned types for internal values, so that the code
19967         mostly works even for arrays larger than SSIZE_MAX.
19968         * lib/regcomp.c (re_compile_internal, init_dfa, duplicate_node):
19969         (search_duplicated_node, calc_eclosure_iter, fetch_number):
19970         (parse_reg_exp, parse_branch, parse_expression, parse_sub_exp):
19971         (build_equiv_class, build_charclass, re_compile_fastmap_iter):
19972         (free_dfa_content, create_initial_state, optimize_utf8, analyze):
19973         (optimize_subexps, calc_first, link_nfa_nodes, duplicate_node_closure):
19974         (calc_inveclosure, parse_dup_op, build_range_exp):
19975         (build_collating_symbol, parse_bracket_exp, build_charclass_op):
19976         (fetch_number, create_token_tree, mark_opt_subexp):
19977         Likewise.
19978         * lib/regex_internal.c (re_string_construct_common,
19979         create_ci_newstate):
19980         (create_cd_newstate, re_string_allocate, re_string_construct):
19981         (re_string_realloc_buffers, build_wcs_upper_buffer):
19982         (re_string_skip_chars, build_upper_buffer, re_string_translate_buffer):
19983         (re_string_reconstruct, re_string_peek_byte_case):
19984         (re_string_fetch_byte_case, re_string_context_at):
19985         (re_node_set_alloc, re_node_set_init_1, re_node_set_init_2):
19986         (re_node_set_init_copy, re_node_set_add_intersect):
19987         (re_node_set_init_union, re_node_set_merge, re_node_set_insert):
19988         (re_node_set_insert_last, re_node_set_compare, re_node_set_contains):
19989         (re_node_set_remove_at, re_dfa_add_node, calc_state_hash):
19990         (re_acquire_state, re_acquire_state_context, register_state):
19991         Likewise.
19992         * lib/regex.c (match_ctx_init, match_ctx_add_entry,
19993         search_cur_bkref_entry):
19994         (match_ctx_add_subtop, match_ctx_add_sublast, sift_ctx_init):
19995         (re_search_internal, re_search_2_stub, re_search_stub)
19996         (re_copy_regs, check_matching, check_halt_state_context, update_regs):
19997         (push_fail_stack, sift_states_iter_mb, build_sifted_states):
19998         (update_cur_sifted_state, check_dst_limits):
19999         (check_dst_limits_calc_pos_1, check_dst_limits_calc_pos):
20000         (check_subexp_limits, sift_states_bkref, merge_state_array):
20001         (check_subexp_matching_top, get_subexp, get_subexp_sub):
20002         (find_subexp_node, check_arrival, check_arrival_add_next_nodes):
20003         (check_arrival_expand_ecl, check_arrival_expand_ecl_sub):
20004         (expand_bkref_cache, check_node_accept_bytes):
20005         (group_nodes_into_DFAstates, check_node_accept, regexec, re_match):
20006         (re_search, re_match_2, re_search_2, prune_impossible_nodes):
20007         (acquire_init_state_context, check_halt_node_context):
20008         (proceed_next_node, pop_fail_stack, set_regs, free_fail_stack_return):
20009         (sift_states_backward, clean_state_log_if_needed):
20010         (sub_epsilon_src_nodes, add_epsilone_src_nodes, merge_state_with_log):
20011         (find_recover_state, transit_state_sb, transit_state_mb):
20012         (transit_state_bkref, build_trtable, match_ctx_clean):
20013         Likewise.
20014         * lib/regcomp.c (parse_dup_op): Add an extra test if Idx is unsigned,
20015         to work around an assumption that REG_MISSING is negative.
20016
20017         * lib/regcomp.c (re_comp) [defined _REGEX_RE_COMP || defined _LIBC]:
20018         (seek_collating_symbol_entry) [defined _LIBC]:
20019         (lookup_collation_sequence_value) [defined _LIBC]:
20020         (build_range_exp, build_collating_symbol) [defined _LIBC]:
20021         Use prototypes rather than old-style function definitions.
20022         * lib/regexec.c (re_exec) [defined _REGEX_RE_COMP || defined _LIBC]:
20023         (transit_state_sb) [0]:
20024         (find_collation_sequence_value) [defined _LIBC]: Likewise.
20025
20026         * lib/regexec.c (re_search_internal): Simplify update of rm_so and
20027         rm_eo.
20028
20029         * lib/regcomp.c (re_compile_fastmap_iter, init_dfa, init_word_char):
20030         (optimize_subexps, lower_subexp):
20031         Don't assume 1<<31 has defined behavior on hosts with 32-bit int,
20032         since the signed shift might overflow.  Use 1u<<31 instead.
20033         * lib/regex_internal.h (bitset_set, bitset_clear, bitset_contain):
20034         Likewise.
20035         * lib/regexec.c (check_dst_limits_calc_pos_1,
20036         check_subexp_matching_top): Likewise.
20037
20038         * lib/regcomp.c (optimize_subexps, lower_subexp):
20039         Use CHAR_BIT rather than 8, for clarity.
20040         * lib/regexec.c (check_dst_limits_calc_pos_1):
20041         (check_subexp_matching_top): Likewise.
20042         * lib/regcomp.c (init_dfa): Make table_size unsigned, so that we don't
20043         have to worry about portability issues when shifting it left.
20044         Remove no-longer-needed test for table_size > 0.
20045         * lib/regcomp.c (parse_sub_exp): Do not shift more bits than there are
20046         in a word, as the resulting behavior is undefined.
20047         * lib/regexec.c (check_dst_limits_calc_pos_1): Likewise;
20048         in one case, a <= should have been an <, and in another case the
20049         whole test was missing.
20050         * lib/regex_internal.h (BYTE_BITS): Remove.  All uses changed to
20051         the standard name CHAR_BIT.
20052         * lib/regexec.c (match_ctx_add_entry): Don't assume that ~0 == -1;
20053         this is not true on one's complement and signed-magnitude hosts.
20054
20055         * lib/regex_internal.h (re_sub_match_top_t): Remove unused member
20056         next_last_offset.
20057         (struct re_dfa_t): Remove unused member states_alloc.
20058         * lib/regcomp.c (init_dfa): Don't initialize unused members.
20059
20060 2005-08-31  Paul Eggert  <eggert@cs.ucla.edu>
20061
20062         * m4/regex.m4 (gl_REGEX): Require AC_SYS_LARGEFILE, Define
20063         _REGEX_LARGE_OFFSETS).  Test for regoff_t/off_t bug in 64-bit
20064         and large-file glibc and in 32-bit large-file Solaris.
20065
20066 2005-08-31  Paul Eggert  <eggert@cs.ucla.edu>
20067
20068         * lib/regex_internal.c (re_string_reconstruct): Don't assume buffer
20069         lengths fit in regoff_t; this isn't true if regoff_t is the same
20070         width as size_t.
20071         * lib/regex.c (re_search_internal): 5th arg is LAST_START
20072         (= START + RANGE) instead of RANGE.  This avoids overflow
20073         problems when regoff_t is the same width as size_t.
20074         All callers changed.
20075         (re_search_2_stub): Check for overflow when adding the
20076         sizes of the two strings.
20077         (re_search_stub): Check for overflow when adding START
20078         to RANGE; if it occurs, substitute the extreme value.
20079
20080 2005-08-31  Paul Eggert  <eggert@cs.ucla.edu>
20081
20082         * config/srclist.txt: Add glibc bugs 1273, 1278-1282, 1284.
20083
20084 2005-08-31  Jim Meyering  <jim@meyering.net>
20085
20086         * lib/regcomp.c (search_duplicated_node): Make first pointer arg
20087         a pointer-to-const.
20088         * lib/regex_internal.c (create_ci_newstate, create_cd_newstate):
20089         (register_state): Likewise.
20090         * lib/regexec.c (search_cur_bkref_entry, check_dst_limits):
20091         (check_dst_limits_calc_pos_1, check_dst_limits_calc_pos):
20092         (group_nodes_into_DFAstates): Likewise.
20093
20094 2005-08-31  Jim Meyering  <jim@meyering.net>
20095
20096         * check-module: Add a FIXME comment.
20097
20098 2005-08-31  Eric Blake  <ebb9@byu.net>
20099
20100         * modules/unistd-safer (Files): Add unistd--.h.
20101         * modules/stdio-safer (Files): Add stdio--.h.
20102
20103 2005-08-31  Derek Price  <derek@ximbiot.com>
20104
20105         * lib/getdelim.c (getdelim): Return EOF on EOF.
20106         Reported by Larry Jones <lawrence.jones@ugs.com>.
20107
20108 2005-08-31  Bruno Haible  <bruno@clisp.org>
20109
20110         Avoid unnecessary diffs in the generated lib/Makefile.am.
20111         * gnulib-tool (func_emit_lib_Makefile_am): Don't write the cmd into
20112         the generated files.
20113         (func_import): Don't set cmd.
20114
20115 2005-08-31  Bruno Haible  <bruno@clisp.org>
20116
20117         * lib/strstr.c: Include <stddef.h>, for NULL.
20118         * lib/strcasestr.c: Likewise.
20119         Reported by Yoann Vandoorselaere <yoann.v@prelude-ids.com>.
20120
20121 2005-08-31  Bruno Haible  <bruno@clisp.org>
20122
20123         * gnulib-tool: New option --macro-prefix.
20124         (func_import): Use macro_prefix.
20125         (import): Handle option --macro-prefix.
20126
20127 2005-08-31  Bruno Haible  <bruno@clisp.org>
20128
20129         * gnulib-tool (import): Rename most ac_* variables to cached_*.
20130         Also use new variables cached_lgpl, cached_libtool.
20131
20132 2005-08-31  Bruno Haible  <bruno@clisp.org>
20133
20134         * gnulib-tool (func_import): Require AC_GNU_SOURCE etc. instead of
20135         always instantiating them.
20136
20137 2005-08-31  Bruno Haible  <bruno@clisp.org>
20138
20139         * gnulib-tool (func_import): Read the previous cached settings
20140         from gnulib-cache.m4 and gnulib-comp.m4. Remove files that were
20141         earlier added by gnulib but are now dropped. Warn when a gnulib file
20142         overwrites a non-gnulib file.
20143
20144 2005-08-31  Bruno Haible  <bruno@clisp.org>
20145
20146         * gnulib-tool (func_import): Generate two files gnulib-cache.m4 and
20147         gnulib-comp.m4 instead of a single gnulib.m4, to make it easy for
20148         projects that don't keep autogenerated files in CVS. Put into
20149         actioncmd only the specified modules, not the transitive closure.
20150
20151 2005-08-31  Bruno Haible  <bruno@clisp.org>
20152
20153         * gnulib-tool (func_import): Fix defaulting of $libname and $libtool.
20154         Create directories that shall be filled.
20155         (import): Don't look for gl_* macros in configure.ac. Recurse across
20156         all directories containing a gnulib-cache.m4 files, if meaningful.
20157
20158 2005-08-31  Bruno Haible  <bruno@clisp.org>
20159
20160         * gnulib-tool (func_import): Emit also a stub for gl_LIBTOOL.
20161         (import): Set seen_libtool when we see gl_LIBTOOL.
20162
20163 2005-08-31  Bruno Haible  <bruno@clisp.org>
20164
20165         * gnulib-tool (func_import): Also copy m4/gnulib-tool.m4. Omit
20166         declaration macro definitions from generated gnulib.m4.
20167
20168 2005-08-30  Oskar Liljeblad  <oskar@osk.mine.nu>
20169
20170         * lib/iconvme.h: Add prototype for iconv_alloc.
20171
20172 2005-08-29  Simon Josefsson  <jas@extundo.com>
20173
20174         * lib/iconvme.c: Fix errno.
20175
20176 2005-08-29  Bruno Haible  <bruno@clisp.org>
20177
20178         * gnulib-tool: Enclose all occurrences of $destdir in "...", so
20179         that it works when the directory contains spaces.
20180
20181 2005-08-29  Bruno Haible  <bruno@clisp.org>
20182
20183         * gnulib-tool (import): Avoid unnecessary spaces in $avoidlist.
20184
20185 2005-08-29  Bruno Haible  <bruno@clisp.org>
20186
20187         * gnulib-tool (func_import): Emit more comments into gnulib.m4.
20188         Emit more advice.
20189
20190 2005-08-29  Bruno Haible  <bruno@clisp.org>
20191         and Stepan Kasal  <kasal@ucw.cz>
20192
20193         * check-module: If more parameters are given, check each of them
20194         separately; add more exceptions, as noted by Jim Meyering.
20195         (check_module): New procedure.
20196         (%exempt_header): Now contains all exceptions.
20197
20198 2005-08-29  Ben Pfaff  <blp@cs.stanford.edu>
20199
20200         * modules/byteswap (Makefile.am): Fix rule to not assume GNU make.
20201
20202 2005-08-29  Oskar Liljeblad  <oskar@osk.mine.nu>
20203
20204         * lib/iconvme.c: Split iconv_string into iconv_alloc.
20205
20206 2005-08-28  Bruno Haible  <bruno@clisp.org>
20207
20208         * m4/gnulib-tool.m4: New file.
20209
20210 2005-08-27  Jim Meyering  <jim@meyering.net>
20211
20212         * modules/unistd-safer (Files): Add pipe-safer.c.
20213         * modules/fcntl-safer (Files): Add creat-safer.c.
20214
20215 2005-08-27  Jim Meyering  <jim@meyering.net>
20216
20217         * m4/stdlib-safer.m4: New file.  From coreutils.
20218         * m4/stdio-safer.m4 (gl_STDIO_SAFER): Add stdio--.h.
20219         * m4/fcntl-safer.m4 (gl_FCNTL_SAFER): Add creat-safer.c to the
20220         AC_LIBSOURCES list and arrange to compile it via AC_LIBOBJ.
20221         * m4/unistd-safer.m4 (gl_UNISTD_SAFER): Likewise, add pipe-safer.c.
20222         Add pipe-safer.c and unistd--.h to the AC_LIBSOURCES list.
20223
20224 2005-08-27  Jim Meyering  <jim@meyering.net>
20225
20226         * lib/fopen-safer.c: Merge minor changes from coreutils.
20227         * lib/dup-safer.c: Likewise.
20228         * lib/fd-safer.c: Likewise.
20229
20230         Merge from coreutils.
20231         * lib/stdio--.h: New file.
20232         * lib/stdlib--.h: New file.
20233         * lib/mkstemp-safer.c: New file.
20234
20235         GNU tar needs these.
20236         * lib/pipe-safer.c: New file.
20237         * lib/creat-safer.c: New file.
20238         * lib/fcntl--.h (creat): Define to creat_safer.
20239         * lib/fcntl-safer.h: Include <sys/types.h> and declare creat_safer.
20240         * lib/unistd--.h (pipe): Define to pipe_safer.
20241         * lib/unistd-safer.h: Declare pipe_safer.
20242
20243 2005-08-26  Simon Josefsson  <jas@extundo.com>
20244
20245         * lib/getpass.c: Use _WIN32 instead of WIN32, suggested by Bruno
20246         Haible <bruno@clisp.org>.
20247
20248 2005-08-26  Paul Eggert  <eggert@cs.ucla.edu>
20249
20250         * lib/regex_internal.h: Remove all references to
20251         RE_NO_INTERNAL_PROTOTYPES; no longer neeeded now that we assume C89
20252         or better.
20253         (bitset_not, bitset_merge, bitset_not_merge):
20254         (bitset_mask, re_string_allocate, re_string_construct):
20255         (re_string_reconstruct, re_string_destruct, re_string_elem_size_at):
20256         (re_string_char_size_at, re_string_wchar_at, re_string_peek_byte_case):
20257         (re_string_fetch_byte_case, re_node_set_alloc, re_node_set_init_1):
20258         (re_node_set_init_2, re_node_set_init_copy, re_node_set_add_intersect):
20259         (re_node_set_init_union, re_node_set_merge, re_node_set_insert):
20260         (re_node_set_insert_last, re_node_set_compare, re_node_set_contains):
20261         (re_node_set_remove_at, re_dfa_add_node, re_acquire_state):
20262         (re_acquire_state_context):
20263         Remove unnecessary forward decls.
20264         (re_string_char_size_at, re_string_wchar_at, re_string_elem_size_at):
20265         Put __attribute at function definition,
20266         now that the function decl has been removed.
20267         * lib/regex_internal.c (re_string_peek_byte_case):
20268         (re_string_fetch_byte_case, re_node_set_compare, re_node_set_contains):
20269         Likewise.
20270
20271 2005-08-25  Stepan Kasal  <kasal@ucw.cz>
20272
20273         * m4/regex.m4: Add AC_PREREQ(2.50).
20274         (gl_REGEX): If --with-included-regex was given, skip the autodetection.
20275
20276 2005-08-25  Simon Josefsson  <jas@extundo.com>
20277
20278         * m4/getpass.m4: Check for termios.h, tcgetattr, tcsetattr, and
20279         __fsetlocking.
20280
20281 2005-08-25  Simon Josefsson  <jas@extundo.com>
20282
20283         * lib/getpass.c: Add WIN32 implementation.  Conditionalize use of
20284         termios.h, tcgetattr, tcsetattr and __fsetlocking.  Remove some
20285         GLIBC specific code.
20286
20287 2005-08-25  Paul Eggert  <eggert@cs.ucla.edu>
20288
20289         Make regex safe for g++.  This fixes one real bug (an "err"
20290         that should have been "*err").  g++ problem reported by
20291         Sam Steingold.
20292         * lib/regex_internal.h (re_calloc): New macro, consistent with
20293         re_malloc etc.  All callers of calloc changed to use re_calloc.
20294         * lib/regex_internal.c (build_wcs_upper_buffer): Return reg_errcode_t,
20295         not int.  All callers changed.
20296         * lib/regcomp.c (re_compile_fastmap_iter): Don't use
20297         alloca (mb_cur_max); just use an array of size MB_LEN_MAX.
20298         * lib/regexec.c (push_fail_stack): Use re_realloc, not realloc.
20299         (find_recover_state): Change "err" to "*err"; this fixes what
20300         appears to be a real bug.
20301         (check_arrival_expand_ecl_sub): Be consistent about reg_errcode_t
20302         versus int.
20303
20304 2005-08-25  Paul Eggert  <eggert@cs.ucla.edu>
20305
20306         * modules/regex (Depends-on): Add malloc, since the code
20307         assumes that !malloc(0) means failure.
20308
20309 2005-08-25  Paul Eggert  <eggert@cs.ucla.edu>
20310
20311         * lib/regexec.c (set_regs): Don't alloca with an unbounded size.
20312
20313         alloca modernization/simplification for regex.
20314         * lib/regex.c: Remove portability cruft for alloca.  This no longer
20315         needs to be at the start of the file, and can be moved into
20316         regex_internal.h and simplified.
20317         * lib/regex_internal.h: Include <alloca.h>.
20318         (__libc_use_alloca) [!defined _LIBC]: New macro.
20319         * lib/regexec.c (build_trtable): Remove "#ifdef _LIBC", since the code
20320         now works outside glibc.
20321
20322 2005-08-25  Paul Eggert  <eggert@cs.ucla.edu>
20323
20324         * config/srclist.txt: Add glibc bugs 1241, 1245.
20325
20326 2005-08-25  Jim Meyering  <jim@meyering.net>
20327
20328         * lib/open-safer.c: Include <config.h>.
20329         Otherwise, we'd lose LARGEFILE support in any file using
20330         e.g. "fcntl--.h"
20331
20332 2005-08-25  Bruno Haible  <bruno@clisp.org>
20333
20334         * m4/minmax.m4: Require autoconf 2.52.
20335         (gl_MINMAX_IN_HEADER): Add comments. Use m4_pushdef/m4_popdef instead
20336         of define/undefine. Use AS_TR_SH and AS_TR_CPP as more robust
20337         alternatives of translit over the alphabet.
20338         Based on a patch from Stepan Kasal <kasal@ucw.cz>.
20339
20340 2005-08-24  Simon Josefsson  <jas@extundo.com>
20341
20342         * tests/test-getpass.c: New file.
20343
20344 2005-08-24  Paul Eggert  <eggert@cs.ucla.edu>
20345
20346         * m4/regex.m4 (gl_REGEX): Use POSIX-compliant spellings when testing
20347         for GNU regex features.
20348
20349 2005-08-24  Paul Eggert  <eggert@cs.ucla.edu>
20350
20351         * lib/regcomp.c (regerror): 2nd arg is 'restrict', as per POSIX.
20352         * lib/regex.h (regerror): Likewise.
20353
20354         * lib/regex.c: Do not include <sys/types.h>, as POSIX no longer
20355         requires this.  (The code never needed it.)
20356
20357         * lib/regcomp.c, regex_internal.c, regex_internal.h, regexec.c:
20358         All uses of recently-renamed identifiers changed to use the new,
20359         POSIX-compliant names.  The code will build and run just fine
20360         without these changes, but it's better to eat our own dog food
20361         and use the standard-conforming names.
20362
20363         * lib/regex.h: Fix a multitude of POSIX name space violations.
20364         These changes have an effect only for programs that define
20365         _POSIX_C_SOURCE, _POSIX_SOURCE, or _XOPEN_SOURCE; they
20366         do not change anything for programs compiled in the normal way.
20367         Also, there is no effect on the ABI.
20368
20369         (_REGEX_SOURCE): New macro.
20370         Do not include <stddef.h> if _XOPEN_SOURCE and VMS are both
20371         defined and _GNU_SOURCE is not; this fixes a name space violation.
20372
20373         Rename the following macros to obey POSIX requirements.
20374         The old names are still visible as macros if _REGEX_SOURCE is defined.
20375         (REG_BACKSLASH_ESCAPE_IN_LISTS): renamed from
20376         RE_BACKSLASH_ESCAPE_IN_LISTS.
20377         (REG_BK_PLUS_QM): renamed from RE_BK_PLUS_QM.
20378         (REG_CHAR_CLASSES): renamed from RE_CHAR_CLASSES.
20379         (REG_CONTEXT_INDEP_ANCHORS): renamed from RE_CONTEXT_INDEP_ANCHORS.
20380         (REG_CONTEXT_INDEP_OPS): renamed from RE_CONTEXT_INDEP_OPS.
20381         (REG_CONTEXT_INVALID_OPS): renamed from RE_CONTEXT_INVALID_OPS.
20382         (REG_DOT_NEWLINE): renamed from RE_DOT_NEWLINE.
20383         (REG_DOT_NOT_NULL): renamed from RE_DOT_NOT_NULL.
20384         (REG_HAT_LISTS_NOT_NEWLINE): renamed from RE_HAT_LISTS_NOT_NEWLINE.
20385         (REG_INTERVALS): renamed from RE_INTERVALS.
20386         (REG_LIMITED_OPS): renamed from RE_LIMITED_OPS.
20387         (REG_NEWLINE_ALT): renamed from RE_NEWLINE_ALT.
20388         (REG_NO_BK_BRACES): renamed from RE_NO_BK_BRACES.
20389         (REG_NO_BK_PARENS): renamed from RE_NO_BK_PARENS.
20390         (REG_NO_BK_REFS): renamed from RE_NO_BK_REFS.
20391         (REG_NO_BK_VBAR): renamed from RE_NO_BK_VBAR.
20392         (REG_NO_EMPTY_RANGES): renamed from RE_NO_EMPTY_RANGES.
20393         (REG_UNMATCHED_RIGHT_PAREN_ORD): renamed from
20394         RE_UNMATCHED_RIGHT_PAREN_ORD.
20395         (REG_NO_POSIX_BACKTRACKING): renamed from RE_NO_POSIX_BACKTRACKING.
20396         (REG_NO_GNU_OPS): renamed from RE_NO_GNU_OPS.
20397         (REG_DEBUG): renamed from RE_DEBUG.
20398         (REG_INVALID_INTERVAL_ORD): renamed from RE_INVALID_INTERVAL_ORD.
20399         (REG_IGNORE_CASE): renamed from RE_ICASE.  This renaming is a bit
20400         unusual, since we can't clash with the POSIX REG_ICASE.
20401         (REG_CARET_ANCHORS_HERE): renamed from RE_CARET_ANCHORS_HERE.
20402         (REG_CONTEXT_INVALID_DUP): renamed from RE_CONTEXT_INVALID_DUP.
20403         (REG_NO_SUB): renamed from RE_NO_SUB.
20404         (REG_SYNTAX_EMACS): renamed from RE_SYNTAX_EMACS.
20405         (REG_SYNTAX_AWK): renamed from RE_SYNTAX_AWK.
20406         (REG_SYNTAX_GNU_AWK): renamed from RE_SYNTAX_GNU_AWK.
20407         (REG_SYNTAX_POSIX_AWK): renamed from RE_SYNTAX_POSIX_AWK.
20408         (REG_SYNTAX_GREP): renamed from RE_SYNTAX_GREP.
20409         (REG_SYNTAX_EGREP): renamed from RE_SYNTAX_EGREP.
20410         (REG_SYNTAX_POSIX_EGREP): renamed from RE_SYNTAX_POSIX_EGREP.
20411         (REG_SYNTAX_ED): renamed from RE_SYNTAX_ED.
20412         (REG_SYNTAX_SED): renamed from RE_SYNTAX_SED.
20413         (_REG_SYNTAX_POSIX_COMMON): renamed from _RE_SYNTAX_POSIX_COMMON.
20414         (REG_SYNTAX_POSIX_BASIC): renamed from RE_SYNTAX_POSIX_BASIC.
20415         (REG_SYNTAX_POSIX_MINIMAL_BASIC): renamed from
20416         RE_SYNTAX_POSIX_MINIMAL_BASIC.
20417         (REG_SYNTAX_POSIX_EXTENDED): renamed from RE_SYNTAX_POSIX_EXTENDED.
20418         (REG_SYNTAX_POSIX_MINIMAL_EXTENDED): renamed from
20419         RE_SYNTAX_POSIX_MINIMAL_EXTENDED.
20420         (REG_DUP_MAX): renamed from RE_DUP_MAX.  No need to undef it.
20421         (REG_UNALLOCATED): Renamed from REGS_UNALLOCATED.
20422         (REG_REALLOCATE): Renamed from REGS_REALLOCATE.
20423         (REG_FIXED): Renamed from REGS_FIXED.
20424         (REG_NREGS): Renamed from RE_NREGS.
20425
20426         (REG_ICASE, REG_NEWLINE, REG_NOSUB): Do not depend on the values
20427         of other REG_* macros, since POSIX says the user is allowed to
20428         #undef these macros selectively.
20429
20430         (reg_errcode_t): Update comment stating what other tables need
20431         to be consistent.
20432
20433         Rename the following enum values to obey POSIX requirements.
20434         The old names are still visible as macros.
20435         (_REG_ENOSYS): Renamed from REG_ENOSYS.  Define even if _XOPEN_SOURCE
20436         is not defined, since GNU is supposed to be a superset of POSIX as
20437         much as possible, and since we want reg_errcode_t to be a signed
20438         type for implementation consistency.
20439         (_REG_NOERROR): Renamed from REG_NOERROR.
20440         (_REG_NOMATCH): Renamed from REG_NOMATCH.
20441         (_REG_BADPAT): Renamed from REG_BADPAT.
20442         (_REG_ECOLLATE): Renamed from REG_ECOLLATE.
20443         (_REG_ECTYPE): Renamed from REG_ECTYPE.
20444         (_REG_EESCAPE): Renamed from REG_EESCAPE.
20445         (_REG_ESUBREG): Renamed from REG_ESUBREG.
20446         (_REG_EBRACK): Renamed from REG_EBRACK.
20447         (_REG_EPAREN): Renamed from REG_EPAREN.
20448         (_REG_EBRACE): Renamed from REG_EBRACE.
20449         (_REG_BADBR): Renamed from REG_BADBR.
20450         (_REG_ERANGE): Renamed from REG_ERANGE.
20451         (_REG_ESPACE): Renamed from REG_ESPACE.
20452         (_REG_BADRPT): Renamed from REG_BADRPT.
20453         (_REG_EEND): Renamed from REG_EEND.
20454         (_REG_ESIZE): Renamed from REG_ESIZE.
20455         (_REG_ERPAREN): Renamed from REG_ERPAREN.
20456         (REG_ENOSYS, REG_NOERROR, REG_NOMATCH, REG_BADPAT, REG_ECOLLATE):
20457         (REG_ECTYPE, REG_EESCAPE, REG_ESUBREG, REG_EBRACK, REG_EPAREN):
20458         (REG_EBRACE, REG_BADBR, REG_ERANGE, REG_ESPACE, REG_BADRPT, REG_EEND):
20459         (REG_ESIZE, REG_ERPAREN): Now macros, not enum constants.
20460
20461         (_REG_RE_NAME, _REG_RM_NAME): New macros.
20462         (REG_TRANSLATE_TYPE): Renamed from RE_TRANSLATE_TYPE.  All uses
20463         changed.  But support the old name if the new one is not defined
20464         and if _REGEX_SOURCE.
20465
20466         Change the following member names in struct re_pattern_buffer.
20467         The old names are still supported if !_REGEX_SOURCE.
20468         The new names are always supported, regardless of _REGEX_SOURCE.
20469         (re_buffer): Renamed from buffer.
20470         (re_allocated): Renamed from allocated.
20471         (re_used): Renamed from used.
20472         (re_syntax): Renamed from syntax.
20473         (re_fastmap): Renamed from fastmap.
20474         (re_translate): Renamed from translate.
20475         (re_can_be_null): Renamed from can_be_null.
20476         (re_regs_allocated): Renamed from regs_allocated.
20477         (re_fastmap_accurate): Renamed from fastmap_accurate.
20478         (re_no_sub): Renamed from no_sub.
20479         (re_not_bol): Renamed from not_bol.
20480         (re_not_eol): Renamed from not_eol.
20481         (re_newline_anchor): Renamed from newline_anchor.
20482
20483         Change the following member names in struct re_registers.
20484         The old names are still supported if !_REGEX_SOURCE.
20485         The new names are always supported, regardless of _REGEX_SOURCE.
20486         (rm_num_regs): Renamed from num_regs.
20487         (rm_start): Renamed from start.
20488         (rm_end): Renamed from end.
20489
20490         (re_set_syntax, re_compile_pattern, re_compile_fastmap):
20491         (re_search, re_search_2, re_match, re_match_2, re_set_registers):
20492         Prepend __ to parameter names.
20493
20494         Undo yesterday's changes.
20495
20496 2005-08-24  Paul Eggert  <eggert@cs.ucla.edu>
20497
20498         * config/srclist.txt: Remove glibc bug 1233 and add 1236, which
20499         supersedes it. Add glibc bugs 1237, 1238, 1240.  Comment out
20500         lib/regex.c.
20501
20502 2005-08-24  Jim Meyering  <jim@meyering.net>
20503
20504         Sync from coreutils.
20505         * m4/fcntl-safer.m4: New file.
20506
20507         * m4/xgetcwd.m4: Use AC_LIBSOURCES and AC_LIBOBJ to indicate source
20508         and object files for this module.
20509
20510 2005-08-24  Jim Meyering  <jim@meyering.net>
20511
20512         Sync from coreutils.
20513         * lib/fcntl--.h, lib/fcntl-safer.h, lib/open-safer.c: New files.
20514
20515 2005-08-24  Jim Meyering  <jim@meyering.net>
20516
20517         * modules/xgetcwd (Makefile.am): Remove `lib_SOURCES += ...' line,
20518         now that xgetcwd.m4 requires xgetcwd.c and xgetcwd.h.
20519
20520 2005-08-24  Jim Meyering  <jim@meyering.net>
20521
20522         * modules/fcntl-safer: New module.
20523         * modules/fts (Depends-on): Add fcntl-safer.
20524         * MODULES.html.sh (File descriptor based Input/Output):
20525         Add fcntl-safer.
20526
20527 2005-08-24  Bruno Haible  <bruno@clisp.org>
20528
20529         Support for unit test modules.
20530         * modules/README: Mention tests modules.
20531         * modules/TEMPLATE-TESTS: New file.
20532         * gnulib-tool: New options --extract-tests-module, --with-tests and
20533         --tests-base (unused for the moment).
20534         (testsbase, inctests): New variables.
20535         (func_all_modules): Exclude TEMPLATE-TESTS and *-tests.
20536         (func_verify_module): Exclude TEMPLATE-TESTS.
20537         (func_verify_nontests_module, func_verify_tests_module): New functions.
20538         (func_get_dependencies): Add implicit dependency for tests modules.
20539         (func_get_tests_module): New function.
20540         (func_modules_transitive_closure): When --with-tests was specified,
20541         include the unit tests as well, unless explicitly avoided.
20542         (func_emit_lib_Makefile_am): Ignore the tests modules here.
20543         (func_emit_tests_Makefile_am): New function.
20544         (func_create_testdir): When --with-tests was specified, emit a
20545         tests/ directory.
20546         * MODULES.html.sh (Future developments): Update.
20547
20548 2005-08-24  Bruno Haible  <bruno@clisp.org>
20549
20550         * modules/tls-tests: New file.
20551         * tests/test-tls.c: New file, from GNU gettext.
20552
20553 2005-08-24  Bruno Haible  <bruno@clisp.org>
20554
20555         * modules/lock-tests: New file.
20556         * tests/test-lock.c: New file, from GNU gettext.
20557
20558 2005-08-24  Bruno Haible  <bruno@clisp.org>
20559
20560         * lib/lock.h: Add multiple inclusion guard.
20561         * lib/tls.h: Add multiple inclusion guard.
20562
20563 2005-08-24  Bruno Haible  <bruno@clisp.org>
20564
20565         * gnulib-tool: Add support for the --aux-dir option to
20566         --create-testdir, --create-megatestdir, --test, --megatest.
20567         (func_create_testdir, func_create_megatestdir): Optionally emit a
20568         AC_CONFIG_AUX_DIR directive.
20569         (create-testdir, create-megatestdir, test, megatest): Provide a
20570         default value for $auxdir.
20571
20572 2005-08-24  Bruno Haible  <bruno@clisp.org>
20573
20574         * gnulib-tool (import): Use compound statement instead of subshell
20575         where possible.
20576
20577 2005-08-24  Bruno Haible  <bruno@clisp.org>
20578
20579         * gnulib-tool (import): Change --aux-dir default to "build-aux".
20580
20581 2005-08-24  Bruno Haible  <bruno@clisp.org>
20582
20583         * gnulib-tool (func_version): Update.
20584
20585 2005-08-24  Bruno Haible  <bruno@clisp.org>
20586
20587         * gnulib-tool (func_import, func_create_testdir,
20588         func_create_megatestdir): Quote all autoconf macro arguments.
20589
20590 2005-08-24  Bruno Haible  <bruno@clisp.org>
20591
20592         * gnulib-tool (func_create_megatestdir): Call autoreconf without the
20593         option --force, because --force causes the aclocal.m4 of each
20594         subdirectory to be newer than the corresponding config.h.in.
20595
20596 2005-08-23  Paul Eggert  <eggert@cs.ucla.edu>
20597
20598         * m4/regex.m4 (gl_INCLUDED_REGEX): Remove; no longer used.
20599         All contents moved to gl_REGEX.
20600         (gl_REGEX): Don't bother checking whether lib/regex.c exists;
20601         assume that it does.
20602
20603 2005-08-23  Paul Eggert  <eggert@cs.ucla.edu>
20604
20605         * lib/regex.h (REG_NOSYS)
20606         [!defined _XOPEN_SOURCE && 200112L <= _POSIX_C_SOURCE]:
20607         Define, since POSIX requires it as of 2001.
20608         (_REG_ENOSYS)
20609         [! (defined _XOPEN_SOURCE || 200112L <= _POSIX_C_SOURCE)]:
20610         New private symbol, used to keep the enum signed in all cases.
20611         * lib/regex.h (RE_NO_EMPTY_RANGES): Fix doc bug reported by James
20612         Youngman in
20613         <http://lists.gnu.org/archive/html/bug-gnulib/2005-07/msg00132.html>.
20614
20615         * lib/regex_internal.c (re_string_skip_chars, register_state):
20616         (calc_state_hash):
20617         Remove forward decls; no longer needed now that we use prototypes.
20618         * lib/regexec.c (acquire_init_state_context, check_halt_node_context):
20619         (proceed_next_node, pop_fail_stack, sub_epsilon_src_nodes):
20620         (clean_state_log_if_needed): Likewise.
20621
20622 2005-08-23  Paul Eggert  <eggert@cs.ucla.edu>
20623
20624         * config/srclist.txt: Add glibc bugs 1231-1233.
20625
20626 2005-08-20  Paul Eggert  <eggert@cs.ucla.edu>
20627
20628         Fix problems reported by Sam Steingold in
20629         <http://lists.gnu.org/archive/html/bug-gnulib/2005-08/msg00007.html>.
20630         * lib/regexec.c (sift_states_bkref): Fix portability bug: the code
20631         assumed that reg_errcode_t is a signed type, which is not
20632         necessarily true if _XOPEN_SOURCE is not defined.
20633         * lib/regex_internal.c (calc_state_hash): Put 'inline' before type,
20634         since some compilers warn about it otherwise.
20635
20636 2005-08-20  Paul Eggert  <eggert@cs.ucla.edu>
20637
20638         * lib/regcomp.c (create_initial_state): Remove duplicate decl.
20639         (init_word_char, create_initial_state, duplicate_node_closure):
20640         (fetch_token, peek_token_bracket, build_range_exp):
20641         (build_collating_symbol): Remove forward decls; no longer needed
20642         now that we use prototypes.
20643
20644         * lib/regcomp.c:
20645         (re_compile_pattern, re_set_syntax, re_compile_fastmap):
20646         (re_compile_fastmap_iter, regcomp, regerror, regfree):
20647         (re_compile_internal, init_dfa, init_word_char, free_workarea_compile):
20648         (create_initial_state, optimize_utf8, analyze, postorder, preorder):
20649         (optimize_subexps, lower_subexps, lower_subexp, calc_first, calc_next):
20650         (link_nfa_nodes, duplicate_node_closure, search_duplicated_node):
20651         (duplicate_node, calc_inveclosure, calc_eclosure, calc_eclosure_iter):
20652         (fetch_token, peek_token, peek_token_bracket, parse, parse_reg_exp):
20653         (parse_branch, parse_expression, parse_sub_exp, parse_dup_op):
20654         (build_range_exp, build_collating_symbol, parse_bracket_exp):
20655         (parse_bracket_element, parse_bracket_symbol, build_equiv_class):
20656         (build_charclass, build_charclass_op, fetch_number, create_tree):
20657         (create_token_tree, mark_opt_subexp, duplicate_tree):
20658         Use prototypes rather than old-style definitions.
20659
20660         * lib/regex_internal.c:
20661         (re_string_allocate, re_string_construct, re_string_realloc_buffers):
20662         (re_string_construct_common, build_wcs_buffer, build_wcs_upper_buffer):
20663         (re_string_skip_chars, build_upper_buffer, re_string_translate_buffer):
20664         (re_string_reconstruct, re_string_peek_byte_case):
20665         (re_string_fetch_byte_case, re_string_destruct, re_string_context_at):
20666         (re_node_set_alloc, re_node_set_init_1, re_node_set_init_2):
20667         (re_node_set_init_copy, re_node_set_add_intersect):
20668         (re_node_set_init_union, re_node_set_merge, re_node_set_insert):
20669         (re_node_set_insert_last, re_node_set_compare, re_node_set_contains):
20670         (re_node_set_remove_at, re_dfa_add_node, calc_state_hash):
20671         (re_acquire_state, re_acquire_state_context, register_state):
20672         (create_ci_newstate, create_cd_newstate, free_state):
20673         Likewise.
20674         * lib/regexec.c (regexec, re_match, re_search, re_match_2,
20675         re_search_2):
20676         (re_search_2_stub, re_search_stub, re_copy_regs, re_set_registers):
20677         (re_search_internal, prune_impossible_nodes):
20678         (acquire_init_state_context, check_matching, static):
20679         (check_halt_node_context, check_halt_state_context, proceed_next_node):
20680         (push_fail_stack, pop_fail_stack, set_regs, free_fail_stack_return):
20681         (update_regs, sift_states_backward, build_sifted_states):
20682         (clean_state_log_if_needed, merge_state_array):
20683         (update_cur_sifted_state, add_epsilon_src_nodes):
20684         (sub_epsilon_src_nodes, check_dst_limits, check_dst_limits_calc_pos_1):
20685         (check_dst_limits_calc_pos, check_subexp_limits, sift_states_bkref):
20686         (sift_states_iter_mb, transit_state, merge_state_with_log, static):
20687         (find_recover_state, check_subexp_matching_top, transit_state_mb):
20688         (transit_state_bkref, get_subexp, get_subexp_sub, find_subexp_node):
20689         (check_arrival, check_arrival_add_next_nodes):
20690         (check_arrival_expand_ecl, check_arrival_expand_ecl_sub):
20691         (expand_bkref_cache, build_trtable, group_nodes_into_DFAstates):
20692         (check_node_accept_bytes, check_node_accept, extend_buffers):
20693         (match_ctx_init, match_ctx_clean, match_ctx_free, match_ctx_add_entry):
20694         (search_cur_bkref_entry, match_ctx_add_subtop, match_ctx_add_sublast):
20695         (sift_ctx_init):
20696         Likewise.
20697
20698         * lib/regex_internal.h:
20699         (re_string_allocate, re_string_construct, re_string_reconstruct):
20700         (re_string_realloc_buffers, build_wcs_buffer, build_wcs_upper_buffer):
20701         (build_upper_buffer, re_string_translate_buffer, re_string_destruct):
20702         (re_string_elem_size_at, re_string_char_size_at, re_string_wchar_at):
20703         (re_string_context_at, re_string_peek_byte_case):
20704         (re_string_fetch_byte_case): Declare even if RE_NO_INTERNAL_PROTOTYPES
20705         is defined, since we now use prototypes always.
20706
20707         * lib/regex.h (_RE_ARGS): Remove.  No longer needed, since we assume
20708         C89 or better.  All uses removed.
20709
20710 2005-08-20  Paul Eggert  <eggert@cs.ucla.edu>
20711
20712         * config/srclist.txt: Add glibc bugs 1220-1227.
20713
20714 2005-08-20  Jim Meyering  <jim@meyering.net>
20715
20716         * lib/regexec.c (regexec, re_search_stub) [!_LIBC]: Omit declaration
20717         of unused local, dfa.
20718
20719 2005-08-20  Bruno Haible  <bruno@clisp.org>
20720
20721         * m4/regex.m4 (gl_PREREQ_REGEX): Require AC_GNU_SOURCE.
20722
20723 2005-08-19  Paul Eggert  <eggert@cs.ucla.edu>
20724
20725         * lib/regex_internal.c (re_string_realloc_buffers, re_node_set_insert):
20726         (re_node_set_insert_last, re_dfa_add_node):
20727         Rename local variables to avoid GCC shadowing warnings.
20728
20729 2005-08-19  Paul Eggert  <eggert@cs.ucla.edu>
20730
20731         * lib/regex_internal.c (re_acquire_state, re_acquire_state_context)
20732         [defined lint]: Suppress bogus uninitialized-variable warnings.
20733
20734         * lib/regcomp.c (duplicate_node): Return new index, not an error code,
20735         and let the caller return REG_ESPACE if out of space.  This
20736         removes an uninitialied-variable warning with GCC 4.0.1, and also
20737         avoids taking the address of a local variable.  All callers
20738         changed.
20739
20740 2005-08-19  Paul Eggert  <eggert@cs.ucla.edu>
20741
20742         * config/srclist.txt: Comment out $LIBCSRC/posix/regex_internal.c,
20743         $LIBCSRC/posix/regexec.c.
20744         Add glibc bug 1217 for regcomp.c.
20745
20746 2005-08-19  Jim Meyering  <jim@meyering.net>
20747
20748         * lib/regexec.c (proceed_next_node): Redo local variables to
20749         avoid GCC shadowing warnings.
20750
20751 2005-08-18  Bruno Haible  <bruno@clisp.org>
20752
20753         * lib/strstr.c (strstr): Fix return value in multibyte case.
20754         * lib/strcasestr.c (strcasestr): Likewise.
20755
20756 2005-08-17  Paul Eggert  <eggert@cs.ucla.edu>
20757
20758         * lib/regex.h: Remove useless space-before-tab.  From coreutils.
20759
20760 2005-08-17  Jim Meyering  <jim@meyering.net>
20761
20762         Make the %s format (seconds since the epoch) work for a negative
20763         number and when used with a zero-padded field width, e.g. %015s.
20764
20765         * lib/strftime.c (my_strftime): Move the `do_number_sign_and_padding'
20766         label so that it precedes the code to set `digits'.  Otherwise,
20767         %0Ns wouldn't work.  Before this change, `date -d @-22 +%05s' would
20768         print `00-22'.  Now, it prints `-0022', as it should.
20769
20770 2005-08-17  Bruno Haible  <bruno@clisp.org>
20771
20772         * modules/strstr (Files): Add m4/mbrtowc.m4.
20773         (Depends-on): Add mbuiter.
20774
20775 2005-08-17  Bruno Haible  <bruno@clisp.org>
20776
20777         * modules/strcasestr: New file.
20778         * MODULES.html.sh (String handling, based on ANSI C 89): Add
20779         strcasestr.
20780
20781 2005-08-17  Bruno Haible  <bruno@clisp.org>
20782
20783         * modules/strcase (Depends-on): Add mbuiter. Remove strnlen1, mbchar.
20784
20785 2005-08-17  Bruno Haible  <bruno@clisp.org>
20786
20787         * modules/mbuiter: New file.
20788         * MODULES.html.sh (Extended multibyte and wide character utilities):
20789         Add mbuiter.
20790
20791 2005-08-17  Bruno Haible  <bruno@clisp.org>
20792
20793         * m4/strstr.m4 (gl_FUNC_STRSTR): Use the replacement function always.
20794         (gl_PREREQ_STRSTR): Use gl_FUNC_MBRTOWC.
20795
20796 2005-08-17  Bruno Haible  <bruno@clisp.org>
20797
20798         * m4/strcasestr.m4: New file.
20799
20800 2005-08-17  Bruno Haible  <bruno@clisp.org>
20801
20802         * lib/strstr.h: Ignore HAVE_STRSTR, always declare the gnulib function.
20803         * lib/strstr.c: Completely rewritten, with multibyte locale support.
20804
20805 2005-08-17  Bruno Haible  <bruno@clisp.org>
20806
20807         * lib/strcasestr.h: New file.
20808         * lib/strcasestr.c: New file.
20809
20810 2005-08-17  Bruno Haible  <bruno@clisp.org>
20811
20812         * lib/strcasecmp.c: Use mbuiter.h.
20813
20814 2005-08-17  Bruno Haible  <bruno@clisp.org>
20815
20816         * lib/mbuiter.h: New file.
20817
20818 2005-08-16  Paul Eggert  <eggert@cs.ucla.edu>
20819
20820         * m4/getopt.m4 (gl_GETOPT_CHECK_HEADERS): Do not override the results
20821         of gl_GETOPT_SUBSTITUTE.  That way, if both gl_GETOPT_SUBSTITUTE
20822         and gl_GETOPT are both invoked via different paths (as happens
20823         with GNU tar CVS because it uses both argp and getopt), the former
20824         wins.
20825
20826 2005-08-16  Bruno Haible  <bruno@clisp.org>
20827
20828         * modules/tls: New file.
20829         * MODULES.html.sh (Multithreading): Add tls.
20830
20831 2005-08-16  Bruno Haible  <bruno@clisp.org>
20832
20833         * modules/strnlen1: New file.
20834         * MODULES.html.sh (String handling): Add strnlen1.
20835
20836 2005-08-16  Bruno Haible  <bruno@clisp.org>
20837
20838         * modules/strcase (Files): Add m4/mbrtowc.m4.
20839         (Depends-on): Add strnlen1, mbchar.
20840
20841 2005-08-16  Bruno Haible  <bruno@clisp.org>
20842
20843         * modules/mbiter: New file.
20844         * MODULES.html.sh (Extended multibyte and wide character utilities):
20845         Add mbiter.
20846
20847 2005-08-16  Bruno Haible  <bruno@clisp.org>
20848
20849         * modules/mbfile: New file.
20850         * MODULES.html.sh (Extended multibyte and wide character utilities):
20851         Add mbfile.
20852
20853 2005-08-16  Bruno Haible  <bruno@clisp.org>
20854
20855         * modules/mbchar: New file.
20856         * MODULES.html.sh (Extended multibyte and wide character utilities):
20857         New section.
20858
20859 2005-08-16  Bruno Haible  <bruno@clisp.org>
20860
20861         * m4/tls.m4: New file, from GNU gettext.
20862
20863 2005-08-16  Bruno Haible  <bruno@clisp.org>
20864
20865         * m4/strcase.m4 (gl_FUNC_STRCASECMP): Use the replacement function
20866         always.
20867         (gl_PREREQ_STRCASECMP): Use gl_FUNC_MBRTOWC.
20868
20869 2005-08-16  Bruno Haible  <bruno@clisp.org>
20870
20871         * m4/mbiter.m4: New file.
20872
20873 2005-08-16  Bruno Haible  <bruno@clisp.org>
20874
20875         * m4/mbfile.m4: New file.
20876
20877 2005-08-16  Bruno Haible  <bruno@clisp.org>
20878
20879         * m4/mbchar.m4: New file.
20880
20881 2005-08-16  Bruno Haible  <bruno@clisp.org>
20882
20883         * lib/tls.h: New file, from GNU gettext.
20884         * lib/tls.c: New file, from GNU gettext.
20885
20886 2005-08-16  Bruno Haible  <bruno@clisp.org>
20887
20888         * lib/strnlen1.h: New file.
20889         * lib/strnlen1.c: New file.
20890
20891 2005-08-16  Bruno Haible  <bruno@clisp.org>
20892
20893         * lib/strcasecmp.c (struct mbiter_multi): Remove at_end field.
20894         (mbi_init): Update.
20895         (mbi_avail, mbi_advance): Let the iteration end before the terminating
20896         NUL byte, not after it.
20897
20898 2005-08-16  Bruno Haible  <bruno@clisp.org>
20899
20900         * lib/strcase.h (strcasecmp): Add note in comments.
20901         * lib/strncasecmp.c: Use code from strcasecmp.c.
20902         * lib/strcasecmp.c: Use mbchar module. Define private mbiter variant.
20903         (strcasecmp): Work correctly in multibyte locales.
20904
20905 2005-08-16  Bruno Haible  <bruno@clisp.org>
20906
20907         * lib/mbiter.h: New file.
20908
20909 2005-08-16  Bruno Haible  <bruno@clisp.org>
20910
20911         * lib/mbfile.h: New file.
20912
20913 2005-08-16  Bruno Haible  <bruno@clisp.org>
20914
20915         * lib/mbchar.h: New file.
20916         * lib/mbchar.c: New file.
20917
20918 2005-08-16  Bruno Haible  <bruno@clisp.org>
20919
20920         * lib/mbchar.h (mb_cmp, mb_casecmp): Order the invalid characters after
20921         the valid ones. Makes the comparison operations transitive:
20922         cmp (a, b) < 0 && cmp (b, c) < 0 ==> cmp (a, c) < 0.
20923         * lib/strcasecmp.c (strcasecmp): Use mb_casecmp.
20924
20925 2005-08-15  Simon Josefsson  <jas@extundo.com>
20926
20927         * modules/ssize_t (License): Change to 'unlimited'.
20928
20929         * gnulib-tool (sed_extract_prog): Recognize 'unlimited' license.
20930
20931 2005-08-15  Paul Eggert  <eggert@cs.ucla.edu>
20932
20933         * config/srclist.txt: Comment out $LIBCSRC/posix/regex.h.
20934         Add comments for each pending glibc patch.
20935
20936 2005-08-15  Bruno Haible  <bruno@clisp.org>
20937
20938         * lib/regex.h (__restrict_arr): Don't define to __restrict if
20939         __cplusplus is defined.
20940
20941 2005-08-14  Jim Meyering  <jim@meyering.net>
20942
20943         Sync from coreutils.
20944
20945         * lib/fts-cycle.c (setup_dir, enter_dir, leave_dir, free_dir):
20946         Use the hash-table-based cycle-detection code not just when
20947         FTS_TIGHT_CYCLE_CHECK if specified, but also with FTS_LOGICAL.
20948         Reported by James Youngman in
20949         <http://lists.gnu.org/archive/html/bug-gnulib/2005-08/msg00011.html>.
20950         * lib/fts_.h: Mention that with FTS_LOGICAL, we use
20951         FTS_TIGHT_CYCLE_CHECK.
20952         * lib/fts.c (fts_cross_check) [FTS_DEBUG]:
20953         s/active_dir_ht/fts_cycle.ht/. This lets us compile with -DFTS_DEBUG,
20954         once again.
20955         * lib/fts.c [! _LIBC]: Include "lstat.h" rather than rolling our own.
20956         * lib/fts.c (fd_safer): Remove decl.
20957         Include fcntl--.h rather than unistd-safer.h
20958         (fts_safe_changedir): Don't call fd_safer; no longer needed
20959         now that we include fcntl--.h.
20960
20961 2005-08-12  Simon Josefsson  <jas@extundo.com>
20962
20963         * modules/getndelim2: Use ssize_t module.
20964         * modules/getnline: Likewise.
20965         * modules/safe-read: Likewise.
20966         * modules/xreadlink: Likewise.
20967
20968         * modules/ssize_t: New file.
20969
20970 2005-08-12  Simon Josefsson  <jas@extundo.com>
20971
20972         * m4/readline.m4: Look for termcap, curses or ncurses if required.
20973
20974 2005-08-12  Simon Josefsson  <jas@extundo.com>
20975
20976         * MODULES.html.sh (Support for systems lacking POSIX:2001): Add
20977         ssize_t.
20978
20979 2005-08-12  Simon Josefsson  <jas@extundo.com>
20980
20981         * MODULES.html.sh (Extra functions based on ANSI C 89: Misc): Add
20982         readline, getdelim and check_version.
20983         (Support for systems lacking ISO C 99: Sizes of integer types):
20984         Add size_max.
20985
20986 2005-08-12  Bruno Haible  <bruno@clisp.org>
20987
20988         * m4/readline.m4 (gl_FUNC_READLINE): Look for ncurses first.
20989
20990 2005-08-11  Simon Josefsson  <jas@extundo.com>
20991
20992         * modules/readline: New file.
20993
20994         * modules/strnlen (Files): Add strnlen.h.
20995
20996 2005-08-11  Simon Josefsson  <jas@extundo.com>
20997
20998         * m4/readline.m4: New file.
20999
21000 2005-08-11  Simon Josefsson  <jas@extundo.com>
21001
21002         * lib/readline.h, readline.c: New file.
21003
21004 2005-08-11  Simon Josefsson  <jas@extundo.com>
21005
21006         * doc/gnulib.texi (Initial import, Finishing touches): Mention
21007         gl_AVOID.
21008
21009 2005-08-11  Bruno Haible  <bruno@clisp.org>
21010
21011         * lib/strnlen.h (strnlen): Change parameter name to match comment.
21012
21013 2005-08-10  Stepan Kasal  <kasal@ucw.cz>
21014
21015         * m4/onceonly_2_57.m4: Really require Autoconf 2.57.
21016
21017 2005-08-10  Simon Josefsson  <jas@extundo.com>
21018
21019         * tests/test-iconvme.c: New file.
21020
21021 2005-08-10  Simon Josefsson  <jas@extundo.com>
21022
21023         * m4/strnlen.m4: New file.
21024
21025         * m4/strndup.m4: Don't check for strnlen declaration, done in
21026         strnlen.m4.
21027
21028 2005-08-10  Simon Josefsson  <jas@extundo.com>
21029
21030         * lib/strndup.c: Use strnlen.h.
21031
21032         * lib/strnlen.h: New file.
21033
21034 2005-08-08  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>  (tiny change)
21035
21036         * README: Typos.
21037
21038 2005-08-02  Simon Josefsson  <jas@extundo.com>
21039
21040         * modules/readline: New file.
21041
21042 2005-08-02  Simon Josefsson  <jas@extundo.com>
21043
21044         * modules/getdelim: New file.
21045
21046         * modules/getline: Rewrite, don't use getndelim2.
21047
21048 2005-08-02  Simon Josefsson  <jas@extundo.com>
21049
21050         * m4/getline.m4: Separate out getdelim stuff into separate module.
21051
21052         * m4/getdelim.m4: New file.
21053
21054 2005-08-02  Simon Josefsson  <jas@extundo.com>
21055
21056         * lib/getline.h, getline.c: Rewrite.
21057
21058         * lib/getdelim.h, lib/getdelim.c: New files, ported from glibc.
21059
21060 2005-07-31  Bruno Haible  <bruno@clisp.org>
21061
21062         * lib/lock.h (gl_lock_initializer): New macro.
21063         (gl_lock_define_initialized): Use it.
21064         (gl_rwlock_initializer): New macro.
21065         (gl_rwlock_define_initialized): Use it.
21066         (gl_recursive_lock_initializer): New macro.
21067         (gl_recursive_lock_define_initialized): Use it.
21068
21069 2005-07-30  Karl Berry  <karl@gnu.org>
21070
21071         * doc/gnulib.texi (Initial import): mention -I$(top_builddir)/lib.
21072         Report from Ben Pfaff, regarding getopt.
21073
21074 2005-07-26  Paul Eggert  <eggert@cs.ucla.edu>
21075
21076         Add support to getopt for Emacs, which doesn't use LIBOBJS in the
21077         normal way.
21078         * m4/getopt.m4 (gl_GETOPT_SUBSTITUTE_HEADER): New macro.
21079         (gl_GETOPT_SUBSTITUTE): Use it.  Invoke gl_PREREQ_GETOPT.
21080         (gl_GETOPT_IFELSE, gl_GETOPT_CHECK_HEADERS): New macros.
21081         (gl_GETOPT): Use the new macros.  Most of the implementation
21082         is moved to the new macros.  This is for programs like Emacs
21083         that don't want all the functionality of gl_GETOPT.
21084
21085 2005-07-26  Bruno Haible  <bruno@clisp.org>
21086
21087         * m4/lock.m4: Update from GNU gettext.
21088
21089 2005-07-26  Bruno Haible  <bruno@clisp.org>
21090
21091         * lib/lock.h: Update from GNU gettext.
21092         * lib/lock.c: Update from GNU gettext.
21093
21094 2005-07-25  Paul Eggert  <eggert@cs.ucla.edu>
21095
21096         * m4/regex.m4 (gl_INCLUDED_REGEX): Use AC_RUN_IFELSE instead of the
21097         obsolescent AC_TRY_RUN.  Include the default includes files, for
21098         'exit'.
21099
21100 2005-07-24  Bruno Haible  <bruno@clisp.org>
21101
21102         * modules/visibility: New file.
21103         * MODULES.html.sh (Misc): Add visibility.
21104
21105 2005-07-24  Bruno Haible  <bruno@clisp.org>
21106
21107         * m4/visibility.m4: New file.
21108
21109 2005-07-24  Bruno Haible  <bruno@clisp.org>
21110
21111         * doc/visibility.texi: New file.
21112
21113 2005-07-22  Bruno Haible  <bruno@clisp.org>
21114
21115         * modules/alloca-opt (Makefile.am): Remove explicit dependency on
21116         $(ALLOCA_H), redundant through BUILT_SOURCES.
21117         * modules/argz (Makefile.am): Remove explicit dependency on $(ARGZ_H),
21118         redundant through BUILT_SOURCES.
21119         * modules/byteswap (Makefile.am): Remove explicit dependency on
21120         $(BYTESWAP_H), redundant through BUILT_SOURCES.
21121         * modules/fnmatch (Makefile.am): Remove explicit dependency on
21122         $(FNMATCH_H), redundant through BUILT_SOURCES.
21123         * modules/getopt (Makefile.am): Remove explicit dependency on
21124         $(GETOPT_H), redundant through BUILT_SOURCES.
21125         * modules/glob (Makefile.am): Remove explicit dependency on $(GLOB_H),
21126         redundant through BUILT_SOURCES.
21127         * modules/poll (Makefile.am): Remove explicit dependency on $(POLL_H),
21128         redundant through BUILT_SOURCES.
21129         * modules/stdbool (Makefile.am): Remove explicit dependency on
21130         $(STDBOOL_H), redundant through BUILT_SOURCES.
21131         * modules/stdint (Makefile.am): Remove explicit dependency on
21132         $(STDINT_H), redundant through BUILT_SOURCES.
21133         * modules/sysexits (Makefile.am): Add $(SYSEXITS_H) to BUILT_SOURCES.
21134         Remove explicit dependency on $(SYSEXITS_H).
21135         Reported by Alexandre Duret-Lutz <adl@src.lip6.fr>.
21136
21137 2005-07-18  Simon Josefsson  <jas@extundo.com>
21138
21139         * lib/check-version.c (check_version): Accept identical versions too.
21140
21141 2005-07-18  Bruno Haible  <bruno@clisp.org>
21142
21143         * modules/lock: New file.
21144         * MODULES.html.sh (Multithreading): New section.
21145
21146 2005-07-18  Bruno Haible  <bruno@clisp.org>
21147
21148         * m4/lock.m4: New file, from GNU gettext.
21149
21150 2005-07-18  Bruno Haible  <bruno@clisp.org>
21151
21152         * lib/lock.h: New file, from GNU gettext.
21153         * lib/lock.c: New file, from GNU gettext.
21154
21155 2005-07-18  Bruno Haible  <bruno@clisp.org>
21156
21157         * lib/lock.h (gl_once_t): New type.
21158         (gl_once_define, gl_once): New macros.
21159         * lib/lock.c (fresh_once): New variable.
21160         (glthread_once, glthread_once_call, glthread_once_singlethreaded): New
21161         functions.
21162
21163 2005-07-16  Simon Josefsson  <jas@extundo.com>
21164
21165         * doc/gnulib.texi (Library version handling): Add ELF symbol collision
21166         workaround, suggested by Bruno.
21167
21168 2005-07-15  Paul Eggert  <eggert@cs.ucla.edu>
21169
21170         * modules/xalloc (Depends-on): Add xalloc-die.
21171         * modules/xvasprintf (Depends-on): Add xalloc-die.
21172
21173 2005-07-15  Paul Eggert  <eggert@cs.ucla.edu>
21174
21175         * lib/quotearg.c: Add translator comment suggested by Bruno Haible,
21176         with a minor change.
21177
21178 2005-07-15  Bruno Haible  <bruno@clisp.org>
21179
21180         * m4/poll.m4 (gl_FUNC_POLL): Check against MacOS X 10.4 poll() bug.
21181         When using lib/poll.c, define poll as rpl_poll.
21182
21183 2005-07-14  Paul Eggert  <eggert@cs.ucla.edu>
21184
21185         * modules/argp (Depends-on): Remove unlocked-io.
21186
21187 2005-07-14  Derek Price  <derek@ximbiot.com>
21188
21189         * m4/glob.m4 (gl_GLOB): Cache glob interface check result.  Add check
21190         for glob symlink bug.
21191
21192 2005-07-14  Bruno Haible  <bruno@clisp.org>
21193
21194         * m4/argp.m4 (gl_ARGP): Remove invocation of gl_FUNC_GLIBC_UNLOCKED_IO.
21195         Instead, test for *_unlocked function declarations directly.
21196
21197 2005-07-11  Simon Josefsson  <jas@extundo.com>
21198
21199         * modules/size_max: New file.
21200
21201         * modules/xsize: Depend on size_max module for size_max.m4.
21202
21203 2005-07-11  Simon Josefsson  <jas@extundo.com>
21204
21205         * lib/size_max.h: New file.
21206
21207 2005-07-11  Paul Eggert  <eggert@cs.ucla.edu>
21208
21209         * lib/version-etc-fsf.c (version_etc_copyright): Parameterize the
21210         copyright symbol and the year.
21211         * lib/version-etc.c (COPYRIGHT_YEAR): New constant.
21212         (version_etc_va): Use parameterized copyright notice.
21213         Reword to conform to the current GNU coding standards.
21214
21215 2005-07-11  Karl Berry  <karl@gnu.org>
21216
21217         * doc/gnulib.texi (Quoting): new node.
21218         (Initial import): more info, from Patrice.
21219
21220 2005-07-11  Bruno Haible  <bruno@clisp.org>
21221
21222         * gnulib-tool (func_usage): Document option --avoid.
21223         (Command line options): Handle --avoid.
21224         (func_acceptable): New function.
21225         (func_modules_transitive_closure): Use it.
21226
21227 2005-07-11  Bruno Haible  <bruno@clisp.org>
21228
21229         * MODULES.html.sh: Use shortcut URLs to the www.opengroup.org site.
21230         Reported by Jim Meyering.
21231
21232 2005-07-10  Bruno Haible  <bruno@clisp.org>
21233
21234         * m4/size_max.m4 (gl_SIZE_MAX): Cast ~(size_t)0 back to size_t.
21235         Needed when size_t is smaller than 'unsigned int'.
21236         Reported by Paul Eggert.
21237
21238 2005-07-09  Sergey Poznyakoff  <gray@gnu.org.ua>
21239
21240         * modules/argp (Depends-on): Add unlocked-io
21241
21242 2005-07-09  Sergey Poznyakoff  <gray@gnu.org.ua>
21243
21244         * lib/argp-namefrob.h: Include unlocked-io.h. Removed unnecessary
21245         block of defines.
21246
21247 2005-07-08  Paul Eggert  <eggert@cs.ucla.edu>
21248
21249         * config/srclist.txt: Comment out regcomp.c, since we have a porting
21250         fix now.
21251
21252 2005-07-08  Eric Blake  <ebb9@byu.net>  (tiny change)
21253         and Paul Eggert  <eggert@cs.ucla.edu>
21254
21255         * lib/regcomp.c (init_dfa, build_range_exp): Store __btowc value
21256         in wint_t, not wchar_t.  Remove now-unnecessary cast.
21257
21258 2005-07-07  Paul Eggert  <eggert@cs.ucla.edu>
21259
21260         * modules/regex (Files): Add lib/regex_internal.c,
21261         lib/regex_internal.h, lib/regexec.c, lib/regcomp.c, m4/codeset.m4.
21262         (Depends-on): Add extensions.
21263         (Makefile.am): Remove lib_SOURCES; now done by m4 code.
21264
21265 2005-07-07  Paul Eggert  <eggert@cs.ucla.edu>
21266
21267         * m4/backupfile.m4 (gl_BACKUPFILE): Use AC_CHECK_FUNCS_ONCE on
21268         pathconf.
21269         * m4/same.m4 (gl_SAME): Likewise.
21270         Require AC_SYS_LONG_FILE_NAMES; bug reported by Gerrit P. Haase.
21271
21272         * m4/regex.m4: Adjust to new libc regex implementation.
21273         (gl_INCLUDED_REGEX): Add AC_LIBSOURCES for
21274         all the .c and .h parts of (the new) regex.
21275         Quote the m4 stuff better.
21276         Check for RE_ICASE bug of old gnulib.
21277         Check for REG_STARTEND of recent libc.
21278         Rename local variables from jm_* to gl_*.
21279         Quote operand of "test -f".
21280         Say "recent enough" version of libc, not "version 2".
21281         (gl_PREREQ_REGEX): Remove AC_FUNC_ALLOCA, since alloca is a
21282         prerequisite module.  Remove AC_HEADER_STDC; no longer needed.
21283         Check for locale.h, isblank, mbrtowc, wcrtomb, wcscoll.
21284         Remove check for btowc, isascii.
21285         Require AM_LANGINFO_CODESET.
21286
21287 2005-07-07  Paul Eggert  <eggert@cs.ucla.edu>
21288
21289         * lib/regex.c, regex.h: Sync from libc.
21290         * lib/regcomp.c, lib/regexec_internal.c, lib/regex_internal.h:
21291         * lib/regexec.c:
21292         New files, synced from libc, except that regex_internal.h
21293         currently has a small porting fix.
21294
21295 2005-07-07  Paul Eggert  <eggert@cs.ucla.edu>
21296
21297         * config/srclist.txt: Add regcomp.c, regex.c, regex.h,
21298         regex_internal.c, regexec.c.
21299         Add regex_internal.h too, but as a comment, since the libc version
21300         is currently broken in gnulib mode.
21301
21302 2005-07-06  Paul Eggert  <eggert@cs.ucla.edu>
21303
21304         Support programs like Emacs that use gnulib but not gettext.
21305         * MODULES.html.sh (Internationalization functions): Add gettext-h.
21306         * modules/gettext-h: New file.
21307         * modules/gettext (Files): Remove lib/gettext.h.
21308         (Depends-on): Add gettext-h.
21309         (Makefile.am): Remove lib_SOURCES.
21310         * modules/argmatch, modules/c-stack, modules/closeout:
21311         * modules/copy-file, modules/csharpcomp, modules/csharpexec:
21312         * modules/execute, modules/file-type, modules/getaddrinfo:
21313         * modules/getopt, modules/human, modules/javacomp:
21314         * modules/javaexec, modules/mkdir-p, modules/obstack:
21315         * modules/openat, modules/pagealign_alloc, modules/pipe:
21316         * modules/quotearg, modules/regex, modules/rpmatch:
21317         * modules/unicodeio, modules/userspec, modules/version-etc:
21318         * modules/wait-process, modules/xalloc-die, modules/xmemcoll:
21319         * modules/xsetenv:
21320         Depend on gettext-h, not gettext.
21321
21322 2005-07-05  Paul Eggert  <eggert@cs.ucla.edu>
21323
21324         * gnulib-tool (func_import): Add support for 'public domain' license.
21325         * modules/alloca, modules/atexit, modules/memmove:
21326         Now public domain, not GPL.
21327         * modules/dup2, modules/getpagesize, modules/malloc, modules/memset:
21328         * modules/realloc, modules/strerror, modules/strtod:
21329         Now LGPL, not GPL.
21330
21331 2005-07-05  Bruno Haible  <bruno@clisp.org>
21332
21333         * m4/mbrtowc.m4 (gl_FUNC_MBRTOWC): Upgrade to version from current
21334         autoconf CVS. Needed for mingw.
21335
21336 2005-07-03  Paul Eggert  <eggert@cs.ucla.edu>
21337
21338         Remove the dependency of the strftime module on the tzset module.
21339         * modules/strftime (Depends-on): Remove dependency on tzset.
21340
21341 2005-07-03  Paul Eggert  <eggert@cs.ucla.edu>
21342
21343         Remove the dependency of the strftime module on the tzset module.
21344         * m4/strftime.m4 (gl_FUNC_STRFTIME): Don't require
21345         gl_FUNC_TZSET_CLOBBER.
21346
21347 2005-07-03  Paul Eggert  <eggert@cs.ucla.edu>
21348
21349         Remove the dependency of the strftime module on the tzset module.
21350         * lib/strftime.c (my_strftime)
21351         [! defined _LIBC && ! HAVE_RUN_TZSET_TEST]:
21352         Copy the input structure, to work around some of the bug with
21353         Solaris 2.5.1 and Solaris 2.6.  If you still care about these old
21354         Solaris releases, you should also use the tzset module, but we won't
21355         require it as a dependency any more since we don't want LGPLed code
21356         to depend on GPLed code.
21357
21358 2005-07-02  Jim Meyering  <jim@meyering.net>
21359
21360         * m4/chown.m4, cloexec.m4, dup2.m4, fsusage.m4:
21361         * m4/getcwd-path-max.m4, getcwd.m4, mkstemp.m4, mountlist.m4:
21362         * m4/pagealign_alloc.m4, save-cwd.m4, unistd-safer.m4:
21363         Don't check for fcntl.h, and don't test for HAVE_FCNTL_H.
21364
21365 2005-07-02  Jim Meyering  <jim@meyering.net>
21366
21367         * lib/backupfile.c (backup_args): Change a `0' to NULL.
21368
21369 2005-07-01  Paul Eggert  <eggert@cs.ucla.edu>
21370
21371         * lib/xnanosleep.c: Include timespec.h, since OpenBSD 3.4 <time.h>
21372         declares only 'struct timespec;' (!).
21373
21374 2005-07-01  Jim Meyering  <jim@meyering.net>
21375
21376         * lib/chown.c, cloexec.c, dup-safer.c, dup2.c, fsusage.c, getcwd.c:
21377         * lib/getloadavg.c, mountlist.c, openat.h, pagealign_alloc.c:
21378         * lib/save-cwd.c, tempname.c:
21379         Assume HAVE_FCNTL_H (i.e., include <fcntl.h> unconditionally,
21380         and don't include <sys/file.h>).
21381
21382 2005-06-29  Jim Meyering  <jim@meyering.net>
21383
21384         * lib/mkdir-p.c (make_dir_parents): Don't apply sizeof to a hard-coded
21385         type name.  Use the variable name instead.
21386         * lib/idcache.c (getuser, getuidbyname, getgroup, getgidbyname):
21387         Likewise.
21388
21389 2005-06-28  Simon Josefsson  <jas@extundo.com>
21390
21391         * modules/check-version (Files): Add check-version.m4.
21392
21393 2005-06-28  Simon Josefsson  <jas@extundo.com>
21394
21395         * m4/check-version.m4: New file, suggested by Jim Meyering
21396         <jim@meyering.net>.
21397
21398 2005-06-28  Simon Josefsson  <jas@extundo.com>
21399
21400         * lib/check-version.h, lib/check-version.c: New files.
21401
21402 2005-06-28  Simon Josefsson  <jas@extundo.com>
21403
21404         * lib/base64.c (base64_encode): Indent.  Rename 'b64' to avoid
21405         collision with global variable.  Better indentation.  Don't
21406         increment buffer pointer beyond buffer end.  Based on comments
21407         from Paul Eggert <eggert@cs.ucla.edu>.
21408
21409         * lib/base64.h: Indent.
21410
21411 2005-06-28  Simon Josefsson  <jas@extundo.com>
21412
21413         * doc/gnulib.texi (Library version handling): New section.
21414
21415 2005-06-28  Jim Meyering  <jim@meyering.net>
21416
21417         * check-module (find_included_lib_files): Hard-code another
21418         pair of exceptions: fts.c includes fts-cycle.c and unistd-safer.h
21419         but modules/fts-lgpl (correctly) does not list those files.
21420
21421         * modules/canonicalize (Files): Add lib/pathmax.h.
21422
21423 2005-06-25  Simon Josefsson  <jas@extundo.com>
21424
21425         * modules/check-version: New file.
21426
21427 2005-06-24  Paul Eggert  <eggert@cs.ucla.edu>
21428
21429         * lib/canon-host.c (canon-host): Append trailing "," to 0 in
21430         initializer of struct addrinfo, as an indication that we don't
21431         care how many members the structure has.
21432
21433 2005-06-24  Derek Price  <derek@ximbiot.com>
21434         and Bruno Haible  <bruno@clisp.org>
21435
21436         Remove stat module & update lstat.
21437         * m4/lstat.m4 (gl_FUNC_LSTAT): Drop AC_FUNC_LSTAT in favor of
21438         AC_FUNC_LSTAT_FOLLOWS_SLASHED_SYMLINK.
21439         * m4/stat.m4: Remove this file.
21440
21441 2005-06-24  Derek Price  <derek@ximbiot.com>
21442         and Bruno Haible  <bruno@clisp.org>
21443
21444         Remove stat module & update lstat.
21445         * lib/stat.c: Remove this file...
21446         (slash_aware_lstat): ...moving this content and its support...
21447         * lib/lstat.c (rpl_lstat): ...into here.
21448         * lib/lstat.h: New file.
21449
21450 2005-06-24  Derek Price  <derek@ximbiot.com>
21451         and Bruno Haible  <bruno@clisp.org>
21452
21453         Remove stat module & update lstat.
21454         * config/srclist.txt (libc sources): Remove stat.
21455
21456 2005-06-24  Derek Price  <derek@ximbiot.com>
21457         and Bruno Haible  <bruno@clisp.org>
21458
21459         Remove stat module & update lstat.
21460         * MODULES.html.sh (stat): Remove.
21461         * MODULES.html: Regenerated.
21462         * modules/lstat (Description): Correct function name.
21463         (Files): Add "lstat.h".
21464         (Depends-on): Remove stat, add xalloc, stat-macros.
21465         * modules/stat: Remove this file.
21466         (Include): Add "lstat.h", remove <sys/stat.h>.
21467
21468 2005-06-23  Paul Eggert  <eggert@cs.ucla.edu>
21469
21470         * lib/mktime.c: Include <string.h> even if !DEBUG.  (From glibc.)
21471         (ranged_convert): Don't save conversion in a temporary struct.
21472         This causes a warning with GCC 4.0.0, and anyway in the typical
21473         case it's not worth the extra 100 bytes or so of code.
21474         (ranged_convert, __mktime_internal): When calling a function via a
21475         pointer P, use P () rather than (*P) (), as we now assume C89 or
21476         better.
21477
21478 2005-06-22  Paul Eggert  <eggert@cs.ucla.edu>
21479
21480         * lib/readutmp.c (desirable_utmp_entry): Fix bug where "who -b" and
21481         "who -r" failed to give output.  Problem reported by Tim Waugh.
21482
21483         * lib/xmalloc.c (HAVE_GNU_CALLOC): New constant.
21484         (xcalloc): Use it to avoid needless tests.
21485         Problem reported by Jim Meyering.
21486
21487 2005-06-20  Derek Price  <derek@ximbiot.com>
21488
21489         * m4/bison.m4: Note that precious decls of YACC & YFLAGS will be
21490         unnecessary for Autoconfs > 2.59c.
21491
21492 2005-06-16  Sergey Poznyakoff  <gray@Mirddin.farlep.net>
21493
21494         * lib/argp.h (__option_is_short): Check upper limit of
21495         __key. Isprint() requires its argument to have the value
21496         of an unsigned char or EOF.
21497
21498 2005-06-16  Jim Meyering  <jim@meyering.net>
21499
21500         * lib/calloc.c (rpl_calloc): Allocate a 1-byte buffer (not 1xS or Nx1)
21501         when either N or S is zero.
21502
21503 2005-06-16  Derek Price  <derek@ximbiot.com>
21504
21505         * m4/bison.m4: Declare YACC & YFLAGS precious.
21506
21507 2005-06-10  Paul Eggert  <eggert@cs.ucla.edu>
21508
21509         * lib/fnmatch.c (fnmatch): If there is an encoding error in a
21510         multibyte string or pattern, fall back on unibyte matching.
21511         Problem reported by James Youngman.
21512
21513 2005-06-08  Bruno Haible  <bruno@clisp.org>
21514
21515         * modules/csharpcomp: New file.
21516         * MODULES.html.sh (C#): Add csharpcomp.
21517
21518 2005-06-08  Bruno Haible  <bruno@clisp.org>
21519
21520         * m4/csharpcomp.m4: New file, from GNU gettext.
21521
21522 2005-06-08  Bruno Haible  <bruno@clisp.org>
21523
21524         * lib/csharpcomp.h: New file, from GNU gettext.
21525         * lib/csharpcomp.c: New file, from GNU gettext.
21526         * lib/csharpcomp.sh.in: New file, from GNU gettext.
21527
21528 2005-06-08  Bruno Haible  <bruno@clisp.org>
21529
21530         * lib/binary-io.h (fileno): Undefine before defining it. Avoids a gcc
21531         warning on mingw.
21532
21533 2005-06-07  Derek Price  <derek@ximbiot.com>
21534
21535         Sync from CVS.
21536         * lib/glob_.h: Indent nested #ifdef.
21537
21538 2005-06-02  Paul Eggert  <eggert@cs.ucla.edu>
21539
21540         Sync from coreutils.
21541         Use "file name" when talking about file names, instead of "filename"
21542         or "path", as per the GNU coding standards.
21543         * lib/mkdir-p.c: Renamed from makepath.c.
21544         (make_dir_parents): Renamed from make_path.  All callers changed.
21545         * lib/mkdir-p.h: Likewise.  All includers changed.
21546         * lib/filenamecat.c: Renamed from path-concat.c.
21547         (file_name_concat): Renamed from path_concat.  All callers changed.
21548         [TEST_FILE_NAME_CONCAT]: Renamed from TEST_PATH_CONCAT.
21549         * lib/filenamecat.h: Likewise.  All includers changed.
21550         * lib/acl.c: Don't use "path" or "filename" to mean "file name"
21551         in comments or local variable names.
21552         * lib/basename.c: Likewise.
21553         * lib/canonicalize.c, canonicalize.h: Likewise.
21554         * lib/dirname.c, dirname.h: Likewise.
21555         * lib/euidaccess.c: Likewise.
21556         * lib/exclude.c: Likewise
21557         * lib/fnmatch_.h, fnmatch_loop.c: Likewise.
21558         * lib/fsusage.c, fsuage.h: Likewise.
21559         * lib/fts.c, fts_.h: Likewise.
21560         * lib/getcwd.c: Likewise.
21561         * lib/getloadavg.c: Likewise.
21562         * lib/mkstemp.c: Likewise.
21563         * lib/mountlist.c, mountlist.h: Likewise.
21564         * lib/openat.c, openat.h: Likewise.
21565         * lib/readlink-stub.c: Likewise.
21566         * lib/readutmp.c, readutmp.h: Likewise.
21567         * lib/rename.c: Likewise.
21568         * lib/rmdir.c: Likewise.
21569         * lib/same.c: Likewise.
21570         * lib/savedir.c: Likewise.
21571         * lib/stripslash.c: Likewise.
21572         * lib/tempname.c: Likewise.
21573         * lib/xreadlink.c: Likewise.
21574         * lib/exclude.c (excluded_file_name): Renamed from excluded_filename.
21575         All uses changed.
21576         * lib/exclude.h: Likewise.
21577
21578         * lib/euidaccess.c (getuid, getgid, getuid, getegid)
21579         [!defined _POSIX_VERSION]: Remove decls; not needed these days.
21580         * lib/idcache.c (getpwuid, getpwnam, getgrgid, getgrnam)
21581         [!defined _POSIX_VERSION]: Remove decls; not needed these days.
21582         * lib/pathmax.h: Include <limits.h> unconditionally, since other
21583         files have been getting away with it for years (MORE/BSD 4.3
21584         is extinct now).
21585         * lib/userspec.c (getpwnam, getgrnam, getgrgid)
21586         [!defined _POSIX_VERSION]: Remove decls; not needed these days.
21587
21588         * lib/pathmax.h (_POSIX_PATH_MAX) [!defined _POSIX_PATH_MAX]:
21589         Define to 256, not 255, as per modern POSIX.
21590
21591 2005-06-02  Paul Eggert  <eggert@cs.ucla.edu>
21592
21593         Sync from coreutils.
21594         Use "file name" when talking about file names, instead of "filename"
21595         or "path", as per the GNU coding standards.
21596         * MODULES.html.sh: mkdir-p renamed from makepath.
21597         filenamecat renamed from path-concat.
21598         * modules/filenamecat: Renamed from modules/path-concat.
21599         (Files): filenamecat.h and filenamecat.c renamed from
21600         path-concat.h and path-concat.c.
21601         (configure.ac): gl_FILE_NAME_CONCAT, not gl_PATH_CONCAT.
21602         (Include): filenamecat.h, not path-concat.h.
21603         * modules/mkdir-p: Renamed from modules/makepath.
21604         (Files): mkdir-p.h and mkdir-p.c renamed from makepath.h and
21605         makepath.c.
21606         (configure.ac): gl_MKDIR_PARENTS, not gl_MAKEPATH.
21607         (Include): mkdir-p.h, not makepath.h.
21608
21609 2005-06-02  Paul Eggert  <eggert@cs.ucla.edu>
21610
21611         Sync from coreutils.
21612         * m4/mkdir-p.m4: Renamed from makepath.m4.
21613         (gl_MKDIR_PARENTS): Renamed from gl_MAKEPATH.  All uses changed.
21614         Rename files from makepath.c to mkdir-p.c, and from
21615         makepath.h to mkdir-p.h.
21616         * m4/filenamecat.m4: Renamed from path-concat.m4.
21617         (gl_FILE_NAME_CONCAT): Renamed from gl_PATH_CONCAT.  All uses changed.
21618         Rename files from path-concat.c to filenamecat.c,
21619         and from path-concat.h to filenamecat.h.
21620         * m4/getcwd-path-max.m4: Don't use "path" or "filename" to mean
21621         "file name" in local variables or comments.
21622         * m4/rename.m4: Likewise.
21623
21624 2005-06-01  Bruno Haible  <bruno@clisp.org>
21625
21626         * modules/csharpexec: New file.
21627         * MODULES.html.sh (C#): New section.
21628
21629 2005-06-01  Bruno Haible  <bruno@clisp.org>
21630
21631         * m4/csharp.m4: New file, from GNU gettext.
21632         * m4/csharpexec.m4: New file, from GNU gettext.
21633
21634 2005-06-01  Bruno Haible  <bruno@clisp.org>
21635
21636         * lib/csharpexec.h: New file, from GNU gettext.
21637         * lib/csharpexec.c: New file, from GNU gettext.
21638         * lib/csharpexec.sh.in: New file, from GNU gettext.
21639
21640 2005-05-31  Derek Price  <derek@ximbiot.com>
21641             Paul Eggert  <eggert@cs.ucla.edu>
21642
21643         Sync from cvs.
21644         * m4/glob.m4: s/MISSING_SYS_CDEFS_H/_SYS_CDEFS_H/ and comment.
21645
21646 2005-05-31  Derek Price  <derek@ximbiot.com>
21647             Paul Eggert  <eggert@cs.ucla.edu>
21648
21649         Sync from cvs.
21650         * lib/glob_.h: s/MISSING_SYS_CDEFS_H/_SYS_CDEFS_H/ and comment.
21651
21652 2005-05-29  Derek Price  <derek@ximbiot.com>
21653
21654         * config/srclist.txt (glob_.h, glob.c): Add these files.
21655
21656 2005-05-29  Derek Price  <derek@ximbiot.com>
21657
21658         * MODULES.html.sh: Add glob to Enhanced POSIX.2001 section.
21659         * modules/glob: New file.
21660         * modules/getlogin_r: Add link to POSIX spec in description.
21661
21662 2005-05-29  Derek Price  <derek@ximbiot.com>
21663             Paul Eggert  <eggert@cs.ucla.edu>
21664
21665         * m4/glob.m4: New file.
21666
21667 2005-05-29  Derek Price  <derek@ximbiot.com>
21668             Paul Eggert  <eggert@cs.ucla.edu>
21669
21670         * lib/glob_.h, lib/glob.c: New files.
21671
21672 2005-05-27  Paul Eggert  <eggert@cs.ucla.edu>
21673
21674         * modules/fts (Files): Remove m4/inttypes-pri.m4.
21675         * modules/fts-lgpl (Depends-on): Remove gettext.
21676
21677 2005-05-27  Paul Eggert  <eggert@cs.ucla.edu>
21678
21679         * m4/fts.m4 (gl_FUNC_FTS_CORE): Don't check for inttypes.h or stdint.h,
21680         and don't require gt_INTTYPES_PRI.
21681
21682 2005-05-27  Paul Eggert  <eggert@cs.ucla.edu>
21683
21684         * lib/getlogin_r.c (getlogin_r): Don't set errno to 0 on return.
21685
21686         * lib/fts.c: Don't worry about debugging on pre-C99-compatible hosts;
21687         the configuration hassle isn't worth it.
21688         Include inttypes.h and stdint.h unconditionally if FTS_DEBUG.
21689         (LONGEST_MODIFIER, PRIuMAX): Remove.
21690
21691 2005-05-27  Bruno Haible  <bruno@clisp.org>
21692
21693         * lib/getlogin_r.h: Remove second include of <stddef.h>.
21694
21695 2005-05-26  Paul Eggert  <eggert@cs.ucla.edu>
21696
21697         * m4/extensions.m4 (gl_USE_SYSTEM_EXTENSIONS): Define
21698         _POSIX_PTHREAD_SEMANTICS for Solaris.
21699
21700 2005-05-25  Derek Price  <derek@ximbiot.com>
21701
21702         * MODULES.html.sh: Add getlogin_r to POSIX.2001 support section.
21703
21704 2005-05-25  Derek Price  <derek@ximbiot.com>
21705             Paul Eggert  <eggert@cs.ucla.edu>
21706
21707         * modules/getlogin_r, m4/getlogin_r.m4: New files.
21708         * lib/getlogin_r.c, getlogin_r.h: New files.
21709
21710 2005-05-25  Bruno Haible  <bruno@clisp.org>
21711             Derek Price  <derek@ximbiot.com>
21712
21713         * lib/getlogin_r.h: Simplify API documentation.
21714
21715 2005-05-23  Derek Price  <derek@ximbiot.com>
21716
21717         * modules/minmax (Files): Add m4/minmax.m4.
21718         (configure.ac): Add gl_MINMAX.
21719
21720 2005-05-22  Paul Eggert  <eggert@cs.ucla.edu>
21721
21722         * lib/fts.c (fd_safer) [_LGPL_PACKAGE]: New static function,
21723         so that unistd-safer.h (GPL'ed code) need not be included.
21724
21725 2005-05-22  Bruno Haible  <bruno@clisp.org>
21726
21727         * m4/minmax.m4: New file.
21728         Based on a patch by Derek Price <derek@ximbiot.com>.
21729
21730 2005-05-22  Bruno Haible  <bruno@clisp.org>
21731
21732         * lib/stdint_.h (_STDINT_H_HAVE_INT64): New macro. Use it in #ifdefs.
21733         (INT64_MIN): Fix definition.
21734         Suggested by Paul Eggert <eggert@cs.ucla.edu>.
21735
21736         * lib/stdint_.h (_STDINT_H_NEED_SIGNED_INT_TYPES): Renamed from
21737         NEED_SIGNED_INT_TYPES.
21738
21739         * lib/stdint_.h (_STDINT_H_HAVE_SYSTEM_INTTYPES): Renamed from
21740         HAVE_SYSTEM_INTTYPES.
21741
21742 2005-05-22  Bruno Haible  <bruno@clisp.org>
21743
21744         * lib/minmax.h: Include <limits.h> only when it defines MIN, MAX.
21745         Also include <sys/param.h> if it defines MIN, MAX.
21746         Based on a patch by Derek Price <derek@ximbiot.com>.
21747
21748 2005-05-21  Jim Meyering  <jim@meyering.net>
21749
21750         * modules/fts (Files): Add m4/inttypes-pri.m4.
21751         (Depends-on): Add lstat and remove gettext.  Alphabetize.
21752
21753 2005-05-20  Paul Eggert  <eggert@cs.ucla.edu>
21754
21755         New fts module.
21756         * lib/fts.c: Don't include "cycle-check.h" or "hash.h".
21757         (setup_dir, free_dir): New functions.
21758         (enter_dir, leave_dir): Define trivial
21759         alternatives of _LGPL_PACKAGE.  Move to fts-cycle.c if !_LGPL_PACKAGE.
21760         (HT_INITIAL_SIZE, ENTER_DIR): Remove.  All uses removed.
21761         (LEAVE_DIR): Fix typo: pass Fts and Ent to leave_dir.
21762         (struct Active_dir, AD_compare, AD_hash, enter_dir, leave_dir):
21763         Move to fts-cycle.c.
21764         (fts_open): Use setup_dir.
21765         (fts_close): Use free_dir.
21766         (fts_read): Have just one copy of the ENTER_DIR code rather than three.
21767         This adds a label and some gotos, but the alternatives were messier.
21768         Check for memory allocation failure when entering a dir.
21769         (fts_stat) [_LGPL_PACKAGE]: Bring back glibc cycle detection code.
21770         * lib/fts_.h (_LGPL_PACKAGE) [defined _LIBC]: New macro.
21771         (FTS): New member fts_cycle, that is a union that contains the
21772         old active_dir_ht and cycle_state.  All uses changed to mention
21773         fts_cycle.ht and fts_cycle.state.
21774         * lib/fts-cycle.c: New file, containing GPL'ed code migrated out of
21775         fts.c, with the following changes:
21776         (setup_dir, free_dir): New functions.
21777         (enter_dir): Now returns bool.  Return true if successful, false
21778         if memory exhausted.  All callers changed.
21779         Do not bother partly cleaning up on
21780         memory allocation failure; that is free_dir's job.
21781         However, free ad if hash_insert fails, to avoid memory leak.
21782         (enter_dir, leave_dir): Accommodate change to FTS by inspecting
21783         fts->fts_options to see which union member to use.
21784
21785 2005-05-20  Paul Eggert  <eggert@cs.ucla.edu>
21786
21787         * m4/fts.m4 (gl_FUNC_FTS_CORE): Renamed from gl_FUNC_FTS.
21788         (gl_FUNC_FTS, gl_FUNC_FTS_LGPL): New macros.
21789
21790 2005-05-20  Paul Eggert  <eggert@cs.ucla.edu>
21791
21792         * MODULES.html.sh (File system functions): Add fts, fts-lgpl.
21793
21794 2005-05-20  Jim Meyering  <jim@meyering.net>
21795
21796         * lib/unlinkdir.h (cannot_unlink_dir) [UNLINK_CANNOT_UNLINK_DIR]:
21797         Now a macro, to pacify GCC.
21798
21799 2005-05-20  Eric Blake  <ebb9@byu.net>  (tiny change)
21800
21801         * m4/chown.m4 (gl_FUNC_CHOWN): Correct sense of test for honoring IDs
21802         of -1.
21803
21804 2005-05-20  Eric Blake  <ebb9@byu.net>  (tiny change)
21805
21806         * lib/chown.c (rpl_chown): Return -1 on failure.
21807
21808 2005-05-18  Paul Eggert  <eggert@cs.ucla.edu>
21809
21810         * m4/canonicalize.m4 (AC_FUNC_CANONICALIZE_FILE_NAME]):
21811         Don't check for stddef.h.
21812         * m4/fts.m4 (gl_FUNC_FTS): Don't require AC_HEADER_STDC, as we
21813         don't use its results.
21814         Don't check for fcntl.h, stddef.h, stdlib.h, string.h, unistd.h,
21815         since we include them unconditionally.  Don't require
21816         AM_STDBOOL_H, since stdbool is a prerequisite.
21817         Don't require AC_C_CONST, AC_TYPE_SIZE_T or check for ptrdiff_t
21818         since we assume C89 or better.
21819         Don't require AC_FUNC_CLOSEDIR_VOID, AC_FUNC_LSTAT, or AC_FUNC_STAT,
21820         as we don't use their results.
21821         Don't check for fchdir, memmove, memset, strrchr, as we use
21822         them unconditionally.
21823         * m4/gettimeofday.m4 (AC_FUNC_GETTIMEOFDAY_CLOBBER): Don't define
21824         GETTIMEOFDAY_CLOBBERS_LOCALTIME_BUFFER, since nobody uses it.
21825
21826 2005-05-18  Paul Eggert  <eggert@cs.ucla.edu>
21827
21828         * lib/canonicalize.c: Include canonicalize.h first, to test interface.
21829         Include <stddef.h> unconditionally, since we assume C89 now.
21830         All uses of PTR_INT_TYPE replaced by ptrdiff_t.
21831         * lib/fts.c: Include fts_.h first, to check interface.
21832         Do not include intprops.h; no longer needed.
21833         Include cycle-check.h and hash.h, since fts_.h no longer does.
21834         Remove unnecessary casts of closedir to void.
21835         (fts_build): Use a simpler method (not involving TYPE_SIGNED) to
21836         decide whether to decrement nlinks.
21837         * lib/fts_.h: Do not include hash.h or cycle-check.h; no longer needed.
21838         (FTS): Use struct hash_table * instead of Hash_table, so that
21839         we no longer need to include hash.h here.
21840
21841 2005-05-18  Jim Meyering  <jim@meyering.net>
21842
21843         * modules/dirfd (License): Change to LGPL.  Most of the code
21844         is already in the public domain.
21845
21846 2005-05-18  Jim Meyering  <jim@meyering.net>
21847
21848         * m4/fts.m4 (AC_LIBSOURCES): Add intprops.h to the list.
21849         Reported by Yoann Vandoorselaere.
21850
21851 2005-05-17  Jim Meyering  <jim@meyering.net>
21852
21853         * m4/fts.m4: New file, from coreutils.
21854
21855 2005-05-17  Jim Meyering  <jim@meyering.net>
21856
21857         * lib/fts.c, lib/fts_.h: New files, from coreutils.
21858
21859 2005-05-14  Paul Eggert  <eggert@cs.ucla.edu>
21860
21861         Sync from coreutils.
21862         * m4/unlinkdir.m4: New file.
21863
21864 2005-05-14  Paul Eggert  <eggert@cs.ucla.edu>
21865
21866         Sync from coreutils.
21867         * lib/unlinkdir.c, lib/unlinkdir.h: New files.
21868         * lib/gethrxtime.c, lib/gethrxtime.h, lib/getpass.h, lib/mountlist.h,
21869         lib/path-concat.c, lib/regex.h, lib/unlocked-io.h, lib/xtime.h:
21870         White space changes only.
21871         * lib/makepath.c (make_path): Port to hosts where leading "//" is
21872         special.
21873         * lib/yesno.c: Include getline.h, not ctype.h.
21874         (yesno): Don't remove leading white space; POSIX doesn't allow it.
21875         Use getline to remove arbitrary restriction on response length.
21876
21877 2005-05-14  Paul Eggert  <eggert@cs.ucla.edu>
21878
21879         * config/srclist-update: Spell out "Street" in FSF postal
21880         mail address; this is the style the FSF seems to prefer.
21881
21882         * build-aux/depcomp, build-aux/install-sh, build-aux/mdate-sh,
21883         build-aux/missing, build-aux/mkinstalldirs: Sync from Automake;
21884         this updates FSF postal mail address.
21885
21886         Sync from coreutils.
21887         * modules/unlinkdir: New file.
21888         * modules/yesno (Depends-on): Add getline.
21889         * MODULES.html.sh (File system functions): Add unlinkdir.
21890
21891 2005-05-13  Paul Eggert  <eggert@cs.ucla.edu>
21892
21893         * lib/byteswap_.h, lib/getsubopt.h, lib/iconvme.h, lib/strsep.c,
21894         lib/strsep.h:
21895         Change the initial comment to refer to GPL, not LGPL.
21896         gnulib-tool will change it to LGPL as needed.
21897
21898         * lib/__fpending.c, lib/acl.c, lib/acl.h, lib/alloca_.h, lib/allocsa.c,
21899         lib/allocsa.h, lib/argmatch.c, lib/argmatch.h, lib/argp-ba.c,
21900         lib/argp-eexst.c, lib/argp-fmtstream.c, lib/argp-fmtstream.h,
21901         lib/argp-fs-xinl.c, lib/argp-help.c, lib/argp-namefrob.h,
21902         lib/argp-parse.c, lib/argp-pv.c, lib/argp-pvh.c, lib/argp-xinl.c,
21903         lib/argp.h, lib/argz.c, lib/argz_.h, lib/asnprintf.c, lib/asprintf.c,
21904         lib/atanl.c, lib/backupfile.c, lib/backupfile.h, lib/base64.c,
21905         lib/base64.h, lib/basename.c, lib/binary-io.h, lib/byteswap_.h,
21906         lib/c-ctype.c, lib/c-ctype.h, lib/c-stack.c, lib/c-stack.h,
21907         lib/c-strtod.c, lib/calloc.c, lib/canon-host.c, lib/canonicalize.c,
21908         lib/canonicalize.h, lib/ceill.c, lib/chdir-long.c, lib/chdir-long.h,
21909         lib/chown.c, lib/classpath.c, lib/classpath.h, lib/cloexec.c,
21910         lib/closeout.c, lib/closeout.h, lib/concatpath.c, lib/config.charset,
21911         lib/copy-file.c, lib/copy-file.h, lib/cycle-check.c, lib/cycle-check.h,
21912         lib/diacrit.c, lib/diacrit.h, lib/dirfd.c, lib/dirfd.h, lib/dirname.c,
21913         lib/dirname.h, lib/dummy.c, lib/dup-safer.c, lib/dup2.c, lib/eealloc.h,
21914         lib/error.c, lib/error.h, lib/euidaccess.c, lib/exclude.c,
21915         lib/exclude.h, lib/execute.c, lib/execute.h, lib/exit.h,
21916         lib/exitfail.c, lib/exitfail.h, lib/expl.c, lib/fatal-signal.c,
21917         lib/fatal-signal.h, lib/fd-safer.c, lib/file-type.c, lib/file-type.h,
21918         lib/fileblocks.c, lib/filemode.c, lib/filemode.h, lib/findprog.c,
21919         lib/findprog.h, lib/floorl.c, lib/fnmatch.c, lib/fnmatch_.h,
21920         lib/fnmatch_loop.c, lib/fopen-safer.c, lib/free.c, lib/frexpl.c,
21921         lib/fsusage.c, lib/fsusage.h, lib/full-read.c, lib/full-read.h,
21922         lib/full-write.c, lib/full-write.h, lib/fwriteerror.c,
21923         lib/fwriteerror.h, lib/gai_strerror.c, lib/gcd.c, lib/gcd.h,
21924         lib/getaddrinfo.c, lib/getaddrinfo.h, lib/getcwd.c, lib/getcwd.h,
21925         lib/getdate.h, lib/getdate.y, lib/getdomainname.c, lib/getdomainname.h,
21926         lib/getgroups.c, lib/gethostname.c, lib/gethrxtime.c, lib/gethrxtime.h,
21927         lib/getline.c, lib/getline.h, lib/getloadavg.c, lib/getndelim2.c,
21928         lib/getndelim2.h, lib/getnline.c, lib/getnline.h, lib/getopt.c,
21929         lib/getopt1.c, lib/getopt_.h, lib/getopt_int.h, lib/getpagesize.h,
21930         lib/getpass.c, lib/getpass.h, lib/getsubopt.c, lib/getsubopt.h,
21931         lib/gettext.h, lib/gettime.c, lib/gettimeofday.c, lib/getugroups.c,
21932         lib/getusershell.c, lib/group-member.c, lib/group-member.h,
21933         lib/hard-locale.c, lib/hard-locale.h, lib/hash-pjw.c, lib/hash-pjw.h,
21934         lib/hash.c, lib/hash.h, lib/human.c, lib/human.h, lib/iconvme.c,
21935         lib/iconvme.h, lib/idcache.c, lib/inet_ntop.h, lib/intprops.h,
21936         lib/inttostr.c, lib/inttostr.h, lib/isdir.c, lib/javacomp.c,
21937         lib/javacomp.h, lib/javacomp.sh.in, lib/javaexec.c, lib/javaexec.h,
21938         lib/javaexec.sh.in, lib/lbrkprop.h, lib/lchown.c, lib/ldexpl.c,
21939         lib/linebreak.c, lib/linebreak.h, lib/linebuffer.c, lib/linebuffer.h,
21940         lib/localcharset.c, lib/localcharset.h, lib/logl.c, lib/long-options.c,
21941         lib/long-options.h, lib/lstat.c, lib/makepath.c, lib/makepath.h,
21942         lib/malloc.c, lib/mathl.h, lib/mbswidth.c, lib/mbswidth.h, lib/md5.c,
21943         lib/md5.h, lib/memcasecmp.c, lib/memcasecmp.h, lib/memchr.c,
21944         lib/memcmp.c, lib/memcoll.c, lib/memcoll.h, lib/memcpy.c, lib/memmem.c,
21945         lib/memmem.h, lib/mempcpy.c, lib/mempcpy.h, lib/memrchr.c,
21946         lib/memrchr.h, lib/memset.c, lib/minmax.h, lib/mkdir.c, lib/mkdtemp.c,
21947         lib/mkdtemp.h, lib/mkstemp.c, lib/mktime.c, lib/modechange.c,
21948         lib/modechange.h, lib/mountlist.c, lib/mountlist.h, lib/nanosleep.c,
21949         lib/obstack.c, lib/obstack.h, lib/openat.c, lib/openat.h,
21950         lib/pagealign_alloc.c, lib/pagealign_alloc.h, lib/path-concat.c,
21951         lib/path-concat.h, lib/pathmax.h, lib/pathname.h, lib/physmem.c,
21952         lib/physmem.h, lib/pipe.c, lib/pipe.h, lib/poll.c, lib/poll_.h,
21953         lib/posixtm.c, lib/posixtm.h, lib/posixver.c, lib/printf-args.c,
21954         lib/printf-args.h, lib/printf-parse.c, lib/printf-parse.h,
21955         lib/progname.c, lib/progname.h, lib/progreloc.c, lib/putenv.c,
21956         lib/quote.c, lib/quote.h, lib/quotearg.c, lib/quotearg.h, lib/raise.c,
21957         lib/readlink.c, lib/readtokens.c, lib/readtokens.h, lib/readtokens0.c,
21958         lib/readtokens0.h, lib/readutmp.c, lib/readutmp.h, lib/realloc.c,
21959         lib/ref-add.sin, lib/ref-del.sin, lib/regex.c, lib/regex.h,
21960         lib/rename.c, lib/rmdir.c, lib/rpmatch.c, lib/safe-read.c,
21961         lib/safe-read.h, lib/safe-write.c, lib/safe-write.h, lib/same.c,
21962         lib/same.h, lib/save-cwd.c, lib/save-cwd.h, lib/savedir.c,
21963         lib/savedir.h, lib/setenv.c, lib/setenv.h, lib/settime.c,
21964         lib/sh-quote.c, lib/sh-quote.h, lib/sha1.c, lib/sha1.h, lib/sig2str.c,
21965         lib/sig2str.h, lib/sincosl.c, lib/snprintf.c, lib/snprintf.h,
21966         lib/sqrtl.c, lib/stat-macros.h, lib/stat.c, lib/stdbool_.h,
21967         lib/stdint_.h, lib/stdio-safer.h, lib/stpcpy.c, lib/stpcpy.h,
21968         lib/stpncpy.c, lib/stpncpy.h, lib/strcase.h, lib/strcasecmp.c,
21969         lib/strchrnul.c, lib/strchrnul.h, lib/strcspn.c, lib/strdup.c,
21970         lib/strdup.h, lib/strerror.c, lib/strftime.c, lib/strftime.h,
21971         lib/stripslash.c, lib/strndup.c, lib/strndup.h, lib/strnlen.c,
21972         lib/strpbrk.c, lib/strpbrk.h, lib/strsep.c, lib/strsep.h, lib/strstr.c,
21973         lib/strstr.h, lib/strtod.c, lib/strtoimax.c, lib/strtok_r.c,
21974         lib/strtok_r.h, lib/strtol.c, lib/strtoll.c, lib/strtoul.c,
21975         lib/strtoull.c, lib/strverscmp.c, lib/strverscmp.h, lib/sysexit_.h,
21976         lib/tempname.c, lib/time_r.c, lib/time_r.h, lib/timegm.c, lib/timegm.h,
21977         lib/timespec.h, lib/trigl.c, lib/trigl.h, lib/ucs4-utf16.h,
21978         lib/ucs4-utf8.h, lib/unicodeio.c, lib/unicodeio.h, lib/unistd-safer.h,
21979         lib/unlocked-io.h, lib/unsetenv.c, lib/userspec.c, lib/utf16-ucs4.h,
21980         lib/utf8-ucs4.h, lib/utime.c, lib/utimecmp.c, lib/utimecmp.h,
21981         lib/utimens.c, lib/vasnprintf.c, lib/vasnprintf.h, lib/vasprintf.c,
21982         lib/vasprintf.h, lib/version-etc-fsf.c, lib/version-etc.c,
21983         lib/version-etc.h, lib/vsnprintf.c, lib/vsnprintf.h, lib/w32spawn.h,
21984         lib/wait-process.c, lib/wait-process.h, lib/xalloc-die.c, lib/xalloc.h,
21985         lib/xallocsa.c, lib/xallocsa.h, lib/xasprintf.c, lib/xgetcwd.c,
21986         lib/xgetcwd.h, lib/xgetdomainname.c, lib/xgetdomainname.h,
21987         lib/xgethostname.c, lib/xmalloc.c, lib/xmemcoll.c, lib/xnanosleep.c,
21988         lib/xreadlink.c, lib/xreadlink.h, lib/xsetenv.c, lib/xsetenv.h,
21989         lib/xsize.h, lib/xstrndup.c, lib/xstrndup.h, lib/xstrtod.c,
21990         lib/xstrtod.h, lib/xstrtoimax.c, lib/xstrtol.c, lib/xstrtol.h,
21991         lib/xstrtoumax.c, lib/xtime.h, lib/xvasprintf.c, lib/xvasprintf.h,
21992         lib/yesno.c, lib/yesno.h:
21993         Update FSF postal mail address.
21994
21995 2005-05-13  Paul Eggert  <eggert@cs.ucla.edu>
21996
21997         * MODULES.html.sh, README, gnulib-tool, tests/test-base64.c,
21998         tests/test-memmem.c, tests/test-stpncpy.c:
21999         Update FSF postal mail address.
22000
22001 2005-05-13  Bruno Haible  <bruno@clisp.org>
22002
22003         * lib/stdint_.h (int64_t, uint64_t, int_least64_t, uint_least64_t,
22004         int_fast64_t, uint_fast64_t, intmax_t, uintmax_t, INT64_MIN, INT64_MAX,
22005         UINT64_MAX, INT_LEAST64_MIN, INT_LEAST64_MAX, UINT_LEAST64_MAX,
22006         INT_FAST64_MIN, INT_FAST64_MAX, UINT_FAST64_MAX, INTMAX_MIN,
22007         INTMAX_MAX, UINTMAX_MAX, INT64_C, UINT64_C, INTMAX_C, UINTMAX_C):
22008         Add support for 64-bit integers in the MSVC compiler.
22009
22010 2005-05-12  Sergey Poznyakoff  <gray@Mirddin.farlep.net>
22011
22012         * modules/getdate (Makefile.am): Add getdate.c to EXTRA_DIST
22013
22014 2005-05-12  Eric Blake  <ebb9@byu.net>  (tiny change)
22015
22016         * gnulib-tool (func_import): Sort and uniquify recommended includes.
22017
22018 2005-05-11  Paul Eggert  <eggert@cs.ucla.edu>
22019
22020         * doc/getdate.texi (General date syntax): Don't say that date
22021         date --iso-8601=ns generates acceptable dates; it doesn't yet.
22022         Problem reported by Nic Ferrier.
22023
22024 2005-05-10  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
22025
22026         * lib/getaddrinfo.c: Don't fail when SOCK_STREAM or SOCK_DGRAM are
22027         specified in ai_socktype. Fix invalid ai_protocol
22028         check. ai_protocol is usually set to 0 or depending on
22029         ai_family/ai_socktype to IPPROTO_TCP / IPPROTO_UDP.  Checking for
22030         SOCK_STREAM / SOCK_DGRAM in ai_protocol was invalid.  Set
22031         ai_socktype / ai_protocol in the returned addrinfo structure.
22032
22033 2005-05-10  Simon Josefsson  <jas@extundo.com>
22034
22035         * m4/getaddrinfo.m4: Look in libnsl/libsocket for getaddrinfo, from
22036         Yoann Vandoorselaere <yoann.v@prelude-ids.com>.
22037
22038 2005-05-10  Karl Berry  <karl@gnu.org>
22039
22040         * doc/fdl.texi, gpl.texi, lgpl.texi, COPYING: update FSF address
22041         (from http://www.gnu.org/licenses).
22042         * doc/COPYING.LIB: also rename to COPYING.LESSER.
22043         * doc/COPYING.DOC: remove; per rms, only needed in doc files, so
22044         fdl.texi suffices.
22045
22046 2005-05-10  Karl Berry  <karl@gnu.org>
22047
22048         * config/srclist.txt (COPYING.LESSER): rename from COPYING.LIB.
22049         (COPYING.DOC): remove.
22050
22051         * config/srclist-update: new FSF address.
22052
22053 2005-05-10  Derek Price  <derek@ximbiot.com>
22054
22055         * m4/getopt.m4 (gl_GETOPT): Check for Solaris 10 bug, not decl, when
22056         possible.
22057
22058 2005-05-09  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
22059             Bruno Haible  <bruno@clisp.org>
22060
22061         * modules/inet_ntop: New file.
22062         * MODULES.html.sh (Support for systems lacking POSIX:2001): Add
22063         inet_ntop.
22064
22065 2005-05-09  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
22066             Bruno Haible  <bruno@clisp.org>
22067
22068         * m4/inet_ntop.m4: New file.
22069
22070 2005-05-09  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
22071             Bruno Haible  <bruno@clisp.org>
22072
22073         * lib/inet_ntop.h: New file.
22074         * lib/inet_ntop.c: New file, from glibc with modifications.
22075
22076 2005-05-09  Paul Eggert  <eggert@cs.ucla.edu>
22077
22078         * modules/time_r (License): Change to LGPL.
22079         * modules/extensions (License): Change to LGPL.  Actually,
22080         the license is more permissive than that, but currently gnulib-tool
22081         doesn't know how to handle more-permissive licenses.
22082
22083         * modules/stat-macros (Depends-on): Don't depend on stat-macros (!).
22084         Problem reported by Dave Love.
22085
22086 2005-05-08  Jim Meyering  <jim@meyering.net>
22087
22088         * lib/classpath.c (PATH_SEPARATOR): Remove insignificant trailing
22089         blank.
22090
22091 2005-05-06  Paul Eggert  <eggert@cs.ucla.edu>
22092
22093         * modules/argmatch (Depends-on): Add stdbool.
22094         * modules/backupfile (Depends-on): Likewise.
22095         * modules/chdir-long (Depends-on): Likewise.
22096         * modules/closeout (Depends-on): Likewise.
22097         * modules/cycle-check (Depends-on): Likewise.
22098         * modules/dirname (Depends-on): Likewise.
22099         * modules/fnmatch (Depends-on): Likewise.
22100         * modules/fsusage (Depends-on): Likewise.
22101         * modules/fwriteerror (Depends-on): Likewise.
22102         * modules/getcwd (Depends-on): Likewise.
22103         * modules/getloadavg (Depends-on): Likewise.
22104         * modules/hard-locale (Depends-on): Likewise.
22105         * modules/makepath (Depends-on): Likewise.
22106         * modules/mountlist (Depends-on): Likewise.
22107         * modules/nanosleep (Depends-on): Likewise.
22108         * modules/posixtm (Depends-on): Likewise.
22109         * modules/quotearg (Depends-on): Likewise.
22110         * modules/readtokens (Depends-on): Likewise.
22111         * modules/readtokens0 (Depends-on): Likewise.
22112         * modules/readutmp (Depends-on): Likewise.
22113         * modules/save-cwd (Depends-on): Likewise.
22114         * modules/strftime (Depends-on): Likewise.
22115         * modules/userspec (Depends-on): Likewise.
22116         * modules/utimecmp (Depends-on): Likewise.
22117         * modules/xgetcwd (Depends-on): Likewise.
22118         * modules/xnanosleep (Depends-on): Likewise.
22119         * modules/xstrtod (Depends-on): Likewise.
22120         * modules/yesno (Depends-on): Likewise.
22121
22122 2005-05-05  Paul Eggert  <eggert@cs.ucla.edu>
22123
22124         * m4/getopt.m4 (gl_GETOPT): Check for Solaris 10 getopt, and avoid
22125         needless checks.
22126
22127 2005-05-01  Paul Eggert  <eggert@cs.ucla.edu>
22128
22129         Merge from coreutils.  Among other things,
22130         add bulletproofing for cases where stdin, stdout, or stderr are closed.
22131         * lib/fd-safer.c: New file.
22132         * lib/fcntl-safer.h, open-safer.c: Remove.
22133         * lib/chdir-long.c: Fix comment "fetish" -> "coreutils".
22134         * lib/dup-safer.c: Include unistd-safer.h first.
22135         Don't include errno.h.
22136         (dup_safer) [!defined F_DUPFD]: Let fd_safer do the real work.
22137         * lib/file-type.h: Don't assume invoker included sys/stat.h first.
22138         * lib/file-type.c: Rely on file-type.h change.
22139         * lib/getloadavg.c: Include unistd-safer.h.
22140         (getloadavg): Use safer open.
22141         * lib/getusershell.c: Include "stdio-safer.h".
22142         (getusershell): Use safer fopen.
22143         * lib/long-options.c (long_options): Use NULL rather than 0.
22144         * lib/modechange.h (mode_free): Remove; all callers changed to invoke
22145         'free'.
22146         * lib/modechange.c: Likewise.
22147         xstrtol.h, stdbool.h, stddef.h: Don't include; no longer needed.
22148         (MODE_DONE): New constant.
22149         (struct mode_change): Remove 'next' member.
22150         (make_node_op_equals): New function; like the old one of the
22151         same name, except it allocates an array.
22152         (mode_compile, mode_create_from_ref): Use it.
22153         (mode_compile): Allocate result as an array, not a linked list.
22154         Parse octal string ourself, so that we catch mistakes like "+0".
22155         (mode_adjust): Arg is an array, not a linked list.
22156         * lib/modechange.c: Include stat-macros.h, xalloc.h.
22157         (S_ISDIR, S_ISUID, S_ISGID, S_ISVTX, S_IRUSR, S_IWUSR, S_IXUSR):
22158         (S_IRGRP, S_IWGRP, S_IXGRP, S_IROTH, S_IWOTH, S_IXOTH, S_IRXWU):
22159         (S_IRWXG, S_IRWXO, CHMOD_MODE_BITS):
22160         Remove.  This is now stat-macros.h's job.
22161         (talloc): Remove.  All callers replaced by xalloc, so that
22162         our invokers don't have to worry about reporting memory failures.
22163         (make_node_op_equals): Remove.
22164         (MODE_ORDINARY_CHAGE, MODE_X_IF_ANY_X, MODE_COPY_EXISTING):
22165         New constants.
22166         (struct mode_change): Moved here from modechange.h.
22167         (mode_append_entry): Remove.
22168         (mode_compile): Remove MASKED_OPS arg, since it encouraged
22169         apps to have incorrect behavior.  Use simpler algorithm for head
22170         and tail.  Don't futz with umask; that's now the job of mode_adjust.
22171         Detect more invalid usages rather than having somewhat-random behavior.
22172         Don't insert an "a=" action, as that leads to incorrect behavior.
22173         (mode_compile, mode_create_from_ref): Return NULL on error instead
22174         of an enum, since now there's only one way to have an error.  All
22175         callers changed.
22176         (mode_adjust): Accept new arg UMASK_VALUE, and interpret it
22177         at the correct time.  Simplify calculation of "+u" and its ilk.
22178         Don't mishandle "+X".
22179         (mode_free): Remove "register" and localize decls.
22180         * lib/modechange.h (MODE_X_IF_ANY_X, MODE_COPY_EXISTING):
22181         (struct mode_change): Move to modechange.c; callers don't
22182         need to see this stuff.
22183         (MODE_MASK_EQUALS, MODE_MASK_PLUS, MODE_MASK_MINUS, MODE_MASK_ALL):
22184         (MODE_INVALID, MODE_MEMORY_EXHAUSTED, MODE_BAD_REFERENCE): Remove.
22185         (mode_change, mode_adjust): Reflect the new signatures noted above.
22186         * lib/nanosleep.c (rpl_nanosleep): Include "timespec.h" before macros
22187         that might redefine system include files.
22188         (siginterrupt) [!HAVE_SIGINTERRUPT]: New macro.
22189         (my_usleep): Use NULL rather than (void *) 0.
22190         (rpl_nanosleep) [!defined SA_NOCLDSTOP]:
22191         Use siginterrupt to specify that system calls should be interrupted.
22192         (rpl_nanosleep): Move initialization of suspended closer to call of
22193         my_usleep.
22194         * lib/readutmp.h (read_utmp): New arg OPTIONS.  All uses changed.
22195         * lib/readutmp.c: Likewise.  Include signal.h, stdbool.h.
22196         (desirable_utmp_entry): New function.
22197         (read_utmp) [defined UTMP_NAME_FUNCTION]: Redo memory allocation
22198         using x2nrealloc, to simplify logic.
22199         (read_utmp) [!defined UTMP_NAME_FUNCTION]: Check for overflow in
22200         size calculation.  Do not assume utmp file is a regular file.
22201         * lib/readutmp.h (UT_PID): Moved here from ../src/who.c.
22202         (READ_UTMP_CHECK_PIDS): New constant.
22203         * lib/save-cwd.c: Include unistd-safer.h.
22204         (save_cwd): Use fd_safer.
22205         * lib/tempname.c (S_ISDIR, S_IRUSR, S_IRUSR, S_IWUSR, S_IXUSR): Remove.
22206         [!_LIBC] Include "stat-macros.h" instead.
22207         * lib/unistd-safer.h (fd_safer): New decl.
22208
22209 2005-05-01  Paul Eggert  <eggert@cs.ucla.edu>
22210
22211         * modules/getloadavg (Depends-on): Add unistd-safer.
22212         * modules/getusershell (Depends-on): Add stdio-safer.
22213         * modules/lstat (Depends-on): Remove xalloc.
22214         * modules/mkstemp (Depends-on): Add stat-macros.
22215         * modules/modechange (Depends-on): Remove xstrtol.
22216         Add stat-macros, xalloc.
22217         * modules/save-cwd (Depends-on): Add unistd-safer.
22218         * modules/stdio-safer (Makefile.am): Remove lib_SOURCES.
22219         * modules/unistd-safer (Files): Add lib/fd-safer.c
22220         (Makefile.am): Remove lib_SOURCES.
22221
22222         * MODULES.html.sh (Enhancements for POSIX:2001 functions):
22223         Remove fcntl-safer; unistd-safer supersedes it.
22224
22225 2005-05-01  Paul Eggert  <eggert@cs.ucla.edu>
22226
22227         * m4/euidaccess.m4 (gl_PREREQ_EUIDACCESS): Don't require
22228         AC_HEADER_STAT.
22229         * m4/lchown.m4 (gl_FUNC_CHOWN): Likewise.
22230         (gl_PREREQ_CHOWN): Remove.
22231         * m4/lstat.m4 (gl_FUNC_LSTAT): Require AC_FUNC_LSTAT instead of calling
22232         it.  Don't require AC_HEADER_STAT.
22233         (gl_PREREQ_LSTAT): Remove.
22234         * m4/mkstemp.m4 (gl_PREREQ_TEMPNAME): Check stdint.h only once.
22235         Don't require AC_HEADER_STAT.
22236         * m4/rmdir.m4 (gl_FUNC_RMDIR): Don't require AC_HEADER_STAT.
22237         (gl_PREREQ_RMDIR): Remove.
22238         * m4/canonicalize.m4 (AC_FUNC_CANONICALIZE_FILE_NAME): Don't
22239         mention stat-macros.h or AC_HEADER_STAT, since we'll make
22240         the stat-macros module a prerequisite.
22241         * m4/file-type.m4 (gl_FILE_TYPE): Likewise.
22242         * m4/filemode.m4 (gl_FILEMODE): Likewise.
22243         * m4/makepath.m4 (gl_MAKEPATH): Likewise.
22244         * m4/modechange.m4 (gl_MODECHANGE): Likewise.
22245         * m4/clock_time.m4 (gl_CLOCK_TIME): Use gl_ rather than fetish_ for
22246         variable names.
22247         * m4/rmdir-errno.m4 (gl_FUNC_RMDIR_NOTEMPTY): Renamed from
22248         fetish_FUNC_RMDIR_NOTEMPTY.  All uses changed.  Use gl_ for
22249         variable prefixes.
22250         * m4/fcntl-safer.m4: Remove.
22251         * m4/stdio-safer.m4 (gl_STDIO_SAFER): Use AC_LIBSOURCES and AC_LIBOBJ.
22252         * m4/unistd-safer.m4 (gl_UNISTD_SAFER): Likewise.
22253         Invoke gl_PREREQ_FD_SAFER.
22254         (gl_PREREQ_FD_SAFER): New macro.
22255         * m4/nanosleep.m4 (gl_PREREQ_NANOSLEEP): Check for siginterrupt.
22256         * m4/readutmp.m4 (gl_READUTMP): Require AC_C_INLINE.
22257         Use AC_CHECK_HEADERS_ONCE and AC_CHECK_FUNCS_ONCE when possible.
22258         Remove duplicate call to AC_LIBOBJ(readutmp).
22259         (gl_PREREQ_READUTMP): Remove.  All uses inlined.
22260
22261         * m4/mmap-anon.m4 (gl_FUNC_MMAP_ANON): Check for message, not for
22262         MAP_ANON.  Problem reported by Moriyoshi Koizumi to bug-cvs.
22263
22264 2005-05-01  Paul Eggert  <eggert@cs.ucla.edu>
22265
22266         * MODULES.html.sh (Misc): Add byteswap.
22267
22268 2005-05-01  Oskar Liljeblad  <oskar@osk.mine.nu>
22269
22270         * modules/getcwd (Depends-on): Add extensions.
22271         * modules/openat (Depends-on): Likewise.
22272
22273 2005-05-01  Oskar Liljeblad  <oskar@osk.mine.nu>
22274
22275         * modules/byteswap: New file.
22276
22277 2005-05-01  Oskar Liljeblad  <oskar@osk.mine.nu>
22278
22279         * m4/byteswap.m4: New file.
22280
22281 2005-05-01  Oskar Liljeblad  <oskar@osk.mine.nu>
22282
22283         * lib/byteswap_.h: New file.
22284
22285 2005-04-25  Karl Berry  <karl@gnu.org>
22286
22287         * m4/gettext.m4: Update from GNU gettext 0.14.4.
22288
22289 2005-04-25  Albert Chin  <china@thewrittenword.com>
22290
22291         * lib/regex.c: Include <stdio.h>, as a workaround to a Compaq Desktop
22292         Toolkit C bug.
22293
22294 2005-04-21  Oskar Liljeblad  <oskar@osk.mine.nu>
22295
22296         * gnulib-tool (Options): Add -s for --symlink/--symbolic.
22297         (func_ln_if_changed) Remove forcibly for no error message
22298         in case file does not exist.
22299
22300 2005-04-19  Simon Josefsson  <jas@extundo.com>
22301
22302         * gnulib-tool (Options): Make --symlink mean --symbolic.
22303
22304 2005-04-18  Oskar Liljeblad  <oskar@osk.mine.nu>
22305
22306         * doc/gnulib.texi (Initial import): Fix.  Mention --aux-dir.
22307
22308 2005-04-16  Simon Josefsson  <jas@extundo.com>
22309
22310         * modules/getpass-gnu (Makefile.am): Don't mention getpass.h.
22311
22312 2005-04-15  Simon Josefsson  <jas@extundo.com>
22313
22314         * m4/getpass.m4 (gl_FUNC_GETPASS): Use AC_LIBSOURCES.
22315
22316 2005-04-15  Simon Josefsson  <jas@extundo.com>
22317
22318         * gnulib-tool: Rename --symlink to --symbolic.
22319
22320 2005-04-15  Oskar Liljeblad  <oskar@osk.mine.nu>
22321
22322         * gnulib-tool: Add -s, --symlink option to gnulib-tool to make
22323         symbolic links to files instead of copying/moving.  Add --aux-dir,
22324         specifying directory relative --dir where auxiliary build tools
22325         are placed.
22326
22327 2005-04-14  Bruno Haible  <bruno@clisp.org>
22328
22329         * modules/allocsa (License): Change to LGPL.
22330         Requested by Yoann Vandoorselaere <yoann@prelude-ids.org>.
22331
22332 2005-04-13  Paul Eggert  <eggert@cs.ucla.edu>
22333
22334         * lib/getdate.y (zone): Allow relunit_snumber after tZONE, so
22335         that "UTC +1 second" continues to work.  Problem reported
22336         by Dmitry V. Levin.
22337         (relunit_snumber): New rule.
22338         (relunit): Use it.
22339
22340 2005-04-12  Paul Eggert  <eggert@cs.ucla.edu>
22341
22342         * lib/getdate.y (universal_time_zone_table): New constant.
22343         (time_zone_table): Remove GMT, UT, UTC entries; they're now in
22344         universal_time_zone_table.
22345         (lookup_zone): Prefer universal_time_zone_table to
22346         local_time_zone_table, so that "GMT" time stamps are allowed in
22347         London during the summer.  Problem reported by Ian Abbott.
22348
22349 2005-04-12  Jim Meyering  <jim@meyering.net>
22350
22351         * lib/human.c (humblock): Set *options even when returning due to
22352         xstrtoumax conversion failure.  Thanks to a used-uninitialized
22353         warning from gcc-4.
22354
22355 2005-04-09  Jim Meyering  <jim@meyering.net>
22356
22357         * lib/posixtm.c (posixtime) [lint]: Avoid spurious warning from gcc-4's
22358         -Wuninitialized: initialize tm0.tm_year.
22359
22360 2005-04-04  Paul Eggert  <eggert@cs.ucla.edu>
22361
22362         * lib/getdate.y (parser_control): rels_seen is now a boolean, not a
22363         count, since there's no maximum.  All uses changed.
22364         Add member dsts_seen.
22365         (local_zone): Accumulate dsts_seen rather than relying on tm_isdst
22366         not being INT_MAX.
22367         (get_date): Initialize dsts_seen, and check that it doesn't go over 1.
22368         Use pc_rels_seen to decide whther a date is absolute.
22369
22370         * lib/getdate.y (number): Don't overwrite year.
22371         (get_date): Initialize pc.year.digits to 0, not 4, to enable above
22372         check.
22373
22374 2005-04-02  Simon Josefsson  <jas@extundo.com>
22375
22376         * lib/getaddrinfo.h: Fix OpenBSD compilation failure, inspired by tiny
22377         patch from Yoann Vandoorselaere <yoann@prelude-ids.org>.
22378
22379 2005-03-28  Eric Blake  <ebb9@byu.net>  (tiny change)
22380
22381         * m4/getcwd-path-max.m4: Return success on systems such as Cygwin
22382         where no absolute path name can be longer than PATH_MAX.
22383
22384 2005-03-27  Jim Meyering  <jim@meyering.net>
22385
22386         * lib/argmatch.c: Clarify comment: null-terminated -> NULL-terminated.
22387
22388 2005-03-26  Paul Eggert  <eggert@cs.ucla.edu>
22389
22390         * lib/intprops.h (INT_STRLEN_BOUND, INT_BUFSIZE_BOUND):
22391         "one's complement" -> "ones' complement" in comment, as per Knuth.
22392         "value of type" -> "type or expression" in comment.
22393         * lib/mktime.c, strftime.c: Propagate intprops.h comment nits.
22394
22395 2005-03-26  Jim Meyering  <jim@meyering.net>
22396
22397         Comment nits.
22398         * lib/intprops.h: Add the apostrophe in `(one|two)'s complement'.
22399         Correct typos: s/or/of/.
22400
22401 2005-03-26  Jim Meyering  <jim@meyering.net>
22402
22403         * modules/check-include-files: Move to ../ and rename to...
22404         * check-module: ...this.
22405
22406 2005-03-25  Jim Meyering  <jim@meyering.net>
22407
22408         * modules/xvasprintf (Files): Add xalloc.h.
22409
22410 2005-03-23  Paul Eggert  <eggert@cs.ucla.edu>
22411
22412         * modules/gettext (Files): config/config.rpath ->
22413         build-aux/config.rpath
22414         * modules/iconv (Files): Likewise.
22415         Problem reported by Oskar Liljeblad.
22416
22417 2005-03-23  Jim Meyering  <jim@meyering.net>
22418
22419         * modules/check-include-files: New script to check for
22420         missing dependencies, multiple includes, etc.
22421
22422         * modules/c-strtold (Depends-on): Add xalloc.
22423         * modules/c-strtod (Depends-on): Add xalloc.
22424         * modules/hash (Depends-on): Add xalloc.
22425         (Files): Remove lib/xalloc.h.
22426
22427         * modules/gethrxtime (Files): Add lib/gethrxtime.h.
22428         * modules/userspec (Files): Add lib/inttostr.h.
22429
22430 2005-03-23  Jim Meyering  <jim@meyering.net>
22431
22432         * lib/canonicalize.c: Remove duplicate `#include "stat-macros.h"'.
22433
22434 2005-03-22  Jim Meyering  <jim@meyering.net>
22435
22436         * modules/stat-macros: New module.
22437         * modules/canonicalize, modules/euidaccess, modules/file-type,
22438         * modules/filemode, modules/lchown, modules/makepath,
22439         * modules/rmdir, modules/stat: Depend on new stat-macros module
22440         rather than listing lib/stat-macros.h manually.
22441         Don't add stat-macros.h to lib_SOURCES or list it in Files: section.
22442
22443 2005-03-22  Jim Meyering  <jim@meyering.net>
22444
22445         * m4/stat-macros.m4 (gl_STAT_MACROS): New file/macro.
22446
22447 2005-03-22  Bruno Haible  <bruno@clisp.org>
22448
22449         * config/srclist.txt: Replace target directory 'config' with
22450         'build-aux'.
22451         * config/config.guess, config.sub, config.rpath, depcomp, install-sh:
22452         * config/mdate-sh, missing, mkinstalldirs, texinfo.tex: Move to
22453         ../build-aux/.
22454
22455 2005-03-21  Paul Eggert  <eggert@cs.ucla.edu>
22456
22457         * modules/chdir-long (Depends-on): Add mempcpy.
22458
22459         * modules/acl, modules/backupfile, modules/c-strtod,
22460         modules/c-strtold, modules/canon-host, modules/canonicalize,
22461         modules/cloexec, modules/closeout, modules/dirfd, modules/dirname,
22462         modules/exclude, modules/exitfail, modules/file-type,
22463         modules/filemode, modules/fpending, modules/fsusage, modules/getcwd,
22464         modules/getdate, modules/getline, modules/getpagesize,
22465         modules/getpass, modules/getugroups, modules/group-member,
22466         modules/hard-locale, modules/hash, modules/human, modules/idcache,
22467         modules/inttostr, modules/long-options, modules/makepath,
22468         modules/md5, modules/memcasecmp, modules/memcoll,
22469         modules/modechange, modules/mountlist, modules/path-concat,
22470         modules/pathmax, modules/physmem, modules/posixtm, modules/posixver,
22471         modules/quote, modules/quotearg, modules/readtokens, modules/readutmp,
22472         modules/safe-read, modules/safe-write, modules/same, modules/savedir,
22473         modules/settime, modules/sha1, modules/sig2str, modules/strdup,
22474         modules/strftime, modules/strndup, modules/strverscmp,
22475         modules/timespec, modules/unlocked-io, modules/userspec,
22476         modules/utimecmp, modules/utimens, modules/xalloc, modules/xstrtol,
22477         modules/yesno:
22478         Remove lib_SOURCES line from Makefile.am section, as this is now
22479         done automatically by the corresponding Autoconf macro.
22480
22481 2005-03-21  Jim Meyering  <jim@meyering.net>
22482
22483         Changes imported from coreutils.
22484
22485         * lib/cycle-check.c: Don't include xalloc.h.
22486
22487         * lib/path-concat.c: Don't include assert.h.
22488         (path_concat): Remove assertion that would have triggered
22489         for ABASE starting with more than one slash.
22490         Reported by Andreas Schwab.
22491
22492         * lib/path-concat.c (path_concat): Set *BASE_IN_RESULT
22493         properly when ABASE is an absolute file name.
22494         Correct the description of this function.
22495         Include <assert.h>.
22496         Add an assertion and a test driver.
22497         This fixes a bug introduced on 2004-07-02.
22498         Andreas Schwab reported the resulting failure of cp --parents:
22499         http://lists.gnu.org/archive/html/bug-coreutils/2005-01/msg00130.html
22500
22501 2005-03-21  Jim Meyering  <jim@meyering.net>
22502
22503         * m4/chdir-long.m4 (gl_PREREQ_CHDIR_LONG): Invoke gl_FUNC_MEMRCHR.
22504         * m4/memrchr.m4 (gl_FUNC_MEMRCHR): Check for memrchr decl.
22505
22506 2005-03-21  Jim Meyering  <jim@meyering.net>
22507         and  Paul Eggert  <eggert@cs.ucla.edu>
22508
22509         * m4/acl.m4, m4/backupfile.m4, m4/c-strtod.m4, m4/canon-host.m4,
22510         m4/canonicalize.m4, m4/cloexec.m4, m4/closeout.m4, m4/dirfd.m4,
22511         m4/dirname.m4, m4/exclude.m4, m4/exitfail.m4, m4/file-type.m4,
22512         m4/filemode.m4, m4/fpending.m4, m4/fsusage.m4, m4/getcwd.m4,
22513         m4/getdate.m4, m4/getline.m4, m4/getpagesize.m4, m4/getpass.m4,
22514         m4/getugroups.m4, m4/group-member.m4, m4/hard-locale.m4, m4/hash.m4,
22515         m4/human.m4, m4/idcache.m4, m4/inttostr.m4, m4/long-options.m4,
22516         m4/makepath.m4, m4/md5.m4, m4/memcasecmp.m4, m4/memcoll.m4,
22517         m4/modechange.m4, m4/mountlist.m4, m4/nanosleep.m4, m4/path-concat.m4,
22518         m4/pathmax.m4, m4/physmem.m4, m4/posixtm.m4, m4/posixver.m4,
22519         m4/quote.m4, m4/quotearg.m4, m4/readtokens.m4, m4/readutmp.m4,
22520         m4/safe-read.m4, m4/safe-write.m4, m4/same.m4, m4/savedir.m4,
22521         m4/settime.m4, m4/sha1.m4, m4/sig2str.m4, m4/strdup.m4, m4/strftime.m4,
22522         m4/strndup.m4, m4/strverscmp.m4, m4/timespec.m4, m4/unlocked-io.m4,
22523         m4/userspec.m4, m4/utimecmp.m4, m4/utimens.m4, m4/xalloc.m4,
22524         m4/xnanosleep.m4, m4/xstrtol.m4, m4/yesno.m4:
22525         Use AC_LIBSOURCES and AC_LIBOBJ to indicate source and object files
22526         for these modules.
22527
22528 2005-03-18  Paul Eggert  <eggert@cs.ucla.edu>
22529
22530         * lib/strftime.c (my_strftime): If the underlying strftime returns 0
22531         (which shouldn't happen), generate nothing instead of returning 0
22532         immediately, so that nstrftime (NULL, ...) doesn't return 0.
22533
22534 2005-03-16  Bruno Haible  <bruno@clisp.org>
22535
22536         * modules/stdint (Makefile.am): Use HAVE_LONG_LONG_64BIT instead of
22537         HAVE_LONGLONG_64BIT.
22538
22539 2005-03-16  Bruno Haible  <bruno@clisp.org>
22540
22541         * m4/stdint.m4 (gl_STDINT_H): Define HAVE_LONG_LONG_64BIT instead of
22542         HAVE_LONGLONG_64BIT.
22543
22544 2005-03-16  Bruno Haible  <bruno@clisp.org>
22545
22546         * lib/stdint_.h: Use HAVE_LONG_LONG_64BIT instead of
22547         HAVE_LONGLONG_64BIT.
22548
22549 2005-03-15  Paul Eggert  <eggert@cs.ucla.edu>
22550
22551         * lib/strftime.c (my_strftime): Prepend space to format so that we can
22552         reliably distinguish strftime failure from empty output on POSIX
22553         hosts.
22554
22555 2005-03-15  Paul Eggert  <eggert@cs.ucla.edu>
22556
22557         * lib/iconvme.c (SIZE_MAX): New macro, if not already defined.
22558         (iconv_string): Don't guess a size-zero buffer, as that might cause
22559         buffer overrun.  Instead, avoid multiplying by MB_LEN_MAX if the
22560         result would be 'too large', where 'too large' is (heuristically)
22561         the square root of SIZE_MAX, divided by MB_LEN_MAX to allay
22562         overflow concerns.  This will prevent some unwanted malloc failures
22563         when the inputs are very large.
22564
22565 2005-03-15  Karl Berry  <karl@gnu.org>
22566
22567         * config/srclist.txt (config.rpath): from gettext.
22568         * config/config.rpath: update.
22569
22570 2005-03-15  Bruno Haible  <bruno@clisp.org>
22571
22572         * lib/regex.c (byte_re_match_2_internal): Rename local variable 'not'
22573         to 'negate'.
22574
22575         * lib/regex.c (byte_re_match_2_internal): Reduce scope of same_str_p
22576         variable.
22577
22578         * lib/regex.c (EXTEND_BUFFER, regcomp): Cast the realloc/malloc
22579         results.
22580
22581 2005-03-14  Simon Josefsson  <jas@extundo.com>
22582
22583         * lib/timegm.h: Use proper prototype CPP guards, reported by Dave Love
22584         <fx@gnu.org>.
22585
22586 2005-03-14  Paul Eggert  <eggert@cs.ucla.edu>
22587
22588         * lib/mktime.c (TYPE_TWOS_COMPLEMENT, TYPE_ONES_COMPLEMENT,
22589         TYPE_SIGNED_MAGNITUDE, TYPE_MINIMUM, TYPE_MAXIMUM): Sync from
22590         intprops.h.
22591         * lib/strtol.c: Likewise.
22592
22593 2005-03-14  Jim Meyering  <jim@meyering.net>
22594
22595         * lib/strftime.c (my_strftime) [HAVE_STRFTIME && ! (_NL_CURRENT
22596         && HAVE_STRUCT_ERA_ENTRY)]: Initialize the first byte of ubuf[]
22597         to be nonzero so that we (and caller) can detect the difference
22598         between a valid zero-length expansion and an error return, even
22599         when the underlying strftime fails before writing anything into
22600         that location.
22601
22602 2005-03-14  Bruno Haible  <bruno@clisp.org>
22603
22604         * m4/lib-link.m4, gettext.m4, nls.m4, po.m4:
22605         Update from GNU gettext 0.14.3.
22606
22607 2005-03-10  Jim Meyering  <jim@meyering.net>
22608
22609         * m4/save-cwd.m4 (gl_SAVE_CWD): Check for fchdir.
22610
22611 2005-03-10  Jim Meyering  <jim@meyering.net>
22612
22613         * lib/save-cwd.c [!HAVE_FCHDIR]: Define open, fchdir, and chdir_long
22614         so that this module works on systems without fchdir.
22615
22616 2005-03-09  Paul Eggert  <eggert@cs.ucla.edu>
22617
22618         Factor int-properties macros into a single file, except for
22619         glibc-related files.
22620         * lib/intprops.h: New file.
22621         * lib/getloadavg.c: Include it instead of limits.h.
22622         (INT_STRLEN_BOUND): Remove.
22623         * lib/human.c: Include intprops.h.
22624         (group_number): Use INT_STRLEN_BOUND instead of rolling it ourself.
22625         * lib/human.h (LONGEST_HUMAN_READABLE): Use 146/485 rather than
22626         302/1000.
22627         * lib/inttostr.h: Include intprops.h instead of limits.h.
22628         (INT_STRLEN_BOUND, INT_BUFSIZE_BOUND): Remove.
22629         * lib/mktime.c (TYPE_IS_INTEGER, TYPE_TWOS_COMPLEMENT): New macros,
22630         for consistency with intprops.h.
22631         (time_t_is_integer, twos_complement_arithmetic): Use them.
22632         * lib/sig2str.h: Include <signal.h>, intprops.h.
22633         (INT_STRLEN_BOUND): Remove.
22634         * lib/strftime.c (TYPE_SIGNED): Remove.
22635         (INT_STRLEN_BOUND): Switch to same implementation as intprops.h.
22636         * lib/strtol.c: Adjust comments to match intprops.h.
22637         * lib/userspec.c: Include intprops.h.
22638         (TYPE_SIGNED, TYPE_MINIMUM, TYPE_MAXIMUM): Remove.
22639         * lib/utimecmp.c, xnanosleep.c, xstrtol.c: Likewise.
22640         * lib/utimecmp.c (utimecmp): Use TYPE_IS_INTEGER, TYPE_TWOS_COMPLEMENT
22641         instead of rolling our own expressions.
22642         * lib/xstrtol.c: Include xstrtol.h first, to test interface.
22643
22644         * lib/strftime.c: Include <stdbool.h>.  Use bool where appropriate,
22645         instead of int.
22646         (my_strftime): Do not mishandle years close to INT_MAX, by doing
22647         the right thing even if adding 1900 would overflow.  Similarly
22648         for tm_mon + 1 and tm_yday + 1.
22649         Make %Y always equivalent to %C%y, and similarly for %G and %g.
22650         (DO_NUMBER, DO_NUMBER_SPACEPAD): Set digits to d, not a conditional.
22651         (DO_SIGNED_NUMBER): New macro.
22652         (my_strftime) [HAVE_TZNAME]: Don't dump core if tp->tm_dst > 1.
22653
22654 2005-03-07  Bruno Haible  <bruno@clisp.org>
22655
22656         * m4/mmap-anon.m4 (MAP_FILE, MAP_FAILED): Remove definitions.
22657
22658 2005-03-07  Bruno Haible  <bruno@clisp.org>
22659
22660         * lib/pagealign_alloc.c (MAP_FILE, MAP_FAILED): Define fallbacks.
22661
22662 2005-03-04  Derek R. Price  <derek@ximbiot.com>
22663
22664         * gnulib-tool (func_cp_if_changed, func_mv_if_changed): New functions.
22665         (func_import): Only replace files via --import when they have actually
22666         changed.
22667
22668 2005-03-03  Derek R. Price  <derek@ximbiot.com>
22669
22670         * m4/mmap-anon.m4: New file.
22671         * m4/pagealign_alloc.m4: New file.
22672
22673 2005-03-03  Derek R. Price  <derek@ximbiot.com>
22674             Bruno Haible  <bruno@clisp.org>
22675
22676         * modules/pagealign_alloc: New file.
22677         * MODULES.html.sh (Memory management functions): Add pagealign_alloc.
22678
22679 2005-03-03  Derek R. Price  <derek@ximbiot.com>
22680             Bruno Haible  <bruno@clisp.org>
22681
22682         * lib/pagealign_alloc.h: New file.
22683         * lib/pagealign_alloc.c: New file.
22684
22685 2005-03-03  Bruno Haible  <bruno@clisp.org>
22686
22687         * m4/inttypes.m4, isc-posix.m4, once-only.m4:
22688         Use an all-permissive copyright notice, recommended by RMS.
22689
22690 2005-03-02  Bruno Haible  <bruno@clisp.org>
22691
22692         * m4/stpncpy.m4 (gl_FUNC_STPNCPY): Undo the replacement here. Because
22693         of AIX, the replacement has to be done only after <string.h> is
22694         included, therefore not in config.h. stpncpy.h does the replacement,
22695         and stpncpy.c uses it.
22696
22697 2005-03-02  Bruno Haible  <bruno@clisp.org>
22698
22699         * lib/stpncpy.h (stpncpy): Define as a macro without arguments, so that
22700         stpncpy.c uses it.
22701
22702 2005-03-01  Paul Eggert  <eggert@cs.ucla.edu>
22703
22704         Remove workaround for bug in Linux kernel 2.6.8 or thereabouts.
22705         The workaround isn't strictly needed for POSIX conformance, and
22706         it's too much of a pain to configure and maintain.  We'll ask
22707         people to fix their kernels instead.
22708         * lib/xnanosleep.c: Don't include gethrxtime.h or xtime.h.
22709         (NANOSLEEP_BUG_WORKAROUND): Remove.
22710         (xnanosleep): Remove the workaround.
22711
22712 2005-03-01  Paul Eggert  <eggert@cs.ucla.edu>
22713
22714         * modules/gettime (Makefile.am): Remove lib_SOURCES line.
22715         Reported by Derek Price.
22716         (Include): Add "timespec.h".
22717
22718         * modules/xnanosleep (Depends-on): Remove gethrxtime.
22719
22720 2005-03-01  Paul Eggert  <eggert@cs.ucla.edu>
22721
22722         * m4/xnanosleep.m4 (gl_XNANOSLEEP): Remove configuration attempting
22723         to detect nanosleep bug.
22724
22725 2005-03-01  Bruno Haible  <bruno@clisp.org>
22726
22727         * lib/vasnprintf.c (EOVERFLOW): Define to a fallback if needed.
22728
22729 2005-02-26  Paul Eggert  <eggert@cs.ucla.edu>
22730
22731         * modules/gethrxtime: New file.
22732         * modules/xnanosleep (Files): Add m4/xnanosleep.m4.
22733         (Depends-on): Add gethrxtime.
22734         (configure.ac): Add gl_XNANOSLEEP.
22735         (Makefile.am): Remove lib_SOURCES line.
22736
22737 2005-02-25  Paul Eggert  <eggert@cs.ucla.edu>
22738
22739         * m4/gethrxtime.m4, m4/xnanosleep.m4: New files.
22740         * m4/gettime.m4 (gl_GETTIME): Check for nanotime.
22741
22742 2005-02-25  Paul Eggert  <eggert@cs.ucla.edu>
22743
22744         * lib/gethrxtime.h, lib/gethrxtime.c, lib/xtime.h: New files.
22745         * lib/timespec.h (gettime): Return void, since it always
22746         succeeds now.  All uses changed.
22747         * lib/gettime.c (gettime) Likewise.
22748         [HAVE_NANOTIME]: Prefer nanotime.
22749         Assume gettimeofday succeeds, as POSIX requires.
22750         Assime time () succeeds, since other code already does.
22751         * lib/xnanosleep.c: Include xtime.h and gethrxtime.h, not xalloc.h.
22752         (timespec_subtract): Remove.
22753         (NANOSLEEP_BUG_WORKAROUND): New constant.
22754         (xnanosleep): Use gethrxtime rather than gettime; this simplifies
22755         things considerably.  Use it only on GNU/Linux hosts, since the
22756         workaround shouldn't be needed elsewhere.
22757
22758 2005-02-24  Bruno Haible  <bruno@clisp.org>
22759
22760         * modules/gettext (Files): Add m4/glibc2.m4.
22761
22762 2005-02-24  Bruno Haible  <bruno@clisp.org>
22763
22764         * m4/gettext.m4, intdiv0.m4, intmax.m4, inttypes-pri.m4, lcmessage.m4:
22765         * m4/lib-link.m4, lib-prefix.m4, nls.m4, po.m4, printf-posix.m4:
22766         * m4/progtest.m4:
22767         Update from GNU gettext 0.14.2.
22768         * m4/glibc2.m4: New file, from GNU gettext 0.14.2.
22769
22770 2005-02-24  Bruno Haible  <bruno@clisp.org>
22771
22772         * lib/localcharset.c: Update from GNU gettext 0.14.2.
22773         * lib/config.charset: Update from GNU gettext 0.14.2.
22774
22775 2005-02-24  Bruno Haible  <bruno@clisp.org>
22776
22777         * lib/gettext.h: Update from GNU gettext 0.14.2.
22778
22779 2005-02-23  Simon Josefsson  <jas@extundo.com>
22780
22781         * m4/iconvme.m4: New file.
22782
22783 2005-02-23  Jim Meyering  <jim@meyering.net>
22784
22785         * m4/extensions.m4 (gl_USE_SYSTEM_EXTENSIONS): Revert yesteday's
22786         change.
22787         Thanks to Bruno Haible for catching it.
22788
22789 2005-02-22  Simon Josefsson  <jas@extundo.com>
22790
22791         * modules/iconvme: New file.
22792
22793         * MODULES.html.sh: Add iconvme.
22794
22795 2005-02-22  Simon Josefsson  <jas@extundo.com>
22796
22797         * lib/iconvme.h, lib/iconvme.c: New files, from libc.
22798
22799 2005-02-22  Simon Josefsson  <jas@extundo.com>
22800
22801         * config/srclist.txt: Sync iconvme.h, iconvme.c from libc.
22802
22803 2005-02-22  Jim Meyering  <jim@meyering.net>
22804
22805         * m4/extensions.m4 (gl_USE_SYSTEM_EXTENSIONS): Fix typo:
22806         s/ifndef/ifdef/.
22807
22808 2005-02-20  Neil Conway  <neilc@samurai.com>
22809
22810         * lib/xgethostname.c (xgethostname): Check for ENOMEM, which is
22811         returned by OSX/Darwin if the specified buffer is not large
22812         enough for the hostname.
22813
22814 2005-02-03  Sergey Poznyakoff  <gray@Mirddin.farlep.net>
22815
22816         * lib/argp-help.c (__argp_help): Create a fake struct argp_state and
22817         pass it to _help, otherwise the latter coredumps trying to
22818         dereference state.root_argp.
22819
22820 2005-02-03  Paul Eggert  <eggert@cs.ucla.edu>
22821
22822         * modules/chdir-long (Depends-on): Add memrchr.
22823         * modules/memrchr (Files): Add lib/memrchr.h.
22824         (Include): "memrchr.h".
22825
22826 2005-02-03  Paul Eggert  <eggert@cs.ucla.edu>
22827
22828         * m4/memrchr.m4 (gl_FUNC_MEMRCHR): Add AC_LIBSOURCES, for memrchr.h.
22829
22830 2005-02-03  Paul Eggert  <eggert@cs.ucla.edu>
22831
22832         * lib/memrchr.h: New file.
22833         * lib/chdir-long.c: Include it.
22834         * lib/memrchr.c [!defined _LIBC]: Include it rather than <string.h>
22835         Don't bother including stddef.h.
22836
22837 2005-02-01  Paul Eggert  <eggert@cs.ucla.edu>
22838
22839         * lib/mountlist.h (MOUNTLIST_H_): New macro, to protect against double
22840         inclusion.
22841         Include <sys/types.h>, for dev_t.
22842         (ME_DUMMY, ME_REMOTE): Move from here....
22843         * lib/mountlist.c (ME_DUMMY, ME_REMOTE): To here.
22844         (ME_DUMMY): Count "subfs" as a dummy.  Problem reported by
22845         Dmitry V. Levin.
22846         Include mountlist.h first, to test the interface.
22847
22848 2005-01-29  Bruno Haible  <bruno@clisp.org>
22849
22850         * lib/progname.c (program_name): Initialize.
22851         Needed when linking statically on MacOS X.
22852
22853 2005-01-28  Paul Eggert  <eggert@cs.ucla.edu>
22854
22855         Sync from coreutils.
22856         * modules/getloadavg (Files): Remove m4/getloadavg.m4.
22857         (Depends-on): Add c-strtod.
22858         (configure.ac): Replace gl_FUNC_GETLOADAVG with AC_FUNC_GETLOADAVG.
22859
22860 2005-01-28  Paul Eggert  <eggert@cs.ucla.edu>
22861
22862         Sync from coreutils.
22863         * m4/getloadavg.m4, glibc.m4, search-libs.m4: Remove.
22864
22865         Remove files that are specific to coreutils.
22866         * m4/check-decl.m4, jm-macros.m4, lib-check.m4, prereq.m4: Remove.
22867
22868 2005-01-28  Bruno Haible  <bruno@clisp.org>
22869
22870         * modules/javacomp: New file.
22871         * MODULES.html.sh (Java): Add javacomp.
22872
22873 2005-01-28  Bruno Haible  <bruno@clisp.org>
22874
22875         * m4/javacomp.m4: New file, from GNU gettext.
22876
22877 2005-01-28  Bruno Haible  <bruno@clisp.org>
22878
22879         * lib/javacomp.sh.in: New file, from GNU gettext.
22880         * lib/javacomp.h: New file, from GNU gettext.
22881         * lib/javacomp.c: New file, from GNU gettext.
22882
22883 2005-01-26  Simon Josefsson  <jas@extundo.com>
22884
22885         * lib/gai_strerror.c: Use GPL in header.
22886
22887 2005-01-26  Bruno Haible  <bruno@clisp.org>
22888
22889         * modules/javaexec: New file.
22890         * MODULES.html.sh (Java): Add javaexec.
22891
22892 2005-01-26  Bruno Haible  <bruno@clisp.org>
22893
22894         * m4/javaexec.m4: New file, from GNU gettext.
22895
22896 2005-01-26  Bruno Haible  <bruno@clisp.org>
22897
22898         * lib/javaexec.sh.in: New file, from GNU gettext.
22899         * lib/javaexec.h: New file, from GNU gettext.
22900         * lib/javaexec.c: New file, from GNU gettext.
22901
22902 2005-01-24  Sergey Poznyakoff  <gray@Mirddin.farlep.net>
22903
22904         * modules/lchown (Depends-on): Remove lchown.h
22905
22906 2005-01-24  Sergey Poznyakoff  <gray@Mirddin.farlep.net>
22907
22908         * m4/sysexits.m4 (gl_SYSEXITS): Reverted logic. SYSEXITS_H
22909         must be defined if the header file was not found, in order
22910         to provide a replacement. Reported by Todd Vierling <tv@duh.org>
22911
22912 2005-01-24  Sergey Poznyakoff  <gray@Mirddin.farlep.net>
22913
22914         * lib/argp-help.c (hol_entry_help): Avoid using non-constant
22915         initializers for struct pentry_state.
22916         (__argp_error): Check return value of __asprintf
22917         (__argp_failure): Translate error message
22918
22919         * lib/argp-parse.c: Removed braces around the expansion of N_()
22920
22921 2005-01-23  Paul Eggert  <eggert@cs.ucla.edu>
22922
22923         * m4/acl.m4, afs.m4, alloca.m4, argp.m4, assert.m4, atexit.m4,
22924         backupfile.m4, base64.m4, bison.m4, c-bs-a.m4, c-stack.m4,
22925         c-strtod.m4, calloc.m4, canon-host.m4, canonicalize.m4,
22926         clock_time.m4, cloexec.m4, closeout.m4, d-ino.m4, d-type.m4,
22927         dirfd.m4, dirname.m4, dos.m4, dup2.m4, error.m4, euidaccess.m4,
22928         exclude.m4, exitfail.m4, extensions.m4, fcntl-safer.m4,
22929         file-type.m4, fileblocks.m4, filemode.m4, fnmatch.m4, fpending.m4,
22930         free.m4, fstypename.m4, fsusage.m4, ftruncate.m4, getaddrinfo.m4,
22931         getcwd-path-max.m4, getcwd.m4, getdate.m4, getdomainname.m4,
22932         getgroups.m4, gethostname.m4, getline.m4, getndelim2.m4,
22933         getnline.m4, getopt.m4, getpagesize.m4, getpass.m4, getsubopt.m4,
22934         gettime.m4, gettimeofday.m4, getugroups.m4, getusershell.m4,
22935         group-member.m4, hard-locale.m4, hash.m4, host-os.m4, human.m4,
22936         idcache.m4, inttostr.m4, isdir.m4, jm-winsz1.m4, jm-winsz2.m4,
22937         link-follow.m4, long-options.m4, ls-mntd-fs.m4, lstat.m4,
22938         makepath.m4, mathl.m4, md5.m4, memcasecmp.m4, memchr.m4,
22939         memcmp.m4, memcoll.m4, memcpy.m4, memmem.m4, memmove.m4,
22940         memrchr.m4, memset.m4, mkdir-slash.m4, mkstemp.m4, mktime.m4,
22941         modechange.m4, mountlist.m4, nanosleep.m4, obstack.m4,
22942         path-concat.m4, pathmax.m4, perl.m4, physmem.m4, poll.m4,
22943         posixtm.m4, posixver.m4, putenv.m4, quote.m4, quotearg.m4,
22944         readdir.m4, readtokens.m4, readutmp.m4, regex.m4, rename.m4,
22945         restrict.m4, rmdir-errno.m4, rmdir.m4, rpmatch.m4, same.m4,
22946         savedir.m4, settime.m4, sha1.m4, sig2str.m4, snprintf.m4,
22947         sockpfaf.m4, st_dm_mode.m4, st_mtim.m4, stat.m4, stdint.m4,
22948         stdio-safer.m4, strchrnul.m4, strdup.m4, strerror.m4,
22949         strerror_r.m4, strftime.m4, strndup.m4, strnlen.m4, strsep.m4,
22950         strtod.m4, strtoimax.m4, strtok_r.m4, strtol.m4, strtoll.m4,
22951         strtoul.m4, strtoull.m4, strtoumax.m4, strverscmp.m4, sysexits.m4,
22952         time_r.m4, timegm.m4, timespec.m4, tm_gmtoff.m4, tzset.m4,
22953         uint32_t.m4, uintptr_t.m4, unistd-safer.m4, unlink-busy.m4,
22954         unlocked-io.m4, uptime.m4, userspec.m4, utimbuf.m4, utime.m4,
22955         utimecmp.m4, utimens.m4, utimes-null.m4, vsnprintf.m4, xalloc.m4,
22956         xgetcwd.m4, xreadlink.m4, xstrndup.m4, xstrtod.m4, xstrtoimax.m4,
22957         xstrtol.m4, xstrtoumax.m4, yesno.m4:
22958         Use an all-permissive copyright notice, recommended by RMS.
22959
22960 2005-01-21  Paul Eggert  <eggert@cs.ucla.edu>
22961
22962         * modules/chdir-long (Depends-on): Remove mempcpy.
22963
22964 2005-01-21  Jim Meyering  <jim@meyering.net>
22965
22966         * lib/openat.h (AT_SYMLINK_NOFOLLOW): Define to 4096, so it's the
22967         same value as for Solaris 9.
22968
22969         * lib/chdir-long.c (chdir_long): Rewrite to remove limitation on
22970         component length.  This included changing the parameter to be
22971         of type `char *' rather than `char const *'.
22972         * lib/chdir-long.h (chdir_long): Update prototype.
22973
22974         * lib/openat.c (fdopendir, fstatat): New functions.
22975         * lib/openat.h: Include headers required for use of DIR and struct
22976         stat.
22977         [AT_SYMLINK_NOFOLLOW]: Define.
22978         (fdopendir, fstatat): Add prototypes.
22979
22980 2005-01-21  Bruno Haible  <bruno@clisp.org>
22981
22982         * modules/classpath: New file.
22983         * MODULES.html.sh (Java): Add classpath.
22984
22985 2005-01-21  Bruno Haible  <bruno@clisp.org>
22986
22987         * lib/classpath.h: New file, from GNU gettext.
22988         * lib/classpath.c: New file, from GNU gettext.
22989
22990 2005-01-20  Simon Josefsson  <jas@extundo.com>
22991
22992         * modules/version-etc-fsf: New file.
22993
22994 2005-01-20  Simon Josefsson  <jas@extundo.com>
22995
22996         * lib/version-etc-fsf.c: New file, with version_etc_copyright.
22997         * lib/version-etc.c: Remove version_etc_copyright.
22998         * lib/version-etc.h (version_etc_copyright): Use [] instead of * in
22999         prototype, suggested by Paul Eggert <eggert@CS.UCLA.EDU>.
23000
23001 2005-01-20  Simon Josefsson  <jas@extundo.com>
23002
23003         * lib/base64.h (isbase64): Add.
23004
23005         * lib/base64.c (isb64): Rename to isbase64, use to_uchar instead of
23006         using a unsigned prototype, don't inline.
23007         (base64_decode): Use it.
23008
23009 2005-01-20  Paul Eggert  <eggert@cs.ucla.edu>
23010
23011         * m4/save-cwd.m4 (gl_SAVE_CWD): Remove check for fcntl; we now assume
23012         it.
23013
23014 2005-01-20  Paul Eggert  <eggert@cs.ucla.edu>
23015
23016         * lib/save-cwd.c (save_cwd): Remove code to support the case
23017         where fchdir is missing or flaky.
23018
23019 2005-01-20  Paul Eggert  <eggert@cs.ucla.edu>
23020
23021         * MODULES.html.sh (Command-line arguments): Add version-etc-fsf.
23022
23023 2005-01-19  Paul Eggert  <eggert@cs.ucla.edu>
23024
23025         * modules/mempcpy (Makefile.am): Remove mention of mempcpy.h;
23026         AC_LIBSOURCES now does this.
23027         * MODULES.html.sh (Sizes of integer types <limits.h>): New element,
23028         with new ullong_max module.
23029
23030 2005-01-19  Bruno Haible  <bruno@clisp.org>
23031
23032         * modules/sh-quote: New file.
23033         * MODULES.html.sh (Executing programs): Add sh-quote.
23034
23035 2005-01-19  Bruno Haible  <bruno@clisp.org>
23036
23037         * lib/sh-quote.h: New file, from GNU gettext.
23038         * lib/sh-quote.c: New file, from GNU gettext.
23039
23040 2005-01-18  Paul Eggert  <eggert@cs.ucla.edu>
23041
23042         Merge from coreutils.
23043         * m4/ullong_max.m4: New file.
23044         * m4/jm-macros.m4 (gl_MACROS): Require gl_ULLONG_MAX.
23045         (gl_MACROS): Assume localeconv exists.
23046
23047 2005-01-18  Paul Eggert  <eggert@cs.ucla.edu>
23048
23049         Merge changes from coreutils, as described below in several
23050         changelogs dated today.
23051
23052         * lib/save-cwd.c: Include "save-cwd.h" before other include files.
23053         (O_DIRECTORY): Remove; not needed here, since "." must be
23054         a directory.  All uses removed.
23055         (save_cwd): Use __sgi || __sun, not sun || __sun.  __sun is
23056         universal on Suns, and we also need to test for IRIX.
23057         Revamp code to use 'if' rather than '#if'.
23058         Avoid unnecessary comparison of cwd->desc to 0.
23059
23060         * lib/utimens.c (futimens): Robustify the previous patch, by checking
23061         for known valid error numbers rather than observed invalid ones.
23062
23063 2005-01-18  Paul Eggert  <eggert@cs.ucla.edu>
23064
23065         * modules/ullong_max: New file.
23066
23067         * modules/chdir-long, modules/openat: New files.
23068         * modules/save-cwd (Depends-on): Depend on chdir-long.
23069         (Makefile.am): Remove lib_SOURCES; now handled by AC_LIBSOURCES.
23070
23071 2005-01-18  Jim Meyering  <jim@meyering.net>
23072
23073         Merge from coreutils.
23074         * m4/chdir-long.m4, m4/openat.m4: New files.
23075         * m4/save-cwd.m4 (gl_SAVE_CWD): Add AC_LIBSOURCES for save-cwd.c,
23076         save-cwd.h.  Add AC_LIBOBJ for save-cwd.
23077         * m4/chown.m4 (gl_FUNC_CHOWN): When cross-compiling, assume that chown
23078         is sane and DOES follow symlinks.  Besides, testing 20 different
23079         systems found no broken chown implementations.
23080         Prompted by a change in rsync's copy of this macro.
23081         * m4/jm-macros.m4 (gl_MACROS): Require gl_FUNC_CHDIR_LONG.
23082
23083         * m4/lchown.m4 (gl_FUNC_LCHOWN): Use AC_LIBSOURCES.
23084
23085         * m4/utimes.m4: Work around tests/touch/empty-file failure on a system
23086         (sparc64, Linux-2.4.28, glibc-2.3.3) that didn't honor utimes'
23087         NULL-means-set-to-current-time semantics.
23088         Remove temporary file immediately, rather than waiting
23089         for configure's at-exit trap code to do it.
23090
23091 2005-01-18  Jim Meyering  <jim@meyering.net>
23092
23093         * lib/version-etc.c (version_etc_copyright): Update copyright date.
23094
23095         * lib/utimens.c (futimens): Account for the fact that futimes
23096         can also fail with errno == ENOSYS or errno == ENOENT.
23097         Patch from Dmitry V. Levin.
23098
23099         Change the name of the robust chdir function from chdir to chdir_long.
23100         * lib/save-cwd.c: Include chdir-long.h rather than chdir.h.
23101         (restore_cwd): Use chdir_long, not chdir.
23102         * lib/chdir-long.c: Renamed from chdir.c.
23103         * lib/chdir-long.h: Renamed from chdir.h.
23104         [!defined PATH_MAX]: Define chdir_long to chdir on systems like the
23105         Hurd.
23106
23107 2005-01-18  Bruno Haible  <bruno@clisp.org>
23108
23109         * m4/allocsa.m4, m4/codeset.m4, m4/copy-file.m4, m4/eaccess.m4:
23110         * m4/eealloc.m4, m4/eoverflow.m4, m4/execute.m4, m4/fatal-signal.m4:
23111         * m4/findprog.m4, m4/glibc21.m4, m4/iconv.m4, m4/intmax_t.m4:
23112         * m4/inttypes_h.m4, m4/lib-ld.m4, m4/lib-link.m4, m4/lib-prefix.m4:
23113         * m4/linebreak.m4, m4/localcharset.m4, m4/longdouble.m4:
23114         * m4/longlong.m4, m4/mbrtowc.m4, m4/mbstate_t.m4, m4/mbswidth.m4:
23115         * m4/mkdtemp.m4, m4/pipe.m4, m4/readlink.m4, m4/safe-read.m4:
23116         * m4/safe-write.m4, m4/setenv.m4, m4/sig_atomic_t.m4:
23117         * m4/signalblocking.m4, m4/signed.m4, m4/size_max.m4, m4/ssize_t.m4:
23118         * m4/stdbool.m4, m4/stdint_h.m4, m4/stpcpy.m4, m4/stpncpy.m4:
23119         * m4/strcase.m4, m4/strcspn.m4, m4/strpbrk.m4, m4/strstr.m4:
23120         * m4/ucs4-utf.m4, m4/uintmax_t.m4, m4/ulonglong.m4, m4/unicodeio.m4:
23121         * m4/utf-ucs4.m4, m4/vasnprintf.m4, m4/vasprintf.m4:
23122         * m4/wait-process.m4, m4/wchar_t.m4, m4/wint_t.m4, m4/xsize.m4:
23123         Use an all-permissive copyright notice, recommended by RMS.
23124
23125 2005-01-18  Bob Proulx  <bob@proulx.com>
23126
23127         * lib/obstack.c [DEFAULT_ALIGNMENT]: Use an intermediate type to
23128         simplify offsetof() macro construct to avoid compile failure with
23129         native HP-UX 11.0 ANSI C compiler.
23130
23131 2005-01-17  Bruno Haible  <bruno@clisp.org>
23132
23133         * lib/stpncpy.c: Remove HAVE_STPNCPY and gnu_stpncpy renaming,
23134         redundant because stpncpy.m4 takes care of it.
23135
23136 2005-01-17  Bruno Haible  <bruno@clisp.org>
23137
23138         * lib/progreloc.c: Include xalloc.h instead of xmalloc.h.
23139
23140 2005-01-17  Bruno Haible  <bruno@clisp.org>
23141
23142         * lib/progreloc.c (xstrdup): Define as strdup if no xmalloc should be
23143         used.
23144
23145 2005-01-17  Bruno Haible  <bruno@clisp.org>
23146
23147         * lib/fwriteerror.h (fwriteerror): Change specification to include
23148         fclose.
23149         * lib/fwriteerror.c: Include <stdbool.h>.
23150         (fwriteerror): At the end, close the file stream. Record whether
23151         stdout was already closed.
23152
23153 2005-01-17  Bruno Haible  <bruno@clisp.org>
23154
23155         * lib/execute.c (environ): Declare if needed.
23156         * lib/pipe.c (environ): Likewise.
23157         Reported by Michael Schloh von Bennewitz <michael.schloh@cw.com>.
23158
23159 2005-01-11  Sergey Poznyakoff  <gray@Mirddin.farlep.net>
23160
23161         * modules/argp: Depend on vsnprintf
23162
23163 2005-01-10  Jim Meyering  <jim@meyering.net>
23164
23165         * modules/closeout (Depends-on): Add atexit.
23166
23167 2005-01-06  Bruno Haible  <bruno@clisp.org>
23168
23169         * m4/stpncpy.m4 (gl_FUNC_STPNCPY): Rename stpncpy to gnu_stpncpy here.
23170
23171 2005-01-04  Paul Eggert  <eggert@cs.ucla.edu>
23172
23173         * lib/human.c (SIZE_MAX, UINTMAX_MAX): Move these conditional
23174         definitions to be after all include files, to avoid collisions.
23175         Problem reported by Bob Proulx.
23176
23177 2005-01-04  Jim Meyering  <jim@meyering.net>
23178
23179         Changes imported from coreutils.
23180         * m4/mkstemp.m4 (gl_FUNC_MKSTEMP): Rather than using "conftestXXXXXX"
23181         as the mkstemp template, use a temporary directory and an
23182         8.3-friendly template to avoid trouble on systems like DJGPP.
23183         Reported by Juan M. Guerrero via Stepan Kasal.
23184         * m4/(gl_FUNC_MKSTEMP): Include <unistd.h> for the declaration of
23185         close. Remove the temporary directory right away, rather than waiting
23186         for configure's at-exit trap code to do it.
23187         Suggestion from Stepan Kasal.
23188
23189 2005-01-01  Simon Josefsson  <jas@extundo.com>
23190
23191         * gnulib-tool: Print #include directives when --import'ing.
23192
23193 2004-12-28  Simon Josefsson  <jas@extundo.com>
23194
23195         * tests/test-base64.c: Include required header files.  Remove
23196         unused variables.
23197
23198 2004-12-28  Paul Eggert  <eggert@cs.ucla.edu>
23199
23200         * modules/error (Depends-on): Remove gettext.
23201
23202 2004-12-28  Paul Eggert  <eggert@cs.ucla.edu>
23203
23204         * lib/error.c [!_LIBC && !ENABLE_NLS]: Do not include "gettext.h";
23205         not needed.  This removes a dependency on the gettext module.
23206         [defined _LIBC]: Do not include <libintl.h>; not needed.
23207
23208 2004-12-24  Paul Eggert  <eggert@cs.ucla.edu>
23209
23210         * m4/c-strtod.m4 (gl_C99_STRTOLD): New macro.
23211         (gl_C_STRTOD): Use it instead of AC_CHECK_DECLS_ONCE(strtold).
23212
23213 2004-12-24  Paul Eggert  <eggert@cs.ucla.edu>
23214
23215         * lib/c-strtod.c (STRTOD): Depend on HAVE_C99_STRTOLD, not
23216         HAVE_DECL_STRTOLD.
23217
23218 2004-12-23  Paul Eggert  <eggert@cs.ucla.edu>
23219
23220         * modules/getdate (Depends-on): Remove alloca-opt.
23221
23222 2004-12-23  Paul Eggert  <eggert@cs.ucla.edu>
23223
23224         * m4/getdate.m4 (gl_GETDATE): Remove AC_FUNC_ALLOCA.
23225
23226 2004-12-23  Paul Eggert  <eggert@cs.ucla.edu>
23227
23228         * lib/argp-parse.c: Include <stddef.h>.
23229         (alignof, alignto): New macros.
23230         (parser_init): Don't assume that void * is aligned sufficiently
23231         for struct option.
23232
23233         * lib/getdate.y (YYSTACK_USE_ALLOCA): Define to 0, since there's no
23234         need to extend the stack.
23235         (YYINITDEPTH): New macro, so that the initial stack isn't overly
23236         large.
23237
23238 2004-12-22  Sergey Poznyakoff  <gray@Mirddin.farlep.net>
23239
23240         * lib/argp-parse.c (parser_init): Avoid arithmetics on void pointers.
23241
23242 2004-12-19  Paul Eggert  <eggert@cs.ucla.edu>
23243
23244         * modules/regex (lib_SOURCES): Remove regex.c, undoing previous
23245         (2004-10-24) change.  Apparently this was a false alarm.
23246
23247         * modules/getdate: Depend on alloca-opt, not alloca.
23248
23249 2004-12-19  Paul Eggert  <eggert@cs.ucla.edu>
23250
23251         * lib/alloca_.h: Conditionalize on _GNULIB_ALLOCA_H, not _ALLOCA_H.
23252         Remove now-obsolete comment about AIX.
23253         * lib/getdate.y: Include <alloca.h> only if HAVE_ALLOCA.
23254         (YYSTACK_USE_ALLOCA): Define to 0 if !HAVE_ALLOCA.
23255         (YYMAXDEPTH): New macro.
23256
23257 2004-12-18  Simon Josefsson  <jas@extundo.com>
23258
23259         * modules/alloca: Depend on alloca-opt, instead of duplicating it.
23260
23261 2004-12-18  Bruno Haible  <bruno@clisp.org>
23262
23263         * m4/fatal-signal.m4 (gl_FATAL_SIGNAL): Also test for sigaction.
23264
23265 2004-12-18  Bruno Haible  <bruno@clisp.org>
23266
23267         * lib/fatal-signal.c (fatal_signals): Make non-const.
23268         (init_fatal_signals): New function.
23269         (uninstall_handlers, install_handlers): Ignore signals that were set to
23270         SIG_IGN.
23271         (at_fatal_signal): Call init_fatal_signals.
23272         (init_fatal_signal_set): Likewise. Ignore signals that were set to
23273         SIG_IGN.
23274         Reported by Paul Eggert.
23275
23276 2004-12-18  Bruno Haible  <bruno@clisp.org>
23277
23278         * doc/alloca.texi: New file.
23279         * doc/alloca-opt.texi: New file.
23280
23281 2004-12-17  Jim Meyering  <jim@meyering.net>
23282
23283         * config/install-sh: Use `(exit N); exit N', not `(exit N); exit'.
23284         Otherwise, install-sh could exit with improper exit status when
23285         exiting via a trapped interrupt.  Thanks to a report from Bob Proulx.
23286
23287 2004-12-16  Simon Josefsson  <jas@extundo.com>
23288
23289         * tests/test-base64.c: Add license.
23290
23291 2004-12-15  Stepan Kasal  <address@hidden>
23292
23293         * gnulib-tool (func_emit_lib_Makefile_am): Shorten a long sed command.
23294
23295 2004-12-12  Paul Eggert  <eggert@cs.ucla.edu>
23296
23297         * modules/getcwd (Files): Add m4/d-ino.m4.
23298         Suggested by Mark D. Baushke.
23299
23300 2004-12-08  Paul Eggert  <eggert@cs.ucla.edu>
23301
23302         * lib/getdate.y (textint): New member "negative".
23303         (time_zone_hhmm): New function.
23304         Expect 14 shift-reduce conflicts, not 13.
23305         (o_colon_minutes): New rule.
23306         (time, zone): Use it to add support for +HH:MM, UTC+HH:MM.
23307         (yylex): Set the "negative" member of signed numbers.
23308
23309 2004-12-08  Paul Eggert  <eggert@cs.ucla.edu>
23310
23311         * doc/getdate.texi (Time of day items, Time zone items):
23312         Describe new formats +00:00, UTC+00:00.
23313
23314 2004-12-07  Paul Eggert  <eggert@cs.ucla.edu>
23315
23316         * m4/ls-mntd-fs.m4 (AC_FUNC_GETMNTENT): Fix typo in previous change:
23317         spurious "-l"s.  Problem reported by Stepan Kasal.
23318
23319 2004-12-06  Paul Eggert  <eggert@cs.ucla.edu>
23320
23321         * m4/ls-mntd-fs.m4 (AC_FUNC_GETMNTENT): New macro, to work around bug
23322         in Autoconf 2.59.  Problem reported by Mark D. Baushke.
23323
23324 2004-12-04  Simon Josefsson  <jas@extundo.com>
23325
23326         * modules/getaddrinfo (License): Add LGPL, reported by Yoann
23327         Vandoorselaere <yoann@prelude-ids.org>.
23328
23329 2004-12-04  Paul Eggert  <eggert@cs.ucla.edu>
23330
23331         Changes imported from coreutils.
23332         * m4/hard-locale.m4 (gl_HARD_LOCALE): Assume locale.h and setlocale
23333         exist.
23334         * m4/human.m4 (gl_HUMAN): Assume locale.h and localeconv exist.
23335
23336 2004-12-04  Paul Eggert  <eggert@cs.ucla.edu>
23337
23338         Changes imported from coreutils.
23339         * lib/hard-locale.c: Assume <locale.h> exists.
23340         Include "strdup.h".
23341         (GLIBC_VERSION): New macro.
23342         (hard_locale): Assume setlocale exists.
23343         Rewrite to avoid #ifdef.
23344         Use strdup rather than malloc + strcpy.
23345         * lib/human.c: Assume <locale.h> exists.
23346         (human_readable): Assume localeconv exists.
23347
23348 2004-12-04  Paul Eggert  <eggert@cs.ucla.edu>
23349
23350         * modules/hard-locale (Depends-on): Add strdup.
23351
23352 2004-12-01  Jakub Jelinek  <jakub@redhat.com>
23353
23354         * lib/mktime.c (__mktime_internal): If SEC_REQUESTED != SEC,
23355         convert T2, not T.  (Imported from libc.)
23356
23357 2004-11-30  Simon Josefsson  <jas@extundo.com>
23358
23359         * modules/restrict (License): Change to LGPL.
23360
23361 2004-11-30  Simon Josefsson  <jas@extundo.com>
23362
23363         * m4/restrict.m4: Add copyright and copying conditions.
23364
23365 2004-11-30  Simon Josefsson  <jas@extundo.com>
23366
23367         * m4/base64.m4: New file.
23368
23369 2004-11-30  Simon Josefsson  <jas@extundo.com>
23370
23371         * MODULES.html.sh (Extra functions based on ANSI C 89): Add
23372         base64.
23373
23374         * tests/test-base64.c: New file.
23375
23376         * modules/base64: New file.
23377
23378 2004-11-30  Paul Eggert  <eggert@cs.ucla.edu>
23379
23380         * m4/getcwd-path-max.m4 (gl_FUNC_GETCWD_PATH_MAX):
23381         Define HAVE_PARTLY_WORKING_GETCWD if getcwd is partly working.
23382
23383         * m4/readutmp.m4 (gl_READUTMP): Don't check for sys/param.h.
23384
23385 2004-11-30  Paul Eggert  <eggert@cs.ucla.edu>
23386
23387         * lib/getcwd.c (is_ENAMETOOLONG): New macro.
23388         (__getcwd.c): Don't restore errno; glibc doesn't.
23389         [HAVE_PARTLY_WORKING_GETCWD && !defined AT_FDCWD]: Try system getcwd
23390         first, falling back to our code only if its results look suspicious.
23391         Ensure that the resulting buffer is only as large as necessary.
23392
23393         * lib/readutmp.c: Include readutmp.h first.
23394         Include <errno.h>, since readutmp.h no longer does that.
23395         * lib/readutmp.h: Don't include <errno.h>,
23396         <sys/param.h>, <time.h>; not needed to establish interface.
23397         (errno): Remove decl.
23398         (HAVE_STRUCT_XTMP_UT_TYPE): Remove; no longer needed.
23399         (UT_TYPE_EQ, UT_TYPE_NOT_DEFINED, UT_TYPE_BOOT_TIME,
23400         UT_TYPE_USER_PROCESS, IS_USER_PROCESS): New macros.
23401
23402 2004-11-28  Simon Josefsson  <jas@extundo.com>
23403
23404         * lib/base64.h, base64.c: New file.
23405
23406 2004-11-27  Paul Eggert  <eggert@cs.ucla.edu>
23407
23408         * lib/getcwd.h: New file, which I forgot to check in on 2004-11-25.
23409
23410 2004-11-26  Paul Eggert  <eggert@cs.ucla.edu>
23411
23412         * modules/getcwd (Files): Add lib/getcwd.h, m4/getcwd.m4.
23413         (Depends-on): Remove pathmax, same.  Add mempcpy.
23414         (configure.ac): GL_FUNC_GETCWD_PATH_MAX -> gl_FUNC_GETCWD.
23415         (Makefile.am): Append getcwd.h to lib_SOURCES.
23416         (Include): Add getcwd.h.
23417         (Maintainer): Change from Jim Meyering to "all, glibc",
23418         since getdate now uses intended-for-glibc code.
23419         * modules/xgetcwd (Files): Remove m4/getcwd.m4.
23420         (Depends-on): Depend on getcwd.  Do not depend on pathmax.
23421
23422 2004-11-25  Paul Eggert  <eggert@cs.ucla.edu>
23423
23424         Fix problems reported by Scott S. Tinsley for HP-UX 11.11 using
23425         HP's ANSI C compiler.
23426         * lib/fsusage.c (statvfs) [HAVE_SYS_STATVFS_H]: Remove decl.
23427         Declaring int functions causes warnings on some modern systems and
23428         shouldn't be needed to compile on ancient ones.
23429         * lib/same.c (MIN) [defined MIN]: Don't define, since it's already
23430         defined.
23431
23432         * lib/getcwd.c: Replace by a copy of glibc/sysdeps/posix/getcwd.c, but
23433         with the following changes.
23434         (__set_errno): Parenthesize properly.
23435         Include <stdbool.h>.
23436         (MIN, MAX, MATCHING_INO): New macros.
23437         (__getcwd): Define with prototype, not K&R form.
23438         Use heuristics to allocate default buffer on stack if possible.
23439         If AT_FDCWD is defined, use openat and fstatat to avoid O(N**2)
23440         behavior, and to avoid the PATH_MAX limit when computing
23441         ../../../../...
23442         Use MATCHING_INO to compare inode number to file.
23443         Check for arithmetic overflow in size calculations.
23444         Fix bug in reallocation of dot array that caused getcwd to fail
23445         on directories nested deeper than 75.
23446         Be more careful about saving errno on error.
23447         Do not use realloc; use only free+malloc, as this is a bit
23448         more flexible and avoids a needless copy operation.
23449         Do not inspect st_dev and st_ino for symbolic links; POSIX
23450         doesn't specify the latter.
23451         Check for closedir errors.
23452         Avoid needless casts.
23453         Use "#ifdef weak_alias" around weak_alias, to be like other
23454         glibc code.
23455         The following changes to getcwd.c have effect only when used in
23456         gnulib; they have no effect inside glibc proper.
23457         (#pragma alloca) [defined _AIX && !defined __GNUC__]: Remove,
23458         as alloca isn't used.
23459         (alloca, __alloca): Likewise.
23460         [!_LIBC]: Include "getcwd.h", "mempcpy.h".
23461         Include <stddef.h>, <stdlib.h>, <string.h>, <limits.h>
23462         unconditionally, as gnulib assumes C89 or better.
23463         Do not include <sys/param.h>.
23464         (errno) [!defined __GNU_LIBRARY__ && !defined STDC_HEADERS]: Remove
23465         no-longer-necessary 'extern int errno' decl; gnulib assumes C89 or
23466         better.
23467         (NULL) [!defined NULL]: Remove; we assume C89 or better.
23468         Include <dirent.h> in a way that is compatible with modern Autoconf.
23469         (_D_ALLOC_NAMELEN, _D_EXACT_NAMLEN):
23470         New macros, if not already defined.
23471         Include <unistd.h> if _LIBC, not if __GNU_LIBRARY__.
23472         Use "_LIBC", not "defined _LIBC", for consistency.
23473         (HAVE_MEMPCPY): Remove; no longer needed now that gnulib has
23474         a mempcpy module.
23475         (__lstat, __closedir, __opendir, __readdir) [!_LIBC]: New macros.
23476         (GETCWD_RETURN_TYPE): Remove.  All uses replaced by char *.
23477         * lib/xgetcwd.c: David MacKenzie's old code was removed, so give
23478         credit only to Jim Meyering and adjust the copyright dates.
23479         Do not include <limits.h>, <stdio.h>, <sys/types.h>,
23480         <stdlib.h>, <unistd.h>, "pathmax.h".
23481         Instead, include "xgetcwd.h" (first) and "getcwd.h".
23482         (INITIAL_BUFFER_SIZE): Remove.
23483         (xgetcwd): Rely on getcwd, since we now depend on a reliable one.
23484
23485 2004-11-25  Paul Eggert  <eggert@cs.ucla.edu>
23486
23487         * m4/getcwd-path-max.m4 (gl_FUNC_GETCWD_PATH_MAX): Renamed from
23488         GL_FUNC_GETCWD_PATH_MAX for consistency.  All uses changed.
23489         Use the _ONCE methods, for efficiency.
23490         Check for fcntl.h.  In test program, include <errno.h>
23491         and <fcntl.h> if available.  Remove old K&R cruft from
23492         test program.  Check for common errors in GNU/Linux,
23493         OpenBSD, and Solaris.  Just set gl_cv_func_getcwd_path_max;
23494         don't do AC_LIBOBJ, as that's getcwd.m4's job.
23495         * m4/getcwd.m4 (gl_FUNC_GETCWD_NULL): Renamed from
23496         AC_FUNC_GETCWD_NULL.  All used changed.  Change cache variable
23497         name accordingly.
23498         (gl_FUNC_GETCWD, gl_PREREQ_GETCWD): New macros.  Revamp to
23499         accommodate new getcwd.c.
23500         * m4/jm-macros.m4 (gl_MACROS): Don't require GL_FUNC_GETCWD_PATH_MAX.
23501         * m4/prereq.m4 (gl_PREREQ): Add gl_FUNC_MEMPCPY.
23502         * m4/xgetcwd.m4 (gl_XGETCWD): Replace with gl_FUNC_GETCWD, since
23503         that's all we need now.
23504
23505 2004-11-23  Sergey Poznyakoff  <gray@Mirddin.farlep.net>
23506
23507         * m4/argp.m4 (gl_ARGP): Require gl_GETOPT_SUBSTITUTE unconditionally:
23508         argp-parse.c depends on getopt internals, that means we should
23509         always use our getopt, to be on the safe side.
23510         * m4/getopt.m4 (gl_GETOPT): Check if GETOPT_H is already set, in
23511         order not to spoil the result of an eventual previous invocation
23512         of gl_GETOPT_SUBSTITUTE.
23513
23514 2004-11-23  Sergey Poznyakoff  <gray@Mirddin.farlep.net>
23515
23516         * lib/getopt_.h: Re-addition of __getopt_argv_const caused
23517         redefinition warnings. To avoid them, include the defines
23518         in `#if !defined __need_getopt ... #endif'. The only place
23519         where __getopt_argv_const is used is in definitions
23520         of getopt_long and getopt_long_only below, which are as well
23521         protected by `#ifndef __need_getopt'.
23522         [defined __GETOPT_PREFIX && !defined __need_getopt]: Undef
23523         __need_getopt after including <stdio.h> and <unistd.h> These
23524         headers might have defined it.
23525
23526 2004-11-23  Paul Eggert  <eggert@cs.ucla.edu>
23527
23528         * m4/utimens.m4 (gl_UTIMENS): Check for futimes function.
23529
23530 2004-11-23  Paul Eggert  <eggert@cs.ucla.edu>
23531
23532         * lib/utimens.c (__attribute__, ATTRIBUTE_UNUSED): New macros.
23533         (futimens): New function, which uses futimes if available.
23534         (futimens, utimens): Support timespec==NULL, with same semantics
23535         as utime and utimens.
23536         * lib/utimens.h (futimens): New decl.
23537
23538 2004-11-23  Jim Meyering  <jim@meyering.net>
23539
23540         * lib/getopt_.h: Remove trailing blanks.
23541
23542 2004-11-23  Jim Meyering  <jim@meyering.net>
23543
23544         * lib/__fpending.c: Add comment.
23545
23546 2004-11-22  Paul Eggert  <eggert@cs.ucla.edu>
23547
23548         * modules/canonicalize (Depends-on): Add xreadlink.
23549         Problem reported by James Youngman.
23550
23551 2004-11-20  Paul Eggert  <eggert@cs.ucla.edu>
23552
23553         * lib/getopt_.h (__GETOPT_CONCAT, __GETOPT_XCONCAT, __GETOPT_ID):
23554         New macros.
23555         (getopt, getopt_long, getopt_long_only, optarg, opterr, optind,
23556         optopt): Use them instead of invoking ## directly; otherwise, the
23557         symbols will be __GETOPT_PREFIXgetopt rather than rpl_getopt.
23558
23559 2004-11-19  Bruno Haible  <bruno@clisp.org>
23560
23561         * lib/strtok_r.c: Move comments from here...
23562         * lib/strtok_r.h: ... to here.
23563
23564 2004-11-17  Paul Eggert  <eggert@cs.ucla.edu>
23565
23566         * m4/calloc.m4 (_AC_FUNC_CALLOC_IF): Check for buggy calloc
23567         implementations that mishandle size_t overflow.
23568
23569 2004-11-17  Paul Eggert  <eggert@cs.ucla.edu>
23570
23571         * lib/realloc.c (rpl_realloc): Call 'free' if n==0, since realloc
23572         might fail.  Problem reported by Yoann Vandoorselaere.
23573         * lib/calloc.c (rpl_calloc): Defend against buggy calloc
23574         implementations that mishandle size_t overflow.
23575
23576 2004-11-16  Paul Eggert  <eggert@cs.ucla.edu>
23577
23578         * modules/canon-host (Depends-on): Add strdup.
23579
23580 2004-11-16  Paul Eggert  <eggert@cs.ucla.edu>
23581
23582         * m4/canon-host.m4 (gl_CANON_HOST): Check for getaddrinfo.
23583
23584 2004-11-16  Paul Eggert  <eggert@cs.ucla.edu>
23585
23586         * lib/canon-host.c: Include "strdup.h".
23587         (canon_host): Use getaddrinfo if available, so that IPv6 works.
23588         Use strdup instead of malloc/strcpy to duplicate strings.
23589
23590         * lib/human.h (LONGEST_HUMAN_READABLE): Add 1 for space before unit.
23591         (human_space_before_unit): New constant.
23592         * lib/human.c (human_readable): Support it.
23593
23594         * lib/xgetcwd.c: Include <limits.h>, for PATH_MAX.
23595         (xgetcwd): Set errno correctly when failing.
23596         Work around Solaris 9 bug: getcwd sets errno==ERANGE even though
23597         the failure is actually due to a PATH_MAX problem.
23598
23599         Further getopt changes to make it more likely that glibc will
23600         buy the changes back.
23601         * lib/getopt.c (POSIXLY_CORRECT): New constant.
23602         (getopt): Use it, so to preserve glibc semantic
23603         * lib/getopt1.c (getopt_long, getopt_long_only): Arg is char * const *
23604         when compiling for libc.
23605         * lib/getopt_.h (__getopt_argv_const): Bring it back.
23606         (getopt_long, getopt_long_only): Use it.
23607
23608         * lib/getopt.c (_getopt_initialize, _getopt_internal_r,
23609         _getopt_internal): New arg POSIXLY_CORRECT.  All callers changed.
23610         (getopt): Argv is now char * const *, as per standard.
23611         (_getopt_internal_r, _getopt_internal): Argv is now char **,
23612         not char *__getopt_argv_const *.
23613         * lib/getopt1.c (getopt_long, _getopt_long_r, getopt_long_only,
23614         _getopt_long_only_r): Likewise.
23615         * lib/getopt_.h (getopt, getopt_long, geopt_long_only): Likewise.
23616         * lib/getopt_int.h (_getopt_internal, _getopt_internal_r,
23617         _getopt_long_r, _getopt_long_only_r): Likewise.
23618         * lib/getopt_.h (__getopt_argv_const): Remove.
23619         (getopt): Argv is now char * const *, as per standard.
23620
23621         * lib/getdate.y (tORDINAL): New token.
23622         (day, relunit): Allow it for relative times.
23623         (relative_time_table): Use tORDINAL for ordinals.
23624
23625 2004-11-16  Paul Eggert  <eggert@cs.ucla.edu>
23626
23627         * doc/getdate.texi (General date syntax): "next" is 1, not 2.
23628         Document that "second" isn't allowed as an ordinal number.
23629
23630 2004-11-16  Jim Meyering  <jim@meyering.net>
23631
23632         * modules/closeout (Depends-on): Add fpending.
23633
23634 2004-11-15  Jim Meyering  <jim@meyering.net>
23635
23636         * lib/closeout.c: Include "__fpending.h" once again.
23637         Include <stdbool.h>.
23638         (close_stdout): Don't fail just because stdout was closed initially,
23639         since some programs don't write to stdout in the normal course of
23640         operation (other than --version and --help), and we don't want this
23641         function to make e.g. `touch file >&-' fail.
23642         But do fail if it was closed and someone has tried to write to it.
23643         E.g., `printf foo >&-' must fail.
23644
23645 2004-11-13  Jim Meyering  <jim@meyering.net>
23646
23647         * m4/jm-macros.m4: Do require gl_FUNC_FPENDING.
23648
23649 2004-11-12  Simon Josefsson  <jas@extundo.com>
23650
23651         * config/srclist.txt: Add strtok_r.c, glibc bought our changes, but a
23652         small doc fix is still pending.
23653
23654 2004-11-11  Simon Josefsson  <jas@extundo.com>
23655
23656         * modules/strtok_r: New file.
23657
23658         * MODULES.html.sh (Support for systems lacking POSIX:2001): Add
23659         strtok_r.
23660
23661 2004-11-11  Simon Josefsson  <jas@extundo.com>
23662
23663         * m4/strtok_r.m4: New file.
23664
23665         * m4/getopt.m4: Replace opterr.
23666
23667 2004-11-11  Simon Josefsson  <jas@extundo.com>
23668
23669         * lib/strtok_r.h, strtok_r.c: New file.
23670
23671 2004-11-11  Paul Eggert  <eggert@cs.ucla.edu>
23672
23673         * m4/getopt.m4 (gl_GETOPT_SUBSTITUTE): Define __GETOPT_PREFIX instead
23674         of replacing opterr, getopt, etc.  This should handle the
23675         powerpc-apple-darwin5.5 problem recently noted by Simon Josefsson.
23676
23677 2004-11-11  Paul Eggert  <eggert@cs.ucla.edu>
23678
23679         * lib/getopt_.h (__getopt_argv_const): New macro, to be used so that
23680         we can stop lying to compilers about the constness of argv when we
23681         are compiled outside glibc.
23682         (getopt, getopt_long, getopt_long_only): Use it.
23683         * lib/getopt.c (_getopt_initialize, _getopt_internal_r,
23684         _getopt_internal, getopt): Likewise.
23685         * lib/getopt1.c (getopt_long, _getopt_long_r, getopt_long_only,
23686         _getopt_long_only_r): Likewise.
23687         * lib/getopt_int.h (_getopt_internal, _getopt_internal_r,
23688         _getopt_long_r, _getopt_long_only_r): Likewise.
23689
23690         * lib/getopt_.h [defined __GETOPT_PREFIX && !defined __need_getopt]:
23691         Include <stdlib.h> and <stdio.h>, and <unistd.h> if available.
23692         Then rename getopt to __GETOPT_PREFIX##getopt, and so forth for
23693         the other external symbols.
23694         (getopt) [!defined __GNU_LIBRARY]: Use prototype, not old-style
23695         declaration, since the above renaming now works around collisions.
23696
23697 2004-11-11  Jim Meyering  <jim@meyering.net>
23698
23699         * lib/linebreak.c: Remove trailing blanks.
23700         * lib/alloca_.h: Likewise.
23701         * lib/acosl.c: Likewise.
23702         * lib/euidaccess.c: Likewise.
23703         * lib/allocsa.h: Likewise.
23704
23705 2004-11-10  Simon Josefsson  <jas@extundo.com>
23706
23707         * m4/getaddrinfo.m4: New file.
23708
23709 2004-11-10  Simon Josefsson  <jas@extundo.com>
23710
23711         * lib/getaddrinfo.h, lib/getaddrinfo.c: New files.
23712
23713 2004-11-10  Simon Josefsson  <jas@extundo.com>
23714
23715         * MODULES.html.sh (Support for systems lacking POSIX:2001): Add
23716         getaddrinfo.
23717
23718         * modules/getaddrinfo: New file.
23719
23720 2004-11-10  Paul Eggert  <eggert@cs.ucla.edu>
23721
23722         * m4/prereq.m4 (gl_PREREQ): Require gt_FUNC_SETENV.
23723
23724 2004-11-10  Paul Eggert  <eggert@cs.ucla.edu>
23725
23726         * lib/mktime.c (SHR): New macro, which is a portable
23727         substitute for >> that should work even on Crays.
23728         (TIME_T_MIDPOINT, ydhms_diff, __mktime_internal): Use it.
23729         Problem reported by Mark D. Baushke in
23730         <http://lists.gnu.org/archive/html/bug-gnulib/2004-11/msg00071.html>.
23731         * lib/getdate.y (SHR): Likewise.
23732         (tm_diff): Use it.
23733         * lib/strftime.c (SHR): Likewise.
23734         (tm_diff): Use it.
23735         * lib/quotearg.c (struct quoting_options): Use unsigned int for
23736         quote_these_too, so that right shifts are well defined.  All uses
23737         changed.
23738
23739 2004-11-10  Jim Meyering  <jim@meyering.net>
23740
23741         Ensure that no close failure goes unreported.
23742         * lib/closeout.c (close_stdout): Always close stdout.  I.e., don't
23743         return early when it seems there's nothing to flush.
23744         Don't include __fpending.h.
23745
23746 2004-11-10  Jim Meyering  <jim@meyering.net>
23747
23748         * modules/closeout (Depends-on): Remove fpending.
23749
23750 2004-11-10  Jim Meyering  <jim@meyering.net>
23751
23752         * m4/jm-macros.m4 (gl_MACROS): Don't require gl_FUNC_FPENDING.
23753
23754 2004-11-09  Paul Eggert  <eggert@cs.ucla.edu>
23755
23756         * m4/strftime.m4 (_gl_STRFTIME_PREREQS): Remove.  Move its body to
23757         gl_FUNC_STRFTIME.
23758         (gl_FUNC_STRFTIME): Use AC_CHECK_FUNCS_ONCE and AC_CHECK_HEADERS_ONCE
23759         and AC_REQUIRE when possible, to avoid duplicate checks.
23760         Check for <wchar.h>.
23761
23762 2004-11-09  Paul Eggert  <eggert@cs.ucla.edu>
23763
23764         * lib/strftime.c (DO_MULTIBYTE): Check for wchar.h, too.
23765
23766 2004-11-09  Bruno Haible  <bruno@clisp.org>
23767
23768         * m4/sockpfaf.m4: New file.
23769
23770 2004-11-05  Bruno Haible  <bruno@clisp.org>
23771
23772         * lib/readlink.c: Include stddef.h, needed for size_t on Woe32.
23773         Reported by Mark D. Baushke <mdb@cvshome.org>.
23774
23775 2004-11-04  Bruno Haible  <bruno@clisp.org>
23776
23777         2004-09-11  Bruno Haible  <bruno@clisp.org>
23778                 * allocsa.valgrind: New file.
23779         2004-02-06  Bruno Haible  <bruno@clisp.org>
23780                 * allocsa.h (sa_alignof): Define differently with HP-UX cc, to
23781                 avoid a bug of this cc on HP-UX 10.20 dealing with enums.
23782                 Reported by Christopher Seip <chris.seip@hp.com>.
23783
23784 2004-11-04  Bruno Haible  <bruno@clisp.org>
23785
23786         * modules/allocsa (Files): Add lib/allocsa.valgrind.
23787         (Makefile.am): Distribute it.
23788
23789 2004-11-03  Paul Eggert  <eggert@cs.ucla.edu>
23790
23791         * lib/xreadlink.c (xreadlink): AIX and HP-UX readlink return -1
23792         with errno == ERANGE if the buffer is too small.
23793         Problem reported by Mark D. Baushke.
23794
23795 2004-11-03  Albert Chin  <china@thewrittenword.com>
23796             Paul Eggert  <eggert@cs.ucla.edu>
23797
23798         * m4/uint32_t.m4 (gl_AC_TYPE_UINT32_T): When determining uint32_t
23799         equivalent, substitute $ac_type for equivalent type rather than
23800         blindly using uint32_t *always* which won't work if uint32_t is not
23801         available.  Define _UINT32_T to work around typedef of uint32_t if
23802         <sys/sched.h>, <pthread.h>, or <semaphore.h> used on Solaris
23803         2.5.1.
23804
23805 2004-11-02  Paul Eggert  <eggert@cs.ucla.edu>
23806
23807         * m4/jm-macros.m4: Sync from coreutils.
23808         (gl_MACROS): Check for mbrlen, for pathchk.
23809         (gl_CHECK_ALL_TYPES): Require AC_TYPE_MBSTATE_T, for pathchk.
23810
23811 2004-11-02  Paul Eggert  <eggert@cs.ucla.edu>
23812
23813         * lib/xreadlink.c (MAXSIZE): New macro.
23814         (xreadlink): Use it instead of SSIZE_MAX.  Ensure initial buffer
23815         size does not exceed MAXSIZE.  Avoid cast.
23816         As suggested by Mark D. Baushke in
23817         <http://lists.gnu.org/archive/html/bug-gnulib/2004-11/msg00009.html>,
23818         if readlink fails with buffer size just under MAXSIZE, try again
23819         with MAXSIZE.
23820
23821 2004-11-02  Paul Eggert  <eggert@cs.ucla.edu>
23822
23823         * config/srclist.txt: Add mktime.c; glibc bought all our changes.
23824
23825 2004-11-02  Derek R. Price  <derek@ximbiot.com>
23826         and  Paul Eggert  <eggert@cs.ucla.edu>
23827
23828         * lib/getdate.y [!TEST]: Include <stdio.h>, since we use sprintf now.
23829         (get_date): Overparenthesize to avoid GCC warning.
23830
23831 2004-11-02  Bruno Haible  <bruno@clisp.org>
23832
23833         * m4/setenv.m4 (gt_FUNC_SETENV): Define VOID_UNSETENV if unsetenv()
23834         returns void.
23835
23836 2004-11-02  Bruno Haible  <bruno@clisp.org>
23837
23838         * lib/setenv.h (unsetenv): Define as a macro if the system's unsetenv()
23839         function returns void.
23840
23841 2004-11-01  Paul Eggert  <eggert@cs.ucla.edu>
23842
23843         * m4/getpass.m4 (gl_PREREQ_GETPASS): Check for declarations of
23844         fflush_unlocked, flockfile, funlockfile, funlockfile,
23845         fputs_unlocked, putc_unlocked.
23846
23847 2004-11-01  Paul Eggert  <eggert@cs.ucla.edu>
23848
23849         * lib/getpass.c (fflush_unlocked, flockfile, funlockfile)
23850         (funlockfile, fputs_unlocked, putc_unlocked): Don't define if
23851         already declared.
23852
23853 2004-10-29  Paul Eggert  <eggert@cs.ucla.edu>
23854
23855         * modules/getdate (Files): Add doc/getdate.texi.
23856         (Depends-on): Add setenv, xalloc.
23857
23858 2004-10-29  Paul Eggert  <eggert@cs.ucla.edu>
23859
23860         * lib/getdate.y: Add support for TZ="foo" within a date string.
23861         Fix some bugs near time_t boundaries.  Reject dates with
23862         out-of-range components, e.g., "Sept 31".
23863         Include <stdlib.h>, "setenv.h", "xalloc.h".
23864         (ISDIGIT_LOCALE): Remove; unused.
23865         Note that the TZ and time functions used here are not reentrant.
23866         (mktime_ok, get_tz): New functions.
23867         (TZBUFSIZE): New constant.
23868         (get_date): Parse leading TZ="foo".  Reject out-of-range components;.
23869         This requires that we sometimes generate our own TZ="XXX..." setting.
23870
23871 2004-10-29  Paul Eggert  <eggert@cs.ucla.edu>
23872
23873         * doc/getdate.texi: New file, from coreutils with modifications for
23874         the new TZ parsing.
23875
23876 2004-10-27  Derek R. Price  <derek@ximbiot.com>
23877
23878         * lib/mktime.c (not_equal_tm): Remove redundant check.
23879
23880 2004-10-24  Paul Eggert  <eggert@cs.ucla.edu>
23881
23882         * modules/regex (lib_SOURCES): Add regex.c.
23883         Reported by James Youngman in
23884         <http://lists.gnu.org/archive/html/bug-gnulib/2004-10/msg00199.html>.
23885
23886 2004-10-24  Paul Eggert  <eggert@cs.ucla.edu>
23887
23888         * lib/getdate.y: Use Bison 1.875 features, and some minor
23889         code cleanups.  This change does not affect semantics.
23890         Don't include <stdlib.h>; no longer needed.
23891         Don't include unlocked-io.h; only the "#if TEST" code uses
23892         stdio, and performance isn't crucial there.
23893         (PC, YYLEX_PARAM, YYPARSE_PARAM): Remove; replaced by
23894         Bison 1.875 features as described below.
23895         All uses of "PC." replaced by "pc->".
23896         (YYSTYPE): Add a forward declaration.
23897         (yylex, yyerror): Use full prototypes in forward decls.
23898         Use "%pure-parser" rather than obsolescent "%pure_parser".
23899         Use %parse-param and %lex-param instead of obsolescent
23900         YYPARSE_PARAM and YYLEX_PARAM.
23901         (meridian_table, month_and_day_table, time_units_table,
23902         relative_time_table, time_zone_table, military_table,
23903         lookup_zone, lookup_word, get_date):
23904         Use NULL instead of 0 where appropriate.
23905         (to_hour): Avoid abort (), to avoid a dependency on
23906         stdlib.h.
23907         (yyerror, yylex): Now accepts parser_control * arg.
23908         (main) [TEST]: Use '\0' rather than 0 for char.
23909
23910 2004-10-22  Paul Eggert  <eggert@cs.ucla.edu>
23911
23912         * m4/getpagesize.m4 (gl_GETPAGESIZE): Check for <sys/param.h>.
23913
23914 2004-10-22  Paul Eggert  <eggert@cs.ucla.edu>
23915
23916         * lib/getpagesize.c (getpagesize): Don't assume <sys/param.h> exists.
23917         It's now the caller's responsibility to handle the case where
23918         !HAVE_GETPAGESIZE && !defined getpagesize.
23919
23920         * lib/mktime.c (leapyear): Arg is long int, not int.
23921
23922 2004-10-18  Paul Eggert  <eggert@cs.ucla.edu>
23923
23924         * lib/argp-fs-xinl.c, argp-xinl.c: Update from glibc.
23925
23926 2004-10-17  Paul Eggert  <eggert@cs.ucla.edu>
23927
23928         * gnulib-tool (func_emit_lib_Makefile_am): Fix typo: a $ was
23929         missing.  Problem reported by James Youngman.
23930
23931 2004-10-16  Simon Josefsson  <jas@extundo.com>
23932
23933         * gnulib-tool: Fix comments.  Fix parse problem.
23934         (func_emit_lib_Makefile_am): Don't hard code a in libgl_a_SOURCES.
23935
23936 2004-10-15  Paul Eggert  <eggert@cs.ucla.edu>
23937
23938         * m4/getopt.m4 (gl_GETOPT): Detect and reject the incompatible BSD
23939         implementation of getopt_long.  Problem reported by Alexander Taler in:
23940         http://lists.gnu.org/archive/html/bug-gnulib/2004-10/msg00103.html
23941
23942 2004-10-15  Bruno Haible  <bruno@clisp.org>
23943
23944         * gnulib-tool: Untabify. Initialize supplied_libname.
23945         (func_usage): More homogenous output.
23946         (func_modules_transitive_closure, func_modules_to_filelist,
23947         func_emit_lib_Makefile_am): New functions.
23948         (func_import): New function, extracted from big case statement. Use
23949         func_get_license, func_modules_transitive_closure,
23950         func_modules_to_filelist, func_emit_lib_Makefile_am. Initialize
23951         opt_lgpl. Don't use test -a, as it's not portable.
23952         (func_create_testdir): Use func_modules_transitive_closure,
23953         func_modules_to_filelist, func_emit_lib_Makefile_am.
23954
23955 2004-10-15  Bruno Haible  <bruno@clisp.org>
23956
23957         * gnulib-tool (func_import): Let gl_INIT define LTALLOCA when needed.
23958
23959 2004-10-15  Bruno Haible  <bruno@clisp.org>
23960
23961         * gnulib-tool (func_emit_lib_Makefile_am): Add markers to separate
23962         the portions belonging to each module.
23963         Suggested by Derek Robert Price <derek@ximbiot.com>.
23964
23965 2004-10-12  Simon Josefsson  <jas@extundo.com>
23966
23967         * lib/getpass.c (fflush_unlocked, flockfile, funlockfile)
23968         (fputs_unlocked, putc_unlocked) [!_LIBCS && !USE_UNLOCKED_IO]: Map
23969         to real functions.
23970
23971 2004-10-11  Yoann Vandoorselaere  <yoann@prelude-ids.org>
23972
23973         * modules/vsnprintf: New file.
23974
23975 2004-10-11  Yoann Vandoorselaere  <yoann@prelude-ids.org>
23976
23977         * m4/vsnprintf.m4: New file.
23978
23979 2004-10-11  Yoann Vandoorselaere  <yoann@prelude-ids.org>
23980
23981         * lib/vsnprintf.h: New file.
23982         * lib/vsnprintf.c: New file.
23983
23984 2004-10-11  Bruno Haible  <bruno@clisp.org>
23985
23986         * MODULES.html.sh (Support for systems lacking ISO C 99): Add
23987         vsnprintf.
23988
23989 2004-10-10  Paul Eggert  <eggert@cs.ucla.edu>
23990
23991         * config/srclistvars.sh: Add GNUSTANDARDS (for eggert only).
23992
23993 2004-10-07  Bruno Haible  <bruno@clisp.org>
23994
23995         * lib/snprintf.c (snprintf): Avoid a memory allocation if the result
23996         fits into the provided buffer.
23997
23998 2004-10-06  Paul Eggert  <eggert@cs.ucla.edu>
23999
24000         * lib/diacrit.c, diacrit.h: Add GPL notice.
24001
24002         * lib/atanl.c, logl.c: Add GPL notice, to match glibc's added LGPL
24003         notice.
24004         * lib/atanl.c (atanl): Keep the code as similar to glibc as possible.
24005         * lib/logl.c (logl): Keep the code as similar to glibc as possible.
24006         This avoids a potential constant-folding bug.
24007
24008 2004-10-05  Bruno Haible  <bruno@clisp.org>
24009
24010         * m4/strsep.m4 (gl_FUNC_STRSEP): Require AC_GNU_SOURCE. Don't check
24011         for the declaration of strsep.
24012
24013 2004-10-05  Bruno Haible  <bruno@clisp.org>
24014
24015         * lib/strsep.h: Don't declare strsep() if HAVE_STRSEP.
24016
24017 2004-10-04  Simon Josefsson  <jas@extundo.com>
24018
24019         * modules/memmem: New file.
24020         * tests/test-memmem.c: New file.
24021         * MODULES.html.sh (Extra functions based on ANSI C 89): Add memmem.
24022
24023 2004-10-04  Simon Josefsson  <jas@extundo.com>
24024
24025         * m4/memmem.m4: New file.
24026
24027 2004-10-04  Simon Josefsson  <jas@extundo.com>
24028
24029         * lib/memmem.h: New file.
24030         * lib/memmem.c: New file, taken from glibc.
24031
24032 2004-10-04  Simon Josefsson  <jas@extundo.com>
24033
24034         * lib/error.c, md5.c, regex.c: Use '#if USE_UNLOCKED_IO' instead of
24035         '#ifdef USE_UNLOCKED_IO'.
24036
24037 2004-10-04  Simon Josefsson  <jas@extundo.com>
24038
24039         * config/srclist.txt: Add memmem from glibc.
24040
24041 2004-10-04  Paul Eggert  <eggert@cs.ucla.edu>
24042
24043         * modules/xalloc (Files, Makefile.am): Remove xstrdup.c.
24044
24045         * modules/argmatch, modules/argp, modules/closeout, modules/error,
24046         modules/exclude, modules/getdate, modules/getline,
24047         modules/getndelim2, modules/getpass, modules/getpass-gnu,
24048         modules/getusershell, modules/linebuffer, modules/md5,
24049         modules/mountlist, modules/posixtm, modules/readtokens,
24050         modules/readutmp, modules/regex, modules/sha1,
24051         modules/version-etc, modules/yesno:
24052         Remove dependency on unlocked-io.
24053
24054 2004-10-04  Paul Eggert  <eggert@cs.ucla.edu>
24055
24056         * m4/xalloc.m4 (gl_PREREQ_XSTRDUP): Remove.  All uses removed.
24057
24058         * m4/unlocked-io.m4: Add copyright notice.
24059         (gl_FUNC_GLIBC_UNLOCKED_IO): Define USE_UNLOCKED_IO.
24060
24061 2004-10-04  Paul Eggert  <eggert@cs.ucla.edu>
24062
24063         * lib/xalloc.h (xmemdup): Renamed from xclone.  All uses changed.
24064         * lib/xmalloc.c (xmemdup): Likewise.
24065         * lib/xalloc.h (CCLONE, CLONE, NEW, XCALLOC, XMALLOC, XREALLOC,
24066         XFREE): Remove these long-obsolescent macros.
24067         * lib/xmalloc.c (xstrdup): Implementation moved here from xstrdup.c
24068         * lib/xstrdup.c: Remove.
24069
24070         * lib/regex.c (re_comp): Cast gettext return value to char *,
24071         Problem reported by Martin Neitzel via Mark D. Baushke.
24072
24073 2004-10-04  Paul Eggert  <eggert@cs.ucla.edu>
24074
24075         * lib/argmatch.c, closeout.c, error.c, exclude.c, getdate.y,
24076         getndelim2.c, getpass.c, getusershell.c, linebuffer.c,
24077         md5.c, mountlist.c, posixtm.c, readtokens.c, readutmp.c,
24078         regex.c, sha1.c, version-etc.c, yesno.c:
24079         Include "unlocked-io.h" only if USE_UNLOCKED_IO.
24080         * lib/unlocked-io.h: Don't worry about USE_UNLOCKED_IO; that's now
24081         the includer's responsibility.
24082
24083         Sync from coreutils.
24084
24085         * lib/modechange.c (mode_compile): Don't decrement a pointer that
24086         points to the start of a string, as the C Standard says the
24087         resulting behavior is undefined.
24088
24089         * lib/backupfile.h (enum backuptype): Rename none -> no_backups,
24090         simple -> simple_backups, numbered_existing ->
24091         numbered_existing_backups, numbered -> numbered_backups
24092         to avoid shadowing problems.  All uses changed.
24093         * lib/argmatch.c (enum backuptype) [defined TEST]: Likewise.
24094         * lib/backupfile.c (check_extension, numbered_backup):
24095         Rename locals to avoid shadowing 'basename'.
24096         * lib/backupfile.h (VALID_BACKUP_TYPE): Don't evaluate arg more than
24097         once.
24098
24099         * lib/.cppi-disable: Add getopt_.h, getopt_int.h.
24100         * lib/.cvsignore: Add getopt.h.
24101
24102 2004-10-04  Bruno Haible  <bruno@clisp.org>
24103
24104         * modules/README: New file.
24105         * gnulib-tool (func_all_modules, func_verify_module): modules/README is
24106         not a module.
24107
24108 2004-10-02  Jim Meyering  <jim@meyering.net>
24109
24110         * lib/dirfd.h, getpagesize.h: Add copyright notice.
24111
24112 2004-10-01  Yoann Vandoorselaere  <yoann@prelude-ids.org>
24113
24114         * modules/strsep: New file.
24115
24116 2004-10-01  Yoann Vandoorselaere  <yoann@prelude-ids.org>
24117
24118         * m4/strsep.m4: New file.
24119
24120 2004-10-01  Yoann Vandoorselaere  <yoann@prelude-ids.org>
24121
24122         * lib/strsep.h: New file.
24123         * lib/strsep.c: New file.
24124
24125 2004-10-01  Simon Josefsson  <jas@extundo.com>
24126
24127         * lib/snprintf.c (snprintf): Handle size==0.
24128
24129 2004-10-01  Simon Josefsson  <jas@extundo.com>
24130             Bruno Haible  <bruno@clisp.org>
24131
24132         * lib/snprintf.c: Include <stdarg.h>, <stdlib.h>, <string.h>.
24133         (snprintf): Declare 'args'.
24134
24135 2004-10-01  Paul Eggert  <eggert@cs.ucla.edu>
24136
24137         * lib/snprintf.c: Remove comments as to why each header is needed.
24138
24139 2004-10-01  Bruno Haible  <bruno@clisp.org>
24140
24141         * MODULES.html.sh: Add strsep.
24142
24143 2004-09-30  Simon Josefsson  <jas@extundo.com>
24144
24145         * modules/snprintf: New file.
24146
24147 2004-09-30  Simon Josefsson  <jas@extundo.com>
24148
24149         * m4/snprintf.m4: New file.
24150
24151 2004-09-30  Simon Josefsson  <jas@extundo.com>
24152
24153         * lib/snprintf.h, lib/snprintf.c: New files.
24154
24155 2004-09-30  Sergey Poznyakoff  <gray@Mirddin.farlep.net>
24156
24157         * lib/argp-help.c (canon_doc_option): Fixed coredump if *name==NULL
24158         (hol_entry_help): Never translate an empty string.
24159         Do not translate option tag (opt->name) if OPTION_NO_TRANS is set
24160         * lib/argp.h (OPTION_NO_TRANS): New option.
24161
24162 2004-09-30  Paul Eggert  <eggert@cs.ucla.edu>
24163
24164         * modules/argp (Maintainer): Replace Simon Josefsson
24165         by Sergey Poznyakoff.
24166
24167 2004-09-30  Paul Eggert  <eggert@cs.ucla.edu>
24168
24169         * config/srclist.txt: Comment-out argp/argp.h, until we get the argp
24170         changes merged back into glibc.
24171
24172 2004-09-30  Paul Eggert  <eggert@cs.ucla.edu>
24173
24174         * MODULES.html.sh (Support for systems lacking ISO C 99): Add snprintf.
24175
24176 2004-09-29  Oskar Liljeblad  <oskar@osk.mine.nu>
24177
24178         * lib/xvasprintf.c: Include xalloc.h.
24179         (xvasprintf): Use xalloc_die, not xmalloc_die.
24180
24181 2004-09-29  Bruno Haible  <bruno@clisp.org>
24182
24183         * modules/alloca-opt: New file, derived from modules/alloca.
24184         * modules/allocsa: Depend on alloca-opt instead of alloca.
24185         * modules/setenv: Likewise.
24186         * modules/vasnprintf: Likewise.
24187         * MODULES.html.sh: Add alloca-opt.
24188
24189 2004-09-28  Simon Josefsson  <jas@extundo.com>
24190
24191         * gnulib-tool: New parameter --lgpl, to asseert that modules are
24192         LGPL, and to replace license template from GPL to LGPL.
24193
24194 2004-09-28  Paul Eggert  <eggert@cs.ucla.edu>
24195
24196         * modules/dummy: Change license to LGPL.
24197
24198 2004-09-28  Paul Eggert  <eggert@cs.ucla.edu>
24199
24200         * lib/dummy.c: Change copyright notice to FSF, and license to GPL.
24201
24202 2004-09-24  Simon Josefsson  <jas@extundo.com>
24203
24204         * modules/minmax (License): Change from GPL to LGPL.
24205
24206 2004-09-23  Simon Josefsson  <jas@extundo.com>
24207
24208         * gnulib-tool (--import): Typo.
24209
24210 2004-09-23  Simon Josefsson  <jas@extundo.com>
24211
24212         * gnulib-tool (--import): Make sure *.m4 end up in m4/ by default.
24213
24214 2004-09-22  Bruno Haible  <bruno@clisp.org>
24215
24216         * modules/*: Add 'License' field.
24217         * gnulib-tool: Accept --extract-license option.
24218         (func_get_license): New function.
24219
24220 2004-09-21  Bruno Haible  <bruno@clisp.org>
24221
24222         * modules/vasnprintf (Files): Add m4/stdint_h.m4, m4/inttypes_h.m4.
24223         Reported by Simon Josefsson.
24224
24225 2004-09-20  Paul Eggert  <eggert@cs.ucla.edu>
24226
24227         * modules/inttostr (Files): Add m4/longlong.m4, since it uses
24228         gl_AC_TYPE_LONG_LONG.
24229
24230 2004-09-20  Paul Eggert  <eggert@cs.ucla.edu>
24231
24232         * config/srclist.txt: Add getsubopt.c, since libc bought our changes.
24233
24234 2004-09-18  Simon Josefsson  <jas@extundo.com>
24235         and  Paul Eggert  <eggert@cs.ucla.edu>
24236
24237         * gnulib-tool: Replace various ad-hoc automake/autoconf/aclocal
24238         calls with autoreconf.  Define GL_LIB.
24239
24240 2004-09-14  Karl Berry  <karl@gnu.org>
24241
24242         * config/srclist.txt: unsync setenv.c, sigh.
24243
24244 2004-09-13  Paul Eggert  <eggert@cs.ucla.edu>
24245
24246         * lib/argp-pvh.c (argp_program_version_hook): Provide initial value.
24247         Problem reported by Bruno Haible in:
24248         http://lists.gnu.org/archive/html/bug-tar/2004-09/msg00023.html
24249
24250 2004-09-13  Paul Eggert  <eggert@cs.ucla.edu>
24251
24252         * config/srclist.txt: Comment out argp-pvh.c.
24253
24254 2004-09-11  Paul Eggert  <eggert@cs.ucla.edu>
24255
24256         * lib/mempcpy.h: Wrap the entire include file inside #ifndef mempcpy,
24257         in case some system header has #define'd it.  Problem reported by
24258         Soeren D. Schulze in
24259         <http://lists.gnu.org/archive/html/bug-gnulib/2004-09/msg00017.html>.
24260
24261 2004-09-09  Karl Berry  <karl@gnu.org>
24262
24263         * regex.[ch]: delete from the root.  These were supposed to be
24264                 synced with emacs cvs, but this has not happened for about
24265                 a year, and anyway nothing else uses emacs regex.[ch].
24266                 bug-gnulib mail from Jeff Bailey, 9 Sep 2004 15:49:24 -0700.
24267                 lib/regex[.ch] is untouched.
24268
24269 2004-09-09  Bruno Haible  <bruno@clisp.org>
24270
24271         * modules/vasnprintf (Files): Add m4/eoverflow.m4.
24272
24273 2004-09-09  Bruno Haible  <bruno@clisp.org>
24274
24275         * m4/eoverflow.m4: New file, taken from GNU libiconv eilseq.m4 with
24276         modifications.
24277         * m4/vasnprintf.m4 (gl_FUNC_VASNPRINTF): Require gl_EOVERFLOW.
24278
24279 2004-09-08  Oskar Liljeblad  <oskar@osk.mine.nu>
24280
24281         * modules/xvasprintf: New file.
24282         * MODULES.html.sh (Extra functions based on ANSI C 89): Add vasprintf.
24283
24284 2004-09-08  Oskar Liljeblad  <oskar@osk.mine.nu>
24285
24286         * lib/xvasprintf.h: New file.
24287         * lib/xvasprintf.c: New file.
24288         * lib/xasprintf.c: New file.
24289
24290 2004-09-08  Bruno Haible  <bruno@clisp.org>
24291
24292         * m4/stdint.m4: New file, taken from GNU clisp with modifications.
24293
24294 2004-09-08  Bruno Haible  <bruno@clisp.org>
24295
24296         * lib/vasnprintf.c (VASNPRINTF): Signal EOVERFLOW if the resulting
24297         length is > INT_MAX.
24298         * lib/vasprintf.c (vasprintf): Don't test for length > INT_MAX any
24299         more.
24300
24301 2004-09-08  Bruno Haible  <bruno@clisp.org>
24302
24303         * lib/stdint_.h: New file, taken from GNU clisp.
24304
24305 2004-09-08  Bruno Haible  <bruno@clisp.org>
24306             Oskar Liljeblad  <oskar@osk.mine.nu>
24307
24308         * modules/stdint: New file.
24309         * MODULES.html.sh (Support for systems lacking ISO C 99): Add stdint.
24310
24311 2004-08-19  Paul Eggert  <eggert@cs.ucla.edu>
24312
24313         Import from coreutils.
24314         * lib/userspec.c: Don't use <alloca.h>, so that we don't use alloca on
24315         strings on unbounded length.  alloca's performance benefits aren't
24316         that important here.
24317         (V_STRDUP): Remove.
24318         (parse_with_separator): New function, with most of the internals
24319         of the old parse_user_spec.  Allow user to omit both user and group,
24320         for compatibility with FreeBSD.
24321         Clone only the user name, not the entire spec.
24322         Do not set *uid, *gid unless entirely successful.
24323         Avoid memory leak in some failing cases.
24324         Fix regression for USER.GROUP reported by Dmitry V. Levin in
24325         <http://lists.gnu.org/archive/html/bug-coreutils/2004-08/msg00102.html>
24326         (parse_user_spec): Rewrite to use parse_with_separator.
24327
24328 2004-08-19  Paul Eggert  <eggert@cs.ucla.edu>
24329
24330         * modules/userspec: Don't depend on alloca.
24331
24332 2004-08-19  Paul Eggert  <eggert@cs.ucla.edu>
24333
24334         * m4/userspec.m4 (gl_USERSPEC): Don't require AC_FUNC_ALLOCA.
24335
24336 2004-08-17  Paul Eggert  <eggert@cs.ucla.edu>
24337
24338         * MODULES.html.sh: Add xalloc-die, c-strtod, c-strtold, raise,
24339         readtokens0, getcwd, fcntl-safer, canonicalize, cycle-check,
24340         utimecmp, utimens, xnanosleep.  Rename sha to sha1.
24341
24342 2004-08-16  Simon Josefsson  <jas@extundo.com>
24343
24344         * gnulib-tool: Use sed instead of autoconf --trace, inspired by
24345         libtoolize behaviour by "Gary V. Vaughan" <gary@gnu.org>.
24346         Add --dry-run for --import.
24347         Let user provided command line parameters override configure.ac
24348         settings.
24349
24350 2004-08-12  Simon Josefsson  <jas@extundo.com>
24351
24352         * m4/getopt.m4 (gl_GETOPT_SUBSTITUTE): New macro,
24353         as discussed with Paul Eggert in threads rooted at
24354         <http://lists.gnu.org/archive/html/bug-gnulib/2004-06/msg00039.html>
24355         and
24356         <http://lists.gnu.org/archive/html/bug-gnulib/2004-07/msg00001.html>.
24357         Before, the test was empty, and relied on ELIDE_CODE in source
24358         code.)
24359         (gl_PREREQ_GETOPT): New macro.
24360         (gl_GETOPT): Use them.
24361
24362 2004-08-12  Simon Josefsson  <jas@extundo.com>
24363
24364         * lib/getopt.c, getopt1.c: Remove ELIDE_CODE hack.
24365         * lib/getopt_.h: Renamed from getopt.h.
24366
24367 2004-08-12  Simon Josefsson  <jas@extundo.com>
24368
24369         * gnulib-tool: Add --source-base, --m4-base, --libtool options.
24370         Change default library name from libfoo to libgnu.
24371         Now, if you have a configure.ac that says:
24372                 gl_SOURCE_BASE(gl)
24373                 gl_M4_BASE(gl/m4)
24374                 gl_MODULES(error getopt etcetera)
24375                 gl_INIT
24376         you can import all you need by running:
24377                 ../gnulib/gnulib-tool --import
24378
24379         * modules/getopt (Files): Rename getopt.h to getopt_.h.
24380         (Makefile.am): Rewrite, use logic from argz.
24381         (Include): Use <getopt.h> instead of "getopt.h".
24382
24383 2004-08-12  Paul Eggert  <eggert@cs.ucla.edu>
24384
24385         * modules/argp (Files): Add m4/unlocked-io.m4.
24386         (Depends-on): Add extensions.
24387
24388 2004-08-12  Paul Eggert  <eggert@cs.ucla.edu>
24389
24390         * m4/argp.m4 (gl_ARGP): Do not check for argp.h or argp_parse; nobody
24391         uses HAVE_ARGP_H or HAVE_ARGP_PARSE.
24392         Require gl_FUNC_GLIBC_UNLOCKED_IO, gl_USE_SYSTEM_EXTENSIONS.
24393         Check for program_invocation_name, program_invocation_short_name,
24394         flockfile, funlockfile, features.h, _getopt_long_only_r.
24395
24396 2004-08-12  Paul Eggert  <eggert@cs.ucla.edu>
24397
24398         * lib/argp-help.c, argp-parse.c: Use "gettext.h" instead of
24399         its complicated substitute.
24400         * lib/argp-help.c: Include <errno.h>, for program_invocation_short_name
24401         and program_invocation_name.
24402         (__argp_basename) [!_LIBC]: Remove; the only use was
24403         replaced by its body.
24404         (__argp_short_program_name): Change condition from
24405         !defined __argp_short_program_name to
24406         ! (defined _LIBC || HAVE_DECL_PROGRAM_INVOCATION_SHORT_NAME),
24407         to match argp-namefrob.h.
24408         (__argp_failure): Don't assume strerror_r returns char *.
24409         * lib/argp-parse.c (N_): Define unconditionally.
24410         (argp_default_options): Fill out initializers with 0 to avoid
24411         gcc warnings.
24412
24413 2004-08-12  Paul Eggert  <eggert@cs.ucla.edu>
24414
24415         * config/srclist.txt: Remove getopt.c, getopt.h (renamed to getopt_.h),
24416         getopt1.c.
24417
24418 2004-08-11  Paul Eggert  <eggert@cs.ucla.edu>
24419
24420         Merge from coreutils.
24421
24422         * m4/fnmatch.m4 (_AC_LIBOBJ_FNMATCH): Check for wmemchr and wmemcpy.
24423
24424         * m4/obstack.m4 (gl_PREREQ_OBSTACK): Require
24425         gl_AC_HEADER_INTTYPES_H, gl_AC_HEADER_STDINT_H, gl_AC_TYPE_UINTMAX_T.
24426
24427 2004-08-11  Paul Eggert  <eggert@cs.ucla.edu>
24428
24429         Merge from coreutils.
24430
24431         * lib/fnmatch.c (WIDE_CHAR_SUPPORT): Don't set to 1 if missing
24432         wmemchr or wmemcpy.  Problem reported by Robert Dahlem
24433         for Reliant Unix 5.43.
24434
24435         * lib/obstack.c: Include <inttypes.h> and <stdint.h> if available.
24436         (union fooround): Use uintmax_t, not long int.
24437         The rest is a merge from libc:
24438         [defined _LIBC]: Include <shlib-compat.h>.
24439         (_obstack) [defined _LIBC]: Remove after 2.3.4.
24440
24441         * lib/settime.c (settime): Recode to avoid warning with
24442         Sun Forte C 6U2.
24443
24444         * lib/strverscmp.c: Convert to UTF-8.
24445
24446 2004-08-11  Paul Eggert  <eggert@cs.ucla.edu>
24447
24448         * modules/obstack (Files): Add m4/inttypes_h.m4, m4/stdint_h.m4,
24449         m4/uintmax_t.m4.
24450
24451 2004-08-09  Paul Eggert  <eggert@cs.ucla.edu>
24452
24453         * modules/xalloc-die: New file.
24454         * modules/xalloc: Remove dependencies on error, gettext, exitfail.
24455
24456         * modules/md5 (Files): Add m4/uint32_t.m4.
24457         * modules/sha1: Renamed from modules/sha.
24458         (Files):
24459         Rename lib/sha.h to lib/sha1.h.
24460         Rename lib/sha.c to lib/sha1.c.
24461         Rename m4/sha.m4 to m4/sha1.m4.
24462         (lib_SOURCES): Likewise.
24463         (configure.ac): Rename gl_SHA to gl_SHA1.
24464         (Include): sha.h -> sha1.h.
24465
24466 2004-08-09  Paul Eggert  <eggert@cs.ucla.edu>
24467
24468         * m4/uint32_t.m4, m4/uintptr_t.m4: New files.
24469         * m4/sha1.m4: Renamed from sha.m4.
24470         (gl_SHA1): Renamed from gl_SHA.  All uses changed.
24471
24472 2004-08-09  Paul Eggert  <eggert@cs.ucla.edu>
24473
24474         * lib/obstack.h (obstack_empty_p):
24475         Don't assume that chunk->contents is suitably aligned.
24476         * lib/obstack.c (_obstack_begin, _obstack_begin_1, _obstack_newchunk):
24477         Likewise. Problem reported by Benno in
24478         <http://sources.redhat.com/ml/libc-alpha/2004-08/msg00055.html>.
24479
24480         * lib/chown.c (rpl_chown): Work even if the file is writeable but not
24481         readable.  This could be improved further but it'd take some work.
24482
24483 2004-08-08  Simon Josefsson  <jas@extundo.com>
24484
24485         * modules/xgethostname (Depends-on): Remove exit and error (not
24486         used).
24487
24488         * modules/getpass-gnu: Add getpass.h.
24489         (Depends-on): Add stdbool.
24490         * modules/getpass: Add getpass.h.
24491
24492 2004-08-08  Simon Josefsson  <jas@extundo.com>
24493
24494         * m4/getpass.m4 (gl_FUNC_GETPASS, gl_FUNC_GETPASS_GNU):
24495         Check getpass declaration.
24496
24497 2004-08-08  Simon Josefsson  <jas@extundo.com>
24498
24499         * lib/xgethostname.c: Don't include error.h (not used).
24500
24501         * lib/getpass.h: Add.
24502         * lib/getpass.c: Include getpass.h first.
24503
24504 2004-08-08  Paul Eggert  <eggert@cs.ucla.edu>
24505
24506         * lib/xalloc-die.c: New file.
24507         * lib/xalloc.h (xalloc_fail_func, xalloc_msg_memory_exhausted): Remove.
24508         All uses removed.
24509         * lib/xmalloc.c (xalloc_fail_func, xalloc_msg_memory_exhausted):
24510         Likewise. Move inclusions of gettext.h, error.h, exitfail.h to
24511         xalloc-die.c.
24512         (_, N_, xalloc_die): Move to xalloc-die.c.
24513         * lib/userspec.c (parse_user_spaec): Use xstrdup rather than strdup,
24514         so that we needn't mess with xalloc_msg_memory_exhausted.
24515
24516         * lib/sha1.h: Renamed from sha.h.
24517         (SHA1_H): Renamed from _SHA_H.
24518         (sha1_ctx): Renamed from sha_ctx.
24519         (sha1_init_ctx): Renamed from sha_init_ctx.
24520         (sha1_process_block): Renamed from sha_process_block.
24521         (sha1_process_bytes): Renamed from sha_process_bytes.
24522         (sha1_finish_ctx): Renamed from sha_finish_ctx.
24523         (sha1_read_ctx): Renamed from sha_read_ctx.
24524         (sha1_stream): Renamed from sha_stream.
24525         (sha1_buffer): Renamed from sha_buffer.
24526         * lib/sha1.c: Likewise; renamed from sha.c.
24527         Do not include <sys/types.h>.
24528         Include <stddef.h> rather than <stdlib.h>.
24529
24530 2004-08-08  Bruno Haible  <bruno@clisp.org>
24531
24532         * lib/pathname.h (FILE_SYSTEM_PREFIX_LEN): Renamed from
24533         FILESYSTEM_PREFIX_LEN.
24534         * lib/progreloc.c: Likewise.
24535         * lib/concatpath.c (concatenated_pathname): Use FILE_SYSTEM_PREFIX_LEN.
24536
24537 2004-08-06  Simon Josefsson  <jas@extundo.com>
24538
24539         * modules/progname (Depends-on): Don't depend on stdbool.
24540
24541 2004-08-06  Simon Josefsson  <jas@extundo.com>
24542
24543         * modules/getsubopt: New file.
24544         * MODULES.html.sh (Support for systems lacking POSIX:2001): Add
24545         getsubopt.
24546
24547 2004-08-06  Paul Eggert  <eggert@cs.ucla.edu>
24548
24549         More merge from coreutils.
24550
24551         * m4/utimens.m4, m4/utimecmp.m4: New files.
24552         * m4/backupfile.m4, euidacces.m4, acl.m4, afs.m4, calloc.m4, dirfd.m4,
24553         fsusage.m4, jm-macros.m4, ls-mntd-fs.m4, md5.m4, mountlist.m4,
24554         prereq.m4, sha.m4: Import changes from coreutils.
24555
24556 2004-08-06  Paul Eggert  <eggert@cs.ucla.edu>
24557
24558         More merge from coreutils.
24559         * modules/raise, modules/readtokens0, modules/utimens:
24560         * modules/utimecmp, module/xnanosleep: New files.
24561         * modules/strftime: Add lib/strftime.h.
24562         Change include from <time.h> to "strftime.h".
24563         * modules/yesno: Add lib/yesno.h.
24564         * modules/backupfile: Remove lib/addext.c.
24565         * modules/euidaccess: Add stat-macros.h.
24566         * modules/canonicalize, modules/euidaccess,
24567         modules/filemode, modules/lchown, modules/makepath,
24568         modules/rmdir, modules/stat: Likewise.
24569
24570 2004-08-06  Paul Eggert  <eggert@cs.ucla.edu>
24571
24572         Merge from tar.
24573         * lib/argp-help.c (make_hol, hol_append): Don't assume that
24574         SIZE_MAX is a valid preprocessor constant.
24575         (__argp_basename): Change from "#ifndef _LIBC"
24576         to "#ifndef __argp_short_program_name", so that
24577         we don't compile these functions for tar.
24578
24579         More merges from coreutils.
24580         * lib/raise.c, lib/readtokens0.h, lib/readtokens0.c, lib/strftime.h:
24581         * lib/utimens.h, lib/utimens.c, lib/utimecmp.h, lib/utimecmp.c:
24582         * lib/xnanosleep.h, lib/xnanosleep.c, lib/yesno.h: New files.
24583         * lib/addext.c: Remove; no longer needed.
24584         * lib/yesno.c, lib/argmatch.h, lib/argmatch.c, lib/backupfile.h,
24585         lib/backupfile.c, lib/euidaccess.c, lib/filemode.c, lib/closeout.c,
24586         lib/dup2.c, lib/exclude.c, lib/fileblocks.c, lib/filemode.c,
24587         lib/fnmatch.c, lib/fnmtahc_loop.c, lib/fopen-safer.c, lib/fsusage.c,
24588         lib/fsusage.h, lib/ftruncate.c, lib/full-write.c, lib/getdate.y,
24589         lib/getloadavg.c, lib/getugroups.c, lib/hard-locale.c,
24590         lib/hard-locale.h, lib/hash.c, lib/human.c, lib/human.h, lib/lchown.c,
24591         lib/lchown.h, lib/makepath.c, lib/makepath.h, lib/md5.c, lib/md5.h,
24592         lib/memchr.c, lib/memcoll.c, lib/memrchr.c, lib/modechange.c,
24593         lib/modechange.h, lib/mountlist.c, lib/mountlist.h, lib/nanosleep.c,
24594         lib/posixtm.c, lib/putenv.c, quotearg.c, lib/quotearg.h,
24595         lib/readtokens.c, lib/readutmp.c, lib/readutmp.h, lib/rmdir.c,
24596         lib/safe-read.c, lib/save-cwd.c, lib/savedir.c, lib/setenv.c,
24597         lib/sig2str.c, lib/stat.c, lib/strtoimax.c, lib/strverscmp.c,
24598         lib/userspec.c, lib/utime.c, lib/version-etc.c., lib/xgethostname.c,
24599         lib/xmemcoll.c, lib/xreadlink.c, lib/xstrtod.c, lib/xstrtod.h,
24600         lib/xstrtoimax.c, lib/xstrtol.c, lib/xstrtol.h, lib/xstrtoumax.c:
24601         Import changes from coreutils.
24602
24603 2004-08-05  Simon Josefsson  <jas@extundo.com>
24604
24605         * m4/strdup.m4: Always run gl_PREREQ_STRDUP, since strdup.h need it.
24606
24607 2004-08-05  Simon Josefsson  <jas@extundo.com>
24608
24609         * m4/getsubopt.m4: New file.
24610
24611 2004-08-05  Paul Eggert  <eggert@cs.ucla.edu>
24612
24613         Merge from coreutils.
24614
24615         * m4/c-strtod.m4, m4/canonicalize.m4, m4/fcntl-safer.m4:
24616         * m4/getcwd-path-max.m4: New files.
24617
24618         * m4/dos.m4 (gl_AC_DOS): filesystem -> file system renaming.
24619         FILESYSTEM_PREFIX_LEN ->
24620         FILE_SYSTEM_PREFIX_LEN.
24621         FILESYSTEM_ACCEPTS_DRIVE_LETTER_PREFIX ->
24622         FILE_SYSTEM_ACCEPTS_DRIVE_LETTER_PREFIX.
24623         FILESYSTEM_BACKSLASH_IS_FILE_NAME_SEPARATOR ->
24624         FILE_SYSTEM_BACKSLASH_IS_FILE_NAME_SEPARATOR.
24625
24626         * m4/path-concat.m4 (gl_PATH_CONCAT): Don't require gl_AC_DOS, the
24627         prerequisite modules now handle the DOS stuff.
24628         Don't check for unistd.h.
24629
24630 2004-08-05  Paul Eggert  <eggert@cs.ucla.edu>
24631
24632         Merge from coreutils.
24633
24634         * lib/.gdb-history: Remove; this doesn't belong here.
24635
24636         * lib/c-strtod.c, lib/c-strtod.h, lib/c-strtold.c, lib/cycle-check.c:
24637         * lib/cycle-check.h, lib/dev-ino.h, lib/canonicalize.h:
24638         * lib/canonicalize.c, lib/fcntl-safer.h, lib/fcntl-safer.c:
24639         * lib/getcwd.c: New files.
24640
24641         * lib/dirname.h: Include <stdbool.h>.
24642         (FILE_SYSTEM_PREFIX_LEN): Renamed from FILESYSTEM_PREFIX_LEN,
24643         for consistency with POSIX terminology.  All uses changed.
24644         (IS_ABSOLUTE_FILE_NAME, IS_RELATIVE_FILE_NAME): New macros.
24645         (strip_trailing_slashes): Use bool for booleans.
24646         * lib/stripslash.c (strip_trailing_slashes): Likewise.
24647
24648         * lib/error.c: Work around bug in OpenBSD 3.4 sterror_r: it
24649         sometimes returns a positive errno value even when it succeeds.
24650         (print_errno_message) [!LIBC]: Fall back on strerror if
24651         __strerror_r fails.
24652
24653         * lib/path-concat.c (mempcpy): Don't define if a system header defines
24654         it. Don't include stdio.h, stdlib.h, unistd.h, strdup.h.
24655         (longest_relative_suffix): New function.
24656         (path_concat): Use it.  Assume first argument is not NULL.
24657         Port to DOS.  Omit redundant separators.
24658         Report an error instead of returning NULL.
24659         Use mempcpy instead of memcpy.
24660         (xpath_concat): Remove: not declared or used.
24661
24662         * lib/same.h: Include <stdbool.h>
24663         (same_name): Return bool, not int.
24664         * lib/same.c (same_name): Likewise.
24665         (errno): Don't declare; we assume C89 or better now.
24666
24667         * lib/stat-macros (S_ISCTG, S_ISOFD, S_ISOFL): New macros,
24668         if not already defined.
24669
24670         * lib/xgetcwd.c (errno): Don't declare; we assume C89 or better now.
24671         * lib/dup-safer.c (errno): Likewise.
24672
24673 2004-08-05  Paul Eggert  <eggert@cs.ucla.edu>
24674
24675         Merge from coreutils.
24676         * modules/c-strtod, modules/c-strtold, modules/canonicalize:
24677         * modules/cycle-check, modules/fcntl-safer, modules/getcwd: New files.
24678         * modules/path-concat: Don't depend on strdup.
24679
24680 2004-08-03  Simon Josefsson  <jas@extundo.com>
24681
24682         * lib/strdup.h: Only use HAVE_DECL_STRDUP if defined.
24683         * lib/progname.h: Don't include stdbool.h.
24684
24685 2004-08-03  Paul Eggert  <eggert@cs.ucla.edu>
24686
24687         * modules/fatal: Remove, as the "fatal" module wasn't used or working.
24688         * MODULES.html.sh (func_all_modules): Remove fatal.
24689
24690 2004-08-03  Paul Eggert  <eggert@cs.ucla.edu>
24691
24692         * m4/fatal.m4: Remove, as the "fatal" module wasn't used or working.
24693
24694 2004-08-03  Paul Eggert  <eggert@cs.ucla.edu>
24695
24696         * lib/fatal.c, fatal.h: Remove as the "fatal" module wasn't used or
24697         working.
24698
24699 2004-08-02  Simon Josefsson  <jas@extundo.com>
24700
24701         * lib/getsubopt.h: New file, with comments from Bruno Haible.
24702         * lib/getsubopt.c: New file, from glibc, but slightly modified based on
24703         suggestions from Paul Eggert <eggert@cs.ucla.edu>.
24704
24705 2004-08-01  Simon Josefsson  <jas@extundo.com>
24706
24707         * lib/xgetdomainname.c: Include stdlib.h, for free().
24708
24709 2004-07-19  Bruno Haible  <bruno@clisp.org>
24710
24711         * MODULES.html.sh (func_all_modules): Add dummy.
24712
24713 2004-07-16  Simon Josefsson  <jas@extundo.com>
24714
24715         * modules/dummy: New file.
24716
24717 2004-07-16  Simon Josefsson  <jas@extundo.com>
24718
24719         * lib/dummy.c: New file.
24720
24721 2004-07-16  Bruno Haible  <bruno@clisp.org>
24722
24723         * lib/backupfile.h: Add extern "C" for C++.
24724         * lib/closeout.h: Likewise.
24725         * lib/copy-file.h: Likewise.
24726         * lib/findprog.h: Likewise.
24727         * lib/full-write.h: Likewise.
24728         * lib/pathname.h: Likewise.
24729         * lib/progname.h: Likewise.
24730         * lib/stpcpy.h: Likewise.
24731         * lib/stpncpy.h: Likewise.
24732         * lib/strcase.h: Likewise.
24733         * lib/strstr.h: Likewise.
24734         * lib/xalloc.h: Likewise.
24735
24736         * lib/mbswidth.h: Add extern "C" for C++.
24737         Reported by Albert Chin-A-Young <china@thewrittenword.com>.
24738
24739 2004-07-13  Robert Millan  <robertmh@gnu.org>
24740
24741         * m4/host-os.m4: s/KNetBSD/kNetBSD/g and s/KFreeBSD/kFreeBSD/g.
24742
24743 2004-07-09  Simon Josefsson  <jas@extundo.com>
24744
24745         * lib/getndelim2.c: Include stddef.h, for ptrdiff_t.  (FreeBSD 4.9
24746         failed without this.)
24747
24748 2004-07-09  Paul Eggert  <eggert@cs.ucla.edu>
24749
24750         * modules/chown (Files): Add lib/fchown-stub.c, since
24751         gl_PREREQ_CHOWN invokes AC_LIBOBJ(fchown-stub).
24752
24753 2004-07-09  Paul Eggert  <eggert@cs.ucla.edu>
24754
24755         * lib/fchown-stub.c: New file.
24756
24757 2004-06-24  Jim Meyering  <jim@meyering.net>
24758
24759         * lib/obstack.h (obstack_base): Cast to (void *), per documentation.
24760
24761 2004-06-22  Paul Eggert  <eggert@cs.ucla.edu>
24762
24763         * modules/argz: Omit "#include".
24764
24765         * MODULES.html.sh (func_all_modules): Add calloc, to match
24766         2004-06-01 addition of calloc module.
24767
24768 2004-06-22  Paul Eggert  <eggert@cs.ucla.edu>
24769
24770         * m4/argz.m4: New file, which is autoupdated from libtool.
24771
24772 2004-06-22  Paul Eggert  <eggert@cs.ucla.edu>
24773
24774         * lib/argz.c, lib/argz_.h: New files, which are autoupdated from
24775         libtool.
24776
24777 2004-06-22  Paul Eggert  <eggert@cs.ucla.edu>
24778
24779         * config/srclist-update: Don't insist on "USA." before the
24780         close-comment, as libtool omits the period and puts the */ on a
24781         separate line.
24782         * config/srclist.txt: Add argz.c, argz_.h, argz.m4.
24783         * config/srclistvars.sh: Add LIBTOOL (for eggert only).
24784
24785 2004-06-22  Gary V. Vaughan  <gary@gnu.org>
24786
24787         * modules/argz: New file.
24788         * MODULES.html.sh (func_all_modules): Add argz.
24789
24790 2004-06-12  Jim Meyering  <jim@meyering.net>
24791         and  Paul Eggert  <eggert@cs.ucla.edu>
24792
24793         * modules/hash (Files): Add lib/xalloc.h.
24794         * modules/pipe (Depends-on): Add wait-process.
24795         * modules/stat (Depends-on): Add xalloc.
24796         * modules/userspec (Files): Add lib/userspec.h.
24797         * modules/xstrto
24798
24799         Upgrade from gettext-0.13.
24800         * modules/gettext (Files): Add m4/intmax.m4, m4/longdouble.m4,
24801         m4/longlong.m4, m4/printf-posix.m4, m4/signed.m4, m4/size_max.m4,
24802         m4/wchar_t.m4, m4/wint_t.m4, m4/xsize.m4.
24803
24804 2004-06-10  Jim Meyering  <jim@meyering.net>
24805
24806         * lib/calloc.c: New file.
24807
24808 2004-06-06  Paul Eggert  <eggert@cs.ucla.edu>
24809
24810         * lib/getdate.y (yylex): Allow space between sign and number.
24811         Problem reported by Dan Jacobson.
24812
24813 2004-06-01  Paul Eggert  <eggert@cs.ucla.edu>
24814
24815         Merge from coreutils CVS.
24816
24817         * m4/backupfile.m4, dirname.m4, human.m4, inttypes.m4, longlong.m4,
24818         makepath.m4, memchr.m4, memcmp.m4, mountlist.m4, path-concat.m4,
24819         putenv.m4, quotearg.m4, readutmp.m4, strtoimax.m4, strtoll.m4,
24820         strtoull.m4, strtoumax.m4, ulonglong.m4, vasnprintf.m4,
24821         xstrtol.m4: Fix copyright date and/or serial number.
24822
24823         * m4/chown.m4 (gl_PREREQ_CHOWN): Check for fcntl.h.
24824         See if we need an fchown replacement.
24825         (gl_FUNC_CHOWN_FOLLOWS_SYMLINK): New macro.
24826         (gl_FUNC_CHOWN): Require gl_FUNC_CHOWN_FOLLOWS_SYMLINK,
24827         and use the replacement function if we detect either defect.
24828
24829         * m4/prereq.m4 (gl_PREREQ): Add gl_ALLOCSA, gl_CLOEXEC, gl_INTTOSTR,
24830         gl_UTIMECMP.
24831
24832 2004-06-01  Paul Eggert  <eggert@cs.ucla.edu>
24833         and  Jim Meyering  <jim@meyering.net>
24834
24835         Merge from coreutils CVS.
24836
24837         * lib/stat-macros.h: New file, with contents from file-type.h
24838         and coreutils' system.h.
24839         * lib/file-type.c: Include "stat-macros.h".
24840         * lib/file-type.h (file_type): Move all macro definitions to new file,
24841         stat-macros.h.
24842
24843         * lib/chown.c (rpl_chown) [CHOWN_FAILS_TO_HONOR_ID_OF_NEGATIVE_ONE]:
24844         Wrap old code with this conditional.
24845         [CHOWN_MODIFIES_SYMLINK]: Try to work around a chown
24846         function that does not dereference symlinks.
24847         * lib/lchown.c (lchown) [CHOWN_MODIFIES_SYMLINK]: Just call chown.
24848
24849         * lib/xreadlink.c: Include xreadlink.h first, to catch .h file
24850         dependency problems.
24851         (xreadlink): Accept new arg SIZE, for efficiency.
24852         All decls and uses changed.
24853         * lib/xreadlink.h: Include <stddef.h>, for size_t.
24854
24855         * lib/.cppi-disable: Add alloca_.h, allocsa.h, exit.h, getndelim2.h,
24856         gettext.h, localcharset.h, strdup.h, strndup.h, strtoul.c, time_r.h.
24857
24858         * lib/.cvsignore: Add alloca.h, fnmatch.h, poll.h, stdbool.h,
24859         sysexits.h.
24860
24861 2004-06-01  Jim Meyering  <jim@meyering.net>
24862
24863         * m4/calloc.m4: New file.
24864
24865 2004-05-31  Paul Eggert  <eggert@cs.ucla.edu>
24866
24867         * m4/stdbool.m4 (AC_HEADER_STDBOOL): Detect _Bool bug in HP aC++/ANSI
24868         C B3910B A.05.55 [Dec 04 2003].  Problem reported by Jim Meyering.
24869         Also, fix a typo in a diagnostic.
24870
24871 2004-05-30  Paul Eggert  <eggert@cs.ucla.edu>
24872
24873         * m4/xalloc.m4 (gl_PREREQ_XMALLOC): Do not require AC_FUNC_MALLOC
24874         or AC_FUNC_REALLOC.
24875
24876 2004-05-30  Paul Eggert  <eggert@cs.ucla.edu>
24877
24878         * lib/xmalloc.c (HAVE_MALLOC, HAVE_REALLOC): Do not require these
24879         macros to be defined.
24880         (xnmalloc_inline, xnrealloc_inline, xcalloc): Do not die if
24881         the allocator returns NULL because the requested size is zero.
24882
24883 2004-05-20  Paul Eggert  <eggert@cs.ucla.edu>
24884
24885         * lib/malloc/obstack.c (_obstack) [defined _LIBC]: Bring back this
24886         var.  Add comment explaining why libc still defines it.  This
24887         merges the following patch from glibc:
24888         http://sources.redhat.com/ml/libc-alpha/2004-05/msg00157.html
24889
24890 2004-05-20  Andreas Schwab  <schwab@suse.de>
24891
24892         * m4/free.m4: Replace free if it not known to work, not the other
24893         way round.
24894
24895 2004-05-19  Paul Eggert  <eggert@cs.ucla.edu>
24896
24897         * lib/obstack.c (_obstack): Remove unused variable.  It hasn't been
24898         present in glibc since revision 1.1 of this file.
24899         * lib/obstack.h (_obstack_free, obstack_1grow, obstack_1grow_fast,
24900         obstack_alignment_mask, obstack_alloc, obstack_base,
24901         obstack_blank, obstack_blank_fast, obstack_chunk_size,
24902         obstack_copy, obstack_copy0, obstack_finish, obstack_grow,
24903         obstack_grow0, obstack_init, obstack_int_grow,
24904         obstack_int_grow_fast, obstack_make_room, obstack_memory_used,
24905         obstack_next_free, obstack_object_size, obstack_ptr_grow,
24906         obstack_ptr_grow_fast, obstack_room): Remove declarations of
24907         nonexistent functions.
24908
24909 2004-05-18  Karl Berry  <karl@gnu.org>
24910
24911         * config/srclist.txt: break link for vasnprintf.c.
24912
24913 2004-05-17  Paul Eggert  <eggert@cs.ucla.edu>
24914
24915         Port obstack to the AS/400, where pointers are 16 bytes wide and
24916         you cannot cast an integer to a valid pointer.  This patch is
24917         currently waiting to be integrated into glibc; see
24918         <http://sources.redhat.com/ml/libc-alpha/2004-05/msg00073.html>.
24919
24920         * lib/obstack.h (__PTR_TO_INT, __INT_TO_PTR): Remove.
24921         All uses of __INT_TO_PTR (PTR_TO_INT ...) replaced by __PTR_ALIGN.
24922         (__BPTR_ALIGN, __PTR_ALIGN): New macros.
24923         (struct obstack): temp member is now a union of a pointer and
24924         an integer, instead of an integer.  All integer uses changed.
24925         This does not affect the physical layout of struct obstack,
24926         except on hosts (like the AS/400) where the size or alignment of
24927         void * is greater than that of ptrdiff_t.
24928         (obstack_finish) [! (defined __GNUC__ && defined __STDC__ &&
24929         __STDC__)]: Store temporary in pointer member of union, not
24930         integer member.
24931         * lib/obstack.c: Include <stddef.h>, for offsetof.
24932         (struct fooalign): Remove; it doesn't need a name.
24933         (union fooround): Change double to long double, and add void *.
24934         (DEFAULT_ALIGNMENT): Use offsetof to compute.
24935         (DEFAULT_ALIGNMENT, DEFAULT_ROUNDING): Now an enum constant,
24936         not a macro.  Hence the values are always int; so remove all
24937         casts-to-int in uses.
24938
24939 2004-05-17  Paul Eggert  <eggert@cs.ucla.edu>
24940
24941         * config/srclist.txt: Break link for argp-help.c and argp-parse.c until
24942         we can get this patch merged into glibc.
24943
24944 2004-05-17  Derek R. Price  <derek@ximbiot.com>
24945             Paul Eggert  <eggert@cs.ucla.edu>
24946
24947         * m4/argp: Depend on alloca.
24948
24949 2004-05-17  Derek R. Price  <derek@ximbiot.com>
24950             Paul Eggert  <eggert@cs.ucla.edu>
24951
24952         * lib/argp-help.c, argp-parse.c: Assume <alloca.h> rather than
24953         freecoding.
24954
24955 2004-05-17  Bruno Haible  <bruno@clisp.org>
24956
24957         * lib/vasnprintf.c (VASNPRINTF): Correctly handle the case of a
24958         precision that consists of a '.' followed by an empty digit string.
24959         Patch by Tor Lillqvist <tml@iki.fi>.
24960
24961 2004-05-16  Paul Eggert  <eggert@cs.ucla.edu>
24962
24963         * m4/alloca.m4 (gl_FUNC_ALLOCA): Define HAVE_ALLOCA_H always,
24964         for backward compatibility with older code.  We need our own
24965         alloca.h if _AIX is defined.  Define HAVE_ALLOCA if we discover
24966         it under some other name, and our alloca.h will define it.
24967
24968 2004-05-16  Paul Eggert  <eggert@cs.ucla.edu>
24969             Derek Price  <derek@ximbiot.com>
24970
24971         * lib/alloca.c: Include <alloca.h>, to get our interface.
24972         * lib/alloca_.h: Use __alloca on AIX, so that we don't have to
24973         include <alloca.h> first.  Use C89 prototype for alloca; this
24974         requires including <stddef.h> for size_t.  Use extern "C" if C++.
24975         Use #elif for simplicity, since we can assume C89 now.
24976         Don't try to source the system alloca.h since it will not be found
24977         and to prevent recursively including its replacement.
24978         * lib/fnmatch.c: Include <alloca.h> instead of opencoding.
24979         * lib/regex.c: Likewise.
24980
24981 2004-05-16  Derek Price  <derek@ximbiot.com>
24982             Paul Eggert  <eggert@cs.ucla.edu>
24983
24984         getline cleanup.  This changes the getndelim2 API: both order of
24985         arguments, and meaning of delim2 (now uses EOF, not 0, to indicate
24986         no delimiter).
24987
24988         * lib/getline.c: Don't include stddef.h or stdio.h, since our
24989         interface does that.
24990         (getline): Always use getdelim, so that we don't have two
24991         copies of this code.
24992         * lib/getndelim2.c: Include <limits.h>, <inttypes.h>, <stdint.h>
24993         if available.
24994         (PTRDIFF_MAX, SIZE_MAX, SSIZE_MAX): Define if not defined.
24995         (GETNDELIM2_MAXIMUM): New macro.
24996         (getndelim2): Reorder arguments.  delim==EOF now means no delimiter,
24997         instead of the old practice of delim2==0.  All callers changed.
24998         Return -1 on overflow, instead of returning junk.
24999         Do not set *linesize unless allocation succeeds.
25000         * lib/getndelim2.h: Do not include stddef.h; no longer needed, now
25001         that we include sys/types.h.
25002         * lib/getnline.h: Likewise.
25003         * lib/getndelim2.h (GETNLINE_NO_LIMIT): New macro.
25004         (getndelim2): Reorder arguments.
25005         * lib/getnline.c (getnline, getndelim):
25006         Don't discard the NMAX argument.
25007         (getnline): Invoke getndelim, to avoid code duplication.
25008         * lib/getnline.h (GETNLINE_NO_LIMIT): New macro, used instead
25009         of (size_t) -1 by callers of the getnline family.
25010
25011 2004-05-13  Paul Eggert  <eggert@cs.ucla.edu>
25012
25013         * m4/gettime.m4 (gl_GETTIME): Require gl_TIMESPEC.
25014         Check for gettimeofday.
25015         * m4/settime.m4 (gl_SETTIME): Require gl_TIMESPEC.
25016         Check for settimeofday, stime.
25017
25018 2004-05-13  Paul Eggert  <eggert@cs.ucla.edu>
25019
25020         * lib/nanosleep.c (suspended): Change its type from int to
25021         sig_atomic_t volatile.
25022         (first_call): Make it private to rpl_nanosleep, and have it
25023         be zero initially as that's a bit faster.
25024         (my_usleep): Round up fractional times instead of truncating them,
25025         as this is the usual meaning for 'sleep'.
25026
25027         * lib/gettime.c (gettime): Fall back on `time' if `gettimeofday'
25028         doesn't work.
25029         * lib/settime.c: Include <unistd.h>, for stime (on Solaris 8, anyway).
25030         (ENOSYS): Define if not defined.
25031         (settime): Fall back on stime if it exists and settimeofday fails.
25032         But don't bother with fallbacks if a method fails with errno == EPERM.
25033
25034 2004-05-11  Jim Meyering  <jim@meyering.net>
25035
25036         Prior to this change, the save_cwd caller required read access to the
25037         current directory on most systems (ones with the fchdir function).
25038
25039         * lib/save-cwd.c (save_cwd) [HAVE_FCHDIR]: If opening `.' read-only
25040         fails, try write-only, and finally, resort to using xgetcwd.
25041
25042 2004-05-06  Paul Eggert  <eggert@cs.ucla.edu>
25043
25044         * lib/obstack.c, obstack.h: Import changes from libc.
25045
25046 2004-04-28  Bruno Haible  <bruno@clisp.org>
25047
25048         * lib/findprog.c (find_in_path): Treat Cygwin like Windows, since it
25049         also implicitly appends .exe to executables.
25050         * lib/localcharset.c (ISSLASH): Treat Cygwin like Windows, since it now
25051         accepts Windows pathnames.
25052         * lib/pathname.h (ISSLASH, IS_PATH_WITH_DIR, FILESYSTEM_PREFIX_LEN):
25053         Treat Cygwin like Windows, since it now accepts Windows pathnames.
25054         * lib/progreloc.c (ISSLASH, IS_PATH_WITH_DIR, FILESYSTEM_PREFIX_LEN):
25055         Treat Cygwin like Windows, since it now accepts Windows pathnames.
25056         Reported by Derek Robert Price <derek@ximbiot.com>.
25057
25058 2004-04-21  Karl Berry  <karl@gnu.org>
25059
25060         * config/srclist.txt (localcharset.c): break sync.
25061
25062 2004-04-20  Paul Eggert  <eggert@twinsun.com>
25063
25064         * m4/host-os.m4: Add a copyright notice.
25065
25066 2004-04-20  Jim Meyering  <jim@meyering.net>
25067
25068         Change UTILS_ to gl_ in AC_DEFINE'd names.
25069         Change utils_- and jm_-prefixed variables, too.
25070         * m4/mkdir-slash.m4 (gl_FUNC_MKDIR_TRAILING_SLASH): Renamed from
25071         UTILS_FUNC_MKDIR_TRAILING_SLASH.
25072         * m4/mkstemp.m4 (gl_FUNC_MKSTEMP): Renamed from UTILS_FUNC_MKSTEP.
25073
25074         * m4/dirfd.m4 (gl_FUNC_DIRFD): Rename from UTILS_FUNC_DIRFD.
25075         Don't emit trailing blanks.
25076         Also rename jm_-prefixed variables to have gl_ prefix.
25077
25078         * m4/host-os.m4 (gl_HOST_OS): Rename from UTILS_HOST_OS.
25079         Also rename jm_-prefixed variables to have gl_ prefix.
25080
25081         * m4/jm-macros.m4: Reflect the renamings.
25082         * m4/prereq.m4: Likewise.
25083
25084 2004-04-20  Jim Meyering  <jim@meyering.net>
25085
25086         * lib/getndelim2.c (getndelim2): Upon realloc failure, don't leak
25087         memory.
25088
25089 2004-04-20  Jim Meyering  <jim@meyering.net>
25090             Bruno Haible  <bruno@clisp.org>
25091
25092         * lib/localcharset.c (get_charset_aliases) [!VMS && !WIN32]: Don't leak
25093         memory when realloc fails.
25094
25095 2004-04-19  Jim Meyering  <jim@meyering.net>
25096
25097         * m4/readutmp.m4 (gl_PREREQ_READUTMP): Require gl_FUNC_FREE,
25098         now that readutmp.c may call `free (0)'.
25099
25100 2004-04-19  Bruno Haible  <bruno@clisp.org>
25101
25102         * m4/mbrtowc.m4: Change jm_ to gl_ in cache variables as well.
25103         * m4/inttypes_h.m4: Likewise.
25104         * m4/stdint_h.m4: Likewise.
25105         * m4/intmax_t.m4: Likewise.
25106         * m4/uintmax_t.m4: Likewise.
25107
25108 2004-04-18  Jim Meyering  <jim@meyering.net>
25109
25110         * m4/prereq.m4: Don't forbid jm_ prefix.
25111
25112         * m4/afs.m4, m4/allocsa.m4, m4/assert.m4, m4/backupfile.m4:
25113         * m4/bison.m4, m4/check-decl.m4, m4/chown.m4, m4/d-ino.m4:
25114         * m4/d-type.m4, m4/dirname.m4, m4/dos.m4, m4/error.m4, m4/fpending.m4:
25115         * m4/fstypename.m4, m4/fsusage.m4, m4/ftruncate.m4, m4/getdate.m4:
25116         * m4/getgroups.m4, m4/gettext.m4, m4/glibc21.m4, m4/group-member.m4:
25117         * m4/human.m4, m4/intmax.m4, m4/intmax_t.m4, m4/inttostr.m4:
25118         * m4/inttypes.m4, m4/inttypes_h.m4, m4/jm-macros.m4, m4/jm-winsz1.m4:
25119         * m4/jm-winsz2.m4, m4/lchown.m4, m4/lib-check.m4, m4/link-follow.m4:
25120         * m4/localcharset.m4, m4/longlong.m4, m4/ls-mntd-fs.m4, m4/lstat.m4:
25121         * m4/makepath.m4, m4/mbrtowc.m4, m4/mbswidth.m4, m4/memchr.m4:
25122         * m4/memcmp.m4, m4/mkdtemp.m4, m4/mkstemp.m4, m4/mountlist.m4:
25123         * m4/nanosleep.m4, m4/path-concat.m4, m4/perl.m4, m4/prereq.m4:
25124         * m4/putenv.m4, m4/quotearg.m4, m4/regex.m4, m4/stat.m4:
25125         * m4/stdint_h.m4, m4/strftime.m4, m4/strtoimax.m4, m4/strtoll.m4:
25126         * m4/strtoull.m4, m4/strtoumax.m4, m4/timespec.m4, m4/uintmax_t.m4:
25127         * m4/ulonglong.m4, m4/unlink-busy.m4, m4/unlocked-io.m4, m4/uptime.m4,
25128         * m4/utimbuf.m4, m4/utime.m4, m4/utimes-null.m4, m4/vasnprintf.m4:
25129         * m4/xstrtoimax.m4, m4/xstrtol.m4, m4/xstrtoumax.m4:
25130         Change jm_ to gl_ in AC_DEFINE'd names. Update all uses.
25131
25132 2004-04-18  Jim Meyering  <jim@meyering.net>
25133
25134         * lib/readutmp.c (read_utmp) [UTMP_NAME_FUNCTION]: Upon realloc
25135         failure, don't leak memory and do call END_UTMP_ENT.
25136
25137 2004-04-16  Jim Meyering  <jim@meyering.net>
25138
25139         * m4/prereq.m4 (jm_PREREQ_STAT): Remove macro.  It is specific to
25140         coreutils' stat program.
25141         (gl_PREREQ): Don't require jm_PREREQ_STAT.
25142
25143 2004-04-11  Paul Eggert  <eggert@twinsun.com>
25144
25145         * lib/inttostr.h: Include <limits.h> unconditionally, since we assume
25146         C89.
25147         (CHAR_BIT): Remove, since we assume C89.
25148         Include <stdint.h> if available, as per current Autoconf CVS advice.
25149
25150 2004-03-31  Jim Meyering  <jim@meyering.net>
25151
25152         * m4/prereq.m4: Require AC_FUNC_MALLOC, not jm_FUNC_MALLOC.
25153         Require AC_FUNC_REALLOC, not jm_FUNC_REALLOC.
25154         * m4/xalloc.m4: Likewise.
25155
25156 2004-03-30  Paul Eggert  <eggert@twinsun.com>
25157
25158         Merge from coreutils.
25159
25160         * m4/inttostr.m4: New file.
25161         * m4/getdate.m4 (gl_GETDATE): Remove time-related stuff.
25162         Require AM_STDBOOL_H and gl_TIMESPEC instead.
25163         Require gl_CLOCK_TIME.
25164         * m4/clock_time.m4 (gl_CLOCK_TIME): Require AC_GNU_SOURCE.
25165
25166 2004-03-30  Paul Eggert  <eggert@twinsun.com>
25167
25168         * lib/cloexec.h, cloexec.c (set_cloexec_flag): Return int
25169         not bool, to be more consistent with Unix conventions.
25170         Suggested by Bruno Haible.
25171
25172         Merge from coreutils.
25173
25174         * lib/imaxtostr.c, lib/inttostr.c, lib/inttostr.h, lib/offtostr.c:
25175         * lib/umaxtostr.c: New files.
25176
25177         * lib/getdate.h: Include stdbool.h, and timespec.h instead of
25178         the usual <time.h> dance.
25179         (get_date): Change signature to support fractional time stamps.
25180         All callers changed.
25181         * lib/getdate.y: Include "getdate.h" first, as we can now
25182         assume C89 and don't need to worry about 'const'.
25183         Similarly, include "unlocked-io.h" near start, not in middle.
25184         Include <limits.h>.
25185         (textint.value): Use long int rather than int.
25186         (textint.digits): Use size_t rather than int.
25187         (BILLION, LOG10_BILLION): New constants.
25188         (parser_control): New member rel_ns.  Members day_ordinal,
25189         time_zone, month, day, hour, minutes, rel_year, rel_month,
25190         rel_day, rel_hour, rel_minutes, rel_seconds
25191         are now long int, not int.  Member seconds is now struct timespec,
25192         not int.  New member timespec_seen.  Members dates_seen, days_seen,
25193         local_zones_seen, rels_seen, times_seen, zones_seen are now size_t,
25194         not int.
25195         (%union.intval): Now long int, not int.
25196         New member timespec.
25197         (tSDECIMAL_NUMBER, tUDECIMAL_NUMBER): New tokens.
25198         (seconds, signed_seconds, unsigned_seconds): New nonterminals.
25199         (spec): Now is a timespec or an item list.
25200         (timespec, items): New nonterminals.
25201         (time, rel, relunit, number, get_date):
25202         Add support for fractional seconds.
25203         (time): Fix bug: seconds weren't cleared in "00:00 +0000" syntax.
25204         (gmtime, localtime, mktime): Remove decls; not needed with C89.
25205         (to_hour): First arg is now long int, not int.
25206         (to_year): Returns long int, not int.
25207         Don't treat year -70 like 70.
25208         (tm_diff): Returns long int, not int.
25209         (lookup_word): Use bool instead of int when appropriate.
25210         (yylex): Use size_t for count, not int.
25211         Detect overflow when parsing large integer constants.
25212         Add support for fractions.
25213         (get_date): Make pointers 'const' if possible.
25214         Use more-portable code to detect integer overflow.
25215         (main) [TEST]: Adjust to above changes.  Test for localtime failure.
25216         Don't use ctime; it's not reliable if the year has >4 digits.
25217
25218         * lib/human.c (humblock): Inspect BLOCKSIZE if BLOCK_SIZE isn't set.
25219         This is for compatibility with BSD.
25220
25221         * lib/timespec.h (ST_TIME_CMP_NS, ST_TIME_CMP): Define.
25222         (ATIME_CMP, CTIME_CMP, MTIME_CMP, TIMESPEC_NS): Likewise.
25223         From coreutils' system.h.
25224
25225         * lib/userspec.c: Don't include "posixver.h".
25226         (parse_user_spec): Fall back on USER.GROUP parsing, regardless
25227         of POSIX version, as POSIX 1003.1-2001 allows that behavior as a
25228         compatible extension.  Simplify code by removing a boolean int
25229         that was always nonzero if a string was nonnull.
25230
25231 2004-03-30  Jim Meyering  <jim@meyering.net>
25232
25233         Merge from coreutils.
25234
25235         Avoid a configure-time warning about sys/ucred.h on OSF V4.0.
25236         * m4/ls-mntd-fs.m4: Test for sys/ucred.h separately, since
25237         on some systems one must include <grp.h> before it.
25238         Reported by Christian Krackowizer.
25239
25240 2004-03-30  Jim Meyering  <jim@meyering.net>
25241
25242         Merge from coreutils.
25243
25244         * lib/mountlist.c [HAVE_SYS_UCRED_H]: Include grp.h before sys/ucred.h.
25245
25246         * lib/readtokens.c (readtoken): Don't leak 64 bytes when reading
25247         an empty input stream.
25248
25249         * lib/readtokens.c: Include <stdbool.h>.
25250         (readtoken): Use `size_t' rather than int/long.
25251         All callers adjusted.
25252         Use `bool' rather than `int' where appropriate.
25253         Use memset rather than an explicit loop.
25254         Use x2nrealloc rather than xrealloc.
25255         Allow the use of `\0' as a delimiter.
25256         (readtokens): Likewise.
25257         * lib/readtokens.h (readtoken, readtokens): Update prototypes.
25258
25259 2004-03-30  Jim Meyering  <jim@meyering.net>
25260
25261         * m4/realloc.m4: Remove file, since now it does no more than
25262         AC_REQUIRE([AC_FUNC_REALLOC]), and that can be done via
25263         the `configure.ac' section of module/realloc.
25264         * m4/malloc.m4: Likewise, but for AC_FUNC_MALLOC.
25265
25266 2004-03-30  Bruno Haible  <bruno@clisp.org>
25267
25268         * lib/getloadavg.c (getloadavg): Don't assume setlocale returns
25269         nonnull.
25270
25271 2004-03-29  Paul Eggert  <eggert@twinsun.com>
25272
25273         Merge changes to getloadavg.c from coreutils and Emacs.
25274
25275         * lib/getloadavg.c [!defined HAVE_SETLOCALE] (setlocale):
25276         Define to an expression, not to the empty string.
25277         Include cloexec.h and xalloc.h.
25278         (getloadavg): Restore LC_NUMERIC locale after setting it temporarily.
25279         Use set_cloexec_flag rather than rolling our own.
25280         * lib/cloexec.c, lib/cloexec.h: New files.
25281
25282 2004-03-29  Paul Eggert  <eggert@twinsun.com>
25283
25284         * m4/cloexec.m4: New file.
25285
25286 2004-03-18  Paul Eggert  <eggert@twinsun.com>
25287
25288         * lib/getopt.h: Sync with libc CVS.
25289
25290 2004-03-18  Paul Eggert  <eggert@twinsun.com>
25291             Bruno Haible  <bruno@clisp.org>
25292
25293         * m4/mbswidth.m4 (gl_MBSWIDTH): Also test whether <wchar.h> declares
25294         mbswidth.
25295
25296 2004-03-18  Paul Eggert  <eggert@twinsun.com>
25297             Bruno Haible  <bruno@clisp.org>
25298
25299         * lib/mbswidth.h: Include <wchar.h> only if
25300         HAVE_DECL_MBSWIDTH_IN_WCHAR_H, not on all platforms that have
25301         <wchar.h>.
25302         * lib/mbswidth.c: Include <stdio.h> and <time.h> before <wchar.h>.
25303
25304 2004-03-09  Paul Eggert  <eggert@twinsun.com>
25305
25306         * lib/argp-parse.c, getopt.c, getopt.h, getopt1.c:
25307         Sync with libc CVS.
25308         * lib/getopt_int.h: New file, also synced from libc.
25309
25310 2004-03-09  Paul Eggert  <eggert@twinsun.com>
25311
25312         * config/srclistvars.sh: Add GNUWWWLICENSES for eggert.
25313         * config/srclist.txt: Sync getopt with libc.  Add getopt_int.h.
25314         Bring back getopt.c, getopt.h, getopt1.c.
25315
25316 2004-03-07  Paul Eggert  <eggert@twinsun.com>
25317
25318         * m4/c-stack.m4 (gl_PREREQ_C_STACK): Renamed from jm_PREREQ_C_STACK.
25319         All uses changed.  Check for sa_sigaction member; this fixes
25320         a bug first reported by Jason Andrade in
25321         <http://mail.gnu.org/archive/html/bug-textutils/2003-03/msg00027.html>.
25322
25323 2004-03-07  Paul Eggert  <eggert@twinsun.com>
25324
25325         * lib/c-stack.c (SIGACTION_WORKS): New macro.  Use it instead of long
25326         '#if' expressions.  Unlike the code it replaces, it does not
25327         depend on (defined _SC_PAGESIZE).  However, it does depend on
25328         HAVE_STRUCT_SIGACTION_SA_SIGACTION; this last change fixes a bug
25329         first reported by Jason Andrade in
25330         <http://mail.gnu.org/archive/html/bug-textutils/2003-03/msg00027.html>.
25331
25332 2004-02-25  Simon Josefsson  <jas@extundo.com>
25333
25334         * m4/strdup.m4 (gl_PREREQ_STRDUP): Check whether strdup is declared.
25335
25336 2004-02-25  Simon Josefsson  <jas@extundo.com>
25337
25338         * lib/strdup.h: New file.
25339         * lib/strdup.c: Include it.
25340         * lib/path-concat.c: Include strdup.h. Drop strdup declaration.
25341         * lib/userspec.c: Include strdup.h. Drop strdup declaration.
25342
25343 2004-02-23  Karl Berry  <karl@gnu.org>
25344
25345         * doc/maintain.texi, doc/standards.texi, doc/make-stds.texi: new files
25346         (from fencepost.gnu.org:/gd/gnuorg).
25347
25348 2004-02-23  Karl Berry  <karl@gnu.org>
25349
25350         * config/srclistvars.sh (GNUORG) [karl]: redefine.
25351         * config/srclist.txt: add maintain/standards documents.
25352
25353 2004-02-18  Bruno Haible  <bruno@clisp.org>
25354
25355         * m4/xsize.m4 (gl_XSIZE): Require AC_C_INLINE.
25356         Reported by Derek Robert Price <derek@ximbiot.com>.
25357
25358 2004-02-16  Karl Berry  <karl@gnu.org>
25359
25360         * config/mkinstalldirs, install-sh: update from automake.
25361
25362 2004-02-06  Karl Berry  <karl@gnu.org>
25363
25364         * m4/po.m4: update from gettext 0.14.1.
25365
25366 2004-02-06  Karl Berry  <karl@gnu.org>
25367
25368         * lib/config.charset: update from gettext 0.14.1.
25369
25370 2004-02-05  Paul Eggert  <eggert@twinsun.com>
25371
25372         Add comments and code, prompted by suggestions from Bruno Haible
25373         for sh-quote.
25374         * lib/quotearg.h (quotearg_alloc): New decl.  Improve the comments
25375         describing the enum quoting_style values.
25376         * lib/quotearg.c (quotearg_alloc): New function.
25377         (quotearg_buffer_restyled): Treat lone { and } as special.
25378         Treat = as special.  Work around bug with older shells
25379         that "see" a '\' that is really the 2nd byte of a multibyte char.
25380         Quote empty string with shell_quoting_style.
25381
25382 2004-02-03  Bruno Haible  <bruno@clisp.org>
25383
25384         * m4/pipe.m4: New file, from GNU gettext.
25385
25386 2004-02-03  Bruno Haible  <bruno@clisp.org>
25387
25388         * lib/pipe.h: New file, from GNU gettext.
25389         * lib/pipe.c: New file, from GNU gettext.
25390
25391 2004-01-27  Bruno Haible  <bruno@clisp.org>
25392
25393         * m4/execute.m4: New file, from GNU gettext.
25394
25395 2004-01-27  Bruno Haible  <bruno@clisp.org>
25396
25397         * lib/execute.h: New file, from GNU gettext.
25398         * lib/execute.c: New file, from GNU gettext.
25399         * lib/w32spawn.h: New file, from GNU gettext.
25400
25401 2004-01-24  Paul Eggert  <eggert@twinsun.com>
25402
25403         Merge from diffutils.
25404
25405         * lib/file-type.c (file_type): Add typed memory objects.
25406         * lib/file-type.h (S_TYPEISTMO): New macro.
25407
25408         * lib/c-stack.h (c_stack_action): Remove argv argument.
25409         * lib/c-stack.c (c_stack_action): Likewise.  All uses changed.
25410         (die): Don't calculate message unless segv_action returns.
25411         (get_stack_location, min_address_from_argv, max_address_from_argv,
25412         volatile stack_base, volatile_stack_size): Remove.
25413         (segv_handler): If ! HAVE_XSI_STACK_OVERFLOW_HEURISTIC, assume
25414         that every segmentation violation is a stack overflow.  (Ouch!)
25415         See Debian bug 136249 (still outstanding) for more info about why
25416         HAVE_XSI_STACK_OVERFLOW_HEURISTIC fails on Linux kernels.
25417
25418 2004-01-24  Paul Eggert  <eggert@twinsun.com>
25419
25420         Exit-status fix from coreutils.
25421
25422         Use exit_failure consistently in place of EXIT_FAILURE,
25423         so that program exit statuses are consistent on failure.
25424
25425         * lib/argmatch.c (ARGMATCH_DIE) [! defined ARGMATCH_DIE]:
25426         Include "exitfail.h", and use exit_failure rather than EXIT_FAILURE.
25427         * lib/argmatch.h: Comment fix to match the above.
25428         * lib/obstack.c (obstack_exit_failure) [!defined _LIBC]:
25429         Now a macro referring to exit_failure, instead of a separate
25430         variable.  Include "exitfail.h" to get it.
25431         * lib/xstrtol.h: Include "exitfail.h".
25432         (STRTOL_FATAL_ERROR): Exit with status exit_failure, not 2.
25433
25434         * lib/long-options.c (parse_long_options): Use prototype
25435         for usage function arg.  Pass it EXIT_SUCCESS rather than 0,
25436         for clarity.
25437
25438 2004-01-21  Jim Meyering  <jim@meyering.net>
25439
25440         * lib/mktime.c (__mktime_internal) [!_LIBC]: Define to mktime_internal
25441         so as not to conflict with a different-sized __mktime_internal
25442         function in GNU libc.
25443         * lib/timegm.c (__mktime_internal) [!_LIBC]: Likewise.
25444         Problem building statically-linked `ls' reported by Michael Brunnbauer.
25445
25446 2004-01-20  Karl Berry  <karl@gnu.org>
25447
25448         * config/config.guess: update from config.
25449
25450         * config/srclistvars.sh: GNUWWWLICENSES for karl.
25451
25452 2004-01-20  Bruno Haible  <bruno@clisp.org>
25453
25454         Safer stack allocation.
25455         * lib/setenv.c: Include allocsa.h.
25456         (alloca): Remove fallback definition.
25457         (freea): Remove macro.
25458         (__add_to_environ) [!_LIBC]: Use allocsa instead of alloca. Use freesa
25459         instead of freea.
25460
25461 2004-01-20  Bruno Haible  <bruno@clisp.org>
25462
25463         * m4/eealloc.m4: New file, from GNU gettext.
25464
25465 2004-01-20  Bruno Haible  <bruno@clisp.org>
25466
25467         * m4/allocsa.m4: New file, from GNU gettext.
25468
25469 2004-01-20  Bruno Haible  <bruno@clisp.org>
25470
25471         * lib/xallocsa.h: New file, from GNU gettext.
25472         * lib/xallocsa.c: New file, from GNU gettext.
25473
25474 2004-01-20  Bruno Haible  <bruno@clisp.org>
25475
25476         * lib/wait-process.c: On Windows, include windows.h. Needed on mingw.
25477
25478 2004-01-20  Bruno Haible  <bruno@clisp.org>
25479
25480         * lib/wait-process.c (wait_subprocess): Add ignore_sigpipe argument.
25481         * lib/wait-process.c (wait_subprocess): Likewise. Handle SIGPIPE
25482         specially.
25483
25484 2004-01-20  Bruno Haible  <bruno@clisp.org>
25485
25486         * lib/wait-process.c (wait_process): Disable the 2003-10-31 waitid()
25487         patch.
25488
25489 2004-01-20  Bruno Haible  <bruno@clisp.org>
25490
25491         * lib/wait-process.c (cleanup_slaves): Use ANSI C declaration.
25492
25493 2004-01-20  Bruno Haible  <bruno@clisp.org>
25494
25495         * lib/eealloc.h: New file.
25496
25497 2004-01-20  Bruno Haible  <bruno@clisp.org>
25498
25499         * lib/binary-io.h: Avoid warnings on Cygwin.
25500
25501 2004-01-20  Bruno Haible  <bruno@clisp.org>
25502
25503         * lib/allocsa.h: New file, from GNU gettext.
25504         * lib/allocsa.c: New file, from GNU gettext.
25505
25506 2004-01-18  Karl Berry  <karl@gnu.org>
25507
25508         * doc/gpl.texi, doc/lgpl.texi: new files.
25509
25510 2004-01-18  Karl Berry  <karl@gnu.org>
25511
25512         * config/srclistvars.sh (GNUWWWLICENSES): new variable.
25513         * config/srclist.txt ({fdl,gpl,lgpl}.text): get from there.
25514
25515 2004-01-15  Paul Eggert  <eggert@twinsun.com>
25516
25517         Merge from coreutils.
25518
25519         * m4/jm-macros.m4 (jm_CHECK_ALL_TYPES): Check for uintptr_t.
25520         * m4/posixver.m4 (gl_POSIXVER): Require gl_DEFAULT_POSIX2_VERSION.
25521         (gl_DEFAULT_POSIX2_VERSION): Move
25522         the documentation from 'configure' into 'config.hin',
25523         so that 'configure --help' isn't burdened by it and
25524         we don't have to worry about its formatting there.
25525         Reword the documentation so that it's more succinct
25526         and can be run together into a single paragraph.
25527         * m4/same.m4 (gl_SAME): Check for pathconf.
25528
25529 2004-01-15  Paul Eggert  <eggert@twinsun.com>
25530
25531         Merge from coreutils.
25532
25533         * lib/posixver.c: Include posixver.h.
25534
25535         * lib/same.c: Include <stdbool.h>, <limits.h>.
25536         (_POSIX_NAME_MAX): Define if not defined.
25537         (MIN): New macro.
25538         (same_name): If file names are silently truncated, report
25539         that the file names are the same if they are the same after
25540         the silent truncation.
25541
25542         * lib/xstrtod.h (xstrtod): Accept an extra arg, specifying the
25543         conversion function.
25544         * lib/xstrtod.c (xstrtod): Likewise.  All callers changed to
25545         include c-strtod.h and use c_strtod.  Don't include stdlib.h; no
25546         longer needed.
25547
25548 2004-01-15  Jim Meyering  <jim@meyering.net>
25549
25550         Merge from coreutils.
25551
25552         * m4/clock_time.m4 (gl_CLOCK_TIME): Don't set LIB_CLOCK_GETTIME
25553         if no library is required.
25554         * m4/jm-macros.m4: Don't require UTILS_SYS_OPEN_MAX.
25555         * m4/jm-macros.m4 (jm_MACROS): Require gl_FUNC_FREE.
25556         * m4/jm-macros.m4 (jm_MACROS): Require autoconf-2.58.
25557         (AC_LANG_SOURCE): Remove definition, now that we require autoconf-2.58.
25558         * m4/jm-macros.m4 (jm_MACROS): Don't require AC_FUNC_FTW.
25559         * m4/lib-check.m4 (jm_LIB_CHECK): Do not set LIB_CRYPT to the
25560         value, $ac_cv_search_crypt, if it's "none required".
25561         * m4/posixver.m4 (gl_DEFAULT_POSIX2_VERSION): New macro.
25562         * m4/prereq.m4 (jm_PREREQ): Require AC_FUNC_GETLOADAVG,
25563         not gl_FUNC_GETLOADAVG.
25564         * m4/prereq.m4 (jm_PREREQ): Require gl_READTOKENS, gl_MD5, gl_MAKEPATH,
25565         gl_LONG_OPTIONS, and gl_IDCACHE, gl_GETUGROUPS.
25566
25567 2004-01-15  Jim Meyering  <jim@meyering.net>
25568
25569         Merge from coreutils.
25570
25571         * lib/md5.h (rol) [__GNUC__ && __i386__]: Don't use `asm' code.  These
25572         days, gcc-3.x does better all by itself.  Patch from Dean Gaudet:
25573         http://mail.gnu.org/archive/html/bug-coreutils/2003-11/msg00144.html
25574
25575         * lib/posixver.c (DEFAULT_POSIX2_VERSION): Use definition of new,
25576         optional configure-time default.
25577
25578         * lib/version-etc.c (version_etc_copyright): Update copyright date.
25579
25580         * lib/xreadlink.c (xreadlink): Correct outdated comment.
25581
25582 2004-01-15  Alexandre Duret-Lutz  <adl@gnu.org>
25583
25584         Merge from coreutils.
25585
25586         * m4/nanosleep.m4 (jm_FUNC_NANOSLEEP): Do not set LIB_NANOSLEEP to the
25587         value, $ac_cv_search_nanosleep, if it's "none required".
25588
25589 2004-01-14  Paul Eggert  <eggert@twinsun.com>
25590
25591         * lib/fnmatch_loop.c (ALLOCA_LIMIT): Remove macro, which collided
25592         with like-named macro in fnmatch.c.
25593         (EXT): Use an internal constant instead.
25594
25595         Merge fnmatch patches from glibc.
25596         * lib/fnmatch.c (mbsinit): Remove define.
25597         Add libc_hidden_ver (__fnmatch, fnmatch).
25598         * lib/fnmatch_loop.c (FCT): Cast to int32_t and UCHAR when appropriate.
25599         Adjust to renaming of collseq_table_lookup to __collseq_table_lookup.
25600
25601 2004-01-14  Karl Berry  <karl@gnu.org>
25602
25603         * config/install-sh: update from automake.
25604
25605 2004-01-13  Karl Berry  <karl@gnu.org>
25606
25607         * config/install-sh: update from automake.
25608
25609 2004-01-09  Karl Berry  <karl@gnu.org>
25610
25611         * config/install-sh: update from automake.
25612
25613 2004-01-05  Karl Berry  <karl@gnu.org>
25614
25615         * config/config.{sub,guess}: update from config.
25616
25617 2003-12-31  Karl Berry  <karl@gnu.org>
25618
25619         * config/depcomp: update from automake.
25620
25621 2003-12-14  Karl Berry  <karl@gnu.org>
25622
25623         * lib/config.charset: update from gettext-runtime.
25624
25625 2003-12-03  Paul Eggert  <eggert@twinsun.com>
25626
25627         * lib/getgroups.c (getgroups): xmalloc takes one argument, not two.
25628         Bug reported by Alfred M. Szmidt.
25629
25630 2003-12-03  Bruno Haible  <bruno@clisp.org>
25631
25632         * m4/gettext.m4: Upgrade from gettext-0.13.
25633         * m4/po.m4: Upgrade from gettext-0.13.
25634         * m4/size_max.m4 (gl_SIZE_MAX): Don't use the _ONCE macros here.
25635         * m4/intmax.m4: New file, from gettext-0.13.
25636         * m4/printf-posix.m4: New file, from gettext-0.13.
25637
25638 2003-11-29  Karl Berry  <karl@gnu.org>
25639
25640         * lib/argp-{help.c,parse.c,namefrob.h}, argp.h: update from libc.
25641
25642 2003-11-25  Paul Eggert  <eggert@twinsun.com>
25643             Bruno Haible  <bruno@clisp.org>
25644
25645         * lib/printf-parse.h: Don't include sys/types.h.
25646         (ARG_NONE): New macro.
25647         (char_directive): Change type of *arg_index fields to size_t.
25648         * lib/printf-parse.c: Don't include sys/types.h.
25649         (SSIZE_MAX): Remove macro.
25650         (PRINTF_PARSE): Change the type of the arg_index variables to size_t.
25651         Remove unnecessary overflow check.
25652         * lib/vasnprintf.c (VASNPRINTF): Update for type change of *arg_index
25653         fields.
25654
25655 2003-11-25  Bruno Haible  <bruno@clisp.org>
25656
25657         * modules/vasnprintf (Files): Remove m4/ssize_t.m4.
25658
25659 2003-11-25  Bruno Haible  <bruno@clisp.org>
25660
25661         * m4/vasnprintf.m4 (gl_PREREQ_PRINTF_PARSE): Don't require
25662         gt_TYPE_SSIZE_T.
25663
25664 2003-11-24  Paul Eggert  <eggert@twinsun.com>
25665
25666         * modules/alloca: Remove dependency on xalloc.
25667
25668 2003-11-24  Paul Eggert  <eggert@twinsun.com>
25669
25670         * lib/alloca.c: Remove dependency on xalloc module.
25671         (xalloc_die): Remove.
25672         (memory_full) [!defined emacs]: New macro.
25673         [!defined emacs]: Don't include xalloc.h.
25674         (alloca): Invoke memory_full, not xalloc_die, if malloc fails or
25675         address arithmetic overflows.  Change datatypes a bit to avoid
25676         unnecessary casts.
25677
25678 2003-11-22  Jim Meyering  <jim@meyering.net>
25679
25680         * lib/xmalloc.c (x2nrealloc_inline): Fix typos in comments:
25681         s/size/size_t/.
25682
25683 2003-11-21  Karl Berry  <karl@gnu.org>
25684
25685         * config/config.{sub,guess}: update from config.
25686
25687 2003-11-18  Karl Berry  <karl@gnu.org>
25688
25689         * config/config.{sub,guess}: update from config.
25690
25691         * config/(printf-{parse,args}.[ch]): sync broken, sigh.
25692
25693 2003-11-17  Paul Eggert  <eggert@twinsun.com>
25694
25695         * README: Mention that S+T cannot overflow if S is the size of
25696         an existing object and T is sufficiently small.
25697
25698 2003-11-17  Jim Meyering  <jim@meyering.net>
25699
25700         On systems without utime and without a utimes function capable of
25701         dealing with a NULL struct utimbuf* argument, this utime replacement
25702         could -- in unusual circumstances -- leak a file descriptor.
25703         * lib/utime.c: Include <unistd.h> and <errno.h>.
25704         (utime_null): Be sure to close `fd' and to preserve errno.
25705         Reported by Geoff Collyer via Arnold Robbins.
25706
25707 2003-11-17  Bruno Haible  <bruno@clisp.org>
25708
25709         * modules/vasnprintf (Files): Add m4/ssize_t.m4.
25710         (Depends-on): Add xsize.
25711
25712 2003-11-17  Bruno Haible  <bruno@clisp.org>
25713
25714         * m4/vasnprintf.m4 (gl_PREREQ_PRINTF_PARSE): Require gt_TYPE_SSIZE_T.
25715
25716 2003-11-17  Bruno Haible  <bruno@clisp.org>
25717
25718         * lib/vasnprintf.c (alloca): Remove fallback definition.
25719         (freea): Remove definition.
25720         (VASNPRINTF): Use alloca only for small sizes, say <= 4000 bytes.
25721         Reported by Paul Eggert.
25722
25723 2003-11-16  Paul Eggert  <eggert@twinsun.com>
25724             Bruno Haible  <bruno@clisp.org>
25725
25726         Protect against address arithmetic overflow.
25727         * lib/printf-args.h: Include stddef.h.
25728         (arguments): Change type of field 'count' to size_t.
25729         * lib/printf-args.c (printf_fetchargs): Use size_t instead of
25730         'unsigned int' where appropriate.
25731         * lib/printf-parse.h: Include sys/types.h.
25732         (char_directive): Change type of *arg_index fields to ssize_t.
25733         (char_directives): Change type of fields 'count', max_*_length to
25734         size_t.
25735         * lib/printf-parse.c: Include sys/types.h and xsize.h.
25736         (SSIZE_MAX): Define fallback value.
25737         (PRINTF_PARSE): Use size_t instead of 'unsigned int' and ssize_t
25738         instead of 'int' where appropriate. Check a_allocated, d_allocated
25739         against overflow. Reject %m$ argument numbers > SSIZE_MAX + 1.
25740         * lib/vasnprintf.c: Include xsize.h.
25741         (VASNPRINTF): Use size_t instead of 'unsigned int' where appropriate.
25742         Check alloca, malloc, realloc, ENSURE_ALLOCATION arguments against
25743         overflow. Avoid wraparound when converting a width or precision from
25744         decimal to binary.
25745
25746 2003-11-16  Bruno Haible  <bruno@clisp.org>
25747
25748         Update from GNU gettext.
25749         * lib/printf-parse.c: Generalize to it can be compiled for wide
25750         strings.
25751         (PRINTF_PARSE, CHAR_T, DIRECTIVE, DIRECTIVES): New macros.
25752         * lib/vasnprintf.c: Generalize to it can be compiled for wide strings.
25753         (VASNPRINTF, CHAR_T, DIRECTIVE, DIRECTIVES, PRINTF_PARSE, USE_SNPRINTF,
25754         SNPRINTF): New macros.
25755         Don't include <alloca.h> if the file is used inside libintl.
25756         (local_wcslen): New function, for Solaris 2.5.1.
25757         (VASNPRINTF): Use it instead of wcslen.
25758
25759 2003-11-16  Bruno Haible  <bruno@clisp.org>
25760
25761         * lib/xsize.h (xmax): New function.
25762         (xsum, xsum3, xsum4): Declare as "pure" functions.
25763
25764 2003-11-12  Paul Eggert  <eggert@twinsun.com>
25765
25766         * modules/xalloc (Files): Undo latest change, since xalloc.h
25767         no longer needs SIZE_MAX or PTRDIFF_MAX.
25768
25769 2003-11-12  Paul Eggert  <eggert@twinsun.com>
25770
25771         * m4/xalloc.m4 (gl_PREREQ_XALLOC): Do not require gl_SIZE_MAX or
25772         gl_PTRDIFF_MAX.
25773
25774 2003-11-12  Paul Eggert  <eggert@twinsun.com>
25775
25776         * lib/xstrtol.c (__xstrtol): Remove "break" immediately after
25777         "return", to pacify some unknown compiler.  Problem reported
25778         by Joerg Schilling.
25779
25780 2003-11-12  Paul Eggert  <eggert@twinsun.com>
25781
25782         * lib/xalloc.h: Do not include <limits.h> or <stdint.h>.
25783         (xalloc_oversized): Use sizeof (ptrdiff_t) and sizeof (size_t) for
25784         the heuristic, rather than PTRDIFF_MAX and SIZE_MAX.  This
25785         heuristic is just as accurate as far as we know, and it removes a
25786         dependency on size_max.m4 and ptrdiff_max.m4.
25787
25788 2003-11-11  Bruno Haible  <bruno@clisp.org>
25789
25790         * modules/xsize (Files): Add m4/size_max.m4.
25791         * modules/xalloc (Files): Add m4/size_max.m4, m4/ptrdiff_max.m4.
25792
25793 2003-11-11  Bruno Haible  <bruno@clisp.org>
25794
25795         * m4/size_max.m4: New file.
25796         * m4/ptrdiff_max.m4: New file.
25797         * m4/xsize,m4 (gl_XSIZE): Require gl_SIZE_MAX.
25798         * m4/xalloc.m4 (gl_PREREQ_XALLOC): New macro.
25799         (gl_XALLOC): Invoke it.
25800
25801 2003-11-11  Bruno Haible  <bruno@clisp.org>
25802
25803         * lib/xsize.h (SIZE_MAX): Remove fallback definition.
25804         * lib/xalloc.h: Include limits.h. Assume SIZE_MAX and PTRDIFF_MAX are
25805         defined.
25806
25807 2003-11-10  Paul Eggert  <eggert@twinsun.com>
25808
25809         * lib/xalloc.h (xalloc_oversized): [! (defined PTRDIFF_MAX &&
25810         PTRDIFF_MAX < SIZE_MAX)]: Fix off-by-one error that would have
25811         rejected some allocations of exactly SIZE_MAX - 2 bytes.
25812         From Bruno Haible.
25813         [defined PTRDIFF_MAX && PTRDIFF_MAX < SIZE_MAX]: Use SIZE_MAX,
25814         not (size_t) -1, since it's defined here.
25815
25816 2003-11-09  Karl Berry  <karl@gnu.org>
25817
25818         * config/mkinstalldirs, depcomp, mdate-sh: update from automake.
25819
25820 2003-11-06  Paul Eggert  <eggert@twinsun.com>
25821
25822         * lib/xalloc.h [HAVE_STDINT_H]: Include <stdint.h>.
25823         (xalloc_oversized) [! (PTRDIFF_MAX < SIZE_MAX)]:
25824         Reject sizes of exactly SIZE_MAX bytes.
25825         * lib/xreadlink.c: Include "xalloc.h" before checking whether SIZE_MAX
25826         is defined, since "xalloc.h" now defines SIZE_MAX on modern hosts.
25827
25828 2003-11-05  Bruno Haible  <bruno@clisp.org>
25829
25830         * lib/xsize.h: Include limits.h, to avoid a possible collision with
25831         SIZE_MAX defined in <limits.h> on Solaris.
25832
25833 2003-11-04  Jim Meyering  <jim@meyering.net>
25834
25835         * modules/sysexits: Use the `$(VAR)' notation for AC_SUBST'd
25836         variable names, rather than @VAR@.
25837         * modules/poll: Likewise.
25838
25839 2003-11-04  Bruno Haible  <bruno@clisp.org>
25840
25841         * modules/xsize: New file.
25842         * modules/linebreak: Depend on xsize.
25843         * MODULES.html.sh (func_all_modules): Add xsize.
25844
25845 2003-11-04  Bruno Haible  <bruno@clisp.org>
25846
25847         * m4/xsize.m4: New file.
25848
25849 2003-11-04  Bruno Haible  <bruno@clisp.org>
25850
25851         * lib/xsize.h: New file.
25852         * lib/linebreak.c: Include xsize.h.
25853         (mbs_possible_linebreaks, mbs_width_linebreaks): Check malloc()
25854         argument for overflow.
25855         Suggested by Paul Eggert.
25856
25857 2003-11-03  Karl Berry  <karl@gnu.org>
25858
25859         * config/config.{guess,sub}: update from config.
25860
25861 2003-11-03  Jim Meyering  <jim@meyering.net>
25862
25863         * modules/userspec (lib_SOURCES): Add userspec.h.
25864         (Include): Add "userspec.h".
25865         Improve description.
25866
25867 2003-11-03  Jim Meyering  <jim@meyering.net>
25868
25869         * lib/userspec.c: Include "userspec.h".
25870         * lib/userspec.h: New file.
25871
25872 2003-11-03  Bruno Haible  <bruno@clisp.org>
25873
25874         * m4/wait-process.m4 (gl_WAIT_PROCESS): Also check for waitid.
25875
25876 2003-11-03  Bruno Haible  <bruno@clisp.org>
25877
25878         * lib/wait-process.c (wait_process): Use waitid with WNOWAIT if
25879         available, to avoid (extremely rare) race condition.
25880         Suggested by Paul Eggert.
25881
25882 2003-11-02  Karl Berry  <karl@gnu.org>
25883
25884         * config/srclist.txt (vasprintf.c): sync broken, sigh.
25885
25886 2003-10-31  Paul Eggert  <eggert@twinsun.com>
25887
25888         * lib/mountlist.h (struct mount_entry.me_type_malloced): New member.
25889         * lib/mountlist.c (SIZE_MAX): Define if not defined already.
25890         (read_filesystem_list): Set and use me_type_malloced.
25891         Use "sizeof *me" rather than "sizeof (struct mount_entry)" (or
25892         whatever the type happens to be), for brevity and consistency.
25893         Check for size calculation overflow on Alphas running OSF/1.
25894
25895 2003-10-31  Jim Meyering  <jim@meyering.net>
25896
25897         * lib/hash.c: Include "xalloc.h" for use of xalloc_oversized.
25898
25899         * lib/linebuffer.c: Include <string.h> for declaration of memset.
25900
25901 2003-10-30  Paul Eggert  <eggert@twinsun.com>
25902             Bruno Haible  <bruno@clisp.org>
25903
25904         * lib/vasprintf.c: Include <limits.h>, <stdlib.h>.
25905         (vasprintf): Fail if the resulting length doesn't fit in an 'int'.
25906
25907 2003-10-30  Paul Eggert  <eggert@cs.ucla.edu>
25908
25909         * m4/host-os.m4 (UTILS_HOST_OS): Change netbsd*-gnu pattern back to
25910         netbsd*-gnu*.  Suggested by Robert Millan.
25911
25912 2003-10-29  Paul Eggert  <eggert@twinsun.com>
25913
25914         * modules/group-member: Depend on stdbool.
25915
25916 2003-10-29  Paul Eggert  <eggert@twinsun.com>
25917
25918         * m4/xalloc.m4 (gl_XALLOC): Undo previous change.
25919
25920 2003-10-29  Paul Eggert  <eggert@twinsun.com>
25921
25922         * m4/host-os.m4 (UTILS_HOST_OS): Resurrect netbsd*-gnu.  Add comments
25923         to it, and to knetbsd*-gnu and kfreebsd*-gnu.  Remove the '*' from
25924         after the 'gnu' in these cases.  This fixes some bugs in the
25925         previous change, and is based on suggestions by Robert Millan.
25926
25927 2003-10-29  Paul Eggert  <eggert@twinsun.com>
25928
25929         * lib/xalloc.h (xalloc_oversized): Now a macro, not a function,
25930         so that it works even if SIZE_MAX < N.  Do not include <stdbool.h>;
25931         no longer needed.
25932         * lib/quotearg.c (quotearg_n_options): Use it.
25933         * lib/group-member.c: Include <stdbool.h>.
25934         (free_group_info): Arg is now const *; don't free arg.
25935         (get_group_info): Now returns bool and accepts struct group_info *,
25936         rather than returning a malloc'ed struct group_info *.
25937         All uses changed.  Check for overflow in internal size calculation.
25938
25939         * lib/getusershell.c (readname): Simplify the code by using x2nrealloc
25940         rather than xmalloc/xrealloc.
25941         * lib/linebuffer.c (initbuffer, readlinebuffer): Simplify the code by
25942         using x2realloc rather than xmalloc/xrealloc.  Also, fix a C
25943         conformance bug: the old code used a pointer after freeing the
25944         storage that it addressed.
25945         * lib/hash.c (hash_initialize): Simplify the code by using
25946         xalloc_oversized rather than doing it by hand.
25947         * lib/getgroups.c (getgroups): Don't use xrealloc, since we don't need
25948         the buffer preserved.  Use free and xmalloc instead.
25949         * lib/quotearg.c (quotearg_n_options): Likewise.
25950         Use a simpler test for size overflow.  Don't use xalloc_oversized
25951         because unsigned int might be wider than size_t (!); this suggests
25952         that we should switch from unsigned int to size_t for slot numbers.
25953
25954 2003-10-28  Paul Eggert  <eggert@twinsun.com>
25955
25956         * m4/host-os.m4 (UTILS_HOST_OS): Identify GNU/KFreeBSD and
25957         GNU/KNetBSD.  These implementations use glibc atop the FreeBSD and
25958         NetBSD kernels.  Requested by Richard Stallman.
25959
25960 2003-10-27  Paul Eggert  <eggert@twinsun.com>
25961
25962         * lib/exclude.c (new_exclude): Use xzalloc rather than xmalloc
25963         to allocate the returned structure.  Do not allocate a subarray,
25964         as x2nrealloc will do that.
25965         (add_exclude): Use x2nrealloc to reallocate ex->exclude,
25966         instead of xnrealloc.
25967         (add_exclude_file): Use x2realloc instead of malloc + xnrealloc.
25968
25969 2003-10-27  Bruno Haible  <bruno@clisp.org>
25970
25971         * lib/stdbool_.h: Better support for BeOS.
25972
25973 2003-10-26  Paul Eggert  <eggert@twinsun.com>
25974
25975         * m4/xalloc.m4 (gl_XALLOC): Requore AC_C_INLINE, since xalloc.h
25976         now uses inline.
25977
25978 2003-10-26  Paul Eggert  <eggert@twinsun.com>
25979
25980         * lib/xalloc.h (xalloc_oversized): New static inline function, for
25981         callers that want to do their own size-overflow checking.  Include
25982         <stdbool.h>, since xalloc_oversized returns bool.
25983         * lib/xalloc.c (array_size_overflow): Remove.  All callers changed
25984         to use xalloc_oversized.
25985
25986         Add two functions x2realloc, x2nrealloc, for programs that grow
25987         arrays dynamically by doubling their sizes.
25988         * lib/xalloc.h (x2realloc, x2nrealloc): New decls.
25989         * lib/xmalloc.c (x2nrealloc_inline, x2nrealloc, x2realloc):
25990         New functions.
25991
25992         Port to C99 semantics for 'inline' of external functions.
25993         Bug reported by Bruno Haible.
25994         * lib/xmalloc.c (xnmalloc_inline): New static inline function,
25995         with the old contents of xnmalloc.
25996         (xnmalloc, xmalloc): Use it.
25997         (xnrealloc_inline): New static inline function,
25998         with the old contents of xnrealloc.
25999         (xnrealloc, xrealloc): Use it.
26000
26001         * lib/alloc.c (alloca): xmalloc cannot return NULL, so don't test for
26002         that.
26003
26004 2003-10-26  Karl Berry  <karl@gnu.org>
26005
26006         * config/srclist.txt (COPYING.DOC): no longer available from
26007         /gd/gnuorg; don't know where the ultimate source is.
26008
26009 2003-10-25  Paul Eggert  <eggert@twinsun.com>
26010
26011         Fix several address-calculation bugs in the hash modules,
26012         plus some minor code cleanup.
26013
26014         * lib/hash.h: Include <stdbool.h>, for bool.
26015         * lib/hash.c: Don't include <stdbool.h>, since hash.h does it now.
26016         * lib/hash.h (Hash_hasher, hash_get_n_buckets, hash_get_n_buckets_used,
26017         hash_get_n_entries, hash_get_max_bucket_length,
26018         hash_get_entries, hash_do_for_each, hash_string, hash_initialize,
26019         hash_rehash): Use size_t rather than unsigned.
26020         * lib/hash.c (struct hash_table, hash_get_n_buckets,
26021         hash_get_n_buckets_used, hash_get_n_entries,
26022         hash_get_max_bucket_length, hash_table_ok, hash_print_statistics,
26023         hash_get_entries, hash_do_for_each, hash_string, is_prime,
26024         next_prime, hash_initialize, hash_rehash, hash_delete, hash_print):
26025         Likewise.
26026         (SIZE_MAX): Define if not defined.
26027         (hash_get_max_bucket_length, hash_table_ok, hash_lookup,
26028         hash_get_first, hash_get_next, hash_get_entries, hash_do_for_each,
26029         hash_print):
26030         Use const * when possible.
26031         (hash_string): Use (unsigned char) *P rather than *(unsigned char *) P.
26032         (check_tuning): Fix bug: if tuning parameters were very close to
26033         0 or 1, rounding errors could have caused subscript violations.
26034         (hash_initialize, allocate_entry, hash_print): Remove unnecessary cast.
26035         (hash_initialize): Add 'fail:' label
26036         to free table and return NULL, and use it to simplify code.
26037         Use calloc rather than clearing the storage ourself.
26038         (hash_initialize, hash_rehash): Check for arithmetic overflow in
26039         buffer size calculations.
26040         * lib/hash-pjw.h (hash_pjw): Use size_t, not unsigned.
26041         Include <stddef.h>, for size_t.
26042         * lib/hash-pjw.c (hash_pjw): Likewise.
26043         Switch to method described by Bruno Haible.
26044         Include <limits.h>, for CHAR_BIT.
26045         (SIZE_BITS): New macro.
26046
26047 2003-10-23  Paul Eggert  <eggert@twinsun.com>
26048
26049         * m4/getline.m4 (AM_FUNC_GETLINE):
26050         Don't include getndelim2.o twice into LIBOBJS; this breaks on some
26051         hosts.  Problem reported by Derek Robert Price in
26052         <http://mail.gnu.org/archive/html/bug-gnulib/2003-10/msg00092.html>.
26053         This patch can be withdrawn after Autoconf 2.58 is required for gnulib.
26054         * m4/getndelim2.m4 (gl_GETNDELIM2): Likewise.
26055
26056 2003-10-21  Paul Eggert  <eggert@twinsun.com>
26057
26058         * lib/getndelim2.c (getndelim2): When size calculation overflows,
26059         ceiling the allocation at NMAX bytes rather than silently
26060         discarding input bytes before NMAX is reached.  This makes
26061         a difference only if NMAX exceeds SIZE_MAX / 2.
26062
26063         * lib/obstack.c: Merge from glibc.
26064         [defined _LIBC]: Include <obstack.h>, not "obstack.h".
26065         Add libc_hidden_def (_obstack_newchunk).
26066         (_obstack_free) [! defined _LIBC]: Remove.
26067         [defined _LIBC]: Make a strong alias from obstack_free, rather than
26068         a clone of the function body.
26069         (fputs) [defined _LIBC && defined USE_IN_LIBIO]: Remove.
26070         [defined _LIBC && !defined USE_IN_LIBIO]: Include <libio/iolibio.h>.
26071
26072         * lib/obstack.h: Indenting cleanup, to make it easier to merge with
26073         glibc.
26074         (obstack_grow, obstack_grow0): Remove unnecessary parentheses around
26075         arg to memcpy.
26076
26077         * lib/obstack.h (obstack_1grow_fast): Properly parenthesize arg.
26078         (obstack_ptr_grow_fast, obstack_int_grow_fast):
26079         Don't use lvalue casts, as GCC plans to remove support for them
26080         in GCC 3.5.  Reported by Joseph S. Myers.  This bug
26081         was also present in the non-GCC version, indicating that this
26082         code had always been buggy and had never been widely used.
26083         (obstack_1grow, obstack_ptr_grow, obstack_int_grow, obstack_blank):
26084         Use the fast variant of each macro, rather than copying the
26085         definiens of the fast variant; that way, we'll be more likely to
26086         catch future bugs in the fast variants.
26087
26088 2003-10-20  Bruno Haible  <bruno@clisp.org>
26089
26090         * modules/wait-process: New file.
26091         * MODULES.html.sh (func_all_modules): Add wait-process.
26092
26093 2003-10-20  Bruno Haible  <bruno@clisp.org>
26094
26095         * m4/wait-process.m4: New file.
26096
26097 2003-10-20  Bruno Haible  <bruno@clisp.org>
26098
26099         * lib/wait-process.h: New file, from GNU gettext.
26100         * lib/wait-process.c: New file, from GNU gettext.
26101
26102 2003-10-19  Jim Meyering  <jim@meyering.net>
26103
26104         * lib/vasnprintf.c (vasnprintf): Work around losing snprintf on
26105         HPUX 10.20.
26106
26107 2003-10-18  Karl Berry  <karl@gnu.org>
26108
26109         * config/config.guess: update from config.
26110
26111 2003-10-16  Paul Eggert  <eggert@twinsun.com>
26112
26113         * lib/getgroups.c: Include <errno.h>, <stdlib.h>.
26114         (getgroups): First arg is int, not size_t.
26115         Don't let 'free' mangle errno.
26116
26117 2003-10-16  Paul Eggert  <eggert@twinsun.com>
26118
26119         * README: Mention that gnulib assumes that (foo *) NULL + 0 == NULL.
26120
26121 2003-10-16  Karl Berry  <karl@gnu.org>
26122
26123         * config/config.{guess,sub}: update from config.
26124
26125 2003-10-16  Jim Meyering  <jim@meyering.net>
26126
26127         * lib/xmalloc.c: Include <string.h>, for declarations of memset and
26128         memcpy.
26129
26130 2003-10-15  Paul Eggert  <eggert@twinsun.com>
26131
26132         * lib/exclude.c: Do not include <inttypes.h> or <stdint.h>.
26133         (SIZE_MAX): Remove.
26134         (new_exclude, add_exclude_file): Initial size no longer needs to
26135         be a power of 2.
26136         (add_exclude, add_exclude_file): Use xnrealloc instead of rolling
26137         our own address arithmetic overflow checking.
26138
26139         * lib/fnmatch.c (SIZE_MAX): Define if standard headers don't.
26140         (fnmatch): Do not alloca more than 2000 wide characters;
26141         instead, use malloc for large buffers.
26142         Check for address arithmetic overflow, and return -1
26143         with errno set to ENOMEM in that case.
26144         * lib/fnmatch_loop.c (ALLOCA_LIMIT): New macro.
26145         (NEW_PATTERN): Do not alloca more than 8000 bytes;
26146         instead, return -1.  Check for address arithmetic overflow.
26147
26148 2003-10-14  Paul Eggert  <eggert@twinsun.com>
26149
26150         Handle invalid suffixes and overflow independently, so that
26151         callers can treat them independently as needed.  Fix some bugs in
26152         suffix handling, e.g., "100k@" was not diagnosed as an invalid
26153         suffix for a human-readable blocksize.  The major caller-visible
26154         change is the addition of a new
26155         LONGINT_INVALID_SUFFIX_CHAR_WITH_OVERFLOW enum value, indicating
26156         that both overflow and suffix chars were found.
26157
26158         * lib/human.c (humblock): Don't check separately for invalid suffix
26159         char; that is xstrtoumax's job (now that its bug is fixed).
26160         * lib/xstrtoimax.c (STRTOL_T_MINIMUM, STRTOL_T_MAXIMUM) [defined
26161         INTMAX_MAX]: New macros.
26162         * lib/xstrtol.c (STRTOL_T_MINIMUM, STRTOL_T_MAXIMUM, TYPE_MINIMUM,
26163         TYPE_MAXIMUM): New macros.
26164         (bkm_scale, bkm_scale_by_power): Return strtol_error, not int.
26165         (bkm_scale, bkm_scale_by_power, __xstrtol): Return maximal values
26166         if overflow occurs, as it's what __strtol does and it's more useful
26167         in practice.
26168         (__xstrtol): If __strtol reports some error other than ERANGE,
26169         reflect it to the caller as LONGINT_INVALID.  If it reports
26170         ERANGE, continue the rest of parsing, and report LONGINT_OVERFLOW
26171         | LONGINT_INVALID_SUFFIX_CHAR if both errors occur.
26172         * lib/xstrtol.h (LONGINT_INVALID_SUFFIX_CHAR_WITH_OVERFLOW): New enum
26173         value.
26174         (_STRTOL_ERROR): Handle it.  Abort when given unknown error codes.
26175         * lib/xstrtoul.c (STRTOL_T_MINIMUM, STRTOL_T_MAXIMUM): New macros.
26176         * lib/xstrtoumax.c (STRTOL_T_MINIMUM, STRTOL_T_MAXIMUM)
26177         [defined UINTMAX_MAX]: New macros.
26178
26179 2003-10-14  Bruno Haible  <bruno@clisp.org>
26180
26181         * modules/fatal-signal: Add m4/sig_atomic_t.m4 to file list.
26182
26183 2003-10-14  Bruno Haible  <bruno@clisp.org>
26184
26185         * m4/sig_atomic_t: New file, from GNU gettext.
26186         * m4/fatal-signal.m4 (gl_FATAL_SIGNAL): Require gt_TYPE_SIG_ATOMIC_T.
26187
26188 2003-10-14  Bruno Haible  <bruno@clisp.org>
26189
26190         * lib/fatal-signal.h: Improved comments. Suggested by Paul Eggert.
26191         * lib/fatal-signal.c: Use sig_atomic_t. Suggested by Paul Eggert.
26192         Also use volatile where needed.
26193
26194 2003-10-12  Paul Eggert  <eggert@twinsun.com>
26195
26196         * modules/xalloc: Do not depend on 'exit'.  Depend on 'stdbool'.
26197         Change maintainer from Bruno Haible to 'all'.
26198
26199 2003-10-12  Paul Eggert  <eggert@twinsun.com>
26200
26201         * m4/xalloc.m4 (gl_PREREQ_XMALLOC): Require AC_C_INLINE.
26202
26203 2003-10-12  Paul Eggert  <eggert@twinsun.com>
26204
26205         * lib/xalloc.h (xnmalloc, xzalloc, xnrealloc, xclone): New decls.
26206         (XMALLOC, XCALLOC, XREALLOC, XFREE, CCLONE, CLONE): Deprecate,
26207         and define in terms of the other primitives.
26208         * lib/xmalloc.c: Include stdbool.h; do not include exit.h.
26209         (SIZE_MAX): Define if not already defined.
26210         (array_size_overflow): New function.
26211         (xalloc_die): Abort instead of exiting if 'error' returns.
26212         (xnmalloc, xnrealloc, xzalloc, xclone): New functions.
26213         (xmalloc, xrealloc): Use them.
26214         (xcalloc): Check for address arithmetic overflow.
26215         * lib/xstrdup.c (xstrdup): Use xclone, since memcpy should be
26216         a bit faster than strcpy.
26217
26218 2003-10-10  Simon Josefsson  <jas@extundo.com>
26219
26220         * modules/argp (Depends-on): Add restrict and strcase.
26221
26222 2003-10-10  Simon Josefsson  <jas@extundo.com>
26223
26224         * m4/argp.m4: Add AC_C_INLINE.
26225
26226 2003-10-08  Paul Eggert  <eggert@twinsun.com>
26227
26228         Merge getpass from libc, plus a few fixes.
26229
26230         * lib/getpass.c (HAVE_STDIO_EXT) [_LIBC]: Define to 1.
26231         Include <stdbool.h>.
26232         Include <stdio_ext.h> if HAVE_STDIO_H, otherwise define
26233         __fsetlocking to empty.
26234         [_LIBC]: Do not include "getline.h" or "unlocked-io.h", but
26235         do include <bits/libc-lock.h>.
26236         Do not include <fcntl.h>; not needed.
26237         [_LIBC]: Include <wchar.h>.
26238         (NOTCANCEL_MODE): New macro.
26239         (flockfile, funlockfile) [_LIBC]: New macros.
26240         (__libc_cleanup_push, __libc_cleanup_pop, __getline, __tcgetattr)
26241         [!_LIBC]: New macros.
26242         (call_fclose): New function.
26243         (getpass): Use it.  Save tty stream separately; this simplifies the
26244         code and makes it more reliable if stdin happens to equal stdout.
26245         Invoke __fsetlocking on tty.
26246         Handle thread cancellation if needed.
26247         Namespace cleanup (use __tcgetattr, __getline).
26248         Use bool for Booleans.
26249         [USE_IN_LIBIO]: Handle wide streams.
26250         [!_LIBC]: Unconditionally do the fseek, since we don't know what
26251         stream might go where.
26252
26253         * lib/unlocked-io.h: Include <stdio.h>, so that the caller
26254         doesn't have to include <stdio.h> before us.
26255         (clearerr_unlocked, feof_unlocked, ferror_unlocked,
26256         fflush_unlocked, fgets_unlocked, fputc_unlocked, fputs_unlocked,
26257         fread_unlocked, fwrite_unlocked, getc_unlocked, getchar_unlocked,
26258         putc_unlocked, putchar_unlocked): Define to the unlocked counterpart
26259         if not declared, so that we can use getpass.c code from libc without
26260         rewriting it.
26261         (flockfile, ftrylockfile, funlockfile): New macros.
26262
26263 2003-10-08  Paul Eggert  <eggert@twinsun.com>
26264
26265         * modules/getpass: Depend on stdbool.
26266
26267 2003-10-08  Paul Eggert  <eggert@twinsun.com>
26268
26269         * m4/getpass.m4 (gl_PREREQ_GETPASS): Check for stdio_ext.h.
26270
26271 2003-10-07  Karl Berry  <karl@gnu.org>
26272
26273         * config/config.{guess,sub}: update from config.
26274
26275 2003-10-06  Jim Meyering  <jim@meyering.net>
26276             Bruno Haible  <bruno@clisp.org>
26277
26278         This lets translators provide better translations for the
26279         "Written by ..." part of --version output.
26280         * lib/version-etc.h: Include stdarg.h.
26281         (version_etc_copyright): Declare as readonly.
26282         (version_etc): Make this function variadic with a NULL-terminated list
26283         of author name strings.
26284         (version_etc_va): New declaration.
26285         * lib/version-etc.c: Include stdarg.h, stdlib.h.
26286         (version_etc_copyright): Declare as readonly.
26287         (version_etc_va): New function. Provide a different translatable string
26288         for each possible number of authors < 10. Abbreviate when there are 10
26289         authors or more.
26290         (version_etc): Make this function variadic. Call version_etc_va.
26291         Suggestion from Gary V. Vaughan.
26292
26293         * lib/long-options.h (parse_long_options): Change prototype: the
26294         authors string is moved to the end and becomes variadic.
26295         * lib/long-options.c: Include stdarg.h.
26296         (parse_long_options): Make this function variadic, too.
26297         Call version_etc_va, not version_etc.
26298
26299 2003-10-06  Bruno Haible  <bruno@clisp.org>
26300
26301         * modules/version-etc-2: Remove file.
26302         * MODULES.html.sh (func_all_modules): Remove version-etc-2.
26303
26304 2003-10-06  Bruno Haible  <bruno@clisp.org>
26305
26306         * modules/fatal-signal: New file.
26307         * MODULES.html.sh (func_all_modules): Add fatal-signal.
26308
26309 2003-10-06  Bruno Haible  <bruno@clisp.org>
26310
26311         * m4/fatal-signal.m4: New file.
26312         * m4/signalblocking.m4: New file, from GNU gettext.
26313
26314 2003-10-06  Bruno Haible  <bruno@clisp.org>
26315
26316         * lib/version-etc-2.h: Remove file.
26317         * lib/version-etc-2.c: Remove file.
26318
26319 2003-10-06  Bruno Haible  <bruno@clisp.org>
26320
26321         * lib/fatal-signal.h: New file, from GNU gettext.
26322         * lib/fatal-signal.c: New file, from GNU gettext.
26323
26324 2003-10-05  Paul Eggert  <eggert@twinsun.com>
26325
26326         * README: Rework advice for preventing empty .o files.
26327         Don't recommend ELIDE constructs.  Recommend <stddef.h>,
26328         not <sys/types.h>.
26329
26330 2003-10-04  Karl Berry  <karl@gnu.org>
26331
26332         * lib/argp*: update from libc.
26333
26334 2003-10-04  Karl Berry  <karl@gnu.org>
26335
26336         * config/config.{guess,sub}: update from config.
26337
26338 2003-10-02  Bruno Haible  <bruno@clisp.org>
26339
26340         * modules/lchown (Include): Add lchown.h.
26341         * modules/time_r (Include): Use "..." syntax.
26342         * modules/xgetdomainname (Include): Add xgetdomainname.h.
26343
26344 2003-10-01  Simon Josefsson  <jas@extundo.com>
26345
26346         * MODULES.html.sh (func_all_modules): Move gethostname from section
26347         'based on' to section 'lacking' POSIX:2001.
26348
26349 2003-10-01  Larry Jones  <lawrence.jones@eds.com>
26350
26351         * lib/getpass.c (getpass): Use a no-op fseek when switching from input
26352         to output mode on the same stream.
26353
26354 2003-09-29  Paul Eggert  <eggert@twinsun.com>
26355
26356         * lib/strftime.c (tm_diff) [! HAVE_TM_GMTOFF]:
26357         Fix arg typo in previous patch.
26358
26359 2003-09-28  Jim Meyering  <jim@meyering.net>
26360
26361         * lib/error.c: Correct cpp indentation.
26362
26363 2003-09-27  Paul Eggert  <eggert@twinsun.com>
26364
26365         * modules/free: New file.
26366
26367 2003-09-27  Paul Eggert  <eggert@twinsun.com>
26368
26369         * m4/free.m4: New file.
26370
26371 2003-09-27  Paul Eggert  <eggert@twinsun.com>
26372
26373         * lib/minmax.h (MIN, MAX)
26374         [__STDC__ && defined __GNUC__ && __GNUC__ >= 2]:
26375         Omit the special code that used __typeof__, since we worry that
26376         it could be more trouble than it's worth.  See:
26377         http://mail.gnu.org/archive/html/bug-gnulib/2003-01/msg00090.html
26378         http://mail.gnu.org/archive/html/bug-gnulib/2003-01/msg00095.html
26379
26380         * lib/free.c: New file.
26381
26382 2003-09-27  Oskar Liljeblad  <oskar@osk.mine.nu>
26383
26384         Trivial fixes to Makefile.am parts of module listings.
26385         * modules/strstr: Append strstr.h to lib_SOURCES.
26386         * modules/strcase: Likewise, for strcase.h.
26387
26388 2003-09-27  Karl Berry  <karl@gnu.org>
26389
26390         * config/mkinstalldirs: update from automake.
26391
26392 2003-09-26  Paul Eggert  <eggert@twinsun.com>
26393
26394         * lib/error.c (SIZE_MAX) [!defined SIZE_MAX]: Define.
26395         (error_tail): Do not loop, reallocating temporary buffer, since
26396         the output cannot contain more wide characters than the input
26397         contains bytes, the size must be big enough already.  This avoids
26398         one potential size overflow calculation.  Check for size overflow
26399         when calculating temporary buffer size.  Free temporary buffer
26400         when done, if it was allocated with malloc; this plugs a memory
26401         leak.  Remove casts from void * to pointers, that are no longer
26402         needed now that we're assuming C89 or better.
26403
26404         Merge error changes from glibc.
26405
26406         * lib/error.c, error.h: Update copyright notice header to match glibc.
26407         * lib/error.c [defined _LIBC]: Include <errno.h>, <bits/libc-lock.h>.
26408         (error, error_at_line) [defined _LIBC && defined __libc_ptf_call]:
26409         Disable cancellation while printing error.
26410         * lib/error.h: Prepend __ to parameter names.
26411
26412 2003-09-26  Jim Meyering  <jim@meyering.net>
26413
26414         * lib/error.c (error_tail): Move some declarations
26415         into inner scope where the local variables are used.
26416
26417 2003-09-26  Bruno Haible  <bruno@clisp.org>
26418
26419         * m4/stpncpy.m4 (gl_FUNC_STPNCPY): Add comments about the AIX
26420         stpncpy().
26421         Don't define stpncpy through config.h; it's now done through stpncpy.h.
26422
26423 2003-09-26  Bruno Haible  <bruno@clisp.org>
26424
26425         * lib/stpncpy.h (gnu_stpncpy): New declaration.
26426         (stpncpy): Define as alias for gnu_stpncpy.
26427         * lib/stpncpy.c [!_LIBC]: Define gnu_stpncpy, not stpncpy.
26428
26429 2003-09-25  Simon Josefsson  <jas@extundo.com>
26430
26431         * lib/xgetdomainname.h: New file.
26432         * lib/xgetdomainname.c: New file.
26433
26434 2003-09-25  Simon Josefsson  <jas@extundo.com>
26435             Bruno Haible  <bruno@clisp.org>
26436
26437         * modules/getdomainname: New file.
26438         * modules/xgetdomainname: New file.
26439         * MODULES.html.sh (func_all_modules): Add getdomainname,
26440         xgetdomainname.
26441
26442 2003-09-25  Simon Josefsson  <jas@extundo.com>
26443             Bruno Haible  <bruno@clisp.org>
26444
26445         * m4/getdomainname.m4: New file.
26446
26447 2003-09-25  Simon Josefsson  <jas@extundo.com>
26448             Bruno Haible  <bruno@clisp.org>
26449
26450         * lib/getdomainname.h: New file.
26451         * lib/getdomainname.c: New file.
26452
26453 2003-09-25  Karl Berry  <karl@gnu.org>
26454
26455         * lib/argp-fmtstream.c, argp-help.c: update from libc.
26456
26457 2003-09-25  Karl Berry  <karl@gnu.org>
26458
26459         * config/install-sh: update from automake.
26460
26461 2003-09-25  Bruno Haible  <bruno@clisp.org>
26462
26463         * modules/version-etc-2: New file, from modules/version-etc with
26464         modifications.
26465         * MODULES.html.sh (func_all_modules): Add version-etc-2.
26466
26467 2003-09-25  Bruno Haible  <bruno@clisp.org>
26468
26469         * lib/version-etc-2.h: New file, from version-etc.h with modifications.
26470         * lib/version-etc-2.c: New file, from version-etc.c with modifications.
26471
26472 2003-09-24  Simon Josefsson  <jas@extundo.com>
26473
26474         * modules/xgethostname: Add xgethostname.h.
26475
26476 2003-09-24  Paul Eggert  <eggert@twinsun.com>
26477
26478         * lib/linebuffer.c (freebuffer): Don't free the argument, just
26479         the buffer associated with the argument.  Bug reported by
26480         Simon Josefsson.
26481
26482 2003-09-24  Paul Eggert  <eggert@twinsun.com>
26483
26484         * README: Document assumptions that 'int' is at least 32 bits
26485         wide, that integer arithmetic is 2's complement without overflow,
26486         that there are no holes in integer values, that adding sizes of
26487         two nonoverlapping objects can't overflow, and that all-bits-zero
26488         yields scalar zero.  Fix spelling and capitalization typos.
26489
26490 2003-09-19  Karl Berry  <karl@gnu.org>
26491
26492         * lib/argp.h: update from libc.
26493
26494 2003-09-17  Paul Eggert  <eggert@twinsun.com>
26495
26496         * m4/extensions.m4 (gl_USE_SYSTEM_EXTENSIONS): Call AC_BEFORE first,
26497         to avoid spurious warnings like "AC_RUN_IFELSE was called before
26498         gl_USE_SYSTEM_EXTENSIONS" from autoreconf.
26499
26500 2003-09-17  Paul Eggert  <eggert@twinsun.com>
26501
26502         * gnulib-tool: Use "test -h", not "test -L", for portability
26503         to Solaris 8 /bin/sh.  (This bug is fixed in Solaris 9.)
26504         (tags_regexp): Remove, since \| doesn't conform to POSIX.
26505         (sed_extract_prog): Issue s commands one-by-one, rather than
26506         using \| in one s command.
26507
26508 2003-09-16  Paul Eggert  <eggert@twinsun.com>
26509
26510         * lib/linebuffer.c (readlinebuffer): Return NULL immediately upon
26511         input error, instead of returning NULL the next time we are called
26512         (and therefore losing track of errno).
26513
26514 2003-09-16  Bruno Haible  <bruno@clisp.org>
26515
26516         * gnulib-tool (func_create_testdir): Warn about duplicated
26517         dependencies.
26518
26519 2003-09-15  Paul Eggert  <eggert@twinsun.com>
26520
26521         * modules/argmatch, modules/fatal, modules/obstack,
26522         modules/xalloc, modules/xgethostname: Sort dependencies by
26523         importance, not alphabetically.
26524
26525 2003-09-15  Paul Eggert  <eggert@twinsun.com>
26526
26527         * lib/getndelim2.c (getndelim2): Don't trash errno when a read
26528         fails, so that the caller gets the proper errno.
26529
26530         * lib/readutmp.c (read_utmp): Likewise.
26531         Check for fstat error.  Close stream and free storage
26532         when failing.
26533
26534 2003-09-14  Karl Berry  <karl@gnu.org>
26535
26536         * config/srclist.txt (strdup.c): disable for c89 changes.
26537
26538 2003-09-14  Jim Meyering  <jim@meyering.net>
26539
26540         * lib/getloadavg.c: Correct cpp indentation.
26541         * lib/strdup.c: Likewise.
26542         * lib/vasnprintf.c: Likewise.
26543
26544 2003-09-14  Bruno Haible  <bruno@clisp.org>
26545
26546         * modules/fwriteerror: New file.
26547         * MODULES.html.sh (func_all_modules): Add fwriteerror.
26548
26549 2003-09-14  Bruno Haible  <bruno@clisp.org>
26550
26551         * lib/fwriteerror.h: New file.
26552         * lib/fwriteerror.c: New file.
26553
26554 2003-09-12  Paul Eggert  <eggert@twinsun.com>
26555
26556         * modules/argmatch, modules/exitfail, modules/fatal, modules/obstack,
26557         modules/xgethostname, modules/xalloc: Depend on exit.
26558
26559 2003-09-12  Paul Eggert  <eggert@twinsun.com>
26560
26561         * m4/error.m4: Require AC_FUNC_STRERROR_R rather than invoking it.
26562
26563         * m4/extensions.m4 (gl_USE_SYSTEM_EXTENSIONS): Require AC_AIX
26564         and AC_MINIX, too, so that their extensions are available.
26565
26566         * m4/prereq.m4 (jm_PREREQ_ADDEXT): Remove.  All uses removed.
26567         This macro has been superseded by gl_BACKUPFILE.
26568
26569         More patches to assume C89 or better.
26570
26571         * m4/error.m4 (gl_ERROR): Don't check for vprintf.
26572
26573         * m4/check-decl.m4 (jm_CHECK_DECLS): Include <string.h>, <stdlib.h>
26574         unconditionally.
26575         * m4/closeout.m4 (gl_CLOSEOUT): Don't check for stdlib.h.
26576         * m4/gettimeofday.m4 (AC_FUNC_GETTIMEOFDAY_CLOBBER):
26577         Include <string.h>, <stdlib.h> unconditionally.
26578         * m4/lstat.m4 (gl_PREREQ_LSTAT): Don't check for stdlib.h, free.
26579         * m4/readdir.m4 (GL_FUNC_READDIR): Don't check for string.h.
26580         * m4/readutmp.m4 (gl_PREREQ_READUTMP): Don't check for standard C
26581         headers or for string.h.
26582         * m4/strtoumax.m4 (gl_PREREQ_STRTOUMAX): Don't check for stdlib.h
26583         or strtoul.
26584
26585         * m4/mkstemp.m4 (jm_PREREQ_TEMPNAME): Do not require standard C
26586         headers.
26587         * m4/strdup.m4 (gl_PREREQ_STRDUP): Likewise.
26588         * m4/userspec.m4 (gl_USERSPEC): Likewise.
26589         * m4/xalloc.m4 (gl_PREREQ_XMALLOC): Likewise.
26590         * m4/xstrtod.m4 (gl_XSTRTOD): Likewise.
26591         * m4/xstrtol.m4 (gl_PREREQ_XSTRTOL): Likewise.
26592         * m4/strftime.m4 (_jm_STRFTIME_PREREQS): Don't check for limits.h,
26593         memcpy, memset.
26594         (jm_FUNC_GNU_STRFTIME): Don't require standard C headers.
26595         * m4/strtod.m4 (gl_FUNC_STRTOD): Do not check for float.h.
26596         * m4/strtoimax.m4 (gl_PREREQ_STRTOIMAX): Do not check for stdlib.h,
26597         strtol.
26598         * m4/strtol.m4 (gl_FUNC_STRTOL): Do not check for limits.h.
26599         * m4/userspec.m4 (gl_USERSPEC): Do not check for string.h.
26600         * m4/xstrtol.m4 (gl_PREREQ_XSTRTOL): Do not check for string.h, strtol,
26601         strtoul.
26602
26603 2003-09-12  Paul Eggert  <eggert@twinsun.com>
26604
26605         * lib/argmatch.c, fatal.c, xgethostname.c, xmalloc.c: Include exit.h.
26606         * lib/obstack.c [!defined _LIBC]: Likewise.
26607         * lib/argmatch.c (EXIT_FAILURE): Remove; now done by exit.h
26608         * lib/exitfail.c, fatal.c, xgethostname.c, xmalloc.c: Likewise.
26609         * lib/exitfail.c: Don't include stdlib.h; no longer needed.
26610
26611         More changes to assume C89 or better.
26612
26613         * lib/error.c (error_tail): Assume vprintf.
26614
26615         * lib/argmatch.c (getenv): Remove decl.
26616         * lib/progreloc.c (get_full_program_name): Define via prototype.
26617         * lib/setenv.c (clearenv): Likewise.
26618         * lib/stpncpy.c: Do not include <string.h> or <sys/types.h>; not
26619         needed.
26620         * lib/strdup.c: Include <stdlib.h>, <string.h> unconditionally.
26621         (malloc, memcpy): Remove decls.
26622         * lib/strftime.c (HAVE_LIMITS_H, STDC_HEADERS) [defined _LIBC]: Remove.
26623         (HAVE_MEMCPY) [defined emacs && !defined HAVE_BCOPY]: Remove.
26624         Include <limits.h>, <stddef.h>, <stdlib.h>, <string.h> unconditionally.
26625         (memcpy): Remove macro.
26626         (MEMCPY) [!defined COMPILE_WIDE]: Define to memcpy unconditionally.
26627         (__P): Remove.  All uses removed.
26628         (PTR): Remove.  All uses changed to void *.
26629         (CHAR_BIT, NULL): Remove.
26630         (spaces, zeros, memset_space, memset_zero)
26631         [!defined memset && !defined HAVE_MEMSET && !defined _LIBC]:
26632         Remove.
26633         (LOCALE_PARAM, LOCALE_PARAM_DECL): Remove.
26634         (memcpy_lowcase, memcpy_uppcase, tm_diff, iso_week_days):
26635         Define with prototype.
26636         Remove now-unnecessary prototype decl.
26637         (extra_args_spec): Assume ANSI C.  All uses changed.
26638         (extra_args_spec_iso): Remove.
26639         (my_strftime, emacs_strftimeu): Define via prototype.
26640         * lib/strtod.c: Include <float.h>, <stdlib.h>, <string.h>
26641         unconditionally.
26642         (DBL_MAX, DBL_MIN, HUGE_VAL, NULL): Remove decls.
26643         * lib/strtoimax.c: Include <stdlib.h> unconditionally.
26644         (strtoul, strtol): Remove decls.
26645         * lib/strtol.c (STDC_HEADERS, HAVE_LIMITS_H, NULL, ULONG_MAX,
26646         LONG_MAX): Remove.
26647         Include <limits.h>, <stddef.h>, <stdlib.h>, <string.h> unconditionally.
26648         (LOCALE_PARAM_DECL): Remove.  All uses changed to LOCALE_PARAM_PROTO.
26649         (LOCALE_PARAM_PROTO): New macro.
26650         (INTERNAL, INTERNAL1, WEAKNAME): Assume ANSI C, not K&R.
26651         (INTERNAL (strtol), strtol): Define with a prototype.
26652         (PARAMS): Remove.  All uses removed.
26653         * lib/tempname.c: Include <string.h> unconditionally.
26654         * lib/userspec.c: Include <stdlib.h>, <string.h> unconditionally.
26655         * lib/xgethostname.c (main): Define with a prototype.
26656         * lib/xmalloc.c: Include "xalloc.h" first, to check interface.
26657         Include <stdlib.h> unconditionally.
26658         (calloc, malloc, realloc, free): Remove decls.
26659         * lib/xstrtod.c: Include "xstrtod.h" first, to check interface.
26660         Include <stdlib.h> unconditionally.  Sort include file names.
26661         (strtod): Remove.
26662         (xstrtod): Define with a prototype.
26663         * lib/xstrtol.c: Include <stdlib.h>, <string.h> unconditionally.
26664         (strtol, strtoul): Remove decls.
26665
26666 2003-09-11  Paul Eggert  <eggert@twinsun.com>
26667
26668         More patches to assume C89 or better.
26669         * m4/strndup.m4 (gl_PREREQ_STRNDUP): Remove STDC_HEADERS check.
26670         * m4/strnlen.m4 (gl_PREREQ_STRNLEN): Don't check for memory.h,
26671         string.h, memchr, STDC_HEADERS.
26672
26673 2003-09-11  Paul Eggert  <eggert@twinsun.com>
26674
26675         * lib/strndup.c: Don't include <stdio.h>, <sys/types.h>.
26676         Include <stdlib.h>, <string.h> unconditionally.
26677         Remove now-unnecessary cast to char *.
26678         * lib/strnlen.c: Include <string.h> unconditionally.
26679         * lib/yesno.c (yesno): Define with a prototype.
26680
26681 2003-09-11  Bruno Haible  <bruno@clisp.org>
26682
26683         * config/srclist.txt (setenv.c, unsetenv.c): Disable for the moment.
26684
26685 2003-09-10  Jim Meyering  <jim@meyering.net>
26686
26687         * lib/error.c: Correct indentation of cpp directives.
26688
26689 2003-09-10  Bruno Haible  <bruno@clisp.org>
26690
26691         * m4/strcspn.m4 (gl_PREREQ_STRCSPN): Remove <string.h> check.
26692         * m4/strpbrk.m4 (gl_PREREQ_STRPBRK): Remove <string.h> check.
26693         * m4/strstr.m4 (gl_PREREQ_STRSTR): Remove <string.h> check.
26694         * m4/unicodeio.m4 (gl_UNICODEIO): Remove <string.h> check.
26695         * m4/setenv.m4 (gl_PREREQ_SETENV, gl_PREREQ_UNSETENV): Remove
26696         <stdlib.h> and <string.h> checks.
26697         * m4/xreadlink.m4 (gl_XREADLINK): Remove <stdlib.h> check.
26698         * m4/yesno.m4 (gl_YESNO): Remove <stdlib.h> check.
26699
26700 2003-09-10  Bruno Haible  <bruno@clisp.org>
26701
26702         * lib/strcspn.c: Include <string.h> unconditionally.
26703         * lib/strpbrk.c: Include <string.h> unconditionally.
26704         * lib/strstr.c: Include <string.h> unconditionally.
26705         * lib/unicodeio.c: Include <string.h> unconditionally.
26706         * lib/setenv.c: Include <stdlib.h> and <string.h> unconditionally.
26707         * lib/unsetenv.c: Likewise.
26708         * lib/xreadlink.c: Include <stdlib.h> unconditionally.
26709         * lib/yesno.c: Include <stdlib.h> unconditionally.
26710         (rpmatch): Add prototype.
26711
26712 2003-09-09  Paul Eggert  <eggert@twinsun.com>
26713
26714         More patches to assume C89 or better.
26715         * m4/getcwd.m4 (AC_FUNC_GETCWD_NULL): Don't check for stdlib.h.
26716         * m4/getopt.m4 (gl_GETOPT): Don't check for string.h.
26717         * m4/getugroups.m4 (gl_GETUGROUPS): Do not check for standard C headers
26718         or for string.h.
26719         * m4/getusershell.m4 (gl_PREREQ_GETUSERSHELL): Do not check for
26720         stdlib.h.
26721         * m4/group-member.m4 (gl_PREREQ_GROUP_MEMBER): Do not require standard
26722         C headers.
26723         * m4/hard-locale.m4 (gl_HARD_LOCALE): Do not check for stdlib.h,
26724         string.h.
26725         * m4/hash.m4 (gl_HASH): Do not check for stdlib.h, malloc, free.
26726         * m4/human.m4 (gl_HUMAN): Do not check for stdlib.h, string.h, getenv.
26727         * m4/idcache.m4 (gl_IDCACHE): Do not check for standard C headers,
26728         or for string.h.
26729         * m4/long-options.m4 (gl_LONG_OPTIONS): Do not check for stdlib.h.
26730         * m4/makepath.m4 (gl_MAKEPATH): Do not check for string.h or standard
26731         C headers.
26732         * m4/md5.m4 (gl_MD5): Don't check for limits.h, standard C headers,
26733         memcpy.
26734         * m4/sha.m4 (gl_SHA): Don't check for standard Cheaders, memcpy.
26735         * m4/memchr.m4 (jm_PREREQ_MEMCHR): Don't check for limits.h, stdlib.h.
26736         * m4/memcmp.m4 (gl_PREREQ_MEMCMP): Don't check for string.h.
26737         * m4/memcoll.m4 (gl_MEMCOLL): Likewise.
26738         * m4/memrchr.c (gl_PREREQ_MEMRCHR): Don't check for limits.h.
26739         * m4/mkdir-slash.m4 (gl_PREREQ_MKDIR): Don't check for stdlib.h,
26740         string.h, free.
26741         * m4/mktime.m4 (gl_PREREQ_MKTIME): Don't check for standard C headers.
26742         * m4/modechange.m4 (gl_MODECHANGE): Don't check for standard C headers.
26743         * m4/mountlist.m4 (gl_PREREQ_MOUNTLIST_EXTRA): Don't check for standard
26744         C headers, or for string.h.
26745         * m4/obstack.m4 (gl_OBSTACK): Don't check for stddefe.h, string.h.
26746         (gl_PREREQ_OBSTACK): Don't check for stdlib.h.
26747         * m4/path-concat.m4 (gl_PATH_CONCAT): Don't check for standard C
26748         headers, memory.h, stdlib.h, string.h, strings.h.
26749         * m4/posixtm.m4 (gl_POSIXTM): Don't check for stdlib.h, string.h.
26750         * m4/posixver.m4 (gl_POSIXVER): Don't check for getenv.
26751         * m4/putenv.m4 (gl_PREREQ_PUTENV): Don't check for string.h, memcpy,
26752         strchr.
26753         * m4/readtokens.m4 (gl_READTOKENS): Don't check for standard C
26754         headers, memory.h, string.h.
26755         * m4/regex.m4 (jm_PREREQ_REGEX): Do not check for limits.h, string.h.
26756         * m4/rename.m4 (gl_PREREQ_RENAME): Do not check for stdlib.h, string.h,
26757         free.
26758         * m4/rpmatch.m4 (gl_PREREQ_RPMATCH): Don't check for standard C
26759         headers.
26760         * m4/same.m4 (gl_SAME): Don't check for stdlib.h, string.h, free.
26761         * m4/save-cwd.m4 (gl_SAVE_CWD): Don't check for standard C headers.
26762         * m4/savedir.m4 (gl_SAVEDIR): Don't check for standard C headers.
26763         * m4/strchrnul.m4 (gl_PREREQ_STRCHRNUL): Don't check for string.h.
26764         * m4/xgetcwd.m4 (gl_XGETCWD): Don't check for stdlib.h.
26765
26766 2003-09-09  Paul Eggert  <eggert@twinsun.com>
26767
26768         More K&R removal.
26769
26770         * lib/acosl.c (main): Use a prototype.
26771         * lib/asinl.c, cosl.c, expl.c, frexpl.c, ldexpl.c, sinl.c,
26772         tanl.c: Likewise.
26773
26774         * lib/getloadavg.c (getloadavg, main): Define via prototypes.
26775
26776         * lib/getopt.h (struct option.name): Assume C89, and use 'const'.
26777         (getopt, etopt_long, getopt_long_only, _getopt_internal)
26778         [defined __GNU_LIBRARY__]: Assume C89, so we can always declare
26779         with a prototype.
26780         * lib/getopt.c (const): Remove macro.
26781         Include <string.h> unconditionally.
26782         (my_index): Remove; all uses changed to strchr.
26783         (strlen): Remove decl.
26784         (exchange): Remove forward decl; no longer needed.
26785         (exchange, _getopt_initialize, _getopt_internal, getopt, main):
26786         Define with prototype.
26787         * lib/getopt1.c (const): Remove macro.
26788         (getopt_long, getopt_long_only, main): Define with prototype.
26789
26790         * lib/getugroups.c: Include <string.h> unconditionally.
26791
26792         * lib/getusershell.c: Include <stdlib.h> unconditionally.
26793         (getusershell, setusershell, endusershell, readname, main):
26794         Define with prototypes.
26795
26796         * lib/group-member.c: Include group-member.h first.
26797         Include <stdlib.h> unconditionally.
26798
26799         * lib/hard-locale.c: Include hard-locale.h first.
26800         Include <stdlib.h>, <string.h> unconditionally.
26801
26802         * lib/hash.c (free, malloc): Remove decls.
26803         Include <stdlib.h> unconditionally.
26804
26805         * lib/human.c: Include <stdlib.h>, <string.h> unconditionally.
26806         (getenv): Do not declare.
26807
26808         * lib/idcache.c: Include <string.h> unconditionally.
26809
26810         * lib/long-options.c: Include long-options.h first, to test interface.
26811         Include <stdlib.h> unconditionally.
26812
26813         * lib/makepath.c: Include makepath.h first, to test interface.
26814         Include <stdlib.h> and <string.h> unconditionally.
26815
26816         * lib/linebuffer.c: Include <stdlib.h>.
26817         (free): Remove decl.
26818
26819         * lib/malloc.c: Include <stdlib.h>, for malloc; don't bother with
26820         stddef.h. rpl_malloc returns void *, not char *.
26821         * lib/realloc.c (rpl_realloc): Likewise.  Also, define with a
26822         prototype.
26823
26824         * lib/md5.h: Include <limits.h> unconditionally.
26825         (UINT_MAX_32_BITS): Don't worry about non-__STDC__ case.
26826         (__P): Remove; all uses removed.
26827         * lib/md5.c: Include "md5.h" first.
26828         (md5_init_ctx, md5_read_ctx, md5_finish_ctx, md5_stream,
26829         md5_buffer, md5_process_bytes, md5_process_block):
26830         Define with prototypes.
26831         * lib/sha.h (__P): Remove all uses.  (It wasn't defined??)
26832         * lib/sha.c: Include "sha.h" first.
26833         Include <stdlib.h>, <string.h> unconditionally.
26834
26835         * lib/memchr.c (__ptr_t): Remove; all uses changed to void *.
26836         * lib/memcmp.c (__ptr_t): Likewise.
26837         * lib/memrchr.c (__ptr_t): Likewise.
26838         * lib/memchr.c, memcmp.c, memcoll.c, memrchr.c:
26839         Include <string.h> unconditionally.
26840         * lib/memchr.c, memrchr.c: Include <limits.h> unconditionally.
26841         * lib/memchr.c: Include <stdlib.h> unconditionally.
26842         * lib/memchr.c (LONG_MAX): Remove.
26843         * lib/memrchr.c (LONG_MAX): Likewise.
26844         * lib/memchr.c (__memchr): Define via a prototype.
26845         * lib/memrchr.c (__memrchr): Likewise.
26846         * lib/memcmp.c (__P): Remove, and remove all uses.
26847         (memcmp_bytes, memcmp_common_alignment, memcmp_not_common_alignment):
26848         Remove forward decls; no longer needed.
26849         * lib/memcpy.c, memmove.c, memset.c: Include <stddef.h>.
26850         Use types required by C89 in prototype.
26851
26852         * lib/mkdir.c: Include <stdlib.h>, <string.h> unconditionally.
26853         * lib/savedir.c: Likewise.
26854         * lib/mkdir.c (free): Remove decl.
26855         * lib/rmdir.c (rmdir): Define with a prototype.
26856         * lib/savedir.c: Include savedir.h first, to test interface.
26857
26858         * lib/mktime.c (STDC_HEADERS): Remove.
26859         Include <stdlib.h>, <string.h> unconditionally.
26860
26861         * lib/modechange.c: Include <stdlib.h> unconditionally.
26862         (malloc): Remove decl.
26863
26864         * lib/mountlist.c: Include <stdlib.h>, <string.h> unconditionally.
26865         (free): Remove decl.
26866
26867         * lib/obstack.h (PTR_INT_TYPE) [!defined __PTRDIFF_TYPE__]:
26868         Define to ptrdiff_t, without bothering to check HAVE_STDDEF_H.
26869         (This type really should be intptr_t, but that's a C99ism.)
26870         (_obstack_memcpy): Remove: all uses changed to memcpy.
26871         Include <string.h> unconditionally.
26872         (struct obstack): Assume __STDC__ for types of members
26873         chunkfun, freefun, extra_arg.
26874         (_obstack_newchunk, _obstack_free, _obstack_begin, _obstack_begin_1,
26875         _obstack_memory_used, obstack_alloc_failed_handler, obstack_init,
26876         obstack_begin, obstack_specify_allocation,
26877         obstack_specify_allocation_with_arg, obstack_chunkfun,
26878         obstack_freefun, obstack_free) [! (defined __STDC__ && __STDC__)]:
26879         Remove unprototyped decls and the macros that use them.
26880         * lib/obstack.c (POINTER): Remove.  All uses changed to void *.
26881         (obstack_alloc_failed_handler, CALL_CHUNKFUN, CALL_FREEFUN,
26882         _obstack_begin, _obstack_begin_1, _obstack_allocated_p)
26883         (defined __STDC__ && __STDC__)]:
26884         Remove nonprototyped code.
26885         Include <stdlib.h> unconditionally.
26886         (_obstack_begin, _obstack_begin_1, _obstack_newchunk,
26887         _obstack_allocated_p, _obstack_free, obstack_free,
26888         _obstack_memory_used, print_and_abort):
26889         Define using prototypes.
26890         (obstack_1grow, obstack_1grow_fast, obstack_alloc, obstack_base,
26891         obstack_blank, obstack_blank_fast, obstack_copy, obstack_copy0,
26892         obstack_finish, obstack_grow, obstack_grow0, obstack_make_room,
26893         obstack_next_free, obstack_object_size, obstack_room) [0]:
26894         Remove unused, unprototyped code.
26895
26896         * lib/path-concat.c: Include <stdlib.h>, <string.h> unconditionally.
26897
26898         * lib/physmem.c (physmem_total, physmem_available, main): Define
26899         with prototypes.
26900
26901         * lib/posixtm.c: Include <stdlib.h>, <string.h> unconditionally.
26902         (main): Define with a prototype.
26903
26904         * lib/posixver.c (getenv): Remove decl.
26905
26906         * lib/putenv.c (malloc): Returns void *, not char *.
26907         Include <string.h> unconditionally.
26908         (strchr, memcpy, NULL): Do not define.
26909
26910         * lib/readtokens.c: Include readtokens.h first, to test interface.
26911         Include <stdlib.h>, <string.h> unconditionally.
26912         (init_tokenbuffer): Define with a prototype.
26913
26914         * lib/regex.c (PARAMS): Remove.  All uses removed.
26915         All uses of _RE_ARGS removed, too.
26916         Include <stddef.h>, <stdlib.h>, <string.h>, <limits.h>
26917         unconditionally.
26918         (bzero): Assume memset exists.
26919         (memcmp, memcpy, NULL): Remove.
26920         (SIGN_EXTEND_CHAR): Remove; all uses replaced by casts to signed
26921         char, or assignments to local vars of type signed char.
26922         (init_syntax_once, PREFIX(extract_number_and_incr),
26923         PREFIX(print_partial_compiled_pattern),
26924         PREFIX(print_compiled_pattern), PREFIX(print_double_string),
26925         convert_mbs_to_wcs, print_fastmap, re_set_syntax,
26926         PREFIX(regex_grow_registers), PREFIX(regex_compile),
26927         PREFIX(store_op1), PREFIX(store_op2), PREFIX(insert_op1),
26928         PREFIX(insert_op2), PREFIX(at_begline_loc_p),
26929         PREFIX(at_endline_loc_p), group_in_compile_stack, insert_space,
26930         wcs_compile_range, byte_compile_range, truncate_wchar,
26931         PREFIX(re_compile_fastmap), re_compile_fastmap, re_set_registers,
26932         re_search, re_search_2, PREFIX(re_search_2), re_match, re_match_2,
26933         count_mbs_length, wcs_re_match_2_internal,
26934         byte_re_match_2_internal, PREFIX(group_match_null_string_p),
26935         PREFIX(alt_match_null_string_p),
26936         PREFIX(common_op_match_null_string_p), PREFIX(bcmp_translate),
26937         re_compile_pattern, re_comp, re_exec, regcomp, regexec, regerror,
26938         regfree, PREFIX(extract_number)): Define with prototype.  Remove
26939         now-unnecessary declaration, if any.
26940         (byte_compile_range, PREFIX(regex_compile), re_comp, re_exec,
26941         regcomp, regexec):
26942         Remove now-unnecessary casts among pointer types.
26943         * lib/regex.h (_RE_ARGS): Remove.  All uses removed.
26944
26945         * lib/rename.c: Include <stdlib.h>, <string.h> unconditionally.
26946         (free): Remove decl.
26947
26948         * lib/rpmatch.c: Include <stdlib.h> unconditionally.
26949
26950         * lib/same.c: Include <stdlib.h>, <string.h> unconditionally.
26951         (free): Remove decl.
26952
26953         * lib/save-cwd.c: Include <stdlib.h> unconditionally.
26954         * lib/xgetcwd.c: Likewise.
26955
26956         * lib/stat.c: Include <stdlib.h>, <string.h> unconditionally.
26957         (free): Remove decl.
26958
26959         * lib/strchrnul.c (strchrnul): Define with a prototype.
26960         Fix bug: c_in was not converted to char before searching.
26961
26962         The following changes are not K&R related:
26963
26964         * lib/group-member.h: Include <sys/types.h>, so that this file is
26965         self-contained.
26966         * lib/makepath.h: Likewise.
26967
26968         * lib/getusershell.c (readname, default_index, line_size, readname):
26969         Use size_t, not int, for sizes.
26970         (readname): If the size overflows, report an error instead of
26971         looping forever.
26972
26973 2003-09-09  Paul Eggert  <eggert@twinsun.com>
26974
26975         * config/srclist.txt: Do not get getopt.h, getopt1.c, or regex.h from
26976         libc.
26977
26978 2003-09-09  Paul Eggert  <eggert@twinsun.com>
26979
26980         * README: New section: portability guidelines.
26981
26982 2003-09-09  Derek Robert Price  <derek@ximbiot.com>
26983
26984         * m4/getndelim2.m4 (gl_PREREQ_GETNDELIM2): Assume stdlib.h per the
26985         C89 spec.
26986
26987 2003-09-09  Derek Robert Price  <derek@ximbiot.com>
26988
26989         * lib/getndelim2.c: Assume stdlib.h per the C89 spec.
26990
26991 2003-09-08  Paul Eggert  <eggert@twinsun.com>
26992
26993         Assume C89 or better; remove K&R cruft.
26994         A few of these changes were first proposed by Derek Robert Price
26995         in <http://mail.gnu.org/archive/html/bug-gnulib/2003-07/msg00105.html>.
26996
26997         * lib/addext.c: Include <string.h> unconditionally.
26998         * lib/backupfile.c: Include <string.h>, <stdlib.h> unconditionally.
26999         Don't declare getenv or malloc.
27000
27001         * lib/alloca.c: Include <string.h>, <stdlib.h> unconditionally.
27002         (POINTER_TYPE, pointer): Remove; all uses changed to void *.
27003         (NULL): Remove.
27004         (find_stack_direction, alloca): Use prototypes.
27005
27006         * lib/atexit.c (atexit): Define using a prototype.
27007
27008         * lib/basename.c, dirname.c, stripslash.c:
27009         Include <string.h> unconditionally.
27010
27011         * lib/bcopy.c: Include <stddef.h>.
27012         (bcopy): Define with prototype, using 'const' and 'void' and 'size_t'.
27013
27014         * lib/canon-host.c: Include <stdlib.h>, <string.h> unconditionally.
27015
27016         * lib/error.h (error, error_at_line, error_print_progname)
27017         [! (defined (__STDC__) && __STDC__)]: Remove decls.
27018         * lib/error.c: Include error.h first, to check interface.
27019         Include <stdarg.h>, <stdlib.h>, <string.h> unconditionally.
27020         (VA_START): Remove; all uses changeed to va_start.
27021         (exit, strerror): Remove decls.
27022         (error_print_progname): Prototype uncondionally.
27023         Don't include <errno.h>; no longer needed.
27024         (private_strerror): Remove.
27025         (error_tail): Always define.
27026         (error, error_at_line): Assume C89 or better; always use prototypes.
27027         * lib/fatal.c: Include "fatal.h" first, to test interface.
27028         Include <stdarg.h>, <stdlib.h>, <string.h> unconditionally.
27029         (VA_START): Remove; all uses changed to va_start.
27030         [! (HAVE_VPRINTF || HAVE_DOPRNT || _LIBC)]: Remove support for
27031         this case.
27032         (exit): Remove decl.
27033         (fatal): Prototype unconditionally.  Assume va_start works.
27034         Abort at end, to pacify gcc.
27035
27036         * lib/euidaccess.c (main): Define with a prototype.
27037
27038         * lib/exclude.c: Include <stdlib.h>, <string.h> unconditionally.
27039
27040         * lib/exitfail.c: Include <stdlib.h> unconditionally.
27041
27042         * lib/fnmatch_.h (__P): Remove.  All uses changed to assume
27043         prototypes.
27044         * lib/fnmatch.c: Include fnmatch.h first, to test interface.
27045         Include <string.h>, <stddef.h>, <stdlib.h> unconditionally.
27046         (getenv): Remove decl.
27047         (fnmatch): Define using a prototype.
27048         * lib/fnmatch_loop.c (FCT): Remove forward decl; no longer needed.
27049         (FCT): Define using a prototype.
27050
27051         * lib/getdate.y: Include <stdlib.h>, <string.h> unconditionally.
27052
27053         * lib/gethostname.c: Include <stddef.h>.
27054         (gethostname): Define with prototype.  Length is size_t, not int.
27055
27056 2003-09-08  Paul Eggert  <eggert@twinsun.com>
27057
27058         Assume C89 or better; remove K&R cruft.
27059         * m4/alloca.m4 (gl_PREREQ_ALLOCA): Don't check for stdlib.h, string.h.
27060         * m4/backupfile.m4 (gl_BACKUPFILE): Don't check for stdlib.h,
27061         string.h, getenv, malloc.
27062         * m4/dirname.m4 (gl_DIRNAME): Don't check for string.h or C standard
27063         headers.
27064         * m4/canon-host.m4 (gl_CANON_HOST): Don't check for string.h, stdlib.h.
27065         * m4/error.m4 (jm_PREREQ_ERROR): Do not require STDC headers, and
27066         do not check for strerror.
27067         * m4/exclude.m4: Do not check for stdlib.h, string.h, strings.h.
27068         * m4/exitfail.m4 (gl_EXITFAIL): Do not check for stdlib.h.
27069         * m4/fatal.m4 (gl_FATAL): Do not require STDC headers, and
27070         do not check for doprnt or vprintf.
27071         * m4/fnmatch.m4 (gl_PREREQ_FNMATCH_EXTRA): Remove.  All uses removed.
27072         * m4/getdate.m4 (gl_GETDATE): Don't check for stdlib.h or string.h.
27073
27074 2003-09-08  Paul Eggert  <eggert@twinsun.com>
27075
27076         * lib/getversion.c: Remove; was migrated to backupfile.c in 1997.
27077         getversion.c should have been removed then, but was accidentally
27078         preserved.
27079
27080         * lib/utime.c [!HAVE_UTIMES_NULL]: Include <sys/stat.h>, <fcntl.h>.
27081         (utime_null): Fix typo: 'st' was sometimes called 'sb'.
27082
27083 2003-09-08  Karl Berry  <karl@gnu.org>
27084
27085         * config/config.sub, config.guess, srclistvars.sh: update from savannah
27086                 config, forget about prep.
27087
27088         * config/depcomp, missing: update from automake.
27089
27090 2003-09-07  Paul Eggert  <eggert@twinsun.com>
27091
27092         * modules/time_r: Depend on 'restrict'.  Fix from Simon Josefsson in
27093         <http://mail.gnu.org/archive/html/bug-gnulib/2003-09/msg00028.html>.
27094
27095 2003-09-07  Paul Eggert  <eggert@twinsun.com>
27096
27097         * lib/time_r.c (gmtime_r, localtime_r): Fix silly typo: missing arg to
27098         copy_tm_result.  Bug reported by Simon Josefsson in
27099         <http://mail.gnu.org/archive/html/bug-gnulib/2003-09/msg00028.html>.
27100
27101 2003-09-06  Paul Eggert  <eggert@twinsun.com>
27102
27103         * m4/time_r.m4: New file.
27104         * m4/mktime.m4 (gl_PREREQ_MKTIME): Remove check for limits.h.
27105         * m4/timegm.m4 (gl_FUNC_TIMEGM): Assume that timegm is buggy if mktime
27106         is. Check for timegm declaration.
27107         (gl_PREREQ_TIMEGM): Require gl_FUNC_MKTIME.
27108         Do not check for gmtime_r.
27109         Replace mktime if __mktime_internal does not exist and if mktime
27110         hasn't been replaced already.
27111
27112 2003-09-06  Paul Eggert  <eggert@twinsun.com>
27113
27114         * lib/time_r.c, lib/time_r.h: New files.
27115
27116         * lib/mktime.c (my_mktime_localtime_r): Remove; all uses changed to
27117         __localtime_r.
27118         (__localtime_r) [!defined _LIBC]: New macro.  Include <time_r.h>.
27119         (__mktime_internal) [!defined _LIBC]: Now extern, not static.
27120
27121         * lib/strftime.c (my_strftime_gmtime_r): Remove; all uses changed to
27122         __gmtime_r.
27123         (my_strftime_localtime_r): Remove; all uses changed to __localtime_r.
27124         (__gtime_r, __localtime_r) [!HAVE_TM_GMTOFF]: New macros.
27125         Include <time_r.h>.
27126
27127         * lib/timegm.c: Switch to glibc implementation, with the following
27128         changes:
27129         [defined HAVE_CONFIG_H]: Include <config.h>.
27130         [!defined _LIBC]: Include "timegm.h" rather than <time.h>.
27131         (__mktime_internal) [!defined _LIBC]: New decl.
27132         (__gmtime_r) [!defined _LIBC]: New macro and function.
27133         (timegm): Use a prototype, since gnulib assumes C89.
27134         Do not bother declaring tmp to be const, as it's not really usefu.
27135         * lib/timegm.h: Hoist "#include <time.h>" out of #ifdef.
27136         (timegm): Declare only if HAVE_DECL_TIMEGM.
27137
27138 2003-09-06  Paul Eggert  <eggert@twinsun.com>
27139
27140         * MODULES.html.sh (func_all_modules): Add time_r.
27141         * modules/time_r: New file.
27142         * modules/mktime, modules/strftime, modules/timegm: Depend on time_r.
27143         * modules/timegm: Depend on mktime.  Change maintainer to "all, glibc".
27144
27145 2003-09-03  Paul Eggert  <eggert@twinsun.com>
27146
27147         * lib/human.c (human_readable): Fix bug that rounded 10501 to 10k.
27148         Bug reported by Lute Kamstra in
27149         <http://mail.gnu.org/archive/html/bug-gnulib/2003-09/msg00003.html>.
27150
27151         * lib/getdate.y (relative_time_table): Use tDAY_UNIT for "tomorrow",
27152         "yesterday", "today", and "now" rather than tMINUTE_UNIT.  Of
27153         course with correspondingly smaller numbers for tomorrow and
27154         yesterday.  From Tadayoshi Funaba.  Originally installed into
27155         sh-utils on 1999-08-07, but the patch got lost (I guess during the
27156         coreutils merge?).
27157
27158 2003-08-31  Simon Josefsson  <jas@extundo.com>
27159
27160         * modules/timegm: New file.
27161         * MODULES.html.sh (func_all_modules): Add timegm.
27162
27163 2003-08-31  Simon Josefsson  <jas@extundo.com>
27164
27165         * m4/timegm.m4: New file.
27166
27167 2003-08-31  Simon Josefsson  <jas@extundo.com>
27168
27169         * lib/timegm.h: New file.
27170         * lib/timegm.c: New file.  Based on
27171         wget-1.8.2/src/http.c:mktime_from_utc.
27172
27173 2003-08-31  Karl Berry  <karl@gnu.org>
27174
27175         * lib/argp.h: update from libc.
27176
27177 2003-08-28  Bruno Haible  <bruno@clisp.org>
27178
27179         * m4/fnmatch.m4 (_AC_LIBOBJ_FNMATCH): Remove AC_DEFINE of fnmatch here.
27180         This avoids havoc on compilers for which '#define fnmatch rpl_fnmatch'
27181         followed by '#define fnmatch fnmatch_posix' gives an error.
27182
27183 2003-08-28  Bruno Haible  <bruno@clisp.org>
27184
27185         * lib/binary-io.h: Undefine O_BINARY before defining it. This avoids a
27186         warning on QNX, which defines O_BINARY to 000000.
27187
27188 2003-08-27  Jim Meyering  <jim@meyering.net>
27189
27190         * m4/mkstemp.m4: Require that the system mkstemp be able to create
27191         70 temporary files, not just 30.  Tru64 V4.0F's mkstemp function
27192         would fail after 32.  Reported by Danny Levinson.  Details here:
27193         http://mail.gnu.org/archive/html/bug-coreutils/2003-08/msg00124.html
27194
27195 2003-08-24  Bruno Haible  <bruno@clisp.org>
27196
27197         * lib/binary-io.h: Include <stdio.h>, to avoid a compilation error when
27198         MSVC7 <stdio.h> is included later.
27199
27200 2003-08-22  Simon Josefsson  <jas@extundo.com>
27201
27202         * modules/strndup (Makefile.am): Add strndup.h to lib_SOURCES.
27203
27204 2003-08-20  Karl Berry  <karl@gnu.org>
27205
27206         * m4/lib-ld.m4: serial 1003 from gettext, no changes besides serial.
27207
27208 2003-08-20  Bruno Haible  <bruno@clisp.org>
27209
27210         * modules/progname: New file.
27211         * MODULES.html.sh (func_all_modules): Add progname.
27212
27213 2003-08-20  Bruno Haible  <bruno@clisp.org>
27214
27215         * lib/progname.h: New file, from GNU gettext.
27216         * lib/progname.c: New file, from GNU gettext.
27217         * lib/progreloc.c: New file, from GNU gettext.
27218
27219 2003-08-19  Jim Meyering  <jim@meyering.net>
27220
27221         * m4/lib-ld.m4: Revert yesterday's change, per Bruno's request here:
27222         http://mail.gnu.org/archive/html/bug-gnulib/2003-08/msg00155.html
27223
27224 2003-08-19  Bruno Haible  <bruno@clisp.org>
27225
27226         * m4/xalloc.m4 (gl_PREREQ_XSTRDUP): Don't check for <string.h> any
27227         more.
27228
27229 2003-08-19  Bruno Haible  <bruno@clisp.org>
27230
27231         * lib/xstrdup.c: Assume <string.h> exists.
27232
27233 2003-08-18  Paul Eggert  <eggert@twinsun.com>
27234
27235         * modules/stdbool: Add BUILT_SOURCES.  Prefer $@ to target name
27236         in makefile rules.
27237
27238 2003-08-18  Jim Meyering  <jim@meyering.net>
27239
27240         * m4/getloadavg.m4: Use [\t ], not [ \t] (where \t is a literal TAB).
27241         * m4/lib-ld.m4: Likewise.
27242
27243 2003-08-18  Jim Meyering  <jim@meyering.net>
27244
27245         * lib/setenv.h: Indent nested cpp directive.
27246         * lib/vasnprintf.c: Remove trailing blanks.
27247
27248 2003-08-17  Simon Josefsson  <jas@extundo.com>
27249
27250         * modules/xstrndup: New file.
27251         * MODULES.html.sh (func_all_modules): Add xstrndup.
27252
27253 2003-08-17  Simon Josefsson  <jas@extundo.com>
27254
27255         * modules/argp: Fix autoconf macro name. Add more dependencies.
27256
27257 2003-08-17  Simon Josefsson  <jas@extundo.com>
27258
27259         * m4/xstrndup.m4: New file.
27260
27261 2003-08-17  Simon Josefsson  <jas@extundo.com>
27262
27263         * m4/argp.m4: New file.
27264
27265 2003-08-17  Simon Josefsson  <jas@extundo.com>
27266             Bruno Haible  <bruno@clisp.org>
27267
27268         * lib/xstrndup.h: New file.
27269         * lib/xstrndup.c: New file.
27270
27271 2003-08-17  Bruno Haible  <bruno@clisp.org>
27272
27273         * modules/strndup (Files, Include): Add lib/strndup.h.
27274
27275 2003-08-17  Bruno Haible  <bruno@clisp.org>
27276
27277         * modules/euidaccess (Files): Add lib/euidaccess.h.
27278
27279 2003-08-17  Bruno Haible  <bruno@clisp.org>
27280
27281         * lib/strndup.h: New file.
27282
27283 2003-08-17  Bruno Haible  <bruno@clisp.org>
27284
27285         * gnulib-tool (func_create_testdir): Handle gl_USE_SYSTEM_EXTENSIONS
27286         like AC_GNU_SOURCE.
27287         * modules/extensions (configure.ac): Comment out the invocation of
27288         gl_USE_SYSTEM_EXTENSIONS.
27289
27290 2003-08-16  Paul Eggert  <eggert@twinsun.com>
27291
27292         Merges from coreutils, etc.
27293         * m4/rpmatch.m4 (gl_PREREQ_RPMATCH): Insert ':' to prevent a syntax
27294         error in gl_FUNC_MATCH.  This fixes a bug I introduced on 2003-05-28.
27295         * m4/readlink.m4 (gl_PREREQ_READLINK): Renamed from gl_PREREQ_READLINE,
27296         fixing a typo.
27297         * m4/host-os.m4 (UTILS_HOST_OS): Add GNU/NetBSD, GNU/FreeBSD.
27298         * m4/hash.m4 (gl_HASH): Use AM_STDBOOL_H, not AC_HEADER_STDBOOL.
27299
27300 2003-08-16  Paul Eggert  <eggert@twinsun.com>
27301
27302         Document merge from coreutils.
27303         * modules/alloca: Append $(ALLOCA_H) to BUILT_SOURCES.
27304         * modules/fnmatch: Append $(FNMATCH_H) to BUILT_SOURCES.
27305         * modules/utime: Add m4/utimes-null.m4.
27306
27307 2003-08-16  Paul Eggert  <eggert@twinsun.com>
27308
27309         * lib/regex.h, strdup.c, strtoll.c, strtoul.c: Do not normalize white
27310         space, undoing this 2003-08-12 change:
27311         <http://mail.gnu.org/archive/html/bug-gnulib/2003-08/msg00080.html>
27312
27313 2003-08-16  Paul Eggert  <eggert@twinsun.com>
27314
27315         * config/srclist.txt: Get regex.h, strdup.c, strtoll.c,
27316         strtoul.c from libc, undoing this 2003-08-12 change:
27317         <http://mail.gnu.org/archive/html/bug-gnulib/2003-08/msg00080.html>
27318
27319 2003-08-16  Jim Meyering  <jim@meyering.net>
27320
27321         Merges from coreutils.
27322         * m4/readdir.m4 (GL_FUNC_READDIR): Change name to have GL_ (not jm_)
27323         prefix.  Adjust cache variables similarly.  Create 500 rather than
27324         just 300 files, to exercise bug on Darwin6.5, too.
27325         * m4/perl.m4 (jm_PERL): Use $am_missing_run, not undefined
27326         $missing_dir.
27327         * m4/jm-winsz1.m4: Require AC_SYS_POSIX_TERMIOS, not
27328         AM_SYS_POSIX_TERMIOS.
27329         Reported by mkc@mathdogs.com.
27330         Also change use of $am_cv_sys_posix_termios
27331         to $ac_cv_sys_posix_termios.  Reported by Andreas Schwab.
27332         * m4/getgroups.m4 (jm_FUNC_GETGROUPS): Rewrite to use AC_FUNC_GETGROUPS
27333         and (if needed) to call AC_LIBOBJ and to set GETGROUPS_LIB.
27334         * m4/fsusage.m4 [__GLIBC__]: GNU libc's statvfs stats each mount point
27335         in /proc/mounts until it finds one with matching device number.  This
27336         is unnecessary when the FILE argument *is* a mount point.  No stat call
27337         is necessary in that case.  So, disable the statvfs-testing code on
27338         systems with GNU libc.  Reported by Andrei Gaponenko via Tim Waugh
27339         as RedHat bug# 84846.
27340         * m4/c-stack.m4 (AC_SYS_XSI_STACK_OVERFLOW_HEURISTIC): Limit stack size
27341         to 1MB, so as not to render systems with no stack size limit (e.g.,
27342         linux-2.2.x) unusable.  Suggestion and code from Bruno Haible.
27343         Include <unistd.h>.  On some systems,
27344         it is required for the definition of _SC_PAGESIZE.
27345
27346 2003-08-16  Jim Meyering  <jim@meyering.net>
27347
27348         Merge from coreutils.
27349         * lib/xstrtoimax.c: #else #if -> #elif.
27350         * lib/xstrtoumax.c: Likewise.
27351
27352 2003-08-16  Jim Meyering  <jim@meyering.net>
27353
27354         * m4/utimes.m4 (gl_FUNC_UTIMES): New file.
27355         * m4/utimes.m4: Removed.
27356         * m4/utimes-null.m4: Renamed from utimes.m4.
27357
27358         * m4/c-stack.m4 (AC_SYS_XSI_STACK_OVERFLOW_HEURISTIC): Limit stack size
27359         to 1MB, so as not to render systems with no stack size limit (e.g.,
27360         linux-2.2.x) unusable.  Suggestion and code from Bruno Haible.
27361         Include <unistd.h>.  On some systems,
27362         it is required for the definition of _SC_PAGESIZE.
27363
27364 2003-08-16  Jim Meyering  <jim@meyering.net>
27365         and Paul Eggert  <eggert@cs.ucla.edu>
27366
27367         Merges from coreutils, etc.
27368
27369         * m4/jm-macros.m4 (AC_LANG_SOURCE(C)): New macro, undefine, then define
27370         using the latest version from cvs.  This avoids problems with #line
27371         directives using a vendor (Sun) compiler.
27372         (jm_MACROS): Bump prerequisite from 2.52g to 2.57.
27373         Don't set GETGROUPS_LIB here; now it's
27374         done via getgroups.m4's wrapper function.
27375         AC_SUBST OPTIONAL_BIN_PROGS, OPTIONAL_BIN_ZCRIPTS, and MAN here,
27376         rather than just in sh-util/configure.in, so that the
27377         now-shared-by-fileutils-and-textutils lib/Makefile.am are all the
27378         same.
27379         Use AC_CONFIG_LIBOBJ_DIR(lib) to tell the new
27380         AC_FUNC_GETLOADAVG where to find getloadavg.c.
27381         Require AC_FUNC_FTW, gt_INTTYPES_PRI, gl_CLOCK_TIME,
27382         UTILS_SYS_OPEN_MAX, GL_FUNC_GETCWD_PATH_MAX, GL_FUNC_READDIR,
27383         gl_FSUSAGE, gl_MOUNTLIST, AC_FUNC_CANONICALIZE_FILE_NAME.
27384         Remove code that is now done by the newly-required macros.
27385         Append $(EXEEXT) to DF_PROG.
27386         AC_LIBOBJ fchdir-stub if fchdir doesn't exist; similarly for fchown.
27387         Do not invoke or require the following here,
27388         since prereq.m4 or some gnulib .m4 now does this for us:
27389         gl_REGEX, UTILS_FUNC_MKDIR_TRAILING_SLASH, jm_BISON, gl_FUNC_MKTIME,
27390         jm_FUNC_LSTAT, jm_FUNC_STAT, jm_FUNC_REALLOC, jm_FUNC_MALLOC,
27391         jm_FUNC_NANOSLEEP, jm_FUNC_READDIR, jm_FUNC_MEMCMP,
27392         jm_FUNC_GLIBC_UNLOCKED_IO, AC_FUNC_FNMATCH_GNU, jm_FUNC_PUTENV,
27393         jm_AC_PREREQ_XSTRTOUMAX, jm_AC_PREREQ_XSTRTOIMAX,
27394         AC_FUNC_ERROR_AT_LINE, jm_FUNC_GNU_STRFTIME, AC_FUNC_VPRINTF,
27395         vb_FUNC_RENAME, UTILS_FUNC_MKSTEP, jm_FUNC_UTIME, AM_FUNC_GETLINE,
27396         AC_FUNC_OBSTACK.
27397         Do not replace the following functions, as this is now the job
27398         of some gnulib .m4: strcasecmp, strncasecmp, dup2, gethostname,
27399         getusershell, sig2str, strcspn, stpcpy, strstr, strtol, strtoul
27400         strpbrk, euidaccess, memcmp, rmdir, rpmatch, strndup, strverscmp,
27401         atexit getpass, strdup, getpagesize.
27402         Replace 'raise'.
27403         Do not check for the following functions, as this is now the job
27404         of some gnulib .m4: bcopy, canonicalize_file_name, fchdir, ftime,
27405         getcwd, getmntinfo, resolvepath.  But check for sysctl, setreuid,
27406         setregid.
27407         (jm_CHECK_ALL_HEADERS): Do not check for fenv.h.
27408         Check for sys/sysctl.h.
27409         (jm_CHECK_ALL_TYPES): Do not require AC_STRUCT_TM, AC_STRUCT_TIMEZONE,
27410         jm_CHECK_TYPE_STRUCT_TIMESPEC.  Invoke gt_TYPE_SSIZE_T instead
27411         of checking for ssize_t ourselves.
27412
27413         * m4/prereq.m4 (jm_PREREQ): Don't invoke macros; AC_REQUIRE them.
27414         Require every macro that gnulib/modules/* suggests for us.
27415         (jm_PREREQ_ADDEXT): New macro.
27416         (jm_PREREQ_STAT): Check for 'struct statfs' on Ultrix 4.4.
27417         Require jm_AC_TYPE_LONG_LONG instead of invoking it.
27418
27419         * m4/physmem.m4 (gl_SYS__SYSTEM_CONFIGURATION): New macro.
27420         (gl_PHYSMEM): Use it.
27421         Also check for `table' function.
27422         Check for new headers and functions.
27423         Add check for sys/sysmp.h.
27424         With suggestions from Kaveh Ghazi.
27425         Ignore headers that are present but cannot be compiled.  This
27426         avoids spurious warnings on Solaris 9 sparc with Forte Developer 7
27427         C 5.4.
27428
27429 2003-08-15  Paul Eggert  <eggert@twinsun.com>
27430
27431         Document merge from coreutils.
27432         * modules/userspec: Depend on posixver.
27433         * modules/strftime: Depend on tzset.
27434
27435 2003-08-15  Paul Eggert  <eggert@twinsun.com>
27436
27437         * lib/config.charset, ref-add.sin, ref-del.sin: Use three spaces,
27438         rather than tab, after '#' in shell-script copyright notices.
27439         Suggested by Bruno Haible.
27440
27441 2003-08-15  Paul Eggert  <eggert@twinsun.com>
27442
27443         * config/srclist-update: Use three spaces, rather than tab, after '#'
27444         in shell-script copyright notices.  Suggested by Bruno Haible.
27445         Remove unnecessary parenthesization in regular expression.
27446
27447 2003-08-15  Jim Meyering  <jim@meyering.net>
27448
27449         Merge from coreutils.
27450         * lib/xgethostname.c: Include <stdlib.h>.
27451         (xghostname): Don't exit for anything other than memory-related
27452         failure; just return NULL.
27453         * lib/userspec.c: Include "posixver.h".
27454         (parse_user_spec): Accept `.' as a separator only
27455         in pre-POSIX-200112 mode.
27456         * lib/strtoimax.c: Use #elif rather than #else #if.
27457         * lib/strftime.c (my_strftime) [!_LIBC && HAVE_TZNAME && HAVE_TZSET]:
27458         Remove function, now that we can rely on a working tzset function.
27459         [!_LIBC]: Ensure that the required autoconf test has been run.
27460         [!defined _NL_CURRENT && HAVE_STRFTIME]:
27461         Use underlying_strftime for %r.
27462         * lib/sha.c: Merge in some clean-up and optimization changes from
27463         glibc.
27464         * lib/sha.c (sha_stream) [BLOCKSIZE]: Move definition to top of file.
27465         Ensure that it is a multiple of 64.
27466         Rearrange loop exit tests so as to avoid performing an
27467         additional fread after encountering an error or EOF.
27468         * lib/realloc.c: Update copyright date.
27469
27470 2003-08-15  Jim Meyering  <jim@meyering.net>
27471         and Paul Eggert  <eggert@twinsun.com>
27472
27473         Merge from coreutils.
27474         * lib/readutmp.h (HAVE_UTMPX_H): Undef if struct utmp has the ut_exit
27475         member but strut utmpx does not.  Needed for AIX 4.3.3.
27476         (UT_EXIT_E_TERMINATION, UT_EXIT_E_EXIT): Define.
27477
27478 2003-08-15  Jim Meyering  <jim@meyering.net>
27479         and Paul Eggert  <eggert@cs.ucla.edu>
27480
27481         Merges from coreutils, etc.
27482         * m4/strftime.m4 (_jm_STRFTIME_PREREQS):
27483         Require gl_FUNC_TZSET_CLOBBER.
27484         * m4/readutmp.m4 (gl_READUTMP): Check for ut_exit.ut_exit,
27485         ut_exit.e_exit, ut_exit.ut_termination, and ut_exit.e_termination
27486         members.
27487
27488 2003-08-14  Paul Eggert  <eggert@twinsun.com>
27489
27490         Help the merge from coreutils.
27491         * m4/gettimeofday.m4 (gl_GETTIMEOFDAY_REPLACE_LOCALTIME): New macro.
27492         (AC_FUNC_GETTIMEOFDAY_CLOBBER): Use it.
27493         * m4/tzset.m4: Use it too.
27494
27495 2003-08-14  Paul Eggert  <eggert@twinsun.com>
27496
27497         * modules/tzset: New file.
27498
27499 2003-08-14  Jim Meyering  <jim@meyering.net>
27500
27501         Merges from coreutils.
27502         * modules/fnmatch: Use the `$(FNMATCH_H)' notation for AC_REPLACED
27503         variable names, rather than @FNMATCH_H@.
27504         * modules/alloca: Likewise for $(ALLOCA_H).
27505
27506         * modules/fnmatch (fnmatch.h): Use `$@' in the commands, in place of
27507         the three copies of the literal target, `fnmatch.h'.
27508         * modules/alloca (alloca.h): Likewise.
27509
27510 2003-08-14  Jim Meyering  <jim@meyering.net>
27511
27512         Merge from coreutils.
27513         * m4/tzset.m4: New file.
27514         * m4/ls-mntd-fs.m4 (jm_LIST_MOUNTED_FILESYSTEMS): Move the
27515         MOUNTED_VMOUNT test to precede the MOUNTED_GETMNTENT1 tests, since
27516         otherwise, AIX 5.1 systems would end up using the latter.
27517         MOUNTED_GETMNTENT1 support is inadequate on such systems: 1) detecting
27518         whether a file system is remote doesn't work  2) the MOUNTED_VMOUNT
27519         code reports the HOSTNAME:/MOUNT_POINT, while the MOUNTED_GETMNTENT1
27520         code reports merely /MOUNT_POINT.  Reported by Mike Jetzer.
27521
27522 2003-08-14  Jim Meyering  <jim@meyering.net>
27523
27524         Merge from coreutils.
27525         * lib/obstack.h: Whitespace changes.
27526         * lib/mountlist.c: Remove anachronistic casts of xmalloc, xrealloc,
27527         and xcalloc return values.
27528         (read_filesystem_list) [MOUNTED_GETFSSTAT]:
27529         Use MNT_NOWAIT, rather than MNT_WAIT.  Otherwise, `df DIR' could
27530         hang on OSF/1 5.1 for DIR on both local and remote file systems.
27531         Reported by (and fix confirmed by) Nelson H. F. Beebe.
27532         (read_filesystem_list) [MOUNTED_VMOUNT]: Detect any
27533         error from mntctl.
27534         Use mntctl's return value to drive the entry-processing loop, since
27535         we can't rely on the value of the vmt_length member in the last
27536         entry.  On some systems doing so could result in exhausting
27537         virtual memory.  Based in part on a patch from Mike Jetzer.
27538
27539 2003-08-14  Jim Meyering  <jim@meyering.net>
27540         and Paul Eggert  <eggert@twinsun.com>
27541
27542         Merges from coreutils, plus other fixes.
27543         * lib/physmem.c: Merge in portability changes from gcc/libiberty
27544         to support AIX, IRIX, Tru64, and Windows.  See the ChangeLog there
27545         for credits and details.  Thanks to Kaveh Ghazi for helping
27546         to keep these files in sync.
27547         (ARRAY_SIZE): Define it.
27548         (physmem_total, physmem_available): Add comments. From Kaveh Ghazi.
27549         * lib/memcasecmp.c: Remove unnecessary parentheses after 'defined'.
27550         (memcasecmp): Don't assume size_t fits in unsigned int.
27551         Remove casts and duplicate code.
27552         * lib/md5.c: Include <string.h> and <stdlib.h> unconditionally.
27553         (memcpy): Remove definition.
27554         Merge in some clean-up and optimization changes from glibc.
27555         [BLOCKSIZE]: Move definition to top of file.
27556         Ensure that it is a multiple of 64.
27557         Rearrange loop exit tests so as to avoid performing an
27558         additional fread after encountering an error or EOF.
27559         * lib/md5.h (md5_uintptr): Define.
27560         * lib/makepath.c (CLEANUP_CWD): Report an error if we failed to
27561         return to the initial working directory.  Preserve errno
27562         for caller.
27563         * lib/idcache.c: Include "xalloc.h".
27564         (xmalloc, xrealloc): Remove decls.
27565         (getuser): Remove casts no longer required in C89.
27566         * lib/human.c: Include stdio.h, for sprintf.
27567         * lib/group-member.c: Include "xalloc.h".
27568         (xmalloc, xrealloc): Remove decls.
27569         (get_group_info): Remove casts no longer required in C89.
27570         * lib/getusershell.c (readname): Remove casts no longer required in
27571         C89.
27572         * lib/gettimeofday.c (rpl_gmtime, rpl_tzset): New functions.
27573         * lib/getline.c: Whitespace fix, from coreutils.
27574
27575 2003-08-13  Paul Eggert  <eggert@twinsun.com>
27576
27577         * m4/exclude.m4 (gl_EXCLUDE): Require AC_C_INLINE, AC_HEADER_STDC.
27578         Check for isascii.
27579
27580         * m4/gettext.m4, iconv.m4, intdiv0.m4, inttypes-pri.m4, lib-link.m4,
27581         lib-prefix.m4, longdouble.m4, po.m4, progtest.m4, signed.m4:
27582         Undo previous (whitespace-only) change.
27583
27584 2003-08-13  Paul Eggert  <eggert@twinsun.com>
27585
27586         * lib/exclude.c: Include <ctype.h>
27587         (IN_CTYPE_DOMAIN): New macro.
27588         (is_space): New fn.
27589         (add_exclude_file): If LINE_END is a space, ignore trailing spaces
27590         and empty lines.
27591
27592         * lib/argp-help.c, argp-parse.c, config.charset, getopt.h:
27593         Undo previous (whitespace-only) change.
27594
27595 2003-08-13  Paul Eggert  <eggert@twinsun.com>
27596
27597         * config/srclist-update: Change update back to the old behavior,
27598         leaving whitespace alone.  Use one 'sed' command rather than a
27599         pipeline.
27600         (fixlicense): Now a variable, not a function.
27601         (remove_trailing_blanks): Remove.
27602         (fixfile): Don't invoke unexpand or cat, or remove trailing blanks.
27603         * config/config.guess, config.sub, install-sh, missing, texinfo.tex:
27604         Undo previous (whitespace-only) change.
27605
27606 2003-08-12  Paul Eggert  <eggert@twinsun.com>
27607
27608         Merge from coreutils.
27609         * modules/euidaccess: Add lib_SOURCES, include for new
27610         file euidaccess.h
27611
27612 2003-08-12  Paul Eggert  <eggert@twinsun.com>
27613
27614         * m4/gettext.m4, iconv.m4, intdiv0.m4, inttypes-pri.m4, lib-link.m4,
27615         lib-prefix.m4, longdouble.m4, po.m4, progtest.m4, signed.m4:
27616         Normalize leading white space and remove trailing white space.
27617
27618         Merge from coreutils
27619         * m4/euidaccess.m4 (gl_FUNC_EUIDACCESS): Check for euidaccess decl.
27620
27621         * m4/lib-ld.m4, lib-link.m4, lib-prefix.m4: Regenerate from gettext
27622         0.12.1.  These files are now being upgraded automatically by
27623         ../config/srclist-update.
27624
27625 2003-08-12  Paul Eggert  <eggert@twinsun.com>
27626
27627         * lib/argp-help.c, argp-parse.c, config.charset, getopt.h:
27628         Normalize leading white space and remove trailing white space.
27629         * lib/ref-add.sin, ref-del.sin: Use '#' before empty line in copyright
27630         notice, as per ../config/srclist-update.
27631
27632         Merge from coreutils.
27633         * lib/euidaccess.h: New file.
27634         * lib/euidaccess.c: Include it.
27635         * lib/.cppi-disable: Add printf-args.h, printf-parse.h, stdbool_.h,
27636         vasnprintf.h, vasprintf.h.  Remove strdup.c, gettext.h.
27637         * lib/regex.h, strdup.c, strtoll.c, strtoul.c: Normalize white space.
27638
27639 2003-08-12  Paul Eggert  <eggert@twinsun.com>
27640
27641         * config/srclist-update: Add copyright notice.
27642         (remove_id_lines, remove_trailing_blanks): New constants.
27643         (fixfile): Use them to normalize spacing a bit in copied files.
27644         * config/config.guess, config.sub, install-sh, missing, texinfo.tex:
27645         Normalize leading white space and remove trailing white space.
27646
27647         * config/texinfo.tex: Sync with texinfo.
27648
27649         * config/srclist.txt: Don't get regex.h, strdup.c, strtoll.c,
27650         strtoul.c from libc, to merge coreutils whitespace changes.
27651
27652         * config/srclist.txt: Get the following m4 files from gettext:
27653         codeset.m4, gettext.m4, glibc21.m4, iconv.m4, intdiv0.m4,
27654         inttypes-pri.m4, lcmessage.m4, lib-ld.m4, lib-link.m4, lib-prefix.m4,
27655         longdouble.m4, nls.m4, po.m4, progtest.m4, signed.m4, wchar_t.m4,
27656         wint_t.m4.
27657
27658 2003-08-12  Karl Berry  <karl@gnu.org>
27659
27660         * config/srclist.txt: can't sync vasnprintf.c any more, changes have
27661         been made.
27662
27663 2003-08-11  Paul Eggert  <eggert@twinsun.com>
27664
27665         * modules/gnu-source, m4/gnu-source.m4:
27666         Remove; we're assuming Autoconf 2.54 or later now.
27667         Suggested by Bruno Haible.
27668         * MODULES.html.sh (func_all_modules): Remove gnu-source.
27669
27670 2003-08-11  Bruno Haible  <bruno@clisp.org>
27671
27672         * m4/vasnprintf.m4 (gl_PREREQ_VASNPRINTF): Also check for wcslen.
27673
27674 2003-08-11  Bruno Haible  <bruno@clisp.org>
27675
27676         * lib/vasnprintf.c (local_wcslen): New function, for Solaris 2.5.1.
27677         (vasnprintf): Use it instead of wcslen.
27678
27679 2003-08-11  Bruno Haible  <bruno@clisp.org>
27680
27681         * lib/stdbool_.h (_Bool): Undo last change; instead use a negative enum
27682         value to ensure that _Bool promotes to int. Use #define for _Bool when
27683         using the Solaris C compiler. Adds comments suggested by Paul Eggert.
27684
27685 2003-08-10  Karl Berry  <karl@gnu.org>
27686
27687         * lib/regex.h: update from libc (whitespace fix).
27688
27689 2003-08-09  Paul Eggert  <eggert@twinsun.com>
27690
27691         Merge some files from coreutils.  These changes were
27692         originally made by Jim Meyering.
27693         * lib/acl.c: Include <sys/types.h> before <sys/stat.h>;
27694         many older Unixes require this.
27695         * lib/alloca.c (alloca): Remove cast to argument of free;
27696         no longer needed in C89.
27697         * lib/alloca_.h, regex.h: Fix white space to match
27698         what GNU indent does.
27699
27700 2003-08-09  Paul Eggert  <eggert@twinsun.com>
27701
27702         * m4/regex.m4 (jm_INCLUDED_REGEX): Change "\201" to "\371";
27703         apparently Emacs's Unicode mode got confused before my 2003-08-05
27704         checkin.
27705
27706 2003-08-08  Paul Eggert  <eggert@twinsun.com>
27707
27708         * m4/extensions.m4: New file.
27709         * m4/timespec.m4 (jm_CHECK_TYPE_STRUCT_TIMESPEC):
27710         Require gl_USE_SYSTEM_EXTENSIONS.
27711         * m4/unlocked-io.m4 (jm_FUNC_GLIBC_UNLOCKED_IO):
27712         Require gl_USE_SYSTEM_EXTENSIONS rather than AC_GNU_SOURCE.
27713
27714 2003-08-08  Paul Eggert  <eggert@twinsun.com>
27715
27716         * MODULES.html.sh (func_all_modules): Add extensions, gnu-source.
27717         * modules/extensions, modules/gnu-source: New files.
27718         * modules/timespec, modules/unlocked-io: Depend on extensions.
27719
27720 2003-08-07  Paul Eggert  <eggert@twinsun.com>
27721
27722         * modules/restrict: New file.
27723         * MODULES.html.sh (func_all_modules): Add restrict.
27724         * modules/regex: Depend on restrict.
27725
27726 2003-08-07  Paul Eggert  <eggert@twinsun.com>
27727
27728         * m4/restrict.m4: New file.
27729         * m4/regex.m4 (jm_PREREQ_REGEX): Add gl_C_RESTRICT.
27730
27731 2003-08-07  Bruno Haible  <bruno@clisp.org>
27732
27733         * modules/getndelim2 (Makefile.am): Add the files to EXTRA_DIST, not
27734         lib_SOURCES, because getndelim2.m4 now uses AC_LIBOBJ(getndelim2).
27735
27736 2003-08-07  Bruno Haible  <bruno@clisp.org>
27737
27738         * m4/getndelim2.m4 (gl_GETNDELIM2): Use AC_LIBOBJ(getndelim2). This
27739         makes the module 'getndelim2' compatible with the module 'getline'.
27740
27741 2003-08-05  Paul Eggert  <eggert@twinsun.com>
27742
27743         * m4/regex.m4 (jm_INCLUDED_REGEX): Replace a single non-ASCII
27744         byte with "\201" to avoid glitches when editing that source file
27745         with multi-gnome-terminal.
27746
27747 2003-08-05  Paul Eggert  <eggert@twinsun.com>
27748
27749         * lib/bumpalloc.h: Remove.
27750
27751 2003-08-05  Paul Eggert  <eggert@twinsun.com>
27752
27753         * MODULES.html.sh (func_all_modules): Remove bumpalloc.
27754         * modules/bumpalloc: Remove.
27755
27756 2003-08-04  Paul Eggert  <eggert@twinsun.com>
27757
27758         * lib/getloadavg.c: Change copyright notice and spacing to conform to
27759         GNU coding style.
27760
27761         Merge from coreutils.
27762         * lib/error.c [!USE_IN_LIBIO]: Omit this case; assume USE_IN_LIBIO is
27763         1. From glibc.
27764         * lib/getdate.y (date): Also accept dates like May-23-2003; suggestion
27765         from Karl Berry, implemented by Jim Meyering.
27766         * lib/getgroups.c: Include "xalloc.h" instead of declaring xalloc fns;
27767         from Dmitry V. Levin.
27768         Remove anachronistic cast of xrealloc.
27769         * lib/fnmatch_.h (__const): Remove.  Use 'const'.
27770         * lib/fnmatch_loop.c (NEW_PATTERN): Cast alloca return value to proper
27771         type. Otherwise, it wouldn't compile with at least /bin/cc on
27772         ymp-cray-unicos9.0.2.X.
27773         Combine two mostly-identical uses of alloca into one.
27774         Thanks to the Cray-Cyber project for access to a Cray Y-MP.
27775
27776 2003-08-04  Dave Love  <d.love@dl.ac.uk>
27777
27778         [From Emacs.]
27779
27780         * lib/getloadavg.c: Check `__unix' as well as `unix'.  Use #ifdef, not
27781         #if.  Check HAVE_LIBKSTAT as well as LOAD_AVE_TYPE.  Check
27782         F_SETFD, not FD_SETFD.  Use HAVE_STRUCT_NLIST_N_UN_N_NAME, not
27783         obsolete NLIST_NAME_UNION.
27784         [__GNU__]: Undef BSD and FSCALE.
27785         [!NLIST_STRUCT]: Remove conditional definition of NLIST_STRUCT.
27786
27787 2003-08-03  Paul Eggert  <eggert@twinsun.com>
27788
27789         * lib/stdbool_.h (_Bool): Make it signed char, instead of
27790         an enum type, so that it's guaranteed to promote to int.  See:
27791         <http://mail.gnu.org/archive/html/bug-gnulib/2003-07/msg00124.html>
27792
27793 2003-08-03  Karl Berry  <karl@gnu.org>
27794
27795         * config/depcomp: update from automake.
27796
27797 2003-07-31  Paul Eggert  <eggert@twinsun.com>
27798
27799         * lib/strerror.c: Include config.h, limits.h.  Declare sprintf.
27800         (strerror): Don't assume that a printable int fits in 14 bytes.
27801
27802 2003-07-31  Bruno Haible  <bruno@clisp.org>
27803
27804         * modules/getpass-gnu: New file.
27805         * MODULES.html.sh (func_all_modules): Add getpass-gnu.
27806
27807 2003-07-31  Bruno Haible  <bruno@clisp.org>
27808
27809         * m4/getpass.m4 (gl_FUNC_GETPASS_GNU): New macro.
27810
27811 2003-07-24  Karl Berry  <karl@gnu.org>
27812
27813         * config/missing: update from automake.
27814
27815 2003-07-24  Derek Robert Price  <derek@ximbiot.com>
27816             Bruno Haible  <bruno@clisp.org>
27817
27818         * lib/getline.h (getline, getdelim): Change return type to ssize_t.
27819         * lib/getline.c (getline, getdelim): Likewise.
27820         Remove _GNU_SOURCE define; now it's defined in config.h through
27821         m4/getline.m4.
27822
27823 2003-07-23  Karl Berry  <karl@gnu.org>
27824
27825         * config/config.sub: update from prep.
27826
27827 2003-07-22  Paul Eggert  <eggert@twinsun.com>
27828
27829         * modules/xalloc (Depends-on): Add exitfail.
27830         * modules/xmemcoll: Likewise.
27831
27832 2003-07-22  Paul Eggert  <eggert@twinsun.com>
27833
27834         * lib/xalloc.h (XCALLOC, XREALLOC, CCLONE): Fix under- and
27835         over-parenthesization in macros.
27836
27837         Sync with coreutils.
27838
27839         * lib/xalloc.h (XMALLOC, XCALLOC, XREALLOC): Remove casts not
27840         required by C99.
27841
27842         Use `exit_failure' for xalloc and xmemcoll instead of their own
27843         private exit-failure variables.
27844         * lib/xalloc.h (xalloc_exit_failure): Remove.
27845         * lib/xmalloc.c: Likewise.  Include exitfail.h.
27846         (xalloc_die): Use exit_failure instead of xalloc_exit_failure.
27847         * lib/xmemcoll.h (xmemcoll_exit_failure): Remove.
27848         * lib/xmemcoll.c: Likewise.  Include exitfail.h.
27849         (xmemcoll): Use exit_failure instead of xalloc_exit_failure.
27850
27851 2003-07-20  Jim Meyering  <jim@meyering.net>
27852
27853         * modules/closeout (Depends-on): Add exitfail.
27854         Suggestion from Bruno Haible.
27855
27856 2003-07-19  Karl Berry  <karl@gnu.org>
27857
27858         * config/config.sub: update from prep.
27859
27860 2003-07-18  Paul Eggert  <eggert@twinsun.com>
27861
27862         * lib/closeout.h (close_stdout_set_status, close_stdout_status):
27863         Remove.
27864         * lib/closeout.c: Likewise.  Include "closeout.h" right after config.h,
27865         to test that it can stand by itself.  Include "exitfail.h".
27866         Clients should set exit_failure instead.
27867         (EXIT_FAILURE): Remove; no longer needed.  Do not include <stdlib.h>.
27868
27869 2003-07-18  Bruno Haible  <bruno@clisp.org>
27870
27871         * modules/getndelim2: New file.
27872         * modules/getline: Share files with module getndelim2.
27873         * modules/getnline: Depend on getndelim2 instead of sharing files with
27874         it. Add getnline.c to lib_SOURCES.
27875         * MODULES.html.sh (func_all_modules): Add getndelim2.
27876
27877 2003-07-18  Bruno Haible  <bruno@clisp.org>
27878
27879         * m4/getndelim2.m4: New file.
27880         * m4/getline.m4 (AM_FUNC_GETLINE): Add AC_LIBOBJ of getndelim2.c and
27881         invoke gl_PREREQ_GETNDELIM2.
27882         (gl_PREREQ_GETLINE): Drop AC_HEADER_STDC, now done by
27883         gl_PREREQ_GETNDELIM2.
27884         * m4/getnline.m4 (gl_GETNLINE): Drop AC_HEADER_STDC, now done by
27885         gl_GETNDELIM2.
27886
27887 2003-07-18  Bruno Haible  <bruno@clisp.org>
27888
27889         * lib/getndelim2.h: New file.
27890         * lib/getndelim2.c: Make into a module of its own. Include config.h,
27891         getndelim2.h.
27892         (getndelim2): Make non-static. Change return type to ssize_t.
27893         * lib/getline.h: Change argument names.
27894         * lib/getline.c: Include getndelim2.h instead of getndelim2.c.
27895         * lib/getnline.c: Include getndelim2.h.
27896
27897 2003-07-18  Andreas Schwab  <schwab@suse.de>
27898
27899         * lib/memcoll.c (memcoll) [!HAVE_STRCOLL]: Clear errno.
27900
27901 2003-07-17  Karl Berry  <karl@gnu.org>
27902
27903         * config/config.sub: update from prep.
27904
27905 2003-07-17  Bruno Haible  <bruno@clisp.org>
27906
27907         * modules/getnline: New file.
27908         * modules/getline: Add lib/getndelim2.c to source file list.
27909         * MODULES.html.sh (func_all_modules): Add getnline.
27910
27911 2003-07-17  Bruno Haible  <bruno@clisp.org>
27912
27913         * m4/getnline.m4: New file.
27914
27915 2003-07-17  Bruno Haible  <bruno@clisp.org>
27916
27917         * m4/Makefile.am.in: Remove file.
27918         * m4/Makefile.am: Remove file.
27919         * m4/Makefile.in: Remove file.
27920
27921 2003-07-17  Bruno Haible  <bruno@clisp.org>
27922
27923         * lib/getnline.h: New file.
27924         * lib/getnline.c: New file.
27925         * lib/getndelim2.c: New file, extracted from getline.c.
27926         (getndelim2): Renamed from getdelim2, with added nmax argument.
27927         * lib/getline.c: Include getndelim2.c.
27928         (getdelim2): Moved out to getndelim2.c.
27929         (getline, getdelim): Update.
27930
27931 2003-07-17  Bruno Haible  <bruno@clisp.org>
27932
27933         * lib/Makefile.am: Remove file.
27934         * lib/Makefile.in: Remove file.
27935
27936 2003-07-17  Bruno Haible  <bruno@clisp.org>
27937
27938         * configure.in: Remove file.
27939         * Makefile.in: Remove file.
27940
27941 2003-07-17  Bruno Haible  <bruno@clisp.org>
27942
27943         * MODULES.html.sh: Put the </BODY> right before </HTML>.
27944
27945 2003-07-16  Karl Berry  <karl@gnu.org>
27946
27947         * config/srclist-update: was running fixlicense twice, which caused
27948                 texinfo.tex to be nullified for some reason.  Simplify,
27949                 $gplsrc is no longer needed as far as I can see?
27950
27951 2003-07-16  Jim Meyering  <jim@meyering.net>
27952
27953         * modules/save-cwd: Depend on xgetcwd.  From Derek Price.
27954
27955 2003-07-15  Paul Eggert  <eggert@twinsun.com>
27956
27957         * config/srclist.txt: Get the following files from gettext-runtime/intl
27958         instead: config.charset, localcharset.c, localcharset.h, ref-add.sin,
27959         ref-del.sin.  From Bruno Haible.
27960         * config/srclist-update (fixfile): Change grep pattern again, since the
27961         previous fix didn't work (there was another trailing $).  Use
27962         '[$]' to escape the $s.
27963
27964 2003-07-15  Karl Berry  <karl@gnu.org>
27965
27966         * lib/vasnprintf.c: update from gettext.
27967
27968 2003-07-15  Karl Berry  <karl@gnu.org>
27969
27970         * config/srclist-update (fixfile): Change grep pattern, since 'Id'
27971         gets expanded when surrounded by '$'.
27972
27973 2003-07-15  Jim Meyering  <jim@meyering.net>
27974
27975         * modules/save-cwd: Don't depend on error.  From Derek Price.
27976
27977 2003-07-15  Jim Meyering  <jim@meyering.net>
27978
27979         * lib/makepath.c (make_path): Enclose diagnostic in _(...).
27980
27981 2003-07-14  Simon Josefsson  <jas@extundo.com>
27982
27983         * modules/mempcpy: New file.
27984         * MODULES.html.sh (func_all_modules): Add mempcpy.
27985
27986 2003-07-14  Simon Josefsson  <jas@extundo.com>
27987
27988         * m4/mempcpy.m4: New file.
27989
27990 2003-07-14  Simon Josefsson  <jas@extundo.com>
27991
27992         * lib/mempcpy.h: New file.
27993         * lib/mempcpy.c: New file.
27994
27995 2003-07-14  Paul Eggert  <eggert@twinsun.com>
27996
27997         * modules/getdate, modules/posixtm: Depend on mktime.
27998
27999 2003-07-14  Paul Eggert  <eggert@twinsun.com>
28000
28001         * lib/ceill.c, expl.c, floorl.c, frexpl.c, ldexpl.c, mathl.h,
28002         sincosl.c, sqrtl.c, trigl.c, trigl.h, poll.c, poll_.h, mkstemp.c,
28003         unicodeio.c, unicodeio.h, unlocked-io.h:
28004         Switch from LGPL to GPL.
28005
28006 2003-07-14  Paul Eggert  <eggert@twinsun.com>
28007
28008         * lib/asnprintf.c, asprintf.c, config.charset, gettext.h,
28009         localcharset.c, localcharset.h, mkdtemp.c, printf-args.c,
28010         printf-args.h, printf-parse.c, printf-parse.h, ref-add.sin,
28011         ref-del.sin, setenv.c, unsetenv.c, vasnprintf.c, vasnprintf.h,
28012         vasprintf.c, vasprintf.h: Regenerate.  These files are now being
28013         updated automatically by ../config/srclist-update.  This changes
28014         their license from LPGL to GPL.
28015
28016 2003-07-14  Paul Eggert  <eggert@twinsun.com>
28017
28018         * config/srclist.txt: Add tons more gettext files.  $GETTEXT is now
28019         assumed to refer to the root of the most recent stable gettext version.
28020         * config/srclistvars.sh: Add defaults for eggert.
28021         * config/srclist-update: Convert LGPL to GPL in shell scripts, too.
28022         Match "This program" as well as "The program".  This is needed
28023         for gettext.
28024
28025 2003-07-14  Jim Meyering  <jim@meyering.net>
28026
28027         Don't emit diagnostics.  Let callers do that.
28028         * lib/save-cwd.c: Don't include "error.h".
28029         (save_cwd): Don't call error.  Ensure that errno is valid
28030         when returning nonzero.
28031
28032         * lib/save-cwd.h (restore_cwd): Update prototype.
28033         * lib/save-cwd.c (restore_cwd): Remove two parameters.
28034         Simplify.  Don't call error upon failure.  Let callers do that.
28035         (save_cwd): Mention that Irix 5.3 has the same problem as SunOS 4
28036         when auditing is enabled.  But don't bother updating the #if.
28037
28038 2003-07-11  Alexandre Duret-Lutz  <adl@gnu.org>
28039
28040         * lib/obstack.h (__INT_TO_PTR): Revert change of 2003-03-13;
28041         it breaks C++ compilation.
28042         [!__GNUC__ || !__STDC__] (obstack_finish): Cast result to void*.
28043
28044 2003-07-10  Simon Josefsson  <jas@extundo.com>
28045
28046         * modules/strchrnul (Makefile.am): Add strchrnul.h.
28047
28048 2003-07-10  Jim Meyering  <jim@meyering.net>
28049
28050         * m4/clock_time.m4: Remove trailing blank.
28051         * m4/intmax_t.m4: Likewise.
28052
28053 2003-07-10  Jim Meyering  <jim@meyering.net>
28054
28055         * lib/vasnprintf.c: Remove trailing blanks.
28056         Make cpp indentation consistent.
28057
28058 2003-07-09  Paul Eggert  <eggert@twinsun.com>
28059
28060         * lib/alloca_.h, euidaccess.c, getpass.c, memrchr.c, obstack.h,
28061         posixver.c, strftime.c, strnlen.c, strverscmp.c:
28062         Switch from LGPL to GPL.
28063
28064 2003-07-09  Paul Eggert  <eggert@twinsun.com>
28065
28066         * config/srclist.txt: Sort sublists.  Add
28067         $LIBCSRC/sysdeps/generic/strtoul.c. In comments, add more libc files
28068         that differ from gnulib for one reason or another; we'd like this list
28069         to be smaller but for now let's document what we have.
28070
28071 2003-07-08  Paul Eggert  <eggert@twinsun.com>
28072
28073         * config/srclist-update: Port to POSIX 1003.1-2001 hosts by avoiding
28074         the use of GNU extensions.  Change "x=`eval echo $x`" to the shorter
28075         and sweeter "eval x=$x".
28076         * config/srclist.txt: Get lib/argp* from glibc.
28077
28078 2003-07-07  Paul Eggert  <eggert@twinsun.com>
28079
28080         * lib/mktime.c: Fix some boundary cases and remove need for floating
28081         point.
28082
28083         Issue a compile-time diagnostic if time_t is floating point, or if
28084         two's complement arithmetic is not in effect, or if arithmetic
28085         right shift does not propagate the sign.  These assumptions were
28086         all in the original code but they weren't checked.
28087
28088         (TIME_T_MIDPOINT, verify): New macros.
28089         (__isleap): Remove; it has integer overflow problems.
28090         (leapyear): New function, without those problems.
28091         (ydhms_tm_diff): Remove; splitting into two parts.
28092         (ydhms_diff): New function, containing the arithmetic part of
28093         the old ydhms_tm_diff function.  Issue a compile-time
28094         diagnostic if we are not using C99 integer division.
28095         Avoid casts when possible.
28096         (guess_time_tm): New function, containing the checking part of
28097         the old ydhms_tm_diff function.  Return the new value, rather than
28098         the difference between it and the old.  Accept a new argument T
28099         so that *T specifies the old value.  Check for overflow in the result.
28100
28101         (__mktime_internal): Use a time_t offset, not a long int offset.
28102         This undoes the 2003-06-04 change, which is no longer needed now
28103         that we have better overflow checking.
28104         (localtime_offset): Likewise.
28105
28106         (__mktime_internal): Avoid harmful overflow on hosts where time_t
28107         and long are 64-bit but int is only 32-bit.
28108         (ydhms_diff): Use long int to store year1 and yday1.
28109         Issue a compile-time diagnostic if long int is not wide enough.
28110
28111         (__mktime_internal): Use long int to store adjusted year and yday.
28112         Use plain C rather than preprocessor commands, if that doesn't
28113         affect efficiency.
28114         Check for overflow (and try to repair) after each probe
28115         rather than checking only at the very end.  This avoids some bugs
28116         (e.g., southern hemisphere, behind GMT, and GMT offset at minimum time
28117         does not equal GMT offset at maximum time).
28118         Use integer to check for overflow rather than floating point; this
28119         is more portable to non-IEEE hosts, and is a tad faster.
28120         When we detect that we are oscillating between two values,
28121         don't check whether tm_isdst has the requested value, since
28122         we already know the answer.  When tm_isdst has the wrong value,
28123         use a different heuristic to find the right one, based on the
28124         extreme values actually observed in practice in tz2003a,
28125         rather than the (overly optimistic) "previous 3 calendar quarters".
28126
28127         (not_equal_tm, print_tm, check_result): Use "const T" rather than
28128         "T const" to accommodate glibc style.
28129         (check_result): Use less-confusing report format.  "long" -> "long int.
28130         (main): Likewise.
28131         Don't loop if the iteration overflows time_t.
28132         Allow a negative step in the iteration.
28133
28134 2003-07-06  Karl Berry  <karl@gnu.org>
28135
28136         * config/depcomp: update from automake.
28137         * config/config.sub: update from prep.
28138
28139 2003-07-03  Karl Berry  <karl@gnu.org>
28140
28141         * config/config.guess: update from prep.
28142
28143 2003-07-01  Paul Eggert  <eggert@twinsun.com>
28144
28145         * m4/xreadlink.m4 (gl_XREADLINK): Don't check for sys/types.h, since
28146         xreadlink.c now includes it unconditionally.
28147
28148 2003-07-01  Paul Eggert  <eggert@twinsun.com>
28149
28150         * lib/xreadlink.c: Include <sys/types.h> unconditionally, instead of
28151         having it depend on HAVE_SYS_TYPES_H.
28152
28153 2003-07-01  Bruno Haible  <bruno@clisp.org>
28154
28155         * m4/ssize_t.m4 (gt_TYPE_SSIZE_T): Don't include <unistd.h>.
28156         <sys/types.h> should be sufficient.
28157         Reported by Paul Eggert.
28158
28159 2003-06-26  Karl Berry  <karl@gnu.org>
28160
28161         * config/depcomp: update from automake.
28162
28163 2003-06-26  Bruno Haible  <bruno@clisp.org>
28164
28165         * modules/human: Depend on module stdbool.
28166
28167 2003-06-25  Bruno Haible  <bruno@clisp.org>
28168
28169         * modules/readlink: New file.
28170         * modules/xreadlink: Depend on it.
28171         * MODULES.html.sh (func_all_modules): Add readlink.
28172
28173 2003-06-25  Bruno Haible  <bruno@clisp.org>
28174
28175         * m4/readlink.m4: New file.
28176
28177 2003-06-25  Bruno Haible  <bruno@clisp.org>
28178
28179         * lib/readlink.c: New file.
28180
28181 2003-06-22  Karl Berry  <karl@gnu.org>
28182
28183         * config/srclist.txt: update mkinstalldirs from automake.
28184         * config/mkinstalldirs: update.
28185
28186 2003-06-22  Bruno Haible  <bruno@clisp.org>
28187
28188         Portability to mingw32.
28189         * m4/ssize_t.m4: New file, from GNU gettext.
28190         * m4/safe-read.m4 (gl_PREREQ_SAFE_READ): Require gt_TYPE_SSIZE_T.
28191         * m4/xreadlink.m4 (gl_XREADLINK): Require gt_TYPE_SSIZE_T.
28192
28193 2003-06-22  Bruno Haible  <bruno@clisp.org>
28194
28195         * modules/safe-read: Add m4/ssize_t.m4.
28196         * modules/xreadlink: Add m4/ssize_t.m4.
28197
28198 2003-06-20  Bruno Haible  <bruno@clisp.org>
28199
28200         Assume C89, so PARAMS isn't needed.
28201         * lib/unicodeio.h (PARAMS): Remove.
28202         * lib/unicodeio.c: Don't use PARAMS.
28203
28204 2003-06-18  Karl Berry  <karl@gnu.org>
28205
28206         * config/config.{guess,sub}: update from prep.
28207
28208 2003-06-18  Jim Meyering  <jim@meyering.net>
28209
28210         Merge changes from coreutils.
28211         * lib/readutmp.c: Include <string.h> and <stdlib.h> unconditionally.
28212         Remove explicit declarations of xmalloc and realloc.
28213         Include xalloc.h.
28214         (read_utmp): Remove anachronistic cast of xmalloc.
28215
28216 2003-06-17  Paul Eggert  <eggert@twinsun.com>
28217
28218         Assume C89, so PARAMS isn't needed.
28219         * lib/backupfile.h (PARAMS): Remove.  All uses removed.
28220         * lib/closeout.h, lib/dirname.h, lib/filemode.h, lib/fsusage.h,
28221         lib/getdate.h, lib/getline.h, lib/group-member.h, lib/hard-locale.h,
28222         lib/hash.h, lib/linebuffer.h, lib/long-options.h, lib/makepath.h,
28223         lib/memcasecmp.h, lib/memcoll.h, lib/modechange.h, lib/mountlist.h,
28224         lib/path-concat.h, lib/physmem.h, lib/posixtm.h, lib/quote.h,
28225         lib/readutmp.h, lib/same.h, lib/save-cwd.h, lib/savedir.h,
28226         lib/stdio-safer.h, lib/strtoimax.c, lib/strverscmp.h,
28227         lib/unistd-safer.h, lib/version-etc.h, lib/xalloc.h, lib/xreadlink.h,
28228         lib/xstrtod.h, lib/xstrtol.h: Likewise.
28229         * lib/filemode.h, lib/hard-locale.h, lib/memcoll.h, lib/modechange.h,
28230         lib/physmem.h, lib/same.h, lib/strverscmp.h: Do not include config.h;
28231         no longer needed. Anyway, config.h should always be included before any
28232         other file.
28233
28234 2003-06-11  Simon Josefsson  <jas@extundo.com>
28235
28236         * modules/sysexits: New file.
28237         * MODULES.html.sh (func_all_modules): Add sysexits.
28238
28239 2003-06-11  Simon Josefsson  <jas@extundo.com>
28240
28241         * lib/sysexit_.h: New file.
28242
28243 2003-06-11  Derek Price  <derek@ximbiot.com>
28244
28245         * lib/stat.c [LSTAT]: Compile/use slash_aware_lstat only if it is
28246         necessary.
28247
28248 2003-06-11  Bruno Haible  <bruno@clisp.org>
28249
28250         * m4/sysexits.m4: New file.
28251
28252 2003-06-10  Simon Josefsson  <jas@extundo.com>
28253
28254         * lib/argp.h: New file, from glibc.
28255         * lib/argp-ba.c: New file, from glibc.
28256         * lib/argp-eexst.c: New file, from glibc.
28257         * lib/argp-fmtstream.c: New file, from glibc.
28258         * lib/argp-fmtstream.h: New file, from glibc.
28259         * lib/argp-fs-xinl.c: New file, from glibc.
28260         * lib/argp-help.c: New file, from glibc.
28261         * lib/argp-namefrob.h: New file, from glibc.
28262         * lib/argp-parse.c: New file, from glibc.
28263         * lib/argp-pv.c: New file, from glibc.
28264         * lib/argp-pvh.c: New file, from glibc.
28265         * lib/argp-xinl.c: New file, from glibc.
28266
28267 2003-06-10  Simon Josefsson  <jas@extundo.com>
28268
28269         * modules/strchrnul: New file.
28270
28271 2003-06-10  Simon Josefsson  <jas@extundo.com>
28272
28273         * modules/argp: New file.
28274
28275 2003-06-10  Simon Josefsson  <jas@extundo.com>
28276
28277         * m4/strchrnul.m4: New file.
28278
28279 2003-06-10  Simon Josefsson  <jas@extundo.com>
28280
28281         * lib/strchrnul.h: New file.
28282         * lib/strchrnul.c: New file.
28283
28284 2003-06-10  Bruno Haible  <bruno@clisp.org>
28285
28286         * MODULES.html.sh (func_all_modules): Add strchrnul and argp.
28287
28288 2003-06-07  Karl Berry  <karl@gnu.org>
28289
28290         * config/config.{guess,sub}: update from prep.
28291
28292 2003-06-07  Jim Meyering  <jim@meyering.net>
28293
28294         * modules/strtod: Use $(...) notation, not @...@ for
28295         AC_REPLACE'd variables.
28296         * modules/localcharset: Likewise.
28297
28298 2003-06-07  Jim Meyering  <jim@meyering.net>
28299
28300         * lib/readtokens.h: Put `Free Software Foundation, Inc.'
28301         in place of my name in the copyright comment.
28302         Remove definition and uses of __P.
28303
28304         From coreutils.
28305         * lib/stat.c: Don't declare xmalloc explicitly.
28306         Instead, include "xalloc.h".
28307         * lib/readtokens.c (readtokens): Remove anachronistic casts of xmalloc,
28308         xrealloc, and xcalloc return values.
28309         * lib/xgetcwd.c (xgetcwd): Include "xgetcwd.h".
28310         Improve comment.
28311         * lib/xgetcwd.h: Remove definition/uses of PARAMS.
28312
28313 2003-06-07  Bruno Haible  <bruno@clisp.org>
28314
28315         * modules/poll (Makefile.am): Use explicit creation rule for poll.h, to
28316         avoid AC_CONFIG_LINKS.
28317         * modules/fnmatch (Makefile.am): Use explicit creation rule for
28318         fnmatch.h, to avoid AC_CONFIG_LINKS.
28319         * modules/alloca (Makefile.am): Make creation of alloca.h Ctrl-C safe.
28320
28321 2003-06-07  Bruno Haible  <bruno@clisp.org>
28322
28323         * m4/fnmatch.m4 (_AC_LIBOBJ_FNMATCH, gl_FUNC_FNMATCH_POSIX,
28324         gl_FUNC_FNMATCH_GNU): Set FNMATCH_H instead of invoking
28325         AC_CONFIG_LINKS. Needed to allow for a different name of the lib
28326         directory.
28327         * m4/poll.m4 (gl_FUNC_POLL): Set POLL_H instead of invoking
28328         AC_CONFIG_LINKS. Needed to allow for a different name of the lib
28329         directory.
28330
28331 2003-06-06  Jim Meyering  <jim@meyering.net>
28332
28333         Merge from coreutils.
28334         * lib/same.c: (same_name): Declare *_basename locals to be `const'.
28335         Consolidate declarations and initializations of *_base* locals.
28336
28337         Merge from coreutils.
28338         This avoids a core dump on systems without GNU putenv,
28339         when running `env -u SOME_ALREADY_UNSET_VARIABLE'.
28340         * lib/putenv.c (__set_errno, LOCK, UNLOCK): Define.
28341         (unsetenv): New static function, from GNU libc.
28342         (rpl_putenv): Use it.
28343
28344         * lib/modechange.c: Remove trailing blanks.
28345
28346         Merge from coreutils.
28347         * lib/fsusage.c: Remove declaration of statfs.
28348         It conflicted with one from OSF/1 5.1 in <sys/mount.h>.
28349
28350         * lib/posixtm.c: Include <stdbool.h> unconditionally.
28351
28352 2003-06-06  Jim Meyering  <jim@meyering.net>
28353
28354         * lib/stdbool_.h: Renamed from stdbool.h.in.
28355
28356 2003-06-06  Jim Meyering  <jim@meyering.net>
28357             Bruno Haible  <bruno@clisp.org>
28358
28359         * modules/stdbool: Reflect renaming: stdbool.h.in -> stdbool_.h.
28360         Adjust Makefile.am snippet not to redirect directly to target.
28361         Use $(STDBOOL_H) notation, not @STDBOOL_H@ for AC_REPLACE'd variables.
28362
28363 2003-06-05  Paul Eggert  <eggert@twinsun.com>
28364
28365         * lib/mktime.c (__mktime_internal): When resolving a tm_isdst
28366         mismatch, look in future quarters as well as past.  This fixes a
28367         bug when processing fall-backwards gaps immediately after a long
28368         period of daylight-saving time.
28369
28370         * lib/mktime.c: Assume freestanding C89 or better.
28371         (HAVE_LIMITS_H): Remove.  Assume it's 1.
28372         (__P): Remove; not used.
28373         (CHAR_BIT, INT_MIN, INT_MAX): Remove; <limits.h> defines them.
28374         (mktime, not_equal_tm, print_tm, check_result,
28375         main): Use prototypes.  Use const * where appropriate.
28376         (main): Fix typo in testing code that uncovered by above changes.
28377         (Local Variables): Remove -DHAVE_LIMITS_H from compile-command.
28378
28379 2003-06-04  Paul Eggert  <eggert@twinsun.com>
28380
28381         * m4/human.m4 (gl_HUMAN): Require AM_STDBOOL_H.  Check for
28382         locale.h, localeconv.  This merges changes from coreutils.
28383
28384         * m4/mktime.m4 (AC_FUNC_MKTIME): New macro, taken from Autoconf CVS.
28385         It can be removed after the next Autoconf is released.
28386         * m4/exclude.m4 (gl_EXCLUDE): Don't check for sys/types.h; no loner
28387         needed.
28388
28389 2003-06-04  Paul Eggert  <eggert@twinsun.com>
28390
28391         * lib/mktime.c: Fix Debian bug 177940
28392         <http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=177940>.
28393         (localtime_offset): Now long int, not time_t, because we want it
28394         to be guaranteed to be signed.  All uses changed.
28395         (__mktime_internal): If overflow would occur when adding offset,
28396         don't add it.
28397
28398         Merge 'human' changes from coreutils.  Rewrite to support
28399         locale-specific notations like thousands separators.
28400         * lib/human.c: Simplify authorship notice.
28401         Include human.h immediately after config.h.
28402         <sys/types.h>, <stdio.h>: Do not include; no longer needed.
28403         <limits.h>: Do not include, since human.h does.
28404         (SIZE_MAX, UINTMAX_MAX): New macros.
28405         <strings.h>: Include if HAVE_STRINGS_H, not if !HAVE_STRING_H.
28406         <locale.h>: Include if HAVE_LOCALE_H and HAVE_LOCALECONV.
28407         (HUMAN_READABLE_SUFFIX_LENGTH_MAX): New macro.
28408         (power_letter): Renamed from suffixes.
28409         (generate_suffix_backwards): Remove.
28410         (adjust_value): Now takes int style (because of human.h changes)
28411         and long double value (for greater precision on some platforms).
28412         (group_number): New function.
28413         (human_readable): Use it.  Use integer options, not enum.
28414         Put the options before the sizes in the arg list.
28415         Support all the new options.
28416         The old human_readable function has been removed;
28417         use inttostr.h instead.
28418         (human_readable, default_block_size, humblock):
28419         Use uintmax_t, not int, for block sizes.
28420         (human_readable_inexact, block_size_types): Remove.
28421         (block_size_opts): New constant.
28422         (human_options): Renamed from human_block_size, with new signature
28423         that allows block sizes up to UINTMAX_MAX.  All callers changed.
28424         * lib/human.h: Add copyright and authorship notice.
28425         Include <limits.h> and <stdbool.h> unconditionally.
28426         (PARAMS): Remove.  All uses removed.
28427         (LONGEST_HUMAN_READABLE): Add support for thousands separator.
28428         (enum human_inexact_style): Remove tag; now a nameless enum.
28429         (human_floor, human_ceiling, human_round_to_even): Now have
28430         values 2, 0, 1 rather than -1, 1, 0.
28431         (human_group_digits, human_suppress_point_zero, human_autoscale,
28432         human_base_1024, human_SI, human_B): New constants.
28433         (human_readable_inexact, human_block_size): Remove.
28434         (human_readable): Size args are now uintmax_t, not int.
28435         (human_options): New decl.
28436
28437         * lib/exclude.c: (new_exclude, add_exclude): Remove casts that are
28438         unnecessary now that we assume C89 or better.  This change
28439         imported from coreutils.
28440
28441         * lib/mktime.c (__mktime_internal): Do not reject negative timestamps
28442         arbitrarily.  This is the same patch as 2003-05-28, but it got lost
28443         in the 2003-05-30 sync from glibc.
28444
28445         .h files should stand alone, but we shouldn't include <sys/types.h>
28446         if we can get away with just <stddef.h>.
28447
28448         * lib/__fpending.h, addext.c, backupfile.c, exclude.c, getline.c,
28449         malloc.c, putenv.c, realloc.c, strcasecmp.c: Include <stddef.h>
28450         rather than <sys/types.h>, as we merely need size_t.
28451         * lib/dirname.h, memcoll.h, xalloc.h, xmemcoll.h: Include <stddef.h>,
28452         to get size_t.
28453         * lib/hash.h, linebuffer.h, readtokens.h, stdio-safer.h, version-etc.h:
28454         Include <stdio.h>, to get FILE.
28455         * lib/memcasecmp.c: Don't include <sys/types.h>, as we can assume
28456         memcasecmp.h has included <stddef.h> and all we need is size_t.
28457         * lib/memcoll.c: Include "memcoll.h", which gets us size_t and checks
28458         our interface, instead of including <sys/types.h>
28459
28460 2003-06-04  Paul Eggert  <eggert@twinsun.com>
28461
28462         * config/srclist.txt ($LIBCSRC/time/mktime.c lib gpl): Comment out for
28463         now, as glibc mktime is buggy on non-glibc systems.
28464
28465 2003-06-03  Karl Berry  <karl@gnu.org>
28466
28467         * config/config.sub: update from prep.
28468
28469 2003-06-02  Paul Eggert  <eggert@twinsun.com>
28470
28471         [from coreutils]
28472         Fix some minor time-related bugs with POSIX time arguments.
28473         Some valid time stamps were being rejected (notably -1, and
28474         time stamps before 1900 on 64-bit hosts).  And some invalid
28475         time stamps were being accepted, e.g. September 31.
28476
28477         * lib/posixtm.h (posixtime): Return bool instead of time_t, so
28478         that we can return (time_t) -1 successfully.
28479         * lib/posixtm.c: Likewise.
28480         [HAVE_STDBOOL_H]: Include <stdbool.h>.
28481         (bool, false, true) [!HAVE_STDBOOL_H]: New type.
28482         (t): Remove static var.
28483         (year, posix_time_parse): Now takes struct tm * arg to modify, instead
28484         of static var.  All uses changed.
28485         (year): Do not reject years before 1900; they can occur with
28486         64-bit time_t.
28487         (posix_time_parse): Do not check for out-of-range components;
28488         that is now the caller's responsibility, since our checks were
28489         only approximations.
28490         (posixtime): Use mktime to check for out-of-range components,
28491         since it knows them exactly.
28492         If mktime returns (time_t) -1, check whether an error actually occurred
28493         by invoking localtime on -1.
28494         (main) [TEST_POSIXTIME]: Check for input data errors, and report
28495         posixtime failures better.
28496         Improve the test data (in comments only).
28497
28498 2003-06-02  Karl Berry  <karl@gnu.org>
28499
28500         * config/mkinstalldirs (version): new variable.
28501         (--version): new option.
28502         (usage): improve message.
28503
28504 2003-05-30  Karl Berry  <karl@gnu.org>
28505
28506         * lib/mktime.c: update from libc.
28507
28508 2003-05-30  Bruno Haible  <bruno@clisp.org>
28509
28510         * modules/gettext: Add files m4/nls.m4 and m4/po.m4.
28511         * config/config.rpath: Upgrade to gettext-0.12.1.
28512
28513 2003-05-30  Bruno Haible  <bruno@clisp.org>
28514
28515         * m4/gettext.m4: Upgrade to gettext-0.12.1.
28516         * m4/nls.m4: New file, from gettext-0.12.1.
28517         * m4/po.m4: New file, from gettext-0.12.1.
28518         * m4/progtest.m4: Upgrade to gettext-0.12.1.
28519
28520 2003-05-30  Bruno Haible  <bruno@clisp.org>
28521
28522         * lib/config.charset: Upgrade to gettext-0.12.1 and libiconv-1.9.1.
28523         * lib/localcharset.h: Likewise.
28524         * lib/localcharset.c: Likewise.
28525
28526 2003-05-29  Karl Berry  <karl@gnu.org>
28527
28528         * config/config.rpath: update from gettext.
28529
28530 2003-05-28  Paul Eggert  <eggert@twinsun.com>
28531
28532         Assume the headers required for C89 freestanding compilers.
28533         * m4/backupfile.m4 (gl_BACKUPFILE): Don't check for limits.h.
28534         * m4/fsusage.m4 (gl_PREREQ_FSUSAGE_EXTRA): Likewise.
28535         * m4/human.m4 (gl_HUMAN): Likewise.
28536         * m4/pathmax.m4 (gl_PATHMAX): Likewise.
28537         * m4/rpmatch.m4 (gl_FUNC_RPMATCH): Likewise.
28538         * m4/userspec.m4 (gl_USERSPEC): Likewise.
28539         * m4/xreadlink.m4 (gl_XREADLINK): Likewise.
28540         * m4/xstrtol.m4 (gl_PREREQ_XSTRTOL): Likewise.
28541         * m4/quote.m4 (gl_QUOTE): Don't check for stddef.h.
28542
28543 2003-05-28  Paul Eggert  <eggert@twinsun.com>
28544
28545         Assume the headers required for C89 freestanding compilers.
28546         * lib/addext.c, lib/backupfile.c, lib/fsusage.c, lib/human.c,
28547         lib/pathmax.h, lib/rpmatch.c, lib/userspec.c, lib/xreadlink.c,
28548         lib/xstrtol.c: Include <limits.h> without checking for HAVE_LIMITS_H.
28549         * lib/backupfile.c, lib/fsusage.c, lib/hash.c, lib/human.c,
28550         lib/safe-read.c, lib/userspec.c, lib/xstrtol.c (CHAR_BIT): Don't
28551         define, since <limits.h> is guaranteed to do that.
28552         * lib/fatal.c: Include <stdarg.h> without checking for __STDC__.
28553         * lib/exclude.c: Include <stdbool.h> unconditionally.
28554         * lib/tempname.c: Include <stddef.h> unconditionally.
28555         * lib/hash.c: Include <limits.h>, since we no longer define CHAR_BIT.
28556         * lib/modechange.c, rpmatch.c (NULL): Don't define, since
28557         <stddef.h> does that.
28558         * lib/quote.c: Dont include <stddef.h> or <sys/types.h>; not needed.
28559         * lib/safe-read.c (INT_MAX): Don't define, since <limits.h> does that.
28560         * lib/safe-read.c (TYPE_MINIMUM, TYPE_MAXIMUM): Remove; no longer
28561         needed.
28562         * lib/xstrtol.c: Likewise.
28563         * lib/safe-read.c: Remove TYPE_SIGNED; no longer needed.
28564         * lib/savedir.c: Include <stddef.h> instead of defining NULL.
28565
28566         * lib/addext.c (addext): Use assignment rather than cast, to avoid
28567         warnings on some platforms.
28568
28569         * lib/mktime.c (__mktime_internal): Do not reject negative timestamps
28570         arbitrarily.
28571
28572 2003-05-26  Jim Meyering  <jim@meyering.net>
28573
28574         Merge in a change from coreutils:
28575         * m4/dirfd.m4 (UTILS_FUNC_DIRFD): Test the cache variable, not one
28576         that is guaranteed to be `no'.  Use `no_such_member' to indicate
28577         that condition, rather than `-1' which is slightly misleading.
28578         Change the name of the cache variable to have the gl_ prefix.
28579         Prompted by a patch from Richard Dawe for DJGPP.
28580
28581 2003-05-24  Karl Berry  <karl@gnu.org>
28582
28583         * config/config.guess: update from prep.
28584
28585 2003-05-22  Karl Berry  <karl@gnu.org>
28586
28587         * gnulib-tool (func_usage): =LIBRARY not =libRARY in help msg.
28588
28589 2003-05-20  Karl Berry  <karl@gnu.org>
28590
28591         * config/config.guess: update from prep.
28592
28593 2003-05-18  Karl Berry  <karl@gnu.org>
28594
28595         * config/srclistvars.sh (TEXMF): use TEXMFROOT instead, since TEXMF
28596         might actually be set by the user.
28597
28598         * config/depcomp, install-sh, mdate-sh: update from automake.
28599
28600 2003-05-17  Bruno Haible  <bruno@clisp.org>
28601
28602         * m4/dirfd.m4 (UTILS_FUNC_DIRFD): Fix a quoting bug leading to an
28603         invalid expansion for AC_EGREP_CPP.
28604         * m4/strtoimax.m4 (gl_FUNC_STRTOIMAX): Likewise.
28605         * m4/strtoumax.m4 (gl_FUNC_STRTOUMAX): Likewise.
28606         Suggested by Akim Demaille <akim@epita.fr> in
28607         http://mail.gnu.org/archive/html/bug-autoconf/2003-05/threads.html
28608
28609 2003-05-12  Jim Meyering  <jim@meyering.net>
28610
28611         * lib/strftime.c (my_strftime): Let the `-' (no-pad) flag affect
28612         the space-padded-by-default conversion specifiers, %e, %k, %l.
28613
28614 2003-05-12  Bruno Haible  <bruno@clisp.org>
28615
28616         * lib/linebreak.c (iconv_string_length): Don't return -1 just because
28617         the string is longer than 4 KB.
28618
28619 2003-05-11  Karl Berry  <karl@gnu.org>
28620
28621         * config/config.{guess,sub}: update from prep.
28622
28623 2003-05-09  Bruno Haible  <bruno@clisp.org>
28624
28625         * modules/error: Add m4/strerror_r.m4 to file list.
28626
28627 2003-05-03  Bruno Haible  <bruno@clisp.org>
28628
28629         Upgrade to Unicode-4.0.
28630         * lib/linebreak.c (nonspacing_table_data): Change width of U+00AD,
28631         U+0350..U+0357, U+035D..U+035F, U+0600..U+0603, U+0610..U+0615,
28632         U+0656..U+0658, U+0A01, U+0AE2..U+0AE3, U+0CBC, U+17B4..U+17B5,
28633         U+17DD, U+1920..U+1922, U+1927..U+192B, U+1932, U+1939..U+193B
28634         from 1 to 0. Change width of U+0CBF, U+0CC6, U+180E from 0 to 1.
28635         (uc_width): Change width of U+4DC0..U+4DFF from 2 to 1. Change width
28636         of U+2A6D7..U+2F7FF, U+2FA1E..U+2FFFD, U+30000..U+3FFFD from 1 to 2.
28637         Change width of U+E0100..U+E01EF from 1 to 0.
28638
28639 2003-04-25  Jim Meyering  <jim@meyering.net>
28640
28641         * lib/copy-file.c (copy_file_preserving): Declare buf_size to be
28642         of type size_t, not int.
28643
28644 2003-04-25  Bruno Haible  <bruno@clisp.org>
28645
28646         * lib/copy-file.c: Include <stddef.h>, for size_t.
28647
28648 2003-04-21  Paul Eggert  <eggert@twinsun.com>
28649
28650         * m4/error.m4 (gl_ERROR): Do not put under dynamic conditions some
28651         code which expansion is under static control.  Patch imported from
28652         Akim Demaille's patch to Bison; see
28653         <http://mail.gnu.org/archive/html/bison-patches/2003-03/msg00057.html>.
28654
28655 2003-04-14  Bruno Haible  <bruno@clisp.org>
28656
28657         * m4/error.m4 (jm_PREREQ_ERROR): Use AC_FUNC_VPRINTF.
28658
28659 2003-04-11  Jim Meyering  <jim@meyering.net>
28660
28661         Merge changes from Coreutils.
28662
28663         2003-03-22  Jim Meyering  <jim@meyering.net>
28664
28665         * lib/strftime.c (widen): Cast alloca return value to proper type.
28666
28667         2003-01-19  Ulrich Drepper  <drepper@redhat.com>
28668
28669         From GNU libc.
28670         * lib/strftime.c (my_strftime): Handle very large width
28671         specifications for numeric values correctly.  Improve checks for
28672         overflow.
28673
28674         2003-01-19  Jim Meyering  <jim@meyering.net>
28675
28676         * lib/strftime.c (widen) [COMPILE_WIDE]: Merge nearly-identical
28677         definitions.
28678         (nl_get_alt_digit) [! defined my_strftime]: Define.
28679         (my_strftime) [_NL_CURRENT]: Merge nearly-identical uses of
28680         _nl_get_alt_digit and _nl_get_walt_digit.
28681
28682         * lib/strftime.c (my_strftime): Merge in locale-related changes from
28683         libc. These changes have no effect outside of _LIBC.
28684
28685 2003-04-10  Bruno Haible  <bruno@clisp.org>
28686
28687         * modules/findprog: New file.
28688         * MODULES.html.sh (func_all_modules): Add it.
28689
28690 2003-04-10  Bruno Haible  <bruno@clisp.org>
28691
28692         * m4/findprog.m4: New file.
28693         * m4/eaccess.m4: New file.
28694
28695 2003-04-10  Bruno Haible  <bruno@clisp.org>
28696
28697         * lib/findprog.h: New file, from GNU gettext.
28698         * lib/findprog.c: New file, from GNU gettext.
28699
28700 2003-04-05  Jim Meyering  <jim@meyering.net>
28701
28702         Merge changes from Coreutils.
28703
28704         * lib/exclude.h (PARAMS): Remove definition and uses.
28705         * lib/exclude.c: Remove uses of `PARAMS'.
28706
28707         * lib/dirname.c [TEST_DIRNAME]: Update build instructions for test.
28708         Add test-cases for DOS filenames. Declare program_name.
28709         (main): Set up program_name.  Patch by Rich Dawe.
28710
28711         * lib/mountlist.c (read_filesystem_list) [MOUNTED_VMOUNT]: Detect any
28712         error from mntctl.
28713         Use mntctl's return value to drive the entry-processing loop, since
28714         we can't rely on the value of the vmt_length member in the last
28715         entry.  On some systems doing so could result in exhausting
28716         virtual memory.  Based in part on a patch from Mike Jetzer.
28717
28718 2003-04-04  Bruno Haible  <bruno@clisp.org>
28719
28720         * modules/linebreak: New file.
28721         * MODULES.html.sh (func_all_modules): Add it.
28722
28723 2003-04-04  Bruno Haible  <bruno@clisp.org>
28724
28725         * m4/linebreak.m4: New file.
28726
28727 2003-04-04  Bruno Haible  <bruno@clisp.org>
28728
28729         * lib/linebreak.h: New file, from GNU gettext.
28730         * lib/linebreak.c: New file, from GNU gettext with slight
28731         modifications.
28732         * lib/lbrkprop.h: New file, from GNU gettext.
28733
28734 2003-04-03  Bruno Haible  <bruno@clisp.org>
28735
28736         * modules/utf8-ucs4: New file.
28737         * modules/utf16-ucs4: New file.
28738         * modules/ucs4-utf8: New file.
28739         * modules/ucs4-utf16: New file.
28740         * MODULES.html.sh (func_all_modules): Add them.
28741
28742 2003-04-03  Bruno Haible  <bruno@clisp.org>
28743
28744         * m4/utf-ucs4.m4: New file.
28745         * m4/ucs4-utf.m4: New file.
28746
28747 2003-04-03  Bruno Haible  <bruno@clisp.org>
28748
28749         * lib/utf8-ucs4.h: New file, from GNU gettext.
28750         * lib/utf16-ucs4.h: New file, from GNU gettext.
28751         * lib/ucs4-utf8.h: New file, from GNU gettext.
28752         * lib/ucs4-utf16.h: New file, from GNU gettext.
28753
28754 2003-04-02  Bruno Haible  <bruno@clisp.org>
28755
28756         * modules/binary-io: New file.
28757         * MODULES.html.sh (func_all_modules): Add it.
28758
28759 2003-04-02  Bruno Haible  <bruno@clisp.org>
28760
28761         * lib/binary-io.h: New file, from GNU gettext.
28762
28763 2003-04-01  Bruno Haible  <bruno@clisp.org>
28764
28765         * modules/pathname: New file.
28766         * MODULES.html.sh (func_all_modules): Add it.
28767
28768 2003-04-01  Bruno Haible  <bruno@clisp.org>
28769
28770         * lib/pathname.h: New file, from GNU gettext.
28771         * lib/concatpath.c: New file, from GNU gettext.
28772
28773 2003-03-30  Bruno Haible  <bruno@clisp.org>
28774
28775         * m4/copy-file.m4 (gl_COPY_FILE): Add check for chown().
28776
28777 2003-03-30  Bruno Haible  <bruno@clisp.org>
28778
28779         * lib/copy-file.c (copy_file_preserving): Don't set owner if the
28780         function chown() doesn't exist.
28781
28782 2003-03-28  Bruno Haible  <bruno@clisp.org>
28783
28784         * modules/copy-file: New file.
28785         * MODULES.html.sh (func_all_modules): Add it.
28786
28787 2003-03-28  Bruno Haible  <bruno@clisp.org>
28788
28789         * m4/copy-file.m4: New file.
28790
28791 2003-03-28  Bruno Haible  <bruno@clisp.org>
28792
28793         * lib/copy-file.h: New file, from GNU gettext.
28794         * lib/copy-file.c: New file, from GNU gettext.
28795
28796 2003-03-18  Jim Meyering  <jim@meyering.net>
28797
28798         * lib/quote.c (quote_n): Fix typo in comment.
28799
28800 2003-03-18  Bruno Haible  <bruno@clisp.org>
28801
28802         * m4/onceonly.m4: Use m4_defn instead of defn, for better error
28803         checking.
28804         * m4/onceonly_2_57.m4: Likewise.
28805
28806 2003-03-17  Bruno Haible  <bruno@clisp.org>
28807
28808         * m4/onceonly.m4: Require autoconf 2.54 or newer.
28809         (m4_quote): Remove macro.
28810         * m4/onceonly_2_57.m4: Require autoconf 2.54 or newer.
28811
28812 2003-03-14  Jim Meyering  <jim@meyering.net>
28813
28814         Merge changes from Coreutils.
28815         * lib/obstack.h (obstack_object_size): Declare temporary, __o,
28816         to be const, in order to avoid warnings.
28817         (obstack_room): Likewise.
28818         (obstack_empty_p): Likewise.
28819
28820 2003-03-14  Bruno Haible  <bruno@clisp.org>
28821
28822         * m4/onceonly_2_57.m4 (AC_CHECK_HEADERS_ONCE, AC_CHECK_FUNCS_ONCE,
28823         AC_CHECK_DECLS_ONCE): Quote AC_FOREACH variable-expansions properly.
28824
28825 2003-03-13  Paul Eggert  <eggert@twinsun.com>
28826
28827         Merge changes from Bison.
28828         * lib/obstack.h: (__INT_TO_PTR) [__STDC__]: Cast result to
28829         (void *) to avoid diagnostic with native c89 on SGI IRIX 6.5
28830         when compiling Bison 1.875's `bitset bset = obstack_alloc
28831         (bobstack, bytes);'.  Problem reported by Nelson H. F. Beebe.
28832         * lib/hash.c: Include <stdbool.h> unconditionally.
28833
28834 2003-03-13  Paul Eggert  <eggert@twinsun.com>
28835
28836         * m4/onceonly.m4 (m4_quote): New macro.
28837         (AC_CHECK_HEADERS_ONCE, AC_CHECK_FUNCS_ONCE, AC_CHECK_DECLS_ONCE):
28838         Quote AC_FOREACH variable-expansions properly.
28839
28840 2003-03-13  Paul Eggert  <eggert@twinsun.com>
28841
28842         * doc/COPYING.DOC, fdl.texi: Sync with latest FSF version.
28843
28844 2003-03-09  Paul Eggert  <eggert@twinsun.com>
28845
28846         * lib/argmatch.c (EXIT_FAILURE): Define if the system doesn't.
28847         Reported by Bruce Becker; see:
28848         http://mail.gnu.org/archive/html/bug-bison/2003-03/msg00017.html
28849
28850 2003-03-03  Paul Eggert  <eggert@twinsun.com>
28851             Bruno Haible  <bruno@clisp.org>
28852
28853         * lib/mbswidth.h: Include <wchar.h>. Needed for UnixWare 7.1.1.
28854         Reported by John Hughes, see
28855         http://mail.gnu.org/archive/html/bug-bison/2003-02/msg00030.html
28856
28857 2003-02-20  Bruno Haible  <bruno@clisp.org>
28858
28859         * MODULES.html.sh (func_all_modules): Add poll.
28860
28861 2003-02-19  Paolo Bonzini  <bonzini@gnu.org>
28862
28863         * modules/poll: New file.
28864
28865 2003-02-19  Paolo Bonzini  <bonzini@gnu.org>
28866
28867         * lib/poll_.h: New file.
28868         * lib/poll.c: New file.
28869
28870 2003-02-19  Paolo Bonzini  <bonzini@gnu.org>
28871
28872         * m4/poll.m4: New file.
28873
28874 2003-02-18  Paolo Bonzini  <bonzini@gnu.org>
28875
28876         * modules/mathl: New file.
28877
28878 2003-02-18  Paolo Bonzini  <bonzini@gnu.org>
28879
28880         * lib/mathl.h: New file.
28881         * lib/acosl.c: New file.
28882         * lib/asinl.c: New file.
28883         * lib/atanl.c: New file.
28884         * lib/ceill.c: New file.
28885         * lib/cosl.c: New file.
28886         * lib/expl.c: New file.
28887         * lib/floorl.c: New file.
28888         * lib/frexpl.c: New file.
28889         * lib/ldexpl.c: New file.
28890         * lib/logl.c: New file.
28891         * lib/sincosl.c: New file.
28892         * lib/sinl.c: New file.
28893         * lib/sqrtl.c: New file.
28894         * lib/tanl.c: New file.
28895         * lib/trigl.c: New file.
28896         * lib/trigl.h: New file.
28897
28898 2003-02-18  Paolo Bonzini  <bonzini@gnu.org>
28899
28900         * m4/mathl.m4: New file.
28901
28902 2003-02-18  Bruno Haible  <bruno@clisp.org>
28903
28904         * MODULES.html.sh (func_all_modules): Add mathl.
28905
28906 2003-02-17  Bruno Haible  <bruno@clisp.org>
28907
28908         * modules/mkdtemp: New module.
28909         * MODULES.html.sh (func_all_modules): Add it.
28910
28911 2003-02-17  Bruno Haible  <bruno@clisp.org>
28912
28913         * m4/mkdtemp.m4: New file, from GNU gettext with modifications.
28914
28915 2003-02-17  Bruno Haible  <bruno@clisp.org>
28916
28917         * lib/mkdtemp.h: New file, from GNU gettext.
28918         * lib/mkdtemp.c: New file, from GNU gettext.
28919
28920 2003-02-02  Jim Meyering  <jim@meyering.net>
28921
28922         * m4/regex.m4 (jm_INCLUDED_REGEX): Detect broken re_search in
28923         e.g. glibc-2.2.93.
28924
28925 2003-01-31  Bruno Haible  <bruno@clisp.org>
28926
28927         * m4/rename.m4 (vb_FUNC_RENAME): Add a redirection from 'rename' to
28928         'rpl_rename'.
28929         * m4/strnlen.m4 (gl_FUNC_STRNLEN): Add a redirection from 'strnlen' to
28930         'rpl_strnlen'.
28931         * m4/strtod.m4 (gl_FUNC_STRTOD): Add a redirection from 'strtod' to
28932         'rpl_strtod'.
28933         * m4/utime.m4 (jm_FUNC_UTIME): Add a redirection from 'utime' to
28934         'rpl_utime'.
28935
28936 2003-01-31  Bruno Haible  <bruno@clisp.org>
28937
28938         * lib/rename.c: #undef rename before defining rpl_rename.
28939         * lib/strnlen.c: #undef strnlen, define rpl_strnlen instead of strnlen.
28940
28941 2003-01-30  Bruno Haible  <bruno@clisp.org>
28942
28943         * modules/vasnprintf, modules/vasprintf: New modules.
28944         * MODULES.html.sh (func_all_modules): Add them.
28945
28946 2003-01-30  Bruno Haible  <bruno@clisp.org>
28947
28948         * m4/signed.m4: New file, from GNU gettext.
28949         * m4/longdouble.m4: New file, from GNU gettext.
28950         * m4/wchar_t.m4: New file, from GNU gettext.
28951         * m4/wint_t.m4: New file, from GNU gettext.
28952         * m4/vasnprintf.m4: New file.
28953         * m4/vasprintf.m4: New file.
28954
28955 2003-01-30  Bruno Haible  <bruno@clisp.org>
28956
28957         * lib/printf-args.h: New file, from GNU gettext.
28958         * lib/printf-args.c: New file, from GNU gettext.
28959         * lib/printf-parse.h: New file, from GNU gettext.
28960         * lib/printf-parse.c: New file, from GNU gettext.
28961         * lib/vasnprintf.h: New file, from GNU gettext.
28962         * lib/vasnprintf.c: New file, from GNU gettext.
28963         * lib/asnprintf.c: New file, from GNU gettext.
28964         * lib/vasprintf.h: New file, from GNU gettext with modifications.
28965         * lib/vasprintf.c: New file, from GNU gettext.
28966         * lib/asprintf.c: New file, from GNU gettext.
28967
28968 2003-01-29  Bruno Haible  <bruno@clisp.org>
28969
28970         * modules/stpncpy: New module.
28971         * MODULES.html.sh (func_all_modules): Add it.
28972
28973 2003-01-29  Bruno Haible  <bruno@clisp.org>
28974
28975         * m4/stpncpy.m4: New file.
28976
28977 2003-01-29  Bruno Haible  <bruno@clisp.org>
28978
28979         * lib/stpncpy.h: New file, from GNU gettext with modifications.
28980         * lib/stpncpy.c: New file, from GNU gettext with modifications.
28981
28982 2003-01-28  Bruno Haible  <bruno@clisp.org>
28983
28984         * modules/c-ctype: New module.
28985         * MODULES.html.sh (func_all_modules): Add it.
28986
28987 2003-01-28  Bruno Haible  <bruno@clisp.org>
28988
28989         * lib/c-ctype.h: New file, from GNU gettext, with changes suggested by
28990         Paul Eggert.
28991         * lib/c-ctype.c: New file, from GNU gettext, with changes suggested by
28992         Paul Eggert.
28993
28994 2003-01-27  Bruno Haible  <bruno@clisp.org>
28995
28996         * modules/xsetenv: New module.
28997         * MODULES.html.sh (func_all_modules): Add it.
28998
28999 2003-01-27  Bruno Haible  <bruno@clisp.org>
29000
29001         * lib/xsetenv.h: New file, from GNU gettext.
29002         * lib/xsetenv.c: New file, from GNU gettext.
29003
29004 2003-01-23  Jim Meyering  <jim@meyering.net>
29005
29006         * m4/dirfd.m4 (UTILS_FUNC_DIRFD): Correct typo: s/-1/no/ that kept this
29007         from working on systems without dirfd (at least Irix and OSF1/Tru64).
29008
29009 2003-01-23  Bruno Haible  <bruno@clisp.org>
29010
29011         * modules/minmax: New module.
29012         * MODULES.html.sh (func_all_modules): Add it.
29013
29014 2003-01-23  Bruno Haible  <bruno@clisp.org>
29015
29016         * lib/minmax.h: New file, from GNU gettext, with comments from Paul
29017         Eggert.
29018
29019 2003-01-22  Bruno Haible  <bruno@clisp.org>
29020
29021         * modules/exit: New module.
29022         * MODULES.html.sh (func_all_modules): Add it.
29023
29024 2003-01-22  Bruno Haible  <bruno@clisp.org>
29025
29026         * lib/exit.h: New file, from GNU gettext.
29027
29028 2003-01-19  Bruno Haible  <bruno@clisp.org>
29029
29030         * gnulib-tool: Recognize option --extract-maintainer.
29031         (func_get_maintainer): New function.
29032         * modules/*: Add Maintainer entry.
29033
29034 2003-01-16  Jim Meyering  <jim@meyering.net>
29035
29036         * m4/regex.m4: The `regex' struct is both input and output.
29037         Initialize it before each use.  Patch by Tim Waugh.
29038
29039 2003-01-16  Bruno Haible  <bruno@clisp.org>
29040
29041         * MODULES.html.sh: Add a table of contents. Add the module name as
29042         leftmost column. Add hyperlinks.
29043
29044 2003-01-15  Bruno Haible  <bruno@clisp.org>
29045
29046         * m4/md5.m4 (gl_MD5): Require AC_C_INLINE.
29047
29048 2003-01-15  Bruno Haible  <bruno@clisp.org>
29049
29050         * m4/longlong.m4 (jm_AC_TYPE_LONG_LONG): Also test the LL suffix.
29051         * m4/ulonglong.m4 (jm_AC_TYPE_UNSIGNED_LONG_LONG): Also test the ULL
29052         suffix.
29053
29054 2003-01-15  Bruno Haible  <bruno@clisp.org>
29055
29056         * m4/alloca.m4 (gl_FUNC_ALLOCA): Invoke AC_EGREP_CPP prerequisites.
29057
29058 2003-01-15  Bruno Haible  <bruno@clisp.org>
29059
29060         * lib/stpcpy.h (stpcpy): Use ANSI C function declarations.
29061         * lib/strcase.h (strcasecmp, strncasecmp): Likewise.
29062
29063 2003-01-14  Jim Meyering  <jim@meyering.net>
29064
29065         * lib/same.c (same_name): Tweak a comment.
29066
29067 2003-01-14  Bruno Haible  <bruno@clisp.org>
29068
29069         * lib/same.c (same_name): Reorder tests so as to avoid calling stat()
29070         when a string comparison is sufficient.
29071
29072 2003-01-14  Bruno Haible  <bruno@clisp.org>
29073
29074         * lib/readtokens.c (readtoken): Cast character to 'unsigned char', not
29075         'unsigned int'.
29076
29077 2003-01-14  Bruno Haible  <bruno@clisp.org>
29078
29079         * lib/hash-pjw.c: Add comment about low quality of this function.
29080
29081 2003-01-13  Bruno Haible  <bruno@clisp.org>
29082
29083         * modules/stpcpy: Distribute lib/stpcpy.h.
29084         * modules/setenv: Depend on alloca. Distribute lib/setenv.h.
29085
29086 2003-01-13  Bruno Haible  <bruno@clisp.org>
29087
29088         * modules/*: Add a description.
29089         * modules/strpbrk: Fix Makefile.am snippet.
29090         * modules/strtoimax: Fix dependencies.
29091         * modules/strtoumax: Likewise.
29092
29093 2003-01-13  Bruno Haible  <bruno@clisp.org>
29094
29095         * gnulib-tool (func_create_testdir): Substitute lib_OBJECTS.
29096         * modules/alloca (Makefile.am): All object files depend on alloca.h.
29097         * modules/stdbool (Makefile.am): All object files depend on stdbool.h.
29098
29099 2003-01-13  Bruno Haible  <bruno@clisp.org>
29100
29101         * gnulib-tool (func_create_testdir): Store config/* files in the main
29102         directory.
29103         * config.rpath: Move to ...
29104         * config/config.rpath: ... here.
29105         * modules/gettext: Contains config/config.rpath, not config.rpath.
29106         * modules/iconv: Likewise.
29107
29108 2003-01-12  Paul Eggert  <eggert@twinsun.com>
29109
29110         Finish renaming getstr -> getdelim2 and readline -> readlinebuffer,
29111         to avoid collisions with libcurses and libreadline.
29112
29113         * m4/getstr.m4: Remove.
29114         * m4/getline.m4 (gl_PREREQ_GETLINE): Require AC_HEADER_STDC.
29115
29116 2003-01-12  Paul Eggert  <eggert@twinsun.com>
29117
29118         Finish renaming getstr -> getdelim2 and readline -> readlinebuffer,
29119         to avoid collisions with libcurses and libreadline.
29120
29121         * lib/Makefile.am (libfetish_a_SOURCES): Remove getstr.c, getstr.h.
29122         * lib/getstr.h, getstr.c: Remove.
29123         * lib/getline.c: Include "getline.h", to check interface.
29124         Move body of old getstr.c here: this defines MIN_CHUNK and
29125         declares getdelim2, which is renamed from getstr.
29126         (getline, getdelim): Adjust to renaming of getstr -> getdelim2.
29127
29128         * lib/linebuffer.c (readlinebuffer): Renamed from readline.
29129         All uses changed.
29130         * lib/linebuffer.h: Likewise.
29131         (readline): Remove backward-compatibility macro.
29132
29133 2003-01-12  Paul Eggert  <eggert@twinsun.com>
29134
29135         Finish renaming getstr -> getdelim2 and readline -> readlinebuffer,
29136         to avoid collisions with libcurses and libreadline.
29137         * getstr: Remove.
29138         * MODULES.html.sh: Remove getstr.
29139         * modules/getline: Depend on unlocked-io, not getstr.
29140
29141 2003-01-12  Jim Meyering  <jim@meyering.net>
29142
29143         * lib/makepath.c: Don't test HAVE_ERRNO_H.  It's not necessary.
29144
29145 2003-01-10  Bruno Haible  <bruno@clisp.org>
29146
29147         * modules/alloca: Change Makefile.am requirements. Simplify Include
29148         requirements. Add lib/alloca_.h to file list.
29149
29150 2003-01-10  Bruno Haible  <bruno@clisp.org>
29151
29152         * m4/alloca.m4 (gl_FUNC_ALLOCA): Also define ALLOCA_H.
29153
29154 2003-01-10  Bruno Haible  <bruno@clisp.org>
29155
29156         * lib/alloca_.h: New file.
29157         * lib/getdate.y: Unconditionally include alloca.h.
29158         * lib/makepath.c: Likewise.
29159         * lib/setenv.c: Likewise.
29160         * lib/userspec.c: Likewise.
29161
29162 2003-01-09  Karl Berry  <karl@gnu.org>
29163
29164         * MODULES.html.sh: include `dirname $0` in PATH, to find
29165         gnulib-tool.
29166
29167 2003-01-09  Bruno Haible  <bruno@clisp.org>
29168
29169         * modules/stdbool: Change configure.ac, Makefile.am requirements.
29170         Simplify Include requirements. Add lib/stdbool.h.in to file list.
29171
29172 2003-01-09  Bruno Haible  <bruno@clisp.org>
29173
29174         * m4/stdbool.m4 (AM_STDBOOL_H): New macro.
29175
29176 2003-01-09  Bruno Haible  <bruno@clisp.org>
29177
29178         * lib/stdbool.h.in: New file.
29179
29180 2003-01-09  Bruno Haible  <bruno@clisp.org>
29181
29182         * gnulib-tool (func_all_modules): Ignore files ending in ~.
29183         * MODULES.html.sh: Likewise.
29184
29185 2003-01-08  Jim Meyering  <jim@meyering.net>
29186
29187         * lib/full-write.c: Undefine and define-away `const' after inclusion
29188         of errno.h, not before.  Suggestion from Bruno Haible.
29189
29190 2003-01-08  Bruno Haible  <bruno@clisp.org>
29191
29192         * modules/full-read: Depend on full-write.
29193
29194 2003-01-08  Bruno Haible  <bruno@clisp.org>
29195
29196         * lib/safe-read.c: Include specification header first, to ensure its
29197         selfcontainedness.
29198         * lib/full-write.c: Likewise.
29199
29200 2003-01-07  Jim Meyering  <jim@meyering.net>
29201
29202         * lib/full-write.c: Rework so that it may serve to define full_read,
29203         too.
29204         * lib/full-read.c: Simply #define FULL_READ and include full-write.c.
29205
29206 2003-01-07  Bruno Haible  <bruno@clisp.org>
29207
29208         * lib/strtoimax.c: Include <stdint.h> as an alternative to
29209         <inttypes.h>.
29210         * lib/xstrtol.h: Likewise.
29211         * lib/xstrtoimax.c: Likewise.
29212         * lib/xstrtoumax.c: Likewise.
29213         * lib/human.h: Likewise.
29214
29215         * lib/tempname.c: Include <inttypes.h> too. Avoids a compilation error
29216         on systems that have <inttypes.h> but not <stdint.h>.
29217
29218 2003-01-07  Bruno Haible  <bruno@clisp.org>
29219
29220         * MODULES.html.sh: Add copyright notice.
29221         (missed_files): Omit CVS directory entries.
29222         (func_module): Make it work with sed-3.02.
29223         * MODULES.txt: Remove file.
29224
29225 2003-01-06  Jim Meyering  <jim@meyering.net>
29226
29227         * lib/version-etc.c: Update year in translatable copyright string.
29228
29229 2003-01-03  Karl Berry  <karl@gnu.org>
29230
29231         * config/config.{guess,sub}: update from prep.
29232
29233 2003-01-02  Karl Berry  <karl@gnu.org>
29234
29235         * doc/COPYING.DOC: belatedly updated to 1.2.
29236
29237 2003-01-01  Karl Berry  <karl@gnu.org>
29238
29239         * gnulib-tool (func_verify_module): report module name $module in
29240         error message, not $1.
29241         * gnulib-tool (create-testdir): don't complain if destdir couldn't
29242         be created, only if it doesn't exist.
29243         * gnulib-tool (last_checkin_date): don't expand the $Date here.
29244
29245 2002-12-31  Paul Eggert  <eggert@twinsun.com>
29246
29247         * m4/memcoll.m4 (gl_MEMCOLL): Require AC_FUNC_MEMCMP.
29248
29249 2002-12-31  Paul Eggert  <eggert@twinsun.com>
29250
29251         * lib/memcoll.c (memcoll): Fall back on a simple algorithm using
29252         memcmp if strcoll doesn't work.
29253
29254 2002-12-31  Bruno Haible  <bruno@clisp.org>
29255
29256         * lib/utime.c (utime_null): No need to call ftruncate if the file was
29257         nonempty.
29258
29259 2002-12-31  Bruno Haible  <bruno@clisp.org>
29260
29261         * lib/memcoll.c (STRCOLL): New macro.
29262         (memcoll): Use it.
29263
29264 2002-12-31  Bruno Haible  <bruno@clisp.org>
29265
29266         * lib/localcharset.h: New file.
29267         * lib/localcharset.c: Include it.
29268         * lib/unicodeio.c: Likewise.
29269
29270 2002-12-31  Bruno Haible  <bruno@clisp.org>
29271
29272         * lib/getstr.h (getstr): Define, to avoid clash with libcurses.
29273         * lib/linebuffer.h (readline): Define, to avoid clash with libreadline.
29274
29275 2002-12-31  Bruno Haible  <bruno@clisp.org>
29276
29277         * lib/getline.h: Include <stddef.h>, for size_t.
29278
29279         * lib/unicodeio.h: Include <stddef.h>, for size_t.
29280         * lib/unicodeio.c: Don't include <stddef.h>.
29281
29282 2002-12-31  Bruno Haible  <bruno@clisp.org>
29283
29284         * lib/getdate.y (get_date): Test HAVE_STRUCT_TM_TM_ZONE, not
29285         HAVE_TM_ZONE.
29286
29287 2002-12-24  Karl Berry  <karl@gnu.org>
29288
29289         * config/config.guess: update from prep.
29290
29291 2002-12-24  Bruno Haible  <bruno@clisp.org>
29292
29293         General infrasructure.
29294         * m4/README: Rewritten.
29295         * m4/onceonly.m4: New file.
29296         * m4/onceonly_2_57.m4: New file.
29297
29298         Module atexit.
29299         * m4/atexit.m4: New file.
29300
29301         Module strtod.
29302         * m4/strtod.m4: New file.
29303
29304         Module strtol.
29305         * m4/strtol.m4: New file.
29306
29307         Module strtoul.
29308         * m4/strtoul.m4: New file.
29309
29310         Module memchr.
29311         * m4/memchr.m4: New file.
29312
29313         Module memcmp.
29314         * m4/memcmp.m4 (gl_PREREQ_MEMCMP): New macro.
29315         (jm_FUNC_MEMCMP): Invoke it.
29316
29317         Module memcpy.
29318         * m4/memcpy.m4: New file.
29319
29320         Module memmove.
29321         * m4/memmove.m4: New file.
29322
29323         Module memset.
29324         * m4/memset.m4: New file.
29325
29326         Module strcspn.
29327         * m4/strcspn.m4: New file.
29328
29329         Module strpbrk.
29330         * m4/strpbrk.m4: New file.
29331
29332         Module strstr.
29333         * m4/strstr.m4: New file.
29334
29335         Module strerror.
29336         * m4/strerror.m4: New file.
29337
29338         Module mktime.
29339         * m4/mktime.m4: Renamed from jm-mktime.m4.
29340         (gl_PREREQ_MKTIME): New macro.
29341         (gl_FUNC_MKTIME): Renamed from jm_FUNC_MKTIME. Invoke gl_PREREQ_MKTIME.
29342
29343         Module malloc.
29344         * m4/malloc.m4 (gl_PREREQ_MALLOC): New macro.
29345         (jm_FUNC_MALLOC): Use AC_FUNC_MALLOC. Invoke gl_PREREQ_MALLOC.
29346         Don't define HAVE_DONE_WORKING_MALLOC_CHECK, since nothing uses it.
29347
29348         Module realloc.
29349         * m4/realloc.m4 (gl_PREREQ_REALLOC): New macro.
29350         (jm_FUNC_REALLOC): Use AC_FUNC_REALLOC. Invoke gl_PREREQ_REALLOC.
29351         Don't define HAVE_DONE_WORKING_REALLOC_CHECK, since nothing uses it.
29352
29353         Module strftime.
29354         * m4/tm_gmtoff.m4: New file, extracted from strftime.m4.
29355         * m4/strftime.m4 (_jm_STRFTIME_PREREQS): Use AC_FUNC_STRFTIME.
29356         Don't test for bcopy (we are not emacs). Invoke AC_TYPE_MBSTATE_T and
29357         gl_TM_GMTOFF.
29358         (_jm_STRFTIME_PREREQS, jm_FUNC_GNU_STRFTIME): Use onceonly macros.
29359
29360         Module xalloc.
29361         * m4/xalloc.m4: New file.
29362
29363         Module alloca.
29364         * m4/alloca.m4: New file.
29365
29366         Module putenv.
29367         * m4/putenv.m4 (gl_PREREQ_PUTENV): New macro.
29368         (jm_FUNC_PUTENV): Invoke it.
29369
29370         Module setenv.
29371         * m4/setenv.m4 (gt_FUNC_SETENV): New macro.
29372         (gt_CHECK_VAR_DECL): Fix quoting error that led to infinite loop in m4
29373         when invoked twice.
29374         (gt_PREREQ_SETENV, gt_PREREQ_UNSETENV): New macros, replacing old
29375         gt_FUNC_SETENV.
29376
29377         Module memrchr.
29378         * m4/memrchr.m4: New file.
29379
29380         Module stpcpy.
29381         * m4/stpcpy.m4: New file.
29382
29383         Module strcase.
29384         * m4/strcase.m4: New file.
29385
29386         Module strdup.
29387         * m4/strdup.m4: New file.
29388
29389         Module strnlen.
29390         * m4/strnlen.m4: New file.
29391
29392         Module strndup.
29393         * m4/strndup.m4: New file.
29394
29395         Module xstrtod.
29396         * m4/xstrtod.m4: New file.
29397
29398         Module xstrtol.
29399         * m4/xstrtol.m4: New file.
29400
29401         Module getdate.
29402         * m4/getdate.m4: New file.
29403
29404         Module unlocked-io.
29405         * m4/unlocked-io.m4: Renamed from jm-glibc-io.m4.
29406         (jm_FUNC_GLIBC_UNLOCKED_IO): Invoke AC_GNU_SOURCE. Use onceonly macros.
29407         * m4/jm-glibc-io.m4n: Remove file.
29408
29409         Module long-options.
29410         * m4/long-options.m4: New file.
29411
29412         Module md5.
29413         * m4/md5.m4: New file.
29414
29415         Module sha.
29416         * m4/sha.m4: New file.
29417
29418         Module getstr.
29419         * m4/getstr.m4: New file.
29420
29421         Module getline.
29422         * m4/getline.m4 (gl_PREREQ_GETLINE): New macro.
29423         (AM_FUNC_GETLINE): Invoke AC_GNU_SOURCE. Use <stdlib.h>, not
29424         <sys/types.h>, for size_t. Use the function name gnu_getline, not
29425         simply getline. Infoke gl_PREREQ_GETLINE.
29426
29427         Module obstack.
29428         * m4/obstack.m4: New file.
29429
29430         Module hash.
29431         * m4/hash.m4: New file.
29432
29433         Module readtokens.
29434         * m4/readtokens.m4: New file.
29435
29436         Module strverscmp.
29437         * m4/strverscmp.m4: New file.
29438
29439         Module stdbool.
29440         * m4/stdbool.m4 (AC_HEADER_STDBOOL): Add test for _Bool. Needed for
29441         OSF/1.
29442
29443         Module strtoll.
29444         * m4/strtoll.m4: New file.
29445
29446         Module strtoull.
29447         * m4/strtoull.m4: New file.
29448
29449         Module strtoimax.
29450         * m4/strtoimax.m4: New file.
29451
29452         Module strtoumax.
29453         * m4/strtoumax.m4: New file.
29454
29455         Module xstrtoimax.
29456         * m4/xstrtoimax.m4 (jm_XSTRTOIMAX): Renamed from
29457         jm_AC_PREREQ_XSTRTOIMAX.
29458         Moved the strtol prerequisites to strtol.m4.
29459         Moved the strtoll prerequisites to strtoll.m4.
29460         Moved the strtoimax prerequisites to strtoimax.m4.
29461
29462         Module xstrtoumax.
29463         * m4/xstrtoumax.m4 (jm_XSTRTOUMAX): Renamed from
29464         jm_AC_PREREQ_XSTRTOUMAX.
29465         Moved the strtoul prerequisites to strtoul.m4.
29466         Moved the strtoull prerequisites to strtoull.m4.
29467         Moved the strtoumax prerequisites to strtoumax.m4.
29468
29469         Module chown.
29470         * m4/chown.m4 (gl_PREREQ_CHOWN): New macro.
29471         (jm_FUNC_CHOWN): Use AC_FUNC_CHOWN. Invoke gl_PREREQ_CHOWN.
29472
29473         Module dup2.
29474         * m4/dup2.m4: New file.
29475
29476         Module ftruncate.
29477         * m4/ftruncate.m4 (gl_PREREQ_FTRUNCATE): New macro.
29478         (jm_FUNC_FTRUNCATE): Use AC_REPLACE_FUNCS. Invoke gl_PREREQ_FTRUNCATE.
29479
29480         Module getgroups.
29481         * m4/getgroups.m4 (gl_PREREQ_GETGROUPS): New macro.
29482         (jm_FUNC_GETGROUPS): Use AC_FUNC_GETGROUPS. Invoke gl_PREREQ_GETGROUPS.
29483
29484         Module gettimeofday.
29485         * m4/gettimeofday.m4 (gl_PREREQ_GETTIMEOFDAY): New macro.
29486         (AC_FUNC_GETTIMEOFDAY_CLOBBER): Use onceonly macros. Invoke
29487         gl_PREREQ_GETTIMEOFDAY.
29488
29489         Module mkdir.
29490         * m4/mkdir-slash.m4 (gl_PREREQ_MKDIR): New macro.
29491         (UTILS_FUNC_MKDIR_TRAILING_SLASH): Invoke gl_PREREQ_MKDIR.
29492
29493         Module mkstemp.
29494         * m4/mkstemp.m4 (gl_PREREQ_MKSTEMP): New macro.
29495         (jm_PREREQ_TEMPNAME): New macro, from prereq.m4. Also invoke
29496         jm_AC_TYPE_UINTMAX_T.
29497         (UTILS_FUNC_MKSTEMP): Invoke gl_PREREQ_MKSTEMP and jm_PREREQ_TEMPNAME.
29498
29499         Module stat.
29500         * m4/stat.m4 (gl_PREREQ_STAT): New macro.
29501         (jm_FUNC_STAT): Use AC_FUNC_STAT. Invoke gl_PREREQ_STAT.
29502
29503         Module lstat.
29504         * m4/lstat.m4 (gl_PREREQ_LSTAT): New macro.
29505         (jm_FUNC_LSTAT): Use AC_FUNC_LSTAT. Invoke gl_PREREQ_LSTAT.
29506
29507         Module timespec.
29508         * m4/timespec.m4 (gl_TIMESPEC): New macro.
29509         (jm_CHECK_TYPE_STRUCT_TIMESPEC): Add check for <sys/time.h>.
29510         * m4/st_mtim.m4: Indentation.
29511
29512         Module nanosleep.
29513         * m4/nanosleep.m4 (gl_PREREQ_NANOSLEEP): New macro.
29514         (jm_FUNC_NANOSLEEP): Add check for <sys/time.h>. Invoke
29515         gl_PREREQ_NANOSLEEP.
29516
29517         Module regex.
29518         * m4/regex.m4 (jm_PREREQ_REGEX): New macro.
29519         (jm_INCLUDED_REGEX): Invoke jm_PREREQ_REGEX.
29520         (gl_REGEX): New macro.
29521
29522         Module rename.
29523         * m4/rename.m4 (gl_PREREQ_RENAME): New macro.
29524         (vb_FUNC_RENAME): Invoke gl_PREREQ_RENAME.
29525
29526         Module rmdir.
29527         * m4/rmdir.m4: New file.
29528
29529         Module utime.
29530         * m4/utimbuf.m4 (jm_CHECK_TYPE_STRUCT_UTIMBUF): Use onceonly macros.
29531         * m4/utime.m4 (gl_PREREQ_UTIME): New macro.
29532         (jm_FUNC_UTIME): Invoke gl_PREREQ_UTIME.
29533
29534         Module dirname.
29535         * m4/dirname.m4: New file.
29536
29537         Module getopt.
29538         * m4/getopt.m4: New file.
29539
29540         Module unistd-safer.
29541         * m4/unistd-safer.m4: New file.
29542
29543         Module fnmatch.
29544         * m4/fnmatch.m4 (_AC_FUNC_FNMATCH_IF): Include <stdlib.h>, for exit()
29545         declaration.
29546         (gl_PREREQ_FNMATCH_EXTRA): New macro.
29547         (gl_FUNC_FNMATCH_POSIX): New macro.
29548         (gl_FUNC_FNMATCH_GNU): Renamed from AC_FUNC_FNMATCH_GNU. Invoke
29549         gl_PREREQ_FNMATCH_EXTRA. Use the function name gnu_fnmatch, not
29550         simply fnmatch.
29551
29552         Module exclude.
29553         * m4/exclude.m4: New file.
29554
29555         Module human.
29556         * m4/human.m4: New file.
29557
29558         Module acl.
29559         * m4/acl.m4: Nop.
29560
29561         Module backupfile.
29562         * m4/backupfile.m4: New file.
29563         * m4/d-ino.m4: Indentation.
29564
29565         Module fsusage.
29566         * m4/fsusage.m4 (gl_FSUSAGE): New macro.
29567         (jm_STATFS_TRUNCATES): New macro, from coreutils-4.5.4/configure.ac.
29568         (gl_PREREQ_FSUSAGE_EXTRA): New macro.
29569
29570         Module dirfd.
29571         * m4/dirfd.m4 (UTILS_FUNC_DIRFD): Invoke some AC_EGREP_CPP
29572         requirements.
29573
29574         Module euidaccess.
29575         * m4/euidaccess.m4: New file.
29576
29577         Module file-type.
29578         * m4/file-type.m4: New file.
29579
29580         Module fileblocks.
29581         * m4/fileblocks.m4: New file.
29582
29583         Module filemode.
29584         * m4/filemode.m4: New file.
29585
29586         Module isdir.
29587         * m4/isdir.m4: New file.
29588
29589         Module lchown.
29590         * m4/lchown.m4 (gl_PREREQ_LCHOWN): New macro.
29591         (jm_FUNC_LCHOWN): Invoke gl_PREREQ_LCHOWN.
29592
29593         Module makepath.
29594         * m4/makepath.m4: New file.
29595
29596         Module modechange.
29597         * m4/modechange.m4: New file.
29598
29599         Module mountlist.
29600         * m4/mountlist.m4: New file.
29601         * m4/ls-mntd-fs.m4 (jm_LIST_MOUNTED_FILESYSTEMS): Use onceonly macros.
29602         Indentation.
29603
29604         Module path-concat.
29605         * m4/path-concat.m4: New file.
29606
29607         Module pathmax.
29608         * m4/pathmax.m4: New file.
29609
29610         Module same.
29611         * m4/same.m4: New file.
29612
29613         Module save-cwd.
29614         * m4/save-cwd.m4: New file.
29615
29616         Module savedir.
29617         * m4/savedir.m4: New file.
29618
29619         Module xgetcwd.
29620         * m4/xgetcwd.m4: New file.
29621         * m4/getcwd.m4 (AC_FUNC_GETCWD_NULL): Use onceonly macros.
29622
29623         Module xreadlink.
29624         * m4/xreadlink.m4: New file.
29625
29626         Module safe-read.
29627         * m4/safe-read.m4: New file.
29628
29629         Module safe-write.
29630         * m4/safe-write.m4: New file.
29631
29632         Module closeout.
29633         * m4/closeout.m4: New file.
29634
29635         Module stdio-safer.
29636         * m4/stdio-safer.m4: New file.
29637
29638         Module getpass.
29639         * m4/getpass.m4: New file.
29640
29641         Module getugroups.
29642         * m4/getugroups.m4: New file.
29643
29644         Module group-member.
29645         * m4/group-member.m4 (gl_PREREQ_GROUP_MEMBER): New macro.
29646         (jm_FUNC_GROUP_MEMBER): Invoke AC_GNU_SOURCE, gl_PREREQ_GROUP_MEMBER.
29647
29648         Module idcache.
29649         * m4/idcache.m4: New file.
29650
29651         Module userspec.
29652         * m4/userspec.m4: New file.
29653
29654         Module gettime.
29655         * m4/clock_time.m4: New file.
29656         * m4/gettime.m4: New file.
29657
29658         Module settime.
29659         * m4/settime.m4: New file.
29660
29661         Module posixtm.
29662         * m4/posixtm.m4: New file.
29663
29664         Module gethostname.
29665         * m4/gethostname.m4: New file.
29666
29667         Module canon-host.
29668         * m4/canon-host.m4: New file.
29669
29670         Module gettext.
29671         * m4/codeset.m4: New file, from gettext-0.11.5.
29672         * m4/gettext.m4: New file, from gettext-0.11.5.
29673         * m4/glibc21.m4: New file, from gettext-0.11.5.
29674         * m4/iconv.m4: New file, from gettext-0.11.5.
29675         * m4/intdiv0.m4: New file, from gettext-0.11.5.
29676         * m4/inttypes-pri.m4: New file, from gettext-0.11.5.
29677         * m4/inttypes.m4: New file, from gettext-0.11.5.
29678         * m4/inttypes_h.m4: New file, from gettext-0.11.5 with modifications.
29679         * m4/isc-posix.m4: New file, from gettext-0.11.5.
29680         * m4/lcmessage.m4: New file, from gettext-0.11.5.
29681         * m4/lib-ld.m4: New file, from gettext-0.11.5.
29682         * m4/lib-link.m4: New file, from gettext-0.11.5.
29683         * m4/lib-prefix.m4: New file, from gettext-0.11.5.
29684         * m4/progtest.m4: New file, from gettext-0.11.5.
29685         * m4/stdint_h.m4: New file, from gettext-0.11.5 with modifications.
29686         * m4/uintmax_t.m4: New file, from gettext-0.11.5 with modifications.
29687         * m4/ulonglong.m4: New file, from gettext-0.11.5 with modifications.
29688
29689         Module localcharset.
29690         * m4/localcharset.m4: New file.
29691
29692         Module hard-locale.
29693         * m4/hard-locale.m4: New file.
29694
29695         Module mbswidth.
29696         * m4/mbswidth.m4 (gl_MBSWIDTH): Renamed from jm_PREREQ_MBSWIDTH. Use
29697         onceonly macros.
29698         * m4/mbrtowc.m4: Add comment.
29699
29700         Module memcasecmp.
29701         * m4/memcasecmp.m4: New file.
29702
29703         Module memcoll.
29704         * m4/memcoll.m4: New file.
29705
29706         Module unicodeio.
29707         * m4/unicodeio.m4: New file.
29708
29709         Module rpmatch.
29710         * m4/rpmatch.m4: New file.
29711
29712         Module yesno.
29713         * m4/yesno.m4: New file.
29714
29715         Module exitfail.
29716         * m4/exitfail.m4: New file.
29717
29718         Module c-stack.
29719         * m4/c-stack.m4 (gl_C_STACK): New macro.
29720         (jm_PREREQ_C_STACK): Check for <sys/time.h>. Use onceonly macros.
29721
29722         Module error.
29723         * m4/error.m4 (gl_ERROR): New macro.
29724         (jm_PREREQ_ERROR): Use onceonly macros.
29725
29726         Module fatal.
29727         * m4/fatal.m4: New file.
29728
29729         Module getloadavg.
29730         * m4/getloadavg.m4 (AC_FUNC_GETLOADAVG): Use onceonly macros.
29731         (gl_FUNC_GETLOADAVG, gl_PREREQ_GETLOADAVG): New macros.
29732
29733         Module getpagesize.
29734         * m4/getpagesize.m4: New file.
29735
29736         Module getusershell.
29737         * m4/getusershell.m4: New file.
29738
29739         Module physmem.
29740         * m4/physmem.m4: New file.
29741
29742         Module posixver.
29743         * m4/posixver.m4: New file.
29744
29745         Module quotearg.
29746         * m4/quotearg.m4: New file.
29747
29748         Module quote.
29749         * m4/quote.m4: New file.
29750
29751         Module readutmp.
29752         * m4/readutmp.m4: New file, based on jm_PREREQ_READUTMP from prereq.m4.
29753
29754         Module sig2str.
29755         * m4/sig2str.m4: New file.
29756
29757         Other.
29758         * m4/longlong.m4 (jm_AC_TYPE_UNSIGNED_LONG_LONG): Remove, moved to
29759         ulonglong.m4.
29760         * m4/intmax_t.m4: New file.
29761         * m4/d-type.m4: Indentation.
29762         * m4/jm-macros.m4: Update.
29763         * m4/prereq.m4 (jm_PREREQ): Update.
29764         (jm_PREREQ_ADDEXT): Remove, obsoleted by backupfile.m4.
29765         (jm_PREREQ_CANON_HOST): Remove, obsoleted by canon-host.m4.
29766         (jm_PREREQ_DIRNAME): Remove, obsoleted by dirname.m4.
29767         (jm_PREREQ_EXCLUDE): Remove, obsoleted by exclude.m4.
29768         (jm_PREREQ_GETPAGESIZE): Remove, obsoleted by getpagesize.m4.
29769         (jm_PREREQ_HARD_LOCALE): Remove, obsoleted by hard-locale.m4.
29770         (jm_PREREQ_HASH): Remove, obsoleted by hash.m4.
29771         (jm_PREREQ_HUMAN): Remove, obsoleted by human.m4.
29772         (jm_PREREQ_MEMCHR): Remove, obsoleted by memchr.m4.
29773         (jm_PREREQ_PHYSMEM): Remove, obsoleted by physmem.m4.
29774         (jm_PREREQ_POSIXVER): Remove, obsoleted by posixver.m4.
29775         (jm_PREREQ_QUOTEARG): Remove, obsoleted by quotearg.m4.
29776         (jm_PREREQ_READUTMP): Remove, obsoleted by readutmp.m4.
29777         (jm_PREREQ_REGEX): Remove, obsoleted by regex.m4.
29778         (jm_PREREQ_STRNLEN): Remove, obsoleted by strnlen.m4.
29779         (jm_PREREQ_TEMPNAME): Remove, obsoleted by mkstemp.m4.
29780         (jm_PREREQ_XGETCWD): Remove, obsoleted by xgetcwd.m4.
29781         (jm_PREREQ_XREADLINK): Remove, obsoleted by xreadlink.m4.
29782         * m4/readdir.m4 (jm_FUNC_READDIR): Use onceonly macros.
29783
29784 2002-12-24  Bruno Haible  <bruno@clisp.org>
29785
29786         * MODULES.txt: Update according to m4/ changes.
29787
29788         Module gettext.
29789         * config.rpath: New file, from gettext-0.11.5.
29790
29791         * modules/*: New module descriptions.
29792         * gnulib-tool: New file.
29793         * MODULES.html.sh: New file.
29794
29795 2002-12-21  Karl Berry  <karl@gnu.org>
29796
29797         * doc/fdl.texi: update to version 1.2.
29798
29799 2002-12-19  Karl Berry  <karl@gnu.org>
29800
29801         * config/config.guess: update from prep.
29802
29803 2002-12-18  Bruno Haible  <bruno@clisp.org>
29804
29805         * m4/strftime.m4 (_jm_STRFTIME_PREREQS): Don't test for localtime_r.
29806         * m4/jm-mktime.m4 (jm_FUNC_MKTIME): Likewise.
29807
29808 2002-12-17  Bruno Haible  <bruno@clisp.org>
29809
29810         * m4/mbswidth.m4 (jm_PREREQ_MBSWIDTH): Remove checks for limits.h,
29811         stdlib.h, string.h.
29812
29813 2002-12-17  Bruno Haible  <bruno@clisp.org>
29814
29815         * lib/canon-host.c (strdup): Remove unused declaration.
29816
29817         * lib/fsusage.c: Include full_read.h.
29818         (get_fs_usage): Use full_read instead of safe_read.
29819
29820         * lib/utime.c (utime_null): Use SAFE_READ_ERROR.
29821
29822 2002-12-12  Karl Berry  <karl@gnu.org>
29823
29824         * config/config.guess: update from prep.
29825
29826 2002-12-11  Bruno Haible  <bruno@clisp.org>
29827
29828         * m4/setenv.m4: New file, from gettext-0.11.5.
29829
29830 2002-12-11  Bruno Haible  <bruno@clisp.org>
29831
29832         * lib/setenv.h: Rewritten to cope with systems that have setenv() but
29833         not unsetenv().
29834         * lib/setenv.c, unsetenv.c: Taken from glibc-2.2.4 with the following
29835         modifications:
29836
29837         2002-12-11  Bruno Haible  <bruno@clisp.org>
29838
29839                 * setenv.c (alloca): Fall back to malloc.
29840                 (freea): New macro.
29841                 (setenv): Use freea() to free memory allocated with alloca().
29842
29843         2002-11-13  Bruno Haible  <bruno@clisp.org>
29844
29845                 * setenv.c (compar_fn_t, __add_to_environ, setenv): Use ANSI C
29846                 function declarations.
29847                 * unsetenv.c (unsetenv): Likewise.
29848
29849         2002-03-04  Bruno Haible  <bruno@clisp.org>
29850
29851                 Portability to AIX 4.3.3.
29852                 * unsetenv.c: New file, extracted from setenv.c.
29853                 * setenv.c: Move the unsetenv() function to unsetenv.c.
29854
29855         2001-12-20  Bruno Haible  <bruno@clisp.org>
29856
29857                 * setenv.c (__add_to_environ): Don't call realloc(NULL,...),
29858                 use malloc instead. For SunOS 4.
29859
29860         2001-12-11  Bruno Haible  <bruno@clisp.org>
29861
29862                 * setenv.c: Declare alloca.
29863                 (compar_fn_t): New typedef.
29864                 (KNOWN_VALUE, STORE_VALUE): Use it.
29865
29866         * lib/Makefile.am (libfetish_a_SOURCES): Add setenv.c, unsetenv.c,
29867         setenv.h.
29868
29869 2002-12-10  Paul Eggert  <eggert@twinsun.com>
29870
29871         Port exclude.c and exclude.h to more non-GNU systems, e.g. Solaris 7.
29872         * lib/exclude.h (EXCLUDE_ANCHORED, EXCLUDE_INCLUDE, EXCLUDE_WILDCARDS):
29873         Choose values that are less likely to collide with system fnmatch
29874         options.
29875         * lib/exclude.c (FNM_CASEFOLD, FNM_LEADING_DIR): Define to 0 if not
29876         defined (e.g., a pure POSIX system).
29877         (EXCLUDE_macros_do_not_collide_with_FNM_macros): Use FNM_PATHNAME
29878         instead of FNM_FILE_NAME, for compatibility with pure POSIX sytems.
29879
29880 2002-12-06  Paul Eggert  <eggert@twinsun.com>
29881
29882         Undo the 2001-07-02 change for jm-glibc-io, as it was too much of
29883         a pain in practice to deal with generated m4 files.  This change
29884         goes together with the 2002-12-04 unlocked-io.h change in ../lib.
29885
29886         * m4/Makefile.am.in (Makefile.am): Don't mention jm-glibc-io.m4n
29887         and jm-glibc-io.m4, as they are no longer a special case.
29888         * m4/jm-glibc-io.m4: Rename from jm-glibc-io.m4n, and remove the
29889         kludge and the auto-generation stuff.  Check only whether the
29890         functions are declared, not whether they exist, since older hosts
29891         that don't declare the functions can't use the optimization anyway.
29892
29893 2002-12-06  Jim Meyering  <jim@meyering.net>
29894
29895         * lib/error.c: Be consistent: change `#ifndef _LIBC' to `#if !_LIBC'.
29896
29897         Merge in changes from libc's misc/error.c, in preparation
29898         for the merge of gnulib's changes back into libc.
29899
29900         * lib/error.c (_): Define only if not already defined.
29901         Move definition to follow all #include directives.
29902         Include unlocked-io.h only if !_LIBC.
29903         [_LIBC]: Include <libio/libioP.h>.
29904         [USE_IN_LIBIO]: Include <libio/iolibio.h>
29905         (fflush): Tweak definition to use INTUSE.
29906         (putc): Define.
29907
29908 2002-12-05  Paul Eggert  <eggert@twinsun.com>
29909
29910         * lib/alloca.c [defined emacs]: Include "lisp.h".
29911         (xalloc_die) [defined emacs]: New macro.
29912         (free) [defined emacs && defined EMACS_FREE]: Define to EMACS_FREE.
29913         [! defined emacs]: Include <xalloc.h>.
29914         (POINTER_TYPE) [!defined POINTER_TYPE]: New macro.
29915         (pointer): Typedef to POINTER_TYPE *.
29916         (malloc): Remove decl; we now always use xmalloc.
29917         (alloca): Use old-style definition, since Emacs needs this.
29918         Check for arithmetic overflow when computing combined size.
29919
29920 2002-12-04  Paul Eggert  <eggert@twinsun.com>
29921
29922         Do not generate unlocked-io.h automatically, since it's easier to
29923         maintain it by hand.
29924
29925         * lib/unlocked-io.h: New file, from GNU diffutils,
29926         but with proper copyright notice and attribution.
29927         * lib/gen-uio: Remove.
29928         * lib/Makefile.am: Add copyright notice.
29929         (libfetish_a_SOURCES): Add unlocked-io.h.
29930         (BUILT_SOURCES, all-local): Remove unlocked-io.h.
29931         (DISTCLEANFILES, io_functions): Remove macros.
29932         (EXTRA_DIST): Remove gen_uio.
29933         (unlocked-io.h): Remove rule.
29934
29935 2002-12-04  Jim Meyering  <jim@meyering.net>
29936
29937         Reflect the fact that stat.c and lstat.c are no longer generated.
29938         * lib/Makefile.am (BUILT_SOURCES): Remove stat.c and lstat.c.
29939         (DISTCLEANFILES): Likewise.
29940         (EXTRA_DIST): Likewise.
29941         (all_local): Don't depend on stat.c or lstat.c.
29942         (stat.c, lstat.c): Remove rules.
29943         (EXTRA_DIST): Remove xstat.in.
29944
29945         * lib/xstat.in: Remove file.  Contents moved into stat.c.
29946         * lib/stat.c: New file.  Contents mostly from xstat.in.
29947         * lib/stat.c: Rework so that it may serve to define rpl_lstat, too.
29948         * lib/lstat.c: New file. Simply #define LSTAT and include stat.c.
29949
29950         * lib/safe-read.c: Rework so that it may serve to define safe_write,
29951         too.
29952         * lib/safe-write.c: Simply #define SAFE_WRITE and include safe-read.c.
29953
29954 2002-12-03  Jim Meyering  <jim@meyering.net>
29955
29956         * lib/safe-read.c, safe-write.c: Change variable names and comments,
29957         but not semantics, to minimize the differences between these two files.
29958         (safe_read): Change comment to mention SAFE_READ_ERROR.
29959
29960         * lib/safe-read.c (IS_EINTR): Define.
29961         (safe_read): Use IS_EINTR in place of in-function cpp directives.
29962
29963 2002-12-02  Jim Meyering  <jim@meyering.net>
29964
29965         * lib/safe-read.c (EINTR): Define.
29966         (CHAR_BIT, TYPE_SIGNED, TYPE_MINIMUM, TYPE_MAXIMUM): Define.
29967         (INT_MAX): Provide fallback.
29968         (safe_read): Rewrite to iterate IFF the read fails with EINTR.
29969
29970         * lib/safe-read.h (SAFE_READ_ERROR): Define.
29971
29972 2002-12-02  Bruno Haible  <bruno@clisp.org>
29973
29974         * lib/safe-write.c (CHAR_BIT, TYPE_SIGNED, TYPE_MINIMUM, TYPE_MAXIMUM):
29975         Define, taken from safe-read.c.
29976         (INT_MAX): Provide fallback.
29977         (safe_write): Rewrite to iterate IFF the write fails with EINTR.
29978         * lib/safe-write.h (SAFE_WRITE_ERROR): Define.
29979
29980         * lib/safe-read.c (EINTR): Remove definition.
29981         (safe_read): Don't use EINTR if it is absent.
29982
29983 2002-12-01  Jim Meyering  <jim@meyering.net>
29984
29985         * lib/safe-read.c: (safe_read): Also exit the loop when read returns
29986         zero.
29987         (CHAR_BIT, TYPE_SIGNED, TYPE_MINIMUM, TYPE_MAXIMUM, INT_MAX): Define.
29988
29989 2002-11-27  Paul Eggert  <eggert@twinsun.com>
29990
29991         * lib/hash.c (hash_lookup, hash_get_first, hash_get_next,
29992         hash_find_entry, hash_rehash): Replace `if (limit <= value) abort ();'
29993         with `if (! (value < limit)) abort ();', for readability.
29994
29995 2002-11-26  Karl Berry  <karl@gnu.org>
29996
29997         * lib/strdup.c: copy from libc again, with jim's ok.
29998         * lib/.cppi-disable: re-add strdup.c
29999
30000 2002-11-25  Karl Berry  <karl@gnu.org>
30001
30002         * lib/strtoll.c: copy from libc, meaning we now #include <strtol.c>
30003         instead of "strtol.c".
30004
30005 2002-11-25  Karl Berry  <karl@gnu.org>
30006
30007         * config/install-sh: update from automake for variable quoting, $0 in
30008         error msgs, etc.
30009
30010         * config/srclist.txt ($LIBCSRC/time/mktime.c lib gpl): new entry.
30011         * config/srclist.txt ($LIBCSRC/sysdeps/generic/strtoll.c lib gpl): new
30012         entry.
30013
30014 2002-11-25  Jim Meyering  <jim@meyering.net>
30015
30016         * lib/mktime.c: Sync from libc, now that it has the latest fix.
30017
30018 2002-11-24  Karl Berry  <karl@gnu.org>
30019
30020         * lib/error.c, getopt.c, getopt.h, getopt1.c, obstack.c, regex.c,
30021         regex.h, strdup.c, strtoll.c, tempname.c: change license to gpl.
30022
30023 2002-11-24  Jim Meyering  <jim@meyering.net>
30024
30025         Update from coreutils:
30026
30027         * lib/mktime.c: Merge in changes from libc.
30028
30029         Avoid a link-time failure on some Linux systems.
30030         * lib/mktime.c (STATIC): Define to be empty (_LIBC) or `static'
30031         (otherwise).
30032         (__mon_yday): Declare with the STATIC attribute.
30033         (__mktime_internal): Likewise.
30034         Based on a report from Greg Schafer.
30035
30036 2002-11-23  Jim Meyering  <jim@meyering.net>
30037
30038         * lib/sig2str.c (str2signum, sig2str): Avoid a warning from gcc:
30039         Use `unsigned', not `int', as type of index.
30040
30041         * lib/xstat.in [@BEGIN_LSTAT_ONLY@]: Include <string.h>.
30042
30043         * lib/fsusage.c: Remove unneeded parentheses around operands of
30044         `defined'.
30045
30046 2002-11-22  Paul Eggert  <eggert@twinsun.com>
30047
30048         * lib/quotearg.h: Allow multiple inclusion by surrounding with
30049         "#ifndef QUOTEARG_H_".  Include <stddef.h>, for size_t,
30050         so that we can be included first.
30051         (PARAMS): Remove; we now assume C89 or later.  All uses removed.
30052         * lib/quotearg.c: Include quotearg.h immediately after config.h.
30053         No need to include stddef.h or sys/types.h any more.
30054         Surround local include files with "", not "<>".
30055         Assume HAVE_LIMITS_H unconditionally, as we assume C89.
30056         Similarly, assume HAVE_C_BACKSLASH_A, CHAR_BIT, UCHAR_MAX, UINT_MAX,
30057         HAVE_STDLIB_H, HAVE_STRING_H, STDC_HEADERS.
30058         (HAVE_MBSINIT): Undef if !HAVE_MBRTOWC.
30059         (mbsinit): Define to 1 if !defined mbsinit && !HAVE_MBSINIT.
30060         (ISPRINT): Remove; no longer needed now that we assume C89.
30061
30062         (clone_quoting_options, quotearg_buffer, quotearg_n_options):
30063         Preserve errno.
30064
30065         (quotearg_buffer_restyled, quotearg_n, quotearg_n_style,
30066         quotearg_char): Use SIZE_MAX rather than
30067         (size_t) -1 when we are talking about "infinity".
30068
30069         (quotearg_buffer_restyled): Fix bug when quoting trigraphs.
30070
30071 2002-11-22  Paul Eggert  <eggert@twinsun.com>
30072
30073         * lib/hash.c: Avoid use of <assert.h>, as the GNU Coding Standards
30074         hint that one should use `if (! x) abort ();' rather than `assert
30075         (x);', and anyway it's one less thing to worry about configuring.
30076         (hash_lookup, hash_get_first, hash_get_next, hash_find_entry,
30077         hash_rehash, hash_insert): Use abort rather than assert.
30078
30079 2002-11-22  Bruno Haible  <bruno@clisp.org>
30080
30081         * lib/safe-read.h: Assume C89. Add comments.
30082         (safe_read): Change return type to size_t.
30083         * lib/safe-read.c (safe_read): Change return type to size_t. Handle
30084         byte counts > SSIZE_MAX correctly.
30085         * lib/safe-write.h: New file.
30086         * lib/safe-write.c: New file.
30087         * lib/full-read.h: New file.
30088         * lib/full-read.c: New file.
30089         * lib/full-write.h: Assume C89. Add comments.
30090         * lib/full-write.c: Include safe-write.h.
30091         (full_write): Rewritten to use safe_write.
30092         Suggested by Jim Meyering and Paul Eggert.
30093
30094 2002-11-21  Jim Meyering  <jim@meyering.net>
30095
30096         * lib/strdup.c (strdup): Tweak comment and initial #if/#include.
30097
30098         Merge in changes from the coreutils.
30099
30100         2002-09-25  Paul Eggert  <eggert@twinsun.com>
30101         * lib/fsusage.c [! HAVE_INTTYPES_H && HAVE_STDINT_H] Include
30102         <stdint.h>.
30103         (UINTMAX_MAX) [!defined UINTMAX_MAX]: New macro.
30104         (PROPAGATE_ALL_ONES): Work even if X is unsigned and narrower than
30105         int.  Work more efficiently if X is the same width as uintmax_t.
30106         Do not compare X to -1, to avoid bogus compiler warning.
30107         (get_fs_usage): (uintmax_t) -1 -> UINTMAX_MAX to avoid a cast.
30108         Don't assume that f_frsize and f_bsize are the same type.
30109
30110         * lib/mountlist.c: #undef MNT_IGNORE before defining it, to avoid
30111         warning on FreeBSD.
30112
30113         * lib/makepath.c (make_path): Restore umask *before* creating the final
30114         component.
30115         (make_path): Minor reformatting.
30116
30117         * lib/xmalloc.c: Adjust to work with new autoconf macros,
30118         AC_FUNC_MALLOC and AC_FUNC_REALLOC: test #ifndef
30119         HAVE_MALLOC/HAVE_REALLOC.
30120
30121         * lib/mountlist.h (ME_DUMMY): Don't count entries of type `auto' as
30122         dummy ones.  At least on GNU/Linux systems, `auto' means something
30123         else.
30124         From Michael Stone.
30125
30126 2002-11-21  Bruno Haible  <bruno@clisp.org>
30127
30128         Remove case insensitive option matching.
30129         * lib/argmatch.h (argcasematch): Remove declaration.
30130         (ARGCASEMATCH): Remove macro.
30131         (__xargmatch_internal): Remove case_sensitive argument.
30132         (XARGMATCH): Update.
30133         (XARGCASEMATCH): Remove macro.
30134         * lib/argmatch.c (argmatch): Renamed from __argmatch_internal. Remove
30135         case_sensitive argument.
30136         (argcasematch): Remove function.
30137         (__xargmatch_internal): Remove case_sensitive argument.
30138         (main): Use XARGMATCH instead of XARGCASEMATCH.
30139
30140         * lib/xmalloc.c: Change compile-time error message. Add comment about
30141         required autoconf version.
30142
30143 2002-11-20  Paul Eggert  <eggert@twinsun.com>
30144
30145         Merge argmatch cleanups from Bison.  Assume C89.
30146
30147         * lib/argmatch.c: Include config.h here, not in argmatch.h.
30148         Include stdlib.h, for EXIT_FAILURE.
30149         Always include <string.h>, since we assume C89.
30150         (EXIT_FAILURE): Remove pre-C89 bug workaround.
30151         * lib/argmatch.h: Do not include <config.h> or <sys/types.h>.
30152         Include <stddef.h> instead, since it's all we need for size_t.
30153         (PARAMS): Remove.  All uses removed.
30154         (ARRAY_CARDINALITY): Do not bother to #undef.
30155         (ARRAY_CARDINALITY, ARGMATCH, ARGCASEMATCH, invalid_arg,
30156         ARGMATCH_VALID, XARGMATCH, XARGCASEMATCH):
30157         Remove unnecessary parentheses.
30158         (ARGMATCH_VALID, XARGMATCH, XARGCASEMATCH):
30159         Insert necessary parentheses.
30160         (ARGMATCH_CONSTRAINT, ARGMATCH_VERIFY): New macros.
30161         (ARGMATCH_ASSERT): Use ARGMATCH_CONSTRAINT.
30162
30163 2002-11-19  Bruno Haible  <bruno@clisp.org>
30164
30165         * lib/mbswidth.c: Include mbswidth.h right at the beginning.
30166         * lib/mbswidth.h: Include <stddef.h>, for size_t.
30167
30168         * lib/mbswidth.h (PARAMS): Remove macro.
30169         (mbswidth, mbsnwidth): Use ANSI C function declarations.
30170         * lib/mbswidth.c (mbswidth, mbsnwidth): Likewise.
30171
30172         * lib/gcd.h (PARAMS): Remove macro.
30173         (gcd): Use ANSI C function declarations.
30174         * lib/gcd.c (gcd): Likewise.
30175
30176 2002-11-15  Bruno Haible  <bruno@clisp.org>
30177
30178         * lib/strcspn.c: Include <stddef.h>.
30179         (strcspn): Use ANSI C function declaration. Change return type to
30180         size_t. Use NULL.
30181         * lib/strpbrk.c: Minimize diffs to glibc. Include <stddef.h>.
30182         (strpbrk): Use NULL.
30183         * lib/strpbrk.h (PARAMS): Remove macro.
30184         (strpbrk): Use ANSI C function declaration.
30185         * lib/strstr.c: Don't include <sys/types.h>.
30186         * lib/strstr.h (PARAMS): Remove macro.
30187         (strstr): Use ANSI C function declarations.
30188
30189 2002-11-14  Karl Berry  <karl@gnu.org>
30190
30191         * config/mkinstalldirs: `do' on separate line, instead of
30192         `for var; do'.
30193
30194 2002-11-06  Bruno Haible  <bruno@clisp.org>
30195
30196         * lib/gcd.h (gcd): Change argument type to 'unsigned long'.
30197         * lib/gcd.c (gcd): Likewise.
30198
30199 2002-11-05  Bruno Haible  <bruno@clisp.org>
30200
30201         * lib/gcd.h: New file, from gettext-0.11.5.
30202         * lib/gcd.c: New file, from gettext-0.11.5.
30203
30204 2002-11-05  Bruno Haible  <bruno@clisp.org>
30205
30206         * lib/error.c [!_LIBC]: Include gettext.h instead of <libintl.h>.
30207         * lib/getopt.c [!_LIBC]: Include gettext.h instead of <libintl.h>.
30208         * lib/obstack.c [!_LIBC]: Include gettext.h instead of <libintl.h>.
30209         * lib/regex.c [!_LIBC]: Include gettext.h instead of <libintl.h>.
30210
30211         * lib/argmatch.c: Include gettext.h instead of <locale.h> and
30212         <libintl.h>.
30213         * lib/makepath.c: Include gettext.h instead of <locale.h> and
30214         <libintl.h>.
30215
30216         * lib/closeout.c: Include gettext.h instead of <libintl.h>.
30217         * lib/human.c: Include gettext.h instead of <libintl.h>.
30218         * lib/quotearg.c: Include gettext.h instead of <libintl.h>.
30219         * lib/rpmatch.c: Include gettext.h instead of <libintl.h>.
30220         * lib/unicodeio.c: Include gettext.h instead of <libintl.h>.
30221         * lib/userspec.c: Include gettext.h instead of <libintl.h>.
30222         * lib/version-etc.c: Include gettext.h instead of <libintl.h>.
30223         * lib/xmalloc.c: Include gettext.h instead of <libintl.h>.
30224         (textdomain): Remove definition.
30225         * lib/xmemcoll.c: Include gettext.h instead of <libintl.h>.
30226
30227         * lib/long-options.c: Remove include of <libintl.h> and definition of
30228         _.
30229         * lib/same.c: Remove include of <libintl.h> and definition of _.
30230
30231 2002-11-04  Owen Taylor  <otaylor@redhat.com>
30232
30233         * lib/config.charset: A few additions for Solaris.
30234
30235 2002-11-04  Bruno Haible  <haible@clisp.cons.org>
30236
30237         Make it possible to build libcharset with CC=gcc CFLAGS="-x c++".
30238         * lib/localcharset.c (locale_charset): Declare as extern "C".
30239
30240 2002-11-04  Bruno Haible  <haible@clisp.cons.org>
30241
30242         * lib/config.charset: msdos in uk_UA uses CP1125.
30243
30244 2002-11-04  Bruno Haible  <bruno@clisp.org>
30245
30246         * lib/stpcpy.h: New file, from GNU gettext-0.11.5.
30247         * lib/strcase.h: New file, from GNU gettext-0.11.5.
30248         * lib/strpbrk.h: New file, from GNU gettext-0.11.5.
30249         * lib/strstr.h: New file, from GNU gettext-0.11.5.
30250         * lib/xgetcwd.h: New file, from GNU gettext-0.11.5.
30251
30252 2002-11-04  Bruno Haible  <bruno@clisp.org>
30253
30254         * lib/localcharset.c (locale_charset): Don't return an empty string.
30255
30256 2002-11-04  Bruno Haible  <bruno@clisp.org>
30257
30258         * lib/localcharset.c (get_charset_aliases): Add more Windows specific
30259         aliases.
30260
30261 2002-11-04  Bruno Haible  <bruno@clisp.org>
30262
30263         * lib/config.charset: Update for newest glibc. Add canonical names
30264         ISO-8859-14, KOI8-T, TCVN5712-1, GEORGIAN-PS.
30265
30266 2002-11-04  Bruno Haible  <bruno@clisp.org>
30267
30268         * lib/config.charset: Add support for NetBSD.
30269
30270 2002-11-04  Bruno Haible  <bruno@clisp.org>
30271
30272         * lib/config.charset [msdosdjgpp]: For Russian, use CP866.
30273
30274 2002-11-01  Bruno Haible  <bruno@clisp.org>
30275
30276         * configure.in: Add AC_CONFIG_AUX_DIR call.
30277         (AC_OUTPUT): Add m4/Makefile, lib/Makefile. Remove doc/Makefile,
30278         test/Makefile.
30279         * Makefile.in (subdirs): Add m4, lib. Remove doc, test.
30280
30281 2002-09-28  Karl Berry  <karl@gnu.org>
30282
30283         * config/srclist.txt: can't copy install-sh/mkinstalldirs from
30284         installed automake until the next release, since changes have been
30285         made.
30286
30287 2002-09-25  Karl Berry  <karl@gnu.org>
30288
30289         * lib/strdup.c: copy from libc/string (via ../config/srclist*).
30290         * lib/getopt*: copy from libc/posix.
30291         * lib/gettext.h: copy from gettext.
30292         * lib/.cppi-disable: add strdup.c, gettext.h.
30293
30294 2002-09-25  Karl Berry  <karl@gnu.org>
30295
30296         * config/srclist.txt: enable gettext.h check.
30297         * config/config.{guess,sub}: update from prep.
30298         * config/depcomp, install-sh, mdate-sh, missing, mkinstalldirs: update
30299                 from automake 1.6.3.
30300         See srclist*.
30301
30302 2002-08-23  Stefan Monnier  <monnier@cs.yale.edu>
30303
30304         * regex.c (PATFETCH): Remove the translating fetch.
30305         (PATFETCH_RAW): Rename to PATFETCH.
30306         (set_image_of_range): New fun.
30307         (SET_RANGE_TABLE_WORK_AREA): Use it.
30308         (regex_compile): Don't translate the pattern chars so eagerly.
30309         Only do it when inserting an `exactn' bytecode or when handling
30310         a char-range.
30311         (mutually_exclusive_p): Avoid empty statement.
30312
30313 2002-07-06  Jim Meyering  <meyering@lucent.com>
30314
30315         * m4/README: Don't mention Makefile.am.in.
30316         Outline how I've tested changes to .m4 files.  Yep, it's a pain.
30317
30318 2002-07-01  Jim Meyering  <meyering@lucent.com>
30319
30320         * lib/c-stack.c: Include sys/time.h.
30321         From Volker Borchert.
30322
30323 2002-06-26  Paul Eggert  <eggert@twinsun.com>
30324
30325         * m4/fnmatch.m4 (_AC_LIBOBJ_FNMATCH): Check for btowc.
30326
30327 2002-06-26  Paul Eggert  <eggert@twinsun.com>
30328
30329         * lib/fnmatch.c, fnmatch_loop.c (WIDE_CHAR_SUPPORT):
30330         New macro.  Use it uniformly instead of
30331         (defined HAVE_WCTYPE_H && defined HAVE_WCHAR_H).
30332         It also uses HAVE_BTOWC, to fix a porting bug on Solaris 2.5.1
30333         reported by Vin Shelton.
30334
30335 2002-06-22  Paul Eggert  <eggert@twinsun.com>
30336
30337         * lib/c-stack.h (segv_handler, c_stack_action) [! defined SA_SIGINFO]:
30338         Do not assume SA_SIGINFO behavior.
30339         Bug reported by Jim Meyering on NetBSD 1.5.2.
30340
30341 2002-06-22  Jim Meyering  <meyering@lucent.com>
30342
30343         * m4/c-stack.m4: New file, from diffutils-2.8.2.
30344         * m4/prereq.m4 (jm_PREREQ): Add jm_PREREQ_C_STACK.
30345
30346         * m4/jm-macros.m4 (jm_CHECK_ALL_TYPES): Don't require AC__GNU_SOURCE,
30347         now that configure.ac uses AC_GNU_SOURCE.
30348         (jm_MACROS): Rename: jm_FUNC_FNMATCH to AC_FUNC_FNMATCH_GNU.
30349         * m4/prereq.m4 (jm_PREREQ_EXCLUDE): Likewise, wrt jm_FUNC_FNMATCH.
30350
30351         Update to latest tools.  Suggestions from Paul Eggert.
30352         * m4/stdbool.m4: New file, from diffutils-2.8.2.
30353         * m4/gnu-source.m4: Update from diffutils-2.8.2.
30354         * m4/fnmatch.m4: Likewise.
30355         * m4/prereq.m4: Change each use of AC_CHECK_HEADERS(stdbool.h)
30356         to AC_HEADER_STDBOOL
30357
30358 2002-06-22  Jim Meyering  <meyering@lucent.com>
30359
30360         * lib/fnmatch.c (ISASCII, ISPRINT): Undefine, to avoid warning about
30361         redefinition due to Solaris 2.6's definition in /usr/include/sys/euc.h.
30362
30363 2002-06-22  Jim Meyering  <meyering@lucent.com>
30364
30365         * lib/c-stack.c, lib/c-stack.h: New files, from diffutils-2.8.2.
30366
30367         * lib/exitfail.c, exitfail.h: Likewise.
30368         * lib/Makefile.am (libfetish_a_SOURCES): Add exitfail.c and exitfail.h.
30369
30370         * lib/Makefile.am (libfetish_a_SOURCES): Add fnmatch_.h in place
30371         of fnmatch.h.
30372         (EXTRA_DIST): Add fnmatch_loop.c.
30373         (libfetish_a_SOURCES): Add c-stack.c and c-stack.h.
30374
30375         * lib/fnmatch_loop.c: New file, from diffutils-2.8.2.
30376         * lib/fnmatch.c: Update from diffutils-2.8.2.
30377         * lib/fnmatch_.h: New file.  From diffutils-2.8.2.
30378         * lib/fnmatch.h: Remove file.
30379
30380 2002-06-21  Jim Meyering  <meyering@lucent.com>
30381
30382         * m4/c-bs-a.m4: Add comment, from diffutils-2.8.2.
30383         * m4/mbrtowc.m4: Likewise.
30384
30385         * m4/mbstate_t.m4: Update from diffutils-2.8.2.
30386         * m4/mbswidth.m4: Reflect name change:
30387         s/AC_MBSTATE_T/AC_TYPE_MBSTATE_T.
30388         * m4/prereq.m4 (jm_PREREQ_QUOTEARG): Likewise.
30389
30390         * m4/lib-link.m4: Update from gettext-0.11.2.
30391         * m4/gettext.m4: Likewise.
30392
30393         * m4/jm-macros.m4 (jm_CHECK_ALL_HEADERS): Check for hurd.h.
30394         From Alfred M. Szmidt.
30395
30396 2002-06-18  Paul Eggert  <eggert@twinsun.com>
30397
30398         * lib/file-type.h: Report an error if neither S_ISREG nor
30399         S_IFREG is defined, instead of using a test specific to glibc
30400         2.2.  This should be safe, since POSIX requires S_ISREG and
30401         Unix Version 7 had S_IFREG.  We don't need to check for
30402         <sys/types.h> since we don't use any symbols that it defines.
30403
30404 2002-06-15  Richard Dawe  <richdawe@bigfoot.com>
30405
30406         * lib/Makefile.am (lstat.c, stat.c, .sin.sed): Use t-$@, rather than
30407         $@-t, so that each temporary file name is unique and valid in the first
30408         8 characters, for operation under DOS.
30409
30410 2002-06-15  Paul Eggert  <eggert@twinsun.com>
30411
30412         * m4/jm-macros.m4 (jm_CHECK_ALL_TYPES): Check for st_author.
30413
30414 2002-06-15  Jim Meyering  <meyering@lucent.com>
30415
30416         Work even with DJGPP 2.03, which lacks support for symlinks.
30417         From Richard Dawe.
30418         * lib/xstat.in (S_ISLNK): Define to 0 if neither S_ISLNK nor S_IFLNK
30419         is defined.
30420         * lib/lchown.c (S_ISLNK): Likewise.
30421
30422 2002-06-15  Jim Meyering  <meyering@lucent.com>
30423
30424         * lib/file-type.h (FILE_TYPE_H): Guard entire contents with #ifndef.
30425         For GNU libc 2.2 and newer, ensure that <sys/types.h> and <sys/stat.h>
30426         have been included before this file.
30427
30428 2002-06-14  Jim Meyering  <meyering@lucent.com>
30429
30430         * lib/file-type.h: Use the version from diffutils-2.8.2.
30431         * lib/file-type.c: Likewise.
30432
30433 2002-06-07  Jim Meyering  <meyering@lucent.com>
30434
30435         * m4/prereq.m4 (jm_PREREQ_STAT): Check for sys/param.h and sys/mount.h.
30436         They're needed at least for NetBSD 1.5.2.
30437         ($statxfs_includes): Include those same headers.
30438         ($statxfs_includes): Include sys/vfs.h if available.
30439         ($statxfs_includes): Likewise for sys/statvfs.h.
30440         Check for the following members in both structs statfs and statvfs:
30441         f_basetype, f_type, f_fsid.__val, f_namemax, f_namelen.
30442
30443 2002-06-01  Jim Meyering  <meyering@lucent.com>
30444
30445         * m4/d-type.m4 (jm_CHECK_TYPE_STRUCT_DIRENT_D_TYPE): Rename macro:
30446         s/D_TYPE_IN_DIRENT/HAVE_STRUCT_DIRENT_D_TYPE/.
30447
30448 2002-05-28  Jim Meyering  <meyering@lucent.com>
30449
30450         * m4/readdir.m4 (jm_FUNC_READDIR): Undefine `mkdir', not `rmdir'.
30451         Reported by Volker Borchert.
30452
30453 2002-05-27  Jim Meyering  <meyering@lucent.com>
30454
30455         Fix a problem seen only on nonconforming systems whereby ls.c's
30456         use of localtime, and then of gettimeofday would cause trouble:
30457         the localtime call used to initialize rpl_gettimeofday's save
30458         mechanism would clobber ls's current local time information so
30459         that in any long listing the first file would always be listed
30460         with date 1970-01-01.  Analysis by Volker Borchert.
30461
30462         * lib/gettimeofday.c (localtime): Undefine.
30463         (rpl_localtime): New function.
30464
30465 2002-05-27  Jim Meyering  <meyering@lucent.com>
30466
30467         * m4/gettimeofday.m4 (AC_FUNC_GETTIMEOFDAY_CLOBBER): Also replace
30468         localtime.
30469
30470         * m4/readdir.m4 (jm_FUNC_READDIR): Undefine `rmdir' so we don't try to
30471         use the replacement function; it wouldn't resolve at link time.
30472         Reported by Volker Borchert.
30473
30474 2002-05-22  Jim Meyering  <meyering@lucent.com>
30475
30476         * lib/Makefile.am (libfetish_a_SOURCES): Add file-type.c and
30477         file-type.h.
30478         * lib/file-type.h: New file.
30479         * lib/file-type.c (file_type): New file/function.  Extracted from
30480         diffutils.
30481
30482 2002-04-30  Jim Meyering  <meyering@lucent.com>
30483
30484         * m4/prereq.m4 (jm_PREREQ): Add jm_PREREQ_STAT.
30485
30486 2002-04-29  Paul Eggert  <eggert@twinsun.com>
30487
30488         * m4/prereq.m4 (jm_PREREQ_SIG2STR): Remove; all callers changed.
30489
30490 2002-04-29  Paul Eggert  <eggert@twinsun.com>
30491
30492         * m4/prereq.m4 (jm_PREREQ_HARD_LOCALE): Check for stdlib.h.
30493         Do not check for alloca.h (no longer used) or stdbool.h (was never
30494         used?).  Add AM_C_PROTOTYPES since hard-locale.h uses it.
30495
30496 2002-04-29  Paul Eggert  <eggert@twinsun.com>
30497
30498         * lib/hard-locale.c: Upgrade to version used in GNU Diffutils 2.8.1.
30499
30500 2002-04-29  Jim Meyering  <meyering@lucent.com>
30501
30502         * m4/jm-macros.m4 (jm_MACROS): Remove use of AC_FUNC_STRNLEN.
30503         * m4/prereq.m4: Add jm_PREREQ_STRNLEN.
30504         Use AC_FUNC_STRNLEN here instead.
30505
30506         * m4/jm-macros.m4: Don't AC_REQUIRE([AC_PROG_CC_STDC]).
30507         With autoconf-2.53a, it's part of AC_PROG_CC.
30508
30509 2002-04-28  Paul Eggert  <eggert@twinsun.com>
30510
30511         * m4/jm-macros.m4 (jm_MACROS): Add AC_REPLACE_FUNCS(sig2str).
30512         * m4/prereq.m4 (jm_PREREQ): Add jm_PREREQ_SIG2STR.
30513
30514 2002-04-28  Paul Eggert  <eggert@twinsun.com>
30515
30516         * lib/sig2str.h, lib/sig2str.c: New files.
30517         * lib/Makefile.am (libfetish_a_SOURCES): Add sig2str.h.
30518
30519 2002-04-28  Paul Eggert  <eggert@twinsun.com>
30520
30521         * lib/sig2str.h (SIGNUM_BOUND): Do not use WTERMSIG, to avoid
30522         depending on <sys/wait.h> and WTERMSIG.  Default to 64 instead
30523         of 127, since 64 is the largest conceivable number for ancient
30524         nonstandard hosts.
30525         * lib/sig2str.c: Do not include <sys/wait.h>; no longer needed.
30526
30527 2002-04-28  Jim Meyering  <meyering@lucent.com>
30528
30529         * lib/sig2str.c (WTERMSIG): Remove definition (unused).
30530
30531 2002-04-24  Jim Meyering  <meyering@lucent.com>
30532
30533         * m4/prereq.m4 (jm_PREREQ_HARD_LOCALE): New macro.
30534         (jm_PREREQ): Use it.
30535
30536         * m4/getloadavg.m4: Check for these headers: locale.h unistd.h
30537         mach/mach.h fcntl.h.
30538         Check for this function: setlocale.
30539
30540 2002-04-24  Jim Meyering  <meyering@lucent.com>
30541
30542         * lib/gettext.h: New file, from Gettext.
30543         * lib/Makefile.am (INCLUDES): Remove -I../intl.
30544         (libfetish_a_SOURCES): Add gettext.h.
30545
30546 2002-04-16  Jim Meyering  <meyering@lucent.com>
30547
30548         * m4/prereq.m4 (jm_PREREQ_READUTMP): Also check for these members:
30549         ut_pid, ut_id, ut_exit.
30550
30551 2002-04-16  Jim Meyering  <meyering@lucent.com>
30552
30553         * lib/readutmp.h (UT_TYPE): Remove definition (now in who.c).
30554         (HAVE_STRUCT_XTMP_UT_EXIT, HAVE_STRUCT_XTMP_UT_ID): Define.
30555         (HAVE_STRUCT_XTMP_UT_PID, HAVE_STRUCT_XTMP_UT_TYPE): Define.
30556
30557 2002-04-12  Jim Meyering  <meyering@lucent.com>
30558
30559         * m4/ls-mntd-fs.m4 (checking for getmntinfo function...): Remove
30560         now-bogus check for f_type in sys/mount.h.  Instead, just test for the
30561         existence of the getmntinfo function.  Needed for Darwin 5.3.
30562
30563         * m4/dirfd.m4 (UTILS_FUNC_DIRFD): Also detect when dirfd is a macro.
30564         This is necessary at least on Darwin 5.3.
30565
30566         * m4/jm-macros.m4: Don't AC_REPLACE(strnlen), now that we use
30567         AC_FUNC_STRNLEN.  Otherwise, we'd end up putting two copies of
30568         strnlen.o in the library, and that makes some versions of ranlib
30569         object.
30570
30571 2002-04-12  Jim Meyering  <meyering@lucent.com>
30572
30573         * lib/dirfd.h (dirfd): Elide prototype if dirfd is a macro.
30574
30575 2002-04-09  Jim Meyering  <meyering@lucent.com>
30576
30577         * m4/malloc.m4: (jm_FUNC_MALLOC): Change the `checking ...' message
30578         to be more precise.  Rather than saying we're checking whether the
30579         function `works', say what we're testing.
30580         * m4/realloc.m4 (jm_FUNC_REALLOC): Likewise.
30581         Reported by Bruno Haible.
30582
30583 2002-03-10  Jim Meyering  <meyering@lucent.com>
30584
30585         * lib/makepath.c (make_path): Remove a comma from a diagnostic.
30586         Suggestion from Santiago Vila.
30587
30588 2002-03-08  Jim Meyering  <meyering@lucent.com>
30589
30590         * lib/rename.c: Mention that this wrapper is needed also on
30591         mips-dec-ultrix4.4 systems.
30592
30593 2002-03-02  Jim Meyering  <meyering@lucent.com>
30594
30595         * lib/gettime.c (gettime): Test HAVE_CLOCK_GETTIME,
30596         not HAVE_CLOCK_SETTIME.
30597
30598 2002-02-27  Paul Eggert  <eggert@twinsun.com>
30599
30600         * m4/jm-macros.m4 (jm_MACROS): Do not replace stime; no longer used.
30601         Check for clock_settime.
30602
30603 2002-02-27  Paul Eggert  <eggert@twinsun.com>
30604
30605         * lib/nanosleep.h: Rename to....
30606         * lib/timespec.h: New name for nanosleep.h.  All uses changed.
30607
30608         * lib/gettime.c: New file.
30609         * lib/settime.c: New file.
30610         * lib/stime.c: Remove.
30611
30612         * lib/Makefile.am (libfetish_a_SOURCES): Add gettime.c, settime.c,
30613         timespec.h.  Remove nanosleep.h.
30614
30615 2002-02-25  Paul Eggert  <eggert@twinsun.com>
30616
30617         * m4/acl.m4: New file.
30618         * m4/jm-macros.m4 (jm_MACROS): Require AC_FUNC_ACL.
30619         Do not check for acl or sys/acl.h, as AC_FUNC_ACL does that now.
30620
30621 2002-02-25  Paul Eggert  <eggert@twinsun.com>
30622
30623         * lib/acl.c, lib/acl.h: New files.
30624         * lib/Makefile.am (libfetish_a_SOURCES): Add acl.h, acl.c.
30625
30626 2002-02-24  Jim Meyering  <meyering@lucent.com>
30627
30628         * lib/strnlen.c (strnlen): Define-away/undef so that an inconsistent
30629         prototype in string.h (on at least AIX4.3.2.0 w/gcc-2.95.3) doesn't
30630         cause trouble.  Reported by Nelson Beebe.
30631
30632 2002-02-23  Paul Eggert  <eggert@twinsun.com>
30633
30634         * lib/path-concat.c (xpath_concat): Reorder code to pacify
30635         compilers that don't know that xalloc_die never returns.
30636
30637 2002-02-20  Jim Meyering  <meyering@lucent.com>
30638
30639         * lib/getdate.c: Regenerate using bison-1.33.
30640
30641 2002-02-17  Jim Meyering  <meyering@lucent.com>
30642
30643         * config/config.guess (main): Don't use `head -1'; it's no longer
30644         portable. Use `sed 1q' instead.
30645
30646 2002-02-16  gettextize  <bug-gnu-gettext@gnu.org>
30647
30648         * m4/codeset.m4: Upgrade to gettext-0.11.
30649         * m4/gettext.m4: Upgrade to gettext-0.11.
30650         * m4/glibc21.m4: Upgrade to gettext-0.11.
30651         * m4/iconv.m4: Upgrade to gettext-0.11.
30652         * m4/isc-posix.m4: Upgrade to gettext-0.11.
30653         * m4/lcmessage.m4: Upgrade to gettext-0.11.
30654         * m4/lib-ld.m4: New file, from gettext-0.11.
30655         * m4/lib-link.m4: New file, from gettext-0.11.
30656         * m4/lib-prefix.m4: New file, from gettext-0.11.
30657         * m4/progtest.m4: Upgrade to gettext-0.11.
30658
30659 2002-02-15  Paul Eggert  <eggert@twinsun.com>
30660
30661         * m4/prereq.m4 (jm_PREREQ_POSIXVER): New macro.
30662         (jm_PREREQ): Use it.
30663
30664 2002-02-15  Paul Eggert  <eggert@twinsun.com>
30665
30666         * lib/posixver.c, lib/posixver.h: New files.
30667         * lib/Makefile.am (libfetish_a_SOURCES): Add them.
30668
30669 2002-02-02  Paul Eggert  <eggert@twinsun.com>
30670             Bruno Haible  <bruno@clisp.org>
30671
30672         * lib/unicodeio.h (print_unicode_char): Add exit_on_error argument.
30673         (fwrite_success_callback): New declaration.
30674         * lib/unicodeio.c (unicode_to_mb): New function, extracted from
30675         print_unicode_char. Call failure callback instead of error.
30676         (fwrite_success_callback): New function.
30677         (exit_failure_callback): New function.
30678         (fallback_failure_callback): New function.
30679         (print_unicode_char): Call unicode_to_mb.
30680
30681 2002-01-26  Jim Meyering  <meyering@lucent.com>
30682
30683         * m4/jm-macros.m4 (jm_MACROS): Require autoconf-2.52g.
30684         * m4/strnlen.m4: Remove file, now that it's part of autoconf.
30685
30686 2002-01-26  Jim Meyering  <meyering@lucent.com>
30687
30688         * lib/Makefile.am (getdate$U.o): Depend on unlocked-io.h.
30689
30690 2002-01-22  Paul Eggert  <eggert@twinsun.com>
30691
30692         * m4/jm-macros.m4 (jm_MACROS): Require AC_FUNC_FSEEKO.
30693
30694 2002-01-22  Jim Meyering  <meyering@lucent.com>
30695
30696         * lib/Makefile.am (Makefile): Don't depend on $(BUILT_SOURCES).
30697         Otherwise, some versions of automake would omit the rule that makes
30698         Makefile from Makefile.in.
30699
30700 2002-01-21  Paul Eggert  <eggert@twinsun.com>
30701
30702         * lib/xmemcoll.h, lib/xmemcoll.c: New files.
30703         * lib/Makefile.am (libfetish_a_SOURCES): Add them.
30704         * lib/memcoll.c: Include errno.h, and declare errno if not defined.
30705         (memcoll): Set errno to zero if there is no error.
30706
30707         * lib/quotearg.c (quotearg_buffer_restyled):
30708         Fix bug with quoting buffers containing NUL when backslashing escapes.
30709         This bug was exposed by the other changes in this patch.
30710         (quotearg_n_options): New arg ARGSIZE.
30711         All callers changed.
30712         (quoting_options_from_style): New function.
30713         (quotearg_n_style): Use it.
30714         (quotearg_n_style_mem): New function.
30715
30716         * lib/quotearg.h (quotearg_n_style_mem): New function.
30717
30718 2002-01-19  Jim Meyering  <meyering@lucent.com>
30719
30720         * m4/jm-macros.m4 (jm_MACROS): Use AC_FUNC_STRNLEN.
30721         Remove useless quotes: DF_PROG="df".
30722         * m4/strnlen.m4: New file.
30723
30724 2002-01-16  Paul Eggert  <eggert@twinsun.com>
30725
30726         * lib/backupfile.c (ISDIGIT): Comment fix.
30727         * lib/getdate.y (ISDIGIT): Likewise.
30728         * lib/posixtm.c (ISDIGIT, year): Likewise.
30729         * lib/strverscmp.c (ISDIGIT): Likewise.
30730         * lib/userspec.c (ISDIGIT): Likewise.
30731
30732 2002-01-16  Jim Meyering  <meyering@lucent.com>
30733
30734         * lib/getdate.y: Add three semicolons, each just before a closing
30735         brace. Bison (as of version 1.31) no longer papers over that mistake.
30736
30737 2002-01-05  Jim Meyering  <meyering@lucent.com>
30738
30739         * lib/version-etc.c (version_etc_copyright): Update copyright year.
30740
30741 2001-12-19  Paul Eggert  <eggert@twinsun.com>
30742
30743         * lib/closeout.c (close_stdout_status): If ferror (stdout), do
30744         not silently exit merely because the output buffer happens to
30745         have nothing pending.
30746
30747 2001-12-18  Paul Eggert  <eggert@twinsun.com>
30748
30749         See the big note in ../ChangeLog.
30750         * lib/human.c (suffixes): Prefer K to k for 1024.
30751         (generate_suffix_backwards): New function.
30752         (human_readable_inexact): Use it.
30753         * lib/xstrtol.c (__xstrtol): If there is no number but there
30754         is a valid suffix, assume 1.  "MB" now means decimal, "MiB" binary.
30755         Accept 'K' as well as 'k'.
30756
30757 2001-12-15  Jim Meyering  <meyering@lucent.com>
30758
30759         * lib/regex.h (__restrict_arr): Update from libc.
30760
30761         * lib/mountlist.h (ME_REMOTE): Recognize file systems of type smbfs
30762         as `remote' if the name starts with `//'.  Suggested by Michael Stone.
30763         (STREQ): Define.
30764
30765 2001-12-14  Jim Meyering  <meyering@lucent.com>
30766
30767         * m4/jm-macros.m4 (jm_MACROS): Check for iswspace.
30768         Suggestion from Bruno Haible.
30769
30770 2001-12-10  Jim Meyering  <meyering@lucent.com>
30771
30772         * lib/linebuffer.c: Remove explicit declarations of xmalloc and
30773         xrealloc, Instead, include "xalloc.h".
30774         (initbuffer): Don't cast xmalloc return value to char*.
30775         (readline): Reword comment.
30776         Don't cast xrealloc return value to char*
30777         Return NULL, not 0.
30778
30779 2001-12-09  Jim Meyering  <meyering@lucent.com>
30780
30781         * lib/modechange.c (mode_compile): Add cast to avoid pedantic warning
30782         about `signed and unsigned type in conditional expression'.
30783         * lib/posixtm.c (posix_time_parse): Likewise.
30784
30785         * lib/xreadlink.c (xreadlink): Add cast to avoid a pedantic warning.
30786
30787         * lib/readtokens.c (readtoken): Declare an index to be of type unsigned
30788         to avoid a pedantic warning.
30789
30790         * lib/getstr.c: Don't include assert.h.
30791         (getstr): Remove warning-evoking assertions.
30792         Return -1 if offset parameter is out of bounds.
30793         Change the type of a local from int to size_t.
30794
30795         * lib/strftime.c (my_strftime_localtime_r): Include this function
30796         definition in the `#if ! HAVE_TM_GMTOFF' block.
30797
30798         * lib/xgethostname.c: Remove declarations of xmalloc and xrealloc.
30799         Include xalloc.h instead.
30800
30801 2001-12-02  Jim Meyering  <meyering@lucent.com>
30802
30803         * lib/tempname.c: Don't declare getenv, thus reverting the change of
30804         2001-11-18.  It's no longer necessary, now that stdlib.h is always
30805         included.
30806
30807         * lib/regex.c [!__BOUNDED_POINTERS__]: Define away __bounded,
30808         __unbounded, and __ptrvalue.  Reported by Uwe H. Steinfeld.
30809
30810 2001-11-30  Akim Demaille  <akim@epita.fr>
30811
30812         * lib/xstrdup.c: Include xalloc.h, so that xstrdup is declared
30813         before being defined.
30814
30815 2001-11-27  Paul Eggert  <eggert@twinsun.com>
30816
30817         * lib/quotearg.h (quotearg_n, quotearg_n_style):
30818         First arg is int, not unsigned.
30819         * lib/quotearg.c (quotearg_n, quotearg_n_style): Likewise.
30820         (SIZE_MAX, UINT_MAX): New macros.
30821         (quotearg_n_options): Abort if N is negative.
30822         Avoid overflow check on hosts where size_t is 64 bits and int
30823         is 32 bits, as overflow is impossible there.
30824         Fix off-by-one typo that caused unnecessary reallocation.
30825
30826 2001-11-27  Jim Meyering  <meyering@lucent.com>
30827
30828         * lib/tempname.c: Merge with version from libc.
30829         * lib/regex.c: Likewise.
30830
30831         * lib/tempname.c: Include stdlib.h unconditionally.  On some old
30832         systems for which STDC_HEADERS is 0, it was not included, resulting in
30833         a warning about an integer-to-pointer conversion problem with getenv.
30834         Reported by Volker Borchert.
30835
30836 2001-11-26  Jim Meyering  <meyering@lucent.com>
30837
30838         * lib/gtod.h: Remove file.
30839         * lib/Makefile.am (libfetish_a_SOURCES): Remove gtod.h.
30840         * lib/gettimeofday.c: Don't include gtod.h.
30841         (GTOD_init): Remove function.
30842         (rpl_gettimeofday): Do its job here instead, rather than aborting.
30843         Suggestion from Volker Borchert.
30844
30845 2001-11-23  Jim Meyering  <meyering@lucent.com>
30846
30847         * lib/hash.h (struct hash_table): Don't define here.  Merely declare
30848         it.
30849         * lib/hash.c (struct hash_table): Define it here instead.
30850
30851 2001-11-22  Jim Meyering  <meyering@lucent.com>
30852
30853         * lib/hash.h: Bracket contents of file with #ifndef HASH_H_ ... #endif.
30854
30855 2001-11-20  Jim Meyering  <meyering@lucent.com>
30856
30857         * m4/mkstemp.m4 (UTILS_FUNC_MKSTEMP): Update comment to reflect that
30858         SunOS 4.1.4 and Solaris 2.5.1 lose, too.
30859
30860 2001-11-19  Jim Meyering  <meyering@lucent.com>
30861
30862         * m4/mkstemp.m4 (UTILS_FUNC_MKSTEMP): Don't bother with a temporary
30863         directory.  Use "conftestXXXXXX" as the template.
30864         Suggestion from Paul Eggert.
30865
30866         * m4/mkstemp.m4 (UTILS_FUNC_MKSTEMP): Close each descriptor
30867         immediately, so the test doesn't mistakenly hit the max-open-files
30868         limit.
30869
30870 2001-11-18  Paul Eggert  <eggert@twinsun.com>
30871
30872         * lib/tempname.c (TMP_MAX): Remove; no longer needed.
30873         (TEMPORARIES): New macro.
30874         (__gen_tempname): Use TEMPORARIES rather than TMP_MAX.  This
30875         removes an artificial limitation (e.g. HP-UX 10.20, where
30876         TMP_MAX is 17576).
30877
30878 2001-11-18  Jim Meyering  <meyering@lucent.com>
30879
30880         * m4/prereq.m4 (jm_PREREQ_TEMPNAME): Check for declaration of getenv.
30881
30882 2001-11-18  Jim Meyering  <meyering@lucent.com>
30883
30884         * lib/tempname.c [!HAVE_DECL_GETENV]: Declare getenv to avoid warning
30885         on SunOS 4.
30886
30887         * lib/Makefile.am (Makefile): Depend on $(BUILT_SOURCES), so those
30888         files will be created before anything else.
30889
30890 2001-11-17  Paul Eggert  <eggert@twinsun.com>
30891
30892         * m4/jm-winsz1.m4 (jm_WINSIZE_IN_PTEM): Do not define
30893         WINSIZE_IN_PTEM if <termios.h> defines struct winsize.
30894
30895 2001-11-17  Jim Meyering  <meyering@lucent.com>
30896
30897         * m4/mkstemp.m4 (UTILS_FUNC_MKSTEMP): New file and macro.
30898         Prompted by a report from Bob Proulx.
30899
30900         * m4/jm-macros.m4 (jm_MACROS): Don't test for mkstemp here.
30901         Instead, require UTILS_FUNC_MKSTEMP.
30902
30903 2001-11-17  Jim Meyering  <meyering@lucent.com>
30904
30905         * m4/jm-macros.m4 (jm_MACROS): Remove code to set POW_LIBM.
30906         Now, that's done as part of AC_FUNC_STRTOD.
30907
30908 2001-11-17  Jim Meyering  <meyering@lucent.com>
30909
30910         * lib/modechange.c (mode_adjust): Fix error introduced on 1999-04-26
30911         that made e.g., `chmod a=,o=w,g=o F' cause F to be group readable
30912         rather than group writable.  Patch by Juan F. Codagnone.
30913
30914         * lib/readtokens.c: Remove explicit declarations of xmalloc and
30915         xrealloc, Instead, include "xalloc.h".
30916
30917         * lib/mountlist.c: Include unlocked-io.h after all system headers.
30918         Remove explicit declarations of xmalloc, xrealloc,
30919         and xstrdup.  Instead, include "xalloc.h".
30920
30921         * lib/argmatch.c, closeout.c, error.c, exclude.c: Include
30922         unlocked-io.h.
30923         * lib/fatal.c, getdate.y, getpass.c, getstr.c, getusershell.c:
30924         Likewise.
30925         * lib/mountlist.c, posixtm.c, readtokens.c, readutmp.c: Likewise.
30926
30927         * lib/regex.c, sha.c, version-etc.c, yesno.c: Likewise.
30928         Reported by Padraig Brady.
30929
30930         * lib/mkstemp.c: #undef mkstemp.
30931         Include config.h.
30932         (rpl_mkstemp): Rename from mkstemp.
30933         Protoize.
30934
30935 2001-11-16  Jim Meyering  <meyering@lucent.com>
30936
30937         * lib/physmem.c [HAVE_SYS_PSTAT_H]: Include <sys/pstat.h>.
30938         (physmem_total) [HAVE_PSTAT_GETSTATIC]: If sysconf couldn't be used to
30939         determine the amount of total physical memory, use pstat_getstatic.
30940         HPUX-11 doesn't define _SC_PHYS_PAGES.
30941         (physmem_available) [HAVE_PSTAT_GETSTATIC && HAVE_PSTAT_GETDYNAMIC]:
30942         If sysconf couldn't be used to determine the amount of available
30943         physical memory, use both pstat_getstatic and pstat_getdynamic.
30944         Based on a patch from Bob Proulx.
30945
30946 2001-11-10  Jim Meyering  <meyering@lucent.com>
30947
30948         * m4/prereq.m4 (jm_PREREQ_PHYSMEM): New function.
30949         (jm_PREREQ): Use it.
30950
30951 2001-11-09  Jim Meyering  <meyering@lucent.com>
30952
30953         * m4/jm-macros.m4: Require autoconf-2.52f.
30954         (AC_FUNC_ERROR_AT_LINE, AC_FUNC_OBSTACK, AC_FUNC_STRTOD):
30955         Use these AC_-prefixed names, not the AM_-prefixed ones.
30956
30957         * m4/afs.m4 (jm_AFS): Quote the body.  Patch by Akim Demaille.
30958
30959 2001-11-05  Jim Meyering  <meyering@lucent.com>
30960
30961         * lib/xstat.in (slash_aware_lstat): Correct a misleading comment.
30962
30963 2001-11-04  Jim Meyering  <meyering@lucent.com>
30964
30965         * m4/fpending.m4: Remove unused cruft that saved, set, and restored
30966         $DEFS.
30967
30968 2001-11-03  Jim Meyering  <meyering@lucent.com>
30969
30970         * m4/jm-glibc-io.m4n (jm_FUNC_GLIBC_UNLOCKED_IO): Quote first arg
30971         of AC_DEFUN.
30972
30973         * m4/dirfd.m4 (UTILS_FUNC_DIRFD): Rework so dirfd.c doesn't have to
30974         know the name of the variable in the macro definition.
30975
30976 2001-11-03  Jim Meyering  <meyering@lucent.com>
30977
30978         * lib/argmatch.h (ARGMATCH_TO_ARGUMENT): Remove casts of first two args
30979         in argmatch_to_argument call.
30980
30981         * lib/dirfd.c (dirfd): Reflect the fact that DIR_TO_FD now takes an
30982         argument.
30983
30984         * lib/hash.c (hash_clear): Fix a bug that could lead to an infloop or
30985         e.g., a fault due to an attempt to free a NULL pointer.
30986
30987 2001-11-01  Jim Meyering  <meyering@lucent.com>
30988
30989         * m4/dirfd.m4 (UTILS_FUNC_DIRFD): New macro.
30990         * m4/jm-macros.m4 (jm_MACROS): Require UTILS_FUNC_DIRFD.
30991
30992 2001-11-01  Jim Meyering  <meyering@lucent.com>
30993
30994         * lib/dirfd.c, lib/dirfd.h: New files.
30995         * lib/Makefile.am (libfetish_a_SOURCES): Add dirfd.h.
30996
30997         * lib/hash.c (hash_print) [TESTING]: Clean up.
30998
30999 2001-10-22  Paul Eggert  <eggert@twinsun.com>
31000
31001         * lib/hard-locale.c (alloca): Define to __builtin_alloca if __GNUC__,
31002         to avoid a warning if -Wall.
31003
31004 2001-10-22  Jeff Bailey  <jbailey@outpost.dnsalias.org>
31005
31006         * README: New file
31007         * doc/*: Add COPYING, COPYING.LIB, COPYING.DOC, fdl.texi
31008         (per RMS's instructions, this is now the canonical source)
31009         * lgpl/, gpl/: New directories.
31010
31011 2001-10-21  Paul Eggert  <eggert@twinsun.com>
31012
31013         * lib/regex.c (uintptr_t): Remove macro and decl; it's config.h's job.
31014
31015 2001-10-21  Jim Meyering  <meyering@lucent.com>
31016
31017         * lib/obstack.c (_): Honor the setting of ENABLE_NLS.  Otherwise,
31018         this code would end up calling gettext even in packages built
31019         with --disable-nls.
31020         * lib/getopt.c (_): Likewise.
31021         * lib/regex.c (_): Likewise.
31022
31023 2001-10-20  Paul Eggert  <eggert@twinsun.com>
31024
31025         * m4/error.m4 (jm_PREREQ_ERROR):
31026         Do not invoke AC_CHECK_FUNCS with strerror_r, as
31027         AC_FUNC_STRERROR_R does that.
31028         Check for strerror declaration.
31029
31030         * m4/strerror_r.m4: Add copyright notice, as nontrivial m4 files
31031         are supposed to have them these days.
31032         (AC_FUNC_STRERROR_R): Always do char* test, so that it gets cached.
31033         Merge changes from latest Autoconf CVS.
31034         Rename ac_cv_func_strerror_r_works to ac_cv_func_strerror_r_char_p,
31035         and rename HAVE_WORKING_STRERROR_R to STRERROR_R_CHAR_P, since
31036         POSIX decided to standardize on the int flavor of strerror_r.
31037
31038 2001-10-20  Paul Eggert  <eggert@twinsun.com>
31039
31040         * lib/error.c (strerror_r): Do not declare unless !_LIBC.
31041         Do not check for HAVE_DECL_STRERROR_R missing unless STRERROR_R_CHAR_P.
31042         Use strerror_r that is only a macro, even if it is not a function.
31043         (strerror): Check for HAVE_DECL_STRERROR before declaring.
31044         (private_strerror): Use prototypes, not old-style function definition.
31045         (print_errno_message): New function.
31046         Support the POSIX 'int'-flavored strerror_r, as well as the traditional
31047         char*-flavored one.
31048         (error_tail, error, error_at_line): Use it.
31049
31050 2001-10-11  Jim Meyering  <meyering@lucent.com>
31051
31052         * lib/argmatch.c (argmatch_invalid): Use quotearg_n_style (0, ...
31053         and quote_n (1, ... to avoid clobbering a buffer.
31054
31055 2001-10-05  Jim Meyering  <meyering@lucent.com>
31056
31057         * lib/Makefile.am: (libfetish_a_SOURCES): Add hash-pjw.c and
31058         hash-pjw.h.
31059         * lib/hash-pjw.c: New file (factored out of fileutils' remove.c).
31060         * lib/hash-pjw.h: New file.
31061
31062 2001-09-30  Jim Meyering  <meyering@lucent.com>
31063
31064         * m4/ls-mntd-fs.m4 (jm_LIST_MOUNTED_FILESYSTEMS): See if
31065         `struct fsstat' has the `f_fstypename' member.
31066         Use that to define FS_TYPE, which is now used to make
31067         the getfsstat link test tighter.
31068
31069 2001-09-30  Jim Meyering  <meyering@lucent.com>
31070
31071         * lib/mountlist.c [MOUNTED_GETFSSTAT]:
31072         Include <sys/ucred.h>, for Apple Darwin.
31073         Include sys/mount.h and sys/fs_types.h only if available.
31074         (FS_TYPE): Define.
31075         (read_filesystem_list): Use FS_TYPE.
31076
31077 2001-09-29  Paul Eggert  <eggert@twinsun.com>
31078
31079         * lib/exclude.c (excluded_filename): 0 -> false, since it's
31080         a boolean context.
31081
31082 2001-09-29  Jim Meyering  <meyering@lucent.com>
31083
31084         * m4/ls-mntd-fs.m4 (jm_LIST_MOUNTED_FILESYSTEMS)
31085         [one-argument getmntent function]): Include stdio.h before mntent.h.
31086         SunOS 4.1.x needs it for the declaration of `FILE'.
31087         Patch by Volker Borchert.
31088
31089         * m4/ls-mntd-fs.m4 (jm_LIST_MOUNTED_FILESYSTEMS)
31090         Check for these headers: sys/param.h sys/ucred.h sys/mount.h
31091         sys/fs_types.h, and make the link-test for getfsstat guard #include
31092         directives with appropriate #if HAVE_*_H tests so that we can
31093         detect getfsstat on Apple Darwin1.3.7 systems.
31094         Reported by Nelson Beebe.
31095         Fix harmless typo in cache variable name: s/getsstat/getfsstat/.
31096
31097 2001-09-28  Paul Eggert  <eggert@twinsun.com>
31098
31099         Fix bug reported by Petter Reinholdtsen for HP-UX 10.20, which
31100         #defines strtoimax.  Also treat the other strto* functions
31101         like strtoimax.
31102
31103         * m4/xstrtoimax.m4 (jm_AC_PREREQ_XSTRTOIMAX):
31104         Check for strtoul and strtoumax,
31105         as those declarations are made even in the signed case.
31106         * m4/xstrtoumax.m4 (jm_AC_PREREQ_XSTRTOUMAX):
31107         Likewise, for strtol and strtoimax.
31108
31109 2001-09-28  Paul Eggert  <eggert@twinsun.com>
31110
31111         Fix bug reported by Petter Reinholdtsen for HP-UX 10.20, which
31112         #defines strtoimax.  Also treat the other strto* functions
31113         like strtoimax.
31114
31115         * lib/xstrtol.c (strtol): Do not declare if HAVE_DECL_STRTOL.
31116         (strtoul): Do not declare if HAVE_DECL_STRTOUL.
31117         (strtoimax, strtoumax): Do not declare if already defined as a macro.
31118
31119 2001-09-26  Jim Meyering  <meyering@lucent.com>
31120
31121         Most macros in unlocked-io.h had the wrong number of arguments.
31122         * lib/gen-uio: New script.
31123         (USE_UNLOCKED_IO): Define to 1 if not already defined.
31124         * lib/unlocked-io.hin: Remove file.
31125         * lib/Makefile.am (unlocked-io.h): Rewrite to use a separate script,
31126         rather than trying to embed it here.
31127         (EXTRA_DIST): Add gen-uio.  Remove unlocked-io.hin
31128         Reported by Padraig Brady.
31129
31130 2001-09-25  Volker Borchert  <bt@teknon.de>
31131
31132         * lib/gettimeofday.c (rpl_gettimeofday): Declare local variable
31133         `result'.
31134
31135 2001-09-24  Jim Meyering  <meyering@lucent.com>
31136
31137         * m4/gettext.m4: Use the version from gettext-0.10.40, not CVS.
31138
31139 2001-09-23  Jim Meyering  <meyering@lucent.com>
31140
31141         * m4/ls-mntd-fs.m4 (jm_LIST_MOUNTED_FILESYSTEMS): Add a compile-test
31142         instead of the mere test for existence of mntent.h.  The latter
31143         would get a false-positive on AIX 3.4 systems.
31144         In the outer getmntent if-block, don't die if neither of the getmntent
31145         tests succeeds.  Instead, just fall through and continue with the
31146         remaining tests.
31147
31148 2001-09-23  Jim Meyering  <meyering@lucent.com>
31149
31150         * lib/mountlist.c: Remove useless parentheses in #if directives.
31151         (MOUNTED) [!defined MOUNTED]: Define to _PATH_MOUNTED, for when
31152         the deprecated MOUNTED symbol is no longer defined in mntent.h.
31153
31154 2001-09-22  Jim Meyering  <meyering@lucent.com>
31155
31156         * m4/gettext.m4: New file.  From gettext.
31157         * m4/lcmessage.m4: Sync with gettext -- this changes only comments.
31158         * m4/progtest.m4: Likewise
31159         * m4/isc-posix.m4: Decrement serial number to sync with gettext.
31160         * m4/glibc21.m4: Likewise.
31161
31162         * m4/libintl.m4: Remove.  No longer used.
31163
31164 2001-09-22  Jim Meyering  <meyering@lucent.com>
31165
31166         * lib/localcharset.c: Update from latest gettext.
31167         * lib/config.charset: Likewise.
31168
31169 2001-09-20  Jim Meyering  <meyering@lucent.com>
31170
31171         * m4/xstrtoimax.m4 (jm_AC_PREREQ_XSTRTOIMAX): Check for declaration of
31172         strtoimax.
31173         * m4/xstrtoumax.m4 (jm_AC_PREREQ_XSTRTOUMAX): Check for declaration of
31174         strtoumax.
31175
31176 2001-09-20  Jim Meyering  <meyering@lucent.com>
31177
31178         * lib/xstrtol.c (strtoimax): Guard declaration with
31179         `#if !HAVE_DECL_STRTOIMAX', rather than just `#ifndef strtoimax'.
31180         The latter fails because some systems (at least rs6000-ibm-aix4.3.3.0)
31181         have their own, conflicting declaration of strtoimax in sys/inttypes.h.
31182         (strtoumax): Likewise, for completeness (it wasn't necessary).
31183
31184 2001-09-17  Paul Eggert  <eggert@twinsun.com>
31185
31186         * lib/strtoimax.c (HAVE_LONG_LONG):
31187         Redefine to HAVE_UNSIGNED_LONG_LONG if unsigned.
31188         (strtoimax): Use sizeof (long), not sizeof strtol (ptr, endptr, base),
31189         to work around bug in IBM C compiler.
31190
31191 2001-09-17  Jim Meyering  <meyering@lucent.com>
31192
31193         * m4/chown.m4, fstypename.m4, getgroups.m4, gettimeofday.m4,
31194         * m4/jm-mktime.m4, lstat.m4, malloc.m4, memcmp.m4, mkdir-slash.m4,
31195         * m4/nanosleep.m4, putenv.m4, readdir.m4, realloc.m4, rename.m4,
31196         * m4/st_dm_mode.m4, stat.m4, strerror_r.m4, timespec.m4, utimbuf.m4,
31197         * m4/utimes.m4: Use AC_DEFINE rather than AC_DEFINE_UNQUOTED,
31198         whenever the right hand side need not be expanded by the shell.
31199
31200 2001-09-16  Paul Eggert  <eggert@twinsun.com>
31201
31202         * m4/fnmatch.m4 (jm_FUNC_FNMATCH): Remove test for GNU C
31203         library.  It's not correct, as some older glibcs are buggy.
31204         fnmatch wasn't fixed until glibc 2.2.
31205
31206         Use AC_DEFINE, not AC_DEFINE_UNQUOTED, as there's no
31207         special shell magic here.
31208
31209 2001-09-16  Jim Meyering  <meyering@lucent.com>
31210
31211         * m4/mkdir-slash.m4 (UTILS_FUNC_MKDIR_TRAILING_SLASH): New file/macro.
31212         * m4/jm-macros.m4: Require it.
31213
31214 2001-09-16  Jim Meyering  <meyering@lucent.com>
31215
31216         * lib/mkdir.c: New file.
31217
31218 2001-09-15  Jim Meyering  <meyering@lucent.com>
31219
31220         * m4/jm-macros.m4: Check for help2man.
31221
31222 2001-09-11  Jim Meyering  <meyering@lucent.com>
31223
31224         * m4/host-os.m4 (UTILS_HOST_OS): New file/macro.
31225         The body, by Paul Eggert, was moved here from configure.in.
31226         * m4/jm-macros.m4: Require UTILS_HOST_OS.
31227
31228 2001-09-04  Paul Eggert  <eggert@twinsun.com>
31229
31230         * m4/prereq.m4 (jm_PREREQ_XREADLINK): New macro.
31231         (jm_PREREQ): Use it.
31232
31233 2001-09-04  Paul Eggert  <eggert@twinsun.com>
31234
31235         * lib/xreadlink.c (xreadlink): Omit size_t* arg.  All uses changed.
31236         Use ssize_t, not int, to store result of readlink.
31237         Check for ssize_t overflow as well as size_t overflow,
31238         as POSIX says the result of readlink is implementation-defined
31239         when ssize_t overflows.
31240         Remove unnecessary cast to char*.
31241         Use free+malloc instead of realloc, as the storage doesn't need
31242         to be preserved and it's clearer and can be more efficient that way.
31243         (SIZE_MAX, SSIZE_MAX): New macros, if <limits.h> doesn't declare.
31244         * lib/xreadlink.h (xreadlink): Update prototype.
31245
31246 2001-09-04  Paul Eggert  <eggert@twinsun.com>
31247
31248         * lib/xgetcwd.c: Revert some of the previous change; intead,
31249         fix the HAVE_GETCWD_NULL code to behave more like the
31250         !HAVE_GETCWD_NULL code used to.
31251
31252         Include "xalloc.h".
31253         (xgetcwd): Do not return NULL when memory is exhausted; instead,
31254         invoke xalloc_die.
31255
31256 2001-09-03  Paul Eggert  <eggert@twinsun.com>
31257
31258         * m4/prereq.m4 (jm_PREREQ_XGETCWD): Check for limits.h and
31259         sys/param.h, as pathmax.h includes them.
31260
31261 2001-09-03  Paul Eggert  <eggert@twinsun.com>
31262
31263         * m4/prereq.m4 (jm_PREREQ): Add jm_PREREQ_XGETCWD.
31264         (jm_PREREQ_XGETCWD): New macro.
31265
31266         * m4/getcwd.m4: New file.
31267
31268 2001-09-03  Paul Eggert  <eggert@twinsun.com>
31269
31270         * lib/xgetcwd.c: Fix the !HAVE_GETCWD_NULL code to behave more
31271         like the HAVE_GETCWD_NULL code.
31272         Include pathmax.h if not HAVE_GETCWD.
31273         Do not include xalloc.h.
31274         (INITIAL_BUFFER_SIZE): New symbol.
31275         Do not use xmalloc / xrealloc, since the caller is responsible for
31276         handling errors.  Preserve errno around `free' during failure.
31277         Do not overrun buffer when using getwd.
31278
31279 2001-09-03  Paul Eggert  <eggert@twinsun.com>
31280
31281         * lib/xgetcwd.c (xgetcwd): Use HAVE_GETCWD_NULL, not (defined
31282         __GLIBC__ && __GLIBC__ >= 2), to decide whether to use
31283         getcwd (NULL, 0).
31284
31285 2001-09-03  Paul Eggert  <eggert@twinsun.com>
31286
31287         * lib/exclude.c (fnmatch_no_wildcards): Fix confusion between
31288         usage of FNM_CASEFOLD and FNM_LEADING_DIR.  The bug was
31289         spotted by Jim Meyering.
31290
31291 2001-09-03  Jim Meyering  <meyering@lucent.com>
31292
31293         * lib/xreadlink.c (xreadlink): Preserve errno around `free' during
31294         failure.
31295
31296 2001-09-02  Jim Meyering  <meyering@lucent.com>
31297
31298         * lib/error.c: Update from GNU libc.
31299
31300 2001-09-01  Jim Meyering  <meyering@lucent.com>
31301
31302         * m4/jm-macros.m4 (jm_MACROS): Check for canonicalize_file_name.
31303         Used by df.
31304
31305 2001-09-01  Jim Meyering  <meyering@lucent.com>
31306
31307         * lib/xreadlink.c: New file.
31308         * lib/xreadlink.h: New file.
31309         * lib/Makefile.am (libfetish_a_SOURCES): Add xreadlink.c and
31310         xreadlink.h.
31311
31312         * lib/regex.c (uintptr_t) [!_LIBC]: Define to private_uintptr_t, so it
31313         doesn't conflict with sparc Solaris 7's definition in
31314         /usr/include/sys/int_types.h.
31315
31316         * lib/exclude.c: Use `""', not `<>' to #include non-system header
31317         files.
31318         (fnmatch_no_wildcards): Rewrite not to use function names, strcasecmp
31319         and strncasecmp as r-values.  Unixware didn't have declarations.
31320
31321 2001-08-31  Paul Eggert  <eggert@twinsun.com>
31322
31323         * lib/xstrtol.h: Add copyright notice.
31324         (_DECLARE_XSTRTOL): Improve quality of diagnostic for
31325         LONGINT_INVALID_SUFFIX_CHAR.
31326
31327 2001-08-31  Paul Eggert  <eggert@twinsun.com>
31328
31329         * lib/xstrtol.c (strtoimax): New decl.
31330
31331 2001-08-31  Paul Eggert  <eggert@twinsun.com>
31332
31333         * lib/xgetcwd.c: Don't include pathmax.h.
31334         Include stdlib.h and unistd.h if available.
31335         Include xalloc.h.
31336         (xmalloc, xstrdup, free): Remove decls.
31337         (xgetcwd): Don't assume sizes fit in unsigned.
31338         Check for overflow when computing sizes.
31339         Simplify reallocation code.
31340
31341 2001-08-31  Paul Eggert  <eggert@twinsun.com>
31342
31343         * lib/savedir.c (savedir): Remove size parameter, as POSIX says that
31344         a directory's st_size can have an arbitrary value, so the old
31345         usage could waste an arbitrary amount of memory.  All uses
31346         changed.
31347         * lib/savedir.h: Update prototype.
31348
31349 2001-08-31  Paul Eggert  <eggert@twinsun.com>
31350
31351         * lib/Makefile.am (libfetish_a_SOURCES): Remove strtoxmax.c.
31352
31353         * lib/strtoimax.c: Renamed from strtoxmax.c, removing the
31354         old strtoimax.c.
31355
31356         Also, make the following further changes to make this file's
31357         configuration more similar to that of strtol.c:
31358         (UNSIGNED): Renamed from STRTOUXMAX_UNSIGNED.  All uses changed.
31359         (strtoumax, uintmax_t, strtoull, strtol): Remove.
31360         (intmax_t, strtoimax, strtol, strtoll): New macros, if UNSIGNED.
31361         (strtoimax): Renamed from strtoumax.  All uses of unsigned values
31362         changed to signed values.
31363
31364         And make the following changes as well:
31365         Fix copyright notice, as 1999 was missing.
31366         (verify): New macro.
31367         (strtoimax): Check sizes at compile-time, not run-time.
31368         Prefer strtol to strtoll if both work.
31369         (main): Remove; it was not that useful and was a pain to maintain.
31370
31371         * lib/strtoumax.c: Include strtoimax.c, not strtouxmax.c.
31372
31373 2001-08-31  Jim Meyering  <meyering@lucent.com>
31374
31375         * lib/xgetcwd.c (xgetcwd): Reorganize to avoid some duplication.
31376         Use an initial, malloc'd, buffer of length 128 rather than
31377         a statically allocated one of length 1024.
31378
31379 2001-08-30  Paul Eggert  <eggert@twinsun.com>
31380
31381         Simplify code, partly by assuming autoconf 2.52 semantics.
31382
31383         * m4/Makefile.am (EXTRA_DIST): Remove uintmax_t.m4.
31384
31385         * m4/inttypes.m4 (AC_PREREQ): Bump to 2.52.
31386         (jm_AC_HEADER_INTTYPES_H): Remove; now done by autoconf in 2.52.
31387         All uses removed.
31388         (jm_AC_TYPE_INTMAX_T, jm_AC_TYPE_UINTMAX_T):
31389         Move AC_REQUIRE to next-to-top level, to avoid confusion.
31390         Use 2.52's AC_CHECK_TYPE instead of merely looking for the header.
31391         * m4/prereq.m4 (jm_PREREQ_HUMAN): Don't require
31392         jm_AC_HEADER_INTTYPES_H.
31393         * m4/jm-macros.m4 (jm_MACROS): Likewise.
31394
31395         * m4/uintmax_t.m4: Remove, as it duplicates inttypes.m4.
31396
31397         * m4/xstrtoimax.m4 (jm_AC_PREREQ_XSTRTOIMAX):
31398         Quote first arg of AC_DEFUN.
31399         Require jm_AC_TYPE_UINTMAX_T and jm_AC_TYPE_UNSIGNED_LONG_LONG
31400         since they are needed to parse the include file even if we need
31401         only xstrtoimax.  Simplify logic behind the args to AC_REPLACE.
31402         * m4/xstrtoumax.m4 (jm_AC_PREREQ_XSTRTOUMAX): Likewise,
31403         but with opposite signedness.
31404
31405 2001-08-30  Paul Eggert  <eggert@twinsun.com>
31406
31407         Merge 'exclude' changes from tar 1.13.22.
31408         This fixes one or two unlikely storage allocation overflow bugs,
31409         but doesn't change user-visible behavior otherwise.
31410
31411 2001-08-30  Paul Eggert  <eggert@twinsun.com>
31412
31413         * m4/prereq.m4 (jm_PREREQ): Add jm_PREREQ_EXCLUDE.
31414         (jm_PREREQ_EXCLUDE): New macro.
31415
31416 2001-08-30  Paul Eggert  <eggert@twinsun.com>
31417
31418         * lib/quotearg.c: BSD/OS 4.1 wchar.h requires FILE and struct
31419         tm to be declared.
31420
31421 2001-08-30  Paul Eggert  <eggert@twinsun.com>
31422
31423         * lib/hash.c: Remove '2001' from copyright notice.
31424
31425 2001-08-30  Paul Eggert  <eggert@twinsun.com>
31426
31427         * lib/full-write.h: New file.
31428         * lib/Makefile.am (libfetish_a_SOURCES): Add full-write.h.
31429         * lib/full-write.c: Correct credits, as cccp.c no longer
31430         exists and anyway it was so heavily changed from the old cccp
31431         code as to be unrecognizable.  Include full-write.h.
31432         (full_write) Return size_t, with short writes meaning failure.
31433         All callers changed.  This fixes a bug with large buffers
31434         on 64-bit hosts.
31435         * lib/utime.c: Include full-write.h.
31436
31437 2001-08-30  Paul Eggert  <eggert@twinsun.com>
31438
31439         * lib/exclude.c (bool): Declare, perhaps by including stdbool.h.
31440         (<sys/types.h>): Include only if HAVE_SYS_TYPES_H.
31441         (<stdlib.h>, <string.h>, <strings.h>, <inttypes.h>, <stdint.h>):
31442         Include if available.
31443         (<xalloc.h>): Include
31444         (SIZE_MAX): Define if <stdint.h> or <inttypes.h> doesn't.
31445         (verify): New macro.  Use it to verify that EXCLUDE macros do not
31446         collide with FNM macros.
31447         (struct patopts): New struct.
31448         (struct exclude): Use it, as exclude patterns now come with options.
31449         (new_exclude): Support above changes.
31450         (new_exclude, add_exclude_file):
31451         Initial size must now be a power of two to simplify overflow checking.
31452         (free_exclude, fnmatch_no_wildcards): New function.
31453         (excluded_filename): No longer requires options arg, as the options
31454         are determined by add_exclude.  Now returns bool, not int.
31455         (excluded_filename, add_exclude):
31456         Add support for the fancy new exclusion options.
31457         (add_exclude, add_exclude_file): Now takes int options arg.
31458         Check for arithmetic overflow when computing sizes.
31459         (add_exclude_file): xrealloc might modify errno, so don't
31460         realloc until after errno might be used.
31461
31462         * lib/exclude.h (EXCLUDE_ANCHORED, EXCLUDE_INCLUDE,EXCLUDE_WILDCARDS):
31463         New macros.
31464         (free_exclude): New decl.
31465         (add_exclude, add_exclude_file): Now takes int options arg.
31466         (excluded_filename): No longer requires options arg, as the options
31467         are determined by add_exclude.  Now returns bool, not int.
31468
31469 2001-08-30  Paul Eggert  <eggert@twinsun.com>
31470
31471         * lib/alloca.c (alloca): Arg is of type size_t, not unsigned.
31472
31473 2001-08-27  Jim Meyering  <meyering@lucent.com>
31474
31475         * lib/Makefile.am (libfetish_a_SOURCES): Add strtoxmax.c
31476
31477         * lib/version-etc.c (N_): Remove definition.
31478         Revert most of last change.
31479         Instead, simply don't mark the `Copyright...' string for translation.
31480         Based on advice from Paul Eggert.
31481
31482         * lib/strtoxmax.c: Tweak comment.
31483
31484 2001-08-26  Jim Meyering  <meyering@lucent.com>
31485
31486         * m4/jm-macros.m4: Require jm_AC_PREREQ_XSTRTOIMAX.
31487
31488         * m4/xstrtoimax.m4: New file.
31489         * m4/xstrtoumax.m4: Add comments explaining why we
31490         AC_REPLACE_FUNCS(strtol).
31491
31492 2001-08-26  Jim Meyering  <meyering@lucent.com>
31493
31494         * lib/version-etc.c (version_etc_copyright_fmt): Replace literal year
31495         of copyright with `%s' so translators don't get an untranslated
31496         message in 2002.
31497         (COPYRIGHT_YEAR): Define.
31498         (version_etc): Use fprintf rather than fputs.
31499         Suggestion from Ulrich Drepper.
31500
31501         * lib/Makefile.am (libfetish_a_SOURCES): Add xstrtoimax.c.
31502
31503         * lib/strtoll.c: New file, from GNU libc.
31504         * lib/xstrtoimax.c: New file.
31505
31506         * lib/xstrtol.h: Add xstrtoimax.
31507         * lib/strtoumax.c: New file.  Simply include "strtoumax.c".
31508         * lib/strtoimax.c: New file.  Likewise, but first define
31509         STRTOUXMAX_SIGNED.
31510
31511         * lib/strtoumax.c: Factor to work both for unsigned and signed types,
31512         ...
31513         * lib/strtoxmax.c: ... then renamed to this.
31514
31515 2001-08-18  Paul Eggert  <eggert@twinsun.com>
31516
31517         * m4/inttypes.m4: Add AC_PREREQ(2.13).
31518         (jm_AC_HEADER_INTTYPES_H): Test for intmax_t, too.
31519         (jm_AC_TYPE_INTMAX_T): New macro.
31520         (jm_AC_TYPE_UINTMAX_T): Moved here from uintmax_t.m4.
31521
31522         * m4/longlong.m4 (jm_AC_TYPE_LONG_LONG): New macro.
31523
31524         * m4/longlong.m4: Renamed from ulonglong.m4.
31525         * m4/inttypes.m4: Renamed from inttypes_h.m4.
31526         * m4/uintmax_t.m4: Removed.
31527
31528 2001-08-13  Paul Eggert  <eggert@twinsun.com>
31529
31530         * lib/Makefile.am (unlocked-io.h): Do not append "_unlocked" twice.
31531         Port to Solaris 8, where 'sed' requires a space after the 'r'
31532         command, and where sh dislikes "$/".  Clean up the spacing a bit.
31533         Redirect output to $tmp just once.
31534
31535 2001-08-12  Paul Eggert  <eggert@sic.twinsun.com>
31536
31537         * lib/addext.c (<errno.h>): Include.
31538         (errno): Declare if not defined.
31539         (addext): Work correctly when pathconf returns -1 and leaves
31540         errno alone because there is no limit.  Also, work even if
31541         pathconf returns a value greater than SIZE_MAX.
31542
31543 2001-08-12  Jim Meyering  <meyering@lucent.com>
31544
31545         * m4/afs.m4, assert.m4, bison.m4, check-decl.m4, chown.m4, d-ino.m4,
31546         d-type.m4, dos.m4, error.m4, fnmatch.m4, fpending.m4, fstypename.m4,
31547         fsusage.m4, ftruncate.m4, getgroups.m4, glibc.m4, gnu-source.m4,
31548         group-member.m4, jm-glibc-io.m4, jm-macros.m4, jm-mktime.m4,
31549         jm-winsz1.m4, jm-winsz2.m4, lchown.m4, lib-check.m4, libintl.m4,
31550         link-follow.m4, ls-mntd-fs.m4, lstat.m4, malloc.m4, mbrtowc.m4,
31551         mbstate_t.m4, mbswidth.m4, memcmp.m4, nanosleep.m4, perl.m4,
31552         prereq.m4, putenv.m4, readdir.m4, realloc.m4, regex.m4, rename.m4,
31553         rmdir-errno.m4, search-libs.m4, st_dm_mode.m4, st_mtim.m4, stat.m4,
31554         strftime.m4, timespec.m4, unlink-busy.m4, uptime.m4, utimbuf.m4,
31555         utime.m4, utimes.m4, xstrtoumax.m4:
31556         Quote the first argument in each use of AC_DEFUN.
31557
31558 2001-08-12  Jim Meyering  <meyering@lucent.com>
31559
31560         * lib/xgetcwd.c (xgetcwd) [defined __GLIBC__ && __GLIBC__ >= 2]:
31561         Simply `return getcwd (NULL, 0);'.
31562         [! (defined __GLIBC__ && __GLIBC__ >= 2)]:
31563         Use 1300 as initial value for length, not PATH_MAX.
31564
31565         * lib/pathmax.h: Clean up cpp syntax.
31566
31567 2001-08-12  Jim Meyering  <meyering@lucent.com>
31568
31569         * lib/gettimeofday.c: New file.
31570         * lib/gtod.h: New file.
31571         * lib/Makefile.am (libfetish_a_SOURCES): Add gtod.h.
31572
31573 2001-08-05  Jim Meyering  <meyering@lucent.com>
31574
31575         * m4/jm-macros.m4: Require autoconf-2.52.
31576
31577 2001-08-04  Jim Meyering  <meyering@lucent.com>
31578
31579         * lib/error.h (__attribute__): Remove `|| __STRICT_ANSI__' from #if
31580         stmt, to get in sync with glibc.
31581
31582 2001-08-03  Paul Eggert  <eggert@twinsun.com>
31583
31584         The following changes are from gettext 0.10.39 as maintained by
31585         Bruno Haible.
31586
31587         * lib/mbswidth.h (MBSW_REJECT_UNPRINTABLE, MBSW_REJECT_INVALID):
31588         Renamed from MBSW_ACCEPT_UNPRINTABLE and MBSW_ACCEPT_INVALID
31589         with inverted sense.  All uses changed.
31590
31591         * lib/mbswidth.c: Don't include <limits.h>.
31592         Include <stdlib.h> and <string.h> unconditionally.
31593         (iswcntrl, mbsinit, ISCNTRL): New macros.
31594         (mbsnwidth): Use K&R style function declarations.
31595         Don't bother checking for MB_LEN_MAX == 1, since the compiler
31596         can optimize it when MB_CUR_MAX == 1.
31597         The width of control characters is zero, not 1.
31598
31599 2001-08-03  Paul Eggert  <eggert@twinsun.com>
31600
31601         The following changes are from gettext 0.10.39 as maintained by
31602         Bruno Haible, except that getline.m4 continues to use AC_LIBOBJ.
31603
31604         * m4/codeset.m4: Upgrade to serial AM1.
31605         (AM_LANGINFO_CODESET): Renamed from jm_LANGINFO_CODESET;
31606         all uses changed.  Quote first arg of AC_DEFUN.
31607         (am_cv_langinfo_codeset): Renamed from jm_cv_langinfo_codeset.
31608
31609         * m4/iconv.m4: Upgrade to serial AM2.
31610         (AM_ICONV): Renamed from jm_ICONV; all uses changed.
31611         Add --with-libconv-prefix.
31612         Quote first arg of AC_DEFUN.  Add description for ICONV_CONST.
31613         (am_cv_func_iconv): Renamed from jm_cv_func_iconv.
31614         (am_cv_lib_iconv): Renamed from jm_cv_lib_iconv.
31615         (am_cv_proto_iconv): Renamed from jm_cv_proto_iconv.
31616         * m4/jm-macros.m4 (jm_MACROS): Reflect s/jm_/AM_/ renamings.
31617
31618         * m4/c-bs-a.m4 (AC_C_BACKSLASH_A): Quote first arg of AC_DEFUN.
31619         * m4/getline.m4 (AM_FUNC_GETLINE): Likewise.
31620         * m4/glibc21.m4 (jm_GLIBC21): Likewise.
31621         * m4/inttypes_h.m4 (jm_AC_HEADER_INTTYPES_H): Likewise.
31622         * m4/isc-posix.m4 (AC_ISC_POSIX): Likewise.
31623         * m4/lcmessage.m4 (AM_LC_MESSAGES): Likewise.
31624         * m4/progtest.m4 (AM_PATH_PROG_WITH_TEST): Likewise.
31625         * m4/uintmax_t.m4 (jm_AC_TYPE_UINTMAX_T): Likewise.
31626         * m4/ulonglong.m4 (jm_AC_TYPE_UNSIGNED_LONG_LONG): Likewise.
31627
31628         * m4/getline.m4 (AM_FUNC_GETLINE): Don't bother checking for
31629         string.h any more.
31630
31631         * m4/progtest.m4 (AM_PATH_PROG_WITH_TEST): If not found, print "no",
31632         not the default value.
31633
31634         2001-06-25  Bruno Haible  <haible@clisp.cons.org>
31635         * m4/mbswidth.m4 (jm_PREREQ_MBSWIDTH): Don't require AM_C_PROTOTYPES.
31636         Also check for mbsinit.  Needed for SCO 3.2v5.0.2.
31637         Also include <string.h>; this is where AIX 3.2.5 declares wcwidth.
31638         Also check for iswcntrl, used for wcwidth fallback.
31639         Use AC_TRY_COMPILE to emulate AC_CHECK_DECLS, for portability
31640         to Autoconf 2.13.
31641
31642 2001-08-03  Jim Meyering  <meyering@lucent.com>
31643
31644         * m4/mbrtowc.m4 (jm_FUNC_MBRTOWC): Use `#include', not `@%:@include',
31645         as it was in the original.  Reported by Paul Eggert.
31646
31647 2001-07-16  Jim Meyering  <meyering@lucent.com>
31648
31649         * m4/gettimeofday.m4: New file.
31650         Prompted by a report from Bernhard Baehr.
31651
31652 2001-07-15  Jim Meyering  <meyering@lucent.com>
31653
31654         * m4/Makefile.am.in (Makefile.am): Remove most of the unlocked-io.h
31655         stuff. Now it's in ../Makefile.cfg.
31656
31657 2001-07-15  Jim Meyering  <meyering@lucent.com>
31658
31659         * lib/Makefile.am (EXTRA_DIST): Add unlocked-io.hin.
31660         (BUILT_SOURCES): Add unlocked-io.h.
31661         (io_functions): Define.
31662         (unlocked-io.h): New rule.
31663         (DISTCLEANFILES): Add unlocked-io.h.
31664         (all-local): Depend on unlocked-io.h, to ensure it is created.
31665
31666         * lib/unlocked-io.hin: New file
31667
31668         * lib/regex.c: Update from glibc.
31669
31670 2001-07-05  Jim Meyering  <meyering@lucent.com>
31671
31672         * lib/Makefile.am (noinst_HEADERS): Remove definition, per new automake
31673         recommendation.
31674         (libfetish_a_SOURCES): Put all .h files here instead.
31675         Remove a thus-exposed (better checks in automake) duplicate and
31676         two unnecessary .h files.
31677
31678 2001-07-04  Jim Meyering  <meyering@lucent.com>
31679
31680         * m4/Makefile.am.in (glibc-io.struct): New target.  Rework the code
31681         that generates jm-glibc-io.m4 so that it doesn't trigger any make
31682         distcheck failure.
31683
31684 2001-07-02  Jim Meyering  <meyering@lucent.com>
31685
31686         The following changes were prompted by suggestions from Bruno Haible.
31687
31688         * m4/jm-glibc-io.m4n: New file, the template from which jm-glibc-io.m4
31689         is now generated.
31690         * m4/Makefile.am.in (Makefile.am): Include jm-glibc-io.m4n in emitted
31691         definition of EXTRA_DIST.
31692         (Makefile.am): Emit the dependency, `all-local: jm-glibc-io.m4' to
31693         ensure that the generated file is created/updated whenever the list
31694         of $(unlocked_functions) is changed.
31695         (jm-glibc-io.m4): New rule.
31696         (unlocked-io.h): New rule -- currently unused.
31697
31698 2001-06-24  Jim Meyering  <meyering@lucent.com>
31699
31700         * m4/regex.m4 (jm_INCLUDED_REGEX): Use a quadrigraph to represent an
31701         unmatched right bracket, rather than kludging it with an extra,
31702         falsely-matching quote in a comment.  Patch by Akim Demaille.
31703
31704 2001-06-11  Jim Meyering  <meyering@lucent.com>
31705
31706         * lib/regex.c: Update from GNU libc.
31707
31708 2001-05-27  Jim Meyering  <meyering@lucent.com>
31709
31710         * m4/prereq.m4 (jm_PREREQ_READUTMP): Check for ut_type in struct utmpx.
31711         Check for ut_type in struct utmp.
31712
31713 2001-05-27  Jim Meyering  <meyering@lucent.com>
31714
31715         * lib/readutmp.h (UT_TYPE): Define.
31716
31717 2001-05-24  Jim Meyering  <meyering@lucent.com>
31718
31719         * lib/argmatch.c: Include "quote.h".
31720         (argmatch_invalid): Remove explicit `' quotes.  Instead, use the
31721         quote function.  Reported by Göran Uddeborg.
31722
31723 2001-05-22  Jim Meyering  <meyering@lucent.com>
31724
31725         * m4/strftime.m4 (_jm_STRFTIME_PREREQS): Don't use AC_LIBOBJ(strftime),
31726         now that we use the package-supplied version unconditionally.
31727         (jm_FUNC_STRFTIME): Don't replace strftime, for the same reason.
31728
31729 2001-05-21  Jim Meyering  <meyering@lucent.com>
31730
31731         * m4/regex.m4: Change a couple backticks to single quotes to avoid
31732         shell syntax errors.
31733
31734 2001-05-21  Alexandre Duret-Lutz  <duret_g@epita.fr>
31735
31736         * m4/dos.m4 (jm_AC_DOS): Check for _WIN32, __WIN32__, and __MSDOS__.
31737
31738 2001-05-20  Paul Eggert  <eggert@twinsun.com>
31739
31740         * m4/strftime.m4 (jm_FUNC_GNU_STRFTIME):
31741         Don't bother to check library strftime, since
31742         we'll be using our own my_strftime function anyway.
31743         Define my_strftime instead of strftime.
31744
31745 2001-05-20  Alexandre Duret-Lutz  <duret_g@epita.fr>
31746
31747         * lib/dirname.c (dir_name): Compute append_dot using path, not newpath
31748         which is not yet declared.
31749
31750 2001-05-15  Jim Meyering  <meyering@lucent.com>
31751
31752         * m4/regex.m4: Use proper quoting so brackets appear in the test
31753         program.
31754         Reported by, and with help from, Bruno Haible.
31755
31756 2001-05-13  Jim Meyering  <meyering@lucent.com>
31757
31758         * m4/jm-macros.m4 (major_t, minor_t): Define to unsigned int if
31759         undefined.
31760
31761 2001-05-11  Paul Eggert  <eggert@twinsun.com>
31762
31763         dirname code cleanup.  base_name now behaves more compatibly
31764         with POSIX basename when given file names that have trailing
31765         slashes, and similarly for dir_name.  Add new primitives
31766         base_len and dir_len.  Put the directory-name-related decls
31767         into dirname.h.
31768
31769         * lib/addext.c (ISSLASH, base_name): Remove; now in dirname.h.
31770         * lib/backupfile.c (base_name): Likewise.
31771         * lib/basename.c (FILESYSTEM_PREFIX_LEN, PARAMS, ISSLASH): Likewise.
31772         * lib/dirname.c (FILESYSTEM_PREFIX_LEN, ISSLASH): Likewise.
31773         * lib/makepath.c (strip_trailing_slashes): Likewise.
31774         * lib/path-concat.c (DIRECTORY_SEPARATOR, FILESYSTEM_PREFIX_LEN,
31775         ISSLASH): Likewise.
31776         * lib/rename.c (strip_trailing_slashes): Likewise.
31777         * lib/same.c (base_name): Likewise.
31778         * lib/stripslash.c (ISSLASH): Likewise.
31779
31780         * lib/addext.c: Include <dirname.h> after size_t is defined.
31781         * lib/backupfile.c: Likewise.
31782
31783         * lib/addext.c (addext): Use base_len to trim redundant
31784         trailing slashes instead of doing it ourselves.
31785         But do not trim the last slash if it is not redundant.
31786
31787         * lib/backupfile.c (find_backup_file_name,
31788         max_backup_version): Use base_len instead of rolling it ourselves.
31789         Handle the case of "" and (on DOS) "C:" correctly.
31790
31791         * lib/basename.c: Do not include <stdio.h>, <assert.h>; no longer
31792         needed. Include <string.h>, <dirname.h>.
31793         (base_name): Allow file names ending in slashes, other than names
31794         that are all slashes.  In this case, return the basename followed
31795         by the slashes.  This is more general, and can be used in places
31796         where the original base_name purposely had an assertion failure.
31797         (base_len): New function.
31798
31799         * lib/dirname.c: Include <string.h> instead of <stdlib.h>.
31800         Do not include <assert.h>; no longer needed.
31801         Include xalloc.h.
31802         (memrchr): Remove decl.
31803         (dir_name_r): Remove.
31804         (dir_len): Renamed from dirlen.  All callers changed.
31805         Rewrite in terms of base_name, for simplicity and consistency.
31806         (dir_name): Never return NULL.  All callers changed.
31807         Do not include <stdlib.h> in test program; no longer needed.
31808         return 0; is fine for test program.
31809
31810         * lib/dirname.h (DIRECTORY_SEPARATOR, ISSLASH, FILESYSTEM_PREFIX_LEN):
31811         New macros.
31812         (base_name, base_len, dir_len, strip_trailing_slashes): New decls.
31813
31814         * lib/path-concat.c (path_concat): Use base_len to compute
31815         base length, not strlen; this means we cannot rely on memcpy
31816         to null-terminate.
31817
31818         * lib/same.c (STREQ): Remove.
31819         (same_name): Handle the case where the basename ends in trailing '/'.
31820
31821         * lib/stripslash.c (strip_trailing_slashes): Return nonzero if
31822         a slash was stripped.  Do not strip the last slash after a
31823         file system prefix.
31824
31825 2001-05-11  Paul Eggert  <eggert@twinsun.com>
31826
31827         * lib/Makefile.am (libfetish_a_SOURCES):
31828         Add strftime.c, since we now compile it on all hosts.
31829
31830         * lib/strftime.c (my_strftime):
31831         Define to nstrftime if emacs, but only if my_strftime is not defined.
31832         (extra_args, extra_args_spec, extra_args_spec_iso): Rename from
31833         ut_argument, ut_argument_spec, ut_argument_spec_iso, respectively.
31834         Add one more extra argument: a nanoseconds value.
31835         All uses changed.
31836         (ns): New macro.
31837         (my_strftime function): Add %N format.
31838         (emacs_strftimeu): Renamed from emacs_strftime,
31839         with extra ut argument.
31840
31841 2001-05-09  Paul Eggert  <eggert@twinsun.com>
31842
31843         * m4/jm-macros.m4 (jm_MACROS): Do not check for fseeko; no longer used.
31844
31845 2001-04-21  Jim Meyering  <meyering@lucent.com>
31846
31847         * m4/rmdir-errno.m4: Write to a new file, so that a restrictive umask
31848         doesn't interfere.
31849
31850 2001-04-21  Alexandre Duret-Lutz  <duret_g@epita.fr>
31851
31852         * m4/ftruncate.m4: Check for chsize.
31853         Link with ftruncate.o unconditionally if ftruncate is missing.
31854         This was required when cross-compiling to i586-mingw32msvc.
31855
31856 2001-04-08  Jim Meyering  <meyering@lucent.com>
31857
31858         * lib/getdate.y (get_date): Set tm_isdst to -1 to ensure that it is
31859         recomputed; that's necessary when the offset spans a DST transition.
31860         Patch by David J. MacKenzie.  Reported by Hon-Yin Kok.
31861
31862 2001-04-02  Jim Meyering  <meyering@lucent.com>
31863
31864         * lib/regex.h, regex.c: Update from GNU libc.
31865
31866 2001-03-24  Jim Meyering  <meyering@lucent.com>
31867
31868         * m4/jm-macros.m4: Require autoconf-2.49d.
31869
31870 2001-03-20  Bruno Haible  <haible@clisp.cons.org>
31871
31872         * m4/iconv.m4 (jm_ICONV): Recommend GNU libiconv.
31873
31874 2001-03-19  Paul Eggert  <eggert@twinsun.com>
31875
31876         * lib/version-etc.c (version_etc_copyright): Update to 2001.
31877
31878 2001-03-17  Jim Meyering  <meyering@lucent.com>
31879
31880         * m4/memcmp.m4 (jm_AC_FUNC_MEMCMP): Remove my copy of AC_FUNC_MEMCMP,
31881         now that the version in autoconf is equivalent.
31882         (jm_FUNC_MEMCMP): Adjust to use AC_FUNC_MEMCMP.
31883
31884         * m4/error.m4 (jm_PREREQ_ERROR): Invoke AC_FUNC_STRERROR_R.
31885         Suggestion from Akim Demaille.
31886
31887         * m4/prereq.m4 (jm_PREREQ): Add jm_PREREQ_TEMPNAME.
31888         (jm_PREREQ_TEMPNAME): New function.
31889
31890 2001-03-16  Paul Eggert  <eggert@twinsun.com>
31891
31892         * lib/tempname.c (uint64_t): Define to uintmax_t if
31893         not defined, and if UINT64_MAX is not defined.
31894         Required at least for Vax Ultrix4.3, which doesn't define uint64_t.
31895         Reported by John David Anglin.
31896
31897 2001-03-15  Bruno Haible  <haible@clisp.cons.org>
31898
31899         * lib/localcharset.c (locale_charset): Allow wildcard syntax. Also
31900         resolve alias if codeset is empty.
31901         * lib/config.charset (BeOS): Use wildcard syntax.
31902
31903 2001-03-13  Jim Meyering  <meyering@lucent.com>
31904
31905         * lib/path-concat.c (path_concat)
31906         [FILESYSTEM_ACCEPTS_DRIVE_LETTER_PREFIX]: Don't insert a backslash when
31907         concatenating e.g., `C:' and `foo'.
31908         From Bruno Haible.
31909
31910 2001-03-06  Bruno Haible  <haible@clisp.cons.org>
31911
31912         * lib/localcharset.c (locale_charset): Don't use
31913         setlocale(LC_CTYPE,NULL). Don't return NULL.
31914         * lib/unicodeio.c (print_unicode_char): Simplify accordingly.
31915
31916 2001-03-06  Bruno Haible  <haible@clisp.cons.org>
31917
31918         * lib/config.charset: Update for FreeBSD 4.2 and OSF/1 5.1. Add
31919         support for DOS/DJGPP.
31920
31921 2001-03-01  Paul Eggert  <eggert@twinsun.com>
31922
31923         * m4/jm-macros.m4 (jm_MACROS): Use mkstemp replacement if the system
31924         lacks mkstemp.  Compile our own tempname.c if we compile our own
31925         mkstemp.c, as mkstemp relies on tempname.
31926
31927 2001-03-01  Jim Meyering  <meyering@lucent.com>
31928
31929         * m4/dos.m4 (jm_AC_DOS): Remove extra backslashes, now that
31930         AH_VERBATIM really does output its argument verbatim.
31931
31932 2001-02-28  Paul Eggert  <eggert@twinsun.com>
31933
31934         * lib/Makefile.am (libfetish_a_SOURCES):
31935         Add dup-safer.c, fopen-safer.c.
31936         (noinst_HEADERS): Add stdio-safer.h, unistd-safer.h.
31937
31938         * lib/dup-safer.c, lib/fopen-safer.c, lib/stdio-safer.h:
31939         * lib/unistd-safer.h: New files.
31940
31941 2001-02-25  Paul Eggert  <eggert@twinsun.com>
31942
31943         The mkstemp replacement is taken from glibc 2.2.2, with some
31944         portability fixes for use outside glibc, as follows:
31945
31946         * lib/tempname.c (struct_stat64): New macro.
31947         (direxists, __gen_tempname): Use it.
31948         This avoids a portability problem with Solaris 8.
31949
31950         * lib/tempname.c (<config.h>): Include if HAVE_CONFIG_H.
31951         (<stddef.h>, <stdint.h>, <string.h>):
31952         Include only if STDC_HEADERS || _LIBC.
31953         (<fcntl.h>): Include only if HAVE_FCNTL_H || _LIBC.
31954         (<unistd.h>): Include only if HAVE_UNISTD_H || _LIBC.
31955         (<sys/time.h>): Include only if HAVE_SYS_TIME_H || _LIBC.
31956         (__set_errno): Define this macro if <errno.h> doesn't.
31957         (P_tmpdir, TMP_MAX, __GT_FILE, __GT_BIGFILE, __GT_DIR, __GT_NOCREATE):
31958         Define these macros if <stdio.h> doesn't.
31959         (S_ISDIR, S_IRUSR, S_IWUSR, S_IXUSR):
31960         Define these macros if <sys/stat.h>
31961         doesn't.  Ignore <sys/stat.h> S_ISDIR if STAT_MACROS_BROKEN.
31962         (stat64, __getpid, __gettimeofday, __mkdir, __open, __open64, lxstat64,
31963         __xstat64): Define if not _LIBC.
31964         (__secure_getenv): Define if ! (HAVE___SECURE_GETENV || _LIBC).
31965         (__gen_tempname): Invoke gettimeofday only if
31966         HAVE_GETTIMEOFDAY || _LIBC;
31967         otherwise, fall back on plain "time".
31968         Use macros like S_IRUSR | S_IWUSR rather than octal values like 0600.
31969
31970         * lib/mkstemp.c (__GT_FILE): Define to zero if not defined.
31971
31972         * lib/mkstemp.c, lib/tempname.c: New files, taken from glibc 2.2.2.
31973
31974 2001-02-18  Paul Eggert  <eggert@twinsun.com>
31975
31976         * m4/jm-macros.m4 (jm_CHECK_ALL_HEADERS): Check for sys/resource.h.
31977
31978 2001-02-17  Paul Eggert  <eggert@twinsun.com>
31979
31980         * m4/mbrtowc.m4: New file, defining jm_FUNC_MBRTOWC.
31981         * m4/mbswidth.m4 (jm_PREREQ_MBSWIDTH):
31982         Use jm_FUNC_MBRTOWC, not AC_CHECK_FUNCS(mbrtowc).
31983         * m4/prereq.m4 (jm_PREREQ_QUOTEARG): Likewise.
31984
31985 2001-02-17  Paul Eggert  <eggert@twinsun.com>
31986
31987         * lib/mbswidth.c, quotearg.c (mbrtowc, mbsinit):
31988         Remove workaround macros for hosts that have mbrtowc but not
31989         mbstate_t, as we now insist on proper declarations for both
31990         before using mbrtowc.
31991
31992 2001-02-17  Jim Meyering  <meyering@lucent.com>
31993
31994         * m4/ls-mntd-fs.m4 (jm_LIST_MOUNTED_FILESYSTEMS): Don't check for
31995         getmntent via AC_CHECK_FUNCS, since that would get a `no' and disrupt
31996         further attempts by AC_FUNC_GETMNTENT to check with e.g., -lgen on
31997         UnixWare 7.1.1.
31998
31999         * m4/mbrtowc.m4 (jm_FUNC_MBRTOWC): Adapt to use AC_CACHE_CHECK etc.,
32000         rather than AC_CACHE_VAL.
32001
32002 2001-02-17  Jim Meyering  <meyering@lucent.com>
32003
32004         * lib/strtoul.c: Sync from GNU libc.  Use double quotes, not <...>
32005         around included file name.
32006
32007         * lib/strnlen.c (__strnlen): Merge in a change from GNU libc.
32008
32009         * lib/strftime.c: Update from GNU libc (the only changes were to
32010         comments).
32011
32012 2001-02-17  Jim Meyering  <meyering@lucent.com>
32013
32014         * lib/regex.c: Update from libc.
32015
32016 2001-02-17  Bruno Haible  <haible@clisp.cons.org>
32017
32018         * lib/mbswidth.h (mbswidth): Also define as macro, to avoid prototype
32019         clash.
32020
32021 2001-02-16  Paul Eggert  <eggert@twinsun.com>
32022
32023         * lib/alloca.c (malloc): Undef before defining, since stdlib.h
32024         may have defined it.  Needed for Encore Umax-3.0.9.16b systems.
32025         Reported by Mark Hounschell via Paul Eggert.
32026
32027 2001-02-07  Jim Meyering  <meyering@lucent.com>
32028
32029         * m4/regex.m4 (jm_INCLUDED_REGEX): Add a test for the latest bug.
32030
32031 2001-02-05  Jim Meyering  <meyering@lucent.com>
32032
32033         * m4/jm-macros.m4: Require autoconf-2.14d (not yet released), because
32034         it includes the patch required for `large file' support with at least
32035         HP-UX's 10.20 /bin/cc.
32036
32037 2001-02-03  Jim Meyering  <meyering@lucent.com>
32038
32039         * m4/ls-mntd-fs.m4 (jm_LIST_MOUNTED_FILESYSTEMS): Restore prior use of
32040         AS_IF, now that it works once again (mysteriously).
32041         * m4/fsusage.m4 (jm_FILE_SYSTEM_USAGE): Likewise.
32042
32043 2001-01-30  Jim Meyering  <meyering@lucent.com>
32044
32045         Don't use filenames that are 8.3-equivalent to "conftest" on DOS.
32046         * m4/chown.m4: Rename conftestchown to conftest.chown.
32047         * m4/rename.m4: s/conftestdir/conftest.d1/ and
32048         s/conftestdir2/conftest.d2/.
32049         * m4/utimes.m4: s/conftestdata/conftest.data/
32050         Inspired by Pavel Roskin's change in autoconf.
32051
32052 2001-01-30  Bruno Haible  <haible@clisp.cons.org>
32053
32054         * lib/config.charset: Update for FreeBSD 4.2.
32055
32056 2001-01-27  Jim Meyering  <meyering@lucent.com>
32057
32058         * m4/ls-mntd-fs.m4 (jm_LIST_MOUNTED_FILESYSTEMS): Open-code what was
32059         a use of AS_IF.
32060         * m4/fsusage.m4 (jm_FILE_SYSTEM_USAGE): Likewise.
32061
32062 2001-01-26  Jim Meyering  <meyering@lucent.com>
32063
32064         * m4/prereq.m4 (jm_PREREQ_QUOTEARG): Check for stddef.h, now that
32065         quotearg.c includes it.
32066
32067 2001-01-26  Jim Meyering  <meyering@lucent.com>
32068
32069         * lib/quotearg.c: Include stddef.h.
32070         * lib/quote.c: Include stddef.h.
32071         Reported by Axel Kittenberger.
32072
32073         * lib/xmalloc.c [HAVE_DONE_WORKING_MALLOC_CHECK]: Enclose error-evoking
32074         line in double quotes so that it evokes a better diagnostic.
32075         [HAVE_DONE_WORKING_REALLOC_CHECK]: Likewise.
32076         Reported by Axel Kittenberger.
32077
32078 2001-01-24  Stefan Monnier  <monnier@cs.yale.edu>
32079
32080         * regex.c (mutually_exclusive_p): Don't blindly handle `charset_not'
32081         as if it was a `charset'.
32082
32083 2001-01-21  Bruno Haible  <haible@clisp.cons.org>
32084
32085         * m4/iconv.m4 (jm_ICONV): Also check whether the iconv declaration
32086         has const.
32087
32088 2001-01-21  Bruno Haible  <haible@clisp.cons.org>
32089
32090         * lib/unicodeio.c (print_unicode_char): Cast the second iconv() arg,
32091         to avoid a warning.  Add back 'const' to inptr.
32092
32093 2001-01-20  Jim Meyering  <meyering@lucent.com>
32094
32095         Be sure that headers are checked before used in code compiled
32096         for the type checks.
32097         * m4/jm-macros.m4 (jm_MACROS): Remove all header checks.
32098         In place of that, invoke jm_CHECK_ALL_TYPES.
32099         (jm_CHECK_ALL_HEADERS): New functions with the above checks.
32100         (jm_CHECK_ALL_TYPES): Require jm_CHECK_ALL_HEADERS.
32101         Alan Iwi reported a build failure on an f300-fujitsu-uxpv4.1_ES;
32102         The check for ssize_t was mistakenly run before the test for unistd.h.
32103
32104         The configure-time check for stdbool.h was missing.
32105         * m4/prereq.m4 (jm_PREREQ): Add jm_PREREQ_HASH.
32106         (jm_PREREQ_HASH): New function.
32107
32108 2001-01-17  Jim Meyering  <meyering@lucent.com>
32109
32110         * m4/fsusage.m4 (jm_FILE_SYSTEM_USAGE): Use AS_IF, not AS_IFELSE,
32111         for autoconf-2.49c.
32112         * m4/ls-mntd-fs.m4 (jm_LIST_MOUNTED_FILESYSTEMS): Likewise.
32113
32114 2001-01-16  Jim Meyering  <meyering@lucent.com>
32115
32116         * lib/basename.c: Include <stdio.h>, needed by assert on SunOS 4.
32117         From Bruno Haible.
32118
32119 2001-01-14  Jim Meyering  <meyering@lucent.com>
32120
32121         * m4/rename.m4: Use temporary directories named conftestdir{,2}, not
32122         foo and bar.  Create conftestdir/ in the script, not in the C code.
32123         Remove directories in the script, not in the C code.
32124         Remove conftestdir{,2} before trying to create the directory.
32125         Make the entire configure script fail if the mkdir fails.
32126
32127 2001-01-14  Jim Meyering  <meyering@lucent.com>
32128
32129         * lib/rename.c: New file.  From Volker Borchert.
32130         Include stdlib.h, string.h or strings.h, and xalloc.h.
32131         Use strip_trailing_slashes rather than open-coding it.
32132
32133 2001-01-03  Paul Eggert  <eggert@twinsun.com>
32134
32135         * lib/strftime.c: Sync with glibc time/strftime.c 1.81.
32136
32137 2001-01-03  Jim Meyering  <meyering@lucent.com>
32138
32139         * lib/unicodeio.c (print_unicode_char): Remove `const' from declaration
32140         of local `inptr' to avoid warning with some system declarations of
32141         iconv.
32142
32143 2001-01-02  Volker Borchert  <bt@teknon.de>
32144
32145         * m4/rename.m4: New file.
32146         * m4/jm-macros.m4 (jm_MACROS): Require vb_FUNC_RENAME.
32147
32148 2001-01-01  Jim Meyering  <meyering@lucent.com>
32149
32150         * m4/prereq.m4 (jm_PREREQ_READUTMP): Include utmp.h (if available),
32151         even on systems with utmpx.h.  It's necessary for the declaration of
32152         utmp's ut_user member.  Reported by Andreas Jaeger.
32153
32154         * m4/check-decl.m4 (jm_CHECK_DECLS): Include grp.h and pwd.h if
32155         available. They are required for the declarations of getgrgid and
32156         getpwuid resp.
32157         (_jm_DECL_HEADERS): Check for grp.h and pwd.h.
32158         Reported by Andreas Jaeger.
32159
32160 2001-01-01  Alexandre Duret-Lutz  <duret_g@epita.fr>
32161
32162         * m4/libintl.m4 (AM_GNU_GETTEXT): Define MKINSTALLDIRS by
32163         expanding the value of $ac_aux_dir, as in AM_MISSING_HAS_RUN,
32164         so `make install' also works in VPATH builds.
32165
32166 2000-12-31  Alexandre Duret-Lutz  <duret_g@epita.fr>
32167
32168         * m4/libintl.m4 (AM_WITH_NLS): When using AC_CONFIG_AUX_DIR,
32169         prepend $(top_srcdir) to the value of MKINSTALLDIRS so that it
32170         can be used in subdirectories.
32171
32172 2000-12-29  Paul Eggert  <eggert@twinsun.com>
32173
32174         * lib/modechange.c: Do not assume that mode_t uses the
32175         traditional octal encoding.  E.g. "chmod 1 FOO" should set
32176         the other-execute bit of FOO even if S_IXOTH != 1.
32177
32178         (SUID, SGID, SVTX, RUSR, WUSR, XUSR, RGRP, WGRP, XGRP, ROTH,
32179         WOTH, XOTH, ALLM): New macros.
32180         (S_ISUID, S_ISGID, S_ISVTX, S_IRUSR, S_IWUSR, S_IXUSR,
32181          S_IRGRP, S_IWGRP, S_IXGRP, S_IROTH, S_IWOTH, S_IXOTH):
32182         Use them.
32183         (S_ISGID): Fix typo; it was defaulting to the same value as S_ISUID.
32184         (S_IRWXU, S_IRWXG, S_IRWXO): Specify defaults in terms of the above.
32185         (mode_compile):
32186         No need to use uintmax_t; unsigned long is long enough.
32187         Don't bother to get suffix since we don't use it.
32188
32189 2000-12-26  Jim Meyering  <meyering@lucent.com>
32190
32191         * m4/dos.m4 (jm_AC_DOS): Rewrite (though it's still a stub) to work
32192         better with autoheader.
32193
32194 2000-12-24  Jim Meyering  <meyering@lucent.com>
32195
32196         * lib/hash.c (is_prime): Return explicit boolean values.
32197         (hash_get_first): Return NULL to appease Irix5.6's 89.
32198         Reported by Nelson Beebe.
32199
32200 2000-12-19  Bruno Haible  <haible@clisp.cons.org>
32201
32202         * lib/localcharset.c (locale_charset): Add support for Win32.
32203
32204 2000-12-18  Paul Eggert  <eggert@twinsun.com>
32205
32206         * lib/physmem.h, lib/physmem.c: New files.
32207
32208         * lib/Makefile.am (libfetish_a_SOURCES): Add physmem.c.
32209         (noinst_HEADERS): Add physmem.h.
32210
32211         * lib/xstrtol.c (__xstrtol): Add undocumented suffixes 'g' and
32212         't' for compatibility with Solaris 8 sort.
32213
32214 2000-12-18  Bruno Haible  <haible@clisp.cons.org>
32215
32216         * lib/config.charset: Add support for BeOS.
32217
32218 2000-12-17  Jim Meyering  <meyering@lucent.com>
32219
32220         * m4/dos.m4 (jm_AC_DOS): New file and macro.
32221         * m4/jm-macros.m4 (jm_MACROS): Require jm_AC_DOS.
32222
32223 2000-12-16  Jim Meyering  <meyering@lucent.com>
32224
32225         This bug had a serious impact on chown: `chown N:M FILE' (for integer
32226         N and M) would have treated it like `chown N:N FILE'.
32227
32228         * lib/userspec.c (parse_user_spec): Fix typo: s/u/g/.
32229
32230 2000-12-16  Jim Meyering  <meyering@lucent.com>
32231
32232         * lib/getusershell.c [!SHELLS_FILE && __DJGPP__]: Define
32233         SHELLS_FILE to a file name that's useful on djgpp systems.
32234         Include stdlib.h.
32235         (ADDITIONAL_DEFAULT_SHELLS): Define.
32236         (default_shells): Prepend ADDITIONAL_DEFAULT_SHELLS.
32237         Based mostly on a patch from Prashant TR.
32238
32239 2000-12-16  Bruno Haible  <haible@clisp.cons.org>
32240
32241         * lib/config.charset: Add ISO-8859-3, BIG5HKSCS, GB18030, JOHAB,
32242         VISCII, CP874, CP949, CP950, CP1250, CP1253, CP1254, CP1255, CP1256,
32243         CP1257 to the list of canonical encodings. Rename EUC-CN to GB2312.
32244
32245 2000-12-08  Andreas Schwab  <schwab@suse.de>
32246
32247         * lib/mbswidth.c (mbsnwidth): Don't loop endlessly when called with an
32248         invalid mulitbyte sequence and with the MBSW_ACCEPT_INVALID flag set.
32249
32250 2000-12-07  Jim Meyering  <meyering@lucent.com>
32251
32252         * lib/stripslash.c (ISSLASH): Define.
32253         (strip_trailing_slashes): Use ISSLASH rather than comparing against
32254         `/'.
32255         From Prashant TR.
32256
32257         * lib/dirname.c (FILESYSTEM_PREFIX_LEN): Define.
32258         (dir_name_r): Declare this function as static.
32259         [BACKSLASH_IS_PATH_SEPARATOR]: Fix a bug that'd
32260         manifest itself on a name containing a mix of slashes and
32261         backslashes.
32262         Make this function work with names starting with a DOS-style
32263         drive letter and colon prefix.
32264         (dir_name): Append `.' if necessary.
32265         Based mostly on patches from Prashant TR and Eli Zaretskii.
32266
32267         * lib/dirname.h (dir_name_r): Remove prototype.
32268
32269 2000-12-06  Paul Eggert  <eggert@twinsun.com>
32270
32271         * m4/off_t-format.m4: Remove this file.
32272         * m4/jm-macros.m4 (jm_MACROS): Remove jm_SYS_OFF_T_PRINTF_FORMAT.
32273
32274 2000-12-06  Jim Meyering  <meyering@lucent.com>
32275
32276         * m4/xstrtoumax.m4 (jm_AC_PREREQ_XSTRTOUMAX): If we need the
32277         replacement strtoull, we may well need the replacement strtoul, too.
32278         Check for declarations of strtoul and strtoull.
32279         Check for strtol.  Mainly as a cue to cause automake to include
32280         strtol.c -- that file is included by each of strtoul.c and strtoull.c.
32281         Check for limits.h -- strtol.c needs it.
32282
32283 2000-12-05  Jim Meyering  <meyering@lucent.com>
32284
32285         * lib/dirname.c (dir_name_r): Add `const' in a few local declarations.
32286
32287 2000-12-04  Jim Meyering  <meyering@lucent.com>
32288
32289         * lib/path-concat.c: [!HAVE_DECL_MALLOC]: Declare malloc.
32290         Also include memory.h, stdlib.h, unistd.h if appropriate.
32291         Reported by Andreas Jaeger (conflicting declaration of malloc).
32292
32293 2000-12-02  Jim Meyering  <meyering@lucent.com>
32294
32295         * m4/off_t-format.m4 (OFF_T_PRINTF_FORMAT_STRING): New file/macro.
32296         * m4/jm-macros.m4 (jm_MACROS): require it.
32297
32298 2000-12-02  Jim Meyering  <meyering@lucent.com>
32299
32300         * lib/closeout.h: Make idempotent, to avoid some obscure warnings.
32301
32302 2000-12-01  Paul Eggert  <eggert@twinsun.com>
32303
32304         * lib/memrchr.c: Include <config.h> before any system include file.
32305
32306 2000-11-30  Jim Meyering  <meyering@lucent.com>
32307
32308         * m4/jm-macros.m4 (jm_MACROS): Check for stdint.h.
32309
32310 2000-11-30  Jim Meyering  <meyering@lucent.com>
32311
32312         * m4/getloadavg.m4: s/ifval/m4_ifval/ to accommodate new autoconf.
32313
32314 2000-11-29  Paul Eggert  <eggert@twinsun.com>
32315
32316         * lib/dirname.c (dir_name_r): Fix typo: int -> size_t.
32317
32318 2000-11-26  Jim Meyering  <meyering@lucent.com>
32319
32320         * lib/memcoll.c: Include sys/types.h.  From Werner Almesberger.
32321
32322 2000-11-22  Paul Eggert  <eggert@twinsun.com>
32323
32324         * lib/strftime.c (my_strftime): Do not invoke mbrlen with a
32325         size of (size_t) -1; it's not portable.
32326
32327 2000-11-17  Jim Meyering  <meyering@lucent.com>
32328
32329         * lib/strstr.c: Update from GNU libc.
32330
32331 2000-11-17  Akim Demaille  <akim@epita.fr>
32332
32333         * lib/obstack.h: Formatting changes.
32334         (obstack_grow, obstack_grow0): Don't cast WHERE at all: that would
32335         prevent type checking.
32336         (obstack_ptr_grow, obstack_ptr_grow_fast): When assigning, don't
32337         cast the value to (void *): assigning a `foo *' to a `void *'
32338         variable is valid.
32339         (obstack_int_grow, obstack_int_grow_fast): Don't cast AINT to int.
32340
32341 2000-11-16  Jim Meyering  <meyering@lucent.com>
32342
32343         * lib/strverscmp.c: Incorporate weak-alias-related changes from glibc.
32344
32345 2000-11-11  Jim Meyering  <meyering@lucent.com>
32346
32347         * lib/error.c: Add a couple #includes, merging from GNU libc version.
32348
32349 2000-11-10  Jim Meyering  <meyering@lucent.com>
32350
32351         * lib/obstack.h: Update from GNU libc.
32352         * lib/obstack.c: Likewise.
32353
32354 2000-11-08  Bruno Haible  <haible@clisp.cons.org>
32355
32356         * m4/jm-macros.m4 (jm_MACROS): Add test for wcrtomb.
32357
32358 2000-11-06  Paul Eggert  <eggert@twinsun.com>
32359
32360         * lib/getusershell.c (setusershell): Use rewind rather than
32361         fseek/fseeko, to avoid configuration hassles with fseeko.
32362         Don't bother opening SHELLS_FILE if shellstream is NULL;
32363         it's not necessary.
32364
32365 2000-11-05  Jim Meyering  <meyering@lucent.com>
32366
32367         * lib/makepath.h (make_dir): Declare.
32368         * lib/makepath.c (make_dir): Remove `static' attribute.
32369         Tweak a comment.
32370
32371 2000-11-04  Jim Meyering  <meyering@lucent.com>
32372
32373         * m4/regex.m4: Use the `m4_' prefix on `syscmd' and `m4_sysval'.
32374
32375 2000-11-04  Alexandre Duret-Lutz  <duret_g@epita.fr>
32376
32377         * lib/hash.c (hash_get_next): Fix a thinko:  when ENTRY is the
32378         last one in a bucket, advance to the next bucket.
32379
32380 2000-11-02  Vesselin Atanasov  <vesselin@bgnet.bg>
32381
32382         * lib/fnmatch.c: Do not comment out all the code if we are using
32383         the GNU C library, because in some cases we are replacing buggy
32384         code in the GNU C library itself.
32385
32386 2000-10-30  Stefan Monnier  <monnier@cs.yale.edu>
32387
32388         * regex.c (re_iswctype, re_wctype_to_bit): Fix braino.
32389         (regex_compile): Catch bogus \(\1\).
32390
32391 2000-10-30  Paul Eggert  <eggert@twinsun.com>
32392
32393         * lib/fnmatch.c (FOLD): Do not assume that characters are unsigned.
32394         (fnmatch): Fix some FNM_FILE_NAME and FNM_LEADING_DIR bugs,
32395         e.g. fnmatch("d*/*1", "d/s/1", FNM_FILE_NAME) incorrectly yielded zero.
32396
32397 2000-10-30  Paul Eggert  <eggert@twinsun.com>
32398
32399         * lib/error.h, getline.h, modechange.h:
32400         Remove "2000" from Copyright line, as the file hasn't been
32401         changed this year other than in the copyright notice.
32402
32403         * lib/xalloc.h: Add "2000" to Copyright line, as this file
32404         was changed this year.
32405
32406 2000-10-29  Jim Meyering  <meyering@lucent.com>
32407
32408         * m4/fsusage.m4: s/AC_SHELL_IFELSE/AS_IFELSE/ to match autoconf
32409         renaming.
32410         * m4/ls-mntd-fs.m4: Likewise
32411
32412 2000-10-29  Jim Meyering  <meyering@lucent.com>
32413
32414         * lib/xstat.in: Fix grammar in comment.
32415
32416 2000-10-29  Greg Louis  <glouis@dynamicro.on.ca>
32417
32418         * lib/regex.h (__restrict_arr): Move definition out of #ifndef block.
32419         Required because egcs-2.91.66 (aka 1.1.2) defines __restrict, but
32420         doesn't define __restrict_arr.
32421
32422 2000-10-28  Jim Meyering  <meyering@lucent.com>
32423
32424         * m4/prereq.m4 (jm_PREREQ): Add jm_PREREQ_MEMCHR.
32425         (jm_PREREQ_MEMCHR): New function.
32426
32427 2000-10-28  Jim Meyering  <meyering@lucent.com>
32428
32429         * lib/memchr.c: Update from libc.
32430         Adjust for portability:
32431         [HAVE_STDLIB_H]: Include stdlib.h.
32432         [HAVE_BP_SYM_H || _LIBC]: Guard inclusion of bp-sym.h.
32433         Undef __memchr, too.
32434         [!weak_alias]: Define __memchr to memchr.
32435
32436         * lib/regex.c: Update from libc.
32437         * lib/regex.h: Likewise.
32438         * lib/getopt1.c: Likewise.
32439         * lib/memcmp.c: Likewise.
32440
32441         * lib/getusershell.c (setusershell) [HAVE_FSEEKO]: Use fseeko.
32442         Avoid using fseek, when possible -- it's broken by design.
32443         Patch by Ulrich Drepper.
32444
32445 2000-10-27  Stefan Monnier  <monnier@cs.yale.edu>
32446
32447         * regex.c (POP_FAILURE_REG_OR_COUNT, re_match_2_internal)
32448         (re_match_2_internal, re_match_2_internal, re_match_2_internal):
32449         Giving in to popular pressure to shut up the compiler with casts.
32450
32451 2000-10-26  Jim Meyering  <meyering@lucent.com>
32452
32453         * lib/strftime.c: Update from libc.
32454
32455 2000-10-25  Stefan Monnier  <monnier@cs.yale.edu>
32456
32457         * regex.c: More `unsigned char' -> `re_char' changes.
32458         Also change several `int' into `re_wchar_t'.
32459         (PATTERN_STACK_EMPTY, PUSH_PATTERN_OP, POP_PATTERN_OP): Remove.
32460         (PUSH_FAILURE_POINTER): Don't cast any more.
32461         (POP_FAILURE_REG_OR_COUNT): Remove the cast that strips `const'.
32462         We want GCC to complain, since this piece of code makes
32463         re_match non-reentrant, which *should* be fixed.
32464         (GET_BUFFER_SPACE): Use size_t rather than unsigned long.
32465         (EXTEND_BUFFER): Use RETALLOC.
32466         (SET_LIST_BIT): Don't cast.
32467         (re_wchar_t): New type.
32468         (re_iswctype, re_wctype_to_bit): Make it crystal clear to GCC
32469         that those two functions will always properly return.
32470         (IMMEDIATE_QUIT_CHECK): Cast to void.
32471         (analyse_first): Use recursion rather than an explicit stack.
32472         (re_compile_fastmap): Can't fail anymore.
32473         (re_search_2): Don't check re_compile_fastmap for failure.
32474         (PUSH_NUMBER): Renamed from PUSH_FAILURE_COUNT.
32475         Now also sets the new value (passed in a new argument).
32476         (re_match_2_internal): Use it.
32477         Also, use a new var `reg' of type size_t when looping through regs
32478         rather than reuse the inappropriate `mcnt'.
32479
32480 2000-10-25  Jim Meyering  <meyering@lucent.com>
32481
32482         * lib/obstack.c: Update from libc.
32483
32484 2000-10-24  Kenichi Handa  <handa@etl.go.jp>
32485
32486         * regex.c (regex_compile): Change the way of handling a range from
32487         a char less than 256 to a char not less than 256.
32488
32489 2000-10-24  Andrew Innes  <andrewi@gnu.org>
32490
32491         * regex.c (IMMEDIATE_QUIT_CHECK): New macro, which does QUIT on
32492         NT-Emacs only.
32493         (re_match_2_internal): Use IMMEDIATE_QUIT_CHECK instead of QUIT,
32494         so that re_search functions only quit when callers expect them to.
32495
32496 2000-10-23  Jim Meyering  <meyering@lucent.com>
32497
32498         * lib/hard-locale.c (hard_locale): Revert last change -- it was simply
32499         wrong.  That set_locale call must not have any side effects.
32500         From Paul Eggert.
32501
32502 2000-10-22  Jim Meyering  <meyering@lucent.com>
32503
32504         * lib/md5.c (md5_process_block) [OP]: Use `rol', not CYCLIC.
32505         [CYCLIC]: Remove now-unused definition.
32506
32507         * lib/save-cwd.c (O_DIRECTORY): Define, if needed.
32508         (save_cwd) [HAVE_FCHDIR]: Use O_DIRECTORY when opening ".".
32509         Suggestion from Ulrich Drepper.
32510
32511 2000-10-21  Jim Meyering  <meyering@lucent.com>
32512
32513         * m4/check-decl.m4 (jm_CHECK_DECLS): Also check for memrchr.
32514         * m4/prereq.m4 (jm_PREREQ_DIRNAME): New macro.
32515         * m4/jm-macros.m4 (AC_REPLACE_FUNCS): Add memrchr.
32516
32517 2000-10-21  Jim Meyering  <meyering@lucent.com>
32518
32519         * lib/dirname.c (memrchr): Declare if necessary.
32520         (dir_name): Remove the restriction that there be no
32521         trailing slashes.  Now, this code skips past them, effectively
32522         ignoring them.
32523         [TEST_DIRNAME] (main): New unit tests.
32524
32525         * lib/memrchr.c: New file from GNU libc.
32526         Undef __memrchr, too.
32527         [!weak_alias]: Define __memrchr to memrchr.
32528         Guard weak_alias use with `#ifdef weak_alias'.
32529
32530 2000-10-21  Jim Meyering  <meyering@lucent.com>
32531
32532         * lib/dirname.c (dir_name_r): New function, factored out of dir_name.
32533         (dir_name): Use dir_name_r.
32534         * lib/dirname.h (dir_name_r): Declare it.
32535
32536 2000-10-17  Jim Meyering  <meyering@lucent.com>
32537
32538         * lib/quote.h (PARAMS): Define and use.
32539         Reported by Akim Demaille.
32540
32541         * lib/getopt.c: Update from libc.
32542
32543 2000-10-16  Jim Meyering  <meyering@lucent.com>
32544
32545         * lib/hard-locale.c (hard_locale): Use "", not 0 as 2nd arg to
32546         setlocale.
32547         From Jan Fedak.
32548
32549 2000-10-15  Stefan Monnier  <monnier@cs.yale.edu>
32550
32551         * regex.c (WIDE_CHAR_SUPPORT): Define if _LIBC as well.
32552
32553 2000-09-25  Jim Meyering  <meyering@lucent.com>
32554
32555         * lib/md5.h (rol): Define (from GnuPG).
32556
32557         * lib/sha.c: Give credit (GnuPG) where due.
32558         (M): Use rol rather than open-coding it.
32559         Add a FIXME comment.
32560
32561 2000-09-21  Jim Meyering  <meyering@lucent.com>
32562
32563         * lib/userspec.c (parse_user_spec): Remove debugging printf I'd added.
32564         Reported by Michael Stone.
32565
32566 2000-09-20  Jim Meyering  <meyering@lucent.com>
32567
32568         * lib/Makefile.am (libfetish_a_SOURCES): Add sha.c.
32569         (noinst_HEADERS): Add sha.h.
32570         Based on code from Scott G. Miller and from GnuPG.
32571
32572 2000-09-18  Jim Meyering  <meyering@lucent.com>
32573
32574         * m4/getloadavg.m4 (AC_FUNC_GETLOADAVG): Restore the initial value of
32575         LIBS. Otherwise, everyone ends up linking with -lelf for some
32576         configurations.
32577         Reported by Mike Stone.
32578
32579 2000-09-15  Jim Meyering  <meyering@lucent.com>
32580
32581         * lib/regex.c: Update from libc.
32582
32583 2000-09-10  Jim Meyering  <meyering@lucent.com>
32584
32585         * lib/getopt.c (_getopt_internal): Update from glibc.
32586
32587 2000-09-09  Jim Meyering  <meyering@lucent.com>
32588
32589         * lib/quotearg.c: Rename ISASCII to IN_CTYPE_DOMAIN, so people don't
32590         think it should be used as a general replacement for isascii.
32591         * lib/fnmatch.c: Likewise.
32592         * lib/mbswidth.c: Likewise
32593         * lib/regex.c: Likewise.
32594
32595         Don't use atoi.
32596         * lib/userspec.c: Include sys/param.h and limits.h.
32597         Include xstrtol.h.
32598         (CHAR_BIT, TYPE_SIGNED, TYPE_MINIMUM, TYPE_MAXIMUM): Define.
32599         (UID_T_MAX, GID_T_MAX, MAXUID, MAXGID): Define.
32600         (parse_user_spec): Use xstrtoul, not atoi when converting numeric
32601         UID, GID.  Check range.
32602
32603 2000-09-06  Jim Meyering  <meyering@lucent.com>
32604
32605         * lib/getopt.c (_getopt_internal): Update from glibc.
32606
32607 2000-08-30  Jim Meyering  <meyering@lucent.com>
32608
32609         * lib/strftime.c: Merge in changes from GNU libc.
32610
32611 2000-08-26  Jim Meyering  <meyering@lucent.com>
32612
32613         * m4/jm-macros.m4: Use jm_FUNC_FPENDING.
32614         * m4/fpending.m4: New file.
32615
32616 2000-08-26  Jim Meyering  <meyering@lucent.com>
32617
32618         * lib/closeout.c: Include "__fpending.h".
32619         (close_stdout_status): Return right away if there's nothing to flush.
32620
32621         * lib/Makefile.am (noinst_HEADERS): Add __fpending.h.
32622         * lib/__fpending.c: New file.
32623         * lib/__fpending.h: New file.
32624
32625 2000-08-20  Jim Meyering  <meyering@lucent.com>
32626
32627         * m4/check-decl.m4: Include utmp.h `#if HAVE_UTMP_H', rather than
32628         `#if !HAVE_UTMPX_H'.  The latter would lose on systems with neither
32629         utmp.h nor utmpx.h.  Reported by Eli Zaretskii.
32630
32631 2000-08-11  J. David Anglin  <dave@hiauly1.hia.nrc.ca>
32632
32633         Improve fileutils installation on systems where running
32634         programs (like install) can't be unlinked.
32635         * m4/unlink-busy.m4 (jm_FUNC_UNLINK_BUSY_TEXT): New file/macro.
32636         * m4/jm-macros.m4: Use jm_FUNC_UNLINK_BUSY_TEXT.
32637
32638 2000-08-07  Paul Eggert  <eggert@twinsun.com>
32639
32640         Standardize on "memory exhausted" instead of "Memory exhausted"
32641         or "virtual memory exhausted".
32642         * lib/obstack.c (print_and_abort): Use "memory exhausted", not
32643         "virtual memory exhausted".
32644         * lib/same.c (same_name): Invoke xalloc_die instead of printing
32645         our own message.
32646         * lib/userspec.c (parse_user_spec): Likewise.
32647         * lib/bumpalloc.h: comment fix
32648         * lib/same.c, userspec.c: Include xalloc.h.
32649
32650         * lib/xalloc.h (xalloc_msg_memory_exhausted): Now char const[],
32651         not char *const and pointing to a constant array.
32652         * lib/xmalloc.c (xalloc_msg_memory_exhausted): Likewise.
32653         (xrealloc): Comment fix.
32654
32655         * lib/userspec.c (parse_user_spec):
32656         Don't translate a message until just before returning,
32657         to avoid unnecessary translation.
32658
32659 2000-08-07  Jim Meyering  <meyering@lucent.com>
32660
32661         * lib/addext.c, argmatch.c, argmatch.h, backupfile.h, bumpalloc.h,
32662         chown.c, diacrit.h, dirname.h, dup2.c, exclude.h, fileblocks.c,
32663         fnmatch.c, fnmatch.h, fsusage.c, fsusage.h, getdate.h,
32664         getgroups.c, gethostname.c, getopt.h, group-member.c,
32665         hard-locale.c, hash.h, isdir.c, lchown.c, linebuffer.c,
32666         linebuffer.h, long-options.h, malloc.c, md5.c, md5.h, memchr.c,
32667         memcmp.c, memcoll.c, memset.c, mktime.c, modechange.h, obstack.h,
32668         pathmax.h, realloc.c, rmdir.c, safe-read.c, save-cwd.c, stime.c,
32669         stpcpy.c, strcasecmp.c, strcspn.c, strdup.c, stripslash.c,
32670         strstr.c, strtod.c, strtol.c, strtoul.c, strtoull.c, strtoumax.c,
32671         utime.c, version-etc.h, xalloc.h, xstrdup.c, xstrtoumax.c,
32672         yesno.c: Back out Copyright date changes for each file with no change
32673         this year.  This eases coordination with other programs using the same
32674         source code modules.  From Paul Eggert.
32675
32676 2000-08-06  Paul Eggert  <eggert@twinsun.com>
32677
32678         * m4/mbstate_t.m4 (AC_MBSTATE_T): Define mbstate_t to be int,
32679         not char, for compatibility with glibc 2.1.3 strftime.c.
32680
32681 2000-08-03  Greg McGary  <greg@mcgary.org>
32682
32683         * lib/regex.c (SET_HIGH_BOUND, MOVE_BUFFER_POINTER,
32684         ELSE_EXTEND_BUFFER_HIGH_BOUND): New macros.
32685         (EXTEND_BUFFER): Use them.
32686
32687 2000-08-01  Jim Meyering  <meyering@lucent.com>
32688
32689         * lib/dirname.c (ISSLASH): Define.
32690         (BACKSLASH_IS_PATH_SEPARATOR): Define.
32691         (dir_name) [BACKSLASH_IS_PATH_SEPARATOR]: Handle the case in which
32692         both `\' and `/' may be use as path separators.
32693         Based on a patch from Prashant TR.
32694
32695 2000-07-31  Paul Eggert  <eggert@twinsun.com>
32696
32697         * lib/quotearg.c (quotearg_n_options): Don't make the initial
32698         slot vector a constant, since it might get modified.
32699
32700 2000-07-31  Jim Meyering  <meyering@lucent.com>
32701
32702         * lib/xmalloc.c: Use `virtual memory exhausted', not
32703         `Memory exhausted'.
32704         * lib/obstack.c (print_and_abort): Likewise.
32705
32706 2000-07-30  Paul Eggert  <eggert@twinsun.com>
32707
32708         * lib/quotearg.c (quotearg_n_options): Preallocate a slot 0
32709         buffer, so that the caller can always quote one small
32710         component of a "memory exhausted" message in slot 0.
32711         From a suggestion by Jim Meyering.
32712
32713 2000-07-30  Jim Meyering  <meyering@lucent.com>
32714
32715         * lib/makepath.c (make_path): Quote the other instance, too.
32716
32717         * lib/quotearg.c (N_STATIC_SLOTVECS): Define.
32718         (STATIC_BUF_SIZE): Define.
32719         (quotearg_n_options): Use only statically allocated storage when
32720         N < N_STATIC_SLOTVECS and the length of the quoted result is smaller
32721         than STATIC_BUF_SIZE.
32722
32723 2000-07-29  Jim Meyering  <meyering@lucent.com>
32724
32725         * lib/diacrit.c (diacrit_diac): Use __MSDOS__ in favor of MSDOS.
32726         * lib/dirname.c (dir_name): Likewise.
32727
32728         * lib/basename.c (base_name): Use ISSLASH rather than comparing against
32729         `/'.
32730
32731         * lib/dirname.c (dir_name) [MSDOS]: Declare `lim' to be const.
32732         (dir_name): Assert that there are no trailing slashes.
32733
32734 2000-07-29  Bruno Haible  <haible@clisp.cons.org>
32735
32736         * lib/mbswidth.h (mbswidth): Add a flags argument.
32737         (mbswidth): New declaration.
32738         (MBSW_ACCEPT_INVALID, MBSW_ACCEPT_UNPRINTABLE): New macros.
32739         * lib/mbswidth.c (mbswidth): Add a flags argument.
32740         (mbsnwidth): New function.
32741
32742 2000-07-24  Jim Meyering  <meyering@lucent.com>
32743
32744         * lib/mbswidth.c: Remove useless #else.  From Bruno Haible.
32745
32746 2000-07-23  Paul Eggert  <eggert@twinsun.com>
32747
32748         * m4/mbswidth.m4 (jm_PREREQ_MBSWIDTH): Check for wcwidth declaration.
32749
32750 2000-07-23  Paul Eggert  <eggert@twinsun.com>
32751
32752         * lib/quotearg.c: Streamline by invoking multibyte code only if needed.
32753         <wchar.h>: Include only if HAVE_MBRTOWC && 1 < MB_LEN_MAX.
32754         (MB_CUR_MAX): Redefine to 1 if ! (HAVE_MBRTOWC && 1 < MB_LEN_MAX).
32755         (quotearg_buffer_restyled): If a unibyte locale, don't bother to
32756         invoke multibyte primitives.
32757
32758 2000-07-23  Paul Eggert  <eggert@twinsun.com>
32759
32760         * lib/quotearg.c:
32761         Include <wchar.h> even if ! (HAVE_MBRTOWC && 1 < MB_LEN_MAX),
32762         so that mbstate_t is always defined.
32763
32764         Do not inspect MB_LEN_MAX, since it's incorrectly defined to
32765         be 1 in at least one GCC installation, and this configuration
32766         error is likely to be common.  Ignoring MB_LEN_MAX hurts
32767         performance on hosts that have mbrtowc but have only unibyte
32768         locales, but I assume these hosts are rare.
32769
32770 2000-07-23  Paul Eggert  <eggert@twinsun.com>
32771
32772         * lib/mbswidth.c (_XOPEN_SOURCE):
32773         Don't define; this causes problems on Solaris 7.
32774         (wcwidth) [!HAVE_DECL_WCWIDTH]: Declare.
32775
32776 2000-07-23  Jim Meyering  <meyering@lucent.com>
32777
32778         * m4/check-decl.m4 (jm_CHECK_DECLS): Check for declarations of these,
32779         too: getgrgid, getpwuid, getuid.
32780
32781 2000-07-23  Jim Meyering  <meyering@lucent.com>
32782
32783         * lib/basename.c (base_name): Add an assertion.
32784
32785 2000-07-23  Bruno Haible  <haible@clisp.cons.org>
32786
32787         * lib/quotearg.c: When the system forces us to redefine mbstate_t,
32788         shadow its mbsinit function.
32789
32790 2000-07-17  Bruno Haible  <haible@clisp.cons.org>
32791
32792         * lib/mbswidth.h: New file.
32793         * lib/mbswidth.c: New file.
32794         * lib/Makefile.am (libfetish_a_SOURCES): Add mbswidth.c.
32795         (noinst_HEADERS): Add mbswidth.h.
32796
32797 2000-07-17  Bruno Haible  <haible@clisp.cons.org>
32798
32799         * lib/config.charset: Add support for FreeBSD. Improve support for
32800         HP-UX and IRIX 6.
32801
32802 2000-07-16  Bruno Haible  <haible@clisp.cons.org>
32803
32804         * m4/mbswidth.m4: New file.
32805         * m4/prereq.m4 (jm_PREREQ): Call jm_PREREQ_MBSWIDTH.
32806
32807 2000-07-15  Jim Meyering  <meyering@lucent.com>
32808
32809         * lib/makepath.c: Include quote.h.
32810         (make_path): Convert "`%s'" in format strings to "%s", and wrap each
32811         corresponding argument in a `quote (...)' call.
32812         Give better diagnostics.
32813
32814         * lib/Makefile.am (libfetish_a_SOURCES): Add quote.c.
32815         (noinst_HEADERS): Add quote.h.
32816
32817         * lib/quote.c (quote, quote_n): New file.  Two functions taken verbatim
32818         from tar's src/misc.c.
32819         * lib/quote.h: New file.  Prototypes for same.
32820
32821 2000-07-14  Paul Eggert  <eggert@twinsun.com>
32822
32823         From a suggestion by Bruno Haible.
32824         * lib/quotearg.c (mbrtowc): Do not use HAVE_WCHAR_H in the definition.
32825         Use defined mbstate_t, not HAVE_MBSTATE_T_OBJECT,
32826         to decide whether to define the BeOS workaround macro;
32827         this adjusts to the change to AC_MBSTATE_T.
32828
32829 2000-07-14  Jim Meyering  <meyering@lucent.com>
32830
32831         * m4/xstrtoumax.m4 (jm_AC_PREREQ_XSTRTOUMAX): Require
32832         jm_AC_TYPE_UINTMAX_T.
32833
32834 2000-07-13  Paul Eggert  <eggert@twinsun.com>
32835
32836         * lib/quotearg.h (enum quoting style): New enum clocale_quoting_style.
32837
32838         * lib/quotearg.c (quoting_style_args, quoting_style_vals,
32839         quotearg_buffer_restyled): Add support for
32840         clocale_quoting_style.  Undo previous change to
32841         locale_quoting_style behavior, and undo the "{LEFT QUOTATION MARK}"
32842         and "{RIGHT QUOTATION MARK}" msgids.
32843
32844 2000-07-10  Paul Eggert  <eggert@twinsun.com>
32845
32846         From a suggestion by Bruno Haible.
32847         * m4/mbstate_t.m4 (AC_MBSTATE_T):
32848         Renamed from AC_MBSTATE_T_OBJECT.  All uses changed.
32849         Change from a two-part test, which defines both HAVE_MBSTATE_T_OBJECT
32850         and mbstate_t, to a single-part test that simply defines mbstate_t.
32851         * m4/prereq.m4 (jm_PREREQ_QUOTEARG):
32852         s/AC_MBSTATE_T_OBJECT/AC_MBSTATE_T/.
32853
32854 2000-07-10  Jim Meyering  <meyering@lucent.com>
32855
32856         * m4/strerror_r.m4: Mirror the correction made in autoconf.
32857
32858         * m4/gnu-source.m4: Output to confdefs.h directly.
32859         Suggestion from Akim Demaille.
32860
32861 2000-07-09  Paul Eggert  <eggert@twinsun.com>
32862
32863         The old behavior of quoting `like this' doesn't look good with
32864         newer, ISO-style fonts.  See:
32865         http://www.cl.cam.ac.uk/~mgk25/ucs/quotes.html
32866
32867         Instead, quote "like this" by default.  Let the translator
32868         tailor the locale-specific quoting behavior by providing
32869         translations for {LEFT QUOTATION MARK} and {RIGHT QUOTATION MARK}.
32870
32871         * lib/quotearg.c (N_): New macro.
32872         (gettext_default): New function.
32873         (quotearg_buffer_restyled): Use
32874         gettext_default ("{LEFT QUOTATION MARK}", "\"") for left quote, and
32875         gettext_default ("{RIGHT QUOTATION MARK}", "\"") for right quote.
32876
32877 2000-07-09  Jim Meyering  <meyering@lucent.com>
32878
32879         * m4/jm-macros.m4 (jm_MACROS): Add a test to see if -lm is required
32880         to link seq.  If so, set SEQ_LIBM to -lm.  From Bruno Haible.
32881
32882         * m4/gnu-source.m4 (AC__GNU_SOURCE): New file/macro.
32883         * m4/jm-macros.m4 (jm_CHECK_ALL_TYPES): Require it.
32884
32885 2000-07-09  Jim Meyering  <meyering@lucent.com>
32886
32887         * lib/Most files: Update copyright dates to include 2000.
32888
32889 2000-07-08  Jim Meyering  <meyering@lucent.com>
32890
32891         * lib/xgethostname.c (ENAMETOOLONG): Define to an unlikely value
32892         if not defined.
32893         (xgethostname): Remove now-unnecessary #ifdef.
32894         Move declaration of `err' into loop where it's used.
32895
32896 2000-07-05  Paul Eggert  <eggert@twinsun.com>
32897         and Bruno Haible  <haible@clisp.cons.org>
32898
32899         * m4/mbstate_t.m4 (AC_MBSTATE_T_OBJECT): Test for mbstate_t
32900         only if the test for an object-type mbstate_t fails.  This
32901         prevents us from mistakenly reporting that mbstate_t is a
32902         system object type after we "#define mbstate_t int" to work
32903         around its lack.
32904
32905 2000-07-05  Paul Eggert  <eggert@twinsun.com>
32906         and Bruno Haible  <haible@clisp.cons.org>
32907
32908         * lib/quotearg.c (mbrtowc): Declare returned type, since BeOS doesn't.
32909
32910 2000-07-05  Bruno Haible  <haible@clisp.cons.org>
32911
32912         * m4/strerror_r.m4 (AC_FUNC_STRERROR_R): Pass a reasonably large buffer
32913         to strerror_r.
32914         Include <ctype.h> for use of isalpha.
32915
32916 2000-07-05  Bruno Haible  <haible@clisp.cons.org>
32917
32918         * lib/xgethostname.c (xgethostname): Protect against the SunOS 5.5 bug
32919         by allocating a larger buffer. Test the gethostname return value for
32920         being >= 0, not == 0, for BeOS.  Don't exhaust memory if gethostname
32921         returns an error and ENAMETOOLONG isn't defined.
32922
32923 2000-07-05  Bruno Haible  <haible@clisp.cons.org>
32924
32925         * lib/quotearg.c (struct quoting_options): Simplify quote_these_too
32926         dimension.
32927
32928 2000-07-04  Jim Meyering  <meyering@lucent.com>
32929
32930         * m4/fsusage.m4 (jm_FILE_SYSTEM_USAGE): Use plain old `echo' instead
32931         of the deprecated AC_CHECKING.
32932
32933 2000-07-04  Jim Meyering  <meyering@lucent.com>
32934
32935         * lib/strndup.c: [!HAVE_DECL_STRNLEN]: Declare strnlen.
32936         Reported by Bruno Haible.
32937
32938 2000-07-04  Jim Meyering  <meyering@lucent.com>
32939
32940         * lib/quotearg.c: Make inclusion of <wchar.h> independent of whether
32941         HAVE_MBRTOWC is set.  Required at least for irix-5.6, which
32942         lacks mbrtowc.
32943
32944 2000-07-03  Paul Eggert  <eggert@twinsun.com>
32945
32946         * m4/mbstate_t.m4 (AC_MBSTATE_T_OBJECT): Port to autoconf 2.13.
32947         Add AC_CHECK_HEADERS(stdlib.h), since we use HAVE_STDLIB_H.
32948
32949 2000-07-03  Paul Eggert  <eggert@twinsun.com>
32950         and Bruno Haible  <haible@clisp.cons.org>
32951
32952         * lib/quotearg.c (mbrtowc):
32953         Assign to *pwc, and return 1 only if result is nonzero.
32954         (iswprint): Use ISPRINT when substituting our own mbrtowc.
32955
32956 2000-07-03  Jim Meyering  <meyering@lucent.com>
32957
32958         * m4/check-decl.m4 (AC_CHECK_DECLS): Add strnlen.
32959
32960 2000-07-03  Jim Meyering  <meyering@lucent.com>
32961
32962         * lib/readutmp.h: [HAVE_UTMPX_H]: Include <utmp.h> if HAVE_UTMP_H.
32963         This is necessary to get a definition of e.g., UTMP_FILE on
32964         HP-UX 10.20.
32965         From Bob Proulx.
32966
32967 2000-07-02  Jim Meyering  <meyering@lucent.com>
32968
32969         * m4/mbstate_t.m4: Also define mbstate_t, if necessary.
32970
32971         * m4/chown.m4: Replace each use of AC_SUBST(LIBOBJS)/LIBOBJS=... with
32972         AC_LIBOBJ(function_name).
32973         * m4/chown.m4: Likewise.
32974         * m4/fnmatch.m4: Likewise.
32975         * m4/ftruncate.m4: Likewise.
32976         * m4/getgroups.m4: Likewise.
32977         * m4/getline.m4: Likewise.
32978         * m4/group-member.m4: Likewise.
32979         * m4/jm-macros.m4: Likewise.
32980         * m4/lstat.m4: Likewise.
32981         * m4/malloc.m4: Likewise.
32982         * m4/memcmp.m4: Likewise.
32983         * m4/nanosleep.m4: Likewise.
32984         * m4/putenv.m4: Likewise.
32985         * m4/realloc.m4: Likewise.
32986         * m4/regex.m4: Likewise.
32987         * m4/stat.m4: Likewise.
32988         * m4/strftime.m4: Likewise.
32989
32990 2000-07-02  Jim Meyering  <meyering@lucent.com>
32991
32992         * lib/quotearg.c (mbstate_t): Don't define here.
32993
32994 2000-07-02  Jim Meyering  <meyering@lucent.com>
32995
32996         * lib/nanosleep.c (SIGCONT): Define if not already defined.
32997
32998 2000-07-01  Jim Meyering  <meyering@lucent.com>
32999
33000         * m4/uptime.m4: Put double quotes around use of $cross_compiling.
33001
33002 2000-07-01  Jim Meyering  <meyering@lucent.com>
33003
33004         * m4/ls-mntd-fs.m4: Remove a `FIXME' comment and fix the associated
33005         problem.
33006
33007 2000-07-01  Bruno Haible  <haible@clisp.cons.org>
33008
33009         * m4/ls-mntd-fs.m4 (jm_LIST_MOUNTED_FILESYSTEMS): Rename BeOS specific
33010         macro from MOUNTED_NEXT_DEV to MOUNTED_FS_STAT_DEV.
33011
33012 2000-07-01  Bruno Haible  <haible@clisp.cons.org>
33013
33014         * lib/mountlist.c: Use MOUNTED_FS_STAT_DEV instead of MOUNTED_NEXT_DEV,
33015         per change in ../m4/ls-mntd-fs.m4.
33016         (read_filesystem_list): Ignore symbolic links.
33017
33018 2000-06-29  Jim Meyering  <meyering@lucent.com>
33019
33020         * lib/same.c: Include <string.h> or <strings.h>, as appropriate,
33021         for declaration of strcmp.
33022
33023         * lib/long-options.c: Include <stdlib.h>, for declaration of exit.
33024
33025         * lib/mountlist.c (fsp_to_string) [HAVE_F_FSTYPENAME_IN_STATFS]:
33026         Avoid warning by casting result to `char *' to remove `const'.
33027
33028 2000-06-28  Jim Meyering  <meyering@lucent.com>
33029
33030         * m4/mbstate_t.m4: Use stdlib.h, not stdio.h.  The latter is not
33031         included by quotearg.c, for which we perform this test.  From
33032         Bruno Haible.
33033
33034 2000-06-27  Bruno Haible  <haible@clisp.cons.org>
33035
33036         * m4/check-decl.m4 (_jm_DECL_HEADERS): Check for utmp.h as well.
33037         * m4/prereq.m4 (jm_PREREQ_READUTMP): Likewise. If either <utmp.h> or
33038         <utmpx.h> exists, put readutmp.o into LIBOBJS.
33039
33040 2000-06-27  Bruno Haible  <haible@clisp.cons.org>
33041
33042         * lib/Makefile.am (libfetish_a_SOURCES): Remove readutmp.c.
33043
33044 2000-06-26  Paul Eggert  <eggert@twinsun.com>
33045
33046         savedir now sets errno on failure and invokes xmalloc to get memory.
33047         Fix a couple of other minor bugs while we're at it.
33048
33049         * lib/savedir.c (<unistd.h>): Do not include; there's no need.
33050         (NAMLEN): Remove macro.
33051         (malloc, realloc): Remove decls.
33052         (stpcpy): Likewise.
33053         ("xalloc.h"): Include.
33054         (NAME_SIZE_DEFAULT): New macro.
33055         (savedir): Use xmalloc / xrealloc to allocate memory.
33056         Use NAME_SIZE_DEFAULT if name_size is negative or overflows to zero.
33057         Skip "" directory entries.
33058         Use strlen to calculate directory entry length, since the old method
33059         is rarely used these days and isn't worth supporting.
33060         Don't use a pointer after freeing it.
33061         Check for integer overflow when calculating allocation size.
33062         Use memcpy to copy entries, instead of stpcpy.
33063         Set errno properly when returning NULL.
33064         Check for readdir error.
33065
33066 2000-06-26  Jim Meyering  <meyering@lucent.com>
33067
33068         * lib/posixtm.c [HAVE_STDLIB_H]: Include stdlib.h, for decl of abort.
33069
33070 2000-06-25  Jim Meyering  <meyering@lucent.com>
33071
33072         * m4/mbstate_t.m4: Include stdio.h before wchar.h to work around
33073         Linux header bug when _XOPEN_SOURCE is defined to 500.
33074
33075 2000-06-25  Bruno Haible  <haible@clisp.cons.org>
33076
33077         * lib/unicodeio.c (print_unicode_char): Work around ansi2knr
33078         deficiency.
33079
33080 2000-06-25  Bruno Haible  <haible@clisp.cons.org>
33081
33082         * lib/getusershell.c (xmalloc, xrealloc): Remove functions.
33083         Include xalloc.h.
33084         Don't include <stdlib.h>.  Don't declare malloc, realloc.
33085
33086 2000-06-24  Jim Meyering  <meyering@lucent.com>
33087
33088         * m4/strerror_r.m4: Revive this file -- to try out an experimental
33089         version of AC_FUNC_STRERROR_R that may work even on BeOS, a system
33090         for which strerror does return char*, but which lacks a conveniently
33091         accessible declaration of the function.  If the compile-test says
33092         strerror_r doesn't work, then resort to a `run'-test that works on
33093         BeOS and segfaults on DEC Unix.
33094
33095 2000-06-24  Jim Meyering  <meyering@lucent.com>
33096
33097         * lib/error.c [!HAVE_DECL_STRERROR_R]: Declare strerror_r.
33098
33099 2000-06-23  Paul Eggert  <eggert@twinsun.com>
33100
33101         * m4/mbstate_t.m4: New file, defining AC_MBSTATE_T_OBJECT.
33102         * m4/prereq.m4 (jm_PREREQ_QUOTEARG): Use it.  Add check for iswprint.
33103
33104 2000-06-23  Paul Eggert  <eggert@twinsun.com>
33105
33106         * lib/quotearg.c: Include <wctype.h> after <wchar.h>, for Solaris 2.5.
33107         (mbrtowc, mbstate_t): Define substitutes if
33108         HAVE_MBRTOWC && HAVE_WCHAR_H && !HAVE_MBSTATE_T_OBJECT.
33109         (iswprint): Define to 1 if !defined iswprint && !HAVE_ISWPRINT,
33110         not if ! (HAVE_MBRTOWC && HAVE_WCHAR_H).
33111
33112 2000-06-23  Jim Meyering  <meyering@lucent.com>
33113
33114         * m4/afs.m4: Add missing AC_MSG_RESULT.
33115         Reported by Bruno Haible.
33116
33117         * m4/fsusage.m4: s/AC_MSG_CHECKING/AC_CHECKING/.
33118         Suggestion from Bruno Haible.
33119
33120 2000-06-23  Jim Meyering  <meyering@lucent.com>
33121
33122         * lib/getpass.c: New file, from Bruno Haible.  Required for BeOS.
33123
33124 2000-06-21  Jim Meyering  <meyering@lucent.com>
33125
33126         * m4/jm-macros.m4 (AC_REPLACE_FUNCS): Add getpass.
33127
33128 2000-06-21  Jim Meyering  <meyering@lucent.com>
33129
33130         * lib/Makefile.am (libfetish_a_SOURCES): Add getstr.c.
33131         (noinst_HEADERS): Add getstr.h.
33132
33133         * lib/getline.c (getstr): Move into a separate file.
33134         * lib/getstr.c (getstr): New file, extracted from getline.c, with
33135         the following changes: new parameter, delim2; both delim[12]
33136         parameters have type `int', not `char'.  The latter would lose
33137         with 8-bit delimiters.
33138         * lib/getstr.h: New file.
33139
33140 2000-06-21  Bruno Haible  <haible@clisp.cons.org>
33141
33142         * lib/xgetcwd.c (xgetcwd): If the required pathname length is smaller
33143         than 1024, return a memory chunk of least possible size, instead
33144         of size PATH_MAX + 2. In the loop, increment the size proportionally.
33145         Use free/xmalloc instead of xrealloc to avoid copying for very long
33146         paths.
33147
33148 2000-06-21  Bruno Haible  <haible@clisp.cons.org>
33149
33150         * lib/path-concat.c (path_concat): Don't access dir[-1] if dir is
33151         the empty string.
33152
33153 2000-06-21  Bruno Haible  <haible@clisp.cons.org>
33154
33155         * lib/canon-host.c (canon_host): Use malloc and memcpy to copy an
33156         address, not strdup.  Include <stdlib.h> and don't declare free().
33157
33158 2000-06-19  Jim Meyering  <meyering@lucent.com>
33159
33160         * lib/getloadavg.c [HAVE_NLIST_H] (NLIST_STRUCT): Define.
33161
33162 2000-06-18  Jim Meyering  <meyering@lucent.com>
33163
33164         * m4/jm-macros.m4 (AC_REPLACE_FUNCS): Remove mkdir.
33165
33166         * m4/link-follow.m4 (jm_AC_FUNC_LINK_FOLLOWS_SYMLINK): Change the
33167         `checking whether...' message to be consistent with that of the
33168         lstat test.
33169
33170 2000-06-18  Jim Meyering  <meyering@lucent.com>
33171
33172         * lib/mkdir.c: Remove file, due mainly to copyright incompatibility.
33173         Besides, these days every porting target provides a mkdir function.
33174
33175         * lib/strnlen.c: Include memory.h, string.h, and/or strings.h as
33176         needed. (this snippet comes from src/system.h).
33177
33178 2000-06-16  Bruno Haible  <haible@clisp.cons.org>
33179
33180         * m4/glibc21.m4 (jm_GLIBC21): Define GLIBC21 for Makefiles, not for C.
33181
33182 2000-06-15  Paul Eggert  <eggert@twinsun.com>
33183
33184         * lib/human.c (adjust_value): New function.
33185         (human_readable_inexact): Apply rounding style even when
33186         printing approximate values.
33187
33188 2000-06-14  Paul Eggert  <eggert@twinsun.com>
33189
33190         * lib/human.c (human_readable_inexact): Allow an input block
33191         size that is not a multiple of the output block size, and vice versa.
33192         Reported by Piergiorgio Sartor.
33193
33194 2000-06-14  Paul Eggert  <eggert@twinsun.com>
33195
33196         * lib/getdate.y (get_date): Apply relative times after time
33197         zone indicator, not before.  Reported by Todd A. Jacobs.
33198
33199 2000-06-13  Jim Meyering  <meyering@lucent.com>
33200
33201         * lib/Makefile.am (all-local): Depend on lstat.c and stat.c.
33202
33203         * lib/xstat.in [!HAVE_DECL_FREE]: Declare free in lstat.c.
33204
33205 2000-06-12  Paul Eggert  <eggert@twinsun.com>
33206
33207         * lib/xstat.in: Include <stdlib.h> in lstat, to declare "free".
33208
33209 2000-06-12  Jim Meyering  <meyering@lucent.com>
33210
33211         * m4/getloadavg.m4 (AM_FUNC_GETLOADAVG): Replace with
33212         AC_FUNC_GETLOADAVG from autoconf, and tweak the latter to accept an
33213         optional argument.
33214         * m4/jm-macros.m4: s/AM_FUNC_GETLOADAVG/AC_FUNC_GETLOADAVG/, and supply
33215         the optional argument, `lib'.
33216
33217 2000-06-08  Jim Meyering  <meyering@lucent.com>
33218
33219         * m4/largefile.m4: Remove file (now that it's part of autoconf).
33220
33221 2000-06-04  Paul Eggert  <eggert@twinsun.com>
33222
33223         Rewrite largefile configuration so that we don't need to run
33224         getconf and don't need AC_CANONICAL_HOST.  [I'm leaving the use of
33225         AC_CANONICAL_HOST in configure.in -- jmm]
33226
33227         * m4/largefile.m4 (AC_SYS_LARGEFILE_FLAGS,
33228         AC_SYS_LARGEFILE_SPACE_APPEND): Remove.
33229         (AC_SYS_LARGEFILE_TEST_INCLUDES): New macro.
33230         (AC_SYS_LARGEFILE_MACRO_VALUE): Change arguments from
33231         CODE-TO-SET-DEFAULT to VALUE, INCLUDES, FUNCTION-BODY.
33232         All uses changed.
33233         Instead of inspecting the output of getconf, try to compile the
33234         test program without and with the macro definition.
33235         (AC_SYS_LARGEFILE): Do not require AC_CANONICAL_HOST or check
33236         for getconf.  Instead, check for the needed flags by compiling
33237         test programs.
33238
33239 2000-06-04  Paul Eggert  <eggert@twinsun.com>
33240
33241         * lib/strnlen.c: Include <config.h> if HAVE_CONFIG_H.
33242
33243 2000-06-04  Jim Meyering  <meyering@lucent.com>
33244
33245         * lib/getugroups.c (getugroups): Cast -1 to gid_t, for systems like
33246         SunOS 4.1.4 for which gid_t is an unsigned type.
33247
33248 2000-06-03  Jim Meyering  <meyering@lucent.com>
33249
33250         * m4/prereq.m4 (jm_PREREQ_HUMAN): Use []-quoted list in AC_CHECK_DECLS,
33251         now that autoconf requires that.
33252
33253         * m4/jm-glibc-io.m4: Add a kludge to make autoheader emit the required
33254         #undefs.  E.g., #undef HAVE_DECL_FERROR_UNLOCKED.
33255         Use []-quoted list in AC_CHECK_DECLS, now that autoconf requires that.
33256
33257 2000-06-03  Jim Meyering  <meyering@lucent.com>
33258
33259         * lib/strnlen.c [!HAVE_DECL_MEMCHR]: Declare memchr.
33260
33261 2000-06-03  Bruno Haible  <haible@clisp.cons.org>
33262
33263         * m4/glibc21.m4: New file.
33264         * m4/jm-macros.m4 (jm_MACROS): Call jm_GLIBC21.
33265
33266 2000-06-03  Bruno Haible  <haible@clisp.cons.org>
33267
33268         * lib/Makefile.am (install-exec-local): On systems with glibc-2.1 or
33269         newer, don't install charset.alias.
33270         * lib/config.charset: Change the Linux/glibc rules so they become empty
33271         on glibc-2.1 or newer.
33272
33273 2000-06-02  Jim Meyering  <meyering@lucent.com>
33274
33275         * lib/mountlist.c: Back out last change.  Instead, do this...
33276         * lib/mountlist.c (read_filesystem_list) [MOUNTED_VMOUNT]: Set the
33277         me_dummy member using the same `ignore'-testing code.
33278         * lib/mountlist.h (ME_DUMMY): Add `autofs' to the list of ignored
33279         fs_type strings.
33280         From Mark D. Roth.
33281
33282 2000-05-29  Jim Meyering  <meyering@lucent.com>
33283
33284         * lib/mountlist.c (read_filesystem_list) [MOUNTED_VMOUNT]: Ignore
33285         mounts with the `ignore' attribute.  Based on a patch from
33286         Mark D. Roth.
33287
33288 2000-05-28  Jim Meyering  <meyering@lucent.com>
33289
33290         * m4/jm-macros.m4 (AC_FUNC_LSTAT_FOLLOWS_SLASHED_SYMLINK): Rename from
33291         jm_FUNC_LSTAT_FOLLOWS_SLASHED_SYMLINK.
33292         * m4/stat.m4: Likewise.
33293         * m4/lstat.m4: Likewise.
33294         * m4/lstat-slash.m4: Remove file (absorbed into autoconf).
33295
33296         * m4/jm-macros.m4 (AC_FUNC_STRERROR_R): Rename from jm_FUNC_STRERROR_R.
33297         * m4/strerror_r.m4: Remove file (absorbed into autoconf).
33298
33299 2000-05-26  Jim Meyering  <meyering@lucent.com>
33300
33301         * m4/uptime.m4: Use `$cross_compiling', not `$ac_cv_prog_cc_cross'.
33302
33303 2000-05-24  Jim Meyering  <meyering@lucent.com>
33304
33305         * m4/prereq.m4: Use []-quoted list in AC_CHECK_MEMBERS, now that
33306         autoconf requires that.
33307         * m4/lib-check.m4: Likewise.
33308         * m4/jm-macros.m4: Likewise.
33309         * m4/strftime.m4: Likewise.
33310
33311         * m4/check-decl.m4 (jm_CHECK_DECLS): Use []-quoted list in
33312         AC_CHECK_DECLS, now that autoconf requires that.
33313
33314 2000-05-22  Jim Meyering  <meyering@lucent.com>
33315
33316         * m4/stat.m4: Require jm_FUNC_LSTAT_FOLLOWS_SLASHED_SYMLINK.
33317         * m4/lstat.m4: Likewise.
33318
33319 2000-05-22  Jim Meyering  <meyering@lucent.com>
33320
33321         * lib/makepath.c: Remove old, now-unnecessary `#ifdef __MSDOS__' block.
33322
33323 2000-05-20  Jim Meyering  <meyering@lucent.com>
33324
33325         * m4/prereq.m4 (jm_PREREQ_HUMAN): New macro.
33326         (jm_PREREQ): Use it.
33327
33328 2000-05-18  Jim Meyering  <meyering@lucent.com>
33329
33330         * lib/hash.c (hash_rehash): Fix a nasty bug: copy the free entry list
33331         back, too, since it may have been modified by allocate_entry.
33332         (hash_delete): Rewrite to use neither the assignment operator
33333         nor the comma operator in an if-expression.
33334
33335 2000-05-15  Paul Eggert  <eggert@twinsun.com>
33336
33337         * lib/closeout.c:
33338         <sys/stat.h>, <sys/types.h>, <unistd.h>, (STDOUT_FILENO):
33339         Remove; no longer needed.
33340         "quotearg.h": Add include.
33341         (file_name): Do not bother to explicitly initialize to NULL; it's less
33342         efficient on some hosts.
33343         (close_stdout_status): Remove test as to whether stdout was already
33344         closed; it breaks for the case "echo x | sort >&-".
33345         Quote file name colons.
33346         Do not assume that _("write error") lacks format strings.
33347
33348 2000-05-15  Jim Meyering  <meyering@lucent.com>
33349
33350         * lib/version-etc.c (version_etc_copyright): Update the copyright
33351         string used in all --version output.
33352
33353 2000-05-14  Jim Meyering  <meyering@lucent.com>
33354
33355         * lib/closeout.c (close_stdout_set_file_name): New function.
33356         (close_stdout_status): Use new file-scoped global.
33357         Return right away if fstat says the stdout file descriptor is invalid.
33358         * lib/closeout.h (close_stdout_set_file_name): Declare.
33359
33360 2000-05-10  Jim Meyering  <meyering@lucent.com>
33361
33362         * lib/closeout.c [default_exit_status]: New file-scoped variable.
33363         (close_stdout_set_status): New function.
33364         * lib/closeout.h (close_stdout_set_status): Declare.
33365
33366 2000-05-09  Jim Meyering  <meyering@lucent.com>
33367
33368         * m4/gettext.m4: Rename this...
33369         * m4/libintl.m4: ...to this.
33370
33371 2000-05-08  Jim Meyering  <meyering@lucent.com>
33372
33373         * lib/long-options.c: Don't include closeout.h.
33374         (parse_long_options): Don't call close_stdout for --version.
33375
33376 2000-05-06  Paul Eggert  <eggert@twinsun.com>
33377
33378         * m4/largefile.m4 (AC_SYS_LARGEFILE): Define _XOPEN_SOURCE to
33379         be 500, instead of _GNU_SOURCE to be 1, to work around glibc
33380         2.1.3 bug.  This avoids a clash when files like regex.c define
33381         _GNU_SOURCE.
33382
33383 2000-05-06  Jim Meyering  <meyering@lucent.com>
33384
33385         * m4/jm-macros.m4 (AC_REPLACE_FUNCS): Add atexit.
33386         (AC_REPLACE_FUNCS): Add strnlen.
33387
33388         * m4/rmdir-errno.m4 (fetish_FUNC_RMDIR_NOTEMPTY): New macro and file.
33389         * m4/jm-macros.m4: Require fetish_FUNC_RMDIR_NOTEMPTY.
33390
33391         * m4/nanosleep.m4 (jm_FUNC_NANOSLEEP): Save and restore LIBS around
33392         AC_SEARCH_LIBS call for nanosleep.
33393         (LIB_NANOSLEEP): Set and AC_SUBST.
33394
33395 2000-05-06  Jim Meyering  <meyering@lucent.com>
33396
33397         * lib/strnlen.c: Undefine __strnlen and strnlen.
33398         [!weak_alias]: Define __strnlen to strnlen.
33399
33400         * lib/atexit.c: New file, from libiberty.
33401
33402 2000-05-06  Jim Meyering  <meyering@lucent.com>
33403
33404         * lib/closeout.c (close_stdout_status): Also check for errors on the
33405         stderr stream.
33406
33407 2000-05-05  Jim Meyering  <meyering@lucent.com>
33408
33409         * m4/jm-macros.m4 (jm_MACROS): Save and restore LIBS around
33410         AC_SEARCH_LIBS call for clock_gettime.
33411         (LIB_CLOCK_GETTIME): Set and AC_SUBST.
33412
33413         * m4/search-libs.m4: Update from autoconf.
33414
33415         su doesn't work on Solaris 2.6.
33416         * m4/lib-check.m4: When checking for struct spwd.sp_pwdp, also include
33417         <shadow.h>.  Reported by Dragos Harabor.
33418
33419 2000-05-05  Bruno Haible  <haible@clisp.cons.org>
33420
33421         * lib/localcharset.c (get_charset_aliases): Use malloc, realloc and
33422         memcpy instead of xmalloc, xrealloc, path_concat.
33423         (locale_charset): Treat empty environment variables as absent.
33424         (DIRECTORY_SEPARATOR, ISSLASH): New macros.
33425
33426 2000-05-04  Jim Meyering  <meyering@lucent.com>
33427
33428         * lib/getopt.c: Update from glibc.
33429         * lib/obstack.c: Likewise.
33430         * lib/obstack.h: Likewise.
33431         * lib/regex.c: Likewise.  NB: K&R compiler support is dropped for this
33432         file
33433
33434         * lib/regex.h: Likewise.
33435         * lib/strndup.c: Likewise.
33436         * lib/strnlen.c: New file, from glibc.
33437
33438 2000-05-03  Jim Meyering  <meyering@lucent.com>
33439
33440         * m4/check-decl.m4 (AC_CHECK_DECLS): Add strndup.
33441
33442 2000-05-02  Paul Eggert  <eggert@twinsun.com>
33443
33444         * m4/largefile.m4 (AC_SYS_LARGEFILE): Define _GNU_SOURCE if
33445         this is needed to make ftello visible (e.g. glibc 2.1.3).  Use
33446         compile-time test, rather than inspecting host and OS, to
33447         decide whether to define _LARGEFILE_SOURCE.
33448
33449 2000-05-01  Jim Meyering  <meyering@lucent.com>
33450
33451         * m4/fsusage.m4: Use AC_MSG_CHECKING instead of obsolete AC_CHECKING.
33452
33453         * m4/ls-mntd-fs.m4 (jm_LIST_MOUNTED_FILESYSTEMS): Add BeOS support.
33454         Based on a patch from Bruno Haible.
33455
33456 2000-05-01  Jim Meyering  <meyering@lucent.com>
33457
33458         * lib/full-write.c (full_write): Remove `FIXME' part of comment.
33459
33460 2000-04-29  Jim Meyering  <meyering@lucent.com>
33461
33462         * lib/path-concat.c: Declare strdup only if it's not defined.
33463         * lib/canon-host.c: Likewise.
33464
33465 2000-04-28  Jim Meyering  <meyering@lucent.com>
33466
33467         * lib/rpmatch.c [HAVE_LIMITS_H]: Include limits.h before regex.h to
33468         avoid redefinition warning on some systems (HPUX).  Otherwise, regex.h
33469         is included first, then limits.h is included by locale.h by libintl.h.
33470         From John David Anglin.
33471
33472 2000-04-25  Jim Meyering  <meyering@lucent.com>
33473
33474         * lib/makepath.c (S_IRWXUGO): Define.
33475         (make_path): Always perform explicit chmod if MODE specifies any
33476         of the `special' permission bits.  Prompted by a bug report against
33477         install from Mate Wierdl and Joost van Baal.
33478
33479 2000-04-18  Jim Meyering  <meyering@lucent.com>
33480
33481         * m4/prereq.m4 (jm_PREREQ_GETPAGESIZE): New macro.
33482         (jm_PREREQ): Use it.
33483
33484 2000-04-18  Jim Meyering  <meyering@lucent.com>
33485
33486         * lib/README: New file.
33487
33488         * lib/getpagesize.h [!getpagesize && HAVE_OS_H && B_PAGE_SIZE]: Define
33489         getpagesize.  For BeOS.  Based on a patch from Bruno Haible.
33490
33491 2000-04-17  Jim Meyering  <meyering@lucent.com>
33492
33493         Get it right :-)
33494         * m4/jm-macros.m4 (jm_CHECK_ALL_TYPES) [_GNU_SOURCE]: Emit the
33495         actual #define via AH_VERBATIM.  Don't need separate AC_DEFINE.
33496         Suggestion from Akim Demaille.
33497
33498 2000-04-17  Jim Meyering  <meyering@lucent.com>
33499
33500         * lib/strftime.c (my_strftime) [strftime]: Declare strftime here, since
33501         the definition of it to rpl_strftime also defined-away the system's
33502         declaration.
33503
33504 2000-04-15  Jim Meyering  <meyering@lucent.com>
33505
33506         Use `C' to denote so-called `contiguous' files, the same way
33507         that tar does.
33508         * lib/filemode.c (S_ISCTG) [!S_ISCTG && S_IFCTG]: Define.
33509         (ftypelet): Use S_ISCTG.
33510         From Michael Deutschmann.
33511
33512 2000-04-14  Jim Meyering  <meyering@lucent.com>
33513
33514         * m4/jm-macros.m4 (jm_CHECK_ALL_TYPES) [_GNU_SOURCE]: Use the one-arg
33515         form of AC_DEFINE.  Otherwise, the #ifndef in AH_VERBATIM gets
33516         clobbered.
33517
33518 2000-04-14  Jim Meyering  <meyering@lucent.com>
33519
33520         * lib/strftime.c (my_strftime) [#ifdef strftime]: Declare strftime.
33521
33522 2000-04-13  Jim Meyering  <meyering@lucent.com>
33523
33524         * m4/jm-macros.m4 (jm_CHECK_ALL_TYPES) [_GNU_SOURCE]: Use new
33525         AH_VERBATIM to insert required #ifndef into config.h.in.
33526         Suggestion from Akim Demaille.
33527
33528 2000-04-12  Jim Meyering  <meyering@lucent.com>
33529
33530         * m4/getloadavg.m4 (AM_FUNC_GETLOADAVG): Use AC_CHECK_HEADERS, not
33531         `AC_CHECK_HEADER' to check for locale.h.  Thanks to a report from
33532         Christian Krackowizer.
33533
33534         More code moved from ../configure.in into (jm_CHECK_ALL_TYPES).
33535         * m4/jm-macros.m4 (_GNU_SOURCE): Define.
33536         (AC_SYS_LARGEFILE): Require.
33537         (AM_C_PROTOTYPES): Require.
33538
33539 2000-04-08  Jim Meyering  <meyering@lucent.com>
33540
33541         * lib/Makefile.am (charset.alias): Use t-$@, not $@-t so the DOS 8.3
33542         names don't conflict.  Reported by Eli Zaretskii.
33543
33544 2000-04-07  Jim Meyering  <meyering@lucent.com>
33545
33546         * lib/putenv.c: Move inclusion of errno.h so it follows that of
33547         sys/types.h, to work around system header problems on AIX 3.2.5.
33548         From Bruno Haible.
33549
33550 2000-04-07  Bruno Haible  <haible@clisp.cons.org>
33551
33552         * lib/unicodeio.c (print_unicode_char): Avoid triggering Solaris iconv
33553         bug.  Deal with the different error behavior of Irix iconv.
33554
33555 2000-04-05  Paul Eggert  <eggert@twinsun.com>
33556
33557         * m4/largefile.m4 (AC_SYS_LARGEFILE_FLAGS): Don't use -n32 on
33558         IRIX if the installer said otherwise.
33559
33560 2000-04-05  Jim Meyering  <meyering@lucent.com>
33561
33562         Portability tweaks required for ultrix4.3.
33563         * m4/check-decl.m4 [!HAVE_UTMPX_H] (headers): Include <utmp.h>.
33564         (jm_CHECK_DECLS): Add getutent to the list of functions.
33565         (_jm_DECL_HEADERS): Add utmpx.h.
33566         From John David Anglin.
33567
33568         * m4/strftime.m4: Back out the 2000-04-02 change.
33569         Instead of that change, simply undefine putenv in the test program.
33570
33571 2000-04-05  Jim Meyering  <meyering@lucent.com>
33572
33573         Portability tweaks required for ultrix4.3.
33574         * lib/readutmp.h [HAVE_UTMPX_H && !HAVE_DECL_GETUTENT]: Declare
33575         getutent.
33576         * lib/readutmp.c: Include sys/types.h before sys/stat.h.
33577         * lib/canon-host.c: Declare strdup.
33578         * lib/path-concat.c: Likewise.
33579         From John David Anglin.
33580
33581 2000-04-04  Jim Meyering  <meyering@lucent.com>
33582
33583         Be more DOS 8.3-friendly.
33584         * lib/ref-add.sin: Renamed from ref-add.sed.in.
33585         * lib/ref-del.sin: Renamed from ref-del.sed.in.
33586         * lib/Makefile.am: Reflect renaming.
33587         Reported by Eli Zaretskii.
33588
33589         Use a temporary file name that won't clash with `charset.alias'
33590         in the DOS 8.3 name space.
33591         * lib/Makefile.am (charset_tmp): Define.
33592         (install-exec-local): Use $(charset_tmp) instead of $(charset_alias)-t.
33593         (uninstall-local): Likewise.
33594         Reported by Eli Zaretskii.
33595
33596 2000-04-03  Jim Meyering  <meyering@lucent.com>
33597
33598         * m4/gettext.m4: Fix typo in comment.
33599
33600         * m4/codeset.m4 (AC_CHECK_HEADERS): Add langinfo.h (moved here from
33601         textutils/configure.in).  Suggestion from Paul Eggert.
33602         (AC_CHECK_FUNCS): Add nl_langinfo.  (also from textutils/configure.in)
33603
33604 2000-04-02  Paul Eggert  <eggert@twinsun.com>
33605
33606         * m4/strftime.m4 (jm_FUNC_GNU_STRFTIME): Set TZ environment
33607         variable in the shell rather than using putenv, which isn't
33608         portable.  This avoids the configure-time inter-test dependency
33609         on the potentially-renamed putenv function.
33610
33611 2000-03-30  Paul Eggert  <eggert@twinsun.com>
33612
33613         * m4/jm-macros.m4 (jm_CHECK_ALL_TYPES): Include <sys/stat.h>
33614         before checking struct stat.st_blksize, so that
33615         HAVE_STRUCT_STAT_ST_BLKSIZE is defined correctly.
33616
33617 2000-03-29  Paul Eggert  <eggert@twinsun.com>
33618
33619         * m4/strftime.m4 (_jm_STRFTIME_PREREQS): Check for strftime,
33620         since strftime.c uses HAVE_STRFTIME to decide whether to use
33621         the underlying strftime.
33622
33623 2000-03-29  Paul Eggert  <eggert@twinsun.com>
33624
33625         * lib/time/strftime.c (my_strftime): Make sure we call the system
33626         strftime, not ourselves, when invoking the underlying strftime.
33627
33628 2000-03-24  Jim Meyering  <meyering@lucent.com>
33629
33630         * lib/Makefile.am (EXTRA_DIST): Add ref-add.sed.in and ref-del.sed.in.
33631         (charset_alias): Define.
33632         (install-exec-local): Factor out common code.
33633         (uninstall-local): Split lines longer than 80.
33634         (ref-add.sed, ref-del.sed): Remove rules... (do the following instead)
33635         (SUFFIXES): Define.
33636         (.sed.in.sed): New rule.  Don't redirect directly to $@.
33637         (CLEANFILES): Add ref-add.sed and ref-del.sed.
33638
33639 2000-03-19  Bruno Haible  <haible@clisp.cons.org>
33640
33641         * lib/config.charset: Output a line containing "Packages using this
33642         file".
33643         * lib/ref-add.sed.in, lib/ref-del.sed.in: New files.
33644         * lib/Makefile.am (install-exec-local, uninstall-local, ref-add.sed,
33645         ref-del.sed): New rules.
33646
33647 2000-03-17  Jim Meyering  <meyering@lucent.com>
33648
33649         * lib/unicodeio.c (<string.h>): Include only #if HAVE_STRING_H.
33650         Otherwise, include <strings.h>
33651
33652 2000-03-17  Bruno Haible  <haible@clisp.cons.org>
33653
33654         * lib/unicodeio.c (utf8_wctomb): New function.
33655         (print_unicode_char): Pass the Unicode character to iconv in UTF-8
33656         format instead of in UCS-4 with platform dependent endianness.
33657
33658 2000-03-10  Jim Meyering  <meyering@lucent.com>
33659
33660         * m4/lib-check.m4: Look for getspnam in -lgen, too.
33661         From Marco Franzen.
33662
33663 2000-03-07  Paul Eggert  <eggert@twinsun.com>
33664
33665         * lib/savedir.c (savedir): Work even if directory size is
33666         negative; this can happen with some screwy NFS configurations.
33667
33668 2000-03-06  Jim Meyering  <meyering@lucent.com>
33669
33670         * lib/localcharset.c (get_charset_aliases): Don't try to free file_name
33671         if it's NULL (because we ran out of memory).  From Bruno Haible.
33672
33673 2000-03-05  Jim Meyering  <meyering@lucent.com>
33674
33675         * lib/localcharset.c ("path-concat.h"): Include.
33676         (get_charset_aliases): Use path_concat instead of ANSI string
33677         concatenation.
33678
33679         * lib/unicodeio.h (PARAMS): Define.
33680         Use it to guard prototype.
33681
33682 2000-03-04  Jim Meyering  <meyering@lucent.com>
33683
33684         * m4/jm-macros.m4 (jm_CHECK_ALL_TYPES): Require AC_C_VOLATILE,
33685         for lib/localcharset.c.
33686
33687 2000-03-04  Jim Meyering  <meyering@lucent.com>
33688
33689         * lib/Makefile.am (install-exec-local): Create $(libdir) before
33690         installing into it.
33691         (uninstall-local): Uncomment this rule so `make distcheck' works
33692         once again.
33693
33694         * lib/unicodeio.c (<errno.h>): Include it.
33695         (errno): Declare if not defined.
33696
33697         * lib/localcharset.c: Add Bruno's comment justifying use of volatile.
33698
33699         * lib/config.charset: New version, incorporating remarks from a linux
33700         i18n mailing list.  From Bruno Haible.
33701
33702 2000-03-04  Bruno Haible  <haible@clisp.cons.org>
33703
33704         * m4/codeset.m4: New file.
33705         * m4/iconv.m4: New file.
33706         * m4/jm-macros.m4 (jm_MACROS): Call jm_LANGINFO_CODESET and jm_ICONV.
33707
33708 2000-03-03  Jim Meyering  <meyering@lucent.com>
33709
33710         * m4/regex.m4: Make sure re_compile_pattern accepts patterns like `{1'.
33711
33712 2000-03-02  Jim Meyering  <meyering@lucent.com>
33713
33714         * m4/timespec.m4: Require AC_HEADER_TIME before the cache check so
33715         the messages come out on separate lines.
33716
33717         * m4/jm-glibc-io.m4 (jm_FUNC_GLIBC_UNLOCKED_IO): Use AC_CHECK_DECLS,
33718         rather than jm_CHECK_DECLARATIONS.
33719         * m4/decl.m4: Remove now-unused file.
33720
33721         * m4/check-decl.m4 (AC_CHECK_DECLS): Add getlogin, ttyname, and
33722         geteuid.
33723
33724 2000-03-02  Jim Meyering  <meyering@lucent.com>
33725
33726         * lib/Makefile.am (EXTRA_DIST): Add config.charset.
33727
33728 2000-03-01  Jim Meyering  <meyering@lucent.com>
33729
33730         * lib/localcharset.c: Guard some #includes with `#if HAVE_...'.
33731         * lib/unicodeio.c: Likewise.
33732
33733 2000-03-01  Bruno Haible  <haible@clisp.cons.org>
33734
33735         * lib/config.charset: New file.
33736         * lib/localcharset.c: New file.
33737         * lib/unicodeio.h, lib/unicodeio.c: New files.
33738         * lib/Makefile.am (DEFS): Add -DLIBDIR=...
33739         (libfetish_a_SOURCES): Add localcharset.c and unicodeio.c.
33740         (noinst_HEADERS): Add unicodeio.h.
33741         (all-local, install-exec-local, charset.alias): New targets.
33742
33743 2000-02-28  Paul Eggert  <eggert@twinsun.com>
33744
33745         * lib/quotearg.c (ALERT_CHAR): New macro.
33746         (quotearg_buffer_restyled): Use it.
33747
33748 2000-02-27  Jim Meyering  <meyering@lucent.com>
33749
33750         * m4/check-decl.m4: Add getenv to the list.
33751
33752 2000-02-27  Jim Meyering  <meyering@lucent.com>
33753
33754         * lib/strtoumax.c: Fix typo in decl of strtoul: s/long long/long/.
33755         Guard declaration of strtoull also with `&& HAVE_UNSIGNED_LONG_LONG'.
33756
33757         * lib/backupfile.c: Guard inclusion of stdlib.h with
33758         `#if HAVE_STDLIB_H', not `#if STDC_HEADERS'.
33759         Declare malloc if needed.
33760
33761         * lib/backupfile.c: Use `#if !HAVE_DECL...' instead of
33762         `#ifndef HAVE_DECL..'
33763         now that autoconf always defines the HAVE_DECL_ symbols.
33764         * lib/human.c: Likewise.
33765         * lib/same.c: Likewise.
33766         * lib/strtoumax.c: Likewise.
33767
33768         * lib/backupfile.c: Arrange for cpp to fail if the configure-time
33769         declaration check was not run.
33770         * lib/hash.c: Likewise.
33771         * lib/human.c: Likewise.
33772         * lib/same.c: Likewise.
33773         * lib/strtoumax.c: Likewise.
33774
33775         * lib/userspec.c (parse_user_spec): If there is no `:' but there is a
33776         `.', then first look up the entire `.'-containing string as a login
33777         name.
33778
33779 2000-02-23  Jim Meyering  <meyering@lucent.com>
33780
33781         * m4/check-decl.m4: Now that we have the new AC_CHECK_DECLS, use it
33782         in place of my hack.
33783
33784 2000-02-18  Paul Eggert  <eggert@twinsun.com>
33785
33786         * lib/getdate.y: Handle two-digit years with leading zeros correctly.
33787         (textint): New typedef.
33788         (parser_control): Member year changed from int to textint.
33789         All uses changed.
33790         (YYSTYPE): Removed; replaced by %union with int and textint members.
33791         (tDAY, tDAY_UNIT, tDAYZONE, tHOUR_UNIT, tID, tLOCAL_ZONE, tMERIDIAN,
33792         tMINUTE_UNIT, tMONTH, tMONTH_UNIT tSEC_UNIT, tSNUMBER, tUNUMBER,
33793         tYEAR_UNIT, tZONE, o_merid): Now of type <intval>.
33794         (tSNUMBER, tUNUMBER): Now of type <textintval>.
33795         (date, number, to_year): Use width of number in digits, not its value,
33796         to determine whether it's a 2-digit year, or a 2-digit time.
33797         (yylex): Store number of digits of numeric tokens.
33798         Reported by John Kendall.
33799
33800         (parser_control): Changed from struct parser_control to typedef (for
33801         consistency).  All uses changed.
33802
33803         (tID): Removed; not used.
33804         (yylex): Return '?' for unknown identifiers, rather than (unused) tID.
33805
33806 2000-02-14  Paul Eggert  <eggert@twinsun.com>
33807
33808         * lib/getpagesize.h (getpagesize): Port to VMS for Alpha;
33809         adapted from changes to grep getpagesize.h by Martin P.J. Zinser.
33810
33811 2000-02-12  Jim Meyering  <meyering@lucent.com>
33812
33813         * lib/userspec.c (ISDIGIT): Define it.
33814         (isdigit): Remove definition.
33815         (is_number): Use ISDIGIT, not isdigit.
33816         <libintl.h>: Include.
33817         (_ and N_): Define.
33818         (parse_user_spec): Mark translatable strings.
33819
33820 2000-02-10  Jim Meyering  <meyering@lucent.com>
33821
33822         With these changes, nanosleep.[ch] are finally enough like the other
33823         lib/* replacement files to compile on a few more losing systems.
33824
33825         * lib/nanosleep.h: Don't include config.h.
33826         Remove prototype from declaration of nanosleep.
33827         (PARAMS): Remove now-unneeded definition.
33828         * lib/nanosleep.c: #undef nanosleep.
33829         (rpl_nanosleep): Rename from nanosleep.
33830
33831 2000-02-10  Jim Meyering  <meyering@lucent.com>
33832
33833         * m4/nanosleep.m4 (jm_FUNC_NANOSLEEP): Rename replacement function from
33834         gnu_nanosleep to rpl_nanosleep.
33835
33836 2000-02-09  Jim Meyering  <meyering@lucent.com>
33837
33838         * m4/lib-check.m4 (jm_LIB_CHECK): Fix typo: check for sp_pwdp in
33839         struct spwd, rather than in struct passwd.  Reported by Gaël Quéri.
33840
33841 2000-02-08  Akim Demaille  <akim@epita.fr>
33842
33843         * m4/largefile.m4 (AC_SYS_LARGEFILE_FLAGS): Quote square brackets with
33844         `[' and `]' and remove uses of `changequote'.
33845         (AC_SYS_LARGEFILE_MACRO_VALUE): Likewise.
33846         (AC_SYS_LARGEFILE): Likewise.
33847         * m4/gettext.m4 (AM_GNU_GETTEXT): Likewise.
33848         * m4/strftime.m4 (jm_FUNC_GNU_STRFTIME): Remove now-unnecessary use
33849         of changequote.
33850         * m4/regex.m4 (jm_INCLUDED_REGEX): Likewise.
33851         * m4/readdir.m4 (jm_FUNC_READDIR): Likewise
33852         * m4/memcmp.m4 (jm_AC_FUNC_MEMCMP): Likewise, and add `int' for main.
33853         * m4/getloadavg.m4 (AM_FUNC_GETLOADAVG): Likewise.
33854
33855 2000-02-05  Jim Meyering  <meyering@lucent.com>
33856
33857         * m4/jm-macros.m4 (jm_CHECK_ALL_TYPES): Require most macros.
33858         Remove explicit use of AC_HEADER_TIME.  It is required by
33859         jm_CHECK_TYPE_STRUCT_TIMESPEC.  Using AC_HEADER_TIME and
33860         `AC_REQUIRE'ing jm_CHECK_TYPE_STRUCT_TIMESPEC provoked a but
33861         in autoconf whereby the expansion of the latter ended up preceding
33862         the expansion of its prerequisite, AC_HEADER_TIME.
33863         Reported by Volker Borchert.
33864
33865 2000-02-03  Jim Meyering  <meyering@lucent.com>
33866
33867         * m4/prereq.m4 (jm_PREREQ_READUTMP): Check for utmpxname.
33868
33869 2000-02-03  Jim Meyering  <meyering@lucent.com>
33870
33871         * lib/readutmp.c (read_utmp): Guard with `#ifdef UTMP_NAME_FUNCTION',
33872         rather than with `#if HAVE_UTMPNAME'.
33873
33874 2000-02-02  Jim Meyering  <meyering@lucent.com>
33875
33876         * m4/prereq.m4 (jm_PREREQ_ADDEXT): Fix typo that resulted in no
33877         definition of HAVE_PATHCONF: s/AC_CHECK_FUNC/AC_CHECK_FUNCS/.
33878         Reported by Eli Zaretskii.
33879
33880 2000-02-01  Jim Meyering  <meyering@lucent.com>
33881
33882         * lib/readutmp.h (UT_USER): Add parens.  From Andreas Schwab.
33883
33884 2000-01-31  Jim Meyering  <meyering@lucent.com>
33885
33886         * m4/check-decl.m4 (jm_CHECK_DECLS): Add nanosleep to the list of
33887         functions.  Add the time.h and sys/time.h headers along with the
33888         AC_REQUIRE'ment of AC_HEADER_TIME.
33889
33890 2000-01-31  Jim Meyering  <meyering@lucent.com>
33891
33892         * lib/nanosleep.h (nanosleep): Guard declaration with
33893         `#if ! HAVE_DECL_NANOSLEEP'.
33894         Without this, OFS gets a redeclaration error for rpl_nanosleep, due to
33895         the declaration in that vendor's sys/timers.h.
33896         Reported by Christian Krackowizer.
33897
33898         * lib/quotearg.c (ISASCII): Add #undef and move definition to follow
33899         inclusion of wctype.h to work around Solaris 2.6 namespace pollution.
33900         (ISPRINT): Likewise.
33901         Reported by Tom Tromey.
33902
33903 2000-01-30  Jim Meyering  <meyering@lucent.com>
33904
33905         * m4/lib-check.m4: Clean up some kludgy old shadow password tests.
33906
33907         * m4/prereq.m4 (utmp_includes): Define.
33908         Check for ut_user and ut_name members in both struct utmpx
33909         and struct utmp.
33910
33911 2000-01-30  Jim Meyering  <meyering@lucent.com>
33912
33913         * lib/readutmp.c (extract_trimmed_name): Use UT_USER instead of
33914         hard-coding uses of ->ut_name.  The latter doesn't work with new Linux
33915         header files where only utmpx.ut_user is declared.
33916
33917         * lib/readutmp.h (UT_USER): Define.
33918
33919 2000-01-29  Jim Meyering  <meyering@lucent.com>
33920
33921         * m4/lib-check.m4: New file containing library-related checks from
33922         fileutils and sh-utils (textutils had none).
33923
33924 2000-01-28  Jim Meyering  <meyering@lucent.com>
33925
33926         * m4/perl.m4: Change format of warning message to look more like that
33927         from the missing script.  Suggestion from François Pinard.
33928
33929 2000-01-25  Jim Meyering  <meyering@lucent.com>
33930
33931         * m4/timespec.m4: Require AC_HEADER_TIME, and include sys/time.h as
33932         well as time.h in the compile check.
33933         * m4/nanosleep.m4: Require AC_HEADER_TIME rather than simply using it.
33934         Fix typo in cross-compiling case: s/yes/no/.
33935
33936 2000-01-23  Jim Meyering  <meyering@lucent.com>
33937
33938         * m4/jm-macros.m4: Move df-related tests here from
33939         fileutils/configure.in
33940
33941         * m4/ls-mntd-fs.m4: s/list_mounted_fs/ac_list_mounted_fs/
33942         (jm_LIST_MOUNTED_FILESYSTEMS): Take two parameters.
33943
33944         * m4/fsusage.m4: New file.  Extracted from fileutils/configure.in.
33945         s/space/ac_fsusage_space/.
33946         (jm_FILE_SYSTEM_USAGE): Take two parameters.
33947
33948         * m4/ftruncate.m4: New file (derived from part of
33949         fileutils/configure.in).
33950         * m4/jm-macros.m4 (jm_FUNC_FTRUNCATE): AC_REQUIRE it.
33951         (jm_CHECK_ALL_TYPES): Require AC_HEADER_MAJOR and AC_HEADER_DIRENT.
33952
33953         * m4/jm-macros.m4 (OPTIONAL_BIN_PROGS, OPTIONAL_BIN_ZCRIPTS, MAN):
33954         AC_SUBST these here, rather than just in sh-util/configure.in, so
33955         that the now-shared-by-fileutils-and-textutils lib/Makefile.am are
33956         all the same.
33957         (AM_FUNC_OBSTACK): Add (from fileutils/configure.in).
33958         (AC_CHECK_FUNCS): Merge all checks from fileutils, textutils, sh-utils.
33959         (AM_FUNC_STRTOD): Added (from textutils', sh-utils' configure.in).
33960         (AC_SUBST(POW_LIBM)): Likewise.
33961         (AC_SUBST(DF_PROG)): Moved from fileutils/configure.in.
33962
33963 2000-01-23  Jim Meyering  <meyering@lucent.com>
33964
33965         * lib/Makefile.am (libfetish_a_SOURCES): Remove explicit mention of
33966         obstack.c.
33967
33968 2000-01-22  Jim Meyering  <meyering@lucent.com>
33969
33970         * m4/jm-macros.m4: Call AC_PROG_CC_STDC just before AC_C_CONST.
33971
33972         * m4/prereq.m4 (jm_PREREQ_QUOTEARG): Add wctype.h.
33973
33974         * m4/jm-macros.m4 (AC_CHECK_HEADERS): Add checks from fileutils'
33975         configure.in
33976         (AC_CHECK_HEADERS): Likewise for sh-utils.
33977         (AC_CHECK_HEADERS): Likewise for textutils.
33978         Merge the three lists of headers.
33979
33980         * m4/prereq.m4 (jm_PREREQ_ADDEXT): New macro.  Parts moved here
33981         from fileutils' configure.in.
33982
33983         * m4/decl.m4: Remove kludgy `test -z $ac_...AC_CHECK_HEADERS(...)'
33984         code. Moved tests into their own function (_jm_DECL_HEADERS) in
33985         check-decl.m4.
33986
33987         * m4/check-decl.m4: Use #if rather than #ifdef.
33988         Add HAVE_DECL_STRTOUL and HAVE_DECL_STRTOULL.
33989         (jm_CHECK_DECLARATIONS): Add strtoul strtoull.
33990         (_jm_DECL_HEADERS): Define new function.
33991         (jm_CHECK_DECLARATIONS): Require it.
33992
33993 2000-01-22  Jim Meyering  <meyering@lucent.com>
33994
33995         * lib/strtoumax.c: [! HAVE_DECL_STRTOUL]: Declare strtoul.
33996         [! HAVE_DECL_STRTOULL]: Declare strtoull.
33997         Required for some AIX systems.  Reported by Christian Krackowizer.
33998         [TESTING] (main): New function.
33999
34000         1997-10-17  Eli Zaretskii  <eliz@is.elta.co.il>
34001         * lib/dirname.c (dir_name): Support for DOS-style file names with drive
34002         letters.
34003
34004         * lib/quotearg.c [HAVE_WCTYPE_H]: Include <wctype.h> for decl of
34005         iswprint.
34006
34007         * lib/strverscmp.c (ISDIGIT): Define.
34008         (strverscmp): Use ISDIGIT, not isdigit.
34009
34010 2000-01-19  Jim Meyering  <meyering@lucent.com>
34011
34012         * m4/nanosleep.m4 (jm_FUNC_NANOSLEEP): Include <sys/time.h>, too.
34013         Use AC_HEADER_TIME.  Volker Borchert reported that OpenBSD-2.3/sparc
34014         defines `struct timespec' in <sys/time.h>
34015
34016         * m4/c-bs-a.m4: Remove uses of changequote altogether.
34017         Thanks to Akim for explaining.
34018
34019 2000-01-17  Paul Eggert  <eggert@twinsun.com>
34020
34021         * lib/nanosleep.c (nanosleep):
34022         Don't use SA_INTERRUPT to decide whether to call sigaction, as
34023         POSIX.1 doesn't require SA_INTERRUPT and some systems
34024         (e.g. Solaris 7) don't define it.  Use SA_NOCLDSTOP instead;
34025         it's been part of POSIX.1 since day 1 (in 1988).
34026
34027 2000-01-17  Jim Meyering  <meyering@lucent.com>
34028
34029         * lib/interlock: Remove unused file.  Reported by François Pinard.
34030
34031 2000-01-16  Paul Eggert  <eggert@twinsun.com>
34032
34033         * lib/quotearg.c (quotearg_buffer_restyled): Do not quote
34034         alert, backslash, formfeed, and vertical tab unnecessarily in
34035         shell quoting style.
34036
34037 2000-01-16  Jim Meyering  <meyering@lucent.com>
34038
34039         * m4/jm-macros.m4: Require jm_FUNC_GROUP_MEMBER, jm_FUNC_PUTENV,
34040         AM_FUNC_ERROR_AT_LINE, jm_FUNC_GNU_STRFTIME, jm_FUNC_MKTIME,
34041         jm_FUNC_GETGROUPS AC_FUNC_VPRINTF, AC_FUNC_ALLOCA,
34042         AM_FUNC_GETLOADAVG, and jm_SYS_PROC_UPTIME.
34043
34044 2000-01-16  Jim Meyering  <meyering@lucent.com>
34045
34046         * m4/c-bs-a.m4: Use `changequote(<<,>>)', rather than `changequote(, )'
34047         because the latter didn't work.
34048
34049 2000-01-15  Jim Meyering  <meyering@lucent.com>
34050
34051         * m4/jm-macros.m4 (AC_REPLACE_FUNCS): Add gethostname and getusershell.
34052         (AC_REPLACE_FUNCS): Add memcpy and memset.
34053         Add these, too: stime strcspn stpcpy strstr strtol strtoul.
34054         Add strpbrk.
34055         Add these: euidaccess memcmp mkdir rmdir rpmatch strndup strverscmp.
34056
34057 2000-01-12  Jim Meyering  <meyering@lucent.com>
34058
34059         * m4/prereq.m4 (jm_PREREQ_CANON_HOST): New macro.
34060         (jm_PREREQ): Use it.
34061         (jm_PREREQ_READUTMP): New macro.
34062         (jm_PREREQ): Use it.
34063
34064 2000-01-11  Paul Eggert  <eggert@twinsun.com>
34065
34066         Quote multibyte characters correctly.
34067         * m4/c-bs-a.m4: New file.
34068         * m4/prereq.m4 (jm_PREREQ_QUOTEARG): New macro.
34069         (jm_PREREQ): Use it.
34070
34071 2000-01-11  Paul Eggert  <eggert@twinsun.com>
34072
34073         * m4/uintmax_t.m4: Port to autoconf 2.13.
34074
34075 2000-01-08  Jim Meyering  <meyering@ascend.com>
34076
34077         * m4/strerror_r.m4 (jm_FUNC_STRERROR_R): New file/macro.
34078         * m4/jm-macros.m4 (jm_FUNC_STRERROR_R): Require it.
34079
34080 2000-01-04  Jim Meyering  <meyering@ascend.com>
34081
34082         * m4/d-type.m4 (jm_CHECK_TYPE_STRUCT_DIRENT_D_TYPE): Rename from
34083         jm_STRUCT_DIRENT_D_TYPE.
34084         * m4/d-ino.m4 (jm_CHECK_TYPE_STRUCT_DIRENT_D_INO): Rename from
34085         jm_STRUCT_DIRENT_D_INO.
34086         * m4/utimbuf.m4 (jm_CHECK_TYPE_STRUCT_UTIMBUF): Rename from
34087         jm_STRUCT_UTIMBUF.
34088         * m4/jm-macros.m4: Reflect s/jm_STRUCT_/jm_CHECK_TYPE_STRUCT_/
34089         renamings.
34090         * m4/utime.m4: Likewise.
34091
34092         * m4/timespec.m4 (jm_CHECK_TYPE_STRUCT_TIMESPEC): New file, macro.
34093         * m4/jm-macros.m4 (jm_CHECK_TYPE_STRUCT_TIMESPEC): Require it.
34094
34095 2000-01-03  Paul Eggert  <eggert@twinsun.com>
34096
34097         * m4/nanosleep.m4 (jm_FUNC_NANOSLEEP): Search for nanosleep in -lrt
34098         (for Solaris 7) and in -lposix4 (for Solaris 2.5.1).
34099
34100 2000-01-02  Jim Meyering  <meyering@ascend.com>
34101
34102         * m4/search-libs.m4: Escape `$' in $3 of dnl comment.  I no longer
34103         remember if this is necessary.
34104
34105 1999-12-26  Jim Meyering  <meyering@ascend.com>
34106
34107         * m4/jm-macros.m4: Use it here.
34108         * m4/nanosleep.m4 (jm_FUNC_NANOSLEEP): New file/macro.
34109
34110 1999-12-23  Jim Meyering  <meyering@ascend.com>
34111
34112         * m4/jm-macros.m4: Check for clock_gettime (moved from
34113         fileutils/configure.in)
34114         Check for gettimeofday.
34115
34116 1999-12-20  Jim Meyering  <meyering@ascend.com>
34117
34118         * m4/strftime.m4: Remove kludge, now that I'm using the fixed
34119         autoconf-2.14a-1999-12-20.
34120
34121 1999-12-19  Jim Meyering  <meyering@ascend.com>
34122
34123         * m4/lstat-slash.m4: New file.
34124         * m4/jm-macros.m4: Use the new macro:
34125         jm_FUNC_LSTAT_FOLLOWS_SLASHED_SYMLINK.
34126
34127 1999-12-07  Jim Meyering  <meyering@ascend.com>
34128
34129         * m4/perl.m4: Require that File::Compare be available, too.
34130         Too many systems seem to lack it.
34131
34132         * m4/strftime.m4: Add checks for most of the cpp macros tested in
34133         GNU's strftime.c.  Prompted by a patch from Paul Eggert.
34134
34135 1999-11-18  Paul Eggert  <eggert@twinsun.com>
34136
34137         * m4/largefile.m4 (AC_SYS_LARGEFILE_FLAGS): Work around a
34138         problem with the QNX 4.25 shell, which doesn't propagate exit
34139         status of failed commands inside shell assignments.
34140
34141 1999-11-17  Jim Meyering  <meyering@ascend.com>
34142
34143         * m4/gettext.m4: Use new AC_CONFIG_LINKS in place of AC_LINK_FILES.
34144
34145 1999-11-07  Jim Meyering  <meyering@ascend.com>
34146
34147         * m4/getloadavg.m4: Add `, 1, [FIXME]' to each use of AC_DEFINE.
34148
34149 1999-11-06  Jim Meyering  <meyering@ascend.com>
34150
34151         * m4/link-follow.m4 (jm_AC_FUNC_LINK_FOLLOWS_SYMLINK): New file/macro.
34152         * m4/jm-macros.m4 (jm_MACROS): Use it here.
34153
34154 1999-11-05  Jim Meyering  <meyering@ascend.com>
34155
34156         * m4/jm-macros.m4 (jm_CHECK_ALL_TYPES): Move some tests from
34157         configure.in of textutils, fileutils, and sh-utils into this one
34158         (shared between those packages) file.
34159         Use `AC_CHECK_MEMBERS((struct stat.st_blksize))' instead of deprecated
34160         AC_STRUCT_ST_BLKSIZE.
34161
34162 1999-11-03  Jim Meyering  <meyering@ascend.com>
34163
34164         * m4/ssize_t.m4: Remove file.  No longer needed since the new version
34165         of AC_CHECK_TYPE checks includes unistd.h.
34166         * m4/jm-macros.m4: Use straight `AC_CHECK_TYPE(ssize_t, int)'.
34167         Suggestion from Akim Demaille.
34168
34169 1999-10-30  Jim Meyering  <meyering@ascend.com>
34170
34171         * m4/uintmax_t.m4: Require 2.14a.  Remove backslash before backtick in
34172         m4-quoted string.
34173         * m4/ls-mntd-fs.m4: Likewise.
34174         * m4/jm-macros.m4: Likewise.  Also, use AC_TYPE_SSIZE_T instead
34175         * m4/jm-winsz1.m4: Likewise.
34176
34177         * m4/const.m4: Remove file, since the fix made it into the experimental
34178         version of autoconf.
34179         * m4/mktime.m4: Likewise.
34180
34181         * m4/check-type.m4: Remove file, now that the latest version of
34182         AC_CHECK_TYPE takes a third arg to specify additional #includes.
34183
34184         * m4/ssize_t.m4: New file, requires experimental version of autoconf.
34185         * m4/jm-macros.m4: Use new AC_TYPE_SSIZE_T instead of my hacked
34186         AC_CHECK_TYPE.
34187
34188 1999-10-04  Jim Meyering  <meyering@ascend.com>
34189
34190         * m4/jm-macros.m4: Don't require autoconf-2.14.1.
34191
34192 1999-09-22  Paul Eggert  <eggert@twinsun.com>
34193
34194         * m4/largefile.m4 (AC_SYS_LARGEFILE_FLAGS): Work around GCC
34195         2.95.1 bug with HP-UX 10.20.
34196
34197 1999-09-17  Jim Meyering  <meyering@ascend.com>
34198
34199         * m4/jm-macros.m4 (AC_REPLACE_FUNCS): Add strdup.
34200         Paul Nevai reported a link failure on a NeXT CUBE with NeXTSTEP 3.3
34201         due to missing strdup (against sh-utils-2.0).
34202
34203 1999-08-29  Jim Meyering  <meyering@ascend.com>
34204
34205         * m4/jm-macros.m4: Require jm_BISON.
34206         * m4/bison.m4: New file.
34207
34208 1999-08-17  Paul Eggert  <eggert@twinsun.com>
34209
34210         * m4/largefile.m4 (AC_SYS_LARGEFILE): Fix typo: missing comma
34211         in value for _FILE_OFFSET_BITS, which broke ports to HP-UX 10.20.
34212
34213 1999-08-05  Jim Meyering  <meyering@ascend.com>
34214
34215         * m4/getline.m4: Rename test file from conftestdata to conftest.data
34216         to avoid conflicts with `conftest' on 8+3 filesystems.
34217         Suggestion from Eli Zaretskii.
34218
34219 1999-08-04  Jim Meyering  <meyering@ascend.com>
34220
34221         * m4/jm-macros.m4: Move a 4-line block of code from the configure.in of
34222         fileutils and sh-utils (textutils's getline test was inadequate).
34223         (AM_FUNC_GETLINE): Run this test.
34224         (AC_CHECK_FUNCS): Check for getdelim.
34225         Reported by Bob Proulx.
34226
34227 1999-08-02  Jim Meyering  <meyering@ascend.com>
34228
34229         * m4/jm-macros.m4: Add a comment.
34230
34231 1999-08-01  Paul Eggert  <eggert@twinsun.com>
34232
34233         * m4/xstrtoumax.m4 (jm_AC_PREREQ_XSTRTOUMAX): Check whether
34234         <inttypes.h> defines strtoumax as a macro (and not as a
34235         function).
34236
34237 1999-08-01  Paul Eggert  <eggert@twinsun.com>
34238
34239         * m4/ulonglong.m4 (jm_AC_TYPE_UNSIGNED_LONG_LONG): Make sure
34240         that we can shift, multiply and divide unsigned long long
34241         values; Ultrix cc can't do it.
34242
34243 1999-08-01  Paul Eggert  <eggert@twinsun.com>
34244
34245         * m4/mktime.m4: New file, which is a preview of what should appear
34246         in the next public autoconf release.
34247
34248 1999-08-01  Paul Eggert  <eggert@twinsun.com>
34249
34250         * m4/lfs.m4: Remove this file.
34251         * m4/largefile.m4: New file.  It contains the old contents of
34252         lfs.m4, except that all names with prefix AC_LFS have been
34253         changed to use the prefix AC_SYS_LARGEFILE instead, to be
34254         compatible with future autoconf versions.  Also, some minor m4
34255         quoting problems have been fixed.
34256
34257 1999-08-01  Paul Eggert  <eggert@twinsun.com>
34258
34259         * m4/gettext.m4 (AM_WITH_NLS): Remove unnecessary lines.
34260         Fix typo: $nls_cv_header_intl was misspelled as $nsl_cv_header_intl.
34261         (AM_GNU_GETTEXT): Fix problem with brackets and m4 quoting,
34262         and simplify the shell code.
34263
34264 1999-08-01  Jim Meyering  <meyering@ascend.com>
34265
34266         * m4/mktime.m4 (AC_FUNC_MKTIME): Undefine to avoid syntax errors from
34267         m4.
34268
34269 1999-07-20  Jim Meyering  <meyering@ascend.com>
34270
34271         * m4/jm-macros.m4 (AC_REPLACE_FUNCS): Add memmove.
34272
34273 1999-07-15  Jim Meyering  <meyering@ascend.com>
34274
34275         * m4/jm-macros.m4 (AC_CHECK_FUNCS): Check for getpagesize.
34276
34277 1999-05-22  Jim Meyering  <meyering@ascend.com>
34278
34279         * m4/jm-macros.m4 (AC_REPLACE_FUNCS): Add memchr.
34280
34281 1999-05-20  Jim Meyering  <meyering@ascend.com>
34282
34283         * m4/search-libs.m4 [AC_SEARCH_LIBS]: Quote name in undefine.
34284         Add a colon after each `then' in case $4 is empty.
34285
34286 1999-05-16  Jim Meyering  <meyering@ascend.com>
34287
34288         * m4/search-libs.m4: New file to override autoconf's AC_SEARCH_LIBS.
34289
34290 1999-05-10  Jim Meyering  <meyering@ascend.com>
34291
34292         * m4/jm-mktime.m4: Reflect renaming: AM_FUNC_MKTIME -> AC_FUNC_MKTIME.
34293
34294         * m4/jm-macros.m4: Require 2.14.1, since we use newly-renamed
34295         AC_FUNC_MKTIME.
34296
34297 1999-05-10  Andreas Schwab  <schwab@issan.cs.uni-dortmund.de>
34298
34299         * m4/jm-mktime.m4, putenv.m4: Fix typos in config.h comments.
34300
34301 1999-05-04  Paul Eggert  <eggert@twinsun.com>
34302
34303         * m4/lfs.m4 (AC_LFS): -n32, -o32, and -n64 should be in CFLAGS,
34304         not CPPFLAGS, so that linking works correctly in IRIX.
34305
34306 1999-04-30  Paul Eggert  <eggert@twinsun.com>
34307
34308         * m4/jm-macros.m4 (AC_REPLACE_FUNCS): Add dup2.
34309
34310 1999-04-20  Paul Eggert  <eggert@twinsun.com>
34311
34312         * m4/uintmax_t.m4 (jm_AC_TYPE_UINTMAX_T): Move unsigned long
34313         long check into new jm_AC_TYPE_UNSIGNED_LONG_LONG macro.
34314         * m4/jm-macros.m4 (jm_CHECK_ALL_TYPES): Require
34315         jm_AC_TYPE_UNSIGNED_LONG_LONG.
34316         * m4/ulonglong.m4 (jm_AC_TYPE_UNSIGNED_LONG_LONG): New file/macro.
34317
34318         * m4/lfs.m4: Port to AIX and HP-UX.  Support cross-compilation.
34319
34320 1999-04-20  Jim Meyering  <meyering@ascend.com>
34321
34322         * m4/xstrtoumax.m4: Require jm_AC_TYPE_UNSIGNED_LONG_LONG.
34323         AC_REPLACE xstroull if necessary.  From Paul Eggert.
34324         (AC_CHECK_FUNCS): Remove strtoull, strtoumax, strtouq.
34325
34326 1999-04-18  Jim Meyering  <meyering@ascend.com>
34327
34328         * m4/xstrtoumax.m4 (jm_AC_PREREQ_XSTRTOUMAX): New file/macro.
34329         * m4/jm-macros.m4: Use it.
34330
34331 1999-04-06  Jim Meyering  <meyering@ascend.com>
34332
34333         * m4/strftime.m4: Remove test for %f.
34334
34335 1999-03-29  Jim Meyering  <meyering@ascend.com>
34336
34337         * m4/jm-macros.m4 (jm_CHECK_ALL_TYPES): New macro, contains the
34338         superset of the AC_TYPE_* checks in the textutils, fileutils,
34339         and sh-utils, plus AC_TYPE_PID_T.  Paul Eggert suggested adding
34340         AC_TYPE_PID_T.
34341
34342 1999-03-28  Jim Meyering  <meyering@ascend.com>
34343
34344         * m4/jm-macros.m4: Define GNU_PACKAGE here.
34345         Be sure to AC_SUBST it, once again, so that @GNU_PACKAGE@ is
34346         replaced e.g., in the *.sh files of the sh-utils.
34347
34348 1999-03-20  Jim Meyering  <meyering@ascend.com>
34349
34350         * m4/jm-macros.m4: s/jm_WITH_REGEX/jm_INCLUDED_REGEX/.
34351         * m4/regex.m4 (jm_INCLUDED_REGEX): Rename from jm_WITH_REGEX.
34352         Don't depend on AM_GLIBC.  Suggestions from Alain Magloire.
34353
34354 1999-03-19  Jim Meyering  <meyering@ascend.com>
34355
34356         * m4/jm-winsz1.m4 (jm_WINSIZE_IN_PTEM): New macro.
34357
34358 1999-03-12  Jim Meyering  <meyering@ascend.com>
34359
34360         * m4/jm-macros.m4: Use AC_FUNC_SETVBUF_REVERSED.
34361
34362 1999-03-07  Jim Meyering  <meyering@ascend.com>
34363
34364         * m4/jm-glibc-io.m4: Use only those *_unlocked macros that are
34365         declared.
34366
34367 1999-02-17  Jim Meyering  <meyering@ascend.com>
34368
34369         * m4/gettext.m4 (AM_GNU_GETTEXT): Do `changequote' around use of
34370         brackets in macro definition.  From Eli Zaretskii and Alain Magloire.
34371
34372 1999-02-07  Jim Meyering  <meyering@ascend.com>
34373
34374         * m4/group-member.m4: New file -- extracted from sh-utils'
34375         configure.in.
34376
34377         1999-02-05  Eli Zaretskii  <eliz@is.elta.co.il>
34378         * m4/gettext.m4: Support DOS-style d:/foo/bar absolute file names.
34379
34380 1999-02-06  Jim Meyering  <meyering@ascend.com>
34381
34382         * m4/chown.m4: Use `AC_SUBST(LIBOBJS)' since we set LIBOBJS.
34383         * m4/fnmatch.m4: Likewise.
34384         * m4/getgroups.m4: Likewise.
34385         * m4/lstat.m4: Likewise.
34386         * m4/malloc.m4: Likewise.
34387         * m4/putenv.m4: Likewise.
34388         * m4/realloc.m4: Likewise.
34389         * m4/regex.m4: Likewise.
34390         * m4/stat.m4: Likewise.
34391         * m4/strftime.m4: Likewise.
34392         Suggestion from Alain Magloire.
34393
34394         * m4/chown.m4: Use `.$ac_objext', not `.o'.
34395         * m4/fnmatch.m4: Likewise.
34396         * m4/getgroups.m4: Likewise.
34397         * m4/getline.m4: Likewise.
34398         * m4/lstat.m4: Likewise.
34399         * m4/malloc.m4: Likewise.
34400         * m4/memcmp.m4: Likewise.
34401         * m4/putenv.m4: Likewise.
34402         * m4/realloc.m4: Likewise.
34403         * m4/regex.m4: Likewise.
34404         * m4/stat.m4: Likewise.
34405         * m4/strftime.m4: Likewise.
34406         Suggestion from Alain Magloire.
34407
34408         * m4/jm-macros.m4: Actually invoke jm_WITH_REGEX now that it requires
34409         an argument.
34410
34411         * m4/regex.m4: Add a run-time Test for proper operation of
34412         re_compile_pattern.
34413
34414 1999-01-31  Jim Meyering  <meyering@ascend.com>
34415
34416         * m4/getloadavg.m4: Check for locale.h and the function, setlocale.
34417
34418 1999-01-30  Jim Meyering  <meyering@ascend.com>
34419
34420         * m4/check-type.m4: Use 3-arg form of AC_DEFINE.
34421
34422         * m4/jm-mktime.m4: Make this a wrapper around the official
34423         AM_FUNC_MKTIME rather than my private copy, now that the official one
34424         is up to date.
34425         * m4/mktime.m4: Remove file.
34426
34427         * m4/getloadavg.m4: Use 3-arg form of AC_DEFINE.
34428         * m4/uptime.m4: Likewise.
34429         * m4/uintmax_t.m4: Likewise.
34430
34431 1999-01-28  Jim Meyering  <meyering@ascend.com>
34432
34433         * m4/jm-macros.m4: Use jm_AFS.
34434         * m4/afs.m4: New file (from fileutils' configure.in).
34435
34436         * m4/assert.m4: Use the 3-argument forms of AC_DEFINE* macros.
34437         * m4/chown.m4: Likewise.
34438         * m4/d-ino.m4: Likewise.
34439         * m4/d-type.m4: Likewise.
34440         * m4/fnmatch.m4: Likewise.
34441         * m4/getgroups.m4: Likewise.
34442         * m4/gettext.m4: Likewise.
34443         * m4/jm-mktime.m4: Likewise.
34444         * m4/jm-winsz2.m4: Likewise.
34445         * m4/lcmessage.m4: Likewise.
34446         * m4/ls-mntd-fs.m4: Likewise.
34447         * m4/malloc.m4: Likewise.
34448         * m4/memcmp.m4: Likewise.
34449         * m4/putenv.m4: Likewise.
34450         * m4/realloc.m4: Likewise.
34451         * m4/st_mtim.m4: Likewise.
34452         * m4/strftime.m4: Likewise.
34453
34454 1999-01-16  Jim Meyering  <meyering@ascend.com>
34455
34456         * m4/jm-macros.m4 (ARGMATCH_DIE): Define.
34457         (ARGMATCH_DIE_DECL): Define.
34458
34459 1999-01-12  Jim Meyering  <meyering@ascend.com>
34460
34461         * m4/Makefile.am.in: Rewrite to avoid using fmt.
34462         Reported by Lars Hecking.
34463
34464 1999-01-10  Jim Meyering  <meyering@ascend.com>
34465
34466         * m4/fstypename.m4: Use the new 3-arg form of AC_DEFINE instead of my
34467         gross kludge.
34468         * m4/inttypes_h.m4: Likewise.
34469         * m4/lstat.m4: Likewise.
34470         * m4/malloc.m4: Likewise.
34471         * m4/readdir.m4: Likewise.
34472         * m4/realloc.m4: Likewise.
34473         * m4/st_dm_mode.m4: Likewise.
34474         * m4/stat.m4: Likewise.
34475         * m4/utimbuf.m4: Likewise.
34476         * m4/utimes.m4: Likewise.
34477
34478         * m4/check-decl.m4: Use the new 3-arg form of AC_DEFINE instead of the
34479         AC_CHECK_FUNCS hack.  Now, it's still a hack, but at least the
34480         comments in config.h.in are meaningful.
34481
34482         * m4/jm-macros.m4: Require autoconf-2.13 here.
34483
34484         * m4/regex.m4: By default, don't use the included regex.c on systems
34485         with glibc 2.  Suggestion from Uli Drepper.
34486
34487 1999-01-02  Jim Meyering  <meyering@ascend.com>
34488
34489         * m4/jm-macros.m4: Replace strcasecmp and strncasecmp.
34490
34491 1998-12-18  Jim Meyering  <meyering@ascend.com>
34492
34493         * m4/Makefile.am.in (Makefile.am): Simplify rule.
34494         Based on a suggestion from Lars Hecking.
34495
34496 1998-11-16  Paul Eggert  <eggert@twinsun.com>
34497
34498         * m4/lfs.m4 (AC_LFS): Add support for HP-UX 10.20 and HP-UX 11.
34499
34500 1998-11-16  Jim Meyering  <meyering@ascend.com>
34501
34502         * m4/lfs.m4: Double-quote the `uname...` expression.
34503
34504 1998-11-14  Jim Meyering  <meyering@ascend.com>
34505
34506         * m4/lstat.m4: Correct comment.  POSIX does not permit it to succeed.
34507         * m4/stat.m4: Likewise.
34508
34509 1998-11-03  Jim Meyering  <meyering@ascend.com>
34510
34511         * m4/stat.m4: Rewrite to set HAVE_STAT_EMPTY_STRING_BUG.
34512         * m4/lstat.m4: Rewrite to set HAVE_LSTAT_EMPTY_STRING_BUG.
34513
34514 1998-10-18  Jim Meyering  <meyering@ascend.com>
34515
34516         * m4/check-decl.m4 (jm_CHECK_DECL_LOCALTIME_R): Remove macro.
34517
34518 1998-10-17  Jim Meyering  <meyering@ascend.com>
34519
34520         * m4/decl.m4 (jm_CHECK_DECLARATION): Don't hard-code which headers to
34521         include, though we still hard-code the `require'-like AC_CHECK_HEADERS
34522         calls for those previously hard-coded headers.  Instead, take a new
34523         parameter.
34524         (jm_CHECK_DECLARATIONS): Reflect interface change.
34525         * m4/check-decl.m4 (jm_CHECK_DECLS): Likewise.
34526         (jm_CHECK_DECL_LOCALTIME_R): New macro.
34527
34528         * m4/mktime.m4: Test for spring-forward gap before long-running test.
34529
34530 1998-10-14  Jim Meyering  <meyering@ascend.com>
34531
34532         * m4/mktime.m4: Use the more portable "TZ=PST8PDT,M4.1.0,M10.5.0"
34533         instead of "TZ=America/Vancouver".  From Paul Eggert.
34534
34535 1998-10-11  Jim Meyering  <meyering@ascend.com>
34536
34537         * m4/mktime.m4 (jm_AM_FUNC_MKTIME): New file and macro.
34538         This adds a test for a recently added compatibility fix for mktime.c.
34539         * m4/jm-mktime.m4: Require jm_AM_FUNC_MKTIME, not AM_FUNC_MKTIME.
34540
34541 1998-09-27  Jim Meyering  <meyering@ascend.com>
34542
34543         * m4/jm-macros.m4 (jm_MACROS): Require jm_FUNC_FNMATCH.
34544
34545         * m4/fnmatch.m4 (jm_FUNC_FNMATCH): New file/macro.  Extracted from
34546         ../configure.in, including a change from Gordon Matzigkeit to allow
34547         cross-compiling for the Hurd.
34548
34549         * m4/glibc.m4: New file/macro to test for the GNU C Library
34550         versions 1 and 2.  From Gordon Matzigkeit.
34551         Indent.
34552
34553 1998-09-21  Jim Meyering  <meyering@ascend.com>
34554
34555         * m4/chown.m4: Declare locals: before, after.  From Andries Brouwer.
34556
34557 1998-08-18  Paul Eggert  <eggert@twinsun.com>
34558
34559         Port nanosecond-resolution times to UnixWare 2.1.2 and
34560         pedantic Solaris 2.6.
34561
34562         * m4/st_mtim.m4 (AC_STRUCT_ST_MTIM_NSEC): Renamed from
34563         AC_STRUCT_ST_MTIM.
34564         * m4/st_mtim.m4 (AC_STRUCT_ST_MTIM_NSEC):
34565         Generate name of ns member, instead of just 1 or undef.
34566         Allow for UnixWare 2.1.2 and Solaris 2.6 if in pedantic mode.
34567
34568 1998-08-15  Jim Meyering  <meyering@ascend.com>
34569
34570         * m4/ssize_t.m4 (jm_TYPE_SSIZE_T): Remove file.
34571         * m4/check-type.m4: New file.  Replacement for AC_CHECK_TYPE.
34572         * m4/jm-macros.m4: Use the new AC_CHECK_TYPE(ssize_t, int)
34573         instead of jm_TYPE_SSIZE_T.
34574
34575 1998-08-12  Jim Meyering  <meyering@ascend.com>
34576
34577         * m4/st_dm_mode.m4: New file.  From Johan Danielsson.
34578
34579 1998-08-02  Jim Meyering  <meyering@ascend.com>
34580
34581         * m4/st_mtim.m4: Use hack to avoid having to put #undef HAVE_ST_MTIM
34582         in acconfig.h manually.
34583
34584 1998-07-31  Paul Eggert  <eggert@twinsun.com>
34585
34586         * m4/st_mtim.m4: New file.
34587
34588 1998-07-28  Jim Meyering  <meyering@ascend.com>
34589
34590         * m4/utimes.m4: Undef stat.
34591
34592 1998-07-25  Jim Meyering  <meyering@ascend.com>
34593
34594         * m4/utime.m4 (jm_FUNC_UTIME): New file and macro.
34595         * m4/utimes.m4 (jm_FUNC_UTIMES_NULL): New file and macro.
34596
34597 1998-07-09  Manfred Hollstein  <manfred@s-direktnet.de>
34598
34599         * m4/chown.m4 (jm_FUNC_CHOWN): Add a check to verify that the
34600         uid and gid actually remain unchanged.
34601
34602 1998-07-07  Jim Meyering  <meyering@ascend.com>
34603
34604         * m4/jm-glibc-io.m4: Remove fclose_unlocked.
34605
34606 1998-07-04  Jim Meyering  <meyering@ascend.com>
34607
34608         * m4/regex.m4: Use syscmd, ifelse, and sysval.  Mainly as an exercise
34609         to prove that this macro can be used in packages without regex.c.
34610
34611 1998-07-04  Andreas Schwab  <schwab@issan.informatik.uni-dortmund.de>
34612
34613         * m4/gettext.m4 (AM_WITH_NLS): Remove intl/libintl.h if <libintl.h>
34614         is to be used.
34615
34616 1998-07-03  Jim Meyering  <meyering@ascend.com>
34617
34618         * m4/gettext.m4: Add -lintl if it's found to be necessary.
34619
34620         * m4/gettext.m4: New file -- from gettext-0.10.35.
34621         * m4/lcmessage.m4: Likewise.
34622         * m4/progtest.m4: Likewise.
34623
34624         * m4/regex.m4 (jm_WITH_REGEX): New file and macro.
34625         * m4/jm-macros.m4: Require the new macro.
34626
34627 1998-06-29  Jim Meyering  <meyering@ascend.com>
34628
34629         * m4/fstypename.m4: Include sys/param.h.  NetBSD 1.3.1 requires this
34630         for the definition of NGROUPS (used in a system header included
34631         by sys/mount.h).
34632
34633 1998-06-28  Jim Meyering  <meyering@ascend.com>
34634
34635         * m4/ls-mntd-fs.m4: New file.
34636         * m4/fstypename.m4: New file.
34637
34638         * m4/jm-macros.m4: Require the new macro.
34639         * m4/jm-glibc-io.m4: New file.
34640
34641 1998-05-19  Jim Meyering  <meyering@ascend.com>
34642
34643         * m4/jm-macros.m4: Add jm_FUNC_LCHOWN.
34644         * m4/lchown.m4: New file.
34645
34646         * m4/Makefile.am.in: New file.
34647         * m4/Makefile.am (Makefile.am): Depend on Makefile.am.in.
34648
34649 1998-05-14  Jim Meyering  <meyering@ascend.com>
34650
34651         * m4/Makefile.am (EXTRA_DIST): Add them.
34652         * m4/jm-macros.m4: New file.
34653         * m4/utimbuf.m4: New file.
34654
34655 1998-05-12  Jim Meyering  <meyering@ascend.com>
34656
34657         * m4/Makefile.am (EXTRA_DIST): Add isc-posix.m4.
34658
34659 1998-05-11  Jim Meyering  <meyering@ascend.com>
34660
34661         * m4/isc-posix.m4: New file.
34662
34663 1998-05-10  Jim Meyering  <meyering@ascend.com>
34664
34665         * m4/jm-mktime.m4: Use AM_FUNC_MKTIME, now that it's up to date.
34666
34667 1998-05-09  Jim Meyering  <meyering@ascend.com>
34668
34669         * m4/Makefile.am (EXTRA_DIST): Add ssize_t.m4.
34670         (EXTRA_DIST): Remove mktime.m4, now that the new version is included
34671         with automake.
34672
34673         * m4/ssize_t.m4: New file.
34674         * m4/mktime.m4: Remove file -- the new automake has this now.
34675
34676 1998-04-26  Jim Meyering  <meyering@ascend.com>
34677
34678         * m4/assert.m4: New file.
34679         * m4/Makefile.am (EXTRA_DIST): Add assert.m4.
34680
34681 1998-04-05  Jim Meyering  <meyering@ascend.com>
34682
34683         * m4/prereq.m4 (jm_PREREQ_REGEX): New macro.
34684         (jm_PREREQ): Use it here.
34685
34686 1998-03-23  Jim Meyering  <meyering@eng.ascend.com>
34687
34688         * m4/inttypes_h.m4: Kludges so I don't have to add HAVE_INTTYPES_H
34689         in acconfig.h.
34690
34691 1998-03-15  Jim Meyering  <meyering@eng.ascend.com>
34692
34693         * m4/prereq.m4: New file.
34694         * m4/error.m4: New file.
34695         * m4/Makefile.am (EXTRA_DIST): Add error.m4 and prereq.m4.
34696
34697 1998-02-07  Jim Meyering  <meyering@eng.ascend.com>
34698
34699         * m4/getline.m4: Don't set am_cv_func_working_getline before the
34700         cache-check for the same variable -- that defeated the purpose of
34701         the test; the test program was never run.  This was a problem only
34702         on systems with losing getline functions -- HP-UX 10.20 is one.
34703         Reported by Bjorn Helgaas.
34704
34705 1998-02-06  Jim Meyering  <meyering@eng.ascend.com>
34706
34707         * m4/Makefile.am (EXTRA_DIST): Add perl.m4.
34708
34709 1998-01-10  Jim Meyering  <meyering@na-net.ornl.gov>
34710
34711         * m4/Makefile.am (EXTRA_DIST): Add const.m4.
34712
34713         * m4/const.m4: New file.  Use an initializer in this declaration
34714         typedef int charset[2]; const charset x;
34715         Reported by Bob Glickstein.
34716
34717 1997-12-21  Jim Meyering  <meyering@na-net.ornl.gov>
34718
34719         * m4/chown.m4: Fix reversed types on -1 args to chown.
34720         From Kaveh Ghazi.
34721
34722 1997-12-14  Jim Meyering  <meyering@na-net.ornl.gov>
34723
34724         * m4/check-decl.m4: s/DECLARATION_/DECL_/g.
34725         Add lseek and memchr.
34726
34727         * m4/decl.m4: s/HAVE_DECLARATION_/HAVE_DECL_/g.
34728         T.E.Dickey <dickey@clark.net> said that some older preprocessors
34729         have a 20-character limit on names.
34730
34731 1997-11-30  Jim Meyering  <meyering@na-net.ornl.gov>
34732
34733         * m4/inttypes_h.m4: New file.
34734         * m4/uintmax_t.m4: New file.
34735         * m4/Makefile.am (EXTRA_DIST): Add inttypes_h.m4 and uintmax_t.m4.
34736
34737 Copyright (C) 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007
34738   Free Software Foundation, Inc.
34739 Copying and distribution of this file, with or without modification,
34740 are permitted provided the copyright notice and this notice are preserved.