Fix incorrect rounding of ceil, ceilf, ceill in some cases. Add new test.
[gnulib.git] / ChangeLog
1 2007-10-12  Bruno Haible  <bruno@clisp.org>
2
3         * lib/ceil.c (FUNC): Avoid rounding errors for values near a power
4         of 2.
5         * tests/test-ceilf2.c: New file.
6         * modules/ceilf-tests: (Files, Depends-on, Makefile.am): Add new test.
7
8         * tests/test-ceilf1.c: Renamed from tests/test-ceilf.c.
9         * modules/ceilf-tests: Update.
10
11 2007-10-12  Bruno Haible  <bruno@clisp.org>
12
13         * lib/floor.c (FUNC): Avoid rounding errors for values near a power
14         of 2.
15         * tests/test-floorf2.c: New file.
16         * modules/floorf-tests: (Files, Depends-on, Makefile.am): Add new test.
17
18         * tests/test-floorf1.c: Renamed from tests/test-floorf.c.
19         * modules/floorf-tests: Update.
20
21 2007-10-12  Bruno Haible  <bruno@clisp.org>
22
23         * tests/test-trunc2.c: New file.
24         * modules/trunc-tests: (Files, Depends-on, Makefile.am): Add new test.
25
26         * tests/test-trunc1.c: Renamed from tests/test-trunc.c.
27         * modules/trunc-tests: Update.
28
29 2007-10-12  Bruno Haible  <bruno@clisp.org>
30
31         * lib/trunc.c (FUNC): Avoid rounding errors for values near a power
32         of 2.
33         * tests/test-truncf2.c: New file.
34         * modules/truncf-tests: (Files, Depends-on, Makefile.am): Add new test.
35
36         * tests/test-truncf1.c: Renamed from tests/test-truncf.c.
37         * modules/truncf-tests: Update.
38
39 2007-10-11  Eric Blake  <ebb9@byu.net>
40
41         Don't claim strerror is broken on Interix.
42         * doc/functions/strerror.texi (strerror): Known broken systems are
43         now Solaris 8, and not Interix.
44         * m4/strerror.m4 (gl_FUNC_STRERROR_SEPARATE): No longer filter out
45         Interix on cross-compile.
46         Reported by Martin Koeppe in
47         http://lists.gnu.org/archive/html/bug-gnulib/2007-10/msg00005.html.
48
49 2007-10-11  Bruno Haible  <bruno@clisp.org>
50
51         * modules/i-ring-tests: New file.
52         * tests/test-i-ring.c: Renamed from lib/i-ring-test.c. Use ASSERT
53         instead of assert.
54
55 2007-10-11  Bruno Haible  <bruno@clisp.org>
56
57         * modules/filenamecat-tests: New file.
58         * tests/test-filenamecat.c: New file, extracted from lib/filenamecat.c.
59         * lib/filenamecat.c: Remove test code.
60
61 2007-10-11  Paul Eggert  <eggert@cs.ucla.edu>
62
63         Simplify and modernize strerror substitute, partly to fix Solaris 8 bug.
64
65         * lib/strerror.c: Include <string.h> always, to test interface,
66         and to remove the need for the dummy.
67         Include intprops.h to compute width instead of doing it ourselves
68         and missing a CHAR_BIT declaration, which broke tar 1.19 on Solaris 8.
69         (strerror): Define it to return NULL if there's no system strerror.
70         (rpl_strerror): Use INT_STRLEN_BOUND to compute bound.
71         Omit !HAVE_STRERROR code.  We don't need to worry about supporting
72         ancient pre-strerror Unix systems well any more.  Saying "unknown
73         system error" is enough.
74         * lib/string.in.h (strerror): Simplify the ifdef to reflect the
75         simpler strerror.c implementation.
76         * m4/strerror.m4 (gl_FUNC_STRERROR_SEPARATE, gl_PREREQ_STDERROR):
77         Simplify the tests to reflect the simpler strerror implementation.
78         * modules/strerror (Depends-on): Add intprops.
79
80 2007-10-09  Eric Blake  <ebb9@byu.net>
81
82         Silence test-fpending.
83         * modules/fpending-tests (Files): Add wrapper script.
84         * tests/test-fpending.sh: New file.
85
86 2007-10-09  Bruno Haible  <bruno@clisp.org>
87
88         * MODULES.html.sh (func_module): Don't create a hyperlink for
89         function names like 'printf_frexp'.
90         (Misc): Add crc, memxor.
91         (Characteristics of floating types): New section.
92         (Mathematics): Add ceilf, ceill, floorf, floorl, frexpl-nolibm,
93         isnanf-nolibm, signbit, trunc, truncf, truncl.
94         (Enhancements for ISO C 99 functions): New subsection Input/output.
95         (Support for systems lacking POSIX:2001): Add arpa_inet, calloc-posix,
96         fcntl, fopen, freopen, fseek, fseeko, ftell, ftello, iconv_open,
97         locale, malloc-posix, netinet_in, open, realloc-posix, signal, sleep.
98         (Compatibility checks for POSIX:2001 functions): Add clock-time.
99         (Enhancements for POSIX:2001 functions): Add chdir-long.
100         (File system functions): Add areadlink, chdir-safer, read-file.
101         Remove cycle-check.
102         (File system as inode set): New section.
103         (Date and time): Add gethrxtime.
104         (Multithreading): Add openmp.
105         (Internationalization functions): Add localename.
106         (Unicode string functions): Add unistr/u*-mbsnlen.
107         (Support for maintaining and releasing projects): Add git-version-gen.
108         (Lone files): Remove directories.
109
110 2007-10-08  Ben Pfaff  <blp@gnu.org>
111
112         * lib/xmalloca.h: Fix typo in comment.
113
114 2007-10-08  Paul Eggert  <eggert@cs.ucla.edu>
115
116         * lib/xnanosleep.c (xnanosleep): Don't assume GCC 4.3.0 behavior
117         when avoiding problems with integer overflow.  Use a portable test
118         instead.
119
120 2007-10-08  Simon Josefsson  <simon@josefsson.org>
121
122         * modules/dummy (License): Change to LGPLv2+.
123         * modules/float (License): Likewise
124         * modules/realloc (License): Likewise
125         * modules/stdlib (License): Likewise
126
127 2007-10-07  Bruno Haible  <bruno@clisp.org>
128
129         * trunc.c (TWO_MANT_DIG): Change type to DOUBLE.
130         * floor.c (TWO_MANT_DIG): Likewise.
131         * ceil.c (TWO_MANT_DIG): Likewise.
132         Reported by Ben Pfaff.
133
134 2007-10-07  Bruno Haible  <bruno@clisp.org>
135
136         Avoid gcc warnings "declaration of 'exp' shadows a global declaration".
137         * lib/math.in.h (frexp, frexpl): Change parameter name to 'expptr'.
138         * lib/frexp.c (FUNC): Likewise.
139         * lib/printf-frexp.h (printf_frexp): Likewise.
140         * lib/printf-frexpl.h (printf_frexpl): Likewise.
141         * lib/printf-frexp.c (FUNC): Likewise.
142         Suggested by Jim Meyering.
143
144 2007-10-07  Jim Meyering  <meyering@redhat.com>
145
146         Make xnanosleep's integer overflow test more robust.
147         * lib/xnanosleep.c (xnanosleep): Declare a temporary to be "volatile",
148         so that gcc-4.3.0 doesn't optimize away this test for overflow.
149
150 2007-10-07  Bruno Haible  <bruno@clisp.org>
151
152         * NEWS: Mention the license change.
153
154         * doc/gnulib-intro.texi (Copyright): Update the meaning of the license
155         abbreviations in the modules files.
156
157         Change copyright notice from GPLv2+ to GPLv3+.
158         * README: Change copyright notice.
159         * MODULES.html.sh: Likewise.
160         * build-aux/bootstrap.conf: Likewise.
161         * build-aux/config.libpath: Likewise.
162         * build-aux/csharpcomp.sh.in: Likewise.
163         * build-aux/csharpexec.sh.in: Likewise.
164         * build-aux/install-reloc: Likewise.
165         * build-aux/javacomp.sh.in: Likewise.
166         * build-aux/javaexec.sh.in: Likewise.
167         * build-aux/ldd.sh.in: Likewise.
168         * build-aux/reloc-ldflags: Likewise.
169         * build-aux/relocatable.sh.in: Likewise.
170         * build-aux/x-to-1.in: Likewise.
171         * check-module: Likewise.
172         * config/srclistvars.sh: Likewise.
173         * gnulib-tool: Likewise.
174         * lib/acl-internal.h: Likewise.
175         * lib/acl.c: Likewise.
176         * lib/acl.h: Likewise.
177         * lib/acl_entries.c: Likewise.
178         * lib/areadlink-with-size.c: Likewise.
179         * lib/areadlink.c: Likewise.
180         * lib/areadlink.h: Likewise.
181         * lib/argmatch.c: Likewise.
182         * lib/argmatch.h: Likewise.
183         * lib/argp-ba.c: Likewise.
184         * lib/argp-eexst.c: Likewise.
185         * lib/argp-fmtstream.c: Likewise.
186         * lib/argp-fmtstream.h: Likewise.
187         * lib/argp-fs-xinl.c: Likewise.
188         * lib/argp-help.c: Likewise.
189         * lib/argp-namefrob.h: Likewise.
190         * lib/argp-parse.c: Likewise.
191         * lib/argp-pin.c: Likewise.
192         * lib/argp-pv.c: Likewise.
193         * lib/argp-pvh.c: Likewise.
194         * lib/argp-xinl.c: Likewise.
195         * lib/argp.h: Likewise.
196         * lib/at-func.c: Likewise.
197         * lib/atanl.c: Likewise.
198         * lib/backupfile.c: Likewise.
199         * lib/backupfile.h: Likewise.
200         * lib/basename.c: Likewise.
201         * lib/binary-io.h: Likewise.
202         * lib/byteswap.in.h: Likewise.
203         * lib/c-stack.c: Likewise.
204         * lib/c-stack.h: Likewise.
205         * lib/c-strcasestr.c: Likewise.
206         * lib/c-strcasestr.h: Likewise.
207         * lib/c-strstr.c: Likewise.
208         * lib/c-strstr.h: Likewise.
209         * lib/c-strtod.c: Likewise.
210         * lib/calloc.c: Likewise.
211         * lib/canon-host.c: Likewise.
212         * lib/canon-host.h: Likewise.
213         * lib/canonicalize-lgpl.c: Likewise.
214         * lib/canonicalize.c: Likewise.
215         * lib/canonicalize.h: Likewise.
216         * lib/ceil.c: Likewise.
217         * lib/ceilf.c: Likewise.
218         * lib/ceill.c: Likewise.
219         * lib/chdir-long.c: Likewise.
220         * lib/chdir-long.h: Likewise.
221         * lib/chdir-safer.c: Likewise.
222         * lib/chdir-safer.h: Likewise.
223         * lib/chown.c: Likewise.
224         * lib/classpath.c: Likewise.
225         * lib/classpath.h: Likewise.
226         * lib/clean-temp.c: Likewise.
227         * lib/clean-temp.h: Likewise.
228         * lib/cloexec.c: Likewise.
229         * lib/close-stream.c: Likewise.
230         * lib/closein.c: Likewise.
231         * lib/closein.h: Likewise.
232         * lib/closeout.c: Likewise.
233         * lib/closeout.h: Likewise.
234         * lib/concat-filename.c: Likewise.
235         * lib/copy-file.c: Likewise.
236         * lib/copy-file.h: Likewise.
237         * lib/count-one-bits.h: Likewise.
238         * lib/crc.c: Likewise.
239         * lib/crc.h: Likewise.
240         * lib/creat-safer.c: Likewise.
241         * lib/csharpcomp.c: Likewise.
242         * lib/csharpcomp.h: Likewise.
243         * lib/csharpexec.c: Likewise.
244         * lib/csharpexec.h: Likewise.
245         * lib/cycle-check.c: Likewise.
246         * lib/cycle-check.h: Likewise.
247         * lib/diacrit.c: Likewise.
248         * lib/diacrit.h: Likewise.
249         * lib/diffseq.h: Likewise.
250         * lib/dirchownmod.c: Likewise.
251         * lib/dirent.in.h: Likewise.
252         * lib/dirfd.c: Likewise.
253         * lib/dirfd.h: Likewise.
254         * lib/dirname.c: Likewise.
255         * lib/dirname.h: Likewise.
256         * lib/dummy.c: Likewise.
257         * lib/dup-safer.c: Likewise.
258         * lib/dup2.c: Likewise.
259         * lib/eealloc.h: Likewise.
260         * lib/error.c: Likewise.
261         * lib/error.h: Likewise.
262         * lib/euidaccess.c: Likewise.
263         * lib/exclude.c: Likewise.
264         * lib/exclude.h: Likewise.
265         * lib/execute.c: Likewise.
266         * lib/execute.h: Likewise.
267         * lib/exitfail.c: Likewise.
268         * lib/exitfail.h: Likewise.
269         * lib/expl.c: Likewise.
270         * lib/fatal-signal.c: Likewise.
271         * lib/fatal-signal.h: Likewise.
272         * lib/fbufmode.c: Likewise.
273         * lib/fbufmode.h: Likewise.
274         * lib/fchdir.c: Likewise.
275         * lib/fchmodat.c: Likewise.
276         * lib/fchownat.c: Likewise.
277         * lib/fcntl--.h: Likewise.
278         * lib/fcntl-safer.h: Likewise.
279         * lib/fcntl.in.h: Likewise.
280         * lib/fd-safer.c: Likewise.
281         * lib/fflush.c: Likewise.
282         * lib/file-has-acl.c: Likewise.
283         * lib/file-set.c: Likewise.
284         * lib/file-type.c: Likewise.
285         * lib/file-type.h: Likewise.
286         * lib/fileblocks.c: Likewise.
287         * lib/filemode.c: Likewise.
288         * lib/filemode.h: Likewise.
289         * lib/filename.h: Likewise.
290         * lib/filenamecat.c: Likewise.
291         * lib/filenamecat.h: Likewise.
292         * lib/findprog.c: Likewise.
293         * lib/findprog.h: Likewise.
294         * lib/float.in.h: Likewise.
295         * lib/floor.c: Likewise.
296         * lib/floorf.c: Likewise.
297         * lib/floorl.c: Likewise.
298         * lib/fopen-safer.c: Likewise.
299         * lib/fopen.c: Likewise.
300         * lib/fpending.c: Likewise.
301         * lib/fpending.h: Likewise.
302         * lib/fprintf.c: Likewise.
303         * lib/fprintftime.h: Likewise.
304         * lib/fpucw.h: Likewise.
305         * lib/fpurge.c: Likewise.
306         * lib/fpurge.h: Likewise.
307         * lib/freadable.c: Likewise.
308         * lib/freadable.h: Likewise.
309         * lib/freadahead.c: Likewise.
310         * lib/freadahead.h: Likewise.
311         * lib/freading.c: Likewise.
312         * lib/freading.h: Likewise.
313         * lib/free.c: Likewise.
314         * lib/freopen.c: Likewise.
315         * lib/frexp.c: Likewise.
316         * lib/frexpl.c: Likewise.
317         * lib/fseek.c: Likewise.
318         * lib/fseterr.c: Likewise.
319         * lib/fseterr.h: Likewise.
320         * lib/fstatat.c: Likewise.
321         * lib/fstrcmp.c: Likewise.
322         * lib/fstrcmp.h: Likewise.
323         * lib/fsusage.c: Likewise.
324         * lib/fsusage.h: Likewise.
325         * lib/ftell.c: Likewise.
326         * lib/ftello.c: Likewise.
327         * lib/fts-cycle.c: Likewise.
328         * lib/fts.c: Likewise.
329         * lib/fts_.h: Likewise.
330         * lib/full-read.c: Likewise.
331         * lib/full-read.h: Likewise.
332         * lib/full-write.c: Likewise.
333         * lib/full-write.h: Likewise.
334         * lib/fwritable.c: Likewise.
335         * lib/fwritable.h: Likewise.
336         * lib/fwriteerror.c: Likewise.
337         * lib/fwriteerror.h: Likewise.
338         * lib/fwriting.c: Likewise.
339         * lib/fwriting.h: Likewise.
340         * lib/gcd.c: Likewise.
341         * lib/gcd.h: Likewise.
342         * lib/getcwd.c: Likewise.
343         * lib/getdate.h: Likewise.
344         * lib/getdate.y: Likewise.
345         * lib/getdomainname.c: Likewise.
346         * lib/getdomainname.h: Likewise.
347         * lib/getgroups.c: Likewise.
348         * lib/gethostname.c: Likewise.
349         * lib/gethrxtime.c: Likewise.
350         * lib/gethrxtime.h: Likewise.
351         * lib/getloadavg.c: Likewise.
352         * lib/getndelim2.c: Likewise.
353         * lib/getndelim2.h: Likewise.
354         * lib/getnline.c: Likewise.
355         * lib/getnline.h: Likewise.
356         * lib/getopt.c: Likewise.
357         * lib/getopt.in.h: Likewise.
358         * lib/getopt1.c: Likewise.
359         * lib/getopt_int.h: Likewise.
360         * lib/getpagesize.h: Likewise.
361         * lib/getsubopt.c: Likewise.
362         * lib/gettime.c: Likewise.
363         * lib/getugroups.c: Likewise.
364         * lib/getugroups.h: Likewise.
365         * lib/getusershell.c: Likewise.
366         * lib/gl_anyavltree_list1.h: Likewise.
367         * lib/gl_anyavltree_list2.h: Likewise.
368         * lib/gl_anyhash_list1.h: Likewise.
369         * lib/gl_anyhash_list2.h: Likewise.
370         * lib/gl_anylinked_list1.h: Likewise.
371         * lib/gl_anylinked_list2.h: Likewise.
372         * lib/gl_anyrbtree_list1.h: Likewise.
373         * lib/gl_anyrbtree_list2.h: Likewise.
374         * lib/gl_anytree_list1.h: Likewise.
375         * lib/gl_anytree_list2.h: Likewise.
376         * lib/gl_anytree_oset.h: Likewise.
377         * lib/gl_anytreehash_list1.h: Likewise.
378         * lib/gl_anytreehash_list2.h: Likewise.
379         * lib/gl_array_list.c: Likewise.
380         * lib/gl_array_list.h: Likewise.
381         * lib/gl_array_oset.c: Likewise.
382         * lib/gl_array_oset.h: Likewise.
383         * lib/gl_avltree_list.c: Likewise.
384         * lib/gl_avltree_list.h: Likewise.
385         * lib/gl_avltree_oset.c: Likewise.
386         * lib/gl_avltree_oset.h: Likewise.
387         * lib/gl_avltreehash_list.c: Likewise.
388         * lib/gl_avltreehash_list.h: Likewise.
389         * lib/gl_carray_list.c: Likewise.
390         * lib/gl_carray_list.h: Likewise.
391         * lib/gl_linked_list.c: Likewise.
392         * lib/gl_linked_list.h: Likewise.
393         * lib/gl_linkedhash_list.c: Likewise.
394         * lib/gl_linkedhash_list.h: Likewise.
395         * lib/gl_list.c: Likewise.
396         * lib/gl_list.h: Likewise.
397         * lib/gl_oset.c: Likewise.
398         * lib/gl_oset.h: Likewise.
399         * lib/gl_rbtree_list.c: Likewise.
400         * lib/gl_rbtree_list.h: Likewise.
401         * lib/gl_rbtree_oset.c: Likewise.
402         * lib/gl_rbtree_oset.h: Likewise.
403         * lib/gl_rbtreehash_list.c: Likewise.
404         * lib/gl_rbtreehash_list.h: Likewise.
405         * lib/gl_sublist.c: Likewise.
406         * lib/gl_sublist.h: Likewise.
407         * lib/group-member.c: Likewise.
408         * lib/group-member.h: Likewise.
409         * lib/hard-locale.c: Likewise.
410         * lib/hard-locale.h: Likewise.
411         * lib/hash-pjw.c: Likewise.
412         * lib/hash-pjw.h: Likewise.
413         * lib/hash-triple.c: Likewise.
414         * lib/hash.c: Likewise.
415         * lib/hash.h: Likewise.
416         * lib/human.c: Likewise.
417         * lib/human.h: Likewise.
418         * lib/i-ring.c: Likewise.
419         * lib/i-ring.h: Likewise.
420         * lib/idcache.c: Likewise.
421         * lib/imaxabs.c: Likewise.
422         * lib/imaxdiv.c: Likewise.
423         * lib/inet_pton.c: Likewise.
424         * lib/inet_pton.h: Likewise.
425         * lib/intprops.h: Likewise.
426         * lib/inttostr.c: Likewise.
427         * lib/inttostr.h: Likewise.
428         * lib/inttypes.in.h: Likewise.
429         * lib/isapipe.c: Likewise.
430         * lib/isdir.c: Likewise.
431         * lib/isnan.c: Likewise.
432         * lib/isnan.h: Likewise.
433         * lib/isnanf.c: Likewise.
434         * lib/isnanf.h: Likewise.
435         * lib/isnanl-nolibm.h: Likewise.
436         * lib/isnanl.c: Likewise.
437         * lib/isnanl.h: Likewise.
438         * lib/javacomp.c: Likewise.
439         * lib/javacomp.h: Likewise.
440         * lib/javaexec.c: Likewise.
441         * lib/javaexec.h: Likewise.
442         * lib/javaversion.c: Likewise.
443         * lib/javaversion.h: Likewise.
444         * lib/javaversion.java: Likewise.
445         * lib/lbrkprop.h: Likewise.
446         * lib/lchmod.h: Likewise.
447         * lib/lchown.c: Likewise.
448         * lib/ldexpl.c: Likewise.
449         * lib/linebreak.c: Likewise.
450         * lib/linebreak.h: Likewise.
451         * lib/linebuffer.c: Likewise.
452         * lib/linebuffer.h: Likewise.
453         * lib/locale.in.h: Likewise.
454         * lib/logl.c: Likewise.
455         * lib/long-options.c: Likewise.
456         * lib/long-options.h: Likewise.
457         * lib/lstat.c: Likewise.
458         * lib/lstat.h: Likewise.
459         * lib/math.in.h: Likewise.
460         * lib/mbchar.c: Likewise.
461         * lib/mbchar.h: Likewise.
462         * lib/mbfile.h: Likewise.
463         * lib/mbiter.h: Likewise.
464         * lib/mbscasecmp.c: Likewise.
465         * lib/mbscasestr.c: Likewise.
466         * lib/mbschr.c: Likewise.
467         * lib/mbscspn.c: Likewise.
468         * lib/mbslen.c: Likewise.
469         * lib/mbsncasecmp.c: Likewise.
470         * lib/mbsnlen.c: Likewise.
471         * lib/mbspbrk.c: Likewise.
472         * lib/mbspcasecmp.c: Likewise.
473         * lib/mbsrchr.c: Likewise.
474         * lib/mbssep.c: Likewise.
475         * lib/mbsspn.c: Likewise.
476         * lib/mbsstr.c: Likewise.
477         * lib/mbstok_r.c: Likewise.
478         * lib/mbswidth.c: Likewise.
479         * lib/mbswidth.h: Likewise.
480         * lib/mbuiter.h: Likewise.
481         * lib/memcasecmp.c: Likewise.
482         * lib/memcasecmp.h: Likewise.
483         * lib/memchr.c: Likewise.
484         * lib/memcmp.c: Likewise.
485         * lib/memcoll.c: Likewise.
486         * lib/memcoll.h: Likewise.
487         * lib/memcpy.c: Likewise.
488         * lib/memrchr.c: Likewise.
489         * lib/mkancesdirs.c: Likewise.
490         * lib/mkdir-p.c: Likewise.
491         * lib/mkdir-p.h: Likewise.
492         * lib/mkdir.c: Likewise.
493         * lib/mkdirat.c: Likewise.
494         * lib/mkdtemp.c: Likewise.
495         * lib/mkstemp-safer.c: Likewise.
496         * lib/mkstemp.c: Likewise.
497         * lib/modechange.c: Likewise.
498         * lib/modechange.h: Likewise.
499         * lib/mountlist.c: Likewise.
500         * lib/mountlist.h: Likewise.
501         * lib/mpsort.c: Likewise.
502         * lib/nanosleep.c: Likewise.
503         * lib/obstack.c: Likewise.
504         * lib/obstack.h: Likewise.
505         * lib/open-safer.c: Likewise.
506         * lib/open.c: Likewise.
507         * lib/openat-die.c: Likewise.
508         * lib/openat-priv.h: Likewise.
509         * lib/openat-proc.c: Likewise.
510         * lib/openat.c: Likewise.
511         * lib/openat.h: Likewise.
512         * lib/pagealign_alloc.c: Likewise.
513         * lib/pagealign_alloc.h: Likewise.
514         * lib/physmem.c: Likewise.
515         * lib/physmem.h: Likewise.
516         * lib/pipe-safer.c: Likewise.
517         * lib/pipe.c: Likewise.
518         * lib/pipe.h: Likewise.
519         * lib/posixtm.c: Likewise.
520         * lib/posixtm.h: Likewise.
521         * lib/posixver.c: Likewise.
522         * lib/printf-frexp.c: Likewise.
523         * lib/printf-frexp.h: Likewise.
524         * lib/printf-frexpl.c: Likewise.
525         * lib/printf-frexpl.h: Likewise.
526         * lib/printf.c: Likewise.
527         * lib/progname.c: Likewise.
528         * lib/progname.h: Likewise.
529         * lib/progreloc.c: Likewise.
530         * lib/putenv.c: Likewise.
531         * lib/quote.c: Likewise.
532         * lib/quote.h: Likewise.
533         * lib/quotearg.c: Likewise.
534         * lib/quotearg.h: Likewise.
535         * lib/raise.c: Likewise.
536         * lib/readline.c: Likewise.
537         * lib/readline.h: Likewise.
538         * lib/readlink.c: Likewise.
539         * lib/readtokens.c: Likewise.
540         * lib/readtokens.h: Likewise.
541         * lib/readtokens0.c: Likewise.
542         * lib/readtokens0.h: Likewise.
543         * lib/readutmp.c: Likewise.
544         * lib/readutmp.h: Likewise.
545         * lib/realloc.c: Likewise.
546         * lib/relocwrapper.c: Likewise.
547         * lib/rename-dest-slash.c: Likewise.
548         * lib/rename.c: Likewise.
549         * lib/rmdir.c: Likewise.
550         * lib/rpmatch.c: Likewise.
551         * lib/safe-read.c: Likewise.
552         * lib/safe-read.h: Likewise.
553         * lib/safe-write.c: Likewise.
554         * lib/safe-write.h: Likewise.
555         * lib/same-inode.h: Likewise.
556         * lib/same.c: Likewise.
557         * lib/same.h: Likewise.
558         * lib/save-cwd.c: Likewise.
559         * lib/save-cwd.h: Likewise.
560         * lib/savedir.c: Likewise.
561         * lib/savedir.h: Likewise.
562         * lib/savewd.c: Likewise.
563         * lib/savewd.h: Likewise.
564         * lib/search.in.h: Likewise.
565         * lib/setenv.c: Likewise.
566         * lib/setenv.h: Likewise.
567         * lib/settime.c: Likewise.
568         * lib/sh-quote.c: Likewise.
569         * lib/sh-quote.h: Likewise.
570         * lib/sig2str.c: Likewise.
571         * lib/sig2str.h: Likewise.
572         * lib/signal.in.h: Likewise.
573         * lib/signbitd.c: Likewise.
574         * lib/signbitf.c: Likewise.
575         * lib/signbitl.c: Likewise.
576         * lib/sigprocmask.c: Likewise.
577         * lib/sincosl.c: Likewise.
578         * lib/sleep.c: Likewise.
579         * lib/sprintf.c: Likewise.
580         * lib/sqrtl.c: Likewise.
581         * lib/stat-time.h: Likewise.
582         * lib/stdio--.h: Likewise.
583         * lib/stdio-safer.h: Likewise.
584         * lib/stdlib--.h: Likewise.
585         * lib/stdlib-safer.h: Likewise.
586         * lib/stdlib.in.h: Likewise.
587         * lib/stpcpy.c: Likewise.
588         * lib/stpncpy.c: Likewise.
589         * lib/strchrnul.c: Likewise.
590         * lib/strcspn.c: Likewise.
591         * lib/strerror.c: Likewise.
592         * lib/strftime.c: Likewise.
593         * lib/strftime.h: Likewise.
594         * lib/striconveh.c: Likewise.
595         * lib/striconveh.h: Likewise.
596         * lib/striconveha.c: Likewise.
597         * lib/striconveha.h: Likewise.
598         * lib/stripslash.c: Likewise.
599         * lib/strnlen1.c: Likewise.
600         * lib/strnlen1.h: Likewise.
601         * lib/strtod.c: Likewise.
602         * lib/strtoimax.c: Likewise.
603         * lib/strtok_r.c: Likewise.
604         * lib/strtol.c: Likewise.
605         * lib/strtoll.c: Likewise.
606         * lib/strtoul.c: Likewise.
607         * lib/strtoull.c: Likewise.
608         * lib/sysexits.in.h: Likewise.
609         * lib/tempname.c: Likewise.
610         * lib/tempname.h: Likewise.
611         * lib/timespec.h: Likewise.
612         * lib/tls.c: Likewise.
613         * lib/tls.h: Likewise.
614         * lib/tmpdir.c: Likewise.
615         * lib/tmpdir.h: Likewise.
616         * lib/tmpfile-safer.c: Likewise.
617         * lib/tmpfile.c: Likewise.
618         * lib/trigl.c: Likewise.
619         * lib/trigl.h: Likewise.
620         * lib/trim.c: Likewise.
621         * lib/trim.h: Likewise.
622         * lib/trunc.c: Likewise.
623         * lib/truncf.c: Likewise.
624         * lib/truncl.c: Likewise.
625         * lib/tsearch.c: Likewise.
626         * lib/unicodeio.c: Likewise.
627         * lib/unicodeio.h: Likewise.
628         * lib/unistd--.h: Likewise.
629         * lib/unistd-safer.h: Likewise.
630         * lib/unistdio/ulc-fprintf.c: Likewise.
631         * lib/unistdio/ulc-vfprintf.c: Likewise.
632         * lib/unlinkdir.c: Likewise.
633         * lib/unlinkdir.h: Likewise.
634         * lib/unlocked-io.h: Likewise.
635         * lib/unsetenv.c: Likewise.
636         * lib/userspec.c: Likewise.
637         * lib/utime.c: Likewise.
638         * lib/utimecmp.c: Likewise.
639         * lib/utimecmp.h: Likewise.
640         * lib/utimens.c: Likewise.
641         * lib/verify.h: Likewise.
642         * lib/verror.c: Likewise.
643         * lib/verror.h: Likewise.
644         * lib/version-etc-fsf.c: Likewise.
645         * lib/version-etc.c: Likewise.
646         * lib/version-etc.h: Likewise.
647         * lib/vfprintf.c: Likewise.
648         * lib/vprintf.c: Likewise.
649         * lib/vsprintf.c: Likewise.
650         * lib/w32spawn.h: Likewise.
651         * lib/wait-process.c: Likewise.
652         * lib/wait-process.h: Likewise.
653         * lib/wcwidth.c: Likewise.
654         * lib/write-any-file.c: Likewise.
655         * lib/xalloc-die.c: Likewise.
656         * lib/xalloc.h: Likewise.
657         * lib/xasprintf.c: Likewise.
658         * lib/xgetcwd.c: Likewise.
659         * lib/xgetcwd.h: Likewise.
660         * lib/xgetdomainname.c: Likewise.
661         * lib/xgetdomainname.h: Likewise.
662         * lib/xgethostname.c: Likewise.
663         * lib/xmalloc.c: Likewise.
664         * lib/xmalloca.c: Likewise.
665         * lib/xmalloca.h: Likewise.
666         * lib/xmemcoll.c: Likewise.
667         * lib/xnanosleep.c: Likewise.
668         * lib/xreadlink.c: Likewise.
669         * lib/xreadlink.h: Likewise.
670         * lib/xsetenv.c: Likewise.
671         * lib/xsetenv.h: Likewise.
672         * lib/xstriconv.c: Likewise.
673         * lib/xstriconv.h: Likewise.
674         * lib/xstrndup.c: Likewise.
675         * lib/xstrndup.h: Likewise.
676         * lib/xstrtod.c: Likewise.
677         * lib/xstrtod.h: Likewise.
678         * lib/xstrtol-error.c: Likewise.
679         * lib/xstrtol.c: Likewise.
680         * lib/xstrtol.h: Likewise.
681         * lib/xtime.h: Likewise.
682         * lib/xvasprintf.c: Likewise.
683         * lib/xvasprintf.h: Likewise.
684         * lib/yesno.c: Likewise.
685         * lib/yesno.h: Likewise.
686         * posix-modules: Likewise.
687         * tests/test-alloca-opt.c: Likewise.
688         * tests/test-arcfour.c: Likewise.
689         * tests/test-arctwo.c: Likewise.
690         * tests/test-argmatch.c: Likewise.
691         * tests/test-argp-2.sh: Likewise.
692         * tests/test-argp.c: Likewise.
693         * tests/test-arpa_inet.c: Likewise.
694         * tests/test-array_list.c: Likewise.
695         * tests/test-array_oset.c: Likewise.
696         * tests/test-atexit.c: Likewise.
697         * tests/test-avltree_list.c: Likewise.
698         * tests/test-avltree_oset.c: Likewise.
699         * tests/test-avltreehash_list.c: Likewise.
700         * tests/test-base64.c: Likewise.
701         * tests/test-binary-io.c: Likewise.
702         * tests/test-byteswap.c: Likewise.
703         * tests/test-c-ctype.c: Likewise.
704         * tests/test-c-strcasecmp.c: Likewise.
705         * tests/test-c-strcasestr.c: Likewise.
706         * tests/test-c-strncasecmp.c: Likewise.
707         * tests/test-c-strstr.c: Likewise.
708         * tests/test-canonicalize-lgpl.c: Likewise.
709         * tests/test-canonicalize.c: Likewise.
710         * tests/test-carray_list.c: Likewise.
711         * tests/test-ceilf.c: Likewise.
712         * tests/test-ceill.c: Likewise.
713         * tests/test-count-one-bits.c: Likewise.
714         * tests/test-crc.c: Likewise.
715         * tests/test-dirname.c: Likewise.
716         * tests/test-fbufmode.c: Likewise.
717         * tests/test-fcntl.c: Likewise.
718         * tests/test-fflush.c: Likewise.
719         * tests/test-floorf.c: Likewise.
720         * tests/test-floorl.c: Likewise.
721         * tests/test-fopen.c: Likewise.
722         * tests/test-fprintf-posix.c: Likewise.
723         * tests/test-fprintf-posix.h: Likewise.
724         * tests/test-fpurge.c: Likewise.
725         * tests/test-freadable.c: Likewise.
726         * tests/test-freadahead.c: Likewise.
727         * tests/test-freading.c: Likewise.
728         * tests/test-freopen.c: Likewise.
729         * tests/test-frexp.c: Likewise.
730         * tests/test-frexpl.c: Likewise.
731         * tests/test-fseek.c: Likewise.
732         * tests/test-fseeko.c: Likewise.
733         * tests/test-fseterr.c: Likewise.
734         * tests/test-fstrcmp.c: Likewise.
735         * tests/test-ftell.c: Likewise.
736         * tests/test-ftello.c: Likewise.
737         * tests/test-fwritable.c: Likewise.
738         * tests/test-fwriting.c: Likewise.
739         * tests/test-getaddrinfo.c: Likewise.
740         * tests/test-getpass.c: Likewise.
741         * tests/test-gettimeofday.c: Likewise.
742         * tests/test-hmac-md5.c: Likewise.
743         * tests/test-hmac-sha1.c: Likewise.
744         * tests/test-iconv.c: Likewise.
745         * tests/test-iconvme.c: Likewise.
746         * tests/test-inttypes.c: Likewise.
747         * tests/test-isnan.c: Likewise.
748         * tests/test-isnanf.c: Likewise.
749         * tests/test-isnanl-nolibm.c: Likewise.
750         * tests/test-isnanl.c: Likewise.
751         * tests/test-isnanl.h: Likewise.
752         * tests/test-ldexpl.c: Likewise.
753         * tests/test-linked_list.c: Likewise.
754         * tests/test-linkedhash_list.c: Likewise.
755         * tests/test-locale.c: Likewise.
756         * tests/test-localename.c: Likewise.
757         * tests/test-lock.c: Likewise.
758         * tests/test-lseek.c: Likewise.
759         * tests/test-malloca.c: Likewise.
760         * tests/test-math.c: Likewise.
761         * tests/test-mbscasecmp.c: Likewise.
762         * tests/test-mbscasestr1.c: Likewise.
763         * tests/test-mbscasestr2.c: Likewise.
764         * tests/test-mbscasestr3.c: Likewise.
765         * tests/test-mbscasestr4.c: Likewise.
766         * tests/test-mbschr.c: Likewise.
767         * tests/test-mbscspn.c: Likewise.
768         * tests/test-mbsncasecmp.c: Likewise.
769         * tests/test-mbspbrk.c: Likewise.
770         * tests/test-mbspcasecmp.c: Likewise.
771         * tests/test-mbsrchr.c: Likewise.
772         * tests/test-mbsspn.c: Likewise.
773         * tests/test-mbsstr1.c: Likewise.
774         * tests/test-mbsstr2.c: Likewise.
775         * tests/test-mbsstr3.c: Likewise.
776         * tests/test-md5.c: Likewise.
777         * tests/test-memmem.c: Likewise.
778         * tests/test-netinet_in.c: Likewise.
779         * tests/test-open.c: Likewise.
780         * tests/test-printf-frexp.c: Likewise.
781         * tests/test-printf-frexpl.c: Likewise.
782         * tests/test-printf-posix.c: Likewise.
783         * tests/test-printf-posix.h: Likewise.
784         * tests/test-rbtree_list.c: Likewise.
785         * tests/test-rbtree_oset.c: Likewise.
786         * tests/test-rbtreehash_list.c: Likewise.
787         * tests/test-read-file.c: Likewise.
788         * tests/test-rijndael.c: Likewise.
789         * tests/test-search.c: Likewise.
790         * tests/test-signbit.c: Likewise.
791         * tests/test-sleep.c: Likewise.
792         * tests/test-snprintf-posix.c: Likewise.
793         * tests/test-snprintf-posix.h: Likewise.
794         * tests/test-snprintf.c: Likewise.
795         * tests/test-sprintf-posix.c: Likewise.
796         * tests/test-sprintf-posix.h: Likewise.
797         * tests/test-stat-time.c: Likewise.
798         * tests/test-stdbool.c: Likewise.
799         * tests/test-stdint.c: Likewise.
800         * tests/test-stdio.c: Likewise.
801         * tests/test-stdlib.c: Likewise.
802         * tests/test-stpncpy.c: Likewise.
803         * tests/test-strcasestr.c: Likewise.
804         * tests/test-striconv.c: Likewise.
805         * tests/test-striconveh.c: Likewise.
806         * tests/test-striconveha.c: Likewise.
807         * tests/test-string.c: Likewise.
808         * tests/test-sys_select.c: Likewise.
809         * tests/test-sys_socket.c: Likewise.
810         * tests/test-sys_stat.c: Likewise.
811         * tests/test-sys_time.c: Likewise.
812         * tests/test-sysexits.c: Likewise.
813         * tests/test-time.c: Likewise.
814         * tests/test-tls.c: Likewise.
815         * tests/test-trunc.c: Likewise.
816         * tests/test-truncf.c: Likewise.
817         * tests/test-truncl.c: Likewise.
818         * tests/test-unistd.c: Likewise.
819         * tests/test-vasnprintf-posix.c: Likewise.
820         * tests/test-vasnprintf-posix2.c: Likewise.
821         * tests/test-vasnprintf.c: Likewise.
822         * tests/test-vasprintf-posix.c: Likewise.
823         * tests/test-vasprintf.c: Likewise.
824         * tests/test-verify.c: Likewise.
825         * tests/test-vfprintf-posix.c: Likewise.
826         * tests/test-vprintf-posix.c: Likewise.
827         * tests/test-vsnprintf-posix.c: Likewise.
828         * tests/test-vsnprintf.c: Likewise.
829         * tests/test-vsprintf-posix.c: Likewise.
830         * tests/test-wchar.c: Likewise.
831         * tests/test-wctype.c: Likewise.
832         * tests/test-wcwidth.c: Likewise.
833         * tests/test-xstrtol.c: Likewise.
834         * tests/test-xvasprintf.c: Likewise.
835         * tests/uniconv/test-u16-conv-from-enc.c: Likewise.
836         * tests/uniconv/test-u16-conv-to-enc.c: Likewise.
837         * tests/uniconv/test-u16-strconv-from-enc.c: Likewise.
838         * tests/uniconv/test-u16-strconv-to-enc.c: Likewise.
839         * tests/uniconv/test-u32-conv-from-enc.c: Likewise.
840         * tests/uniconv/test-u32-conv-to-enc.c: Likewise.
841         * tests/uniconv/test-u32-strconv-from-enc.c: Likewise.
842         * tests/uniconv/test-u32-strconv-to-enc.c: Likewise.
843         * tests/uniconv/test-u8-conv-from-enc.c: Likewise.
844         * tests/uniconv/test-u8-conv-to-enc.c: Likewise.
845         * tests/uniconv/test-u8-strconv-from-enc.c: Likewise.
846         * tests/uniconv/test-u8-strconv-to-enc.c: Likewise.
847         * tests/uniname/test-uninames.c: Likewise.
848         * tests/unistdio/test-u16-asnprintf1.c: Likewise.
849         * tests/unistdio/test-u16-asnprintf1.h: Likewise.
850         * tests/unistdio/test-u16-printf1.h: Likewise.
851         * tests/unistdio/test-u16-vasnprintf1.c: Likewise.
852         * tests/unistdio/test-u16-vasnprintf2.c: Likewise.
853         * tests/unistdio/test-u16-vasnprintf3.c: Likewise.
854         * tests/unistdio/test-u16-vasprintf1.c: Likewise.
855         * tests/unistdio/test-u16-vsnprintf1.c: Likewise.
856         * tests/unistdio/test-u16-vsprintf1.c: Likewise.
857         * tests/unistdio/test-u32-asnprintf1.c: Likewise.
858         * tests/unistdio/test-u32-asnprintf1.h: Likewise.
859         * tests/unistdio/test-u32-printf1.h: Likewise.
860         * tests/unistdio/test-u32-vasnprintf1.c: Likewise.
861         * tests/unistdio/test-u32-vasnprintf2.c: Likewise.
862         * tests/unistdio/test-u32-vasnprintf3.c: Likewise.
863         * tests/unistdio/test-u32-vasprintf1.c: Likewise.
864         * tests/unistdio/test-u32-vsnprintf1.c: Likewise.
865         * tests/unistdio/test-u32-vsprintf1.c: Likewise.
866         * tests/unistdio/test-u8-asnprintf1.c: Likewise.
867         * tests/unistdio/test-u8-asnprintf1.h: Likewise.
868         * tests/unistdio/test-u8-printf1.h: Likewise.
869         * tests/unistdio/test-u8-vasnprintf1.c: Likewise.
870         * tests/unistdio/test-u8-vasnprintf2.c: Likewise.
871         * tests/unistdio/test-u8-vasnprintf3.c: Likewise.
872         * tests/unistdio/test-u8-vasprintf1.c: Likewise.
873         * tests/unistdio/test-u8-vsnprintf1.c: Likewise.
874         * tests/unistdio/test-u8-vsprintf1.c: Likewise.
875         * tests/unistdio/test-ulc-asnprintf1.c: Likewise.
876         * tests/unistdio/test-ulc-asnprintf1.h: Likewise.
877         * tests/unistdio/test-ulc-printf1.h: Likewise.
878         * tests/unistdio/test-ulc-vasnprintf1.c: Likewise.
879         * tests/unistdio/test-ulc-vasnprintf2.c: Likewise.
880         * tests/unistdio/test-ulc-vasnprintf3.c: Likewise.
881         * tests/unistdio/test-ulc-vasprintf1.c: Likewise.
882         * tests/unistdio/test-ulc-vsnprintf1.c: Likewise.
883         * tests/unistdio/test-ulc-vsprintf1.c: Likewise.
884         * tests/uniwidth/test-u16-strwidth.c: Likewise.
885         * tests/uniwidth/test-u16-width.c: Likewise.
886         * tests/uniwidth/test-u32-strwidth.c: Likewise.
887         * tests/uniwidth/test-u32-width.c: Likewise.
888         * tests/uniwidth/test-u8-strwidth.c: Likewise.
889         * tests/uniwidth/test-u8-width.c: Likewise.
890         * tests/uniwidth/test-uc_width.c: Likewise.
891         * config/srclist-update: Likewise.
892         (fixlicense): Update to GPLv3+.
893
894         Change copyright notice from LGPLv2.1+ to LGPLv3+.
895         * tests/test-tsearch.c: Change copyright notice.
896
897         Change copyright notice from LGPLv2.0+ to LGPLv3+.
898         * lib/c-strcaseeq.h: Change copyright notice.
899         * lib/streq.h: Likewise.
900         * lib/uniconv.h: Likewise.
901         * lib/uniconv/u-conv-from-enc.h: Likewise.
902         * lib/uniconv/u-conv-to-enc.h: Likewise.
903         * lib/uniconv/u-strconv-from-enc.h: Likewise.
904         * lib/uniconv/u-strconv-to-enc.h: Likewise.
905         * lib/uniconv/u16-conv-from-enc.c: Likewise.
906         * lib/uniconv/u16-conv-to-enc.c: Likewise.
907         * lib/uniconv/u16-strconv-from-enc.c: Likewise.
908         * lib/uniconv/u16-strconv-from-locale.c: Likewise.
909         * lib/uniconv/u16-strconv-to-enc.c: Likewise.
910         * lib/uniconv/u16-strconv-to-locale.c: Likewise.
911         * lib/uniconv/u32-conv-from-enc.c: Likewise.
912         * lib/uniconv/u32-conv-to-enc.c: Likewise.
913         * lib/uniconv/u32-strconv-from-enc.c: Likewise.
914         * lib/uniconv/u32-strconv-from-locale.c: Likewise.
915         * lib/uniconv/u32-strconv-to-enc.c: Likewise.
916         * lib/uniconv/u32-strconv-to-locale.c: Likewise.
917         * lib/uniconv/u8-conv-from-enc.c: Likewise.
918         * lib/uniconv/u8-conv-to-enc.c: Likewise.
919         * lib/uniconv/u8-strconv-from-enc.c: Likewise.
920         * lib/uniconv/u8-strconv-from-locale.c: Likewise.
921         * lib/uniconv/u8-strconv-to-enc.c: Likewise.
922         * lib/uniconv/u8-strconv-to-locale.c: Likewise.
923         * lib/uniname.h: Likewise.
924         * lib/uniname/uniname.c: Likewise.
925         * lib/unistdio.h: Likewise.
926         * lib/unistdio/u-asnprintf.h: Likewise.
927         * lib/unistdio/u-asprintf.h: Likewise.
928         * lib/unistdio/u-printf-args.c: Likewise.
929         * lib/unistdio/u-printf-args.h: Likewise.
930         * lib/unistdio/u-printf-parse.h: Likewise.
931         * lib/unistdio/u-snprintf.h: Likewise.
932         * lib/unistdio/u-sprintf.h: Likewise.
933         * lib/unistdio/u-vasprintf.h: Likewise.
934         * lib/unistdio/u-vsnprintf.h: Likewise.
935         * lib/unistdio/u-vsprintf.h: Likewise.
936         * lib/unistdio/u16-asnprintf.c: Likewise.
937         * lib/unistdio/u16-asprintf.c: Likewise.
938         * lib/unistdio/u16-printf-parse.c: Likewise.
939         * lib/unistdio/u16-snprintf.c: Likewise.
940         * lib/unistdio/u16-sprintf.c: Likewise.
941         * lib/unistdio/u16-u16-asnprintf.c: Likewise.
942         * lib/unistdio/u16-u16-asprintf.c: Likewise.
943         * lib/unistdio/u16-u16-snprintf.c: Likewise.
944         * lib/unistdio/u16-u16-sprintf.c: Likewise.
945         * lib/unistdio/u16-u16-vasnprintf.c: Likewise.
946         * lib/unistdio/u16-u16-vasprintf.c: Likewise.
947         * lib/unistdio/u16-u16-vsnprintf.c: Likewise.
948         * lib/unistdio/u16-u16-vsprintf.c: Likewise.
949         * lib/unistdio/u16-vasnprintf.c: Likewise.
950         * lib/unistdio/u16-vasprintf.c: Likewise.
951         * lib/unistdio/u16-vsnprintf.c: Likewise.
952         * lib/unistdio/u16-vsprintf.c: Likewise.
953         * lib/unistdio/u32-asnprintf.c: Likewise.
954         * lib/unistdio/u32-asprintf.c: Likewise.
955         * lib/unistdio/u32-printf-parse.c: Likewise.
956         * lib/unistdio/u32-snprintf.c: Likewise.
957         * lib/unistdio/u32-sprintf.c: Likewise.
958         * lib/unistdio/u32-u32-asnprintf.c: Likewise.
959         * lib/unistdio/u32-u32-asprintf.c: Likewise.
960         * lib/unistdio/u32-u32-snprintf.c: Likewise.
961         * lib/unistdio/u32-u32-sprintf.c: Likewise.
962         * lib/unistdio/u32-u32-vasnprintf.c: Likewise.
963         * lib/unistdio/u32-u32-vasprintf.c: Likewise.
964         * lib/unistdio/u32-u32-vsnprintf.c: Likewise.
965         * lib/unistdio/u32-u32-vsprintf.c: Likewise.
966         * lib/unistdio/u32-vasnprintf.c: Likewise.
967         * lib/unistdio/u32-vasprintf.c: Likewise.
968         * lib/unistdio/u32-vsnprintf.c: Likewise.
969         * lib/unistdio/u32-vsprintf.c: Likewise.
970         * lib/unistdio/u8-asnprintf.c: Likewise.
971         * lib/unistdio/u8-asprintf.c: Likewise.
972         * lib/unistdio/u8-printf-parse.c: Likewise.
973         * lib/unistdio/u8-snprintf.c: Likewise.
974         * lib/unistdio/u8-sprintf.c: Likewise.
975         * lib/unistdio/u8-u8-asnprintf.c: Likewise.
976         * lib/unistdio/u8-u8-asprintf.c: Likewise.
977         * lib/unistdio/u8-u8-snprintf.c: Likewise.
978         * lib/unistdio/u8-u8-sprintf.c: Likewise.
979         * lib/unistdio/u8-u8-vasnprintf.c: Likewise.
980         * lib/unistdio/u8-u8-vasprintf.c: Likewise.
981         * lib/unistdio/u8-u8-vsnprintf.c: Likewise.
982         * lib/unistdio/u8-u8-vsprintf.c: Likewise.
983         * lib/unistdio/u8-vasnprintf.c: Likewise.
984         * lib/unistdio/u8-vasprintf.c: Likewise.
985         * lib/unistdio/u8-vsnprintf.c: Likewise.
986         * lib/unistdio/u8-vsprintf.c: Likewise.
987         * lib/unistdio/ulc-asnprintf.c: Likewise.
988         * lib/unistdio/ulc-asprintf.c: Likewise.
989         * lib/unistdio/ulc-printf-parse.c: Likewise.
990         * lib/unistdio/ulc-snprintf.c: Likewise.
991         * lib/unistdio/ulc-sprintf.c: Likewise.
992         * lib/unistdio/ulc-vasnprintf.c: Likewise.
993         * lib/unistdio/ulc-vasprintf.c: Likewise.
994         * lib/unistdio/ulc-vsnprintf.c: Likewise.
995         * lib/unistdio/ulc-vsprintf.c: Likewise.
996         * lib/unistr.h: Likewise.
997         * lib/unistr/u-cpy-alloc.h: Likewise.
998         * lib/unistr/u-cpy.h: Likewise.
999         * lib/unistr/u-endswith.h: Likewise.
1000         * lib/unistr/u-move.h: Likewise.
1001         * lib/unistr/u-set.h: Likewise.
1002         * lib/unistr/u-startswith.h: Likewise.
1003         * lib/unistr/u-stpcpy.h: Likewise.
1004         * lib/unistr/u-stpncpy.h: Likewise.
1005         * lib/unistr/u-strcat.h: Likewise.
1006         * lib/unistr/u-strcpy.h: Likewise.
1007         * lib/unistr/u-strcspn.h: Likewise.
1008         * lib/unistr/u-strdup.h: Likewise.
1009         * lib/unistr/u-strlen.h: Likewise.
1010         * lib/unistr/u-strncat.h: Likewise.
1011         * lib/unistr/u-strncpy.h: Likewise.
1012         * lib/unistr/u-strnlen.h: Likewise.
1013         * lib/unistr/u-strpbrk.h: Likewise.
1014         * lib/unistr/u-strspn.h: Likewise.
1015         * lib/unistr/u-strstr.h: Likewise.
1016         * lib/unistr/u-strtok.h: Likewise.
1017         * lib/unistr/u16-check.c: Likewise.
1018         * lib/unistr/u16-chr.c: Likewise.
1019         * lib/unistr/u16-cmp.c: Likewise.
1020         * lib/unistr/u16-cpy-alloc.c: Likewise.
1021         * lib/unistr/u16-cpy.c: Likewise.
1022         * lib/unistr/u16-endswith.c: Likewise.
1023         * lib/unistr/u16-mblen.c: Likewise.
1024         * lib/unistr/u16-mbsnlen.c: Likewise.
1025         * lib/unistr/u16-mbtouc-aux.c: Likewise.
1026         * lib/unistr/u16-mbtouc-unsafe-aux.c: Likewise.
1027         * lib/unistr/u16-mbtouc-unsafe.c: Likewise.
1028         * lib/unistr/u16-mbtouc.c: Likewise.
1029         * lib/unistr/u16-mbtoucr.c: Likewise.
1030         * lib/unistr/u16-move.c: Likewise.
1031         * lib/unistr/u16-next.c: Likewise.
1032         * lib/unistr/u16-prev.c: Likewise.
1033         * lib/unistr/u16-set.c: Likewise.
1034         * lib/unistr/u16-startswith.c: Likewise.
1035         * lib/unistr/u16-stpcpy.c: Likewise.
1036         * lib/unistr/u16-stpncpy.c: Likewise.
1037         * lib/unistr/u16-strcat.c: Likewise.
1038         * lib/unistr/u16-strchr.c: Likewise.
1039         * lib/unistr/u16-strcmp.c: Likewise.
1040         * lib/unistr/u16-strcpy.c: Likewise.
1041         * lib/unistr/u16-strcspn.c: Likewise.
1042         * lib/unistr/u16-strdup.c: Likewise.
1043         * lib/unistr/u16-strlen.c: Likewise.
1044         * lib/unistr/u16-strmblen.c: Likewise.
1045         * lib/unistr/u16-strmbtouc.c: Likewise.
1046         * lib/unistr/u16-strncat.c: Likewise.
1047         * lib/unistr/u16-strncmp.c: Likewise.
1048         * lib/unistr/u16-strncpy.c: Likewise.
1049         * lib/unistr/u16-strnlen.c: Likewise.
1050         * lib/unistr/u16-strpbrk.c: Likewise.
1051         * lib/unistr/u16-strrchr.c: Likewise.
1052         * lib/unistr/u16-strspn.c: Likewise.
1053         * lib/unistr/u16-strstr.c: Likewise.
1054         * lib/unistr/u16-strtok.c: Likewise.
1055         * lib/unistr/u16-to-u32.c: Likewise.
1056         * lib/unistr/u16-to-u8.c: Likewise.
1057         * lib/unistr/u16-uctomb-aux.c: Likewise.
1058         * lib/unistr/u16-uctomb.c: Likewise.
1059         * lib/unistr/u32-check.c: Likewise.
1060         * lib/unistr/u32-chr.c: Likewise.
1061         * lib/unistr/u32-cmp.c: Likewise.
1062         * lib/unistr/u32-cpy-alloc.c: Likewise.
1063         * lib/unistr/u32-cpy.c: Likewise.
1064         * lib/unistr/u32-endswith.c: Likewise.
1065         * lib/unistr/u32-mblen.c: Likewise.
1066         * lib/unistr/u32-mbsnlen.c: Likewise.
1067         * lib/unistr/u32-mbtouc-unsafe.c: Likewise.
1068         * lib/unistr/u32-mbtouc.c: Likewise.
1069         * lib/unistr/u32-mbtoucr.c: Likewise.
1070         * lib/unistr/u32-move.c: Likewise.
1071         * lib/unistr/u32-next.c: Likewise.
1072         * lib/unistr/u32-prev.c: Likewise.
1073         * lib/unistr/u32-set.c: Likewise.
1074         * lib/unistr/u32-startswith.c: Likewise.
1075         * lib/unistr/u32-stpcpy.c: Likewise.
1076         * lib/unistr/u32-stpncpy.c: Likewise.
1077         * lib/unistr/u32-strcat.c: Likewise.
1078         * lib/unistr/u32-strchr.c: Likewise.
1079         * lib/unistr/u32-strcmp.c: Likewise.
1080         * lib/unistr/u32-strcpy.c: Likewise.
1081         * lib/unistr/u32-strcspn.c: Likewise.
1082         * lib/unistr/u32-strdup.c: Likewise.
1083         * lib/unistr/u32-strlen.c: Likewise.
1084         * lib/unistr/u32-strmblen.c: Likewise.
1085         * lib/unistr/u32-strmbtouc.c: Likewise.
1086         * lib/unistr/u32-strncat.c: Likewise.
1087         * lib/unistr/u32-strncmp.c: Likewise.
1088         * lib/unistr/u32-strncpy.c: Likewise.
1089         * lib/unistr/u32-strnlen.c: Likewise.
1090         * lib/unistr/u32-strpbrk.c: Likewise.
1091         * lib/unistr/u32-strrchr.c: Likewise.
1092         * lib/unistr/u32-strspn.c: Likewise.
1093         * lib/unistr/u32-strstr.c: Likewise.
1094         * lib/unistr/u32-strtok.c: Likewise.
1095         * lib/unistr/u32-to-u16.c: Likewise.
1096         * lib/unistr/u32-to-u8.c: Likewise.
1097         * lib/unistr/u32-uctomb.c: Likewise.
1098         * lib/unistr/u8-check.c: Likewise.
1099         * lib/unistr/u8-chr.c: Likewise.
1100         * lib/unistr/u8-cmp.c: Likewise.
1101         * lib/unistr/u8-cpy-alloc.c: Likewise.
1102         * lib/unistr/u8-cpy.c: Likewise.
1103         * lib/unistr/u8-endswith.c: Likewise.
1104         * lib/unistr/u8-mblen.c: Likewise.
1105         * lib/unistr/u8-mbsnlen.c: Likewise.
1106         * lib/unistr/u8-mbtouc-aux.c: Likewise.
1107         * lib/unistr/u8-mbtouc-unsafe-aux.c: Likewise.
1108         * lib/unistr/u8-mbtouc-unsafe.c: Likewise.
1109         * lib/unistr/u8-mbtouc.c: Likewise.
1110         * lib/unistr/u8-mbtoucr.c: Likewise.
1111         * lib/unistr/u8-move.c: Likewise.
1112         * lib/unistr/u8-next.c: Likewise.
1113         * lib/unistr/u8-prev.c: Likewise.
1114         * lib/unistr/u8-set.c: Likewise.
1115         * lib/unistr/u8-startswith.c: Likewise.
1116         * lib/unistr/u8-stpcpy.c: Likewise.
1117         * lib/unistr/u8-stpncpy.c: Likewise.
1118         * lib/unistr/u8-strcat.c: Likewise.
1119         * lib/unistr/u8-strchr.c: Likewise.
1120         * lib/unistr/u8-strcmp.c: Likewise.
1121         * lib/unistr/u8-strcpy.c: Likewise.
1122         * lib/unistr/u8-strcspn.c: Likewise.
1123         * lib/unistr/u8-strdup.c: Likewise.
1124         * lib/unistr/u8-strlen.c: Likewise.
1125         * lib/unistr/u8-strmblen.c: Likewise.
1126         * lib/unistr/u8-strmbtouc.c: Likewise.
1127         * lib/unistr/u8-strncat.c: Likewise.
1128         * lib/unistr/u8-strncmp.c: Likewise.
1129         * lib/unistr/u8-strncpy.c: Likewise.
1130         * lib/unistr/u8-strnlen.c: Likewise.
1131         * lib/unistr/u8-strpbrk.c: Likewise.
1132         * lib/unistr/u8-strrchr.c: Likewise.
1133         * lib/unistr/u8-strspn.c: Likewise.
1134         * lib/unistr/u8-strstr.c: Likewise.
1135         * lib/unistr/u8-strtok.c: Likewise.
1136         * lib/unistr/u8-to-u16.c: Likewise.
1137         * lib/unistr/u8-to-u32.c: Likewise.
1138         * lib/unistr/u8-uctomb-aux.c: Likewise.
1139         * lib/unistr/u8-uctomb.c: Likewise.
1140         * lib/unitypes.h: Likewise.
1141         * lib/uniwidth.h: Likewise.
1142         * lib/uniwidth/cjk.h: Likewise.
1143         * lib/uniwidth/u16-strwidth.c: Likewise.
1144         * lib/uniwidth/u16-width.c: Likewise.
1145         * lib/uniwidth/u32-strwidth.c: Likewise.
1146         * lib/uniwidth/u32-width.c: Likewise.
1147         * lib/uniwidth/u8-strwidth.c: Likewise.
1148         * lib/uniwidth/u8-width.c: Likewise.
1149         * lib/uniwidth/width.c: Likewise.
1150
1151 2007-10-07  Bruno Haible  <bruno@clisp.org>
1152
1153         * lib/inttypes.in.h: Change copyright notice from LGPL to GPL.
1154         The file is still under LGPL (see modules/inttypes).
1155
1156 2007-10-06  Bruno Haible  <bruno@clisp.org>
1157
1158         * modules/trunc (Dependencies): Add 'extensions'.
1159         * m4/trunc.m4 (gl_FUNC_TRUNC): Require gl_USE_SYSTEM_EXTENSIONS.
1160         Reported by Ben Pfaff <blp@gnu.org>.
1161
1162 2007-10-06  Bruno Haible  <bruno@clisp.org>
1163
1164         * modules/freopen-tests: New file.
1165         * tests/test-freopen.c: New file.
1166
1167         * modules/fopen-tests: New file.
1168         * tests/test-fopen.c: New file.
1169
1170         * modules/fopen: New file.
1171         * lib/fopen.c: New file.
1172         * m4/fopen.m4: New file.
1173         * modules/freopen: New file.
1174         * lib/freopen.c: New file.
1175         * m4/freopen.m4: New file.
1176         * lib/stdio.in.h (fopen, freopen): New declarations.
1177         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Initialize also GNULIB_FOPEN,
1178         GNULIB_FREOPEN, REPLACE_FOPEN, REPLACE_FREOPEN.
1179         * modules/stdio (Makefile.am): Substitute also GNULIB_FOPEN,
1180         GNULIB_FREOPEN, REPLACE_FOPEN, REPLACE_FREOPEN.
1181         * doc/functions/fopen.texi: Mention the 'fopen' module.
1182         * doc/functions/freopen.texi: Mention the 'freopen' module.
1183
1184 2007-10-06  Bruno Haible  <bruno@clisp.org>
1185
1186         * modules/open-tests: New file.
1187         * tests/test-open.c: New file.
1188
1189         * modules/open: New file.
1190         * lib/open.c: New file.
1191         * m4/open.m4: New file.
1192         * lib/fchdir.c (open): If the gnulib module 'open' is used, do what
1193         lib/open.c does.
1194         * lib/fcntl.in.h (open): Declare also if replaced by the 'open' module.
1195         * m4/fcntl_h.m4 (gl_FCNTL_MODULE_INDICATOR, gl_FCNTL_H_DEFAULTS): New
1196         macros.
1197         (gl_FCNTL_H): Require gl_FCNTL_H_DEFAULTS.
1198         * modules/fcntl (Makefile.am): Also substitute GNULIB_OPEN and
1199         REPLACE_OPEN.
1200         * doc/functions/open.texi: Mention the 'open' module.
1201
1202 2007-10-04  Bruno Haible  <bruno@clisp.org>
1203
1204         * modules/ceill-tests: New file.
1205         * tests/test-ceill.c: New file.
1206
1207         * modules/ceill: New file.
1208         * lib/ceill.c: Replace entire file.
1209         * m4/ceill.m4: New file.
1210         * lib/math.in.h (ceill): Replace declaration.
1211         * m4/math_h.m4 (gl_MATH_H_DEFAULTS): Initialize GNULIB_CEILL.
1212         * modules/math (Makefile.am): Substitute also GNULIB_CEILL.
1213         * doc/functions/ceill.texi: Mention the 'ceill' module.
1214         * modules/mathl (Files): Remove lib/ceill.c.
1215         (Depends-on): Add ceill.
1216
1217 2007-10-04  Bruno Haible  <bruno@clisp.org>
1218
1219         * modules/ceilf-tests: New file.
1220         * tests/test-ceilf.c: New file.
1221
1222         * modules/ceilf: New file.
1223         * lib/ceil.c: New file.
1224         * lib/ceilf.c: New file.
1225         * m4/ceilf.m4: New file.
1226         * lib/math.in.h (ceilf): New declaration.
1227         * m4/math_h.m4 (gl_MATH_H_DEFAULTS): Initialize GNULIB_CEILF and
1228         HAVE_DECL_CEILF.
1229         * modules/math (Makefile.am): Substitute also GNULIB_CEILF and
1230         HAVE_DECL_CEILF.
1231         * doc/functions/ceilf.texi: Mention the 'ceilf' module.
1232
1233 2007-10-04  Bruno Haible  <bruno@clisp.org>
1234
1235         * modules/floorl-tests: New file.
1236         * tests/test-floorl.c: New file.
1237
1238         * modules/floorl: New file.
1239         * lib/floorl.c: Replace entire file.
1240         * m4/floorl.m4: New file.
1241         * lib/math.in.h (floorl): Replace declaration.
1242         * m4/math_h.m4 (gl_MATH_H_DEFAULTS): Initialize GNULIB_FLOORL.
1243         * modules/math (Makefile.am): Substitute also GNULIB_FLOORL.
1244         * doc/functions/floorl.texi: Mention the 'floorl' module.
1245         * modules/mathl (Files): Remove lib/floorl.c.
1246         (Depends-on): Add floorl.
1247
1248 2007-10-04  Bruno Haible  <bruno@clisp.org>
1249
1250         * modules/floorf-tests: New file.
1251         * tests/test-floorf.c: New file.
1252
1253         * modules/floorf: New file.
1254         * lib/floor.c: New file.
1255         * lib/floorf.c: New file.
1256         * m4/floorf.m4: New file.
1257         * lib/math.in.h (floorf): New declaration.
1258         * m4/math_h.m4 (gl_MATH_H_DEFAULTS): Initialize GNULIB_FLOORF and
1259         HAVE_DECL_FLOORF.
1260         * modules/math (Makefile.am): Substitute also GNULIB_FLOORF and
1261         HAVE_DECL_FLOORF.
1262         * doc/functions/floorf.texi: Mention the 'floorf' module.
1263
1264 2007-10-04  Benoit Sigoure  <tsuna@lrde.epita.fr>
1265             Bruno Haible  <bruno@clisp.org>
1266
1267         Advertise for the Git server instead of the CVS server.
1268         * doc/gnulib-intro.texi (Steady Development): Mention the Git
1269         repository instead of the CVS one.
1270         * doc/gnulib-tool.texi (VCS Issues): Renamed from "CVS Issues". Talk
1271         about all VCS systems generically.
1272         * doc/gnulib.texi (Introduction): Capitalize `Git'.
1273
1274 2007-10-04  Bruno Haible  <bruno@clisp.org>
1275
1276         * doc/gnulib.texi (Function Substitutes): Explain what an absent module
1277         means.
1278         Reported by Benoît Sigoure <tsuna@lrde.epita.fr>.
1279
1280 2007-10-04  Bruno Haible  <bruno@clisp.org>
1281
1282         * modules/truncl-tests: New file.
1283         * tests/test-truncl.c: New file.
1284
1285         * modules/truncl: New file.
1286         * lib/truncl.c: New file.
1287         * m4/truncl.m4: New file.
1288         * lib/math.in.h (truncl): New declaration.
1289         * m4/math_h.m4 (gl_MATH_H_DEFAULTS): Initialize GNULIB_TRUNCL and
1290         HAVE_DECL_TRUNCL.
1291         * modules/math (Makefile.am): Substitute also GNULIB_TRUNCL and
1292         HAVE_DECL_TRUNCL.
1293         * doc/functions/truncl.texi: Mention the 'truncl' module.
1294
1295 2007-10-04  Bruno Haible  <bruno@clisp.org>
1296
1297         * modules/truncf-tests: New file.
1298         * tests/test-truncf.c: New file.
1299
1300         * modules/truncf: New file.
1301         * lib/trunc.c: Make paramerizable through USE_* macros.
1302         * lib/truncf.c: New file.
1303         * m4/truncf.m4: New file.
1304         * lib/math.in.h (truncf): New declaration.
1305         * m4/math_h.m4 (gl_MATH_H_DEFAULTS): Initialize GNULIB_TRUNCF and
1306         HAVE_DECL_TRUNCF.
1307         * modules/math (Makefile.am): Substitute also GNULIB_TRUNCF and
1308         HAVE_DECL_TRUNCF.
1309         * doc/functions/truncf.texi: Mention the 'truncf' module.
1310
1311 2007-10-03  Bruno Haible  <bruno@clisp.org>
1312
1313         * gnulib-tool (func_get_automake_snippet): Synthesize an EXTRA_DIST
1314         augmentation also for tests modules.
1315         * modules/argp-tests (Makefile.am): Remove EXTRA_DIST augmentation.
1316         * modules/atexit-tests (Makefile.am): Likewise.
1317         * modules/binary-io-tests (Makefile.am): Likewise.
1318         * modules/c-strcase-tests (Makefile.am): Likewise.
1319         * modules/canonicalize-lgpl-tests (Makefile.am): Likewise.
1320         * modules/canonicalize-tests (Makefile.am): Likewise.
1321         * modules/closein-tests (Makefile.am): Likewise.
1322         * modules/fprintf-posix-tests (Makefile.am): Likewise.
1323         * modules/freadahead-tests (Makefile.am): Likewise.
1324         * modules/fseek-tests (Makefile.am): Likewise.
1325         * modules/fseeko-tests (Makefile.am): Likewise.
1326         * modules/ftell-tests (Makefile.am): Likewise.
1327         * modules/ftello-tests (Makefile.am): Likewise.
1328         * modules/isnanl-nolibm-tests (Makefile.am): Likewise.
1329         * modules/isnanl-tests (Makefile.am): Likewise.
1330         * modules/lseek-tests (Makefile.am): Likewise.
1331         * modules/mbscasecmp-tests (Makefile.am): Likewise.
1332         * modules/mbscasestr-tests (Makefile.am): Likewise.
1333         * modules/mbschr-tests (Makefile.am): Likewise.
1334         * modules/mbscspn-tests (Makefile.am): Likewise.
1335         * modules/mbsncasecmp-tests (Makefile.am): Likewise.
1336         * modules/mbspbrk-tests (Makefile.am): Likewise.
1337         * modules/mbspcasecmp-tests (Makefile.am): Likewise.
1338         * modules/mbsrchr-tests (Makefile.am): Likewise.
1339         * modules/mbsspn-tests (Makefile.am): Likewise.
1340         * modules/mbsstr-tests (Makefile.am): Likewise.
1341         * modules/printf-posix-tests (Makefile.am): Likewise.
1342         * modules/snprintf-posix-tests (Makefile.am): Likewise.
1343         * modules/sprintf-posix-tests (Makefile.am): Likewise.
1344         * modules/tsearch-tests (Makefile.am): Likewise.
1345         * modules/uniname/uniname-tests (Makefile.am): Likewise.
1346         * modules/unistdio/u16-vasnprintf-tests (Makefile.am): Likewise.
1347         * modules/unistdio/u32-vasnprintf-tests (Makefile.am): Likewise.
1348         * modules/unistdio/u8-vasnprintf-tests (Makefile.am): Likewise.
1349         * modules/unistdio/ulc-vasnprintf-tests (Makefile.am): Likewise.
1350         * modules/vasnprintf-posix-tests (Makefile.am): Likewise.
1351         * modules/vfprintf-posix-tests (Makefile.am): Likewise.
1352         * modules/vprintf-posix-tests (Makefile.am): Likewise.
1353         * modules/vsnprintf-posix-tests (Makefile.am): Likewise.
1354         * modules/vsprintf-posix-tests (Makefile.am): Likewise.
1355         * modules/xstrtoimax-tests (Makefile.am): Likewise.
1356         * modules/xstrtol-tests (Makefile.am): Likewise.
1357         * modules/xstrtoumax-tests (Makefile.am): Likewise.
1358         * modules/yesno-tests (Makefile.am): Likewise.
1359
1360 2007-10-03  Bruno Haible  <bruno@clisp.org>
1361
1362         * modules/trunc-tests: New file.
1363         * tests/test-trunc.c: New file.
1364
1365         * modules/trunc: New file.
1366         * lib/trunc.c: New file.
1367         * m4/trunc.m4: New file.
1368         * lib/math.in.h (trunc): New declaration.
1369         * m4/math_h.m4 (gl_MATH_H_DEFAULTS): Initialize GNULIB_TRUNC and
1370         HAVE_DECL_TRUNC.
1371         * modules/math (Makefile.am): Substitute also GNULIB_TRUNC and
1372         HAVE_DECL_TRUNC.
1373         * doc/functions/trunc.texi: Mention the 'trunc' module.
1374
1375 2007-10-03  Bruno Haible  <bruno@clisp.org>
1376
1377         * tests/test-fpending.c: New file, mostly copied
1378         from coreutils/lib/t-fpending.c.
1379         * modules/fpending-tests: New file.
1380
1381 2007-10-03  Bruno Haible  <bruno@clisp.org>
1382
1383         Port the stdio extensions to QNX (untested).
1384         * lib/fseterr.c (fseterr): Add support for QNX.
1385         * lib/fbufmode.c (fbufmode): Likewise.
1386         * lib/freadable.c (freadable): Likewise.
1387         * lib/fwritable.c (fwritable): Likewise.
1388         * lib/freading.c (freading): Likewise.
1389         * lib/fwriting.c (fwriting): Likewise.
1390         * lib/freadahead.c (freadahed): Likewise.
1391         * lib/fpurge.c (fpurge): Likewise.
1392         * lib/fseeko.c (rpl_fseeko): Likewise.
1393
1394 2007-10-03  Bruno Haible  <bruno@clisp.org>
1395             Jim Meyering  <jim@meyering.net>
1396             Eric Blake  <ebb9@byu.net>
1397
1398         * doc/relocatable.texi: Use @command instead of @program.
1399
1400 2007-10-02  Jim Meyering  <jim@meyering.net>
1401
1402         Perform one more "_.h" -> ".in.h" substitution.
1403         * modules/unistd (Makefile.am) [unistd.h]: Use unistd.h.in
1404         instead of unistd_.h here, too.
1405
1406 2007-10-01  Bruno Haible  <bruno@clisp.org>
1407
1408         * gnulib-tool (func_emit_initmacro_done): Special case for alloca.c.
1409         Needed for the alloca-opt module.
1410
1411 2007-09-30  Bruno Haible  <bruno@clisp.org>
1412
1413         * lib/alloca.in.h: Renamed from lib/alloca_.h.
1414         * modules/alloca-opt (Files, Makefile.am): Use alloca.in.h instead of
1415         alloca_.h.
1416         * lib/argz.in.h: Renamed from lib/argz_.h.
1417         * modules/argz (Files, Makefile.am): Use argz.in.h instead of argz_.h.
1418         * lib/byteswap.in.h: Renamed from lib/byteswap_.h.
1419         * modules/byteswap (Files, Makefile.am): Use byteswap.in.h instead of
1420         byteswap_.h.
1421         * lib/dirent.in.h: Renamed from lib/dirent_.h.
1422         * modules/fchdir (Files, Makefile.am): Use dirent.in.h instead of
1423         dirent_.h.
1424         * lib/fcntl.in.h: Renamed from lib/fcntl_.h.
1425         * modules/fcntl (Files, Makefile.am): Use fcntl.in.h instead of
1426         fcntl_.h.
1427         * lib/float.in.h: Renamed from lib/float_.h.
1428         * modules/float (Files, Makefile.am): Use float.in.h instead of
1429         float_.h.
1430         * lib/fnmatch.in.h: Renamed from lib/fnmatch_.h.
1431         * modules/fnmatch (Files, Makefile.am): Use fnmatch.in.h instead of
1432         fnmatch_.h.
1433         * lib/getopt.in.h: Renamed from lib/getopt_.h.
1434         * modules/getopt (Files, Makefile.am): Use getopt.in.h instead of
1435         getopt_.h.
1436         * lib/glob.in.h: Renamed from lib/glob_.h.
1437         * modules/glob (Files, Makefile.am): Use glob.in.h instead of glob_.h.
1438         * lib/iconv.in.h: Renamed from lib/iconv_.h.
1439         * modules/iconv_open (Files, Makefile.am): Use iconv.in.h instead of
1440         iconv_.h.
1441         * lib/inttypes.in.h: Renamed from lib/inttypes_.h.
1442         * modules/inttypes (Files, Makefile.am): Use inttypes.in.h instead of
1443         inttypes_.h.
1444         * lib/locale.in.h: Renamed from lib/locale_.h.
1445         * modules/locale (Files, Makefile.am): Use locale.in.h instead of
1446         locale_.h.
1447         * lib/math.in.h: Renamed from lib/math_.h.
1448         * modules/math (Files, Makefile.am): Use math.in.h instead of math_.h.
1449         * lib/netinet_in.in.h: Renamed from lib/netinet_in_.h.
1450         * modules/netinet_in (Files, Makefile.am): Use netinet_in.in.h instead
1451         of netinet_in_.h. Add dependency.
1452         * lib/poll.in.h: Renamed from lib/poll_.h.
1453         * modules/poll (Files, Makefile.am): Use poll.in.h instead of poll_.h.
1454         * lib/search.in.h: Renamed from lib/search_.h.
1455         * modules/search (Files, Makefile.am): Use search.in.h instead of
1456         search_.h.
1457         * lib/signal.in.h: Renamed from lib/signal_.h.
1458         * modules/signal (Files, Makefile.am): Use signal.in.h instead of
1459         _signal.h.
1460         * lib/stdbool.in.h: Renamed from lib/stdbool_.h.
1461         * modules/stdbool (Files, Makefile.am): Use stdbool.in.h instead of
1462         stdbool_.h.
1463         * lib/stdint.in.h: Renamed from lib/stdint_.h.
1464         * modules/stdint (Files, Makefile.am): Use stdint.in.h instead of
1465         stdint_.h.
1466         * lib/stdio.in.h: Renamed from lib/stdio_.h.
1467         * modules/stdio (Files, Makefile.am): Use stdio.in.h instead of
1468         stdio_.h.
1469         * lib/stdlib.in.h: Renamed from lib/stdlib_.h.
1470         * modules/stdlib (Files, Makefile.am): Use stdlib.in.h instead of
1471         stdlib_.h.
1472         * lib/string.in.h: Renamed from lib/string_.h.
1473         * modules/string (Files, Makefile.am): Use string.in.h instead of
1474         string_.h.
1475         * doc/gnulib-tool.texi (Initial import): Update.
1476         * lib/sys_select.in.h: Renamed from lib/sys_select_.h.
1477         * modules/sys_select (Files, Makefile.am): Use sys_select.in.h instead
1478         of sys_select_.h. Add dependency.
1479         * lib/sys_socket.in.h: Renamed from lib/sys_socket_.h.
1480         * modules/sys_socket (Files, Makefile.am): Use sys_socket.in.h instead
1481         of sys_socket_.h.
1482         * lib/sys_stat.in.h: Renamed from lib/sys_stat_.h.
1483         * modules/sys_stat (Files, Makefile.am): Use sys_stat.in.h instead of
1484         sys_stat_.h.
1485         * lib/sys_time.in.h: Renamed from lib/sys_time_.h.
1486         * modules/sys_time (Files, Makefile.am): Use sys_time.in.h instead of
1487         sys_time_.h.
1488         * lib/sysexits.in.h: Renamed from lib/sysexits_.h.
1489         * modules/sysexits (Files, Makefile.am): Use sysexits.in.h instead of
1490         sysexits_.h.
1491         * lib/time.in.h: Renamed from lib/time_.h.
1492         * modules/time (Files, Makefile.am): Use time.in.h instead of time_.h.
1493         * lib/unistd.in.h: Renamed from lib/unistd_.h.
1494         * modules/unistd (Files, Makefile.am): Use unistd.in.h instead of
1495         unistd_.h.
1496         * lib/wchar.in.h: Renamed from lib/wchar_.h.
1497         * modules/wchar (Files, Makefile.am): Use wchar.in.h instead of
1498         wchar_.h.
1499         * lib/wctype.in.h: Renamed from lib/wctype_.h.
1500         * modules/wctype (Files, Makefile.am): Use wctype.in.h instead of
1501         wctype_.h.
1502         * build-aux/bootstrap (slurp): Update.
1503         * lib/.cppi-disable: Update.
1504
1505 2007-09-30  Bruno Haible  <bruno@clisp.org>
1506
1507         * tests/test-getaddrinfo.c (AF_UNSPEC): Provide a fallback definition.
1508         Needed on BeOS.
1509
1510 2007-09-30  Bruno Haible  <bruno@clisp.org>
1511
1512         * modules/dirname-tests (check_PROGRAMS): Renamed from noinst_PROGRAMS.
1513
1514 2007-09-29  Bruno Haible  <bruno@clisp.org>
1515
1516         * lib/stdio_.h (getdelim, getline): Add identifiers. Doc tweak.
1517
1518 2007-09-29  Bruno Haible  <bruno@clisp.org>
1519
1520         * lib/xreadlink.c (xreadlink): Simplify to a wrapper around areadlink.
1521         * modules/xreadlink (Depends-on): Add areadlink, remove readlink etc.
1522         * build-aux/install-reloc: Compile also areadlink.c.
1523         * modules/relocatable-prog-wrapper (Files): Add lib/areadlink.[hc].
1524
1525 2007-09-29  Bruno Haible  <bruno@clisp.org>
1526
1527         * gnulib-tool (func_emit_initmacro_done): Indentation.
1528
1529 2007-09-29  Bruno Haible  <bruno@clisp.org>
1530
1531         * README: Add CVS checkout update instructions.
1532         Info from Bob Proulx <bob@proulx.com>.
1533
1534 2007-09-28  Eric Blake  <ebb9@byu.net>
1535
1536         Provide move-if-change.
1537         * build-aux/move-if-change: New file, based on best practice
1538         rather than any canonical upstream location.
1539
1540 2007-09-28  Jim Meyering  <jim@meyering.net>
1541
1542         Fix canonicalize loop-detection corner case.
1543         Do not attempt to stat the symlink values stored via seen_triple.
1544         Without this, coreutils' tests/misc/readlink-fp-loop test would fail
1545         on linux-2.6.18, (but not 2.6.22).
1546         * lib/canonicalize.c (seen_triple): Use triple_compare_ino_str, not
1547         triple_compare.  The former compares dev,ino,filename, while the latter
1548         would actually stat dirname(filename) when dev and ino were equal.
1549         * lib/hash-triple.c: Install <string.h>.
1550         (STREQ): Define.
1551         (triple_compare_ino_str): New function.
1552         * lib/hash-triple.h (triple_compare_ino_str): Declare it.
1553
1554 2007-09-28  Eric Blake  <ebb9@byu.net>
1555
1556         Enforce that AC_REPLACE_FUNCS files exist.
1557         * gnulib-tool (func_emit_initmacro_done): Make AC_LIBSOURCES
1558         override check for typos.
1559
1560         Fix test-closein on Solaris 10.
1561         * tests/test-closein.c (main): Don't assume stdin can be inherited
1562         closed on all systems.
1563         * tests/test-closein.sh: Likewise.
1564         Reported by Piotr Tarnowski.
1565
1566 2007-09-28  Jim Meyering  <jim@meyering.net>
1567
1568         * m4/nanosleep.m4 (gl_FUNC_NANOSLEEP): Fix typo in comment.
1569
1570 2007-09-27  Jim Meyering  <jim@meyering.net>
1571
1572         canonicalize: Avoid a false-positive cycle failure.
1573         * modules/canonicalize (Depends-on): Add file-set and hash-triple.
1574         Sort.  Remove cycle-check.
1575         * lib/canonicalize.c: Include file-set.h and hash-triple.h,
1576         not cycle-check.h.
1577         (seen_triple): New function.
1578         (canonicalize_filename_mode): Use it instead of cycle-check.
1579         * tests/test-canonicalize.c: Add a test for this bug.
1580         * tests/test-canonicalize.sh: Set up and run the test.
1581
1582         New module, file-set, from coreutils.
1583         * modules/file-set: Define it.
1584         * lib/file-set.c, lib/file-set.h: Implement.
1585
1586         New module, hash-triple, from coreutils.
1587         * modules/hash-triple: Define it.
1588         * lib/hash-triple.c, lib/hash-triple.h: Implement.
1589
1590 2007-09-25  Eric Blake  <ebb9@byu.net>
1591
1592         Fix strerror on Interix.
1593         * lib/string_.h (strerror): Declare replacement.
1594         * doc/functions/strerror.texi (strerror): Document the Interix
1595         shortcoming.
1596         * modules/string (Makefile.am): Support new hooks.
1597         * m4/string_h.m4 (gl_HEADER_STRING_H_DEFAULTS): Add new hooks.
1598         * m4/strerror.m4 (gl_FUNC_STRERROR): Defer to
1599         gl_FUNC_STRERROR_SEPARATE.
1600         (gl_FUNC_STRERROR_SEPARATE): Check for Interix bug.
1601         * lib/strerror.c (rpl_strerror): Provide replacement.
1602         * modules/strerror (Depends-on): Add string.
1603         (configure.ac): Detect use of module.
1604         * tests/test-strerror.c: New file.
1605         * modules/strerror-tests: New test module.
1606         * modules/argp (Depends-on): Add strerror.
1607         * modules/error (Depends-on): Likewise.
1608         Reported by Martin Koeppe.
1609
1610 2007-09-24  Bruno Haible  <bruno@clisp.org>
1611
1612         * README: Update git instructions.
1613
1614 2007-09-24  Eric Blake  <ebb9@byu.net>
1615
1616         Revert fpending breakage from 2007-09-08.
1617         * m4/fpending.m4 (gl_FUNC_FPENDING): Don't require existence of
1618         __fpending.c.
1619
1620 2007-09-24  Jim Meyering  <jim@meyering.net>
1621
1622         filenamecat.c: Add a test.
1623         * lib/filenamecat.c (main) [TEST_FILE_NAME_CONCAT]: Add a test
1624         showing how the function works when DIR is the empty string.
1625
1626 2007-09-21  Simon Josefsson  <simon@josefsson.org>
1627
1628         * tests/test-canonicalize.sh: Turn on executable bit.
1629
1630 2007-09-19  Eric Blake  <ebb9@byu.net>
1631
1632         * README: Update CVS instructions.
1633
1634 2007-09-18  Bruno Haible  <bruno@clisp.org>
1635
1636         * modules/areadlink: New file.
1637         * lib/areadlink.h (areadlink): New declaration.
1638         * lib/areadlink.c: New file, based on lib/xreadlink.c.
1639
1640 2007-09-17  Jim Meyering  <jim@meyering.net>
1641
1642         * lib/savewd.c (ESTALE) [!defined]: Define.
1643         Reported to be required on Interix by Martin Koeppe.
1644
1645 2007-09-17  Bruno Haible  <bruno@clisp.org>
1646
1647         * gnulib-tool (func_version): Use $version.
1648
1649 2007-09-16  Bruno Haible  <bruno@clisp.org>
1650
1651         * m4/printf.m4 (gl_PRINTF_LONG_DOUBLE, gl_PRINTF_INFINITE,
1652         gl_PRINTF_INFINITE_LONG_DOUBLE): Increase buf's size from 100 to 10000.
1653         Needed on glibc-2.6.1 with -fstack-protector -D_FORTIFY_SOURCE=2.
1654         Reported by Greg Schafer <gschafer@zip.com.au>.
1655
1656 2007-09-15  Bruno Haible  <bruno@clisp.org>
1657
1658         * gnulib-tool (sed): Try a little harder to make bash understand the
1659         alias.
1660         Reported by Bruce Korb <bruce.korb@gmail.com>.
1661
1662 2007-09-13  Eric Blake  <ebb9@byu.net>
1663
1664         * ChangeLog: Remove conflict markers.
1665
1666 2007-09-13  Simon Josefsson  <simon@josefsson.org>
1667
1668         * lib/gc-gnulib.c (gc_hash_open): Catch NULL calloc return value.
1669         Reported by Bruno Haible <bruno@clisp.org>.
1670
1671 2007-09-12  Bruno Haible  <bruno@clisp.org>
1672
1673         * m4/lock.m4: Don't provide an AC_USE_SYSTEM_EXTENSIONS definition.
1674         (gl_LOCK_EARLY_BODY): Use AC_GNU_SOURCE when AC_USE_SYSTEM_EXTENSIONS
1675         is not defined.
1676
1677 2007-09-12  Eric Blake  <ebb9@byu.net>
1678
1679         Track CVS Autoconf on AC_USE_SYSTEM_EXTENSIONS.
1680         * m4/extensions.m4 (AC_USE_SYSTEM_EXTENSIONS): Update to CVS
1681         Autoconf definition.
1682         * modules/euidaccess (Depends-on): Add extensions, for
1683         AC_USE_SYSTEM_EXTENSIONS with autoconf <= 2.59.
1684         * modules/fnmatch (Depends-on): Likewise.
1685         * modules/getaddrinfo (Depends-on): Likewise.
1686         * modules/getdelim (Depends-on): Likewise.
1687         * modules/getline (Depends-on): Likewise.
1688         * modules/getsubopt (Depends-on): Likewise.
1689         * modules/gettext (Depends-on): Likewise.
1690         * modules/group-member (Depends-on): Likewise.
1691         * modules/mbchar (Depends-on): Likewise.
1692         * modules/memmem (Depends-on): Likewise.
1693         * modules/mempcpy (Depends-on): Likewise.
1694         * modules/memrchr (Depends-on): Likewise.
1695         * modules/pagealign_alloc (Depends-on): Likewise.
1696         * modules/readutmp (Depends-on): Likewise.
1697         * modules/stpcpy (Depends-on): Likewise.
1698         * modules/stpncpy (Depends-on): Likewise.
1699         * modules/strchrnul (Depends-on): Likewise.
1700         * modules/strndup (Depends-on): Likewise.
1701         * modules/strsep (Depends-on): Likewise.
1702         * modules/strverscmp (Depends-on): Likewise.
1703         * modules/vasprintf (Depends-on): Likewise.
1704         * modules/wcwidth (Depends-on): Likewise.
1705         * m4/euidaccess.m4 (gl_FUNC_EUIDACCESS): AC_GNU_SOURCE will be
1706         obsolete in Autoconf 2.62; use AC_USE_SYSTEM_EXTENSIONS instead.
1707         * m4/fnmatch.m4 (gl_FUNC_FNMATCH_GNU): Likewise.
1708         * m4/getaddrinfo.m4 (gl_PREREQ_GETADDR_INFO): Likewise.
1709         * m4/getdelim.m4 (gl_FUNC_GETDELIM): Likewise.
1710         * m4/getline.m4 (gl_FUNC_GETLINE): Likewise.
1711         * m4/getsubopt.m4 (gl_FUNC_GETSUBOPT): Likewise.
1712         * m4/glob.m4 (gl_PREREQ_GLOB): Likewise.
1713         * m4/group-member.m4 (gl_FUNC_GROUP_MEMBER): Likewise.
1714         * m4/mbchar.m4 (gl_MBCHAR): Likewise.
1715         * m4/memmem.m4 (gl_FUNC_MEMMEM): Likewise.
1716         * m4/mempcpy.m4 (gl_FUNC_MEMPCPY): Likewise.
1717         * m4/memrchr.m4 (gl_FUNC_MEMRCHR): Likewise.
1718         * m4/mmap-anon.m4 (gl_FUNC_MMAP_ANON): Likewise.
1719         * m4/pagealign_alloc.m4 (gl_PAGEALIGN_ALLOC): Likewise.
1720         * m4/readutmp.m4 (gl_READUTMP): Likewise.
1721         * m4/regex.m4 (gl_PREREQ_REGEX): Likewise.
1722         * m4/stpcpy.m4 (gl_FUNC_STPCPY): Likewise.
1723         * m4/stpncpy.m4 (gl_FUNC_STPNCPY): Likewise.
1724         * m4/strchrnul.m4 (gl_FUNC_STRCHRNUL): Likewise.
1725         * m4/strndup.m4 (gl_FUNC_STRNDUP): Likewise.
1726         * m4/strnlen.m4 (gl_FUNC_STRNLEN): Likewise.
1727         * m4/strsep.m4 (gl_FUNC_STRSEP): Likewise.
1728         * m4/strverscmp.m4 (gl_FUNC_STRVERSCMP): Likewise.
1729         * m4/vasprintf.m4 (gl_PREREQ_VASPRINTF_H): Likewise.
1730         * m4/wcwidth.m4 (gl_FUNC_WCWIDTH): Likewise.
1731         * m4/lock.m4 (gl_LOCK_EARLY_BODY): Likewise, but provide fallback,
1732         so that lock.m4 can be used in gettext without extensions module.
1733
1734 2007-09-11  Bruno Haible  <bruno@clisp.org>
1735
1736         * m4/isc-posix.m4: Remove file.
1737         Suggested by Eric Blake.
1738
1739 2007-09-11  Eric Blake  <ebb9@byu.net>
1740
1741         * ChangeLog: Restore lines accidentally truncated 2007-04-06.
1742
1743 2007-09-10  Bruno Haible  <bruno@clisp.org>
1744
1745         * posix-modules: Fix typo in error message.
1746         Reported by Matt <mkraai@beckman.com>.
1747
1748 2007-09-09  Bruno Haible  <bruno@clisp.org>
1749
1750         * doc/functions/getdelim.texi: Update list of platforms lacking the
1751         function.
1752         * doc/functions/getline.texi: Likewise.
1753
1754 2007-09-09  Jim Meyering  <jim@meyering.net>
1755
1756         * lib/hash.c (hash_initialize): Detect calloc failure.
1757         Reported by Bruno Haible.
1758
1759 2007-09-09  Bruno Haible  <bruno@clisp.org>
1760
1761         * lib/canonicalize-lgpl.c (__realpath): Set errno to ENOMEM when
1762         malloc or realloc fails.
1763
1764 2007-09-09  Bruno Haible  <bruno@clisp.org>
1765
1766         * modules/getcwd (Depends-on): Add malloc-posix.
1767         * modules/glob (Depends-on): Likewise.
1768         * modules/putenv (Depends-on): Likewise.
1769         * modules/strdup (Depends-on): Likewise.
1770         * modules/getdelim (Depends-on): Add realloc-posix.
1771         * modules/read-file (Depends-on): Likewise.
1772
1773 2007-09-09  Bruno Haible  <bruno@clisp.org>
1774
1775         * m4/malloc.m4 (gl_CHECK_MALLOC_POSIX): New macro.
1776         (gl_FUNC_MALLOC_POSIX): Require it.
1777         * m4/realloc.m4 (gl_FUNC_REALLOC_POSIX): Likewise.
1778         * m4/calloc.m4 (gl_FUNC_CALLOC_POSIX): Likewise.
1779         * modules/realloc (Files): Add m4/malloc.m4.
1780         * modules/calloc (Files): Likewise.
1781
1782 2007-09-09  Bruno Haible  <bruno@clisp.org>
1783
1784         * modules/malloc-posix: New file.
1785         * modules/malloc (Depends-on): Add malloc-posix.
1786         * lib/malloc.c: Include errno.h.
1787         (rpl_malloc): Merge the requirements of a glibc-compatible malloc
1788         and a POSIX-compatible malloc into a single function. Set ENOMEM
1789         when returning NULL.
1790         * m4/malloc.m4: New file.
1791         * doc/functions/malloc.texi: Mention the malloc-posix module.
1792         * lib/stdlib_.h (malloc): New declaration.
1793         * m4/stdlib_h.m4 (gl_STDLIB_H_DEFAULTS): Initialize
1794         GNULIB_MALLOC_POSIX and HAVE_MALLOC_POSIX.
1795         * modules/stdlib (stdlib.h): Substitute also GNULIB_MALLOC_POSIX
1796         and HAVE_MALLOC_POSIX.
1797
1798 2007-09-09  Bruno Haible  <bruno@clisp.org>
1799
1800         * modules/realloc-posix: New file.
1801         * modules/realloc (Depends-on): Add realloc-posix.
1802         * lib/realloc.c: Include errno.h.
1803         (rpl_realloc): Merge the requirements of a glibc-compatible realloc
1804         and a POSIX-compatible realloc into a single function. Set ENOMEM
1805         when returning NULL.
1806         * m4/realloc.m4: New file.
1807         * doc/functions/realloc.texi: Mention the realloc-posix module.
1808         * lib/stdlib_.h (realloc): New declaration.
1809         * m4/stdlib_h.m4 (gl_STDLIB_H_DEFAULTS): Initialize
1810         GNULIB_REALLOC_POSIX and HAVE_REALLOC_POSIX.
1811         * modules/stdlib (stdlib.h): Substitute also GNULIB_REALLOC_POSIX
1812         and HAVE_REALLOC_POSIX.
1813
1814 2007-09-09  Bruno Haible  <bruno@clisp.org>
1815
1816         * modules/calloc-posix: New file.
1817         * modules/calloc (Depends-on): Add calloc-posix.
1818         * lib/calloc.c: Include errno.h.
1819         (rpl_calloc): Merge the requirements of a glibc-compatible calloc
1820         and a POSIX-compatible calloc into a single function. Set ENOMEM
1821         when returning NULL.
1822         * m4/calloc.m4 (gl_FUNC_CALLOC_POSIX): New macro.
1823         * doc/functions/calloc.texi: Mention the calloc-posix module.
1824         * lib/stdlib_.h (calloc): New declaration.
1825         * m4/stdlib_h.m4 (gl_STDLIB_H_DEFAULTS): Initialize
1826         GNULIB_CALLOC_POSIX and HAVE_CALLOC_POSIX.
1827         * modules/stdlib (stdlib.h): Substitute also GNULIB_CALLOC_POSIX
1828         and HAVE_CALLOC_POSIX.
1829
1830 2007-09-09  Bruno Haible  <bruno@clisp.org>
1831
1832         Allow for modules to show an arbitrary notice.
1833         * modules/TEMPLATE-EXTENDED: Add 'Notice' field.
1834         * gnulib-tool: New option --extract-notice.
1835         (func_usage): Document it.
1836         (sed_extract_prog): Update.
1837         (func_get_notice): New function.
1838         (func_modules_notice): New function.
1839         (func_import, func_create_testdir): Invoke it.
1840         Suggested by Jim Meyering.
1841
1842 2007-09-09  Bruno Haible  <bruno@clisp.org>
1843
1844         * gnulib-tool: New options --verbose, --quiet.
1845         (func_usage): Document them.
1846         (verbose): New variable.
1847         (func_execute_command): New function.
1848         (func_import): Don't show the module list and the file list if
1849         $verbose < 0.
1850         (func_create_testdir): Likewise. Use func_execute_command.
1851         (func_create_megatestdir): Use func_execute_command.
1852
1853 2007-09-08  Bruno Haible  <bruno@clisp.org>
1854
1855         * gnulib-tool (func_import): Prefer rsync over wget when available,
1856         for fetching the PO files.
1857
1858 2007-09-08  Bruno Haible  <bruno@clisp.org>
1859
1860         * posix-modules: New file. Portions copied from gnulib-tool.
1861         * doc/gnulib.texi (POSIX Substitutes Library): New chapter.
1862
1863 2007-09-08  Jim Meyering  <jim@meyering.net>
1864
1865         Rename __fpending.c -> fpending.c and __fpending.h -> fpending.h
1866         * lib/fpending.h: Rename from __fpending.h.
1867         * lib/fpending.c: Rename from __fpending.c.
1868         Include "fpending.h", not "__fpending.h".
1869         * lib/__fpending.h, lib/__fpending.c: Remove files.
1870         * modules/fpending (Files): Reflect new file names.
1871         * lib/close-stream.c: Include "fpending.h", not "__fpending.h".
1872
1873 2007-09-08  Bruno Haible  <bruno@clisp.org>
1874
1875         * m4/inttypes-h.m4: Remove stub file.
1876
1877 2007-09-07  Simon Josefsson  <simon@josefsson.org>
1878
1879         * doc/headers/stdint.texi: Discuss #include_next issue.
1880
1881 2007-09-06  Paul Eggert  <eggert@cs.ucla.edu>
1882
1883         * build-aux/bootstrap: Remove obsolete comment about wget --help.
1884
1885 2007-09-06  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
1886
1887         * m4/time_h.m4 (gl_CHECK_TYPE_STRUCT_TIMESPEC): Fix misspelling
1888         in variable name.
1889
1890 2007-09-03  Jim Meyering  <jim@meyering.net>
1891
1892         New module: git-version-gen.
1893         * modules/git-version-gen: New file.
1894
1895         Import changes from coreutils for bootstrap script.
1896
1897         * build-aux/bootstrap (WGET_COMMAND): Remove code to set this variable.
1898
1899         bootstrap: uses rsync to download the .po files
1900         * build-aux/bootstrap (po_download_command_format): New global.
1901         (download_po_files): Use rsync.
1902         (update_po_files): Don't remove .po files after download,
1903         so future rsync runs can take advantage of the copies.
1904
1905         * build-aux/bootstrap (gnulib_tool): Make sha1sum check quietly.
1906
1907         Solve the unnecessary-.po-file-regeneration problem once and for all.
1908         * build-aux/bootstrap (download_po_files): New function, renamed from
1909         get_translations.  Now, downloads, but doesn't update LINGUAS.
1910         (update_po_files): New function.
1911
1912         bootstrap: Ignore more.
1913         * build-aux/bootstrap (symlink_to_dir): Add a directory name like
1914         uniwidth to e.g., lib/.gitignore.
1915         (slurp): Handle the sys_stat_.h -> sys mapping, too.
1916
1917         * build-aux/bootstrap: New setting: vc_ignore.
1918         (insert_sorted_if_absent): Create $file if absent.
1919         Adapt to new, possibly empty, list: $vc_ignore.
1920
1921         bootstrap: generate more ignorable names
1922         * build-aux/bootstrap (slurp): When generating ignorable names,
1923         also map .sin to .sed, .gperf to .c, and .y to .c.
1924
1925 2007-09-03  Jim Meyering  <jim@meyering.net>
1926
1927         * build-aux/git-version-gen: New file, from coreutils.  For details, see
1928         http://git.sv.gnu.org/gitweb/?p=coreutils.git;a=commitdiff;h=bfe49f506
1929
1930 2007-09-02  Bruno Haible  <bruno@clisp.org>
1931
1932         Fix mis-recognition of 'mcs' on QNX 6.
1933         * m4/csharpcomp.m4 (gt_CSHARPCOMP): Test whether the "mcs --version"
1934         output contains the string "Mono".
1935         * lib/csharpcomp.c (compile_csharp_using_mono): Likewise.
1936         Reported by <kraai@ftbfs.org> at <https://savannah.gnu.org/bugs/?18337>.
1937
1938 2007-09-01  Bruno Haible  <bruno@clisp.org>
1939
1940         Fix collision between uniwidth/* and linebreak modules.
1941         * lib/linebreak.h (locale_charset, uc_width, u8_width, u16_width,
1942         u32_width): Remove declarations.
1943         * lib/linebreak.c: Include uniwidth.h, uniwidth/cjk.h, streq.h.
1944         (u32_mbtouc_unsafe, streq9, streq8, streq7, streq6, streq5, streq4,
1945         streq3, streq2, streq1, streq0): Remove functions.
1946         (STREQ): Remove macro.
1947         (is_cjk_encoding): Remove function.
1948         (nonspacing_table_data, nonspacing_table_ind): Remove constants.
1949         (uc_width, u8_width, u16_width, u32_width): Remove functions.
1950         * modules/linebreak (Depends-on): Add streq, uniwidth/width.
1951         * NEWS: Document the change.
1952
1953 2007-09-01  Bruno Haible  <bruno@clisp.org>
1954
1955         * lib/streq.h: Add double-inclusion guard.
1956
1957 2007-09-01  Karl Berry  <karl@gnu.org>
1958
1959         * MODULES.html.sh: Rename mreadlink_with_size to areadlink_with_size.
1960
1961 2007-08-28  Jim Meyering  <jim@meyering.net>
1962
1963         Rename mreadlink_with_size to areadlink_with_size.
1964         * NEWS: Document the change.
1965         * lib/mreadlink-with-size.c (mreadlink_with_size): Rename this to...
1966         * lib/areadlink-with-size.c (areadlink_with_size): ...this.
1967         * lib/mreadlink.h: Rename this to...
1968         * lib/areadlink.h: ...this.
1969         * modules/mreadlink-with-size: Rename this to...
1970         * modules/areadlink-with-size: ...this.
1971         * lib/canonicalize.c: Reflect the renaming.
1972         * modules/canonicalize: Likewise.
1973
1974 2007-08-26  Bruno Haible  <bruno@clisp.org>
1975
1976         * gnulib-tool (func_import): When deciding which files to remove,
1977         consider also dangling symbolic links.
1978         Reported by Eric Blake.
1979
1980 2007-08-26  Bruno Haible  <bruno@clisp.org>
1981
1982         * gnulib-tool (func_ln_if_changed): Use "test -h", not "test -L".
1983
1984 2007-08-23  Simon Josefsson  <simon@josefsson.org>
1985
1986         * lib/readline.c: Don't include getline.h, the prototype is now
1987         found in stdio.h.
1988
1989 2007-08-23  Jim Meyering  <jim@meyering.net>
1990
1991         Getdelim touchup.
1992         * lib/getdelim.c (getdelim): Don't bother to save/restore errno
1993         around the funlockfile call, since funlockfile never sets errno.
1994         Don't set errno upon failed realloc.
1995
1996 2007-08-22  Eric Blake  <ebb9@byu.net>
1997
1998         Getline touchups.
1999         * lib/getdelim.c (getdelim): Revert regression that required *n to
2000         be 0 when *lineptr is NULL.  Preserve errno across funlockfile.
2001         * m4/getdelim.m4 (gl_FUNC_GETDELIM): Check for declaration of
2002         getdelim, rather than whether implementation is missing.
2003         * m4/getline.m4 (gl_FUNC_GETLINE): Likewise for getline.
2004         * lib/stdio_.h (getline): Also declare if replacement is
2005         required.
2006         * doc/functions/getdelim.texi: New file.
2007         * doc/functions/getline.texi: Likewise.
2008         * doc/gnulib.texi (Function Substitutes): Add new files.
2009         Reported by Bruno Haible.
2010
2011 2007-08-22  Ludovic Courtès  <ludo@gnu.org>
2012
2013         * users.txt: Add Guile.
2014
2015 2007-08-22  Eric Blake  <ebb9@byu.net>
2016
2017         * tests/test-getdelim.c (main): Use remove, not unlink.
2018         * tests/test-getline.c (main): Likewise.
2019
2020         Move getline and getdelim into stdio.h, per POSIX 200x.
2021         * modules/getline (Files): Remove getline.h.
2022         (Depends-on): Add stdio.
2023         (configure.ac): Add module indicator.
2024         * modules/getdelim (Files): Remove getdelim.h.
2025         (Depends-on): Add stdio.
2026         (configure.ac): Add module indicator.
2027         * modules/stdio (Makefile.am): Work with new indicators.
2028         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Add new defaults.
2029         * m4/getdelim.m4 (gl_FUNC_GETDELIM): Work with stdio needs.
2030         * m4/getline.m4 (gl_FUNC_GETLINE): Likewise.
2031         * lib/getdelim.h: Delete.
2032         * lib/getline.h: Delete.
2033         * lib/stdio_.h (getdelim, getline): Declare.
2034         * modules/getdelim-tests: New module.
2035         * modules/getline-tests: Likewise.
2036         * tests/test-getdelim.c: New file.
2037         * tests/test-getline.c: Likewise.
2038         * NEWS: Document the change.
2039         * lib/getline.c: Update choice of header.
2040         * lib/csharpcomp.c: Likewise.
2041         * lib/getpass.c: Likewise.
2042         * lib/javacomp.c: Likewise.
2043         * lib/javaversion.c: Likewise.
2044         * lib/yesno.c: Likewise.
2045         * lib/getdelim.c: Likewise.
2046         (getdelim): Set errno on failure, and avoid memory leak.
2047
2048 2007-08-19  Bruno Haible  <bruno@clisp.org>
2049
2050         * modules/closein (Depends-on): Add freadahead.
2051         * lib/closein.c: Include freadahead.h.
2052         (close_stdin): Skip the fseeko and fflush calls if freadahead(stdin)
2053         is zero.
2054
2055 2007-08-19  Bruno Haible  <bruno@clisp.org>
2056
2057         * modules/freadahead-tests: New file.
2058         * tests/test-freadahead.sh: New file.
2059         * tests/test-freadahead.c: New file.
2060
2061         * modules/freadahead: New file.
2062         * lib/freadahead.h: New file.
2063         * lib/freadahead.c: New file.
2064         * MODULES.html.sh (File stream based Input/Output): Add freadahead,
2065         fbufmode, fpurge, freadable, fwritable.
2066
2067 2007-08-19  Eric Blake  <ebb9@byu.net>
2068
2069         Test yesno in combination with closein.
2070         * lib/yesno.c (yesno): Document use of stdin.
2071         * modules/yesno-tests (Files): New module.
2072         * tests/test-yesno.c (main): New file.
2073         * tests/test-yesno.sh: Likewise.
2074
2075 2007-08-19  Bruno Haible  <bruno@clisp.org>
2076
2077         * lib/fbufmode.c (fbufmode): Add tentative support for Solaris/AMD64.
2078         * lib/fseeko.c (rpl_fseeko): Likewise.
2079         * lib/fseterr.c (fseterr): Likewise.
2080
2081 2007-08-19  Bruno Haible  <bruno@clisp.org>
2082
2083         * tests/test-lseek.c (main): Disable a test for BeOS.
2084         * doc/functions/lseek.texi: Document the BeOS bug.
2085
2086 2007-08-19  Bruno Haible  <bruno@clisp.org>
2087             Eric Blake  <ebb9@byu.net>
2088
2089         * lib/lseek.c: Include <sys/stat.h>.
2090         (rpl_lseek): Add workaround code also for Unix platforms.
2091         Needed for BeOS.
2092         * m4/lseek.m4 (gl_FUNC_LSEEK): When cross-compiling, fail on BeOS.
2093         * doc/functions/lseek.texi: Document BeOS definiency.
2094
2095 2007-08-18  Bruno Haible  <bruno@clisp.org>
2096
2097         * modules/fstrcmp-tests: New file.
2098         * tests/test-fstrcmp.c: New file.
2099
2100 2007-08-18  Bruno Haible  <bruno@clisp.org>
2101
2102         * modules/fstrcmp: New file, from GNU gettext with modifications.
2103         * lib/fstrcmp.h: New file, from GNU gettext.
2104         * lib/fstrcmp.c: New file, from GNU gettext.
2105         * MODULES.html.sh (String handling): Add fstrcmp.
2106
2107 2007-08-18  Bruno Haible  <bruno@clisp.org>
2108
2109         * lib/diffseq.h (struct context): Change type of 'heuristic' field to
2110         'bool'.
2111         (diag, compareseq): Remove const from the ctxt argument.
2112         (USE_HEURISTIC): Undefine at the end.
2113
2114 2007-08-18  Jim Meyering  <jim@meyering.net>
2115
2116         New file: lib/idcache.h
2117         * NEWS: Mention the addition.
2118         * modules/idcache (Files): Add lib/idcache.h
2119         * lib/idcache.c: Include "idcache.h".
2120         Don't include <sys/types.h>.
2121         Add a FIXME comment.
2122         Move file-scoped "static" declarations to the top.
2123         * lib/idcache.h: New file.  Include <sys/types.h> here, instead.
2124
2125 2007-08-17  Bruno Haible  <bruno@clisp.org>
2126         and Paul Eggert  <eggert@cs.ucla.edu>
2127
2128         * MODULES.html.sh: Add diffseq.
2129         * modules/diffseq: New file.
2130         * lib/diffseq.h: New file, from GNU gettext with a few minor changes,
2131         extracted from GNU gettext's fstrcmp.c and GNU diff's analyze.c.
2132
2133 2007-08-15  Paul Eggert  <eggert@cs.ucla.edu>
2134
2135         Import changes from coreutils for bootstrap script.
2136
2137         2007-07-21  Paul Eggert  <eggert@cs.ucla.edu>
2138
2139         * build-aux/bootstrap (slurp): Work even in environments where
2140         "ls" defaults to "ls -A".  Put in a FIXME, though, since the
2141         current code does not slurp files whose names start with ".", and
2142         this looks like it might be a troublesome area.
2143
2144         2007-07-11  Jim Meyering  <jim@meyering.net>
2145
2146         If there's a GPL vN copyright comment, require that N == 3.
2147
2148         2007-07-08  Jim Meyering  <jim@meyering.net>
2149
2150         Run the coreutils-specific code only if tests/Makefile.am.in exists.
2151         * build-aux/bootstrap (mam_template): Move definition out of loop.
2152
2153         Create symlinks for gl/{lib,m4}/*, just as for gnulib/{lib,m4}/*.
2154
2155         * build-aux/bootstrap (symlink_to_dir): Rename function from
2156         symlink_to_gnulib.  Add a directory parameter.  Update all
2157         callers.
2158         (cp_mark_as_generated): Also check for -- and link to -- files in
2159         gl/.
2160
2161         2007-07-08  Jim Meyering  <jim@meyering.net>
2162
2163         Adapt to deeper hierarchy in gnulib.
2164         * build-aux/bootstrap (symlink_to_dir): If the destination
2165         directory doesn't exist, create it. This is required at least for
2166         "lib/uniwidth/cjk.h".
2167
2168         2007-05-15  Jim Meyering  <jim@meyering.net>
2169
2170         * build-aux/bootstrap: Now that generated Makefile.am files
2171         are no longer under version control, they must be created at
2172         bootstrap time.
2173
2174 2007-08-14  Ben Pfaff  <blp@gnu.org>
2175
2176         * lib/count-one-bits.h: Add comments.  From Bruno Haible.
2177
2178 2007-08-14  Paul Eggert  <eggert@cs.ucla.edu>
2179
2180         * lib/count-one-bits.h: Don't include <limits.h>; no longer needed
2181         given the changes below.
2182         (COUNT_ONE_BITS): Use 'verify' rather than 'verify_true'.  Work
2183         even on hosts that have padding bits beyond the supported 64.
2184
2185 2007-08-10  Paul Eggert  <eggert@cs.ucla.edu>
2186
2187         * NEWS: In xstrtol, remove STRTOL_FATAL_ERROR and add xstrtol_fatal.
2188         * lib/xstrtol.h: Don't include exitfail.h; that's now internal to
2189         xstrtol.c.  Include getopt.h, since xstrtol_fatal's signature
2190         depends on it.
2191         (xstrtol_error): Remove.
2192         (xstrtol_fatal): New decl, replacing the functionality of xstrtol_error
2193         but with a different signature.
2194         (ATTRIBUTE_NORETURN, __attribute__): New macros.
2195         * lib/xstrtol-error.c: Include exitfail.h.
2196         (xstrtol_fatal): New function, with a different signature from the
2197         old xstrtol_error, so that the caller need not worry about passing
2198         in an exit status, or about storage management of the option argument.
2199         (xstrtol_error): Now a static function.  Redo signature to
2200         implement xstrtol_fatal.  Output the correct number of hyphens in
2201         front of the option so that the caller need not worry about
2202         storage management.
2203         (N_): New macro.
2204         (_): Remove; not used now.
2205         * modules/xstrtol: Depend on getopt.
2206         * tests/test-xstrtol.c (main): Use new xstrtol_error function instead
2207         of old STRTOL_FATAL_ERROR macro.
2208         * tests/test-xstrtol.sh (t-xstrtol.xo): Adjust to match new behavior
2209         of test program.
2210         * tests/test-xstrtoimax.sh (t-xstrtoimax.xo): Likewise.
2211         * tests/test-xstrtoumax.sh (t-xstrtoumax.xo): Likewise.
2212
2213 2007-08-08  Eric Blake  <ebb9@byu.net>
2214
2215         * lib/xstrtol-error.c: Add missing include.
2216
2217         Move xstrtol messages into gnulib domain, when --pobase is used.
2218         * lib/xstrtol.h (_STRTOL_ERROR): Move messages out of macro...
2219         * lib/xstrtol-error.c (xstrtol_error): ...into new file.
2220         * modules/xstrtol (Files): Distribute new file.
2221         * m4/xstrtol.m4 (gl_XSTRTOL): Build new file.
2222         * lib/xstrtol.c (TESTING_XSTRTO): Move tests...
2223         * tests/test-xstrtol.c: ...into new file.
2224         * tests/test-xstrtoul.c: Also test xstrtoul.
2225         * tests/test-xstrtoimax.c: Also test xstrtoimax.
2226         * tests/test-xstrtoumax.c: Also test xstrtoumax.
2227         * tests/test-xstrtol.sh: Drive the tests.
2228         * tests/test-xstrtoimax.sh: Likewise.
2229         * tests/test-xstrtoumax.sh: Likewise.
2230         * modules/xstrtol-tests: New module.
2231         * modules/xstrtoimax-tests: Likewise.
2232         * modules/xstrtoumax-tests: Likewise.
2233
2234 2007-08-08  Jim Meyering  <jim@meyering.net>
2235
2236         New function: mfile_name_concat.
2237         * lib/filenamecat.c (mfile_name_concat): New function, just like
2238         file_name_concat, but return NULL upon failure rather than exiting
2239         with a diagnostic.
2240         * lib/filenamecat.h: Declare it.
2241
2242 2007-08-07  Bruno Haible  <bruno@clisp.org>
2243
2244         * m4/inttypes.m4 (gl_INTTYPES_H): Use GL_TRIGGER_STDC_LIMIT_MACROS
2245         instead of __STDC_LIMIT_MACROS_TRIGGER. This avoids a redefinition
2246         warning from gcc.
2247         Reported by Eric Blake.
2248
2249 2007-08-07  Simon Josefsson  <simon@josefsson.org>
2250
2251         * modules/crypto/arctwo (License): Use the synonymous term "LGPLv2+".
2252         * modules/crypto/arcfour (License): Likewise.
2253         * modules/crypto/des-tests (License): Likewise.
2254         * modules/crypto/gc-arctwo-tests (License): Likewise.
2255         * modules/crypto/gc-des-tests (License): Likewise.
2256         * modules/crypto/gc-hmac-md5-tests (License): Likewise.
2257         * modules/crypto/gc-hmac-sha1-tests (License): Likewise.
2258         * modules/crypto/gc-md2-tests (License): Likewise.
2259         * modules/crypto/gc-md4-tests (License): Likewise.
2260         * modules/crypto/gc-md5-tests (License): Likewise.
2261         * modules/crypto/gc-pbkdf2-sha1-tests (License): Likewise.
2262         * modules/crypto/gc-rijndael-tests (License): Likewise.
2263         * modules/crypto/gc-sha1-tests (License): Likewise.
2264         * modules/crypto/gc-tests (License): Likewise.
2265         * modules/crypto/hmac-md5 (License): Likewise.
2266         * modules/crypto/hmac-sha1 (License): Likewise.
2267         * modules/crypto/md2-tests (License): Likewise.
2268         * modules/crypto/md4-tests (License): Likewise.
2269         * modules/crypto/md5 (License): Likewise.
2270         * modules/crypto/rijndael (License): Likewise.
2271         * modules/crypto/sha1 (License): Likewise.
2272         * modules/memxor (License): Likewise.
2273
2274 2007-08-06  Paul Eggert  <eggert@cs.ucla.edu>
2275         and Bruno Haible  <bruno@clisp.org>
2276
2277         * NEWS: Describe interface changes to human, xstrtol.
2278         * lib/human.h: Include <xstrtol.h>.
2279         (human_options): Return enum strtol_error, not int.  Remove
2280         bool arg; take int * instead.
2281         * lib/human.c: Don't include "gettext.h".
2282         (_): Remove; no longer used.
2283         Don't include <xstrtol.h>, since human.h does it.
2284         (human_options): Adjust to abovementioned interface changes.
2285         Do not report error to stderr; that's now the caller's
2286         responsibility.
2287         * lib/xstrtol.c (main) [defined TESTING_XSTRTO]: Adjust to
2288         interface change.
2289         * lib/xstrtol.h (_STRTOL_ERROR): Take Option, Arg rather than
2290         Str, Argument_type_string.  All uses changed.  Put " argument"
2291         in diagnostics to make them clearer.  Change wording of suffix
2292         message for clarity.
2293         (STRTOL_FATAL_ERROR): Take Option, Arg rather than Str,
2294         Argument_type_string.
2295         (STRTOL_FATAL_WARN): Remove; no longer used.
2296         * modules/human (Depends-on): Remove gettext-h.
2297
2298 2007-08-06  Simon Josefsson  <simon@josefsson.org>
2299
2300         * build-aux/maint.mk, build-aux/GNUmakefile: Relicense to GPLv3+.
2301
2302 2007-07-31  Bruno Haible  <bruno@clisp.org>
2303
2304         * m4/stdint.m4 (gl_STDINT_H): Test whether WCHAR_MIN and WCHAR_MAX
2305         are defined by <stdint.h> (as opposed to <wchar.h>, as on Dragonfly).
2306         Reported by Joerg Sonnenberger <joerg@britannica.bec.de>.
2307
2308 2007-07-31  Bruno Haible  <bruno@clisp.org>
2309
2310         * lib/fflush.c (rpl_fflush): On BSD systems, use the __SNPT flag.
2311         Suggested by Joerg Sonnenberger <joerg@britannica.bec.de>.
2312
2313 2007-07-30  Bruno Haible  <bruno@clisp.org>
2314
2315         * modules/base64 (License): Use the synonymous term "LGPLv2+".
2316         * modules/c-ctype (License): Likewise.
2317         * modules/c-strcase (License): Likewise.
2318         * modules/check-version (License): Likewise.
2319         * modules/iconv (License): Likewise.
2320         * modules/iconv_open (License): Likewise.
2321         * modules/read-file (License): Likewise.
2322         * modules/striconv (License): Likewise.
2323         * modules/strverscmp (License): Likewise.
2324         * modules/vasprintf (License): Likewise.
2325         * modules/crypto/des (License): Likewise.
2326         * modules/crypto/gc (License): Likewise.
2327         * modules/crypto/gc-arcfour (License): Likewise.
2328         * modules/crypto/gc-arctwo (License): Likewise.
2329         * modules/crypto/gc-des (License): Likewise.
2330         * modules/crypto/gc-hmac-md5 (License): Likewise.
2331         * modules/crypto/gc-hmac-sha1 (License): Likewise.
2332         * modules/crypto/gc-md2 (License): Likewise.
2333         * modules/crypto/gc-md4 (License): Likewise.
2334         * modules/crypto/gc-md5 (License): Likewise.
2335         * modules/crypto/gc-pbkdf2-sha1 (License): Likewise.
2336         * modules/crypto/gc-random (License): Likewise.
2337         * modules/crypto/gc-rijndael (License): Likewise.
2338         * modules/crypto/gc-sha1 (License): Likewise.
2339         * modules/crypto/md2 (License): Likewise.
2340         * modules/crypto/md4 (License): Likewise.
2341
2342 2007-07-30  Jim Meyering  <jim@meyering.net>
2343
2344         * lib/fts.c (fts_read): Upon failure to chdir into a subdirectory,
2345         set fts_info to FTS_DNR, not to FTS_ERR, so that the caller knows
2346         it has valid stat data.  This bug would cause du not to count the
2347         sizes of inaccessible directories.
2348         Patch by Bryan Mason <bmason@redhat.com>, via Jose Maria Plans
2349         in <http://bugzilla.redhat.com/250077>.
2350
2351 2007-07-25  Peter O'Gorman  <peter@pogma.com>
2352             Bruno Haible  <bruno@clisp.org>
2353
2354         * m4/include_next.m4 (gl_INCLUDE_NEXT): Test whether #include_next
2355         really works. Needed because AIX 4.3 "xlc -E" doesn't understand
2356         #include_next, gives a diagnostic about it, but reports no error in
2357         the exit code.
2358         Reported by Gary V. Vaughan <gary@thewrittenword.com>.
2359
2360 2007-07-24  Ben Pfaff  <blp@gnu.org>
2361
2362         Improve name: "count-one-bits" is better than "popcount".
2363         * MODULES.html.sh: Update name.
2364         * lib/popcount.h: Renamed lib/count-one-bits.h.
2365         (popcount): Renamed count_one_bits.
2366         (popcountl): Renamed count_one_bits_l.
2367         (popcountll): Renamed count_one_bits_ll.
2368         * m4/popcount.m4: Renamed m4/count-one-bits.m4.
2369         * modules/popcount: Renamed module/count-one-bits.
2370         * modules/popcount-tests: Renamed module/count-one-bits-tests.
2371         * tests/test-popcount.c: Renamed tests/test-count-one-bits.c.
2372
2373 2007-07-23  Ben Pfaff  <blp@gnu.org>
2374
2375         * lib/popcount.h (popcount32): Reduce size of constants, to allow
2376         better code generation, and add U to large constants to avoid
2377         warnings, in non-GCC case.
2378         Suggested by Bruno Haible.
2379
2380 2007-07-23  Ben Pfaff  <blp@gnu.org>
2381
2382         * lib/popcount.h: Use verify_true instead of if...abort.
2383         * modules/popcount: Depend on verify module.
2384         Suggested by Jim Meyering.
2385
2386 2007-07-23  Bruno Haible  <bruno@clisp.org>
2387
2388         * gnulib-tool (func_import): Create a .cvsignore file also when the
2389         directory is not yet in CVS but the toplevel directory is. When
2390         creating a .cvsignore file, add ".deps" and ".dirstamp" to it.
2391         Reported by Karl Berry.
2392
2393 2007-07-22  Ben Pfaff  <blp@gnu.org>
2394
2395         * lib/popcount.h: Use faster, branchless algorithm for non-GCC
2396         case.
2397         Suggested by Eric Blake.
2398
2399 2007-07-22  Ben Pfaff  <blp@gnu.org>
2400
2401         New module: popcount.
2402         * MODULES.html.sh: Add popcount.
2403         * modules/popcount: New file.
2404         * modules/popcount-tests: New file.
2405         * tests/test-popcount.c: New file.
2406         * lib/popcount.h: New file.
2407         * m4/popcount.m4: New file.
2408
2409 2007-07-22  Paul Eggert  <eggert@cs.ucla.edu>
2410
2411         * build-aux/announce-gen: Update to GPLv3.
2412
2413         * build-aux/config.guess: Update from config.
2414
2415 2007-07-21  Bruno Haible  <bruno@clisp.org>
2416
2417         * lib/error.c (_) [ENABLE_NLS]: Define to gettext.
2418         * lib/verror.c (_) [ENABLE_NLS]: Likewise.
2419
2420 2007-07-20  Jim Meyering  <jim@meyering.net>
2421
2422         * check-module: Diagnose a self-dependency.
2423
2424 2007-07-19  Bruno Haible  <bruno@clisp.org>
2425
2426         * gnulib-tool (func_import): Don't abort if pobase or po_domain is
2427         empty.
2428         Reported by Eric Blake.
2429
2430 2007-07-18  Bruno Haible  <bruno@clisp.org>
2431
2432         * gnulib-tool: New options --po-base, --po-domain.
2433         (func_usage): Document them.
2434         (pobase, po_domain): New variables.
2435         (func_emit_lib_Makefile_am): Augment AM_CPPFLAGS, defining
2436         DEFAULT_TEXT_DOMAIN.
2437         (func_emit_po_Makevars, func_emit_po_POTFILES_in): New functions.
2438         (func_import): Consider pobase and po_domain. Create a po/ directory.
2439         (func_create_testdir): Set pobase and po_domain to empty.
2440         * build-aux/po/Makefile.in.in: New file, from GNU gettext 0.16.1.
2441         * build-aux/po/remove-potcdate.sin: New file, from GNU gettext 0.16.1.
2442
2443 2007-07-18  Bruno Haible  <bruno@clisp.org>
2444
2445         * gnulib-tool (func_get_automake_snippet): Synthesize also an
2446         EXTRA_DIST augmentation for files in build-aux/.
2447
2448 2007-07-16  Bruno Haible  <bruno@clisp.org>
2449
2450         * modules/lseek (License): Use the synonymous term "LGPLv2+".
2451         * modules/getdelim (License): Likewise.
2452
2453 2007-07-16  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
2454
2455         * modules/arpa_inet (License): Use the synonymous term LGPLv2+.
2456         * modules/d-type (License): Likewise.
2457         * modules/extensions (License): Likewise.
2458         * modules/fnmatch (License): Likewise.
2459         * modules/fseeko (License): Likewise.
2460         * modules/getaddrinfo (License): Likewise.
2461         * modules/getline (License): Likewise.
2462         * modules/getlogin_r (License): Likewise.
2463         * modules/getpass (License): Likewise.
2464         * modules/gettimeofday (License): Likewise.
2465         * modules/glob (License): Likewise.
2466         * modules/inet_ntop (License): Likewise.
2467         * modules/malloc (License): Likewise.
2468         * modules/malloca (License): Likewise.
2469         * modules/memmem (License): Likewise.
2470         * modules/mempcpy (License): Likewise.
2471         * modules/memset (License): Likewise.
2472         * modules/minmax (License): Likewise.
2473         * modules/mktime (License): Likewise.
2474         * modules/netinet_in (License): Likewise.
2475         * modules/pathmax (License): Likewise.
2476         * modules/poll (License): Likewise.
2477         * modules/regex (License): Likewise.
2478         * modules/snprintf (License): Likewise.
2479         * modules/stdbool (License): Likewise.
2480         * modules/stdint (License): Likewise.
2481         * modules/stdio (License): Likewise.
2482         * modules/strcase (License): Likewise.
2483         * modules/strcasestr (License): Likewise.
2484         * modules/strdup (License): Likewise.
2485         * modules/string (License): Likewise.
2486         * modules/strndup (License): Likewise.
2487         * modules/strnlen (License): Likewise.
2488         * modules/strpbrk (License): Likewise.
2489         * modules/strptime (License): Likewise.
2490         * modules/strsep (License): Likewise.
2491         * modules/sys_select (License): Likewise.
2492         * modules/sys_socket (License): Likewise.
2493         * modules/sys_stat (License): Likewise.
2494         * modules/sys_time (License): Likewise.
2495         * modules/time (License): Likewise.
2496         * modules/time_r (License): Likewise.
2497         * modules/timegm (License): Likewise.
2498         * modules/unistd (License): Likewise.
2499         * modules/vsnprintf (License): Likewise.
2500         * modules/wctype (License): Likewise.
2501
2502 2007-07-16  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
2503
2504         * modules/argz (License): LGPLv2+.
2505
2506 2007-07-15  Karl Berry  <karl@gnu.org>
2507
2508         * doc/gnulib.texi: revise node structure per new fdl.texi.
2509
2510 2007-07-14  Bruno Haible  <bruno@clisp.org>
2511
2512         * lib/uniname/gen-uninames.lisp (main): Emit a "do not edit" line to
2513         the output file.
2514         * lib/uniname/uninames.h: Regenerated.
2515
2516 2007-07-14  Karl Berry  <karl@gnu.org>
2517
2518         * doc/*gpl*.texi, doc/fdl.texi: new versions, consistently
2519         omitting sectioning and index commands.
2520
2521 2007-07-13  Bruno Haible  <bruno@clisp.org>
2522
2523         New gnulib-tool option --more-symlinks.
2524         * gnulib-tool (func_usage): Document --more-symlinks.
2525         (do_copyrights): New variable.
2526         Recognize option --more-symlinks.
2527         (func_import): Don't add a copyright notice transform to
2528         sed_transform_lib_file if do_copyrights is empty.
2529
2530 2007-07-13  Bruno Haible  <bruno@clisp.org>
2531
2532         * lib/vasnprintf.c (decimal_point_char): Define also if
2533         (NEED_PRINTF_LONG_DOUBLE || NEED_PRINTF_INFINITE_DOUBLE)
2534         && !NEED_PRINTF_DIRECTIVE_A.
2535         Reported by Clemens Koller <clemens.koller@anagramm.de> via
2536         Gary V. Vaughan <gary@gnu.org>.
2537
2538 2007-07-13  Paul Eggert  <eggert@cs.ucla.edu>
2539
2540         * lib/inttypes_.h: Undo previous change, since it was fixed
2541         in a different way in the 2007-07-02 fix to m4/inttypes.m4.
2542
2543 2007-07-13  Bruno Haible  <bruno@clisp.org>
2544
2545         * lib/stdint_.h: Fix typo: _GL_JUST_INCLUDE_SYSTEM_INTTYPES_H was
2546         misspelled as _GL_JUST_INCLUDE_ABSOLUTE_INTTYPES_H.
2547
2548 2007-07-13  Jim Meyering  <jim@meyering.net>
2549
2550         df: Don't fail for Tru64's "file-on-file mount".
2551         * m4/fsusage.m4 (gl_FSUSAGE): Reject Tru64's buggy statvfs,
2552         so we fall through and use statfs instead.  Details here:
2553         <http://thread.gmane.org/gmane.comp.gnu.coreutils.bugs/10878>
2554         Reported by Albert Chin.
2555
2556 2007-07-13  Bruno Haible  <bruno@clisp.org>
2557
2558         * modules/alloca-opt (License): Use the synonymous term "LGPLv2+".
2559         * modules/configmake (License): Likewise.
2560         * modules/gettext (License): Likewise.
2561         * modules/gettext-h (License): Likewise.
2562         * modules/include_next (License): Likewise.
2563         * modules/link-warning (License): Likewise.
2564         * modules/localcharset (License): Likewise.
2565         * modules/localename (License): Likewise.
2566         * modules/lock (License): Likewise.
2567         * modules/relocatable-lib-lgpl (License): Likewise.
2568         * modules/size_max (License): Likewise.
2569         * modules/vasnprintf (License): Likewise.
2570         * modules/wchar (License): Likewise.
2571         * modules/xsize (License): Likewise.
2572
2573 2007-07-13  Bruno Haible  <bruno@clisp.org>
2574
2575         * gnulib-tool (func_import): Treat LGPLv2 as synonymous to LGPL.
2576         (func_create_testdir): Handle copying terms "GPLv2+" and "LGPLv2+".
2577
2578 2007-07-12  Bruno Haible  <bruno@clisp.org>
2579
2580         * doc/gnulib-intro.texi (Copyright): Clarify the license abbreviations
2581         in the modules files.
2582
2583 2007-07-11  Karl Berry  <karl@gnu.org>
2584
2585         * MODULES.html.sh (func_module): use
2586          sed -e '\|^'"${includefile}"'$|d'
2587          instead of /.../d, to avoid errors on $includefile's containing /.
2588
2589 2007-07-10  Sergey Poznyakoff  <gray@gnu.org.ua>
2590
2591         * gnulib-tool (func_import): Avoid duplication of --avoid
2592         statements
2593         (func_dest_tmpfilename,func_create_testdir): Translate `-' in file
2594         names to `_' in variable names.
2595
2596 2007-07-10  Eric Blake  <ebb9@byu.net>
2597
2598         * lib/version-etc.c (version_etc_va): Default to GPLv3+.
2599         * NEWS: Document this change.
2600
2601 2007-07-08  Bruno Haible  <bruno@clisp.org>
2602
2603         Update to Unicode 5.0.
2604         * lib/uniwidth/width.c (nonspacing_table_data): Add U+00AD,
2605         U+0350..U+035F, U+05A2, U+05BA, U+05C5, U+05C7, U+0600..U+0603,
2606         U+0610..U+0615, U+0656..U+065E, U+07EB..U+07F3, U+0A01, U+0AE2..U+0AE3,
2607         U+0CBC. Remove U+0CBF, U+0CC6. Add U+0CE2..U+0CE3, U+135F,
2608         U+17B4..U+17B5, U+17DD. Remove U+180E. Add U+1920..U+1922,
2609         U+1927..U+192B, U+1932, U+1939..U+193B, U+1A17..U+1A18, U+1B00..U+1B03,
2610         U+1B34, U+1B36..U+1B3A, U+1B3C, U+1B42, U+1B6B..U+1B73, U+1DC0..U+1DCA,
2611         U+1DFE..U+1DFF, U+20EB..U+20EF, U+A802, U+A806, U+A80B, U+A825..U+A826,
2612         U+10A01..U+10A03, U+10A05..U+10A06, U+10A0C..U+10A0F, U+10A38..U+10A3A,
2613         U+10A3F, U+1D242..U+1D244.
2614         (nonspacing_table_ind): Update.
2615         (uc_width): Assign width 0 to U+E0100..U+E01EF. Assign width 1 to
2616         U+4DC0..U+4DFF. Assign width 2 to U+2329..U+232A, U+FE10..U+FE1F.
2617
2618 2007-07-08  Bruno Haible  <bruno@clisp.org>
2619
2620         Update to Unicode 5.0.
2621         * lib/uniname/gen-uninames.lisp (main): Add the range 0x12xxx to the
2622         code transform. Extend the name index field of unicode_name_to_code and
2623         unicode_code_to_name from 16 to 24 bits.
2624         * lib/uniname/uniname.c (unicode_character_name,
2625         unicode_name_character): Add the range 0x12xxx to the code transform.
2626         * lib/uniname/uninames.h: Regenerated.
2627         * tests/uniname/UnicodeDataNames.txt: Update to Unicode 5.0.
2628
2629 2007-07-07  Bruno Haible  <bruno@clisp.org>
2630
2631         * modules/wcwidth-tests: New file.
2632         * tests/test-wcwidth.c: New file.
2633
2634         Work around MacOS X wcwidth() bug.
2635         * m4/wcwidth.m4 (gl_FUNC_WCWIDTH): Test against MacOS X 10.3 bug.
2636         * lib/wcwidth.c: Include localcharset.h, streq.h, uniwidth.h.
2637         (rpl_wcwidth): Special-case the UTF-8 locales. Fall back to the
2638         original wcwidth in non-UTF-8 locales.
2639         * modules/wcwidth (Depends-on): Add localcharset, streq,
2640         uniwidth/width.
2641         * doc/functions/wcwidth.texi: Update.
2642
2643 2007-07-07  Bruno Haible  <bruno@clisp.org>
2644
2645         * lib/wchar_.h: Include the GL_LINK_WARNING macro.
2646         (wcwidth): New declaration.
2647         * m4/wchar.m4 (gl_WCHAR_MODULE_INDICATOR, gl_WCHAR_H_DEFAULTS): New
2648         macros.
2649         (gl_WCHAR_H): Require gl_WCHAR_H_DEFAULTS. Don't set WCHAR_H to empty
2650         here. Prepare for creating <wchar.h> unconditionally.
2651         * modules/wchar (Depends-on): Add link-warning.
2652         (Makefile.am): Substitute also GNULIB_WCWIDTH, HAVE_DECL_WCWIDTH,
2653         REPLACE_WCWIDTH, and GL_LINK_WARNING.
2654         * lib/wcwidth.h: Remove file.
2655         * m4/wcwidth.m4 (gl_FUNC_WCWIDTH): Require gl_WCHAR_H_DEFAULTS. Set
2656         HAVE_DECL_WCWIDTH, REPLACE_WCWIDTH, WCHAR_H.
2657         * modules/wcwidth (Files): Remove lib/wcwidth.h.
2658         (configure.ac): Invoke gl_WCHAR_MODULE_INDICATOR.
2659         (Include): Replace wcwidth.h with <wchar.h>.
2660         * lib/wcwidth.c: Include <wchar.h> instead of wcwidth.h.
2661         * lib/mbchar.h: Don't include wcwidth.h.
2662         * lib/mbswidth.c: Likewise.
2663         * NEWS: Mention the change.
2664
2665 2007-07-07  Bruno Haible  <bruno@clisp.org>
2666
2667         * lib/wcwidth.c: New file, extracted from lib/wcwidth.h.
2668         * lib/wcwidth.h: Don't include wctype.h. Replace inline function
2669         definition with an external declaration.
2670         * m4/wcwidth.m4 (gl_FUNC_WCWIDTH): Use wcwidth.c when wcwidth is not
2671         defined as a function. Remove AC_C_INLINE requirement.
2672         * modules/wcwidth (Files): Add lib/wcwidth.c.
2673         (Makefile.am): Remove redundant statement.
2674
2675 2007-07-07  Bruno Haible  <bruno@clisp.org>
2676
2677         * MODULES.html.sh (Unicode string functions): Add the new modules.
2678
2679         * tests/uniwidth/test-u32-strwidth.c: New file.
2680         * modules/uniwidth/u32-strwidth-tests: New file.
2681
2682         * lib/uniwidth/u32-strwidth.c: New file.
2683         * modules/uniwidth/u32-strwidth: New file.
2684
2685         * tests/uniwidth/test-u16-strwidth.c: New file.
2686         * modules/uniwidth/u16-strwidth-tests: New file.
2687
2688         * lib/uniwidth/u16-strwidth.c: New file.
2689         * modules/uniwidth/u16-strwidth: New file.
2690
2691         * tests/uniwidth/test-u8-strwidth.c: New file.
2692         * modules/uniwidth/u8-strwidth-tests: New file.
2693
2694         * lib/uniwidth/u8-strwidth.c: New file.
2695         * modules/uniwidth/u8-strwidth: New file.
2696
2697         * tests/uniwidth/test-u32-width.c: New file.
2698         * modules/uniwidth/u32-width-tests: New file.
2699
2700         * lib/uniwidth/u32-width.c: New file.
2701         * modules/uniwidth/u32-width: New file.
2702
2703         * tests/uniwidth/test-u16-width.c: New file.
2704         * modules/uniwidth/u16-width-tests: New file.
2705
2706         * lib/uniwidth/u16-width.c: New file.
2707         * modules/uniwidth/u16-width: New file.
2708
2709         * tests/uniwidth/test-u8-width.c: New file.
2710         * modules/uniwidth/u8-width-tests: New file.
2711
2712         * lib/uniwidth/u8-width.c: New file.
2713         * modules/uniwidth/u8-width: New file.
2714
2715         * tests/uniwidth/test-uc_width.c: New file.
2716         * modules/uniwidth/width-tests: New file.
2717
2718         * lib/uniwidth/width.c: New file, from GNU libiconv.
2719         * lib/uniwidth/cjk.h: New file, from GNU libiconv.
2720         * modules/uniwidth/width: New file.
2721
2722         * lib/uniwidth.h: New file, from GNU libiconv.
2723         * modules/uniwidth/base: New file.
2724
2725 2007-07-07  Bruno Haible  <bruno@clisp.org>
2726
2727         * lib/uniname.h: New file, from GNU gettext.
2728         * lib/uniname/gen-uninames.lisp: New file, from GNU gettext.
2729         * lib/uniname/uninames.h: New file, from GNU gettext.
2730         * lib/uniname/uniname.c: New file, from GNU gettext.
2731         * tests/uniname/test-uninames.sh: New file.
2732         * tests/uniname/test-uninames.c: New file, from GNU gettext.
2733         * tests/uniname/UnicodeDataNames.txt: New file, from GNU gettext.
2734         * modules/uniname/base: New file.
2735         * modules/uniname/uniname: New file.
2736         * modules/uniname/uniname-tests: New file.
2737         * MODULES.html.sh (Unicode string functions): Add the new modules.
2738
2739 2007-07-06  Bruno Haible  <bruno@clisp.org>
2740
2741         * doc/Makefile (TEXI2HTML): Specify a --reference-limit.
2742
2743 2007-07-06  Bruno Haible  <bruno@clisp.org>
2744
2745         * lib/sys_time_.h: Use a recursion-safe inclusion guard rather than
2746         a split double-inclusion guard. Needed for cygwin, where <sys/time.h>
2747         includes <cygwin/sys_time.h> which includes <sys/select.h> which
2748         include <sys/time.h>.
2749         Reported by Eric Blake.
2750
2751 2007-07-06  Eric Blake  <ebb9@byu.net>
2752
2753         Fix testing canonicalize on cygwin.
2754         * modules/canonicalize-lgpl-tests (test_canonicalize_lgpl_LDADD):
2755         Revert patch from 2007-06-19.
2756         * tests/test-canonicalize-lgpl.c (main): Instead, skip test when
2757         canonicalize module is also in use.
2758         * tests/test-canonicalize.c: New file.
2759         * tests/test-canonicalize.sh: Likewise.
2760         * modules/canonicalize-tests: Likewise.
2761
2762 2007-07-06  Jim Meyering  <jim@meyering.net>
2763
2764         * lib/getugroups.c (getugroups): Detect getgrent failure.
2765         Adjust comment to reflect reality: this function may return -1.
2766
2767 2007-07-05  Sergey Poznyakoff  <gray@gnu.org.ua>
2768
2769         * build-aux/bootstrap (TP_URL,get_translations): Update to use
2770         the new TP address.
2771         (usage): Fix typo
2772         (gnulib_mk): New variable.
2773
2774 2007-07-05  Jim Meyering  <jim@meyering.net>
2775
2776         Don't let endgrent clobber errno, no matter how improbable.
2777         * lib/getugroups.c (getugroups): Save and restore errno around
2778         endgrent call.
2779
2780         Close the group DB even when failing with 2^31 or more members.
2781         * lib/getugroups.c (getugroups): Don't return without calling endgrent.
2782
2783 2007-07-04  Jim Meyering  <jim@meyering.net>
2784
2785         * lib/getugroups.h: New file.
2786         * lib/getugroups.c: Include "getugroups.h".
2787         Remove uses of "register" keyword.
2788         Move local variable, "cp", down into scope where used.
2789         Give "username" parameter the "const" attribute.
2790         * modules/getugroups (Files): Add lib/getugroups.h
2791
2792 2007-07-04  Karl Berry  <karl@gnu.org>
2793
2794         * MODULES.html.sh (func_all_modules): Complete rename of
2795         gpl/lgpl to gpl-2.0 and lgpl-2.1, and add gpl-3.0.
2796
2797 2007-07-02  Bruno Haible  <bruno@clisp.org>
2798
2799         * m4/inttypes.m4 (gl_INTTYPES_H): Define __STDC_LIMIT_MACROS in C++
2800         mode, when inttypes.h comes from gnulib.
2801         Reported by Joel E. Denny <jdenny@ces.clemson.edu>.
2802
2803 2007-07-02  Simon Josefsson  <simon@josefsson.org>
2804
2805         * NEWS: Mention lgpl module name change.
2806
2807         * modules/lgpl-2.1: Renamed from lgpl.
2808
2809         * NEWS: Mention gpl module name change.
2810
2811         * modules/gpl-3.0: New file, based on gpl-2.0.
2812
2813         * modules/gpl-2.0: Renamed from gpl.
2814
2815         * modules/gpl: Fix filename, doc/gpl.texi is now found at
2816         doc/gpl-2.0.texi.
2817
2818 2007-07-02  Paul Eggert  <eggert@cs.ucla.edu>
2819
2820         * lib/inttypes_.h [defined __cplusplus&&!defined __STDC_LIMIT_MACROS]:
2821         #define __STDC_LIMIT_MACROS temporarily while including
2822         <stdint.h>, so that __STDC_LIMIT_MACROS is defined.
2823         Problem reported by Joel E. Denny in
2824         <http://lists.gnu.org/archive/html/bug-gnulib/2007-07/msg00008.html>.
2825
2826 2007-07-01  Bruno Haible  <bruno@clisp.org>
2827
2828         * lib/unistdio.h: New file.
2829         * lib/unistdio/u-asnprintf.h: New file.
2830         * lib/unistdio/u-asprintf.h: New file.
2831         * lib/unistdio/u-printf-args.c: New file.
2832         * lib/unistdio/u-printf-args.h: New file.
2833         * lib/unistdio/u-printf-parse.h: New file.
2834         * lib/unistdio/u-snprintf.h: New file.
2835         * lib/unistdio/u-sprintf.h: New file.
2836         * lib/unistdio/u-vasprintf.h: New file.
2837         * lib/unistdio/u-vsnprintf.h: New file.
2838         * lib/unistdio/u-vsprintf.h: New file.
2839         * lib/unistdio/ulc-asnprintf.c: New file.
2840         * lib/unistdio/ulc-asprintf.c: New file.
2841         * lib/unistdio/ulc-fprintf.c: New file, based on lib/fprintf.c.
2842         * lib/unistdio/ulc-printf-parse.c: New file.
2843         * lib/unistdio/ulc-snprintf.c: New file.
2844         * lib/unistdio/ulc-sprintf.c: New file.
2845         * lib/unistdio/ulc-vasnprintf.c: New file.
2846         * lib/unistdio/ulc-vasprintf.c: New file.
2847         * lib/unistdio/ulc-vfprintf.c: New file, based on lib/vfprintf.c.
2848         * lib/unistdio/ulc-vsnprintf.c: New file.
2849         * lib/unistdio/ulc-vsprintf.c: New file.
2850         * lib/unistdio/u8-asnprintf.c: New file.
2851         * lib/unistdio/u8-asprintf.c: New file.
2852         * lib/unistdio/u8-printf-parse.c: New file.
2853         * lib/unistdio/u8-snprintf.c: New file.
2854         * lib/unistdio/u8-sprintf.c: New file.
2855         * lib/unistdio/u8-vasnprintf.c: New file.
2856         * lib/unistdio/u8-vasprintf.c: New file.
2857         * lib/unistdio/u8-vsnprintf.c: New file.
2858         * lib/unistdio/u8-vsprintf.c: New file.
2859         * lib/unistdio/u8-u8-asnprintf.c: New file.
2860         * lib/unistdio/u8-u8-asprintf.c: New file.
2861         * lib/unistdio/u8-u8-snprintf.c: New file.
2862         * lib/unistdio/u8-u8-sprintf.c: New file.
2863         * lib/unistdio/u8-u8-vasnprintf.c: New file.
2864         * lib/unistdio/u8-u8-vasprintf.c: New file.
2865         * lib/unistdio/u8-u8-vsnprintf.c: New file.
2866         * lib/unistdio/u8-u8-vsprintf.c: New file.
2867         * lib/unistdio/u16-asnprintf.c: New file.
2868         * lib/unistdio/u16-asprintf.c: New file.
2869         * lib/unistdio/u16-printf-parse.c: New file.
2870         * lib/unistdio/u16-snprintf.c: New file.
2871         * lib/unistdio/u16-sprintf.c: New file.
2872         * lib/unistdio/u16-vasnprintf.c: New file.
2873         * lib/unistdio/u16-vasprintf.c: New file.
2874         * lib/unistdio/u16-vsnprintf.c: New file.
2875         * lib/unistdio/u16-vsprintf.c: New file.
2876         * lib/unistdio/u16-u16-asnprintf.c: New file.
2877         * lib/unistdio/u16-u16-asprintf.c: New file.
2878         * lib/unistdio/u16-u16-snprintf.c: New file.
2879         * lib/unistdio/u16-u16-sprintf.c: New file.
2880         * lib/unistdio/u16-u16-vasnprintf.c: New file.
2881         * lib/unistdio/u16-u16-vasprintf.c: New file.
2882         * lib/unistdio/u16-u16-vsnprintf.c: New file.
2883         * lib/unistdio/u16-u16-vsprintf.c: New file.
2884         * lib/unistdio/u32-asnprintf.c: New file.
2885         * lib/unistdio/u32-asprintf.c: New file.
2886         * lib/unistdio/u32-printf-parse.c: New file.
2887         * lib/unistdio/u32-snprintf.c: New file.
2888         * lib/unistdio/u32-sprintf.c: New file.
2889         * lib/unistdio/u32-vasnprintf.c: New file.
2890         * lib/unistdio/u32-vasprintf.c: New file.
2891         * lib/unistdio/u32-vsnprintf.c: New file.
2892         * lib/unistdio/u32-vsprintf.c: New file.
2893         * lib/unistdio/u32-u32-asnprintf.c: New file.
2894         * lib/unistdio/u32-u32-asprintf.c: New file.
2895         * lib/unistdio/u32-u32-snprintf.c: New file.
2896         * lib/unistdio/u32-u32-sprintf.c: New file.
2897         * lib/unistdio/u32-u32-vasnprintf.c: New file.
2898         * lib/unistdio/u32-u32-vasprintf.c: New file.
2899         * lib/unistdio/u32-u32-vsnprintf.c: New file.
2900         * lib/unistdio/u32-u32-vsprintf.c: New file.
2901         * tests/unistdio/test-ulc-asnprintf1.c: New file.
2902         * tests/unistdio/test-ulc-asnprintf1.h: New file.
2903         * tests/unistdio/test-ulc-printf1.h: New file.
2904         * tests/unistdio/test-ulc-vasnprintf1.c: New file.
2905         * tests/unistdio/test-ulc-vasnprintf2.c: New file.
2906         * tests/unistdio/test-ulc-vasnprintf2.sh: New file.
2907         * tests/unistdio/test-ulc-vasnprintf3.c: New file.
2908         * tests/unistdio/test-ulc-vasnprintf3.sh: New file.
2909         * tests/unistdio/test-ulc-vasprintf1.c: New file.
2910         * tests/unistdio/test-ulc-vsnprintf1.c: New file.
2911         * tests/unistdio/test-ulc-vsprintf1.c: New file.
2912         * tests/unistdio/test-u8-asnprintf1.c: New file.
2913         * tests/unistdio/test-u8-asnprintf1.h: New file.
2914         * tests/unistdio/test-u8-printf1.h: New file.
2915         * tests/unistdio/test-u8-vasnprintf1.c: New file.
2916         * tests/unistdio/test-u8-vasnprintf2.c: New file.
2917         * tests/unistdio/test-u8-vasnprintf2.sh: New file.
2918         * tests/unistdio/test-u8-vasnprintf3.c: New file.
2919         * tests/unistdio/test-u8-vasnprintf3.sh: New file.
2920         * tests/unistdio/test-u8-vasprintf1.c: New file.
2921         * tests/unistdio/test-u8-vsnprintf1.c: New file.
2922         * tests/unistdio/test-u8-vsprintf1.c: New file.
2923         * tests/unistdio/test-u16-asnprintf1.c: New file.
2924         * tests/unistdio/test-u16-asnprintf1.h: New file.
2925         * tests/unistdio/test-u16-printf1.h: New file.
2926         * tests/unistdio/test-u16-vasnprintf1.c: New file.
2927         * tests/unistdio/test-u16-vasnprintf2.c: New file.
2928         * tests/unistdio/test-u16-vasnprintf2.sh: New file.
2929         * tests/unistdio/test-u16-vasnprintf3.c: New file.
2930         * tests/unistdio/test-u16-vasnprintf3.sh: New file.
2931         * tests/unistdio/test-u16-vasprintf1.c: New file.
2932         * tests/unistdio/test-u16-vsnprintf1.c: New file.
2933         * tests/unistdio/test-u16-vsprintf1.c: New file.
2934         * tests/unistdio/test-u32-asnprintf1.c: New file.
2935         * tests/unistdio/test-u32-asnprintf1.h: New file.
2936         * tests/unistdio/test-u32-printf1.h: New file.
2937         * tests/unistdio/test-u32-vasnprintf1.c: New file.
2938         * tests/unistdio/test-u32-vasnprintf2.c: New file.
2939         * tests/unistdio/test-u32-vasnprintf2.sh: New file.
2940         * tests/unistdio/test-u32-vasnprintf3.c: New file.
2941         * tests/unistdio/test-u32-vasnprintf3.sh: New file.
2942         * tests/unistdio/test-u32-vasprintf1.c: New file.
2943         * tests/unistdio/test-u32-vsnprintf1.c: New file.
2944         * tests/unistdio/test-u32-vsprintf1.c: New file.
2945         * modules/unistdio/base: New file.
2946         * modules/unistdio/u-printf-args: New file.
2947         * modules/unistdio/ulc-asnprintf: New file.
2948         * modules/unistdio/ulc-asprintf: New file.
2949         * modules/unistdio/ulc-fprintf: New file.
2950         * modules/unistdio/ulc-printf-parse: New file.
2951         * modules/unistdio/ulc-snprintf: New file.
2952         * modules/unistdio/ulc-sprintf: New file.
2953         * modules/unistdio/ulc-vasnprintf: New file.
2954         * modules/unistdio/ulc-vasprintf: New file.
2955         * modules/unistdio/ulc-vfprintf: New file.
2956         * modules/unistdio/ulc-vsnprintf: New file.
2957         * modules/unistdio/ulc-vsprintf: New file.
2958         * modules/unistdio/u8-asnprintf: New file.
2959         * modules/unistdio/u8-asprintf: New file.
2960         * modules/unistdio/u8-printf-parse: New file.
2961         * modules/unistdio/u8-snprintf: New file.
2962         * modules/unistdio/u8-sprintf: New file.
2963         * modules/unistdio/u8-vasnprintf: New file.
2964         * modules/unistdio/u8-vasprintf: New file.
2965         * modules/unistdio/u8-vsnprintf: New file.
2966         * modules/unistdio/u8-vsprintf: New file.
2967         * modules/unistdio/u8-u8-asnprintf: New file.
2968         * modules/unistdio/u8-u8-asprintf: New file.
2969         * modules/unistdio/u8-u8-snprintf: New file.
2970         * modules/unistdio/u8-u8-sprintf: New file.
2971         * modules/unistdio/u8-u8-vasnprintf: New file.
2972         * modules/unistdio/u8-u8-vasprintf: New file.
2973         * modules/unistdio/u8-u8-vsnprintf: New file.
2974         * modules/unistdio/u8-u8-vsprintf: New file.
2975         * modules/unistdio/u16-asnprintf: New file.
2976         * modules/unistdio/u16-asprintf: New file.
2977         * modules/unistdio/u16-printf-parse: New file.
2978         * modules/unistdio/u16-snprintf: New file.
2979         * modules/unistdio/u16-sprintf: New file.
2980         * modules/unistdio/u16-vasnprintf: New file.
2981         * modules/unistdio/u16-vasprintf: New file.
2982         * modules/unistdio/u16-vsnprintf: New file.
2983         * modules/unistdio/u16-vsprintf: New file.
2984         * modules/unistdio/u16-u16-asnprintf: New file.
2985         * modules/unistdio/u16-u16-asprintf: New file.
2986         * modules/unistdio/u16-u16-snprintf: New file.
2987         * modules/unistdio/u16-u16-sprintf: New file.
2988         * modules/unistdio/u16-u16-vasnprintf: New file.
2989         * modules/unistdio/u16-u16-vasprintf: New file.
2990         * modules/unistdio/u16-u16-vsnprintf: New file.
2991         * modules/unistdio/u16-u16-vsprintf: New file.
2992         * modules/unistdio/u32-asnprintf: New file.
2993         * modules/unistdio/u32-asprintf: New file.
2994         * modules/unistdio/u32-printf-parse: New file.
2995         * modules/unistdio/u32-snprintf: New file.
2996         * modules/unistdio/u32-sprintf: New file.
2997         * modules/unistdio/u32-vasnprintf: New file.
2998         * modules/unistdio/u32-vasprintf: New file.
2999         * modules/unistdio/u32-vsnprintf: New file.
3000         * modules/unistdio/u32-vsprintf: New file.
3001         * modules/unistdio/u32-u32-asnprintf: New file.
3002         * modules/unistdio/u32-u32-asprintf: New file.
3003         * modules/unistdio/u32-u32-snprintf: New file.
3004         * modules/unistdio/u32-u32-sprintf: New file.
3005         * modules/unistdio/u32-u32-vasnprintf: New file.
3006         * modules/unistdio/u32-u32-vasprintf: New file.
3007         * modules/unistdio/u32-u32-vsnprintf: New file.
3008         * modules/unistdio/u32-u32-vsprintf: New file.
3009         * modules/unistdio/ulc-asnprintf-tests: New file.
3010         * modules/unistdio/ulc-vasnprintf-tests: New file.
3011         * modules/unistdio/ulc-vasprintf-tests: New file.
3012         * modules/unistdio/ulc-vsnprintf-tests: New file.
3013         * modules/unistdio/ulc-vsprintf-tests: New file.
3014         * modules/unistdio/u8-asnprintf-tests: New file.
3015         * modules/unistdio/u8-vasnprintf-tests: New file.
3016         * modules/unistdio/u8-vasprintf-tests: New file.
3017         * modules/unistdio/u8-vsnprintf-tests: New file.
3018         * modules/unistdio/u8-vsprintf-tests: New file.
3019         * modules/unistdio/u16-asnprintf-tests: New file.
3020         * modules/unistdio/u16-vasnprintf-tests: New file.
3021         * modules/unistdio/u16-vasprintf-tests: New file.
3022         * modules/unistdio/u16-vsnprintf-tests: New file.
3023         * modules/unistdio/u16-vsprintf-tests: New file.
3024         * modules/unistdio/u32-asnprintf-tests: New file.
3025         * modules/unistdio/u32-vasnprintf-tests: New file.
3026         * modules/unistdio/u32-vasprintf-tests: New file.
3027         * modules/unistdio/u32-vsnprintf-tests: New file.
3028         * modules/unistdio/u32-vsprintf-tests: New file.
3029         * MODULES.html.sh (Unicode string functions): Add the new modules.
3030
3031 2007-07-01  Bruno Haible  <bruno@clisp.org>
3032
3033         * lib/sprintf.c (sprintf): Limit the available length estimation,
3034         to avoid address wraparound.
3035         * lib/vsprintf.c (vsprintf): Likewise.
3036         * modules/sprintf-posix (Dependencies): Add stdint.
3037         * modules/vsprintf-posix (Dependencies): Likewise.
3038
3039 2007-07-01  Bruno Haible  <bruno@clisp.org>
3040
3041         * gnulib-tool (self_abspathname): Determine PATH_SEPARATOR and handle
3042         Windows PATH as well. Conservative double-quoting. Comments.
3043
3044 2007-07-01  Bruno Haible  <bruno@clisp.org>
3045             Eric Blake  <ebb9@byu.net>
3046             Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
3047
3048         * gnulib-tool (self_abspathname): Fix algorithm to cope with
3049         empty components in $PATH, denoting '.'.
3050
3051 2007-07-01  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
3052
3053         * gnulib-tool: Fix indentation.
3054         (func_create_megatestdir): Likewise.
3055         Report by Bruno Haible.
3056
3057 2007-06-30  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
3058
3059         Sync from Automake.
3060         * build-aux/gnupload: Fix shell portability issues with for loops.
3061         Report by Karl Berry.
3062
3063 2007-06-29  Simon Josefsson  <simon@josefsson.org>
3064
3065         * build-aux/maint.mk (POURL): Use translationproject.org.
3066
3067 2007-06-27  Simon Josefsson  <simon@josefsson.org>
3068             Bruno Haible  <bruno@clisp.org>
3069
3070         * m4/getaddrinfo.m4 (gl_GETADDRINFO): Require gl_HEADER_SYS_SOCKET
3071         before using HAVE_WS2TCPIP_H. Check for gai_strerror through an
3072         explicit link test, rather than AC_REPLACE_FUNCS - for mingw.
3073         (gl_PREREQ_GETADDRINFO): Require gl_HEADER_SYS_SOCKET before using
3074         HAVE_SYS_SOCKET_H and HAVE_WS2TCPIP_H.
3075
3076 2007-06-27  Bruno Haible  <bruno@clisp.org>
3077
3078         * build-aux/config.rpath: Upgrade to libtool-1.5.24.
3079         * build-aux/config.libpath: Upgrade to libtool-1.5.24.
3080
3081 2007-06-26  Karl Berry  <karl@gnu.org>
3082
3083         * MODULES.html.sh: remove xreadlink-with-size.
3084
3085 2007-06-23  Paul Eggert  <eggert@cs.ucla.edu>
3086
3087         * lib/time_.h: Port to Solaris 8 with Sun Studio 11, using a
3088         method that I hope also handles the double-include problem noted
3089         by Bruno Haible in
3090         <http://lists.gnu.org/archive/html/bug-gnulib/2007-05/msg00186.html>.
3091
3092 2007-06-23  Bruno Haible  <bruno@clisp.org>
3093
3094         * gnulib-tool (func_emit_lib_Makefile_am, func_emit_tests_Makefile_am):
3095         Don't let the 'mostlyclean' target fail if the last subdirectory could
3096         not be removed.
3097         Reported by Karl Berry.
3098
3099 2007-06-23  Bruno Haible  <bruno@clisp.org>
3100
3101         * gnulib-tool (echo): Add a speedier workaround for ksh.
3102         * tests/test-echo.sh: Likewise.
3103
3104 2007-06-23  Bruno Haible  <bruno@clisp.org>
3105
3106         * gnulib-tool (echo): Add workarounds also for bash versions < 2.04.
3107         * tests/test-echo.sh: Likewise.
3108
3109 2007-06-23  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
3110
3111         * gnulib-tool (IFS): Initialize early, so we don't set it to
3112         empty later.
3113         (self_abspathname): Rewrite algorithm to set it, reindent.
3114         (func_emit_lib_Makefile_am, func_emit_tests_Makefile_am)
3115         (func_create_megatestdir): Merge some sed scripts.
3116
3117 2007-06-23  Paul Eggert  <eggert@cs.ucla.edu>
3118
3119         * m4/include_next.m4 (gl_CHECK_NEXT_HEADERS): Check some typos
3120         exposed by Sun Studio 11 cc on Solaris 8.
3121
3122 2007-06-22  Bruno Haible  <bruno@clisp.org>
3123
3124         * gnulib-tool (echo): Ensure the echo primitive does not interpret
3125         backslashes.
3126         * tests/test-echo.sh: New file.
3127
3128 2007-06-22  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
3129
3130         * gnulib-tool (func_add_or_update, func_create_testdir): Do not
3131         simplify `sed_replace_build_aux' scripts, they are portable but
3132         echoing them with `echo' is not.
3133         Report and analysis by Fernando Ferreira <fernando.prog@netcabo.pt>.
3134
3135 2007-06-21  Karl Berry  <karl@gnu.org>
3136
3137         * config/srclist.txt: guess we can't handle the licenses via
3138         srclist at the moment.
3139
3140 2007-06-21  Paul Eggert  <eggert@cs.ucla.edu>
3141
3142         * MODULES.html.sh: Add include_next.
3143         * modules/include_next: New file.
3144
3145 2007-06-20  Paul Eggert  <eggert@cs.ucla.edu>
3146
3147         * m4/include_next.m4 (gl_INCLUDE_NEXT): Define and AC_SUBST
3148         INCLUDE_NEXT.
3149         (gl_CHECK_NEXT_HEADERS): New macro.
3150         * m4/fcntl_h.m4 (gl_FCNTL_H): use gl_CHECK_NEXT_HEADERS instead of
3151         the obsolescent gl_ABSOLUTE_HEADER.
3152         * m4/fchdir.m4 (gl_FUNC_FCHDIR): Likewise.
3153         * m4/float_h.m4 (gl_FLOAT_H): Likewise.
3154         * m4/iconv_h.m4 (gl_ICONV_H): Likewise.
3155         * m4/inttypes.m4 (gl_INTTYPES_H): Likewise.
3156         * m4/locale_h.m4 (gl_LOCALE_H): Likewise.
3157         * m4/math_h.m4 (gl_MATH_H): Likewise.
3158         * m4/netinet_in_h.m4 (gl_HEADER_NETINET_IN): Likewise.
3159         * m4/search_h.m4 (gl_SEARCH_H): Likewise.
3160         * m4/signal_h.m4 (gl_SIGNAL_H): Likewise.
3161         * m4/stdint.m4 (gl_STDINT_H): Likewise.
3162         * m4/stdio_h.m4 (gl_STDIO_H): Likewise.
3163         * m4/stdlib_h.m4 (gl_STDLIB_H): Likewise.
3164         * m4/string_h.m4 (gl_HEADER_STRING_H_BODY): Likewise.
3165         * m4/sys_select_h.m4 (gl_HEADER_SYS_SELECT): Likewise.
3166         * m4/sys_socket_h.m4 (gl_HEADER_SYS_SOCKET): Likewise.
3167         * m4/sys_stat_h.m4 (gl_HEADER_SYS_STAT_H): Likewise.
3168         * m4/sys_time_h.m4 (gl_HEADER_SYS_TIME_H_BODY): Likewise.
3169         * m4/sysexits.m4 (gl_SYSEXITS): Likewise.
3170         * m4/time_h.m4 (gl_HEADER_TIME_H_BODY): Likewise.
3171         * m4/unistd_h.m4 (gl_UNISTD_H): Likewise.
3172         * m4/wchar.m4 (gl_WCHAR_H): Likewise.
3173         * m4/wctype.m4 (gl_WCTYPE_H): Likewise.
3174         * m4/inttypes.m4 (gl_INTTYPES_H): Define
3175         _GL_JUST_INCLUDE_SYSTEM_INTTYPES_H to avoid the problem of unclean
3176         builds, since ABSOLUTE_INTTYPES_H is no longer being defined.
3177         * m4/stdint.m4 (gl_STDINT_H): Likewise, for
3178         _GL_JUST_INCLUDE_SYSTEM_STDINT_H.
3179         * lib/fcntl_.h: Use @INCLUDE_NEXT@ @NEXT_foo_H@
3180         rather than @HAVE_INCLUDE_NEXT@ and @ABSOLUTE_foo_H@.
3181         * lib/float_.h: Likewise.
3182         * lib/inttypes_.h: Likewise.
3183         * lib/math_.h: Likewise.
3184         * lib/search_.h: Likewise.
3185         * lib/signal_.h: Likewise.
3186         * lib/stdint_.h: Likewise.
3187         * lib/stdio_.h: Likewise.
3188         * lib/stdlib_.h: Likewise.
3189         * lib/string_.h: Likewise.
3190         * lib/sys_stat_.h: Likewise.
3191         * lib/sys_time_.h: Likewise.
3192         * lib/time_.h: Likewise.
3193         * lib/unistd_.h: Likewise.
3194         * lib/wchar_.h: Likewise.
3195         * lib/wctype_.h: Likewise.
3196         * lib/dirent_.h: Likewise.
3197         * lib/iconv_.h: Likewise.
3198         * lib/locale_.h: Likewise.
3199         * lib/netinet_in_.h: Likewise.
3200         * lib/sys_select_.h: Likewise.
3201         * lib/sys_socket_.h: Likewise.
3202         * lib/sysexits_.h: Likewise.
3203         * modules/fcntl (Depends-on): Depend on include_next, not
3204         absolute_header.
3205         (Makefile): Substitute INCLUDE_NEXT and NEXT_foo_H, not
3206         HAVE_INCLUDE_NEXT and ABSOLUTE_foo_H.
3207         * modules/fchdir: Likewise.
3208         * modules/float: Likewise.
3209         * modules/iconv_open: Likewise.
3210         * modules/inttypes: Likewise.
3211         * modules/locale: Likewise.
3212         * modules/math: Likewise.
3213         * modules/netinet_in: Likewise.
3214         * modules/search: Likewise.
3215         * modules/signal: Likewise.
3216         * modules/stdint: Likewise.
3217         * modules/stdio: Likewise.
3218         * modules/stdlib: Likewise.
3219         * modules/string: Likewise.
3220         * modules/sys_select: Likewise.
3221         * modules/sys_socket: Likewise.
3222         * modules/sys_stat: Likewise.
3223         * modules/sys_time: Likewise.
3224         * modules/sysexits: Likewise.
3225         * modules/time: Likewise.
3226         * modules/unistd: Likewise.
3227         * modules/wchar: Likewise.
3228         * modules/wctype: Likewise.
3229         * modules/sys_stat: Change maintainer to "all".
3230         * modules/unistd: Likewise.
3231
3232 2007-06-20  Karl Berry  <karl@gnu.org>
3233
3234         * config/srclist.txt: track www changes in license files.
3235
3236 2007-06-20  Sergey Poznyakoff  <gray@gnu.org.ua>
3237
3238         * build-aux/bootstrap: Remove stray dot.
3239         Make sure build_aux settings are honored when linking
3240         gnulib_extra_files.
3241
3242 2007-06-19  Eric Blake  <ebb9@byu.net>
3243
3244         * modules/canonicalize-lgpl-tests (test_canonicalize_lgpl_LDADD):
3245         Allow compilation on cygwin.
3246
3247 2007-06-19  Jim Meyering  <jim@meyering.net>
3248
3249         xreadlink-with-size: Remove module.  No longer used.
3250         Ex-callers now use xreadlink or mreadlink-with-size.
3251         * modules/xreadlink-with-size: Remove module.
3252         * lib/xreadlink-with-size.c: Remove file.
3253         * lib/xreadlink.h (xreadlink_with_size): Remove prototype.
3254         (xreadlink): Remove inaccurate comment.  The one in xreadlink.c,
3255         just before the function definition *is* accurate.
3256
3257         Eliminate one way canonicalize_filename_mode could exit.
3258         * lib/canonicalize.c (canonicalize_filename_mode):
3259         Use mreadlink_with_size, not xreadlink_with_size.
3260
3261 2007-06-18  Paul Eggert  <eggert@cs.ucla.edu>
3262
3263         Detect porting problems to FreeBSD/arm, which has time_t wider than
3264         long int.  Original problem reported for GNU diff by Xin Li in
3265         <http://lists.gnu.org/archive/html/bug-gnu-utils/2007-06/msg00091.html>.
3266         * modules/getdate (Depends-on): Add intprops, verify.
3267         * lib/getdate.y: Include intprops.h, verify.h.  Verify that time_t
3268         is an integer type no wider than long int.
3269
3270 2007-06-18  Jim Meyering  <jim@meyering.net>
3271
3272         New module: mreadlink-with-size.
3273         * MODULES.html.sh: Add mreadlink-with-size.
3274         * modules/mreadlink-with-size: New module
3275         * modules/canonicalize (Depends-on): Depend on mreadlink-with-size,
3276         not xreadlink-with-size.
3277         * lib/mreadlink-with-size.c, lib/mreadlink.h: New files.
3278
3279 2007-06-16  Bruno Haible  <bruno@clisp.org>
3280
3281         * m4/frexpl.m4 (gl_FUNC_FREXPL_WORKS): Catch the MacOS X 10.4 bug.
3282         * doc/functions/frexpl.texi: Document the MacOS X 10.4 bug.
3283         Reported by Gary V. Vaughan <gary@gnu.org>.
3284
3285 2007-06-15  Paul Eggert  <eggert@cs.ucla.edu>
3286
3287         Revamp lchown so that it lives in unistd.h where it belongs.
3288         * lib/lchown.h: Remove.
3289         * lib/dirchownmod.c: Don't include lib/lchown.h.
3290         * lib/fchownat.c: Likewise.
3291         * lib/openat.c: Likewise.
3292         * lib/lchown.c (REPLACE_CHOWN): Define to 0 if the system chown
3293         does not follow symlinks.
3294         (EOPNOTSUPP): Define if not defined.
3295         * lib/unistd_.h (chown): Do not replace if REPLADE_CHOWN
3296         is defined to 0.
3297         (lchown): New decl.
3298         * m4/lchown.m4 (gl_FUNC_LCHOWN): Require gl_UNISTD_H_DEFAULTS.
3299         Do not check for lchown decl.
3300         Set REPLACE_LCHOWN.
3301         * m4/unistd_h.m4 (gl_UNISTD_H_DEFAULTS): Set GNULIB_LCHOWN,
3302         REPLACE_LCHOWN.
3303         * modules/chown: Make it clear it follows symlinks.
3304         * modules/lchown: Make it clear it doesn't follow symlinks.
3305         (Files): Remove lib/lchown.h
3306         (Depends-on): Add unistd.
3307         (configure.ac): Add gl_UNISTD_MODULE_INDICATOR([lchown]).
3308         (Include): Include <unistd.h>, not "lchown.h".
3309         * modules/unistd (unistd.h): Substitude GNULIB_LCHOWN and
3310         REPLACE_LCHOWN.
3311
3312 2007-06-15  Jim Meyering  <jim@meyering.net>
3313
3314         Change license (GPL to LGPL) of fsusage and dependents.
3315         * modules/fsusage (License): Change to LGPL.
3316         * modules/full-read (License): Likewise.
3317         * modules/full-write (License): Likewise.
3318         * modules/safe-read (License): Likewise.
3319         * modules/safe-write (License): Likewise.
3320
3321 2007-06-14  Ben Pfaff  <blp@gnu.org>
3322
3323         Missing part of allocsa -> malloca transition.
3324         * modules/relocatable-prog-wrapper: gl_ALLOCSA should be
3325         gl_MALLOCA.
3326
3327 2007-06-12  Bruno Haible  <bruno@clisp.org>
3328
3329         * m4/isnanl.m4 (gl_FUNC_ISNANL_WORKS): Guess no when cross-compiling
3330         to ia64, x86_64, i386.
3331         Reported by Eric Blake.
3332
3333 2007-06-12  Bruno Haible  <bruno@clisp.org>
3334
3335         * m4/printf.m4 (gl_PRINTF_INFINITE_LONG_DOUBLE): Guess no also when
3336         cross-compiling to x86_64.
3337
3338 2007-06-12  Paul Eggert  <eggert@cs.ucla.edu>
3339
3340         * m4/absolute-header.m4 (gl_ABSOLUTE_HEADER): Fix POSIX sed portability
3341         glitch reported by Ralf Wildenhues in
3342         <http://lists.gnu.org/archive/html/bug-gnulib/2007-06/msg00114.html>.
3343
3344         * m4/regex.m4 (gl_REGEX): Catch a bug with [[:alnum:]_-] reported by
3345         Vin Shelton.
3346
3347 2007-06-11  Bruno Haible  <bruno@clisp.org>
3348
3349         * lib/printf-args.c (PRINTF_FETCHARGS) [ENABLE_UNISTDIO]: Fix NULL
3350         replacement string.
3351         Reported by Eric Blake.
3352
3353 2007-06-10  Bruno Haible  <bruno@clisp.org>
3354
3355         Prepare vasnprintf code for use with Unicode strings.
3356         * lib/printf-args.h (PRINTF_FETCHARGS): New macro.
3357         (arg_type) [ENABLE_UNISTDIO]: Define TYPE_U8_STRING, TYPE_U16_STRING,
3358         TYPE_U32_STRING.
3359         (argument) [ENABLE_UNISTDIO]: Add a_u8_string, a_u16_string,
3360         a_u32_string variants.
3361         (PRINTF_FETCHARGS): Renamed from printf_fetchargs.
3362         * lib/printf-args.c: Don't include config.h and the specification
3363         header if PRINTF_FETCHARGS is already defined.
3364         (PRINTF_FETCHARGS): Renamed from printf_fetchargs.
3365         (PRINTF_FETCHARGS) [ENABLE_UNISTDIO]: Add code for TYPE_U8_STRING,
3366         TYPE_U16_STRING, TYPE_U32_STRING.
3367         * lib/printf-parse.h [ENABLE_UNISTDIO] (u8_directive, u8_directives,
3368         u16_directive, u16_directives, u32_directive, u32_directives): New
3369         types.
3370         (ulc_printf_parse, u8_printf_parse, u16_printf_parse, u32_printf_parse):
3371         New declarations.
3372         * lib/printf-parse.c: Don't include config.h and the specification
3373         header if PRINTF_PARSE is already defined. Eliminate the set of
3374         parameters for WIDE_CHAR_VERSION; the user of this file must provide
3375         them now. Include c-ctype.h.
3376         (PRINTF_PARSE) [ENABLE_UNISTDIO]: Add code implementing the 'U'
3377         directive and CHAR_T_ONLY_ASCII.
3378         * lib/vasnprintf.c: Don't include config.h and the specification header
3379         if VASNPRINTF is already defined.
3380         (DCHAR_IS_TCHAR, DCHAR_CPY): New macros.
3381         (VASNPRINTF): Use PRINTF_FETCHARGS instead of printf_fetchargs. Use
3382         DCHAR_CPY. Handle the case that DCHAR_T and FCHAR_T are not the same
3383         type. Handle the case that TCHAR_T and FCHAR_T are not of the same
3384         size. Handle the case that DCHAR_T and TCHAR_T are not the same type,
3385         add a conversion from TCHAR_T[] to DCHAR_T[], and rework the padding
3386         code accordingly.
3387         (VASNPRINTF) [ENABLE_UNISTDIO]: Implement the 'U' directive. Enable
3388         pad_ourselves also in this case, with the 'c' and 's' directives, and
3389         with a different notion of "width".
3390         * m4/vasnprintf.m4 (gl_PREREQ_VASNPRINTF_WITH_EXTRAS): New macros.
3391
3392 2007-06-10  Bruno Haible  <bruno@clisp.org>
3393
3394         * modules/unistr/u32-mbsnlen: New file.
3395         * lib/unistr/u32-mbsnlen.c: New file.
3396
3397         * modules/unistr/u16-mbsnlen: New file.
3398         * lib/unistr/u16-mbsnlen.c: New file.
3399
3400         * modules/unistr/u8-mbsnlen: New file.
3401         * lib/unistr/u8-mbsnlen.c: New file.
3402
3403         * lib/unistr.h (u8_mbsnlen, u16_mbsnlen, u32_mbsnlen): New
3404         declarations.
3405
3406 2007-06-10  Bruno Haible  <bruno@clisp.org>
3407
3408         * lib/string_.h (mbsnlen): New declaration.
3409         * lib/mbsnlen.c: New file.
3410         * m4/mbsnlen.m4: New file.
3411         * modules/mbsnlen: New file.
3412         * m4/string_h.m4 (gl_HEADER_STRING_H_DEFAULTS): Set GNULIB_MBSNLEN.
3413         * modules/string (string.h): Substitute GNULIB_MBSNLEN.
3414         * MODULES.html.sh (Internationalization functions): Add mbsnlen.
3415
3416 2007-06-10  Bruno Haible  <bruno@clisp.org>
3417
3418         * lib/mbslen.c: Include <stdlib.h>, needed for MB_CUR_MAX.
3419
3420 2007-06-10  Bruno Haible  <bruno@clisp.org>
3421
3422         * lib/mbiter.h: Include <stddef.h>, needed for ptrdiff_t.
3423         * lib/mbuiter.h: Likewise.
3424
3425 2007-06-10  Bruno Haible  <bruno@clisp.org>
3426
3427         * m4/vasnprintf.m4 (gl_PREREQ_VASNPRINTF): Check for _snprintf
3428         declaration.
3429
3430 2007-06-10  Karl Berry  <karl@gnu.org>
3431
3432         * config/srclist.txt: remove gettext entries, Bruno prefers
3433         to update individually.
3434
3435 2007-06-10  Bruno Haible  <bruno@clisp.org>
3436
3437         * lib/vasnprintf.c (VASNPRINTF) [!USE_SNPRINTF]: Remove variable
3438         'maxlen'. Ensure only length + width bytes are allocated, not
3439         length + 1 + width.
3440
3441 2007-06-09  Bruno Haible  <bruno@clisp.org>
3442
3443         * lib/vasnprintf.c (FCHAR_T, DCHAR_T, TCHAR_T): New macros.
3444         (CHAR_T): Remove macro.
3445         (VASNPRINTF): Update.
3446
3447 2007-06-09  Bruno Haible  <bruno@clisp.org>
3448
3449         * MODULES.html.sh (Unicode string functions): Add the new modules.
3450
3451         * modules/uniconv/u32-conv-to-enc: New file.
3452         * lib/uniconv/u32-conv-to-enc.c: New file.
3453         * modules/uniconv/u32-conv-to-enc-tests: New file.
3454         * tests/uniconv/test-u32-conv-to-enc.c: New file.
3455
3456         * modules/uniconv/u16-conv-to-enc: New file.
3457         * lib/uniconv/u16-conv-to-enc.c: New file.
3458         * lib/uniconv/u-conv-to-enc.h: New file.
3459         * modules/uniconv/u16-conv-to-enc-tests: New file.
3460         * tests/uniconv/test-u16-conv-to-enc.c: New file.
3461
3462         * modules/uniconv/u8-conv-to-enc: New file.
3463         * lib/uniconv/u8-conv-to-enc.c: New file.
3464         * modules/uniconv/u8-conv-to-enc-tests: New file.
3465         * tests/uniconv/test-u8-conv-to-enc.c: New file.
3466
3467         * lib/uniconv.h (u8_conv_to_encoding, u16_conv_to_encoding,
3468         u32_conv_to_encoding): New declarations.
3469
3470 2007-06-09  Bruno Haible  <bruno@clisp.org>
3471
3472         * tests/uniconv/test-u32-strconv-to-enc.c (main): Remove unused code.
3473
3474 2007-06-09  Bruno Haible  <bruno@clisp.org>
3475
3476         Rename 'allocsa' -> 'malloca', 'freesa' -> 'freea'.
3477         * modules/malloca: Renamed from modules/allocsa, updated.
3478         * lib/malloca.h: Renamed from lib/allocsa.h, updated.
3479         * lib/malloca.c: Renamed from lib/allocsa.c, updated.
3480         * lib/malloca.valgrind: Renamed from lib/allocsa.valgrind, updated.
3481         * m4/malloca.m4: Renamed from m4/allocsa.m4, updated.
3482         * modules/malloca-tests: Renamed from modules/allocsa-tests, updated.
3483         * tests/test-malloca.c: Renamed from tests/test-allocsa.c, updated.
3484         * modules/xmalloca: Renamed from modules/xallocsa, updated.
3485         * lib/xmalloca.h: Renamed from lib/xallocsa.h, updated.
3486         * lib/xmalloca.c: Renamed from lib/xallocsa.c, updated.
3487         * modules/c-strcasestr (Depends-on): Update.
3488         * lib/c-strcasestr.c: Update.
3489         * modules/c-strstr (Depends-on): Update.
3490         * lib/c-strstr.c: Update.
3491         * modules/canonicalize-lgpl (Depends-on): Update.
3492         * lib/canonicalize-lgpl.c: Update.
3493         * modules/clean-temp (Depends-on): Update.
3494         * lib/clean-temp.c: Update.
3495         * modules/csharpcomp (Depends-on): Update.
3496         * lib/csharpcomp.c: Update.
3497         * modules/csharpexec (Depends-on): Update.
3498         * lib/csharpexec.c: Update.
3499         * modules/javacomp (Depends-on): Update.
3500         * lib/javacomp.c: Update.
3501         * modules/javaexec (Depends-on): Update.
3502         * lib/javaexec.c: Update.
3503         * modules/mbscasestr (Depends-on): Update.
3504         * lib/mbscasestr.c: Update.
3505         * modules/mbsstr (Depends-on): Update.
3506         * lib/mbsstr.c: Update.
3507         * modules/setenv (Depends-on): Update.
3508         * lib/setenv.c: Update.
3509         * modules/strcasestr (Depends-on): Update.
3510         * lib/strcasestr.c: Update.
3511         * modules/striconveha (Depends-on): Update.
3512         * lib/striconveha.c: Update.
3513         * modules/relocatable-prog-wrapper (Files): Update.
3514         * lib/relocwrapper.c: Update.
3515         * build-aux/install-reloc: Update.
3516         * MODULES.html.sh (Memory management functions <stdlib.h>): Update.
3517
3518 2007-06-08  Bruno Haible  <bruno@clisp.org>
3519
3520         Port to uClibc.
3521         * lib/fbufmode.c (fbufmode): Add special code for uClibc.
3522         * lib/fpurge.c (fpurge): Likewise.
3523         * lib/freading.c (freading): Likewise.
3524         * lib/fseeko.c (rpl_fseeko): Likewise.
3525         * lib/fseterr.c (fseterr): Likewise.
3526         * lib/fwriting.c (fwriting): Likewise.
3527         * tests/test-fflush.c (main): Avoid a failure on uClibc.
3528
3529 2007-06-08  Bruno Haible  <bruno@clisp.org>
3530
3531         * m4/intlmacosx.m4: New file, extracted from gettext.m4.
3532         * m4/gettext.m4 (gt_INTL_MACOSX): Remove macro, moved to intlmacosx.m4.
3533         * modules/gettext (Files): Add m4/intlmacosx.m4.
3534
3535 2007-06-07  Bruno Haible  <bruno@clisp.org>
3536
3537         * modules/localename-tests: New file.
3538         * tests/test-localename.c: New file.
3539
3540         New module 'localename'.
3541         * lib/localename.h: New file.
3542         * lib/localename.c: New file, from GNU gettext.
3543         * m4/localename.m4: New file.
3544         * modules/localename: New file.
3545
3546 2007-06-07  Bruno Haible  <bruno@clisp.org>
3547
3548         Work around the lack of <wchar.h> on some builds of uClibc.
3549         * doc/headers/wchar.texi: Update.
3550         * lib/wchar_.h: Include <wchar.h> only if it exists.
3551         * m4/wchar.m4 (gl_WCHAR_H): Check for <wchar.h>. Set HAVE_WCHAR_H.
3552         * m4/stdint.m4 (gl_STDINT_H): Check for <wchar.h>.
3553         (gl_STDINT_TYPE_PROPERTIES): Don't try to include <wchar.h> if it
3554         doesn't exist.
3555         * modules/wchar (wchar.h): Substitute HAVE_WCHAR_H.
3556         * modules/mbfile (Depends-on): Add wchar.
3557         * modules/mbiter (Depends-on): Likewise.
3558         * modules/mbuiter (Depends-on): Likewise.
3559         Reported by Simon Josefsson.
3560
3561 2007-06-06  Paul Eggert  <eggert@cs.ucla.edu>
3562
3563         Work around problem reported by Steven M. Schweda in
3564         <http://lists.gnu.org/archive/html/bug-tar/2007-06/msg00002.html>:
3565         Tru64 5.1B with the Compaq compiler environment installed declares
3566         an 'isblank' function but does not define it in the C library.
3567         * lib/fnmatch.c (isblank): Check for HAVE_ISBLANK, too.
3568         * lib/regex_internal.h (isblank): Likewise.
3569         * m4/fnmatch.m4 (_AC_LIBOBJ_FNMATCH): Check for isblank existence.
3570         * m4/regex.m4 (gl_PREREQ_REGEX): Likewise.
3571
3572 2007-06-05  Bruno Haible  <bruno@clisp.org>
3573
3574         Fix *printf so that it recognizes non-IEEE numbers on i386, x86_64,
3575         ia64.
3576         * modules/printf-safe: New file.
3577         * modules/fprintf-posix (Depends-on): Add printf-safe.
3578         * modules/printf-posix (Depends-on): Likewise.
3579         * modules/snprintf-posix (Depends-on): Likewise.
3580         * modules/sprintf-posix (Depends-on): Likewise.
3581         * modules/vasnprintf-posix (Depends-on): Likewise.
3582         * modules/vasprintf-posix (Depends-on): Likewise.
3583         * modules/vfprintf-posix (Depends-on): Likewise.
3584         * modules/vprintf-posix (Depends-on): Likewise.
3585         * modules/vsnprintf-posix (Depends-on): Likewise.
3586         * modules/vsprintf-posix (Depends-on): Likewise.
3587         * m4/printf.m4 (gl_PRINTF_INFINITE_LONG_DOUBLE): Require
3588         AC_C_BIGENDIAN. Define CHECK_PRINTF_SAFE if printf-safe is used. Test
3589         non-IEEE numbers on i386, x86_64, ia64. When cross-compiling, guess
3590         "no" on i386, x86_64, ia64.
3591         * tests/test-snprintf-posix.h (LDBL80_WORDS): New macro.
3592         (test_function): Check result of %La, %Lf, %Le, %Lg on non-IEEE numbers
3593         on i386, x86_64, ia64.
3594         * tests/test-sprintf-posix.h (LDBL80_WORDS): New macro.
3595         (test_function): Check result of %La, %Lf, %Le, %Lg on non-IEEE numbers
3596         on i386, x86_64, ia64.
3597         * tests/test-vasnprintf-posix.c: Include float.h.
3598         (LDBL80_WORDS): New macro.
3599         (test_function): Check result of %La, %Lf, %Le, %Lg on non-IEEE numbers
3600         on i386, x86_64, ia64.
3601         * tests/test-vasprintf-posix.c: Include float.h.
3602         (LDBL80_WORDS): New macro.
3603         (test_function): Check result of %La, %Lf, %Le, %Lg on non-IEEE numbers
3604         on i386, x86_64, ia64.
3605         * tests/test-snprintf-posix.c: Include float.h.
3606         * tests/test-sprintf-posix.c: Likewise.
3607         * tests/test-vsnprintf-posix.c: Likewise.
3608         * tests/test-vsprintf-posix.c: Likewise.
3609
3610 2007-06-05  Bruno Haible  <bruno@clisp.org>
3611
3612         Fix isnanl so that it recognizes non-IEEE numbers on i386, x86_64, ia64.
3613         * m4/isnanl.m4 (gl_FUNC_ISNANL_WORKS): Require AC_C_BIGENDIAN. Test
3614         non-IEEE numbers on i386, x86_64, ia64.
3615         (gl_LONG_DOUBLE_EXPONENT_LOCATION): Require AC_C_BIGENDIAN.
3616         * lib/isnan.c (FUNC): Add special code for i386, x86_64, ia64.
3617         * tests/test-isnanl.h: Include float.h.
3618         (main): Check also non-IEEE numbers on i386, x86_64, ia64.
3619
3620 2007-06-05  Bruno Haible  <bruno@clisp.org>
3621
3622         * lib/vasnprintf.c (VASNPRINTF): Do the extra handling of NaN and Inf
3623         also the %a / %A. Handle the %a / %A code before this extra handling.
3624
3625 2007-06-05  Bruno Haible  <bruno@clisp.org>
3626
3627         * lib/vasnprintf.c [NEED_PRINTF_LONG_DOUBLE ||
3628         NEED_PRINTF_INFINITE_LONG_DOUBLE]: Include fpucw.h.
3629
3630 2007-06-05  Bruno Haible  <bruno@clisp.org>
3631
3632         * m4/vasnprintf.m4 (gl_PREREQ_VASNPRINTF_INFINITE_LONG_DOUBLE): Fix
3633         typo in variable name.
3634
3635 2007-06-05  Eric Blake  <ebb9@byu.net>
3636
3637         * m4/lseek.m4 (gl_FUNC_LSEEK): Work when cross-compiling.
3638         Reported by Simon Josefsson.
3639
3640 2007-06-04  Bruno Haible  <bruno@clisp.org>
3641
3642         Avoid test failures on some PowerPC platforms.
3643         * tests/test-printf-frexpl.c (MIN_NORMAL_EXP, MIN_SUBNORMAL_EXP):
3644         Define differently for PowerPC.
3645         * tests/test-frexpl.c (MIN_NORMAL_EXP): Likewise.
3646         Reported by Gary V. Vaughan <gary@gnu.org>.
3647
3648 2007-06-02  Bruno Haible  <bruno@clisp.org>
3649
3650         Fix test-stdint failure on FreeBSD/ia64.
3651         * m4/stdint.m4 (gl_STDINT_H): Check the values of PTRDIFF_MIN,
3652         PTRDIFF_MAX, SIG_ATOMIC_MIN, SIG_ATOMIC_MAX, SIZE_MAX, WCHAR_MIN,
3653         WCHAR_MAX, WINT_MIN, WINT_MAX entirely, not only for plausibility.
3654         * doc/headers/stdint.texi: Update.
3655
3656 2007-06-01  Bruno Haible  <bruno@clisp.org>
3657
3658         * tests/test-binary-io.c (main): Pass a third argument to open().
3659         Reported by Gary V. Vaughan <gary@gnu.org>.
3660
3661 2007-06-01  Bruno Haible  <bruno@clisp.org>
3662
3663         * doc/functions/frexpl.texi: Update for mingw.
3664
3665 2007-06-01  Bruno Haible  <bruno@clisp.org>
3666
3667         * tests/test-lseek.c (main): Disable test of errno for invalid third
3668         argument.
3669         * doc/functions/lseek.texi: Update.
3670         Reported by Gary V. Vaughan <gary@gnu.org>.
3671
3672 2007-05-28  Bruno Haible  <bruno@clisp.org>
3673
3674         * m4/intl.m4 (AM_INTL_SUBDIR): Substitute variables WOE32, WINDRES.
3675
3676 2007-05-31  Eric Blake  <ebb9@byu.net>
3677
3678         * m4/frexpl.m4 (gl_FUNC_FREXPL_WORKS): Guess no on mingw when
3679         cross compiling.
3680
3681 2007-05-30  Eric Blake  <ebb9@byu.net>
3682         and Bruno Haible  <bruno@clisp.org>
3683
3684         Work around mingw test failures exposed by m4-1.4.9b.
3685         * m4/stdint.m4 (gl_STDINT_H): Detect mingw bug.
3686         * tests/test-unistd.c: Disable uid_t and git_t tests for the
3687         moment.
3688
3689 2007-05-30  Bruno Haible  <bruno@clisp.org>
3690
3691         * tests/test-lseek.c: Explicitly close file descriptors 0 and 1 before
3692         assuming that they are closed. Needed on HP-UX 11.
3693
3694 2007-05-29  Bruno Haible  <bruno@clisp.org>
3695
3696         Fix a problem with #include_next.
3697         * lib/dirent_.h: Split the double-inclusion guard.
3698         * lib/fcntl_.h: Likewise.
3699         * lib/float_.h: Likewise.
3700         * lib/iconv_.h: Likewise.
3701         * lib/inttypes_.h: Likewise.
3702         * lib/locale_.h: Likewise.
3703         * lib/math_.h: Likewise.
3704         * lib/netinet_in_.h: Likewise.
3705         * lib/search_.h: Likewise.
3706         * lib/signal_.h: Likewise.
3707         * lib/stdint_.h: Likewise.
3708         * lib/stdio_.h: Likewise.
3709         * lib/stdlib_.h: Likewise.
3710         * lib/string_.h: Likewise.
3711         * lib/sys_select_.h: Likewise.
3712         * lib/sys_socket_.h: Likewise.
3713         * lib/sys_stat_.h: Likewise.
3714         * lib/sys_time_.h: Likewise.
3715         * lib/sysexits_.h: Likewise.
3716         * lib/time_.h: Likewise.
3717         * lib/unistd_.h: Likewise.
3718         * lib/wchar_.h: Likewise.
3719         * lib/wctype_.h: Likewise.
3720
3721 2007-05-29  Bruno Haible  <bruno@clisp.org>
3722
3723         * tests/test-unistd.c: Disable the tests for useconds_t and intptr_t
3724         for the moment.
3725
3726 2007-05-29  Bruno Haible  <bruno@clisp.org>
3727
3728         * m4/isnan.m4 (gl_DOUBLE_EXPONENT_LOCATION): Silence the AC_C_BIGENDIAN
3729         invocation.
3730         Reported by Eric Blake.
3731
3732 2007-05-29  Bruno Haible  <bruno@clisp.org>
3733
3734         * m4/isnanf.m4 (gl_FLOAT_EXPONENT_LOCATION): Fix typo in cross-
3735         compiling case.
3736
3737 2007-05-29  Eric Blake  <ebb9@byu.net>
3738             Bruno Haible  <bruno@clisp.org>
3739
3740         * m4/isnanf.m4 (gl_FUNC_ISNANF_NO_LIBM): Avoid syntax error on
3741         cross compiles.
3742
3743 2007-05-28  Eric Blake  <ebb9@byu.net>
3744
3745         * modules/closein-tests (test_closein_LDADD): Support test on
3746         cygwin with libtool.
3747
3748 2007-05-28  Bruno Haible  <bruno@clisp.org>
3749
3750         * tests/uniconv/test-u16-conv-from-enc.c: Remove #ifdef HAVE_CONFIG_H.
3751         * tests/uniconv/test-u16-strconv-from-enc.c: Likewise.
3752         * tests/uniconv/test-u16-strconv-to-enc.c: Likewise.
3753         * tests/uniconv/test-u32-conv-from-enc.c: Likewise.
3754         * tests/uniconv/test-u32-strconv-from-enc.c: Likewise.
3755         * tests/uniconv/test-u32-strconv-to-enc.c: Likewise.
3756         * tests/uniconv/test-u8-conv-from-enc.c: Likewise.
3757         * tests/uniconv/test-u8-strconv-from-enc.c: Likewise.
3758         * tests/uniconv/test-u8-strconv-to-enc.c: Likewise.
3759
3760 2007-05-28  Eric Blake  <ebb9@byu.net>
3761
3762         Unconditionally include <config.h> in unit tests.
3763         * tests/test-alloca-opt.c: Remove #ifdef HAVE_CONFIG_H.
3764         * tests/test-allocsa.c, tests/test-arcfour.c,
3765         tests/test-arctwo.c, tests/test-argmatch.c, tests/test-argp.c,
3766         tests/test-array_list.c, tests/test-array_oset.c,
3767         tests/test-atexit.c, test-avltree_list.c, test-avltree_oset.c,
3768         test-avltreehash_list.c, test-base64.c, test-binary-io.c,
3769         test-c-ctype.c, test-c-strcasecmp.c, test-c-strcasestr.c,
3770         test-c-strncasecmp.c, test-c-strstr.c, test-canonicalize-lgpl.c,
3771         test-carray_list.c, test-crc.c, test-des.c, test-dirname.c,
3772         test-fflush.c, test-fprintf-posix.c, test-gc-arcfour.c,
3773         test-gc-arctwo.c, test-gc-des.c, test-gc-hmac-md5.c,
3774         test-gc-hmac-sha1.c, test-gc-md2.c, test-gc-md4.c, test-gc-md5.c,
3775         test-gc-pbkdf2-sha1.c, test-gc-rijndael.c, test-gc-sha1.c,
3776         test-gc.c, test-getpass.c, test-hmac-md5.c, test-hmac-sha1.c,
3777         test-iconv.c, test-linked_list.c, test-linkedhash_list.c,
3778         test-lock.c, test-mbscasecmp.c, test-mbscasestr1.c,
3779         test-mbscasestr2.c, test-mbscasestr3.c, test-mbscasestr4.c,
3780         test-mbschr.c, test-mbscspn.c, test-mbsncasecmp.c, test-mbspbrk.c,
3781         test-mbspcasecmp.c, test-mbsrchr.c, test-mbsspn.c, test-mbsstr1.c,
3782         test-mbsstr2.c, test-mbsstr3.c, test-md2.c, test-md4.c,
3783         test-md5.c, test-memmem.c, test-printf-posix.c,
3784         test-rbtree_list.c, test-rbtree_oset.c, test-rbtreehash_list.c,
3785         test-read-file.c, test-rijndael.c, test-snprintf-posix.c,
3786         test-snprintf.c, test-sprintf-posix.c, test-stdint.c,
3787         test-strcasestr.c, test-striconv.c, test-striconveh.c,
3788         test-striconveha.c, test-tls.c, test-vasnprintf-posix.c,
3789         test-vasnprintf-posix2.c, test-vasnprintf.c,
3790         test-vasprintf-posix.c, test-vasprintf.c, test-verify.c,
3791         test-vfprintf-posix.c, test-vprintf-posix.c,
3792         test-vsnprintf-posix.c, test-vsnprintf.c, test-vsprintf-posix.c,
3793         test-xvasprintf.c: Likewise.
3794
3795 2007-05-28  Bruno Haible  <bruno@clisp.org>
3796
3797         * gnulib-tool (func_import): Remember the --with-tests command-line
3798         option through the macro gl_WITH_TESTS in the gnulib-cache.m4.
3799         Reported by Eric Blake.
3800
3801 2007-05-28  Bruno Haible  <bruno@clisp.org>
3802
3803         * modules/ftell-tests: New file.
3804         * tests/test-ftell.c: New file, based on tests/test-ftello.c.
3805         * tests/test-ftell.sh: New file, based on tests/test-ftello.sh.
3806
3807         * lib/ftell.c: New file.
3808         * modules/ftell: New file.
3809         * m4/ftell.m4: New file.
3810         * doc/functions/ftell.texi: Update.
3811         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Set also GNULIB_FTELL,
3812         REPLACE_FTELL.
3813         * lib/stdio_.h (rpl_ftell): New declaration.
3814         * modules/stdio (Makefile.am): Substitute also GNULIB_FTELL,
3815         REPLACE_FTELL.
3816
3817 2007-05-28  Eric Blake  <ebb9@byu.net>
3818
3819         * lib/allocsa.h (safe_alloca): Avoid compiler warning.
3820
3821 2007-05-28  Bruno Haible  <bruno@clisp.org>
3822
3823         * modules/fseek-tests: New file.
3824         * tests/test-fseek.c: New file, based on tests/test-fseeko.c.
3825         * tests/test-fseek.sh: New file, based on tests/test-fseeko.sh.
3826
3827         * lib/fseek.c: New file.
3828         * modules/fseek: New file.
3829         * m4/fseek.m4: New file.
3830         * doc/functions/fseek.texi: Update.
3831         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Set also GNULIB_FSEEK,
3832         REPLACE_FSEEK.
3833         * lib/stdio_.h (rpl_fseek): New declaration.
3834         * modules/stdio (Makefile.am): Substitute also GNULIB_FSEEK,
3835         REPLACE_FSEEK.
3836
3837 2007-05-28  Bruno Haible  <bruno@clisp.org>
3838
3839         * lib/stdio_.h (fflush): More comments.
3840
3841 2007-05-28  Bruno Haible  <bruno@clisp.org>
3842
3843         * m4/lseek.m4 (gl_FUNC_LSEEK): When not cross-compiling, perform a real
3844         runtime test.
3845
3846 2007-05-28  Eric Blake  <ebb9@byu.net>
3847
3848         Improve lseek module.
3849         * lib/lseek.c (rpl_lseek): Detect EBADF on mingw.
3850         * lib/unistd_.h (lseek): Scale back link warning message.
3851         * tests/test-lseek.c: Beef up test.
3852         * tests/test-lseek.sh: Exercise more facets of lseek.
3853         Reported by Bruno Haible.
3854
3855 2007-05-28  Bruno Haible  <bruno@clisp.org>
3856
3857         * tests/test-unistd.c: Test all the types that <unistd.h> is expected
3858         to define.
3859
3860 2007-05-27  Bruno Haible  <bruno@clisp.org>
3861
3862         * m4/iconv.m4 (AM_ICONV_LINK): Fix 2007-03-31 patch.
3863
3864 2007-05-27  Bruno Haible  <bruno@clisp.org>
3865
3866         * modules/openmp: New file.
3867         * m4/openmp.m4: New file, taken from autoconf's CVS with changes by
3868         Noah Misch.
3869
3870 2007-05-26  Bruno Haible  <bruno@clisp.org>
3871
3872         * modules/chdir-long (Depends-on): Add fchdir.
3873         * modules/chdir-safer (Depends-on): Likewise.
3874         * modules/fts (Depends-on): Likewise.
3875         * modules/fts-lgpl (Depends-on): Likewise.
3876         * modules/openat (Depends-on): Likewise.
3877         * modules/savewd (Depends-on): Likewise.
3878
3879 2007-05-24  Eric Blake  <ebb9@byu.net>
3880
3881         Fix lseek on mingw.
3882         * modules/lseek: New module.
3883         * m4/lseek.m4: New file.
3884         * lib/lseek.c: New file.
3885         * modules/lseek-tests: New file.
3886         * tests/test-lseek.c: New file.
3887         * tests/test-lseek.sh: New file.
3888         * MODULES.html.sh: Document lseek module.
3889         * modules/fflush (Depends-on): Add lseek, fseeko.
3890         * modules/fseeko (Depends-on): Likewise.
3891         * modules/ftello (Depends-on): Likewise.
3892         * m4/fseeko.m4 (gl_FUNC_FSEEKO): Replace fseek[o] if lseek is
3893         broken.
3894         * m4/ftello.m4 (gl_FUNC_FTELLO): Replace ftell[o] if lseek is
3895         broken.
3896         * m4/fflush.m4 (gl_REPLACE_FFLUSH): Trigger fseeko module.
3897         * lib/fseeko.c (rpl_fseeko): Quit early on non-seekable files.
3898         * lib/ftello.c (rpl_ftello): Likewise.
3899         * tests/test-fseeko.c (main): Test this.
3900         * tests/test-fseeko.sh: Likewise.
3901         * tests/test-ftello.c (main): Likewise.
3902         * tests/test-ftello.sh: Likewise.
3903         * lib/stdio_.h (fseek, ftell): Simplify, since missing fseeko now
3904         implies replacing fseek.
3905         * modules/stdio (Makefile.am): No longer need HAVE_FSEEKO,
3906         HAVE_FTELLO.
3907         * m4/unistd_h.m4 (gl_UNISTD_H_DEFAULTS): Add lseek info.
3908         * modules/unistd (Makefile.am): Likewise.
3909         * lib/unistd_.h (lseek): Declare a replacement.
3910         * doc/functions/lseek.texi (lseek): Document this fix.
3911         * doc/functions/fseek.texi (fseek): Likewise.
3912         * doc/functions/ftell.texi (ftell): Likewise.
3913
3914 2007-05-24  Bruno Haible  <bruno@clisp.org>
3915
3916         * tests/test-vasnprintf-posix.c (test_function): Allow up to 50 bytes
3917         in the printed representation of a NaN.
3918         * tests/test-vasprintf-posix.c (test_function): Likewise.
3919         * tests/test-snprintf-posix.h (test_function): Likewise.
3920         * tests/test-sprintf-posix.h (test_function): Likewise.
3921         Reported by Eric Blake.
3922
3923 2007-05-23  Eric Blake  <ebb9@byu.net>
3924
3925         Fix fseeko/ftello on cygwin 1.5.24.
3926         * doc/functions/fseeko.texi (fseeko): Document the fix.
3927         * doc/functions/ftello.texi (ftello): Document the fix.
3928         * doc/functions/stdin.texi (stdin): Document the cygwin bug.
3929         * doc/functions/stdout.text (stdout): New file.
3930         * doc/functions/stderr.text (stderr): New file.
3931         * doc/gnulib.texi (Function Substitutes): Use new files.
3932         * tests/test-fseeko.c (main): Check for broken fseeko on cygwin
3933         prior to 1.7.0.
3934         * tests/test-ftello.c (main): Likewise for ftello.
3935         * tests/test-fseeko.sh: New file.
3936         * tests/test-ftello.sh: New file.
3937         * modules/fseeko-tests (Makefile.am): Ensure test-fseeko is run
3938         with seekable stdin.
3939         * modules/ftello-tests (Makefile.am): Likewise for test-ftello.
3940         * m4/fseeko.m4 (gl_FUNC_FSEEKO): Detect the cygwin bug.
3941         (gl_REPLACE_FSEEKO): New macro.
3942         * m4/ftello.m4 (gl_FUNC_FTELLO, gl_REPLACE_FTELLO): Likewise.
3943         * modules/fseeko (Files): Distribute fseeko.c.
3944         * modules/ftello (Files): Distribute ftello.c.
3945         * lib/fseeko.c (rpl_fseeko) [__CYGWIN__]: Convert stdin to 64-bit
3946         mode.
3947         * lib/ftello.c (rpl_ftello): New file.
3948         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Allow replacement of
3949         fseeko, ftello.
3950         (gl_STDIN_LARGE_OFFSET): New macro.
3951         * modules/stdio (Makefile.am): Perform the replacement.
3952         * lib/stdio_.h (rpl_fseeko, rpl_ftello): Define when needed.
3953
3954 2007-05-23  Bruno Haible  <bruno@clisp.org>
3955
3956         * lib/stdio_.h (fseeko, ftello): Provide a link warning only if
3957         GNULIB_POSIXCHECK is defined.
3958
3959 2007-05-21  Bruno Haible  <bruno@clisp.org>
3960
3961         * m4/printf.m4 (gl_PRINTF_INFINITE, gl_PRINTF_INFINITE_LONG_DOUBLE):
3962         Check also the output for NaN arguments. When cross-compiling, guess
3963         no on IRIX.
3964         * lib/vasnprintf.c: Update comments.
3965         * tests/test-vasnprintf-posix.c (strisnan): New function.
3966         (test_function): Use it.
3967         * tests/test-vasprintf-posix.c (strisnan): New function.
3968         (test_function): Use it.
3969         * tests/test-snprintf-posix.h (strisnan): New function.
3970         (test_function): Use it.
3971         * tests/test-sprintf-posix.h (strisnan): New function.
3972         (test_function): Use it.
3973         Reported by Eric Blake.
3974
3975 2007-05-20  Bruno Haible  <bruno@clisp.org>
3976
3977         * m4/frexpl.m4 (gl_FUNC_FREXPL_WORKS): Add test for large finite
3978         numbers that fails on BeOS.
3979         * doc/functions/frexpl.texi: Update.
3980
3981 2007-05-20  Jim Meyering  <jim@meyering.net>
3982
3983         * NEWS: Mention the incompatible change (s/futimens/gl_futimens/)
3984         forced upon us by glibc-2.6.
3985
3986 2007-05-20  Bruno Haible  <bruno@clisp.org>
3987
3988         Fix *printf result for NaN, Inf on AIX, Solaris, OSF/1.
3989         * m4/printf.m4 (gl_PRINTF_INFINITE): Update cross-compiling guesses.
3990         (gl_PRINTF_INFINITE_LONG_DOUBLE): New macro.
3991         * lib/vasnprintf.c: Use NEED_PRINTF_INFINITE_DOUBLE instead of
3992         NEED_PRINTF_INFINITE.
3993         (is_infinitel): New function.
3994         (VASNPRINTF): Handle NEED_PRINTF_INFINITE_LONG_DOUBLE case.
3995         * m4/vasnprintf.m4 (gl_PREREQ_VASNPRINTF_INFINITE_DOUBLE): Renamed from
3996         gl_PREREQ_VASNPRINTF_INFINITE.
3997         (gl_PREREQ_VASNPRINTF_INFINITE_LONG_DOUBLE): New macro.
3998         * m4/fprintf-posix.m4 (gl_FUNC_FPRINTF_POSIX): Invoke
3999         gl_PRINTF_INFINITE_LONG_DOUBLE and test its result. Invoke
4000         gl_PREREQ_VASNPRINTF_INFINITE_DOUBLE and
4001         gl_PREREQ_VASNPRINTF_INFINITE_LONG_DOUBLE instead of
4002         gl_PREREQ_VASNPRINTF_INFINITE.
4003         * m4/snprintf-posix.m4 (gl_FUNC_SNPRINTF_POSIX): Likewise.
4004         * m4/sprintf-posix.m4 (gl_FUNC_SPRINTF_POSIX): Likewise.
4005         * m4/vasnprintf-posix.m4 (gl_FUNC_VASNPRINTF_POSIX): Likewise.
4006         * m4/vasprintf-posix.m4 (gl_FUNC_VASPRINTF_POSIX): Likewise.
4007         * m4/vfprintf-posix.m4 (gl_FUNC_VFPRINTF_POSIX): Likewise.
4008         * m4/vsnprintf-posix.m4 (gl_FUNC_VSNPRINTF_POSIX): Likewise.
4009         * m4/vsprintf-posix.m4 (gl_FUNC_VSPRINTF_POSIX): Likewise.
4010         * doc/functions/fprintf.texi: Update.
4011         * doc/functions/printf.texi: Update.
4012         * doc/functions/snprintf.texi: Update.
4013         * doc/functions/sprintf.texi: Update.
4014         * doc/functions/vfprintf.texi: Update.
4015         * doc/functions/vprintf.texi: Update.
4016         * doc/functions/vsnprintf.texi: Update.
4017         * doc/functions/vsprintf.texi: Update.
4018
4019 2007-05-20  Bruno Haible  <bruno@clisp.org>
4020
4021         * m4/frexpl.m4 (gl_FUNC_FREXPL_NO_LIBM): Set REPLACE_FREXPL if frexpl
4022         was not found in libc.
4023         * m4/printf-frexpl.m4 (gl_FUNC_PRINTF_FREXPL): Likewise.
4024
4025 2007-05-20  Bruno Haible  <bruno@clisp.org>
4026
4027         * tests/test-vasnprintf-posix.c (test_function): Allow NaN to be
4028         printed as "-nan" instead of "nan".
4029         * tests/test-vasprintf-posix.c (test_function): Likewise.
4030         * tests/test-snprintf-posix.h (test_function): Likewise.
4031         * tests/test-sprintf-posix.h (test_function): Likewise.
4032         Needed for HP-UX 11.
4033
4034 2007-05-20  Jim Meyering  <jim@meyering.net>
4035
4036         Fix buggy test for the fchownat-deref bug.
4037         * m4/openat.m4 (gl_FUNC_FCHOWNAT_DEREF_BUG): Create the dangling
4038         symlink required for the run-test.  Without it, this test would
4039         always declare that fchownat doesn't work, and client code would
4040         unnecessarily use the replacement function with fixed libc.
4041         (gl_FUNC_FCHOWNAT): Eliminate a variable that wasn't initialized.
4042         Reported by Greg Schafer.
4043
4044 2007-05-19  Bruno Haible  <bruno@clisp.org>
4045
4046         * m4/isnanf.m4 (gl_ISNANF_WORKS): New macro.
4047         (gl_FUNC_ISNANF_NO_LIBM): Invoke it.
4048         * lib/isnan.c (FUNC): Use run-time expressions for SGI compiler.
4049         Needed for IRIX 6.5 and Solaris 2.5.1.
4050
4051 2007-05-19  Bruno Haible  <bruno@clisp.org>
4052
4053         * tests/test-vasnprintf-posix.c (have_minus_zero): New function.
4054         (test_function): Skip tests involving -0.0 on platforms where
4055         -0.0 = 0.0.
4056         * tests/test-vasprintf-posix.c (have_minus_zero): New function.
4057         (test_function): Skip tests involving -0.0 on platforms where
4058         -0.0 = 0.0.
4059         * tests/test-snprintf-posix.h (have_minus_zero): New function.
4060         (test_function): Skip tests involving -0.0 on platforms where
4061         -0.0 = 0.0.
4062         * tests/test-sprintf-posix.h (have_minus_zero): New function.
4063         (test_function): Skip tests involving -0.0 on platforms where
4064         -0.0 = 0.0.
4065         * tests/test-fprintf-posix.h (test_function): Remove all -0.0 related
4066         tests.
4067         * tests/test-printf-posix.h (test_function): Likewise.
4068         * tests/test-printf-posix.output: Remove all -0.0 related results.
4069         Needed for IRIX 6.5.
4070
4071 2007-05-19  Bruno Haible  <bruno@clisp.org>
4072
4073         * tests/test-vasnprintf-posix.c (test_function): Allow NaN to be
4074         printed as "nan0x7fffffff" instead of "nan".
4075         * tests/test-vasprintf-posix.c (test_function): Likewise.
4076         * tests/test-snprintf-posix.h (test_function): Likewise.
4077         * tests/test-sprintf-posix.h (test_function): Likewise.
4078         * tests/test-fprintf-posix.h (NaN): Remove macro.
4079         (test_function): Remove all NaN related tests.
4080         * tests/test-printf-posix.h (NaN): Remove macro.
4081         (test_function): Remove all NaN related tests.
4082         * tests/test-printf-posix.output: Remove all NaN related results.
4083         Needed for IRIX 6.5.
4084
4085 2007-05-19  Bruno Haible  <bruno@clisp.org>
4086
4087         * m4/frexp.m4 (gl_FUNC_FREXP_WORKS): Fix C89 syntax error in test code.
4088         * m4/frexpl.m4 (gl_FUNC_FREXPL_WORKS): Likewise.
4089
4090 2007-05-19  Bruno Haible  <bruno@clisp.org>
4091
4092         * lib/float_.h: New file.
4093         * m4/float_h.m4: New file.
4094         * modules/float: New file.
4095         * modules/isnanl (Dependencies): Add float.
4096         * modules/isnanl-nolibm (Dependencies): Likewise.
4097         * modules/mathl (Dependencies): Likewise.
4098         * modules/printf-frexpl (Dependencies): Likewise.
4099         * modules/signbit (Dependencies): Likewise.
4100         * modules/vasnprintf (Dependencies): Likewise.
4101         * doc/headers/float.texi: Update.
4102
4103 2007-05-19  Jim Meyering  <jim@meyering.net>
4104
4105         * lib/utimens.c (gl_futimens): Rename from futimens,
4106         now that glibc-2.6 declares futimens.
4107         * lib/utimens.h: Likewise.
4108
4109 2007-05-19  Bruno Haible  <bruno@clisp.org>
4110
4111         Avoid test failures on mingw.
4112         * tests/test-fprintf-posix.sh: Convert CR/LF to LF in output.
4113         * tests/test-printf-posix.sh: Likewise.
4114         * tests/test-vfprintf-posix.sh: Likewise.
4115         * tests/test-vprintf-posix.sh: Likewise.
4116
4117 2007-05-19  Bruno Haible  <bruno@clisp.org>
4118
4119         Fix *printf result for NaN, Inf, -0.0 on mingw.
4120         * m4/printf.m4 (gl_PRINTF_INFINITE): New macro.
4121         * lib/vasnprintf.c: Include math.h and isnan.h.
4122         (is_infinite_or_zero): New function.
4123         (VASNPRINTF): Fix also the handling of infinite or zero 'double'
4124         values in the %f, %F, %e, %E, %g, %G directives.
4125         * m4/vasnprintf.m4 (gl_PREREQ_VASNPRINTF_INFINITE): New macro.
4126         * m4/fprintf-posix.m4 (gl_FUNC_FPRINTF_POSIX): Invoke
4127         gl_PRINTF_INFINITE and test its result. Invoke
4128         gl_PREREQ_VASNPRINTF_INFINITE.
4129         * m4/snprintf-posix.m4 (gl_FUNC_SNPRINTF_POSIX): Likewise.
4130         * m4/sprintf-posix.m4 (gl_FUNC_SPRINTF_POSIX): Likewise.
4131         * m4/vasnprintf-posix.m4 (gl_FUNC_VASNPRINTF_POSIX): Likewise.
4132         * m4/vasprintf-posix.m4 (gl_FUNC_VASPRINTF_POSIX): Likewise.
4133         * m4/vfprintf-posix.m4 (gl_FUNC_VFPRINTF_POSIX): Likewise.
4134         * m4/vsnprintf-posix.m4 (gl_FUNC_VSNPRINTF_POSIX): Likewise.
4135         * m4/vsprintf-posix.m4 (gl_FUNC_VSPRINTF_POSIX): Likewise.
4136         * doc/functions/fprintf.texi: Update.
4137         * doc/functions/printf.texi: Update.
4138         * doc/functions/snprintf.texi: Update.
4139         * doc/functions/sprintf.texi: Update.
4140         * doc/functions/vfprintf.texi: Update.
4141         * doc/functions/vprintf.texi: Update.
4142         * doc/functions/vsnprintf.texi: Update.
4143         * doc/functions/vsprintf.texi: Update.
4144
4145 2007-05-19  Bruno Haible  <bruno@clisp.org>
4146
4147         * lib/vasnprintf.c (convert_to_decimal): Add an extra_zeroes argument.
4148         (scale10_round_decimal_long_double): Inline scale10_round_long_double.
4149         Instead of multiplying with 10^k, set extra_zeroes to k.
4150         (scale10_round_long_double): Remove function.
4151
4152 2007-05-18  Bruno Haible  <bruno@clisp.org>
4153
4154         * lib/vasnprintf.c (VASNPRINTF) [NEED_PRINTF_FLAG_ZERO]: Fix logic bug
4155         introduced on 2007-05-06.
4156
4157 2007-05-18  Bruno Haible  <bruno@clisp.org>
4158
4159         * tests/test-vasnprintf-posix.c (test_function): Also test the %e and
4160         %g directives.
4161         * tests/test-vasprintf-posix.c (test_function): Likewise.
4162         * tests/test-snprintf-posix.h (test_function): Likewise.
4163         * tests/test-sprintf-posix.h (test_function): Likewise.
4164
4165 2007-05-18  Bruno Haible  <bruno@clisp.org>
4166
4167         * tests/test-vasnprintf-posix.c (SIZEOF): New macro.
4168         (strmatch): New function.
4169         (test_function): Test the %f directive on numbers of various exponents.
4170         * tests/test-vasprintf-posix.c (SIZEOF): New macro.
4171         (strmatch): New function.
4172         (test_function): Test the %f directive on numbers of various exponents.
4173         * tests/test-snprintf-posix.h (strmatch): New function.
4174         (test_function): Test the %f directive on numbers of various exponents.
4175         * tests/test-sprintf-posix.h (strmatch): New function.
4176         (test_function): Test the %f directive on numbers of various exponents.
4177         * tests/test-snprintf-posix.c (SIZEOF): New macro.
4178         * tests/test-sprintf-posix.c (SIZEOF): New macro.
4179         * tests/test-vsnprintf-posix.c (SIZEOF): New macro.
4180         * tests/test-vsprintf-posix.c (SIZEOF): New macro.
4181
4182 2007-05-18  Bruno Haible  <bruno@clisp.org>
4183
4184         Add support for 'long double' number output.
4185         * m4/printf.m4 (gl_PRINTF_LONG_DOUBLE): New macro.
4186         * lib/vasnprintf.c: Include math.h and float+.h.
4187         (mp_limb_t): New type.
4188         (GMP_LIMB_BITS): New macro.
4189         (mp_twolimb_t): New type.
4190         (GMP_TWOLIMB_BITS): New macro.
4191         (mpn_t): New type.
4192         (multiply, divide, convert_to_decimal, decode_long_double,
4193         scale10_round_long_double, scale10_round_decimal_long_double,
4194         floorlog10l): New functions.
4195         (VASNPRINTF) [NEED_PRINTF_LONG_DOUBLE]: Implement 'long double' support
4196         for the %f, %F, %e, %E, %g, %G directives.
4197         * m4/vasnprintf.m4 (gl_PREREQ_VASNPRINTF_LONG_DOUBLE): New macro.
4198         * m4/fprintf-posix.m4 (gl_FUNC_FPRINTF_POSIX): Invoke
4199         gl_PRINTF_LONG_DOUBLE and test its result. Invoke
4200         gl_PREREQ_VASNPRINTF_LONG_DOUBLE.
4201         * m4/snprintf-posix.m4 (gl_FUNC_SNPRINTF_POSIX): Likewise.
4202         * m4/sprintf-posix.m4 (gl_FUNC_SPRINTF_POSIX): Likewise.
4203         * m4/vasnprintf-posix.m4 (gl_FUNC_VASNPRINTF_POSIX): Likewise.
4204         * m4/vasprintf-posix.m4 (gl_FUNC_VASPRINTF_POSIX): Likewise.
4205         * m4/vfprintf-posix.m4 (gl_FUNC_VFPRINTF_POSIX): Likewise.
4206         * m4/vsnprintf-posix.m4 (gl_FUNC_VSNPRINTF_POSIX): Likewise.
4207         * m4/vsprintf-posix.m4 (gl_FUNC_VSPRINTF_POSIX): Likewise.
4208         * modules/fprintf-posix (Depends-on): Add frexpl-nolibm.
4209         * modules/snprintf-posix (Depends-on): Likewise.
4210         * modules/sprintf-posix (Depends-on): Likewise.
4211         * modules/vasnprintf-posix (Depends-on): Likewise.
4212         * modules/vasprintf-posix (Depends-on): Likewise.
4213         * modules/vfprintf-posix (Depends-on): Likewise.
4214         * modules/vsnprintf-posix (Depends-on): Likewise.
4215         * modules/vsprintf-posix (Depends-on): Likewise.
4216         * modules/vasnprintf (Files): Add lib/float+.h.
4217         * doc/functions/fprintf.texi: Update.
4218         * doc/functions/printf.texi: Update.
4219         * doc/functions/snprintf.texi: Update.
4220         * doc/functions/sprintf.texi: Update.
4221         * doc/functions/vfprintf.texi: Update.
4222         * doc/functions/vprintf.texi: Update.
4223         * doc/functions/vsnprintf.texi: Update.
4224         * doc/functions/vsprintf.texi: Update.
4225
4226 2007-05-18  Bruno Haible  <bruno@clisp.org>
4227
4228         * lib/vasnprintf.c (USE_SNPRINTF): Define to 0 on BeOS.
4229
4230 2007-05-18  Bruno Haible  <bruno@clisp.org>
4231
4232         * lib/vasnprintf.c (VASNPRINTF) [WIN32]: Use %I64d instead of %lld
4233         for printing 64-bit integers. Needed for mingw.
4234
4235 2007-05-18  Bruno Haible  <bruno@clisp.org>
4236
4237         * m4/printf-frexpl.m4 (gl_FUNC_PRINTF_FREXPL): Invoke
4238         gl_FUNC_FREXPL_WORKS.
4239         * modules/printf-frexpl (Files): Add m4/frexpl.m4.
4240
4241 2007-05-18  Bruno Haible  <bruno@clisp.org>
4242
4243         * modules/frexpl-nolibm-tests: New file.
4244
4245         * modules/frexpl-nolibm: New file.
4246         * m4/frexpl.m4 (gl_FUNC_FREXPL_NO_LIBM): New macro.
4247
4248 2007-05-17  Paul Eggert  <eggert@cs.ucla.edu>
4249
4250         * lib/dirent_.h: Prefer #include_next <foo.h> to #include
4251         @ABSOLUTE_FOO_H@ if @HAVE_INCLUDE_NEXT@.  This works better with
4252         GCC 4.2, which otherwise issues a lot of warnings.
4253         * lib/iconv_.h, lib/locale_.h, lib/netinet_in_.h, lib/sys_select_.h:
4254         * lib/sys_socket_.h, lib/sys_stat_.h, lib/sysexits_.h, lib/unistd_.h:
4255         Likewise.
4256         * modules/fchdir (dirent.h): Substitute @HAVE_INCLUDE_NEXT@.
4257         * modules/iconv_open (iconv.h): Likewise.
4258         * modules/locale (locale.h): Likewise.
4259         * modules/netinet_in (netinet/in.h): Likewise.
4260         * modules/sys_select (sys_select.h): Likewise.
4261         * modules/sys_socket (sys/socket.h): Likewise.
4262         * modules/sys_stat (sys/stat.h): Likewise.
4263         * modules/sysexits (sysexits.h): Likewise.
4264         * modules/unistd (unistd.h): Likewise.
4265
4266 2007-05-17  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
4267
4268         * modules/closein-tests (Makefile.am): Distribute
4269         `test-closein.sh'.
4270
4271 2007-05-17  Bruno Haible  <bruno@clisp.org>
4272
4273         * tests/test-printf-posix.output: Renamed from
4274         tests/test-fprintf-posix.out.
4275         * modules/fprintf-posix-tests: Update.
4276         * modules/printf-posix-tests: Update.
4277         * modules/vfprintf-posix-tests: Update.
4278         * modules/vprintf-posix-tests: Update.
4279         * tests/test-fprintf-posix.sh: Update.
4280         * tests/test-printf-posix.sh: Update.
4281         * tests/test-vfprintf-posix.sh: Update.
4282         * tests/test-vprintf-posix.sh: Update.
4283         Reported by Ralf Wildenhues.
4284
4285 2007-05-16  Paul Eggert  <eggert@cs.ucla.edu>
4286
4287         * lib/fcntl_.h: Prefer #include_next <foo.h> to #include
4288         @ABSOLUTE_FOO_H@ if @HAVE_INCLUDE_NEXT@.  This works better with
4289         GCC 4.2, which otherwise issues a lot of warnings.
4290         * lib/inttypes_.h, lib/math_.h, lib/search_.h, lib/signal_.h:
4291         * lib/stdint_.h, lib/stdio_.h, lib/stdlib_.h, lib/string_.h:
4292         * lib/sys_time_.h, lib/time_.h, lib/wchar_.h, lib/wctype_.h: Likewise.
4293         * lib/stdlib_.h: Don't bother with #pragma GCC system_header, as
4294         it should no longer be needed.
4295         * lib/string_.h: Likewise.
4296         * modules/absolute-header (HAVE_INCLUDE_NEXT): New 'make' define.
4297         * modules/fcntl (fcntl.h): Substitute @HAVE_INCLUDE_NEXT@.
4298         * modules/inttypes (inttypes.h): Likewise.
4299         * modules/math (math.h): Likewise.
4300         * modules/search (search.h): Likewise.
4301         * modules/signal (signal.h): Likewise.
4302         * modules/stdint (stdint.h): Likewise.
4303         * modules/stdio (stdio.h): Likewise.
4304         * modules/stdlib (stdlib.h): Likewise.
4305         * modules/string (string.h): Likewise.
4306         * modules/sys_time (sys/time.h): Likewise.
4307         * modules/time (time.h): Likewise.
4308         * modules/wchar (wchar.h): Likewise.
4309         * modules/wctype (wtype.h): Likewise.
4310
4311 2007-05-16  Thien-Thi Nguyen  <ttn@gnuvola.org>  (tiny change)
4312
4313         * doc/gnulib-tool.texi (CVS Issues): Fix typo.
4314
4315 2007-05-13  Bruno Haible  <bruno@clisp.org>
4316
4317         * stpcpy.m4 (gl_FUNC_STPCPY): Require AC_C_RESTRICT.
4318         * stpncpy.m4 (gl_FUNC_STPNCPY): Likewise.
4319         * strsep.m4 (gl_FUNC_STRSEP): Likewise.
4320         * strtok_r.m4 (gl_FUNC_STRTOK_R): Likewise.
4321         (gl_PREREQ_STRTOK_R): Don't require it here.
4322
4323 2007-05-13  Bruno Haible  <bruno@clisp.org>
4324
4325         * lib/stdlib_.h (mkdtemp, mkstemp): Comment out argument name. Needed
4326         when used in C++ mode.
4327
4328 2007-05-12  Bruno Haible  <bruno@clisp.org>
4329
4330         * lib/linebuffer.h: Tweak doc.
4331         * lib/linebuffer.c: Likewise.
4332
4333 2007-05-12  James Youngman  <jay@gnu.org>
4334
4335         * lib/linebuffer.c (readlinebuffer_delim): New function,
4336         like readlinebuffer, but use a caller-specified delimiter.
4337         (readlinebuffer): Just call readlinebuffer_delim with '\n'
4338         as the delimiter.
4339         * lib/linebuffer.h (readlinebuffer_delim): Declare it.
4340
4341 2007-05-12  Sergey Poznyakoff  <gray@gnu.org.ua>
4342
4343         * m4/openat.m4 (gl_FUNC_OPENAT): Do not require openat-die.
4344         * modules/openat (Files): Remove openat-die.c.
4345         (Depends-on): Add openat-die.
4346         * modules/openat-die: New module.
4347
4348 2007-05-06  Bruno Haible  <bruno@clisp.org>
4349
4350         * m4/printf.m4 (gl_PRINTF_FLAG_GROUPING, gl_VSNPRINTF_ZEROSIZE_C99):
4351         Update with info about Cygwin.
4352         * doc/functions/fprintf.texi: Update.
4353         * doc/functions/printf.texi: Update.
4354         * doc/functions/snprintf.texi: Update.
4355         * doc/functions/sprintf.texi: Update.
4356         * doc/functions/vfprintf.texi: Update.
4357         * doc/functions/vprintf.texi: Update.
4358         * doc/functions/vsnprintf.texi: Update.
4359         * doc/functions/vsprintf.texi: Update.
4360         Reported by Eric Blake.
4361
4362 2007-05-06  Bruno Haible  <bruno@clisp.org>
4363
4364         * lib/vasnprintf.c (VASNPRINTF) [NEED_PRINTF_FLAG_ZERO]: Perform the
4365         padding ourselves for the floating-point directives.
4366         * m4/printf.m4 (gl_PRINTF_FLAG_ZERO): New macro.
4367         * m4/vasnprintf.m4 (gl_PREREQ_VASNPRINTF_FLAG_ZERO): New macro.
4368         * m4/snprintf-posix.m4 (gl_FUNC_SNPRINTF_POSIX): Invoke
4369         gl_PRINTF_FLAG_ZERO and test its result. Invoke
4370         gl_PREREQ_VASNPRINTF_FLAG_ZERO.
4371         * m4/sprintf-posix.m4 (gl_FUNC_SPRINTF_POSIX): Likewise.
4372         * m4/fprintf-posix.m4 (gl_FUNC_FPRINTF_POSIX): Likewise.
4373         * m4/vasnprintf-posix.m4 (gl_FUNC_VASNPRINTF_POSIX): Likewise.
4374         * m4/vasprintf-posix.m4 (gl_FUNC_VASPRINTF_POSIX): Likewise.
4375         * m4/vfprintf-posix.m4 (gl_FUNC_VFPRINTF_POSIX): Likewise.
4376         * m4/vsnprintf-posix.m4 (gl_FUNC_VSNPRINTF_POSIX): Likewise.
4377         * m4/vsprintf-posix.m4 (gl_FUNC_VSPRINTF_POSIX): Likewise.
4378         * tests/test-snprintf-posix.h (test_function): Also check the width
4379         and some flags in the %f directive.
4380         * tests/test-sprintf-posix.h (test_function): Likewise.
4381         * tests/test-vasnprintf-posix.c (test_function): Likewise.
4382         * tests/test-vasprintf-posix.c (test_function): Likewise.
4383         * doc/functions/fprintf.texi: Update.
4384         * doc/functions/printf.texi: Update.
4385         * doc/functions/snprintf.texi: Update.
4386         * doc/functions/sprintf.texi: Update.
4387         * doc/functions/vfprintf.texi: Update.
4388         * doc/functions/vprintf.texi: Update.
4389         * doc/functions/vsnprintf.texi: Update.
4390         * doc/functions/vsprintf.texi: Update.
4391
4392 2007-05-06  Bruno Haible  <bruno@clisp.org>
4393
4394         * lib/vasnprintf.c (VASNPRINTF) [NEED_PRINTF_FLAG_GROUPING]: Don't
4395         pass the ' flag character to sprintf or snprintf.
4396         * m4/printf.m4 (gl_PRINTF_FLAG_GROUPING): New macro.
4397         * m4/vasnprintf.m4 (gl_PREREQ_VASNPRINTF_FLAG_GROUPING): New macro.
4398         * m4/snprintf-posix.m4 (gl_FUNC_SNPRINTF_POSIX): Invoke
4399         gl_PRINTF_FLAG_GROUPING and test its result. Invoke
4400         gl_PREREQ_VASNPRINTF_FLAG_GROUPING.
4401         * m4/sprintf-posix.m4 (gl_FUNC_SPRINTF_POSIX): Likewise.
4402         * m4/fprintf-posix.m4 (gl_FUNC_FPRINTF_POSIX): Likewise.
4403         * m4/vasnprintf-posix.m4 (gl_FUNC_VASNPRINTF_POSIX): Likewise.
4404         * m4/vasprintf-posix.m4 (gl_FUNC_VASPRINTF_POSIX): Likewise.
4405         * m4/vfprintf-posix.m4 (gl_FUNC_VFPRINTF_POSIX): Likewise.
4406         * m4/vsnprintf-posix.m4 (gl_FUNC_VSNPRINTF_POSIX): Likewise.
4407         * m4/vsprintf-posix.m4 (gl_FUNC_VSPRINTF_POSIX): Likewise.
4408         * tests/test-snprintf-posix.h (test_function): Also check the grouping
4409         flag.
4410         * tests/test-sprintf-posix.h (test_function): Likewise.
4411         * tests/test-vasnprintf-posix.c (test_function): Likewise.
4412         * tests/test-vasprintf-posix.c (test_function): Likewise.
4413         * doc/functions/fprintf.texi: Update.
4414         * doc/functions/printf.texi: Update.
4415         * doc/functions/snprintf.texi: Update.
4416         * doc/functions/sprintf.texi: Update.
4417         * doc/functions/vfprintf.texi: Update.
4418         * doc/functions/vprintf.texi: Update.
4419         * doc/functions/vsnprintf.texi: Update.
4420         * doc/functions/vsprintf.texi: Update.
4421
4422 2007-05-01  Bruno Haible  <bruno@clisp.org>
4423
4424         * tests/test-argp-2.sh (func_compare): Drop .exe suffix.
4425
4426 2007-05-03  Paul Eggert  <eggert@cs.ucla.edu>
4427
4428         * m4/d-ino.m4 (gl_CHECK_TYPE_STRUCT_DIRENT_D_INO): Use better
4429         comment for D_INO_IN_DIRENT.  Problem reported by James Youngman.
4430
4431 2007-05-02  Paul Eggert  <eggert@cs.ucla.edu>
4432
4433         * m4/d-ino.m4 (gl_CHECK_TYPE_STRUCT_DIRENT_D_INO): Test whether
4434         readdir returns garbage in d_ino.  Problem reported by Kaz Sasayama in
4435         <http://lists.gnu.org/archive/html/bug-gnulib/2007-05/msg00021.html>.
4436
4437 2007-05-02  Sergey Poznyakoff  <gray@gnu.org.ua>
4438
4439         * lib/argp-help.c (struct hol_entry): New member `ord'.
4440         (HOL_ENTRY_PTRCMP): Use ord for comparison
4441         (hol_sort): Initialize ord.
4442
4443 2007-05-01  Bruno Haible  <bruno@clisp.org>
4444
4445         * doc/functions/_Exit_C99.texi: Renamed from doc/functions/_Exit.texi.
4446         Reported by Eric Blake.
4447         * doc/gnulib.texi (Function Substitutes): Update.
4448
4449 2007-05-01  Bruno Haible  <bruno@clisp.org>
4450
4451         * doc/functions.texi: Remove file, now redundant through
4452         doc/functions/*.texi.
4453
4454 2007-05-01  Bruno Haible  <bruno@clisp.org>
4455
4456         * modules/argp (Depends-on): Add sleep.
4457
4458 2007-05-01  Bruno Haible  <bruno@clisp.org>
4459
4460         * modules/sleep-tests: New file.
4461         * tests/test-sleep.c: New file.
4462
4463         * modules/sleep: New file.
4464         * lib/sleep.c: New file.
4465         * m4/sleep.m4: New file.
4466         * lib/unistd_.h (sleep): New declaration.
4467         * m4/unistd_h.m4 (gl_UNISTD_H_DEFAULTS): Initialize GNULIB_SLEEP,
4468         HAVE_SLEEP.
4469         * modules/unistd (Makefile.am): Substitute GNULIB_SLEEP, HAVE_SLEEP.
4470         * doc/functions/sleep.texi: Document the sleep module.
4471
4472 2007-05-01  Bruno Haible  <bruno@clisp.org>
4473
4474         * lib/sigprocmask.h: Remove file.
4475         * lib/signal_.h: Incorporate the previous contents of sigprocmask.h.
4476         * lib/sigprocmask.c: Include <signal.h> instead of sigprocmask.h.
4477         * m4/signal_h.m4 (gl_SIGNAL_H_DEFAULTS): Substitute GNULIB_SIGPROCMASK,
4478         HAVE_POSIX_SIGNALBLOCKING, HAVE_SIGSET_T.
4479         * m4/signalblocking.m4 (gl_SIGNALBLOCKING): Require
4480         gl_SIGNAL_H_DEFAULTS. Set HAVE_POSIX_SIGNALBLOCKING as a shell variable.
4481         (gl_PREREQ_SIGPROCMASK): Require gl_SIGNAL_H_DEFAULTS. Set
4482         HAVE_SIGSET_T as a shell variable.
4483         * modules/signal (Makefile.am): Substitute GNULIB_SIGPROCMASK,
4484         HAVE_POSIX_SIGNALBLOCKING, HAVE_SIGSET_T into signal.h.
4485         * modules/sigprocmask (Files): Remove lib/sigprocmask.h.
4486         (Depends-on): Add signal. Remove verify.
4487         (configure.ac): Invoke gl_SIGNAL_MODULE_INDICATOR.
4488         (Include): Mention <signal.h> instead of sigprocmask.h.
4489         * NEWS: Mention the change.
4490         * lib/fatal-signal.c: Don't include sigprocmask.h.
4491
4492 2007-05-01  Bruno Haible  <bruno@clisp.org>
4493
4494         * modules/signal: New file.
4495         * lib/signal_.h: New file.
4496         * m4/signal_h.m4: New file.
4497
4498 2007-05-01  Bruno Haible  <bruno@clisp.org>
4499
4500         * lib/wctype_.h: Test HAVE_ISWCNTRL at configure time.
4501         * m4/wctype.m4 (gl_WCTYPE_H): Substitute HAVE_ISWCNTRL.
4502         * modules/wctype (Makefile.am): Substitute HAVE_ISWCNTRL instead of
4503         HAVE_WCTYPE_CTMP_BUG into wctype.h.
4504
4505 2007-05-01  Bruno Haible  <bruno@clisp.org>
4506
4507         * lib/sys_stat_.h: Test HAVE_LSTAT, HAVE_DECL_MKDIR, HAVE_IO_H at
4508         configure time.
4509         * m4/sys_stat_h.m4 (gl_HEADER_SYS_STAT_H): Substitute HAVE_LSTAT,
4510         HAVE_DECL_MKDIR, HAVE_IO_H via AC_SUBST.
4511         * modules/sys_stat (Makefile.am): Substitute their values into
4512         sys/stat.h.
4513
4514 2007-05-01  Bruno Haible  <bruno@clisp.org>
4515
4516         * lib/glob_.h: Test HAVE_SYS_CDEFS_H at configure time.
4517         * m4/glob.m4 (gl_PREREQ_GLOB): Substitute HAVE_SYS_CDEFS_H via AC_SUBST.
4518         * modules/glob (Makefile.am): Put HAVE_SYS_CDEFS_H value into glob.h.
4519
4520 2007-05-01  Bruno Haible  <bruno@clisp.org>
4521
4522         * doc/header/assert.texi: Undo last change: don't mention the gnulib
4523         'assert' module here.
4524
4525 2007-05-01  Bruno Haible  <bruno@clisp.org>
4526
4527         * doc/functions/*.texi: New files.
4528         * doc/functions/google-ranking.txt: New file.
4529         * doc/gnulib.texi (Function Substitutes): New chapter.
4530         (ctime, inet_ntoa): Remove sections.
4531         * doc/ctime.texi: Remove file.
4532         * doc/inet_ntoa.texi: Remove file.
4533         * doc/Makefile (gnulib.info, gnulib.html, gnulib.dvi): Update
4534         dependencies.
4535         (%.info): New rule, specifying a --reference-limit.
4536
4537 2007-05-01  Bruno Haible  <bruno@clisp.org>
4538
4539         * MODULES.html.sh (posix_functions): Remove 'exec', 'toc'.
4540
4541 2007-05-01  Bruno Haible  <bruno@clisp.org>
4542
4543         * modules/mkdir (Depends-on): Add sys_stat, because sys_stat provides
4544         the portability of 'mkdir' to mingw systems.
4545
4546 2007-05-01  Bruno Haible  <bruno@clisp.org>
4547
4548         * doc/headers/google-ranking.txt: New file.
4549
4550 2007-04-30  Eric Blake  <ebb9@byu.net>
4551
4552         Prefer fseeko to fseek.
4553         * modules/getpass (Depends-on): Add fseeko.
4554         * lib/getpass.c (getpass): Use fseeko, not fseek.
4555
4556 2007-04-30  Sergey Poznyakoff  <gray@gnu.org.ua>
4557
4558         * lib/argp-help.c (hol_entry_cmp): Option sorting algorithm
4559         assumes the sorting is stable, while most qsort implementations
4560         are not.  Use argument addresses to ensure they never compare as
4561         equal.
4562
4563         * tests/test-argp-2.sh (usage-indent test): Fix output
4564         (func_compare): Restore diff options
4565         * tests/test-argp.c: Restore #include "progname.h"
4566
4567 2007-04-29  Bruno Haible  <bruno@clisp.org>
4568
4569         * m4/printf.m4 (gl_VSNPRINTF_ZEROSIZE_C99): New macro.
4570         * m4/snprintf-posix.m4 (gl_FUNC_SNPRINTF_POSIX): Invoke
4571         gl_VSNPRINTF_ZEROSIZE_C99. Test gl_cv_func_vsnprintf_zerosize_c99.
4572         * m4/vsnprintf-posix.m4 (gl_FUNC_VSNPRINTF_POSIX): Likewise.
4573         * modules/snprintf-posix-tests (Files): Add tests/test-snprintf.c.
4574         (configure.ac): Define CHECK_SNPRINTF_POSIX.
4575         (TESTS, check_PROGRAMS): Add test-snprintf.
4576         * modules/vsnprintf-posix-tests (Files): Add tests/test-vsnprintf.c.
4577         (configure.ac): Define CHECK_VSNPRINTF_POSIX.
4578         (TESTS, check_PROGRAMS): Add test-vsnprintf.
4579         * tests/test-snprintf.c (main) [!CHECK_SNPRINTF_POSIX]: Disable
4580         assertions that fail on HP-UX, OSF/1, or IRIX.
4581         * tests/test-vsnprintf.c (main) [!CHECK_VSNPRINTF_POSIX]: Likewise.
4582
4583 2007-04-29  Bruno Haible  <bruno@clisp.org>
4584
4585         * MODULES.html.sh (posix_functions): Remove 'contents'.
4586
4587 2007-04-29  Karl Berry  <karl@gnu.org>
4588
4589         * config/srclist.txt (gendocs_template_min): new entry.
4590
4591 2007-04-29  Bruno Haible  <bruno@clisp.org>
4592
4593         Work around fpurge bug on BSD systems.
4594         * modules/fpurge (Makefile.am): Compile fpurge.c unconditionally.
4595         * m4/fpurge.m4 (gl_FUNC_FPURGE): Don't invoke AC_LIBOBJ.
4596         * lib/fpurge.h (fpurge): Don't handle __fpurge wrapper here. Define
4597         fpurge to rpl_fpurge if the system already has this function.
4598         * lib/fpurge.c (fpurge): Handle also the __fpurge wrapper case and
4599         the case where the system already has this function. Correct invariants
4600         on BSD systems.
4601         * lib/fseeko.c (rpl_fseeko): Update recognition of preceding fflush on
4602         BSD systems.
4603
4604 2007-04-29  Sergey Poznyakoff  <gray@gnu.org.ua>
4605
4606         * lib/argp-help.c (hol_cluster_cmp): Reverse comparison.  Change
4607         proposed by Sven Verdoolaege.
4608
4609         * tests/test-argp.c: Fix option ordering.  Test deeply clustered
4610         options.
4611         * tests/test-argp-2.sh (func_compare): Use diff instead of cmp.
4612         (usage and help tests): Update
4613
4614 2007-04-29  Bruno Haible  <bruno@clisp.org>
4615
4616         * tests/test-fflush.c (main): Use a file of size 17, not 10.
4617         Print more information in case of failure. Disable a test on BeOS.
4618
4619 2007-04-29  Bruno Haible  <bruno@clisp.org>
4620
4621         * tests/**/test-*.[hc] (ASSERT): Use fprintf to show the line number.
4622         This helps debugging on systems on which no gdb is available.
4623
4624 2007-04-29  Bruno Haible  <bruno@clisp.org>
4625
4626         * lib/freading.h: Improve comments.
4627         * lib/fwriting.h: Likewise.
4628         * tests/test-freading.c (main): Don't check freading immediately after
4629         repositioning. Needed for glibc.
4630
4631 2007-04-29  Bruno Haible  <bruno@clisp.org>
4632
4633         * lib/freading.c (freading): Trivial simplification.
4634
4635 2007-04-28  Bruno Haible  <bruno@clisp.org>
4636
4637         * tests/test-fwriting.c (main): Also test the interaction between
4638         fflush and fwriting.
4639         * modules/fwriting-tests (Depends-on): Add fflush.
4640
4641         * tests/test-freading.c (main): Also test the interaction between
4642         fflush and freading.
4643         * modules/freading-tests (Depends-on): Add fflush.
4644
4645 2007-04-28  Bruno Haible  <bruno@clisp.org>
4646
4647         * lib/stdio_.h (fseek, ftell): Provide link warnings suggesting to use
4648         fseeko and ftello.
4649         Suggested by Eric Blake.
4650
4651 2007-04-28  Jim Meyering  <jim@meyering.net>
4652
4653         Avoid false-negative in gl_STDINT_H's C99 conformance test.
4654         * m4/stdint.m4 (gl_STDINT_H): When checking whether stdint.h conforms
4655         to C99, include all of gl_STDINT_INCLUDES, not just <stddef.h>.
4656
4657 2007-04-27  Eric Blake  <ebb9@byu.net>
4658
4659         * doc/headers/assert.texi (assert.h): Document assert module use.
4660
4661 2007-04-27  Bruno Haible  <bruno@clisp.org>
4662
4663         * doc/headers/*.texi: New files.
4664         * doc/gnulib.texi (Header File Substitutes): New chapter.
4665         * doc/Makefile (gnulib.info, gnulib.html, gnulib.dvi): Specify
4666         dependencies.
4667         (standards.info ,standards.html, standards.dvi): Update dependencies.
4668         (mostlyclean, clean): New targets.
4669
4670 2007-04-27  Bruno Haible  <bruno@clisp.org>
4671
4672         * lib/sysexits_.h: Renamed from lib/sysexit_.h.
4673         * modules/sysexits (Files, Makefile.am): Update.
4674
4675         * lib/sys_socket_.h: Renamed from lib/socket_.h.
4676         * modules/sys_socket (Files, Makefile.am): Update.
4677
4678         * lib/sys_stat_.h: Renamed from lib/stat_.h.
4679         * modules/sys_stat (Files, Makefile.am): Update.
4680
4681 2007-04-27  Eric Blake  <ebb9@byu.net>
4682
4683         * lib/freading.h: Improve comments.
4684         * lib/fwriting.h: Likewise.
4685         * lib/fflush.c: Likewise.
4686
4687         Fix closein for mingw.
4688         * modules/closein-tests: Add tests for closein.
4689         * tests/test-closein.c: New file.
4690         * tests/test-closein.sh: Likewise.
4691         * lib/unistd_.h [!SEEK_CUR]: Mingw also needs stdlib.h for _exit.
4692         * lib/closein.c (close_stdin): Don't fflush non-seekable streams.
4693
4694 2007-04-27  Bruno Haible  <bruno@clisp.org>
4695
4696         * lib/inttypes_.h [_DECC]: Don't use #include_next if the compiler
4697         version is < 6.
4698         * lib/math_.h [__DECC]: Likewise.
4699         * lib/stdio_.h [__DECC]: Likewise.
4700         * lib/stdlib_.h [__DECC]: Likewise.
4701         * lib/string_.h [__DECC]: Likewise.
4702         * lib/time_.h [__DECC]: Likewise.
4703         * lib/wchar_.h [__DECC]: Likewise.
4704         * lib/wctype_.h [__DECC]: Likewise.
4705
4706 2007-04-27  Bruno Haible  <bruno@clisp.org>
4707
4708         * tests/test-fbufmode.c (main): Relax test, to avoid failure on mingw.
4709
4710 2007-04-27  Bruno Haible  <bruno@clisp.org>
4711
4712         * lib/fflush.c: Add comments.
4713         * modules/fpurge-tests (Depends-on): Add fflush.
4714         * modules/freadable-tests (Depends-on): Likewise.
4715         * modules/fwritable-tests (Depends-on): Likewise.
4716
4717 2007-04-27  Charles Wilson  <libtool@cwilson.fastmail.fm>
4718
4719         * m4/argz.m4 (gl_FUNC_ARGZ): Use !HAVE_WORKING_ARGZ instead of
4720         SYSTEM_ARGZ_IS_BROKEN.  Also, minor stylistic improvements.
4721         Report by Bruno Haible <bruno@clisp.org>.
4722
4723 2007-04-26  Eric Blake  <ebb9@byu.net>
4724
4725         Fix fflush on mingw.
4726         * modules/fflush (Depends-on): Add freading.
4727         * lib/fflush.c (rpl_fflush): Use freading to avoid losing buffered
4728         but unread data.
4729
4730 2007-04-26  Eric Blake  <ebb9@byu.net>
4731         and Bruno Haible  <bruno@clisp.org>
4732
4733         Implement freading and fwriting.
4734         * lib/freading.c: New file.
4735         * lib/freading.h: Likewise.
4736         * m4/freading.m4: Likewise.
4737         * modules/freading: Likewise.
4738         * modules/freading-tests: Likewise.
4739         * tests/test-freading.c: Likewise.
4740         * lib/fwriting.c: New file.
4741         * lib/fwriting.h: Likewise.
4742         * m4/fwriting.m4: Likewise.
4743         * modules/fwriting: Likewise.
4744         * modules/fwriting-tests: Likewise.
4745         * tests/test-fwriting.c: Likewise.
4746         * MODULES.html.sh (File stream based Input/Output): Mention them.
4747
4748 2007-04-26  Bruno Haible  <bruno@clisp.org>
4749
4750         * lib/stdio_.h (fseeko, ftello): Check that off_t has the same size as
4751         'long' when we assume it.
4752         Suggested by Eric Blake.
4753
4754 2007-04-26  Bruno Haible  <bruno@clisp.org>
4755
4756         Ensure fseeko, ftello are declared on glibc systems.
4757         * modules/fflush (configure.ac-early): Require AC_FUNC_FSEEKO.
4758         * modules/fseeko (configure.ac-early): Likewise.
4759         * modules/ftello (configure.ac-early): Likewise.
4760         * m4/fflush.m4 (gl_REPLACE_FFLUSH): Don't define HAVE_FSEEKO, rely on
4761         AC_FUNC_FSEEKO for this.
4762         * m4/fseeko.m4 (gl_FUNC_FSEEKO): Inline gl_CHECK_FSEEKO.
4763         (gl_CHECK_FSEEKO): Remove macro.
4764
4765 2007-04-26  Bruno Haible  <bruno@clisp.org>
4766
4767         * tests/test-fflush.c (main): Also check the ftell result after
4768         fflush and fseek/fseeko.
4769         * lib/fflush.c (rpl_fflush): For BSD implementations, update the
4770         file descriptor position cache in the stream.
4771         * lib/fseeko.c (rpl_fseeko): Likewise.
4772
4773 2007-04-26  Bruno Haible  <bruno@clisp.org>
4774
4775         * modules/fflush-tests (Depends-on): Add fseeko.
4776
4777 2007-04-25  Charles Wilson  <libtool@cwilson.fastmail.fm>
4778             Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
4779
4780         * lib/argz_.h: ensure error_t definition is obtained in same
4781         mechanism system argz.h would have.
4782         * m4/argz.m4 (gl_FUNC_ARGZ): add new test to check if $host's
4783         argz facilities are known bad.  Err on the side of caution if
4784         cross-compiling.
4785
4786 2007-04-25  Eric Blake  <ebb9@byu.net>
4787
4788         * lib/fpurge.c (includes): Use stdlib.h for free.
4789         * tests/test-fflush.c (main): Also test fflush-fseeko.
4790
4791 2007-04-25  Bruno Haible  <bruno@clisp.org>
4792
4793         Make fflush+fseek POSIX-compliant on FreeBSD and MacOS X.
4794         * lib/fseeko.c: New file.
4795         * lib/stdio_.h: Include <sys/types.h> when off_t is needed.
4796         (fseeko, fseek): Define to replacements if REPLACE_FFLUSH.
4797         * m4/fseeko.m4 (gl_CHECK_FSEEKO): New macro, extracted from
4798         gl_FUNC_FSEEKO.
4799         (gl_FUNC_FSEEKO): Invoke it.
4800         * m4/fflush.m4 (gl_REPLACE_FFLUSH): Arrange to compile fseeko.c. Invoke
4801         gl_CHECK_FSEEKO. Define HAVE_FSEEKO.
4802         * modules/fflush (Files): Add lib/fseeko.c, m4/fseeko.m4.
4803
4804 2007-04-25  Bruno Haible  <bruno@clisp.org>
4805
4806         * modules/fflush (Depends-on): Add ftello.
4807
4808 2007-04-25  Bruno Haible  <bruno@clisp.org>
4809
4810         * modules/ftello-tests: New file.
4811         * tests/test-ftello.c: New file.
4812
4813         * modules/ftello: New file.
4814         * m4/ftello.m4: New file.
4815         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Set also GNULIB_FTELLO,
4816         HAVE_FTELLO.
4817         * lib/stdio_.h (ftello): New declaration.
4818         * modules/stdio (Makefile.am): Substitute also GNULIB_FTELLO,
4819         HAVE_FTELLO.
4820
4821 2007-04-25  Bruno Haible  <bruno@clisp.org>
4822
4823         * modules/fseeko-tests: New file.
4824         * tests/test-fseeko.c: New file.
4825
4826         * modules/fseeko: New file.
4827         * m4/fseeko.m4: New file.
4828         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Set also GNULIB_FSEEKO,
4829         HAVE_FSEEKO.
4830         * lib/stdio_.h (fseeko): New declaration.
4831         * modules/stdio (Makefile.am): Substitute also GNULIB_FSEEKO,
4832         HAVE_FSEEKO.
4833
4834 2007-04-25  Bruno Haible  <bruno@clisp.org>
4835
4836         * lib/stdio_.h (fflush): Add support for GNULIB_POSIXCHECK.
4837
4838 2007-04-25  Bruno Haible  <bruno@clisp.org>
4839
4840         * lib/unistd_.h: Include <stdio.h> if needed to get the SEEK_* macros.
4841         * tests/test-stdio.c: Check that the various SEEK_* macros are defined.
4842         * tests/test-unistd.c: Likewise.
4843         * tests/test-fcntl.c: Likewise.
4844
4845 2007-04-23  Eric Blake  <ebb9@byu.net>
4846
4847         * lib/fflush.c: Fix missing include.
4848         Reported by Bruno Haible.
4849
4850 2007-04-23  Bruno Haible  <bruno@clisp.org>
4851
4852         * lib/fpurge.c (fpurge) [glibc, BSD]: Free a malloc()ed ungetc buffer.
4853         Reported by Eric Blake.
4854
4855 2007-04-23  Bruno Haible  <bruno@clisp.org>
4856
4857         * lib/fbufmode.c (fbufmode): Port to Solaris/SPARC64.
4858
4859 2007-04-23  Bruno Haible  <bruno@clisp.org>
4860
4861         * lib/fseterr.c (fseterr): Don't hardcode the value of _IOERR.
4862
4863 2007-04-23  Bruno Haible  <bruno@clisp.org>
4864
4865         * tests/test-fbufmode.c (main): Be prepared to a failure of setvbuf.
4866         Needed on HP-UX 11.
4867
4868 2007-04-16  Eric Blake  <ebb9@byu.net>
4869
4870         Make fflush rely on fpurge.
4871         * lib/fflush.c (rpl_fflush): Rely on fpurge module, rather than
4872         open coding all variants.
4873         * modules/fflush (Depends-on): Add fpurge and unistd.
4874         * modules/fflush-tests (Depends-on): Unistd is no longer extra.
4875         * m4/fflush.m4 (gl_REPLACE_FFLUSH): Simplify.
4876
4877         Fix --with-tests compilation on cygwin.
4878         * modules/argmatch-tests (Makefile.am): List gnulib library first
4879         in LDADD.
4880         * modules/argp-tests (Makefile.am): Likewise.
4881         * modules/array-list-tests (Makefile.am): Likewise.
4882         * modules/array-oset-tests (Makefile.am): Likewise.
4883         * modules/avltree-list-tests (Makefile.am): Likewise.
4884         * modules/avltree-oset-tests (Makefile.am): Likewise.
4885         * modules/avltreehash-list-tests (Makefile.am): Likewise.
4886         * modules/carray-list-tests (Makefile.am): Likewise.
4887         * modules/dirname-tests (Makefile.am): Likewise.
4888         * modules/frexp-tests (Makefile.am): Likewise.
4889         * modules/isnanl-tests (Makefile.am): Likewise.
4890         * modules/linked-list-tests (Makefile.am): Likewise.
4891         * modules/linkedhash-list-tests (Makefile.am): Likewise.
4892         * modules/lock-tests (Makefile.am): Likewise.
4893         * modules/rbtree-list-tests (Makefile.am): Likewise.
4894         * modules/rbtree-oset-tests (Makefile.am): Likewise.
4895         * modules/rbtreehash-list-tests (Makefile.am): Likewise.
4896         * modules/tls-tests (Makefile.am): Likewise.
4897         * modules/tsearch-tests (Makefile.am): Likewise.
4898         * modules/xvasprintf-tests (Makefile.am): Likewise.
4899
4900         Fix fpurge for cygwin.
4901         * lib/fpurge.c (fpurge): Fix order of operation flub, and return a
4902         value.
4903         * modules/fpurge-tests (Depends-on): Clean up trash.
4904
4905 2007-04-16  Simon Josefsson  <simon@josefsson.org>
4906
4907         * lib/gc-libgcrypt.c (gc_hash_open): Shut up compiler warnings.
4908
4909         * m4/autobuild.m4: Re-indent.
4910
4911 2007-04-13  Bruno Haible  <bruno@clisp.org>
4912
4913         * modules/fpurge-tests: New file.
4914         * tests/test-fpurge.c: New file.
4915
4916         * modules/fpurge: New file.
4917         * lib/fpurge.h: New file.
4918         * lib/fpurge.c: New file.
4919         * m4/fpurge.m4: New file.
4920
4921 2007-04-13  Bruno Haible  <bruno@clisp.org>
4922
4923         * modules/fbufmode-tests: New file.
4924         * tests/test-fbufmode.c: New file.
4925
4926         * modules/fbufmode: New file.
4927         * lib/fbufmode.h: New file.
4928         * lib/fbufmode.c: New file.
4929         * m4/fbufmode.m4: New file.
4930
4931 2007-04-13  Bruno Haible  <bruno@clisp.org>
4932
4933         * modules/fwritable-tests: New file.
4934         * tests/test-fwritable.c: New file.
4935
4936         * modules/fwritable: New file.
4937         * lib/fwritable.h: New file.
4938         * lib/fwritable.c: New file.
4939         * m4/fwritable.m4: New file.
4940
4941 2007-04-13  Bruno Haible  <bruno@clisp.org>
4942
4943         * modules/freadable-tests: New file.
4944         * tests/test-freadable.c: New file.
4945
4946         * modules/freadable: New file.
4947         * lib/freadable.h: New file.
4948         * lib/freadable.c: New file.
4949         * m4/freadable.m4: New file.
4950
4951 2007-04-13  Bruno Haible  <bruno@clisp.org>
4952
4953         * modules/fflush-tests (Makefile.am): Remove EXTRA_DIST. Augment
4954         MOSTLYCLEANFILES.
4955
4956 2007-04-13  Paul Eggert  <eggert@cs.ucla.edu>
4957
4958         * build-aux/bootstrap (gnulib_tool_option_extras): New var, used by
4959         gzip bootstrap.conf to avoid dragging in i18n machinery.
4960         (gnulib_tool_option): Use it.
4961
4962 2007-04-13  Bruno Haible  <bruno@clisp.org>
4963
4964         * tests/test-vasnprintf-posix.c (test_function): Add tests for %f and
4965         %F directives.
4966         * tests/test-vasprintf-posix.c (test_function): Likewise.
4967         * tests/test-snprintf-posix.h (test_function): Likewise.
4968         * tests/test-sprintf-posix.h (test_function): Likewise.
4969         * tests/test-fprintf-posix.h (test_function): Likewise.
4970         * tests/test-printf-posix.h (test_function): Likewise.
4971         * tests/test-fprintf-posix.out: Likewise.
4972
4973 2007-04-13  Bruno Haible  <bruno@clisp.org>
4974
4975         * modules/lock-tests (configure.ac): For LIBSCHED, try also -lposix4.
4976         * modules/tls-tests (configure.ac): Likewise.
4977         Reported by Arto C. Nirkko <anirkko@insel.ch>.
4978
4979 2007-04-13  Bruno Haible  <bruno@clisp.org>
4980
4981         * lib/tls.c (glthread_tls_get): Fix return type.
4982         Patch by Arto C. Nirkko <anirkko@insel.ch>.
4983
4984 2007-04-12  Eric Blake  <ebb9@byu.net>
4985
4986         * modules/gettime (Depends-on): Remove gettime.
4987         Reported by Dmitry V. Levin.
4988
4989 2007-04-12  Bruno Haible  <bruno@clisp.org>
4990
4991         * modules/fflush (Include): Mention <stdio.h>.
4992         * modules/strtoimax (Include): Mention <inttypes.h>.
4993         * modules/strtoumax (Include): Likewise.
4994
4995 2007-04-12  Eric Blake  <ebb9@byu.net>
4996
4997         * .cvsignore: New file.
4998         * .gitignore: Likewise.
4999
5000 2007-04-12  Bruno Haible  <bruno@clisp.org>
5001
5002         * modules/iconv-tests (test_iconv_LDADD): Mention -liconv after LDADD,
5003         not before, since $(LDADD) often contains libgnu.a.
5004         * modules/striconv-tests (test_striconv_LDADD): Likewise.
5005         * modules/striconveh-tests (test_striconveh_LDADD): Likewise.
5006         * modules/striconveha-tests (test_striconveha_LDADD): Likewise.
5007         Needed on Cygwin.
5008
5009 2007-04-12  Eric Blake  <ebb9@byu.net>
5010
5011         Work around glibc's failure to flush stdin on fclose.
5012         * lib/closein.c (close_stdin): Flush stdin before closing.
5013
5014         Work around glibc's failure to reset seekable stdin on exit.
5015         * modules/closein: New module.
5016         * lib/closein.c: New file.
5017         * lib/closein.h: Likewise.
5018         * m4/closein.m4: Likewise.
5019         * MODULES.html.sh (File stream based Input/Output): Document it.
5020
5021 2007-04-12  Simon Josefsson  <simon@josefsson.org>
5022
5023         * gnulib-tool: Rename generated 'autobuild' script to
5024         'do-autobuild' in --create-megatestdir output.
5025
5026         * doc/gnulib.texi (Build robot for gnulib): Fix.
5027
5028 2007-04-12  Simon Josefsson  <simon@josefsson.org>
5029
5030         * modules/sysexits (Depends-on): Add absolute-header.
5031
5032 2007-04-12  Eric Blake  <ebb9@byu.net>
5033
5034         No need to preserve errno on success.
5035         * lib/fflush.c (rpl_fflush): Simplify errno tracking.
5036         Reported by Bruno Haible.
5037
5038 2007-04-12  Simon Josefsson  <simon@josefsson.org>
5039
5040         * MODULES.html.sh (Support for maintaining and releasing
5041         projects): Add autobuild.  Suggested by Eric Blake <ebb9@byu.net>.
5042
5043 2007-04-12  Simon Josefsson  <simon@josefsson.org>
5044
5045         * gnulib-tool (func_modules_add_dummy): Respect --avoid=dummy.
5046
5047 2007-04-12  Simon Josefsson  <simon@josefsson.org>
5048
5049         * modules/autobuild: New module.
5050
5051         * m4/autobuild.m4: New file.
5052
5053 2007-04-11  Bruno Haible  <bruno@clisp.org>
5054
5055         * lib/vasnprintf.c (VASNPRINTF): Implement the %F directive using the
5056         %f directive, if NEED_PRINTF_DIRECTIVE_F is defined.
5057         * m4/printf.m4 (gl_PRINTF_DIRECTIVE_F): New macro.
5058         * m4/vasnprintf.m4 (gl_PREREQ_VASNPRINTF_DIRECTIVE_F): New macro.
5059         * m4/fprintf-posix.m4 (gl_FUNC_FPRINTF_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/snprintf-posix.m4 (gl_FUNC_SNPRINTF_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/sprintf-posix.m4 (gl_FUNC_SPRINTF_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         * m4/vasnprintf-posix.m4 (gl_FUNC_VASNPRINTF_POSIX): Invoke
5069         gl_PRINTF_DIRECTIVE_F. Test gl_cv_func_printf_directive_f. Invoke
5070         gl_PREREQ_VASNPRINTF_DIRECTIVE_F for the replacement.
5071         * m4/vasprintf-posix.m4 (gl_FUNC_VASPRINTF_POSIX): Invoke
5072         gl_PRINTF_DIRECTIVE_F. Test gl_cv_func_printf_directive_f. Invoke
5073         gl_PREREQ_VASNPRINTF_DIRECTIVE_F for the replacement.
5074         * m4/vfprintf-posix.m4 (gl_FUNC_VFPRINTF_POSIX): Invoke
5075         gl_PRINTF_DIRECTIVE_F. Test gl_cv_func_printf_directive_f. Invoke
5076         gl_PREREQ_VASNPRINTF_DIRECTIVE_F for the replacement.
5077         * m4/vsnprintf-posix.m4 (gl_FUNC_VSNPRINTF_POSIX): Invoke
5078         gl_PRINTF_DIRECTIVE_F. Test gl_cv_func_printf_directive_f. Invoke
5079         gl_PREREQ_VASNPRINTF_DIRECTIVE_F for the replacement.
5080         * m4/vsprintf-posix.m4 (gl_FUNC_VSPRINTF_POSIX): Invoke
5081         gl_PRINTF_DIRECTIVE_F. Test gl_cv_func_printf_directive_f. Invoke
5082         gl_PREREQ_VASNPRINTF_DIRECTIVE_F for the replacement.
5083         Reported by Eric Blake.
5084
5085 2007-04-11  Bruno Haible  <bruno@clisp.org>
5086
5087         * m4/printf.m4 (gl_PRINTF_DIRECTIVE_A): Fix test. It always failed.
5088
5089 2007-04-10  Bruno Haible  <bruno@clisp.org>
5090
5091         * m4/printf.m4 (gl_PRINTF_DIRECTIVE_A): Add a test for correct result
5092         for NaN and Infinity. Needed on FreeBSD 6.1.
5093         * tests/test-vasnprintf-posix.c (test_function): Undo last change
5094         regarding results for "%010a" of Infinity and NaN.
5095         * tests/test-vasprintf-posix.c (test_function): Likewise.
5096         * tests/test-snprintf-posix.h (test_function): Likewise.
5097         * tests/test-sprintf-posix.h (test_function): Likewise.
5098         * tests/test-fprintf-posix.h (test_function): Likewise.
5099         * tests/test-printf-posix.h (test_function): Likewise.
5100         * tests/test-fprintf-posix.out: Likewise.
5101
5102 2007-04-10  Bruno Haible  <bruno@clisp.org>
5103
5104         * modules/locale-tests: New file.
5105         * tests/test-locale.c: New file.
5106
5107         * modules/locale: New file.
5108         * lib/locale_.h: New file.
5109         * m4/locale_h.m4: New file.
5110
5111 2007-04-10  Paul Eggert  <eggert@cs.ucla.edu>
5112             Bruno Haible  <bruno@clisp.org>
5113
5114         * m4/signbit.m4 (gl_SIGNBIT): When the sign bit position could not
5115         be determined, test for availability of the copysignf, copysign,
5116         copysignl functions.
5117         * lib/signbitf.c (gl_signbitf): Use copysignf if available in libc.
5118         * lib/signbitd.c (gl_signbitd): Use copysign if available in libc.
5119         * lib/signbitl.c (gl_signbitl): Use copysignl if available in libc.
5120
5121 2007-04-09  Eric Blake  <ebb9@byu.net>
5122
5123         * lib/stdio_.h [REPLACE_FFLUSH]: Declare rpl_fflush.
5124         * modules/stdio (Makefile.am): Support fflush.
5125         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Likewise.
5126         * modules/fflush: New file.
5127         * lib/fflush.c: Likewise.
5128         * m4/fflush.m4: Likewise.
5129         * modules/fflush-tests: New test.
5130         * tests/test-fflush.c: Likewise.
5131         * MODULES.html.sh (Input/output <stdio.h>): Document new module.
5132
5133 2007-04-06  Bruno Haible  <bruno@clisp.org>
5134
5135         * lib/vasnprintf.c: Include <math.h>. Don't include float+.h.
5136         (VASNPRINTF): Use signbit for faster determination whether to print a
5137         minus sign.
5138         * modules/vasnprintf (Files): Remove lib/float+.h.
5139         * modules/fprintf-posix (Depends-on): Add signbit.
5140         * modules/snprintf-posix (Depends-on): Likewise.
5141         * modules/sprintf-posix (Depends-on): Likewise.
5142         * modules/vasnprintf-posix (Depends-on): Likewise.
5143         * modules/vasprintf-posix (Depends-on): Likewise.
5144         * modules/vfprintf-posix (Depends-on): Likewise.
5145         * modules/vsnprintf-posix (Depends-on): Likewise.
5146         * modules/vsprintf-posix (Depends-on): Likewise.
5147
5148 2007-04-06  Bruno Haible  <bruno@clisp.org>
5149
5150         * tests/test-frexp.c (main): Test also the sign bit of zero results.
5151         * tests/test-frexpl.c (main): Likewise.
5152         * tests/test-ldexpl.c (main): Likewise.
5153         * modules/frexp-tests (Depends-on): Add signbit.
5154         * modules/frexpl-tests (Depdends-on): Likewise.
5155         * modules/ldexpl-tests (Depdends-on): Likewise.
5156
5157 2007-04-06  Bruno Haible  <bruno@clisp.org>
5158
5159         * modules/signbit-tests: New file.
5160         * tests/test-signbit.c: New file.
5161
5162         * modules/signbit: New file.
5163         * lib/signbitf.c: New file.
5164         * lib/signbitd.c: New file.
5165         * lib/signbitl.c: New file.
5166         * m4/signbit.m4: New file.
5167         * lib/math_.h (gl_signbitf, gl_signbitd, gl_signbitl): New declarations.
5168         (signbit): New macro.
5169         * m4/math_h.m4 (gl_MATH_H_DEFAULTS): Initialize GNULIB_SIGNBIT and
5170         REPLACE_SIGNBIT.
5171         * modules/math (Makefile.am) Substibute also GNULIB_SIGNBIT and
5172         REPLACE_FREXPL into math.h.
5173
5174 2007-04-06  Bruno Haible  <bruno@clisp.org>
5175
5176         * modules/isnanf-nolibm-tests: New file.
5177         * tests/test-isnanf.c: New file.
5178
5179         * modules/isnanf-nolibm: New file.
5180         * lib/isnanf.h: New file.
5181         * lib/isnanf.c: New file.
5182         * lib/isnan.c: Consider the USE_FLOAT macro.
5183         * m4/isnanf.m4: New file.
5184
5185 2007-04-06  Bruno Haible  <bruno@clisp.org>
5186
5187         * modules/gettext-h (configure.ac): AC_SUBST LIBINTL and LTLIBINTL.
5188         (Link): New section.
5189
5190         * modules/canonicalize-lgpl-tests (Makefile.am): Undo last change.
5191
5192 2007-04-06  Bruno Haible  <bruno@clisp.org>
5193
5194         Assume the 'long double' type.
5195         * m4/longdouble.m4: Remove file.
5196         * config/srclist.txt: Don't mention longdouble.m4.
5197         * lib/allocsa.h: Assume HAVE_LONG_DOUBLE to be true.
5198         * lib/float+.h: Likewise.
5199         * lib/frexp.c: Likewise.
5200         * lib/printf-args.h: Likewise.
5201         * lib/printf-args.c: Likewise.
5202         * lib/printf-frexp.c: Likewise.
5203         * lib/printf-parse.c: Likewise.
5204         * lib/vasnprintf.c: Likewise.
5205         * m4/allocsa.m4: Remove gt_TYPE_LONGDOUBLE invocation.
5206         * m4/intl.m4: Likewise.
5207         * m4/isnanl.m4: Likewise.
5208         * m4/printf.m4: Likewise.
5209         * m4/printf-frexpl.m4: Likewise.
5210         * m4/vasnprintf.m4: Likewise.
5211         * modules/allocsa (Files): Remove m4/longdouble.m4.
5212         * modules/gettext (Files): Likewise.
5213         * modules/relocatable-prog-wrapper (Files): Likewise.
5214         * modules/vasnprintf (Files): Likewise.
5215         * modules/isnanl (Files): Likewise.
5216         (Include): Simplify.
5217         * modules/isnanl-nolibm (Files): Remove m4/longdouble.m4.
5218         (Include): Simplify.
5219         * modules/printf-frexpl (Files): Remove m4/longdouble.m4.
5220         (Include): Simplify.
5221         * modules/snprintf-posix-tests (Files): Remove m4/longdouble.m4.
5222         (configure.ac): Remove gt_TYPE_LONGDOUBLE invocation.
5223         * modules/sprintf-posix-tests (Files): Remove m4/longdouble.m4.
5224         (configure.ac): Remove gt_TYPE_LONGDOUBLE invocation.
5225         * modules/vasnprintf-posix-tests (Files): Remove m4/longdouble.m4.
5226         (configure.ac): Remove gt_TYPE_LONGDOUBLE invocation.
5227         * modules/vasprintf-posix-tests (Files): Remove m4/longdouble.m4.
5228         (configure.ac): Remove gt_TYPE_LONGDOUBLE invocation.
5229         * modules/vsnprintf-posix-tests (Files): Remove m4/longdouble.m4.
5230         (configure.ac): Remove gt_TYPE_LONGDOUBLE invocation.
5231         * modules/vsprintf-posix-tests (Files): Remove m4/longdouble.m4.
5232         (configure.ac): Remove gt_TYPE_LONGDOUBLE invocation.
5233         * tests/test-isnanl-nolibm.c: Assume HAVE_LONG_DOUBLE to be true.
5234         * tests/test-isnanl.c: Likewise.
5235         * tests/test-snprintf-posix.h: Likewise.
5236         * tests/test-sprintf-posix.h: Likewise.
5237         * tests/test-vasnprintf-posix.c: Likewise.
5238         * tests/test-vasnprintf-posix2.c: Likewise.
5239         * tests/test-vasprintf-posix.c: Likewise.
5240
5241 2007-04-06  Bruno Haible  <bruno@clisp.org>
5242
5243         Fix problem with Compaq (ex-DEC) Desktop C compiler on Tru64.
5244         * lib/math_.h [__DECC]: Include the overridden include file through
5245         #include_next, outside the double-inclusion guard.
5246         * lib/stdio_.h [__DECC]: Likewise.
5247         * lib/stdlib_.h [__DECC]: Likewise.
5248         * lib/string_.h [__DECC]: Likewise.
5249         * lib/time_.h [__DECC]: Likewise.
5250         * lib/wchar_.h [__DECC]: Likewise.
5251         * lib/wctype_.h [__DECC]: Likewise.
5252         * lib/inttypes_.h [__DECC]: Likewise.
5253         Reported by Albert Chin <china@thewrittenword.com> in
5254         <http://lists.gnu.org/archive/html/bug-gnulib/2007-04/msg00088.html>.
5255
5256 2007-04-04  Eric Blake  <ebb9@byu.net>
5257
5258         * m4/stdint.m4 (gl_STDINT_H): Detect WINT_MAX bug in cygwin
5259         1.5.x.
5260
5261 2007-04-04  Bruno Haible  <bruno@clisp.org>
5262
5263         * m4/printf.m4 (gl_PRINTF_DIRECTIVE_A): Add a test for correct
5264         rounding. Don't assume that FreeBSD 6 and NetBSD 4 pass this test.
5265
5266 2007-04-04  Bruno Haible  <bruno@clisp.org>
5267
5268         * tests/test-vasnprintf-posix.c (test_function): Allow two possible
5269         results for "%010a" of Infinity and NaN.
5270         * tests/test-vasprintf-posix.c (test_function): Likewise.
5271         * tests/test-snprintf-posix.h (test_function): Likewise.
5272         * tests/test-sprintf-posix.h (test_function): Likewise.
5273         * tests/test-fprintf-posix.h (test_function): Remove these tests.
5274         * tests/test-printf-posix.h (test_function): Likewise.
5275         * tests/test-fprintf-posix.out: Update.
5276         Needed for FreeBSD 6.1.
5277
5278 2007-04-04  Bruno Haible  <bruno@clisp.org>
5279
5280         * DEPENDENCIES: Remove mentions of tar and gzip, since they are not
5281         directly used by the gnulib modules nor by gnulib-tool.
5282
5283 2007-04-04  Paul Eggert  <eggert@cs.ucla.edu>
5284
5285         * DEPENDENCIES: Give overall description of version dependency
5286         desirability.  Use more-typical names for apps.
5287         Add shell, coreutils, diffutils, grep, tar, gzip.
5288
5289 2007-04-04  Simon Josefsson  <simon@josefsson.org>
5290
5291         * MODULES.html.sh: Rename crypto modules.  Remove iconvme.
5292
5293 2007-04-04  Karl Berry  <karl@gnu.org>
5294
5295         * MODULES.html.sh (func_module): missing '.
5296
5297 2007-04-03  Bruno Haible  <bruno@clisp.org>
5298
5299         * modules/argmatch-tests (Makefile.am): New variable
5300         test_argmatch_LDADD.
5301         * modules/argp-tests (Makefile.am): New variable test_argp_LDADD.
5302         * modules/array-list-tests (Makefile.am): New variable
5303         test_array_list_LDADD.
5304         * modules/array-oset-tests (Makefile.am): New variable
5305         test_array_oset_LDADD.
5306         * modules/avltree-list-tests (Makefile.am): New variable
5307         test_avltree_list_LDADD.
5308         * modules/avltree-oset-tests (Makefile.am): New variable
5309         test_avltree_oset_LDADD.
5310         * modules/avltreehash-list-tests (Makefile.am): New variable
5311         test_avltreehash_list_LDADD.
5312         * modules/canonicalize-lgpl-tests (Makefile.am): New variable
5313         test_canonicalize_lgpl_LDADD.
5314         * modules/carray-list-tests (Makefile.am): New variable
5315         test_carray_list_LDADD.
5316         * modules/dirname-tests (Makefile.am): New variable
5317         test_dirname_LDADD.
5318         * modules/linked-list-tests (Makefile.am): New variable
5319         test_linked_list_LDADD.
5320         * modules/linkedhash-list-tests (Makefile.am): New variable
5321         test_linkedhash_list_LDADD.
5322         * modules/rbtree-list-tests (Makefile.am): New variable
5323         test_rbtree_list_LDADD.
5324         * modules/rbtree-oset-tests (Makefile.am): New variable
5325         test_rbtree_oset_LDADD.
5326         * modules/rbtreehash-list-tests (Makefile.am): New variable
5327         test_rbtreehash_list_LDADD.
5328         * modules/xvasprintf-tests (Makefile.am): New variable
5329         test_xvasprintf_LDADD.
5330         Reported by Eric Blake.
5331
5332 2007-04-03  Eric Blake  <ebb9@byu.net>
5333
5334         * DEPENDENCIES: Weaken m4 requirements.
5335
5336 2007-04-03  Bruno Haible  <bruno@clisp.org>
5337
5338         * modules/frexp-tests (configure.ac): Remove AC_SUBST.
5339         * modules/isnanl-tests (configure.ac): Likewise.
5340
5341 2007-04-03  Ben Pfaff  <blp@gnu.org>
5342
5343         * modules/iconv_open: Add $(srcdir)/ to source directory
5344         references in Makefile fragments that call gperf, to fix VPATH
5345         builds.
5346
5347 2007-04-03  Bruno Haible  <bruno@clisp.org>
5348
5349         * modules/ldexpl (Depends-on): Add isnanl, remove isnanl-nolibm.
5350         * lib/ldexpl.c: Undo last change.
5351
5352 2007-04-03  Bruno Haible  <bruno@clisp.org>
5353
5354         * modules/printf-frexpl (Depends-on): Undo last change.
5355         (Files): Add m4/ldexpl.m4.
5356
5357 2007-04-03  Bruno Haible  <bruno@clisp.org>
5358
5359         * m4/isnanl.m4 (gl_FUNC_ISNANL): Substitute ISNANL_LIBM.
5360         * modules/isnanl (Link): New section.
5361
5362         * m4/frexp.m4 (gl_FUNC_FREXP): Substitute FREXP_LIBM.
5363         * modules/frexp (Link): New section.
5364
5365         * m4/frexpl.m4 (gl_FUNC_FREXPL): Substitute FREXPL_LIBM.
5366         * modules/frexpl (Link): New section.
5367
5368         * m4/ldexpl.m4 (gl_FUNC_LDEXPL): Substitute LDEXPL_LIBM.
5369         * modules/ldexpl (Link): New section.
5370
5371 2007-04-03  Bruno Haible  <bruno@clisp.org>
5372
5373         * modules/TEMPLATE-EXTENDED: New file.
5374         * gnulib-tool (func_all_modules, func_verify_module): Exclude it.
5375
5376 2007-04-03  Bruno Haible  <bruno@clisp.org>
5377
5378         * DEPENDENCIES: New file.
5379         Suggested by Simon Josefsson.
5380
5381 2007-04-03  Bruno Haible  <bruno@clisp.org>
5382
5383         * doc/gnulib.texi: Escape @.
5384
5385 2007-04-03  James Youngman  <jay@gnu.org>
5386         and Paul Eggert  <eggert@cs.ucla.edu>
5387
5388         * lib/stat-time.h (get_stat_birthtime): Check for zero-valued
5389         birthtime on all systems that have birthtime, not just those which
5390         use st_birthtimensec rather than st_birthtim.  Putting zero in
5391         st_birthtim.tv_sec is how (for example) FreeBSD/x86 6.1 indicates
5392         that the birth time is not available for files on an NFS mount.
5393
5394 2007-04-03  Simon Josefsson  <simon@josefsson.org>
5395
5396         * modules/memxor: Move back from crypto/, suggested by Bruno.
5397         * modules/crypto/hmac-sha1: Fix memxor dependency.
5398
5399         * modules/crypto/gc: Moved from ../.
5400
5401 2007-04-02  Eric Blake  <ebb9@byu.net>
5402
5403         * lib/ldexpl.c (includes): Avoid libm.
5404
5405         * modules/printf-frexpl (Depends-on): Depend on ldexpl.
5406
5407 2007-04-02  Bruno Haible  <bruno@clisp.org>
5408
5409         * lib/sysexit_.h (EX_OK): Disable the EX_OK definition from <unistd.h>
5410         on IRIX.
5411
5412 2007-04-02  Bruno Haible  <bruno@clisp.org>
5413
5414         * m4/intdiv0.m4 (gt_INTDIV0): Avoid performing the test for real on
5415         x86 or x86_64 platforms running MacOS X.
5416         Reported by Ryan Schmidt <@ryandesign.com>.
5417
5418 2007-04-02  Bruno Haible  <bruno@clisp.org>
5419
5420         * m4/intdiv0.m4 (gt_INTDIV0): When cross-compiling, treat x86_64 like
5421         i386.
5422
5423 2007-04-01  Simon Josefsson  <simon@josefsson.org>
5424
5425         * modules/crypto/arcfour: Moved from ../.
5426         * modules/crypto/arcfour-tests: Moved from ../.
5427         * modules/crypto/arctwo: Moved from ../.
5428         * modules/crypto/arctwo-tests: Moved from ../.
5429         * modules/crypto/des: Moved from ../.
5430         * modules/crypto/des-tests: Moved from ../.
5431         * modules/crypto/gc-arcfour: Moved from ../.
5432         * modules/crypto/gc-arcfour-tests: Moved from ../.
5433         * modules/crypto/gc-arctwo: Moved from ../.
5434         * modules/crypto/gc-arctwo-tests: Moved from ../.
5435         * modules/crypto/gc-des: Moved from ../.
5436         * modules/crypto/gc-des-tests: Moved from ../.
5437         * modules/crypto/gc-hmac-md5: Moved from ../.
5438         * modules/crypto/gc-hmac-md5-tests: Moved from ../.
5439         * modules/crypto/gc-hmac-sha1: Moved from ../.
5440         * modules/crypto/gc-hmac-sha1-tests: Moved from ../.
5441         * modules/crypto/gc-md2: Moved from ../.
5442         * modules/crypto/gc-md2-tests: Moved from ../.
5443         * modules/crypto/gc-md4: Moved from ../.
5444         * modules/crypto/gc-md4-tests: Moved from ../.
5445         * modules/crypto/gc-md5: Moved from ../.
5446         * modules/crypto/gc-md5-tests: Moved from ../.
5447         * modules/crypto/gc-pbkdf2-sha1: Moved from ../.
5448         * modules/crypto/gc-pbkdf2-sha1-tests: Moved from ../.
5449         * modules/crypto/gc-random: Moved from ../.
5450         * modules/crypto/gc-rijndael: Moved from ../.
5451         * modules/crypto/gc-rijndael-tests: Moved from ../.
5452         * modules/crypto/gc-sha1: Moved from ../.
5453         * modules/crypto/gc-sha1-tests: Moved from ../.
5454         * modules/crypto/gc-tests: Moved from ../.
5455         * modules/crypto/hmac-md5: Moved from ../.
5456         * modules/crypto/hmac-md5-tests: Moved from ../.
5457         * modules/crypto/hmac-sha1: Moved from ../.
5458         * modules/crypto/hmac-sha1-tests: Moved from ../.
5459         * modules/crypto/md2: Moved from ../.
5460         * modules/crypto/md2-tests: Moved from ../.
5461         * modules/crypto/md4: Moved from ../.
5462         * modules/crypto/md4-tests: Moved from ../.
5463         * modules/crypto/md5: Moved from ../.
5464         * modules/crypto/md5-tests: Moved from ../.
5465         * modules/crypto/memxor: Moved from ../.
5466         * modules/crypto/rijndael: Moved from ../.
5467         * modules/crypto/rijndael-tests: Moved from ../.
5468         * modules/crypto/sha1: Moved from ../.
5469
5470 2007-03-30  James Youngman  <jay@gnu.org>
5471
5472         * tests/test-stat-time.c (prepare_test): use chmod() rather than
5473         rename() to change the ctime of a file (because ctime is unaffected
5474         by rename on jfs2 on AIX 5.1).
5475         (main): Start by doing cleanup, in case a previous run failed leaving
5476         test files behind.
5477
5478 2007-03-31  Bruno Haible  <bruno@clisp.org>
5479
5480         Support old proprietary implementations of iconv.
5481         * modules/iconv_open: New file.
5482         * lib/iconv_.h: New file.
5483         * m4/iconv_h.m4: New file.
5484         * lib/iconv_open.c: New file.
5485         * lib/iconv_open-aix.gperf: New file.
5486         * lib/iconv_open-hpux.gperf: New file.
5487         * lib/iconv_open-irix.gperf: New file.
5488         * lib/iconv_open-osf.gperf: New file.
5489         * m4/iconv_open.m4: New file.
5490         * modules/linebreak (Depends-on): Add iconv_open.
5491         * modules/striconv (Depends-on): Likewise.
5492         * modules/striconveh (Depends-on): Likewise.
5493         * modules/unicodeio (Depends-on): Likewise.
5494         * lib/striconveh.h (mem_cd_iconveh, str_cd_iconveh): Allow cd to be
5495         (iconv_t)(-1).
5496         * lib/striconveh.c (mem_cd_iconveh_internal): Use an indirect
5497         conversion if cd is (iconv_t)(-1).
5498         (mem_iconveh, str_iconveh): Don't fail just because a direct conversion
5499         is not possible.
5500
5501 2007-03-31  Bruno Haible  <bruno@clisp.org>
5502
5503         * tests/test-striconveha.c (main): Don't expect "autodetect_jp" to
5504         work on Solaris either. Protect also second use of "autodetect_jp".
5505
5506 2007-03-31  Bruno Haible  <bruno@clisp.org>
5507
5508         * m4/frexpl.m4 (gl_FUNC_FREXPL): Set HAVE_DECL_FREXPL to 0 when
5509         the function is not present.
5510
5511 2007-03-31  Bruno Haible  <bruno@clisp.org>
5512
5513         * m4/ldexpl.m4 (gl_FUNC_LDEXPL): Set HAVE_DECL_LDEXPL to 0 when
5514         the function is not present.
5515
5516 2007-03-31  Bruno Haible  <bruno@clisp.org>
5517
5518         * m4/iconv.m4 (AM_ICONV_LINK): Fix 2007-03-29 patch. Test also against
5519         a bug in HP-UX iconv_open().
5520
5521 2007-03-31  Bruno Haible  <bruno@clisp.org>
5522
5523         * MODULES.html.sh (func_module): Don't show gnulib-common.m4.
5524         (Mathematics <math.h>): New section, add fpieee.
5525         (Input/output <stdio.h>): Add fseterr.
5526         (Mathematics <math.h>): New section, add printf-frexp.
5527         (Container data structures): Add sublist.
5528         (Core language properties): Add fpucw, inline.
5529         (Functions for greatest-width integer types <inttypes.h>): Add
5530         imaxabs, imaxdiv, inttypes.
5531         (Mathematics <math.h>): Add frexp, frexpl, isnan-nolibm, isnanl,
5532         isnanl-nolibm, ldexp.
5533         (Mathematics <math.h>): New section, add printf-frexpl.
5534         (Support for systems lacking POSIX:2001): Add fprintf-posix,
5535         printf-posix, snprintf-posix, sprintf-posix, string, search, socklen,
5536         sys_select, sys_socket, vasnprintf-posix, vasprintf-posix,
5537         vfprintf-posix, vprintf-posix, vsnprintf-posix, vsprintf-posix.
5538         (Unicode string functions): Add unistr/u*-mbtoucr.
5539         (Java): Add javacomp-script, javaexec-script.
5540         (C#): Add csharpcomp-script, csharpexec-script.
5541         (Support for building libraries and executables): Add havelib,
5542         relocatable-*.
5543         (Support for maintaining and releasing projects): Renamed from
5544         'Support for maintaining and release projects'. Add announce-gen.
5545
5546 2007-03-31  Bruno Haible  <bruno@clisp.org>
5547
5548         * README: Talk primarily about git.
5549         (git and CVS): Renamed from CVS.
5550         * doc/gnulib.texi (Introduction, Build robot for gnulib): Mention that
5551         gnulib is available through git.
5552         * doc/gnulib-tool.texi (CVS Issues): Mention git and svn as well.
5553
5554 2007-03-30  Bruno Haible  <bruno@clisp.org>
5555
5556         * lib/alloca_.h: Change prefix of double-inclusion guard macro to _GL_.
5557         * lib/poll_.h: Likewise.
5558         * lib/stat_.h: Likewise.
5559         * lib/sys_time_.h: Likewise.
5560         * lib/sysexit_.h: Likewise.
5561         * lib/glob_.h: Prefix double-inclusion guard macro with _GL_.
5562         * lib/stdbool_.h: Likewise.
5563         * lib/byteswap_.h: Add double-inclusion guard.
5564
5565 2007-03-30  Sergey Poznyakoff  <gray@mirddin.farlep.net>
5566
5567         * lib/sysexit_.h: Prefix double-inclusion guard macro with _GNULIB.
5568
5569 2007-03-30  Karl Berry  <karl@gnu.org>
5570
5571         * config/srclist-update: double space after USA in the license
5572         substitution, since that's how it's usually (?) written.
5573
5574 2007-03-30  Paul Eggert  <eggert@cs.ucla.edu>
5575
5576         * lib/write-any-file.c (can_write_any_file): Fix else-else bug
5577         reported by Bruno Haible.
5578
5579 2007-03-29  Bruno Haible  <bruno@clisp.org>
5580
5581         * m4/iconv.m4 (AM_ICONV_LINK): Require AC_CANONICAL_HOST. Test against
5582         a bug in AIX iconv().
5583
5584 2007-03-29  Bruno Haible  <bruno@clisp.org>
5585
5586         * modules/ldexpl-tests: New file.
5587         * tests/test-ldexpl.c: New file.
5588
5589 2007-03-29  Bruno Haible  <bruno@clisp.org>
5590
5591         * lib/ldexpl.c: Include fpucw.h.
5592         (ldexpl): Use BEGIN/END_LONG_DOUBLE_ROUNDING. Skip the last unneeded
5593         multiplication.
5594         * modules/ldexpl (Depends-on): Add fpucw.
5595
5596 2007-03-29  Bruno Haible  <bruno@clisp.org>
5597
5598         * modules/ldexpl: New file.
5599         * m4/ldexpl.m4: New file.
5600         * lib/math_.h (ldexpl): Define to a replacement if REPLACE_LDEXPL is
5601         set.
5602         * m4/math_h.m4 (gl_MATH_H_DEFAULTS): Initialize also GNULIB_LDEXPL,
5603         REPLACE_LDEXPL.
5604         * modules/math (Makefile.am): Substitute also GNULIB_LDEXPL,
5605         REPLACE_LDEXPL.
5606         * m4/printf-frexpl.m4 (gl_FUNC_PRINTF_FREXPL): Invoke
5607         gl_FUNC_LDEXPL_WORKS.
5608         * m4/mathl.m4 (gl_FUNC_LONG_DOUBLE_MATH): Remove test for ldexpl.
5609         * modules/mathl (Files): Remove lib/ldexpl.c.
5610         (Depends-on): Add ldexpl.
5611
5612 2007-03-29  Bruno Haible  <bruno@clisp.org>
5613
5614         * m4/frexpl.m4 (gl_FUNC_FREXPL_WORKS): Declare frexpl.
5615
5616 2007-03-29  Bruno Haible  <bruno@clisp.org>
5617
5618         * tests/test-striconveh.c (main): Don't assume that a direct conversion
5619         between ISO-8859-1 and ISO-8859-2 is possible. Needed for OSF/1, IRIX
5620         and possibly also HP-UX.
5621         * tests/test-striconveha.c (main): Don't expect "autodetect_jp" to
5622         work on AIX, IRIX, HP-UX, OSF/1.
5623         * tests/uniconv/test-u16-conv-from-enc.c (main): Likewise.
5624         * tests/uniconv/test-u16-strconv-from-enc.c (main): Likewise.
5625         * tests/uniconv/test-u32-conv-from-enc.c (main): Likewise.
5626         * tests/uniconv/test-u32-strconv-from-enc.c (main): Likewise.
5627         * tests/uniconv/test-u8-conv-from-enc.c (main): Likewise.
5628         * tests/uniconv/test-u8-strconv-from-enc.c (main): Likewise.
5629
5630 2007-03-29  Bruno Haible  <bruno@clisp.org>
5631
5632         * tests/test-stat-time.c: Include <fcntl.h>, not <sys/fcntl.h>.
5633
5634 2007-03-29  Paul Eggert  <eggert@cs.ucla.edu>
5635
5636         * lib/acl-internal.h (acl_get_fd, acl_set_fd): undef before defining,
5637         to work around a problem on OSF/1 5.1 reported by Bruno Haible.
5638
5639 2007-03-29  Eric Blake  <ebb9@byu.net>
5640
5641         * lib/acl-internal.h: Remove redundant include.
5642         (ACL_NOT_WELL_SUPPORTED): Also filter on EBUSY, returned by
5643         Cygwin when a file is locked.
5644
5645 2007-03-29  Bruno Haible  <bruno@clisp.org>
5646
5647         * lib/vasprintf.c [IN_LIBASPRINTF]: Include different specification
5648         file.
5649         * lib/asprintf.c [IN_LIBASPRINTF]: Likewise.
5650
5651 2007-03-29  Paul Eggert  <eggert@cs.ucla.edu>
5652
5653         * m4/getcwd-path-max.m4 (gl_FUNC_GETCWD_PATH_MAX): Don't bother to
5654         try to remove a parent directory if the child couldn't be removed
5655         (except for the first rmdir, which could fail because the child
5656         doesn't exist).  Problem reported by Jeff Blaine in
5657         <http://lists.gnu.org/archive/html/bug-tar/2007-03/msg00014.html>.
5658
5659 2007-03-28  Bruno Haible  <bruno@clisp.org>
5660
5661         * lib/striconveh.c (utf8conv_carefully): New function.
5662         (mem_cd_iconveh_internal): Invoke it.
5663
5664 2007-03-28  Bruno Haible  <bruno@clisp.org>
5665
5666         * lib/striconveh.c (mem_cd_iconveh_internal): Use u8_mbtoucr instead
5667         of u8_mbtouc in order to distinguish invalid and incomplete UTF-8
5668         input.
5669         * modules/striconveh (Depends-on): Add unistr/u8-mbtoucr. Replace
5670         utf8-ucs4 with unistr/u8-mbtouc. Replace ucs4-utf8 with
5671         unistr/u8-uctomb.
5672
5673 2007-03-28  Bruno Haible  <bruno@clisp.org>
5674
5675         * modules/unistr/u8-mbtoucr: New file.
5676         * lib/unistr/u8-mbtoucr.c: New file.
5677         * modules/unistr/u16-mbtoucr: New file.
5678         * lib/unistr/u16-mbtoucr.c: New file.
5679         * modules/unistr/u16-mbtoucr: New file.
5680         * lib/unistr/u16-mbtoucr.c: New file.
5681         * lib/unistr.h (u8_mbtoucr, u16_mbtoucr, u32_mbtoucr): New declarations.
5682
5683 2007-03-27  Simon Josefsson  <simon@josefsson.org>
5684             Bruno Haible  <bruno@clisp.org>
5685
5686         * m4/vasprintf.m4: Convert AC_SUBST into shell variable for
5687         REPLACE_VASPRINTF.  Set HAVE_VASPRINTF.  Add
5688         AC_REQUIRE([gl_STDIO_H_DEFAULTS]).
5689
5690         * m4/stdio_h.m4: Add stubs for vasprintf too.
5691
5692         * modules/stdio: Support vasprintf in sed command.
5693
5694         * modules/vasprintf: Depend on stdio for prototypes.  Remove
5695         vasprintf.h.  Add stdio module indicator.
5696
5697         * lib/stdio_.h: Declare asprintf and vasprintf, based on
5698         vasprintf.h.
5699
5700         * lib/vasprintf.h: File removed.
5701
5702         * lib/asprintf.c: Use stdio.h instead of vasprintf.h.
5703         * lib/vasprintf.c: Ditto.
5704         * lib/xvasprintf.c: Ditto.
5705         * tests/test-vasprintf-posix.c: Ditto.
5706         * tests/test-vasprintf.c: Ditto.
5707
5708 2007-03-27  Bruno Haible  <bruno@clisp.org>
5709
5710         Make vasnprintf multithread-safe.
5711         * lib/vasnprintf.c (decimal_point_char): New function.
5712         (VASNPRINTF): Use it.
5713         Suggested by Simon Josefsson.
5714
5715 2007-03-27  Eric Blake  <ebb9@byu.net>
5716
5717         Support sub-second birthtime on cygwin.
5718         * m4/stat-time.m4 (gl_STAT_BIRTHTIME): Also check for st_birthtim.
5719         * lib/stat-time.h (STAT_TIMESPEC): Adjust comments.
5720         (get_stat_birthtime): Also work with st_birthtim.
5721
5722 2007-03-27  Paul Eggert  <eggert@cs.ucla.edu>
5723
5724         * lib/stat-time.h (USE_BIRTHTIME): Remove.
5725         (get_stat_atime_ns, get_stat_ctime_ns, get_stat_mtime_ns):
5726         (get_stat_birthtime_ns): Do not try to use "spare" fields.
5727         (get_stat_birthtime_ns): Simplify compile-time tests.
5728         (get_stat_birthtime): Change the API to look like
5729         get_stat_mtime etc., except return a negative tv_nsec on error.
5730         * m4/stat-time.m4 (gl_STAT_TIME, gl_STAT_BIRTHTIME):
5731         Don't check for "spare" fields.
5732         (gl_STAT_BIRTHTIME): Don't check for struct stat.st_birthtimespec.tv_sec
5733         or for struct stat.st_birthtime, as these tests aren't used.
5734         * tests/test-stat-time.c (test_birthtime): Adjust to new API.
5735
5736 2007-03-27  Bruno Haible  <bruno@clisp.org>
5737
5738         * lib/stat-time.h: Include <sys/stat.h>.
5739
5740 2007-03-27  James Youngman  <jay@gnu.org>
5741
5742         * lib/stat-time.h (get_stat_birthtime): New function for
5743           retrieving st_birthtime as provided by UFS2 (hence *BSD).
5744         * m4/stat-time.m4 (gl_STAT_BIRTHTIME): Probe for st_birthtime
5745           and its variants.
5746         * modules/stat-time (configure.ac): call gl_STAT_BIRTHTIME.
5747         * modules/stat-time-test: New file.
5748         * tests/test-stat-time.c: New test, devised by Bruno Haible.
5749
5750 2007-03-26  Bruno Haible  <bruno@clisp.org>
5751
5752         Better support of signalling NaNs.
5753         * lib/atanl.c: Include isnanl.h.
5754         (atanl): Perform test for NaN at the beginning of the function and
5755         through a call to isnanl.
5756         * lib/cosl.c: Include isnanl.h.
5757         (cosl): Perform test for NaN at the beginning of the function and
5758         through a call to isnanl.
5759         * lib/ldexpl.c: Include isnanl.h.
5760         (ldexpl): Perform test for NaN through a call to isnanl.
5761         * lib/logl.c: Include isnanl.h.
5762         (logl): Perform test for NaN at the beginning of the function and
5763         through a call to isnanl.
5764         * lib/sinl.c: Include isnanl.h.
5765         (sinl): Perform test for NaN at the beginning of the function and
5766         through a call to isnanl.
5767         * lib/sqrtl.c: Include isnanl.h.
5768         (sqrtl): Perform test for NaN at the beginning of the function and
5769         through a call to isnanl.
5770         * lib/tanl.c: Include isnanl.h.
5771         (tanl): Perform test for NaN at the beginning of the function and
5772         through a call to isnanl.
5773         * lib/trigl.c (ieee754_rem_pio2l): Remove test for NaN.
5774         * modules/mathl (Depends-on): Add isnanl.
5775
5776 2007-03-26  Eric Blake  <ebb9@byu.net>
5777
5778         * m4/vasnprintf.m4 (gl_PREREQ_VASNPRINTF_DIRECTIVE_A): Fix
5779         regression in logic sense of previous patch.
5780
5781 2007-03-26  Bruno Haible  <bruno@clisp.org>
5782
5783         * m4/vasnprintf.m4 (gl_PREREQ_VASNPRINTF_DIRECTIVE_A): Don't use
5784         unportable shell command "if ! ...".
5785         Reported by Ralf Wildenhues.
5786
5787 2007-03-25  Bruno Haible  <bruno@clisp.org>
5788
5789         * lib/sysexit_,h: If HAVE_SYSEXITS_H is defined, include the original
5790         <sysexits.h> file, and only add EX_CONFIG.
5791         * m4/sysexits.m4 (gl_SYSEXITS): If <sysexits.h> exists, check its
5792         absolute file name and whether it is sufficient. Substitute also
5793         HAVE_SYSEXITS_H and ABSOLUTE_SYSEXITS_H.
5794         * modules/sysexits (Makefile.am): Substitute HAVE_SYSEXITS_H and
5795         ABSOLUTE_SYSEXITS_H into sysexits.h.
5796
5797 2007-03-25  Bruno Haible  <bruno@clisp.org>
5798
5799         * lib/getaddrinfo.c (getaddrinfo): Don't access hints->ai_flags when
5800         hints is NULL.
5801
5802 2007-03-25  Bruno Haible  <bruno@clisp.org>
5803
5804         * lib/uniconv/u8-conv-from-enc.c (u8_conv_from_encoding): Add a cast.
5805         * lib/uniconv/u8-strconv-to-enc.c (u8_strconv_to_encoding): Likewise.
5806
5807 2007-03-25  Bruno Haible  <bruno@clisp.org>
5808
5809         * lib/vasnprintf.c: Include langinfo.h.
5810         (VASNPRINTF): Prefer nl_langinfo over localeconv, since it's more
5811         multithread-safe.
5812         * m4/vasnprintf.m4 (gl_PREREQ_VASNPRINTF_DIRECTIVE_A): New macro.
5813         * m4/fprintf-posix.m4 (gl_FUNC_FPRINTF_POSIX): Invoke it.
5814         * m4/snprintf-posix.m4 (gl_FUNC_SNPRINTF_POSIX): Likewise.
5815         * m4/sprintf-posix.m4 (gl_FUNC_SPRINTF_POSIX): Likewise.
5816         * m4/vasnprintf-posix.m4 (gl_FUNC_VASNPRINTF_POSIX): Likewise.
5817         * m4/vasprintf-posix.m4 (gl_FUNC_VASPRINTF_POSIX): Likewise.
5818         * m4/vfprintf-posix.m4 (gl_FUNC_VFPRINTF_POSIX): Likewise.
5819         * m4/vsnprintf-posix.m4 (gl_FUNC_VSNPRINTF_POSIX: Likewise.
5820         * m4/vsprintf-posix.m4 (gl_FUNC_VSPRINTF_POSIX): Likewise.
5821         Reported by Simon Josefsson.
5822
5823 2007-03-25  Bruno Haible  <bruno@clisp.org>
5824
5825         * lib/printf-parse.c [!IN_LIBINTL]: Include <stdint.h>, for intmax_t.
5826         (PRINTF_PARSE): Make the support for size specifier 'j' unconditional.
5827         * modules/vasnprintf (Depends-on): Add stdint.
5828
5829 2007-03-25  Bruno Haible  <bruno@clisp.org>
5830
5831         * modules/fpieee: New file.
5832         * m4/fpieee.m4: New file.
5833         * modules/isnan-nolibm (Depends-on): Add fpieee.
5834         * modules/isnanl-nolibm (Depends-on): Add fpieee.
5835         * modules/isnanl (Depends-on): Add fpieee.
5836
5837 2007-03-25  Bruno Haible  <bruno@clisp.org>
5838
5839         * m4/frexpl.m4 (gl_FUNC_FREXPL_WORKS): Test also finite numbers.
5840
5841 2007-03-25  Bruno Haible  <bruno@clisp.org>
5842
5843         Avoid test failures on IRIX 6.5.
5844         * tests/test-frexpl.c (MIN_NORMAL_EXP): New macro.
5845         (main): Use it.
5846         * tests/test-printf-frexpl.c (MIN_NORMAL_EXP, MIN_SUBNORMAL_EXP): New
5847         macros.
5848         (main): Use them.
5849
5850 2007-03-25  Bruno Haible  <bruno@clisp.org>
5851
5852         * m4/frexpl.m4 (gl_FUNC_FREXPL_WORKS): New macro.
5853         (gl_FUNC_FREXPL): Invoke it. Set REPLACE_FREXPL to 1 if it frexpl
5854         exists but doesn't work.
5855         * lib/math_.h (frexpl): Define as a replacement macro if REPLACE_FREXPL
5856         is set. Don't provide a prototype if REPLACE_FREXPL is not set.
5857         * m4/math_h.m4 (gl_MATH_H_DEFAULTS): Initialize REPLACE_FREXPL.
5858         * modules/math (Makefile.am) Substibute also REPLACE_FREXPL into math.h.
5859
5860 2007-03-25  Bruno Haible  <bruno@clisp.org>
5861
5862         * m4/frexp.m4 (gl_FUNC_FREXP_WORKS): Add check whether frexp(inf)
5863         returns inf. Needed on IRIX 6.5.
5864
5865 2007-03-25  Bruno Haible  <bruno@clisp.org>
5866
5867         * tests/test-frexpl.c: Include isnanl-nolibm.h.
5868         (main): Use isnanl instead of x != x idiom.
5869         * modules/frexpl-tests (Depends-on): Add isnanl-nolibm.
5870
5871         * tests/test-frexp.c: Include isnan.h.
5872         (main): Use isnan instead of x != x idiom.
5873         * modules/frexp-tests (Depends-on): Add isnan-nolibm.
5874
5875 2007-03-25  Bruno Haible  <bruno@clisp.org>
5876
5877         * tests/test-frexp.c (NaN): New function/macro.
5878         (main): Use it instead of 0.0 / 0.0.
5879         * tests/test-isnan.c (NaN): New function/macro.
5880         (main): Use it instead of 0.0 / 0.0.
5881         * tests/test-vasnprintf-posix.c (NaN): New function/macro.
5882         (test_function): Use it instead of 0.0 / 0.0.
5883         * tests/test-vasprintf-posix.c (NaN): New function/macro.
5884         (test_function): Use it instead of 0.0 / 0.0.
5885         * tests/test-snprintf-posix.h (NaN): New function/macro.
5886         (test_function): Use it instead of 0.0 / 0.0.
5887         * tests/test-sprintf-posix.h (NaN): New function/macro.
5888         (test_function): Use it instead of 0.0 / 0.0.
5889         * tests/test-fprintf-posix.h (NaN): New function/macro.
5890         (test_function): Use it instead of 0.0 / 0.0.
5891         * tests/test-printf-posix.h (NaN): New function/macro.
5892         (test_function): Use it instead of 0.0 / 0.0.
5893
5894         * lib/isnan.c (FUNC): Work around a DEC C compiler bug.
5895
5896 2007-03-25  Bruno Haible  <bruno@clisp.org>
5897
5898         * lib/glob_.h: Include <sys/stat.h>. Avoids warnings on AIX 5.1.
5899
5900 2007-03-25  Bruno Haible  <bruno@clisp.org>
5901
5902         * lib/regexec.c (merge_state_with_log): Make static.
5903
5904 2007-03-25  Bruno Haible  <bruno@clisp.org>
5905
5906         * lib/trigl.c (kernel_rem_pio2): Make static.
5907
5908 2007-03-25  Bruno Haible  <bruno@clisp.org>
5909
5910         * lib/sincosl.c (sincosl_table): Make static.
5911
5912 2007-03-25  Bruno Haible  <bruno@clisp.org>
5913
5914         * lib/argp.h (__restrict): Define to empty, rather than to 'restrict',
5915         if the compiler does not support C99.
5916
5917 2007-03-25  Bruno Haible  <bruno@clisp.org>
5918
5919         * modules/time (Makefile.am): Ensure all rule action lines start with a
5920         tab.
5921
5922 2007-03-24  Bruno Haible  <bruno@clisp.org>
5923
5924         * modules/tsearch-tests: New file.
5925         * tests/test-tsearch.sh: New file.
5926         * tests/test-tsearch.c: New file, mostly copied from glibc.
5927
5928         * modules/search-tests: New file.
5929         * tests/test-search.c: New file.
5930
5931         * modules/search: New file.
5932         * lib/search_.h: New file, incorporating lib/tsearch.h.
5933         * m4/search_h.m4: New file.
5934         * lib/tsearch.h: Remove file.
5935         * lib/tsearch.c: Include search.h instead of tsearch.h.
5936         * m4/tsearch.m4 (gl_FUNC_TSEARCH): Require gl_SEARCH_H_DEFAULTS. Set
5937         HAVE_TSEARCH.
5938         * modules/tsearch (Files): Remove lib/tsearch.h.
5939         (Depends-on): Add search.
5940         (configure.ac): Invoke gl_SEARCH_MODULE_INDICATOR.
5941         (Include): Change tsearch.h into search.h.
5942
5943 2007-03-24  Bruno Haible  <bruno@clisp.org>
5944
5945         * modules/fpucw: New file.
5946         * lib/fpucw.h: New file.
5947         * lib/frexp.c: Include fpucw.h.
5948         (DECL_ROUNDING, BEGIN_ROUNDING, END_ROUNDING): New macros.
5949         (FUNC): Use them.
5950         * lib/printf-frexp.c: Include fpucw.h.
5951         (DECL_ROUNDING, BEGIN_ROUNDING, END_ROUNDING): New macros.
5952         (FUNC): Use them.
5953         * lib/vasnprintf.c: Include fpucw.h.
5954         (VASNPRINTF): Invoke BEGIN/END_LONG_DOUBLE_ROUNDING around the
5955         'long double' calculations.
5956         * tests/test-frexpl.c: Include fpucw.h.
5957         (main): Invoke BEGIN_LONG_DOUBLE_ROUNDING.
5958         * tests/test-printf-frexpl.c: Include fpucw.h.
5959         (main): Invoke BEGIN_LONG_DOUBLE_ROUNDING.
5960         * modules/frexpl (Depends-on): Add fpucw.
5961         * modules/printf-frexpl (Depends-on): Likewise.
5962         * modules/fprintf-posix (Depends-on): Likewise.
5963         * modules/snprintf-posix (Depends-on): Likewise.
5964         * modules/sprintf-posix (Depends-on): Likewise.
5965         * modules/vasnprintf-posix (Depends-on): Likewise.
5966         * modules/vasprintf-posix (Depends-on): Likewise.
5967         * modules/vfprintf-posix (Depends-on): Likewise.
5968         * modules/vsnprintf-posix (Depends-on): Likewise.
5969         * modules/vsprintf-posix (Depends-on): Likewise.
5970         * modules/frexpl-tests (Depends-on): Likewise.
5971         * modules/printf-frexpl-tests (Depends-on): Likewise.
5972
5973 2007-03-24  Bruno Haible  <bruno@clisp.org>
5974
5975         * lib/float+.h: New file.
5976         * lib/isnan.c: Include float+.h.
5977         (SIZE): New macro.
5978         (FUNC): Compare only SIZE bytes of the value.
5979         * lib/vasnprintf.c: Include float+.h.
5980         (VASNPRINTF): When comparing agains +0.0L or +0.0, compare only
5981         SIZEOF_LDBL or SIZEOF_DBL bytes.
5982         * modules/isnan-nolibm (Files): Add lib/float+.h.
5983         * modules/isnanl-nolibm (Files): Add lib/float+.h.
5984         * modules/isnanl (Files): Add lib/float+.h.
5985         * modules/vasnprintf (Files): Add lib/float+.h.
5986
5987 2007-03-24  Bruno Haible  <bruno@clisp.org>
5988
5989         * lib/vasnprintf.c [!HAVE_LONG_DOUBLE]: Include printf-frexp.h. Don't
5990         include isnanl-nolibm.h.
5991
5992 2007-03-24  Bruno Haible  <bruno@clisp.org>
5993
5994         * tests/test-read-file.c (main): Don't produce spurious output for
5995         expected situations. Make the test fail if it encountered unexpected
5996         results.
5997
5998 2007-03-24  Bruno Haible  <bruno@clisp.org>
5999
6000         * m4/locale-fr.m4 (gt_LOCALE_FR): Remove the special-casing of NetBSD,
6001         since its fr_FR.ISO8859-1 locale wouldn't pass the tests.
6002
6003 2007-03-24  Bruno Haible  <bruno@clisp.org>
6004
6005         * m4/locale-fr.m4 (gt_LOCALE_FR, gt_LOCALE_FR_UTF8): Fix last change.
6006
6007 2007-03-24  Bruno Haible  <bruno@clisp.org>
6008
6009         * modules/unistr/base (Depends-on): Remove utf8-ucs4-unsafe,
6010         utf16-ucs4-unsafe, utf8-ucs4, utf16-ucs4, ucs4-utf8, ucs4-utf16.
6011
6012         * modules/unistr/u8-mbtouc: Add source files from module utf8-ucs4.
6013         * modules/utf8-ucs4: Turn into a symbolic link to module
6014         unistr/u8-mbtouc.
6015
6016         * modules/unistr/u8-mbtouc-unsafe: Add source files from module
6017         utf8-ucs4-unsafe.
6018         * modules/utf8-ucs4-unsafe: Turn into a symbolic link to module
6019         unistr/u8-mbtouc-unsafe.
6020
6021         * modules/unistr/u16-mbtouc: Add source files from module utf16-ucs4.
6022         * modules/utf16-ucs4: Turn into a symbolic link to module
6023         unistr/u16-mbtouc.
6024
6025         * modules/unistr/u16-mbtouc-unsafe: Add source files from module
6026         utf16-ucs4-unsafe.
6027         * modules/utf16-ucs4-unsafe: Turn into a symbolic link to module
6028         unistr/u16-mbtouc-unsafe.
6029
6030         * modules/unistr/u8-uctomb: Add source files from module utf4-utf8.
6031         * modules/ucs4-utf8: Turn into a symbolic link to module
6032         unistr/u8-ubtomb.
6033
6034         * modules/unistr/u16-uctomb: Add source files from module utf4-utf16.
6035         * modules/ucs4-utf16: Turn into a symbolic link to module
6036         unistr/u16-ubtomb.
6037
6038 2007-03-24  Bruno Haible  <bruno@clisp.org>
6039
6040         * lib/unistr/u8-mbtouc-aux.c: Renamed from lib/unistr/utf8-ucs4.c.
6041         Enable the function only if HAVE_INLINE.
6042         * lib/unistr/u8-mbtouc-unsafe-aux.c: Renamed from
6043         lib/unistr/utf8-ucs4-unsafe.c. Enable the function only if HAVE_INLINE.
6044         * lib/unistr/u16-mbtouc-aux.c: Renamed from lib/unistr/utf16-ucs4.c.
6045         Enable the function only if HAVE_INLINE.
6046         * lib/unistr/u16-mbtouc-unsafe-aux.c: Renamed from
6047         lib/unistr/utf16-ucs4-unsafe.c. Enable the function only if HAVE_INLINE.
6048         * lib/unistr/u8-uctomb-aux.c: Renamed from lib/unistr/ucs4-utf8.c.
6049         Enable the function only if HAVE_INLINE.
6050         * lib/unistr/u16-uctomb-aux.c: Renamed from lib/unistr/ucs4-utf16.c.
6051         Enable the function only if HAVE_INLINE.
6052         * modules/utf8-ucs4: Update.
6053         * modules/utf8-ucs4-unsafe: Update.
6054         * modules/utf16-ucs4: Update.
6055         * modules/utf16-ucs4-unsafe: Update.
6056         * modules/ucs4-utf8: Update.
6057         * modules/ucs4-utf16: Update.
6058
6059 2007-03-24  Bruno Haible  <bruno@clisp.org>
6060
6061         * lib/utf8-ucs4.h: Remove file.
6062         * lib/utf8-ucs4-unsafe.h: Remove file.
6063         * lib/utf16-ucs4.h: Remove file.
6064         * lib/utf16-ucs4-unsafe.h: Remove file.
6065         * lib/ucs4-utf8.h: Remove file.
6066         * lib/ucs4-utf16.h: Remove file.
6067         * lib/unistr.h: Include their previous contents.
6068         * m4/utf-ucs4.m4: Remove file.
6069         * m4/ucs4-utf.m4: Remove file.
6070         * modules/utf8-ucs4 (Files): Remove lib/utf8-ucs4.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/utf8-ucs4-unsafe (Files): Remove lib/utf8-ucs4-unsafe.h.
6076         (Depends-on): Add unistr/base.
6077         (configure.ac): Remove gl_UTF_UCS4.
6078         (Makefile.am): Update.
6079         (Include): Change to unistr.h.
6080         * modules/utf16-ucs4 (Files): Remove lib/utf16-ucs4.h.
6081         (Depends-on): Add unistr/base.
6082         (configure.ac): Remove gl_UTF_UCS4.
6083         (Makefile.am): Update.
6084         (Include): Change to unistr.h.
6085         * modules/utf16-ucs4-unsafe (Files): Remove lib/utf16-ucs4-unsafe.h.
6086         (Depends-on): Add unistr/base.
6087         (configure.ac): Remove gl_UTF_UCS4.
6088         (Makefile.am): Update.
6089         (Include): Change to unistr.h.
6090         * modules/ucs4-utf8 (Files): Remove lib/ucs4-utf8.h.
6091         (Depends-on): Add unistr/base.
6092         (configure.ac): Remove gl_UCS4_UTF.
6093         (Makefile.am): Update.
6094         (Include): Change to unistr.h.
6095         * modules/ucs4-utf16 (Files): Remove lib/ucs4-utf16.h.
6096         (Depends-on): Add unistr/base.
6097         (configure.ac): Remove gl_UCS4_UTF.
6098         (Makefile.am): Update.
6099         (Include): Change to unistr.h.
6100         * lib/unistr/utf8-ucs4.c: Include unistr.h instead of utf8-ucs4.h.
6101         * lib/unistr/utf8-ucs4-unsafe.c: Include unistr.h instead of
6102         utf8-ucs4-unsafe.h.
6103         * lib/unistr/utf16-ucs4.c: Include unistr.h instead of utf16-ucs4.h.
6104         * lib/unistr/utf16-ucs4-unsafe.c: Include unistr.h instead of
6105         utf16-ucs4-unsafe.h.
6106         * lib/unistr/ucs4-utf8.c: Include unistr.h instead of ucs4-utf8.h.
6107         * lib/unistr/ucs4-utf16.c: Include unistr.h instead of ucs4-utf16.h.
6108         * lib/unistr/u8-chr.c: Don't include ucs4-utf8.h.
6109         * lib/unistr/u8-strchr.c: Likewise.
6110         * lib/unistr/u8-strrchr.c: Likewise.
6111         * lib/unistr/u16-chr.c: Don't include ucs4-utf16.h.
6112         * lib/unistr/u16-strchr.c: Likewise.
6113         * lib/unistr/u16-strrchr.c: Likewise.
6114         * lib/striconveh.c: Update.
6115         * lib/linebreak.c: Update.
6116
6117 2007-03-24  Bruno Haible  <bruno@clisp.org>
6118
6119         * lib/argp-help.c (fill_in_uparams, canon_doc_option): Cast the
6120         arguments of isspace, isalpha, isalnum, isdigit to 'unsigned char'.
6121
6122 2007-03-22  Bruno Haible  <bruno@clisp.org>
6123
6124         * lib/strptime.c (__strptime_internal): Use ANSI C syntax.
6125
6126 2007-03-23  Paul Eggert  <eggert@cs.ucla.edu>
6127
6128         * MODULES.html.sh (File system functions): New module write-any-file.
6129         * modules/write-any-file, lib/write-any-file.c, lib/write-any-file.h:
6130         * m4/write-any-file.m4: New files.
6131
6132 2007-03-23  Eric Blake  <ebb9@byu.net>
6133
6134         * gnulib-tool: Rearrange space-tab sequences, since some editors
6135         like to eat them.
6136
6137 2007-03-23  Eric Blake  <ebb9@byu.net>
6138
6139         * lib/version-etc.c (version_etc_va): Update license wording to
6140         be more concise.  Recommended by Richard Stallman.
6141
6142 2007-03-22  Bruno Haible  <bruno@clisp.org>
6143
6144         * lib/poll.c (MSG_PEEK): New fallback definition.
6145
6146 2007-03-22  Bruno Haible  <bruno@clisp.org>
6147
6148         * modules/sys_socket-tests (configure.ac): Check for shutdown function.
6149         * tests/test-sys_socket.c (a): Test only if shutdown() exists.
6150         (main): Update.
6151         Fixes a compilation error on BeOS.
6152
6153 2007-03-22  Bruno Haible  <bruno@clisp.org>
6154
6155         * modules/frexpl-tests: New file.
6156         * tests/test-frexpl.c: New file.
6157
6158         * modules/frexpl: New file.
6159         * m4/frexpl.m4: New file.
6160         * modules/math (Makefile.am): Also substitute GNULIB_FREXPL into math.h.
6161         * lib/math_.h (frexpl): Test GNULIB_FREXPL instead of GNULIB_MATHL.
6162         * m4/math_h.m4 (gl_MATH_H_DEFAULTS): Initialize GNULIB_FREXPL.
6163         * modules/mathl (Files): Remove lib/frexpl.c, lib/frexp.c.
6164         (Depends-on): Add frexpl. Remove isnanl-nolibm.
6165         * m4/mathl.m4 (gl_FUNC_LONG_DOUBLE_MATH): Don't test for frexpl.
6166
6167 2007-03-22  Bruno Haible  <bruno@clisp.org>
6168
6169         * lib/frexpl.c: Share code with lib/frexp.c.
6170         * modules/mathl (Files): Add lib/frexp.c.
6171         (Depends-on): Add isnanl-nolibm.
6172
6173 2007-03-22  Bruno Haible  <bruno@clisp.org>
6174
6175         * modules/printf-frexp (Files): Add m4/frexp.m4.
6176         * m4/printf-frexp.m4 (gl_FUNC_PRINTF_FREXP): Define HAVE_FREXP_IN_LIBC
6177         only if the found frexp function actually works.
6178
6179 2007-03-22  Bruno Haible  <bruno@clisp.org>
6180
6181         * lib/frexp.c: Remove older implementation that uses divisions.
6182
6183 2007-03-21  Bruno Haible  <bruno@clisp.org>
6184
6185         * modules/frexp-tests: New file.
6186         * tests/test-frexp.c: New file.
6187
6188         * modules/frexp: New file.
6189         * lib/frexp.c: New file.
6190         * m4/frexp.m4: New file.
6191         * lib/math_.h (frexp): New declaration.
6192         * m4/math_h.m4 (gl_MATH_H_DEFAULTS): Also initialize GNULIB_FREXP and
6193         REPLACE_FREXP.
6194         * modules/math (math.h): Also substitute GNULIB_FREXP, REPLACE_FREXP.
6195
6196 2007-03-21  Bruno Haible  <bruno@clisp.org>
6197
6198         * modules/isnanl-tests: New file.
6199         * tests/test-isnanl.c: New file.
6200
6201         * modules/isnanl: New file.
6202         * lib/isnanl.h: New file.
6203         * m4/isnanl.m4 (gl_FUNC_ISNANL): New macro.
6204         (gl_FUNC_ISNANL_NO_LIBM): Invoke gl_HAVE_ISNANL_NO_LIBM,
6205         gl_FUNC_ISNANL_WORKS.
6206         (gl_HAVE_ISNANL_NO_LIBM, gl_HAVE_ISNANL_IN_LIBM, gl_FUNC_ISNANL_WORKS):
6207         New macros.
6208
6209 2007-03-21  Bruno Haible  <bruno@clisp.org>
6210
6211         * modules/isnanl-nolibm (Files): Add lib/isnanl-nolibm.h, remove
6212         lib/isnanl.h.
6213         (Include): Update.
6214         * lib/isnanl-nolibm.h: Renamed from lib/isnanl.h.
6215         * lib/vasnprintf.c: Update.
6216         * modules/isnanl-nolibm-tests (Files): Add tests/test-isnanl-nolibm.c,
6217         tests/test-isnanl.h, remove tests/test-isnanl.c.
6218         (Makefile.am): Update.
6219         * tests/test-isnanl-nolibm.c: New file.
6220         * tests/test-isnanl.h: New file.
6221         * tests/test-isnanl.c: Remove file.
6222
6223 2007-03-21  Jim Meyering  <jim@meyering.net>
6224
6225         When trying to open ".", treat ESTALE like EACCES.
6226         * lib/savewd.c (savewd_save): Resort to forking not just upon
6227         failure with EACCES, but also when errno is ESTALE.
6228
6229 2007-03-20  Bruno Haible  <bruno@clisp.org>
6230
6231         * lib/string_.h (strndup): Enable declaration also if HAVE_STRNDUP.
6232         Needed on AIX 5.1. Reported by Matthew Woehlke.
6233
6234 2007-03-19  Paul Eggert  <eggert@cs.ucla.edu>
6235
6236         Suggestions by Bruno Haible:
6237         * lib/acl-internal.h: Include "gettext.h" rather than rolling
6238         our own.
6239         (ACL_NOT_WELL_SUPPORTED): Parenthesize arg when used.
6240         * modules/acl (Depends-on): Add gettext.
6241
6242 2007-03-19  Bruno Haible  <bruno@clisp.org>
6243
6244         * modules/iconvme: Remove file.
6245         * lib/iconvme.h: Remove file.
6246         * lib/iconvme.c: Remove file.
6247         * m4/iconvme.m4: Remove file.
6248
6249 2007-03-19  Bruno Haible  <bruno@clisp.org>
6250
6251         * doc/relocatable-maint.texi: Break long shell script line.
6252         Suggested by Thien-Thi Nguyen <ttn@gnuvola.org>.
6253
6254 2007-03-19  Paul Eggert  <eggert@cs.ucla.edu>
6255
6256         Add limited support for Solaris 10 ZFS-style ACLs: just enough to
6257         handle file_has_acl.
6258         * lib/acl-internal.h, lib/acl_entries.c, lib/file-has-acl.c: New files.
6259         * lib/acl.c: Move header inclusions and related macro defns into
6260         lib/acl-internal.h.
6261         (S_ISLNK): Remove defn, since that's now done for us.
6262         (file_has_acl): Move to lib/file-has-acl.c.
6263         Call acl_trivial if available.  This is the crucial part of the fix.
6264         (acl_entries): Move to lib/acl_entries.c.  Now extern, since it's
6265         shared within the library.  Rewrite a bit, partly to make it compatible
6266         with the GNU coding style.
6267         * m4/acl.m4 (AC_FUNC_ACL): Add AC_LIBOBJ([file-has-acl]).
6268         Remove unnecessary double-quotes.
6269         Don't test for acl_to_text; the build will catch that.
6270         Replace acl_entries if it doesn't exist and it is needed.
6271         Check for -lsec and acl_trivial (as used on Solaris 10).
6272         * modules/acl (Files): Add lib/acl-internal.h, lib/acl_entries.c,
6273         lib/file-has-acl.c.
6274         (Depends-on): Add sys_stat, for S_ISLNK.
6275
6276 2007-03-19  Ben Pfaff  <blp@gnu.org>
6277
6278         * doc/gnulib.texi: Fix typos.
6279         Suggested by Thien-Thi Nguyen <ttn@gnuvola.org>.
6280
6281 2007-03-19  Paul Eggert  <eggert@cs.ucla.edu>
6282
6283         * lib/getcwd.c (__getcwd): Remove redundant comparison of buf to NULL.
6284         If size is zero here, buf must be zero.
6285
6286 2007-03-19  Simon Josefsson  <simon@josefsson.org>
6287
6288         * des.c: Remove weak_keys_chksum.  Reported by Bruno Haible
6289         <bruno@clisp.org>.
6290
6291 2007-03-18  Bruno Haible  <bruno@clisp.org>
6292
6293         * lib/vasnprintf.c (VASNPRINTF): Undo first part of last patch.
6294         Suggested by Eric Blake.
6295
6296 2007-03-18  Ben Pfaff  <blp@gnu.org>
6297
6298         * doc/relocatable.texi: Recommend using as prefix a directory
6299         that does not exist and will never be created.  Based on
6300         discussion with Bruno Haible, Ralf Wildenhues, Matthew Woehlke,
6301         and others.
6302
6303 2007-03-17  Bruno Haible  <bruno@clisp.org>
6304
6305         * lib/fchownat.c: Include lchown.h.
6306
6307 2007-03-17  Bruno Haible  <bruno@clisp.org>
6308
6309         Fix endless loop when the given allocated size was > INT_MAX.
6310         * lib/vasnprintf.c (EOVERFLOW): New fallback definition.
6311         (VASNPRINTF): Fail with EOVERFLOW when the given allocated size is
6312         larger than INT_MAX, or when it grow to a value larger than INT_MAX.
6313         * lib/vsprintf.c (vsprintf): Don't pass a size > INT_MAX to vasnprintf.
6314         * lib/sprintf.c (sprintf): Likewise.
6315
6316 2007-03-17  Bruno Haible  <bruno@clisp.org>
6317
6318         * tests/test-argp-2.sh (func_compare): Output a context diff.
6319
6320 2007-03-17  Bruno Haible  <bruno@clisp.org>
6321
6322         * m4/locale-fr.m4 (gt_LOCALE_FR, gt_LOCALE_FR_UTF8): Check also the
6323         locale's decimal-point character.
6324
6325 2007-03-17  Bruno Haible  <bruno@clisp.org>
6326
6327         * lib/vasnprintf.c (VASNPRINTF): Clear out the memory used for arg_mem
6328         before comparing it. Needed because on some platforms (e.g. x86) a
6329         'long double' occupies less bytes than sizeof (long double).
6330
6331 2007-03-17  Bruno Haible  <bruno@clisp.org>
6332
6333         * tests/test-crc.c (main): Make printf statements 64-bit clean.
6334         * tests/test-gc-pbkdf2-sha1.c (main): Likewise.
6335         * tests/test-getaddrinfo.c (simple): Likewise.
6336         * tests/test-read-file.c (main): Likewise.
6337
6338 2007-03-17  Bruno Haible  <bruno@clisp.org>
6339
6340         * tests/test-dirname.c (main): Make printf statements 64-bit clean.
6341
6342 2007-03-17  Bruno Haible  <bruno@clisp.org>
6343
6344         * tests/test-xvasprintf.c (test_xvasprintf, test_xasprintf): Remove
6345         unused variable.
6346
6347 2007-03-17  Bruno Haible  <bruno@clisp.org>
6348
6349         * tests/test-c-strcasecmp.c: Include c-strcase.h.
6350         * tests/test-c-strncasecmp.c: Likewise.
6351
6352 2007-03-17  Bruno Haible  <bruno@clisp.org>
6353
6354         * modules/stdlib (Depends-on): Add unistd.
6355         * lib/stdlib_.h: Include <unistd.h> if mkstemp is desired.
6356         Needed for MacOS X 10.3.
6357
6358 2007-03-17  Bruno Haible  <bruno@clisp.org>
6359
6360         * lib/unistr/u-strdup.h: Include <stdlib.h>.
6361
6362 2007-03-17  Bruno Haible  <bruno@clisp.org>
6363
6364         * lib/unistr/u-cpy-alloc.h: Include <stdlib.h>.
6365
6366 2007-03-17  Bruno Haible  <bruno@clisp.org>
6367
6368         * gnulib-tool (func_import): Update .cvsignore and .gitignore files
6369         to reflect files copied from gnulib (with or without modifications).
6370         Suggested by Jim Meyering.
6371
6372 2007-03-17  Eric Blake  <ebb9@byu.net>
6373
6374         * NEWS: Document stdlib change from 2007-02-18.
6375
6376 2007-03-17  Jim Meyering  <jim@meyering.net>
6377
6378         Detect use of AC_CONFIG_AUX_DIR also when its argument is quoted.
6379         * build-aux/bootstrap: Put ""s around use of $build_aux, in case
6380         someone uses a name containing shell meta-characters.
6381         Reported by Alfred M. Szmidt.
6382
6383         * build-aux/bootstrap: Don't use \> in grep regexp.  For HP-UX.
6384
6385 2007-03-16  Alfred M. Szmidt  <ams@gnu.org>
6386
6387         * build-aux/bootstrap (with_gettext): New variable.  Run autopoint
6388         and copy gettext configuration files only if configure.ac contains
6389         a use of AM_GNU_GETTEXT_VERSION.
6390
6391 2007-03-16  Alfred M. Szmidt  <ams@gnu.org>
6392
6393         * build-aux/bootstrap (gnulib_name): New variable.
6394         (gnulib_tool_options): Use it.
6395
6396 2007-03-13  Simon Josefsson  <simon@josefsson.org>
6397
6398         * tests/test-des.c: Use new namespace.
6399
6400 2007-03-15  Bruno Haible  <bruno@clisp.org>
6401
6402         * lib/dummy.c (gl_dummy_symbol): Renamed from 'dummy'.
6403         Reported by James Youngman <jay@gnu.org>.
6404
6405 2007-03-15  Bruno Haible  <bruno@clisp.org>
6406
6407         * lib/glob.c (glob): Add 'restrict' so that prototype matches the
6408         declared prototype. Needed with cc on OSF/1 5.1.
6409
6410 2007-03-15  Bruno Haible  <bruno@clisp.org>
6411
6412         * lib/gl_list.h (gl_listelement_dispose_fn): New type.
6413         (gl_list_create_empty, gl_list_create): Add dispose_fn argument.
6414         (struct gl_list_implementation): Add dispose_fn argument to the
6415         'create_empty', 'create' methods.
6416         (struct gl_list_impl_base): Add field 'dispose_fn'.
6417         * lib/gl_list.c (gl_list_create_empty, gl_list_create): Add dispose_fn
6418         argument.
6419         * lib/gl_array_list.c (gl_array_create_empty, gl_array_create): Add
6420         dispose_fn argument.
6421         (gl_array_remove_node, gl_array_remove_at, gl_array_list_free): Call
6422         dispose_fn on the dropped values.
6423         * lib/gl_carray_list.c (gl_carray_create_empty, gl_carray_create): Add
6424         dispose_fn argument.
6425         (gl_carray_remove_at, gl_carray_list_free): Call dispose_fn on the
6426         dropped values.
6427         * lib/gl_anyavltree_list2.h (gl_tree_create): Add dispose_fn argument.
6428         (gl_tree_remove_node): Call dispose_fn on the dropped value.
6429         * lib/gl_anyrbtree_list2.h (gl_tree_create): Add dispose_fn argument.
6430         (gl_tree_remove_node): Call dispose_fn on the dropped value.
6431         * lib/gl_anytree_list2.h (gl_tree_create_empty): Add dispose_fn
6432         argument.
6433         (gl_tree_list_free): Call dispose_fn on the dropped values.
6434         * lib/gl_anytreehash_list2.h (gl_tree_list_free): Call dispose_fn on
6435         the dropped values.
6436         * lib/gl_anylinked_list2.h (gl_linked_create_empty, gl_linked_create):
6437         Add dispose_fn argument.
6438         (gl_linked_remove_node, gl_linked_remove_at, gl_linked_list_free):
6439         Call dispose_fn on the dropped values.
6440         * lib/gl_sublist.c (gl_sublist_create_empty, gl_sublist_create_fill):
6441         Add dispose_fn argument.
6442         (gl_sublist_create): Initialize the 'dispose_fn' field.
6443         * lib/clean-temp.c (create_temp_dir, register_fd): Update.
6444         * tests/test-array_list.c (main): Update.
6445         * tests/test-carray_list.c (main): Update.
6446         * tests/test-avltree_list.c (main): Update.
6447         * tests/test-rbtree_list.c (main): Update.
6448         * tests/test-avltreehash_list.c (main): Update.
6449         * tests/test-rbtreehash_list.c (main): Update.
6450         * tests/test-linked_list.c (main): Update.
6451         * tests/test-linkedhash_list.c (main): Update.
6452         * tests/test-array_oset.c (main): Update.
6453
6454 2007-03-15  Bruno Haible  <bruno@clisp.org>
6455
6456         * lib/gl_oset.h (gl_setelement_dispose_fn): New type.
6457         (gl_oset_create_empty): Add dispose_fn argument.
6458         (struct gl_oset_implementation): Add dispose_fn argument to
6459         'create_empty' method.
6460         (struct gl_oset_impl_base): Add dispose_fn field.
6461         * lib/gl_oset.c (gl_oset_create_empty): Add dispose_fn argument.
6462         * lib/gl_array_oset.c (gl_array_create_empty): Add dispose_fn argument.
6463         (gl_array_remove_at, gl_array_free): Call dispose_fn on the dropped
6464         values.
6465         * lib/gl_anytree_oset.h (gl_tree_create_empty): Add dispose_fn argument.
6466         (gl_tree_oset_free): Call dispose_fn on the dropped values.
6467         * lib/gl_avltree_oset.c (gl_tree_remove_node): Call dispose_fn on the
6468         dropped value.
6469         * lib/gl_rbtree_oset.c (gl_tree_remove_node): Call dispose_fn on the
6470         dropped value.
6471         * tests/test-array_oset.c (main): Update.
6472         * tests/test-avltree_oset.c (main): Update.
6473         * tests/test-rbtree_oset.c (main): Update.
6474         * lib/gl_anytreehash_list1.h (add_to_bucket): Update.
6475
6476 2007-03-13  Bruno Haible  <bruno@clisp.org>
6477
6478         * tests/test-stdbool.c (i): Update after last patch.
6479
6480 2007-03-12  Bruno Haible  <bruno@clisp.org>
6481
6482         * lib/quotearg.c: Include <wctype.h> early, before the definition of
6483         the iswprint macro. Needed on Solaris 2.5.1.
6484
6485 2007-03-12  Bruno Haible  <bruno@clisp.org>
6486
6487         * tests/test-printf-frexp.c (main): Declare x as volatile.
6488
6489 2007-03-12  Simon Josefsson  <simon@josefsson.org>
6490
6491         * doc/gnulib.texi (Build robot for gnulib): New section.
6492
6493 2007-03-12  Jim Meyering  <jim@meyering.net>
6494
6495         * build-aux/bootstrap: New file.
6496         * build-aux/bootstrap.conf: New file, from coreutils.
6497
6498 2007-03-11  Bruno Haible  <bruno@clisp.org>
6499
6500         * m4/cycle-check.m4 (gl_CYCLE_CHECK): Require AC_C_INLINE.
6501
6502 2007-03-12  Simon Josefsson  <simon@josefsson.org>
6503
6504         * lib/des.h, lib/des.c, lib/gc-gnulib.c: Use gl_ namespace, to
6505         avoid collisions with 'des_setkey'.  Reported by Bruno Haible
6506         <bruno@clisp.org>.  Also change 'tripledes_' to '3des_'.
6507
6508 2007-03-11  Bruno Haible  <bruno@clisp.org>
6509
6510         * m4/locale-tr.m4 (gt_LOCALE_TR_UTF8): If the test program fails to
6511         compile, set LOCALE_TR_UTF8 to 'none' instead of empty.
6512
6513 2007-03-11  Bruno Haible  <bruno@clisp.org>
6514
6515         * lib/stdint_.h (INT64_MIN, INTMAX_MIN): Avoid using the ~INT..._MAX
6516         formula. Needed for SunPRO C 5.0.
6517
6518 2007-03-11  Bruno Haible  <bruno@clisp.org>
6519
6520         * modules/long-options (Depends-on): Add getopt.
6521
6522 2007-03-11  Bruno Haible  <bruno@clisp.org>
6523
6524         * modules/modechange (Depends-on): Add stdbool.
6525
6526 2007-03-11  Bruno Haible  <bruno@clisp.org>
6527
6528         * modules/i-ring (Depends-on): Add stdbool.
6529
6530 2007-03-11  Bruno Haible  <bruno@clisp.org>
6531
6532         * modules/gc-des (Depends-on): Add stdbool.
6533
6534 2007-03-11  Bruno Haible  <bruno@clisp.org>
6535
6536         * m4/mktime.m4 (gl_PREREQ_MKTIME): Require AC_C_INLINE.
6537
6538 2007-03-11  Bruno Haible  <bruno@clisp.org>
6539
6540         * m4/mempcpy.m4 (gl_FUNC_MEMPCPY): Require AC_C_RESTRICT.
6541
6542 2007-03-11  Bruno Haible  <bruno@clisp.org>
6543
6544         * lib/unistr/u32-mbtouc-unsafe.c (u32_mbtouc_unsafe): Fix syntax error.
6545
6546 2007-03-11  Bruno Haible  <bruno@clisp.org>
6547
6548         * lib/vasnprintf.c (sprintf): Undefine.
6549
6550 2007-03-11  Bruno Haible  <bruno@clisp.org>
6551
6552         * lib/isnan.c (rpl_isnan, rpl_isnanl): Work around bug regarding
6553         initializers in SunPRO C and Compaq C compilers.
6554
6555 2007-03-11  Bruno Haible  <bruno@clisp.org>
6556
6557         * lib/gl_array_oset.c (gl_array_iterator_next): Make pointer
6558         decrementing code ANSI C compliant.
6559
6560 2007-03-11  Bruno Haible  <bruno@clisp.org>
6561
6562         * lib/dummy.c [__sun]: Define a dummy variable, not just a typedef.
6563         Needed for Solaris 2.5.1 ranlib and SunPRO C 5.0.
6564
6565 2007-03-11  Bruno Haible  <bruno@clisp.org>
6566
6567         * tests/test-stdbool.c (s, d, e, xlcbug): Disable checks that gnulib's
6568         <stdbool.h> substitute doesn't pass.
6569
6570 2007-03-11  Bruno Haible  <bruno@clisp.org>
6571
6572         * lib/vasnprintf.c (snprintf): Undefine. Avoids an endless recursion.
6573
6574 2007-03-11  Bruno Haible  <bruno@clisp.org>
6575
6576         * gnulib-tool (func_create_megatestdir): Create also an autobuild
6577         script, for submission to autobuild.josefsson.org.
6578
6579 2007-03-10  Bruno Haible  <bruno@clisp.org>
6580
6581         * modules/canonicalize-lgpl-tests: New file.
6582         * tests/test-canonicalize-lgpl.sh: New file.
6583         * tests/test-canonicalize-lgpl.c: New file.
6584
6585         * modules/c-strcase-tests: New file.
6586         * tests/test-c-strcase.sh: New file.
6587         * tests/test-c-strcasecmp.c: New file.
6588         * tests/test-c-strncasecmp.c: New file.
6589
6590         * modules/atexit-tests: New file.
6591         * tests/test-atexit.sh: New file.
6592         * tests/test-atexit.c: New file.
6593
6594 2007-03-10  Bruno Haible  <bruno@clisp.org>
6595
6596         * tests/test-binary-io.sh: Use temporary filenames that are not so
6597         likely to clash with those of other tests (in a parallel make).
6598         * tests/test-binary-io.c: Likewise.
6599
6600 2007-03-10  Bruno Haible  <bruno@clisp.org>
6601
6602         * lib/fseterr.c (fseterr): Port to Solaris/SPARC64. Deactivate the
6603         fallback; use #error instead.
6604         Suggested by Simon Josefsson.
6605
6606 2007-03-10  Bruno Haible  <bruno@clisp.org>
6607
6608         * gnulib-tool (func_create_testdir): Treat MOSTLYCLEANFILES like
6609         CLEANFILES. Put spaces in each line of $cleaned_files, not only the
6610         first and the last.
6611
6612 2007-03-10  Bruno Haible  <bruno@clisp.org>
6613
6614         * lib/stdint_.h (uint_least64_t): Fix typo in last patch.
6615
6616 2007-03-10  Bruno Haible  <bruno@clisp.org>
6617
6618         * modules/snprintf-posix-tests (EXTRA_DIST): New variable. Needed for
6619         "make distcheck".
6620         * modules/sprintf-posix-tests (EXTRA_DIST): Likewise.
6621         * modules/vsnprintf-posix-tests (EXTRA_DIST): Likewise.
6622         * modules/vsprintf-posix-tests (EXTRA_DIST): Likewise.
6623
6624 2007-03-10  Bruno Haible  <bruno@clisp.org>
6625
6626         * modules/allocsa-tests (test_allocsa_SOURCES): Remove redundant
6627         variable.
6628         * modules/dirname-tests (test_dirname_SOURCES): Remove redundant
6629         variable.
6630
6631 2007-03-09  Eric Blake  <ebb9@byu.net>
6632         and Matthew Woehlke  <mw_triad@users.sourceforge.net>  (tiny change)
6633
6634         * lib/stdint_.h (int64_t, uint64_t): Don't undefine if 64-bit
6635         types are not being provided by gnulib.
6636         (GL_INT64_T, GL_UINT64_T): New witnesses of whether gnulib 64-bit
6637         types are supported.
6638
6639 2007-03-10  Bruno Haible  <bruno@clisp.org>
6640
6641         * lib/stdio_.h (__attribute__): New macro.
6642         (fprintf, vfprintf, printf, vprintf, snprintf, vsnprintf, sprintf,
6643         vsprintf): Specify __attribute__ __format__ for GCC.
6644         Suggested by Eric Blake.
6645
6646 2007-03-09  Bruno Haible  <bruno@clisp.org>
6647
6648         * modules/printf-posix-tests: New file.
6649         * tests/test-printf-posix.sh: New file.
6650         * tests/test-printf-posix.c: New file.
6651
6652         * modules/printf-posix: New file.
6653         * lib/printf.c: New file.
6654         * m4/printf-posix-rpl.m4: New file.
6655         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Set also GNULIB_PRINTF_POSIX,
6656         REPLACE_PRINTF.
6657         * lib/stdio_.h (printf): New declaration.
6658         (format, __format__, ____printf____, ____scanf____, ____strftime____,
6659         ____strfmon____): New macros.
6660         * modules/stdio (Makefile.am): Substitute also GNULIB_PRINTF_POSIX,
6661         REPLACE_PRINTF.
6662
6663 2007-03-09  Bruno Haible  <bruno@clisp.org>
6664
6665         * tests/test-vasnprintf-posix2.sh: New file.
6666         * tests/test-vasnprintf-posix2.c: New file.
6667         * modules/vasnprintf-posix-tests (Files): Add them and m4/locale-fr.m4.
6668         (configure.ac): Invoke gt_LOCALE_FR and gt_LOCALE_FR_UTF8.
6669         (Makefile.am): Activate test-vasnprintf-posix2.sh.
6670
6671         * lib/vasnprintf.c (VASNPRINTF): For the 'a' and 'A' directives, use
6672         a locale dependent decimal point, rather than always '.'.
6673
6674 2007-03-09  Eric Blake  <ebb9@byu.net>
6675
6676         * lib/stdlib_.h (EXIT_FAILURE): GNU code expects this to be 1, in
6677         spite of platforms like Tandem/NSK that define it to -1.
6678
6679 2007-03-08  Bruno Haible  <bruno@clisp.org>
6680
6681         * modules/vprintf-posix-tests: New file.
6682         * tests/test-vprintf-posix.sh: New file.
6683         * tests/test-vprintf-posix.c: New file.
6684         * tests/test-printf-posix.h: New file.
6685
6686         * modules/vprintf-posix: New file.
6687         * lib/vprintf.c: New file.
6688         * m4/vprintf-posix.m4: New file.
6689         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Set also GNULIB_VPRINTF_POSIX,
6690         REPLACE_VPRINTF.
6691         * lib/stdio_.h (vprintf): New declaration.
6692         * modules/stdio (Makefile.am): Substitute also GNULIB_VPRINTF_POSIX,
6693         REPLACE_VPRINTF.
6694
6695 2007-03-08  Bruno Haible  <bruno@clisp.org>
6696
6697         * modules/fprintf-posix-tests: New file.
6698         * tests/test-fprintf-posix.sh: New file.
6699         * tests/test-fprintf-posix.c: New file.
6700
6701         * modules/fprintf-posix: New file.
6702         * lib/fprintf.c: New file.
6703         * m4/fprintf-posix.m4: New file.
6704         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Set also GNULIB_FPRINTF_POSIX,
6705         REPLACE_FPRINTF.
6706         * lib/stdio_.h (fprintf): New declaration.
6707         * modules/stdio (Makefile.am): Substitute also GNULIB_FPRINTF_POSIX,
6708         REPLACE_FPRINTF.
6709
6710 2007-03-08  Bruno Haible  <bruno@clisp.org>
6711
6712         * modules/vfprintf-posix-tests: New file.
6713         * tests/test-vfprintf-posix.sh: New file.
6714         * tests/test-vfprintf-posix.c: New file.
6715         * tests/test-fprintf-posix.h: New file.
6716         * tests/test-fprintf-posix.out: New file.
6717
6718         * modules/vfprintf-posix: New file.
6719         * lib/vfprintf.c: New file.
6720         * m4/vfprintf-posix.m4: New file.
6721         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Set also GNULIB_VFPRINTF_POSIX,
6722         REPLACE_VFPRINTF.
6723         * lib/stdio_.h (vfprintf): New declaration.
6724         * modules/stdio (Makefile.am): Substitute also GNULIB_VFPRINTF_POSIX,
6725         REPLACE_VFPRINTF.
6726
6727 2007-03-08  Bruno Haible  <bruno@clisp.org>
6728
6729         * lib/stdio_.h: Treat __need___FILE like __need_FILE.
6730
6731 2007-03-08  Bruno Haible  <bruno@clisp.org>
6732
6733         * m4/snprintf-posix.m4 (gl_FUNC_SNPRINTF_POSIX): Use 'case' statements
6734         instead of 'expr' invocations.
6735         * m4/sprintf-posix.m4 (gl_FUNC_SPRINTF_POSIX): Likewise.
6736         * m4/vasnprintf-posix.m4 (gl_FUNC_VASNPRINTF_POSIX): Likewise.
6737         * m4/vasprintf-posix.m4 (gl_FUNC_VASPRINTF_POSIX): Likewise.
6738         * m4/vsnprintf-posix.m4 (gl_FUNC_VSNPRINTF_POSIX): Likewise.
6739         * m4/vsprintf-posix.m4 (gl_FUNC_VSPRINTF_POSIX): Likewise.
6740         Suggested by Paul Eggert.
6741
6742 2007-03-08  Bruno Haible  <bruno@clisp.org>
6743
6744         * modules/fseterr-tests: New file.
6745         * tests/test-fseterr.c: New file.
6746
6747         * modules/fseterr: New file.
6748         * lib/fseterr.h: New file.
6749         * lib/fseterr.c: New file.
6750
6751 2007-03-08  Bruno Haible  <bruno@clisp.org>
6752
6753         * lib/fnmatch_.h: Convert tabs in the middle of lines to spaces.
6754         * lib/getopt_.h: Likewise.
6755         * lib/mbswidth.h: Likewise.
6756         * lib/setenv.h: Likewise.
6757         * lib/vasnprintf.h: Likewise.
6758         * lib/vasprintf.h: Likewise.
6759         * lib/verror.h: Likewise.
6760         * lib/xsetenv.h: Likewise.
6761         * lib/xvasprintf.h: Likewise.
6762
6763 2007-03-08  Jim Meyering  <jim@meyering.net>
6764
6765         * users.txt: Add parted.
6766
6767         * ChangeLog: Restore 1500 lines mistakenly removed from the end.
6768
6769 2007-03-07  Bruno Haible  <bruno@clisp.org>
6770
6771         * m4/printf.m4: Make the shell script snippets copy&pastable.
6772
6773 2007-03-02  Bruno Haible  <bruno@clisp.org>
6774
6775         * lib/netinet_in_.h: New file.
6776         * m4/netinet_in_h.m4 (gl_HEADER_NETINET_IN): Test whether netinet/in.h
6777         is self-contained. Set ABSOLUTE_NETINET_IN_H, HAVE_NETINET_IN_H.
6778         * modules/netinet_in (Files): Add lib/netinet_in_.h.
6779         (Depends-on): Add absolute-header.
6780         (Makefile.am): Substitute ABSOLUTE_NETINET_IN_H, HAVE_NETINET_IN_H
6781         into netinet/in.h.
6782
6783 2007-03-03  Bruno Haible  <bruno@clisp.org>
6784
6785         * lib/sys_select_.h: New file.
6786         * m4/sys_socket_h.m4 (gl_HEADER_SYS_SELECT): Test whether sys/select.h
6787         is self-contained. Set ABSOLUTE_SYS_SELECT_H, HAVE_SYS_SELECT_H.
6788         * modules/sys_select (Files): Add lib/sys_select_.h.
6789         (Depends-on): Add absolute-header.
6790         (Makefile.am): Substitute ABSOLUTE_SYS_SELECT_H, HAVE_SYS_SELECT_H
6791         into sys/select.h.
6792
6793 2007-03-02  Bruno Haible  <bruno@clisp.org>
6794
6795         * lib/socket_.h: If sys/socket.h exists, include that and <sys/types.h>
6796         before it. Turn HAVE_WINSOCK2_H and HAVE_WS2TCPIP_H into configute-time
6797         values.
6798         * m4/sys_socket_h.m4 (gl_HEADER_SYS_SOCKET): Test also whether
6799         <sys/socket.h> is self-contained. Set ABSOLUTE_SYS_SOCKET_H,
6800         HAVE_SYS_SOCKET_H, HAVE_WINSOCK2_H, HAVE_WS2TCPIP_H.
6801         * modules/sys_socket (Depends-on): Add absolute-header.
6802         (Makefile.am): Substitute ABSOLUTE_SYS_SOCKET_H, HAVE_SYS_SOCKET_H,
6803         HAVE_WINSOCK2_H, HAVE_WS2TCPIP_H into sys/socket.h.
6804         (Include): Remove requirement of inclusion of <sys/types.h>.
6805
6806 2007-03-02  Bruno Haible  <bruno@clisp.org>
6807
6808         * lib/byteswap_.h (bswap_32): Fix formula.
6809
6810 2007-03-06  Bruno Haible  <bruno@clisp.org>
6811
6812         * modules/sprintf-posix-tests: New file.
6813         * tests/test-sprintf-posix.c: New file.
6814
6815         * modules/sprintf-posix: New file.
6816         * lib/sprintf.c: New file.
6817         * m4/sprintf-posix.m4: New file.
6818         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Set also GNULIB_SPRINTF_POSIX,
6819         REPLACE_SPRINTF.
6820         * lib/stdio_.h (sprintf): New declaration.
6821         * modules/stdio (Makefile.am): Substitute also GNULIB_SPRINTF_POSIX,
6822         REPLACE_SPRINTF.
6823
6824 2007-03-06  Bruno Haible  <bruno@clisp.org>
6825
6826         * modules/vsprintf-posix-tests: New file.
6827         * tests/test-vsprintf-posix.c: New file.
6828         * tests/test-sprintf-posix.h: New file.
6829
6830         * modules/vsprintf-posix: New file.
6831         * lib/vsprintf.c: New file.
6832         * m4/vsprintf-posix.m4: New file.
6833         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Set also GNULIB_VSPRINTF_POSIX,
6834         REPLACE_VSPRINTF.
6835         * lib/stdio_.h (vsprintf): New declaration.
6836         * modules/stdio (Makefile.am): Substitute also GNULIB_VSPRINTF_POSIX,
6837         REPLACE_VSPRINTF.
6838
6839 2007-03-06  Bruno Haible  <bruno@clisp.org>
6840
6841         * modules/vsnprintf (Depend-on): Remove minmax.
6842
6843 2007-03-06  Bruno Haible  <bruno@clisp.org>
6844
6845         * modules/snprintf-posix-tests: New file.
6846         * tests/test-snprintf-posix.c: New file.
6847
6848         * modules/snprintf-posix: New file.
6849         * m4/snprintf-posix.m4: New file.
6850         * m4/snprintf.m4 (gl_REPLACE_SNPRINTF): New macro, extracted from
6851         gl_FUNC_SNPRINTF.
6852         (gl_FUNC_SNPRINTF): Invoke it.
6853         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Set also REPLACE_SNPRINTF.
6854         * lib/stdio_.h (snprintf): Define as a replacement if REPLACE_SNPRINTF
6855         is set.
6856         * modules/stdio (Makefile.am): Substitute also REPLACE_SNPRINTF.
6857
6858 2007-03-06  Bruno Haible  <bruno@clisp.org>
6859
6860         * modules/vsnprintf-posix-tests: New file.
6861         * tests/test-vsnprintf-posix.c: New file.
6862         * tests/test-snprintf-posix.h: New file.
6863
6864         * modules/vsnprintf-posix: New file.
6865         * m4/vsnprintf-posix.m4: New file.
6866         * m4/vsnprintf.m4 (gl_REPLACE_VSNPRINTF): New macro, extracted from
6867         gl_FUNC_VSNPRINTF.
6868         (gl_FUNC_VSNPRINTF): Invoke it.
6869         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Set also REPLACE_VSNPRINTF.
6870         * lib/stdio_.h (vsnprintf): Define as a replacement if
6871         REPLACE_VSNPRINTF is set.
6872         * modules/stdio (Makefile.am): Substitute also REPLACE_VSNPRINTF.
6873
6874 2007-03-06  Bruno Haible  <bruno@clisp.org>
6875
6876         * m4/vasnprintf.m4 (gl_REPLACE_VASNPRINTF): Test for vasnprintf here.
6877         * m4/vasprintf-posix.m4 (gl_FUNC_VASPRINTF_POSIX): ... not here.
6878
6879 2007-03-06  Bruno Haible  <bruno@clisp.org>
6880
6881         * lib/math_.h (acosl): Declare also if HAVE_DECL_ACOSL is set.
6882         (asinl): Declare also if HAVE_DECL_ASINL is set.
6883         (atanl): Declare also if HAVE_DECL_ATANL is set.
6884         (ceill): Declare also if HAVE_DECL_CEILL is set.
6885         (cosl): Declare also if HAVE_DECL_COSL is set.
6886         (expl): Declare also if HAVE_DECL_EXPL is set.
6887         (floorl): Declare also if HAVE_DECL_FLOORL is set.
6888         (frexpl): Declare also if HAVE_DECL_FREXPL is set.
6889         (ldexpl): Declare also if HAVE_DECL_LDEXPL is set.
6890         (logl): Declare also if HAVE_DECL_LOGL is set.
6891         (sinl): Declare also if HAVE_DECL_SINL is set.
6892         (sqrtl): Declare also if HAVE_DECL_SQRTL is set.
6893         (tanl): Declare also if HAVE_DECL_TANL is set.
6894         * modules/math (Makefile.am): Substitute the values of HAVE_DECL_*.
6895         * m4/math_h.m4 (gl_MATH_H_DEFAULTS): Set HAVE_DECL_* to 1.
6896         * m4/printf-frexpl.m4 (gl_FUNC_PRINTF_FREXPL): Fix tests for the
6897         declaration of frexpl, ldexpl.
6898         * modules/printf-frexpl (Depends-on): Add math.
6899         * lib/printf-frexp.c (frexpl, ldexpl): Undo last change.
6900
6901 2007-03-05  Bruno Haible  <bruno@clisp.org>
6902
6903         * m4/printf-frexpl.m4 (gl_FUNC_PRINTF_FREXPL): Also test whether
6904         frexpl and ldexpl are declared.
6905         * lib/printf-frexp.c (frexpl, ldexpl): Provide fallback declarations.
6906
6907 2007-03-05  Bruno Haible  <bruno@clisp.org>
6908
6909         * gnulib-tool (func_get_automake_snippet): Don't synthesize an
6910         EXTRA_lib_SOURCES augmentation for the relocatable-prog-wrapper module.
6911
6912 2007-03-05  Bruno Haible  <bruno@clisp.org>
6913
6914         * lib/stdio_.h: Include <stddef.h>.
6915
6916 2007-03-05  Bruno Haible  <bruno@clisp.org>
6917
6918         * m4/printf.m4 (gl_SNPRINTF_DIRECTIVE_N): New macro.
6919
6920 2007-03-05  Bruno Haible  <bruno@clisp.org>
6921
6922         * m4/printf.m4: Update with info about OpenBSD 3.9, HP-UX 10.20,
6923         NetBSD 4, from Ralf Wildenhues.
6924
6925 2007-03-04  Bruno Haible  <bruno@clisp.org>
6926
6927         * lib/vasprintf.h: Update #if logic for the case when the functions
6928         exist but are overridden.
6929
6930 2007-03-04  Bruno Haible  <bruno@clisp.org>
6931
6932         * m4/printf.m4 (gl_PRINTF_DIRECTIVE_A): Exclude two buggy
6933         implementations: glibc-2.4 and MacOS X 10.3.
6934         * tests/test-vasnprintf-posix.c (test_function): Test also the case
6935         that exhibits the bugs in glibc-2.4 and MacOS X 10.3.
6936         * tests/test-vasprintf-posix.c (test_function): Likewise.
6937
6938 2007-03-04  Bruno Haible  <bruno@clisp.org>
6939
6940         * modules/vasprintf-posix-tests: New file.
6941         * tests/test-vasprintf-posix.c: New file.
6942
6943         * modules/vasprintf-posix: New file.
6944         * lib/vasprintf.h (asprintf, vasprintf): Rename if REPLACE_VASPRINTF is
6945         defined.
6946         * m4/vasprintf-posix.m4: New file.
6947         * m4/vasprintf.m4 (gl_REPLACE_VASPRINTF): New macro, extracted from
6948         gl_FUNC_VASPRINTF.
6949         (gl_FUNC_VASPRINTF): Invoke it.
6950         * m4/vasnprintf.m4 (gl_REPLACE_VASNPRINTF): Define REPLACE_VASNPRINTF
6951         here.
6952         * m4/vasnprintf-posix.m4 (gl_FUNC_VASNPRINTF_POSIX): Not here.
6953
6954 2007-03-04  Bruno Haible  <bruno@clisp.org>
6955
6956         * lib/sys_time_.h: Rename GETTIMEOFDAY_REPLACEMENT to
6957         REPLACE_GETTIMEOFDAY.
6958         * modules/sys_time (Makefile.am): Likewise.
6959         * m4/sys_time_h.m4: Likewise.
6960         * m4/gettimeofday.m4: Likewise.
6961
6962 2007-03-04  Bruno Haible  <bruno@clisp.org>
6963
6964         * modules/vasnprintf-posix-tests: New file.
6965         * tests/test-vasnprintf-posix.c: New file.
6966
6967         * modules/vasnprintf-posix: New file.
6968         * lib/vasnprintf.c: Include isnan.h, isnanl.h, printf-frexp.h,
6969         printf-frexpl.h.
6970         (VASNPRINTF): Handle the 'a' and 'A' directives here, if needed.
6971         * lib/vasnprintf.h (asnprintf, vasnprintf): Rename if
6972         REPLACE_VASNPRINTF is defined.
6973         * m4/vasnprintf.m4 (gl_REPLACE_VASNPRINTF): New macro, extracted from
6974         gl_FUNC_VASNPRINTF.
6975         (gl_FUNC_VASNPRINTF): Invoke it.
6976         * m4/vasnprintf-posix.m4: New file.
6977         * m4/printf.m4: New file.
6978
6979 2007-03-04  Bruno Haible  <bruno@clisp.org>
6980
6981         Compile progreloc.c only if --enable-relocatable is specified.
6982         * m4/relocatable.m4 (gl_RELOCATABLE): Arrange to compile progreloc.c
6983         if --enable-relocatable was specified.
6984         * modules/relocatable-prog (Makefile.am): Remove progreloc.c from
6985         lib_SOURCES.
6986
6987 2007-03-04  Jim Meyering  <jim@meyering.net>
6988
6989         * lib/acl.c (ACL_NOT_WELL_SUPPORTED): New macro.
6990         Use it consistently, rather than enumerating errno constants.
6991
6992 2007-03-04  Bruno Haible  <bruno@clisp.org>
6993
6994         * modules/xvasprintf-tests: New file.
6995         * tests/test-xvasprintf.c: New file.
6996
6997         * modules/vasprintf-tests: New file.
6998         * tests/test-vasprintf.c: New file.
6999
7000         * modules/vasnprintf-tests: New file.
7001         * tests/test-vasnprintf.c: New file.
7002
7003         * modules/vsnprintf-tests: New file.
7004         * tests/test-vsnprintf.c: New file.
7005
7006         * modules/snprintf-tests: New file.
7007         * tests/test-snprintf.c: New file.
7008
7009 2007-03-04  Bruno Haible  <bruno@clisp.org>
7010
7011         Compile relocatable.c only if --enable-relocatable is specified.
7012         * m4/relocatable-lib.m4 (gl_RELOCATABLE_LIBRARY_BODY): Renamed from
7013         gl_RELOCATABLE_LIBRARY.
7014         (gl_RELOCATABLE_LIBRARY, gl_RELOCATABLE_LIBRARY_SEPARATE): New macros.
7015         * m4/relocatable.m4 (gl_RELOCATABLE): Invoke gl_RELOCATABLE_LIBRARY.
7016         (gl_RELOCATABLE_BODY): Require gl_RELOCATABLE_LIBRARY_BODY instead of
7017         gl_RELOCATABLE_LIBRARY.
7018         * modules/relocatable-lib (configure.ac): Invoke gl_RELOCATABLE_LIBRARY.
7019         (Makefile.am): Remove lib_SOURCES.
7020         * modules/relocatable-lib-lgpl (configure.ac): Invoke
7021         gl_RELOCATABLE_LIBRARY.
7022         (Makefile.am): Remove lib_SOURCES.
7023         * modules/relocatable-prog (Makefile.am): Don't compile relocatable.c
7024         always.
7025         * modules/relocatable-prog-wrapper (configure.ac): Invoke
7026         gl_RELOCATABLE_LIBRARY_SEPARATE instead of gl_RELOCATABLE_LIBRARY.
7027
7028 2007-03-04  Bruno Haible  <bruno@clisp.org>
7029
7030         * modules/argmatch-tests: New file.
7031         * tests/test-argmatch.c: New file.
7032
7033         * tests/test-allocsa.c (main): Halve the number of loop runs.
7034
7035         * modules/alloca-opt-tests: New file.
7036         * tests/test-alloca-opt.c: New file.
7037
7038 2007-03-04  Jim Meyering  <jim@meyering.net>
7039
7040         Work around difference between Linux ACLs and Solaris 10 ZFS.
7041         * lib/acl.c (set_acl): Revert to using chmod_or_fchmod also
7042         for EINVAL.
7043
7044 2007-03-03  Bruno Haible  <bruno@clisp.org>
7045
7046         * modules/relocatable-prog (Depends-on): Add back progreloc's
7047         dependencies: canonicalize-lgpl, xalloc, xreadlink, stdbool, unistd.
7048
7049 2007-03-03  Bruno Haible  <bruno@clisp.org>
7050
7051         * modules/relocatable-lib-lgpl: Renamed from modules/relocatable-lib.
7052         * modules/relocatable-lib: New file.
7053
7054 2007-03-03  Bruno Haible  <bruno@clisp.org>
7055
7056         * modules/relocatable-prog: Renamed from modules/relocatable.
7057         * doc/relocatable-maint.texi: Talk about module 'relocatable-prog'.
7058
7059 2007-03-03  Bruno Haible  <bruno@clisp.org>
7060
7061         * modules/relocatable-script (Files): Add doc/relocatable.texi,
7062         m4/relocatable-lib.m4.
7063         (Depends-on): Remove 'relocatable'.
7064         (configure.ac): Add gl_RELOCATABLE_NOP.
7065
7066 2007-03-03  Bruno Haible  <bruno@clisp.org>
7067
7068         * modules/relocatable-prog-wrapper: New file.
7069         * modules/relocatable (Depends-on): Add it. Remove all other
7070         dependencies except progname.
7071         (Files): Remove build-aux/install-reloc, lib/relocwrapper.c.
7072
7073         * m4/strerror.m4 (gl_FUNC_STRERROR_SEPARATE): New macro.
7074         (gl_FUNC_STRERROR): Nop.
7075         * lib/strerror.c: Compile the file only if !HAVE_STRERROR.
7076
7077         * m4/setenv.m4 (gl_FUNC_SETENV_SEPARATE): New macro.
7078         * lib/setenv.c: Compile the file only if _LIBC || !HAVE_SETENV.
7079
7080         * m4/readlink.m4 (gl_FUNC_READLINK_SEPARATE): New macro.
7081         (gl_FUNC_READLINK): Update.
7082
7083         * m4/canonicalize-lgpl.m4 (gl_CANONICALIZE_LGPL_SEPARATE): New macro.
7084
7085 2007-03-03  Bruno Haible  <bruno@clisp.org>
7086
7087         * lib/xreadlink.c: Include <unistd.h> unconditionally.
7088         * modules/xreadlink (Depends-on): Add unistd.
7089         * modules/xreadlink-with-size (Depends-on): Likewise.
7090
7091 2007-03-03  Bruno Haible  <bruno@clisp.org>
7092
7093         * m4/setenv.m4 (gl_FUNC_SETENV, gl_FUNC_UNSETENV): New macros,
7094         extracted from gt_FUNC_SETENV.
7095         (gt_FUNC_SETENV): Remove macro.
7096         * modules/setenv (configure.ac): Add gl_FUNC_SETENV, gl_FUNC_UNSETENV,
7097         remove gt_FUNC_SETENV.
7098
7099 2007-03-03  Bruno Haible  <bruno@clisp.org>
7100
7101         * m4/relocatable-lib.m4 (gl_RELOCATABLE_LIBRARY): Define
7102         ENABLE_RELOCATABLE here.
7103         * m4/relocatable.m4 (gl_RELOCATABLE_BODY): Don't define it here.
7104
7105 2007-03-03  Bruno Haible  <bruno@clisp.org>
7106
7107         * modules/rbtreehash-list-tests (Depends-on): Add progname.
7108         * tests/test-rbtreehash_list.c: Include progname.h.
7109         (main): Call set_program_name.
7110
7111         * modules/rbtree-oset-tests (Depends-on): Add progname.
7112         * tests/test-rbtree_oset.c: Include progname.h.
7113         (main): Call set_program_name.
7114
7115         * modules/rbtree-list-tests (Depends-on): Add progname.
7116         * tests/test-rbtree_list.c: Include progname.h.
7117         (main): Call set_program_name.
7118
7119         * modules/linked-list-tests (Depends-on): Add progname.
7120         * tests/test-linked_list.c: Include progname.h.
7121         (main): Call set_program_name.
7122
7123 2007-03-03  Bruno Haible  <bruno@clisp.org>
7124
7125         * lib/glob-libc.h (_Restrict_): New macro, copied from lib/regex.h.
7126         All uses of __restrict changed to _Restrict_.
7127         * lib/glob_.h (__restrict): Remove macro.
7128
7129 2007-03-02  Bruno Haible  <bruno@clisp.org>
7130
7131         * modules/gettext (configure.ac): Require gettext infrastructure
7132         from version 0.16.1.
7133
7134 2007-03-02  Bruno Haible  <bruno@clisp.org>
7135
7136         * modules/linkedhash-list-tests (Depends-on): Add progname.
7137         * tests/test-linkedhash_list.c: Include progname.h.
7138         (main): Call set_program_name.
7139
7140         * modules/carray-list-tests (Depends-on): Add progname.
7141         * tests/test-carray_list.c: Include progname.h.
7142         (main): Call set_program_name.
7143
7144         * modules/avltreehash-list-tests (Depends-on): Add progname.
7145         * tests/test-avltreehash_list.c: Include progname.h.
7146         (main): Call set_program_name.
7147
7148         * modules/avltree-oset-tests (Depends-on): Add progname.
7149         * tests/test-avltree_oset.c: Include progname.h.
7150         (main): Call set_program_name.
7151
7152         * modules/avltree-list-tests (Depends-on): Add progname.
7153         * tests/test-avltree_list.c: Include progname.h.
7154         (main): Call set_program_name.
7155
7156         * modules/array-oset-tests (Depends-on): Add progname.
7157         * tests/test-array_oset.c: Include progname.h.
7158         (main): Call set_program_name.
7159
7160         * modules/array-list-tests (Depends-on): Add progname.
7161         * tests/test-array_list.c: Include progname.h.
7162         (main): Call set_program_name.
7163
7164         * modules/argp-tests (Depends-on): Add progname.
7165         * tests/test-argp.c: Include argp.h first. Include progname.h.
7166         (main): Call set_program_name.
7167
7168 2007-03-02  Paul Eggert  <eggert@cs.ucla.edu>
7169
7170         * doc/gnulib-tool.texi (Initial import): Reword description of
7171         _FILE_OFFSET_BITS and _GNU_SOURCE, since they sometimes have a
7172         limited effect even if defined after the first system include.
7173
7174 2007-03-01  Bruno Haible  <bruno@clisp.org>
7175
7176         * build-aux/config.libpath: Update to libtool-1.5.22.
7177         Reported by Albert Chin <bug-gnulib@mlists.thewrittenword.com>.
7178
7179 2007-03-01  Bruno Haible  <bruno@clisp.org>
7180
7181         * doc/relocatable-maint.texi: Recommend to set foo_CPPFLAGS, not
7182         foo_CFLAGS.
7183         Reported by Ralf Wildenhues.
7184
7185 2007-03-01  Bruno Haible  <bruno@clisp.org>
7186
7187         * build-aux/install-reloc: Remove object files left over by some
7188         compilers.
7189         Reported by Ralf Wildenhues.
7190
7191 2007-03-01  Bruno Haible  <bruno@clisp.org>
7192
7193         * build-aux/install-reloc: Break long lines.
7194
7195 2007-03-01  Bruno Haible  <bruno@clisp.org>
7196
7197         * doc/relocatable.texi: Document that it may not work on OpenBSD.
7198         Reported by Ralf Wildenhues.
7199
7200 2007-03-01  Bruno Haible  <bruno@clisp.org>
7201
7202         * doc/gnulib-tool.texi (Initial import): Remove paragraph about
7203         include ordering constraints.
7204
7205 2007-03-01  Paul Eggert  <eggert@cs.ucla.edu>
7206
7207         Followup to the 2007-02-12 patch, using suggestions from Bruno Haible in
7208         <http://lists.gnu.org/archive/html/bug-gnulib/2007-02/msg00136.html>.
7209         * doc/gnulib-tool.texi (Initial import): Mention _FILE_OFFSET_BITS
7210         as another example.
7211         * lib/time_.h: Fix misspelling.
7212         * m4/nanosleep.m4 (gl_FUNC_NANOSLEEP):
7213         Require gl_HEADER_TIME_H_DEFAULTS.
7214         * m4/strptime.m4 (gl_FUNC_STRPTIME): Likewise.
7215         * m4/time_r.m4 (gl_TIME_R): Likewise.
7216         * m4/timegm.m4 (gl_FUNC_TIMEGM): Likewise.
7217
7218 2007-03-01  Bruno Haible  <bruno@clisp.org>
7219
7220         * m4/utimecmp.m4 (gl_UTIMECMP): Don't require gl_TIMESPEC.
7221         * m4/utimens.m4 (gl_UTIMENS): Likewise.
7222
7223 2007-03-01  Jim Meyering  <jim@meyering.net>
7224
7225         * modules/xreadlink (Maintainer): Add my name.
7226         * modules/xreadlink-with-size (Depends-on): Alphabetize.
7227
7228 2007-02-26  Ben Pfaff  <blp@cs.stanford.edu>
7229             Bruno Haible  <bruno@clisp.org>
7230
7231         * build-aux/install-reloc: Compile also c-ctype.c.
7232         * build-aux/relocatable.sh.in: New file.
7233         * doc/relocatable.texi: New file.
7234         * doc/relocatable-maint.texi: New file.
7235         * doc/gnulib.texi: Include relocatable-maint.texi.
7236         * lib/progreloc.c: Include unistd.h unconditionally.
7237         * lib/relocwrapper.c: Include unistd.h unconditionally.
7238         Include c-ctype.h.
7239         (add_dotbin): Use c_tolower.
7240         * m4/relocatable-lib.m4: New file, extracted from m4/relocatable.m4.
7241         (gl_RELOCATABLE_LIBRARY): Renamed from AC_RELOCATABLE_LIBRARY.
7242         (gl_RELOCATABLE_NOP): Renamed from AC_RELOCATABLE_NOP.
7243         * m4/relocatable.m4 (AC_RELOCATABLE_LIBRARY, AC_RELOCATABLE_NOP): Move
7244         to m4/relocatable-lib.m4.
7245         (gl_RELOCATABLE): Renamed from AC_RELOCATABLE. Set also
7246         RELOCATABLE_CONFIG_H_DIR, RELOCATABLE_SRC_DIR, RELOCATABLE_BUILD_DIR.
7247         (gl_RELOCATABLE_BODY): Renamed from AC_RELOCATABLE_BODY. Don't
7248         require obsolete macro AC_EXEEXT. Don't check for unistd.h. Don't set
7249         SET_RELOCATABLE. Instead set RELOCATABLE_LDFLAGS, INSTALL_PROGRAM_ENV.
7250         * modules/relocatable: New file.
7251         * modules/relocatable-lib: New file.
7252         * modules/relocatable-script: New file.
7253
7254 2007-02-28  Bruno Haible  <bruno@clisp.org>
7255
7256         Import --enable-relocatable infrastructure.
7257         * build-aux/config.libpath: New file, from GNU gettext.
7258         * build-aux/install-reloc: New file, from GNU gettext.
7259         * build-aux/reloc-ldflags: New file, from GNU gettext.
7260         * lib/relocatable.h: New file, from GNU gettext.
7261         * lib/relocatable.c: New file, from GNU gettext.
7262         * lib/relocwrapper.c: New file, from GNU gettext.
7263         * m4/relocatable.m4: New file, from GNU gettext.
7264
7265 2007-02-28  Bruno Haible  <bruno@clisp.org>
7266
7267         * MODULES.html.sh (File system functions): Add xreadlink-with-size.
7268
7269         * modules/xreadlink: New file, from GNU gettext with modifications.
7270         * lib/xreadlink.c: New file, from GNU gettext.
7271         * lib/xreadlink.h: Add comments.
7272         (xreadlink): New declaration.
7273
7274         * modules/xreadlink-with-size: Renamed from modules/xreadlink.
7275         (Files): Remove m4/xreadlink.m4. Replace lib/xreadlink.c with
7276         lib/xreadlink-with-size.c.
7277         (configure.ac): Remove gl_XREADLINK invocation.
7278         (Makefile.am): Augment lib_SOURCES.
7279         * m4/xreadlink.m4: Remove file.
7280         * lib/xreadlink-with-size.c: Renamed from lib/xreadlink.c.
7281         (xreadlink_with_size): Renamed from xreadink.
7282         * lib/xreadlink.h (xreadlink_with_size): Renamed from xreadink.
7283         * modules/canonicalize (Depends-on): Replace xreadlink with
7284         xreadlink-with-size.
7285         * lib/canonicalize.c (canonicalize_filename_mode): Update.
7286
7287 2007-02-25  Jim Meyering  <jim@meyering.net>
7288
7289         * build-aux/announce-gen: When complaining about excess arguments,
7290         list them.
7291
7292 2007-02-25  Paul Eggert  <eggert@cs.ucla.edu>
7293
7294         * README: Document signed integer overflow situation more
7295         accurately.
7296
7297 2007-02-25  Bruno Haible  <bruno@clisp.org>
7298
7299         * lib/vasnprintf.c (VASNPRINTF): Fix estimate of size needed for a
7300         'a' or 'A' conversion.
7301
7302 2007-02-25  Bruno Haible  <bruno@clisp.org>
7303
7304         * modules/filename: Renamed from modules/pathname.
7305         (Files): Replace lib/pathname.h with lib/filename.h. Replace
7306         lib/concatpath.c with lib/concat-filename.c.
7307         (Makefile.am): Update.
7308         (Include): Replace pathname.h with filename.h.
7309         * lib/filename.h: Renamed from lib/pathname.h.
7310         (concatenated_filename): Renamed from concatenated_pathname.
7311         * lib/concat-filename.c: Renamed from lib/concatpath.c.
7312         (concatenated_filename): Renamed from concatenated_pathname.
7313         * lib/findprog.c: Include filename.h instead of pathname.h.
7314         (find_in_path): Update.
7315         * lib/javacomp.c: Include filename.h instead of pathname.h.
7316         (is_envjavac_gcj43_usable, is_envjavac_oldgcj_14_14_usable,
7317         is_envjavac_oldgcj_14_13_usable, is_envjavac_nongcj_usable,
7318         is_gcj_present, is_gcj43_usable, is_oldgcj_14_14_usable,
7319         is_oldgcj_14_13_usable, is_javac_usable): Update.
7320         * lib/javaexec.c: Include filename.h instead of pathname.h.
7321         (execute_java_class): Update.
7322         * modules/findprog: Update.
7323         * modules/javacomp: Update.
7324         * modules/javaexec: Update.
7325         * MODULES.html.sh (File system functions): Add 'filename', remove
7326         'pathname'.
7327
7328 2007-02-25  Bruno Haible  <bruno@clisp.org>
7329
7330         * modules/printf-frexpl-tests: New file.
7331         * tests/test-printf-frexpl.c: New file.
7332
7333         * modules/printf-frexpl: New file.
7334         * lib/printf-frexpl.h: New file.
7335         * lib/printf-frexpl.c: New file.
7336         * m4/printf-frexpl.m4: New file.
7337
7338 2007-02-25  Bruno Haible  <bruno@clisp.org>
7339
7340         * modules/printf-frexp-tests: New file.
7341         * tests/test-printf-frexp.c: New file.
7342
7343         * modules/printf-frexp: New file.
7344         * lib/printf-frexp.h: New file.
7345         * lib/printf-frexp.c: New file.
7346         * m4/printf-frexp.m4: New file.
7347
7348 2007-02-25  Bruno Haible  <bruno@clisp.org>
7349
7350         Assume automake >= 1.10 for the tests.
7351         * modules/arcfour-tests (TESTS): Remove $(EXEEXT) suffix.
7352         * modules/arctwo-tests: Likewise.
7353         * modules/argp-tests: Likewise.
7354         * modules/avltree-list-tests: Likewise.
7355         * modules/avltree-oset-tests: Likewise.
7356         * modules/avltreehash-list-tests: Likewise.
7357         * modules/carray-list-tests: Likewise.
7358         * modules/crc-tests: Likewise.
7359         * modules/des-tests: Likewise.
7360         * modules/gc-arcfour-tests: Likewise.
7361         * modules/gc-arctwo-tests: Likewise.
7362         * modules/gc-des-tests: Likewise.
7363         * modules/gc-hmac-md5-tests: Likewise.
7364         * modules/gc-hmac-sha1-tests: Likewise.
7365         * modules/gc-md2-tests: Likewise.
7366         * modules/gc-md4-tests: Likewise.
7367         * modules/gc-md5-tests: Likewise.
7368         * modules/gc-pbkdf2-sha1-tests: Likewise.
7369         * modules/gc-rijndael-tests: Likewise.
7370         * modules/gc-sha1-tests: Likewise.
7371         * modules/gc-tests: Likewise.
7372         * modules/getaddrinfo-tests: Likewise.
7373         * modules/hmac-md5-tests: Likewise.
7374         * modules/hmac-sha1-tests: Likewise.
7375         * modules/linked-list-tests: Likewise.
7376         * modules/linkedhash-list-tests: Likewise.
7377         * modules/lock-tests: Likewise.
7378         * modules/md2-tests: Likewise.
7379         * modules/md4-tests: Likewise.
7380         * modules/md5-tests: Likewise.
7381         * modules/rbtree-list-tests: Likewise.
7382         * modules/rbtree-oset-tests: Likewise.
7383         * modules/rbtreehash-list-tests: Likewise.
7384         * modules/read-file-tests: Likewise.
7385         * modules/rijndael-tests: Likewise.
7386         * modules/stdint-tests: Likewise.
7387         * modules/tls-tests: Likewise.
7388
7389 2007-02-24  Bruno Haible  <bruno@clisp.org>
7390
7391         * lib/isnanl.h (isnanl): Define through isnan if isnan is a macro.
7392         * m4/isnan.m4 (gl_FUNC_ISNAN_NO_LIBM): Don't check for isnan as a
7393         function; instead check whether isnan with a double argument links.
7394         * m4/isnanl.m4 (gl_FUNC_ISNANL_NO_LIBM): Don't check for isnanl as a
7395         function; instead check whether isnan with a 'long double' argument
7396         links.
7397         Reported by Eric Blake <ebb9@byu.net>.
7398
7399 2007-02-24  Bruno Haible  <bruno@clisp.org>
7400
7401         * lib/isnan.c: Support the 'long double' case if USE_LONG_DOUBLE is
7402         defined.
7403         * lib/isnanl.c: Remove all code. Just include isnan.c.
7404         * modules/isnanl-nolibm (Files): Add lib/isnan.c.
7405
7406 2007-02-25  Jim Meyering  <jim@meyering.net>
7407
7408         Avoid conflicting types for 'unsetenv' on FreeBSD.
7409         * lib/putenv.c (_unsetenv): Rename from "unsetenv", to avoid
7410         conflicting with FreeBSD's (5.0 and 6.1) function declaration
7411         in stdlib.h.
7412
7413 2007-02-24  Bruno Haible  <bruno@clisp.org>
7414
7415         * modules/isnanl-nolibm-tests: New file.
7416         * tests/test-isnanl.c: New file.
7417
7418         * modules/isnanl-nolibm: New file.
7419         * lib/isnanl.h: New file.
7420         * lib/isnanl.c: New file.
7421         * m4/isnanl.m4: New file.
7422
7423 2007-02-24  Bruno Haible  <bruno@clisp.org>
7424
7425         * modules/isnan-nolibm-tests: New file.
7426         * tests/test-isnan.c: New file.
7427
7428         * modules/isnan-nolibm: New file.
7429         * lib/isnan.h: New file.
7430         * lib/isnan.c: New file.
7431         * m4/isnan.m4: New file.
7432
7433 2007-02-24  Bruno Haible  <bruno@clisp.org>
7434
7435         * lib/frexpl.c (frexpl): Correct return values for x = 1.0L. Don't
7436         assume that an exponent fits in 20 bits.
7437
7438 2007-02-24  Jim Meyering  <jim@meyering.net>
7439
7440         * m4/regex.m4: Update the description of the configure-time option,
7441         --without-included-regex, to state accurately what the defaults are,
7442         and perhaps to give people an idea why using this option is risky.
7443
7444 2007-02-24  Paul Eggert  <eggert@cs.ucla.edu>
7445
7446         * m4/nanosleep.m4 (gl_FUNC_NANOSLEEP): Check for a nanosleep that
7447         loops on small arguments.  This attempts to avoid the problem
7448         Bruno Haible reported for AIX 4.3.2 in
7449         <http://lists.gnu.org/archive/html/bug-gnulib/2007-02/msg00309.html>.
7450
7451 2007-02-23  Bruno Haible  <bruno@clisp.org>
7452
7453         * m4/perl.m4 (gl_PERL): Require version 5.005, not 5.003.
7454         Needed for help2man.
7455
7456 2007-02-23  Karl Berry  <karl@gnu.org>
7457
7458         * doc/gnulib-tool.texi (CVS Issues): mention that when foo_.h
7459         exists, foo.h should be cvs-ignored, not committed.
7460
7461 2007-02-23  Eric Blake  <ebb9@byu.net>
7462
7463         * lib/getdate.h (includes):  Include <time.h>, not "timespec.h".
7464         * lib/stat-time.h (includes): Likewise.
7465         * lib/utimecmp.c (includes): Likewise.
7466         * lib/utimens.h (includes): Likewise.
7467         * lib/getdate.y (includes): Also include "timespec.h" for use
7468         internal to the module.
7469         * modules/utimens (Depends-on): Revert yesterday's patch.
7470         * modules/nanosleep (Depends-on): Add missing dependency.
7471
7472 2007-02-22  Bruno Haible  <bruno@clisp.org>
7473
7474         * lib/glob.c: Don't include getlogin_r.h.
7475
7476 2007-02-22  Jim Meyering  <jim@meyering.net>
7477
7478         * modules/utimens (Depends-on): Add timespec, required for
7479         utimens.h's inclusion of timespec.h.
7480
7481 2007-02-21  Paul Eggert  <eggert@cs.ucla.edu>
7482
7483         * lib/getcwd.c (__getcwd): Undo previous change; it mishandled
7484         long unreadable paths in GNU/Linux.  Problem reported by Andreas
7485         Schwab in
7486         <http://lists.gnu.org/archive/html/bug-gnulib/2007-02/msg00261.html>.
7487         I'll try to think of a better way to fix the Solaris problem.
7488
7489         * lib/getcwd.c (__getcwd): Don't assume getcwd (NULL, 0) works
7490         like glibc; on Solaris 10, it fails with errno == EINVAL.
7491         POSIX says the behavior is unspecified if the first argument is NULL,
7492         so play it safe and never pass NULL to the system getcwd.
7493
7494 2007-02-21  Jim Meyering  <jim@meyering.net>
7495
7496         * lib/gettimeofday.c (rpl_gettimeofday): Remove declaration
7497         of gettimeofday.  It would conflict with the one now always
7498         provided via sys_time_.h.  Reported by Matthew Woehlke, as
7499         an IRIX 6.5 build failure.
7500
7501 2007-02-20  Paul Eggert  <eggert@cs.ucla.edu>
7502
7503         Minor fixups to port to Solaris 10 with Sun C 5.8.
7504         * lib/getcwd.c [!_LIBC]: Include dirfd.h, since we use dirfd.
7505         * modules/getcwd (Depends-on): Add dirfd.
7506         * lib/putenv.c (putenv): #undef it.
7507         (rpl_putenv): New decl.
7508         (malloc, free): Include <stdlib.h> rather than prototyping separately.
7509
7510 2007-02-20  Bruno Haible  <bruno@clisp.org>
7511
7512         * modules/stdio-tests: New file.
7513         * tests/test-stdio.c: New file.
7514
7515         * modules/vsnprintf (Files): Remove lib/vsnprintf.h.
7516         (Depends-on): Add stdio.
7517         (configure.ac): Invoke gl_STDIO_MODULE_INDICATOR.
7518         (Include): Use <stdio.h> instead of vsnprintf.h.
7519         * m4/vsnprintf.m4 (gl_FUNC_VSNPRINTF): Require gl_STDIO_H_DEFAULTS. Set
7520         HAVE_DECL_VSNPRINTF.
7521         * lib/vsnprintf.c: Include <stdio.h> instead of vsnprintf.h.
7522
7523         * modules/snprintf (Files): Remove lib/snprintf.h.
7524         (Depends-on): Add stdio.
7525         (configure.ac): Invoke gl_STDIO_MODULE_INDICATOR.
7526         (Include): Use <stdio.h> instead of snprintf.h.
7527         * m4/snprintf.m4 (gl_FUNC_SNPRINTF): Require gl_STDIO_H_DEFAULTS. Set
7528         HAVE_DECL_SNPRINTF.
7529         * lib/snprintf.c: Include <stdio.h> instead of snprintf.h.
7530         * lib/getaddrinfo.c: Likewise.
7531
7532         * modules/stdio: New file.
7533         * lib/stdio_.h: New file, incorporating snprintf.h and vsnprintf.h.
7534         * lib/snprintf.h: Remove file.
7535         * lib/vsnprintf.h: Remove file.
7536         * lib/.cppi-disable: Remove snprintf.h.
7537         * m4/stdio_h.m4: New file.
7538         * MODULES.html.sh (Support for systems lacking ISO C 99): Add stdio.
7539
7540 2007-02-20  Jim Meyering  <jim@meyering.net>
7541
7542         * lib/ftruncate.c [HAVE_CHSIZE]: Document that this code is
7543         used by e.g., mingw.  From Bruno Haible.
7544
7545 2007-02-19  Bruno Haible  <bruno@clisp.org>
7546
7547         * lib/string_.h: Use "#pragma GCC system_header" to suppress some gcc
7548         warnings.
7549         Reported by Ben Pfaff <blp@cs.stanford.edu>.
7550
7551 2007-02-19  Bruno Haible  <bruno@clisp.org>
7552
7553         * m4/ftruncate.m4 (gl_FUNC_FTRUNCATE): Don't request a complaint mail
7554         from mingw users.
7555
7556 2007-02-19  Bruno Haible  <bruno@clisp.org>
7557
7558         * lib/stdlib_.h: Use "#pragma GCC system_header" to suppress some gcc
7559         warnings.
7560         Reported by Joel E. Denny <jdenny@ces.clemson.edu> via Paul Eggert.
7561
7562 2007-02-19  Jim Meyering  <jim@meyering.net>
7563
7564         Don't use FD after a successful "fdopendir (fd)".
7565         * lib/getcwd.c (__getcwd) [AT_FDCWD]: fdopendir (fd) usually closes fd.
7566         Reset it by calling dirfd on the just-obtained DIR*.
7567
7568         * m4/ftruncate.m4: Adjust comment to give this module a 3-year reprieve.
7569         Prompted by a report from Bruno Haible that mingw lacks ftruncate.
7570
7571 2007-02-18  Bruno Haible  <bruno@clisp.org>
7572
7573         * lib/readlink.c: Include <unistd.h>.
7574         * m4/readlink.m4 (gl_FUNC_READLINK): Require gl_UNISTD_H_DEFAULTS. Set
7575         HAVE_READLINK.
7576         * modules/readlink (Depends-on): Add unistd.
7577         (configure.ac): Invoke gl_UNISTD_MODULE_INDICATOR.
7578         (Include): Add <unistd.h>.
7579
7580         * lib/getlogin_r.h: Remove file.
7581         * lib/getlogin_r.c: Include <unistd.h> instead of getlogin_r.h.
7582         * m4/getlogin_r.m4 (gl_GETLOGIN_R_SUBSTITUTE): Remove macro.
7583         (gl_GETLOGIN_R): Inline it here. Require gl_UNISTD_H_DEFAULTS. Set
7584         HAVE_DECL_GETLOGIN_R.
7585         * modules/getlogin_r (Files): Remove lib/getlogin_r.h.
7586         (configure.ac): Invoke gl_UNISTD_MODULE_INDICATOR.
7587         (Include): Use <unistd.h> instead of getlogin_r.h.
7588
7589         * lib/getcwd.h: Remove file.
7590         * lib/getcwd.c: Include <unistd.h> instead of getcwd.h.
7591         * lib/xgetcwd.c: Likewise.
7592         * m4/getcwd.m4 (gl_FUNC_GETCWD): Require gl_UNISTD_H_DEFAULTS. Set
7593         REPLACE_GETCWD. Don't define __GETCWD_PREFIX.
7594         * modules/getcwd (Files): Remove lib/getcwd.h.
7595         (Depends-on): Add unistd.
7596         (configure.ac): Invoke gl_UNISTD_MODULE_INDICATOR.
7597         (Include): Use <unistd.h> instad of getcwd.h.
7598
7599         * lib/ftruncate.c: Include <unistd.h> first.
7600         * m4/ftruncate.m4 (gl_FUNC_FTRUNCATE): Require gl_UNISTD_H_DEFAULTS.
7601         Set HAVE_FTRUNCATE.
7602         * modules/ftruncate (Depends-on): Add unistd.
7603         (configure.ac): Invoke gl_UNISTD_MODULE_INDICATOR.
7604
7605         * lib/fchdir.c: Include <unistd.h> first.
7606         * lib/dirent_.h: Test REPLACE_FCHDIR, not FCHDIR_REPLACEMENT.
7607         * m4/fchdir.m4 (gl_FUNC_FCHDIR): Require gl_UNISTD_H_DEFAULTS instead
7608         of gl_HEADER_UNISTD_DEFAULTS. Set REPLACE_FCHDIR. Don't set UNISTD_H.
7609         * modules/fchdir (configure.ac): Invoke gl_UNISTD_MODULE_INDICATOR.
7610         (Makefile.am): Substitute also REPLACE_FCHDIR into dirent.h.
7611
7612         * lib/dup2.c: Include <unistd.h> first.
7613         * m4/dup2.m4 (gl_FUNC_DUP2): Require gl_UNISTD_H_DEFAULTS. Set
7614         HAVE_DUP2.
7615         * modules/dup2 (Depends-on): Add unistd.
7616         (configure.ac): Invoke gl_UNISTD_MODULE_INDICATOR.
7617
7618         * lib/chown.c: Include <unistd.h> first. Undefine chown later.
7619         * m4/chown.m4 (gl_FUNC_CHOWN): Require gl_UNISTD_H_DEFAULTS. Set
7620         REPLACE_CHOWN. Don't define chown as a macro here.
7621         * modules/chown (Depends-on): Add unistd.
7622         (configure.ac): Invoke gl_UNISTD_MODULE_INDICATOR.
7623
7624         * lib/unistd_.h: Test HAVE_UNISTD_H determined at configure time.
7625         Add definition for GL_LINK_WARNING.
7626         (chown, dup2): New declarations.
7627         (fchdir): Test REPLACE_FCHDIR, not FCHDIR_REPLACEMENT. Provide optional
7628         link warning.
7629         (ftruncate): New declaration.
7630         (getcwd): New declaration, taken from old getcwd.h.
7631         (getlogin_r): New declaration, taken from old getlogin_r.h.
7632         (readlink): New declaration.
7633         * m4/unistd_h.m4 (gl_UNISTD_H): Renamed from gl_HEADER_UNISTD. Don't
7634         set UNISTD_H. Inline gl_PREREQ_UNISTD. Set HAVE_UNISTD_H.
7635         (gl_PREREQ_UNISTD): Remove macro.
7636         (gl_UNISTD_MODULE_INDICATOR): New macro.
7637         (gl_UNISTD_H_DEFAULTS): Renamed from gl_HEADER_UNISTD_DEFAULTS. Set
7638         many new variables. Don't set UNISTD_H.
7639         * modules/unistd (Description): Change.
7640         (Depends-on): Add link-warning.
7641         (configure.ac): Update.
7642         (Makefile.am): Create unistd.h always. Substitute many new variables
7643         into it.
7644
7645 2007-02-18  Bruno Haible  <bruno@clisp.org>
7646
7647         * lib/stdlib_.h (getsubopt): New declaration, copied from getsubopt.h.
7648         * modules/stdlib (stdlib.h): Also substitute GNULIB_GETSUBOPT and
7649         HAVE_GETSUBOPT.
7650         * m4/stdlib_h.m4 (gl_STDLIB_H_DEFAULTS): Also initialize
7651         GNULIB_GETSUBOPT and HAVE_GETSUBOPT.
7652         * lib/getsubopt.h: Remove file.
7653         * modules/getsubopt (Files): Remove lib/getsubopt.h.
7654         (Depends-on): Add stdlib.
7655         (configure.ac): Invoke gl_STDLIB_MODULE_INDICATOR.
7656         (Includes): Use <stdlib.h> instead of getsubopt.h.
7657         * m4/getsubopt.m4 (gl_FUNC_GETSUBOPT): Require gl_STDLIB_H_DEFAULTS.
7658         Set HAVE_GETSUBOPT.
7659         * lib/getsubopt.c: Don't include getsubopt.h.
7660
7661 2007-02-18  Bruno Haible  <bruno@clisp.org>
7662
7663         * modules/fchdir (Depends-on): Add dup2.
7664
7665 2007-02-18  Bruno Haible  <bruno@clisp.org>
7666
7667         * lib/stdlib_.h: Handle glibc's special invocation convention
7668         specially.
7669
7670 2007-02-18  Bruno Haible  <bruno@clisp.org>
7671
7672         * modules/stdlib-tests: New file.
7673         * tests/test-stdlib.c: New file.
7674
7675         * modules/mkstemp (Files): Remove lib/mkstemp.h.
7676         (Depends-on): Add stdlib.
7677         (configure.ac): Invoke gl_STDLIB_MODULE_INDICATOR.
7678         (Includes): Use <stdlib.h> instead of mkstemp.h.
7679         * m4/mkstemp.m4 (gl_FUNC_MKSTEMP): Require gl_STDLIB_H_DEFAULTS. Set
7680         REPLACE_MKSTEMP. Remove definition of __MKSTEMP_PREFIX.
7681         * lib/mkstemp.c: Don't include mkstemp.h.
7682         * lib/mkstemp-safer.c: Include <stdlib.h> instead of mkstemp.h.
7683         * lib/stdlib--.h: Don't include mkstemp.h.
7684
7685         * modules/mkdtemp (Files): Remove lib/mkdtemp.h.
7686         (Depends-on): Add stdlib.
7687         (configure.ac): Invoke gl_STDLIB_MODULE_INDICATOR.
7688         (Includes): Use <stdlib.h> instead of mkdtemp.h.
7689         * m4/mkdtemp.m4 (gt_FUNC_MKDTEMP): Require gl_STDLIB_H_DEFAULTS. Set
7690         HAVE_MKDTEMP.
7691         * lib/mkdtemp.c: Don't include mkdtemp.h.
7692         * lib/clean-temp.c: Don't include mkdtemp.h.
7693
7694         * modules/exit (Files): Remove lib/exit.h.
7695         (Depends-on): Add stdlib.
7696         (Makefile.am): Remove lib_SOURCES.
7697         (Include): Use <stdlib.h> instead of exit.h.
7698         * lib/argmatch.c: Don't include exit.h.
7699         * lib/execute.c: Likewise.
7700         * lib/pagealign_alloc.c: Likewise.
7701         * lib/pipe.c: Likewise.
7702         * lib/wait-process.c: Likewise.
7703         * lib/copy-file.c: Include <stdlib.h> instead of exit.h.
7704         * lib/exitfail.c: Likewise.
7705         * lib/savewd.c: Likewise.
7706         * lib/xsetenv.c: Likewise.
7707
7708         * modules/stdlib: New file.
7709         * lib/stdlib_.h: New file, incorporating exit.h, mkdtemp.h, mkstemp.h
7710         and extra comments about mkstemp().
7711         * lib/exit.h: Remove file.
7712         * lib/mkdtemp.h: Remove file.
7713         * lib/mkstemp.h: Remove file.
7714         * m4/stdlib_h.m4: New file.
7715         * MODULES.html.sh (Support for systems lacking ANSI C 89): Add stdlib.
7716
7717 2007-02-18  Bruno Haible  <bruno@clisp.org>
7718
7719         * modules/math-tests: New file.
7720         * tests/test-math.c: New file.
7721
7722         * modules/math: New file.
7723         * modules/mathl (Files): Remove lib/mathl.h.
7724         (Depends-on): Add math.
7725         (Makefile.am): Don't mention mathl.h.
7726         (Include): Use <math.h> instead of mathl.h.
7727         * lib/math_.h: New file.
7728         * lib/mathl.h: Remove file.
7729         * lib/acosl.c: Include <config.h> and <math.h> first. Don't include
7730         mathl.h.
7731         * lib/asinl.c: Likewise.
7732         * lib/atanl.c: Likewise.
7733         * lib/ceill.c: Likewise.
7734         * lib/cosl.c: Likewise.
7735         * lib/expl.c: Likewise.
7736         * lib/floorl.c: Likewise.
7737         * lib/frexpl.c: Likewise.
7738         * lib/ldexpl.c: Likewise.
7739         * lib/logl.c: Likewise.
7740         * lib/sincosl.c: Likewise.
7741         * lib/sinl.c: Likewise.
7742         * lib/sqrtl.c: Likewise.
7743         * lib/tanl.c: Likewise.
7744         * lib/trigl.c: Likewise.
7745         * m4/math_h.m4: New file.
7746         * MODULES.html.sh (Mathematics): Add math.
7747
7748 2007-02-17  Bruno Haible  <bruno@clisp.org>
7749
7750         * modules/wctype-tests: New file.
7751         * tests/test-wctype.c: New file.
7752
7753         * modules/wchar-tests: New file.
7754         * tests/test-wchar.c: New file.
7755
7756         * modules/unistd-tests: New file.
7757         * tests/test-unistd.c: New file.
7758
7759         * modules/time-tests: New file.
7760         * tests/test-time.c: New file.
7761
7762         * modules/sysexits-tests: New file.
7763         * tests/test-sysexits.c: New file.
7764
7765         * modules/sys_time-tests: New file.
7766         * tests/test-sys_time.c: New file.
7767
7768         * modules/sys_stat-tests: New file.
7769         * tests/test-sys_stat.c: New file.
7770
7771         * modules/sys_socket-tests: New file.
7772         * tests/test-sys_socket.c: New file.
7773
7774         * modules/sys_select-tests: New file.
7775         * tests/test-sys_select.c: New file.
7776
7777         * modules/string-tests: New file.
7778         * tests/test-string.c: New file.
7779
7780         * modules/stdbool-tests: New file.
7781         * tests/test-stdbool.c: New file.
7782
7783         * modules/netinet_in-tests: New file.
7784         * tests/test-netinet_in.c: New file.
7785
7786         * modules/inttypes-tests: New file.
7787         * tests/test-inttypes.c: New file.
7788
7789         * modules/fcntl-tests: New file.
7790         * tests/test-fcntl.c: New file.
7791
7792         * modules/byteswap-tests: New file.
7793         * tests/test-byteswap.c: New file.
7794
7795         * modules/arpa_inet-tests: New file.
7796         * tests/test-arpa_inet.c: New file.
7797
7798 2007-02-17  Bruno Haible  <bruno@clisp.org>
7799
7800         * lib/inttypes_.h: Add definition for GL_LINK_WARNING.
7801         (imaxabs, imaxdiv, strtoimax, strtoumax): Don't declare the function
7802         if the corresponding module is not enabled. Emit link warnings if
7803         the function is used nevertheless.
7804         * m4/inttypes.m4 (gl_INTTYPES_H): Never use the existing <inttypes.h>.
7805         Don't AC_SUBST HAVE_DECL_IMAXABS, HAVE_DECL_IMAXDIV,
7806         HAVE_DECL_STRTOIMAX, HAVE_DECL_STRTOUMAX.
7807         (gl_INTTYPES_MODULE_INDICATOR, gl_INTTYPES_H_DEFAULTS): New macros.
7808         * modules/inttypes (Depends-on): Add link-warning.
7809         (Makefile.am): Copy the contents of build-aux/link-warning.h into
7810         inttypes.h. Substitute also GNULIB_IMAXABS, GNULIB_IMAXDIV,
7811         GNULIB_STRTOIMAX, GNULIB_STRTOUMAX.
7812         * modules/imaxabs (configure.ac): Invoke gl_INTTYPES_MODULE_INDICATOR.
7813         * modules/imaxdiv (configure.ac): Likewise.
7814         * modules/strtoimax (configure.ac): Likewise.
7815         * modules/strtoumax (configure.ac): Likewise.
7816
7817 2007-02-17  Bruno Haible  <bruno@clisp.org>
7818
7819         * m4/string_h.m4 (gl_HEADER_STRING_H_DEFAULTS): Include the contents of
7820         gl_STRING_MODULE_INDICATOR_DEFAULTS.
7821         (gl_STRING_MODULE_INDICATOR_DEFAULTS): Remove macro.
7822         (gl_HEADER_STRING_H_BODY, gl_STRING_MODULE_INDICATOR): Update.
7823
7824 2007-02-17  Bruno Haible  <bruno@clisp.org>
7825
7826         * modules/link-warning: New file.
7827         * build-aux/link-warning.h: New file, extracted from lib/string_.h.
7828         * lib/string_.h (GL_LINK_WARNING): Remove definition.
7829         * modules/string (Depends-on): Add link-warning.
7830         (Makefile.am): Copy the contents of build-aux/link-warning.h into
7831         string.h.
7832         * MODULES.html.sh (Support for building libraries and executables): Add
7833         link-warning.
7834
7835 2007-02-17  Bruno Haible  <bruno@clisp.org>
7836
7837         * lib/string_.h (memmem, mempcpy, memrchr, stpcpy, stpncpy, strcasecmp,
7838         strncasecmp, strchr, strchrnul, strdup, strndup, strnlen, strcspn,
7839         strpbrk, strspn, strrchr, strsep, strstr, strcasestr, strtok_r): Break
7840         long lines.
7841
7842 2007-02-17  Ben Pfaff  <blp@cs.stanford.edu>
7843             Bruno Haible  <bruno@clisp.org>
7844
7845         * modules/tmpfile: New file.
7846         * lib/tmpfile.c: New file.
7847         * m4/tmpfile.m4: New file.
7848         * MODULES.html.sh (func_all_modules): New section "Input/output".
7849
7850 2007-02-15  Bruno Haible  <bruno@clisp.org>
7851
7852         * lib/clean-temp.c [WIN32 && !CYGWIN]: Include <windows.h>.
7853         (supports_delete_on_close): New function.
7854         (open_temp, fopen_temp): Use _O_TEMPORARY when supported.
7855
7856 2007-02-14  Bruno Haible  <bruno@clisp.org>
7857
7858         * modules/mbspcasecmp-tests: New file.
7859         * tests/test-mbspcasecmp.sh: New file.
7860         * tests/test-mbspcasecmp.c: New file.
7861
7862         New module mbspcasecmp.
7863         * modules/mbspcasecmp: New file.
7864         * lib/mbspcasecmp.c: New file.
7865         * lib/string_.h (strncasecmp): Change warning message.
7866         (mbspcasecmp): New declaration.
7867         * m4/mbspcasecmp.m4: New file.
7868         * m4/string_h.m4 (gl_STRING_MODULE_INDICATOR_DEFAULTS): Initialize
7869         GNULIB_MBSPCASECMP.
7870         * modules/string (string.h): Also substitute GNULIB_MBSPCASECMP.
7871         * MODULES.html.sh (Internationalization functions): Add mbspcasecmp.
7872
7873 2007-02-14  Bruno Haible  <bruno@clisp.org>
7874
7875         * modules/mbsncasecmp-tests: New file.
7876         * tests/test-mbsncasecmp.sh: New file.
7877         * tests/test-mbsncasecmp.c: New file.
7878
7879         New module mbsncasecmp.
7880         * modules/mbsncasecmp: New file.
7881         * lib/mbsncasecmp.c: New file.
7882         * lib/string_.h (mbsncasecmp): New declaration.
7883         * m4/mbsncasecmp.m4: New file.
7884         * m4/string_h.m4 (gl_STRING_MODULE_INDICATOR_DEFAULTS): Initialize
7885         GNULIB_MBSNCASECMP.
7886         * modules/string (string.h): Also substitute GNULIB_MBSNCASECMP.
7887         * MODULES.html.sh (Internationalization functions): Add mbsncasecmp.
7888
7889 2007-02-14  Paul Eggert  <eggert@cs.ucla.edu>
7890
7891         * lib/exclude.c (FNM_EXTMATCH): Define if system does not.
7892         Verify that it doesn't overlap with our flags.
7893         (fnmatch_no_wildcards): Don't use strcasecmp or strncasecmp, which
7894         do not have the desired effect in multibyte locales; instead, use
7895         mbscasecmp.
7896         * modules/exclude (Depends-on): Depend on mbscasecmp, not strcase.
7897         Add dependency on xalloc.  Depend on fnmatch, not fnmatch-gnu, since
7898         we don't require GNU fnmatch ourselves (if our users require it, they
7899         should do so explicitly).
7900
7901         Fix regex code so it doesn't rely on strcasecmp.
7902         * lib/regex_internal.h: Include <langinfo.h> only if _LIBC is defined.
7903         Otherwise, include gnulib's langinfo.h.
7904         * lib/regcomp.c (init_dfa): Don't use strcasecmp, as it can have
7905         undesirable behavior in non-C locales.  Instead, rely on localecharset.
7906         * m4/regex.m4 (gl_PREREQ_REGEX): Don't require AM_LANGINFO_CODESET.
7907         * modules/regex (FILES): Remove m4/codeset.m4.
7908         (Depends-on): Add localcharset.  Remove strcase.
7909
7910 2007-02-13  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
7911
7912         * m4/unlinkdir.m4 (gl_UNLINKDIR): Fix m4 quoting bug.
7913         * m4/unlink-busy.m4 (gl_FUNC_UNLINK_BUSY_TEXT): Likewise.
7914
7915 2007-02-13  Bruno Haible  <bruno@clisp.org>
7916
7917         * m4/intdiv0.m4 (gt_INTDIV0): Assume ANSI C. Fix underquoting bug.
7918         Reported by Ralf Wildenhues <Ralf.Wildenhues@gmx.de>.
7919
7920 2007-02-12  Bruno Haible  <bruno@clisp.org>
7921
7922         * lib/string_.h (memmem, mempcpy, memrchr, stpcpy, stpncpy, strchrnul,
7923         strdup, strndup, strnlen, strpbrk, strsep, strtok_r): If
7924         GNULIB_POSIXCHECK and the gnulib module not enabled, provoke a link-
7925         time warning rather than a link error.
7926
7927 2007-02-12  Bruno Haible  <bruno@clisp.org>
7928
7929         * m4/locale-fr.m4 (gt_LOCALE_FR): Fix m4 quoting bug.
7930         * m4/locale-zh.m4 (gt_LOCALE_ZH_CN): Likewise.
7931         Reported by Ralf Wildenhues <Ralf.Wildenhues@gmx.de>.
7932
7933 2007-02-12  Paul Eggert  <eggert@cs.ucla.edu>
7934
7935         * lib/string_.h (strncasecmp): Fix typo: this macro takes 3
7936         args, not 2.
7937
7938 2007-02-12  Paul Eggert  <eggert@cs.ucla.edu>
7939
7940         New module 'time', so that apps can include <time.h> as per
7941         POSIX and GNU instead of separate include files like time_r.h
7942         and timegm.h.  This implementation tries out a simpler approach
7943         for replacing decls in standard include files (as compared to
7944         the string module), somewhat as an experiment.
7945
7946         * config/srclist.txt: Comment out mktime.c for now.
7947         * doc/gnulib-tool.texi (Initial import): Don't use time_r as an example
7948         since it doesn't apply any more.  Use generic wording instead.
7949         * MODULES.html.sh (Support for systems lacking POSIX:2001): New module
7950         'time'.
7951         * lib/time_.h, m4/time_h.m4, modules/time: New files.
7952         * lib/strptime.h, lib/time_r.h, lib/timegm.h: Remove.
7953         * lib/mktime.c: Include config.h depending on _LIBC, not HAVE_CONFIG_H.
7954         Don't include <sys/types.h>; no longer needed since we assume C89.
7955         * lib/mktime.c: Don't include "time_r.h"; no longer needed.
7956         * lib/strftime.c: Likewise.
7957         * lib/time_r.c: Likewise.
7958         * lib/nanosleep.c (nanosleep): #undef after include files, not before.
7959         * lib/nanosleep.c: Include <time.h> first, to check interface.
7960         * lib/strptime.c: Likewise.
7961         * lib/time_r.c: Likewise.
7962         * lib/timegm.c: Likewise.
7963         * lib/strptime.c: Don't include strptime.h or time_r.h; no longer
7964         needed.
7965         * lib/timegm.c: Don't include timegm.h; no longer needed.
7966         * lib/timespec.h: Don't include <sys/time.h> before <time.h>;
7967         time.h now handles any problems in that area.
7968         (struct timespec, nanosleep): Remove; time.h now arranges for these.
7969         * lib/xnanosleep.c: Don't include timespec.h; no longer needed now
7970         that time.h defines struct timespec.
7971         * m4/nanosleep.m4 (gl_FUNC_NANOSLEEP): Check that nanosleep is declared.
7972         Set REPLACE_NANOSLEEP.  Don't AC_DEFINE nanosleep; the time module now
7973         handles that.
7974         * m4/strptime.m4 (gl_FUNC_STPRTIME): Set REPLACE_STRPTIME.
7975         * m4/time_r.m4 (gl_TIME_R): Don't define HAVE_TIME_R_POSIX; no longer
7976         needed.  Set REPLACE_LOCALTIME.
7977         * m4/timegm.m4 (gl_FUNC_TIMEGM): Set REPLACE_TIMEGM.
7978         * m4/timespec.m4 (gl_CHECK_TYPE_STRUCT_TIMESPEC): Move to time_h.m4.
7979         (gl_TIMESPEC): Don't check for sys/time.h or struct timespec or
7980         nanosleep; time_h.m4 now does that.  Don't require
7981         gl_USE_SYSTEM_EXTENSIONS; no longer needed directly, and the time
7982         module handles this now.
7983         * modules/getdate (Depends-on): Remove timespec.  Add time.
7984         * modules/nanosleep (Depends-on): Likewise.
7985         * modules/stat-time (Depends-on): Likewise.
7986         * modules/nanosleep (Include): Include time.h, not timespec.h.
7987         * modules/strptime (Files): Remove lib/strptime.h.
7988         (Depends-on): Add extensions, time.
7989         (Include): Include time.h, not strptime.h.
7990         * modules/time_r (Files): Remove lib/time_r.h.
7991         (Depends-on): Add time.
7992         (Include): Include time.h, not time_r.h.
7993         * modules/timegm: Likewise.
7994         * modules/timespec (Description): Now does timespec-related decls
7995         of our own, instead of struct timespec itself.
7996         (Depends-on): Add time; remove extensions.
7997         (Maintainer): Add self.
7998         * modules/utimecmp (Depends-on): Add time; remove timespec.
7999         * modules/utimens (Depends-on): Likewise.
8000         * modules/xnanosleep (Depends-on): Likewise.
8001
8002 2007-02-11  Bruno Haible  <bruno@clisp.org>
8003
8004         * lib/c-strstr.c: Include allocsa.h.
8005         (knuth_morris_pratt): Use allocsa/freesa instead of malloc/free.
8006         * lib/c-strcasestr.c: Include allocsa.h.
8007         (knuth_morris_pratt): Use allocsa/freesa instead of malloc/free.
8008         * lib/strcasestr.c: Include allocsa.h.
8009         (knuth_morris_pratt): Use allocsa/freesa instead of malloc/free.
8010         * lib/mbsstr.c: Include allocsa.h.
8011         (knuth_morris_pratt_unibyte, knuth_morris_pratt_multibyte): Use
8012         allocsa/freesa instead of malloc/free.
8013         * lib/mbscasestr.c: Include allocsa.h.
8014         (knuth_morris_pratt_unibyte, knuth_morris_pratt_multibyte): Use
8015         allocsa/freesa instead of malloc/free.
8016         * modules/c-strstr (Depends-on): Add allocsa.
8017         * modules/c-strcasestr (Depends-on): Likewise.
8018         * modules/strcasestr (Depends-on): Likewise.
8019         * modules/mbsstr (Depends-on): Likewise.
8020         * modules/mbscasestr (Depends-on): Likewise.
8021
8022 2007-02-11  Bruno Haible  <bruno@clisp.org>
8023
8024         * lib/mbsspn.c (mbsspn): Fix bug. Remove unnecessary strlen call.
8025
8026         * modules/mbsspn-tests: New file.
8027         * tests/test-mbsspn.sh: New file.
8028         * tests/test-mbsspn.c: New file.
8029
8030 2007-02-11  Bruno Haible  <bruno@clisp.org>
8031
8032         * lib/mbspbrk.c (mbspbrk): Remove unneeded cast.
8033
8034         * modules/mbspbrk-tests: New file.
8035         * tests/test-mbspbrk.sh: New file.
8036         * tests/test-mbspbrk.c: New file.
8037
8038 2007-02-11  Bruno Haible  <bruno@clisp.org>
8039
8040         * lib/mbscspn.c (mbscspn): Remove unnecessary strlen call and
8041         unneeded cast.
8042
8043         * modules/mbscspn-tests: New file.
8044         * tests/test-mbscspn.sh: New file.
8045         * tests/test-mbscspn.c: New file.
8046
8047 2007-02-11  Bruno Haible  <bruno@clisp.org>
8048
8049         * modules/mbscasecmp-tests: New file.
8050         * tests/test-mbscasecmp.sh: New file.
8051         * tests/test-mbscasecmp.c: New file.
8052
8053 2007-02-11  Bruno Haible  <bruno@clisp.org>
8054
8055         Ensure O(n) worst-case complexity of mbscasestr.
8056         * lib/mbscasestr.c: Include stdbool.h.
8057         (knuth_morris_pratt_unibyte, knuth_morris_pratt_multibyte): New
8058         functions.
8059         (mbscasestr): Add some bookkeeping. Invoke knuth_morris_pratt_* when
8060         the bookkeeping indicates that it's worth it.
8061         * modules/mbscasestr (Depends-on): Add stdbool, mbslen, strnlen.
8062
8063         * modules/mbscasestr-tests: New file.
8064         * tests/test-mbscasestr1.c: New file.
8065         * tests/test-mbscasestr2.sh: New file.
8066         * tests/test-mbscasestr2.c: New file.
8067         * tests/test-mbscasestr3.sh: New file.
8068         * tests/test-mbscasestr3.c: New file.
8069         * tests/test-mbscasestr4.sh: New file.
8070         * tests/test-mbscasestr4.c: New file.
8071         * m4/locale-tr.m4: New file.
8072
8073 2007-02-11  Bruno Haible  <bruno@clisp.org>
8074
8075         Ensure O(n) worst-case complexity of mbsstr.
8076         * lib/mbsstr.c: Include stdbool.h.
8077         (knuth_morris_pratt_unibyte, knuth_morris_pratt_multibyte): New
8078         functions.
8079         (mbsstr): Add some bookkeeping. Invoke knuth_morris_pratt_* when the
8080         bookkeeping indicates that it's worth it.
8081         * modules/mbsstr (Depends-on): Add stdbool, mbslen, strnlen.
8082
8083         * modules/mbsstr-tests: New file.
8084         * tests/test-mbsstr1.c: New file.
8085         * tests/test-mbsstr2.sh: New file.
8086         * tests/test-mbsstr2.c: New file.
8087         * tests/test-mbsstr3.sh: New file.
8088         * tests/test-mbsstr3.c: New file.
8089         * m4/locale-fr.m4: New file.
8090
8091 2007-02-11  Bruno Haible  <bruno@clisp.org>
8092
8093         * lib/mbsrchr.c (mbsrchr): Fix bug.
8094
8095         * modules/mbsrchr-tests: New file.
8096         * tests/test-mbsrchr.sh: New file.
8097         * tests/test-mbsrchr.c: New file.
8098
8099 2007-02-11  Bruno Haible  <bruno@clisp.org>
8100
8101         * lib/mbschr.c (mbschr): Fix bug.
8102
8103         * modules/mbschr-tests: New file.
8104         * tests/test-mbschr.sh: New file.
8105         * tests/test-mbschr.c: New file.
8106         * m4/locale-zh.m4: New file.
8107
8108 2007-02-11  Bruno Haible  <bruno@clisp.org>
8109
8110         Support for copying multibyte string iterators.
8111         * lib/mbiter.h: Include <string.h>.
8112         (mbiter_multi_copy): New function.
8113         (mbi_copy): New macro.
8114         * lib/mbuiter.h: Include <string.h>.
8115         (mbuiter_multi_copy): New function.
8116         (mbui_copy): New macro.
8117
8118 2007-02-11  Bruno Haible  <bruno@clisp.org>
8119
8120         New module mbslen.
8121         * modules/mbslen: New file.
8122         * lib/mbslen.c: New file.
8123         * lib/string_.h (mbslen): New declaration.
8124         * m4/mbslen.m4: New file.
8125         * m4/string_h.m4 (gl_STRING_MODULE_INDICATOR_DEFAULTS): Initialize
8126         GNULIB_MBSLEN.
8127         * modules/string (string.h): Also substitute GNULIB_MBSLEN.
8128         * MODULES.html.sh (Internationalization functions): Add mbslen.
8129
8130 2007-02-11  Bruno Haible  <bruno@clisp.org>
8131
8132         Ensure O(n) worst-case complexity of strcasestr substitute.
8133         * lib/strcasestr.c: Include stdbool.h.
8134         (knuth_morris_pratt): New function.
8135         (strcasestr): Add some bookkeeping. Invoke knuth_morris_pratt when the
8136         bookkeeping indicates that it's worth it.
8137         * modules/strcasestr (Depends-on): Add stdbool, strnlen.
8138
8139         * modules/strcasestr-tests: New file.
8140         * tests/test-strcasestr.c: New file.
8141
8142 2007-02-11  Bruno Haible  <bruno@clisp.org>
8143
8144         Ensure O(n) worst-case complexity of c_strcasestr.
8145         * lib/c-strcasestr.c: Include stdbool.h, string.h.
8146         (knuth_morris_pratt): New function.
8147         (c_strcasestr): Add some bookkeeping. Invoke knuth_morris_pratt when
8148         the bookkeeping indicates that it's worth it.
8149         * modules/c-strcasestr (Depends-on): Add stdbool, strnlen.
8150
8151         * modules/c-strcasestr-tests: New file.
8152         * tests/test-c-strcasestr.c: New file.
8153
8154 2007-02-11  Bruno Haible  <bruno@clisp.org>
8155
8156         Ensure O(n) worst-case complexity of c_strstr.
8157         * lib/c-strstr.c: Include stdbool.h, string.h.
8158         (knuth_morris_pratt): New function.
8159         (c_strstr): Add some bookkeeping. Invoke knuth_morris_pratt when the
8160         bookkeeping indicates that it's worth it.
8161         * modules/c-strstr (Depends-on): Add stdbool, strnlen.
8162
8163         * lib/c-strstr.c: Complete rewrite for maintainability.
8164
8165         * modules/c-strstr-tests: New file.
8166         * tests/test-c-strstr.c: New file.
8167
8168 2007-02-11  Bruno Haible  <bruno@clisp.org>
8169
8170         * m4/javacomp.m4 (gt_JAVACOMP): Work around a 'tr' bug in coreutils
8171         5.2.1 and earlier, whereby \055 was treated just like the range
8172         delimiter '-'.
8173         Reported by Joel E. Denny <jdenny@ces.clemson.edu>.
8174
8175 2007-02-08  Bruno Haible  <bruno@clisp.org>
8176
8177         * modules/regex (Depends-on): Add stdbool.
8178         Reported by Dalibor Topic <robilad@kaffe.org>.
8179
8180 2007-02-05  Paul Eggert  <eggert@cs.ucla.edu>
8181
8182         * m4/regex.m4 (gl_REGEX): Check for glibc bug #3957.
8183         Prefer returning from main to exiting from it.
8184         Remove unnecessary parens after sizeof.
8185
8186 2007-02-05  Bruno Haible  <bruno@clisp.org>
8187
8188         New module mbssep.
8189         * modules/mbssep: New file.
8190         * lib/mbssep.c: New file.
8191         * lib/string_.h (strsep): Add a conditional link warning.
8192         (mbssep): New declaration.
8193         * m4/mbssep.m4: New file.
8194         * m4/string_h.m4 (gl_STRING_MODULE_INDICATOR_DEFAULTS): Initialize
8195         GNULIB_MBSSEP.
8196         * modules/string (string.h): Also substitute GNULIB_MBSSEP.
8197         * MODULES.html.sh (Internationalization functions): Add mbssep.
8198
8199 2007-02-05  Bruno Haible  <bruno@clisp.org>
8200
8201         * lib/strsep.c (strsep): Fix actions in case of no delimiters.
8202         Optimize search in case of 1 delimiter.
8203
8204 2007-02-05  Paolo Bonzini  <bonzini@gnu.org>
8205
8206         * lib/acl.h: Include sys/types.h before sys/acl.h.
8207
8208 2007-02-05  Paolo Bonzini  <bonzini@gnu.org>
8209
8210         Merge upstream fix for glibc bugzilla #3957:
8211
8212         2007-02-05  Jakub Jelinek  <jakub@redhat.com>
8213
8214         * lib/regcomp.c (parse_bracket_exp): Set '\n' bit rather than '\0'
8215         bit for RE_HAT_LISTS_NOT_NEWLINE.
8216         (build_charclass_op): Remove bogus comment.
8217
8218 2007-02-05  Simon Josefsson  <simon@josefsson.org>
8219
8220         * lib/gc.h, lib/gc-libgcrypt.c: Support SHA-256/384/512.
8221
8222 2007-02-04  Paul Eggert  <eggert@cs.ucla.edu>
8223
8224         * lib/getsubopt.c [!_LIBC]: Include config.h and getsubopt.h.
8225         * lib/memmem.c [!defined _LIBC]: Include config.h.
8226
8227 2007-02-04  Bruno Haible  <bruno@clisp.org>
8228
8229         * lib/string_.h (GL_LINK_WARNING2): Put the word "warning:" into the
8230         warning message.
8231
8232 2007-02-04  Bruno Haible  <bruno@clisp.org>
8233
8234         New module mbstok_r.
8235         * modules/mbstok_r: New file.
8236         * lib/mbstok_r.c: New file.
8237         * lib/string_.h (strtok_r): Change argument names to match the
8238         comments. Add a conditional link warning.
8239         (mbstok_r): New declaration.
8240         * m4/mbstok_r.m4: New file.
8241         * m4/string_h.m4 (gl_STRING_MODULE_INDICATOR_DEFAULTS): Initialize
8242         GNULIB_MBSTOK_R.
8243         * modules/string (string.h): Also substitute GNULIB_MBSTOK_R.
8244         * MODULES.html.sh (Internationalization functions): Add mbstok_r.
8245
8246 2007-02-04  Bruno Haible  <bruno@clisp.org>
8247
8248         New module mbsspn.
8249         * modules/mbsspn: New file.
8250         * lib/mbsspn.c: New file.
8251         * lib/string_.h (strspn): Add a conditional link warning.
8252         (mbsspn): New declaration.
8253         * m4/mbsspn.m4: New file.
8254         * m4/string_h.m4 (gl_STRING_MODULE_INDICATOR_DEFAULTS): Initialize
8255         GNULIB_MBSSPN.
8256         * modules/string (string.h): Also substitute GNULIB_MBSSPN.
8257         * MODULES.html.sh (Internationalization functions): Add mbsspn.
8258
8259 2007-02-04  Bruno Haible  <bruno@clisp.org>
8260
8261         New module mbspbrk.
8262         * modules/mbspbrk: New file.
8263         * lib/mbspbrk.c: New file.
8264         * lib/string_.h (strpbrk): Add a conditional link warning.
8265         (mbspbrk): New declaration.
8266         * m4/mbspbrk.m4: New file.
8267         * m4/string_h.m4 (gl_STRING_MODULE_INDICATOR_DEFAULTS): Initialize
8268         GNULIB_MBSPBRK.
8269         * modules/string (string.h): Also substitute GNULIB_MBSPBRK.
8270         * MODULES.html.sh (Internationalization functions): Add mbspbrk.
8271
8272 2007-02-04  Bruno Haible  <bruno@clisp.org>
8273
8274         New module mbscspn.
8275         * modules/mbscspn: New file.
8276         * lib/mbscspn.c: New file.
8277         * lib/string_.h (strcspn): Add a conditional link warning.
8278         (mbscspn): New declaration.
8279         * m4/mbscspn.m4: New file.
8280         * m4/string_h.m4 (gl_STRING_MODULE_INDICATOR_DEFAULTS): Initialize
8281         GNULIB_MBSCSPN.
8282         * modules/string (string.h): Also substitute GNULIB_MBSCSPN.
8283         * MODULES.html.sh (Internationalization functions): Add mbscspn.
8284
8285 2007-02-04  Bruno Haible  <bruno@clisp.org>
8286
8287         New module mbscasestr, reduced goal of strcasestr.
8288         * modules/mbscasestr: New file.
8289         * lib/mbscasestr.c: New file, copied from lib/strcasestr.c.
8290         (mbscasestr): Renamed from strcasestr.
8291         * lib/strcasestr.c: Don't include mbuiter.h.
8292         (strcasestr): Remove support for multibyte locales.
8293         * lib/string_.h (strcasestr): Don`t rename. Declare only if missing.
8294         Change the conditional link warning.
8295         (mbscasestr): New declaration.
8296         * m4/mbscasestr.m4: New file.
8297         * m4/strcasestr.m4 (gl_FUNC_STRCASESTR): Enable the replacement only if
8298         the system does not have strcasestr. Set HAVE_STRCASESTR instead of
8299         REPLACE_STRCASESTR.
8300         (gl_PREREQ_STRCASESTR): Don't require gl_FUNC_MBRTOWC.
8301         * m4/string_h.m4 (gl_HEADER_STRING_H_DEFAULTS): Initialize
8302         HAVE_STRCASESTR instead of REPLACE_STRCASESTR.
8303         (gl_STRING_MODULE_INDICATOR_DEFAULTS): Initialize GNULIB_MBSCASESTR.
8304         * modules/string (string.h): Also substitute GNULIB_MBSCASESTR.
8305         Substitute HAVE_STRCASESTR instead of REPLACE_STRCASESTR.
8306         * modules/strcasestr (Files): Remove m4/mbrtowc.m4.
8307         (Depends-on): Remove mbuiter.
8308         * MODULES.html.sh (Internationalization functions): Add mbscasestr.
8309
8310 2007-02-04  Bruno Haible  <bruno@clisp.org>
8311
8312         Simplify handling of strncasecmp.
8313         * lib/string_.h (strncasecmp): Remove test for GNULIB_STRCASE. Change
8314         the conditional link warning.
8315         * m4/string_h.m4 (gl_HEADER_STRING_H_DEFAULTS): Initialize
8316         HAVE_STRCASECMP, not REPLACE_STRCASECMP.
8317         (gl_STRING_MODULE_INDICATOR_DEFAULTS): Don't initialize GNULIB_STRCASE.
8318         * modules/strcase (configure.ac): Don't invoke
8319         gl_STRING_MODULE_INDICATOR.
8320         * modules/string (string.h): Don't substitute GNULIB_STRCASE.
8321
8322 2007-02-04  Bruno Haible  <bruno@clisp.org>
8323
8324         New module mbscasecmp, reduced goal of strcasecmp.
8325         * modules/mbscasecmp: New file.
8326         * lib/mbscasecmp.c: New file, copied from lib/strcasecmp.c.
8327         (mbscasecmp): Renamed from strcasecmp.
8328         * lib/strcasecmp.c: Don't include mbuiter.h.
8329         (strcasecmp): Remove support for multibyte locales.
8330         * lib/string_.h (strcasecmp): Don`t rename. Declare only if missing.
8331         Change the conditional link warning.
8332         (mbscasecmp): New declaration.
8333         * m4/mbscasecmp.m4: New file.
8334         * m4/strcase.m4 (gl_FUNC_STRCASECMP): Enable the replacement only if
8335         the system lacks strcasecmp. Set HAVE_STRCASECMP instead of
8336         REPLACE_STRCASECMP.
8337         (gl_PREREQ_STRCASECMP): Don't require gl_FUNC_MBRTOWC.
8338         * m4/string_h.m4 (gl_STRING_MODULE_INDICATOR_DEFAULTS): Initialize
8339         GNULIB_MBSCASECMP.
8340         * modules/string (string.h): Also substitute GNULIB_MBSCASECMP.
8341         Substitute HAVE_STRCASECMP instead of REPLACE_STRCASECMP.
8342         * modules/strcase (Files): Remove m4/mbrtowc.m4.
8343         (Depends-on): Remove mbuiter.
8344         * MODULES.html.sh (Internationalization functions): Add mbscasecmp.
8345
8346 2007-02-04  Bruno Haible  <bruno@clisp.org>
8347
8348         New module mbsstr. Remove module strstr.
8349         * modules/mbsstr: New file.
8350         * modules/strstr: Remove file.
8351         * lib/mbsstr.c: Renamed from lib/strstr.c.
8352         (mbsstr): Renamed from strstr.
8353         * lib/string_.h (strstr): Remove declaration. Change the conditional
8354         link warning.
8355         (mbsstr): New declaration.
8356         * m4/mbsstr.m4: New file.
8357         * m4/strstr.m4: Remove file.
8358         * m4/string_h.m4 (gl_HEADER_STRING_H_DEFAULTS): Don't initialize
8359         REPLACE_STRSTR.
8360         (gl_STRING_MODULE_INDICATOR_DEFAULTS): Initialize GNULIB_MBSSTR.
8361         Don't initialize GNULIB_STRSTR.
8362         * modules/string (string.h): Also substitute GNULIB_MBSSTR. Don't
8363         substitute GNULIB_STRSTR and REPLACE_STRSTR.
8364         * MODULES.html.sh (Internationalization functions): Add mbsstr.
8365         (Support for systems lacking ANSI C 89): Remove strstr.
8366
8367 2007-02-04  Bruno Haible  <bruno@clisp.org>
8368
8369         New module mbsrchr.
8370         * modules/mbsrchr: New file.
8371         * lib/mbsrchr.c: New file.
8372         * lib/string_.h (strrchr): Add a conditional link warning.
8373         (mbsrchr): New declaration.
8374         * m4/mbsrchr.m4: New file.
8375         * m4/string_h.m4 (gl_STRING_MODULE_INDICATOR_DEFAULTS): Initialize
8376         GNULIB_MBSRCHR.
8377         * modules/string (string.h): Also substitute GNULIB_MBSRCHR.
8378         * MODULES.html.sh (Internationalization functions): Add mbsrchr.
8379
8380 2007-02-04  Bruno Haible  <bruno@clisp.org>
8381
8382         New module mbschr.
8383         * modules/mbschr: New file.
8384         * lib/mbschr.c: New file.
8385         * lib/string_.h (strchr): Add a conditional link warning.
8386         (mbschr): New declaration.
8387         * m4/mbschr.m4: New file.
8388         * m4/string_h.m4 (gl_STRING_MODULE_INDICATOR_DEFAULTS): Initialize
8389         GNULIB_MBSCHR.
8390         * modules/string (string.h): Also substitute GNULIB_MBSCHR.
8391         * MODULES.html.sh (Internationalization functions): Add mbschr.
8392
8393 2007-02-04  Paul Eggert  <eggert@cs.ucla.edu>
8394
8395         * lib/stdbool_.h: Mention that bool bit-fields aren't supported.
8396
8397         * modules/stdarg (configure.ac-early): Require AC_PROG_CC_STDC.
8398
8399 2007-02-04  Bruno Haible  <bruno@clisp.org>
8400
8401         New module description section 'configure.ac-early'.
8402         * gnulib-tool (sed_extract_prog): Recognize configure.ac-early.
8403         (func_get_autoconf_early_snippet): New function.
8404         (func_import, func_create_testdir): Use it. Remove special cases for
8405         modules 'extensions' and 'lock'.
8406         * modules/extensions (configure.ac-early): Require
8407         gl_USE_SYSTEM_EXTENSIONS.
8408         * modules/lock (configure.ac-early): Require gl_LOCK_EARLY.
8409
8410 2007-02-04  Bruno Haible  <bruno@clisp.org>
8411
8412         Make use of gcj-4.3's -fsource and -ftarget option.
8413         * m4/javacomp.m4 (gt_JAVACOMP): Test whether gcj is in version >= 4.3,
8414         and if so try the options -fsource and -ftarget.
8415         * lib/javacomp.c (compile_using_gcj): Add fsource_option,
8416         source_version, ftarget_option, target_version arguments.
8417         (is_envjavac_gcj43, is_envjavac_gcj43_usable): New functions.
8418         (is_envjavac_oldgcj_14_14_usable): Renamed from
8419         is_envjavac_gcj_14_14_usable.
8420         (is_envjavac_oldgcj_14_13_usable): Renamed from
8421         is_envjavac_gcj_14_13_usable.
8422         (is_gcj_present): Update.
8423         (is_gcj_43, is_gcj43_usable): New functions.
8424         (is_oldgcj_14_14_usable): Renamed from is_gcj_14_14_usable. Update.
8425         (is_oldgcj_14_13_usable): Renamed from is_gcj_14_13_usable. Update.
8426         (compile_java_class): Test whether gcj is in version >= 4.3, and if so
8427         try the options -fsource and -ftarget.
8428
8429 2007-02-03  Paul Eggert  <eggert@cs.ucla.edu>
8430
8431         * lib/xalloc.h (x2nrealloc): Fix an unlikely bug in the overflow
8432         checking code.  Set N = ceil (1.5 * N) rather than to a slightly
8433         larger value.
8434
8435 2007-02-03  Jim Meyering  <jim@meyering.net>
8436
8437         Give tools a better chance to allocate space for very large buffers.
8438         * lib/xalloc.h (x2nrealloc): Use 3/2, not 2, as buffer size factor.
8439
8440         Make pwd and readlink work also when run with an unreadable parent dir
8441         on systems with openat support.
8442         * lib/getcwd.c (__getcwd) [HAVE_PARTLY_WORKING_GETCWD]: Use the system
8443         provided getcwd function, even when we have openat support.
8444         Reported by Dmitry V. Levin in <http://bugzilla.redhat.com/227168>.
8445
8446 2007-02-02  Bruno Haible  <bruno@clisp.org>
8447
8448         * lib/string_.h (memmem, mempcpy, memrchr, stpcpy, stpncpy, strchrnul,
8449         strdup, strndup, strnlen, strpbrk, strsep, strtok_r): Provoke a link
8450         error only if GNULIB_POSIXCHECK is defined. Needed to avoid artificial
8451         portability problems if one of these functions is only used on specific
8452         platforms.
8453         Reported by Paul Eggert.
8454
8455 2007-02-02  Paul Eggert  <eggert@cs.ucla.edu>
8456
8457         Avoid mempcpy in the regex code, as the string.h mempcpy stuff
8458         is causing more trouble than it's curing.
8459         * lib/regex_internal.h (__mempcpy): Remove.
8460         * lib/regcomp.c (regerror): Rewrite to avoid the need for mempcpy
8461         (and make the code a tad smaller to boot).
8462         * m4/regex.m4 (gl_PREREQ_REGEX): Don't check for mempcpy.
8463
8464 2007-02-02  Jim Meyering  <jim@meyering.net>
8465
8466         * modules/arpa_inet: Put AC_PROG_MKDIR_P in the configure.ac:
8467         section, not in the Makefile.am: one.
8468
8469 2007-02-02  Eric Blake  <ebb9@byu.net>
8470
8471         * lib/strchrnul.c: Always include config.h first.
8472
8473         * modules/mountlist (Depends-on): Revert 2007-01-31 change,
8474         gnulib strstr is not necessary here.
8475
8476 2007-02-02  Simon Josefsson  <simon@josefsson.org>
8477
8478         * m4/socklen.m4: Fix typo.
8479
8480 2007-02-02  Eric Blake  <ebb9@byu.net>
8481
8482         * modules/arpa_inet (Makefile.am): Use MKDIR_P to avoid races.
8483         * modules/netinet_in (Makefile.am): Likewise.
8484
8485 2007-02-01  Bruno Haible  <bruno@clisp.org>
8486
8487         * lib/string_.h (GL_LINK_WARNING): New macro.
8488         (strcasecmp, strstr, strcasestr): If provided by the system,
8489         conditionally define as a macro that leads to a warning instead of to
8490         an error.
8491         (strncasecmp): Conditionally define as a macro that leads to a warning.
8492
8493 2007-02-01  Karl Berry  <karl@gnu.org>
8494
8495         * config/srclist.txt (strtok_r.c): lose sync, no more strtok_r.h.
8496
8497 2007-02-01  Bruno Haible  <bruno@clisp.org>
8498
8499         * MODULES.html.sh (Unicode string functions): Update after 2007-01-27
8500         renamings.
8501
8502 2007-02-01  Eric Blake  <ebb9@byu.net>
8503
8504         * modules/regex (Depends-on): Revert dependence on mempcpy.
8505         * lib/regex_internal.h [! _LIBC && !__mempcpy]: Undo string
8506         module's definition of mempcpy.
8507         Reported by Paul Eggert.
8508
8509 2007-02-01  Paul Eggert  <eggert@cs.ucla.edu>
8510
8511         * lib/string_.h: If the gnulib module XYZ is not present, undefine
8512         the symbol XYZ before redefining it.  This fixes a problem with
8513         programs that don't use XYZ, when compiled on systems that define
8514         XYZ to something else.
8515
8516 2007-01-31  Paul Eggert  <eggert@cs.ucla.edu>
8517
8518         * lib/mkdir-p.c (make_dir_parents): Close a race condition that
8519         occurs when "mkdir -m foo" creates a setgid directory that is (1)
8520         writeable to group or other and (2) is intended to have a special
8521         mode bit that is set or cleared.  In such a case, the directory
8522         should be neither group- nor other-writeable until the special
8523         mode bits are right.
8524
8525 2007-01-31  Eric Blake  <ebb9@byu.net>
8526
8527         * modules/mountlist (Depends-on): Add strstr.
8528
8529         * m4/string_h.m4 (gl_STRING_MODULE_INDICATOR): Correct m4 usage
8530         bug.
8531         * modules/string (Makefile.am): Remove redundant replacement.
8532         * modules/regex (Depends-on): Add mempcpy.
8533
8534 2007-01-31  Bruno Haible  <bruno@clisp.org>
8535
8536         New module description field 'Link'.
8537         * gnulib-tool (func_usage): Document --extract-link-directive.
8538         (sed_extract_prog): Recognize 'Link' directive.
8539         (func_get_link_directive): New function.
8540         (func_import): Show summary of link directives.
8541         Handle --extract-link-directive option.
8542         * modules/acl (Link): New section.
8543         * modules/clock-time (Link): New section.
8544         * modules/euidaccess (Link): New section.
8545         * modules/gettext (Link): New section.
8546         * modules/iconv (Link): New section.
8547         * modules/lock (Link): New section.
8548         * modules/nanosleep (Link): New section.
8549         * modules/readline (Link): New section.
8550
8551 2007-01-27  Bruno Haible  <bruno@clisp.org>
8552
8553         Enforce the use of gnulib modules for unportable <string.h> functions.
8554         * m4/string_h.m4 (gl_STRING_MODULE_INDICATOR): New macro.
8555         (gl_STRING_MODULE_INDICATOR_DEFAULTS): New macro.
8556         (gl_HEADER_STRING_H_BODY): Require it.
8557         * lib/string_.h: If the gnulib module XYZ is not present, redefine
8558         the symbol XYZ to one that gives a link error.
8559         * modules/string (Makefile.am): Also substitute the GNULIB_* variables.
8560         * modules/memmem (configure.ac): Invoke gl_STRING_MODULE_INDICATOR.
8561         * modules/mempcpy (configure.ac): Likewise.
8562         * modules/memrchr (configure.ac): Likewise.
8563         * modules/stpcpy (configure.ac): Likewise.
8564         * modules/stpncpy (configure.ac): Likewise.
8565         * modules/strcase (configure.ac): Likewise.
8566         * modules/strcasestr (configure.ac): Likewise.
8567         * modules/strchrnul (configure.ac): Likewise.
8568         * modules/strdup (configure.ac): Likewise.
8569         * modules/strndup (configure.ac): Likewise.
8570         * modules/strnlen (configure.ac): Likewise.
8571         * modules/strpbrk (configure.ac): Likewise.
8572         * modules/strsep (configure.ac): Likewise.
8573         * modules/strstr (configure.ac): Likewise.
8574         * modules/strtok_r (configure.ac): Likewise.
8575
8576 2007-01-31  Jean-Louis Martineau  <martineau@zmanda.com>  (tiny change)
8577
8578         * lib/gai_strerror.c (values): Add EAI_OVERFLOW.
8579
8580 2007-01-30  Jim Meyering  <jim@meyering.net>
8581
8582         * lib/mpsort.c (mpsort): Remove spurious "return" in void function.
8583
8584 2007-01-29  Bruno Haible  <bruno@clisp.org>
8585
8586         * lib/allocsa.h: Use '#if HAVE_*' instead of '#ifdef HAVE_*'.
8587         * lib/execute.c: Likewise.
8588         * lib/pipe.c: Likewise.
8589         * lib/printf-args.h: Likewise.
8590         * lib/printf-args.c: Likewise.
8591         * lib/printf-parse.c: Likewise.
8592         * lib/vasnprintf.c: Likewise.
8593
8594 2007-01-29  Eric Blake  <ebb9@byu.net>
8595
8596         * lib/memrchr.c: Assume <string.h> unconditionally, to pull in
8597         declaration.
8598
8599 2007-01-29  Paul Eggert  <eggert@cs.ucla.edu>
8600
8601         * lib/strptime.h (strptime): Use 'restrict' for args where
8602         POSIX requires this.
8603         * lib/strptime.c (strptime): Likewise.
8604         Change license notice from LGPL to GPL, since gnulib-tool will
8605         change this as needed.
8606         Include <config.h> if _LIBC is not defined, not if HAVE_CONFIG_H is
8607         defined.
8608         Include "strptime.h" first, to check interface.
8609         Do not #undef _LIBC and _NL_CURRENT.
8610         Do not include <stdlib.h>; no longer needed.
8611         Include "time_r.h" and declare ptime_locale_status
8612         only if _LIBC is not defined.
8613         (__P): Remove unused macro.
8614         (match_string): Bring back glibc version, but use it only if _LIBC
8615         is defined.
8616         (__strptime_internal): Compile tm_gmtoff code if _LIBC is defined, too.
8617         Remove unnecessary assertion and abort() call.
8618         Use #ifdef _NL_CURRENT rather than #if 0, for benefit of glibc.
8619         * m4/strptime.m4: Fix serial number comment.
8620         (gl_FUNC_STRPTIME): Require AC_C_RESTRICT, gl_TM_GMTOFF.
8621         * modules/strptime (Files): Add m4/tm_gmtoff.m4.
8622         (Depends-on): Add time_r.
8623
8624 2007-01-29  Bruno Haible  <bruno@clisp.org>
8625
8626         * MODULES.html.sh (Support for systems lacking POSIX:2001): Add
8627         strptime.
8628         * modules/strptime (Depends-on): Add stdbool.
8629         * lib/strptime.h: Include <time.h> always. Add comments.
8630
8631 2007-01-29  Yoann Vandoorselaere  <yoann@prelude-ids.org>
8632
8633         * modules/strptime: New file.
8634         * lib/strptime.h: New file.
8635         * lib/strptime.c: New file.
8636         * m4/strptime.m4: New file.
8637
8638 2007-01-28  Paul Eggert  <eggert@cs.ucla.edu>
8639
8640         * MODULES.html.sh: New module mpsort.
8641         * lib/mpsort.c, lib/mpsort.h, m4/mpsort.m4, modules/mpsort: New files.
8642
8643         * lib/regex.h (_Restrict_): Renamed from __restrict, to avoid
8644         a circularity problem with HP-UX ia64 reported by Bob Proulx in
8645         <http://lists.gnu.org/archive/html/bug-gnulib/2007-01/msg00394.html>.
8646         All uses changed.
8647         (_Restrict_arr_): Renamed from __restrict_arr, for similar reasons.
8648         All uses changed.
8649         * lib/regcomp.c, lib/regexec.c: Change all uses from __restrict
8650         to _Restrict_.
8651         * lib/regexec.c (regexec): Declare pmatch with _Restrict_arr_, so that
8652         the parameter matches the prototype.
8653
8654 2007-01-28  Jim Meyering  <jim@meyering.net>
8655
8656         * modules/sys_time (Makefile.am) [MOSTLYCLEANFILES]: Do use
8657         sys/time.h here, reverting that part of the previous patch:
8658         <http://thread.gmane.org/gmane.comp.lib.gnulib.bugs/8959>.
8659
8660 2007-01-28  Bruno Haible  <bruno@clisp.org>
8661
8662         * modules/sys_time (Makefile.am): Build sys/time.h only when it's the
8663         value of $(SYS_TIME_H).
8664         [MOSTLYCLEANFILES]: Now that sys/time.h is created only when needed,
8665         remove it conditionally, too. [added by Jim Meyering]
8666         * m4/sys_time_h.m4 (gl_HEADER_SYS_TIME_H_BODY): Set SYS_TIME_H.
8667         * m4/gettimeofday.m4 (gl_FUNC_GETTIMEOFDAY):
8668         (gl_FUNC_GETTIMEOFDAY_CLOBBER): Set SYS_TIME_H when setting
8669         GETTIMEOFDAY_REPLACEMENT to 1.
8670
8671 2007-01-28  Bruno Haible  <bruno@clisp.org>
8672
8673         * m4/unistd_h.m4 (gl_HEADER_UNISTD_DEFAULTS): New macro.
8674         (gl_HEADER_UNISTD): Require it. Don't set UNISTD_H to empty here.
8675         * m4/fchdir.m4 (gl_FUNC_FCHDIR): Require gl_HEADER_UNISTD_DEFAULTS.
8676         Set UNISTD_H instead of UNISTD_H2.
8677         * modules/fchdir (BUILT_SOURCES): Drop $(UNISTD_H2).
8678
8679 2007-01-28  Bruno Haible  <bruno@clisp.org>
8680
8681         * modules/mbchar (Makefile.am): Add mbchar.c to lib_SOURCES.
8682         * m4/mbchar.m4 (gl_MBCHAR): Remove AC_LIBOBJ invocation.
8683
8684 2007-01-28  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
8685
8686         * gnulib-tool (func_emit_lib_Makefile_am, func_add_or_update)
8687         (func_create_testdir): Ensure C locale for `grep' and `tr'
8688         character ranges.
8689         (func_create_megatestdir): Avoid one `grep'.  Fix bug in
8690         ACLOCAL_AMFLAGS parsing state machine.
8691
8692 2007-01-27  Bruno Haible  <bruno@clisp.org>
8693
8694         * modules/unistr/base: Update.
8695
8696 2007-01-27  Bruno Haible  <bruno@clisp.org>
8697
8698         Rename u32-mbtouc -> u32-mbtouc-unsafe, u32-mbtouc-safe -> u32-mbtouc,
8699         u32_mbtouc -> u32_mbtouc_unsafe, u32_mbtouc_safe -> u32_mbtouc.
8700         * modules/unistr/u32-mbtouc-unsafe: Renamed from
8701         modules/unistr/u32-mbtouc.
8702         * lib/unistr/u32-mbtouc-unsafe.c: Renamed from lib/unistr/u32-mbtouc.c.
8703         * lib/unistr.h: Update.
8704         * lib/linebreak.c: Update.
8705         * modules/unistr/u32-mbtouc: Renamed from
8706         modules/unistr/u32-mbtouc-safe.
8707         * lib/unistr/u32-mbtouc.c: Renamed from lib/unistr/u32-mbtouc-safe.c.
8708         * lib/unistr.h: Update.
8709         * lib/unistr/u32-to-u8.c: Update.
8710         * lib/unistr/u32-to-u16.c: Update.
8711
8712 2007-01-27  Bruno Haible  <bruno@clisp.org>
8713
8714         Rename utf16-ucs4 -> utf16-ucs4-unsafe, utf16-ucs4-safe -> utf16-ucs4,
8715         u16_mbtouc -> u16_mbtouc_unsafe, u16_mbtouc_safe -> u16_mbtouc.
8716         * modules/utf16-ucs4-unsafe: Renamed from modules/utf16-ucs4.
8717         * lib/utf16-ucs4-unsafe.h: Renamed from lib/utf16-ucs4.h.
8718         * lib/unistr/utf16-ucs4-unsafe.c: Renamed from lib/unistr/utf16-ucs4.c.
8719         * modules/unistr/u16-mbtouc-unsafe: Renamed from
8720         modules/unistr/u16-mbtouc.
8721         * lib/unistr/u16-mbtouc-unsafe.c: Renamed from lib/unistr/u16-mbtouc.c.
8722         * lib/unistr.h: Update.
8723         * lib/linebreak.c: Update.
8724         * modules/linebreak: Update.
8725         * modules/utf16-ucs4: Renamed from modules/utf16-ucs4-safe.
8726         * lib/utf16-ucs4.h: Renamed from lib/utf16-ucs4-safe.h.
8727         * lib/unistr/utf16-ucs4.c: Renamed from lib/unistr/utf16-ucs4-safe.c.
8728         * modules/unistr/u16-mbtouc: Renamed from
8729         modules/unistr/u16-mbtouc-safe.
8730         * lib/unistr/u16-mbtouc.c: Renamed from lib/unistr/u16-mbtouc-safe.c.
8731         * lib/unistr.h: Update.
8732         * lib/unistr/u16-to-u8.c: Update.
8733         * modules/unistr/u16-to-u8: Update.
8734         * lib/unistr/u16-to-u32.c: Update.
8735         * modules/unistr/u16-to-u32: Update.
8736
8737 2007-01-27  Bruno Haible  <bruno@clisp.org>
8738
8739         Rename utf8-ucs4 -> utf8-ucs4-unsafe, utf8-ucs4-safe -> utf8-ucs4,
8740         u8_mbtouc -> u8_mbtouc_unsafe, u8_mbtouc_safe -> u8_mbtouc.
8741         * modules/utf8-ucs4-unsafe: Renamed from modules/utf8-ucs4.
8742         * lib/utf8-ucs4-unsafe.h: Renamed from lib/utf8-ucs4.h.
8743         * lib/unistr/utf8-ucs4-unsafe.c: Renamed from lib/unistr/utf8-ucs4.c.
8744         * modules/unistr/u8-mbtouc-unsafe: Renamed from
8745         modules/unistr/u8-mbtouc.
8746         * lib/unistr/u8-mbtouc-unsafe.c: Renamed from lib/unistr/u8-mbtouc.c.
8747         * lib/unistr.h: Update.
8748         * lib/striconveh.c: Update.
8749         * modules/striconveh: Update.
8750         * lib/linebreak.c: Update.
8751         * modules/linebreak: Update.
8752         * modules/utf8-ucs4: Renamed from modules/utf8-ucs4-safe.
8753         * lib/utf8-ucs4.h: Renamed from lib/utf8-ucs4-safe.h.
8754         * lib/unistr/utf8-ucs4.c: Renamed from lib/unistr/utf8-ucs4-safe.c.
8755         * modules/unistr/u8-mbtouc: Renamed from modules/unistr/u8-mbtouc-safe.
8756         * lib/unistr/u8-mbtouc.c: Renamed from lib/unistr/u8-mbtouc-safe.c.
8757         * lib/unistr.h: Update.
8758         * lib/striconveh.c: Update.
8759         * modules/striconveh: Update.
8760         * lib/unistr/u8-to-u16.c: Update.
8761         * modules/unistr/u8-to-u16: Update.
8762         * lib/unistr/u8-to-u32.c: Update.
8763         * modules/unistr/u8-to-u32: Update.
8764
8765 2007-01-27  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
8766
8767         Sync from Libtool.
8768         * lib/argz.c: Do not include strings.h nor memory.h, include
8769         string.h unconditionally.  Patch by Simon Josefsson.
8770
8771 2007-01-27  Bruno Haible  <bruno@clisp.org>
8772
8773         * m4/string_h.m4 (gl_HEADER_STRING_H_DEFAULTS): New macro, extracted
8774         from gl_HEADER_STRING_H_BODY.
8775         (gl_HEADER_STRING_H_BODY): Require it.
8776         * m4/memmem.m4 (gl_FUNC_MEMMEM): Require gl_HEADER_STRING_H_DEFAULTS.
8777         * m4/mempcpy.m4 (gl_FUNC_MEMPCPY): Likewise.
8778         * m4/memrchr.m4 (gl_FUNC_MEMRCHR): Likewise.
8779         * m4/stpcpy.m4 (gl_FUNC_STPCPY): Likewise.
8780         * m4/stpncpy.m4 (gl_FUNC_STPNCPY): Likewise.
8781         * m4/strcase.m4 (gl_FUNC_STRCASECMP, gl_FUNC_STRNCASECMP): Likewise.
8782         * m4/strcasestr.m4 (gl_FUNC_STRCASESTR): Likewise.
8783         * m4/strchrnul.m4 (gl_FUNC_STRCHRNUL): Likewise.
8784         * m4/strdup.m4 (gl_FUNC_STRDUP): Likewise.
8785         * m4/strndup.m4 (gl_FUNC_STRNDUP): Likewise.
8786         * m4/strnlen.m4 (gl_FUNC_STRNLEN): Likewise.
8787         * m4/strpbrk.m4 (gl_FUNC_STRPBRK): Likewise.
8788         * m4/strsep.m4 (gl_FUNC_STRSEP): Likewise.
8789         * m4/strstr.m4 (gl_FUNC_STRSTR): Likewise.
8790         * m4/strtok_r.m4 (gl_FUNC_STRTOK_R): Likewise.
8791
8792 2007-01-27  Bruno Haible  <bruno@clisp.org>
8793
8794         * gnulib-tool (func_emit_lib_Makefile_am): If $for_test is true, turn
8795         check_PROGRAMS into noinst_PROGRAMS.
8796         (func_emit_tests_Makefile_am): Likewise. Also don't initialize
8797         check_PROGRAMS in this case.
8798         (func_import): Set for_test to false.
8799         (func_create_testdir): Set for_test to true.
8800
8801 2007-01-27  Yoann Vandoorselaere <yoann.v@prelude-ids.com>
8802             Bruno Haible  <bruno@clisp.org>
8803
8804         * modules/strcasestr (Files): Remove lib/strcasestr.h.
8805         (Depends-on): Add string.
8806         (Includes): Use <string.h> instead of strcasestr.h.
8807         * modules/string (Makefile.am): Also substitute the value of
8808         REPLACE_STRCASESTR.
8809         * m4/strcasestr.m4 (gl_FUNC_STRCASESTR): Don't define strcasestr here;
8810         assume strcasestr is declared in <string.h> not <strings.h>. Also
8811         set REPLACE_STRCASESTR.
8812         * m4/string_h.m4 (gl_HEADER_STRING_H_BODY): Provide a default value for
8813         REPLACE_STRCASESTR.
8814         * lib/strcasestr.h: Remove file.
8815         * lib/strcasestr.c: Include <string.h> instead of strcasestr.h.
8816         * lib/string_.h (strcasestr): New declaration.
8817
8818 2007-01-27  Bruno Haible  <bruno@clisp.org>
8819
8820         * lib/string_.h: Use 'extern'.
8821
8822 2007-01-27  Jim Meyering  <jim@meyering.net>
8823
8824         * lib/regex_internal.c (re_string_reconstruct): Remove declaration
8825         of set-but-not-used local, "q".
8826
8827         * lib/mempcpy.c: Include <config.h> before <string.h>.
8828         This fixes a compilation error on HP-UX, due to the system's
8829         "restrict"-using mempcpy prototype.
8830
8831 2007-01-26  Bruno Haible  <bruno@clisp.org>
8832
8833         Small optimization.
8834         * lib/javacomp.c: Include c-strstr.h.
8835          (is_envjavac_gcj): Use c_strstr instead of strstr.
8836         * modules/javacomp (Depends-on): Add c-strstr, remove strstr.
8837
8838 2007-01-26  Bruno Haible  <bruno@clisp.org>
8839
8840         * MODULES.html.sh (Unicode string functions): Add the new modules.
8841
8842         * modules/uniconv/u32-strconv-to-locale: New file.
8843         * lib/uniconv/u32-strconv-to-locale.c: New file.
8844
8845         * modules/uniconv/u16-strconv-to-locale: New file.
8846         * lib/uniconv/u16-strconv-to-locale.c: New file.
8847
8848         * modules/uniconv/u8-strconv-to-locale: New file.
8849         * lib/uniconv/u8-strconv-to-locale.c: New file.
8850
8851         * modules/uniconv/u32-strconv-from-locale: New file.
8852         * lib/uniconv/u32-strconv-from-locale.c: New file.
8853
8854         * modules/uniconv/u16-strconv-from-locale: New file.
8855         * lib/uniconv/u16-strconv-from-locale.c: New file.
8856
8857         * modules/uniconv/u8-strconv-from-locale: New file.
8858         * lib/uniconv/u8-strconv-from-locale.c: New file.
8859
8860         * modules/uniconv/u32-strconv-to-enc: New file.
8861         * lib/uniconv/u32-strconv-to-enc.c: New file.
8862         * modules/uniconv/u32-strconv-to-enc-tests: New file.
8863         * tests/uniconv/test-u32-strconv-to-enc.c: New file.
8864
8865         * modules/uniconv/u16-strconv-to-enc: New file.
8866         * lib/uniconv/u16-strconv-to-enc.c: New file.
8867         * lib/uniconv/u-strconv-to-enc.h: New file.
8868         * modules/uniconv/u16-strconv-to-enc-tests: New file.
8869         * tests/uniconv/test-u16-strconv-to-enc.c: New file.
8870
8871         * modules/uniconv/u8-strconv-to-enc: New file.
8872         * lib/uniconv/u8-strconv-to-enc.c: New file.
8873         * modules/uniconv/u8-strconv-to-enc-tests: New file.
8874         * tests/uniconv/test-u8-strconv-to-enc.c: New file.
8875
8876         * modules/uniconv/u32-strconv-from-enc: New file.
8877         * lib/uniconv/u32-strconv-from-enc.c: New file.
8878         * modules/uniconv/u32-strconv-from-enc-tests: New file.
8879         * tests/uniconv/test-u32-strconv-from-enc.c: New file.
8880
8881         * modules/uniconv/u16-strconv-from-enc: New file.
8882         * lib/uniconv/u16-strconv-from-enc.c: New file.
8883         * modules/uniconv/u16-strconv-from-enc-tests: New file.
8884         * tests/uniconv/test-u16-strconv-from-enc.c: New file.
8885
8886         * modules/uniconv/u8-strconv-from-enc: New file.
8887         * lib/uniconv/u8-strconv-from-enc.c: New file.
8888         * lib/uniconv/u-strconv-from-enc.h: New file.
8889         * modules/uniconv/u8-strconv-from-enc-tests: New file.
8890         * tests/uniconv/test-u8-strconv-from-enc.c: New file.
8891
8892         * modules/uniconv/u32-conv-from-enc: New file.
8893         * lib/uniconv/u32-conv-from-enc.c: New file.
8894         * modules/uniconv/u32-conv-from-enc-tests: New file.
8895         * tests/uniconv/test-u32-conv-from-enc.c: New file.
8896
8897         * modules/uniconv/u16-conv-from-enc: New file.
8898         * lib/uniconv/u16-conv-from-enc.c: New file.
8899         * lib/uniconv/u-conv-from-enc.h: New file.
8900         * modules/uniconv/u16-conv-from-enc-tests: New file.
8901         * tests/uniconv/test-u16-conv-from-enc.c: New file.
8902
8903         * modules/uniconv/u8-conv-from-enc: New file.
8904         * lib/uniconv/u8-conv-from-enc.c: New file.
8905         * modules/uniconv/u8-conv-from-enc-tests: New file.
8906         * tests/uniconv/test-u8-conv-from-enc.c: New file.
8907
8908         * modules/uniconv/base: New file.
8909         * lib/uniconv.h: New file.
8910
8911 2007-01-26  Paul Eggert  <eggert@cs.ucla.edu>
8912
8913         * doc/gnulib-tool.texi (Initial import): Update to match current
8914         behavior with strdup module.
8915         * lib/.cppi-disable: Remove strcase.h, strdup.h, strndup.h, strnlen.h.
8916         * lib/memmem.h: Remove; all uses removed.  This is now done
8917         by <string.h>.
8918         * lib/mempcpy.h: Likewise.
8919         * lib/memrchr.h: Likewise.
8920         * lib/stpcpy.h: Likewise.
8921         * lib/stpncpy.h: Likewise.
8922         * lib/strcase.h: Likewise.
8923         * lib/strchrnul.h: Likewise.
8924         * lib/strdup.h: Likewise.
8925         * lib/strndup.h: Likewise.
8926         * lib/strnlen.h: Likewise.
8927         * lib/strpbrk.h: Likewise.
8928         * lib/strsep.h: Likewise.
8929         * lib/strstr.h: Likewise.
8930         * lib/strtok_r.h: Likewise.
8931         * lib/string_.h: New file.
8932         * lib/argp-namefrob.h: Don't include no-longer-existent include files.
8933         Rely on <string.h> instead.
8934         * lib/canon-host.c: Likewise.
8935         * lib/chdir-long.c: Likewise.
8936         * lib/concatpath.c: Likewise.
8937         * lib/exclude.c: Likewise.
8938         * lib/fchdir.c: Likewise.
8939         * lib/getaddrinfo.c: Likewise.
8940         * lib/getcwd.c: Likewise.
8941         * lib/getsubopt.c: Likewise.
8942         * lib/glob.c: Likewise.
8943         * lib/hard-locale.c: Likewise.
8944         * lib/iconvme.c: Likewise.
8945         * lib/javacomp.c: Likewise.
8946         * lib/mempcpy.c: Likewise.
8947         * lib/memrchr.c: Likewise.
8948         * lib/regex_internal.h: Likewise.
8949         * lib/stpncpy.c: Likewise.
8950         * lib/strcasecmp.c: Likewise.
8951         * lib/strchrnul.c: Likewise.
8952         * lib/strdup.c: Likewise.
8953         * lib/striconv.c: Likewise.
8954         * lib/striconveh.c: Likewise.
8955         * lib/striconveha.c: Likewise.
8956         * lib/strncasecmp.c: Likewise.
8957         * lib/strndup.c: Likewise.
8958         * lib/strnlen.c: Likewise.
8959         * lib/strsep.c: Likewise.
8960         * lib/strstr.c: Likewise.
8961         * lib/strtok_r.c: Likewise.
8962         * lib/userspec.c: Likewise.
8963         * lib/w32spawn.h: Likewise.
8964         * lib/xstrndup.c: Likewise.
8965         * lib/mountlist.c (strstr): Remove decl.
8966         * m4/string_h.m4: New file.
8967         * m4/memmem.m4 (gl_FUNC_MEMMEM): Set HAVE_DECL_MEMMEM if necessary.
8968         * m4/mempcpy.m4 (gl_FUNC_MEMPCPY): Set HAVE_MEMPCPY if necessary.
8969         * m4/memrchr.m4 (gl_FUNC_MEMRCHR): Set HAVE_MEMRCHR
8970         * m4/stpcpy.m4 (gl_FUNC_STPCPY): Set HAVE_STPCPY if necessary.
8971         * m4/stpncpy.m4 (gl_PREREQ_STPNCPY): Set HAVE_STPNCPY if necessary.
8972         * m4/strcase.m4 (gl_FUNC_STRCASECMP):
8973         Set REPLACE_STRCASECMP if necessary.
8974         (gl_FUNC_STRNCASECMP): Set HAVE_DECL_STRNCASECMP if necessary.
8975         * m4/strchrnul.m4 (gl_FUNC_STRCHRNUL): Set HAVE_STRCHRNUL if necessary.
8976         * m4/strdup.m4 (gl_FUNC_STRDUP): Set HAVE_DECL_STRDUP if necessary.
8977         * m4/strndup.m4 (gl_FUNC_STRNDUP): Set HAVE_DECL_STRNLEN and
8978         HAVE_DECL_STRDUP if necessary.
8979         (gl_PREREQ_STRNLEN): Don't bother to check for strnlen decl,
8980         since gl_FUNC_STRNDUP does that now.
8981         * m4/strnlen.m4 (gl_FUNC_STRNLEN): Set HAVE_DECL_STRNLEN if necessary.
8982         Check for decl here...
8983         (gl_PREREQ_STRNLEN): ... not here.
8984         * m4/strpbrk.m4 (gl_FUNC_STRPBRK): Set HAVE_STRPBRK if necessary.
8985         * m4/strsep.m4 (gl_FUNC_STRSEP): Set HAVE_STRSEP if necessary.
8986         * m4/strstr.m4 (gl_FUNC_STRSTR): Set REPLACE_STRSTR if necessary.
8987         * m4/strtok_r.m4 (gl_FUNC_STRTOK_R): Set HAVE_DECL_STRTOK_R if
8988         necessary.
8989         * modules/string: New file.
8990         * modules/memmem (Files): Remove special-purpose include file.
8991         (Depends-on): Add string.
8992         (Include): Include <string.h>, not the removed file.
8993         * modules/mempcpy: Likewise.
8994         * modules/memrchr: Likewise.
8995         * modules/stpcpy: Likewise.
8996         * modules/stpncpy: Likewise.
8997         * modules/strcase: Likewise.
8998         * modules/strchrnul: Likewise.
8999         * modules/strdup: Likewise.
9000         * modules/strndup: Likewise.
9001         * modules/strnlen: Likewise.
9002         * modules/strpbrk: Likewise.
9003         * modules/strsep: Likewise.
9004         * modules/strstr: Likewise.
9005         * modules/strtok_r: Likewise.
9006         * tests/test-dirname.c: Don't include "strdup.h", since
9007         <string.h> now suffices.
9008         * tests/test-memmem.c: Don't include "memmem.h", since
9009         <string.h> now suffices.
9010
9011 2007-01-25  Bruno Haible  <bruno@clisp.org>
9012
9013         * lib/striconveh.c (mem_cd_iconveh_internal): Ignore *lengthp if
9014         *resultp is 0.
9015
9016         * lib/unistr/u16-to-u8.c (u16_to_u8): Fix u8_uctomb invocation.
9017         * lib/unistr/u32-to-u8.c (u32_to_u8): Likewise.
9018         * lib/unistr/u8-to-u16.c (u8_to_u16): Fix u16_uctomb invocation.
9019         * lib/unistr/u32-to-u16.c (u32_to_u16): Likewise.
9020
9021         * modules/unistr/u8-to-u16 (Depends-on): Add missing modules.
9022         * modules/unistr/u8-to-u32 (Depends-on): Add missing modules.
9023         * modules/unistr/u16-to-u8 (Depends-on): Add missing modules.
9024         * modules/unistr/u16-to-u32 (Depends-on): Add missing modules.
9025         * modules/unistr/u32-to-u8 (Depends-on): Add missing modules.
9026         * modules/unistr/u32-to-u16 (Depends-on): Add missing modules.
9027
9028 2007-01-24  Bruno Haible  <bruno@clisp.org>
9029
9030         Don't AC_REQUIRE autoconf macros that invoke AC_LIBOBJ. See
9031         <http://lists.gnu.org/archive/html/bug-gnulib/2006-10/msg00279.html>.
9032         * m4/argp.m4 (gl_ARGP): Invoke, don't require, gl_GETOPT_SUBSTITUTE.
9033         * m4/fts.m4 (gl_FUNC_FTS, gl_FUNC_FTS_LGPL): Invoke, don't require,
9034         gl_FUNC_FTS_CORE.
9035         (gl_FUNC_FTS_CORE): Invoke, don't require, gl_FUNC_OPENAT.
9036         * m4/lstat.m4 (gl_FUNC_LSTAT): Invoke, don't require,
9037         AC_FUNC_LSTAT_FOLLOWS_SLASHED_SYMLINK.
9038         * m4/memcmp.m4 (gl_FUNC_MEMCMP): Invoke, don't require, AC_FUNC_MEMCMP.
9039         * m4/mktime.m4 (gl_FUNC_MKTIME): Invoke, don't require, AC_FUNC_MKTIME.
9040         * m4/openat.m4 (gl_FUNC_OPENAT): Invoke, don't require,
9041         gl_FUNC_FCHOWNAT.
9042         * m4/strftime.m4 (gl_FUNC_GNU_STRFTIME): Invoke, don't require,
9043         gl_FUNC_STRFTIME.
9044         * m4/strtod.m4 (gl_FUNC_STRTOD): Invoke, don't require, AC_FUNC_STRTOD.
9045         Reported by Ralf Wildenhues.
9046
9047 2007-01-24  Bruno Haible  <bruno@clisp.org>
9048
9049         Drop AC_REQUIRE calls that are redundant with the module dependencies.
9050         * m4/canon-host.m4 (gl_PREREQ_CANON_HOST): Don't require
9051         gl_GETADDRINFO.
9052         * m4/chdir-long.m4 (gl_PREREQ_CHDIR_LONG): Don't require AM_STDBOOL_H,
9053         gl_FUNC_MEMPCPY, gl_FUNC_OPENAT, gl_FUNC_MEMRCHR.
9054         * m4/openat.m4 (gl_PREREQ_OPENAT): Don't require gl_SAVE_CWD.
9055
9056 2007-01-24  Paul Eggert  <eggert@cs.ucla.edu>
9057
9058         * m4/fnmatch.m4 (_AC_FUNC_FNMATCH_IF): Add test for glibc bug 361.
9059         Don't use 'exit'; just return from 'main'.
9060         (_AC_LIBOBJ_FNMATCH): Check for headers and functions just once.
9061
9062         * lib/fnmatch_.h: Readjust white space and comments to match
9063         glibc, to avoid spurious diffs.
9064
9065 2007-01-23  Paul Eggert  <eggert@cs.ucla.edu>
9066
9067         * lib/fnmatch_loop.c (internal_fnmatch) [!_LIBC]: #if-out the
9068         2004-12-01 change by Jakub Jelinek, since this code won't compile
9069         if !LIBC.  Problem reported by Bob Proulx.
9070
9071 2007-01-23  Bruno Haible  <bruno@clisp.org>
9072
9073         * lib/striconveh.c: Include c-strcaseeq.h.
9074         (mem_iconveh, str_iconveh): Use STRCASEEQ instead of c_strcasecmp.
9075         * modules/striconveh (Depends-on): Add c-strcaseeq.
9076
9077 2007-01-23  Bruno Haible  <bruno@clisp.org>
9078
9079         * MODULES.html.sh (String handling): Add streq, c-strcaseeq.
9080
9081         * modules/c-strcaseeq: New file.
9082         * lib/c-strcaseeq.h: New file.
9083
9084         * modules/streq: New file.
9085         * lib/streq.h: New file.
9086
9087 2007-01-23  Bruno Haible  <bruno@clisp.org>
9088
9089         * modules/striconveha-tests: New file.
9090         * tests/test-striconveha.c: New file.
9091
9092         * lib/striconveha.h: Include <stdbool.h>.
9093         (mem_iconveha, str_iconveha): Add 'transliterate' argument.
9094         * lib/striconveha.c: Include allocsa.h, strdup.h, c-strcase.h.
9095         (mem_iconveha_notranslit): Renamed from mem_iconveha.
9096         (mem_iconveha): New function.
9097         (str_iconveha_notranslit): Renamed from str_iconveha.
9098         (str_iconveha): New function.
9099         * modules/striconveha (Depends-on): Add stdbool, allocsa, strdup,
9100         c-strcase.
9101
9102 2007-01-23  Bruno Haible  <bruno@clisp.org>
9103
9104         * lib/striconveha.c (mem_iconveha): Fix endless recursion. Try all
9105         encodings without forgiving before trying any encoding with handler.
9106         (str_iconveha): Try all encodings without forgiving before trying any
9107         encoding with handler.
9108
9109 2007-01-23  Paul Eggert  <eggert@cs.ucla.edu>
9110
9111         Import the following changes from libc.
9112
9113         2005-10-14  Ulrich Drepper  <drepper@redhat.com>
9114
9115         * lib/fnmatch_loop.c: Adjust for changed secondary hash function.
9116
9117         2004-12-01  Jakub Jelinek  <jakub@redhat.com>
9118
9119         * lib/fnmatch_loop.c (internal_fnmatch): Clear is_seqval after
9120         normal_bracket label.
9121
9122         2004-09-01  Jakub Jelinek  <jakub@redhat.com>
9123
9124         [BZ #361]
9125         * lib/fnmatch_loop.c (FCT): For backslash between brackets, branch
9126         to normal_bracket after fetching the next character.
9127
9128 2007-01-22  Bruno Haible  <bruno@clisp.org>
9129
9130         * lib/striconveh.h (mem_cd_iconveh, mem_iconveh): Add 'offsets'
9131         argument.
9132         * lib/striconveh.c (iconv_carefully_1): New function.
9133         (mem_cd_iconveh_internal, mem_cd_iconveh, mem_iconveh): Add 'offsets'
9134         argument.
9135         (str_cd_iconveh): Update.
9136         * lib/striconveha.h (mem_iconveha): Add 'offsets' argument.
9137         * lib/striconveha.c (mem_iconveha): Add 'offsets' argument.
9138         * tests/test-striconveh.c (MAGIC): New macro.
9139         (new_offsets): New function.
9140         (main): Test call with and without offsets.
9141
9142 2007-01-22  Bruno Haible  <bruno@clisp.org>
9143
9144         * modules/sys_stat (Makefile.am): Use @MKDIR_P@ instead of $(MKDIR_P).
9145         * modules/sys_select (Makefile.am): Likewise.
9146         * modules/sys_socket (Makefile.am): Likewise.
9147         * modules/sys_time (Makefile.am): Likewise.
9148
9149 2007-01-22  Paul Eggert  <eggert@cs.ucla.edu>
9150
9151         * modules/gettimeofday (License): Change from GPL to LGPL, since
9152         gettimeofday is a library function.
9153
9154 2007-01-22  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
9155
9156         * lib/poll.c (rpl_poll): Don't check against FD_SETSIZE under Win32.
9157
9158 2007-01-21  Bruno Haible  <bruno@clisp.org>
9159
9160         * m4/gnulib-common.m4 (AC_PROG_MKDIR_P): New macro.
9161
9162 2007-01-21  Bruno Haible  <bruno@clisp.org>
9163
9164         * modules/striconveha: New file.
9165         * lib/striconveha.h: New file.
9166         * lib/striconveha.c: New file.
9167         * MODULES.html.sh (Internationalization functions): Add striconveha.
9168         * lib/striconv.c (str_iconv): Optimize the case of an empty input
9169         string.
9170         * lib/striconveh.c (mem_iconveh, str_iconveh): Likewise.
9171
9172 2007-01-21  Bruno Haible  <bruno@clisp.org>
9173
9174         * lib/striconv.c (str_iconv): Guarantee errno is set when strdup fails.
9175         * lib/striconveh.c (str_iconveh): Likewise.
9176
9177 2007-01-21  Bruno Haible  <bruno@clisp.org>
9178
9179         * lib/striconveh.h (mem_iconveh): New declaration.
9180         * lib/striconveh.c (mem_iconveh): New function.
9181         * tests/test-striconveh.c (main): Add tests for mem_iconveh.
9182
9183 2007-01-21  Bruno Haible  <bruno@clisp.org>
9184
9185         * lib/xstriconv.h (xmem_cd_iconv): Change specification.
9186
9187         * lib/striconveh.h (mem_cd_iconveh): Change specification.
9188         * lib/striconveh.c (mem_cd_iconveh): Don't free the user-supplied
9189         original result buffer.
9190         (str_cd_iconveh): Update.
9191         * tests/test-striconveh.c (main): Update.
9192
9193         * lib/striconv.h (mem_cd_iconv): Change specification.
9194         * lib/striconv.c (mem_cd_iconv): Don't free the user-supplied original
9195         result buffer.
9196         (str_cd_iconv): Update.
9197         * tests/test-striconv.c (main): Update.
9198
9199 2007-01-21  Bruno Haible  <bruno@clisp.org>
9200
9201         * gnulib-tool: Fix test whether sed is GNU sed supporting --posix.
9202
9203 2007-01-20  Jim Meyering  <jim@meyering.net>
9204
9205         * lib/userspec.c (parse_with_separator): If a user or group string
9206         starts with "+", skip the corresponding name-to-ID look-up, since
9207         such a look-up must fail: user and group names may not include "+".
9208
9209 2007-01-19  Paul Eggert  <eggert@cs.ucla.edu>
9210
9211         * lib/poll.c: Include sys/time.h and time.h unconditionally,
9212         since we now assume the sys_time module.
9213         * m4/poll.m4 (gl_PREREQ_POLL): Don't require AC_HEADER_TIME or
9214         check for sys/time.h; no longer needed.
9215         * modules/poll (Depends-on): Depend on sys_time.
9216
9217 2007-01-18  Bruno Haible  <bruno@clisp.org>
9218
9219         * m4/mktime.m4 (AC_FUNC_MKTIME): Remove test for <sys/time.h>.
9220         * m4/strftime.m4 (gl_FUNC_STRFTIME): Likewise.
9221
9222         * m4/tempname.m4 (gl_PREREQ_TEMPNAME): Remove tests for sys/time.h and
9223         gettimeofday.
9224
9225         * tests/test-gettimeofday.c: Include <time.h>.
9226         (dummy): Remove variable.
9227
9228         * m4/sys_time_h.m4 (gl_HEADER_SYS_TIME_H_BODY): Renamed from
9229         gl_HEADER_SYS_TIME_H.
9230         (gl_HEADER_SYS_TIME_H): New macro.
9231
9232         * lib/sys_time_.h: Test GETTIMEOFDAY_REPLACEMENT instead of
9233         HAVE_GETTIMEOFDAY_POSIX_SIGNATURE and GETTIMEOFDAY_CLOBBERS_LOCALTIME.
9234         * m4/gettimeofday.m4 (gl_FUNC_GETTIMEOFDAY,
9235         gl_FUNC_GETTIMEOFDAY_CLOBBER): Set GETTIMEOFDAY_REPLACEMENT instead of
9236         HAVE_GETTIMEOFDAY_POSIX_SIGNATURE and GETTIMEOFDAY_CLOBBERS_LOCALTIME.
9237         * m4/sys_time_h.m4 (gl_HEADER_SYS_TIME_H): Initialize
9238         GETTIMEOFDAY_REPLACEMENT instead of HAVE_GETTIMEOFDAY_POSIX_SIGNATURE
9239         and GETTIMEOFDAY_CLOBBERS_LOCALTIME.
9240         * modules/sys_time (sys/time.h): Substitute GETTIMEOFDAY_REPLACEMENT
9241         instead of HAVE_GETTIMEOFDAY_POSIX_SIGNATURE and
9242         GETTIMEOFDAY_CLOBBERS_LOCALTIME.
9243
9244         * m4/gettimeofday.m4 (gl_GETTIMEOFDAY_REPLACE_LOCALTIME): Undo the
9245         last change; it caused a compilation error when cross-compiling to
9246         Cygwin.
9247
9248 2007-01-18  Jim Meyering  <jim@meyering.net>
9249
9250         Use "$(MKDIR_P) sys", not race-prone "test -d sys || mkdir sys".
9251         * modules/sys_stat (Makefile.am): Use "$(MKDIR_P) sys", rather
9252         than the race-prone "test -d sys || mkdir sys".
9253         (configure.ac): Use AC_PROG_MKDIR_P.
9254         * modules/sys_select: Likewise.
9255         * modules/sys_socket: Likewise.
9256         * modules/sys_time: Likewise.
9257
9258 2007-01-18  Eric Blake  <ebb9@byu.net>
9259
9260         * m4/gettimeofday.m4 (gl_GETTIMEOFDAY_REPLACE_LOCALTIME): Also
9261         replace gettimeofday.
9262         * lib/gettimeofday.c (rpl_gettimeofday): Declare with replacement
9263         name, to avoid infinite recursion.
9264
9265 2007-01-17  Paul Eggert  <eggert@cs.ucla.edu>
9266
9267         * MODULES.html.sh (Support for systems lacking POSIX:2001): New
9268         module sys_time.
9269         * lib/gethrxtime.c: Include <sys/time.h>, since we can no longer
9270         assume timespec.h defines struct timeval.
9271         * lib/settime.c: Likewise.
9272         * lib/utimens.c: Likewise.
9273         * lib/gettime.c (gettime): Remove test against HAVE_GETTIMEOFDAY,
9274         since we now assume the gettimeofday module.
9275         * lib/tempname.c (__gen_tempname): Likewise.
9276         * lib/gettimeofday.h: Remove.
9277         * lib/gettimeofday.c: Include <sys/time.h> instead of "gettimeofday.h".
9278         Don't include <sys/types.h> and <stdlib.h>; shouldn't be needed.
9279         Include <time.h>, for 'time()'.
9280         (localtime_buffer_addr): Also use this workaround if
9281         TZSET_CLOBBERS_LOCALTIME.  Set to a dummy static variable by default,
9282         to simplify the uses.  All uses changed.
9283         (localtime, gmtime, tzset, gettimeofday): Reformat slightly so
9284         that #undef is inside {}, and 'const' follows type name consistently.
9285         (tzset): Define replacement only if TZSET_CLOBBERS_LOCALTIME.
9286         (gettimeofday): Do not use the maximum possible value for
9287         tv->tv_usec, since that might break usages other than ls.c.
9288         Instead, we'll leave ls.c alone.  This undoes today's patch
9289         by Bruno.  Add a compile-time warning for 1s-clock resolution;
9290         we've never observed the problem but might as well keep the
9291         canary.
9292         * lib/nanosleep.c: Include timespec.h first, for interface check.
9293         * lib/nanosleep.c: Include <sys/time.h> unconditionally, since we
9294         now assume the sys_time module.
9295         * lib/tempname.c: Likewise.
9296         * lib/timespec.h: Likewise.
9297         * lib/nanosleep.c: Don't worry about TIME_WITH_SYS_TIME; no longer
9298         needed.
9299         * lib/strftime.c: Likewise.
9300         * lib/timespec.h: Likewise.
9301         * lib/posixtm.c: Include posixtm.h first, for interface check.
9302         Don't worry about TM_IN_SYS_TIME; that's wayyy obsolete.
9303         * lib/posixtm.h: Include stdbool.h and time.h, for proper interface.
9304         * lib/strftime.c: Don't include <sys/types.h>; shouldn't be needed.
9305         * lib/sys_time_.h: New file.
9306         * lib/timespec.h (struct timespec): Use long int, not long.
9307         * m4/gettimeofday.m4 (gl_FUNC_GETTIMEOFDAY):
9308         (gl_FUNC_GETTIMEOFDAY_CLOBBER, gl_PREREQ_GETTIMEOFDAY):
9309         Remove obsolescent call to AC_HEADER_TIME.
9310         * m4/mktime.m4 (AC_FUNC_MKTIME): Likewise.
9311         * m4/nanosleep.m4 (gl_FUNC_NANOSLEEP): Likewise.
9312         * m4/strftime.m4 (gl_FUNC_STRFTIME): Likewise.
9313         * m4/timespec.m4 (gl_TIMESPEC, gl_CHECK_TYPE_STRUCT_TIMESPEC):
9314         Likewise.
9315         * m4/tzset.m4 (gl_FUNC_TZSET_CLOBBER): Likewise.
9316         * m4/utimbuf.m4 (gl_CHECK_TYPE_STRUCT_UTIMBUF): Likewise.
9317         * m4/gettimeofday.m4 (gl_FUNC_GETTIMEOFDAY): Move sys/time.h tests
9318         into the sys_time module.  Check for gettimeofday just once.
9319         Prefix our variables with gl_, not with ac_ or jm_.  Tighten test
9320         for gettimeofday signature to just check the signature.  Merely
9321         compile it, since linking doesn't test signature.  Improve test for
9322         whether gettimeofday.o is actually needed.
9323         (gl_FUNC_GETTIMEOFDAY_CLOBBER): Renamed from
9324         AC_FUNC_GETTIMEOFDAY_CLOBBER.  All uses changed.  Use
9325         AC_RUN_IFELSE rather than AC_TRY_RUN.  If clobbering, set
9326         and define GETTIMEOFDAY_CLOBBERS_LOCALTIME.
9327         (gl_GETTIMEOFDAY_REPLACE_LOCALTIME): Don't define
9328         GETTIMEOFDAY_CLOBBERS_LOCALTIME; that's gl_FUNC_GETTIMEOFDAY_CLOBBER's
9329         job.  Don't define tzset; that's gl_FUNC_TZSET_CLOBBER's job.
9330         * m4/mktime.m4 (AC_FUNC_MKTIME): Just include <time.h> rather
9331         than worrying about sys/time.h.
9332         * m4/nanosleep.m4 (gl_FUNC_NANOSLEEP):
9333         Don't bother worrying about TIME_WITH_SYS_TIME.
9334         * m4/stat-time.m4 (gl_STAT_TIME): Likewise.
9335         * m4/posixtm.m4 (gl_POSIXTM): Remove obsolescent call to AC_STRUCT_TM.
9336         * m4/sys_time_h.m4: New file.
9337         * m4/tzset.m4 (gl_FUNC_TZSET_CLOBBER): Require gl_HEADER_SYS_TIME_H.
9338         Don't include sys/time.h.  Return from main rather than exiting.
9339         Define TZSET_CLOBBERS_LOCALTIME, for consistency with other names;
9340         all uses changed.
9341         * modules/gethrxtime (Depends-on): Add sys_time.
9342         * modules/gettime (Depends-on): Likewise.
9343         * modules/gettimeofday (Depends-on): Likewise.
9344         * modules/nanosleep (Depends-on): Likewise.
9345         * modules/settime (Depends-on): Likewise.
9346         * modules/tempname (Depends-on): Likewise.
9347         * modules/utimens (Depends-on): Likewise.
9348         * modules/gettimeofday (Files): Remove lib/gettimeofday.h.
9349         (Include:) Change back to <sys/time.h>.
9350         (Maintainer:) Add self.
9351         * modules/sys_time: New file.
9352         * modules/tempname (Depends-on): Add gettimeofday.
9353         * tests/test-gettimeofday.c: Include <sys/time.h>
9354         rather than gettimeofday.h.
9355
9356 2007-01-17  Bruno Haible  <bruno@clisp.org>
9357
9358         * gnulib-tool (func_get_license): Revert last patch. Instead, let
9359         the license default to GPL.
9360         (func_create_testdir): Don't complain if a module is LGPL and its
9361         tests module depends on GPLed modules.
9362
9363 2007-01-17  Bruno Haible  <bruno@clisp.org>
9364
9365         * lib/gettimeofday.c (gettimeofday): Add code for the case
9366         HAVE_GETTIMEOFDAY && !GETTIMEOFDAY_CLOBBERS_LOCALTIME. Use the
9367         maximum possible value for tv->tv_usec, rather than the minimum one.
9368
9369 2005-10-08  Martin Lambers  <marlam@marlam.de>
9370 2005-10-08  Paul Eggert  <eggert@cs.ucla.edu>
9371 2007-01-16  Bruno Haible  <bruno@clisp.org>
9372
9373         * modules/gettimeofday (Files): Add lib/gettimeofday.h.
9374         (configure.ac): Remove AC_FUNC_GETTIMEOFDAY_CLOBBER. Add
9375         gl_FUNC_GETTIMEOFDAY.
9376         (Include): Add gettimeofday.h.
9377         * m4/gettimeofday.m4 (gl_FUNC_GETTIMEOFDAY): New macro.
9378         (AC_FUNC_GETTIMEOFDAY_CLOBBER): Don't invoke gl_PREREQ_GETTIMEOFDAY.
9379         (gl_GETTIMEOFDAY_REPLACE_LOCALTIME): Define
9380         GETTIMEOFDAY_CLOBBERS_LOCALTIME. Invoke gl_PREREQ_GETTIMEOFDAY here.
9381         (gl_PREREQ_GETTIMEOFDAY): Check for <sys/timeb.h> and _ftime.
9382         * lib/gettimeofday.h: New file.
9383         * lib/gettimeofday.c: Include <sys/timeb.h>.
9384         (localtime_buffer_addr, rpl_localtime, rpl_gmtime, rpl_tzset): Define
9385         only if GETTIMEOFDAY_CLOBBERS_LOCALTIME.
9386         (rpl_gettimeofday) [!HAVE_GETTIMEOFDAY]: Use _ftime() when available;
9387         fall back on time().
9388
9389         * tests/test-gettimeofday.c: New file.
9390         * modules/gettimeofday-tests: New file.
9391
9392 2007-01-16  Eric Blake  <ebb9@byu.net>
9393
9394         * modules/fnmatch (Depends-on): Depend on wchar.
9395         * lib/fnmatch.c (WIDE_CHAR_SUPPORT): Assume <wchar.h>.
9396         * m4/fnmatch.m4: Likewise.
9397         * modules/mbchar (Makefile.am): Assume <wchar.h>.
9398         * m4/mbchar.m4: Likewise.
9399         * modules/mbswidth (Depends-on): Depend on wchar.
9400         * lib/mbswidth.c: Assume <wchar.h>.
9401         * m4/mbswidth.m4: Likewise.
9402         * modules/quotearg (Depends-on): Depend on wchar.
9403         * lib/quotearg.c: Assume <wchar.h>.
9404         * m4/quotearg.m4: Likewise.
9405         * modules/regex (Depends-on): Depend on wchar.
9406         * lib/regex_internal.h: Assume <wchar.h>.
9407         * m4/regex.m4: Likewise.
9408         * modules/stdint (Depends-on): Depend on wchar.
9409         * lib/stdint_.h [!defined WCHAR_MIN]: Assume <wchar.h>.
9410         * m4/stdint.m4: Likewise.
9411         * tests/test-stdint.c [HAVE_WINT_T]: Likewise.
9412         * modules/strftime (Depends-on): Depend on wchar.
9413         * lib/strftime.c (DO_MULTIBYTE): Assume <wchar.h>.
9414         * modules/strtol (Depends-on): Depend on wchar.
9415         * lib/strtol.c: Assume <wchar.h>.
9416         * modules/wcwidth (Depends-on): Depend on wchar.
9417         * lib/wcwidth.h: Assume <wchar.h>.
9418         * m4/wcwidth.m4: Likewise.
9419
9420 2007-01-16  Bruno Haible  <bruno@clisp.org>
9421
9422         * modules/csharpexec-script: New, created from...
9423         * modules/csharpexec: ... this.
9424
9425 2007-01-16  Paolo Bonzini  <bonzini@gnu.org>
9426
9427         * modules/javaexec-script: New, created from...
9428         * modules/javaexec: ... this.
9429
9430 2007-01-16  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
9431
9432         * modules/poll (Dependencies): Add sys_select.
9433
9434 2007-01-15  Jim Meyering  <jim@meyering.net>
9435
9436         * m4/readutmp.m4 (gl_READUTMP): Work around AIX 4.3 struct-
9437         redefinition bug when using both <utmp.h> and <utmpx.h> headers.
9438         * lib/readutmp.h: Likewise.  Reported by Daniel Richard G. in
9439         <http://article.gmane.org/gmane.comp.gnu.core-utils.bugs/9415>.
9440
9441 2007-01-15  Bruno Haible  <bruno@clisp.org>
9442
9443         * modules/striconveh: New file.
9444         * lib/striconveh.h: New file.
9445         * lib/striconveh.c: New file.
9446         * MODULES.html.sh (Internationalization functions): Add striconveh.
9447
9448         * modules/striconveh-tests: New file.
9449         * tests/test-striconveh.c: New file.
9450
9451 2007-01-15  Bruno Haible  <bruno@clisp.org>
9452
9453         * lib/striconv.c (str_cd_iconv): Use the first algorithm if iconv is
9454         not from GNU libiconv or GNU libc.
9455
9456 2007-01-15  Bruno Haible  <bruno@clisp.org>
9457
9458         * doc/gnulib-intro.texi (Copyright): Explain the different license
9459         terms for module descriptions, autoconf macros, tests, documentation.
9460
9461 2007-01-14  Bruno Haible  <bruno@clisp.org>
9462
9463         * modules/striconv-tests: New file.
9464         * tests/test-striconv.c: New file.
9465
9466 2007-01-14  Bruno Haible  <bruno@clisp.org>
9467
9468         * modules/iconv-tests: New file.
9469         * tests/test-iconv.c: New file.
9470
9471 2007-01-14  Bruno Haible  <bruno@clisp.org>
9472
9473         * gnulib-tool (func_get_license): For test modules, use the license of
9474         the main module.
9475
9476 2007-01-14  Bruno Haible  <bruno@clisp.org>
9477
9478         * modules/iconv (Include): Clarify that <iconv.h> can only be included
9479         if iconv is found to exist.
9480
9481 2007-01-14  Bruno Haible  <bruno@clisp.org>
9482
9483         * modules/c-ctype-tests: New file.
9484         * tests/test-c-ctype.c: New file.
9485
9486 2007-01-14  Bruno Haible  <bruno@clisp.org>
9487
9488         * modules/binary-io-tests: New file.
9489         * tests/test-binary-io.sh: New file.
9490         * tests/test-binary-io.c: New file.
9491
9492 2007-01-14  Bruno Haible  <bruno@clisp.org>
9493
9494         * modules/array-oset-tests: New file.
9495         * tests/test-array_oset.c: New file.
9496
9497 2007-01-14  Bruno Haible  <bruno@clisp.org>
9498
9499         * modules/array-list-tests: New file.
9500         * tests/test-array_list.c: New file.
9501
9502 2007-01-14  Bruno Haible  <bruno@clisp.org>
9503
9504         * gnulib-tool (func_create_testdir): Don't unnecessarily run configure
9505         and make.
9506         Reported by Simon Josefsson in
9507         <http://lists.gnu.org/archive/html/bug-gnulib/2007-01/msg00139.html>
9508
9509 2007-01-14  Bruno Haible  <bruno@clisp.org>
9510
9511         * modules/allocsa-tests: New file.
9512         * tests/test-allocsa.c: New file.
9513
9514 2007-01-14  Bruno Haible  <bruno@clisp.org>
9515
9516         * modules/fchdir (Depends-on): Add absolute-header.
9517         * modules/unistd (Depends-on): Likewise.
9518
9519 2006-12-30  Bruno Haible  <bruno@clisp.org>
9520
9521         * modules/fchdir: New file.
9522         * modules/unistd (Files): Add lib/unistd_.h.
9523         (Makefile.am): Generate unistd.h from unistd_.h.
9524         * lib/fchdir.c: New file.
9525         * lib/dirent_.h: New file.
9526         * lib/unistd_.h: New file.
9527         * lib/fcntl_.h (open) [FCHDIR_REPLACEMENT]: New replacement.
9528         * m4/fchdir.m4: New file.
9529         * m4/unistd_h.m4 (gl_PREREQ_UNISTD): New macro.
9530         (gl_HEADER_UNISTD): Invoke it.
9531         * lib/dup-safer.c (dup_safer) [FCHDIR_REPLACEMENT]: Use the dup
9532         function.
9533         * lib/backupfile.c (opendir, closedir): Undefine.
9534         * lib/chown.c (open, close): Undefine.
9535         * lib/clean-temp.c (open, close): Undefine.
9536         * lib/copy-file.c (open, close): Undefine.
9537         * lib/execute.c (open, close): Undefine.
9538         * lib/fsusage.c (open, close): Undefine.
9539         * lib/gc-gnulib.c (open, close): Undefine.
9540         * lib/getcwd.c (opendir, closedir): Undefine.
9541         * lib/glob.c (opendir, closedir): Undefine.
9542         * lib/javacomp.c (open, close): Undefine.
9543         * lib/mountlist.c (open, close, opendir, closedir): Undefine.
9544         * lib/openat-proc.c (open, close): Undefine.
9545         * lib/pagealign_alloc.c (open, close): Undefine.
9546         * lib/pipe.c (open, close): Undefine.
9547         * lib/progreloc.c (open, close): Undefine.
9548         * lib/savedir.c (opendir, closedir): Undefine.
9549         * lib/utime.c (open, close): Undefine.
9550         * MODULES.html.sh (Support for systems lacking POSIX:2001): Add fchdir.
9551
9552 2007-01-10  Bruno Haible  <bruno@clisp.org>
9553
9554         * lib/striconv.c (mem_cd_iconv): Align the temporary buffer.
9555
9556 2007-01-12  Eric Blake  <ebb9@byu.net>
9557
9558         Provide a robust <wchar.h>.  Further simplifications are now
9559         possible in other modules, but not included here.
9560         * modules/wchar: New module.
9561         * m4/wchar.m4: New file.
9562         * lib/wchar_.h: Likewise.
9563         * modules/mbchar (Depends-on): Depend on wchar, as the first use
9564         of the new module.
9565         * MODULES.html.sh (Extended multibyte and wide character utilities):
9566         New section.
9567
9568 2007-01-12  Paul Eggert  <eggert@cs.ucla.edu>
9569
9570         * lib/xreadlink.c (SYMLINK_MAX) [!defined SYMLINK_MAX]: Define
9571         to a reasonable default for memory allocation.
9572         (xreadlink): Don't allocate a huge buffer, to work around a buggy
9573         file system that reports garbage st_size values for symlinks.
9574         Problem reported by Liyang Hu.
9575
9576 2007-01-11  Simon Josefsson  <simon@josefsson.org>
9577
9578         * gnulib-tool (func_all_modules): Exclude all .* files (e.g.,
9579         Emacs .#* auto-save files).
9580
9581 2007-01-11  Bruno Haible  <bruno@clisp.org>
9582
9583         * gnulib-tool (func_all_modules): Exclude all files inside the CVS
9584         directory.
9585
9586 2007-01-10  Paul Eggert  <eggert@cs.ucla.edu>
9587
9588         Use @...@ consistently in lib/wctype_.h.
9589         * lib/wctype_.h [HAVE_WINT_T]: Go back to using @...@, but rely
9590         on it being set to 1 or 0.
9591         * m4/wctype.m4 (gl_WCTYPE_H): Set HAVE_WINT_T to 1 or 0, and
9592         go back to AC_SUBSTing it.
9593         * modules/wctype (Makefile.am): Undo previous change.
9594
9595 2007-01-10  Eric Blake  <ebb9@byu.net>
9596
9597         * lib/wctype_.h [HAVE_WINT_T]: Rely on AC_DEFINE.
9598         * m4/wctype.m4 (gl_WCTYPE_H): No need to AC_SUBST(HAVE_WINT_T).
9599         * modules/wctype (Makefile.am): Likewise.
9600         Reported by Chris McGuire.
9601
9602 2007-01-10  Jim Meyering  <jim@meyering.net>
9603
9604         fts.c: a small readability/maintainability improvement
9605         * lib/fts.c (fts_read): Make this code slightly more readable and
9606         maintainable by hoisting the "sp->fts_cur = p" assignments to
9607         immediately follow the statements that set P.  Derived from
9608         the patch by Miloslav Trmac in http://bugzilla.redhat.com/222089.
9609
9610 2007-01-10  Eric Blake  <ebb9@byu.net>
9611
9612         * lib/wctype_.h [HAVE_WINT_T]: Include <stddef.h> before
9613         <wchar.h>, to work around BSDI bug in BSD/OS 4.0.1.
9614         * m4/wcwidth.m4 (gl_FUNC_WCWIDTH): Likewise.
9615         * m4/wint_t.m4 (gt_TYPE_WINT_T): Likewise.
9616         Reported by Chris McGuire.
9617
9618 2007-01-09  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
9619
9620         * gnulib-tool (func_all_modules): Use POSIX conforming escaping
9621         in sed script.
9622
9623 2007-01-09  Bruno Haible  <bruno@clisp.org>
9624
9625         * MODULES.html.sh: Accept options --cvs-urls, --git-urls.
9626         (repo_url_prefix, repo_url_suffix, repo_url_suffix_repl): New
9627         variables.
9628         (func_module): Use them.
9629
9630 2007-01-09  Bruno Haible  <bruno@clisp.org>
9631
9632         * modules/unistr/base: New file.
9633         * lib/unistr.h: New file.
9634
9635         * modules/unistr/u8-to-u16: New file.
9636         * lib/unistr/u8-to-u16.c: New file.
9637
9638         * modules/unistr/u8-to-u32: New file.
9639         * lib/unistr/u8-to-u32.c: New file.
9640
9641         * modules/unistr/u16-to-u8: New file.
9642         * lib/unistr/u16-to-u8.c: New file.
9643
9644         * modules/unistr/u16-to-u32: New file.
9645         * lib/unistr/u16-to-u32.c: New file.
9646
9647         * modules/unistr/u32-to-u8: New file.
9648         * lib/unistr/u32-to-u8.c: New file.
9649
9650         * modules/unistr/u32-to-u16: New file.
9651         * lib/unistr/u32-to-u16.c: New file.
9652
9653         * modules/unistr/u8-check: New file.
9654         * modules/unistr/u16-check: New file.
9655         * modules/unistr/u32-check: New file.
9656         * lib/unistr/u8-check.c: New file.
9657         * lib/unistr/u16-check.c: New file.
9658         * lib/unistr/u32-check.c: New file.
9659
9660         * modules/unistr/u8-chr: New file.
9661         * modules/unistr/u16-chr: New file.
9662         * modules/unistr/u32-chr: New file.
9663         * lib/unistr/u8-chr.c: New file.
9664         * lib/unistr/u16-chr.c: New file.
9665         * lib/unistr/u32-chr.c: New file.
9666
9667         * modules/unistr/u8-cmp: New file.
9668         * modules/unistr/u16-cmp: New file.
9669         * modules/unistr/u32-cmp: New file.
9670         * lib/unistr/u8-cmp.c: New file.
9671         * lib/unistr/u16-cmp.c: New file.
9672         * lib/unistr/u32-cmp.c: New file.
9673
9674         * modules/unistr/u8-cpy: New file.
9675         * modules/unistr/u16-cpy: New file.
9676         * modules/unistr/u32-cpy: New file.
9677         * lib/unistr/u8-cpy.c: New file.
9678         * lib/unistr/u16-cpy.c: New file.
9679         * lib/unistr/u32-cpy.c: New file.
9680         * lib/unistr/u-cpy.h: New file.
9681
9682         * modules/unistr/u8-cpy-alloc: New file.
9683         * modules/unistr/u16-cpy-alloc: New file.
9684         * modules/unistr/u32-cpy-alloc: New file.
9685         * lib/unistr/u8-cpy-alloc.c: New file.
9686         * lib/unistr/u16-cpy-alloc.c: New file.
9687         * lib/unistr/u32-cpy-alloc.c: New file.
9688         * lib/unistr/u-cpy-alloc.h: New file.
9689
9690         * modules/unistr/u8-endswith: New file.
9691         * modules/unistr/u16-endswith: New file.
9692         * modules/unistr/u32-endswith: New file.
9693         * lib/unistr/u8-endswith.c: New file.
9694         * lib/unistr/u16-endswith.c: New file.
9695         * lib/unistr/u32-endswith.c: New file.
9696         * lib/unistr/u-endswith.h: New file.
9697
9698         * modules/unistr/u8-mblen: New file.
9699         * modules/unistr/u16-mblen: New file.
9700         * modules/unistr/u32-mblen: New file.
9701         * lib/unistr/u8-mblen.c: New file.
9702         * lib/unistr/u16-mblen.c: New file.
9703         * lib/unistr/u32-mblen.c: New file.
9704
9705         * modules/unistr/u8-mbtouc: New file.
9706         * modules/unistr/u16-mbtouc: New file.
9707         * modules/unistr/u32-mbtouc: New file.
9708         * lib/unistr/u8-mbtouc.c: New file.
9709         * lib/unistr/u16-mbtouc.c: New file.
9710         * lib/unistr/u32-mbtouc.c: New file.
9711
9712         * modules/unistr/u8-mbtouc-safe: New file.
9713         * modules/unistr/u16-mbtouc-safe: New file.
9714         * modules/unistr/u32-mbtouc-safe: New file.
9715         * lib/unistr/u8-mbtouc-safe.c: New file.
9716         * lib/unistr/u16-mbtouc-safe.c: New file.
9717         * lib/unistr/u32-mbtouc-safe.c: New file.
9718
9719         * modules/unistr/u8-move: New file.
9720         * modules/unistr/u16-move: New file.
9721         * modules/unistr/u32-move: New file.
9722         * lib/unistr/u8-move.c: New file.
9723         * lib/unistr/u16-move.c: New file.
9724         * lib/unistr/u32-move.c: New file.
9725         * lib/unistr/u-move.h: New file.
9726
9727         * modules/unistr/u8-next: New file.
9728         * modules/unistr/u16-next: New file.
9729         * modules/unistr/u32-next: New file.
9730         * lib/unistr/u8-next.c: New file.
9731         * lib/unistr/u16-next.c: New file.
9732         * lib/unistr/u32-next.c: New file.
9733
9734         * modules/unistr/u8-prev: New file.
9735         * modules/unistr/u16-prev: New file.
9736         * modules/unistr/u32-prev: New file.
9737         * lib/unistr/u8-prev.c: New file.
9738         * lib/unistr/u16-prev.c: New file.
9739         * lib/unistr/u32-prev.c: New file.
9740
9741         * modules/unistr/u8-set: New file.
9742         * modules/unistr/u16-set: New file.
9743         * modules/unistr/u32-set: New file.
9744         * lib/unistr/u8-set.c: New file.
9745         * lib/unistr/u16-set.c: New file.
9746         * lib/unistr/u32-set.c: New file.
9747         * lib/unistr/u-set.h: New file.
9748
9749         * modules/unistr/u8-startswith: New file.
9750         * modules/unistr/u16-startswith: New file.
9751         * modules/unistr/u32-startswith: New file.
9752         * lib/unistr/u8-startswith.c: New file.
9753         * lib/unistr/u16-startswith.c: New file.
9754         * lib/unistr/u32-startswith.c: New file.
9755         * lib/unistr/u-startswith.h: New file.
9756
9757         * modules/unistr/u8-stpcpy: New file.
9758         * modules/unistr/u16-stpcpy: New file.
9759         * modules/unistr/u32-stpcpy: New file.
9760         * lib/unistr/u8-stpcpy.c: New file.
9761         * lib/unistr/u16-stpcpy.c: New file.
9762         * lib/unistr/u32-stpcpy.c: New file.
9763         * lib/unistr/u-stpcpy.h: New file.
9764
9765         * modules/unistr/u8-stpncpy: New file.
9766         * modules/unistr/u16-stpncpy: New file.
9767         * modules/unistr/u32-stpncpy: New file.
9768         * lib/unistr/u8-stpncpy.c: New file.
9769         * lib/unistr/u16-stpncpy.c: New file.
9770         * lib/unistr/u32-stpncpy.c: New file.
9771         * lib/unistr/u-stpncpy.h: New file.
9772
9773         * modules/unistr/u8-strcat: New file.
9774         * modules/unistr/u16-strcat: New file.
9775         * modules/unistr/u32-strcat: New file.
9776         * lib/unistr/u8-strcat.c: New file.
9777         * lib/unistr/u16-strcat.c: New file.
9778         * lib/unistr/u32-strcat.c: New file.
9779         * lib/unistr/u-strcat.h: New file.
9780
9781         * modules/unistr/u8-strchr: New file.
9782         * modules/unistr/u16-strchr: New file.
9783         * modules/unistr/u32-strchr: New file.
9784         * lib/unistr/u8-strchr.c: New file.
9785         * lib/unistr/u16-strchr.c: New file.
9786         * lib/unistr/u32-strchr.c: New file.
9787
9788         * modules/unistr/u8-strcmp: New file.
9789         * modules/unistr/u16-strcmp: New file.
9790         * modules/unistr/u32-strcmp: New file.
9791         * lib/unistr/u8-strcmp.c: New file.
9792         * lib/unistr/u16-strcmp.c: New file.
9793         * lib/unistr/u32-strcmp.c: New file.
9794
9795         * modules/unistr/u8-strcpy: New file.
9796         * modules/unistr/u16-strcpy: New file.
9797         * modules/unistr/u32-strcpy: New file.
9798         * lib/unistr/u8-strcpy.c: New file.
9799         * lib/unistr/u16-strcpy.c: New file.
9800         * lib/unistr/u32-strcpy.c: New file.
9801         * lib/unistr/u-strcpy.h: New file.
9802
9803         * modules/unistr/u8-strcspn: New file.
9804         * modules/unistr/u16-strcspn: New file.
9805         * modules/unistr/u32-strcspn: New file.
9806         * lib/unistr/u8-strcspn.c: New file.
9807         * lib/unistr/u16-strcspn.c: New file.
9808         * lib/unistr/u32-strcspn.c: New file.
9809         * lib/unistr/u-strcspn.h: New file.
9810
9811         * modules/unistr/u8-strdup: New file.
9812         * modules/unistr/u16-strdup: New file.
9813         * modules/unistr/u32-strdup: New file.
9814         * lib/unistr/u8-strdup.c: New file.
9815         * lib/unistr/u16-strdup.c: New file.
9816         * lib/unistr/u32-strdup.c: New file.
9817         * lib/unistr/u-strdup.h: New file.
9818
9819         * modules/unistr/u8-strlen: New file.
9820         * modules/unistr/u16-strlen: New file.
9821         * modules/unistr/u32-strlen: New file.
9822         * lib/unistr/u8-strlen.c: New file.
9823         * lib/unistr/u16-strlen.c: New file.
9824         * lib/unistr/u32-strlen.c: New file.
9825         * lib/unistr/u-strlen.h: New file.
9826
9827         * modules/unistr/u8-strmblen: New file.
9828         * modules/unistr/u16-strmblen: New file.
9829         * modules/unistr/u32-strmblen: New file.
9830         * lib/unistr/u8-strmblen.c: New file.
9831         * lib/unistr/u16-strmblen.c: New file.
9832         * lib/unistr/u32-strmblen.c: New file.
9833
9834         * modules/unistr/u8-strmbtouc: New file.
9835         * modules/unistr/u16-strmbtouc: New file.
9836         * modules/unistr/u32-strmbtouc: New file.
9837         * lib/unistr/u8-strmbtouc.c: New file.
9838         * lib/unistr/u16-strmbtouc.c: New file.
9839         * lib/unistr/u32-strmbtouc.c: New file.
9840
9841         * modules/unistr/u8-strncat: New file.
9842         * modules/unistr/u16-strncat: New file.
9843         * modules/unistr/u32-strncat: New file.
9844         * lib/unistr/u8-strncat.c: New file.
9845         * lib/unistr/u16-strncat.c: New file.
9846         * lib/unistr/u32-strncat.c: New file.
9847         * lib/unistr/u-strncat.h: New file.
9848
9849         * modules/unistr/u8-strncmp: New file.
9850         * modules/unistr/u16-strncmp: New file.
9851         * modules/unistr/u32-strncmp: New file.
9852         * lib/unistr/u8-strncmp.c: New file.
9853         * lib/unistr/u16-strncmp.c: New file.
9854         * lib/unistr/u32-strncmp.c: New file.
9855
9856         * modules/unistr/u8-strncpy: New file.
9857         * modules/unistr/u16-strncpy: New file.
9858         * modules/unistr/u32-strncpy: New file.
9859         * lib/unistr/u8-strncpy.c: New file.
9860         * lib/unistr/u16-strncpy.c: New file.
9861         * lib/unistr/u32-strncpy.c: New file.
9862         * lib/unistr/u-strncpy.h: New file.
9863
9864         * modules/unistr/u8-strnlen: New file.
9865         * modules/unistr/u16-strnlen: New file.
9866         * modules/unistr/u32-strnlen: New file.
9867         * lib/unistr/u8-strnlen.c: New file.
9868         * lib/unistr/u16-strnlen.c: New file.
9869         * lib/unistr/u32-strnlen.c: New file.
9870         * lib/unistr/u-strnlen.h: New file.
9871
9872         * modules/unistr/u8-strpbrk: New file.
9873         * modules/unistr/u16-strpbrk: New file.
9874         * modules/unistr/u32-strpbrk: New file.
9875         * lib/unistr/u8-strpbrk.c: New file.
9876         * lib/unistr/u16-strpbrk.c: New file.
9877         * lib/unistr/u32-strpbrk.c: New file.
9878         * lib/unistr/u-strpbrk.h: New file.
9879
9880         * modules/unistr/u8-strrchr: New file.
9881         * modules/unistr/u16-strrchr: New file.
9882         * modules/unistr/u32-strrchr: New file.
9883         * lib/unistr/u8-strrchr.c: New file.
9884         * lib/unistr/u16-strrchr.c: New file.
9885         * lib/unistr/u32-strrchr.c: New file.
9886
9887         * modules/unistr/u8-strspn: New file.
9888         * modules/unistr/u16-strspn: New file.
9889         * modules/unistr/u32-strspn: New file.
9890         * lib/unistr/u8-strspn.c: New file.
9891         * lib/unistr/u16-strspn.c: New file.
9892         * lib/unistr/u32-strspn.c: New file.
9893         * lib/unistr/u-strspn.h: New file.
9894
9895         * modules/unistr/u8-strstr: New file.
9896         * modules/unistr/u16-strstr: New file.
9897         * modules/unistr/u32-strstr: New file.
9898         * lib/unistr/u8-strstr.c: New file.
9899         * lib/unistr/u16-strstr.c: New file.
9900         * lib/unistr/u32-strstr.c: New file.
9901         * lib/unistr/u-strstr.h: New file.
9902
9903         * modules/unistr/u8-strtok: New file.
9904         * modules/unistr/u16-strtok: New file.
9905         * modules/unistr/u32-strtok: New file.
9906         * lib/unistr/u8-strtok.c: New file.
9907         * lib/unistr/u16-strtok.c: New file.
9908         * lib/unistr/u32-strtok.c: New file.
9909         * lib/unistr/u-strtok.h: New file.
9910
9911         * modules/unistr/u8-uctomb: New file.
9912         * modules/unistr/u16-uctomb: New file.
9913         * modules/unistr/u32-uctomb: New file.
9914         * lib/unistr/u8-uctomb.c: New file.
9915         * lib/unistr/u16-uctomb.c: New file.
9916         * lib/unistr/u32-uctomb.c: New file.
9917
9918         * MODULES.html.sh (Unicode string functions): Add the new modules.
9919
9920 2007-01-08  Bruno Haible  <bruno@clisp.org>
9921
9922         * gnulib-tool (func_all_modules): Use find, not ls, to traverse the
9923         modules directory. Filter out CVS, ChangeLog, COPYING, README also from
9924         subdirectories.
9925
9926 2007-01-08  Karl Berry  <karl@gnu.org>
9927
9928         * doc/error.texi: mention that main() fns must set program_name
9929         when progname is used.
9930
9931 2007-01-08  Paul Eggert  <eggert@cs.ucla.edu>
9932
9933         * m4/wctype.m4 (gl_WCTYPE_H): Compute ABSOLUTE_WCTYPE_H even if
9934         WCTYPE_H is empty, for the benefit of builds from non-distclean
9935         directories.  Problem reported by Eric Blake in
9936         <http://lists.gnu.org/archive/html/bug-gnulib/2007-01/msg00157.html>.
9937
9938 2007-01-08  Bruno Haible  <bruno@clisp.org>
9939
9940         * m4/canonicalize.m4 (AC_FUNC_CANONICALIZE_FILE_NAME): Remove
9941         PROVIDE_CANONICALIZE_FILENAME_MODE macro definition.
9942         * lib/canonicalize.h: Test GNULIB_CANONICALIZE instead of
9943         PROVIDE_CANONICALIZE_FILENAME_MODE.
9944         * modules/canonicalize (configure.ac): Use gl_MODULE_INDICATOR.
9945
9946 2007-01-08  Bruno Haible  <bruno@clisp.org>
9947
9948         * m4/fts.m4 (gl_FUNC_FTS_LGPL): Remove _LGPL_PACKAGE macro definition.
9949         * lib/fts_.h (_LGPL_PACKAGE): Remove macro.
9950         Use !GNULIB_FTS instead of _LGPL_PACKAGE.
9951         * lib/fts.c: Likewise.
9952         * modules/fts (configure.ac): Use gl_MODULE_INDICATOR.
9953
9954 2006-12-25  Bruno Haible  <bruno@clisp.org>
9955
9956         * modules/utf8-ucs4-safe: New file.
9957         * lib/utf8-ucs4-safe.h: New file.
9958         * lib/unistr/utf8-ucs4-safe.c: New file.
9959
9960         * modules/utf16-ucs4-safe: New file.
9961         * lib/utf16-ucs4-safe.h: New file.
9962         * lib/unistr/utf16-ucs4-safe.c: New file.
9963
9964         * MODULES.html.sh (Unicode string functions): Add the new modules.
9965
9966 2007-01-08  Bruno Haible  <bruno@clisp.org>
9967
9968         * modules/utf8-ucs4 (Files, lib_SOURCES): Add unistr/utf8-ucs4.c.
9969         (Depends-on): Add unitypes.
9970         * lib/utf8-ucs4.h: Add double-inclusion guard. Include unitypes.h.
9971         (u8_mbtouc_aux): Move out to separate file.
9972         (u8_mbtouc): Use ucs4_t, uint8_t types.
9973         * lib/unistr/utf8-ucs4.c: New file.
9974
9975         * modules/utf16-ucs4 (Files, lib_SOURCES): Add unistr/utf16-ucs4.c.
9976         (Depends-on): Add unitypes.
9977         * lib/utf16-ucs4.h: Add double-inclusion guard. Include unitypes.h.
9978         (u16_mbtouc_aux): Move out to separate file.
9979         (u16_mbtouc): Use ucs4_t, uint16_t types.
9980         * lib/unistr/utf16-ucs4.c: New file.
9981
9982         * modules/ucs4-utf8 (Files, lib_SOURCES): Add unistr/ucs4-utf8.c.
9983         (Depends-on): Add unitypes.
9984         * lib/ucs4-utf8.h: Add double-inclusion guard. Include unitypes.h.
9985         (u8_uctomb_aux): Move out to separate file.
9986         (u8_uctomb): Use ucs4_t, uint8_t types.
9987         * lib/unistr/ucs4-utf8.c: New file.
9988
9989         * modules/ucs4-utf16 (Files, lib_SOURCES): Add unistr/ucs4-utf16.c.
9990         (Depends-on): Add unitypes.
9991         * lib/ucs4-utf16.h: Add double-inclusion guard. Include unitypes.h.
9992         (u16_uctomb_aux): Move out to separate file.
9993         (u16_uctomb): Use ucs4_t, uint16_t types.
9994         * lib/unistr/ucs4-utf16.c: New file.
9995
9996 2006-12-25  Bruno Haible  <bruno@clisp.org>
9997
9998         * modules/unitypes: New file.
9999         * lib/unitypes.h: New file.
10000         * MODULES.html.sh (func_all_modules): New section "Unicode string
10001         functions". Move ucs4-utf8, ucs4-utf16, utf8-ucs4, utf16-ucs4 to
10002         this section. Add unitypes.
10003
10004 2007-01-08  Bruno Haible  <bruno@clisp.org>
10005
10006         Avoid variable names that conflict with those from libtool.
10007         * m4/lib-link.m4 (AC_LIB_RPATH, AC_LIB_LINKFLAGS_BODY,
10008         AC_LIB_LINKFLAGS_FROM_LIBS): Rename libext to acl_libext,
10009         shlibext to acl_shlibext, libname_spec to acl_libname_spec,
10010         library_names_spec to acl_library_names_spec, hardcode_* to
10011         acl_hardcode_*.
10012         Reported by Ralf Wildenhues.
10013
10014 2007-01-08  Bruno Haible  <bruno@clisp.org>
10015
10016         * m4/gc-arcfour.m4 (gl_GC_ARCFOUR): Remove GC_USE_ARCFOUR macro
10017         definition.
10018         * m4/gc-arctwo.m4 (gl_GC_ARCTWO): Remove GC_USE_ARCTWO macro
10019         definition.
10020         * m4/gc-des.m4 (gl_GC_DES): Remove GC_USE_DES macro definition.
10021         * m4/gc-hmac-md5.m4 (gl_GC_HMAC_MD5): Remove GC_USE_HMAC_MD5 macro
10022         definition.
10023         * m4/gc-hmac-sha1.m4 (gl_GC_HMAC_SHA1): Remove GC_USE_HMAC_SHA1 macro
10024         definition.
10025         * m4/gc-md2.m4 (gl_GC_MD2): Remove GC_USE_MD2 macro definition.
10026         * m4/gc-md4.m4 (gl_GC_MD4): Remove GC_USE_MD4 macro definition.
10027         * m4/gc-md5.m4 (gl_GC_MD5): Remove GC_USE_MD5 macro definition.
10028         * m4/gc-random.m4 (gl_GC_RANDOM): Remove GC_USE_RANDOM macro
10029         definition.
10030         * m4/gc-rijndael.m4 (gl_GC_RIJNDAEL): Remove GC_USE_RIJNDAEL macro
10031         definition.
10032         * m4/gc-sha1.m4 (gl_GC_SHA1): Remove GC_USE_SHA1 macro definition.
10033         * lib/gc-gnulib.c: Use GNULIB_GC_<algorithm> instead of
10034         GC_USE_<algorithm>.
10035         * lib/gc-libgcrypt.c: Likewise.
10036         * modules/gc-arcfour (configure.ac): Use gl_MODULE_INDICATOR.
10037         * modules/gc-arctwo (configure.ac): Likewise.
10038         * modules/gc-des (configure.ac): Likewise.
10039         * modules/gc-hmac-md5 (configure.ac): Likewise.
10040         * modules/gc-hmac-sha1 (configure.ac): Likewise.
10041         * modules/gc-md2 (configure.ac): Likewise.
10042         * modules/gc-md4 (configure.ac): Likewise.
10043         * modules/gc-md5 (configure.ac): Likewise.
10044         * modules/gc-random (configure.ac): Likewise.
10045         * modules/gc-rijndael (configure.ac): Likewise.
10046         * modules/gc-sha1 (configure.ac): Likewise.
10047
10048 2007-01-08  Bruno Haible  <bruno@clisp.org>
10049
10050         * m4/close-stream.m4 (gl_CLOSE_STREAM): Remove GNULIB_CLOSE_STREAM
10051         macro definition.
10052         * m4/fcntl-safer.m4 (gl_FCNTL_SAFER): Remove GNULIB_FCNTL_SAFER macro
10053         definition.
10054         * m4/stdio-safer.m4 (gl_FOPEN_SAFER): Remove GNULIB_FOPEN_SAFER macro
10055         definition.
10056         * modules/close-stream (configure.ac): Invoke gl_MODULE_INDICATOR.
10057         * modules/fcntl-safer (configure.ac): Likewise.
10058         * modules/fopen-safer (configure.ac): Likewise.
10059         * modules/fwriteerror (configure.ac): Likewise. Remove explicit
10060         GNULIB_FWRITEERROR macro definition.
10061
10062 2007-01-08  Bruno Haible  <bruno@clisp.org>
10063
10064         * m4/gnulib-common.m4: New file.
10065         * gnulib-tool (func_get_autoconf_snippet): Undo last change.
10066         (func_get_filelist): Add m4/gnulib-common.m4.
10067
10068 2007-01-08  Bruno Haible  <bruno@clisp.org>
10069
10070         * m4/lib-link.m4 (AC_LIB_LINKFLAGS_BODY): Simplify the sorting
10071         command.
10072
10073 2007-01-08  Jim Meyering  <jim@meyering.net>
10074
10075         Use a more robust test for a "can't happen" condition.
10076         * lib/fts.c (fts_read): Revert the change of 2006-11-22, since it
10077         narrowed the st_size value.  Presuming the "can't happen" condition
10078         is true, that narrowing could conceivably convert an invalid st_size
10079         value into a valid one.  Instead, use a change based on Matthew
10080         Woehlke's original patch.
10081
10082         Slight readability improvement: use an assert-like macro
10083         in place of literal "abort ()" uses.
10084         * lib/fts.c (fts_assert): Define.
10085         (fts_set_stat_required, cwd_advance_fd, fts_read, fd_ring_check):
10086         Use this macro instead of a bare 'abort'.
10087
10088 2007-01-05  Paul Eggert  <eggert@cs.ucla.edu>
10089
10090         Don't worry about using IRIX 5.3's wctype.h broken definitions;
10091         simply work around them.
10092         * lib/wctype_.h: Remove test for HAVE_WCTYPE_CTMP_BUG.
10093         (iswalnum, iswalpha, iswblank, iswcntrl, iswdigit, iswgraph, iswlower):
10094         (iswprint, iswpunct, iswspace, iswupper, iswxdigit): Undef before
10095         declaring.
10096         Don't bother to define as macros, since the standard doesn't require it.
10097         * m4/wctype.m4 (WCTYPE_H, ABSOLUTE_WCTYPE_H): Simplify, since we no
10098         longer worry about IRIX 5.3.
10099         (HAVE_WCTYPE_CTMP_BUG): Remove.
10100
10101 2007-01-04  Paul Eggert  <eggert@cs.ucla.edu>
10102
10103         * lib/wctype_.h (_ctmp_) [HAVE_WCTYPE_CTMP_BUG]: Now of type wchar_t,
10104         not wint_t.  Also, include <ctype.h>, to fix another IRIX bug.
10105         * m4/wctype.m4 (gl_WCTYPE_H): Likewise.
10106         Problems reported by Georg Schwarz for IRIX 5.3.
10107
10108         * gnulib-tool (autoconf_minversion): Take the maximum version number
10109         found, not the minimum.  Problem reported by James Youngman.
10110
10111 2007-01-03  Karl Berry  <karl@gnu.org>
10112
10113         * doc/error.texi: new file, explaining interaction with progname.
10114         * doc/gnulib.texi: include it.  Update copyright.
10115
10116 2007-01-03  Simon Josefsson  <simon@josefsson.org>
10117
10118         * gnulib-tool (func_create_testdir): Run AC_CANONICAL_BUILD and
10119         AC_CANONICAL_HOST, to improve autobuild outputs.
10120
10121 2007-01-03  Paolo Bonzini  <bonzini@gnu.org>
10122             Yoann Vandoorselaere <yoann.v@prelude-ids.com>
10123
10124         * lib/poll.c (poll): Use recv on Mac OS X to distinguish connected
10125         sockets, server sockets, and other file descriptors.  Count errors
10126         to compute the return value.  Reorder the code a bit to be easier
10127         to follow.  Don't set event bits that were not requested (except
10128         POLLERR and POLLHUP).
10129
10130 2007-01-01  Bruno Haible  <bruno@clisp.org>
10131
10132         * modules/lchmod (Include): Require lchmod.h, not lchown.h.
10133
10134 2007-01-03  Jim Meyering  <jim@meyering.net>
10135
10136         * modules/fts-lgpl (Depends-on): Add i-ring.  Reported by Bruno Haible.
10137
10138 2007-01-02  Bruno Haible  <bruno@clisp.org>
10139
10140         * modules/settime (Include): Require timespec.h.
10141         * modules/nanosleep (Include): Likewise.
10142
10143 2007-01-01  Bruno Haible  <bruno@clisp.org>
10144
10145         * gnulib-tool (func_emit_copyright_notice): Bump year.
10146         (func_get_autoconf_snippet): Emit a GNULIB_<modulename> macro.
10147
10148 2007-01-01  Bruno Haible  <bruno@clisp.org>
10149
10150         Improve support for OpenBSD.
10151         * build-aux/config.rpath (libname_spec): Export.
10152         (library_names_spec): New variable. Export.
10153         * m4/lib-link.m4 (AC_LIB_LINKFLAGS_BODY): Extract libname_spec and
10154         library_names_spec from the config.rpath output. Locate shared library
10155         through the name pattern in library_names_spec.
10156
10157 2007-01-01  Eric Blake  <ebb9@byu.net>
10158
10159         * lib/version-etc.c (COPYRIGHT_YEAR): Bump for new year.
10160
10161 2006-12-30  Paul Eggert  <eggert@cs.ucla.edu>
10162
10163         * gnulib-tool (SORT): Remove, since we no longer assume GNU sort.
10164         Rewrite so as not to assume GNU sort or "tail -1".  Also, don't
10165         assume the C locale, and avoid an "eval" that could cause trouble.
10166         Problem with SORT reported by Bob Proulx.
10167
10168         * lib/getpagesize.h (getpagesize) [defined __amigaos4__]:
10169         Define.  Trivial patch from Henning Nielsen Lund, originally
10170         sent to bug-grep@gnu.org today.
10171
10172 2006-12-29  Paul Eggert  <eggert@cs.ucla.edu>
10173
10174         * lib/acl.h: Include sys/types.h and sys/stat.h, for mode_t and
10175         struct stat.  Problem reported by Henning Nielsen Lund.
10176         * lib/acl.c: Include acl.h first, to check interface.  Don't
10177         bother to include sys/types.h and sys/stat.h again.
10178
10179 2006-12-28  Paul Eggert  <eggert@cs.ucla.edu>
10180
10181         Import the following change from libc; problem reported by
10182         Sven Verdoolaege.
10183
10184         2005-10-13  Ulrich Drepper  <drepper@redhat.com>
10185
10186         [BZ #1373]
10187         * lib/argp.h: Remove __NTH for __argp_usage inline function.
10188
10189 2006-12-28  Jim Meyering  <jim@meyering.net>
10190
10191         * build-aux/announce-gen: Do not assume that the package
10192         builds any of tar.gz, tar.bz2, and .xdelta files.
10193         Suggestion from Simon Josefsson.
10194
10195 2006-12-28  Simon Josefsson  <simon@josefsson.org>
10196
10197         * modules/announce-gen: New file.
10198
10199 2006-12-27  Paul Eggert  <eggert@cs.ucla.edu>
10200
10201         * lib/mbchar.h: Just include <wctype.h>; the wctype module
10202         handles its gotchas now.
10203         * lib/mbswidth.c: Likewise.
10204         * lib/wcwidth.h: Likewise.
10205         * m4/mbchar.m4 (gl_MBCHAR): Don't bother checking for wctype.h
10206         and iswcntrl; the wctype module does this stuff now.
10207         * m4/mbswidth.m4 (gl_MBSWIDTH): Likewise.
10208         * m4/wcwidth.m4 (gl_FUNC_WCWIDTH): Likewise.
10209         * modules/mbchar (Depends-on): Add wctype.
10210         * modules/mbswidth (Depends-on): Likewise.
10211         * modules/wcwidth (Depends-on): Likewise.
10212
10213 2006-12-27  Eric Blake  <ebb9@byu.net>
10214
10215         * lib/fnmatch.c: Reinstate inclusion of <wchar.h>, since this
10216         module uses more than what <wctype.h> is required to provide.
10217
10218 2006-12-26  Eric Blake  <ebb9@byu.net>
10219
10220         * gnulib-tool (sed_extract_prog): Avoid space-tab.
10221
10222 2006-12-26  Eric Blake  <ebb9@byu.net>
10223
10224         * modules/absolute-header: New module.
10225         * modules/fcntl (Depends-on): Depend on it.
10226         * modules/inttypes (Depends-on): Likewise.
10227         * modules/stdint (Depends-on): Likewise.
10228         * modules/sys_stat (Depends-on): Likewise.
10229         * modules/wctype (Depends-on): Likewise.
10230         * MODULES.html.sh (Support for building libraries and
10231         executables): Document it.
10232
10233 2006-12-25  Paul Eggert  <eggert@cs.ucla.edu>
10234
10235         * gnulib-tool (SED): Remove, undoing previous change.
10236         The problem was that it broke coreutils on Solaris, because
10237         "sed --posix" leaked into a makefile.
10238         (sed): New alias, if 'alias' and GNU sed.
10239
10240 2006-12-24  Jim Meyering  <jim@meyering.net>
10241
10242         Work around an fchownat bug in glibc-2.4:
10243         http://lists.ubuntu.com/archives/ubuntu-users/2006-September/093218.html
10244         This bug would cause "chown -RP ... DIR" to follow symlinks in DIR,
10245         in spite of the -P option.
10246         * m4/openat.m4 (gl_FUNC_FCHOWNAT, gl_FUNC_FCHOWNAT_DEREF_BUG):
10247         New macros.
10248         (gl_PREREQ_OPENAT): Require gl_FUNC_FCHOWNAT.
10249         * modules/openat (Files): Add lib/fchownat.c.
10250         * lib/openat.c (fchownat): Don't define here.  Move to...
10251         * lib/fchownat.c: ...this new file.
10252
10253 2006-12-23  Paul Eggert  <eggert@cs.ucla.edu>
10254
10255         Fix bug reported by Bruno Haible in
10256         <http://lists.gnu.org/archive/html/bug-gnulib/2006-12/msg00228.html>
10257         where quotearg.c didn't compile on Mac OS X 10.2 because it
10258         lacks <wchar.h> and wint_t.
10259         * lib/wctype_.h (__wctype_wint_t): New type.
10260         Include <stdio.h>, <time.h>, <wchar.h> only if HAVE_WINT_T.
10261         (iswalnum, iswalpha, iswblank, iswcntrl, iswdigit, iswgraph):
10262         (iswlower, iswprint, iswpunct, iswspace, iswupper, ixwxdigit):
10263         Arg is now of type __wctype_wint_t, not wint_t.
10264         * m4/wctype.m4 (gl_WCTYPE_H): Require gt_TYPE_WINT_T, and
10265         substitute HAVE_WINT_T.
10266         * modules/wctype (Files): Add m4/wint_t.m4.
10267         (wctype.h): Substitute HAVE_WINT_T.
10268
10269 2006-12-23  Bruno Haible  <bruno@clisp.org>
10270
10271         * lib/safe-read.h [C++]: Wrap declarations in extern "C".
10272
10273 2006-12-23  Bruno Haible  <bruno@clisp.org>
10274
10275         * lib/canonicalize-lgpl.c (__realpath): Test HAVE_READLINK instead of
10276         S_ISLNK.
10277         Needed because gnulib's sys/stat.h replacement defines S_ISLNK on
10278         mingw.
10279
10280 2006-12-22  Bruno Haible  <bruno@clisp.org>
10281
10282         * lib/copy-file.c: Include acl.h.
10283         (copy_file_preserving) [USE_ACL]: Use copy_acl instead of chmod.
10284         Close the file descriptors only after being done with copy_acl.
10285         * modules/copy-file (Depends-on): Add acl.
10286
10287 2006-12-22  Bruno Haible  <bruno@clisp.org>
10288
10289         * gnulib-tool (SED): New variable.
10290         Use $SED instead of sed everywhere.
10291
10292 2006-12-22  Bruno Haible  <bruno@clisp.org>
10293
10294         * modules/no-c++: New file.
10295         * m4/no-c++.m4: New file.
10296         * MODULES.html.sh (Support for building libraries and executables):
10297         Add no-c++.
10298
10299 2006-12-22  Paul Eggert  <eggert@cs.ucla.edu>
10300
10301         * m4/mktime.m4 (AC_FUNC_MKTIME): Sync from Autoconf.
10302         Include <limits.h>, and use its INT_MAX to rewrite the
10303         j loop so that it does not overflow 'int'.  Problem reported by
10304         Ralf Wildenhues in
10305         <http://lists.gnu.org/archive/html/bug-gnulib/2006-12/msg00084.html>.
10306         Play it safe by shifting left by 1 rather than multiplying by 2,
10307         as GCC is less likely to optimize this away when the value
10308         is signed (when it assumes overflow leads to undefined behavior).
10309         Also, don't assume time_t uses two's complement.
10310
10311 2006-12-21  Paul Eggert  <eggert@cs.ucla.edu>
10312
10313         * MODULES.html.sh: New module wctype.
10314         * lib/wctype_.h, m4/wctype.m4, modules/wctype: New files.
10315         * lib/fnmatch.c: Don't bother to include <wchar.h> before
10316         <wctype.h>, since the new wctype module should fix this.
10317         * lib/quotearg.c: Include <wctype.h> unconditionally, since
10318         the wctype module should arrange for it.
10319         * lib/regex_internal.h: Likewise.
10320         * m4/quotearg.m4 (gl_QUOTEARG): Don't check for wctype.h or iswprint,
10321         since the wctype module should handle this now.
10322         * m4/regex.m4 (gl_PREREQ_REGEX): Don't check for wctype.h.
10323         * modules/fnmatch (Depends-on): Add wctype.
10324         * modules/quotearg (Depends-on): Likewise.
10325         * modules/regex (Depends-on): Likewise.
10326
10327 2006-12-19  Bruno Haible  <bruno@clisp.org>
10328
10329         * lib/strdup.h [C++]: Wrap definitions in extern "C".
10330         Suggested by Lorenzo Bettini <bettini@dsi.unifi.it>.
10331
10332 2006-12-19  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
10333
10334         * modules/savewd (Depends-on): Fix dependency on fcntl.
10335
10336 2006-12-18  Paul Eggert  <eggert@cs.ucla.edu>
10337
10338         * m4/stdint.m4 (gl_STDINT_H): Set STDINT_H to empty if stdint.h
10339         conforms to C99, rather than relying on the user's environment
10340         setting of STDINT_H.
10341
10342 2006-12-18  Paul Eggert  <eggert@cs.ucla.edu>
10343         and Eric Blake  <ebb9@byu.net>
10344
10345         * lib/dirname.h (DOUBLE_SLASH_IS_DISTINCT_ROOT): Default to 0, not 1.
10346         This is more consistent with the other defines here.
10347         * m4/double-slash-root.m4 (gl_DOUBLE_SLASH_ROOT):
10348         Port to z/OS.  Problem reported by Paul Gilmartin.
10349         Change local vars to use gl_ prefix rather than ac_.
10350         Don't define DOUBLE_SLASH_IS_DISTINCT_ROOT to 0, for consistency
10351         with other defines.
10352         * modules/double-slash-root: New module.
10353         * modules/dirname (Files): Remove m4/double-slash-root.m4.
10354         (Depends-on): Add double-slash-root.
10355         * MODULES.html.sh (File system functions): Mention new module.
10356
10357 2006-12-14  Paul Eggert  <eggert@cs.ucla.edu>
10358
10359         * lib/yesno.c [!ENABLE_NLS]: Don't include getline.h.
10360         (yesno) [!ENABLE_NLS]: Don't invoke getline or rpmatch.
10361         This is for the benefit of gzip, which doesn't do i18n.
10362
10363 2006-12-12  Jim Meyering  <jim@meyering.net>
10364
10365         * m4/acl.m4 (gl_ACL_GET_FILE): Fix logic error.
10366         Reported by Andreas Schwab <schwab@suse.de>.
10367
10368 2006-12-12  Bruno Haible  <bruno@clisp.org>
10369
10370         Merge these changes.
10371         2006-09-05  Bruno Haible  <bruno@clisp.org>
10372         * lib/iconvme.c (iconv_string): No need to save and restore errno when
10373         iconv_alloc succeeded.
10374         (iconv_alloc): Don't assume that malloc() or realloc(), when failing,
10375         sets errno to ENOMEM. (malloc on GNU/kFreeBSD doesn't.) No need to
10376         test for " && dest " at the end - dest is always != NULL there. Call
10377         iconv with 4xNULL arguments initially, to reset the state. Call iconv
10378         with 2xNULL arguments, also to flush the state storage. Handle the
10379         IRIX iconv behaviour. Realloc the final result, to throw away unused
10380         memory.
10381
10382 2006-12-11  Paul Eggert  <eggert@cs.ucla.edu>
10383
10384         * m4/openat.m4 (gl_FUNC_OPENAT): Don't compile mkdirat
10385         and fchmodat unconditionally, since glibc 2.4 has them.
10386         Problem reported by Arkadiusz Miskiewicz.
10387
10388 2006-12-10  Bruno Haible  <bruno@clisp.org>
10389
10390         * gnulib-tool (func_import): Show the include files only for those
10391         modules that are copied and specified.
10392         Reported by Karl Berry.
10393
10394 2006-12-08  Jim Meyering  <jim@meyering.net>
10395
10396         * build-aux/announce-gen ($VERSION): Don't use of $Revision...$.
10397         Instead, use Emacs' time-stamp write hook.  Note that the time is UTC.
10398
10399         * build-aux/announce-gen: Add two new options, both optional:
10400         --bootstrap-tools=TOOL_LIST
10401               a comma-separated list of tools, e.g.,
10402               autoconf,automake,bison,gnulib
10403         --gnulib-snapshot-date=DATE
10404               if gnulib is in the bootstrap tool list,
10405               then report this as the snapshot date.
10406               If not specified, use the current date/time.
10407               If you specify a date here, be sure it's UTC.
10408
10409 2006-12-05  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
10410
10411         * tests/test-argp-2.sh: Fix test to match actual output.
10412         (func_compare): Fix sed script to be portable.
10413
10414 2006-12-05  Paul Eggert  <eggert@cs.ucla.edu>
10415
10416         * lib/utimens.c (futimens) [HAVE_BUGGY_NFS_TIME_STAMPS]: Add a
10417         workaround for this case.  It is not autoconfigured now; offhand
10418         it's hard to see how to autoconfigure it.
10419
10420 2006-12-03  Paul Eggert  <eggert@cs.ucla.edu>
10421
10422         * lib/mkdir-p.c (make_dir_parents): Fix race condition when making
10423         a directory that is about to be chowned.  Such a directory's
10424         initial file permissions should permit the owner only and this
10425         should not be changed until after the chown, since the group and
10426         other bits would be incorrect if they granted permission before
10427         the chown.
10428
10429         Fix porting problem for iswctype reported by Georg Schwarz in:
10430         http://lists.gnu.org/archive/html/bug-coreutils/2006-12/msg00017.html
10431         * lib/fnmatch.c (WIDE_CHAR_SUPPORT): Require HAVE_ISWCTYPE, too.
10432         * lib/regex_internal.h (RE_ENABLE_I18N): Likewise.
10433         * m4/fnmatch.m4 (_AC_LIBOBJ_FNMATCH): Check for iswctype, too.
10434         * m4/regex.m4 (gl_PREREQ_REGEX): Likewise.
10435
10436 2006-12-03  Jim Meyering  <jim@meyering.net>
10437
10438         * lib/fts.c (fts_load): Don't set sp->fts_dev here, since
10439         p->fts_statp may not yet be defined.
10440         (fts_read): Instead, set it in the caller, once p->fts_statp is
10441         sure to be defined, and corresponds to a top-level directory.
10442         This bug made du -x fail.  Here's the coreutils test case:
10443         http://git.sv.gnu.org/gitweb/?p=coreutils.git;a=commit;h=ba45154d8e9f
10444         Reported by Mike Frysinger.
10445
10446 2006-12-01  Jim Meyering  <jim@meyering.net>
10447
10448         * modules/savewd (Depends-on): Add fcntl_h to avoid self-test
10449         build failure due to missing definition of HAVE_WORKING_O_NOFOLLOW.
10450         Reported by Simon Josefsson.
10451
10452 2006-11-30  Jim Meyering  <jim@meyering.net>
10453
10454         * m4/warning.m4: Use the all-permissive copyright notice
10455         recommended by RMS (rather than LGPL).
10456         * m4/vararrays.m4: Likewise.
10457         * m4/flexmember.m4: Likewise.
10458
10459 2006-11-29  Bruno Haible  <bruno@clisp.org>
10460
10461         * gnulib-tool (func_emit_lib_Makefile_am): Initialize also
10462         noinst_LIBRARIES. Augment noinst_LIBRARIES and noinst_LTLIBRARIES
10463         using +=.
10464         Reported by Simon Josefsson <simon@josefsson.org>.
10465
10466 2006-11-28  James Youngman <jay@gnu.org>
10467
10468         * README: Advise users that they might find the bug-gnulib@gnu.org
10469         and autotools-announce@gnu.org mailing lists useful.
10470
10471 2006-11-28  Bruno Haible  <bruno@clisp.org>
10472
10473         * m4/ptrdiff_max.m4: Remove file.
10474
10475 2006-11-21  Bruno Haible  <bruno@clisp.org>
10476
10477         * m4/eoverflow.m4 (gl_EOVERFLOW): Use AC_COMPUTE_INT instead of
10478         _AC_COMPUTE_INT.
10479         (AC_COMPUTE_INT): Add fallback definition for autoconf < 2.61.
10480         * m4/ptrdiff_max.m4 (gl_PTRDIFF_MAX): Use AC_COMPUTE_INT instead of
10481         _AC_COMPUTE_INT.
10482         (AC_COMPUTE_INT): Add fallback definition for autoconf < 2.61.
10483         * m4/size_max.m4 (gl_SIZE_MAX): Use AC_COMPUTE_INT instead of
10484         _AC_COMPUTE_INT.
10485         (AC_COMPUTE_INT): Add fallback definition for autoconf < 2.61.
10486
10487 2006-11-28  Jim Meyering  <jim@meyering.net>
10488
10489         * lib/regcomp.c (parse_branch): Rename local, exp->expr, to avoid
10490         warning from "gcc -Wshadow" about shadowing the builtin.
10491
10492 2006-11-27  Bruno Haible  <bruno@clisp.org>
10493
10494         * m4/stdint.m4 (gl_STDINT_BITSIZEOF): Use AC_COMPUTE_INT instead of
10495         _AC_COMPUTE_INT.
10496         (AC_COMPUTE_INT): Add fallback definition for autoconf < 2.61.
10497
10498 2006-11-27  Bruno Haible  <bruno@clisp.org>
10499             Paul Eggert  <eggert@cs.ucla.edu>
10500
10501         * lib/regex.h (__restrict_arr): Redo logic of #if, for clarity.
10502
10503 2006-11-26  Bruno Haible  <bruno@clisp.org>
10504
10505         * gnulib-tool (func_emit_lib_Makefile_am): Initialize also
10506         noinst_LTLIBRARIES.
10507
10508 2006-11-27  Paul Eggert  <eggert@cs.ucla.edu>
10509             Bruno Haible  <bruno@clisp.org>
10510
10511         * lib/gettext.h (_LIBGETTEXT_HAVE_VARIABLE_SIZE_ARRAYS): Define to 0
10512         if compiling with "gcc -ansi".
10513
10514 2006-11-26  Paul Eggert  <eggert@cs.ucla.edu>
10515
10516         Fix some incompatibilities with gcc -ansi -pedantic.
10517         * lib/regex.h (__restrict_arr): Don't use the [restrict] syntax
10518         if compiling pedantically with GCC, unless it's C99 or later.
10519         Don't trust sys/cdefs.h's definition of __restrict_arr, either, as
10520         it mishandles gcc -ansi -pedantic as well.
10521         * lib/regex_internal.h (re_token_t): Don't use enum bitfields
10522         if gcc -pedantic.
10523         * lib/regexec.c (check_node_accept_bytes): Don't use auto
10524         initializers for struct if -pedantic, unless it's C99 or later.
10525
10526 2006-11-25  Nix  <nix@esperi.org.uk>  (tiny change)
10527
10528         * m4/fcntl_h.m4 (gl_FCNTL_H): Test the atime, not the mtime.
10529         Don't close an fd more than once. Identical atimes indicate
10530         success, not failure.
10531
10532 2006-11-22  Robinson Mittmann <bob@hoplon.com>  (tiny change)
10533
10534         * lib/sincosl.c (kernel_sinl): Fix typo in threshold.
10535
10536 2006-11-23  Jim Meyering  <jim@meyering.net>
10537
10538         * build-aux/announce-gen: New file.  From coreutils.
10539
10540 2006-11-22  Jim Meyering  <jim@meyering.net>
10541
10542         Work around a compile-time error from the HP-UX 11.00 /bin/cc.
10543         * lib/fts.c (enum Fts_stat): Give this previously-anon enum a name.
10544         (fts_read): Use a temporary to narrow the overused st_size member
10545         before using it in a switch statement.  Reported by Matthew Woehlke.
10546
10547         * m4/clock_time.m4 (gl_CLOCK_TIME): Quote AC_SUBST argument.
10548         * m4/euidaccess.m4 (gl_PREREQ_EUIDACCESS): Likewise.
10549
10550 2006-11-20  Bruno Haible  <bruno@clisp.org>
10551
10552         * gettext.m4 (AM_GNU_GETTEXT): Revert 2005-07-28 patch: Use
10553         changequote instead of pairs of brackets.
10554         Reported by Andreas Schwab <schwab@suse.de>.
10555
10556 2006-11-21  Jim Meyering  <jim@meyering.net>
10557
10558         * lib/fts.c (fts_safe_changedir): Move a declaration "up",
10559         so as to remain compatible with older compilers.
10560         Patch from Michael Deutschmann.
10561
10562 2006-11-20  Paul Eggert  <eggert@cs.ucla.edu>
10563
10564         * MODULES.html.sh (File system functions): Add openat.
10565
10566         * lib/openat.h (rpl_fstatat): New macro, if
10567         [HAVE_OPENAT && ! LSTAT_FOLLOWS_SLASHED_SYMLINK.
10568         (fstatat): Define to rpl_fstatat under the same conditions,
10569         unless COMPILING_FSTATAT.
10570         * m4/openat.m4 (gl_FUNC_OPENAT): Compile fstatat.c too, if fstatat
10571         seems to have the bug.
10572         * lib/fstatat.c: New file.
10573         * modules/openat (Files): Add it.
10574
10575 2006-11-20  Bruno Haible  <bruno@clisp.org>
10576
10577         * Makefile: New file.
10578
10579 2006-11-20  Jim Meyering  <jim@meyering.net>
10580
10581         The beginnings of syntax-related checks for gnulib.
10582         * lib/Makefile: New file.
10583         * lib/t-idcache: New script.  Ensure that the two halves of
10584         idcache.c stay in sync.
10585
10586         * lib/idcache.c: Adjust comments in user- and group- portions to
10587         be more accurate, and to be consistent with one another.
10588
10589 2006-11-20  Jim Meyering  <jim@meyering.net>
10590
10591         * lib/idcache.c: Restore most of the 2006-11-06 patch, so as to
10592         continue using the flexible array member (thus, this module performs
10593         half as many malloc calls), with the addition that...
10594         (getgroup, getuser): Consistently record a non-match via an empty
10595         "name" string, and map an empty string match to a NULL return value.
10596         * modules/idcache (Depends-on): Re-add flexmember.
10597
10598         * lib/idcache.c (getuser): Remove all uses of the register keyword.
10599         (getuidbyname, getgroup, getgidbyname): Likewise.
10600
10601         Use cleaner syntax: NULL rather than 0.
10602         * lib/idcache.c (getuidbyname, getgidbyname): Return NULL, not 0.
10603
10604 2006-11-20  Paul Eggert  <eggert@cs.ucla.edu>
10605
10606         * lib/idcache.c: Undo most recent patch, dated 2006-11-06.
10607         It mishandled the case where the group was missing.
10608         Problem reported by Greg Schafer.
10609         * modules/idcache: Likewise.
10610
10611 2006-11-18  Jim Meyering  <jim@meyering.net>
10612
10613         * check-module (%exempt_header): Add exception for some
10614         conditionally-included headers.
10615
10616         * modules/i-ring (Depends-on): Add verify.
10617         (License): Change to LGPL.
10618
10619 2006-11-16  Paul Eggert  <eggert@cs.ucla.edu>
10620
10621         * modules/getaddinfo (Depends-on): Remove inttostr; add snprintf.
10622         * lib/getaddrinfo.c: Include snprintf.h rather than intprops.h
10623         and inttostr.h.  Use snprintf rather than uinttostr, so that
10624         LGPLed code doesn't depend on GPLed.
10625
10626 2006-11-17  Paul Eggert  <eggert@cs.ucla.edu>
10627
10628         * modules/inline (License): Change from GPL to LGPL.
10629
10630 2006-11-17  Jim Meyering  <jim@meyering.net>
10631
10632         * modules/d-type (License): Switch to LGPL.
10633
10634 2006-11-15  Bruno Haible  <bruno@clisp.org>
10635
10636         * m4/alloca.m4 (gl_FUNC_ALLOCA): Fix the AC_CACHE_CHECK message.
10637
10638 2006-11-15  Eric Blake  <ebb9@byu.net>
10639
10640         * m4/allocsa.m4 (gl_ALLOCSA): Don't invoke macro already picked up by
10641         the module dependency.
10642
10643 2006-11-15  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
10644             Bruno Haible  <bruno@clisp.org>
10645
10646         * gnulib-tool (func_create_testdir): Add license consistency check.
10647
10648 2006-11-15  Eric Blake  <ebb9@byu.net>
10649
10650         * m4/alloca.m4 (gl_FUNC_ALLOCA): Use AC_CACHE_CHECK to avoid a
10651         random "(cached)" in configure output.
10652
10653 2006-11-14  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
10654
10655         * m4/inttypes.m4 (gl_INTTYPES_H): Use AC_CACHE_CHECK so that the
10656         test for conforming inttypes.h is both announced and cached.
10657
10658         * MODULES.html.sh (seen_modules, seen_files): New variables.
10659         (func_module): Rewrite to use a few less gnulib-tool and sed
10660         invocations.  Avoid a couple of quadratic algorithms for ...
10661         (missed_modules, missed_files): ... these, with ...
10662         (func_append, func_tmpdir): ... these new functions, from
10663         gnulib-tool.  Analogously, install traps for cleanup.
10664
10665         * tests/test-gc.c (main): Remove unused variables.
10666         * tests/test-read-file.c: Include stdlib.h, for 'free'.
10667
10668 2006-11-14  Paul Eggert  <eggert@cs.ucla.edu>
10669
10670         * modules/inttostr (License): Change to LGPL.
10671
10672 2006-11-14  Eric Blake  <ebb9@byu.net>
10673
10674         * modules/tempname (License): Change to LGPL.
10675
10676 2006-11-14  Eric Blake  <ebb9@byu.net>
10677
10678         * doc/functions.texi (Function Portability): *printf functions on
10679         Cygwin now understand all POSIX size specifiers.
10680
10681 2006-11-14  Bruno Haible  <bruno@clisp.org>
10682
10683         * modules/c-ctype (License): Change to LGPL.
10684
10685 2006-11-12  Bruno Haible  <bruno@clisp.org>
10686
10687         * m4/lib-link.m4 (AC_LIB_LINKFLAGS, AC_LIB_HAVE_LINKFLAGS,
10688         AC_LIB_LINKFLAGS_BODY): Also set a LIB${NAME}_PREFIX variable. Needed
10689         for GNOME libraries, for which the include files are installed in
10690         subdirectories of $prefix/include.
10691
10692 2006-11-12  Bruno Haible  <bruno@clisp.org>
10693
10694         * m4/lib-link.m4: Require at least autoconf-2.54.
10695         (AC_LIB_LINKFLAGS_BODY) [autoconf < 2.61]: Turn dots into the library
10696         name to underscores for the --with option.
10697
10698 2006-11-13  Bruno Haible  <bruno@clisp.org>
10699
10700         * gnulib-tool (func_create_testdir): Set gl_source_base correctly in
10701         the tests directory.
10702         Reported by Ralf Wildenhues.
10703
10704 2006-11-13  Bruno Haible  <bruno@clisp.org>
10705
10706         * gnulib-tool (func_emit_initmacro_start): Also override AC_LIBSOURCES.
10707         (func_emit_initmacro_end): Undo the override here.
10708         (func_emit_initmacro_done): Emit a definition for gl_LIBSOURCES.
10709         Works around the famous automake error in coreutils.
10710
10711 2006-11-13  Eric Blake  <ebb9@byu.net>
10712
10713         * lib/gl_anytree_oset.h (gl_tree_search_atleast): Return the
10714         element, not its node.
10715
10716 2006-11-12  Bruno Haible  <bruno@clisp.org>
10717
10718         * gnulib-tool (func_emit_lib_Makefile_am): Replace occurrences of
10719         '$(top_srcdir)/build-aux/', taking into account the real auxdir.
10720
10721 2006-11-12  Bruno Haible  <bruno@clisp.org>
10722
10723         * gnulib-tool: New option --local-symlink.
10724         (func_usage): Document it.
10725         (lsymbolic): New variable.
10726         (func_import, func_create_testdir): If --symlink was not specified,
10727         test whether --local-symlink was specified and the file comes from
10728         the local_gnulib_dir.
10729
10730 2006-11-12  Bruno Haible  <bruno@clisp.org>
10731
10732         * gnulib-tool (func_ln): New function.
10733         (func_ln_if_changed, func_create_testdir): Use it instead of "ln -s".
10734
10735 2006-11-12  Bruno Haible  <bruno@clisp.org>
10736
10737         Finish support for source files in subdirectories.
10738         * gnulib-tool (func_emit_lib_Makefile_am): If some of the source files
10739         are in subdirectories, set uses_subdirs and add 'subdir-objects' to
10740         AUTOMAKE_OPTIONS.
10741         (func_import, func_create_testdir): Invoke AM_PROG_CC_C_O in this case.
10742
10743 2006-11-12  Bruno Haible  <bruno@clisp.org>
10744
10745         * gnulib-tool (func_get_automake_snippet): Synthesize also an
10746         EXTRA_lib_SOURCES augmentation.
10747         (func_emit_lib_Makefile_am): Initialize EXTRA_lib..._SOURCES to empty.
10748
10749 2006-11-12  Jim Meyering  <jim@meyering.net>
10750
10751         Make fts (in FTS_CWDFD mode) more efficient by caching a few open
10752         file descriptors.  This also averts a failure on systems with
10753         native openat support when a traversed directory lacks "x" access.
10754         * lib/fts_.h: Include "i-ring.h"
10755         (struct FTS) [fts_fd_ring]: New member.
10756         * lib/fts.c (RESTORE_INITIAL_CWD): Also call fd_ring_clear.
10757         (FCHDIR): Add parentheses.
10758         (fd_ring_check, fd_ring_print) [!FTS_DEBUG]: Define away.
10759         (cwd_advance_fd): Add a 3rd parameter.  Adjust all callers.
10760         When descending, rather than simply closing the previous
10761         fts_cwd_fd value, push that file descriptor onto the ring.
10762         (same_fd, fd_ring_print, fd_ring_check) [FTS_DEBUG]: New functions.
10763         (fts_open): Initialize the new fd_ring member.
10764         (fts_close): Clear the ring.
10765         (fts_safe_changedir): When possible, use our new fd_ring to skip
10766         the diropen and fstat and dev/ino comparison that would normally
10767         accompany a virtual `chdir ("..")'.
10768
10769         * modules/fts (Depends-on): Add i-ring.
10770         * modules/i-ring: New module.
10771         * lib/i-ring.c, lib/i-ring.h, lib/i-ring-test.c: New files.
10772         * m4/i-ring.m4: New file.
10773
10774 2006-11-12  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
10775
10776         * gnulib-tool (func_create_testdir): Fix replacement of
10777         `build-aux' in configure.ac.  Run autotools in gltests
10778         subdirectory.
10779         (func_create_testdir, func_create_megatestdir, test): There is
10780         no need for '--force' in most autotool invocations in a new
10781         tree.  Actually fail the whole test if any of the tools, or the
10782         configure or make stages fail.
10783
10784         Sync from Automake.
10785         * build-aux/gnupload: Revert last change.  Add pointer to upload
10786         instructions of the GNU Maintenance Instructions.
10787         Suggestion by Karl Berry.
10788
10789 2006-11-10  Jim Meyering  <jim@meyering.net>
10790
10791         * lib/fts.c [FTS_DEBUG]: Don't try to print a pointer via %s.
10792
10793 2006-11-09  Paul Eggert  <eggert@cs.ucla.edu>
10794
10795         * lib/gettext.h (dgettext, dcgettext, ngettext) [! ENABLE_NLS]:
10796         (dngettext, dcngettext, bindtextdomain) [! ENABLE_NLS]:
10797         (bind_textdomain_codeset) [! ENABLE_NLS]:
10798         Evaluate all the arguments.  That way, callers get compatible behavior
10799         if the arguments have side effects.  Also, it avoids some GCC
10800         diagnostics in some cases; Joel E. Denny reported problems when Bison
10801         was configured with --enable-gcc-warnigs.
10802
10803 2006-11-10  Jim Meyering  <jim@meyering.net>
10804
10805         * m4/inline.m4 (gl_INLINE): Check with the compiler, not cpp, so that
10806         relevant options in CFLAGS (like -O, -fno-inline) are taken into
10807         account.
10808
10809 2006-11-10  Jim Meyering  <jim@meyering.net>
10810
10811         * modules/inline: New file/module.
10812         * modules/xalloc (Files): Remove m4/inline.m4.
10813         (Depends-on): Add inline, instead.
10814         * modules/oset: Likewise.
10815         * modules/list: Likewise.
10816
10817 2006-11-09  Paul Eggert  <eggert@cs.ucla.edu>
10818
10819         * lib/stdint_.h (uintmax_t): Fix typo: int64_t -> uint64_t.
10820         Problem reported by Matthew Woehlke.
10821
10822 2006-11-09  Bruno Haible  <bruno@clisp.org>
10823
10824         * lib/tempname.c (gen_tempname): Remove variant that invokes
10825         __gen_tempname.
10826         * m4/tempname.m4 (gl_FUNC_GEN_TEMPNAME): Don't test for
10827         __gen_tempname.
10828
10829 2006-11-08  Bruno Haible  <bruno@clisp.org>
10830
10831         * m4/longlong.m4 (AC_TYPE_LONG_LONG_INT): Set ac_cv_type_long_long_int
10832         to 'yes' instead of 'cross-compiling'.
10833
10834 2006-11-08  Paul Eggert  <eggert@cs.ucla.edu>
10835
10836         * lib/quotearg.h (quotearg_free): New decl.
10837         * lib/quotearg.c (quotearg_free): New function.
10838         (slot0, nslots, slotvec0, slotvec):
10839         Now file-scope so that quotearg_free can get at them.
10840
10841 2006-11-08  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
10842
10843         Sync from Automake.
10844         * build-aux/gnupload: Add missing 'gnu' to example URL.
10845         Report by Karl Berry.
10846
10847 2006-11-08  Bruno Haible  <bruno@clisp.org>
10848
10849         * m4/inline.m4 (gl_INLINE): Also test __NO_INLINE__.
10850         Suggested by Paul Eggert.
10851
10852 2006-11-08  Jim Meyering  <jim@meyering.net>
10853
10854         * lib/fts.c [!_LGPL_PACKAGE]: Don't include fcntl--.h twice.
10855         It's already included if !_LIBC.
10856         (fts_safe_changedir): Add a comment.
10857
10858 2006-11-07  Paul Eggert  <eggert@cs.ucla.edu>
10859
10860         * m4/longlong.m4 (AC_TYPE_LONG_LONG_INT): Detect bug in
10861         Tandem NonStop Kernel (OSS) cc -O circa 2004, reported by
10862         Matthew Woehlke.
10863
10864         * lib/xalloc.h (XMALLOC, XNMALLOC, XZALLOC, XCALLOC): Move
10865         definitions up, to avoid colliding with change below.
10866         (static_inline) [HAVE_INLINE]: New macro.
10867         (xnmalloc, xnrealloc, x2nrealloc, xcharalloc):
10868         Provide extern decls when !HAVE_INLINE.  Do not define unless
10869         static_inline is defined, either by us or by xmalloc.c.  Use
10870         static_inline rather than static inline.
10871         (XCALLOC): Optimize sizeof(T) = 1 case.
10872         * lib/xmalloc.c (static_inline) [!HAVE_INLINE]: New macro.
10873
10874 2006-11-07  Bruno Haible  <bruno@clisp.org>
10875
10876         * lib/xalloc.h (XNMALLOC): Restore optimization of sizeof(T) = 1 case.
10877         * m4/xalloc.m4 (gl_PREREQ_XALLOC): Require gl_INLINE instead of
10878         AC_C_INLINE.
10879         * modules/xalloc (Files): Add m4/inline.m4.
10880
10881 2006-11-07  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
10882
10883         * README: Fix typo.
10884         * doc/gnulib.texi (Miscellaneous Notes): Likewise, rename...
10885         (Miscellanous Notes): ...from this.
10886
10887 2006-11-07  Paul Eggert  <eggert@cs.ucla.edu>
10888
10889         * m4/flexmember.m4 (AC_C_FLEXIBLE_ARRAY_MEMBER):
10890         Mention that offsetof should be used instead of sizeof.
10891         From Bruno Haible.
10892
10893 2006-11-07  Bruno Haible  <bruno@clisp.org>
10894
10895         * lib/w32spawn.h (prepare_spawn): Use XNMALLOC instead of xmalloc.
10896
10897 2006-11-06  Paul Eggert  <eggert@cs.ucla.edu>
10898
10899         Simplify xmalloc expressions. Add overflow check in xmalloc arguments.
10900         * lib/gl_anyavltree_list2.h (create_subtree_with_contents):
10901         (gl_tree_create, gl_tree_add_first, gl_tree_add_last):
10902         (gl_tree_add_before, gl_tree_add_after):
10903         Use XMALLOC instead of xmalloc, and XCALLOC instead of xzalloc.
10904         * lib/gl_anyhash_list2.h (hash_resize): Likewise.
10905         * lib/gl_anylinked_list2.h (gl_linked_create_empty, gl_linked_create):
10906         (gl_linked_add_first, gl_linked_add_last, gl_linked_add_before):
10907         (gl_linked_add_after, gl_linked_add_at): Likewise.
10908         * lib/gl_anyrbtree_list2.h (create_subtree_with_contents):
10909         (gl_tree_create, gl_tree_add_first, gl_tree_add_last):
10910         (gl_tree_add_before, gl_tree_add_after): Likewise.
10911         * lib/gl_anytree_list2.h (gl_tree_create_empty): Likewise.
10912         * lib/gl_anytree_oset.h (gl_tree_create_empty): Likewise.
10913         * lib/gl_anytreehash_list1.h (add_to_bucket): Likewise.
10914
10915 2006-11-06  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
10916
10917         * lib/gl_oset.h: Use C comment style, not C++ comment style.
10918
10919 2006-11-06  Bruno Haible  <bruno@clisp.org>
10920
10921         * m4/inline.m4: New file.
10922         * m4/gl_list.m4 (gl_LIST): Require gl_INLINE.
10923         * modules/list (Files): Add m4/inline.m4.
10924         * modules/oset (Files): Likewise.
10925
10926 2006-11-06  Paul Eggert  <eggert@cs.ucla.edu>
10927
10928         * lib/idcache.c: Include <stddef.h>, for offsetof.
10929         (struct userid.name): Change from char * to a flexible array member.
10930         All uses changed.
10931         * modules/idcache (Depends-on): Add flexmember.
10932
10933         * MODULES.html.sh (Core language properties): New module flexmember.
10934         * modules/flexmember, m4/flexmember.m4: New files.
10935
10936         * lib/xalloc.h (xnmalloc, xnrealloc, x2nrealloc): Now static
10937         inline functions that are identical with the old xnmalloc_inline,
10938         xnrealloc_inline, x2nrealloc_inline of lib/xmalloc.c.  This is so
10939         that we can avoid some unnecessary integer multiplications and
10940         divisions in the common case where the element size is known at
10941         compile time.
10942         (XNMALLOC) [HAVE_INLINE]: Remove special case, which is no longer
10943         needed.
10944         (xnboundedmalloc): Remove.
10945         (XMALLOC, XNMALLOC, XZALLOC, XCALLOC): Use lower-case letters for
10946         arguments, for consistency with rest of this header.
10947         (xcharalloc): Rewrite using XNMALLOC.
10948         * lib/xmalloc.c (xnmalloc_inline, xnmalloc, xnrealloc_inline):
10949         (xnrealloc, x2nrealloc_inline, x2nrealloc): Remove.  The *_inline
10950         versions have been moved to lib/xalloc.h and renamed to be the
10951         non-*_inline versions.
10952         (xmalloc, xrealloc): Implement without reference to the xnmalloc
10953         and xnrealloc functions, since those functions are now inline and
10954         now call us.
10955         (x2realloc): Invoke x2realloc, not x2realloc_inline, to accommodate
10956         renaming described above.
10957         * m4/xalloc.m4 (gl_PREREQ_XMALLOC): Remove AC_C_INLINE since
10958         xmalloc.c no longer uses inline directly.  gl_PREREQ_XALLOC now
10959         captures the dependency in AC_C_INLINE.
10960
10961         New module canonicalize-lgpl, proposed by Charles Wilson in
10962         <http://lists.gnu.org/archive/html/bug-gnulib/2006-11/msg00020.html>
10963         with a few small changes afterwards.
10964         * MODULES.html.sh (File system functions): New module
10965         canonicalize-lgpl.
10966         * lib/canonicalize.h: Add comments for canonicalize_filename_mode
10967         and canonicalize_file_name.
10968         * lib/canonicalize-lgpl.c, m4/canonicalize-lgpl.m4:
10969         * modules/canonicalize-lgpl: New files.
10970
10971 2006-11-05  Bruno Haible  <bruno@clisp.org>
10972
10973         * gnulib-tool (func_import, func_create_testdir): Create directories
10974         also for files in subdirectories of lib/.
10975
10976 2006-11-05  Bruno Haible  <bruno@clisp.org>
10977
10978         * lib/gl_array_list.c (gl_array_iterator_next): Make pointer decrement
10979         ANSI C compliant.
10980
10981 2006-11-03  Bruno Haible  <bruno@clisp.org>
10982
10983         Simplify xmalloc expressions. Add overflow check in xmalloc arguments.
10984         * m4/xalloc.m4 (gl_PREREQ_XALLOC): Require AC_C_INLINE.
10985         * lib/xalloc.h (XMALLOC, XNMALLOC, XZALLOC, XCALLOC): New macros.
10986         (xnboundedmalloc): New inline function.
10987         * lib/classpath.c (new_classpath): Use XNMALLOC instead of xmalloc.
10988         * lib/clean-temp.c (create_temp_dir): Use XNMALLOC, XMALLOC instead of
10989         xmalloc.
10990         * lib/concatpath.c (concatenated_pathname): Use XNMALLOC instead of
10991         xmalloc.
10992         * lib/fatal-signal.c (at_fatal_signal): Use XNMALLOC instead of xmalloc.
10993         * lib/findprog.c (find_in_path): Use XNMALLOC instead of xmalloc.
10994         * lib/gl_array_list.c (gl_array_create_empty): Use XMALLOC instead of
10995         xmalloc.
10996         (gl_array_create): Use XNMALLOC, XMALLOC instead of xmalloc.
10997         * lib/gl_array_oset.c (gl_array_create_empty): Use XNMALLOC instead of
10998         xmalloc.
10999         * lib/gl_avltree_oset.c (gl_tree_add_first, gl_tree_add_before,
11000         gl_tree_add_after): Use XMALLOC instead of xmalloc.
11001         * lib/gl_carray_list.c (gl_carray_create_empty): Use XMALLOC instead of
11002         xmalloc.
11003         (gl_carray_create): Use XNMALLOC, XMALLOC instead of xmalloc.
11004         * lib/gl_rbtree_oset.c (gl_tree_add_first, gl_tree_add_before,
11005         gl_tree_add_after): Use XMALLOC instead of xmalloc.
11006         * lib/gl_sublist.c (gl_sublist_create): Use XMALLOC instead of xmalloc.
11007         * lib/pagealign_alloc.c (new_memnode): Use XMALLOC instead of xmalloc.
11008         * lib/sh-quote.c (shell_quote_argv): Use XNMALLOC instead of xmalloc.
11009         * lib/xvasprintf.c (xstrcat): Use XNMALLOC instead of xmalloc.
11010
11011 2006-11-03  Bruno Haible  <bruno@clisp.org>
11012
11013         * lib/c-ctype.h [C++]: Define functions without name mangling.
11014         * lib/fwriteerror.h [C++]: Likewise.
11015         * lib/gcd.h [C++]: Likewise.
11016         * lib/linebreak.h [C++]: Likewise.
11017
11018 2006-11-03  Paul Eggert  <eggert@cs.ucla.edu>
11019
11020         * lib/canonicalize.h: (canonicalize_mode_t, CAN_EXISTING):
11021         (CAN_ALL_BUT_LAST, CAN_MISSING, canonicalize_filename_mode):
11022         Define only if PROVIDE_CANONICALIZE_FILENAME_MODE is defined.
11023         * m4/canonicalize.m4 (AC_FUNC_CANONICALIZE_FILE_NAME):
11024         Check for functions and headers just once.
11025         Check for declaration of canonicalize_file_name.
11026         Define PROVIDE_CANONICALIZE_FILENAME_MODE.
11027
11028 2006-11-02  Charles Wilson  <cygwin@cwilson.fastmail.fm>
11029
11030         * gnulib-tool (func_import): Fix typo in actioncmd.
11031
11032 2006-11-02  Bruno Haible  <bruno@clisp.org>
11033
11034         * gnulib-tool (func_get_automake_snippet): Interpret a backslash-
11035         newline sequence in the Makefile.am snippet as a space, like "make"
11036         does.
11037         Reported by Roger Persson <perrog@gmail.com>.
11038
11039 2006-11-01  Bruno Haible  <bruno@clisp.org>
11040
11041         * m4/strcase.m4 (gl_FUNC_STRNCASECMP): Check whether strncasecmp is
11042         already declared in <string.h>.
11043         * lib/strcase.h (strncasecmp): Don't declare it if yes.
11044
11045 2006-11-01  Bruno Haible  <bruno@clisp.org>
11046
11047         * m4/strcase.m4 (gl_FUNC_STRCASECMP): Don't define strcasecmp here.
11048         * lib/strcase.h: Include <string.h>.
11049         (strcasecmp): Define to rpl_strcasecmp here.
11050
11051 2006-11-01  Bruno Haible  <bruno@clisp.org>
11052
11053         * lib/printf-parse.c (PRINTF_PARSE): Cast malloc/realloc results.
11054
11055 2006-11-01  Eric Blake  <ebb9@byu.net>
11056
11057         * lib/mkstemp-safer.c (mkstemp_safer): Allow C++ compilation.
11058
11059         * m4/mkstemp.m4 (gl_FUNC_MKSTEMP): Allow C++ configuration.
11060
11061 2006-10-29  Bruno Haible  <bruno@clisp.org>
11062
11063         Make it compile in C++ mode.
11064         * lib/full-write.c (full_rw): Add a cast.
11065
11066 2006-11-01  Bruno Haible  <bruno@clisp.org>
11067
11068         * gnulib-tool (func_get_automake_snippet): Change sed_combine_lines to
11069         be POSIX compliant.
11070         Reported by Roger Persson <perrog@gmail.com>.
11071
11072 2006-11-01  Eric Blake  <ebb9@byu.net>
11073
11074         * lib/getopt_.h: Fix comments.
11075
11076 2006-10-31  Eric Blake  <ebb9@byu.net>
11077
11078         * modules/tmpdir (Depends-on): Add sys_stat.
11079         * modules/mkdtemp (Depends-on): Add tempname, drop unistd.
11080         * lib/mkdtemp.c (gen_tempname): Remove; tempname covers this.
11081         * lib/tmpdir.c (S_ISDIR): Simplify, thanks to sys_stat.
11082         * m4/mkdtemp.m4 (gl_PREREQ_MKDTEMP): Simplify, thanks to
11083         tempname.
11084
11085 2006-10-31  Paul Eggert  <eggert@cs.ucla.edu>
11086
11087         Avoid some C++ diagnostics reported by Bruno Haible.
11088         * lib/quotearg.c (clone_quoting_options): Use xmemdup rather than
11089         xmalloc.
11090         (quotearg_alloc): Use xcharalloc rather than xmalloc.
11091         (struct slotvec): Move to top level.
11092         (quotearg_n_options): Rewrite to avoid xmalloc.
11093         * lib/xalloc.h (xcharalloc): New function.
11094         * (xrealloc, xnrealloc, x2realloc, x2nrealloc, xmemdup):
11095         [defined __cplusplus]: Add function template that provides result
11096         type propagation.  This part of the change is from Bruno Haible.
11097
11098 2006-10-29  Bruno Haible  <bruno@clisp.org>
11099
11100         Make it compile in C++ mode.
11101         * lib/striconv.c (mem_cd_iconv): Cast malloc/realloc result.
11102         * lib/strnlen1.c (strnlen1): Cast memchr result.
11103         * lib/mbchar.h (mb_copy): Rename arguments to 'new_mbc', 'old_mbc'.
11104         * lib/clean-temp.c (string_equals, string_hash): Add casts.
11105         (create_temp_dir): Rename local variable 'template'.
11106         (compile_csharp_using_sscli): Add cast.
11107         * lib/fatal-signal.c (at_fatal_signal): Cast xmalloc result.
11108         * lib/findprog.c (find_in_path): Likewise.
11109         * lib/linebreak.c (mbs_width_linebreaks): Cast malloc result.
11110         * lib/wait-process.c (register_slave_subprocess): Likewise.
11111
11112 2006-10-22  Bruno Haible  <bruno@clisp.org>
11113
11114         * modules/tsearch: New file.
11115         * lib/tsearch.h: New file.
11116         * lib/tsearch.c: New file, from glibc-2.5 with small modifications.
11117         * m4/tsearch.m4: New file.
11118         * MODULES.html.sh (Support for systems lacking POSIX:2001): Add tsearch.
11119
11120 2006-10-29  Eric Blake  <ebb9@byu.net>
11121
11122         * lib/arcfour.c: Assume config.h.
11123         * lib/arctwo.c: Likewise.
11124         * lib/base64.c: Likewise.
11125         * lib/check-version.c: Likewise.
11126         * lib/crc.c: Likewise.
11127         * lib/des.c: Likewise.
11128         * lib/gc-gnulib.c: Likewise.
11129         * lib/gc-libgcrypt.c: Likewise.
11130         * lib/gc-pbkdf2-sha1.c: Likewise.
11131         * lib/getaddrinfo.c: Likewise.
11132         * lib/getdelim.c: Likewise.
11133         * lib/getline.c: Likewise.
11134         * lib/hmac-md5.c: Likewise.
11135         * lib/hmac-sha1.c: Likewise.
11136         * lib/iconvme.c: Likewise.
11137         * lib/md2.c: Likewise.
11138         * lib/md4.c: Likewise.
11139         * lib/memxor.c: Likewise.
11140         * lib/read-file.c: Likewise.
11141         * lib/readline.c: Likewise.
11142         * lib/rijndael-alg-fst.c: Likewise.
11143         * lib/rijndael-api-fst.c: Likewise.
11144         * lib/xgetdomainname.c: Likewise.
11145
11146 2006-10-28  Eric Blake  <ebb9@byu.net>
11147
11148         * lib/xstrndup.c: Assume config.h.
11149
11150 2006-10-27  Paul Eggert  <eggert@cs.ucla.edu>
11151
11152         Move stat.h-substitute stuff from lib/stat-macros.h to lib/stat_.h.
11153         stat-macros.h is now for our own macros, whereas stat_h is for
11154         macros in the <sys/stat.h> name space.
11155         * lib/stat-macros.h: Remove copyright notice, as this file is now tiny.
11156         (STAT_MACROS_H): Remove.
11157         (S_IFMT, S_ISBLK, S_ISCHR, S_ISDIR, S_ISFIFO, S_ISLNK, S_ISNAM):
11158         (S_ISMPB, S_ISMPC, S_ISNWK, S_ISREG, S_ISSOCK, S_ISDOOR, S_ISPORT):
11159         (S_TYPEISMQ, S_TYPEISTMO, S_TYPEISSEM, S_TYPEISSHM, S_ISCTG, S_ISOFD):
11160         (S_ISOFL, S_ISWHT, S_ISUID, S_ISGID, S_ISVTX, S_IRUSR, S_IRGRP):
11161         (S_IROTH, S_IWUSR, S_IWGRP, S_IWOTH, S_IXUSR, S_IXGRP, S_IXOTH):
11162         (S_IRWXU, S_IRWXG, S_IRWXO, S_IXUGO, S_IRWXUGO):
11163         Move these macros to ...
11164         * lib/stat_.h: here.  Don't include stat-macros.h.
11165         * lib/canonicalize.c: Don't include stat-macros.h.
11166         * lib/chown.c: Likewise.
11167         * lib/euidaccess.c: Likewise.
11168         * lib/file-type.c: Likewise.
11169         * lib/filemode.c: Likewise.
11170         * lib/glob.c: Likewise.
11171         * lib/isapipe.c: Likewise.
11172         * lib/lchown.c: Likewise.
11173         * lib/lstat.c: Likewise.
11174         * lib/mkdir-p.c: Likewise.
11175         * lib/rmdir.c: Likewise.
11176         * m4/lchown.m4 (gl_FUNC_LCHOWN): Don't require gl_STAT_MACROS.
11177         * m4/sys_stat_h.m4 (gl_HEADER_SYS_STAT_H): Don't check for io.h
11178         unless mkdir isn't declared, to speed up 'configure'.
11179         Always create sys/stat.h, since it's unlikely any real sys/stat.h
11180         would define all the S_* symbols.
11181         * modules/canonicalize (Depends-on):
11182         Depend on sys_stat, not stat-macros.
11183         * modules/chown: Likewise.
11184         * modules/euidaccess: Likewise.
11185         * modules/filemode: Likewise.
11186         * modules/file-type: Likewise.
11187         * modules/glob: Likewise.
11188         * modules/isapipe: Likewise.
11189         * modules/lchown: Likewise.
11190         * modules/lstat: Likewise.
11191         * modules/mkancesdirs: Likewise.
11192         * modules/rmdir: Likewise.
11193         * modules/mkdir-p (Depends-on): Also depend on sys_stat.
11194         * modules/modechange: Likewise.
11195         * modules/stat-macros (Files): Remove m4/stat-macros.m4.
11196         (configure.ac): Remove gl_STAT_MACROS.
11197         * modules/sys_stat (Depends-on): Remove stat-macros.
11198
11199 2006-10-27  Bruno Haible  <bruno@clisp.org>
11200
11201         * m4/signed.m4: Remove file.
11202         * m4/vasnprintf.m4 (gl_PREREQ_PRINTF_ARGS_: Remove bh_C_SIGNED
11203         invocation.
11204         * modules/vasnprintf (Files): Remove m4/signed.m4.
11205
11206 2006-10-27  Bruno Haible  <bruno@clisp.org>
11207
11208         Update to GNU gettext 0.16.
11209         * modules/gettext (Files): Add m4/intl.m4, m4/intldir.m4. Remove
11210         m4/inttypes-h.m4, m4/signed.m4.
11211         * m4/gettext.m4: Update to GNU gettext 0.16.
11212         * m4/intl.m4: New file, from GNU gettext.
11213         * m4/intldir.m4: New file, from GNU gettext.
11214         * config/srclist.txt: Update
11215
11216 2006-10-27  Eric Blake  <ebb9@byu.net>
11217
11218         * MODULES.html.sh: Document tempname.
11219         * modules/mkstemp (Depends-on): Add tempname, and drop transitive
11220         dependencies.
11221         (Files): Move lib/tempname.c...
11222         * modules/tempname: ...to this new module.
11223         * m4/mkstemp.m4 (gl_FUNC_MKSTEMP): Remove tempname checks.
11224         (gl_PREREQ_TEMPNAME): Move...
11225         * m4/tempname.m4: ...to this new file.
11226         * lib/mkstemp.c (includes) [!_LIBC]: Use tempname.h.
11227         * modules/sys_stat (Depends-on): Add stat-macros.
11228         * lib/stat_.h (includes): Pick up stat macros.
11229         * m4/sys_stat_h.m4 (gl_HEADER_SYS_STAT_H): Replace <sys/stat.h>
11230         if stat macros are broken.
11231         * lib/tempname.c (includes): No need to include "stat-macros.h".
11232         (__gen_tempname) [!_LIBC]: Expose as gen_tempname.
11233         (direxists, __path_search) [!_LIBC]: Don't compile these in
11234         gnulib; the tmpdir module covers that.
11235         * lib/tempname.h: New file.
11236
11237 2006-10-26  Paul Eggert  <eggert@cs.ucla.edu>
11238
11239         * COPYING: Explain how gnulib-tool converts licence headers.
11240         Almost all wording by Eric Blake.
11241
11242 2006-10-25  Paul Eggert  <eggert@cs.ucla.edu>
11243
11244         * lib/mbchar.h (is_basic_table): Make read-only.
11245         * lib/mbchar.c (is_basic_table): Likewise.
11246         Reported by John Darrington.
11247
11248 2006-10-25  Bruno Haible  <bruno@clisp.org>
11249
11250         * lib/progname.h (set_program_name): Undefine before defining.
11251
11252 2006-10-25  Bruno Haible  <bruno@clisp.org>
11253
11254         * lib/gettext.h (_LIBGETTEXT_HAVE_VARIABLE_SIZE_ARRAYS): Define to
11255         false for non-gcc C++ compilers.
11256         Reported by Nelson H. F. Beebe <beebe@math.utah.edu>.
11257
11258 2006-10-24  Bruno Haible  <bruno@clisp.org>
11259
11260         * lib/striconv.c (mem_cd_iconv, str_cd_iconv): Treat all non-GNU
11261         iconv implementations like Irix iconv.
11262
11263 2006-10-24  Paul Eggert  <eggert@cs.ucla.edu>
11264
11265         * modules/vararrays: New file.
11266         * m4/vararrays.m4: New file, taken from diffutils.
11267         * MODULES.html.sh: New module vararrays.
11268
11269 2006-10-24  Karl Berry  <karl@gnu.org>
11270
11271         * doc/gnulib-intro.texi: --- instead of --; non-naive naive.
11272         Don't call GNU Unix.
11273
11274 2006-10-24  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
11275
11276         * users.txt: Add Libtool.
11277
11278         Sync from Libtool:
11279
11280         2006-10-24  Paul Eggert  <eggert@cs.ucla.edu>
11281
11282         * lib/argz.c: Remove check for HAVE_CONFIG_H, to conform
11283         to gnulib's policy of including config.h unconditionally.
11284
11285 2006-10-24  Bruno Haible  <bruno@clisp.org>
11286
11287         * modules/wcwidth (Files): Add m4/wint_t.m4.
11288         * m4/wcwidth.m4 (gl_FUNC_WCWIDTH): Require gt_TYPE_WINT_T.
11289         * lib/wcwidth.h (iswprint): Use 'int' if 'wint_t' is not defined.
11290
11291 2006-10-24  Paul Eggert  <eggert@cs.ucla.edu>
11292
11293         * lib/getdate.y (yyerror): Make the arguments pointer-to-const,
11294         to pacify GCC with some -W flags enabled.  Problem reported by
11295         Bruno Haible.
11296
11297 2006-10-24  Jim Meyering  <jim@meyering.net>
11298
11299         * MODULES.html.sh: Remove uinttostr.  It's not a module.
11300         Reported by Karl Berry.
11301
11302 2006-10-23  Bruno Haible  <bruno@clisp.org>
11303
11304         * lib/fts.c (fts_build): Move variable declaration, for C89 compliance.
11305
11306 2006-10-24  Bruno Haible  <bruno@clisp.org>
11307
11308         * lib/gl_list.h: Use C comment style, not C++ comment style.
11309
11310 2006-10-23  Eric Blake  <ebb9@byu.net>
11311
11312         * lib/getaddrinfo.c (includes): Add missing include.
11313
11314 2006-10-23  Bruno Haible  <bruno@clisp.org>
11315             Paul Eggert  <eggert@cs.ucla.edu>
11316
11317         Ability to rename obstack_free.
11318         * lib/obstack.h (__obstack_free): New macro. Declare instead of
11319         obstack_free.
11320         (obstack_free): Invoke the __obstack_free macro.
11321         * lib/obstack.c (obstack_free): Use __obstack_free macro.
11322
11323 2006-10-23  Bruno Haible  <bruno@clisp.org>
11324             Paul Eggert  <eggert@cs.ucla.edu>
11325
11326         * lib/argp.h (argp_parse, __argp_parse): Comment out the identifiers
11327         __argc, __argv from the declaration. (They are defined as macros on
11328         mingw.)
11329
11330 2006-10-22  Bruno Haible  <bruno@clisp.org>
11331
11332         * doc/gnulib-intro.texi: New file.
11333         * doc/gnulib.texi: Include it.
11334
11335 2006-10-21  Bruno Haible  <bruno@clisp.org>
11336
11337         * doc/gnulib.texi: Split the chapter "Gnulib" into 3 chapters
11338         "Introduction", "Miscellanous Notes", "Particular Modules".
11339
11340 2006-10-21  Bruno Haible  <bruno@clisp.org>
11341
11342         * gnulib-tool (func_emit_lib_Makefile_am, func_emit_tests_Makefile_am):
11343         Change mostlyclean-local rule to avoid sh syntax error from bash
11344         versions 2.00..2.05 when $(MOSTLYCLEANDIRS) is empty.
11345
11346 2006-10-23  Jim Meyering  <jim@meyering.net>
11347
11348         * lib/getaddrinfo.c (getnameinfo): Use new lightweight uinttostr,
11349         in place of snprintf.
11350
11351         * modules/inttostr (Files): Add lib/uinttostr.c.
11352         * lib/uinttostr.c (inttostr): New file/function.
11353         * lib/inttostr.h (uinttostr): Declare.
11354         * m4/inttostr.m4: Add AC_LIBOBJ([uinttostr]).
11355         * MODULES.html.sh (Numeric conversion functions <stdlib.h>):
11356         Add uinttostr.
11357         * modules/getaddrinfo (Depends-on): Remove snprintf.  Add inttostr.
11358
11359 2006-10-21  Paul Eggert  <eggert@cs.ucla.edu>
11360
11361         * lib/canonicalize.c (ELOOP): Define if not already defined.
11362         Problem reported by Bruno Haible in
11363         <http://lists.gnu.org/archive/html/bug-gnulib/2006-10/msg00282.html>.
11364
11365 2006-10-21  Paul Eggert  <eggert@cs.ucla.edu>
11366
11367         * lib/stdint_.h [defined _AIX]: Don't include <sys/types.h>.
11368         Problem reported by Perry Smith and Ville Laurikari.
11369
11370         * lib/getndelim2.c (SSIZE_MAX): Use same defn that getdelim.c
11371         uses.
11372
11373 2006-10-19  Bruno Haible  <bruno@clisp.org>
11374
11375         * lib/getndelim2.c (SSIZE_MAX): Provide fallback definition. Needed
11376         for mingw.
11377
11378 2006-10-19  Bruno Haible  <bruno@clisp.org>
11379
11380         * lib/openat-priv.h (EOPNOTSUPP): Provide fallback definition.
11381         Needed for mingw.
11382
11383 2006-10-19  Bruno Haible  <bruno@clisp.org>
11384
11385         * m4/size_max.m4 (gl_SIZE_MAX): Cache the result.
11386
11387 2006-10-19  Bruno Haible  <bruno@clisp.org>
11388
11389         * m4/allocsa.m4 (gl_ALLOCSA): Invoke gl_FUNC_ALLOCA, don't AC_REQUIRE
11390         it.
11391
11392 2006-10-19  Bruno Haible  <bruno@clisp.org>
11393
11394         * m4/alloca.m4 (gl_FUNC_ALLOCA): Cache the result of the AC_EGREP_CPP
11395         invocation.
11396
11397 2006-10-19  Bruno Haible  <bruno@clisp.org>
11398
11399         * gnulib-tool (func_create_testdir): Don't include ftruncate and
11400         mountlist by default.
11401
11402 2006-10-16  Bruno Haible  <bruno@clisp.org>
11403
11404         * lib/c-strstr.c: Include c-strstr.h.
11405
11406 2006-10-18  Charles Wilson  <cygwin@cwilson.fastmail.fm>
11407
11408         * gnulib-tool: Don't clobber $sourcebase when $local_gnulib_dir ends
11409         in a slash.
11410
11411 2006-10-18  Bruno Haible  <bruno@clisp.org>
11412
11413         * lib/lock.h [C++]: Wrap definitions in extern "C".
11414
11415 2006-10-18  Bruno Haible  <bruno@clisp.org>
11416
11417         * gnulib-tool (func_emit_initmacro_end): Remove duplicates from the
11418         gl_LIBOBJS list.
11419
11420 2006-10-18  Bruno Haible  <bruno@clisp.org>
11421
11422         * lib/findprog.c (find_in_path): Avoid "gcc -Wwrite-strings" warning.
11423
11424 2006-10-19  Paul Eggert  <eggert@cs.ucla.edu>
11425
11426         * lib/xstrtol.h: Include gettext.h.
11427         (_STRTOL_ERROR): Wrap English-language formats inside gettext.
11428         Problem reported by Eric Blake.
11429         * modules/xstrtol (Depends-on): Add gettext-h.
11430
11431 2006-10-19  Paul Eggert  <eggert@cs.ucla.edu>  (tiny change)
11432
11433         * lib/strftime.c (advance): New macro.
11434         (add): Use it to avoid adding 0 to a FILE *.  FILE can be an
11435         incomplete type, so you can't add 0 to it.  Problem and patch
11436         reported by Eelco Dolstra for dietlibc.
11437
11438 2006-10-18  Jim Meyering  <jim@meyering.net>
11439
11440         * lib/readutmp.c (desirable_utmp_entry): Use "bool" as the
11441         type for a local, and rename it: s/up/user_proc/.
11442
11443 2006-10-18  Sergey Poznyakoff  <gray@gnu.org.ua>
11444
11445         * lib/readutmp.c (desirable_utmp_entry): Implement new flag:
11446         READ_UTMP_USER_PROCESS.
11447         * lib/readutmp.h (READ_UTMP_USER_PROCESS): New flag
11448
11449 2006-10-17  Paul Eggert  <eggert@cs.ucla.edu>
11450
11451         * lib/localcharset.c: Do not check HAVE_SETLOCALE.
11452         * m4/localcharset.m4 (gl_LOCALCHARSET): Don't check for setlocale.
11453
11454 2006-10-17  Eric Blake  <ebb9@byu.net>
11455
11456         * lib/sigprocmask.c (sigprocmask): Fix typo.
11457
11458         * m4/signalblocking.m4 (gl_PREREQ_SIGPROCMASK): Fix typo.
11459
11460         * modules/clean-temp (Makefile.am): Don't add to make output...
11461         (configure.ac): ...instead define SIGNAL_SAFE_LIST inside
11462         config.h.
11463
11464 2006-10-17  Bruno Haible  <bruno@clisp.org>
11465
11466         * lib/gettext.h (gettext, ngettext, pgettext, npgettext): Define
11467         differently if DEFAULT_TEXT_DOMAIN is set.
11468
11469 2006-10-16  Bruno Haible  <bruno@clisp.org>
11470
11471         * lib/clean-temp.c: Include fwriteerror.h.
11472
11473 2006-10-16  Bruno Haible  <bruno@clisp.org>
11474
11475         * getndelim2.m4 (gl_GETNDELIM2): Remove 2003-10-23 hack.
11476
11477 2006-10-16  Bruno Haible  <bruno@clisp.org>
11478
11479         * m4/signalblocking.m4 (gl_PREREQ_SIGPROCMASK): Also test for sigset_t.
11480         * lib/sigprocmask.h: Include <sys/types.h>.
11481         (sigset_t): Use the system's definition if present.
11482
11483 2006-10-17  Eric Blake  <ebb9@byu.net>
11484
11485         * lib/xvasprintf.c (includes): Assume config.h.
11486         * lib/xasprintf.c (includes): Likewise.
11487
11488 2006-10-16  Paul Eggert  <eggert@cs.ucla.edu>
11489
11490         * lib/fsusage.c (PROPAGATE_ALL_ONES): Don't assume uintmax_t is
11491         at least as wide as intmax_t.
11492
11493 2006-10-16  Alexandre Duret-Lutz  <adl@gnu.org>
11494
11495         (Imported from Automake.)
11496         * build-aux/gnupload: Update to version 1.1 of directive file.
11497
11498 2006-10-16  Eric Blake  <ebb9@byu.net>
11499
11500         * modules/configmake (Makefile.am): Add pkglibexecdir support, to
11501         match Automake 1.10a.
11502
11503 2006-10-14  Bruno Haible  <bruno@clisp.org>
11504
11505         * modules/sigprocmask: New file.
11506         * lib/sigprocmask.h: New file.
11507         * lib/sigprocmask.c: New file.
11508         * m4/signalblocking.m4 (gl_SIGNALBLOCKING): Renamed from
11509         gt_SIGNALBLOCKING. When not defining HAVE_POSIX_SIGNALBLOCKING,
11510         request sigprocmask.o.
11511         (gl_PREREQ_SIGPROCMASK): New macro.
11512         * modules/fatal-signal (Files): Remove m4/signalblocking.m4.
11513         (Depends-on): Add sigprocmask.
11514         * m4/fatal-signal.m4 (gl_FATAL_SIGNAL): Don't require
11515         gt_SIGNALBLOCKING. Test for 'raise' only once.
11516         * lib/fatal-signal.c: Include sigprocmask.h.
11517         (fatal_signal_set, init_fatal_signal_set, block_fatal_signals,
11518         unblock_fatal_signals): Define always.
11519         * MODULES.html.sh (Support for systems lacking POSIX:2001): Add
11520         sigprocmask.
11521
11522 2006-10-14  Paul Eggert  <eggert@cs.ucla.edu>
11523
11524         Sync from Automake.
11525         * build-aux/install-sh (posix_mkdir): Reject FreeBSD 6.1 mkdir -p -m,
11526         which incorrectly sets the mode of an existing destination
11527         directory.  In some cases the unpatched install-sh could do the
11528         equivalent of "chmod 777 /" or "chmod 0 /" on a buggy FreeBSD
11529         system.  We hope this is rare in practice, but it's clearly worth
11530         fixing.  Problem reported by Alex Unleashed in
11531         <http://lists.gnu.org/archive/html/bug-autoconf/2006-10/msg00012.html>.
11532         Also, don't bother to check for -m bugs unless we're using -m;
11533         suggested by Stepan Kasal.
11534
11535 2006-10-14  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
11536
11537         Sync from Automake.
11538         * build-aux/depcomp (gcc3): Put dependency extraction flags before the
11539         `-c' flag, so they appear at the same position as in %FASTDEP%
11540         mode in depend2.am.  Fixes build failure for FreeBSD's c89,
11541         which ignores unknown options only after the first non-option.
11542         Bug report against M4 by Nelson H. F. Beebe.
11543
11544 2006-10-13  Jim Meyering  <jim@meyering.net>
11545
11546         Fix a bug in yesterday's change.
11547         * lib/fts.c (fts_open): When using FTS_XDEV|FTS_NOSTAT,
11548         p->fts_statp->st_dev would be used uninitialized.
11549         Ensures that we always call fts_stat on the very first entry.
11550         Miklos Szeredi reported that find -xdev stopped working.
11551
11552 2006-10-12  Bruno Haible  <bruno@clisp.org>
11553
11554         * gnulib-tool (func_get_automake_snippet): Append an automatically
11555         computed EXTRA_DIST augmentation.
11556         * modules/acl (Makefile.am): Remove EXTRA_DIST augmentation.
11557         * modules/alloca-opt (Makefile.am): Likewise.
11558         * modules/allocsa (Makefile.am): Likewise.
11559         * modules/arcfour (Makefile.am): Likewise.
11560         * modules/arctwo (Makefile.am): Likewise.
11561         * modules/argmatch (Makefile.am): Likewise.
11562         * modules/argz (Makefile.am): Likewise.
11563         * modules/atexit (Makefile.am): Likewise.
11564         * modules/backupfile (Makefile.am): Likewise.
11565         * modules/byteswap (Makefile.am): Likewise.
11566         * modules/c-strtod (Makefile.am): Likewise.
11567         * modules/c-strtold (Makefile.am): Likewise.
11568         * modules/calloc (Makefile.am): Likewise.
11569         * modules/canon-host (Makefile.am): Likewise.
11570         * modules/canonicalize (Makefile.am): Likewise.
11571         * modules/chdir-long (Makefile.am): Likewise.
11572         * modules/chdir-safer (Makefile.am): Likewise.
11573         * modules/check-version (Makefile.am): Likewise.
11574         * modules/chown (Makefile.am): Likewise.
11575         * modules/cloexec (Makefile.am): Likewise.
11576         * modules/close-stream (Makefile.am): Likewise.
11577         * modules/closeout (Makefile.am): Likewise.
11578         * modules/crc (Makefile.am): Likewise.
11579         * modules/csharpexec (Makefile.am): Likewise.
11580         * modules/cycle-check (Makefile.am): Likewise.
11581         * modules/des (Makefile.am): Likewise.
11582         * modules/dev-ino (Makefile.am): Likewise.
11583         * modules/dirfd (Makefile.am): Likewise.
11584         * modules/dirname (Makefile.am): Likewise.
11585         * modules/dup2 (Makefile.am): Likewise.
11586         * modules/eealloc (Makefile.am): Likewise.
11587         * modules/error (Makefile.am): Likewise.
11588         * modules/euidaccess (Makefile.am): Likewise.
11589         * modules/exclude (Makefile.am): Likewise.
11590         * modules/exitfail (Makefile.am): Likewise.
11591         * modules/fcntl-safer (Makefile.am): Likewise.
11592         * modules/fcntl (Makefile.am): Likewise.
11593         * modules/file-type (Makefile.am): Likewise.
11594         * modules/fileblocks (Makefile.am): Likewise.
11595         * modules/filemode (Makefile.am): Likewise.
11596         * modules/filenamecat (Makefile.am): Likewise.
11597         * modules/fnmatch (Makefile.am): Likewise.
11598         * modules/fopen-safer (Makefile.am): Likewise.
11599         * modules/fpending (Makefile.am): Likewise.
11600         * modules/fprintftime (Makefile.am): Likewise.
11601         * modules/free (Makefile.am): Likewise.
11602         * modules/fsusage (Makefile.am): Likewise.
11603         * modules/ftruncate (Makefile.am): Likewise.
11604         * modules/fts (Makefile.am): Likewise.
11605         * modules/gc-arcfour (Makefile.am): Likewise.
11606         * modules/gc-des (Makefile.am): Likewise.
11607         * modules/gc-hmac-md5 (Makefile.am): Likewise.
11608         * modules/gc-hmac-sha1 (Makefile.am): Likewise.
11609         * modules/gc-md4 (Makefile.am): Likewise.
11610         * modules/gc-pbkdf2-sha1 (Makefile.am): Likewise.
11611         * modules/gc-sha1 (Makefile.am): Likewise.
11612         * modules/gc (Makefile.am): Likewise.
11613         * modules/getaddrinfo (Makefile.am): Likewise.
11614         * modules/getcwd (Makefile.am): Likewise.
11615         * modules/getdelim (Makefile.am): Likewise.
11616         * modules/getdomainname (Makefile.am): Likewise.
11617         * modules/getgroups (Makefile.am): Likewise.
11618         * modules/gethostname (Makefile.am): Likewise.
11619         * modules/gethrxtime (Makefile.am): Likewise.
11620         * modules/getline (Makefile.am): Likewise.
11621         * modules/getloadavg (Makefile.am): Likewise.
11622         * modules/getlogin_r (Makefile.am): Likewise.
11623         * modules/getndelim2 (Makefile.am): Likewise.
11624         * modules/getopt (Makefile.am): Likewise.
11625         * modules/getpagesize (Makefile.am): Likewise.
11626         * modules/getpass-gnu (Makefile.am): Likewise.
11627         * modules/getpass (Makefile.am): Likewise.
11628         * modules/getsubopt (Makefile.am): Likewise.
11629         * modules/gettime (Makefile.am): Likewise.
11630         * modules/gettimeofday (Makefile.am): Likewise.
11631         * modules/getugroups (Makefile.am): Likewise.
11632         * modules/getusershell (Makefile.am): Likewise.
11633         * modules/glob (Makefile.am): Likewise.
11634         * modules/group-member (Makefile.am): Likewise.
11635         * modules/hard-locale (Makefile.am): Likewise.
11636         * modules/hash (Makefile.am): Likewise.
11637         * modules/hmac-md5 (Makefile.am): Likewise.
11638         * modules/hmac-sha1 (Makefile.am): Likewise.
11639         * modules/human (Makefile.am): Likewise.
11640         * modules/idcache (Makefile.am): Likewise.
11641         * modules/imaxabs (Makefile.am): Likewise.
11642         * modules/imaxdiv (Makefile.am): Likewise.
11643         * modules/inet_ntop (Makefile.am): Likewise.
11644         * modules/inet_pton (Makefile.am): Likewise.
11645         * modules/intprops (Makefile.am): Likewise.
11646         * modules/inttostr (Makefile.am): Likewise.
11647         * modules/inttypes (Makefile.am): Likewise.
11648         * modules/isapipe (Makefile.am): Likewise.
11649         * modules/javaversion (Makefile.am): Likewise.
11650         * modules/lchmod (Makefile.am): Likewise.
11651         * modules/lchown (Makefile.am): Likewise.
11652         * modules/localcharset (Makefile.am): Likewise.
11653         * modules/long-options (Makefile.am): Likewise.
11654         * modules/lstat (Makefile.am): Likewise.
11655         * modules/malloc (Makefile.am): Likewise.
11656         * modules/mathl (Makefile.am): Likewise.
11657         * modules/mbchar (Makefile.am): Likewise.
11658         * modules/md2 (Makefile.am): Likewise.
11659         * modules/md4 (Makefile.am): Likewise.
11660         * modules/md5 (Makefile.am): Likewise.
11661         * modules/memcasecmp (Makefile.am): Likewise.
11662         * modules/memchr (Makefile.am): Likewise.
11663         * modules/memcmp (Makefile.am): Likewise.
11664         * modules/memcoll (Makefile.am): Likewise.
11665         * modules/memcpy (Makefile.am): Likewise.
11666         * modules/memmem (Makefile.am): Likewise.
11667         * modules/memmove (Makefile.am): Likewise.
11668         * modules/mempcpy (Makefile.am): Likewise.
11669         * modules/memrchr (Makefile.am): Likewise.
11670         * modules/memset (Makefile.am): Likewise.
11671         * modules/memxor (Makefile.am): Likewise.
11672         * modules/mkancesdirs (Makefile.am): Likewise.
11673         * modules/mkdir-p (Makefile.am): Likewise.
11674         * modules/mkdir (Makefile.am): Likewise.
11675         * modules/mkdtemp (Makefile.am): Likewise.
11676         * modules/mkstemp (Makefile.am): Likewise.
11677         * modules/mktime (Makefile.am): Likewise.
11678         * modules/modechange (Makefile.am): Likewise.
11679         * modules/mountlist (Makefile.am): Likewise.
11680         * modules/nanosleep (Makefile.am): Likewise.
11681         * modules/obstack (Makefile.am): Likewise.
11682         * modules/openat (Makefile.am): Likewise.
11683         * modules/pagealign_alloc (Makefile.am): Likewise.
11684         * modules/pathmax (Makefile.am): Likewise.
11685         * modules/physmem (Makefile.am): Likewise.
11686         * modules/poll (Makefile.am): Likewise.
11687         * modules/posixtm (Makefile.am): Likewise.
11688         * modules/posixver (Makefile.am): Likewise.
11689         * modules/putenv (Makefile.am): Likewise.
11690         * modules/quote (Makefile.am): Likewise.
11691         * modules/quotearg (Makefile.am): Likewise.
11692         * modules/raise (Makefile.am): Likewise.
11693         * modules/read-file (Makefile.am): Likewise.
11694         * modules/readline (Makefile.am): Likewise.
11695         * modules/readlink (Makefile.am): Likewise.
11696         * modules/readtokens (Makefile.am): Likewise.
11697         * modules/readutmp (Makefile.am): Likewise.
11698         * modules/realloc (Makefile.am): Likewise.
11699         * modules/regex (Makefile.am): Likewise.
11700         * modules/rename-dest-slash (Makefile.am): Likewise.
11701         * modules/rename (Makefile.am): Likewise.
11702         * modules/rijndael (Makefile.am): Likewise.
11703         * modules/rmdir (Makefile.am): Likewise.
11704         * modules/rpmatch (Makefile.am): Likewise.
11705         * modules/safe-read (Makefile.am): Likewise.
11706         * modules/safe-write (Makefile.am): Likewise.
11707         * modules/same-inode (Makefile.am): Likewise.
11708         * modules/same (Makefile.am): Likewise.
11709         * modules/save-cwd (Makefile.am): Likewise.
11710         * modules/savedir (Makefile.am): Likewise.
11711         * modules/setenv (Makefile.am): Likewise.
11712         * modules/settime (Makefile.am): Likewise.
11713         * modules/sha1 (Makefile.am): Likewise.
11714         * modules/sig2str (Makefile.am): Likewise.
11715         * modules/snprintf (Makefile.am): Likewise.
11716         * modules/stat-macros (Makefile.am): Likewise.
11717         * modules/stat-time (Makefile.am): Likewise.
11718         * modules/stdbool (Makefile.am): Likewise.
11719         * modules/stdint (Makefile.am): Likewise.
11720         * modules/stdlib-safer (Makefile.am): Likewise.
11721         * modules/stpcpy (Makefile.am): Likewise.
11722         * modules/stpncpy (Makefile.am): Likewise.
11723         * modules/strcase (Makefile.am): Likewise.
11724         * modules/strcasestr (Makefile.am): Likewise.
11725         * modules/strchrnul (Makefile.am): Likewise.
11726         * modules/strcspn (Makefile.am): Likewise.
11727         * modules/strdup (Makefile.am): Likewise.
11728         * modules/strerror (Makefile.am): Likewise.
11729         * modules/strftime (Makefile.am): Likewise.
11730         * modules/strndup (Makefile.am): Likewise.
11731         * modules/strnlen (Makefile.am): Likewise.
11732         * modules/strpbrk (Makefile.am): Likewise.
11733         * modules/strsep (Makefile.am): Likewise.
11734         * modules/strstr (Makefile.am): Likewise.
11735         * modules/strtod (Makefile.am): Likewise.
11736         * modules/strtoimax (Makefile.am): Likewise.
11737         * modules/strtok_r (Makefile.am): Likewise.
11738         * modules/strtol (Makefile.am): Likewise.
11739         * modules/strtoll (Makefile.am): Likewise.
11740         * modules/strtoul (Makefile.am): Likewise.
11741         * modules/strtoull (Makefile.am): Likewise.
11742         * modules/strtoumax (Makefile.am): Likewise.
11743         * modules/strverscmp (Makefile.am): Likewise.
11744         * modules/sys_socket (Makefile.am): Likewise.
11745         * modules/sys_stat (Makefile.am): Likewise.
11746         * modules/sysexits (Makefile.am): Likewise.
11747         * modules/time_r (Makefile.am): Likewise.
11748         * modules/timegm (Makefile.am): Likewise.
11749         * modules/timespec (Makefile.am): Likewise.
11750         * modules/tmpfile-safer (Makefile.am): Likewise.
11751         * modules/trim (Makefile.am): Likewise.
11752         * modules/unistd-safer (Makefile.am): Likewise.
11753         * modules/unlinkdir (Makefile.am): Likewise.
11754         * modules/unlocked-io (Makefile.am): Likewise.
11755         * modules/userspec (Makefile.am): Likewise.
11756         * modules/utime (Makefile.am): Likewise.
11757         * modules/utimecmp (Makefile.am): Likewise.
11758         * modules/utimens (Makefile.am): Likewise.
11759         * modules/vasnprintf (Makefile.am): Likewise.
11760         * modules/vasprintf (Makefile.am): Likewise.
11761         * modules/vsnprintf (Makefile.am): Likewise.
11762         * modules/xalloc (Makefile.am): Likewise.
11763         * modules/xgetcwd (Makefile.am): Likewise.
11764         * modules/xnanosleep (Makefile.am): Likewise.
11765         * modules/xreadlink (Makefile.am): Likewise.
11766         * modules/xstrtod (Makefile.am): Likewise.
11767         * modules/xstrtol (Makefile.am): Likewise.
11768         * modules/xstrtold (Makefile.am): Likewise.
11769         * modules/yesno (Makefile.am): Likewise.
11770         * modules/getdate (Makefile.am): Don't add getdate.h to EXTRA_DIST.
11771
11772 2006-10-12  Paul Eggert  <eggert@cs.ucla.edu>
11773
11774         * modules/error (Makefile.am): Distribute files through
11775         EXTRA_DIST, not lib_SOURCES.
11776
11777 2006-10-12  Eric Blake  <ebb9@byu.net>
11778
11779         * modules/error (Makefile.am): Distribute files in /lib.
11780         * modules/obstack (Makefile.am): Likewise.
11781
11782 2006-10-12  Bruno Haible  <bruno@clisp.org>
11783
11784         * modules/acl (Makefile.am): Distribute all files in lib/ through
11785         EXTRA_DIST.
11786         * modules/arcfour (Makefile.am): Likewise.
11787         * modules/arctwo (Makefile.am): Likewise.
11788         * modules/argmatch (Makefile.am): Likewise.
11789         * modules/argz (Makefile.am): Likewise.
11790         * modules/atexit (Makefile.am): Likewise.
11791         * modules/backupfile (Makefile.am): Likewise.
11792         * modules/c-strtod (Makefile.am): Likewise.
11793         * modules/c-strtold (Makefile.am): Likewise.
11794         * modules/calloc (Makefile.am): Likewise.
11795         * modules/canon-host (Makefile.am): Likewise.
11796         * modules/canonicalize (Makefile.am): Likewise.
11797         * modules/chdir-long (Makefile.am): Likewise.
11798         * modules/chdir-safer (Makefile.am): Likewise.
11799         * modules/check-version (Makefile.am): Likewise.
11800         * modules/chown (Makefile.am): Likewise.
11801         * modules/cloexec (Makefile.am): Likewise.
11802         * modules/close-stream (Makefile.am): Likewise.
11803         * modules/closeout (Makefile.am): Likewise.
11804         * modules/crc (Makefile.am): Likewise.
11805         * modules/cycle-check (Makefile.am): Likewise.
11806         * modules/des (Makefile.am): Likewise.
11807         * modules/dirfd (Makefile.am): Likewise.
11808         * modules/dirname (Makefile.am): Likewise.
11809         * modules/dup2 (Makefile.am): Likewise.
11810         * modules/euidaccess (Makefile.am): Likewise.
11811         * modules/exclude (Makefile.am): Likewise.
11812         * modules/exitfail (Makefile.am): Likewise.
11813         * modules/fcntl-safer (Makefile.am): Likewise.
11814         * modules/file-type (Makefile.am): Likewise.
11815         * modules/fileblocks (Makefile.am): Likewise.
11816         * modules/filemode (Makefile.am): Likewise.
11817         * modules/filenamecat (Makefile.am): Likewise.
11818         * modules/fnmatch (Makefile.am): Likewise.
11819         * modules/fopen-safer (Makefile.am): Likewise.
11820         * modules/fpending (Makefile.am): Likewise.
11821         * modules/fprintftime (Makefile.am): Likewise.
11822         * modules/free (Makefile.am): Likewise.
11823         * modules/fsusage (Makefile.am): Likewise.
11824         * modules/ftruncate (Makefile.am): Likewise.
11825         * modules/fts (Makefile.am): Likewise.
11826         * modules/gc (Makefile.am): Likewise.
11827         * modules/gc-pbkdf2-sha1 (Makefile.am): Likewise.
11828         * modules/getaddrinfo (Makefile.am): Likewise.
11829         * modules/getcwd (Makefile.am): Likewise.
11830         * modules/getdelim (Makefile.am): Likewise.
11831         * modules/getdomainname (Makefile.am): Likewise.
11832         * modules/getgroups (Makefile.am): Likewise.
11833         * modules/gethostname (Makefile.am): Likewise.
11834         * modules/gethrxtime (Makefile.am): Likewise.
11835         * modules/getline (Makefile.am): Likewise.
11836         * modules/getloadavg (Makefile.am): Likewise.
11837         * modules/getlogin_r (Makefile.am): Likewise.
11838         * modules/getopt (Makefile.am): Likewise.
11839         * modules/getpass (Makefile.am): Likewise.
11840         * modules/getpass-gnu (Makefile.am): Likewise.
11841         * modules/getsubopt (Makefile.am): Likewise.
11842         * modules/gettime (Makefile.am): Likewise.
11843         * modules/gettimeofday (Makefile.am): Likewise.
11844         * modules/getugroups (Makefile.am): Likewise.
11845         * modules/getusershell (Makefile.am): Likewise.
11846         * modules/glob (Makefile.am): Likewise.
11847         * modules/group-member (Makefile.am): Likewise.
11848         * modules/hard-locale (Makefile.am): Likewise.
11849         * modules/hash (Makefile.am): Likewise.
11850         * modules/hmac-md5 (Makefile.am): Likewise.
11851         * modules/hmac-sha1 (Makefile.am): Likewise.
11852         * modules/human (Makefile.am): Likewise.
11853         * modules/idcache (Makefile.am): Likewise.
11854         * modules/imaxabs (Makefile.am): Likewise.
11855         * modules/imaxdiv (Makefile.am): Likewise.
11856         * modules/inet_ntop (Makefile.am): Likewise.
11857         * modules/inet_pton (Makefile.am): Likewise.
11858         * modules/inttostr (Makefile.am): Likewise.
11859         * modules/isapipe (Makefile.am): Likewise.
11860         * modules/lchown (Makefile.am): Likewise.
11861         * modules/long-options (Makefile.am): Likewise.
11862         * modules/lstat (Makefile.am): Likewise.
11863         * modules/malloc (Makefile.am): Likewise.
11864         * modules/mathl (Makefile.am): Likewise.
11865         * modules/mbchar (Makefile.am): Likewise.
11866         * modules/md2 (Makefile.am): Likewise.
11867         * modules/md4 (Makefile.am): Likewise.
11868         * modules/md5 (Makefile.am): Likewise.
11869         * modules/memcasecmp (Makefile.am): Likewise.
11870         * modules/memchr (Makefile.am): Likewise.
11871         * modules/memcmp (Makefile.am): Likewise.
11872         * modules/memcoll (Makefile.am): Likewise.
11873         * modules/memcpy (Makefile.am): Likewise.
11874         * modules/memmem (Makefile.am): Likewise.
11875         * modules/memmove (Makefile.am): Likewise.
11876         * modules/mempcpy (Makefile.am): Likewise.
11877         * modules/memrchr (Makefile.am): Likewise.
11878         * modules/memset (Makefile.am): Likewise.
11879         * modules/memxor (Makefile.am): Likewise.
11880         * modules/mkancesdirs (Makefile.am): Likewise.
11881         * modules/mkdir (Makefile.am): Likewise.
11882         * modules/mkdir-p (Makefile.am): Likewise.
11883         * modules/mkdtemp (Makefile.am): Likewise.
11884         * modules/mkstemp (Makefile.am): Likewise.
11885         * modules/mktime (Makefile.am): Likewise.
11886         * modules/modechange (Makefile.am): Likewise.
11887         * modules/mountlist (Makefile.am): Likewise.
11888         * modules/nanosleep (Makefile.am): Likewise.
11889         * modules/openat (Makefile.am): Likewise.
11890         * modules/pagealign_alloc (Makefile.am): Likewise.
11891         * modules/physmem (Makefile.am): Likewise.
11892         * modules/poll (Makefile.am): Likewise.
11893         * modules/posixtm (Makefile.am): Likewise.
11894         * modules/posixver (Makefile.am): Likewise.
11895         * modules/putenv (Makefile.am): Likewise.
11896         * modules/quote (Makefile.am): Likewise.
11897         * modules/quotearg (Makefile.am): Likewise.
11898         * modules/raise (Makefile.am): Likewise.
11899         * modules/read-file (Makefile.am): Likewise.
11900         * modules/readline (Makefile.am): Likewise.
11901         * modules/readlink (Makefile.am): Likewise.
11902         * modules/readtokens (Makefile.am): Likewise.
11903         * modules/readutmp (Makefile.am): Likewise.
11904         * modules/realloc (Makefile.am): Likewise.
11905         * modules/regex (Makefile.am): Likewise.
11906         * modules/rename (Makefile.am): Likewise.
11907         * modules/rename-dest-slash (Makefile.am): Likewise.
11908         * modules/rijndael (Makefile.am): Likewise.
11909         * modules/rmdir (Makefile.am): Likewise.
11910         * modules/rpmatch (Makefile.am): Likewise.
11911         * modules/safe-read (Makefile.am): Likewise.
11912         * modules/safe-write (Makefile.am): Likewise.
11913         * modules/same (Makefile.am): Likewise.
11914         * modules/save-cwd (Makefile.am): Likewise.
11915         * modules/savedir (Makefile.am): Likewise.
11916         * modules/setenv (Makefile.am): Likewise.
11917         * modules/settime (Makefile.am): Likewise.
11918         * modules/sha1 (Makefile.am): Likewise.
11919         * modules/sig2str (Makefile.am): Likewise.
11920         * modules/snprintf (Makefile.am): Likewise.
11921         * modules/stdlib-safer (Makefile.am): Likewise.
11922         * modules/stpcpy (Makefile.am): Likewise.
11923         * modules/stpncpy (Makefile.am): Likewise.
11924         * modules/strcase (Makefile.am): Likewise.
11925         * modules/strcasestr (Makefile.am): Likewise.
11926         * modules/strchrnul (Makefile.am): Likewise.
11927         * modules/strcspn (Makefile.am): Likewise.
11928         * modules/strdup (Makefile.am): Likewise.
11929         * modules/strerror (Makefile.am): Likewise.
11930         * modules/strftime (Makefile.am): Likewise.
11931         * modules/strndup (Makefile.am): Likewise.
11932         * modules/strnlen (Makefile.am): Likewise.
11933         * modules/strpbrk (Makefile.am): Likewise.
11934         * modules/strsep (Makefile.am): Likewise.
11935         * modules/strstr (Makefile.am): Likewise.
11936         * modules/strtod (Makefile.am): Likewise.
11937         * modules/strtoimax (Makefile.am): Likewise.
11938         * modules/strtok_r (Makefile.am): Likewise.
11939         * modules/strtol (Makefile.am): Likewise.
11940         * modules/strtoll (Makefile.am): Likewise.
11941         * modules/strtoul (Makefile.am): Likewise.
11942         * modules/strtoull (Makefile.am): Likewise.
11943         * modules/strtoumax (Makefile.am): Likewise.
11944         * modules/strverscmp (Makefile.am): Likewise.
11945         * modules/time_r (Makefile.am): Likewise.
11946         * modules/timegm (Makefile.am): Likewise.
11947         * modules/tmpfile-safer (Makefile.am): Likewise.
11948         * modules/unistd-safer (Makefile.am): Likewise.
11949         * modules/unlinkdir (Makefile.am): Likewise.
11950         * modules/userspec (Makefile.am): Likewise.
11951         * modules/utime (Makefile.am): Likewise.
11952         * modules/utimecmp (Makefile.am): Likewise.
11953         * modules/utimens (Makefile.am): Likewise.
11954         * modules/vasnprintf (Makefile.am): Likewise.
11955         * modules/vasprintf (Makefile.am): Likewise.
11956         * modules/vsnprintf (Makefile.am): Likewise.
11957         * modules/xalloc (Makefile.am): Likewise.
11958         * modules/xgetcwd (Makefile.am): Likewise.
11959         * modules/xnanosleep (Makefile.am): Likewise.
11960         * modules/xreadlink (Makefile.am): Likewise.
11961         * modules/xstrtod (Makefile.am): Likewise.
11962         * modules/xstrtol (Makefile.am): Likewise.
11963         * modules/xstrtold (Makefile.am): Likewise.
11964         * modules/yesno (Makefile.am): Likewise.
11965
11966 2006-10-12  Jim Meyering  <jim@meyering.net>
11967
11968         * m4/getloadavg.m4: Revert the change below.
11969
11970         * m4/getloadavg.m4 (gl_GETLOADAVG): Test for the existence of
11971         lib/getloadavg.c using "ls -L", not "test -f".  The latter would
11972         fail with a symlink, which is what coreutils' ./bootstrap now
11973         creates by default.
11974
11975 2006-10-12  Bruno Haible  <bruno@clisp.org>
11976
11977         * lib/inttypes_.h (_LONG_LONG_FORMAT_PREFIX): Don't define for MSVC or
11978         mingw.
11979         (_PRI64_PREFIX, _PRIu64_PREFIX, _SCN64_PREFIX, _SCNu64_PREFIX): Handle
11980         MSVC and mingw explicitly.
11981
11982 2006-10-11  Simon Josefsson  <jas@extundo.com>
11983             Bruno Haible  <bruno@clisp.org>
11984
11985         Add support for multiple gnulib-tool invocations in the scope of a
11986         single configure.ac file.
11987         * gnulib-tool (func_emit_lib_Makefile_am): In the _LIBADD variable,
11988         use a private [LT]LIBOBJS variant. Define a _DEPENDENCIES variable
11989         with the same contents as the _LIBADD variable.
11990         (func_emit_initmacro_start, func_emit_initmacro_end,
11991         func_emit_initmacro_done): New functions.
11992         (func_import, func_create_testdir): Invoke them. Allow the identifiers
11993         gl_LIBOBJS and gl_LTLIBOBJS.
11994
11995 2006-10-11  Bruno Haible  <bruno@clisp.org>
11996
11997         * gnulib-tool (GETTEXTPATH, AUTOHEADER, AUTOPOINT): New variables.
11998         (func_create_testdir): Don't create po/Makefile.am, don't invoke
11999         autoreconf. Instead, invoke autopoint explicitly but move back the
12000         *.m4 files from gnulib.
12001
12002 2006-10-11  Bruno Haible  <bruno@clisp.org>
12003
12004         * gnulib-tool (func_usage): Make module names after --create-testdir
12005         optional.
12006         (func_create_testdir): If no module was specified, use nearly all
12007         modules.
12008
12009 2006-10-12  Jim Meyering  <jim@meyering.net>
12010
12011         Big performance improvement for fts-based tools that use FTS_NOSTAT.
12012         Avoid spurious inode-mismatch problems on non-POSIX file systems.
12013         Details: http://article.gmane.org/gmane.comp.lib.gnulib.bugs/7416
12014         * lib/fts_.h (FTS_DEFER_STAT): Define new flag.
12015         (FTS_OPTIONMASK): Extend the mask to reflect this addition.
12016         * lib/fts.c (DT_IS_KNOWN, DT_MUST_BE): Define.
12017         (FTS_NO_STAT_REQUIRED, FTS_STAT_REQUIRED): Define.
12018         (fts_set_stat_required): New function.
12019         (fts_open): Defer the calls to fts_stat, if possible or requested.
12020         Move the code that maps a command-line fts_info value FTS_DOT to FTS_D
12021         into fts_stat itself.
12022         (fts_read): Perform any required (deferred) fts_stat call.
12023         (fts_build): Likewise, for the directory we're about to open and read.
12024         In the readdir loop, carefully decide whether each entry will require
12025         an eventual call to fts_stat, using dirent.d_type info if available.
12026         (fts_stat): Move the test for whether to honor FTS_COMFOLLOW on
12027         a command line argument into this function.  Update all callers.
12028         Map a return value of FTS_DOT to FTS_D for a command line argument.
12029         * modules/fts (Depends-on): Add d-type.  Alphabetize.
12030         Thanks to Miklos Szeredi for his tenacity and for the initial
12031         bug report about "find" failing on a FUSE-based file system.
12032
12033         * lib/fts.c (fts_open): Use consistent indentation.
12034
12035 2006-10-12  Paul Eggert  <eggert@cs.ucla.edu>
12036
12037         * m4/extensions.m4 (AC_USE_SYSTEM_EXTENSIONS): Renamed from
12038         gl_USE_SYSTEM_EXTENSIONS, to fix a coreutils bootstrap failure
12039         reported by Jim Meyering.  All uses of cache variables renamed
12040         to match Autoconf's.
12041         (gl_USE_SYSTEM_EXTENSIONS): New macro, which simply requires
12042         the other one.
12043
12044         * m4/rename-dest-slash.m4 (gl_FUNC_RENAME_TRAILING_DEST_SLASH):
12045         Fix misspelling in diagnostic.
12046
12047 2006-10-11  Paul Eggert  <eggert@cs.ucla.edu>
12048
12049         * lib/mkdir-p.c (HAVE_FCHMOD): Define to false if not already
12050         defined.  Problem reported by Matthew Woehlke.
12051
12052         * lib/inttypes_.h (_LONG_LONG_FORMAT_PREFIX): New macro.
12053         Add support for Tandem NonStop R series.
12054         (_PRI64_PREFIX, _PRIu64_PREFIX, _SCN64_PREFIX, _SCNu64_PREFIX):
12055         Use new macro.
12056
12057         * lib/rename-dest-slash.c: Include stdbool.h but not string.h.
12058         (has_trailing_slash): Omit size arg; all callers changed.
12059         Omit 'inline', since it doesn't help performance and we'd
12060         need to configure it.
12061         Don't count //, ///, etc. as having a trailing slash.
12062         As a side effect, this removes a C99ism reported by Matthew Woehlke.
12063         (rpl_rename_dest_slash): On failure, use rename's errno rather
12064         than (in some cases) an incorrect or junk errno.
12065         Simplify code by removing need to compute length; this does
12066         cause it to make two passes instead of one over the file name,
12067         but it's worth it.
12068
12069         * m4/extensions.m4 (gl_USE_SYSTEM_EXTENSIONS): Undo previous
12070         change, since Autoconf's version may no longer be appropriate now
12071         that we are using CVS Autoconf's version.  Add support for Tandem.
12072
12073 2006-10-11  Paul Eggert  <eggert@cs.ucla.edu>
12074             Bruno Haible  <bruno@clisp.org>
12075
12076         * lib/allocsa.h (sa_alignment_longlong, sa_alignment_max): Test
12077         HAVE_LONG_LONG_INT instead of HAVE_LONG_LONG.
12078         * m4/allocsa.m4 (gl_ALLOCSA): Invoke AC_TYPE_LONG_LONG_INT instead of
12079         gl_AC_TYPE_LONG_LONG.
12080
12081         * lib/printf-args.h (arg_type, argument): Test HAVE_LONG_LONG_INT
12082         instead of HAVE_LONG_LONG.
12083         * lib/printf-args.c (printf_fetchargs): Likewise.
12084         * lib/printf-parse.c (PRINTF_PARSE): Likewise.
12085         * lib/vasnprintf.c (VASNPRINTF): Likewise.
12086         * m4/vasnprintf.m4 (gl_PREREQ_PRINTF_ARGS, gl_PREREQ_PRINTF_PARSE,
12087         gl_PREREQ_VASNPRINTF): Invoke AC_TYPE_LONG_LONG_INT instead of
12088         gl_AC_TYPE_LONG_LONG.
12089
12090 2006-10-11  Bruno Haible  <bruno@clisp.org>
12091
12092         * m4/longlong.m4: Add comments.
12093         * m4/ulonglong.m4: Likewise.
12094
12095 2006-10-10  Bruno Haible  <bruno@clisp.org>
12096
12097         Make it possible to #define stpcpy, strdup to aliases.
12098         * lib/stpcpy.c (stpcpy) [!_LIBC]: Don't undefine.
12099         * lib/strdup.c (strdup) [!_LIBC]: Don't undefine.
12100
12101 2006-10-10  Bruno Haible  <bruno@clisp.org>
12102
12103         Make it possible to #define gcd to an alias.
12104         * lib/gcd.c: Include config.h.
12105
12106 2006-10-10  Bruno Haible  <bruno@clisp.org>
12107
12108         Make it possible to #define c_isascii to an alias.
12109         * lib/c-ctype.h: Don't define the macros if NO_C_CTYPE_MACROS is
12110         defined. Undefine the macros before defining them, to avoid gcc
12111         warnings.
12112         * lib/c-ctype.c: Include config.h. Don't undefine the macros; instead,
12113         define NO_C_CTYPE_MACROS early.
12114
12115 2006-10-10  Bruno Haible  <bruno@clisp.org>
12116
12117         Make it possible to #define set_program_name to an alias.
12118         * lib/progname.c: Don't undefine set_program_name; instead, undefine
12119         ENABLE_RELOCATABLE early.
12120
12121 2006-10-10  Paul Eggert  <eggert@cs.ucla.edu>
12122
12123         Port to Tandem NSK OSS, which has 64-bit signed int but at most
12124         32-bit unsigned int.  Problem reported by Matthew Woehlke in:
12125         http://lists.gnu.org/archive/html/bug-coreutils/2006-10/msg00062.html
12126         More generally, don't assume that 64-bit signed int is available
12127         if unsigned int is, and vice versa.
12128         * lib/inttypes_.h (_PRIu64_PREFIX, _SCNu64_PREFIX): Depend on
12129         unsigned symbols, not on their signed counterparts.
12130         * lib/stdint_.h (uint64_t, uint_least64_t, uint_fast64_t, uintmax_t):
12131         (UINT64_MAX, UINT_LEAST64_MAX, UINT_FAST64_MAX, UINTMAX_MAX):
12132         (UINT64_C, UINTMAX_C):
12133         Likewise.
12134         * lib/strtoimax.c (strtoll): Depend on signed symbols, not their
12135         unsigned counterparts.
12136         (Have_long_long, Unsigned): New macros.
12137         (Int): Renamed from INT.
12138         (strtoimax): Use the new macros.
12139         * m4/stdint.m4 (gl_STDINT_H): Require AC_TYPE_UNSIGNED_LONG_LONG_INT
12140         and substitute HAVE_UNSIGNED_LONG_LONG_INT.
12141         * modules/inttypes (inttypes.h): Substitute
12142         HAVE_UNSIGNED_LONG_LONG_INT.
12143         * modules/stdint (stdint.h): Likewise.
12144         (Files): Add m4/ulonglong.m4.
12145
12146 2006-10-10  Bruno Haible  <bruno@clisp.org>
12147
12148         Fix a gcc -Wshadow warning.
12149         * lib/gl_anyhash_list2.h (hash_resize): Rename local variable 'index'
12150         to 'bucket'.
12151         * lib/gl_anylinked_list2.h (gl_linked_search_from_to,
12152         gl_linked_indexof_from_to): Likewise.
12153         * lib/gl_linkedhash_list.c (add_to_bucket, remove_from_bucket):
12154         Likewise.
12155         * lib/gl_anytreehash_list1.h (add_to_bucket, remove_from_bucket):
12156         Likewise.
12157         * lib/gl_anytreehash_list2.h (gl_tree_search_from_to): Likewise.
12158         Reported by Eric Blake.
12159
12160 2006-10-09  Paul Eggert  <eggert@cs.ucla.edu>
12161
12162         * lib/filemode.h [HAVE_DECL_STRMODE]: Include unistd.h too,
12163         for NetBSD.  Problem reported by Bruno Haible.
12164
12165 2006-10-09  Jim Meyering  <jim@meyering.net>
12166
12167         * lib/lchown.c: Include <sys/stat.h> before "stat-macros.h".
12168         Patch from Bruno Haible.
12169
12170 2006-10-09  Jim Meyering  <jim@meyering.net>
12171
12172         * lib/fts-cycle.c (leave_dir): When "leaving" a top level directory due
12173         to FTS_SKIP, don't copy the parent's uninitialized dev/ino values.
12174         Trigger with e.g., mkdir d && valgrind ./chmod u+rwx d d
12175
12176 2006-10-08  Paul Eggert  <eggert@cs.ucla.edu>
12177
12178         Don't include <config.h> twice; this doesn't work in some cases,
12179         e.g., when config.h has "#define intmax_t long long int" and
12180         we include <config.h>, <inttypes.h>, <config.h> in that order.
12181         Problem reported by Matthew Woehlke in:
12182         http://lists.gnu.org/archive/html/bug-coreutils/2006-10/msg00073.html
12183         * lib/fprintftime.c: Don't include config.h or fprintftime.h.
12184         * lib/fts-cycle.c: Don't include config.h.
12185         * lib/strftime.c: Include fprintftime.h if FPRINTFTIME is defined.
12186         * lib/xstrtoimax.c: Remove copyright notice since it's short tnow.
12187         Don't include config.h or xstrtol.h.  Define STRTOL_T_MINIMUM
12188         and STRTOL_T_MAXIMUM unconditionally, since we now assume gnulib
12189         inttypes.h.
12190         * lib/xstrtoumax.c: Likewise.
12191         * lib/xstrtol.c: Include config.h and xstrtol.h after defining
12192         __strtol and the like, so that this module is more like its siblings.
12193         (STRTOL_T_MINIMUM, STRTOL_T_MAXIMUM) [! defined STRTOL_T_MINIMUM]:
12194         Remove; no longer needed now that we assume gnulib inttypes.h.
12195
12196 2006-10-08  Bruno Haible  <bruno@clisp.org>
12197
12198         * doc/gnulib-tool.texi: Emphasize the drawbacks of the --symlink
12199         option.
12200
12201 2006-10-07  Jim Meyering  <jim@meyering.net>
12202
12203         * modules/inttypes (inttypes.h): Revert what seems to have been
12204         an inadvertent part of today's change: use "|", not "/" in the
12205         substitution for the "/"-containing string, $(ABSOLUTE_INTTYPES_H).
12206
12207 2006-10-07  Bruno Haible  <bruno@clisp.org>
12208
12209         * modules/sublist: New file.
12210
12211 2006-10-07  Bruno Haible  <bruno@clisp.org>
12212
12213         * modules/alloca-opt (alloca.h): Add a "DO NOT EDIT" comment.
12214         * modules/argz (argz.h): Likewise.
12215         * modules/arpa_inet (arpa/inet.h): Likewise.
12216         * modules/byteswap (byteswap.h): Likewise.
12217         * modules/configmake (configmake.h): Likewise.
12218         * modules/fcntl (fcntl.h): Likewise.
12219         * modules/fnmatch (fnmatch.h): Likewise.
12220         * modules/getopt (getopt.h): Likewise.
12221         * modules/glob (glob.h): Likewise.
12222         * modules/inttypes (inttypes.h): Likewise.
12223         * modules/netinet_in (netinet/in.h): Likewise.
12224         * modules/poll (poll.h): Likewise.
12225         * modules/stdbool (stdbool.h): Likewise.
12226         * modules/stdint (stdint.h): Likewise.
12227         * modules/sys_select (sys/select.h): Likewise.
12228         * modules/sys_socket (sys/socket.h): Likewise.
12229         * modules/sys_stat (sys/stat.h): Likewise.
12230         * modules/sysexits (sysexits.h): Likewise.
12231         * modules/unistd (unistd.h): Likewise.
12232         * gnulib-tool (func_emit_lib_Makefile_am, func_emit_tests_Makefile_am):
12233         Add a "DO NOT EDIT" comment to the generated file.
12234         (func_import): Likewise for gnulib-comp.m4.
12235
12236 2006-10-07  Bruno Haible  <bruno@clisp.org>
12237
12238         * lib/gl_sublist.h: New file.
12239         * lib/gl_sublist.c: New file.
12240
12241 2006-10-06  Paul Eggert  <eggert@cs.ucla.edu>
12242
12243         * lib/mkancesdirs.c (mkancesdirs): Pass to MAKE_DIR both the full file
12244         name (relative to the original working directory) and the file
12245         name component (relative to the temporary working directory).  All
12246         callers changed.
12247         * lib/mkancesdirs.h (mkancesdirs): Adjust prototype to match.
12248         * lib/mkdir-p.c (make_dir_parents): Likewise.
12249         * lib/mkdir-p.h (make_dir_parents): Likewise.
12250
12251 2006-10-06  Eric Blake  <ebb9@byu.net>
12252
12253         Define several macros for use by the clean-temp module.
12254         * m4/close-stream.m4 (gl_CLOSE_STREAM): Define GNULIB_CLOSE_STREAM.
12255         * m4/fcntl-safer.m4 (gl_FCNTL_SAFER): Define GNULIB_FCNTL_SAFER.
12256         * m4/stdio-safer.m4 (gl_FOPEN_SAFER): Define GNULIB_FOPEN_SAFER.
12257
12258         * lib/clean-temp.h (close_stream_temp): New declaration.
12259         * lib/clean-temp.c (includes): Pull in headers according to what
12260         other modules are in use.
12261         (close_stream_temp) [GNULIB_CLOSE_STREAM]: New function.
12262
12263 2006-10-06  Bruno Haible  <bruno@clisp.org>
12264
12265         * lib/javacomp.c (write_temp_file): Use fopen_temp, fwriteerror_temp
12266         instead of fopen, fwriteerror.
12267
12268 2006-10-06  Bruno Haible  <bruno@clisp.org>
12269
12270         * lib/clean-temp.h (cleanup_temp_file, cleanup_temp_subdir,
12271         cleanup_temp_dir_contents, cleanup_temp_dir): Change return type to
12272         int.
12273         * lib/clean-temp.c (do_unlink, do_rmdir, cleanup_temp_file,
12274         cleanup_temp_subdir, cleanup_temp_dir_contents, cleanup_temp_dir):
12275         Return an error indicator.
12276         Suggested by Eric Blake.
12277
12278 2006-10-06  Bruno Haible  <bruno@clisp.org>
12279
12280         * lib/clean-temp.c (PATH_MAX): Provide a fallback for GNU Hurd.
12281         Reported by Eric Blake.
12282
12283 2006-10-06  Bruno Haible  <bruno@clisp.org>
12284
12285         * modules/closeout (Description): Mention stderr too.
12286
12287 2006-10-06  Bruno Haible  <bruno@clisp.org>
12288         and Paul Eggert  <eggert@cs.ucla.edu>
12289
12290         * lib/closeout.c (close_stdout): Also close stderr.
12291         * lib/closeout.h: Update comment.
12292
12293 2006-10-05  Paul Eggert  <eggert@cs.ucla.edu>
12294
12295         Fix some Darwin-7.9.0 porting problems reported by Bruno Haible in
12296         <http://lists.gnu.org/archive/html/bug-coreutils/2006-10/msg00063.html>.
12297         * lib/dirchownmod.c: Include lchown.h.
12298         * lib/lchown.c: Don't include files that lchown.h now includes.
12299         Don't declare chown, since lchown.h now does that.
12300         * lib/lchown.h: Include errno.h, sys/types.h, unistd.h.
12301         (lchown): Define to rpl_chown if lchown is declared but
12302         does not exist.  Declare using a prototype if lchown is not
12303         declared.  Add a copyright notice.
12304         * lib/mkstemp.h: Include <unistd.h>.
12305         * lib/openat.c: Include lchown.h.
12306
12307         * lib/fcntl_.h (O_NOFOLLOW): Don't depend on O_NOFOLLOW_IS_INEFFECTIVE;
12308         we now test for that separately.
12309         * lib/fts.c (fts_safe_changedir): Inspect HAVE_WORKING_O_NOFOLLOW
12310         rather than O_NOFOLLOW, when testing whether it's possible to
12311         avoid a race condition reliably.
12312         * lib/savewd.c (savewd_chdir): Likewise.
12313
12314         Remove macros that are no longer needed now that stdint.h is
12315         reliable.
12316         * lib/fsusage.c (UINTMAX_MAX): Remove.
12317         * lib/human.c (SIZE_MAX, UINTMAX_MAX): Remove.
12318         * lib/utimecmp.c (SIZE_MAX): Remove.
12319
12320         * m4/lchown.m4 (gl_FUNC_LCHOWN): Check whether lchown is declared.
12321
12322         * m4/fcntl_h.m4 (gl_FCNTL_H): Define HAVE_WORKING_O_NOFOLLOW instead
12323         of O_NOFOLLOW_IS_INEFFECTIVE.  Define HAVE_WORKING_O_NOATIME if
12324         O_NOATIME works.
12325
12326 2006-10-05  Bruno Haible  <bruno@clisp.org>
12327
12328         * lib/gl_list.h (gl_sortedlist_search_from_to,
12329         gl_sortedlist_indexof_from_to): New declarations.
12330         (gl_list_implementation): New fields sortedlist_search_from_to,
12331         sortedlist_indexof_from_to.
12332         (gl_sortedlist_search_from_to, gl_sortedlist_indexof_from_to): New
12333         inline functions.
12334         * lib/gl_list.c (gl_sortedlist_search_from_to,
12335         gl_sortedlist_indexof_from_to): New functions.
12336         * lib/gl_array_list.c (gl_array_sortedlist_indexof_from_to): New
12337         function.
12338         (gl_array_sortedlist_indexof, gl_array_sortedlist_search): Use it.
12339         (gl_array_sortedlist_search_from_to): New function.
12340         (gl_array_list_implementation): Update.
12341         * lib/gl_carray_list.c (gl_carray_sortedlist_indexof_from_to): New
12342         function.
12343         (gl_carray_sortedlist_indexof, gl_carray_sortedlist_search): Use it.
12344         (gl_carray_sortedlist_search_from_to): New function.
12345         (gl_carray_list_implementation): Update.
12346         * lib/gl_anylinked_list2.h (gl_linked_sortedlist_search_from_to,
12347         gl_linked_sortedlist_indexof_from_to): New functions.
12348         * lib/gl_linked_list.c (gl_linked_list_implementation): Update.
12349         * lib/gl_linkedhash_list.c (gl_linkedhash_list_implementation): Update.
12350         * lib/gl_anytree_list2.h (gl_tree_sortedlist_search_from_to,
12351         gl_tree_sortedlist_indexof_from_to): New functions.
12352         * lib/gl_avltree_list.c (gl_avltree_list_implementation): Update.
12353         * lib/gl_avltreehash_list.c (gl_avltreehash_list_implementation):
12354         Update.
12355         * lib/gl_rbtree_list.c (gl_rbtree_list_implementation): Update.
12356         * lib/gl_rbtreehash_list.c (gl_avltreehash_list_implementation):
12357         Update.
12358
12359 2006-10-05  Bruno Haible  <bruno@clisp.org>
12360
12361         * lib/gl_list.h (gl_list_search_from, gl_list_search_from_to,
12362         gl_list_indexof_from, gl_list_indexof_from_to): New declarations.
12363         (struct gl_list_implementation): Add fields search_from_to,
12364         indexof_from_to. Remove fields search, indexof.
12365         (gl_list_search): Use the search_from_to method.
12366         (gl_list_search_from, gl_list_search_from_to): New functions.
12367         (gl_list_indexof): Use the indexof_from_to method.
12368         (gl_list_indexof_from, gl_list_indexof_from_to): New functions.
12369         * lib/gl_list.c (gl_list_search): Use the search_from_to method.
12370         (gl_list_search_from, gl_list_search_from_to): New functions.
12371         (gl_list_indexof): Use the indexof_from_to method.
12372         (gl_list_indexof_from, gl_list_indexof_from_to): New functions.
12373         * lib/gl_array_list.c (gl_array_indexof_from_to): Renamed from
12374         gl_array_indexof. Add start_index, end_index arguments.
12375         (gl_array_search_from_to): Renamed from gl_array_search. Add
12376         start_index, end_index arguments.
12377         (gl_array_remove, gl_array_list_implementation): Update.
12378         * lib/gl_carray_list.c (gl_carray_indexof_from_to): Renamed from
12379         gl_carray_indexof. Add start_index, end_index arguments.
12380         (gl_carray_search_from_to): Renamed from gl_carray_search. Add
12381         start_index, end_index arguments.
12382         (gl_carray_remove, gl_carray_list_implementation): Update.
12383         * lib/gl_anylinked_list2.h (gl_linked_search_from_to): Renamed from
12384         gl_linked_search. Add start_index, end_index arguments.
12385         (gl_linked_indexof_from_to): Renamed from gl_linked_indexof. Add
12386         start_index, end_index arguments.
12387         (gl_linked_remove): Update.
12388         * lib/gl_linked_list.c (gl_linked_list_implementation): Update.
12389         * lib/gl_linkedhash_list.c (gl_linkedhash_list_implementation): Update.
12390         * lib/gl_anytree_list1.h (iterstack_item_t): Change type of 'rightp'
12391         field to 'size_t'.
12392         * lib/gl_anytree_list2.h (gl_tree_search_from_to): Renamed from
12393         gl_tree_search. Add start_index, end_index arguments.
12394         (gl_tree_indexof_from_to): Renamed from gl_tree_indexof. Add
12395         start_index, end_index arguments.
12396         (gl_tree_remove): Update.
12397         * lib/gl_avltree_list.c (gl_avltree_list_implementation): Update.
12398         * lib/gl_rbtree_list.c (gl_rbtree_list_implementation): Update.
12399         * lib/gl_anytreehash_list1.h (compare_position_threshold): New
12400         function.
12401         * lib/gl_anytreehash_list2.h (gl_tree_search_from_to): Renamed from
12402         gl_tree_search. Add start_index, end_index arguments.
12403         (gl_tree_indexof_from_to): Renamed from gl_tree_indexof. Add
12404         start_index, end_index arguments.
12405         * lib/gl_avltreehash_list.c (gl_avltreehash_list_implementation):
12406         Update.
12407         * lib/gl_rbtreehash_list.c (gl_rbtreehash_list_implementation): Update.
12408
12409 2006-10-05  Bruno Haible  <bruno@clisp.org>
12410
12411         * modules/fwriteerror (configure.ac): Define GNULIB_FWRITEERROR.
12412
12413         * lib/clean-temp.h (open_temp, fopen_temp, close_temp, fclose_temp,
12414         fwriteerror_temp): New declarations.
12415         * lib/clean-temp.c (uintptr_t): Provide fallback definition.
12416         (descriptors): New variable.
12417         (cleanup): First, close the descriptors.
12418         (register_fd, unregister_fd, open_temp, fopen_temp, close_temp,
12419         fclose_temp, fwriteerror_temp): New functions.
12420
12421 2006-10-04  Jim Meyering  <jim@meyering.net>
12422
12423         * lib/fts.c (fts_open): Tiny comment change.
12424
12425 2006-10-04  Bruno Haible  <bruno@clisp.org>
12426
12427         Make it possible to invoke AC_GNU_SOURCE after gl_LOCK_EARLY.
12428         * m4/lock.m4 (gl_LOCK_EARLY_BODY): New macro, extracted code from
12429         gl_LOCK_BODY.
12430         (gl_LOCK_EARLY): Require gl_LOCK_EARLY_BODY, not gl_LOCK_BODY.
12431         (gl_LOCK_BODY): Remove settings of CPPFLAGS, now done in
12432         gl_LOCK_EARLY_BODY.
12433         (gl_LOCK): Require gl_LOCK_BODY.
12434
12435 2006-10-04  Bruno Haible  <bruno@clisp.org>
12436
12437         * lib/gl_oset.h (gl_setelement_threshold_fn): New type.
12438         (gl_oset_search_atleast): New declaration.
12439         (struct gl_oset_implementation): Add field 'search_atleast'.
12440         (gl_oset_search_atleast): New inline function.
12441         * lib/gl_oset.c (gl_oset_search_atleast): New function.
12442         * lib/gl_array_oset.c (gl_array_search_atleast): New function.
12443         (gl_array_oset_implementation): Update.
12444         * lib/gl_anytree_oset.h (gl_tree_search_atleast): New function.
12445         * lib/gl_avltree_oset.c (gl_avltree_oset_implementation): Update.
12446         * lib/gl_rbtree_oset.c (gl_rbtree_oset_implementation): Update.
12447
12448 2006-10-04  Bruno Haible  <bruno@clisp.org>
12449
12450         * lib/fatal-signal.c (fatal_signals) [WOE32]: Add the SIGBREAK signal.
12451
12452 2006-10-03  Bruno Haible  <bruno@clisp.org>
12453
12454         * lib/gl_rbtreehash_list.c (gl_rbtreehash_list_implementation): Renamed
12455         from gl_avltreehash_list_implementation.
12456
12457 2006-10-03  Bruno Haible  <bruno@clisp.org>
12458
12459         * lib/gl_oset.c (gl_oset_add): Fix return type.
12460
12461 2006-10-02  Paolo Bonzini  <bonzini@gnu.org>  (tiny change)
12462
12463         * lib/quotearg.c (mbstate_t) [!HAVE_MBRTOWC]: #define to int.
12464
12465 2006-10-02  Eric Blake  <ebb9@byu.net>
12466
12467         * modules/strnlen (Depends-on): Add extensions.
12468
12469 2006-10-02  Eric Blake  <ebb9@byu.net>
12470
12471         * m4/extensions.m4 (gl_USE_SYSTEM_EXTENSIONS): Use autoconf's
12472         definition in 2.60+.
12473
12474 2006-10-02  Dmitry V. Levin  <ldv@altlinux.org>
12475
12476         * lib/fts.c (fts_close, fts_build, fts_palloc): Remove redundant
12477         checks.
12478
12479 2006-10-02  Bruno Haible  <bruno@clisp.org>
12480
12481         * gnulib-tool (func_emit_lib_Makefile_am): Don't add no-dependencies
12482         to the AUTOMAKE_OPTIONS.
12483         Reported by Jim Meyering.
12484
12485 2006-09-29  Paul Eggert  <eggert@cs.ucla.edu>
12486
12487         Work around bug in Solaris 10 /proc file system:
12488         /proc/self/fd/NNN/.. isn't the parent directory of
12489         the directory whose file descriptor is NNN.  This needs to
12490         be worked around at run time, not compile time, since a
12491         program might be built on Solaris 8, where things work, and
12492         run on Solaris 10.
12493         * lib/openat-priv.h (BUILD_PROC_NAME): Remove.  All callers changed
12494         to use the following interface instead:
12495         (OPENAT_BUFFER_SIZE): New macro.
12496         (openat_proc_name): New function.
12497         * lib/at-func.c (AT_FUNC_NAME): Adjust to above changes.
12498         * lib/openat.c (openat_permissive, openat_needs_fchdir, fdopendir):
12499         Likewise.
12500         * lib/openat-proc.c: New file.
12501         * modules/openat (Files): Add lib/openat-proc.c.
12502         (Depends-on): Add same-inode, stdbool.
12503         * m4/openat.m4 (gl_FUNC_OPENAT): Add AC_LIBOBJ(openat-proc).
12504
12505 2006-09-29  Bruno Haible  <bruno@clisp.org>
12506
12507         * lib/fwriteerror.h (fwriteerror_no_ebadf): New declaration.
12508         * lib/(do_fwriteerror): Renamed from fwriteerror. Add ignore_ebadf
12509         argument. Set stdout_closed before testing for ferror, not after.
12510         (fwriteerror, fwriteerror_no_ebadf): New functions.
12511
12512 2006-09-28  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
12513
12514         * m4/intmax.m4 (gt_TYPE_INTMAX_T): Avoid unused variables warning.
12515
12516 2006-09-28  Paolo Bonzini  <bonzini@gnu.org>
12517
12518         * lib/poll.c (rpl_poll) [__APPLE__]: Use FIONREAD instead of MSG_PEEK.
12519         * m4/poll.m4: Look for sys/ioctl.h and sys/filio.h.
12520
12521 2006-09-28  Jim Meyering  <jim@meyering.net>
12522
12523         * lib/mkdir-p.c: Include "dirchownmod.h", not "dirchownmod.c".
12524         Include <unistd.h>.
12525
12526 2006-09-28  Bruno Haible  <bruno@clisp.org>
12527
12528         * modules/avltreehash-list (Depends-on): Add stdint, remove size_max.
12529         * modules/linkedhash-list (Depends-on): Likewise.
12530         * modules/rbtreehash-list (Depends-on): Likewise.
12531
12532 2006-09-28  Bruno Haible  <bruno@clisp.org>
12533
12534         * lib/strndup.h: Simplify the redefinition of strndup.
12535         (_GL_CONCAT, _GL_XCONCAT, __STRNDUP_ID): Remove macros.
12536         * m4/strndup.m4 (gl_FUNC_STRNDUP): Don't define __STRNDUP_PREFIX.
12537
12538 2006-09-28  Bruno Haible  <bruno@clisp.org>
12539
12540         * lib/gl_avltreehash_list.c: Include <stdint.h> instead of size_max.h.
12541         * lib/gl_linkedhash_list.c: Likewise.
12542         * lib/gl_rbtreehash_list.c: Likewise.
12543
12544 2006-09-27  Paul Eggert  <eggert@cs.ucla.edu>
12545
12546         * lib/canon-host.c (canon_host_r): Work around bug in Darwin 7.9.0
12547         getaddrinfo.
12548
12549         * lib/__fpending.h: Don't include <stdio_ext.h> unless
12550         HAVE_DECL___FPENDING.  This avoids a bug with lsbcc, where
12551         it causes <stdio_ext.h> to cause a compile-time error.
12552         Problem reported by Nelson H. F. Beebe.
12553         * lib/getpass.c: Likewise, except for HAVE_DECL___FSETLOCKING instead
12554         of HAVE_DECL___PENDING.
12555
12556         * m4/fpending.m4 (gl_FUNC_FPENDING): Check for stdio_ext at most once.
12557         * m4/getpass.m4 (gl_PREREQ_GETPASS): Check for __fsetlocking's
12558         declaration.
12559
12560 2006-09-27  Jim Meyering  <jim@meyering.net>
12561
12562         This file could end up with a definition for a function
12563         named __strndup, rather than rpl_strndup on a system with
12564         incomplete weak_alias support.
12565         * lib/strndup.c (strndup): Rename from __strndup.
12566         Remove #defines that used to map __strndup to strndup.
12567         Don't use K&R prototypes.
12568         Remove LIBC-related code, since this file is not sync'd with glibc.
12569         * lib/strndup.h: Revamp, accordingly.
12570         * m4/strndup.m4: Modernize.
12571
12572 2006-09-26  Paul Eggert  <eggert@cs.ucla.edu>
12573
12574         * modules/savewd (Depends-on): Add 'raise'.
12575         * lib/savewd.c: Include <signal.h>, for 'raise'.
12576
12577 2006-09-26  Jim Meyering  <jim@meyering.net>
12578
12579         * m4/acl.m4 (AC_FUNC_ACL): Disable ACL support altogether
12580         when we detect Darwin 8.7.0's acl_get_file bug.
12581         Rearrange to perform the new (below) run-test while $LIBS
12582         contains any acl-related library.  Set USE_ACL at the end.
12583         (gl_ACL_GET_FILE): New function.
12584
12585 2006-09-26  Eric Blake  <ebb9@byu.net>
12586
12587         * lib/verror.c: Include <config.h> unconditionally.
12588
12589 2006-09-25  Paul Eggert  <eggert@cs.ucla.edu>
12590
12591         * modules/clock-time (Maintainer): Add self.
12592         * modules/getlogin_r (Depends-on): Add extensions.
12593
12594 2006-09-25  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
12595
12596         * modules/clock-time: New module.
12597         * modules/nanosleep (Depends-on): Add clock-time.
12598         * modules/gethrxtime (Depends-on): Likewise.
12599         * modules/gettime (Depends-on): Likewise.
12600         * modules/settime (Depends-on): Likewise.
12601
12602         * modules/fts-lgpl: Depend on openat.
12603         * modules/mkancesdirs: Depend on savewd.
12604         * modules/mkdir-p: Likewise.
12605
12606 2006-09-25  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
12607
12608         * m4/host-os.m4 (gl_HOST_OS): Require AC_CANONICAL_HOST.
12609
12610         * m4/chdir-long.m4 (gl_FUNC_CHDIR_LONG): Rename cache variable from
12611         `gl_have_arbitrary_file_name_length_limit' to
12612         `gl_cv_have_arbitrary_file_name_length_limit', so that caching
12613         actually works between configure runs.
12614
12615 2006-09-25  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
12616             Bruno Haible  <bruno@clisp.org>
12617
12618         * m4/stpncpy.m4 (gl_FUNC_STPNCPY): Include <string.h>.
12619
12620 2006-09-25  Jim Meyering  <jim@meyering.net>
12621
12622         * m4/fcntl_h.m4 (gl_FCNTL_H): Fix typo in test for failed open.
12623         This typo caused coreutils/tests/dd/misc to fail on Darwin 8.7.0.
12624
12625 2006-09-25  Eric Blake  <ebb9@byu.net>
12626
12627         * gnulib-tool (func_import, func_create_testdir): Fix typos in
12628         exec's in 2006-09-18 patch when shuffling fds.
12629
12630 2006-09-25  Bruno Haible  <bruno@clisp.org>
12631
12632         * m4/getloadavg.m4 (gl_GETLOADAVG): Fix directory in error message.
12633         Reported by Jim Meyering.
12634
12635 2006-09-24  Jim Meyering  <jim@meyering.net>
12636
12637         * m4/ls-mntd-fs.m4 (gl_LIST_MOUNTED_FILE_SYSTEMS): Don't use '>' to
12638         compare a pointer against a literal "0".  That caused failures with
12639         at least HP-UX's hpcc.
12640
12641 2006-09-22  Simon Josefsson  <jas@extundo.com>
12642
12643         * modules/gc-sha1:
12644         * modules/gc-md4:
12645         * modules/gc-hmac-sha1:
12646         * modules/gc-hmac-md5:
12647         * modules/gc-des:
12648         * modules/gc-arcfour: Distribute more files.
12649
12650 2006-09-22  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
12651
12652         * lib/gl_anylinked_list2.h [lint] (gl_linked_iterator)
12653         (gl_linked_iterator_from_to): Initialize struct completely.
12654         * lib/gl_anytree_list2.h [lint] (gl_tree_iterator): Likewise.
12655         (gl_tree_iterator_from_to): Likewise
12656         * lib/gl_anytree_oset.h [lint] (gl_tree_iterator): Likewise.
12657         * lib/gl_array_list.c [lint] (gl_array_iterator)
12658         (gl_array_iterator_from_to): Likewise.
12659         * lib/gl_array_oset.c [lint] (gl_array_iterator): Likewise.
12660         * lib/gl_carray_list.c [lint] (gl_carray_iterator)
12661         (gl_carray_iterator_from_to): Likewise.
12662
12663         * lib/gc-gnulib.c [GC_USE_HMAC_SHA1]: include hmac.h for hmac_sha1.
12664         * lib/md4.c (md4_process_block): Remove unused variable.
12665         * lib/rijndael-api-fst.c (rijndaelBlockDecrypt): GCC suggests
12666         parentheses for clarity.
12667
12668 2006-09-22  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
12669
12670         * modules/bison-i18n (Depends-on): Add gettext.
12671
12672 2006-09-22  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
12673
12674         * m4/fsusage.m4 (gl_STATFS_TRUNCATES): Avoid unused variable.
12675         * m4/getdate.m4 (gl_C_COMPOUND_LITERALS): Likewise.
12676         * m4/jm-winsz1.m4 (gl_HEADER_TIOCGWINSZ_IN_TERMIOS_H): Likewise;
12677         also add missing comma that caused broken test.
12678         * m4/link-follow.m4 (gl_AC_FUNC_LINK_FOLLOWS_SYMLINK): Include
12679         stdlib.h, for `abort'.
12680         * m4/ls-mntd-fs.m4 (gl_LIST_MOUNTED_FILE_SYSTEMS): Avoid unused
12681         variables.
12682         * m4/mkdir-slash.m4 (gl_FUNC_MKDIR_TRAILING_SLASH): Check for and
12683         include unistd.h if present, for `rmdir'.
12684         * m4/physmem.m4 (gl_SYS__SYSTEM_CONFIGURATION): Avoid unused
12685         variables.
12686         * m4/putenv.m4 (gl_FUNC_PUTENV): Rewrite using AC_RUN_IFELSE, and
12687         in the process include standard headers for prototypes.
12688         * m4/readutmp.m4 (gl_READUTMP): Require AC_GNU_SOURCE, so utmpxname
12689         gets declared on GNU/Linux.
12690         * m4/rmdir-errno.m4 (gl_FUNC_RMDIR_NOTEMPTY): Check for and include
12691         unistd.h, for `rmdir'.
12692         * m4/time_r.m4 (gl_TIME_R): Avoid unused variables.
12693
12694         * m4/fnmatch.m4 (_AC_FUNC_FNMATCH_IF): Avoid expression that is
12695         always true.
12696         * m4/strndup.m4 (gl_FUNC_STRNDUP): include stdlib.h, for `free'.
12697
12698         * m4/sockpfaf.m4 (gl_SOCKET_FAMILIES): Avoid gcc -Wall warnings.
12699
12700 2006-09-22  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
12701
12702         * gnulib-tool (func_version): Create output all at once.  This
12703         may help avoid triggering unnecessary SIGPIPEs, and at any
12704         rate it doesn't hurt.
12705
12706 2006-09-22  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
12707             Bruno Haible  <bruno@clisp.org>
12708
12709         * m4/lock.m4 (gl_LOCK_BODY): Avoid unused variables warning.
12710         * m4/mbswidth.m4 (gl_MBSWIDTH): Likewise.
12711         * m4/signed.m4 (bh_C_SIGNED): Likewise.
12712
12713         * m4/vasprintf.m4 (gl_PREREQ_VASPRINTF_H): New macro.
12714         (gl_FUNC_VASPRINTF): Invoke it.
12715
12716 2006-09-22  Bruno Haible  <bruno@clisp.org>
12717
12718         * m4/getloadavg.m4 (gl_GETLOADAVG): Expect the directory of
12719         getloadavg.c as first argument.
12720
12721 2006-09-22  Bruno Haible  <bruno@clisp.org>
12722
12723         * gnulib-tool (func_import, func_create_testdir): Set gl_source_base
12724         at the beginning of the gl_INIT macro.
12725         * modules/getloadavg (configure.ac): Pass $gl_source_base to
12726         gl_GETLOADAVG.
12727
12728 2006-09-22  Bruno Haible  <bruno@clisp.org>
12729
12730         * gnulib-tool (func_create_megatestdir): Don't include the config-h
12731         module.
12732         Suggested by Ralf Wildenhues.
12733
12734 2006-09-20  Paul Eggert  <eggert@cs.ucla.edu>
12735
12736         Import this patch from libc:
12737
12738         2006-09-06  Jakub Jelinek  <jakub@redhat.com>
12739
12740         * lib/regex_internal.c (re_string_reconstruct): Handle
12741         offset < pstr->valid_raw_len && pstr->offsets_needed case.
12742         Ensure no bytes read before raw_mbs array.  Pass a saved copy of
12743         pstr->valid_len - 1 rather than pstr->valid_raw_len - 1 to
12744         re_string_context_at.
12745
12746         * m4/regex.m4 (gl_REGEX): Check for locale.h, since the test
12747         now requires it.
12748         (gl_PREREQ_REGEX): Don't check for locale.h any more, since
12749         gl_REGEX now does it for us.
12750         (gl_REGEX): Add test taken from
12751         http://sourceware.org/ml/libc-hacker/2006-09/msg00008.html.
12752
12753         * m4/mkstemp.m4 (gl_FUNC_MKSTEMP): Require AC_SYS_LARGEFILE.
12754         Check that large offsets work.  Modernize Autoconf usages.
12755         Prefer "yes" to mean a good thing rather than a bad.
12756         Don't put "#define mkstemp" in config.h, as this might interfere
12757         with standard system headers that "#define mkstemp mkstemp64".
12758
12759         * modules/mkstemp (Depends-on): Add extensions, so that
12760         mkstemp is visible on some platforms.
12761         (Makefile.am): Add mkstemp.h to EXTRA_DIST.
12762         (Include): Change to "mkstemp.h" from <stdlib.h>.
12763         (Files): Add mkstemp.h.
12764
12765         * lib/mkstemp.h: New file, since some standard headers
12766         #define mkstemp.
12767         * lib/mkstemp.c: Revamp to put the !_LIBC code together.
12768         Include "mkstemp.h".
12769         Make the _LIBC code resemble glibc original more,
12770         e.g., use K&R style.
12771         * lib/mkstemp-safer.c: Include "mkstemp.h" instead of <stdlib.h>.
12772         (mkstemp): Remove, since mkstemp.h does this for us.
12773         * lib/stdlib--.h: Include mkstemp.h.
12774
12775         Import this patch from libc:
12776
12777         2006-04-07  Ulrich Drepper  <drepper@redhat.com>
12778
12779         * lib/tempname.c (__gen_tempname): Change attempts_min
12780         into a macro.  Use preprocessor to decide how to initialize
12781         attempts [Coverity CID 67].
12782
12783 2006-09-20  Bruno Haible  <bruno@clisp.org>
12784
12785         * lib/mkdtemp.c: Import from libc.
12786         2006-04-07  Ulrich Drepper  <drepper@redhat.com>
12787                 * sysdeps/posix/tempname.c (__gen_tempname): Change
12788                 attempts_min into a macro.  Use preprocessor to decide how to
12789                 initialize attempts [Coverity CID 67].
12790         2001-11-27  Paul Eggert  <eggert@twinsun.com>
12791                 * sysdeps/posix/tempname.c (__gen_tempname): Try at least
12792                 ATTEMPTS_MIN or TMP_MAX times, whichever is greater.
12793
12794 2006-09-19  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
12795
12796         * gnulib-tool (func_exit): New function, to allow to pass the
12797         exit status portably through the trap.  Use everywhere.
12798         (--help, --version): Signal a write error.
12799         (trap): catch SIGPIPE, for write errors.
12800         Exit at the end of the trap, with the correct exit status.
12801
12802 2006-09-19  Karl Berry  <karl@gnu.org>
12803
12804         * doc/gnulib.texi: note about the license texinfo files.
12805
12806 2006-09-19  Eric Blake  <ebb9@byu.net>
12807
12808         * gnulib-tool: Avoid space-tab.
12809
12810 2006-09-18  Paul Eggert  <eggert@cs.ucla.edu>
12811
12812         * lib/getaddrinfo.c (getaddrinfo) [defined HAVE_IPV6]: Fix typo
12813         that prevented coreutils 6.1 from building.  Problem reported
12814         by Petter Reinholdtsen.
12815
12816 2006-09-18  Paul Eggert  <eggert@cs.ucla.edu>
12817
12818         * gnulib-tool (avoidlist): Fix typo that broke options like
12819         --avoid=lock that are used by coreutils bootstrap.
12820
12821 2006-09-18  Mark D. Baushke  <mdb@gnu.org>
12822
12823         * m4/inttypes.m4 (gl_INTTYPES_H): Quote "test" args
12824         more systematically.
12825
12826 2006-09-18  Jim Meyering  <jim@meyering.net>
12827
12828         * lib/savewd.c (savewd_restore): Don't shadow: s/status/child_status/.
12829
12830 2006-09-18  Bruno Haible  <bruno@clisp.org>
12831
12832         * modules/inttypes (Files): Remove m4/inttypes-h.m4.
12833
12834 2006-09-18  Bruno Haible  <bruno@clisp.org>
12835
12836         * m4/inttypes-h.m4 (gl_HEADER_INTTYPES_H): Remove macro.
12837         * m4/inttypes-pri.m4: Require autoconf >= 2.52.
12838         (gt_INTTYPES_PRI): Invoke AC_CHECK_HEADERS on inttypes.h. Test
12839         ac_cv_header_inttypes_h instead of gl_cv_header_inttypes_h.
12840         * m4/gettext.m4: Require autoconf >= 2.52.
12841         (gt_INTL_SUBDIR_CORE): Invoke AC_CHECK_HEADERS on inttypes.h.
12842         * m4/inttypes.m4 (gl_INTTYPES_H): Test ac_cv_header_inttypes_h instead
12843         of gl_cv_header_inttypes_h.
12844
12845 2006-09-18  Bruno Haible  <bruno@clisp.org>
12846
12847         * lib/javaversion.c: Include configmake.h.
12848
12849 2006-09-18  Bruno Haible  <bruno@clisp.org>
12850
12851         * gnulib-tool (func_import, func_create_testdir): Use exec tricks to
12852         avoid that the while loops be executed in a subshell.
12853
12854 2006-09-18  Bruno Haible  <bruno@clisp.org>
12855
12856         * MODULES.html.sh (func_module): Break long lines.
12857         Suggested by Bruce Korb <bkorb@gnu.org>.
12858
12859 2006-09-17  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
12860
12861         Speed up by a factor of 1.12.
12862         * gnulib-tool (nl): New variable.
12863         (func_import): Rewrite include directive extraction to only read each
12864         directive once.
12865
12866 2006-09-17  Bruno Haible  <bruno@clisp.org>
12867
12868         * modules/javaversion (Makefile.am): Remove DEFS setting.
12869         (Depends-on): Add configmake, for PKGDATADIR definition.
12870
12871 2006-09-17  Bruno Haible  <bruno@clisp.org>
12872
12873         * gnulib-tool (func_create_testdir): Rewrite all files at once.
12874
12875 2006-09-17  Bruno Haible  <bruno@clisp.org>
12876
12877         * gnulib-tool (func_append): New function, stolen from libtool.m4.
12878         (func_modules_transitive_closure, func_modules_add_dummy,
12879         func_modules_to_filelist, func_import, func_create_testdir,
12880         func_create_megatestdir, ...): Use it wherever possible.
12881         Suggested by Ralf Wildenhues.
12882
12883 2006-09-16  Karl Berry  <karl@gnu.org>
12884
12885         * doc/fdl.texi (ADDENDUM): switch to @heading from @appendixsubsec,
12886         to avoid sectioning errors.
12887         * doc/lgpl.texi, gpl.texi (Copying): downcase @unnumbered title.
12888         [ifinfo]: blank line after @center-ed titles.
12889         * doc/lgpl.texi (Library Copying): Rename main node to GNU LGPL.
12890         Spell FSF address consistently with others.
12891         (These changes approved by rms.)
12892
12893 2006-09-15  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
12894
12895         Speed up by a factor of 1.61.
12896         * gnulib-tool (func_modules_transitive_closure): Rewrite to not check
12897         already checked module names again.
12898
12899 2006-09-15  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
12900
12901         Speed up by a factor of 1.13.
12902         * gnulib-tool (func_import): Rewrite all old_files at once; likewise
12903         for new_files, and the input to func_add_or_update.
12904
12905 2006-09-15  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
12906
12907         * gnulib-tool (func_all_modules, func_modules_to_filelist, func_import,
12908         func_create_testdir, ...): Change 'sort | uniq' to 'sort -u'.
12909
12910 2006-09-15  Paul Eggert  <eggert@cs.ucla.edu>
12911
12912         * modules/mkancesdirs (Depends-on): Add fcntl.
12913         * modules/savewd: New file.
12914         * MODULES.html.sh (File system functions): Add savewd.
12915
12916         * modules/configmake (Makefile.am): Add support for the
12917         Automake-supplied PKGLIBDIR, PKGINCLUDEDIR, PKGDATADIR.
12918
12919 2006-09-15  Paul Eggert  <eggert@cs.ucla.edu>
12920
12921         * m4/savewd.m4: New file.
12922
12923 2006-09-15  Paul Eggert  <eggert@cs.ucla.edu>
12924
12925         * lib/dirchownmod.c: Don't include fcntl.h; no longer needed.
12926         (dirchownmod): New arg FD.  All callers changed.
12927         Use FD rather than opening the directory ourself, as opening is
12928         now the caller's responsibility.
12929         * lib/dirchownmod.h: Likewise.
12930         * lib/mkancesdirs.c: Include <sys/types.h>, for portability to older
12931         hosts that require <sys/types.h> before <sys/stat.h>.  Include
12932         fcntl.h, savewd.h, and unistd.h, not dirname.h and stat-macros.h.
12933         (test_dir): Remove.
12934         (mkancesdirs): Return length of prefix of FILE that has already
12935         been made, or -2 if there is a child doing the work.  Redo
12936         algorithm so that it is O(N) rather than O(N**2).  Optimize away
12937         ".", and treat ".." specially since it might stray back into
12938         already-created areas.  Use a subprocess if necessary.  New arg
12939         WD; all users changed.  MAKE_DIR function should now return 1
12940         if it creates a directory that is not readable.  Return -2 if
12941         a child process is spun off.
12942         * lib/mkancesdirs.h: Include <stddef.h>, for ptrdiff_t.
12943         Adjust signature to match code.
12944         * lib/mkdir-p.c: Include dirname.h, for IS_ABSOLUTE_FILE_NAME.
12945         (make_dir_parents): Use a subprocess if necessary.  New arg WD;
12946         all users changed.
12947         * lib/savewd.c, lib/savewd.h: New files.
12948
12949 2006-09-15  Jim Meyering  <jim@meyering.net>
12950
12951         * modules/rename-dest-slash: New module.
12952         * MODULES.html.sh (posix_compat): Add it here.
12953
12954         * modules/rename: Reflect vb_FUNC_RENAME -> gl_FUNC_RENAME change.
12955
12956 2006-09-15  Jim Meyering  <jim@meyering.net>
12957
12958         * m4/rename-dest-slash.m4 (gl_FUNC_RENAME_TRAILING_DEST_SLASH): New
12959         file.
12960
12961         * m4/rename.m4 (gl_FUNC_RENAME): Rename from vb_FUNC_RENAME.
12962
12963 2006-09-15  Jim Meyering  <jim@meyering.net>
12964
12965         * lib/rename-dest-slash.c (has_trailing_slash): Use
12966         FILE_SYSTEM_PREFIX_LEN, for non-POSIX systems.
12967         (rpl_rename_dest_slash): Perform the cheaper trailing slash
12968         test before testing whether SRC is a directory.
12969         Suggestions from Bruno Haible.
12970
12971         Avoid a warning about an unused variable.
12972         * lib/regex_internal.c (re_dfa_add_node): Move declaration of "type"
12973         into the #ifdef block where it's used.
12974
12975         * lib/rename-dest-slash.c: New file.
12976
12977 2006-09-14  Bruno Haible  <bruno@clisp.org>
12978
12979         * lib/allocsa.c: Include <config.h> unconditionally.
12980         * lib/asnprintf.c: Likewise.
12981         * lib/asprintf.c: Likewise.
12982         * lib/c-strcasecmp.c: Likewise.
12983         * lib/c-strcasestr.c: Likewise.
12984         * lib/c-strncasecmp.c: Likewise.
12985         * lib/c-strstr.c: Likewise.
12986         * lib/classpath.c: Likewise.
12987         * lib/clean-temp.c: Likewise.
12988         * lib/concatpath.c: Likewise.
12989         * lib/copy-file.c: Likewise.
12990         * lib/csharpcomp.c: Likewise.
12991         * lib/csharpexec.c: Likewise.
12992         * lib/execute.c: Likewise.
12993         * lib/fatal-signal.c: Likewise.
12994         * lib/findprog.c: Likewise.
12995         * lib/fwriteerror.c: Likewise.
12996         * lib/gl_array_list.c: Likewise.
12997         * lib/gl_array_oset.c: Likewise.
12998         * lib/gl_avltree_list.c: Likewise.
12999         * lib/gl_avltree_oset.c: Likewise.
13000         * lib/gl_avltreehash_list.c: Likewise.
13001         * lib/gl_carray_list.c: Likewise.
13002         * lib/gl_linked_list.c: Likewise.
13003         * lib/gl_linkedhash_list.c: Likewise.
13004         * lib/gl_list.c: Likewise.
13005         * lib/gl_oset.c: Likewise.
13006         * lib/gl_rbtree_list.c: Likewise.
13007         * lib/gl_rbtree_oset.c: Likewise.
13008         * lib/gl_rbtreehash_list.c: Likewise.
13009         * lib/imaxabs.c: Likewise.
13010         * lib/imaxdiv.c: Likewise.
13011         * lib/javacomp.c: Likewise.
13012         * lib/javaexec.c: Likewise.
13013         * lib/javaversion.c: Likewise.
13014         * lib/linebreak.c: Likewise.
13015         * lib/localcharset.c: Likewise.
13016         * lib/lock.c: Likewise.
13017         * lib/mbchar.c: Likewise.
13018         * lib/mbswidth.c: Likewise.
13019         * lib/mkdtemp.c: Likewise.
13020         * lib/pipe.c: Likewise.
13021         * lib/printf-args.c: Likewise.
13022         * lib/printf-parse.c: Likewise.
13023         * lib/progname.c: Likewise.
13024         * lib/progreloc.c: Likewise.
13025         * lib/readlink.c: Likewise.
13026         * lib/sh-quote.c: Likewise.
13027         * lib/stpcpy.c: Likewise.
13028         * lib/stpncpy.c: Likewise.
13029         * lib/strcasecmp.c: Likewise.
13030         * lib/strcasestr.c: Likewise.
13031         * lib/strcspn.c: Likewise.
13032         * lib/striconv.c: Likewise.
13033         * lib/strncasecmp.c: Likewise.
13034         * lib/strnlen1.c: Likewise.
13035         * lib/strstr.c: Likewise.
13036         * lib/strtok_r.c: Likewise.
13037         * lib/tls.c: Likewise.
13038         * lib/tmpdir.c: Likewise.
13039         * lib/unicodeio.c: Likewise.
13040         * lib/unsetenv.c: Likewise.
13041         * lib/vasnprintf.c: Likewise.
13042         * lib/vasprintf.c: Likewise.
13043         * lib/wait-process.c: Likewise.
13044         * lib/xallocsa.c: Likewise.
13045         * lib/xsetenv.c: Likewise.
13046         * lib/xstriconv.c: Likewise.
13047
13048 2006-09-13  Simon Josefsson  <jas@extundo.com>
13049
13050         * m4/getdate.m4: Don't AC_LIBOBJ([getdate]), automake takes care of
13051         that internally, suggested by Ralf Wildenhues
13052         <Ralf.Wildenhues@gmx.de>.
13053
13054 2006-09-13  Simon Josefsson  <jas@extundo.com>
13055
13056         * gnulib-tool (func_emit_lib_Makefile_am): Use $(LIBOBJS), not
13057         @LIBOBJS@.
13058         Suggested by Ralf Wildenhues <Ralf.Wildenhues@gmx.de>.
13059
13060 2006-09-13  Paul Eggert  <eggert@cs.ucla.edu>
13061
13062         * lib/_fpending.c: Include <config.h> unconditionally, since we no
13063         longer worry about uses that don't define HAVE_CONFIG_H.
13064         * lib/acl.c, lib/alloca.c, lib/argmatch.c, lib/atexit.c:
13065         * lib/backupfile.c, lib/basename.c, lib/c-stack.c, lib/c-strtod.c:
13066         * lib/calloc.c,lib/ canon-host.c, lib/canonicalize.c, lib/chdir-long.c:
13067         * lib/chdir-safer.c, lib/chown.c, lib/cloexec.c, lib/close-stream.c:
13068         * lib/closeout.c, lib/creat-safer.c, lib/cycle-check.c, lib/diacrit.c:
13069         * lib/dirchownmod.c, lib/dirfd.c, lib/dirname.c, lib/dup-safer.c:
13070         * lib/dup2.c, lib/error.c, lib/euidaccess.c, lib/exclude.c:
13071         * lib/exitfail.c, lib/fchmodat.c, lib/fchown-stub.c, lib/fd-safer.c:
13072         * lib/file-type.c, lib/fileblocks.c, lib/filemode.c, lib/filenamecat.c:
13073         * lib/fnmatch.c, lib/fopen-safer.c, lib/fprintftime.c, lib/free.c:
13074         * lib/fsusage.c, lib/ftruncate.c, lib/fts-cycle.c, lib/fts.c:
13075         * lib/full-write.c, lib/gai_strerror.c, lib/getcwd.c, lib/getdate.y:
13076         * lib/getdomainname.c, lib/getgroups.c, lib/gethostname.c:
13077         * lib/gethrxtime.c, lib/getloadavg.c, lib/getlogin_r.c:
13078         * lib/getndelim2.c, lib/getnline.c, lib/getopt.c, lib/getopt1.c:
13079         * lib/getpass.c, lib/gettime.c, lib/gettimeofday.c, lib/getugroups.c:
13080         * lib/getusershell.c, lib/glob.c, lib/group-member.c:
13081         * lib/hard-locale.c, lib/hash-pjw.c, lib/hash.c, lib/human.c:
13082         * lib/idcache.c, lib/inet_ntop.c, lib/inet_pton.c, lib/inttostr.c:
13083         * lib/isdir.c, lib/lchown.c, lib/linebuffer.c, lib/long-options.c:
13084         * lib/lstat.c, lib/malloc.c, lib/md5.c, lib/memcasecmp.c, lib/memchr.c:
13085         * lib/memcmp.c, lib/memcoll.c, lib/memcpy.c, lib/memmove.c:
13086         * lib/memrchr.c, lib/mkancesdirs.c, lib/mkdir-p.c, lib/mkdir.c:
13087         * lib/mkdirat.c, lib/mkstemp-safer.c, lib/mkstemp.c, lib/modechange.c:
13088         * lib/mountlist.c, lib/nanosleep.c, lib/obstack.c, lib/open-safer.c:
13089         * lib/openat-die.c, lib/openat.c, lib/pagealign_alloc.c, lib/physmem.c:
13090         * lib/pipe-safer.c, lib/posixtm.c, lib/posixver.c, lib/putenv.c:
13091         * lib/quote.c, lib/quotearg.c, lib/raise.c, lib/readtokens.c:
13092         * lib/readtokens0.c, lib/readutmp.c, lib/realloc.c, lib/regex.c:
13093         * lib/rename.c, lib/rmdir.c, lib/rpmatch.c, lib/safe-read.c:
13094         * lib/same.c, lib/save-cwd.c, lib/savedir.c, lib/setenv.c:
13095         * lib/settime.c, lib/sha1.c, lib/sig2str.c, lib/snprintf.c:
13096         * lib/strdup.c, lib/strerror.c, lib/strftime.c, lib/stripslash.c:
13097         * lib/strndup.c, lib/strnlen.c, lib/strpbrk.c, lib/strtod.c:
13098         * lib/strtoimax.c, lib/strtol.c, lib/strverscmp.c, lib/tempname.c:
13099         * lib/time_r.c, lib/timegm.c, lib/tmpfile-safer.c, lib/unlinkdir.c:
13100         * lib/userspec.c, lib/utime.c, lib/utimecmp.c, lib/utimens.c:
13101         * lib/version-etc-fsf.c, lib/version-etc.c, lib/xalloc-die.c:
13102         * lib/xgetcwd.c, lib/xgethostname.c, lib/xmalloc.c, lib/xmemcoll.c:
13103         * lib/xnanosleep.c, lib/xreadlink.c, lib/xstrtod.c, lib/xstrtoimax.c:
13104         * lib/xstrtol.c, lib/xstrtoumax.c, lib/yesno.c:
13105         Likewise.
13106
13107 2006-09-13  Eric Blake  <ebb9@byu.net>
13108
13109         * lib/getopt.c: Fix typo in last commit.
13110
13111 2006-09-12  Sergey Poznyakoff  <gray@gnu.org.ua>
13112
13113         * lib/argp-help.c (argp_doc): Make sure NULL is not passed to
13114         dgettext.
13115
13116 2006-09-12  Jim Meyering  <jim@meyering.net>
13117
13118         * lib/nanosleep.c: Include <sys/types.h> before sys/select.h, to avoid
13119         compilation failure (due to use of pid_t in latter) on NetBSD 1.6.
13120         Reported by Nelson H. F. Beebe.
13121
13122 2006-09-10  Sergey Poznyakoff  <gray@gnu.org.ua>
13123
13124         * lib/argp-parse.c (__argp_parse) [!_LIBC]: Make sure
13125         program_invocation_name and program_invocation_short_name are
13126         initialized.
13127         * lib/argp-namefrob.h: Move declarations of program_invocation_name
13128         and program_invocation_short_name to argp.h, so they are visible
13129         to user programs.
13130         * lib/argp.h: Likewise
13131
13132 2006-09-10  Bruno Haible  <bruno@clisp.org>
13133
13134         * modules/mkdtemp (Files): Remove m4/ulonglong.m4, m4/stdint_h.m4,
13135         m4/inttypes_h.m4, m4/uintmax_t.m4.
13136
13137 2006-09-10  Bruno Haible  <bruno@clisp.org>
13138
13139         * m4/mkdtemp.m4 (gl_PREREQ_MKDTEMP): Don't require
13140         gl_AC_TYPE_UINTMAX_T.
13141
13142 2006-09-10  Bruno Haible  <bruno@clisp.org>
13143
13144         * lib/mkdtemp.c: Include <stdint.h> always. Don't include <inttypes.h>.
13145
13146 2006-09-09  Sergey Poznyakoff  <gray@gnu.org.ua>
13147
13148         * lib/argp.h (struct argp): Document the N_("..") "\v" N_("..")
13149         convention.  Text proposed by Bruno Haible.
13150         (struct argp_option): Document the use of N_() wrappers.
13151
13152         * lib/argp-help.c (argp_doc): Split the untranslated doc string on
13153         '\v', and translate the two parts separately, instead of feeding
13154         the whole string to gettext.  This allows to exclude
13155         '\v' from the strings visible to the translator by writing doc
13156         strings as N_("..") "\v" N_("..").
13157
13158 2006-09-09  Paul Eggert  <eggert@cs.ucla.edu>
13159
13160         * config/srclist.txt: Undo latest change; the bug was fixed.
13161
13162 2006-09-09  Bruno Haible  <bruno@clisp.org>
13163
13164         * gnulib-tool (func_emit_lib_Makefile_am): Eliminate lib_LDFLAGS
13165         assignments if building a library without libtool.
13166         (func_emit_tests_Makefile_am): Likewise. Handle lib_* variables as
13167         in func_emit_lib_Makefile_am.
13168         (func_import): When building a static library libfoo.a, arrange to
13169         define variables LIBFOO_LIBDEPS and LIBFOO_LTLIBDEPS.
13170         (func_create_testdir): Likewise.
13171         * modules/gc (configure.ac, Makefile.am): If building statically,
13172         augment gl_libdeps and gl_ltlibdeps instead of lib_LDFLAGS.
13173         * modules/iconvme (configure.ac, Makefile.am): Likewise.
13174         * modules/striconv (configure.ac, Makefile.am): Likewise.
13175         Based on a suggestion by Ralf Wildenhues.
13176
13177 2006-09-08  Paul Eggert  <eggert@cs.ucla.edu>
13178
13179         * m4/mktime.m4 (AC_FUNC_MKTIME): Sync from Autoconf.
13180         Check for unistd.h too, since Autoconf doesn't assume POSIX.
13181         Also:
13182
13183         2006-09-08  Paul Eggert  <eggert@cs.ucla.edu>
13184         Add year_2050_test to catch glibc bug 2821
13185         <http://sourceware.org/bugzilla/show_bug.cgi?id=2821>.
13186
13187         2006-08-15  Paul Eggert  <eggert@cs.ucla.edu>
13188         Prefer #ifdef to #if.
13189
13190         2006-04-02  Paul Eggert  <eggert@cs.ucla.edu>
13191         Return from 'main' instead of calling 'exit'.
13192
13193 2006-09-08  Paul Eggert  <eggert@cs.ucla.edu>
13194
13195         * lib/mktime.c (guess_time_tm): Fix bug where mktime
13196         returned the maximum time_t value rather than (time_t) -1.
13197         Problem originally reported by William Bardwell
13198         <http://sourceware.org/bugzilla/show_bug.cgi?id=2821>.
13199
13200         * lib/isapipe.h (HAVE_FIFO_PIPES) [!defined HAVE_FIFO_PIPES]:
13201         Moved to here ...
13202         * lib/isapipe.c (HAVE_FIFO_PIPES) [!defined HAVE_FIFO_PIPES]:
13203         ... from here.
13204
13205 2006-09-08  Paul Eggert  <eggert@cs.ucla.edu>
13206
13207         * config/srclist.txt: Temporarily comment out mktime.c until glibc bug
13208         2821 is fixed.
13209
13210 2006-09-08  Jim Meyering  <jim@meyering.net>
13211
13212         Don't make generated files read-only.  That would bother too many
13213         people.  However, do retain the ability to work when targets are
13214         read-only: remove the destination and temporary files before writing
13215         them (when generated via sed or echo), or by using the -f option for
13216         both cp and mv commands.  Suggestion to use -f from Paul Eggert.
13217         * modules/alloca-opt, modules/argz, modules/arpa_inet:
13218         * modules/byteswap, modules/configmake, modules/fcntl:
13219         * modules/fnmatch, modules/getopt, modules/glob, modules/inttypes:
13220         * modules/localcharset, modules/netinet_in, modules/poll:
13221         * modules/stdbool, modules/stdint, modules/sys_select:
13222         * modules/sys_socket, modules/sys_stat, modules/sysexits:
13223
13224 2006-09-08  Jim Meyering  <jim@meyering.net>
13225
13226         Avoid new build failure on FreeBSD 6.0.
13227         * m4/ls-mntd-fs.m4 (gl_LIST_MOUNTED_FILE_SYSTEMS): Include
13228         <sys/param.h> when testing whether getmntinfo uses statvfs.  Patch by
13229         Pavel Tsekov, in <http://savannah.gnu.org/bugs/?17643>.
13230
13231 2006-09-07  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
13232
13233         * m4/fsusage.m4 (gl_FILE_SYSTEM_USAGE): Don't use plain echo.
13234
13235 2006-09-07  Jim Meyering  <jim@meyering.net>
13236
13237         Fix global typo in last change: use chmod u-w, not chmod u-x.
13238         Spotted by Paul Eggert and Bruce Korb.
13239         * modules/alloca-opt, modules/argz, modules/arpa_inet:
13240         * modules/byteswap, modules/configmake, modules/fcntl:
13241         * modules/fnmatch, modules/getopt, modules/glob, modules/inttypes:
13242         * modules/localcharset, modules/netinet_in, modules/poll:
13243         * modules/stdbool, modules/stdint, modules/sys_select:
13244         * modules/sys_socket, modules/sys_stat, modules/sysexits:
13245
13246 2006-09-06  Jim Meyering  <jim@meyering.net>
13247
13248         Make generated files be read-only.
13249         * modules/alloca-opt (Makefile.am): Work also when $@ is read-only.
13250         Ensure that each generated file is now read-only.
13251         * modules/argz: Likewise.
13252         * modules/arpa_inet: Likewise.
13253         * modules/byteswap: Likewise.
13254         * modules/configmake: Likewise.
13255         * modules/fcntl: Likewise.
13256         * modules/fnmatch: Likewise.
13257         * modules/getopt: Likewise.
13258         * modules/glob: Likewise.
13259         * modules/inttypes: Likewise.
13260         * modules/netinet_in: Likewise.
13261         * modules/poll: Likewise.
13262         * modules/stdbool: Likewise.
13263         * modules/stdint: Likewise.
13264         * modules/sys_select: Likewise.
13265         * modules/sys_socket: Likewise.
13266         * modules/sys_stat: Likewise.
13267         * modules/sysexits: Likewise.
13268         * modules/localcharset: Same as above, but continue using temporary
13269         file named "t-$@" (why different?) rather than the "$@-t" used
13270         everywhere else.
13271
13272         * modules/sysexits (Makefile.am): Replace literal occurrences
13273         of "sysexit.h" more readable, and more consistent, "$@".
13274
13275 2006-09-06  Bruno Haible  <bruno@clisp.org>
13276
13277         * modules/striconv: New file.
13278         * modules/xstriconv: New file.
13279         * MODULES.html.sh (Internationalization functions): Add striconv,
13280         xstriconv.
13281
13282 2006-09-06  Bruno Haible  <bruno@clisp.org>
13283
13284         * modules/gc (Makefile.am): Augment lib_LDFLAGS, not lib_LIBADD.
13285         * modules/iconvme (Makefile.am): Likewise. Also handle the case of
13286         not using libtool correctly.
13287
13288 2006-09-06  Bruno Haible  <bruno@clisp.org>
13289
13290         * lib/striconv.h: New file.
13291         * lib/striconv.c: New file, merging iconvme.c with GNU gettext's
13292         iconvstring.c.
13293         * lib/xstriconv.h: New file.
13294         * lib/xstriconv.c: New file.
13295
13296 2006-09-06  Bruno Haible  <bruno@clisp.org>
13297
13298         * gnulib-tool (func_emit_lib_Makefile_am): Initialize also
13299         lib_..._LDFLAGS.
13300
13301 2006-09-05  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
13302
13303         * lib/argz_.h: Sync from Libtool.
13304
13305         2006-09-04  George Bosilca <bosilca@cs.utk.edu>
13306                 and Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
13307
13308         * lib/libltdl/argz_.h: It's __cplusplus, not _cplusplus.
13309
13310 2006-09-05  Davide Angelocola  <davide.angelocola@tiscali.it>
13311
13312         * modules/trim: New file.
13313
13314 2006-09-05  Davide Angelocola  <davide.angelocola@tiscali.it>
13315
13316         * lib/trim.h: New file.
13317         * lib/trim.c: New file.
13318
13319 2006-09-05  Bruno Haible  <bruno@clisp.org>
13320
13321         * MODULES.html.sh (String handling): Add trim.
13322
13323 2006-09-04  Karl Berry  <karl@gnu.org>
13324
13325         * config/srclist.txt (signed.m4, gettext.m4): changes not propagated
13326         until next release.
13327
13328 2006-09-03  Bruno Haible  <bruno@clisp.org>
13329
13330         * m4/lib-link.m4 (AC_LIB_LINKFLAGS_BODY): Locate mingw shared libraries
13331         correctly.
13332
13333 2006-09-01  Paul Eggert  <eggert@cs.ucla.edu>
13334
13335         * m4/getloadavg.m4 (gl_GETLOADAVG): Use CONFIGURING_GETLOADAVG,
13336         not gl_GETLOADAVG.  Omit unneeded semicolons.
13337         Problems reported by Ralf Wildenhues in
13338         <http://lists.gnu.org/archive/html/bug-gnulib/2006-09/msg00000.html>.
13339         (gl_PREREQ_GETLOADAVG): Use AC_DEFUN, not m4_define.  Put
13340         at the end, which is the usual gnulib style.
13341
13342         * m4/fstypename.m4 (gl_FSTYPENAME): Use AC_CHECK_MEMBERS instead
13343         of doing all the work ourselves.
13344         * m4/fsusage.m4 (gl_PREREQ_FSUSAGE_EXTRA): Don't check for
13345         sys/statvfs.h since the code doesn't use HAVE_SYS_STATVFS_H.
13346
13347 2006-09-01  Paul Eggert  <eggert@cs.ucla.edu>
13348
13349         * lib/getloadavg.c: Use CONFIGURING_GETLOADAVG, not gl_GETLOADAVG.
13350         Problem reported by Ralf Wildenhues in
13351         <http://lists.gnu.org/archive/html/bug-gnulib/2006-09/msg00000.html>.
13352
13353         * lib/mountlist.c: All uses of HAVE_F_FSTYPENAME_IN_STATFS replaced by
13354         HAVE_STRUCT_STATFS_F_FSTYPENAME.
13355
13356 2006-09-01  Paul Eggert  <eggert@cs.ucla.edu>
13357
13358         * gnulib-tool (func_emit_lib_Makefile_am): Fix typos in
13359         yesterday's patch by changing test -n to test -z.
13360
13361 2006-08-31  Paul Eggert  <eggert@cs.ucla.edu>
13362
13363         * modules/getloadavg (Files): Add m4/getloadavg.m4.
13364         (configure.ac): AC_FUNC_GETLOADAVG -> gl_GETLOADAVG, as
13365         the former is now obsolescent.
13366
13367         * modules/chdir-long (Depends-on): Add fcntl.
13368
13369 2006-08-31  Paul Eggert  <eggert@cs.ucla.edu>
13370
13371         * m4/fnmatch.m4: Add comment that Autoconf AC_FUNC_FNMATCH is
13372         obsolescent, and programs should use gnulib instead.
13373         * m4/getloadavg.m4: New file, with contents taken from Autoconf
13374         but with prefixes changed.
13375
13376 2006-08-31  Paul Eggert  <eggert@cs.ucla.edu>
13377
13378         * lib/getloadavg.c [defined gl_GETLOADAVG]: Don't include config.h
13379         or stdbool.h, because they might not exist while configuring.
13380
13381         * lib/chdir-long.c: Include <fcntl.h>, for O_DIRECTORY.
13382         Don't include unistd.h or limits.h; not needed, since chdir-long.h
13383         does that for us.
13384         (O_DIRECTORY): Remove.
13385
13386 2006-08-31  Eric Blake  <ebb9@byu.net>
13387
13388         * gnulib-tool: Don't let emacs change spaces to TAB.
13389
13390 2006-08-31  Bruno Haible  <bruno@clisp.org>
13391
13392         * gnulib-tool: When calling func_import more than once, do it in a
13393         subshell.
13394         Reported by Eric Blake <ebb9@byu.net>.
13395
13396 2006-08-31  Bruno Haible  <bruno@clisp.org>
13397
13398         * gnulib-tool (nl): Remove variable.
13399         (sed_transform_lib_file): Use more robust test for config-h module.
13400         (func_import): Fix typo in 2006-08-25 patch.
13401
13402 2006-08-31  Bruno Haible  <bruno@clisp.org>
13403
13404         * gnulib-tool (func_emit_lib_Makefile_am): When --makefile-name was
13405         specified, augment Makefile.am variables instead of assigning them.
13406
13407 2006-08-30  Paul Eggert  <eggert@cs.ucla.edu>
13408
13409         Work around a bug in both the Linux and SunOS 64-bit kernels:
13410         nanosleep mishandles sleeps for longer than 2**31 seconds.
13411         Problem reported by Frank v Waveren in
13412         <http://lists.gnu.org/archive/html/bug-coreutils/2006-08/msg00298.html>.
13413         * m4/nanosleep.m4 (gl_FUNC_NANOSLEEP): Require gl_CLOCK_TIME.
13414         Check for nanosleep bug.
13415         (LIB_NANOSLEEP): Append clock_gettime library if needed.
13416
13417 2006-08-30  Paul Eggert  <eggert@cs.ucla.edu>
13418
13419         Work around a bug in both the Linux and SunOS 64-bit kernels:
13420         nanosleep mishandles sleeps for longer than 2**31 seconds.
13421         Problem reported by Frank v Waveren in
13422         <http://lists.gnu.org/archive/html/bug-coreutils/2006-08/msg00298.html>.
13423         * lib/nanosleep.c (BILLION): New constant.
13424         (getnow) [HAVE_BUG_BIG_NANOSLEEP]: New functions.
13425         (rpl_nanosleep) [HAVE_BUG_BIG_NANOSLEEP]: Completely new
13426         implementation.
13427
13428 2006-08-30  Paul Eggert  <eggert@cs.ucla.edu>
13429
13430         * modules/nanosleep (Depends-on): Add gettime.
13431
13432 2006-08-30  Paul Eggert  <eggert@cs.ucla.edu>
13433         and Simon Josefsson  <jas@extundo.com>
13434         and Oskar Liljeblad  <oskar@osk.mine.nu>
13435
13436         * MODULES.html.sh (Support for building documentation): Add gpl, lgpl.
13437         * gnulib-tool (func_import): New license type 'unmodifiable license
13438         text'.
13439         * modules/fdl: Use it.  Longer description.
13440         * module/gpl, module/lgpl: New files.
13441
13442 2006-08-30  Jim Meyering  <jim@meyering.net>
13443
13444         * lib/isapipe.c (isapipe): Rename local s/fd/fd_pair/ to avoid
13445         shadowing the parameter.
13446
13447 2006-08-29  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
13448
13449         Sync from Libtool:
13450
13451         2006-08-28  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
13452
13453         * lib/libltdl/argz.c: Use `#ifdef HAVE_CONFIG_H', to facilitate code
13454         sharing with gnulib.  Report by Eric Blake.
13455
13456 2006-08-29  Paul Eggert  <eggert@cs.ucla.edu>
13457
13458         * modules/isapipe: New file.
13459         * MODULES.html.sh (File descriptor based Input/Output): Add isapipe.
13460
13461 2006-08-29  Paul Eggert  <eggert@cs.ucla.edu>
13462
13463         * modules/configmake (Makefile.am): Add a comment, and omit
13464         the CONFIGMAKE_ prefix from generated macro names.  Suggested
13465         by Bruno Haible.
13466
13467 2006-08-29  Paul Eggert  <eggert@cs.ucla.edu>
13468
13469         * m4/isapipe.m4: New file.
13470
13471 2006-08-29  Paul Eggert  <eggert@cs.ucla.edu>
13472
13473         * lib/isapipe.c, lib/isapipe.h: New files.
13474
13475 2006-08-29  Jim Meyering  <jim@meyering.net>
13476
13477         * modules/configmake (Makefile.am): Make configmake.h depend on
13478         Makefile.  Otherwise, a stale configmake.h could hang around.
13479
13480 2006-08-29  Eric Blake  <ebb9@byu.net>
13481
13482         * lib/error.c (error_at_line, print_errno_message): Match libc, after
13483         resolution of upstream bug 3044.
13484
13485 2006-08-29  Bruno Haible  <bruno@clisp.org>
13486
13487         * modules/localcharset (Depends-on): Add configmake.
13488         (Makefile.am): Remove setting of LIBDIR through DEFS.
13489
13490 2006-08-29  Bruno Haible  <bruno@clisp.org>
13491
13492         * lib/localcharset.c: Include configmake.h in order to get LIBDIR
13493         defined.
13494
13495 2006-08-28  Paul Eggert  <eggert@cs.ucla.edu>
13496
13497         * modules/fcntl: New file.
13498         * modules/chdir-safer (Depends-on): Add fcntl.
13499         * modules/fts: Likewise.
13500         * modules/mkdir-p: Likewise.
13501
13502         * modules/stdint (Makefile.am): Do not substitute ABSOLUTE_INTTYPES_H.
13503         This undoes the most recent change, since we're now addressing the
13504         problem in a different way.
13505
13506         * gnulib-tool (emit_lib_Makefile_am): Don't put $makefile_name
13507         into output, since the output might be called Makefile.am even
13508         if $makefile_name is something different.
13509         (func_import): Use $makefile_am rather than
13510         ${makefile_name-Makefile.am}, to fix a bug where makefile_name was
13511         empty.
13512
13513         * modules/inttypes (Files): Add m4/inttypes-h.m4.
13514
13515 2006-08-28  Paul Eggert  <eggert@cs.ucla.edu>
13516
13517         * m4/inttypes.m4 (gl_INTTYPES_H): Move ABSOLUTE_INTTYPES_H code here...
13518         * m4/stdint.m4 (gl_STDINT_H): ... from here.  This undoes the most
13519         recent change to stdint.m4, since we're now addressing the problem in a
13520         different way.
13521
13522 2006-08-28  Paul Eggert  <eggert@cs.ucla.edu>
13523
13524         * m4/fcntl_h.m4: New file.
13525
13526 2006-08-28  Paul Eggert  <eggert@cs.ucla.edu>
13527
13528         * lib/fcntl_.h: New file.
13529         * lib/chdir-safer.c (O_DIRECTORY, O_NOFOLLOW): Remove, now that we have
13530         the fcntl module.
13531         * lib/dirchownmod.c: Likewise.
13532         * lib/fts.c: Likewise.
13533
13534         * lib/inttypes_.h [defined _GL_JUST_INCLUDE_ABSOLUTE_INTTYPES_H]:
13535         Include @ABSOLUTE_INTTYPES_H@ if available, but do nothing else.
13536         * lib/stdint_.h (_GL_JUST_INCLUDE_ABSOLUTE_INTTYPES_H): Define
13537         just before including <inttypes.h>, to avoid circular inclusion.
13538
13539 2006-08-28  Jim Meyering  <jim@meyering.net>
13540
13541         * doc/visibility.texi: Actually read and correct the grammar of the
13542         sentence affected by yesterday's change.
13543
13544 2006-08-28  Eric Blake  <ebb9@byu.net>
13545
13546         * modules/inttypes (Makefile.am): Fix sed error when inttypes.h
13547         needs wrapper.
13548
13549 2006-08-28  Eric Blake  <ebb9@byu.net>
13550
13551         * m4/inttypes.m4 (gl_INTTYPES_H): Fix missing #endif.
13552
13553 2006-08-28  Eric Blake  <ebb9@byu.net>
13554
13555         * m4/codeset.m4 (AM_LANGINFO_CODESET): Avoid compiler warning.
13556
13557 2006-08-28  Bruno Haible  <bruno@clisp.org>
13558
13559         * modules/c-strstr: New file, from GNU gettext.
13560         * MODULES.html.sh (String handling): Add c-strstr.
13561
13562 2006-08-28  Bruno Haible  <bruno@clisp.org>
13563
13564         * m4/inttypes.m4 (gl_INTTYPES_H): Don't test for the existence of SCNX*
13565         macros.
13566         Reported by Eric Blake.
13567
13568 2006-08-28  Bruno Haible  <bruno@clisp.org>
13569
13570         * lib/vasnprintf.c (EOVERFLOW): Remove definition.
13571         (VASNPRINTF): Return a string of length > INT_MAX without failing.
13572         * lib/vasprintf.c: Include errno.h, limits.h.
13573         (EOVERFLOW): New fallback definition.
13574         (vasprintf): Test here whether the string length is > INT_MAX.
13575         * lib/vsnprintf.c: Include errno.h, limits.h.
13576         (EOVERFLOW): New fallback definition.
13577         (vsnprintf): Fix bug when generated string was too long for the buffer.
13578         Test here whether the string length is > INT_MAX.
13579
13580 2006-08-28  Bruno Haible  <bruno@clisp.org>
13581
13582         * lib/inttypes_.h (SCNX*): Remove definitions.
13583         Reported by Eric Blake.
13584
13585 2006-08-28  Bruno Haible  <bruno@clisp.org>
13586
13587         * lib/c-strstr.h: New file, from GNU gettext.
13588         * lib/c-strstr.c: New file, from GNU gettext.
13589
13590 2006-08-28  Bruno Haible  <bruno@clisp.org>
13591
13592         * gnulib-tool: Reorder some statements.
13593
13594 2006-08-28  Bruno Haible  <bruno@clisp.org>
13595
13596         * gnulib-tool: New option --makefile-name.
13597         (func_emit_lib_Makefile_am, func_emit_tests_Makefile_am): Use
13598         $makefile_name.
13599         (func_import): Write $makefile_name to the cache file, and read it from
13600         there unless explicitly specified. Use $makefile_name as file name
13601         instead of Makefile.am. Adjust the recommendations accordingly.
13602
13603 2006-08-28  Bruno Haible  <bruno@clisp.org>
13604
13605         * gnulib-tool (func_verify_module): Check against misapplying patch.
13606
13607 2006-08-28  Bruno Haible  <bruno@clisp.org>
13608
13609         * gnulib-tool (func_relativize, func_relconcat): New functions.
13610         Give an error if --local-dir is given with --update.
13611         Remove trailing slashes from $local_gnulib_dir.
13612         (func_import): Store the relativized $local_gnulib_dir in
13613         gnulib-cache.m4, and read it from there if not specified explicitly.
13614
13615 2006-08-28  Bruno Haible  <bruno@clisp.org>
13616
13617         * gnulib-tool (func_get_tests_module): Don't assume that $gnulib_dir
13618         is the current directory. Respect also $local_gnulib_dir.
13619
13620 2006-08-28  Bruno Haible  <bruno@clisp.org>
13621             Simon Josefsson  <jas@extundo.com>
13622
13623         BeOS portability.
13624         * lib/getaddrinfo.c (PF_INET, PF_UNSPEC): New macros.
13625
13626 2006-08-27  Jim Meyering  <jim@meyering.net>
13627
13628         * doc/visibility.texi: Remove duplicate word: "pointer".
13629
13630 2006-08-26  Bruno Haible  <bruno@clisp.org>
13631
13632         * modules/inttypes (Files): Add lib/inttypes_.h, remove lib/inttypes.h.
13633         Add m4/inttypes.m4, remove m4/_inttypes_h.m4 and m4/include_next.m4.
13634         (Makefile.am): Create inttypes.h from inttypes_.h.
13635         * modules/stdint (Makefile.am): Substitute also ABSOLUTE_INTTYPES_H.
13636
13637         * modules/imaxabs: New file.
13638
13639         * modules/imaxdiv: New file.
13640
13641 2006-08-26  Bruno Haible  <bruno@clisp.org>
13642
13643         * m4/inttypes.m4: New file.
13644         * m4/_inttypes_h.m4: Remove file.
13645         * m4/inttypes-pri.m4 (gt_INTTYPES_PRI): Also AC_SUBST
13646         PRI_MACROS_BROKEN.
13647         * m4/stdint.m4 (gl_STDINT_H): Define also ABSOLUTE_INTTYPES_H.
13648
13649         * m4/imaxabs.m4: New file.
13650
13651         * m4/imaxdiv.m4: New file.
13652
13653 2006-08-26  Bruno Haible  <bruno@clisp.org>
13654
13655         * lib/inttypes_.h: New file.
13656         * lib/inttypes.h: Remove file.
13657         * lib/stdint_.h: Include <inttypes.h> through its absolute filename.
13658
13659         * lib/imaxabs.c: New file.
13660
13661         * lib/imaxdiv.c: New file.
13662
13663 2006-08-25  Paul Eggert  <eggert@cs.ucla.edu>
13664
13665         New config-h module, so that "make" output needn't be cluttered
13666         by -DHAVE_CONFIG_H.
13667         * MODULES.html.sh (Support for building libraries and executables):
13668         Add config-h.
13669         * modules/config-h: New file.
13670         * gnulib-tool (nl, sed_transform_lib_file): New vars.
13671         (func_import): Turn "#ifdef HAVE_CONFIG_H" to "#if 1" if
13672         the config-h module is used.
13673
13674         New configmake module, so that "make" output needn't be cluttered
13675         by fluff like '-DLIBDIR=\"/usr/local/lib\"'.
13676         * MODULES.html.sh (Support for building libraries and executables):
13677         Add configmake.
13678         * modules/configmake: New file.
13679
13680 2006-08-25  Paul Eggert  <eggert@cs.ucla.edu>
13681
13682         * m4/config-h.m4: New file.
13683
13684 2006-08-24  Paul Eggert  <eggert@cs.ucla.edu>
13685
13686         * config/srclist.txt: Add elisp-comp.
13687
13688 2006-08-24  Paul Eggert  <eggert@cs.ucla.edu>
13689
13690         * MODULES.html.sh (Support for building libraries and executables):
13691         Add elisp-comp.
13692         * build-aux/elisp-comp: New file.
13693         * modules/elisp-comp: New file.
13694
13695 2006-08-24  Bruno Haible  <bruno@clisp.org>
13696
13697         * gnulib-tool (func_create_testdir): Use non-default values of
13698         sourcebase and m4base.
13699
13700 2006-08-24  Bruno Haible  <bruno@clisp.org>
13701
13702         * MODULES.html.sh (Compatibility checks for POSIX:2001 functions: Fix
13703         HTML structure.
13704
13705 2006-08-23  Paul Eggert  <eggert@cs.ucla.edu>
13706
13707         * modules/openat (Depends-on): Add lchown.
13708
13709 2006-08-23  Bruno Haible  <bruno@clisp.org>
13710
13711         * gnulib-tool (func_import, func_create_testdir): Emit an invocation
13712         of gl_LOCK_EARLY instead of gl_LOCK.
13713
13714 2006-08-23  Bruno Haible  <bruno@clisp.org>
13715
13716         * m4/lock.m4 (gl_LOCK_BODY): Change the default value of gl_use_threads
13717         on OSF/1 to no.
13718         Reported by Stephen Cartwright <sgcartwr@ucalgary.ca>.
13719
13720 2006-08-23  Bruno Haible  <bruno@clisp.org>
13721
13722         * m4/fsusage.m4 (gl_FILE_SYSTEM_USAGE): Don't consider BeOS statvfs
13723         as unusable.
13724
13725         * m4/lock.m4 (gl_LOCK_EARLY): Renamed from gl_LOCK.
13726         (gl_LOCK_BODY): Remove gl_PREREQ_LOCK invocation.
13727         (gl_LOCK): New macro.
13728
13729 2006-08-22  Simon Josefsson  <jas@extundo.com>
13730
13731         * modules/gc-md5 (Makefile.am): Need to add md5.h, after changes
13732         to md5 module.
13733
13734 2006-08-22  Simon Josefsson  <jas@extundo.com>
13735
13736         * MODULES.html.sh: Add "Support for maintaining and release
13737         projects".
13738
13739         * build-aux/gnupload: New file, from coreutils.
13740
13741 2006-08-22  Paul Eggert  <eggert@cs.ucla.edu>
13742
13743         Avoid the need for AC_LIBSOURCES in m4 macros.
13744         * modules/arcfour (EXTRA_DIST): Add arcfour.h.
13745         * modules/arctwo (EXTRA_DIST): Add arctwo.h.
13746         * modules/check-version (EXTRA_DIST): Add check-version.h.
13747         * modules/crc (EXTRA_DIST): Add crc.h.
13748         * modules/des (EXTRA_DIST): Add des.h.
13749         * modules/gc (EXTRA_DIST): Add gc.h.
13750         * modules/getdelim (EXTRA_DIST): Add getdelim.h.
13751         * modules/getline (EXTRA_DIST): Add getline.h.
13752         * modules/getlogin_r (EXTRA_DIST): Add getlogin_r.h.
13753         * modules/hmac-md5 (EXTRA_DIST): Add hmac.h.
13754         * modules/hmac-sha1 (EXTRA_DIST): Add hmac.h.
13755         * modules/md2 (EXTRA_DIST): Add md2.h.
13756         * modules/md4 (EXTRA_DIST): Add md4.h.
13757         * modules/pagealign_alloc (EXTRA_DIST): Add pagealign_alloc.h.
13758         * modules/read-file (EXTRA_DIST): Add read-file.h.
13759         * modules/readline (EXTRA_DIST): Add readline.h.
13760         * modules/rijndael (EXTRA_DIST): Add rijndael-alg-fst.h,
13761         rijndael-api-fst.h.
13762
13763 2006-08-22  Paul Eggert  <eggert@cs.ucla.edu>
13764
13765         * m4/rijndael.m4 (gl_ARCFOUR):
13766         * m4/arctwo.m4 (gl_ARCTWO):
13767         * m4/check-version.m4 (gl_CHECK_VERSION):
13768         * m4/crc.m4 (gl_CRC):
13769         * m4/des.m4 (gl_DES):
13770         * m4/gc-pbkdf2-sha1.m4 (gl_GC_PBKDF2_SHA1):
13771         * m4/gc.m4 (gl_GC):
13772         * m4/getdelim.m4 (gl_FUNC_GETDELIM):
13773         * m4/getline.m4 (gl_FUNC_GETLINE):
13774         * m4/getlogin_r.m4 (gl_GETLOGIN_R_SUBSTITUTE):
13775         * m4/hmac-md5.m4 (gl_HMAC_MD5):
13776         * m4/hmac-sha1.m4 (gl_HMAC_SHA1):
13777         * m4/md2.m4 (gl_MD2):
13778         * m4/md4.m4 (gl_MD4):
13779         * m4/pagealign_alloc.m4 (gl_PAGEALIGN_ALLOC):
13780         * m4/read-file.m4 (gl_FUNC_READ_FILE):
13781         * m4/readline.m4 (gl_FUNC_READLINE):
13782         * m4/rijndael.m4 (gl_RIJNDAEL):
13783         Don't use AC_LIBSOURCES; instead, rely on the files in ../modules/
13784         to get the necessary .h files and whatnot.
13785
13786 2006-08-22  Paul Eggert  <eggert@cs.ucla.edu>
13787
13788         * config/srclist.txt: Remove gnupload, since coreutils now syncs from
13789         gnulib rather than the other way around.
13790         * config/srclistvars.sh (COREUTILS): Remove.
13791
13792 2006-08-22  Jim Meyering  <jim@meyering.net>
13793
13794         * modules/mkdir-p (Makefile.am): Fix typo: s/lib+SOURCES/lib_SOURCES/.
13795
13796         * modules/getpass-gnu (Makefile.am): Add getpass.h to EXTRA_DIST.
13797
13798 2006-08-22  Eric Blake  <ebb9@byu.net>
13799
13800         * modules/regexprops-generic: New file.
13801         * MODULES.html.sh (Support for building documentation): List it.
13802
13803 2006-08-22  Eric Blake  <ebb9@byu.net>
13804
13805         * m4/stdint_h.m4 (gl_AC_HEADER_STDINT_H): Avoid compiler warning.
13806         * m4/inttypes_h.m4 (gl_AC_HEADER_INTTYPES_H): Likewise.
13807         * m4/longlong.m4 (AC_TYPE_LONG_LONG_INT): Likewise.
13808         * m4/intmax_t.m4 (gt_AC_TYPE_INTMAX_T): Likewise.
13809
13810 2006-08-22  Bruno Haible  <bruno@clisp.org>
13811
13812         * gnulib-tool (func_emit_lib_Makefile_am): Don't treat lib_LIBRARIES
13813         and lib_LTLIBRARIES like the other lib_* variables.
13814
13815 2006-08-22  Bruno Haible  <bruno@clisp.org>
13816
13817         * build-aux/x-to-1.in: New file, from GNU gettext.
13818
13819 2006-08-22  Bruno Haible  <bruno@clisp.org>
13820
13821         * m4/readutmp.m4 (gl_READUTMP): Compile readutmp.c only if <utmp.h> or
13822         <utmpx.h> exists.
13823
13824 2006-08-22  Bruno Haible  <bruno@clisp.org>
13825
13826         * lib/readutmp.h: Skip most definitions if neither <utmp.h> nor
13827         <utmpx.h> exists.
13828
13829 2006-08-21  Paul Eggert  <eggert@cs.ucla.edu>
13830
13831         BeOS portability.
13832         * lib/dirchownmod.c (dirchownmod): Don't use fchmod if it doesn't
13833         exist.
13834         Problem reported by Bruno Haible.
13835
13836 2006-08-21  Paul Eggert  <eggert@cs.ucla.edu>
13837
13838         Avoid the need for AC_LIBSOURCES in m4 macros.
13839         * modules/acl (EXTRA_DIST): Add acl.h.
13840         * modules/argmatch (Files): Add m4/argmatch.m4.
13841         (configure.ac): Add gl_ARGMATCH.
13842         (EXTRA_DIST): Renamed from lib_SOURCES, for
13843         consistency with the other modules.  Remove argmatch.c.
13844         * modules/backupfile (EXTRA_DIST): Add backupfile.h.
13845         * modules/c-strtod (EXTRA_DIST): Add c-strtod.h.
13846         * modules/c-strtold (EXTRA_DIST): Add c-strtod.c, c-strtod.h.
13847         * modules/canonhost (EXTRA_DIST): Add c-canonhost.h.
13848         * modules/canonicalize (EXTRA_DIST): Add canonicalize.h.
13849         * modules/chdir-long (EXTRA_DIST): Add chdir-long.h.
13850         * modules/chdir-safer (EXTRA_DIST): Add chdir-safer.h.
13851         * modules/cloexec (EXTRA_DIST): Add cloexec.h.
13852         * modules/close-stream (EXTRA_DIST): Add close-stream.h.
13853         * modules/closeout (EXTRA_DIST): Add closeout.h.
13854         * modules/cycle-check (EXTRA_DIST): Add cycle-check.h.
13855         * modules/dev-ino (EXTRA_DIST): Add dev-ino.h.
13856         * modules/dirfd (EXTRA_DIST): Add dirfd.h.
13857         * modules/dirname (EXTRA_DIST): Renamed from lib_SOURCES.  Add
13858         dirname.h; remove basename.c and stripslash.c.
13859         * modules/exclude (EXTRA_DIST): Add exclude.h.
13860         * modules/exitfail (EXTRA_DIST): Add exitfail.h.
13861         * modules/fcntl-safer (EXTRA_DIST): Add fcntl-safer.h fcntl--.h.
13862         * modules/file-type (EXTRA_DIST): Add file-type.h.
13863         * modules/filemode (EXTRA_DIST): Add filemode.h.
13864         * modules/filenamecat (EXTRA_DIST): Add filenamecat.h.
13865         * modules/fopen-safer (EXTRA_DIST): Add stdio-safer.h stdio--.h.
13866         * modules/fpending (EXTRA_DIST): Add __fpending.h.
13867         * modules/fprintftime (EXTRA_DIST): Add fprintftime.h.
13868         * modules/fsusage (EXTRA_DIST): Add fsusage.h.
13869         * modules/fts (EXTRA_DIST): Add fts_.h fts-cycle.c.
13870         * modules/getcwd (EXTRA_DIST): Add getcwd.h.
13871         * modules/getdate (EXTRA_DIST): Add getdate.c.
13872         * modules/gethrxtime (EXTRA_DIST): Add gethrxtime.h xtime.h.
13873         * modules/getpagesize (EXTRA_DIST): Add getpagesize.h.
13874         * modules/getpass (EXTRA_DIST): Add getpass.h.
13875         * modules/glob (EXTRA_DIST): Add glob_.h glob-libc.h.
13876         * modules/group-member (EXTRA_DIST): Add group-member.h.
13877         * modules/hard-locale (EXTRA_DIST): Add hard-locale.h.
13878         * modules/hash (EXTRA_DIST): Add hash.h.
13879         * modules/human (EXTRA_DIST): Add human.h.
13880         * modules/inttypes (EXTRA_DIST): Add inttypes.h.
13881         * modules/lchmod (EXTRA_DIST): Add lchmod.h.
13882         * modules/lchown (EXTRA_DIST): Add lchown.h.
13883         * modules/long-options (EXTRA_DIST): Add long-options.h.
13884         * modules/lstat (EXTRA_DIST): Add lstat.h.
13885         * modules/md5 (EXTRA_DIST): Add memcasecmp.h.
13886         * modules/memcoll (EXTRA_DIST): Add memcoll.h.
13887         * modules/mempcpy (EXTRA_DIST): Add mempcpy.h.
13888         * modules/memrchr (EXTRA_DIST): Add memrchr.h.
13889         * modules/memxor (EXTRA_DIST): Add memxor.h.
13890         * modules/mkancesdirs (EXTRA_DIST): Add mkancesdirs.h.
13891         * modules/mkdir-p (EXTRA_DIST): Add modechange.h.
13892         * modules/mountlist (EXTRA_DIST): Add mountlist.h.
13893         * modules/openat (EXTRA_DIST): Add at-func.c openat.h openat-priv.h.
13894         * modules/pathmax (EXTRA_DIST): Add pathmax.h.
13895         * modules/physmem (EXTRA_DIST): Add physmem.h.
13896         * modules/posixtm (EXTRA_DIST): Add posixtm.h.
13897         * modules/posixver (EXTRA_DIST): Add posixver.h.
13898         * modules/quote (EXTRA_DIST): Add quote.h.
13899         * modules/quotearg (EXTRA_DIST): Add quotearg.h.
13900         * modules/readtokens (EXTRA_DIST): Add readtokens.h.
13901         * modules/readutmp (EXTRA_DIST): Add readutmp.h.
13902         * modules/regex (EXTRA_DIST): Add regcomp.c regex.h regex_internal.c
13903         regex_internal.h regexec.c.
13904         * modules/safe-read (EXTRA_DIST): Add safe-read.h.
13905         * modules/safe-write (EXTRA_DIST): Add safe-write.h.
13906         * modules/same (EXTRA_DIST): Add same.h.
13907         * modules/same-inode (EXTRA_DIST): Add same-inode.h.
13908         * modules/save-cwd (EXTRA_DIST): Add save-cwd.h.
13909         * modules/savedir (EXTRA_DIST): Add savedir.h.
13910         * modules/sha1 (EXTRA_DIST): Add sha1.h.
13911         * modules/sig2str (EXTRA_DIST): Add sig2str.h.
13912         * modules/stat-macros (EXTRA_DIST): Add stat-macros.h.
13913         * modules/stat-time (EXTRA_DIST): Add stat-time.h.
13914         * modules/stdlib-safer (EXTRA_DIST): Add stdlib-safer.h stdlib--.h.
13915         * modules/strdup (EXTRA_DIST): Add strdup.h.
13916         * modules/strftime (EXTRA_DIST): Add strftime.h.
13917         * modules/strndup (EXTRA_DIST): Add strndup.h.
13918         * modules/strnlen (EXTRA_DIST): Add strnlen.h.
13919         * modules/strverscmp (EXTRA_DIST): Add strverscmp.h.
13920         * modules/time_r (EXTRA_DIST): Add time_r.h.
13921         * modules/timespec (EXTRA_DIST): Add timespec.h.
13922         * modules/tmpfile-safer (EXTRA_DIST): Add stdio-safer.h stdio--.h.
13923         * modules/unistd-safer (EXTRA_DIST): Add unistd-safer.h unistd--.h.
13924         * modules/unlinkdir (EXTRA_DIST): Add unlinkdir.h.
13925         * modules/unlocked-io (EXTRA_DIST): Add unlocked-io.h.
13926         * modules/userspec (EXTRA_DIST): Add userspec.h.
13927         * modules/utimecmp (EXTRA_DIST): Add utimecmp.h.
13928         * modules/utimens (EXTRA_DIST): Add utimens.h.
13929         * modules/xalloc (EXTRA_DIST): Add xalloc.h.
13930         * modules/xgetcwd (EXTRA_DIST): Add xgetcwd.h.
13931         * modules/xnanosleep (EXTRA_DIST): Add xnanosleep.h.
13932         * modules/xreadlink (EXTRA_DIST): Add xreadlink.h.
13933         * modules/xstrtod (EXTRA_DIST): Add xstrtod.h.
13934         * modules/xstrtol (EXTRA_DIST): Add xstrtol.h.
13935         * modules/xstrtold (EXTRA_DIST): Add xstrtod.c xstrtod.h.
13936         * modules/yesno (EXTRA_DIST): Add yesno.h.
13937
13938 2006-08-21  Paul Eggert  <eggert@cs.ucla.edu>
13939
13940         * m4/mkdir-p.m4 (gl_MKDIR_PARENTS): Check for fchmod.
13941
13942         * m4/argmatch.m4: New file, from coreutils with AC_LIBSOURCES removed.
13943         * m4/dev-ino.m4, same-inode.m4: Remove.
13944
13945         * m4/_inttypes_h.m4 (gl_INTTYPES_H):
13946         * m4/acl.m4 (AC_FUNC_ACL):
13947         * m4/backupfile.m4 (gl_BACKUPFILE):
13948         * m4/c-strtod.m4 (gl_C99_STRTOLD):
13949         * m4/canon-host.m4 (gl_CANON_HOST):
13950         * m4/canonicalize.m4 (AC_FUNC_CANONICALIZE_FILE_NAME):
13951         * m4/chdir-long.m4 (gl_FUNC_CHDIR_LONG):
13952         * m4/chdir-safer.m4 (gl_CHDIR_SAFER):
13953         * m4/cloexec.m4 (gl_CLOEXEC):
13954         * m4/close-stream.m4 (gl_CLOSE_STREAM):
13955         * m4/closeout.m4 (gl_CLOSEOUT):
13956         * m4/dirfd.m4 (gl_FUNC_DIRFD):
13957         * m4/dirname.m4 (gl_DIRNAME):
13958         * m4/exclude.m4 (gl_EXCLUDE):
13959         * m4/exitfail.m4 (gl_EXITFAIL):
13960         * m4/fcntl-safer.m4 (gl_FCNTL_SAFER):
13961         * m4/file-type.m4 (gl_FILE_TYPE):
13962         * m4/filemode.m4 (gl_FILEMODE):
13963         * m4/filenamecat.m4 (gl_FILE_NAME_CONCAT):
13964         * m4/fpending.m4 (gl_FUNC_FPENDING):
13965         * m4/fprintftime.m4 (gl_FPRINTFTIME):
13966         * m4/fts.m4 (gl_FUNC_FTS):
13967         * m4/getcwd.m4 (gl_FUNC_GETCWD_NULL):
13968         * m4/getdate.m4 (gl_GETDATE):
13969         * m4/gethrxtime.m4 (gl_GETHRXTIME):
13970         * m4/getpagesize.m4 (gl_GETPAGESIZE):
13971         * m4/getpass.m4 (gl_FUNC_GETPASS):
13972         * m4/gettime.m4 (gl_GETTIME):
13973         * m4/getugroups.m4 (gl_GETUGROUPS):
13974         * m4/glob.m4 (gl_GLOB_SUBSTITUTE):
13975         * m4/group-member.m4 (gl_FUNC_GROUP_MEMBER):
13976         * m4/hard-locale.m4 (gl_HARD_LOCALE):
13977         * m4/hash.m4 (gl_HASH):
13978         * m4/idcache.m4 (gl_IDCACHE):
13979         * m4/lchmod.m4 (gl_FUNC_LCHMOD):
13980         * m4/lchown.m4 (gl_FUNC_LCHOWN):
13981         * m4/long-options.m4 (gl_LONG_OPTIONS):
13982         * m4/lstat.m4 (gl_FUNC_LSTAT):
13983         * m4/md5.m4 (gl_MD5):
13984         * m4/memcasecmp.m4 (gl_MEMCASECMP):
13985         * m4/memcoll.m4 (gl_MEMCOLL):
13986         * m4/mempcpy.m4 (gl_FUNC_MEMPCPY):
13987         * m4/memrchr.m4 (gl_FUNC_MEMRCHR):
13988         * m4/memxor.m4 (gl_MEMXOR):
13989         * m4/mkancesdirs.m4 (gl_MKANCESDIRS):
13990         * m4/mkdir-p.m4 (gl_MKDIR_PARENTS):
13991         * m4/modechange.m4 (gl_MODECHANGE):
13992         * m4/mountlist.m4 (gl_MOUNTLIST):
13993         * m4/nanosleep.m4 (gl_FUNC_NANOSLEEP):
13994         * m4/openat.m4 (gl_FUNC_OPENAT):
13995         * m4/pathmax.m4 (gl_PATHMAX):
13996         * m4/physmem.m4 (gl_PHYSMEM):
13997         * m4/posixtm.m4 (gl_POSIXTM):
13998         * m4/posixver.m4 (gl_POSIXVER):
13999         * m4/quote.m4 (gl_QUOTE):
14000         * m4/quotearg.m4 (gl_QUOTEARG):
14001         * m4/readtokens.m4 (gl_READTOKENS):
14002         * m4/readutmp.m4 (gl_READUTMP):
14003         * m4/regex.m4 (gl_REGEX):
14004         * m4/safe-read.m4 (gl_SAFE_READ):
14005         * m4/safe-write.m4 (gl_SAFE_WRITE):
14006         * m4/same.m4 (gl_SAME):
14007         * m4/save-cwd.m4 (gl_SAVE_CWD):
14008         * m4/savedir.m4 (gl_SAVEDIR):
14009         * m4/settime.m4 (gl_SETTIME):
14010         * m4/sha1.m4 (gl_SHA1):
14011         * m4/sig2str.m4 (gl_FUNC_SIG2STR):
14012         * m4/stat-macros.m4 (gl_STAT_MACROS):
14013         * m4/stat-time.m4 (gl_STAT_TIME):
14014         * m4/stdio-safer.m4 (gl_FOPEN_SAFER):
14015         * m4/stdlib-safer.m4 (gl_STDLIB_SAFER):
14016         * m4/strdup.m4 (gl_FUNC_STRDUP):
14017         * m4/strftime.m4 (gl_FUNC_GNU_STRFTIME):
14018         * m4/strndup.m4 (gl_FUNC_STRNDUP):
14019         * m4/strnlen.m4 (gl_FUNC_STRNLEN):
14020         * m4/strverscmp.m4 (gl_FUNC_STRVERSCMP):
14021         * m4/time_r.m4 (gl_TIME_R):
14022         * m4/timespec.m4 (gl_TIMESPEC):
14023         * m4/unistd-safer.m4 (gl_UNISTD_SAFER):
14024         * m4/unlinkdir.m4 (gl_UNLINKDIR):
14025         * m4/unlocked-io.m4 (gl_FUNC_GLIBC_UNLOCKED_IO):
14026         * m4/userspec.m4 (gl_USERSPEC):
14027         * m4/utimecmp.m4 (gl_UTIMECMP):
14028         * m4/utimens.m4 (gl_UTIMENS):
14029         * m4/xalloc.m4 (gl_XALLOC):
14030         * m4/xgetcwd.m4 (gl_XGETCWD):
14031         * m4/xnanosleep.m4 (gl_XNANOSLEEP):
14032         * m4/xreadlink.m4 (gl_XREADLINK):
14033         * m4/xstrtod.m4 (gl_XSTRTOD):
14034         * m4/yesno.m4 (gl_YESNO):
14035         Don't use AC_LIBSOURCES; instead, rely on the files in ../modules/
14036         to get the necessary .h files and whatnot.
14037
14038 2006-08-21  Mark D. Baushke  <mdb@gnu.org>
14039             Bruno Haible  <bruno@clisp.org>
14040
14041         * gnulib-tool (func_verify_module): Work around Sun's non-POSIX 1003.2
14042         /bin/sh understanding of '!' conditional negation.
14043
14044 2006-08-21  Jim Meyering  <jim@meyering.net>
14045
14046         * modules/openat (Depends-on): Really alphabetize.
14047
14048         * modules/acl (Depends-on): Add error and quote.
14049
14050         * check-module (find_included_lib_files): Add at-func.c to the
14051         ok-to-include-more-than-once white list.
14052
14053         * modules/openat (Depends-on): Add lstat.  Alphabetize.
14054
14055 2006-08-21  Bruno Haible  <bruno@clisp.org>
14056
14057         * gnulib-tool (func_emit_lib_Makefile_am, func_emit_tests_Makefile_am):
14058         Emit a pkgdata_DATA variable only if some snippets add contents to it.
14059         Reported by Martin Lambers <marlam@marlam.de>.
14060
14061 2006-08-21  Bruno Haible  <bruno@clisp.org>
14062
14063         * gnulib-tool (func_emit_lib_Makefile_am): If the snippets already
14064         specify an installation location, don't emit a noinst_LIBRARIES or
14065         noinst_LTLIBRARIES assignment.
14066
14067 2006-08-21  Bruno Haible  <bruno@clisp.org>
14068
14069         BeOS portability.
14070         * modules/mbchar (Include): Don't test HAVE_WCTYPE_H any more, since
14071         BeOS has mbrtowc() but no <wctype.h>.
14072
14073 2006-08-21  Bruno Haible  <bruno@clisp.org>
14074
14075         BeOS portability.
14076         * m4/mbchar.m4 (gl_MBCHAR): Compile mbchar.c also if <wctype.h> doesn't
14077         exist.
14078
14079 2006-08-21  Bruno Haible  <bruno@clisp.org>
14080
14081         BeOS portability.
14082         * lib/mbchar.h: Include <wctype.h> only if it exists.
14083
14084 2006-08-20  Paul Eggert  <eggert@cs.ucla.edu>
14085
14086         Remove files that are no longer needed by their respective modules.
14087         * m4/obstack.m4: Remove.
14088         * m4/strerror_r.m4: Remove.
14089         * m4/uint32_t.m4: Remove.
14090         * m4/uintptr_t.m4: Remove.
14091         * m4/ullong_max.m4: Remove.
14092         * m4/xstrtoimax.m4: Remove.
14093         * m4/xstrtoumax.m4: Remove.
14094
14095         * m4/cycle-check.m4 (gl_CYCLE_CHECK): Do not require
14096         gl_AC_TYPE_UINTMAX_T, gl_STRUCT_DEV_INO, or gl_SAME_INODE, since gnulib
14097         dependencies now capture this.
14098
14099         * m4/cycle-check.m4 (gl_CYCLE_CHECK):
14100         Do not use AC_LIBSOURCES, since gnulib modules now do this.
14101         * m4/fsusage.m4 (gl_FSUSAGE): Likewise.
14102         * m4/human.m4 (gl_HUMAN): Likewise.
14103         * m4/inttostr.m4 (gl_INTTOSTR): Likewise.
14104         * m4/xstrtol.m4 (gl_XSTRTOL): Likewise.
14105
14106         * m4/filemode.m4 (gl_FILEMODE): Require AC_STRUCT_ST_DM_MODE.
14107
14108         * m4/filemode.m4 (gl_PREREQ_FSUSAGE_EXTRA): Do not require
14109         gl_AC_TYPE_INTMAX_T or gl_AC_TYPE_UINTMAX_T, since we now require
14110         stdint.
14111         * m4/human.m4 (gl_HUMAN): Likewise.
14112         * m4/inttostr.m4 (gl_PREREQ_INTTOSTR): Likewise.
14113         * m4/mkstemp.m4 (gl_PREREQ_TEMPNAME): Likewise.
14114         * m4/strtoimax.m4 (gl_PREREQ_STRTOIMAX): Likewise.
14115         * m4/strtoumax.m4 (gl_PREREQ_STRTOUMAX): Likewise.
14116         * m4/xstrtol (gl_XSTRTOL): Likewise.
14117
14118         * m4/gethrxtime.m4 (gl_XTIME): gl_AC_TYPE_LONG_LONG ->
14119         AC_TYPE_LONG_LONG_INT.
14120         * m4/strtoimax.m4 (gl_PREREQ_STRTOIMAX): Likewise.
14121         * m4/strtoll.m4 (gl_FUNC_STRTOLL): Likewise.
14122         * m4/strtoull.m4 (gl_FUNC_STRTOULL): Likewise, for unsigned long.
14123         * m4/strtoumax.m4 (gl_PREREQ_STRTOUMAX): Likewise.
14124
14125         * m4/human.m4 (gl_HUMAN): Do not require AM_STDBOOL_H since we depend
14126         on stdbool.
14127
14128         * m4/xstrtol.m4 (gl_PREREQ_XSTRTOL_H, gl_PREREQ_XSTRTOL): Remove.
14129         (gl_PREREQ_XSTRTOUL): Remove.
14130
14131         * m4/ls-mntd-fs.m4 (gl_LIST_MOUNTED_FILE_SYSTEMS): Check for hasmntopt.
14132
14133         * m4/posixver.m4: Fix comment since head -1 now works even in POSIX
14134         mode.
14135
14136 2006-08-20  Paul Eggert  <eggert@cs.ucla.edu>
14137
14138         Add and change modules to make it easier for coreutils to use
14139         gnulib-tool.
14140         * modules/backupfile (Files): Remove m4/d-ino.m4.
14141         (Depends-on): Add d-ino.
14142         * modules/cycle-check (Depends-on): Add stdint.
14143         (lib_SOURCES): Add cycle-check.h.
14144         * modules/d-ino: New module.
14145         * modules/d-type: New module.
14146         * modules/error (Files): Remove m4/strerror_r.m4.
14147         * modules/filemode (Files): Add m4/st_dm_mode.m4.
14148         * modules/fsuage (Files): Remove m4/ulonglong.m4, m4/stdint_h.m4,
14149         m4/inttypes_h.m4, m4/uintmax_t.m4.
14150         (Depends-on): Add stdint.
14151         (lib_SOURCES): Add fsusage.h.
14152         * modules/getcwd (Files): Remove d-ino.m4.
14153         (Depends-on): Add d-ino.
14154         * modules/getndelim2 (Depends-on): Add stdint.
14155         * modules/glob (Files): Remove m4/d-type.m4.
14156         (Depends-on): Add d-type.
14157         * modules/host-os: New module.
14158         * modules/human (Files):  Remove m4/ulonglong.m4, m4/stdint_h.m4,
14159         m4/inttypes_h.m4, m4/uintmax_t.m4.
14160         * Depends-on: Add stdint.
14161         (lib_SOURCES): Add human.h.
14162         * modules/inttostr (Files): Remove m4/intmax_t.m4,
14163         m4/inttostr.m4, m4/inttypes_h.m4, m4/longlong.m4, m4/stdint_h.m4,
14164         m4/uintmax_t.m4, m4/ulonglong.m4.
14165         (Depends-on): Add stdint.
14166         (EXTRA_DIST): Add inttostr.h.
14167         * modules/lchmod: New module.
14168         * modules/link-follow: New module.
14169         * modules/mkdir-p (Files): Remove lib/lchmod.h, m4/lchmod.m4.
14170         (Depends-on): Add lchmod.
14171         * modules/mkstemp (Files): Remove m4/ulonglong.m4,
14172         m4/stdint_h.m4, m4/inttypes_h.m4, m4/uintmax_t.m4.
14173         (Depends-on): Add stdint.
14174         * modules/obstack (Files): Remove m4/inttypes_h.m4, m4/obstack.m4,
14175         m4/stdint_h.m4, m4/uintmax_t.m4, m4/ulonglong.m4.
14176         (Depends-on): Add stdint.
14177         (configure.ac): Change gl_OBSTACK to AC_FUNC_OBSTACK.
14178         * modules/perl: New module.
14179         * modules/regex (Depends-on): Add stdint.
14180         * modules/rmdir-errno: New module.
14181         * modules/strtoimax (Files): Remove m4/stdint_h.m4, m4/inttypes_h.m4,
14182         m4/intmax_t.m4.
14183         (Depends-on): Add stdint.
14184         * modules/strtoumax (Files): Remove m4/stdint_h.m4, m4/inttypes_h.m4,
14185         m4/uintmax_t.m4.
14186         (Depends-on): Add stdint.
14187         * modules/unlink-busy: New module.
14188         * modules/utimecmp (Depends-on): Add stdint.
14189         * modules/uptime: New module.
14190         * modules/winsz-ioctl: New module.
14191         * modules/winsz-termios: New module.
14192         * modules/xnanosleep (Depends-on): Add nanosleep.
14193         * modules/ullong_max: Remove.
14194         * modules/xstrtoimax (Files): Remove m4/xstrtoimax.m4.
14195         (configure.ac): Remove gl_XSTRTOIMAX; no action needed now.
14196         * modules/xstrtol (Files): Remove m4/ulonglong.m4, m4/longlong.m4,
14197         m4/stdint_h.m4, m4/inttypes_h.m4, m4/uintmax_t.m4, m4/intmax_t.m4.
14198         (Depends-on): Add inttypes.
14199         (lib_SOURCES): Add xstrtol.h.
14200         * modules/xstrtoumax (Files): Remove m4/xstrtoumax.m4.
14201         (configure.ac): Remove gl_XSTRTOUMAX; no action needed now.
14202         * MODULES.html.sh: Move 'assert' into the assert section.
14203         Move 'dummy' into the linking section.
14204         Remove ullong_max.
14205         Add section for compatibility checks for POSIX:2001 functions,
14206         and put d-ino, d-type, link-follow, rmdir-errno, unlink-busy,
14207         winsz-ioctl, and winsz-termios into it.
14208         Add lchmod.
14209         Add top-level Misc section and put host-os, perl, and uptime
14210         into it.
14211
14212 2006-08-20  Paul Eggert  <eggert@cs.ucla.edu>
14213
14214         * lib/cycle-check.h: Include <stdint.h> unconditionally, since we
14215         now assume the stdint module.  Do not include inttypes.h.
14216         * lib/fsusage.h: Likewise.
14217         * lib/getndelim2.c: Likewise.
14218         * lib/human.h: Likewise.
14219         * lib/inttostr.h: Likewise.
14220         * lib/obstack.c: Likewise.
14221         * lib/regex_internal.h: Likewise.
14222         * lib/tempname.c: Likewise.
14223         * lib/utimecmp.c: Likewise.
14224         * lib/xstrtol.h: Likewise.
14225
14226         * lib/stat_.h: Fix typo: HAVE_FUNC_LSTAT -> HAVE_LSTAT.
14227
14228         * lib/strtoimax.c: Adjust to macro name changes in Autoconf,
14229         e.g., HAVE_LONG_LONG -> HAVE_LONG_LONG_INT.
14230         * lib/xtime.h: Likewise.
14231
14232 2006-08-19  Paul Eggert  <eggert@cs.ucla.edu>
14233
14234         * modules/openat (Files): Add lib/fchmodat.c.
14235         Fixes problem reported by Jay Youngman.
14236
14237 2006-08-19  Paul Eggert  <eggert@cs.ucla.edu>
14238
14239         * lib/fchmodat.c: New file, from coreutils.  This was inadvertently
14240         omitted in the 2006-08-17 update.  Problem reported by Jay Youngman.
14241
14242 2006-08-18  Paul Eggert  <eggert@cs.ucla.edu>
14243             Bruno Haible  <bruno@clisp.org>
14244
14245         * m4/bison-i18n.m4 (BISON_I18N): Also handle the case where yacc exists
14246         and is a script that invokes bison. Tighten the code. Add comments.
14247
14248 2006-08-18  Jim Meyering  <jim@meyering.net>
14249
14250         * m4/gethrxtime.m4 (gl_PREREQ_GETHRXTIME): Also check for
14251         CLOCK_REALTIME, since gethrxtime may revert to using clock_gettime via
14252         gettime.c.  Gabor Z. Papp reported that gethrxtime-using programs
14253         failed to link due to unresolved clock_gettime on a linux-2.4.x system.
14254
14255 2006-08-18  Bruno Haible  <bruno@clisp.org>
14256
14257         * modules/bison-i18n: New file.
14258         * MODULES.html.sh (Internationalization functions): Add it.
14259
14260 2006-08-18  Bruno Haible  <bruno@clisp.org>
14261
14262         * m4/ls-mntd-fs.m4 (gl_LIST_MOUNTED_FILE_SYSTEMS): Also check for
14263         sys/statvfs.h. When getmntinfo was found, check its declaration and
14264         set either MOUNTED_GETMNTINFO or MOUNTED_GETMNTINFO2 depending on it.
14265
14266 2006-08-18  Bruno Haible  <bruno@clisp.org>
14267
14268         * m4/bison-i18n.m4: New file, from bison.
14269
14270 2006-08-18  Bruno Haible  <bruno@clisp.org>
14271
14272         * lib/mountlist.c [MOUNTED_GETMNTINFO2]: Include sys/statvfs.h.
14273         (ME_DUMMY): Treat "kernfs" as a dummy.
14274         (read_file_system_list) [MOUNTED_GETMNTINFO2]: Implement.
14275
14276 2006-08-17  Paul Eggert  <eggert@cs.ucla.edu>
14277
14278         Update from coreutils.
14279
14280         2006-08-15  Jim Meyering  <jim@meyering.net>
14281
14282         * m4/openat.m4 (gl_FUNC_OPENAT): Add at-func.c via AC_LIBSOURCES.
14283
14284         2006-01-17  Jim Meyering  <jim@meyering.net>
14285
14286         * m4/fts.m4 (gl_FUNC_FTS_CORE): Depend on gl_FUNC_OPENAT.
14287
14288         2006-01-11  Jim Meyering  <jim@meyering.net>
14289
14290         * m4/openat.m4 (gl_FUNC_OPENAT): Require and compile fchmodat.c.
14291         Check for the lchmod function.
14292
14293 2006-08-17  Paul Eggert  <eggert@cs.ucla.edu>
14294
14295         Update from coreutils.
14296
14297         * lib/__fpending.h: Add copyright notice.
14298         * lib/fprintftime.h: Likewise.
14299         * lib/savedir.c: Use (C) in copyright notice.
14300         * lib/savedir.h: Likewise.
14301
14302         2006-08-15  Jim Meyering  <jim@meyering.net>
14303
14304         * lib/at-func.c: New file, with the logic of all emulated at-functions.
14305         * lib/openat-priv.h: Include <errno.h> and define ENOSYS,
14306         in support of the EXPECTED_ERRNO macro.
14307         * lib/openat.c (fstatat, unlinkat, fchownat): Remove function
14308         definitions.  Instead, define the appropriate symbols and include
14309         "at-func.c".
14310         * lib/mkdirat.c (mkdirat): Likewise.
14311         * lib/fchmodat.c (fchmodat): Likewise.
14312         (ENOSYS): Remove definition.
14313         * lib/openat.c: Don't include <errno.h>, now that "openat-priv.h" does
14314         it.  Don't include "unistd--.h" -- it wasn't ever used.
14315
14316         2006-01-17  Jim Meyering  <jim@meyering.net>
14317
14318         Rewrite fts.c not to change the current working directory,
14319         by using openat, fstatat, fdopendir, etc..
14320
14321         * lib/fts.c [! _LIBC]: Include "openat.h" and "unistd--.h".
14322         (HAVE_OPENAT_SUPPORT): Define.
14323         [_LIBC] (fchdir): Don't undef or define; no longer used.
14324         (FCHDIR): Define in terms of cwd_advance_fd rather than fchdir.
14325         Now, this `function' always succeeds, and consumes its file descriptor
14326         parameter -- so callers must not close such FDs.  Update callers.
14327         (diropen_fd, opendirat, cwd_advance_fd): New functions.
14328         (diropen): Add parameter, SP.  Adjust all callers.
14329         Implement using diropen_fd, rather than open.
14330         (fts_open): Initialize new member, fts_cwd_fd.
14331         Remove fts_rft-setting code.
14332         (fts_close): Close fts_cwd_fd, if necessary.
14333         (__opendir2): Define in terms of opendir or opendirat,
14334         depending on whether the FST_NOCHDIR flag is set.
14335         (fts_build): Since fts_safe_changedir consumes its FD, and since
14336         this code must do `closedir(dirp)', dup the dirfd(dirp) argument,
14337         and close the dup'd file descriptor upon failure.
14338         (fts_stat): Use fstatat(...AT_SYMLINK_NOFOLLOW) in place of lstat.
14339         (fts_safe_changedir): Tweak semantics to reflect that this function
14340         now calls cwd_advance_fd and hence consumes its FD argument.
14341         * lib/fts_.h [struct FTS] (fts_cwd_fd): New member.
14342         [struct FTS] (fts_rft): Remove now-unused member.
14343         [struct FTS] (fts_cycle.state): Improve comment.
14344
14345         * lib/openat.c (openat_needs_fchdir): New function.
14346         * lib/openat.h (openat_needs_fchdir): Declare it.
14347
14348 2006-08-16  Paul Eggert  <eggert@cs.ucla.edu>
14349
14350         * lib/memcoll.c (memcoll): Set errno = 0 in the shortcut case, too.
14351         Problem and fix reported by Pádraig Brady in
14352         <http://lists.gnu.org/archive/html/bug-coreutils/2006-08/msg00099.html>.
14353
14354 2006-08-15  Paul Eggert  <eggert@cs.ucla.edu>
14355
14356         * modules/cycle-check (configure.ac): Add gl_CYCLE_CHECK.
14357
14358 2006-08-15  Paul Eggert  <eggert@cs.ucla.edu>
14359
14360         * lib/memcoll.c (memcoll): Optimize for the common case where the
14361         arguments are bytewise equal.
14362
14363 2006-08-15  Paul Eggert  <eggert@cs.ucla.edu>
14364
14365         * doc/regexprops-generic.texi: Add a copyright notice.
14366
14367 2006-08-15  Bruno Haible  <bruno@clisp.org>
14368
14369         * modules/tmpdir (License): Change to LGPL.
14370
14371 2006-08-15  Bruno Haible  <bruno@clisp.org>
14372
14373         * gnulib-tool (func_all_modules, func_verify_module): COPYING is not a
14374         module.
14375
14376 2006-08-14  Simon Josefsson  <jas@extundo.com>
14377
14378         * config/srclist.txt: Add gnupload.
14379
14380 2006-08-14  Paul Eggert  <eggert@cs.ucla.edu>
14381
14382         Change copyright notice from LGPL 2 to GPL 2, since that's the
14383         standard form used in the gnulib repository.
14384         * tests/test-lock.c: Likewise.
14385         * tests/test-stdint.c: Likewise.
14386         * tests/test-tls.c: Likewise.
14387
14388         * users.txt: Add bison, diffutils, libprelude, prelude-lml,
14389         prelude-manager.  User shorter URLs for GNU projects, without '?'.
14390         Add copyright notice.
14391
14392         * check-module: Add copyright notice.  Output a copyright
14393         notice if "--version" is specified.
14394         * modules/COPYING: New file.
14395         * tests/test-getaddrinfo.c: Add copyright notice.
14396         * tests/test-verify.c: Likewise.
14397
14398 2006-08-14  Paul Eggert  <eggert@cs.ucla.edu>
14399
14400         Change copyright notice from LGPL 2 to GPL 2, since that's the
14401         standard form used in the gnulib repository.
14402         * lib/lock.c: LGPL -> GPL.
14403         * lib/lock.h: Likewise.
14404         * lib/strnlen1.c: Likewise.
14405         * lib/strnlen1.h: Likewise.
14406         * lib/tls.c: Likewise.
14407         * lib/tls.h: Likewise.
14408         * lib/tmpdir.c: Likewise.
14409
14410         * lib/TODO: Remove; this belongs only in coreutils.
14411
14412 2006-08-14  Paul Eggert  <eggert@cs.ucla.edu>
14413
14414         Add copyright notices to long-enough files that lack them, since
14415         otherwise the files aren't clearly free.  Use the same notice that
14416         getdate.texi already uses.
14417         * doc/alloca-opt.texi: Add copyright notice.
14418         * doc/alloca.texi: Likewise.
14419         * doc/ctime.texi: Likewise.
14420         * doc/functions.texi: Likewise.
14421         * doc/gcd.texi: Likewise.
14422         * doc/gnulib-tool.texi: Likewise.
14423         * doc/inet_ntoa.texi: Likewise.
14424         * doc/visibility.texi: Likewise.
14425
14426         * doc/getdate.texi: Update FDL version from 1.1 to 1.2.
14427         * doc/quote.texi: Add copyright notice.
14428
14429         * doc/solaris-versions: Add SunOS 5.10, SunOS 1.x, SunOS 4.0, SunOS
14430         4.0.x, SunOS 4.1.1.1, SunOS 4.1.1_U1, SunOS 4.1.3B.  SunOS 4.1.3
14431         was Solaris 1.1A.  Remove space before B in Solaris 1.1.1B.
14432         Mention SunOS 5.11.  Mention that everything before SunOS 5.7
14433         is now obsolete, and give a pointer to the Sun list.
14434         Add copyright notice.
14435
14436 2006-08-14  Paul Eggert  <eggert@cs.ucla.edu>
14437
14438         * config/srclistvars.sh: Add copyright notice.
14439
14440 2006-08-14  Eric Blake  <ebb9@byu.net>
14441
14442         Import the following change from libc:
14443
14444         2006-08-12  Ulrich Drepper  <drepper@redhat.com>
14445
14446         Upstream bug 2997.
14447         * lib/misc/error.c: Add space between program name and message if file
14448         name is missing.
14449
14450 2006-08-12  Karl Berry  <karl@gnu.org>
14451
14452         * config/srclist.txt (ssize_t.m4, sig_atomic_t.m4, signalblocking.m4):
14453         remove, these originate in gnulib now.
14454
14455 2006-08-11  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
14456
14457         * doc/Makefile (standards.info standards.html standards.dvi):
14458         Also depend on make-stds.texi.
14459
14460 2006-08-11  Paul Eggert  <eggert@cs.ucla.edu>
14461
14462         * lib/pipe-safer.c (pipe_safer): Fix misspelling: HAVE_FUNC_PIPE ->
14463         HAVE_PIPE.  Fix a file descriptor leak when fd_safer fails.
14464
14465         * lib/regex_internal.c (re_string_skip_chars): Don't assume WEOF fits
14466         in wchar_t.  Problem reported by Eric Blake.
14467
14468         * lib/snprintf.c (snprintf): memcpy LEN bytes, not SIZE - 1, when
14469         LEN is smaller than SIZE.  Suggested by Bruno Haible.
14470         Also, help the compiler to keep LEN in a register.
14471
14472 2006-08-11  Eric Blake  <ebb9@byu.net>
14473
14474         * users.txt: Sort.  Add tar.
14475
14476 2006-08-11  Bruno Haible  <bruno@clisp.org>
14477
14478         * users.txt: New file.
14479
14480 2006-08-11  Bruno Haible  <bruno@clisp.org>
14481
14482         * m4/wcwidth.m4 (gl_FUNC_WCWIDTH): Include <stdio.h> and <time.h>
14483         before <wchar.h>. Needed for OSF/1 and BSD/OS.
14484
14485 2006-08-10  Paul Eggert  <eggert@cs.ucla.edu>
14486
14487         * modules/snprintf (Depends-on): Remove minmax.
14488         (Maintainer): Add self and Bruno.
14489
14490 2006-08-10  Paul Eggert  <eggert@cs.ucla.edu>
14491
14492         * lib/.cppi-disable: Add snprintf.h, socket_.h.
14493         * lib/snprintf.c: Include <errno.h> and <limits.h>.
14494         (EOVERFLOW): Define if the system does not.
14495         Do not include "minmax.h"; it wasn't used.
14496         (snprintf): Don't assume size_t promotes to an unsigned type.
14497         Fix bug when generated string was too long for the buffer: the
14498         buffer's contents are supposed to be the initial prefix of the
14499         output.  Don't assume vasnprintf returns EOVERFLOW if the size
14500         exceeds INT_MAX; do the check ourselves.
14501
14502         Import the following changes from libc:
14503
14504         2006-06-02  Jakub Jelinek  <jakub@redhat.com>
14505
14506         * lib/posix/regex_internal.c (re_string_skip_chars): If no character
14507         has been converted at all, set *last_wc to WEOF.  If mbrtowc failed,
14508         set wc to the byte which couldn't be converted.
14509         (re_string_reconstruct): Don't clear valid_raw_len before calling
14510         re_string_skip_chars.  If wc is WEOF after re_string_skip_chars, set
14511         tip_context using re_string_context_at.
14512
14513         2006-05-02  Ulrich Drepper  <drepper@redhat.com>
14514
14515         * lib/posix/regex.h: g++ still cannot handled [restrict].
14516
14517         2006-04-21  Ulrich Drepper  <drepper@redhat.com>
14518
14519         * lib/posix/regex.h: Remove special handling for VMS.
14520
14521 2006-08-10  Jim Meyering  <jim@meyering.net>
14522
14523         * modules/same-inode: New module.
14524         * modules/dev-ino: New module.
14525         * modules/cycle-check: Depend on these modules, rather than simply
14526         including their .h files.
14527         (Makefile.am): Don't list cycle-check.[ch] here, now that they're
14528         required via m4/cycle-check.m4.
14529         * modules/same: Depend on new same-inode module, rather than
14530         including same-inode.h.
14531         * modules/chdir-safer: New file.
14532
14533         * modules/chown (Depends-on): Add stat-macros.
14534
14535 2006-08-10  Jim Meyering  <jim@meyering.net>
14536
14537         * m4/cycle-check.m4: New file.
14538         Require gl_STRUCT_DEV_INO and gl_SAME_INODE.
14539         * m4/dev-ino.m4, m4/same-inode.m4: New files.
14540
14541 2006-08-10  Eric Blake  <ebb9@byu.net>
14542
14543         * modules/verror (Depends-on): Remove bogus gl_VERROR that snuck
14544         in from original proposal.
14545
14546 2006-08-10  Eric Blake  <ebb9@byu.net>
14547         and Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
14548
14549         * gnulib-tool (func_import): Detect unexpanded macros in gnulib
14550         namespace.
14551
14552 2006-08-10  Bruno Haible  <bruno@clisp.org>
14553
14554         * gnulib-tool (func_create_testdir): Detect unexpanded macros here
14555         as well.
14556
14557 2006-08-09  Paul Eggert  <eggert@cs.ucla.edu>
14558
14559         Sync from coreutils.
14560
14561         2006-07-19  Mike Frysinger  <vapier@gentoo.org>
14562
14563         * lib/mountlist.c [ME_REMOTE]: Filter out cifs.
14564         Reported by Toralf Förster in <http://bugs.gentoo.org/141012>.
14565
14566 2006-08-09  Paul Eggert  <eggert@cs.ucla.edu>
14567
14568         * modules/restrict: Remove; no longer needed now that we assume
14569         Autoconf 2.59 or later.
14570         * MODULES.html.sh: Remove 'restrict'.
14571         * modules/argp (Depends-on): Remove 'restrict'.
14572         * modules/base64 (Depends-on): Likewise.
14573         * modules/gc (Depends-on): Likewise.
14574         * modules/getaddrinfo (Depends-on): Likewise.
14575         * modules/glob (Depends-on): Likewise.
14576         * modules/inet_ntop (Depends-on): Likewise.
14577         * modules/inet_pton (Depends-on): Likewise.
14578         * modules/memxor (Depends-on): Likewise.
14579         * modules/regex (Depends-on): Likewise.
14580         * modules/strtok_r (Depends-on): Likewise.
14581         * modules/time_r (Depends-on): Likewise.
14582
14583 2006-08-09  Paul Eggert  <eggert@cs.ucla.edu>
14584
14585         * m4/argp.m4 (gl_ARGP): Require AC_C_RESTRICT.
14586         * m4/gc.m4 (gl_PREREQ_GC): Likewise.
14587         * m4/glob.m4 (gl_PREREQ_GLOB): Likewise.
14588         * m4/inet_ntop.m4 (gl_PREREQ_INET_NTOP): Likewise.
14589         * m4/inet_pton.m4 (gl_PREREQ_INET_PTON): Likewise.
14590         * m4/memxor.m4 (gl_MEMXOR): Likewise.
14591         * m4/restrict.m4: Remove; no longer needed.  All remaining uses of
14592         gl_C_RESTRICT replaced by AC_C_RESTRICT.
14593
14594         Merge from coreutils.
14595         * m4/regex.m4 (gl_PREREQ_REGEX): Require AC_C_RESTRICT, not
14596         gl_C_RESTRICT, now that we assume Autoconf 2.59 or later.
14597         * m4/strtok_r.m4 (gl_FUNC_STRTOK_R): Likewise.
14598         * m4/time_r.m4 (gl_TIME_R): Likewise.
14599
14600 2006-08-09  Karl Berry  <karl@gnu.org>
14601
14602         * config/srclist.txt: no more gettext-tools, per Bruno.
14603
14604 2006-08-08  Eric Blake  <ebb9@byu.net>
14605
14606         * modules/verror: New module.
14607         * MODULES.html.sh: Document it.
14608
14609 2006-08-08  Eric Blake  <ebb9@byu.net>
14610
14611         * lib/verror.h, lib/verror.c: New files.
14612
14613 2006-08-08  Eric Blake  <ebb9@byu.net>
14614
14615         * lib/verror.c (verror_at_line): Work around glibc bug 2997, so that
14616         verror_at_line output complies with GNU Coding Standards even when
14617         file is NULL.
14618
14619 2006-08-07  Bruno Haible  <bruno@clisp.org>
14620
14621         * lib/allocsa.h (sa_alignof) [_AIX]: Also consider 'long long' in newer
14622         versions of AIX.
14623         Reported by Ralf Wildenhues.
14624
14625 2006-08-07  Bruno Haible  <bruno@clisp.org>
14626
14627         * gnulib-tool (func_create_testdir): Wrap the set of autoconf snippets
14628         in an AC_DEFUN. Needed so that the autoconf snippets can use
14629         AC_REQUIRE.
14630
14631 2006-08-06  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
14632
14633         * gnulib-tool (func_emit_lib_Makefile_am, func_emit_tests_Makefile_am):
14634         Initialize pkgdata_DATA.
14635         * modules/javaversion (Makefile.am): Add to pkgdata_DATA, rather than
14636         overriding it.
14637
14638 2006-08-06  Eric Blake  <ebb9@byu.net>
14639
14640         * lib/error.h: Fold in some upstream changes from glibc.
14641         * lib/error.c: Likewise.
14642
14643 2006-08-04  Bruno Haible  <bruno@clisp.org>
14644
14645         * gnulib-tool (func_emit_lib_Makefile_am, func_emit_tests_Makefile_am):
14646         Make the mostlyclean-local rule depend on mostlyclean-generic.
14647         Reported by Jim Meyering. Solution suggested by Ralf Wildenhues.
14648
14649 2006-07-31  Bruno Haible  <bruno@clisp.org>
14650
14651         * m4/localcharset.m4 (gl_LOCALCHARSET): Remove tests for <stddef.h>,
14652         <stdlib.h>, <string.h>.
14653
14654 2006-07-30  Bruno Haible  <bruno@clisp.org>
14655
14656         * modules/readlink (License): Change to LGPL.
14657
14658 2006-07-30  Bruno Haible  <bruno@clisp.org>
14659
14660         * modules/javaversion (Makefile.am): Distribute javaversion.java and
14661         javaversion.class. Also install javaversion.class in $(pkgdatadir) and
14662         set PKGDATADIR to point to it.
14663
14664 2006-07-30  Bruno Haible  <bruno@clisp.org>
14665
14666         * modules/csharpexec (configure.ac): Comment out macro invocation.
14667         * modules/javaexec (configure.ac): Likewise.
14668         * modules/javacomp-script (configure.ac): Likewise.
14669
14670         * modules/csharpcomp-script (configure.ac): Use AC_REQUIRE.
14671
14672 2006-07-30  Bruno Haible  <bruno@clisp.org>
14673
14674         * modules/clean-temp (Depends-on): Add linkedhash-list, remove
14675         linked-list.
14676
14677 2006-07-30  Bruno Haible  <bruno@clisp.org>
14678
14679         * m4/wcwidth.m4 (gl_FUNC_WCWIDTH): Assume <string.h> exists.
14680
14681 2006-07-30  Bruno Haible  <bruno@clisp.org>
14682
14683         * gnulib-tool (func_emit_lib_Makefile_am, func_emit_tests_Makefile_am):
14684         Initialize MOSTLYCLEANFILES to core and *.stackdump, so that core dumps
14685         get removed.
14686
14687 2006-07-29  Bruno Haible  <bruno@clisp.org>
14688
14689         Make it possible for gnulib-tool to work with locally modified or
14690         augmented gnulib repositories.
14691         * gnulib-tool (func_usage): Document --local-dir option.
14692         (local_gnulib_dir): New variable.
14693         Handle --local-dir option.
14694         (func_lookup_file): New function.
14695         (func_all_modules, func_verify_module): Look also in $local_gnulib_dir.
14696         (func_get_description, func_get_filelist, func_get_description,
14697         func_get_filelist, func_get_dependencies, func_get_autoconf_snippet,
14698         func_get_automake_snippet, func_get_include_directive,
14699         func_get_license, func_get_maintainer): Use func_lookup_file.
14700         (func_import, func_create_testdir): Use func_lookup_file.
14701
14702 2006-07-29  Bruno Haible  <bruno@clisp.org>
14703
14704         * modules/setenv (Depends-on): Add unistd.
14705
14706 2006-07-29  Bruno Haible  <bruno@clisp.org>
14707
14708         * lib/setenv.c: Undo unintended modification done on 2006-02-27.
14709
14710 2006-07-29  Bruno Haible  <bruno@clisp.org>
14711
14712         * lib/localcharset.c: Assume <stddef.h>, <stdlib.h>, <string.h> exist.
14713
14714 2006-07-29  Bruno Haible  <bruno@clisp.org>
14715
14716         * gnulib-tool (import, update): If there is no Makefile.am, look at
14717         aclocal.m4, instead of bailing out.
14718
14719 2006-07-29  Bruno Haible  <bruno@clisp.org>
14720
14721         * gnulib-tool (func_usage): Revert most of the 2006-07-15 change.
14722         Categorize the options by when they are useful.
14723
14724 2006-07-29  Bruno Haible  <bruno@clisp.org>
14725
14726         * gnulib-tool (func_usage): Document option --no-libtool.
14727         Handle option --no-libtool.
14728         (func_emit_lib_Makefile_am, func_emit_tests_Makefile_am): Update
14729         for changed semantics of $libtool variable.
14730         (func_import): Likewise. If libtool is not used, show this through
14731         an option --no-libtool.
14732         (func_create_testdir): Update.
14733
14734 2006-07-29  Bruno Haible  <bruno@clisp.org>
14735
14736         * gnulib-tool (func_import): Extend error message about missing
14737         --doc-base.
14738
14739 2006-07-29  Bruno Haible  <bruno@clisp.org>
14740
14741         * gnulib-tool (func_import): Don't create the $docbase directory if
14742         there is no file to store there.
14743
14744 2006-07-29  Bruno Haible  <bruno@clisp.org>
14745
14746         * gnulib-tool (autoconf_minversion): If a --dir option is given and
14747         relevant, look for configure.ac there, not in the current directory.
14748         Also use a simple search for AC_PREREQ, not "autoconf --trace".
14749
14750 2006-07-29  Bruno Haible  <bruno@clisp.org>
14751
14752         * gnulib-tool (SORT): New variable.
14753         (func_usage): Undocument --assume-autoconf option.
14754         Remove --assume-autoconf option handling.
14755         (autoconf_minversion): Determine from the contents of configure.ac.
14756         (func_import): Remove autoconf_minversion handling.
14757         Suggested by Eric Blake.
14758
14759 2006-07-29  Bruno Haible  <bruno@clisp.org>
14760
14761         * doc/gnulib-tool.texi (gl_LIBTOOL): Mention --no-libtool option.
14762
14763 2006-07-29  Bruno Haible  <bruno@clisp.org>
14764
14765         * config/srclist.txt (*setenv.[ch]): Remove rules.
14766
14767 2006-07-28  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
14768
14769         * m4/inet_pton.m4, inet_ntop.m4: Check for netinet/in.h too.
14770
14771 2006-07-28  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
14772
14773         * lib/inet_ntop.h, inet_pton.h: Need to include netinet/in.h before
14774         arpa/inet.h.
14775
14776 2006-07-28  Simon Josefsson  <jas@extundo.com>
14777
14778         * modules/inet_ntop (Depends-on): Depend on arpa_inet.
14779         * modules/inet_pton (Depends-on): Likewise.
14780
14781 2006-07-28  Simon Josefsson  <jas@extundo.com>
14782
14783         * m4/netinet_in_h.m4: New file.
14784
14785 2006-07-28  Simon Josefsson  <jas@extundo.com>
14786
14787         * lib/inet_ntop.h, inet_pton.h: No need to guard netinet/in.h
14788         #include's.
14789
14790 2006-07-28  Simon Josefsson  <jas@extundo.com>
14791
14792         * lib/inet_ntop.h, inet_pton.h: No need to guard arpa/inet.h
14793         #include's.
14794
14795 2006-07-28  Paul Eggert  <eggert@cs.ucla.edu>
14796
14797         * lib/modechange.c (mode_compile): Numeric modes now affect setuid and
14798         setgid on directories only if they set these bits.
14799         * lib/modechange.h: Remove obsolete comment about masks.
14800
14801 2006-07-28  Eric Blake  <ebb9@byu.net>
14802
14803         * lib/regex_internal.h (struct re_dfa_t) [!_LIBC]: Avoid invalid C89
14804         macro expansion.
14805
14806 2006-07-28  Bruno Haible  <bruno@clisp.org>
14807
14808         * lib/inet_ntop.h, inet_pton.h: Use #if HAVE* instead of #ifdef HAVE*.
14809
14810 2006-07-28  Bruno Haible  <bruno@clisp.org>
14811
14812         * m4/mbchar.m4 (gl_MBCHAR): Also test for iswcntrl.
14813
14814 2006-07-28  Bruno Haible  <bruno@clisp.org>
14815
14816         * lib/mbchar.h (iswalnum, iswalpha, iswblank, iswcntrl, iswdigit,
14817         iswgraph, iswlower, iswprint, iswpunct, iswspace, iswupper, iswxdigit):
14818         Define fallbacks.
14819         Avoids link error on FreeBSD 4.x.
14820         Reported by Yoann Vandoorselaere <yoann.v@prelude-ids.com>.
14821
14822         * lib/wcwidth.h (iswprint): Assume an ASCII compatible wide character
14823         encoding.
14824         * lib/mbswidth.c (iswcntrl): Likewise.
14825
14826 2006-07-27  Bruno Haible  <bruno@clisp.org>
14827
14828         * m4/stdint.m4 (gl_STDINT_H): Define __STDC_CONSTANT_MACROS during the
14829         test.
14830
14831 2006-07-27  Bruno Haible  <bruno@clisp.org>
14832
14833         * lib/stdint_.h (INT*_C, UINT*_C) [C++]: Define these if
14834         __STDC_CONSTANT_MACROS is defined, not if __STDC_LIMIT_MACROS is
14835         defined.
14836
14837 2006-07-26  Eric Blake  <ebb9@byu.net>
14838
14839         * m4/unistd-safer.m4 (gl_UNISTD_SAFER): Check for missing pipe.
14840
14841 2006-07-26  Eric Blake  <ebb9@byu.net>
14842
14843         * lib/mkstemp-safer.c [! HAVE_MKSTEMP]: Add prototype for platforms
14844         like mingw that lack mkstemp.
14845         * lib/pipe-safer.c (pipe_safer) [!HAVE_FUNC_PIPE]: Provide fallback to
14846         avoid compilation warning on mingw.
14847
14848 2006-07-26  Bruno Haible  <bruno@clisp.org>
14849
14850         * m4/stdint.m4 (gl_STDINT_H): Also verify the existence of the macros
14851         INT*_MIN, INT_LEAST*_MAX, INT_LEAST*_MIN, UINT_LEAST*_MAX,
14852         INT_FAST*_MIN, INTPTR_MIN.
14853
14854 2006-07-25  Bruno Haible  <bruno@clisp.org>
14855
14856         * modules/version-etc (Depends-on): Add stdarg.
14857
14858 2006-07-25  Bruno Haible  <bruno@clisp.org>
14859
14860         * m4/stdint.m4 (gl_INTEGER_TYPE_SUFFIX): Avoid 'eval' in front of
14861         complex commands.
14862
14863 2006-07-25  Bruno Haible  <bruno@clisp.org>
14864
14865         * lib/version-etc.c (version_etc_va): Use va_copy, assumed to be
14866         defined in <stdarg.h> or config.h.
14867
14868 2006-07-24  Paul Eggert  <eggert@cs.ucla.edu>
14869
14870         * m4/stdio-safer.m4 (gl_FOPEN_SAFER, gl_TMPFILE_SAFER): New macros.
14871         (gl_STDIO_SAFER): Remove.
14872
14873 2006-07-24  Paul Eggert  <eggert@cs.ucla.edu>
14874
14875         * MODULES.html.sh (File stream based Input/Output):
14876         Add fopen-safer, tmpfile-safer; remove stdio-safer.
14877         * modules/getusershell (Depends-on): Change stdio-safer to fopen-safer.
14878         * modules/fopen-safer, modules/tmpfile-safer: New files.
14879         * modules/stdio-safer: Remove.
14880
14881 2006-07-24  Bruno Haible  <bruno@clisp.org>
14882
14883         * modules/tmpdir: New file.
14884         * MODULES.html.sh (File system functions): Add it.
14885
14886 2006-07-24  Bruno Haible  <bruno@clisp.org>
14887
14888         * modules/javacomp (Depends-on): Add unistd, javaversion, binary-io,
14889         getline, pathname, fwriteerror, clean-temp, xvasprintf, strstr.
14890
14891 2006-07-24  Bruno Haible  <bruno@clisp.org>
14892
14893         * modules/clean-temp: New file.
14894
14895 2006-07-24  Bruno Haible  <bruno@clisp.org>
14896
14897         * m4/tmpdir.m4: New file, from GNU gettext.
14898
14899 2006-07-24  Bruno Haible  <bruno@clisp.org>
14900
14901         * lib/tmpdir.h: New file, from GNU gettext.
14902         * lib/tmpdir.c: New file, from GNU gettext.
14903
14904 2006-07-24  Bruno Haible  <bruno@clisp.org>
14905
14906         * lib/clean-temp.h: New file, from GNU gettext.
14907         * lib/clean-temp.c: New file, from GNU gettext.
14908
14909 2006-07-23  Eric Blake  <ebb9@byu.net>
14910
14911         * modules/stdio-safer (Files): Add tmpfile-safer.c.
14912         (Depends-on): Add binary-io.
14913
14914 2006-07-23  Eric Blake  <ebb9@byu.net>
14915
14916         * m4/stdio-safer.m4 (gl_STDIO_SAFER): Add tmpfile-safer.c.
14917
14918 2006-07-23  Eric Blake  <ebb9@byu.net>
14919
14920         * lib/tmpfile-safer.c: New file.
14921         * lib/stdio-safer.h (fopen_safer): Add prototype.
14922         * lib/stdio--.h (tmpfile): Make safer.
14923
14924 2006-07-23  Bruno Haible  <bruno@clisp.org>
14925
14926         * lib/gl_anylinked_list2.h (ASYNCSAFE): New macro.
14927         (gl_linked_add_first, gl_linked_add_last, gl_linked_add_before,
14928         gl_linked_add_after, gl_linked_add_at, gl_linked_remove_node,
14929         gl_linked_remove_at): Use it.
14930
14931 2006-07-22  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
14932         and Simon Josefsson <jas@extundo.com>
14933
14934         * lib/getaddrinfo.h (AI_PASSIVE): Make sure it is defined.
14935
14936         * lib/getaddrinfo.c (getaddrinfo): Support AI_PASSIVE.
14937
14938 2006-07-22  Paul Eggert  <eggert@cs.ucla.edu>
14939
14940         * modules/close-stream: New file.
14941         * modules/closeout (Description): Make it clear that it exits
14942         with a diagnostic on error.
14943         (Depends-on): Add close-stream.  Remove fpending, stdbool.
14944         * MODULES.html.sh (File stream based Input/Output): Add close-stream.
14945
14946 2006-07-22  Paul Eggert  <eggert@cs.ucla.edu>
14947
14948         * m4/close-stream.m4: New file.
14949
14950 2006-07-22  Paul Eggert  <eggert@cs.ucla.edu>
14951
14952         * lib/close-stream.c, lib/close-stream.h: New files.
14953
14954 2006-07-22  Bruno Haible  <bruno@clisp.org>
14955
14956         Merge from GNU gettext 0.15.
14957
14958         2006-05-01  Bruno Haible  <bruno@clisp.org>
14959
14960                 * build-aux/javacomp.sh.in: Update for changed javacomp.m4.
14961
14962         2006-07-22  Bruno Haible  <bruno@clisp.org>
14963
14964                 * modules/javaversion: New file.
14965                 * MODULES.html.sh (Java): Add javaversion.
14966
14967         2006-03-12  Bruno Haible  <bruno@clisp.org>
14968
14969                 * build-aux/javaexec.sh.in: Update for changed javaexec.m4.
14970
14971         2005-12-04  Bruno Haible  <bruno@clisp.org>
14972
14973                 * build-aux/csharpexec.sh.in: Add support for 'clix' launcher
14974                 (untested).
14975
14976         2006-06-21  Bruno Haible  <bruno@clisp.org>
14977
14978                 Avoid warnings from recent versions of mcs.
14979                 * build-aux/csharpcomp.sh.in (options_mcs): Don't use options
14980                 -o, -L, -r any more. Use options documented since mcs-1.0
14981                 instead. Similarly for -g.
14982
14983         2005-12-04  Bruno Haible  <bruno@clisp.org>
14984
14985                 * build-aux/csharpcomp.sh.in: Suffix for resources is
14986                 .resources, not .resource.
14987
14988         2005-07-09  Bruno Haible  <bruno@clisp.org>
14989
14990                 * build-aux/csharpcomp.sh.in (options_csc): For -l option,
14991                 add a .dll suffix.
14992                 Reported by Mark Junker <mjscod@gmx.de>.
14993
14994         2006-07-22  Bruno Haible  <bruno@clisp.org>
14995
14996                 * modules/gettext: Upgrade to gettext-0.15.
14997                 (Files): Remove m4/isc-posix.m4. Add m4/lock.m4,
14998                 m4/visibility.m4.
14999                 Replace m4/inttypes.m4 with m4/inttypes-h.m4.
15000
15001 2006-07-22  Bruno Haible  <bruno@clisp.org>
15002
15003         Merge from GNU gettext 0.15.
15004
15005         2006-03-25  Bruno Haible  <bruno@clisp.org>
15006
15007                 * lib-link.m4 (AC_LIB_LINKFLAGS_FROM_LIBS): New macro.
15008
15009         2006-07-21  Bruno Haible  <bruno@clisp.org>
15010
15011                 * javacomp.m4 (gt_JAVACOMP): Convert target_version "null" to
15012                 "1.1".
15013
15014         2006-05-09  Bruno Haible  <bruno@clisp.org>
15015
15016                 * javacomp.m4 (gt_JAVACOMP): On Cygwin, set
15017                 CLASSPATH_SEPARATOR to a semicolon. Use CLASSPATH_SEPARATOR
15018                 for the conftestver execution.
15019
15020         2006-05-01  Bruno Haible  <bruno@clisp.org>
15021
15022                 * javacomp.m4 (gt_JAVACOMP): Accept a source-version and an
15023                 optional target-version argument. Verify that the compiler
15024                 groks source of the specified source-version, or add -source
15025                 option as necessary. Verify that the compiler produces
15026                 bytecode in the specified target-version, or add -target and
15027                 -source options as necessary. Make the result of the test
15028                 available as variable CONF_JAVAC. Also log error output in
15029                 config.log.
15030
15031         2006-03-11  Bruno Haible  <bruno@clisp.org>
15032
15033                 * javacomp.m4 (gt_JAVACOMP): Treat gcj-4.x like gcj-3.x.
15034
15035         2006-05-09  Bruno Haible  <bruno@clisp.org>
15036
15037                 * javaexec.m4 (gt_JAVAEXEC): On Cygwin, set
15038                 CLASSPATH_SEPARATOR to a semicolon.
15039
15040         2006-03-12  Bruno Haible  <bruno@clisp.org>
15041
15042                 * javaexec.m4 (gt_JAVAEXEC): Make the result of the test
15043                 available as variable CONF_JAVA, for subsequent autoconf
15044                 tests. Also log error output in config.log.
15045
15046         2006-07-19  Bruno Haible  <bruno@clisp.org>
15047
15048                 * getline.m4 (AM_FUNC_GETLINE): When cross-compiling, assume
15049                 that getline works on glibc2 systems. Needed to avoid trouble
15050                 in relocatable.c.
15051                 Reported by Nils Magnus Larsgard <nmlarsgaard@atmel.no>.
15052
15053         2005-12-04  Bruno Haible  <bruno@clisp.org>
15054
15055                 * csharpexec.m4 (gt_CSHARPEXEC): Add support for 'clix'
15056                 launcher (untested).
15057
15058         2005-12-04  Bruno Haible  <bruno@clisp.org>
15059
15060                 * csharpcomp.m4 (gt_CSHARPCOMP): Also set CSHARPCOMPFLAGS.
15061
15062         2006-07-22  Bruno Haible  <bruno@clisp.org>
15063
15064                 * gettext.m4: Update from GNU gettext-0.15.
15065                 * nls.m4: Likewise.
15066                 * po.m4: Likewise.
15067                 * inttypes-pri.m4: Likewise.
15068                 * inttypes-h.m4: Renamed from inttypes.m4.
15069                 (gl_HEADER_INTTYPES_H): Renamed from gt_HEADER_INTTYPES_H.
15070
15071 2006-07-22  Bruno Haible  <bruno@clisp.org>
15072
15073         Merge from GNU gettext 0.15.
15074
15075         2005-07-05  Bruno Haible  <bruno@clisp.org>
15076
15077                 * printf-args.c (printf_fetchargs): Work around broken
15078                 definition of wint_t on mingw.
15079
15080         2005-02-12  Bruno Haible  <bruno@clisp.org>
15081
15082                 * xallocsa.h: Add extern "C" for C++.
15083
15084         2006-05-17  Bruno Haible  <bruno@clisp.org>
15085
15086                 Cygwin portability.
15087                 * progreloc.c (WIN32_NATIVE): Renamed from WIN32.
15088
15089         2006-04-30  Bruno Haible  <bruno@clisp.org>
15090
15091                 * progreloc.c: Include <mach-o/dyld.h> if available.
15092                 (find_executable): Use _NSGetExecutablePath when possible.
15093
15094         2006-05-06  Charles Wilson  <cygwin@cwilson.fastmail.fm>
15095
15096                 * progreloc.c (maybe_executable) [CYGWIN]: Use the access()
15097                 function.
15098
15099         2005-12-29  Bruno Haible  <bruno@clisp.org>
15100
15101                 * progreloc.c (set_program_name_and_installdir): Fix
15102                 compilation error.
15103
15104         2005-12-04  Bruno Haible  <bruno@clisp.org>
15105
15106                 Cygwin portability.
15107                 * progreloc.c: Include <windows.h> also on Cygwin.
15108                 (find_executable): Add support for Cygwin.
15109                 (set_program_name_and_installdir): Handle also platforms with
15110                 nonempty EXEEXT.
15111
15112         2006-07-11  Bruno Haible  <bruno@clisp.org>
15113
15114                 * javacomp.c: Fix a comment.
15115                 Reported by Jim Meyering.
15116
15117         2006-04-30  Bruno Haible  <bruno@clisp.org>
15118
15119                 * javacomp.h (compile_java_class): Add source_version,
15120                 target_version arguments.
15121                 * javacomp.c: Rewritten to choose only a compiler that
15122                 respects the specified source_version and target_version.
15123
15124         2006-06-27  Bruno Haible  <bruno@clisp.org>
15125
15126                 Assume correct S_ISDIR macro.
15127                 * mkdtemp.c: Remove test of STAT_MACROS_BROKEN.
15128
15129         2006-07-22  Bruno Haible  <bruno@clisp.org>
15130
15131                 * javaversion.h: New file, from GNU gettext.
15132                 * javaversion.c: New file, from GNU gettext.
15133                 * javaversion.java: New file, from GNU gettext.
15134                 * javaversion.class: New file, from GNU gettext.
15135
15136         2006-05-17  Bruno Haible  <bruno@clisp.org>
15137
15138                 Cygwin portability.
15139                 * javaexec.c (execute_java_class): Test for jview program
15140                 also on Cygwin.
15141
15142         2006-04-09  Bruno Haible  <bruno@clisp.org>
15143
15144                 * fatal-signal.c: Don't include string.h.
15145                 (at_fatal_signal): Use a copying loop instead of memcpy.
15146
15147         2005-12-04  Bruno Haible  <bruno@clisp.org>
15148
15149                 * csharpexec.c: Add support for 'clix' launcher (untested).
15150                 (execute_csharp_using_sscli): New function.
15151                 (execute_csharp_program): Call it.
15152
15153         2006-06-21  Bruno Haible  <bruno@clisp.org>
15154
15155                 Avoid warnings from recent versions of mcs.
15156                 * csharpcomp.c (compile_csharp_using_mono): Don't use options
15157                 -o, -L, -r any more. Use options documented since mcs-1.0
15158                 instead. Similarly for -g.
15159
15160         2005-07-09  Bruno Haible  <bruno@clisp.org>
15161
15162                 * csharpcomp.c (compile_csharp_using_sscli): For -l option,
15163                 add a .dll suffix.
15164                 Reported by Mark Junker <mjscod@gmx.de>.
15165
15166         2006-06-17  Bruno Haible  <bruno@clisp.org>
15167
15168                 * config.charset: Update for NetBSD 3.0.
15169
15170         2006-05-17  Bruno Haible  <bruno@clisp.org>
15171
15172                 Cygwin portability.
15173                 * localcharset.c (WIN32_NATIVE): Renamed from WIN32.
15174
15175         2006-05-16  Bruno Haible  <bruno@clisp.org>
15176
15177                 * localcharset.c [CYGWIN]: Include <windows.h>.
15178                 (get_charset_aliases): For Cygwin, return the same CPxxx
15179                 aliases list as under WIN32.
15180                 (locale_charset) [CYGWIN]: Try to retrieve the encoding from
15181                 the environment variables. Fall back to GetACP().
15182
15183         2006-04-05  Bruno Haible  <bruno@clisp.org>
15184
15185                 * config.charset: Update Juan Manuel Guerrero's address.
15186
15187         2005-02-12  Bruno Haible  <bruno@clisp.org>
15188
15189                 * allocsa.h: Add extern "C" for C++.
15190
15191         2005-02-10  Bruno Haible  <bruno@clisp.org>
15192
15193                 * allocsa.h (sa_alignof): Define differently with AIX xlc, to
15194                 avoid a bug of this compiler on AIX 3.2.5 dealing with enums.
15195
15196         2006-07-22  Bruno Haible  <bruno@clisp.org>
15197
15198                 * gettext.h: Update to GNU gettext-0.15.
15199
15200 2006-07-22  Bruno Haible  <bruno@clisp.org>
15201
15202         * config/srclist.txt: Resync printf-args.c, vasnprintf.c,
15203         localcharset.c, mkdtemp.c, config.rpath, lib-ld.m4, lib-link.m4,
15204         lib-prefix.m4, longdouble.m4, ssize_t.m4.
15205
15206 2006-07-21  Eric Blake  <ebb9@byu.net>
15207
15208         * modules/stdlib-safer: New file.
15209         * MODULES.html.sh (File stream based Input/Output): Add
15210         stdlib-safer.
15211
15212 2006-07-21  Eric Blake  <ebb9@byu.net>
15213
15214         * lib/stdlib-safer.h: New file from coreutils, required by
15215         stdlib--.h.
15216
15217 2006-07-20  Paul Eggert  <eggert@cs.ucla.edu>
15218
15219         * gnulib-tool (func_usage): Document --assume-autoconf='latest-stable'.
15220
15221 2006-07-20  Bruno Haible  <bruno@clisp.org>
15222
15223         * gnulib-tool: Recognize new option --assume-autoconf.
15224         (autoconf_minversion): New variable.
15225         (func_get_filelist): Use it to decide whether to add onceonly_2_57.m4.
15226
15227 2006-07-20  Bruno Haible  <bruno@clisp.org>
15228
15229         * MODULES.html.sh (func_all_modules): Add a missing func_begin_table.
15230
15231 2006-07-19  Derek R. Price  <derek@ximbiot.com>
15232
15233         * lib/getaddrinfo.h: Don't define unimplemented AI_* flags.
15234         Reindent and repaginate.
15235
15236 2006-07-19  Derek Price  <derek@ximbiot.com>
15237
15238         * doc/gnulib.texi (Libtool and Windows):  Eliminate passive voice.
15239         Correct grammar.
15240
15241 2006-07-17  Bruno Haible  <bruno@clisp.org>
15242
15243         * modules/list: New file.
15244         * modules/array-list: New file.
15245         * modules/carray-list, modules/carray-list-tests: New files.
15246         * modules/linked-list, modules/linked-list-tests: New files.
15247         * modules/avltree-list, modules/avltree-list-tests: New files.
15248         * modules/rbtree-list, modules/rbtree-list-tests: New files.
15249         * modules/linkedhash-list, modules/linkedhash-list-tests: New files.
15250         * modules/avltreehash-list, modules/avltreehash-list-tests: New files.
15251         * modules/rbtreehash-list, modules/rbtreehash-list-tests: New files.
15252         * modules/oset: New file.
15253         * modules/array-oset: New file.
15254         * modules/avltree-oset, modules/avltree-oset-tests: New files.
15255         * modules/rbtree-oset, modules/rbtree-oset-tests: New files.
15256         * tests/test-carray_list.c: New file.
15257         * tests/test-linked_list.c: New file.
15258         * tests/test-avltree_list.c: New file.
15259         * tests/test-rbtree_list.c: New file.
15260         * tests/test-linkedhash_list.c: New file.
15261         * tests/test-avltreehash_list.c: New file.
15262         * tests/test-rbtreehash_list.c: New file.
15263         * tests/test-avltree_oset.c: New file.
15264         * tests/test-rbtree_oset.c: New file.
15265         * MODULES.html.sh (Container data structures): New section.
15266
15267 2006-07-17  Bruno Haible  <bruno@clisp.org>
15268
15269         * m4/gl_list.m4: New file.
15270
15271 2006-07-17  Bruno Haible  <bruno@clisp.org>
15272
15273         * lib/gl_list.h: New file.
15274         * lib/gl_list.c: New file.
15275         * lib/gl_array_list.h: New file.
15276         * lib/gl_array_list.c: New file.
15277         * lib/gl_carray_list.h: New file.
15278         * lib/gl_carray_list.c: New file.
15279         * lib/gl_linked_list.h: New file.
15280         * lib/gl_linked_list.c: New file.
15281         * lib/gl_anylinked_list1.h: New file.
15282         * lib/gl_anylinked_list2.h: New file.
15283         * lib/gl_avltree_list.h: New file.
15284         * lib/gl_avltree_list.c: New file.
15285         * lib/gl_anyavltree_list1.h: New file.
15286         * lib/gl_anyavltree_list2.h: New file.
15287         * lib/gl_rbtree_list.h: New file.
15288         * lib/gl_rbtree_list.c: New file.
15289         * lib/gl_anyrbtree_list1.h: New file.
15290         * lib/gl_anyrbtree_list2.h: New file.
15291         * lib/gl_anytree_list1.h: New file.
15292         * lib/gl_anytree_list2.h: New file.
15293         * lib/gl_linkedhash_list.h: New file.
15294         * lib/gl_linkedhash_list.c: New file.
15295         * lib/gl_anyhash_list1.h: New file.
15296         * lib/gl_anyhash_list2.h: New file.
15297         * lib/gl_avltreehash_list.h: New file.
15298         * lib/gl_avltreehash_list.c: New file.
15299         * lib/gl_rbtreehash_list.h: New file.
15300         * lib/gl_rbtreehash_list.c: New file.
15301         * lib/gl_anytreehash_list1.h: New file.
15302         * lib/gl_anytreehash_list2.h: New file.
15303
15304         * lib/gl_oset.h: New file.
15305         * lib/gl_oset.c: New file.
15306         * lib/gl_array_oset.h: New file.
15307         * lib/gl_array_oset.c: New file.
15308         * lib/gl_avltree_oset.h: New file.
15309         * lib/gl_avltree_oset.c: New file.
15310         * lib/gl_rbtree_oset.h: New file.
15311         * lib/gl_rbtree_oset.c: New file.
15312         * lib/gl_anytree_oset.h: New file.
15313
15314 2006-07-16  Paul Eggert  <eggert@cs.ucla.edu>
15315
15316         * m4/mkancesdirs.m4: New file.
15317         * m4/mkdir-p.m4 (gl_MKDIR_PARENTS): Mention dirchownmod.c,
15318         dirchownmod.h.  Don't require AC_FUNC_ALLOCA, gl_AFS, gl_CHDIR_SAFER;
15319         no longer needed.  Require gl_FUNC_LCHOWN, since dirchownmod.c needs
15320         it.
15321
15322 2006-07-16  Paul Eggert  <eggert@cs.ucla.edu>
15323
15324         * lib/dirchownmod.c, lib/dirchownmod.h, lib/mkancesdirs.c:
15325         * lib/mkancesdirs.h: New files.
15326         * lib/mkdir-p.c: Don't include alloca.h, stdio.h, sys/types.h,
15327         unistd.h, string.h, chdir-safer.h, dirname.h, lchmod.h, lchown.h,
15328         save-cwd.h.  Instead, include dirchownmod.h and mkancesdirs.h.
15329         (make_dir_parents): New args MAKE_ANCESTOR, OPTIONS, ANNOUNCE,
15330         MODE_BITS.  Remove options VERBOSE_FMT_STRING, CWD_ERRNO.  All
15331         callers changed.  Revamp internals significantly, by not
15332         attempting to create directories that are temporarily more
15333         permissive than the final results.  Do not attempt to use
15334         save_cwd/restore_cwd; it isn't worth it for mkdir and install.
15335         This removes some race conditions, fixes some bugs, and simplifies
15336         things.  Use new dirchownmod function to do owner and mode changes.
15337         * lib/mkdir-p.h: Likewise.
15338         * lib/modechange.c (octal_to_mode): New function.
15339         (struct mode_change): New member mentioned.
15340         (make_node_op_equals): New arg mentioned.  All callers changed.
15341         (mode_compile): Keep track of which mode bits the user has explicitly
15342         mentioned.
15343         (mode_adjust): New arg DIR, so that we implement the X op correctly.
15344         New arg PMODE_BITS, to keep track of which mode bits the user
15345         mentioned; it treats S_ISUID and S_ISGID speciall.
15346         All callers changed.
15347         * lib/modechange.h: Likewise.
15348
15349 2006-07-16  Paul Eggert  <eggert@cs.ucla.edu>
15350
15351         * MODULES.html.sh: Add mkancestors.
15352         * modules/mkancesdirs: New module.
15353         * modules/mkdir-p (Files): Remove lib/chdir-safer.c, lib/chdir-safer.h,
15354         lib/same-inode.h, m4/afs.m4, m4/chdir-safer.m4.
15355         The chdir-safer and afs files are now orphans; I'll remove them
15356         unless someone speaks up.
15357         Add lib/dirchownmod.c, lib/dirchownmod.h.
15358         (Depends-on): Remove alloca, chown, save-cwd, dirname.
15359         Add lchown, mkancesdirs.
15360         (Maintainer): Add self.
15361
15362 2006-07-15  Karl Berry  <karl@gnu.org>
15363
15364         * gnulib-tool: help message wording/arrangement.
15365
15366 2006-07-14  Simon Josefsson  <jas@extundo.com>
15367
15368         * doc/gnulib.texi (Libtool and Windows): New section.
15369
15370 2006-07-12  Simon Josefsson  <jas@extundo.com>
15371
15372         * modules/gendocs (License): Fix license, approved by Karl.
15373
15374 2006-07-12  Eric Blake  <ebb9@byu.net>
15375
15376         * MODULES.html.sh: Add gendocs.
15377
15378 2006-07-11  Eric Blake  <ebb9@byu.net>
15379
15380         * modules/fdl: New module, to install doc/fdl.texi.
15381         * MODULES.html.sh: Add new section for documentation modules.
15382         * gnulib-tool: Avoid space-tab.
15383         (--doc-base): New option, to manage files from doc.
15384
15385 2006-07-11  Eric Blake  <ebb9@byu.net>
15386
15387         * m4/absolute-header.m4: Fix comments to match recent change.
15388
15389 2006-07-11  Eric Blake  <ebb9@byu.net>
15390
15391         * gnulib-tool: List --doc-base before --tests-base.
15392
15393 2006-07-11  Derek R. Price  <derek@ximbiot.com>
15394
15395         * lib/glob.c: s/NAMLEN/_D_EXACT_NAMLEN/.
15396
15397 2006-07-11  Bruno Haible  <bruno@clisp.org>
15398
15399         * README: Mention where to put documentation.
15400
15401 2006-07-10  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
15402
15403         * doc/functions.texi, gnulib-tool.texi, gnulib.texi: Fix some typos.
15404
15405 2006-07-10  Paul Eggert  <eggert@cs.ucla.edu>
15406
15407         * m4/sys_stat_h.m4 (gl_HEADER_SYS_STAT_H): Like today's change
15408         to stdint.m4.
15409
15410 2006-07-10  Paul Eggert  <eggert@cs.ucla.edu>
15411
15412         * m4/stdint.m4 (gl_STDINT_H): Like yesterday's change to
15413         absolute-header.m4.  Also, set ABSOLUTE_STDINT_H to a string
15414         "no/such/file/stdint.h" when there is no such file, so that
15415         the resulting C code can be parsed by dodgy compilers.
15416         Problems reported by Bob Proulx.
15417
15418 2006-07-10  Derek R. Price  <derek@ximbiot.com>
15419
15420         * lib/backupfile.c, dirfd.h, fts.c, getcwd.c, glob.c, glob_.h:
15421         Ignore the obsolescent !HAVE_DIRENT_H case.  Consolidate NAMLEN
15422         macros into the GNU _D_EXACT_NAMLEN.
15423         * lib/savedir.c:  Likewise.
15424         (savedirstream): Use _D_EXACT_NAMLEN in preference to strlen.
15425
15426 2006-07-10  Derek R. Price  <derek@ximbiot.com>
15427         and Paul Eggert  <eggert@cs.ucla.edu>
15428
15429         * m4/backupfile.m4, d-ino.m4, d-type.m4, dirfd.m4, fts.m4, getcwd.m4:
15430         * m4/savedir.m4:
15431         Ignore the obsolescent !HAVE_DIRENT_H case.  Consolidate NAMLEN
15432         macros into the GNU _D_EXACT_NAMLEN.
15433
15434 2006-07-09  Paul Eggert  <eggert@cs.ucla.edu>
15435
15436         * m4/absolute-header.m4 (gl_ABSOLUTE_HEADER): Use "" rather than <>
15437         around the absolute name, to work around a problem with the HP-UX
15438         11.23 native C compiler, reported by Bob Proulx.
15439
15440 2006-07-09  Paul Eggert  <eggert@cs.ucla.edu>
15441
15442         * doc/maintain.texi, make-stds.texi: Sync from
15443         <http://savannah.gnu.org/projects/gnustandards>.
15444
15445 2006-07-09  Paul Eggert  <eggert@cs.ucla.edu>
15446
15447         * build-aux/depcomp, build-aux/install-sh: Sync from Automake.
15448
15449 2006-07-09  Jim Meyering  <jim@meyering.net>
15450
15451         * m4/glob.m4: Remove a doubled word in a comment.
15452
15453 2006-07-09  Jim Meyering  <jim@meyering.net>
15454
15455         * lib/argp-pv.c: Remove a doubled word in a comment.
15456         * lib/check-version.c (check_version): Likewise.
15457         * lib/javacomp.c (compile_java_class): Likewise.
15458
15459 2006-07-08  Paul Eggert  <eggert@cs.ucla.edu>
15460
15461         * gnulib-tool (func_get_filelist): Don't echo m4/onceonly_2_57.m4,
15462         for the benefit of people using Autoconf 2.60.  If you want to
15463         support older Autoconf versions you can copy m4/onceonly_2_57.m4
15464         (or m4/onceonly.m4, if pre-2.57) manually.
15465
15466 2006-07-08  Jim Meyering  <jim@meyering.net>
15467
15468         * m4/link-follow.m4: Remove one of two adjacent "whether"s in a
15469         comment.
15470         * m4/getopt.m4: Remove one of two adjacent "your"s in a comment.
15471         * m4/regex.m4 (gl_REGEX): Remove one of two adjacent "the"s in a
15472         comment.
15473
15474 2006-07-08  Jim Meyering  <jim@meyering.net>
15475
15476         * lib/getndelim2.h (getndelim2): Remove doubled "after" in comment.
15477
15478 2006-07-07  Simon Josefsson  <jas@extundo.com>
15479
15480         * tests/test-crc.c: Change expected crc value, the test vector
15481         were probably computed using the old broken crc.c?
15482
15483 2006-07-06  Simon Josefsson  <jas@extundo.com>
15484
15485         * modules/sys_socket (Files): Add m4/sockpfaf.m4 (this module is
15486         now the canonical place for the M4 file).
15487
15488         * modules/getaddrinfo (Files): Remove m4/sockpfaf.m4, we get it
15489         from the sys_socket dependency now.
15490
15491         * modules/inet_pton (Files): Ditto.
15492
15493         * modules/inet_ntop (Files): Ditto.
15494
15495 2006-07-06  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>  (tiny change)
15496
15497         * modules/getusershell (configure.ac): Use gl_FUNC_GETUSERSHELL,
15498         not gl_PREREQ_GETUSERSHELL.
15499
15500 2006-07-06  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
15501
15502         * m4/_inttypes_h.m4 (gl_INTTYPES_H): Use AC_CHECK_DECLS_ONCE
15503         with only one argument, for Autoconf 2.60.
15504         * m4/fileblocks.m4 (gl_PREREQ_FILEBLOCKS): AC_CHECK_DECLS_ONCE may
15505         expand to nothing, so add a shell command to avoid syntax error.
15506         * m4/getpass.m4 (gl_PREREQ_GETPASS): Likewise.
15507
15508 2006-07-06  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
15509
15510         * lib/strtod.c (strtod): cast the argument of tolower to unsigned char.
15511
15512 2006-07-06  Paul Eggert  <eggert@cs.ucla.edu>
15513
15514         * m4/fnmatch.m4 (_AC_LIBOBJ_FNMATCH): Don't check for getenv decl;
15515         no longer needed.  Check for isblank decl.
15516         * m4/mkstemp.m4 (gl_PREREQ_TEMPNAME): Don't check for getenv decl.
15517         * m4/regex.m4 (gl_PREREQ_REGEX): Dheck for isblank decl instead
15518         of existence.
15519
15520 2006-07-06  Paul Eggert  <eggert@cs.ucla.edu>
15521
15522         * lib/getloadavg.c: Use __VMS, not VMS.
15523         * lib/getopt.c: Likewise.
15524         * lib/getpagesize.h: Likewise.
15525         * lib/glob.c: Remove most VMS cruft; it hasn't been tested for a while
15526         and probably does not work.
15527
15528 2006-07-06  Paul Eggert  <eggert@cs.ucla.edu>
15529
15530         * lib/.cppi-disable: Add wcwidth.
15531         * lib/fnmatch.c (ISBLANK): Remove.  All uses changed to isblank.
15532         (isblank) [! (defined isblank || HAVE_DECL_ISBLANK)]: New macro.
15533         (ISGRAPH): Remove.  All uses changed to isgraph.
15534         (FOLD) [!defined _LIBC]: Remove special case.
15535         * lib/getdate.y (lookup_word): Remove no-longer-needed call to islower.
15536         * lib/regex_internal.h (isblank): Depend on HAVE_DECL_ISBLANK, not
15537         HAVE_ISBLANK.
15538         * lib/strftime.c (TOLOWER, TOUPPER) [!defined _LIBC]: Remove special
15539         case.
15540
15541 2006-07-06  Jim Hyslop  <jhyslop@dreampossible.ca>  (tiny change)
15542
15543         * lib/getaddrinfo.c: Changes to compile under MSVC6: changed
15544         '#if WIN32_NATIVE' to '#ifdef' & moved WSAAPI macro inside
15545         brackets.  Other minor changes to suppress some compiler
15546         warnings.
15547
15548 2006-07-06  Derek R. Price  <derek@ximbiot.com>
15549         and Paul Eggert  <eggert@cs.ucla.edu>
15550
15551         * m4/backupfile.m4 (gl_BACKUPFILE): Check for dirent.h, instead
15552         of invoking obsolescent AC_HEADER_DIRENT macro.
15553         * m4/d-ino.m4 (gl_CHECK_TYPE_STRUCT_DIRENT_D_INO): Likewise.
15554         * m4/d-type.m4 (gl_CHECK_TYPE_STRUCT_DIRENT_D_TYPE): Likewise.
15555         * m4/dirfd.m4 (gl_FUNC_DIRFD): Likewise.
15556         * m4/fts.m4 (gl_FUNC_FTS_CORE): Likewise.
15557         * m4/getcwd.m4 (gl_PREREQ_GETCWD): Likewise.
15558         * m4/glob.m4 (gl_PREREQ_GLOB): Likewise.
15559         * m4/savedir.m4 (gl_SAVEDIR): Likewise.
15560         * m4/readdir.m4: Remove; no longer needed.
15561
15562 2006-07-06  Derek R. Price  <derek@ximbiot.com>
15563         and Paul Eggert  <eggert@cs.ucla.edu>
15564
15565         * lib/backupfile.c [HAVE_DIRENT_H && ! HAVE_NDIR_H]:
15566         Don't worry about this obsolete case any more.
15567         (HAVE_DIR): Remove.  All uses removed; we now assume you can read
15568         directories.
15569         * lib/dirfd.h [HAVE_DIRENT_H && ! HAVE_NDIR_H]: Don't
15570         worry about this obsolete case any more.
15571         * lib/fts.c: Likewise.
15572         * lib/getcwd.c: Likewise.
15573         * lib/glob.h: Likewise.
15574         * lib/savedir.c: Likewise.
15575
15576 2006-07-05  Paul Eggert  <eggert@cs.ucla.edu>
15577
15578         * m4/xstrtol.m4 (gl_PREREQ_XSTRTOL): Use AC_CHECK_DECLS_ONCE
15579         rather than AC_CHECK_DECLS for strtoimax and strtoumax.
15580         * m4/getusershell.m4 (gl_PREREQ_GETUSERSHELL): Remove; no longer
15581         needed.
15582         All uses removed.
15583         * m4/strtol.m4 (gl_PREREQ_STRTOL): Likewise.
15584         * m4/strtoul.m4 (gl_PREREQ_STRTOUL): Likewise.
15585         * m4/exclude.m4 (gl_EXCLUDE): Don't check for isascii; no longer
15586         needed.
15587         * m4/getdate.m4 (gl_GETDATE): Likewise.
15588         * m4/getusershell.m4 (gl_PREREQ_GETUSERSHELL): Likewise.
15589         * m4/memcasecmp.m4 (gl_MEMCASECMP): Likewise.
15590         * m4/strtod.m4 (gl_FUNC_STRTOD): Likewise.
15591         * m4/strtol.m4 (gl_PREREQ_STRTOL): Likewise.
15592         * m4/strtoul.m4 (gl_PREREQ_STRTOUL): Likewise.
15593         * m4/xstrtol.m4 (gl_PREREQ_XSTRTOL): Likewise.
15594         * m4/exclude.m4 (gl_EXCLUDE): Don't require AC_C_INLINE; no longer
15595         needed.
15596
15597 2006-07-05  Paul Eggert  <eggert@cs.ucla.edu>
15598
15599         * lib/memcasecmp.c: Include <limits.h>.
15600         (memcasecmp): Don't assume UCHAR_MAX <= INT_MAX.
15601         * lib/strtod.c (strtod): Don't assume isspace works on negative chars.
15602         Don't assume isdigit succeeds only on '0' through '9'.
15603
15604 2006-07-05  Eric Blake  <ebb9@byu.net>
15605
15606         * modules/getaddrinfo (Depends-on): Add snprintf.
15607
15608 2006-07-05  Eric Blake  <ebb9@byu.net>
15609
15610         * m4/sockpfaf.m4 (gl_SOCKET_FAMILIES): Use gl_HEADER_SYS_SOCKET
15611         to avoid 'header present but could not be compiled' on cygwin.
15612
15613 2006-07-05  Eric Blake  <ebb9@byu.net>
15614
15615         * lib/getaddrinfo.h (NI_NUMERICHOST, NI_NUMERICSERV): Define if
15616         missing from netdb.h.
15617         * lib/getaddrinfo.c (includes): Include inet_ntop and snprintf.
15618
15619 2006-07-05  Derek R. Price  <derek@ximbiot.com>
15620
15621         * m4/calloc.m4 (_AC_FUNC_CALLOC_IF): Don't require AC_HEADER_STDC;
15622         no longer needed.
15623         * m4/exclude.m4 (gl_EXCLUDE): Likewise.
15624         * m4/getdate.m4 (gl_GETDATE): Likewise.
15625         * m4/getusershell.m4 (gl_PREREQ_GETUSERSHELL): Likewise.
15626         * m4/memcasecmp.m4 (gl_MEMCASECMP): Likewise.
15627         * m4/strtod.m4 (gl_FUNC_STRTOD): Likewise.
15628         * m4/strtol.m4 (gl_PREREQ_STRTOL): Likewise.
15629         * m4/xstrtol.m4 (gl_PREREQ_XSTRTOL): Likewise.
15630
15631 2006-07-05  Derek R. Price  <derek@ximbiot.com>
15632
15633         * lib/exclude.c (IN_CTYPE_DOMAIN, is_space): Remove; no longer needed.
15634         All uses of is_space replaced by isspace.
15635         * lib/exit.h: Don't talk about STDC_HEADERS.
15636         * lib/fnmatch.c (ISASCII): Remove; no longer needed.  All uses removed.
15637         (ISPRINT, ISDIGIT, ISALNUM, ISALPHA, ISCNTRL, ISLOWER, ISPUNCT):
15638         (ISSPACE, ISUPPER, ISXDIGIT): Remove; no longer needed.  All uses
15639         replaced by isprint etc.
15640         * lib/getdate.y (IN_CTYPE_DOMAIN, ISSPACE, ISALPHA, ISLOWER): Likewise.
15641         * lib/getusershell.c (IN_CTYPE_DOMAIN, ISSPACE): Likewise.
15642         * lib/memcasecmp.c (IN_CTYPE_DOMAIN, ISLOWER, TOUPPER): Likewise.
15643         * lib/strtod.c (IN_CTYPE_DOMAIN, ISSPACE, ISDIGIT, TOLOWER): Likewise.
15644         * lib/strtol.c (IN_CTYPE_DOMAIN): Likewise.
15645         * lib/xstrtol.c (IN_CTYPE_DOMAIN, ISSPACE): Likewise.
15646
15647 2006-07-05  Bruno Haible  <bruno@clisp.org>
15648
15649         * m4/strndup.m4 (gl_FUNC_STRNDUP): When cross-compiling, check whether
15650         the function exists, before testing against AIX.
15651         Reported by Martin Lambers <marlam@marlam.de>.
15652
15653 2006-07-04  Paul Eggert  <eggert@cs.ucla.edu>
15654
15655         * modules/cycle-check (lib_SOURCES): Add same-inode.h.
15656         From Mark D. Baushke.
15657
15658 2006-07-04  Paul Eggert  <eggert@cs.ucla.edu>
15659
15660         * m4/absolute-header.m4 (gl_ABSOLUTE_HEADER): Prepend three slashes
15661         to the absolute name, not just one, to bypass Sun C 5.8's
15662         "warning: #include of /usr/include/... may be non-portable".
15663
15664 2006-07-04  Eric Blake  <ebb9@byu.net>
15665
15666         * modules/dirname-tests: New test module.
15667         * tests/test-dirname.c: New file, replacing dirname.c
15668         TEST_DIRNAME section that was recently deleted.
15669
15670 2006-07-04  Bruno Haible  <bruno@clisp.org>
15671
15672         Assume ANSI C header files and <ctype.h> functions.
15673         * lib/mbswidth.c (IN_CTYPE_DOMAIN, ISPRINT, ISCNTRL): Remove macros.
15674         (mbsnwidth): Use isprint, iscntrl instead.
15675
15676 2006-07-03  Paul Eggert  <eggert@cs.ucla.edu>
15677
15678         Merge from coreutils.
15679         * MODULES.html.sh: Add xstrtold.
15680         * modules/xstrtold: New file.
15681         * modules/cycle-check (Files): Add lib/same-inode.h.
15682         * modules/dirname (Files): Add m4/double-slash-root.m4.
15683         * modules/getcwd (Files): Add m4/getcwd-abort-bug.m4.
15684         * modules/mkdir-p (Files): Add lib/same-inode.h.
15685         * modules/same (Files): Add lib/same-inode.h.
15686
15687 2006-07-03  Paul Eggert  <eggert@cs.ucla.edu>
15688
15689         * m4/absolute-header.m4: Renamed from full-header-path.m4.
15690         This is to keep the terminology clean; POSIX talks about
15691         "absolute pathnames", not "full pathnames", but the GNU
15692         Coding Standards say to use "path" for something else;
15693         so use "absolute" to keep both sides happy.
15694         (gl_ABSOLUTE_HEADER): Renamed from gl_FULL_HEADER_PATH.
15695         Set gl_absolute_header, not gl_full_header_path.
15696         Set gl_cv_absolute_<header>, not gl_full_path_<header>.
15697         Define ABSOLUTE_<HEADER>, not FULL_PATH_<HEADER>.
15698         All uses changed.
15699
15700         Merge from coreutils.
15701
15702         2006-06-30  Paul Eggert  <eggert@cs.ucla.edu>
15703
15704         * m4/c-strtod.m4 (gl_C_STRTOLD): Add c-strtod.c to LIBSOURCES.
15705         Require gl_USE_SYSTEM_EXTENSIONS, not gl_C_STRTOD, since we don't
15706         want to require the building of c-strtod.o.
15707         * m4/lib-check.m4 (cu_LIB_CHECK): Remove SEQ_LIBM, since seq no longer
15708         needs -lm directly.
15709         * m4/xstrtod.m4 (gl_XSTRTOLD): New macro.
15710
15711         2006-06-19  Paul Eggert  <eggert@cs.ucla.edu>
15712
15713         * m4/lib-ignore.m4 (gl_IGNORE_UNUSED_LIBRARIES): Prefer binutils's
15714         --as-needed option if available.  Problem reported by Albert Chin in
15715         <http://lists.gnu.org/archive/html/bug-gnulib/2006-06/msg00114.html>.
15716         However, use -Wl,--as-needed, not bare --as-needed, since HP-UX 11.11
15717         cc merely issues a bunch of annoying warnings for --as-needed
15718         (this problem was reported by Bob Proulx).  Also, try linking with
15719         -lm to detect a bug in binutils 2.16 (this problem was reported
15720         by Ralf Wildenhues).
15721
15722         2006-06-18  Jim Meyering  <jim@meyering.net>
15723
15724         Test for a bug that causes glibc's getcwd to suffer a failed assertion.
15725         * m4/getcwd-abort-bug.m4 (gl_FUNC_GETCWD_ABORT_BUG): New file and
15726         macro.
15727         * m4/getcwd.m4 (gl_FUNC_GETCWD): If we detect support for getcwd_null,
15728         also check for glibc-2.4's abort-inducing bug.
15729
15730         * m4/getcwd-path-max.m4 (gl_FUNC_GETCWD_PATH_MAX): Fix typo.
15731         Low-probability clean-up should be to use rmdir to get rid of
15732         the just-created directory, not unlink.
15733
15734         * m4/ftruncate.m4 (gl_FUNC_FTRUNCATE): If ftruncate is missing, make
15735         configure fail, and request a bug report to inform us about it.
15736         Add a comment that, barring reports to the contrary, in 2007 we'll
15737         assume ftruncate is universally available.
15738
15739         2006-04-17  Paul Eggert  <eggert@cs.ucla.edu>
15740
15741         * m4/filemode.m4 (gl_FILEMODE): Check for strmode declaration.
15742
15743         2006-03-12  Jim Meyering  <jim@meyering.net>
15744
15745         * m4/chdir-safer.m4 (gl_CHDIR_SAFER): Add same-inode.h to the list.
15746         * m4/cycle-check.m4 (gl_CYCLE_CHECK): Likewise.
15747         * m4/same.m4 (gl_SAME): Likewise.
15748         * m4/root-dev-ino.m4 (gl_ROOT_DEV_INO): Likewise.
15749
15750         2006-03-11  Eric Blake  <ebb9@byu.net>
15751
15752         * m4/double-slash-root.m4: New file, provides gl_DOUBLE_SLASH_ROOT.
15753         * m4/dirname.m4 (gl_DIRNAME): Use gl_DOUBLE_SLASH_ROOT.
15754         * m4/dos.m4 (FILE_SYSTEM_PREFIX_LEN): Move from here to dirname.h.
15755         (FILE_SYSTEM_DRIVE_PREFIX_CAN_BE_RELATIVE): New define.
15756
15757 2006-07-03  Paul Eggert  <eggert@cs.ucla.edu>
15758
15759         * lib/stdint_.h: Include <sys/types.h> after @FULL_PATH_STDINT_H@, for
15760         MacOS X 10.4.6.  Don't mention <sys/int_types.h>.  Problems
15761         reported by Mark D. Baushke, one in
15762         <http://lists.gnu.org/archive/html/bug-gnulib/2006-07/msg00015.html>.
15763
15764         Merge from coreutils.
15765
15766         * lib/.cppi-disable: Add stdint_.h.
15767         * lib/.cvsignore: Add stdint.h.
15768
15769         2006-06-30  Paul Eggert  <eggert@cs.ucla.edu>
15770
15771         * lib/xstrtod.c (XSTRTOD, DOUBLE): New macros, so that we can support
15772         both double and long double versions.
15773         (XSTRTOD): Renamed from xstrtod.  Use DOUBLE internally.
15774         * lib/xstrtold.c: New file.
15775         * lib/xstrtod.h (xstrtold): New decl.
15776
15777         2006-05-22  Paul Eggert  <eggert@cs.ucla.edu>
15778
15779         * lib/filemode.c (setst): Remove.
15780         (strmode): Rewrite to avoid setst.  This makes the code shorter,
15781         (arguably) clearer, and the generated code is a bit smaller on my
15782         Debian GNU/Linux stable x86 host.
15783
15784         2006-04-17  Paul Eggert  <eggert@cs.ucla.edu>
15785
15786         * lib/filemode.c: Include "filemode.h" first, to test the interface.
15787         Assume that filemode.h includes sys/types.h and sys/stat.h.
15788         (HAVE_ST_DM_MODE): New macro, moved here from ls.c.
15789         (ftypelet): Reorder to put common cases first, for efficiency.
15790         Add 'P', 'w'.  Remove 'M', since it's now the caller's responsibility
15791         to do 'M'.
15792         (strmode): Renamed from mode_string, and now stores 12 bytes instead
15793         of 10, for compatibility with FreeBSD.  All callers changed.
15794         (filemodestring): Now stores 12 bytes instead of 10, and sets file
15795         types that can't be deduced solely from st_mode.  First arg is now a
15796         const pointer.
15797         * lib/filemode.h (HAVE_DECL_STRMODE): Include <string.h> for strmode.
15798         (strmode): Renamed from mode_string.
15799         (filemodestring): New decl.
15800         * lib/stat-macros.h: Don't undef S_ISDOOR, since it's never buggy.
15801         (S_ISDOOR): Don't bother with S_IFDOOR, since that code is never
15802         needed.
15803         (S_ISPORT, S_ISWHT): New macros, if not already defined.
15804
15805         2006-04-12  Paul Eggert  <eggert@cs.ucla.edu>
15806
15807         * lib/fsusage.c: Don't include <inttypes.h> or <stdint.h>, since
15808         fsusage.h now does that.  Include fsusage.h first, to test interface.
15809         Prefer statvfs if it works, since it's blessed by POSIX.  Attempt
15810         at most one method (the old code could have generated decls that
15811         didn't conform to C89, not that this was ever exercised).
15812         * lib/fsusage.h: Include <inttypes.h> and <stdint.h> if they exist.
15813
15814         2006-03-19  Jim Meyering  <jim@meyering.net>
15815
15816         Work even in a chroot where d_ino values for entries in "/"
15817         don't match the stat.st_ino values for the same names.
15818         * lib/getcwd.c (__getcwd): When no d_ino value matches the target inode
15819         number, iterate through all entries again, using lstat instead.
15820         Reported by Kenshi Muto in http://bugs.debian.org/355810, and by
15821         Zouhir Hafidi in https://bugzilla.redhat.com/bugzilla/190656.
15822
15823         * lib/getcwd.c (__getcwd): Clarify a comment.
15824         Use memcpy in place of a call to strcpy.
15825
15826         2006-03-12  Jim Meyering  <jim@meyering.net>
15827
15828         * lib/fts-cycle.c (leave_dir): If cycle-check's saved dev-ino pair
15829         matches that of the current directory (which we're about to chdir ".."
15830         out of), then save the dev-ino of the parent, instead.
15831
15832         * lib/same-inode.h (SAME_INODE): New file/macro.
15833         * lib/chdir-safer.c (SAME_INODE): Remove definition.
15834         Include "same-inode.h", instead.
15835         * lib/same.c: Likewise.
15836         * lib/cycle-check.h: Include "same-inode.h".
15837         (CYCLE_CHECK_REFLECT_CHDIR_UP): Define.
15838         * lib/cycle-check.c (SAME_INODE): Remove definition.
15839         * lib/root-dev-ino.h: Include "same-inode.h".
15840
15841         2006-03-11  Eric Blake  <ebb9@byu.net>
15842
15843         * lib/same.c (same_name): s/base_name/last_component/
15844         * lib/backupfile.c (check_extension, numbered_backup): Likewise.
15845         * lib/filenamecat.c (file_name_concat): Likewise.
15846
15847         2006-03-11  Eric Blake  <ebb9@byu.net>,
15848                     Paul Eggert  <eggert@cs.ucla.edu>
15849
15850         * lib/dirname.h (FILE_SYSTEM_PREFIX_LEN): Move here from dos.m4.
15851         [FILE_SYSTEM_ACCEPTS_DRIVE_LETTER_PREFIX]: Don't treat 1: as a
15852         drive prefix.
15853         (IS_ABSOLUTE_FILE_NAME): Treat all drive letters as absolute on
15854         platforms like cygwin with FILE_SYSTEM_DRIVE_PREFIX_IS_ABSOLUTE.
15855         (last_component): New method.
15856         * lib/dirname.c (dir_len): Determine when drive letters need a
15857         subsequent slash.  Preserve // when it is special.
15858         (dir_name): Don't append dot when drive letter is absolute.
15859         [TEST_DIRNAME]: Move into a full-blown gnulib test.
15860         * lib/basename.c (base_name): New semantics - malloc the result.
15861         Preserve // when it is special.  Preserve relative files that look
15862         like drive letters.
15863         (base_len): Preserve // when it is special.
15864         (last_component): New method, similar to old base_name semantics.
15865         * lib/stripslash.c (strip_trailing_slashes): Use last_component, not
15866         base_name.  Strip redundant slashes from ///.
15867
15868 2006-07-03  Jim Meyering  <jim@meyering.net>
15869
15870         * lib/cycle-check.h (CYCLE_CHECK_REFLECT_CHDIR_UP): Abort if this
15871         macro is used before the first cycle_check call.
15872
15873 2006-07-03  Eric Blake  <ebb9@byu.net>
15874
15875         * modules/dirname (Depends-on): Add xstrndup.
15876
15877 2006-07-02  Paul Eggert  <eggert@cs.ucla.edu>
15878
15879         * m4/stdint.m4 (gl_STDINT_H): Use more-mnemonic identifiers for
15880         test cases, so that config.log is a bit easier to follow.
15881
15882 2006-07-02  Paul Eggert  <eggert@cs.ucla.edu>
15883
15884         * lib/stdint_.h (intmax_t, uintmax_t): Prefer long to long long if
15885         both are 64 bits, since this seems to be the tradition, and this
15886         prevents gcc -Wformat from warning about usages with PRIuMAX.  If
15887         we ever run into a host that prefers long long to long in this
15888         case, we'll need another configure-time test.  Problem reported by
15889         Jim Meyering.
15890
15891 2006-07-02  Eric Blake  <ebb9@byu.net>
15892
15893         * m4/wcwidth.m4 (gl_FUNC_WCWIDTH): Simplify by using AC_CHECK_DECLS.
15894
15895 2006-07-01  Paul Eggert  <eggert@cs.ucla.edu>
15896
15897         * modules/inttypes (Depends-on): No longer depends on stdint.
15898         * modules/stdint (Description): Say more about assumptions.
15899         Say that the fast types might differ.  Say macros are used.
15900         (Files): Remove m4/size_max.m4, m4/wchar_t.m4.  Add m4/longlong.m4.
15901         (Makefile.am): Revise list of substituted symbols to match
15902         new stdint.m4.
15903         * modules/stdint-tests (Files): Add m4/wchar_t.m4, m4/wint_t.m4.
15904         (configure.ac): Add gt_TYPE_WCHAR_T, gt_TYPE_WINT_T.
15905         * tests/test-stdint.c (verify_same_types)
15906         [! (__GNUC__ >= 2 && DO_PEDANTIC)]: Put in a decl, so that
15907         the code conforms to C99/C89.
15908         Test for WCHAR_MIN and WCHAR_MAX only if HAVE_WCHAR_T.
15909         Test for WINT_MIN and WINT_MAX only if HAVE_WINT_T.
15910
15911 2006-07-01  Paul Eggert  <eggert@cs.ucla.edu>
15912
15913         * m4/longlong.m4 (AC_TYPE_LONG_LONG_INT): Backport from Autoconf 2.60,
15914         but fix a bug, by requiring at least 64 bits.
15915         * m4/ulonglong.m4 (AC_TYPE_UNSIGNED_LONG_LONG_INT): Likewise.
15916         * m4/longlong.m4 (gl_AC_TYPE_LONG_LONG): Now just call
15917         AC_TYPE_LONG_LONG_INT.  This macro is obsolete and will go soon.
15918         * m4/ulonglong.m4 (gl_AC_TYPE_UNSIGNED_LONG_LONG) Likewise.
15919
15920         * m4/stdint.m4 (gl_STDINT_H): Rewrite to accommodate stdint_.h
15921         changes.  Make 2.59 a prerequisite.  Check and substitute for
15922         HAVE_LONG_LONG_INT.  Rely on Autoconf to check for stdint.h and
15923         inttypes.h.  Do not use special include files; just use the
15924         defaults.  Check for sys/inttypes.h and sys/bitypes.h in the usual
15925         way now.  Remove no-longer-needed tests for HAVE_LONG_64BIT,
15926         HAVE_LONG_LONG_64BIT, int8_t, int16_t, int32_t, int64_t, uint8_t,
15927         uint16_t, uint32_t uint64_t, int_least8_t, int_least16_t,
15928         int_least32_t, int_least64_t, uint_least8_t, uint_least16_t,
15929         uint_least32_t, uint_least64_t, int_fast8_t, int_fast16_t,
15930         int_fast32_t, int_fast64_t, uint_fast8_t uint_fast16_t,
15931         uint_fast32_t, uint_fast64_t, intptr_t, uintptr_t, intmax_t,
15932         uintmax_t, INT8_MIN, INT8_MAX, UINT8_MAX, INT16_MIN, INT16_MAX,
15933         UINT16_MAX, INT32_MIN, INT32_MAX, UINT32_MAX, INT64_MIN,
15934         INT64_MAX, UINT64_MAX, INT_LEAST8_MIN, INT_LEAST8_MAX,
15935         UINT_LEAST8_MAX, INT_LEAST16_MIN, INT_LEAST16_MAX,
15936         UINT_LEAST16_MAX, INT_LEAST32_MIN, INT_LEAST32_MAX,
15937         UINT_LEAST32_MAX, INT_LEAST64_MIN, INT_LEAST64_MAX,
15938         UINT_LEAST64_MAX, INT_FAST8_MIN, INT_FAST8_MAX, UINT_FAST8_MAX,
15939         INT_FAST16_MIN, INT_FAST16_MAX, UINT_FAST16_MAX, INT_FAST32_MIN,
15940         INT_FAST32_MAX, UINT_FAST32_MAX, INT_FAST64_MIN, INT_FAST64_MAX,
15941         UINT_FAST64_MAX, INTPTR_MIN, INTPTR_MAX, UINTPTR_MAX, INTMAX_MIN,
15942         INTMAX_MAX, UINTMAX_MAX, PTRDIFF_MIN, PTRDIFF_MAX, SIG_ATOMIC_MIN,
15943         SIG_ATOMIC_MAX, SIZE_MAX, WCHAR_MIN, WCHAR_MAX, WINT_MIN,
15944         WINT_MAX.  Check for C99 conformance more strictly, by detecting
15945         bugs in glibc 2.4, Solaris 10, and OpenBSD 3.9.  On the other hand do
15946         not check for things that C99 does not require, e.g., int8_t.  If
15947         a test isn't needed unless <stdint.h> isn't working, and is
15948         unlikely to be needed for any other reason, then don't do it
15949         unless <stdint.h> isn't working.  Do not check for ptrdiff_t or
15950         size_t, since we assume C89 freestanding at least.  Do not check
15951         for sig_atomic_t, wchar_t, or wint_t, since the code now does
15952         the right thing even if the types are not defined.  Instead use:
15953         (gl_STDINT_TYPE_PROPERTIES): New macro.
15954         (gl_HEADER_STDINT_H, gl_HEADER_INTTYPES_H): Remove.  Don't bother
15955         testing whether <sys/types.h> clashes, as Autoconf does this for
15956         us now.  All uses removed.
15957         (gl_STDINT_CHECK_TYPES, gl_STDINT_MISSING_BOUND):
15958         (gl_STDINT_MISSING_BOUNDS, gl_STDINT_MISSING_BOUNDS2):
15959         (gl_CHECK_TYPE_SAME):
15960         Remove; no longer needed.
15961         (gl_STDINT_BITSIZEOF): Don't bother to check whether the type
15962         exists, since we'll return 0 anyway in that case.
15963         (gl_INTEGER_TYPE_SUFFIX, gl_STDINT_INCLUDES): New macros.
15964
15965 2006-07-01  Paul Eggert  <eggert@cs.ucla.edu>
15966
15967         * lib/stdint_.h (_GL_STDINT_H): Renamed from _STDINT_H, to avoid
15968         possible collision with system files.
15969         (<stdio.h>, <time.h>, <wchar.h>) [defined __cplusplus && ! defined
15970         __STDC_CONSTANT_MACROS)]: Do not include, since we don't need
15971         WCHAR_MIN and WCHAR_MAX in this case.
15972         (<stddef.h>): Do not include; no longer needed.
15973         (<sys/types.h>): Include if @HAVE_SYS_TYPES_H@, not if
15974         (defined(__OpenBSD__) || defined(__bsdi__) || defined(__sgi)).
15975         (<sys/inttypes.h>): Include if @HAVE_SYS_INTTYPES_H@ &&
15976         !@HAVE_INTTYPES_H@, not if (defined(__FreeBSD__)
15977         && (__FreeBSD__ >= 3) && (__FreeBSD__ <= 4)).
15978         (__STDINT_H__) [@HAVE_STDINT_H@ && defined __sgi && ! defined
15979         __c99]: Define, to work around IRIX <stdint.h> incompatibility.
15980         (@FULL_PATH_STDINT_H@) [!(defined(__sgi) && @HAVE_INTTYPES_H@ &&
15981         !defined(__c99))]: Include in this case too, since it's harmless
15982         now.
15983         (<inttypes.h>) [@HAVE_INTTYPES_H@]: Include, since it's no longer
15984         dangerous to do so.
15985         (@FULL_PATH_INTTYPES_H@) [(defined(__hpux) || defined(_AIX)) &&
15986         @HAVE_INTTYPES_H@]: Do not include, since we now include <inttypes.h>.
15987         (_STDINT_MIN, _STDINT_MAX): New macros.
15988         (int8_t, uint8_t, int16_t, uint16_t, int32_t, uint32_t, int64_t):
15989         (uint64_t, int_least8_t, uint_least8_t, int_least16_t):
15990         (uint_least16_t, int_least32_t, uint_least32_t, int_least64_t):
15991         (uint_least64_t, int_fast8_t, uint_fast8_t, int_fast16_t):
15992         (uint_fast16_t, int_fast32_t, uint_fast32_t, int_fast64_t):
15993         (uint_fast64_t, intptr_t, uintptr_t, intmax_t, uintmax_t): Now
15994         macros, not typedefs; this simplifies things quite a bit.
15995         Use long int for all types narrower than int64_t.
15996         (intmax_t, uintmax_t, INTMAX_C, UINTMAX_C):
15997         Define in terms of long long int or int64_t or long int,
15998         not int64_t or int32_t.  This saves some compile-time testing.
15999         (INT8_MIN, INT8_MAX, UINT8_MAX, INT16_MIN, INT16_MAX, UINT16_MAX):
16000         (INT32_MIN, INT32_MAX, UINT32_MAX, INT64_MIN, INT64_MAX):
16001         (UINT64_MAX, INT_LEAST8_MIN, INT_LEAST8_MAX, UINT_LEAST8_MAX):
16002         (INT_LEAST16_MIN, INT_LEAST16_MAX, UINT_LEAST16_MAX):
16003         (INT_LEAST32_MIN, INT_LEAST32_MAX, UINT_LEAST32_MAX):
16004         (INT_LEAST64_MIN, INT_LEAST64_MAX, UINT_LEAST64_MAX, INT_FAST8_MIN):
16005         (INT_FAST8_MAX, UINT_FAST8_MAX, INT_FAST16_MIN, INT_FAST16_MAX):
16006         (UINT_FAST16_MAX, INT_FAST32_MIN, INT_FAST32_MAX, UINT_FAST32_MAX):
16007         (INT_FAST64_MIN, INT_FAST64_MAX, UINT_FAST64_MAX, INTPTR_MIN):
16008         (INTPTR_MAX, UINTPTR_MAX, INTMAX_MIN, INTMAX_MAX, UINTMAX_MAX):
16009         (PTRDIFF_MIN, PTRDIFF_MAX, SIG_ATOMIC_MIN, SIG_ATOMIC_MAX):
16010         (SIZE_MAX, WCHAR_MIN, WCHAR_MAX, WINT_MIN, WINT_MAX):
16011         undef any previous version and define our own version, for
16012         simplicity and consistency with the new macros for types.
16013         (PTRDIFF_MIN, PTRDIFF_MAX, SIG_ATOMIC_MIN, SIG_ATOMIC_MAX):
16014         (SIZE_MAX, WCHAR_MIN, WCHAR_MAX, WINT_MIN, WINT_MAX):
16015         Simplify definitions by using _STDINT_MIN and _STDINT_MAX
16016         where appropriate.  Rely on new symbols @PTRDIFF_T_SUFFIX@,
16017         @SIG_ATOMIC_T_SUFFIX@, @SIZE_T_SUFFIX@, @WCHAR_T_SUFFIX@,
16018         @WINT_T_SUFFIX@ to keep things simple here.
16019         (UINT8_C, UINT16_C, UINT32_C, INT64_C, UINT64_C):
16020         Simplify by assuming typical 8/16/32/64 host, since we're
16021         already doing that elsewhere anyway.
16022         Use (LONG_MAX >> 31 >> 31 == 1) rather than @HAVE_LONG_64BIT@,
16023         and assume long long int is 64 bits if available.  This
16024         speeds up 'configure'.
16025
16026 2006-07-01  Eric Blake  <ebb9@byu.net>
16027
16028         * m4/stdarg.m4 (gl_STDARG_H): Use proper AH_VERBATIM.
16029         Reported by Andreas Buening.
16030
16031 2006-07-01  Eric Blake  <ebb9@byu.net>
16032
16033         * m4/stdarg.m4 (gl_STDARG_H): Properly parenthesize gl_va_copy.
16034
16035 2006-06-30  Jim Hyslop  <jhyslop@dreampossible.ca>  (tiny change)
16036
16037         * lib/getaddrinfo.c: fixed typo
16038
16039 2006-06-29  Jim Meyering  <jim@meyering.net>
16040
16041         * modules/strftime (Maintainer): Add my name, since with the
16042         FPRINTFTIME changes strftime.c has forked from glibc.
16043
16044 2006-06-29  Eric Blake  <ebb9@byu.net>
16045
16046         * m4/sys_stat_h.m4 (gl_HEADER_SYS_STAT_H): Use AC_C_INLINE.
16047
16048 2006-06-29  Eric Blake  <ebb9@byu.net>
16049
16050         * m4/sys_stat_h.m4 (gl_HEADER_SYS_STAT_H): New file.
16051
16052 2006-06-29  Eric Blake  <ebb9@byu.net>
16053
16054         * lib/stat_.h: New file.
16055
16056 2006-06-29  Eric Blake  <ebb9@byu.net>
16057
16058         * lib/stat_.h (rpl_mkdir): Declare inline, to avoid warnings about
16059         unused static function.
16060
16061 2006-06-29  Eric Blake  <ebb9@byu.net>
16062
16063         * doc/functions.texi (Function Portability): Document missing lstat
16064         on mingw.
16065
16066 2006-06-29  Eric Blake  <ebb9@byu.net>
16067
16068         * MODULES.html.sh: Add sys_stat.
16069         * modules/sys_stat: New module.
16070         * modules/mkstemp (Depends-on): Add sys_stat.
16071
16072 2006-06-29  Derek R. Price  <derek@ximbiot.com>
16073
16074         * m4/strftime.m4: Don't call AC_FUNC_STRFTIME.
16075
16076 2006-06-29  Derek R. Price  <derek@ximbiot.com>
16077
16078         * m4/c-bs-a.m4: Removed.
16079
16080 2006-06-29  Derek R. Price  <derek@ximbiot.com>
16081
16082         * lib/strftime.c: Assume strftime() exists.
16083
16084 2006-06-29  Derek Price  <derek@ximbiot.com>
16085
16086         * modules/c-bs-a: Removed - \a is C89.
16087         * MODULES.html.sh: Remove c-bs-a.
16088
16089 2006-06-29  Bruno Haible  <bruno@clisp.org>
16090
16091         * modules/wcwidth (License): Change to LGPL.
16092
16093 2006-06-28  Simon Josefsson  <jas@extundo.com>
16094
16095         * tests/test-getaddrinfo.c: Test getnameinfo too.  Call WSAStartup
16096         on _WIN32.
16097
16098         * modules/getaddrinfo (Depends-on): Add inet_ntop, needed by
16099         getnameinfo.
16100
16101 2006-06-28  Simon Josefsson  <jas@extundo.com>
16102
16103         * m4/getaddrinfo.m4: Look for getnameinfo prototypes too.
16104
16105 2006-06-28  Simon Josefsson  <jas@extundo.com>
16106
16107         * lib/getaddrinfo.c: Try to load ws2_32.dll on Windows, to find the
16108         functions there.  It will succeed on Windows XP, but on Windows
16109         2000 and (presumably) earlier, it will fail, and use the internal
16110         re-implementation.
16111         (use_win32_p): New function.
16112         (getaddrinfo): Use strtoul on servname, to support numeric ports.
16113         Support AI_NUMERICSERV to disable getservbyname.
16114         (getnameinfo): New function, only supports
16115         NI_NUMERICHOST|NI_NUMERICSERV for now.
16116
16117         * lib/getaddrinfo.h: Test and check for AI_* flags separately, MinGW
16118         only have some of them.  Add AI_NUMERICSERV.  Add prototype for
16119         getnameinfo.
16120
16121 2006-06-28  Eric Blake  <ebb9@byu.net>
16122
16123         * modules/wcwidth: New file.
16124         * modules/mbchar (Depends-on): Add wcwidth.
16125         * modules/mbswidth (Depends-on): Add wcwidth.
16126         * MODULES.html.sh: Add wcwidth.
16127
16128 2006-06-28  Eric Blake  <ebb9@byu.net>
16129
16130         * m4/mbswidth.m4 (gl_MBSDWIDTH): Move wcwidth from here...
16131         * m4/wcwidth.m4 (gl_FUNC_WCWIDTH): ...to this new file.
16132
16133 2006-06-28  Eric Blake  <ebb9@byu.net>
16134
16135         * lib/xvasprintf.h: Fix comments.
16136
16137 2006-06-28  Eric Blake  <ebb9@byu.net>
16138
16139         * lib/mbchar.h (wcwidth): Include wcwidth.h.
16140         * lib/mbswidth.c (wcwidth): Move from here...
16141         * lib/wcwidth.h: ...to this new file.
16142
16143 2006-06-28  Derek R. Price  <derek@ximbiot.com>
16144
16145         * m4/savedir.m4: Remove AC_FUNC_CLOSEDIR_VOID requirement.
16146
16147         * m4/fnmatch.m4 (_AC_LIBOBJ_FNMATCH): Don't require AC_C_CONST, since
16148         it's obsolete.
16149         * m4/strftime.m4 (gl_FUNC_GNU_STRFTIME): Likewise.
16150
16151 2006-06-28  Derek R. Price  <derek@ximbiot.com>
16152
16153         * lib/savedir.c (CLOSEDIR): Remove.  All uses changed to closedir.
16154         Autoconf 2.60 says this stuff was obsolete.
16155
16156 2006-06-28  Bruno Haible  <bruno@clisp.org>
16157
16158         * modules/wcwidth (Files): Add m4/wchar_t.m4.
16159
16160 2006-06-28  Bruno Haible  <bruno@clisp.org>
16161
16162         * m4/wcwidth.m4 (gl_FUNC_WCWIDTH): Also require AC_C_INLINE and
16163         gt_TYPE_WCHAR_T.
16164
16165 2006-06-28  Bruno Haible  <bruno@clisp.org>
16166
16167         * lib/wcwidth.h: Declare nothing if !HAVE_WCHAR_T. Provide a fallback
16168         declaration for wcwidth.
16169         * lib/mbswidth.c: Restore the includes of <wchar.h> and <wctypes.h>.
16170
16171 2006-06-28  Bruno Haible  <bruno@clisp.org>
16172
16173         * lib/mkdtemp.c [MINGW]: Include <io.h>.
16174         (mkdir): Define using _mkdir.
16175
16176 2006-06-28  Bruno Haible  <bruno@clisp.org>
16177
16178         * lib/getaddrinfo.h: Fix POSIX URL.
16179         * lib/getaddrinfo.c (WIN32_NATIVE): New macro. Use it instead of
16180         _WIN32.
16181         (use_win32_p): Make static.
16182         (getaddrinfo): Reject service name if it is empty or does not consist
16183         solely of decimal digits, or if its value is > 65535.
16184         (getnameinfo): Remove useless casts.
16185
16186 2006-06-27  Simon Josefsson  <jas@extundo.com>
16187
16188         * modules/sys_select: New file, suggested by Bruno Haible, Paul
16189         Eggert and Martin Lambers.
16190
16191 2006-06-27  Simon Josefsson  <jas@extundo.com>
16192
16193         * m4/sys_select_h.m4: New file, suggested by Bruno Haible, Paul
16194         Eggert and Martin Lambers.
16195
16196 2006-06-27  Bruno Haible  <bruno@clisp.org>
16197
16198         * m4/stdint.m4 (gl_STDINT_BITSIZEOF): For nonexistent types, set the
16199         result to 0, not to empty.
16200         Reported by Martin Neitzel <neitzel@sco.gaertner.de>.
16201
16202 2006-06-27  Bruno Haible  <bruno@clisp.org>
16203
16204         * lib/stdint_.h (intmax_t, uintmax_t): Undefine before typedef.
16205
16206 2006-06-26  Simon Josefsson  <jas@extundo.com>
16207
16208         * m4/inet_ntop.m4: Don't check for sys/types.h, we assume it is
16209         present.
16210
16211 2006-06-26  Paul Eggert  <eggert@cs.ucla.edu>
16212
16213         * lib/base64.c (B64): Use _ as the formal parameter, not x, to avoid
16214         bug in IBM C V6 for AIX.  Problem reported by Larry Jones in
16215         <http://lists.gnu.org/archive/html/bug-gnulib/2006-06/msg00181.html>.
16216
16217 2006-06-26  Mark D. Baushke  <mdb@gnu.org>
16218
16219         * m4/stdint.m4 (gl_STDINT_H): Treat BSD/OS like OpenBSD.
16220
16221 2006-06-26  Bruno Haible  <bruno@clisp.org>
16222
16223         * modules/stdint (Makefile.am): Also substitute HAVE_WCHAR_H.
16224
16225 2006-06-26  Bruno Haible  <bruno@clisp.org>
16226
16227         * m4/stdint.m4 (gl_STDINT_H): Test also for <wchar.h>.
16228
16229 2006-06-26  Bruno Haible  <bruno@clisp.org>
16230
16231         * m4/stdint.m4 (gl_STDINT_H): Don't include <stdint.h> when using the
16232         SGI C compiler in pre-C99 mode.
16233         Suggested by Mark D. Baushke and Larry Jones.
16234
16235 2006-06-26  Bruno Haible  <bruno@clisp.org>
16236
16237         * lib/stdint_.h: Include <wchar.h> if necessary for WCHAR_MIN or
16238         WCHAR_MAX.
16239         Reported by Mark D. Baushke and Larry Jones.
16240
16241 2006-06-26  Bruno Haible  <bruno@clisp.org>
16242
16243         * lib/stdint_.h: Don't include <stdint.h> when using the SGI C compiler
16244         in pre-C99 mode.
16245         Suggested by Mark D. Baushke and Larry Jones.
16246
16247 2006-06-23  Simon Josefsson  <jas@extundo.com>
16248             Bruno Haible  <bruno@clisp.org>
16249
16250         * gnulib-tool (func_emit_lib_Makefile_am): Define MOSTLYCLEANDIRS.
16251         Emit mostlyclean-local rule.
16252         (func_emit_tests_Makefile_am): Likewise.
16253         * modules/sys_socket (Makefile.am): Use MOSTLYCLEANDIRS.
16254
16255 2006-06-23  Mark D. Baushke  <mdb@gnu.org>
16256
16257         * lib/stdint_.h: Treat BSD/OS like OpenBSD.
16258
16259 2006-06-23  Bruno Haible  <bruno@clisp.org>
16260
16261         * tests/test-stdint.c: Update to match ISO C 99 Technical
16262         Corrigendum 1.
16263
16264 2006-06-23  Bruno Haible  <bruno@clisp.org>
16265
16266         * m4/stdint.m4 (gl_STDINT_H): Treat IRIX like OpenBSD.
16267
16268 2006-06-23  Bruno Haible  <bruno@clisp.org>
16269
16270         * lib/stdint_.h: Treat IRIX like OpenBSD.
16271
16272 2006-06-23  Bruno Haible  <bruno@clisp.org>
16273
16274         * lib/stdint_.h (UINT8_C, UINT16_C, UINT32_C): Define according to
16275         ISO C 99 Technical Corrigendum 1.
16276
16277 2006-06-22  Simon Josefsson  <jas@extundo.com>
16278
16279         * m4/sockpfaf.m4: Include winsock2.h too, to make it work under
16280         MinGW.
16281
16282 2006-06-22  Paul Eggert  <eggert@cs.ucla.edu>
16283
16284         * lib/glob.c (collated_compare): Remove 'const' uses that weren't
16285         needed.  Some compiler complained about some of them.  Problem reported
16286         by Larry Jones in
16287         <http://lists.gnu.org/archive/html/bug-gnulib/2006-06/msg00172.html>.
16288
16289 2006-06-21  Simon Josefsson  <jas@extundo.com>
16290
16291         * tests/test-getaddrinfo.c: New file.
16292
16293         * modules/getaddrinfo-tests: New file.
16294
16295         * MODULES.html.sh: Add inet_pton.
16296
16297         * modules/inet_pton: New file.
16298
16299 2006-06-21  Simon Josefsson  <jas@extundo.com>
16300
16301         * m4/getaddrinfo.m4: Don't define WINVER.  Look for gethostbyname in
16302         -lws2_32 too.  Fixes getaddrinfo on Windows 2000, with the price
16303         of using the (limited) gnulib implementation on Windows XP.
16304
16305         * m4/inet_pton.m4: New file.
16306
16307 2006-06-21  Simon Josefsson  <jas@extundo.com>
16308
16309         * lib/getaddrinfo.c (getaddrinfo): Set ai_family in the return
16310         variable.
16311
16312         * lib/socket_.h: Don't define WINVER.
16313
16314         * lib/inet_pton.h, inet_pton.c: New file, taken from glibc but
16315         slightly modified to work in gnulib.
16316
16317 2006-06-21  Simon Josefsson  <jas@extundo.com>
16318
16319         * doc/gnulib.texi (Windows sockets): Add.
16320
16321 2006-06-21  Paul Eggert  <eggert@cs.ucla.edu>
16322
16323         * lib/read-file.c (fread_file): Start with buffer allocation of
16324         0 bytes rather than 1 byte; this simplifies the code.
16325         Don't invoke feof; it's not needed.  Refactor to avoid duplicate
16326         code to free buffer and save/restore errno.
16327         (internal_read_file): Remove unused local.
16328
16329 2006-06-20  Paul Eggert  <eggert@cs.ucla.edu>
16330
16331         * lib/openat.c (openat): Use ?:, not if, to work around GCC bug 4210
16332         <http://gcc.gnu.org/bugzilla/show_bug.cgi?id=4210>.
16333         Problem reported by Denis Excoffier in
16334         <http://lists.gnu.org/archive/html/bug-tar/2006-06/msg00023.html>.
16335
16336 2006-06-19  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
16337
16338         * modules/sys_socket, modules/socklen: Include sys/types since
16339         FreeBSD 4.x's sys/socket.h needs it.
16340
16341 2006-06-19  Simon Josefsson  <jas@extundo.com>
16342
16343         * lib/inet_ntop.c: Always build inet_ntop4, since inet_ntop6 calls it.
16344
16345 2006-06-19  Paul Eggert  <eggert@cs.ucla.edu>
16346
16347         * lib/alloca_.h (alloca) [defined alloca]: Don't define or declare.
16348
16349 2006-06-19  Bruno Haible  <bruno@clisp.org>
16350
16351         * m4/stdint.m4 (gl_STDINT_H): Enclose the values of FULL_PATH_STDINT_H
16352         and FULL_PATH_INTTYPES_H in angle brackets.
16353         Reported by Mark D. Baushke <mdb@gnu.org>.
16354
16355 2006-06-17  Eric Blake  <ebb9@byu.net>
16356
16357         * m4/rmdir-errno.m4 (gl_FUNC_FMDIR_NOTEMPTY): Assume errno.h declares
16358         errno.
16359
16360 2006-06-17  Bruno Haible  <bruno@clisp.org>
16361
16362         * m4/stdint.m4 (gl_STDINT_H) [FreeBSD >= 5]: Don't include
16363         <sys/inttypes.h>.
16364
16365 2006-06-17  Bruno Haible  <bruno@clisp.org>
16366
16367         * m4/setenv.m4 (gl_PREREQ_SETENV, gl_PREREQ_UNSETENV): Remove test
16368         whether errno is declared. Assume <errno.h> declares errno.
16369
16370 2006-06-17  Bruno Haible  <bruno@clisp.org>
16371
16372         * lib/stdint_.h [FreeBSD >= 5]: Don't include <sys/inttypes.h>.
16373
16374 2006-06-17  Bruno Haible  <bruno@clisp.org>
16375
16376         * lib/stdint_.h (_UINT8_T, _UINT32_T, _UINT64_T): New macros. Fixes a
16377         problem on Solaris 2.5.1.
16378
16379 2006-06-16  Eric Blake  <ebb9@byu.net>
16380
16381         * lib/unsetenv.c [!defined errno]: Assume errno.h declares errno.
16382         * lib/unicodeio.c [!defined errno]: Likewise.
16383         * lib/strtol.c [!defined errno]: Likewise.
16384         * lib/strtod.c [!defined errno]: Likewise.
16385
16386 2006-06-15  Eric Blake  <ebb9@byu.net>
16387
16388         * m4/ssize_t.m4 (gt_TYPE_SSIZE_T): Work in spite of -Werror.
16389
16390 2006-06-15  Eric Blake  <ebb9@byu.net>
16391
16392         * config/srclist.txt (ssize_t.m4): Lose sync.
16393
16394 2006-06-15  Bruno Haible  <bruno@clisp.org>
16395
16396         * modules/stdint (Files): Include m4/full-header-path.m4,
16397         m4/size_max.m4, m4/wchar_t.m4.
16398         (Makefile.am): Many more substitutions.
16399         * modules/stdint-tests: New file.
16400         * tests/test-stdint.c: New file.
16401
16402 2006-06-15  Bruno Haible  <bruno@clisp.org>
16403
16404         * m4/stdint.m4 (gl_STDINT_H): Rewritten to produce a complete stdint.h.
16405         (gl_HEADER_STDINT_H, gl_HEADER_INTTYPES_H, gl_STDINT_CHECK_TYPES,
16406         gl_STDINT_MISSING_BOUND, gl_STDINT_MISSING_BOUNDS,
16407         gl_STDINT_MISSING_BOUNDS2, gl_STDINT_BITSIZEOF, gl_CHECK_TYPES_SIGNED,
16408         gl_CHECK_TYPE_SAME): New macros.
16409
16410 2006-06-15  Bruno Haible  <bruno@clisp.org>
16411
16412         * m4/size_max.m4 (gl_SIZE_MAX): Make it work also when cross-compiling.
16413
16414 2006-06-15  Bruno Haible  <bruno@clisp.org>
16415
16416         * lib/stdint_.h: Rewritten to be fully auto-configured.
16417         Fixes bug on HP-UX/IA64.
16418
16419 2006-06-11  Paul Eggert  <eggert@cs.ucla.edu>
16420
16421         * lib/getdate.y (__attribute__): Don't define if already defined.
16422         Problem reported by Larry Jones.
16423         * lib/utimens.c (__attribute__): Likewise.
16424
16425 2006-06-04  Paul Eggert  <eggert@cs.ucla.edu>
16426
16427         * lib/regexec.c (group_nodes_into_DFAstates): Fix a buffer overrun
16428         reported by Andreas Schwab.
16429
16430 2006-05-30  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
16431             Bruno Haible  <bruno@clisp.org>
16432
16433         * m4/strndup.m4 (gl_FUNC_STRNDUP): Replace the AC_REPLACE_FUNCS with a
16434         check for the declaration of strnlen and a run test that exposes the
16435         AIX 5.1 strnlen bug.  In the failure case, #define strndup to
16436         rpl_strndup.
16437
16438 2006-05-30  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
16439             Bruno Haible  <bruno@clisp.org>
16440
16441         * lib/strndup.c (strndup) [!_LIBC]: Don't undefine macro definition.
16442
16443 2006-05-28  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
16444
16445         * m4/c-strtod.m4 (gl_C99_STRTOLD): Use a link test rather than a
16446         compile test, for Tru64 4.0D.
16447
16448 2006-05-28  Karl Berry  <karl@gnu.org>
16449
16450         * config/srclist.txt (printf-args.c): lose sync.
16451
16452 2006-05-26  Martin Lambers  <marlam@marlam.de>
16453
16454         * lib/getpass.c: Updates the test for the native W32 API, and adds
16455         missing includes, thus fixing compilation warnings.
16456
16457 2006-05-25  Sergey Poznyakoff  <gray@gnu.org.ua>
16458
16459         * lib/exclude.c (exclude_fnmatch): New function.
16460         (excluded_file_name): Call exclude_fnmatch.
16461         * lib/exclude.h (excluded_file_name): New prototype
16462
16463 2006-05-25  Paul Eggert  <eggert@cs.ucla.edu>
16464
16465         * lib/tempname.c (small_open, large_open): New macros.
16466         (__open, __open64) [!_LIBC]: Remove.
16467         (__gen_tempname): Use small_open and large_open instead of __open
16468         and __open64.  This fixes a portability bug on HP-UX 11.11i
16469         reported by Simon Wing-Tang in
16470         <http://lists.gnu.org/archive/html/bug-coreutils/2006-05/msg00114.html>.
16471
16472 2006-05-24  Bruno Haible  <bruno@clisp.org>
16473
16474         * lib/printf-args.c (printf_fetchargs): Turn NULL pointers for
16475         TYPE_STRING and TYPE_WIDE_STRING into a non-NULL replacement.
16476         Reported by Thorsten Maerz <torte@netztorte.de> via
16477         Aaron Stone <aaron@serendipity.cx>.
16478
16479 2006-05-19  Paul Eggert  <eggert@cs.ucla.edu>
16480
16481         * m4/nanosleep.m4 (gl_FUNC_NANOSLEEP): Rename cache variables to use
16482         gl_ rather than jm_.  Link, don't run, so that cross-compiles are
16483         allowed.  Check that resulting type is arithmetic.  Move AC_REQUIRE
16484         and AC_CHECK_HEADERS_ONCE outside of AC_CACHE_CHECK, since they're
16485         not really conditional on the cache.
16486         (gl_PREREQ_NANOSLEEP): Check for sys/select.h.
16487
16488 2006-05-19  Paul Eggert  <eggert@cs.ucla.edu>
16489
16490         * lib/nanosleep.c [HAVE_SYS_SELECT_H]: Include <sys/select.h>.
16491         Use the usual Autoconf way to include <time.h> and/or sys/time.h.
16492         (my_usleep): Don't mishandle maximum value.
16493
16494 2006-05-19  Jim Meyering  <jim@meyering.net>
16495
16496         * lib/getugroups.c: Correct an outdated comment.  From Bruno Haible.
16497
16498 2006-05-17  Bruno Haible  <bruno@clisp.org>
16499
16500         Cygwin portability.
16501         * lib/classpath.c (PATH_SEPARATOR) [CYGWIN]: Define as ':'.
16502
16503 2006-05-17  Bruno Haible  <bruno@clisp.org>
16504
16505         * lib/stdint_.h: Fix recognition of Cygwin.
16506
16507 2006-05-15  Bruno Haible  <bruno@clisp.org>
16508
16509         * build-aux/config.rpath: Improve support for Sun C 5.9 on Linux, based
16510         on libtool patch by Ralf Wildenhues.
16511
16512 2006-05-14  Paul Eggert  <eggert@cs.ucla.edu>
16513
16514         * m4/stdbool.m4 (AC_HEADER_STDBOOL): Fix overly-picky
16515         test for C99 conformance; (bool) 0.5 is an integer constant
16516         expression, but (bool) -0.5 is not.  Problem reported by Fedor
16517         Sergeev in <http://forum.sun.com/jive/thread.jspa?threadID=96202>.
16518
16519 2006-05-11  Simon Josefsson  <jas@extundo.com>
16520
16521         * m4/xvasprintf.m4: Fix obvious typo.
16522
16523 2006-05-11  Jim Meyering  <jim@meyering.net>
16524
16525         * lib/sha1.c (sha1_buffer): Correct comment: s/MD5/SHA1/.  From
16526         James Lemley.
16527
16528 2006-05-10  Simon Josefsson  <jas@extundo.com>
16529
16530         * lib/md4.c: Typo fix, update copyright years.
16531         (K1, K2): Don't use L because it turn computations into 64-bit on
16532         64-bit platforms.
16533
16534 2006-05-10  Paul Eggert  <eggert@cs.ucla.edu>
16535
16536         * lib/crc.c (crc32_update): Remove unnecessary L suffix.
16537         * lib/md4.c (rol): Cast right-shift arg to uint32_t to prevent
16538         unwanted sign propagation, e.g., on hosts with 64-bit int.
16539         There still are some problems with reeelly weird theoretical hosts
16540         (e.g., 33-bit int) but it's not worth worrying about now.
16541         * lib/sha1.c (rol): Likewise.
16542         (K1, K2, K3, K4): Remove unnecessary L suffix.
16543
16544 2006-05-10  Bruno Haible  <bruno@clisp.org>
16545
16546         * lib/des.c: Cast to avoid warnings.
16547
16548 2006-05-09  Bruno Haible  <bruno@clisp.org>
16549
16550         * modules/xvasprintf (Files): Add m4/xvasprintf.m4.
16551         (Depends-on): Depend also on xsize, stdarg.
16552         (configure.ac): Add gl_XVASPRINTF.
16553
16554 2006-05-09  Bruno Haible  <bruno@clisp.org>
16555
16556         * m4/xvasprintf.m4: New file.
16557
16558 2006-05-09  Bruno Haible  <bruno@clisp.org>
16559
16560         * lib/xvasprintf.c: Include limits.h, string.h, xsize.h.
16561         (EOVERFLOW): Define fallback value.
16562         (xstrcat): New function.
16563         (xvasprintf): Recognize the special case of a string concatenation.
16564
16565 2006-05-08  Eric Blake  <ebb9@byu.net>
16566
16567         * gnulib-tool (func_version): Base copyright year on CVS date.
16568         (func_emit_copyright_notice): New function.
16569         (func_emit_lib_Makefile_am): Use it.
16570         (func_emit_tests_Makefile_am): Likewise.
16571         (func_import): Likewise.
16572
16573 2006-05-08  Bruno Haible  <bruno@clisp.org>
16574
16575         * modules/stdarg: New file.
16576         * MODULES.html.sh (func_all_modules): Add section for <stdarg.h>.
16577
16578 2006-05-08  Bruno Haible  <bruno@clisp.org>
16579
16580         * m4/stdarg.m4: New file, from GNU gettext.
16581
16582 2006-05-08  Bruno Haible  <bruno@clisp.org>
16583
16584         * config/srclist.txt (build-aux/config.rpath): different from latest
16585         release.
16586
16587 2006-05-08  Bruno Haible  <bruno@clisp.org>
16588
16589         * build-aux/config.rpath: Add support for Sun C 5.9 on Linux.
16590
16591 2006-05-05  Jim Meyering  <jim@meyering.net>
16592
16593         * m4/warning.m4: New file, derived from bison's file by the same name.
16594
16595 2006-05-03  Bruno Haible  <bruno@clisp.org>
16596
16597         * lib/stdint_.h: Shorter URL.
16598         * lib/inttypes.h: Likewise.
16599
16600 2006-05-02  Paul Eggert  <eggert@cs.ucla.edu>
16601
16602         * modules/inttypes (Maintainer): Change from Derek Price to 'all'.
16603
16604 2006-05-02  Paul Eggert  <eggert@cs.ucla.edu>
16605
16606         * lib/verify.h: Document the internals better.  Most of this change
16607         was written by Bruno Haible.
16608
16609 2006-05-02  Paul Eggert  <eggert@cs.ucla.edu>
16610
16611         * doc/verify.texi: New file, partly based on a proposal by
16612         Bruno Haible.
16613
16614 2006-05-02  Bruno Haible  <bruno@clisp.org>
16615
16616         * m4/full-header-path.m4 (gl_FULL_HEADER_PATH): Move the include_next
16617         test from here...
16618         * m4/_inttypes_h.m4 (gl_INTTYPES_H): ... to here.
16619
16620 2006-04-29  Bruno Haible  <bruno@clisp.org>
16621
16622         * lib/gcd.c: Use WORD_T and GCD instead of unsigned long and gcd.
16623         Suggested by Oskar Liljeblad <oskar@osk.mine.nu>.
16624
16625 2006-04-29  Bruno Haible  <bruno@clisp.org>
16626
16627         * gnulib-tool: Make --update option actually work.
16628
16629 2006-04-29  Bruno Haible  <bruno@clisp.org>
16630
16631         * doc/gcd.texi: New file.
16632         * doc/gnulib.texi: Include it.
16633
16634 2006-04-25  Paul Eggert  <eggert@cs.ucla.edu>
16635
16636         * lib/getdate.y (get_date): When adding relative date, start with the
16637         initial time, not with the result of the first mktime call.
16638
16639 2006-04-25  Bruno Haible  <bruno@clisp.org>
16640
16641         * gnulib-tool (func_import): Output the include directives in three
16642         blocks, sorted separately.
16643         Reported by Ben Pfaff <blp@cs.stanford.edu>.
16644
16645 2006-04-24  Paul Eggert  <eggert@cs.ucla.edu>
16646
16647         * m4/unlink-busy.m4 (gl_FUNC_UNLINK_BUSY_TEXT): Use prototype
16648         to define main with arguments, for C++.  Reported by Eric Blake.
16649         * m4/c-stack.m4 (AC_SYS_XSI_STACK_OVERFLOW_HEURISTIC):
16650         Prefer 'int main ()' to 'int main (void)', for C++.
16651         * m4/getcwd-path-max.m4 (gl_FUNC_GETCWD_PATH_MAX): Likewise.
16652         * m4/fsusage.m4 (gl_FILE_SYSTEM_USAGE): Specify a return type
16653         for 'main', for C99 and C++.
16654
16655 2006-04-24  Paul Eggert  <eggert@cs.ucla.edu>
16656
16657         * m4/fsusage.m4 (gl_FILE_SYSTEM_USAGE): Use return, not exit.
16658         Don't assume that exit status -1 is valid.
16659         * m4/nanosleep.m4 (gl_FUNC_NANOSLEEP): Likewise.
16660         * m4/putenv.m4 (gl_FUNC_PUTENV): Likewise.
16661         * m4/rmdir-errno.m4 (gl_FUNC_RMDIR_NOTEMPTY): Likewise.
16662         * m4/readdir.m4 (GL_FUNC_READDIR): Include <stdlib.h>.
16663         * m4/rename.m4 (vb_FUNC_RENAME): Likewise.
16664         * m4/unlink-busy.m4 (gl_FUNC_UNLINK_BUSY_TEXT): Use AC_RUN_IFELSE,
16665         not AC_TRY_RUN.  Use return, not exit.  Don't assume that
16666         functions can be used without declaring them, or that you can
16667         exit with status -1.
16668         * m4/utimes-null.m4 (gl_FUNC_UTIMES_NULL): Likewise.
16669
16670 2006-04-24  Karl Berry  <karl@gnu.org>
16671
16672         * config/srclist.txt (longdouble.m4): sync lost.
16673
16674 2006-04-24  Eric Blake  <ebb9@byu.net>
16675
16676         * m4/strerror_r.m4 (AC_FUNC_STRERROR_R): Avoid unused variable warning.
16677
16678 2006-04-24  Bruno Haible  <bruno@clisp.org>
16679
16680         * m4/poll.m4 (gl_FUNC_POLL): When cross-compiling, reject also the
16681         poll() implementation in AIX.
16682         Reported by Ralf Wildenhues <Ralf.Wildenhues@gmx.de>.
16683
16684 2006-04-24  Bruno Haible  <bruno@clisp.org>
16685
16686         * m4/poll.m4 (gl_FUNC_POLL): Rearrange code, so that POLL_H gets
16687         assigned exactly once.
16688
16689 2006-04-23  Claudio Fontana  <claudio@gnu.org>
16690             Bruno Haible  <bruno@clisp.org>
16691
16692         * modules/gettext (Makefile.am): Add a -I flag for <libintl.h>.
16693         * gnulib-tool (func_emit_lib_Makefile_am): Emit empty default value
16694         for AM_CPPFLAGS.
16695
16696 2006-04-23  Bruno Haible  <bruno@clisp.org>
16697
16698         * modules/copy-file: Depend on unistd.
16699         * modules/execute: Likewise.
16700         * modules/fatal-signal: Likewise.
16701         * modules/findprog: Likewise.
16702         * modules/mkdtemp : Likewise.
16703         * modules/pipe: Likewise.
16704         * modules/wait-process: Likewise.
16705
16706 2006-04-23  Bruno Haible  <bruno@clisp.org>
16707
16708         * lib/fwriteerror.c (fwriteerror): Call fclose also when an error
16709         condition was already detected.
16710         Reported by Ben Pfaff <blp@cs.stanford.edu>.
16711
16712 2006-04-23  Bruno Haible  <bruno@clisp.org>
16713
16714         * lib/copy-file.c: Include <unistd.h> unconditionally.
16715         * lib/execute.c: Likewise.
16716         * lib/fatal-signal.c: Likewise.
16717         * lib/findprog.c: Likewise.
16718         * lib/mkdtemp.c: Likewise.
16719         * lib/pipe.h: Likewise.
16720         * lib/pipe.c: Likewise.
16721         * lib/wait-process.h: Likewise.
16722
16723 2006-04-23  Bruno Haible  <bruno@clisp.org>
16724
16725         * gnulib-tool (func_usage): Fix --import description. Document
16726         --update.
16727         (func_import): Create temporary file in a temporary directory, if
16728         --dry-run is specified. Silence errors from 'grep' when there are no
16729         m4 files in $m4dir.
16730         (func_create_testdir): Silence errors from 'grep' when there are no
16731         m4 files in $m4dir.
16732         Reported by Karl Berry <karl@freefriends.org>.
16733
16734 2006-04-20  Bruno Haible  <bruno@clisp.org>
16735
16736         * m4/argp.m4 (gl_ARGP): Don't call AC_CHECK_DECLS_ONCE with more than
16737         one argument, so that the code will be portable to Autoconf 2.60.
16738         * m4/getlogin_r.m4 (gl_PREREQ_GETLOGIN_R): Likewise.
16739         * m4/getpass.m4 (gl_PREREQ_GETPASS): Likewise.
16740         * m4/unlocked-io.m4 (gl_FUNC_GLIBC_UNLOCKED_IO): Likewise.
16741
16742 2006-04-19  Derek Price  <derek@ximbiot.com>
16743             Eric Blake  <ebb9@byu.net>
16744
16745         * m4/full-header-path.m4 (gl_FULL_HEADER_PATH): Use </full/path.h>
16746         rather than "/full/path.h".  Update comment to match.  Shorten &
16747         generalize m4_translit call via AS_TR_CPP.
16748
16749 2006-04-19  Derek Price  <derek@ximbiot.com>
16750             Eric Blake  <ebb9@byu.net>
16751
16752         * lib/inttypes.h: Correct grammar in comment.
16753
16754 2006-04-18  Derek Price  <derek@ximbiot.com>
16755             Paul Eggert  <eggert@cs.ucla.edu>
16756
16757         * modules/inttypes: New file.
16758         * modules/strtoimax, modules/strtoumax: Depend on inttypes.
16759
16760 2006-04-18  Derek Price  <derek@ximbiot.com>
16761             Paul Eggert  <eggert@cs.ucla.edu>
16762
16763         * m4/_inttypes_h.m4, m4/full-header-path.m4, m4/include_next.m4:
16764         New files.
16765
16766 2006-04-18  Derek Price  <derek@ximbiot.com>
16767             Paul Eggert  <eggert@cs.ucla.edu>
16768
16769         * lib/inttypes.h: New file.
16770         * lib/strtoimax.c: Assume <inttypes.h>.
16771
16772 2006-04-15  Paul Eggert  <eggert@cs.ucla.edu>
16773
16774         * lib/utimens.c (futimens): glibc futimesat messes up if /proc
16775         isn't mounted.  Problem reported by Kir Kolyshkin.
16776
16777 2006-04-13  Paul Eggert  <eggert@cs.ucla.edu>
16778
16779         * lib/regcomp.c (init_dfa): Don't use wchar_t or wctype_t if
16780         RE_ENABLE_I18N is not defined.  Problem reported by Mark D. Baushke via
16781         Derek R. Price.
16782         * lib/regex.h (RE_DUP_MAX): Update comment to match current
16783         implementation.
16784
16785 2006-04-12  Eric Blake  <ebb9@byu.net>
16786
16787         * modules/time_r (Makefile.am): Remove lib_SOURCES line, as this
16788         is now done automatically by the corresponding Autoconf macro.
16789
16790 2006-04-11  Paul Eggert  <eggert@cs.ucla.edu>
16791
16792         * m4/time_r.m4 (gl_TIME_R): Add AC_LIBSOURCES for time_r.c and
16793         time_r.h.
16794
16795 2006-04-09  Paul Eggert  <eggert@cs.ucla.edu>
16796
16797         Merge regex changes from libc, removing some of our
16798         POSIX-conformance changes that were rejected and redoing them in a
16799         less-intrusive way.
16800
16801         * lib/regcomp.c (re_compile_internal, init_dfa):
16802         Length arg is now size_t, not Idx.  All uses changed.
16803         (peek_token): Forward decl now says internal_function.
16804         (__re_error_msgid, __re_error_msgid_idx):
16805         Now static rather than extern with attribute_hidden.
16806         (re_compile_pattern) [!defined _LIBC]: Use K&R-style defn.
16807         For some reason libc prefers K&R style defns for external functions.
16808         (regerror) [!defined _LIBC]: Likewise.
16809         (re_set_syntax, re_compile_fastmap, regcomp, regfree, re_comp):
16810         (seek_collating_symbol_entry, lookup_collation_sequence_value):
16811         (build_range_exp, build_collating_symbol):
16812         Use K&R-style defn.
16813         (re_compile_fastmap): Use '\0' to memset, not 0.
16814         (utf8_sb_map): Make the calculations more obvious.
16815         (init_dfa, parse_bracket_exp, build_charclass_op):
16816         Call calloc and cast result, as glibc does.
16817         (init_word_char, fetch_token, peek_token, peek_token_bracket):
16818         (build_range_exp, build_collating_symbol):
16819         Now internal functions.
16820
16821         * lib/regex.c [!defined _LIBC]: Allow compiling with C++ compilers.
16822
16823         * lib/regex.h (__USE_GNU_REGEX): New macro.  Don't depend on
16824         _REGEX_SOURCE any more; depend on _GNU_SOURCE instead.
16825         Don't depend on VMS; depend on __VMS instead, for POSIX
16826         namespace cleanness.
16827         (regoff_t): Define to ssize_t, not long int.
16828
16829         Remove the REG_ macros named below.  Instead, make the old names
16830         (e.g., RE_BACKSLASH_ESCAPE_IN_LISTS) visible only if
16831         __USE_GNU_REGEX.
16832         (REG_BACKSLASH_ESCAPE_IN_LISTS):
16833         (REG_BK_PLUS_QM, REG_CHAR_CLASSES, REG_CONTEXT_INDEP_ANCHORS):
16834         (REG_CONTEXT_INDEP_OPS, REG_CONTEXT_INVALID_OPS):
16835         (REG_DOT_NEWLINE, REG_DOT_NOT_NULL, REG_HAT_LISTS_NOT_NEWLINE):
16836         (REG_INTERVALS, REG_LIMITED_OPS, REG_NEWLINE_ALT):
16837         (REG_NO_BK_BRACES, REG_NO_BK_PARENS, REG_NO_BK_REFS):
16838         (REG_NO_BK_VBAR, REG_NO_EMPTY_RANGES):
16839         (REG_UNMATCHED_RIGHT_PAREN_ORD, REG_NO_POSIX_BACKTRACKING):
16840         (REG_NO_GNU_OPS, REG_DEBUG, REG_INVALID_INTERVAL_ORD):
16841         (REG_IGNORE_CASE, REG_CARET_ANCHORS_HERE):
16842         (REG_CONTEXT_INVALID_DUP, REG_NO_SUB, REG_SYNTAX_EMACS):
16843         (REG_SYNTAX_AWK, REG_SYNTAX_GNU_AWK, REG_SYNTAX_POSIX_AWK):
16844         (REG_SYNTAX_GREP, REG_SYNTAX_EGREP, REG_SYNTAX_POSIX_EGREP):
16845         (REG_SYNTAX_ED, REG_SYNTAX_SED, _REG_SYNTAX_POSIX_COMMON):
16846         (REG_SYNTAX_POSIX_BASIC, REG_SYNTAX_POSIX_MINIMAL_BASIC):
16847         (REG_SYNTAX_POSIX_EXTENDED, REG_SYNTAX_POSIX_MINIMAL_EXTENDED):
16848         (REG_DUP_MAX, REG_UNALLOCATED, REG_REALLOCATE, REG_FIXED):
16849         (REG_NREGS):
16850         Remove.  All uses replaced by the old RE_* names.
16851         (RE_BACKSLASH_ESCAPE_IN_LISTS):
16852         (RE_BK_PLUS_QM, RE_CHAR_CLASSES, RE_CONTEXT_INDEP_ANCHORS):
16853         (RE_CONTEXT_INDEP_OPS, RE_CONTEXT_INVALID_OPS):
16854         (RE_DOT_NEWLINE, RE_DOT_NOT_NULL, RE_HAT_LISTS_NOT_NEWLINE):
16855         (RE_INTERVALS, RE_LIMITED_OPS, RE_NEWLINE_ALT):
16856         (RE_NO_BK_BRACES, RE_NO_BK_PARENS, RE_NO_BK_REFS):
16857         (RE_NO_BK_VBAR, RE_NO_EMPTY_RANGES):
16858         (RE_UNMATCHED_RIGHT_PAREN_ORD, RE_NO_POSIX_BACKTRACKING):
16859         (RE_NO_GNU_OPS, RE_DEBUG, RE_INVALID_INTERVAL_ORD):
16860         (RE_IGNORE_CASE, RE_CARET_ANCHORS_HERE):
16861         (RE_CONTEXT_INVALID_DUP, RE_NO_SUB):
16862         Don't bother having these macros be independent of each others'
16863         values, since they no longer exist in the POSIX name space.
16864
16865         Rename the following member names back to their old names,
16866         unless !__USE_GNU_REGEX.  All uses changed back.
16867         (buffer): Renamed from re_buffer.
16868         (allocated): Renamed from re_allocated.
16869         (used): Renamed from re_used.
16870         (syntax): Renamed from re_syntax.
16871         (fastmap): Renamed from re_fastmap.
16872         (translate): Renamed from re_translate.
16873         (can_be_null): Renamed from re_can_be_null.
16874         (regs_allocated): Renamed from re_regs_allocated.
16875         (fastmap_accurate): Renamed from re_fastmap_accurate.
16876         (no_sub): Renamed from re_no_sub.
16877         (not_bol): Renamed from re_not_bol.
16878         (not_eol): Renamed from re_not_eol.
16879         (newline_anchor): Renamed from re_newline_anchor.
16880         (num_regs): Renamed from rm_num_regs.
16881         (start): Renamed from rm_start.
16882         (end): Renamed from rm_end.
16883
16884         (free_state): Move up a bit.
16885
16886         * lib/regex_internal.h (inline) [__GNUC__ < 3 && defined _LIBC]:
16887         #define to be empty.
16888         (ASCII_CHARS): New macro, replacing all uses of 0x80 and/or SBC_MAX / 2
16889         when that is what is intended.
16890         (SBC_MAX): Define to UCHAR_MAX + 1, not 256.
16891         (__re_error_msgid, __re_error_msgid_idx): Remove decls; not needed.
16892         (MAX): New macro.
16893         (re_xmalloc, re_calloc, re_xrealloc, re_x2realloc): Remove.
16894         All uses changed back to re_malloc, etc.  It's now the caller's
16895         responsibility to check for overflow; all callers changed.
16896         (re_alloc_oversized, re_x2alloc_oversized, re_xnmalloc, re_xnrealloc):
16897         (re_x2nrealloc): Remove.
16898         (free_state): Remove decl.
16899
16900         * lib/regexc.c (regexec, re_match, re_search, re_match_2, re_search_2):
16901         (re_set_registers, re_exec):
16902         Use K&R-style defn.
16903
16904         2006-01-31  Roland McGrath  <roland@redhat.com>
16905
16906         * lib/regcomp.c (calc_eclosure_iter): Remove dead variables.
16907         Reported by Mike Frysinger <vapier@gentoo.org>.
16908
16909         2006-01-15  Andreas Jaeger  <aj@suse.de>
16910
16911         [BZ #1950]
16912         * lib/regex_internal.c (re_string_reconstruct): Adjust for
16913         build_wcs_upper_buffer change.
16914         (build_wcs_upper_buffer): Change return type.
16915
16916         2005-12-10  Ulrich Drepper  <drepper@redhat.com>
16917
16918         * lib/regex_internal.h: Include <stdint.h> if available.
16919
16920         2005-12-06  Paolo Bonzini  <bonzini@gnu.org>
16921
16922         * lib/regex_internal.h (SIZE_MAX): Provide a default definition.
16923
16924         2005-10-14  Ulrich Drepper  <drepper@redhat.com>
16925
16926         * lib/regcomp.c: Adjust for changed secondary hash function.
16927
16928         2005-09-30  Ulrich Drepper  <drepper@redhat.com>
16929
16930         * lib/regex.h: Pretty printing.
16931         Clean up namespace a bit.
16932
16933         2005-09-30  Jakub Jelinek  <jakub@redhat.com>
16934
16935         * lib/regexec.c (update_cur_sifted_state, check_arrival,
16936         check_arrival_add_next_nodes): Avoid using uninitialized variable.
16937
16938         2005-09-06  Paul Eggert  <eggert@cs.ucla.edu>
16939                     Ulrich Drepper  <drepper@redhat.com>
16940
16941         [BZ #1302]
16942         * lib/regex_internal.h (bitset_t): Renamed from bitset.  All uses
16943         changed.
16944         (bitset_word_t): Renamed from bitset_word.  All uses changed.
16945
16946         2005-09-22  Ulrich Drepper  <drepper@redhat.com>
16947
16948         [BZ #281]
16949         * lib/regex.h: Define RE_TRANSLATE_TYPE as unsigned char *.
16950         * lib/regcomp.c: Remove unnecessary uses of
16951         unsigned RE_TRANSLATE_TYPE.
16952         * lib/regex_internal.h: Likewise.
16953         * lib/regex_internal.c: Likewise.
16954         * lib/regexec.c: Likewise.
16955         Based on a patch by Stepan Kasal <kasal@ucw.cz>.
16956
16957         2005-09-07  Ulrich Drepper  <drepper@redhat.com>
16958
16959         * lib/regexec.c (find_recover_state): Remove unnecessary
16960         initialization.
16961         (transit_state_bkref): Make DFA a const pointer.
16962         (get_subexp): Likewise.
16963         (check_arrival): Likewise.
16964         (update_cur_sifted_state): Likewise.
16965         (re_search_internal): Likewise.
16966         (prune_impossible_nodes): Likewise.
16967         (acquire_init_state_context): Likewise.
16968         (proceed_next_node): Likewise.
16969         (set_regs): Likewise.
16970         (free_fail_stack_return): Likewise.
16971         (check_arrival_expand_ecl): Mark DFA parameter as const.
16972         (check_arrival_expand_ecl_sub): Likewise.
16973         (check_subexp_limits): Likewise.
16974         (sub_epsilon_src_nodes):  Likewise.
16975         (add_epsilon_src_nodes):  Likewise.
16976         (merge_state_array): Likewise.
16977         (update_regs): Likewise.
16978         (build_trtable): Likewise.
16979         (sift_states_backward): Mark MCTX parameter as const.
16980         (build_sifted_states): Likewise.
16981         (update_cur_sifted_state): Likewise.
16982         (sift_states_mkref): Likewise.
16983         (check_arrival_expand_ecl): Mark eclosure as const.
16984         (check_dst_limits_calc_pos_1): Likewise.
16985         * lib/regex_internal.h (re_match_context_t): Make dfa a const
16986         pointer.
16987
16988         2005-09-06  Ulrich Drepper  <drepper@redhat.com>
16989
16990         * lib/regexec.c (merge_state_with_log): Define dfa as const pointer.
16991         (transit_state_sb): Likewise.
16992         (transit_state_mb): Likewise.
16993         (sift_states_iter_mb): Likewise.
16994         (check_arrival_add_next_nodes): Likewise.
16995         (check_node_accept_bytes): Change first parameter to pointer-to-const.
16996         [_LIBC] (re_search_2_stub): Use mempcpy.
16997
16998         * lib/regex_internal.c (re_string_reconstruct): Avoid calling
16999         mbrtowc for very simple UTF-8 case.
17000
17001         * lib/regex_internal.c (re_acquire_state): Make DFA pointer arg
17002         a pointer-to-const.
17003         (re_acquire_state_context): Likewise.
17004         * lib/regex_internal.h: Adjust prototypes.
17005
17006         * lib/regex.c: Prevent using C++ compilers.
17007
17008         * lib/regex_internal.c (re_acquire_state): Minor code rearrangement.
17009         (re_acquire_state_context): Likewise.
17010
17011 2006-04-09  Paul Eggert  <eggert@cs.ucla.edu>
17012
17013         * modules/regex (Depends-on): Add ssize_t.
17014
17015 2006-04-09  Paul Eggert  <eggert@cs.ucla.edu>
17016
17017         * m4/regex.m4 (gl_REGEX): Check for new glibc interface to
17018         translation table.
17019
17020 2006-04-09  Paul Eggert  <eggert@cs.ucla.edu>
17021
17022         * doc/gnulib-tool.texi (Modified imports): pathname -> file name.
17023
17024 2006-03-29  Mark D. Baushke  <mdb@gnu.org>
17025             Bruno Haible  <bruno@clisp.org>
17026
17027         * lib/stdint_.h: On OpenBSD, don't redefine types already included in
17028         <sys/types.h> and <inttypes.h>.
17029
17030 2006-03-25  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
17031
17032         * m4/argz.m4 (gl_FUNC_ARGZ): If we define `error_t', also define
17033         `__error_t_defined', so argp.h will not typedef the former.
17034
17035 2006-03-25  Paul Eggert  <eggert@cs.ucla.edu>
17036
17037         * m4/regex.m4 (gl_REGEX): Don't insist on REG_SYNTAX_POSIX_EGREP,
17038         REG_SYNTAX_EMACS, and REG_IGNORE_CASE.  Settle for the traditional
17039         glibc names.  Even if glibc is changed to conform to POSIX, the
17040         traditional names will be available anyway, since regex depends on
17041         the extensions module.  Also, fix a longstanding typo in the
17042         implementation of Spencer ERE test #75 from grep 2.3.  Problems
17043         reported by Emanuele Giaquinta.  Also, change sense of cached
17044         variable, so that the message makes sense.
17045
17046 2006-03-24  Simon Josefsson  <jas@extundo.com>
17047
17048         * lib/base64.c: Fix problems reported by Eric Blake <ebb9@byu.net>,
17049         including some doc fixes.
17050         (base64_encode_alloc): Fix +1 bug on allocation failures.
17051
17052 2006-03-24  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
17053
17054         * lib/base64.c (base64_encode): Do not read past end of array with
17055         unsanitized input on systems with CHAR_BIT > 8.
17056
17057 2006-03-24  Eric Blake  <ebb9@byu.net>
17058
17059         * lib/time_r.c (copy_string_result): Remove, as it is no longer used.
17060
17061 2006-03-22  Karl Berry  <karl@gnu.org>
17062
17063         * config/srclist.txt (*setenv.[ch]): get from coreutils.
17064         * config/srclistvars.sh (COREUTILS): new var.
17065
17066 2006-03-17  Jim Meyering  <jim@meyering.net>
17067
17068         * m4/regex.m4 (gl_REGEX): Fix typo in last change:
17069         s/_REGEX_WIDE_OFFSETS/_REGEX_LARGE_OFFSETS/.
17070
17071 2006-03-16  Paul Eggert  <eggert@cs.ucla.edu>
17072
17073         * m4/regex.m4 (gl_REGEX): Don't check for off_t, since the code
17074         no longer needs it.  Instead, check that regoff_t is as least
17075         as wide as ptrdiff_t.
17076
17077         Don't define _REGEX_WIDE_OFFSETS unless using the included regex,
17078         so that our regex.h stays compatible with the installed regex.
17079         This is helpful for installers who configure --without-included-regex.
17080         Problem reported by Emanuele Giaquinta.
17081
17082 2006-03-16  Paul Eggert  <eggert@cs.ucla.edu>
17083
17084         * lib/regex.h (regoff_t) [defined _REGEX_LARGE_OFFSETS]:
17085         Typedef to long int, not to off_, as POSIX will likely change
17086         in that direction.
17087
17088 2006-03-15  Eric Blake  <ebb9@byu.net>
17089
17090         * m4/dirfd.m4 (gl_FUNC_DIRFD): Use AC_REQUIRE for AC_HEADER_DIRENT.
17091
17092 2006-03-13  Sergey Poznyakoff  <gray@gnu.org.ua>
17093
17094         * lib/argp-help.c (validate_uparams): Fix typo
17095         * lib/argp-parse.c (argp_default_options): Consistently begin help
17096         messages with a lowercase letter.
17097
17098 2006-03-11  Paul Eggert  <eggert@cs.ucla.edu>
17099
17100         * lib/time_r.h (asctime_r, ctime_r): Remove.  These functions can
17101         overrun buffers and shouldn't be used (much as gets shouldn't be
17102         used).
17103         * lib/time_r.c (asctime_r, ctime_r): Likewise.
17104
17105 2006-03-08  Simon Josefsson  <jas@extundo.com>
17106
17107         * m4/gc-random.m4: Permit 'no' as variable values and fix warnings,
17108         suggested by Ralf Wildenhues <Ralf.Wildenhues@gmx.de>.
17109
17110 2006-03-08  Simon Josefsson  <jas@extundo.com>
17111
17112         * m4/gc-random.m4: Call AC_CANONICAL_HOST and use $host_os instead of
17113         $target, suggested by Ralf Wildenhues <Ralf.Wildenhues@gmx.de>.
17114
17115 2006-03-08  Simon Josefsson  <jas@extundo.com>
17116
17117         * lib/gc-gnulib.c (randomize): Don't open files called 'no', they
17118         signal that configure disabled the device.
17119
17120 2006-03-08  Simon Josefsson  <jas@extundo.com>
17121
17122         * build-aux/maint.mk: Fix refresh-po, to handle no translated
17123         languages.
17124
17125 2006-03-07  Simon Josefsson  <jas@extundo.com>
17126
17127         * modules/getopt (Depends-on): Add unistd.
17128
17129         * modules/unistd: New file.
17130
17131 2006-03-07  Simon Josefsson  <jas@extundo.com>
17132
17133         * modules/gc-random: New file.
17134
17135 2006-03-07  Simon Josefsson  <jas@extundo.com>
17136
17137         * m4/unistd_h.m4: New file.
17138
17139 2006-03-07  Simon Josefsson  <jas@extundo.com>
17140
17141         * m4/readline.m4 (gl_FUNC_READLINE): Rewrite the cached part of the
17142         test to be side-effect free by storing the result in the cache
17143         variable gl_cv_lib_readline, and moving the assignment of
17144         LIBREADLINE and LTLIBREADLINE outside the COMMANDS-TO-SET-IT.
17145         From Ralf Wildenhues <Ralf.Wildenhues@gmx.de>.
17146
17147 2006-03-07  Simon Josefsson  <jas@extundo.com>
17148
17149         * m4/gc-random.m4: New file, mostly from gc.m4.  Warn instead of
17150         error on missing devices (the functions will return an error).
17151
17152         * m4/gc.m4: Move random stuff to gc-random.m4
17153
17154 2006-03-07  Simon Josefsson  <jas@extundo.com>
17155
17156         * lib/unistd_.h: New file.
17157
17158 2006-03-07  Simon Josefsson  <jas@extundo.com>
17159
17160         * lib/gc-libgcrypt.c, gc-gnulib.c: Use GC_USE_RANDOM.
17161
17162 2006-03-07  Paul Eggert  <eggert@cs.ucla.edu>
17163
17164         * m4/unistd_h.m4 (gl_HEADER_UNISTD): Rename, to match modules file.
17165         Problem reported by Juan Manuel Guerrero.
17166
17167 2006-03-07  Paul Eggert  <eggert@cs.ucla.edu>
17168
17169         * lib/c-stack.c: Include unistd.h unconditionally, since we now assume
17170         the unistd module.
17171         * lib/getlogin_r.c: Likewise.
17172         * lib/getlogin_r.h: Likewise.
17173         * lib/glob.c: Likewise.
17174         * lib/pagealign_alloc.c: Likewise.
17175         * lib/unistd_.h: Remove; no longer needed.
17176
17177 2006-03-07  Paul Eggert  <eggert@cs.ucla.edu>
17178
17179         * MODULES.html.sh (Support for systems lacking POSIX:2001):
17180         Add unistd.
17181         * modules/c-stack (Depends-on): Add unistd.
17182         * modules/getlogin_r: Likewise.
17183         * modules/glob: Likewise.
17184         * modules/pagealign_alloc: Likewise.
17185         * modules/unistd (Files): Remove lib/unistd_.h.
17186         (EXTRA_DIST): Remove.
17187         (unistd.h): Create using 'echo' rather than 'cp', so that we don't
17188         need unistd_.h.
17189         (MOSTLYCLEANFILES): Remove unistd.h-t.
17190
17191 2006-03-03  Simon Josefsson  <jas@extundo.com>
17192
17193         * build-aux/maint.mk: Add several syntax checks from CoreUtils.
17194
17195 2006-03-03  Simon Josefsson  <jas@extundo.com>
17196
17197         * build-aux/maint.mk: Add refresh-po rule, based on ideas from
17198         libidn and bison.
17199
17200 2006-03-03  Simon Josefsson  <jas@extundo.com>
17201
17202         * build-aux/maint.mk: Add indent target.
17203
17204 2006-03-03  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de> (tiny change)
17205
17206         * m4/poll.m4 (gl_FUNC_POLL): If we deem poll(2) unacceptable, use
17207         our replacement poll.h in any case, to avoid a differing
17208         declaration from a system header.  Seen on AIX.
17209
17210 2006-03-01  Simon Josefsson  <jas@extundo.com>
17211
17212         * lib/readline.c: Fix typo, tiny patch from Stepan Kasal
17213         <kasal@ucw.cz>.
17214
17215 2006-03-01  Paul Eggert  <eggert@cs.ucla.edu>
17216
17217         * modules/gettime (Depends-on): Add extensions module.
17218         * modules/nanosleep (Depends-on): Likewise.
17219         * modules/settime (Depends-on): Likewise.
17220
17221 2006-03-01  Paul Eggert  <eggert@cs.ucla.edu>
17222
17223         * m4/clock_time.m4 (gl_CLOCK_TIME): Require gl_USE_SYSTEM_EXTENSIONS,
17224         not merely AC_GNU_SOURCE, for the benefit of Solaris 10 when compiled
17225         pedantically.
17226         * m4/nanosleep.m4 (gl_FUNC_NANOSLEEP): Likewise.
17227         * m4/timespec.m4 (gl_TIMESPEC): Likewise.
17228
17229         * m4/extensions.m4 (gl_USE_SYSTEM_EXTENSIONS): Use "=" with "test",
17230         not "==".  Reported by Ralf Wildenhues.
17231
17232 2006-03-01  Karl Berry  <karl@gnu.org>
17233
17234         * doc/Copyright/request-*: new files, synced from gnuorg.
17235
17236 2006-03-01  Karl Berry  <karl@gnu.org>
17237
17238         * config/srclist.txt (Copyright/*): new entries.
17239
17240 2006-02-28  Simon Josefsson  <jas@extundo.com>
17241
17242         * lib/getopt.c: Protect #include of unistd.h, for MSVS.
17243
17244 2006-02-27  Simon Josefsson  <jas@extundo.com>
17245
17246         * lib/base64.h: Indent #define's.  From Jim Meyering
17247         <jim@meyering.net>.
17248
17249 2006-02-27  Jim Meyering  <jim@meyering.net>
17250
17251         Revert the change of 2006-02-24, so these files can continue
17252         to be sync'd from gettext.
17253         * lib/mkdtemp.c, setenv.c, unsetenv.c: *Un*-normalize inclusion
17254         of `config.h'.
17255
17256 2006-02-26  Paul Eggert  <eggert@cs.ucla.edu>
17257
17258         * modules/intprops: New file.
17259         * MODULES.html.sh (Numeric conversion functions <stdlib.h>):
17260         Add intprops.
17261         * modules/getloadavg (Files): Remove lib/intprops.h.
17262         (Depends-on): Add intprops.
17263         * modules/human: Likewise.
17264         * modules/inttostr: Likewise.
17265         * modules/openat: Likewise.
17266         * modules/sig2str: Likewise.
17267         * modules/userspec: Likewise.
17268         * modules/utimecmp: Likewise.
17269         * modules/xnanosleep: Likewise.
17270         * modules/xstrtol: Likewise.
17271
17272 2006-02-24  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>  (tiny changes)
17273
17274         * modules/xstrtod: Omit xstrtod.h, xstrtod.c; they're in LIB_SOURCES.
17275         * modules/lock-tests (TESTS): Use $(EXEEXT).
17276         * modules/tls-tests: Likewise.
17277         * modules/argp-tests: Likewise.
17278         (check_PROGRAMS): New var, replacing...
17279         (noinst_PROGRAMS, test_argp_SOURCES): Remove.
17280
17281 2006-02-24  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
17282
17283         * lib/mkdtemp.c, lib/setenv.c, lib/unsetenv.c: Normalize inclusion of
17284         `config.h'.
17285
17286 2006-02-24  Paul Eggert  <eggert@cs.ucla.edu>
17287
17288         * lib/glob.c: Say "invalid" rather than "illegal" in comments.
17289
17290 2006-02-22  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
17291
17292         Sync from coreutils.
17293         * m4/mkdir-p.m4 (gl_MKDIR_PARENTS): Require gl_FUNC_LCHMOD and
17294         gl_CHDIR_SAFER.
17295
17296 2006-02-22  Jim Meyering  <jim@meyering.net>
17297
17298         Sync from coreutils.
17299         * m4/chdir-safer.m4: New file.
17300
17301 2006-02-20  Paul Eggert  <eggert@cs.ucla.edu>
17302
17303         * lib/getcwd.c (AT_FDCWD): Work around a bug in Solaris 9 and 10, where
17304         AT_FDCWD exceeds INT_MAX.
17305         * lib/openat.h (AT_FDCWD): Likewise.
17306
17307 2006-02-17  Eric Blake  <address@hidden>
17308
17309         * m4/getaddrinfo.m4 (gl_GETADDRINFO): Fix caching error.
17310
17311 2006-02-16  Simon Josefsson  <jas@extundo.com>
17312
17313         * modules/getaddrinfo (Depends-on): Add sys_socket.
17314
17315 2006-02-15  Simon Josefsson  <jas@extundo.com>
17316
17317         * build-aux/maint.mk: Add dsyntax-check rule.
17318
17319 2006-02-15  Eric Blake  <ebb9@byu.net>
17320
17321         * m4/sys_socket_h.m4 (gl_HEADER_SYS_SOCKET): Don't attempt using
17322         winsock2.h or ws2tcpip.h when sys/socket.h is present. Fixes
17323         'present but cannot compile' warnings on cygwin.
17324         * m4/socklen.m4 (gl_TYPE_SOCKLEN_T): Use gl_HEADER_SYS_SOCKET.  Don't
17325         use ws2tcpip.h if sys/socket.h works.
17326         * m4/getaddrinfo.m4 (gl_PREREQ_GETADDRINFO): Use gl_HEADER_SYS_SOCKET.
17327         (gl_GETADDRINFO): Don't use ws2tcpip.h when sys/socket.h is present.
17328
17329 2006-02-14  Simon Josefsson  <jas@extundo.com>
17330
17331         * modules/maintainer-makefile (Files): Rename.
17332
17333         * build-aux/GNUmakefile: Rename Makefile.maint to maint.mk
17334         and (the local) Makefile.cfg to maint-cfg.mk.
17335
17336         * build-aux/Makefile.maint, build-aux/maint.mk: Renamed the former
17337         to the latter.
17338
17339         * modules/maintainer-makefile: New module.
17340
17341         * build-aux/Makefile.maint: New file, from GNU CoreUtils, although
17342         severaly stripped to make it possible to build it up from scratch
17343         with reliable tests.
17344
17345         * build-aux/GNUmakefile: New file, from GNU CoreUtils with some
17346         fixes to permit overriding the default actions when configure and
17347         makefile are not available.
17348
17349 2006-02-14  Paul Eggert  <eggert@cs.ucla.edu>
17350
17351         Sync from coreutils.
17352         * modules/lstat (Depends-on): Don't depend on xalloc.
17353         (License): Change from GPL to LGPL, since this is now simply a
17354         replacement for a libc function.
17355
17356 2006-02-14  Jim Meyering  <jim@meyering.net>
17357
17358         Sync from coreutils.
17359
17360         Eliminate the unwelcome (albeit unlikely) possibility of xmalloc
17361         failure on deficient systems, and simplify gnulib lgpl dependencies.
17362         * lib/lstat.c (rpl_lstat): Rewrite to use stat() in place of the
17363         xmalloc/lstat combination.  Based on a patch from Bruno Haible.
17364
17365         * lib/xalloc-die.c: Remove unused definition of N_.
17366
17367 2006-02-14  Jim Meyering  <jim@meyering.net>
17368
17369         Sync from coreutils.
17370         * m4/ls-mntd-fs.m4 (AC_FUNC_GETMNTENT): Invoke
17371         AC_CHECK_FUNCS(getmntent) unconditionally so that tests of
17372         $ac_cv_func_getmntent (e.g., in gl_LIST_MOUNTED_FILE_SYSTEMS) need not
17373         double-quote uses of that variable, to accommodate the rare case in
17374         which getmntent is available in none of the libraries checked.  This
17375         happens at least on FreeBSD 5.0.
17376
17377 2006-02-13  Simon Josefsson  <jas@extundo.com>
17378
17379         * gnulib-tool (Usage): Fix --import, from
17380         karl@freefriends.org (Karl Berry).
17381
17382 2006-02-13  Sergey Poznyakoff  <gray@gnu.org.ua>
17383
17384         * lib/argp-fmtstream.c: Restore another bugfix lost on 2005-12-12
17385
17386 2006-02-07  Sergey Poznyakoff  <gray@gnu.org.ua>
17387
17388         * lib/argp-namefrob.h: Restore changes accidentally lost during the
17389         "autoupdate" on 2005-12-12.
17390
17391 2006-02-07  Paul Eggert  <eggert@cs.ucla.edu>
17392
17393         * modules/closeout (Depends-on): Remove atexit.
17394
17395 2006-02-07  Paul Eggert  <eggert@cs.ucla.edu>
17396
17397         * lib/closeout.c (close_stdout): Don't assume 'bool' converts nonzero
17398         ints to 0 or 1, as this isn't true for the stdbool.h substitute.
17399
17400 2006-02-05  Paul Eggert  <eggert@cs.ucla.edu>
17401
17402         * m4/extensions.m4 (gl_USE_SYSTEM_EXTENSIONS): Don't #define
17403         __EXTENSIONS__ if this causes compilation to fail.  Problem
17404         reported by Nelson H. F. Beebe with Solaris 10 and Sun C 5.7
17405         c89 -D_XOPEN_SOURCE -D_XOPEN_SOURCE_EXTENDED.
17406
17407 2006-01-27  Paul Eggert  <eggert@cs.ucla.edu>
17408
17409         * lib/fnmatch.c (L_): Renamed from L, to work around a bug in
17410         Mac OS X 10.3.9 with GCC 3 reported by Claudio Fontana in
17411         <http://lists.gnu.org/archive/html/bug-gnulib/2006-01/msg00074.html>.
17412         All uses changed.
17413
17414 2006-01-26  Simon Josefsson  <jas@extundo.com>
17415
17416         * lib/socket_.h: Set WINVER to 0x0501, to make sure getaddrinfo
17417         prototype is visible on mingw32.
17418
17419         * lib/getaddrinfo.h: Define EAI_ADDRFAMILY and EAI_SYSTEM if not set,
17420         for mingw32.
17421
17422         * lib/gai_strerror.c, getaddrinfo.h: Protect netdb.h #include (for
17423         mingw32).
17424
17425 2006-01-26  Paul Eggert  <eggert@cs.ucla.edu>
17426
17427         * lib/fts.c (diropen): Open with O_NOCTTY | O_NONBLOCK too.  Don't
17428         attempt to open for write; this always fails, at least on POSIX
17429         hosts.  This reinstates the 2006-01-09 change, which was
17430         inadvertently removed.
17431
17432 2006-01-26  Bruno Haible  <bruno@clisp.org>
17433
17434         * gnulib-tool (func_import): Use "trap 'exit $?' instead of "trap :".
17435         Reported by Paul Eggert.
17436
17437 2006-01-26  Bruno Haible  <bruno@clisp.org>
17438             Paul Eggert  <eggert@cs.ucla.edu>
17439
17440         * lib/stdbool_.h (_Bool)
17441         [(! (defined __cplusplus || defined __BEOS__)
17442           && !defined __GNUC__
17443           && !(defined __HP_cc || defined __xlc__
17444                || (defined __SUNPRO_C && (__SUNPRO_C < 0x550 || __STDC__ == 1))
17445                || defined __sgi))]:
17446         #define to signed char in these cases too; this simplifies
17447         the code (so that we don't have to worry about HP-UX, AIX, SunPRO,
17448         etc., separately) and makes it more conservative.
17449
17450 2006-01-25  Simon Josefsson  <jas@extundo.com>
17451
17452         * m4/getaddrinfo.m4: Look for getaddrinfo inside ws2tcip.h and
17453         -lws2_32.  Protect sys/socket.h and netdb.h #include's.  Include
17454         ws2tcpip.h with WINVER=0x0501.  All for mingw32.
17455
17456 2006-01-25  Sergey Poznyakoff  <gray@gnu.org.ua>
17457
17458         * lib/argp-namefrob.h: Bugfix. Remove stray #
17459
17460 2006-01-25  Paul Eggert  <eggert@cs.ucla.edu>
17461
17462         * m4/stdbool.m4 (AC_HEADER_STDBOOL): Check for xlc bug if __GCC__ too,
17463         so that we test the test.
17464         Check for yet another HP-UX cc bug involving *bool |= bool.
17465
17466 2006-01-25  Karl Berry  <karl@gnu.org>
17467
17468         * config/srclist.txt (vasnprintf.c): sync lost.
17469
17470 2006-01-25  Jim Meyering  <jim@meyering.net>
17471
17472         Sync from the stable (b5) branch of coreutils:
17473
17474         * lib/fts.c (fts_children): Don't let close() clobber errno from
17475         failed fchdir().
17476
17477         * lib/fts.c (fts_stat): When following a symlink-to-directory,
17478         don't necessarily interpret stat-fails+lstat-succeeds as indicating
17479         a dangling symlink.  That can also happen at least for ELOOP.
17480         The fix: return FTS_SLNONE only when the stat errno is ENOENT.
17481         FYI, this bug predates the inclusion of fts.c in coreutils.
17482
17483         * lib/fts.c (fts_open): Put new maxarglen declaration and uses
17484         in their own block, so pre-c99 compilers don't object.
17485
17486         Avoid the double-free (first in fts_read, second in fts_close) that
17487         would occur when an `active' directory is made inaccessible (e.g.,
17488         via chmod a-x) during a traversal.
17489         * lib/fts.c (fts_read): After a failed fchdir, update sp->fts_cur
17490         before returning.  Reproduce this failure by
17491         mkdir -p a/b; cd a; chmod a-x . b
17492         Reported by Stavros Passas.
17493
17494 2006-01-25  Jim Meyering  <jim@meyering.net>
17495
17496         * lib/fileblocks.c: Remove more useless parentheses.
17497         * lib/readutmp.h: Likewise.
17498
17499 2006-01-25  Bruno Haible  <bruno@clisp.org>
17500
17501         * lib/stdbool_.h (_Bool) [IRIX cc]: Define as 'signed char', to avoid
17502         warnings.
17503         Reported by Paul Eggert.
17504
17505 2006-01-25  Bruno Haible  <bruno@clisp.org>
17506
17507         * gnulib-tool (func_import): Use "trap :" instead of "trap -" to get
17508         rid of a trap command. For Solaris sh.
17509         Reported by Mark D. Baushke <mdb@gnu.org>.
17510
17511 2006-01-24  Simon Josefsson  <jas@extundo.com>
17512
17513         * lib/socket_.h (SHUT_WR, SHUT_RDWR): Don't hardcode, suggested by
17514         Bruno.
17515
17516 2006-01-24  Karl Berry  <karl@gnu.org>
17517
17518         * config/srclist.txt (argp-namefrob.h): sync lost.
17519
17520 2006-01-24  Jim Meyering  <jim@meyering.net>
17521
17522         * modules/openat (Files): Add lib/intprops.h.
17523         From Mark D. Baushke.
17524
17525 2006-01-24  Jim Meyering  <jim@meyering.net>
17526
17527         * m4/openat.m4 (gl_FUNC_OPENAT): Add AC_LIBSOURCES([intprops.h]).
17528         Reported by Mark D. Baushke.
17529
17530 2006-01-24  Jim Meyering  <jim@meyering.net>
17531
17532         * lib/socket_.h: Remove useless parentheses in uses of cpp `defined'.
17533
17534 2006-01-24  Bruno Haible  <bruno@clisp.org>
17535
17536         * modules/strnlen (Maintainer): Change from glibc to all.
17537
17538 2006-01-24  Bruno Haible  <bruno@clisp.org>
17539
17540         * m4/stdbool.m4 (AC_HEADER_STDBOOL): Check for IBM and HP-UX bugs.
17541         Patch by Paul Eggert.
17542
17543 2006-01-24  Bruno Haible  <bruno@clisp.org>
17544
17545         * lib/stdbool_.h (_Bool) [__cplusplus]: Don't define if the compiler
17546         already has it.
17547         Report and patch by Albert Chin-A-Young  <china@thewrittenword.com> on
17548         2005-11-26.
17549
17550         * lib/stdbool_.h (_Bool) [HP-UX cc, AIX cc,xlc]: Define as
17551         'signed char' to avoid problems with the built-in _Bool type.
17552         Reported by Paul Eggert on 2005-11-26.
17553
17554 2006-01-24  Bruno Haible  <bruno@clisp.org>
17555
17556         * gnulib-tool (func_import): Avoid constructing complicated sed
17557         expressions inside backquote.
17558         Report and solution by Mark D. Baushke <mdb@gnu.org>.
17559
17560 2006-01-23  Ulrich Drepper  <drepper@redhat.com>
17561
17562         These changes imported from libc.
17563         * lib/getopt.c: Use __fxprintf instead of inline stream orientation
17564         test and two separate function calls.
17565         * lib/strndup.c (__strndup): Add libc_hidden_def.
17566
17567 2006-01-23  Simon Josefsson  <jas@extundo.com>
17568
17569         * modules/lock-tests: Use check_PROGRAMS instead of noinst_PROGRAMS.
17570         Remove the test_*_SOURCES variable: automake infers it by default.
17571         * modules/tls-tests: Likewise.
17572
17573 2006-01-23  Paul Eggert  <eggert@cs.ucla.edu>
17574
17575         Work around porting bugs reported by Dieter in
17576         <http://lists.gnu.org/archive/html/bug-bison/2006-01/msg00049.html>.
17577         * lib/getopt.c (_NOPROTO): Remove; no longer needed.
17578         Include <stdlib.h> and <unistd.h> in all environments; it's safe now.
17579         Include "getopt.h" first, to check interface.
17580         (getenv): Declare only if defined HAVE_DECL_GETENV &&
17581         !HAVE_DECL_GETENV.
17582         * lib/strndup.c [!_LIBC]: Include "strndup.h" to get prototype.
17583         (__strndup): Revert to K&R-style function dfns, the glibc style.
17584         * lib/strnlen.c: Don't claim it's taken from glibc; it's not.
17585         (strnlen, __strnlen): Remove #defines and #undefs; not needed.
17586         Include strnlen.h first, to get prototype properly.
17587         (strnlen): Renamed from __strnlen.
17588         Remove weak alias.
17589
17590 2006-01-23  Paul Eggert  <eggert@cs.ucla.edu>
17591
17592         * m4/getopt.m4 (gl_PREREQ_GETOPT): Check for getenv decl.
17593
17594 2006-01-23  Paul Eggert  <eggert@cs.ucla.edu>
17595
17596         * config/srclist.txt: Adjust to reflect glibc reorganization.
17597         This affects only comments.
17598
17599 2006-01-22  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>  (tiny change)
17600
17601          * gnulib-tool, build-aux/csharpcomp.sh.in: Do not pass `-q' to mktemp.
17602          Reported by Bruce Korb <bkorb@gnu.org>.
17603
17604 2006-01-22  Paul Eggert  <eggert@cs.ucla.edu>
17605
17606         * lib/quotearg.c (quotearg_buffer_restyled): Add "default: break;"
17607         to pacify gcc -Wswitch-default.
17608
17609 2006-01-22  Bruno Haible  <bruno@clisp.org>
17610
17611         * lib/vasnprintf.c (VASNPRINTF): In the computation of the size of the
17612         temporary buffer for sprintf, take into account the precision also
17613         for 'd', 'i', 'u', 'o', 'x', 'X'.
17614
17615 2006-01-21  Sergey Poznyakoff  <gray@gnu.org.ua>
17616
17617         * modules/argp-tests: New module
17618         * tests/test-argp.c: New file
17619         * tests/test-argp-2.sh: New file
17620
17621 2006-01-21  Sergey Poznyakoff  <gray@gnu.org.ua>
17622
17623         * lib/argp-help.c (usage_long_opt): Do not print DOC options.
17624         (__argp_base_name): Removed
17625         * lib/argp-namefrob.h (__argp_basename): Removed definition. Was a
17626         typo.
17627         (__argp_base_name): Provide macro definition or extern declaration
17628         depending on the configuration
17629
17630 2006-01-20  Simon Josefsson  <jas@extundo.com>
17631
17632         * modules/inet_ntop (Depends-on): Depend on sys_socket.
17633
17634 2006-01-20  Simon Josefsson  <jas@extundo.com>
17635
17636         * lib/inet_ntop.h: Unconditionally include sys/socket.h.
17637
17638 2006-01-20  Paul Eggert  <eggert@cs.ucla.edu>
17639
17640         * m4/lib-ignore.m4 (gl_IGNORE_UNUSED_LIBRARIES): Use -Wl,-z,ignore
17641         rather than -Xlinker -z -Xlinker ignore, as it's more portable.
17642         Suggested by Bruno Haible.
17643
17644 2006-01-20  Karl Berry  <karl@gnu.org>
17645
17646         * config/srclist.txt (argp-fmtstream.h, localcharset.c): comment out
17647         until changes propagate, I guess.
17648
17649 2006-01-19  Simon Josefsson  <jas@extundo.com>
17650
17651         * m4/socklen.m4: Look in ws2tcpip.h too, for mingw32.
17652
17653 2006-01-19  Simon Josefsson  <jas@extundo.com>
17654
17655         * lib/socket_.h: Map SHUT_RD, SHUT_WR, SHUT_RDWR correctly.
17656
17657 2006-01-19  Simon Josefsson  <jas@extundo.com>
17658
17659         * gnulib-tool: Set check_PROGRAMS.
17660
17661         * modules/arcfour-tests, modules/arctwo-tests, modules/crc-tests,
17662         modules/des-tests, modules/gc-arcfour-tests,
17663         modules/gc-arctwo-tests, modules/gc-des-tests,
17664         modules/gc-hmac-md5-tests, modules/gc-hmac-sha1-tests,
17665         modules/gc-md2-tests, modules/gc-md4-tests, modules/gc-md5-tests,
17666         modules/gc-pbkdf2-sha1-tests, modules/gc-rijndael-tests,
17667         modules/gc-sha1-tests, modules/gc-tests, modules/hmac-md5-tests,
17668         modules/hmac-sha1-tests, modules/md2-tests, modules/md4-tests,
17669         modules/md5-tests, modules/readline, modules/rijndael-tests: Use
17670         check_PROGRAMS instead of noinst_PROGRAMS to be able to remove
17671         test_*_SOURCES.
17672
17673 2006-01-18  Simon Josefsson  <jas@extundo.com>
17674
17675         * modules/socklen (Depends-on): Depend on sys_socket.
17676
17677 2006-01-18  Simon Josefsson  <jas@extundo.com>
17678
17679         * modules/arcfour-tests, modules/arctwo-tests, modules/crc-tests,
17680         modules/des-tests, modules/gc-arcfour-tests,
17681         modules/gc-arctwo-tests, modules/gc-des-tests,
17682         modules/gc-hmac-md5-tests, modules/gc-hmac-sha1-tests,
17683         modules/gc-md2-tests, modules/gc-md4-tests, modules/gc-md5-tests,
17684         modules/gc-pbkdf2-sha1-tests, modules/gc-rijndael-tests,
17685         modules/gc-sha1-tests, modules/gc-tests, modules/hmac-md5-tests,
17686         modules/hmac-sha1-tests, modules/md2-tests, modules/md4-tests,
17687         modules/md5-tests, modules/readline, modules/rijndael-tests: Add
17688         $(EXEEXT) to automake TESTS variable, for mingw32.
17689
17690 2006-01-17  Simon Josefsson  <jas@extundo.com>
17691
17692         * modules/socklen (Include): Need sys/socket.h.
17693
17694 2006-01-17  Bruno Haible  <bruno@clisp.org>
17695
17696         * modules/ssize_t (Include): Add <sys/types.h>.
17697
17698 2006-01-16  Paul Eggert  <eggert@cs.ucla.edu>
17699
17700         * m4/lib-ignore.m4 (gl_IGNORE_UNUSED_LIBRARIES): Don't use ldd, as
17701         it's not portable and it doesn't work with cross-compiles.
17702         Problem reported by Bruno Haible.  Fix missing-$ typo in
17703         'test "gl_cv_ignore_unused_libraries" ...' that prevented
17704         -zignore from being used with Sun's C compiler.
17705
17706 2006-01-12  Simon Josefsson  <jas@extundo.com>
17707
17708         * lib/base64.c: Fix warning, reported by Bruno Haible
17709         <bruno@clisp.org> and patch by Paul Eggert <eggert@CS.UCLA.EDU>.
17710
17711 2006-01-12  Bruno Haible  <bruno@clisp.org>
17712
17713         * modules/ldd: New file.
17714         * build-aux/ldd.sh.in: New file.
17715         * MODULES.html.sh (Support for building libraries and executables): Add
17716         ldd.
17717
17718 2006-01-12  Bruno Haible  <bruno@clisp.org>
17719
17720         * m4/ldd.m4: New file.
17721
17722 2006-01-12  Bruno Haible  <bruno@clisp.org>
17723
17724         * gnulib-tool (func_import, func_create_testdir): Don't go into an
17725         endless loop while replacing $auxdir with build-aux.
17726
17727 2006-01-11  Simon Josefsson  <jas@extundo.com>
17728
17729         * lib/stdint_.h (SIZE_MAX): Add missing (.
17730
17731 2006-01-11  Paul Eggert  <eggert@cs.ucla.edu>
17732
17733         Sync from coreutils.
17734         * lib/md5.c: Fix commentary typos.
17735         (alignof, UNALIGNED_P): No need for a GCC-specific version.
17736         * lib/md5.h (__attribute__): Remove; unused.
17737         * lib/sha1.c: Fix commentary to match md5 better.
17738         * lib/sha1.h (struct sha1_ctx): Use a word buffer, not a byte buffer,
17739         so that we don't need to worry about alignment.  All uses changed.
17740         This merges the 2005-10-28 md5 change into sha1.
17741
17742 2006-01-11  Jim Meyering  <jim@meyering.net>
17743
17744         Sync from coreutils.
17745         * lib/md5.c (OP): Fix spacing.
17746
17747 2006-01-11  Bruno Haible  <bruno@clisp.org>
17748
17749         Ensure automatic ordering between gl_LOCK and gl_ARGP.
17750         * m4/lock.m4 (gl_LOCK_BODY): Renamed from gl_LOCK.
17751         (gl_LOCK): New macro, requiring gl_LOCK_BODY.
17752
17753 2006-01-11  Bruno Haible  <bruno@clisp.org>
17754
17755         Ensure automatic ordering between gl_LOCK and gl_ARGP.
17756         * gnulib-tool (func_import, func_create_testdir): Put gl_LOCK into
17757         the "early" section as well.
17758
17759 2006-01-11  Bruno Haible  <bruno@clisp.org>
17760
17761         Avoid "ar: no archive members specified" error on MacOS X.
17762         * gnulib-tool (func_modules_add_dummy): New function.
17763         (func_import, func_create_testdir): Invoke it.
17764
17765 2006-01-11  Bruno Haible  <bruno@clisp.org>
17766
17767         * gnulib-tool (func_import, func_create_testdir): Replace build-aux
17768         with $auxdir in AC_CONFIG_FILES statements.
17769
17770 2006-01-11  Bruno Haible  <bruno@clisp.org>
17771
17772         * gnulib-tool (func_emit_lib_Makefile_am, func_emit_tests_Makefile_am):
17773         Initialize also noinst_HEADERS to empty.
17774
17775 2006-01-11  Bruno Haible  <bruno@clisp.org>
17776
17777         * gnulib-tool (AUTOMAKEPATH, AUTOCONF, ACLOCAL, AUTOMAKE): New
17778         variables.
17779         (func_create_megatestdir): Call aclocal, autoconf, automake here, not
17780         autoreconf.
17781
17782 2006-01-11  Bruno Haible  <bruno@clisp.org>
17783
17784         * gnulib-tool (AUTOCONF, ACLOCAL, AUTOMAKE, AUTORECONF): Make
17785         overridable by the user.
17786         Reported by Ralf Wildenhues <Ralf.Wildenhues@gmx.de>.
17787
17788 2006-01-10  Simon Josefsson  <jas@extundo.com>
17789
17790         * modules/sys_socket: New file.
17791
17792 2006-01-10  Simon Josefsson  <jas@extundo.com>
17793
17794         * m4/sys_socket_h.m4: New file.
17795
17796 2006-01-10  Simon Josefsson  <jas@extundo.com>
17797
17798         * lib/socket_.h: New file.
17799
17800 2006-01-10  Paul Eggert  <eggert@cs.ucla.edu>
17801
17802         * modules/readutmp (Maintainer): Add myself.
17803
17804 2006-01-10  Paul Eggert  <eggert@cs.ucla.edu>
17805
17806         * m4/memcoll.m4 (gl_MEMCOLL): Don't require AC_FUNC_MEMCMP, undoing
17807         the 2002-12-31 change.  Problem and fix reported by Bruno Haible.
17808         People who are still concerned with buggy memcmp implementations
17809         can invoke gl_FUNC_MEMCMP themselves.
17810
17811 2006-01-10  Paul Eggert  <eggert@cs.ucla.edu>
17812
17813         * lib/regex_internal.h (BITSET_WORD_BITS):
17814         Work around a bug in 64-bit PGC (before version 6.1-2), where the
17815         preprocessor mishandles large unsigned values as if they were signed.
17816         Problem reported by Claudio Fontana in
17817         <http://lists.gnu.org/archive/html/bug-gnulib/2005-12/msg00061.html>.
17818
17819 2006-01-10  Jim Meyering  <jim@meyering.net>
17820
17821         Avoid the double-free (first in fts_read, second in fts_close) that
17822         would occur when an `active' directory is made inaccessible (e.g.,
17823         via chmod a-x) during a traversal.
17824         * lib/fts.c (fts_read): After a failed fchdir, update sp->fts_cur
17825         before returning.  Reproduce this failure by
17826         mkdir -p a/b; cd a; chmod a-x . b
17827         Reported by Stavros Passas.
17828
17829         Sync from coreutils.
17830         * lib/sha1.c: Tweak grammar in a comment.
17831
17832 2006-01-10  Jim Meyering  <jim@meyering.net>
17833
17834         * m4/fpending.m4: Also include <stdio.h>, for Dragonfly.
17835         Patch by Joerg Sonnenberger.
17836
17837 2006-01-10  Bruno Haible  <bruno@clisp.org>
17838
17839         * modules/readutmp: Depend on module free.
17840         * modules/strtok_r: Depend on module restrict.
17841
17842 2006-01-10  Bruno Haible  <bruno@clisp.org>
17843
17844         * modules/gettext (configure.ac): Add an invocation of
17845         AM_GNU_GETTEXT_VERSION. Needed since autoreconf is used by gnulib-tool.
17846
17847 2006-01-10  Bruno Haible  <bruno@clisp.org>
17848
17849         * m4/localcharset.m4 (gl_LOCALCHARSET): Also test for getc_unlocked.
17850         Reported by Werner Lemberg <wl@gnu.org>.
17851
17852 2006-01-10  Bruno Haible  <bruno@clisp.org>
17853
17854         * lib/localcharset.c: Update from GNU gettext.
17855
17856 2006-01-10  Bruno Haible  <bruno@clisp.org>
17857
17858         * lib/argp.h (__const): Remove macro. Use const instead.
17859         * lib/argp-fmtstream.h (__const): Likewise.
17860         * lib/glob_.h (__const): Remove macro.
17861         * lib/glob-libc.h: Use const instead of __const.
17862
17863 2006-01-10  Bruno Haible  <bruno@clisp.org>
17864
17865         * gnulib-tool (func_emit_tests_Makefile_am): Emit an empty SUBDIR
17866         variable.
17867         Needed to avoid an automake error regarding the 'gettext' module.
17868
17869 2006-01-09  Simon Josefsson  <jas@extundo.com>
17870
17871         * modules/inet_ntop (Depends-on): Add restrict.
17872
17873 2006-01-09  Simon Josefsson  <jas@extundo.com>
17874
17875         * modules/gc-rijndael-tests (License): Put under LGPL.
17876
17877         * modules/gc-des-tests (License): Likewise.
17878
17879         * modules/gc-arcfour-tests (License): Likewise.
17880
17881         * modules/gc-arctwo-tests (License): Likewise.
17882
17883         * modules/gc-pbkdf2-sha1-tests (License): Likewise.
17884
17885         * modules/gc-hmac-sha1-tests (Files): Likewise.
17886
17887         * modules/gc-hmac-md5-tests (License): Likewise.
17888
17889         * modules/gc-sha1-tests (License): Likewise.
17890
17891         * modules/gc-md5-tests (License): Likewise.
17892
17893         * modules/gc-md4-tests (License): Likewise.
17894
17895         * modules/gc-md2-tests (License): Likewise.
17896
17897         * modules/gc-tests (License): Likewise.
17898
17899         * modules/des-tests (License): Likewise.
17900
17901         * modules/md4-tests (License): Likewise.
17902
17903         * modules/md2-tests (License): Likewise.
17904
17905 2006-01-09  Paul Eggert  <eggert@cs.ucla.edu>
17906
17907         Sync from coreutils:
17908
17909         * MODULES.html.sh (build_lib): New section, with new lib-ignore module.
17910         * modules/lib-ignore: New file.
17911         * modules/mkdir-p (Files): Add chdir-safer.c, chdir-safer.h, lchmod.h,
17912         chdir-safer.m4, lchmod.m4.
17913         * modules/openat: Add mkdirat.c, openat-priv.h.
17914
17915 2006-01-09  Paul Eggert  <eggert@cs.ucla.edu>
17916
17917         Sync from coreutils.
17918         * m4/lib-ignore.m4: New file.
17919         * m4/lchmod.m4: New file.
17920
17921 2006-01-09  Paul Eggert  <eggert@cs.ucla.edu>
17922
17923         Sync from coreutils.
17924         * lib/chdir-long.c (cdb_free): Don't bother trying to open directory
17925         for write access: POSIX says that must fail.
17926         * lib/fts.c (diropen): Likewise.
17927         * lib/save-cwd.c (save_cwd): Likewise.
17928         * lib/chdir-long.c (cdb_free): Open with O_NOCTTY | O_NONBLOCK as
17929         well, for minor improvements on hosts that lack O_DIRECTORY.
17930         * lib/chown.c (rpl_chown) [CHOWN_MODIFIES_SYMLINK]:
17931         Don't try O_WRONLY unless O_RDONLY failed wth EACCES.
17932         Fall back on chown if open failed with EACCES.
17933
17934         * lib/gettime.c (gettime) [!defined OK_TO_USE_1S_CLOCK]:
17935         Report an error at compile-time if only a 1-second nominal clock
17936         resolution is found.
17937
17938         * lib/lchmod.h: New file.
17939         * lib/mkdir-p.c: Include lchmod.h, lchown.h.
17940         (make_dir_parents): Use lchown rather than chown, and
17941         lchmod rather than chmod.
17942
17943         * lib/mountlist.c (ME_DUMMY): "none" and "proc" file systems are
17944         dummies too.  Problem with "none" reported by Bob Proulx.  Problem with
17945         "proc" reported by n0dalus.
17946
17947         * lib/mountlist.c: Include <limits.h>.
17948         (dev_from_mount_options)
17949         [defined MOUNTED_GETMNTENT1 || defined MOUNTED_GETMNTENT2]:
17950         New function.  It no longer assumes "dev=" has the System V meaning
17951         on Linux (since it doesn't).  It also parses "dev=" more carefully.
17952         (read_file_system_list)
17953         [defined MOUNTED_GETMNTENT1 || defined MOUNTED_GETMNTENT2]: Use it.
17954         MOUNTED_GETMNTENT2 is new here; the code didn't used to look for
17955         dev= in that case.
17956
17957         * lib/posixtm.h (PDS_PRE_2000): New macro.
17958         * lib/posixtm.c (year): Arg is now syntax_bits rather than
17959         allow_century.  All usages changed.  Reject dates outside the range
17960         1969-1999 if PDS_PRE_2000 is used.
17961
17962 2006-01-09  Paul Eggert  <eggert@cs.ucla.edu>
17963
17964         Sync from coreutils.
17965         * doc/getdate.texi (General date syntax): Invalid dates are rejected.
17966         (Time of day items): Mention the possibility of leap seconds.
17967         Problem reported by Dr. David Alan Gilbert.
17968
17969 2006-01-09  Jim Meyering  <jim@meyering.net>
17970
17971         Sync from coreutils.
17972
17973         * lib/version-etc.c (COPYRIGHT_YEAR): Update to 2006.
17974
17975         * lib/chdir-safer.h, lib/chdir-safer.c: New files.
17976
17977         * lib/modechange.c (mode_compile): Reject an invalid mode string
17978         that starts with an octal digit.  From Andreas Gruenbacher.
17979
17980         * lib/openat.c: Include "fcntl--.h" and "unistd--.h", to map open
17981         and dup to open_safer and dup_safer, respectively.
17982         (openat_permissive): Fix typo in comment.
17983
17984         * lib/openat.c: Don't include <stdlib.h>, <unistd.h>, <fcntl.h>,
17985         "gettext.h"; either no longer needed or are guaranteed by openat.h.
17986         (_): Remove; no longer needed.
17987         (openat): Renamed from rpl_openat; no need for rpl_openat
17988         since openat.h renames openat for us.
17989         Replace most of the body with a call to openat_permissive,
17990         to avoid duplicate code.
17991         Port to (probably hypothetical) environments were mode_t is
17992         wider than int.
17993         (openat_permissive): Require mode arg, so that we can check
17994         types better.  Put it just after flags.  Change cwd failure
17995         indicator from pointer-to-bool to pointer-to-errno-value.
17996         All callers changed.
17997         Invoke openat_save_fail and/or openat_restore_fail if
17998         cwd_errno is null, so that openat can call us.
17999         (openat_permissive, fdopendir, fstatat, unlinkat):
18000         Simplify errno handling to avoid some duplicate code,
18001         as it's OK to set errno on success.
18002         * lib/openat.h: Revamp code so that function macros depend on
18003         __OPENAT_PREFIX only, not also on AT_FDCWD.
18004         (openat_ro): Remove.  Caller changed to use openat_permissive.
18005         (openat_permissive): Now a macro, if not a function.
18006         (openat_restore_fail, openat_save_fail): Now always functions,
18007         since mkdirat needs them even if __OPENAT_PREFIX is defined.
18008
18009         * lib/openat-priv.h: New file, defining macros used by mkdirat.c
18010         and openat.c.
18011         * lib/mkdirat.c: Include openat-priv.h.
18012         Remove definitions of macros defined therein.
18013         * lib/openat.c: Likewise.
18014
18015         * lib/mkdirat.c (mkdirat): New file and function.
18016         * lib/openat.h (mkdirat): Declare.
18017
18018         * lib/openat.c (fdopendir): Don't change errno when returning non-NULL.
18019
18020         * lib/openat.h (openat_permissive): Declare.
18021         (openat_ro): Define.
18022
18023         * lib/openat.c (EXPECTED_ERRNO): New macro.
18024         (openat_permissive): New function -- used in remove.c rewrite.
18025         (all functions): Set errno just before returning, only if there
18026         was an actual failure.
18027         Use EXPECTED_ERRNO rather than comparing against only ENOTDIR.
18028
18029         Emulate openat-family functions using Linux's procfs, if possible.
18030         Idea and some code based on Ulrich Drepper's glibc changes.
18031
18032         * lib/openat.c: (BUILD_PROC_NAME): New macro.
18033         Include <stdio.h>, <string.h>, "alloca.h" and "intprops.h".
18034         (rpl_openat): Emulate by trying to open /proc/self/fd/%d/%s,
18035         before falling back on save_cwd and restore_cwd.
18036         (fdopendir, fstatat, unlinkat): Likewise.
18037
18038         * lib/openat.c (fstatat, unlinkat): Perform the syscall directly,
18039         skipping the save_cwd...restore_cwd overhead, if FILE is absolute.
18040
18041         * lib/openat.c (rpl_openat): Use the promoted type (int), not mode_t,
18042         as second argument to va_arg.  Otherwise, some versions of gcc
18043         warn that `if this code is reached, the program will abort'.
18044
18045 2006-01-09  Jim Meyering  <jim@meyering.net>
18046
18047         Sync from coreutils.
18048         * m4/openat.m4 (gl_FUNC_OPENAT): Require and compile mkdirat.c.
18049         Require openat-priv.h.
18050
18051 2006-01-09  Bruno Haible  <bruno@clisp.org>
18052
18053         * modules/strnlen (Include): Use strnlen.h.
18054
18055 2006-01-09  Bruno Haible  <bruno@clisp.org>
18056
18057         * m4/stdint.m4 (gl_STDINT_H): Also test for <sys/bitypes.h>.
18058
18059 2006-01-09  Bruno Haible  <bruno@clisp.org>
18060
18061         * lib/sysexit_.h (EX_OK): New macro.
18062         Suggested by Martin Lambers <marlam@marlam.de>.
18063
18064 2006-01-09  Bruno Haible  <bruno@clisp.org>
18065
18066         * lib/stdint_.h: On Linux libc4 and libc5, include <sys/bitypes.h> and
18067         don't define _STDINT_H_NEED_SIGNED_INT_TYPES.
18068
18069 2006-01-09  Bruno Haible  <bruno@clisp.org>
18070
18071         * lib/stdint_.h (SIZE_MAX): Write the value without involving negative
18072         numbers.
18073
18074 2006-01-09  Bruno Haible  <bruno@clisp.org>
18075
18076         * lib/javacomp.sh.in: Move to ../build-aux/javacomp.sh.in.
18077         * lib/javaexec.sh.in: Move to ../build-aux/javaexec.sh.in.
18078         * lib/csharpcomp.sh.in: Move to ../build-aux/csharpcomp.sh.in.
18079         * lib/csharpexec.sh.in: Move to ../build-aux/csharpexec.sh.in.
18080
18081 2006-01-09  Bruno Haible  <bruno@clisp.org>
18082
18083         * build-aux/javacomp.sh.in: New file, moved from lib/.
18084         * modules/javacomp-script (Files): Update.
18085         (configure.ac): Add AC_CONFIG_FILES invocation.
18086         (EXTRA_DIST): Remove variable.
18087
18088         * build-aux/javaexec.sh.in: New file, moved from lib/.
18089         * modules/javaexec (Files): Update.
18090         (configure.ac): Add AC_CONFIG_FILES invocation.
18091         (EXTRA_DIST): Remove javaexec.sh.in.
18092
18093         * build-aux/csharpcomp.sh.in: New file, moved from lib/.
18094         * modules/csharpcomp-script (Files): Update.
18095         (configure.ac): Add AC_CONFIG_FILES invocation.
18096         (EXTRA_DIST): Remove variable.
18097
18098         * build-aux/csharpexec.sh.in: New file, moved from lib/.
18099         * modules/csharpexec (Files): Update.
18100         (configure.ac): Add AC_CONFIG_FILES invocation.
18101         (EXTRA_DIST): Remove csharpexec.sh.in.
18102
18103 2006-01-09  Andreas Gruenbacher  <agruen@suse.de>
18104
18105         Sync from coreutils.
18106
18107         Add POSIX ACL support
18108         * lib/acl.h (copy_acl, set_acl): Add declarations.
18109         * lib/acl.c (acl_entries): Add fallback implementation for POSIX ACL
18110         systems other than Linux.
18111         (chmod_or_fchmod): New function: use fchmod when possible,
18112         and chmod otherwise.
18113         (file_has_acl): Add a POSIX ACL implementation, with a
18114         Linux-specific subcase.
18115         (copy_acl): Add: copy an acl and S_ISUID, S_ISGID, and
18116         S_ISVTX from one file to another.  Fall back to fchmod/chmod when
18117         acls are unsupported.
18118         (set_acl): Add: set a file's acl and S_ISUID, S_ISGID, and
18119         S_ISVTX to a defined value.  Fall back to fchmod/chmod when acls
18120         are unsupported.
18121
18122 2006-01-09  Andreas Gruenbacher  <agruen@suse.de>
18123
18124         Sync from coreutils.
18125         * m4/acl.m4 (AC_FUNC_ACL): Add POSIX ACL and Linux-specific acl tests.
18126
18127 2006-01-07  Bruno Haible  <bruno@clisp.org>
18128
18129         * gnulib-tool (func_import): Add an AC_PROG_RANLIB dependency to
18130         gl_EARLY.
18131
18132 2006-01-04  Paul Eggert  <eggert@cs.ucla.edu>
18133
18134         * lib/strftime.c (tzname): Don't declare if it is already #defined.
18135         Problem reported for Mingw by Mark Junker.
18136
18137 2006-01-04  Paul Eggert  <eggert@cs.ucla.edu>
18138
18139         * README: Gnulib normally doesn't generate a tarball.
18140
18141 2006-01-03  Paul Eggert  <eggert@cs.ucla.edu>
18142
18143         * lib/xtime.h (xtime_make, xtime_nonnegative_nsec, xtime_nsec): Use
18144         long int, not int, for nanosecond counts, so that people who are
18145         used to POSIX struct timespec won't be surprised.  Reported by Jim
18146         Meyering.
18147
18148 2005-12-28  Bruno Haible  <bruno@clisp.org>
18149
18150         * build-aux/config.rpath: Update from GNU gettext.
18151
18152 2005-12-16  Jim Meyering  <jim@meyering.net>
18153
18154         * modules/fprintftime: New module.
18155         * MODULES.html.sh (Date and time <time.h>): Add fprintftime.
18156
18157 2005-12-16  Jim Meyering  <jim@meyering.net>
18158
18159         * m4/fprintftime.m4: New file.
18160
18161 2005-12-16  Jim Meyering  <jim@meyering.net>
18162
18163         * lib/fprintftime.c, lib/fprintftime.h: New files.
18164
18165 2005-12-15  Simon Josefsson  <jas@extundo.com>
18166
18167         * modules/socklen (configure.ac): Fix M4 macro name, to align with
18168         new m4/socklen.m4.
18169
18170 2005-12-10  Sergey Poznyakoff  <gray@gnu.org.ua>
18171
18172         * m4/argp.m4: Define HAVE_DECL_PROGRAM_INVOCATION_NAME and
18173         HAVE_DECL_PROGRAM_INVOCATION_SHORT_NAME
18174
18175 2005-12-10  Sergey Poznyakoff  <gray@gnu.org.ua>
18176
18177         * lib/argp-fmtstream.c (__argp_fmtstream_update): Fix coredump
18178         * lib/argp-help.c (fill_in_uparams): Check if the constructed
18179         struct uparams is valid. Fall back to the default values if it is
18180         not.
18181
18182 2005-12-09  Sergey Poznyakoff  <gray@gnu.org.ua>
18183
18184         * modules/argp (Files): Add argp-pin.c
18185         (Depends-on): dirname
18186         (lib_SOURCES): Add argp-pin.c
18187
18188 2005-12-09  Sergey Poznyakoff  <gray@gnu.org.ua>
18189
18190         * m4/argp.m4:  Check if program_invocation_name and
18191         program_invocation_short_name are declared and define appropriate
18192         macros if they are not.
18193
18194 2005-12-09  Sergey Poznyakoff  <gray@gnu.org.ua>
18195
18196         * lib/argp-help.c (__argp_base_name): New function
18197         (__argp_short_program_name): Rewrite using __argp_base_name
18198         * lib/argp-namefrob.h: Define program_invocation_name and
18199         program_invocation_short_name if requested
18200         (__argp_base_name): Add prototype
18201         * lib/argp-parse.c (argp_def): Use gettext wrappers
18202         (argp_default_parser): Use __argp_base_name
18203         * lib/argp-pin.c: New file. Defines program_invocation_name and
18204         program_invocation_short_name on systems that lack them.
18205
18206 2005-12-07  Paul Eggert  <eggert@cs.ucla.edu>
18207
18208         * m4/stat-time.m4 (gl_STAT_TIME): Add check for
18209         TYPEOF_STRUCT_STAT_ST_ATIM_IS_STRUCT_TIMESPEC, to fix IRIX 5.3
18210         porting problem reported by Georg Schwarz in
18211         <http://lists.gnu.org/archive/html/bug-coreutils/2005-12/msg00083.html>.
18212
18213 2005-12-07  Paul Eggert  <eggert@cs.ucla.edu>
18214
18215         * lib/stat-time.h (STATE_TIMESPEC, STAT_TIMESPEC_NS): Add check for
18216         TYPEOF_STRUCT_STAT_ST_ATIM_IS_STRUCT_TIMESPEC, to fix IRIX 5.3
18217         porting problem reported by Georg Schwarz in
18218         <http://lists.gnu.org/archive/html/bug-coreutils/2005-12/msg00083.html>.
18219
18220 2005-12-05  Bruno Haible  <bruno@clisp.org>
18221
18222         * lib/csharpcomp.sh.in (options_csc): For -l option, add a .dll suffix.
18223         * lib/csharpcomp.c (compile_csharp_using_sscli): Likewise.
18224         Reported by Mark Junker <mjscod@gmx.de>.
18225
18226 2005-12-02  Paul Eggert  <eggert@cs.ucla.edu>
18227
18228         * m4/socklen.m4 (gl_TYPE_SOCKLEN_T): Renamed from gl_SOCKLEN_T.
18229         Use implementation from Albert Chin, with some
18230         comments/corrections by Stepan Kasal and myself.
18231
18232 2005-12-02  Bruno Haible  <bruno@clisp.org>
18233
18234         * gnulib-tool (func_import): Accept GPLed build tool modules when
18235         --lgpl is given.
18236         * modules/csharpcomp-script: New file.
18237         * modules/csharpcomp: Depend on it.
18238         * modules/javacomp-script: New file.
18239         * modules/javacomp: Depend on it.
18240         Suggested by Simon Josefsson.
18241
18242 2005-12-01  Paul Eggert  <eggert@cs.ucla.edu>
18243
18244         * m4/regex.m4 (gl_REGEX): Check whether off_t can be used in a switch
18245         statement, to work around an HP-UX 10.20 compiler bug reported by
18246         Peter O'Gorman.
18247
18248 2005-11-29  Paul Eggert  <eggert@cs.ucla.edu>
18249
18250         * modules/savedir (Depends-on): Add openat.
18251
18252 2005-11-29  Paul Eggert  <eggert@cs.ucla.edu>
18253
18254         * lib/stdint_.h (intmax_t) [defined intmax_t]: Do not declare.
18255         (uintmax_t) [defined uintmax_t]: Do not declare.
18256         (SIZE_MAX) [defined SIZE_MAX]: Do not define.
18257         This works around a problem if intmax_t.m4 and/or uintmax_t.m4
18258         and/or size_max.m4 are also used.  Problem reported by Mark D. Baushke.
18259         (SIZE_MAX): Define to ((size_t) -1), not (~(size_t)0), for the
18260         sake of portability to weird hosts that C allows (though we don't
18261         know of any practical examples).
18262
18263         * lib/savedir.h (fdsavedir): New decl.
18264         * lib/savedir.c (fdsavedir, savedirstream): New functions; the latter
18265         contains most of the former guts of savedir.
18266         (savedir): Use savedirstream.
18267         Include "openat.h".
18268
18269 2005-11-25  Paul Eggert  <eggert@cs.ucla.edu>
18270
18271         * modules/obstack (Files): Add m4/ulonglong.m4.
18272         Problem reported by Davide Angelocola.
18273
18274 2005-11-15  Paul Eggert  <eggert@cs.ucla.edu>
18275
18276         * lib/xstrtod.c: Don't bother with #pragma STDC FENV_ACCESS ON, as
18277         coreutils no longer futzes with rounding modes.
18278
18279 2005-11-14  Jim Meyering  <jim@meyering.net>
18280
18281         * lib/mkstemp-safer.c: Include <config.h>, required for possible
18282         replacement of mkstemp.
18283
18284 2005-11-10  Simon Josefsson  <jas@extundo.com>
18285
18286         * lib/readline.c: Remove EOL.
18287
18288 2005-11-10  Paul Eggert  <eggert@cs.ucla.edu>
18289
18290         * modules/gethrxtime (Depends-on): Add gettime.
18291
18292 2005-11-10  Paul Eggert  <eggert@cs.ucla.edu>
18293
18294         * m4/gethrxtime.m4 (gl_PREREQ_GETHRXTIME): Don't require AC_HEADER_TIME
18295         or gettimeofday; no longer needed.
18296
18297 2005-11-10  Paul Eggert  <eggert@cs.ucla.edu>
18298
18299         * lib/gethrxtime.c: Include "timespec.h" rather than the sys/time /
18300         time business.
18301         (gethrxtime) [! (HAVE_NANOUPTIME
18302         || (defined CLOCK_MONOTONIC && HAVE_CLOCK_GETTIME)
18303         || HAVE_MICROUPTIME)]: Fall back on gettime rather than rolling
18304         our own approximation.
18305
18306 2005-11-08  Eric Blake  <ebb9@byu.net>
18307
18308         * lib/inet_ntop.h: Use #if !, not #ifndef, for AC_CHECK_DECLS.
18309
18310 2005-11-08  Eric Blake  <ebb9@byu.net>
18311
18312         * lib/getaddrinfo.h: Use #if !, not #ifndef, for AC_CHECK_DECLS.
18313
18314 2005-11-04  Bruno Haible  <bruno@clisp.org>
18315
18316         * gnulib-tool: Implement --update mode.
18317
18318 2005-10-30  Paul Eggert  <eggert@cs.ucla.edu>
18319
18320         Fix porting problem reported by Theodoros V. Kalamatianos.
18321         * lib/utimens.c (futimens) [HAVE_WORKING_UTIMES && HAVE_FUTIMES]:
18322         Don't assume that futimes failing means we must fail.
18323
18324 2005-10-30  Paul Eggert  <eggert@cs.ucla.edu>
18325
18326         * m4/chdir-long.m4 (gl_FUNC_CHDIR_LONG): Revamp wording and local
18327         variables to suggest the intended function of the PATH_MAX check.
18328
18329 2005-10-30  Kean Johnston  <jkj@sco.com>
18330
18331         Trivial changes to support SCO systems.
18332         * m4/chdir-long.m4 (gl_FUNC_CHDIR_LONG): Check for MAXPATHLEN as well
18333         as PATH_MAX.
18334         * m4/fpending.m4 (gl_FUNC_FPENDING): Correct check for SCO systems,
18335         where __ptr is null when no I/O is pending.
18336
18337 2005-10-29  Paul Eggert  <eggert@cs.ucla.edu>
18338
18339         * lib/getcwd.c (__getcwd): Don't assume that system calls after readdir
18340         leave errno alone.  Problem reported by Dmitry V. Levin.
18341
18342 2005-10-28  Simon Josefsson  <jas@extundo.com>
18343
18344         * tests/test-gc-md4.c, tests/test-gc-md5.c, tests/test-gc-sha1.c:
18345         Test more.
18346
18347         * tests/test-gc-md2.c, tests/test-md2.c: New files.
18348
18349         * modules/md2, modules/md2-tests: New files.
18350
18351 2005-10-28  Simon Josefsson  <jas@extundo.com>
18352
18353         * m4/inet_ntop.m4: More tests.
18354
18355         * m4/gc-md2.m4, md2.m4: New file.
18356
18357 2005-10-28  Simon Josefsson  <jas@extundo.com>
18358
18359         * lib/inet_ntop.h, inet_ntop.c: Make it work under mingw32: Add
18360         "restrict" keywords, as per POSIX.  Protect the function
18361         declaration around HAVE_DECL_INET_NTOP rather than HAVE_INET_NTOP.
18362         Don't use K&R prototypes.  Check the sprintf return values.
18363         Re-define EAFNOSUPPORT if not present.  Indent.
18364
18365         * lib/md5.h, md5.c: Simplify buffer handling visavi alignment,
18366         suggested by Bruno Haible <bruno@clisp.org>.
18367
18368         * lib/gc-gnulib.c, gc-libgcrypt.c: Check calloc return value.
18369
18370         * lib/gc.h: Add MD2 and RMD160 length defines.  Add prototypes.
18371
18372         * lib/gc-libgcrypt.c: Add MD2 (which is not available through
18373         libgcrypt).
18374
18375         * lib/gc-gnulib.c: Add MD2.  Implement gc_hash_* API.
18376
18377         * lib/md2.h, lib/md2.c: New files.
18378
18379 2005-10-28  Paul Eggert  <eggert@cs.ucla.edu>
18380
18381         * lib/savedir.c (savedir): Don't assume that xrealloc etc. leave
18382         errno alone.  Problem reported by Frederic Jolliton.
18383
18384 2005-10-27  Paul Eggert  <eggert@cs.ucla.edu>
18385
18386         * modules/verify (License): Change from GPL to LGPL.  This is a
18387         tiny module and there are apparently near-equivalents that are
18388         under the BSD license.
18389
18390 2005-10-24  Simon Josefsson  <jas@extundo.com>
18391
18392         * modules/sha1: Relicense to LGPL.
18393
18394 2005-10-24  Simon Josefsson  <jas@extundo.com>
18395
18396         * lib/md4.h: Shrink buffer size, now that we changed the type.
18397
18398 2005-10-23  Simon Josefsson  <jas@extundo.com>
18399
18400         * gnulib-tool (func_import): Fix --tests-base.
18401
18402 2005-10-22  Simon Josefsson  <jas@extundo.com>
18403
18404         * modules/arcfour (Depends-on): Need stdint.
18405
18406 2005-10-22  Simon Josefsson  <jas@extundo.com>
18407
18408         * m4/gc.m4: Don't be fooled by --disable-*random-device parameters,
18409         suggested by Bruno Haible <bruno@clisp.org>.  Fix error messages.
18410
18411 2005-10-22  Simon Josefsson  <jas@extundo.com>
18412
18413         * lib/md4.h, md4.c: Simplify buffer handling visavi alignment,
18414         suggested by Bruno Haible <bruno@clisp.org>.
18415
18416 2005-10-22  Simon Josefsson  <jas@extundo.com>
18417
18418         * lib/crc.h: Include stddef.h, for size_t.
18419
18420 2005-10-22  Simon Josefsson  <jas@extundo.com>
18421
18422         * lib/arcfour.h, arcfour.c: Use fixed size indices in the
18423         arcfour_context struct (simplify test vector testing in GNU
18424         Shishi).
18425
18426 2005-10-21  Simon Josefsson  <jas@extundo.com>
18427
18428         * modules/des, modules/des-tests: New files.
18429
18430         * modules/gc-des, modules/gc-des-tests: New files.
18431
18432         * tests/test-des.c, tests/test-gc-des.c: New file.
18433
18434 2005-10-21  Simon Josefsson  <jas@extundo.com>
18435
18436         * modules/arctwo, modules/arctwo-tests: New files.
18437
18438         * tests/test-arctwo.c: New file.
18439
18440         * modules/gc-arctwo, modules/gc-arctwo-tests: New files.
18441
18442         * tests/test-gc-arctwo.c: New file.
18443
18444 2005-10-21  Simon Josefsson  <jas@extundo.com>
18445
18446         * m4/gc.m4: Don't use libgcrypt if gcrypt.h isn't found, suggested by
18447         Bruno Haible <bruno@clisp.org>.
18448
18449         * m4/gc-des.m4: New file.
18450
18451 2005-10-21  Simon Josefsson  <jas@extundo.com>
18452
18453         * m4/arctwo.m4: New file.
18454
18455         * m4/gc-arctwo.m4: New file.
18456
18457 2005-10-21  Simon Josefsson  <jas@extundo.com>
18458
18459         * lib/rijndael-api-fst.c: Fix bugs in CBC mode for more than one
18460         block.
18461
18462 2005-10-21  Simon Josefsson  <jas@extundo.com>
18463
18464         * lib/hmac-md5.c (hmac_md5): Add comments, suggested by Bruno Haible
18465         <bruno@clisp.org>.
18466
18467         * lib/hmac-sha1.c (hmac_sha1): Likewise.
18468
18469         * lib/crc.c (crc32_update): Actually use crc parameter, suggested by
18470         Bruno Haible <bruno@clisp.org>.
18471
18472         * lib/crc.h: Include stdint.h directly, suggested by Bruno Haible
18473         <bruno@clisp.org>.
18474
18475 2005-10-21  Simon Josefsson  <jas@extundo.com>
18476
18477         * lib/gc-libgcrypt.c (gc_cipher_open): Handle ECB.
18478
18479 2005-10-21  Simon Josefsson  <jas@extundo.com>
18480
18481         * lib/gc-gnulib.c: Support ARCTWO in CBC mode.
18482
18483 2005-10-21  Simon Josefsson  <jas@extundo.com>
18484
18485         * lib/des.h, lib/des.c: New files.
18486
18487         * lib/gc-gnulib.c: Support DES.c
18488
18489 2005-10-21  Simon Josefsson  <jas@extundo.com>
18490
18491         * lib/arctwo.h, lib/arctwo.c: New files.
18492
18493         * lib/gc-gnulib.c: Support ARCTWO.
18494
18495 2005-10-21  Simon Josefsson  <jas@extundo.com>
18496
18497         * lib/arctwo.h (arctwo_setkey): Protect variable in CPP macro,
18498         suggested by Ralf Wildenhues <Ralf.Wildenhues@gmx.de>.
18499
18500 2005-10-21  Simon Josefsson  <jas@extundo.com>
18501
18502         * gnulib-tool (func_import, func_create_testdir): Define automake
18503         conditional GL_COND_LIBTOOL if libtool is used (to be used by modules
18504         Makefile.am snippet),
18505         suggested by Bruno Haible <bruno@clisp.org>.
18506
18507         * modules/gc (Makefile.am): Use it.
18508
18509 2005-10-21  Bruno Haible  <bruno@clisp.org>
18510
18511         * gnulib-tool (func_import, func_create_testdir): Add quoting to last
18512         patch.
18513
18514 2005-10-19  Simon Josefsson  <jas@extundo.com>
18515
18516         * tests/test-gc-rijndael.c: New file.
18517
18518         * modules/gc-rijndael, modules/gc-rijndael-test: New files.
18519
18520 2005-10-19  Simon Josefsson  <jas@extundo.com>
18521
18522         * tests/test-gc-md4.c, tests/test-gc-md5.c: Test gc_hash_buffer
18523         interface too.
18524
18525 2005-10-19  Simon Josefsson  <jas@extundo.com>
18526
18527         * tests/test-gc-arcfour.c: New file.
18528
18529         * modules/gc-arcfour, modules/gc-arcfour-tests: New files.
18530
18531 2005-10-19  Simon Josefsson  <jas@extundo.com>
18532
18533         * modules/gc-md4, modules/gc-md4-tests: New file.
18534
18535         * tests/test-gc-md4.c: New file.
18536
18537 2005-10-19  Simon Josefsson  <jas@extundo.com>
18538
18539         * m4/gc-md4.m4: New file.
18540
18541 2005-10-19  Simon Josefsson  <jas@extundo.com>
18542
18543         * m4/gc-hmac-md5.m4, gc-hmac-sha1.m4, gc-md4.m4,
18544         gc-md5.m4, gc-sha1.m4: Fix typo, suggested by Stepan Kasal
18545         <kasal@ucw.cz>.
18546
18547 2005-10-19  Simon Josefsson  <jas@extundo.com>
18548
18549         * m4/gc-arcfour.m4: New file.
18550
18551         * m4/gc-rijndael.m4: New file.
18552
18553 2005-10-19  Simon Josefsson  <jas@extundo.com>
18554
18555         * lib/gc.h, gc-gnulib.c, gc-libgcrypt.c: Support MD4.
18556
18557 2005-10-19  Simon Josefsson  <jas@extundo.com>
18558
18559         * lib/gc-gnulib.c: Support ARCFOUR.
18560
18561 2005-10-19  Simon Josefsson  <jas@extundo.com>
18562
18563         * lib/gc-gnulib.c: Implement gc_cipher_* API, currently only with AES
18564         support.
18565
18566         * lib/gc.h: Add ECB enum type.
18567
18568         * lib/hmac-md5.c, hmac-sha1.c: Include memxor.h.
18569
18570 2005-10-18  Simon Josefsson  <jas@extundo.com>
18571
18572         * tests/test-md5.c: New file.
18573
18574         * modules/md5-tests: New file.
18575
18576 2005-10-18  Simon Josefsson  <jas@extundo.com>
18577
18578         * tests/test-md4.c: New file.
18579
18580         * modules/md4, modules/md4-tests: New files.
18581
18582 2005-10-18  Simon Josefsson  <jas@extundo.com>
18583
18584         * m4/md4.m4: New file.
18585
18586 2005-10-18  Simon Josefsson  <jas@extundo.com>
18587
18588         * lib/md4.h, lib/md4.c: New files, based on md5.?.
18589
18590 2005-10-17  Stepan Kasal  <kasal@ucw.cz>
18591
18592         * gnulib-tool (func_create_testdir): Omit the second check whether
18593         BUILT_SOURCES in nonempty.
18594
18595 2005-10-17  Simon Josefsson  <jas@extundo.com>
18596
18597         * tests/test-rijndael.c: New file.
18598
18599 2005-10-17  Simon Josefsson  <jas@extundo.com>
18600
18601         * modules/sha1: Depend on stdint instead of md5.
18602
18603         * modules/md5: Depend on stdint, remove uint32_t.
18604
18605 2005-10-17  Simon Josefsson  <jas@extundo.com>
18606
18607         * modules/gc-sha1-tests: New file.
18608
18609         * tests/test-gc-sha1.c: New file.
18610
18611 2005-10-17  Simon Josefsson  <jas@extundo.com>
18612
18613         * m4/md5.m4: Remove call to uint32_t.m4.
18614
18615 2005-10-17  Simon Josefsson  <jas@extundo.com>
18616
18617         * lib/sha1.c: Use uint32_t instead of md5_uint32.t
18618
18619         * lib/sha1.h: Use stdint.h and uint32_t instead of md5_uint32 from
18620         md5.h.
18621
18622         * lib/md5.c: Use uin32_t.  Fix non-gcc UNALIGNED_P macro.
18623
18624         * lib/md5.h: Use stdint.h and uint32_t.  Doc fix.
18625
18626 2005-10-17  Simon Josefsson  <jas@extundo.com>
18627
18628         * lib/gc.h, gc-libgcrypt.c: Add more hash types/functions.
18629
18630 2005-10-17  Simon Josefsson  <jas@extundo.com>
18631
18632         * lib/gc.h, gc-libgcrypt.c: Add ciphers.
18633
18634 2005-10-17  Simon Josefsson  <jas@extundo.com>
18635
18636         * lib/gc-libgcrypt.c (gc_hmac_sha1): Fix assert.
18637
18638         * lib/gc.h (gc_nonce, gc_pseudo_random, gc_random): Add prototypes.
18639
18640 2005-10-17  Bruno Haible  <bruno@clisp.org>
18641
18642         * m4/stdbool.m4 (AC_HEADER_STDBOOL): Change the return statement so
18643         that it can also be used in a test.
18644
18645 2005-10-16  Bruno Haible  <bruno@clisp.org>
18646
18647         * gnulib-tool (func_emit_tests_Makefile_am): Also define
18648         TESTS_ENVIRONMENT, so that individual tests can augment it.
18649
18650         * gnulib-tool (func_create_testdir): Use an intermediate target for
18651         building $(BUILT_SOURCES). Needed because BUILT_SOURCES can contain
18652         macros, like $(ALLOCA_H), which cannot be passed through the command
18653         line.
18654
18655 2005-10-15  Simon Josefsson  <jas@extundo.com>
18656
18657         * modules/rijndael-tests: New file.
18658
18659         * modules/rijndael: New file.
18660
18661 2005-10-15  Simon Josefsson  <jas@extundo.com>
18662
18663         * m4/rijndael.m4: New file.
18664
18665 2005-10-15  Simon Josefsson  <jas@extundo.com>
18666
18667         * lib/rijndael-api-fst.h, lib/rijndael-api-fst.c: New files.
18668
18669         * lib/rijndael-alg-fst.h, lib/rijndael-alg-fst.c: New files.
18670
18671 2005-10-14  Simon Josefsson  <jas@extundo.com>
18672
18673         * tests/test-arcfour.c: New file.
18674
18675         * modules/arcfour, modules/arcfour-tests: New files.
18676
18677 2005-10-14  Simon Josefsson  <jas@extundo.com>
18678
18679         * m4/arcfour.m4: New file.
18680
18681 2005-10-14  Simon Josefsson  <jas@extundo.com>
18682
18683         * lib/arcfour.h, lib/arcfour.c: New files.
18684
18685 2005-10-14  Roland McGrath  <roland@redhat.com>
18686
18687         Import from libc.  [BZ #1331]
18688         * lib/obstack.h [!__STDC__] (obstack_int_grow_fast): Fix misnamed
18689         macro argument.
18690         Reported by Matej Vela <vela@debian.org>.
18691
18692 2005-10-14  Paul Eggert  <eggert@cs.ucla.edu>
18693
18694         * lib/obstack.c [defined _LIBC && defined USE_IN_LIBIO]: Don't
18695         include <wchar.h>; no longer needed.
18696
18697 2005-10-14  Paul Eggert  <eggert@cs.ucla.edu>
18698
18699         * config/srclist.txt: Add glibc bug 321 for obstack.c, obstack.h.
18700
18701 2005-10-14  Jakub Jelinek  <jakub@redhat.com>
18702         and  Ulrich Drepper  <drepper@redhat.com>
18703
18704         Import from libc.
18705         * lib/obstack.c (print_and_abort) [defined _LIBC]: Use __fxprintf
18706         instead of inline stream orientation test and two separate
18707         function calls.  Pay no attention to USE_IN_LIBIO.
18708
18709 2005-10-13  Simon Josefsson  <jas@extundo.com>
18710
18711         * modules/gc-hmac-md5-tests: New file.
18712
18713         * tests/test-gc-hmac-sha1.c: New file.
18714
18715         * tests/test-gc.c (main): Remove MD5 and HMAC-MD5 tests.
18716
18717         * modules/gc-hmac-md5-tests: New file.
18718
18719         * tests/test-gc-md5.c: New file.
18720
18721         * modules/gc-md5-tests: New file.
18722
18723 2005-10-13  Simon Josefsson  <jas@extundo.com>
18724
18725         * lib/gc-pbkdf2-sha1.c (gc_pbkdf2_sha1): Optimize CEIL computation.
18726         Move memory allocation outside of loop.
18727
18728 2005-10-13  Paul Eggert  <eggert@cs.ucla.edu>
18729
18730         * lib/mkdir-p.c (make_dir_parents): Don't report an error if an
18731         intermediate directory is in a read-only file system.  Problem
18732         reported by Eric Blake.
18733
18734 2005-10-13  Oskar Liljeblad  <oskar@osk.mine.nu>
18735
18736         * modules/human (Depends-on): Depend on xstrtoumax, not xstrtol.
18737
18738 2005-10-12  Simon Josefsson  <jas@extundo.com>
18739
18740         * tests/test-hmac-sha1.c: New file.
18741
18742         * modules/hmac-sha1-tests: New file.
18743
18744         * modules/hmac-sha1: New file.
18745
18746 2005-10-12  Simon Josefsson  <jas@extundo.com>
18747
18748         * modules/gc-sha1: New file.
18749
18750 2005-10-12  Simon Josefsson  <jas@extundo.com>
18751
18752         * modules/gc-pbkdf2-sha1, modules/gc-pbkdf2-sha1-tests: New files.
18753
18754         * tests/test-gc-pbkdf2-sha1.c: New file.
18755
18756 2005-10-12  Simon Josefsson  <jas@extundo.com>
18757
18758         * modules/gc-md5, modules/gc-hmac-md5: New files.
18759
18760         * modules/gc (Files): Remove md5, memxor and hmac files.
18761
18762 2005-10-12  Simon Josefsson  <jas@extundo.com>
18763
18764         * m4/gc-pbkdf2-sha1.m4: New file.
18765
18766         * m4/gc-hmac-sha1.m4: New file.
18767
18768         * m4/gc-sha1: New file.
18769
18770         * m4/hmac-sha1.m4: New file.
18771
18772 2005-10-12  Simon Josefsson  <jas@extundo.com>
18773
18774         * m4/gc-md5.m4, m4/gc-hmac-md5.m4: New files.
18775
18776         * m4/gc.m4: Don't call gl_MD5, gl_MEMXOR or gl_HMAC_MD5.
18777
18778 2005-10-12  Simon Josefsson  <jas@extundo.com>
18779
18780         * lib/gc.h, gc-gnulib.c, gc-libgcrypt.c: Use Gc_rc for return types,
18781         suggested by Bruno Haible <bruno@clisp.org>.
18782
18783 2005-10-12  Simon Josefsson  <jas@extundo.com>
18784
18785         * lib/gc.h, gc-gnulib.c, gc-libgcrypt.c: Support SHA-1.
18786
18787 2005-10-12  Simon Josefsson  <jas@extundo.com>
18788
18789         * lib/gc-pbkdf2-sha1.c: New file.
18790
18791         * lib/gc.h: Add gc_pbkdf2_sha1 prototype.
18792
18793 2005-10-12  Simon Josefsson  <jas@extundo.com>
18794
18795         * lib/gc-libgcrypt.c (gc_hmac_sha1): New function.
18796
18797         * lib/gc-gnulib.c (gc_hmac_sha1): New function.
18798
18799 2005-10-12  Simon Josefsson  <jas@extundo.com>
18800
18801         * lib/gc-gnulib.c: Condition MD5 and HMAC-MD5 use on GC_USE_MD5 and
18802         GC_USE_HMAC_MD5, respectively.
18803
18804         * lib/gc-libgcrypt.c (gc_md5): Fix assert call.
18805         (gc_md5): Fix typo.
18806
18807         * lib/gc.h (gc_hash_buffer): Use gc_hash in prototype.
18808
18809         * lib/gc-libgcrypt.c (gc_hash_buffer): Ditto.
18810
18811         * lib/gc-gnulib.c (gc_hash_buffer): Ditto.
18812
18813 2005-10-12  Bruno Haible  <bruno@clisp.org>
18814
18815         * m4/stdbool.m4 (gl_STDBOOL_H): Define as an alias of AM_STDBOOL_H.
18816         Reported by Stepan Kasal <kasal@ucw.cz>.
18817
18818 2005-10-11  Simon Josefsson  <jas@extundo.com>
18819
18820         * tests/test-crc.c: New file.
18821
18822         * modules/crc, modules/crc-tests: New files.
18823
18824 2005-10-11  Simon Josefsson  <jas@extundo.com>
18825
18826         * m4/crc.m4: New file.
18827
18828 2005-10-11  Simon Josefsson  <jas@extundo.com>
18829
18830         * lib/gc.h: Add gc_hash and gc_hash_buffer.
18831
18832         * lib/gc-gnulib.c (gc_hash_buffer): Add.  Reorder #include's.
18833
18834         * lib/gc-libgcrypt.c (gc_hash_buffer): Add.
18835
18836 2005-10-11  Simon Josefsson  <jas@extundo.com>
18837
18838         * lib/crc.h, lib/crc.c: New files.
18839
18840         * lib/gc.h (gc_hash_buffer): Add doc.
18841
18842 2005-10-11  Bruno Haible  <bruno@clisp.org>
18843
18844         * modules/c-strcasestr: New file.
18845         * MODULES.html.sh (String handling <string.h>): Add c-strcasestr.
18846
18847 2005-10-11  Bruno Haible  <bruno@clisp.org>
18848
18849         * modules/c-strcase: New file.
18850         * MODULES.html.sh (String handling <string.h>): Add c-strcase.
18851
18852 2005-10-11  Bruno Haible  <bruno@clisp.org>
18853
18854         * lib/strcasecmp.c: Include limits.h.
18855         (strcasecmp): Avoid integer overflow on exotic platforms.
18856         * lib/strncasecmp.c: Include limits.h.
18857         (strncasecmp): Avoid integer overflow on exotic platforms.
18858         Reported by Paul Eggert.
18859
18860 2005-10-11  Bruno Haible  <bruno@clisp.org>
18861
18862         * lib/c-strcasestr.h: New file, from GNU gettext.
18863         * lib/c-strcasestr.c: New file, from GNU gettext.
18864
18865 2005-10-11  Bruno Haible  <bruno@clisp.org>
18866
18867         * lib/c-strcase.h: New file, from GNU gettext.
18868         * lib/c-strcasecmp.c: New file, from GNU gettext.
18869         * lib/c-strncasecmp.c: New file, from GNU gettext.
18870
18871 2005-10-10  Paul Eggert  <eggert@cs.ucla.edu>
18872
18873         * modules/mempcpy (License): GPL -> LGPL.
18874         * modules/strchrnul (License): Likewise.
18875         * modules/sysexits (License): Likewise.
18876
18877 2005-10-08  Simon Josefsson  <jas@extundo.com>
18878
18879         * config/srclist.txt: Bug 1423 is closed, but 1439 remains.
18880
18881 2005-10-07  Simon Josefsson  <jas@extundo.com>
18882
18883         * m4/memxor.m4: Remove gl_C_RESTRICT call.
18884
18885 2005-10-06  Simon Josefsson  <jas@extundo.com>
18886
18887         * tests/test-hmac-md5.c: New file.
18888
18889         * modules/hmac-md5-tests: New file.
18890
18891         * modules/hmac-md5: New file.
18892
18893 2005-10-06  Simon Josefsson  <jas@extundo.com>
18894
18895         * m4/hmac-md5.m4: New file.
18896
18897         * m4/memxor.m4: Require gl_C_RESTRICT.
18898
18899 2005-10-06  Simon Josefsson  <jas@extundo.com>
18900
18901         * lib/memxor.c (memxor): Avoid casts and warnings.
18902
18903 2005-10-06  Simon Josefsson  <jas@extundo.com>
18904
18905         * lib/hmac-md5.c: New file.
18906
18907         * lib/hmac.h: New file.
18908
18909 2005-10-06  Paul Eggert  <eggert@cs.ucla.edu>
18910
18911         * m4/stdbool.m4 (AC_HEADER_STDBOOL): Check that bool
18912         promotes to int, not unsigned int, to catch the AIX 5.3
18913         compiler bug.
18914
18915 2005-10-05  Simon Josefsson  <jas@extundo.com>
18916
18917         * modules/memxor: New file.
18918
18919         * modules/iconv (Files): Move config.rpath to havelib, it is used
18920         there.
18921
18922         * modules/havelib (Files): Add config.rpath.
18923
18924 2005-10-05  Simon Josefsson  <jas@extundo.com>
18925
18926         * m4/memxor.m4: New file.
18927
18928 2005-10-05  Simon Josefsson  <jas@extundo.com>
18929
18930         * lib/memxor.c (memxor): Fix compiler error.
18931
18932         * lib/md5.h (MD5_DIGEST_SIZE, MD5_BLOCK_SIZE): Add, see also
18933         <http://sourceware.org/bugzilla/show_bug.cgi?id=1423>.
18934
18935         * lib/memxor.h, lib/memxor.c: New files.
18936
18937         * lib/getaddrinfo.h: Don't protect sys/types.h with HAVE_SYS_TYPES_H,
18938         we assume all systems have it, suggested by Jim Meyering
18939         <jim@meyering.net>.  Remove HAVE_SYS_SOCKET_H test too, to see if
18940         any systems lack sys/socket.h; mingw32 is known to lack it, but we
18941         don't support it yet anyway.  Also remove HAVE_NETDB_H test, for
18942         same reasons.
18943
18944 2005-10-05  Simon Josefsson  <jas@extundo.com>
18945
18946         * config/srclist.txt: Add glibc bug 1423 for md5.h.
18947
18948 2005-10-05  Paul Eggert  <eggert@cs.ucla.edu>
18949
18950         * m4/getaddrinfo.m4 (gl_PREREQ_GETADDRINFO): Don't check for
18951         sys/socket.h, netdb.h, sys/types.h; the checks areno longer
18952         needed, since the source code now assumes these .h files.
18953
18954 2005-10-05  Derek Price  <derek@ximbiot.com>
18955
18956         * lib/getdelim.c (SIZE_MAX): New macro, if not already defined.
18957
18958 2005-10-05  Bruno Haible  <bruno@clisp.org>
18959
18960         * modules/stdint (License): Change to LGPL.
18961
18962 2005-10-04  Simon Josefsson  <jas@extundo.com>
18963
18964         * lib/getaddrinfo.h: Move sys/types.h include first, reported by "Mark
18965         D. Baushke" <mdb@gnu.org>.
18966
18967 2005-10-04  Bruno Haible  <bruno@clisp.org>
18968
18969         * lib/verify.h (verify_true): Provide alternative definition for C++.
18970
18971 2005-10-03  Paul Eggert  <eggert@cs.ucla.edu>
18972
18973         * lib/getdelim.c: Include getdelim.h first.  Include <limits.h>.
18974         (SSIZE_MAX): New macro, if not already defined.
18975         (getdelim): Fix buffer overrun on 64-bit hosts with lines longer
18976         than 2 GiB.
18977
18978 2005-10-02  Paul Eggert  <eggert@cs.ucla.edu>
18979
18980         Sync from coreutils.
18981         * m4/openat.m4 (gl_FUNC_OPENAT): Check for fdopendir.
18982         * m4/ullong_max.m4 (gl_ULLONG_MAX): Simplify so that it merely
18983         defines ULONG_MAX_LT_ULLONG_MAX.  Thomas M.Ott reports that
18984         ULLONG_MAX doesn't work with 2.7.2.1.
18985
18986 2005-10-02  Paul Eggert  <eggert@cs.ucla.edu>
18987
18988         * modules/xreadlink (Makefile.am): Remove lib_SOURCES.
18989         From Ben Pfaff.
18990
18991         * modules/exclude (Depends-on): Depend on verify.
18992         * modules/strtoimax (Depends-on): Likewise.
18993         * modules/utimecmp (Depends-on): Likewise.
18994
18995 2005-10-02  Paul Eggert  <eggert@cs.ucla.edu>
18996
18997         * lib/exclude.c: Include verify.h.
18998         (verify): Remove.  All callers changed to use verify.h's version.
18999         * lib/strtoimax.c: Likewise.
19000         * lib/utimecmp.c: Likewis.e
19001
19002         Sync from coreutils.
19003         * lib/.cppi-disable: Add getaddrinfo.h, getdelim.h, getline.h,
19004         getpass.c, mbchar.h, mbuiter.h, strcase.h, strnlen.h, strnlen1.h.
19005         * lib/.cvsignore: Add fts.h, search.h, t-fpending.
19006         * lib/settime.c (settime): Fix { typo in previous patch.  Also, don't
19007         bother returning ENOSYS if settimeofday or stime fails; just let
19008         them return whatever errno they want to return.
19009         * lib/utimens.c: Include unistd.h, for dup2.
19010         (futimens): Fix typo: HAVE_FUTIMESAT was misspelled in an #if.
19011         (futimens) [! HAVE_FUTIMESAT]: If !file, set errno before returning -1.
19012
19013 2005-10-02  Jim Meyering  <jim@meyering.net>
19014
19015         Sync from coreutils.
19016         * m4/utimes.m4 (gl_FUNC_UTIMES): Detect the version of utimes
19017         from glibc-2.2.5 that fails for read-only files.
19018
19019 2005-10-02  Jim Meyering  <jim@meyering.net>
19020
19021         Sync from coreutils.
19022         * lib/fts-cycle.c [HAVE_CONFIG_H]: Include <config.h>.
19023         * lib/openat-die.c: Use `#ifdef HAVE_CONFIG_H', not
19024         `#if HAVE_CONFIG_H'.
19025         * lib/openat.c (fdopendir): Do not define if HAVE_FDOPENDIR.
19026         Remove AT_FDCWD test.
19027         Do not consume the fd unless successful.
19028         * lib/openat.h (fdopendir): Do not define if HAVE_FDOPENDIR.
19029         * lib/settime.c (settime): Move the HAVE_STIME block `up' into an #elif
19030         block, so that we don't even try to compile it if settimeofday is
19031         available.  This works around a compilation failure on OSF1 V5.1,
19032         due to stime requiring a `long int*' while tv_sec is `int'.
19033
19034 2005-10-02  Alfred M. Szmidt  <ams@gnu.org>
19035
19036         Sync from coreutils.
19037         * m4/chdir-long.m4 (gl_FUNC_CHDIR_LONG): Compare $gl_have_path...
19038         against `yes', rather than just testing for nonempty.
19039
19040 2005-10-01  Simon Josefsson  <jas@extundo.com>
19041
19042         * m4/getaddrinfo.m4: Include sys/types.h for sys/socket.h, on FreeBSD
19043         and Darwin.
19044
19045         * m4/getaddrinfo.m4: Use AC_GNU_SOURCE, GNU only declare getaddrinfo
19046         as an (POSIX) extension.  Check for sys/types.h, sys/socket.h, and
19047         netdb.h too, needed by getaddrinfo.h.  Check if getaddrinfo,
19048         freeaddrinfo and gai_strerror are declared by the POSIX headers.
19049         Check if struct addrinfo is declared.
19050
19051 2005-10-01  Simon Josefsson  <jas@extundo.com>
19052
19053         * lib/getaddrinfo.h: Protect #include's of sys/socket.h and netdb.h.
19054         Only define struct addrinfo if !HAVE_STRUCT_ADDRINFO.  Protect
19055         AI_* and EAI_* definitions.  Protect function declarations.
19056
19057 2005-10-01  Jim Meyering  <jim@meyering.net>
19058
19059         Sync from coreutils.
19060
19061         * m4/getaddrinfo.m4 (gl_GETADDRINFO): Look for getservbyname in these
19062         libraries [inet nsl socket xnet].  Nelson Beebe reported that with
19063         native cc on Solaris 7, getaddrinfo.c requires -lsocket.
19064         * m4/getaddrinfo.m4 (gl_GETADDRINFO): Check for gethostbyname
19065         in the inet and nsl libraries.  Required on Solaris 5.7.
19066
19067 2005-10-01  Jim Meyering  <jim@meyering.net>
19068
19069         Sync from coreutils.
19070         * m4/getaddrinfo.m4 (gl_GETADDRINFO): Check for gethostbyname
19071         in the inet and nsl libraries.  Required on Solaris 5.7.
19072
19073 2005-10-01  Eric Blake  <ebb9@byu.net>  (tiny change)
19074
19075         * lib/getdelim.c (getdelim): Remove unused variables.
19076
19077 2005-09-29  Paul Eggert  <eggert@cs.ucla.edu>
19078
19079         * lib/xtime.h (XTIME_PRECISION): Now of type int, not long long int,
19080         so that the code works even with ancient cpp.  Portability problem
19081         with GCC 2.7.2.1 reported by Thomas M.Ott.
19082
19083 2005-09-27  Paul Eggert  <eggert@cs.ucla.edu>
19084
19085         * modules/regex (Depends-on): Add strcase.
19086
19087         * modules/gethostname (Licence): Change from GPL to LGPL, since
19088         gethostname.c is a trivial implementation of a standard library
19089         function.
19090         * modules/poll (License): Change from GPL to LGPL, since it's
19091         derived from LGPL code.
19092
19093 2005-09-27  Jim Meyering  <jim@meyering.net>
19094
19095         * lib/getcwd.c: Change #ifdef<TAB>HAVE_CONFIG_H to #ifdef
19096         HAVE_CONFIG_H.
19097
19098         * lib/intprops.h (signed_type_or_expr__): Define.
19099         (INT_STRLEN_BOUND) [__GNUC__]: Use a slightly tighter bound
19100         for unsigned types.
19101
19102 2005-09-26  Paul Eggert  <eggert@cs.ucla.edu>
19103
19104         * lib/verify.h (verify_expr): Remove, replacing with:
19105         (verify_true): New macro that returns true instead of void.
19106         (verify_type__): Remove.
19107         (verify): Use verify_true rather than verify_type__.
19108
19109 2005-09-26  Bruno Haible  <bruno@clisp.org>
19110
19111         * modules/mbchar (Include): Mention that HAVE_WCHAR_H && HAVE_WCTYPE_H
19112         is necessary.
19113         (lib_SOURCES): Remove mbchar.c.
19114         * modules/mbfile (Include): Mention that HAVE_MBRTOWC is necessary.
19115         (Files): Add m4/mbrtowc.m4.
19116         * modules/mbiter: Likewise.
19117         * modules/mbuiter: Likewise.
19118
19119 2005-09-26  Bruno Haible  <bruno@clisp.org>
19120
19121         * m4/mbchar.m4 (gl_MBCHAR): Check for wchar.h and wctype.h. Don't
19122         compile mbchar.c if they are not both present.
19123         * m4/mbfile.m4 (gl_MBFILE): Require gl_FUNC_MBRTOWC.
19124         * m4/mbiter.m4 (gl_MBITER): Likewise.
19125         * m4/strstr.m4 (gl_PREREQ_STRSTR): Use AC_REQUIRE.
19126         * m4/strcasestr.m4 (gl_PREREQ_STRCASESTR): Likewise.
19127         * m4/strcase.m4 (gl_PREREQ_STRCASECMP): Likewise.
19128
19129 2005-09-25  Jim Meyering  <jim@meyering.net>
19130
19131         * modules/inet_ntop (Depends-on): Add socklen, since inet_ntop.c
19132         also uses socklen_t.
19133
19134 2005-09-24  Paul Eggert  <eggert@cs.ucla.edu>
19135
19136         * lib/utimens.c (ENOSYS): Define if not already defined.
19137         (futimens): Support having a null PATH if the file descriptor
19138         is nonnegative.
19139
19140         * lib/regex_internal.h (__GNUC_PREREQ, always_inline, inline, pure):
19141         Remove.
19142         (__attribute): Define to empty unless GCC 3.1 or later.
19143         This works around a core dump on OpenBSD 3.4, which has GCC
19144         2.95.3, which dumps core when given __attribute__(()).  It also
19145         simplifies other tests, since we really don't want to bother with
19146         worrying about which ancient version of GCC supported what.
19147         Original problem reported by Yoann Vandoorselaere, with part of
19148         the fix suggested by Derek Price.
19149
19150 2005-09-24  Jim Meyering  <jim@meyering.net>
19151
19152         * lib/verify.h (verify_type__): Use `unsigned int' as the bitfield type
19153         so we can once again use a positive bitfield width of 1 -- now we
19154         don't have to explain why we were using a bitfield width of 2.
19155
19156 2005-09-23  Paul Eggert  <eggert@cs.ucla.edu>
19157
19158         * m4/regex.m4 (gl_REGEX): If replacing, define regcomp to rpl_regcomp,
19159         and similarly for the other external symbols.  Problem reported
19160         by James Gallager.
19161
19162         * m4/fnmatch.m4 (_AC_FUNC_FNMATCH_IF): Catch Sun Studio 10u1 on Linux
19163         bug reported by Jim Meyering.
19164
19165         * m4/utimens.m4 (gl_UTIMENS): Check for futimesat.
19166         * m4/getaddrinfo.m4 (gl_PREREQ_GETADDRINFO): Undo previous change;
19167         not needed, since socklen is a prerequisite module.
19168
19169 2005-09-23  Paul Eggert  <eggert@cs.ucla.edu>
19170
19171         * lib/getaddrinfo.c [HAVE_NETINET_IN_H]: Include <netinet/in.h>.
19172         Problem reported by Eric Blake.
19173         (getaddrinfo): Initialize se so that it's not garbage.
19174         Redo internal storage allocation so that it doesn't make unportable
19175         assumptions about alignment.
19176         Fix a memory leak.
19177
19178         * lib/utimens.c (futimens): Use futimesat if available.
19179         Prefer it to futimes since it doesn't have the futimes bug.
19180
19181         * lib/verify.h (GL_CONCAT0, GL_CONCAT): Remove.
19182         (verify): Don't use the __LINE__ trick, as it doesn't work in general.
19183         Instead, declare a function that returns a pointer to an array,
19184         and use verify_type__ to declare the size of the array.
19185         Problem and germ of a solution reported by Bruno Haible.
19186         (verify_type__): Use 2, not 1, for bitfield size, to avoid
19187         a warning with Irix 6.5 cc.  Problem reported by Bruno Haible.
19188
19189 2005-09-23  Jim Meyering  <jim@meyering.net>
19190
19191         Sync from coreutils.
19192         Correct build failure (socklen_t not defined) on at least
19193         mips-sgi-irix6.5 and alphaev67-dec-osf5.1.
19194         * m4/getaddrinfo.m4 (gl_PREREQ_GETADDRINFO): Require gl_SOCKLEN_T.
19195
19196 2005-09-23  Jim Meyering  <jim@meyering.net>
19197
19198         * modules/getaddrinfo (Depends-on): Add socklen.
19199
19200 2005-09-23  Bruno Haible  <bruno@clisp.org>
19201
19202         * tests/test-verify.c: New file.
19203
19204 2005-09-22  Paul Eggert  <eggert@cs.ucla.edu>
19205
19206         Sync from coreutils.
19207
19208         * modules/argmatch (Depends-on): Add verify.
19209         * modules/getloadavg (Depends-on): Depend on fcntl-safer, not
19210         unistd-safer.
19211         * modules/save-cwd (Depends-on): Likewise.
19212
19213         * modules/openat (Files): Add lib/openat-die.c.
19214         (Depends-on): Remove error, exitfail.
19215         Add dirname.
19216
19217         * modules/verify: New file.
19218         * MODULES.html.sh (Diagnostics <assert.h>): New section,
19219         with "verify" module.
19220
19221 2005-09-22  Paul Eggert  <eggert@cs.ucla.edu>
19222
19223         Sync from coreutils.
19224
19225         * m4/backupfile.m4, calloc.m4, chown.m4, cloexec.m4, dup2.m4:
19226         * m4/fileblocks.m4, free.m4, ftruncate.m4, getcwd.m4, getpagesize.m4:
19227         * m4/getugroups.m4, group-member.m4, idcache.m4, link-follow.m4:
19228         * m4/mkstemp.m4, mktime.m4, mountlist.m4, nanosleep.m4, pathmax.m4:
19229         * m4/physmem.m4, posixver.m4, putenv.m4, safe-read.m4, same.m4:
19230         * m4/save-cwd.m4, stdio-safer.m4, unistd-safer.m4, unlinkdir.m4:
19231         * m4/userspec.m4, xgetcwd.m4, xreadlink.m4:
19232         Don't bother checking for string.h, stdlib.h, unistd.h.
19233         * m4/fts.m4 (gl_FUNC_FTS_CORE): Don't require
19234         AC_FUNC_LSTAT_FOLLOWS_SLASHED_SYMLINK; that's now the lstat
19235         module's job.
19236         * m4/jm-macros.m4 (gl_MACROS): Likewise.
19237         * m4/prereq.m4 (gl_PREREQ): Add gl_FUNC_LSTAT.
19238
19239         * m4/getdate.m4 (gl_C_COMPOUND_LITERALS): New macro.
19240         (gl_GETDATE): Use it.
19241
19242         * m4/mkdir-p.m4 (gl_MKDIR_PARENTS): Don't bother checking for unistd.h.
19243
19244 2005-09-22  Paul Eggert  <eggert@cs.ucla.edu>
19245
19246         Sync from coreutils.
19247
19248         * lib/.cppi-disable: Add regcomp.c, regex_internal.c, regex_internal.h,
19249         stat-time.h.
19250         * lib/argmatch.h: Include verify.h
19251         (ARGMATCH_VERIFY): Use verify rather than rolling our own.
19252         (ARGMATCH_ASSERT): Remove; unused.
19253         * lib/canonicalize.c: Assume STDC_HEADERS.
19254         * lib/exclude.c: Include "strcase.h".
19255         * lib/regex_internal.h [!defined _LIBC]: Likewise.
19256         * lib/getusershell.c: Include stdio--.h rather than stdio.h
19257         and stdio-safer.h.
19258         (getusershell): Call fopen, not fopen_safer.
19259         * lib/save-cwd.c: Include fcntl--.h rather than fcntl.h.
19260         Do not include unistd-safer.h.
19261         (save_cwd): Don't call fd_safer; no longer needed
19262         now that we include fcntl--.h.
19263
19264         * lib/getdate.y (relative_time): New type.
19265         (RELATIVE_TIME_0): New constant.
19266         (parser_control): Use relative_time instead of doing it ourselves.
19267         (%union): Add new relative_time rel member.
19268         (tYEAR_UNIT, tMONTH_UNIT, tHOUR_UNIT, tMINUTE_UNIT, tSEC_UNIT):
19269         Now typeless.
19270         (relunit, relunit_snumber): Now of type rel.
19271         (zone, rel, relunit, get_date): Adjust to above changes.
19272
19273         * lib/getloadavg.c: Include fcntl--.h rather than fcntl.h.
19274         Do not include unistd-safer.h.
19275         (getloadavg): Don't call fd_safer; no longer needed
19276         now that we include fcntl--.h.
19277
19278         * lib/mkdir-p.c (ENOSYS): Define to EEXIST if not defined.
19279         (make_dir_parents): Treat ENOSYS like EEXIST.
19280
19281         Improve quality of diagnostics on restore_cwd failure.
19282         * lib/mkdir-p.h (make_dir): Remove.  All uses replaced by mkdir.
19283         (make_dir_parents): Last arg is now int * (for errno), not bool *.
19284         * lib/mkdir-p.c (make_dir, make_dir_parents): Likewise.
19285         Rewrite "mkdir -p" algorithm to avoid the need for "stat"
19286         each time through the loop.  Do not diagnose restore_cwd failure;
19287         that is the caller's job (and perhaps the caller does not care).
19288
19289         * lib/mkdir-p.c (CLEANUP_CWD, CLEANUP): Remove.
19290         (make_dir_parents): Revamp to avoid need for CLEANUP_CWD, CLEANUP.
19291         If the file already exists but is not a directory, don't bother
19292         to try to make its parents.
19293         Close potential file descriptor leak if we can't chdir("/") (!).
19294         Don't always return true if chdir($PWD) fails; return true only
19295         if the requested action was done successfully (except for the
19296         chdir($PWD)).
19297         Don't log final directory unless we actually made it.
19298         Refactor to avoid duplicate code to fix up permissions.
19299         Don't attempt to fix up parent permissions if chdir($PWD) fails.
19300
19301         * lib/strftime.c (my_strftime): Rewrite the previous change slightly,
19302         to make it a bit faster and (I hope) clearer.
19303         * lib/strftime.c (my_strftime): Add support for %:z, %::z, %:::z.
19304         Fix bug in formats like %2N.
19305
19306         * lib/verify.h: New file.
19307
19308 2005-09-22  Paul Eggert  <eggert@cs.ucla.edu>
19309
19310         Sync from coreutils.
19311         * m4/getaddrinfo.m4 (gl_PREREQ_GETADDRINFO): Check for netinet/in.h.
19312
19313 2005-09-22  Jim Meyering  <jim@meyering.net>
19314
19315         Sync from coreutils.
19316
19317         * m4/lstat.m4 (gl_FUNC_LSTAT):
19318         Use AC_LIBSOURCES to require lstat.c and lstat.h.
19319         Remove obsolete comment.
19320         * m4/xreadlink.m4: Use AC_LIBSOURCES and AC_LIBOBJ.
19321         * m4/xstrtod.m4: Likewise.
19322
19323         * m4/openat.m4 (gl_FUNC_OPENAT): Add openat-die.c.
19324
19325 2005-09-22  Jim Meyering  <jim@meyering.net>
19326
19327         Sync from coreutils.
19328
19329         * lib/backupfile.c: Use ARGMATCH_VERIFY, just in case.
19330
19331         * lib/posixtm.c (posixtime) [lint]: Initialize *all* of tm0, not just
19332         the .tm_year member, since otherwise gcc-4.0 would now warn about
19333         tm_zone, tm_gmtoff, tm_isdst, tm_yday, tm_wday.
19334
19335         * lib/quotearg.c (quotearg_n_options): Change code to be suboptimal, in
19336         order to avoid an unsuppressible warning from gcc on 64-bit systems.
19337
19338         * lib/getdate.y (get_date): Undo part of the 2005-04-04 change, so that
19339         the command "date -d'2005-03-27 +1 day'" succeeds once again, even
19340         when run in a time zone for which daylight savings time is in effect
19341         for the starting date.
19342
19343         * lib/mkdir-p.c (make_dir_parents): Don't let a failed chdir($PWD)
19344         stop us from restricting permissions of just-created absolute-named
19345         directories.
19346         * lib/mkdir-p.c (CLEANUP_CWD): Return *true*, not false when failing
19347         to restore initial working directory.
19348         * lib/mkdir-p.c (make_dir_parents): New parameter:
19349         different_working_dir, to tell caller if/when we change the working
19350         directory and are unable to return to the initial one.
19351         * lib/mkdir-p.h (make_dir_parents): Update prototype.
19352         * lib/mkdir-p.c (CLEANUP_CWD): Change one more `return 1' to
19353         `return false'.  This fixes a bug introduced on 2004-07-30.
19354
19355         * lib/openat.c (fdopendir): Be sure to close the supplied
19356         file descriptor before returning.  This makes our replacement
19357         implementation a little closer to Solaris's, where fdopendir
19358         ties the file descriptor to the returned DIR* pointer.
19359         * lib/openat.c (unlinkat): New function.
19360         * lib/openat.h (unlinkat): Add prototype.
19361         * lib/openat-die.c (openat_save_fail): Rename from openat_save_die.
19362         (openat_restore_fail): Rename from openat_restore_die.
19363         * lib/openat.c, openat.h: Reflect s/_die/_fail/ renaming.
19364
19365         Provide an alternative to exiting immediately upon save_cwd or
19366         restore_cwd failure.  Now, an application can arrange e.g.,
19367         to perform a longjump in that case.
19368         * lib/openat.c: Include dirname.h.
19369         Use IS_ABSOLUTE_FILE_NAME rather than testing for leading slash.
19370         (rpl_openat, fdopendir, fstatat): Call openat_save_die
19371         and openat_restore_die rather than calling error directly.
19372         Don't include "error.h" or "exitfail.h"; they're no longer needed.
19373
19374         * lib/openat-die.c (openat_save_die, openat_restore_die): New file.
19375         * lib/openat.h (openat_save_die, openat_restore_die): Declare and
19376         define.
19377
19378         * lib/strftime.c [FPRINTFTIME] (fprintftime): Provide a new interface:
19379         size_t fprintftime (FILE *fp, char const *fmt, struct tm const *tm,
19380                             int utc, int nanoseconds);
19381         Background:
19382         date should not have to allocate a megabyte of virtual memory to
19383         handle a format argument like +%1048575T.  When implemented with
19384         strftime, it must allocate such a buffer, use strftime to fill it
19385         in, print it, then free it.
19386         With fprintftime, it simply prints everything and exits.
19387         With no need for memory allocation, that's one fewer way to fail.
19388         * lib/strftime.c (my_strftime): Parse the colons of %:::z *after* the
19389         optional field width, not before, so we accept %9:z, not %:9z.
19390         (my_strftime): Be sure to use L_('x') for literals.
19391
19392         * lib/backupfile.c, lib/canon-host.c, lib/canonicalize.c, lib/chown.c:
19393         * lib/cloexec.c, lib/dup-safer.c, lib/dup2.c, lib/euidaccess.c:
19394         * lib/fd-safer.c, lib/fileblocks.c, lib/fopen-safer.c, lib/fsusage.c:
19395         * lib/ftruncate.c, lib/getcwd.c, lib/getcwd.h, lib/getloadavg.c:
19396         * lib/getopt_.h, lib/getpagesize.h, lib/getugroups.c:
19397         * lib/group-member.c, lib/human.h, lib/idcache.c, lib/mkdir-p.c:
19398         * lib/mountlist.c, lib/nanosleep.c, lib/pathmax.h, lib/physmem.c:
19399         * lib/posixver.c, lib/putenv.c, lib/raise.c, lib/safe-read.c:
19400         * lib/same.c, lib/save-cwd.c, lib/setenv.c, lib/settime.c:
19401         * lib/tempname.c, lib/unlinkdir.c, lib/unsetenv.c, lib/userspec.c:
19402         * lib/xgethostname.c, lib/xreadlink.c:
19403         Assume HAVE_UNISTD_H, i.e., include <unistd.h> unconditionally.
19404
19405         * lib/chown.c, lib/cloexec.c, lib/dup-safer.c, lib/dup2.c:
19406         * lib/fsusage.c, lib/getcwd.c, lib/getloadavg.c, lib/mountlist.c:
19407         * lib/openat.h, lib/save-cwd.c, lib/tempname.c:
19408         Assume HAVE_FCNTL_H (i.e., include <fcntl.h> unconditionally,
19409         and don't include <sys/file.h>).
19410
19411 2005-09-22  Eric Blake  <ebb9@byu.net>  (tiny change)
19412
19413         Sync from coreutils.
19414
19415         * lib/getloadavg.c (getloadavg) [__CYGWIN__]: Port to cygwin.
19416         [__linux__]: Allocate a big enough buffer for /proc/loadavg.
19417         [!LDAV_DONE]: Avoid unused variable warning.
19418
19419 2005-09-21  Bruno Haible  <bruno@clisp.org>
19420
19421         * lib/unicodeio.h (unicode_to_mb): New declaration.
19422
19423 2005-09-20  Derek Price  <derek@ximbiot.com>
19424
19425         * lib/getaddrinfo.c: Don't include <netdb.h> included from
19426         getaddrinfo.h.
19427
19428 2005-09-20  Bruno Haible  <bruno@clisp.org>
19429
19430         * gnulib-tool: Remove trailing slashes from the values specified for
19431         --source-base, --m4-base, --tests-base, --aux-dir.
19432         Suggested by Simon Josefsson <jas@extundo.com>.
19433
19434 2005-09-20  Bruno Haible  <bruno@clisp.org>
19435
19436         * gnulib-tool (func_all_modules, func_modules_transitive_closure,
19437         func_modules_to_filelist, func_import, func_create_testdir): Make all
19438         sorting results locale-independent, so that gnulib-cache.m4 doesn't
19439         change when gnulib-tool is invoked in a different locale.
19440
19441 2005-09-19  Simon Josefsson  <jas@extundo.com>
19442
19443         * m4/socklen.m4: Fix typo.
19444
19445 2005-09-19  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
19446
19447         Use a consistent style for including <config.h>.
19448         * lib/__fpending.c, lib/acl.c, lib/argmatch.c, lib/argp-help.c,
19449         lib/argp-parse.c, lib/argp-pvh.c, lib/backupfile.c, lib/basename.c,
19450         lib/c-stack.c, lib/calloc.c, lib/check-version.c, lib/cloexec.c,
19451         lib/closeout.c, lib/copy-file.c, lib/creat-safer.c, lib/cycle-check.c,
19452         lib/dirfd.c, lib/dirname.c, lib/dup-safer.c, lib/dup2.c,
19453         lib/euidaccess.c, lib/exclude.c, lib/exitfail.c, lib/fatal-signal.c,
19454         lib/fd-safer.c, lib/file-type.c, lib/fileblocks.c, lib/filemode.c,
19455         lib/filenamecat.c, lib/findprog.c, lib/fnmatch.c, lib/fopen-safer.c,
19456         lib/free.c, lib/fsusage.c, lib/ftruncate.c, lib/full-write.c,
19457         lib/fwriteerror.c, lib/getaddrinfo.c, lib/getcwd.c, lib/getdelim.c,
19458         lib/getline.c, lib/getlogin_r.c, lib/getndelim2.c, lib/getnline.c,
19459         lib/getopt1.c, lib/getpass.c, lib/group-member.c, lib/hard-locale.c,
19460         lib/hash-pjw.c, lib/hash.c, lib/human.c, lib/idcache.c,
19461         lib/inet_ntop.c, lib/isdir.c, lib/long-options.c, lib/malloc.c,
19462         lib/memcasecmp.c, lib/memcmp.c, lib/memcoll.c, lib/memcpy.c,
19463         lib/memmove.c, lib/mkdir-p.c, lib/modechange.c, lib/mountlist.c,
19464         lib/open-safer.c, lib/physmem.c, lib/pipe-safer.c, lib/pipe.c,
19465         lib/poll.c, lib/posixver.c, lib/progname.c, lib/progreloc.c,
19466         lib/putenv.c, lib/quote.c, lib/quotearg.c, lib/readline.c,
19467         lib/readlink.c, lib/realloc.c, lib/regex.c, lib/rename.c, lib/rmdir.c,
19468         lib/rpmatch.c, lib/safe-read.c, lib/same.c, lib/save-cwd.c,
19469         lib/savedir.c, lib/sig2str.c, lib/strcspn.c, lib/strerror.c,
19470         lib/stripslash.c, lib/strncasecmp.c, lib/strndup.c, lib/strnlen.c,
19471         lib/strnlen1.c, lib/strsep.c, lib/strstr.c, lib/strtod.c,
19472         lib/strtoimax.c, lib/strtol.c, lib/strverscmp.c, lib/tempname.c,
19473         lib/time_r.c, lib/userspec.c, lib/utimecmp.c, lib/version-etc-fsf.c,
19474         lib/version-etc.c, lib/wait-process.c, lib/xalloc-die.c, lib/xgetcwd.c,
19475         lib/xmalloc.c, lib/xmemcoll.c, lib/xnanosleep.c, lib/xreadlink.c,
19476         lib/xsetenv.c, lib/xstrndup.c, lib/xstrtoimax.c, lib/xstrtol.c,
19477         lib/xstrtoumax.c, lib/yesno.c:
19478         Standardize inclusion of config.h.
19479         * lib/__fpending.h, lib/dirfd.h, lib/getdate.h, lib/human.h,
19480         lib/inttostr.h:  Removed inclusion of config.h from header files.
19481         * lib/inttostr.c:  Adjusted in-tree users.
19482         * lib/timespec.h: Remove superfluous warning to include config.h.
19483         * lib/atexit.c, lib/chdir-long.c, lib/chown.c, lib/fchown-stub.c,
19484         lib/getgroups.c, lib/gettimeofday.c, lib/lchown.c, lib/lstat.c,
19485         lib/mkdir.c, lib/mkstemp.c, lib/nanosleep.c, lib/openat.c, lib/raise.c,
19486         lib/readtokens0.c, lib/readutmp.c, lib/unlinkdir.c: Guard inclusion of
19487         config.h with HAVE_CONFIG_H.
19488
19489 2005-09-19  Jim Meyering  <jim@meyering.net>
19490
19491         * modules/pathmax (License): Change to LGPL.
19492
19493 2005-09-19  Derek Price  <derek@ximbiot.com>
19494
19495         * config/srclist.txt: glibc's glob.h is now in lib/glob-libc.h.
19496
19497 2005-09-19  Bruno Haible  <bruno@clisp.org>
19498
19499         * gnulib-tool (import): Provide default for --tests-base.
19500
19501 2005-09-19  Bruno Haible  <bruno@clisp.org>
19502
19503         * doc/quote.texi: New file, extracted from gnulib.texi.
19504         * doc/ctime.texi: New file, extracted from gnulib.texi.
19505         * doc/inet_ntoa.texi: New file, extracted from gnulib.texi.
19506         * doc/gnulib-tool.texi: New file, extracted from gnulib.texi.
19507         * doc/gnulib.texi: Include them.
19508
19509 2005-09-18  Bruno Haible  <bruno@clisp.org>
19510
19511         Portability fix.
19512         * gnulib-tool (func_readlink): New function.
19513         (func_ln_if_changed): Use it.
19514
19515 2005-09-18  Bruno Haible  <bruno@clisp.org>
19516
19517         * gnulib-tool: Support --with-tests also with --import.
19518         (func_emit_tests_Makefile_am): Use variables $m4base and $testsbase.
19519         (func_import): Use variables $testsbase and $inctests. Emit a
19520         gl_TESTS_BASE form into gnulib-cache.m4. Create $testsbase/Makefile.am.
19521         Remind the user to add AC_CONFIG_FILES($testsdir/Makefile) and
19522         SUBDIRS += $testsdir.
19523         (func_create_testdir): Update.
19524
19525 2005-09-18  Bruno Haible  <bruno@clisp.org>
19526
19527         * gnulib-tool: Revise --dry-run implementation. Use variable $doit
19528         instead of $dry_run.
19529         (func_cp_if_changed, func_mv_if_changed): Remove functions.
19530         (func_ln_if_changed): Don't handle dry-run here.
19531         (func_import): In dry-run mode, detect more precisely which actions
19532         would be performed, and don't use "...ing" verbs.
19533
19534 2005-09-18  Bruno Haible  <bruno@clisp.org>
19535
19536         * gnulib-tool (func_tmpdir): New function, taken from GNU gettextize.
19537         (func_import): Use join on two temporary files instead of three nested
19538         loops, in order to determine which files are new or old.
19539
19540 2005-09-18  Bruno Haible  <bruno@clisp.org>
19541
19542         * gnulib-tool (func_import): Comment out code that spits out the
19543         new files with --dry-run.
19544
19545 2005-09-18  Bruno Haible  <bruno@clisp.org>
19546
19547         * doc/gnulib.texi (Invoking gnulib-tool): 50% rewritten.
19548
19549 2005-09-16  Paul Eggert  <eggert@cs.ucla.edu>
19550
19551         * lib/stat-time.h: New file.
19552         * lib/timespec.h (ST_TIME_CMP_NS, ST_TIME_CMP, ATIME_CMP, CTIME_CMP):
19553         (MTIME_CMP, TIMESPEC_NS): Remove.  Now done by stat-time.h,
19554         in a different way.
19555         (timespec_cmp): New function.
19556         * lib/utimecmp.c: Include stat-time.h.
19557         (SYSCALL_RESOLUTION): Depend on whether various struct stat
19558         members exist, not on the obsolescent ST_MTIM_NSEC.
19559         (utimecmp): Use the new stat-time functions rater than TIMESPEC_NS.
19560
19561 2005-09-16  Paul Eggert  <eggert@cs.ucla.edu>
19562
19563         * config/srclist.txt: Remove glibc bug 1033 and uncomment mktime.c.
19564
19565 2005-09-16  Paul Eggert  <eggert@cs.ucla.edu>
19566
19567         * MODULES.html.sh (File system functions): Add stat-time.
19568         * modules/stat-time: New file.
19569         * modules/timespec (Files): Remove m4/st_mtim.m4; this
19570         is now done in a different way, by the stat-time module.
19571         * modules/utimecmp (Depends-on): Add stat-time.
19572
19573 2005-09-15  Paul Eggert  <eggert@cs.ucla.edu>
19574
19575         * m4/st_mtim.m4: Remove.  Superseded by...
19576         * m4/stat-time.m4: New file.
19577         * m4/timespec.m4 (gl_TIMESPEC): Require AC_C_INLINE.
19578         Do not invoke AC_STRUCT_ST_MTIM_NSEC; no longer needed.
19579
19580 2005-09-15  Derek Price  <derek@ximbiot.com>
19581
19582         * m4/strstr.m4 (gl_FUNC_STRSTR): Don't define strstr here.
19583
19584 2005-09-15  Derek Price  <derek@ximbiot.com>
19585
19586         * lib/regex_internal.h: Blank `pure' for GNUC < 3.
19587         * lib/regex_internal.c: Ditto, using this...
19588         (__GNUC_PREREQ): ...new macro.
19589         * lib/regcomp.c, regexec.c: Blank `always_inline' for GNUC < 3.1
19590         using...
19591         (__GNUC_PREREQ): ...this new macro.
19592
19593         * lib/strstr.h: Include string.h. Define strstr as a macro here.
19594
19595 2005-09-15  Derek Price  <derek@ximbiot.com>
19596             Paul Eggert  <eggert@cs.ucla.edu>
19597
19598         * lib/regcomp.c, regexec.c, regex_internal.c: Back out previous
19599         changes, consolidating in...
19600         * lib/regex_internal.h: ...this file.
19601
19602 2005-09-13  Jim Meyering  <jim@meyering.net>
19603
19604         * lib/canon-host.c: Filter through gnu indent and reword comments
19605         slightly.
19606         * lib/canon-host.h (ch_strerror_r): Tweak cpp indentation and spacing.
19607
19608 2005-09-13  Derek Price  <derek@ximbiot.com>
19609
19610         * lib/canon-host.c (canon_host_r): Set *cherror on memory allocation
19611         failure.
19612         Reported by Jim Meyering  <jim@meyering.net>.
19613
19614 2005-09-12  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>  (tiny change)
19615
19616         * lib/base64.c: Typo.
19617         (base64_encode): Put b64str in initialized data section.
19618
19619 2005-09-12  Paul Eggert  <eggert@cs.ucla.edu>
19620
19621         Merge glibc and coreutils changes into gnulib, plus a few
19622         extra fixes.
19623         * lib/md5.c: Use #error rather than a string.
19624         (CYCLIC): New macro, from glibc source.  Use it instead of rol.
19625         * lib/md5.h (__GNUC_PREREQ, __THROW): Define if not defined already.
19626         (__attribute__): Define to empty for non recent-GCC.
19627         (__md5_buffer, __md5_finish_ctx, __md5_init_ctx, __md5_process_block):
19628         (__md5_process_bytes, __md5_read_ctx, __md5_stream):
19629         Renamed from their non-__ counterparts, with new macros replacing
19630         them if not _LIBC.  Add __THROW attribute.
19631         (rol): Remove.
19632         (struct md5_ctx): Align buffer if using GCC.
19633         * lib/sha1.h (struct sha1_ctx): Likewise.
19634         * lib/sha1.c (SWAP): Renamed from the NOTSWAP.  All uses changed.
19635         The old name was backwards.
19636         (NOTSWAP): Remove; not used.
19637         (rol): New macro, moved here from md5.h.
19638         (sha1_process_block): Remove a FIXME that doesn't make sense.
19639
19640 2005-09-12  Derek Price  <derek@ximbiot.com>
19641
19642         Return usable errors from canon-host.
19643         * lib/canon-host.h: New file.
19644         * lib/canon-host.c (canon_host): Wrap...
19645         (canon_host_r): ...this new function, which now relies exclusively on
19646         getaddrinfo.
19647         (ch_strerror): New function.
19648         (last_cherror): New global.
19649         * lib/getaddrinfo.c: Move include of getaddrinfo.h first to test
19650         interface.
19651         (getaddrinfo): Add AI_CANONNAME functionality.  Don't do arithmetic on
19652         void *.
19653         (freeaddrinfo): Free ai->ai_canonname when set.
19654
19655 2005-09-12  Derek Price  <derek@ximbiot.com>
19656
19657         Make canon-host require getaddrinfo.
19658         * m4/canon-host.m4 (gl_CANON_HOST): Remove most dependencies.
19659         AC_LIBSOURCE canon-host.h.  Call...
19660         (gl_PREREQ_CANON_HOST): ...this new function, which requires
19661         gl_GETADDRINFO.
19662         * m4/getaddrinfo.m4 (gl_GETADDRINFO): Compile gai_strerror when needed.
19663
19664 2005-09-12  Derek Price  <derek@ximbiot.com>
19665
19666         * modules/canon-host: Add canon-host.h.  Depend on getaddrinfo.  Make
19667         LGPL.
19668         * modules/getaddrinfo: Add link to opengroup spec.  Depend on strdup.
19669
19670 2005-09-12  Derek Price  <derek@ximbiot.com>
19671
19672         * lib/gai_strerror.c: Include config.h when available.  Include
19673         getaddrinfo.h before other headers to test interface.
19674         Reported by Larry Jones <lawrence.jones@ugs.com>.
19675
19676 2005-09-12  Derek Price  <derek@ximbiot.com>
19677             Paul Eggert  <eggert@cs.ucla.edu>
19678
19679         * modules/glob (Files): Add glob-libc.h.
19680
19681 2005-09-12  Derek Price  <derek@ximbiot.com>
19682             Paul Eggert  <eggert@cs.ucla.edu>
19683
19684         * m4/glob.m4 (gl_GLOB_SUBSTITUTE): AC_LIBSOURCES for glob.c,
19685         glob_.h, glob-libc.h.
19686         (gl_PREREQ_GLOB): Remove _SYS_CDEFS_H hack; no longer needed.
19687
19688 2005-09-12  Derek Price  <derek@ximbiot.com>
19689             Paul Eggert  <eggert@cs.ucla.edu>
19690
19691         * lib/glob-libc.h: Renamed from glob_.h.  The new version is
19692         taken from libc's glob.h, except with '#ifdef __GLOB_GNULIB'
19693         protecting things that should be done only in gnulib contexts.
19694         * lib/glob_.h: New file, containing only the glob things needed for
19695         gnulib.
19696         (GLOB_PREFIX): Remove.  All uses changed to look for __GLOB_GNULIB.
19697         (__GLOB_CONCAT, __GLOB_XCONCAT, __GLOB_ID): Remove; no longer needed.
19698         (glob, globfree, glob_pattern_p): Now defined simply in terms of
19699         rpl_glob, rpl_globfree, rpl_glob_pattern_p.
19700         (__GLOB_GNULIB): New macro, to keep the glob.h changes clearer
19701         and to respect the namespace rules better.
19702
19703 2005-09-08  Simon Josefsson  <jas@extundo.com>
19704
19705         * modules/socklen: New file.
19706
19707 2005-09-08  Simon Josefsson  <jas@extundo.com>
19708
19709         * m4/socklen.m4: New file.
19710
19711 2005-09-08  Paul Eggert  <eggert@cs.ucla.edu>
19712
19713         * modules/utimens (Files): Add m4/utimbuf.m4, since
19714         m4/utimens.m4 requires gl_CHECK_TYPE_STRUCT_UTIMBUF.
19715         Reported by Sergey Poznyakoff.
19716
19717 2005-09-08  Paul Eggert  <eggert@cs.ucla.edu>
19718
19719         * lib/glob.c (glob, globfree, __glob_pattern_p): Use old-style function
19720         definitions, since that's the preferred style in glibc.
19721         Fix a minor spacing issue, and update copyright notice to match
19722         glibc's.
19723
19724 2005-09-08  Paul Eggert  <eggert@cs.ucla.edu>
19725
19726         * config/srclist.txt: Remove glibc bug 1061; it's been fixed.
19727
19728 2005-09-06  Simon Josefsson  <jas@extundo.com>
19729
19730         * lib/getpass.c (getpass): Fix typo, test for HAVE_TCSETATTR and not
19731         TCSETATTR.  Reported by Derek Price <derek@ximbiot.com>.
19732
19733 2005-09-06  Paul Eggert  <eggert@cs.ucla.edu>
19734
19735         * lib/regex_internal.h (bitset_not): Add parens to avoid gcc -Wall
19736         warning.
19737
19738 2005-09-06  Paul Eggert  <eggert@cs.ucla.edu>
19739
19740         * config/srclist.txt: Add glibc bug 1302.
19741
19742 2005-09-05  Paul Eggert  <eggert@cs.ucla.edu>
19743
19744         Change bitset word type from unsigned int to unsigned long int,
19745         as this has better performance on typical 64-bit hosts.
19746         Port bitset code to hosts with unusual word sizes.
19747         * lib/regcomp.c (build_equiv_class, build_charclass, build_range_exp):
19748         (build_collating_symbol):
19749         Prefer bitset to re_bitset_ptr_t in prototypes, when the actual
19750         argument is a bitset.  This is merely a style issue, but it makes
19751         it clearer that an entire array is expected.
19752         (re_compile_fastmap_iter, init_dfa, init_word_char, optimize_subexps):
19753         * lib/regcomp.c (lower_subexp, parse_bracket_exp, built_charclass_op):
19754         Port to the case where bitset_word is not the same as unsigned int.
19755         * lib/regex_internal.h (bitset_set, bitset_clear, bitset_contain):
19756         (bitset_not, bitset_merge, bitset_set_all, bitset_mask):
19757         Likewise.
19758         * lib/regexec.c (check_dst_limits_calc_pos_1,
19759         check_subexp_matching_top):
19760         (build_trtable, group_nodes_into_DFAstates):
19761         Likewise.
19762         * lib/regcomp.c (re_compile_fastmap_iter, utf8_sb_map, optimize_utf8):
19763         Don't assume that SBC_MAX is a multiple of BITSET_WORD_BITS.
19764         * lib/regex_internal.h (bitset_set_all, bitset_not): Likewise.
19765         * lib/regexec.c (group_nodes_into_DFAstates): Likewise.
19766         * lib/regcomp.c (utf8_sb_map): Don't assume UINT_MAX == 0xffffffff.
19767         * lib/regcomp.c (optimize_subexps, lower_subexp):
19768         Work even if bitset_word has holes in its bitwise representation.
19769         * lib/regex_internal.h (BITSET_WORD_BITS): Likewise.
19770         * lib/regexec.c (check_dst_limits_calc_pos_1,
19771         check_subexp_matching_top):
19772         Likewise.
19773         * lib/regex_internal.c (re_string_reconstruct):
19774         Don't assume UCHAR_MAX == 255.
19775         * lib/regex_internal.h (bitset_set_all): Likewise.
19776         * lib/regex_internal.h (BITSET_WORD_BITS): Renamed from UINT_BITS.
19777         All uses changed.
19778         (BITSET_WORDS): Renamed from BITSET_UINTS.  All uses changed.
19779         (bitset_word): New type, replacing 'unsigned int' for bitset uses.
19780         All uses changed.
19781         (BITSET_WORD_MAX): New macro.
19782         (bitset_set, bitset_clear, bitset_contain, bitset_empty):
19783         (bitset_set_all, bitset_copy):  Now inline functions, not macros.
19784         (bitset_empty, bitset_copy):
19785         Prefer sizeof (bitset) to multiplying it out ourselves.
19786         (bitset_not_merge): Remove; unused.
19787         (bitset_contain): Return bool, not unsigned int with one bit on.
19788         All callers changed.
19789         * lib/regexec.c (build_trtable): Don't assume bitset has no stricter
19790         alignment than re_node_set; do this by defining a new internal
19791         type struct dests_alloc and using it to allocate memory.
19792
19793 2005-09-05  Bruno Haible  <bruno@clisp.org>
19794
19795         * gnulib-tool (func_import): Fix comparison in handling of symbolic
19796         links.
19797
19798 2005-09-04  Martin Lambers  <marlam@marlam.de>  (tiny change)
19799
19800         * modules/size_max (Makefile.am): Add size_max.h
19801
19802 2005-09-04  Derek Price  <derek@ximbiot.com>
19803
19804         * gnulib-tool (func_import): Fix reversed $symbolic logic.
19805
19806 2005-09-03  Simon Josefsson  <jas@extundo.com>
19807
19808         * gnulib-tool: Fix typo.
19809
19810 2005-09-03  Simon Josefsson  <jas@extundo.com>
19811
19812         * config/srclist.txt: Add glibc bug 1293.
19813
19814 2005-09-03  Derek Price  <derek@ximbiot.com>
19815
19816         * m4/getlogin_r (gl_GETLOGIN_R): Fix cut & paste error.
19817         From Larry Jones <lawrence.jones@ugs.com>.
19818
19819 2005-09-02  Simon Josefsson  <jas@extundo.com>
19820
19821         * modules/socklen: New file.
19822
19823 2005-09-02  Simon Josefsson  <jas@extundo.com>
19824
19825         * modules/havelib: New module.
19826
19827         * modules/gettext, modules/iconv, modules/lock, modules/readline:
19828         Use havelib.
19829
19830 2005-09-02  Paul Eggert  <eggert@cs.ucla.edu>
19831
19832         Check for arithmetic overflow when calculating sizes, to prevent
19833         some buffer-overflow issues.  These patches are conservative, in the
19834         sense that when I couldn't determine whether an overflow was possible,
19835         I inserted a run-time check.
19836         * lib/regex_internal.h (re_xmalloc, re_xrealloc, re_x2realloc): New
19837         macros.
19838         (SIZE_MAX) [!defined SIZE_MAX]: New macro.
19839         (re_alloc_oversized, re_x2alloc_oversized, re_xnmalloc):
19840         (re_xnrealloc, re_x2nrealloc): New inline functions.
19841         * lib/regcomp.c (init_dfa, analyze, build_range_exp,
19842         parse_bracket_exp):
19843         (build_equiv_class, build_charclass): Check for arithmetic overflow
19844         in size expression calculations.
19845         * lib/regex_internal.c (re_string_realloc_buffers):
19846         (build_wcs_upper_buffer, re_node_set_add_intersect):
19847         (re_node_set_init_union, re_node_set_insert, re_node_set_insert_last):
19848         (re_dfa_add_node, register_state): Likewise.
19849         * lib/regexec.c (re_search_stub, re_copy_regs, re_search_internal):
19850         (prune_impossible_nodes, push_fail_stack, set_regs, check_arrival):
19851         (build_trtable, extend_buffers, match_ctx_init, match_ctx_add_entry):
19852         (match_ctx_add_subtop, match_ctx_add_sublast): Likewise.
19853
19854 2005-09-02  Paul Eggert  <eggert@cs.ucla.edu>
19855
19856         * modules/inttostr (Files): Add m4/inttypes_h.m4, m4/stdint_h.m4,
19857         m4/ulonglong.m4.  Problem reported by Martin Lambers.
19858
19859 2005-09-02  Bruno Haible  <bruno@clisp.org>
19860
19861         Support for lib vs. lib64 distinction on biarch platforms.
19862         * m4/lib-prefix.m4 (AC_LIB_PREPARE_MULTILIB): New macro.
19863         (AC_LIB_PREFIX): Require it. Use $acl_libdirstem instead of 'lib'.
19864         * m4/lib-link.m4 (AC_LIB_LINKFLAGS_BODY): Likewise.
19865
19866 2005-09-02  Bruno Haible  <bruno@clisp.org>
19867
19868         * gnulib-tool (import): In the other first-use case, provide defaults
19869         as well.
19870
19871 2005-09-02  Bruno Haible  <bruno@clisp.org>
19872
19873         * config/srclist.txt: lib-link.m4 and lib-prefix.m4 currently have
19874         patches not yet found in the latest gettext release.
19875
19876 2005-09-01  Paul Eggert  <eggert@cs.ucla.edu>
19877
19878         * lib/glob.c (GET_LOGIN_NAME_MAX): Renamed from LOGIN_NAME_MAX,
19879         to avoid a collision with bits/local_lim.h in glibc.
19880         All uses changed.  Problem reported by Dmitry V. Levin in
19881         <http://sources.redhat.com/bugzilla/show_bug.cgi?id=1060>.
19882
19883         * lib/regex_internal.c (build_wcs_upper_buffer): Fix portability
19884         bugs in int versus size_t comparisons.
19885         (re_string_context_at): Fix bug where the code assumed that
19886         Idx is signed.
19887
19888         Use bool where appropriate.
19889         * lib/regcomp.c (re_set_fastmap): ICASE arg is bool, not int.
19890         All callers changed.
19891         (calc_eclosure_iter): Likewise, for ROOT arg.
19892         (parse_bracket_element): Likewise, for ACCEPT_HYPHEN arg.
19893         (build_charclass_op): Likewise, for NON_MATCH arg.
19894         * lib/regex_internal.c (re_string_allocate, re_string_construct):
19895         (re_string_construct_common): Likewise, for ICASE arg.
19896         * lib/regexec.c (re_search_2_stub, re_search_stub):
19897         Likewise, for RET_LEN arg.
19898         (check_matching): Likewise, for FL_LONGEST_MATCH arg.
19899         (set_regs): Likewise, for FL_BACKTRACK arg.
19900         * lib/regcomp.c (re_compile_fastmap_iter, optimize_utf8):
19901         (duplicate_node_closure, calc_inveclosure, calc_eclosure):
19902         (calc_eclosure_iter, parse_bracket_exp):
19903         Use bool for internal variables that are booleans.
19904         * lib/regexec.c (re_search_internal, check_matching,
19905         proceed_next_node):
19906         (set_regs, build_sifted_states, sift_states_bkref):
19907         (check_arrival_add_next_nodes, check_arrival_expand_ecl_sub):
19908         (expand_bkref_cache, build_trtable, group_nodes_into_DFAstates):
19909         (find_collation_sequence_value):
19910         Likewise.
19911         * lib/regex_internal.c (re_node_set_insert, re_node_set_insert_last):
19912         (re_node_set_compare):
19913         Return bool, not int. All callers changed.
19914         * lib/regexec.c (check_halt_node_context, check_dst_limits):
19915         (build_trtable, check_node_accept): Likewise.
19916         * lib/regex_internal.h: Include stdbool.h.
19917
19918         Fix bugs uncovered when converting to bool.
19919         * lib/regcomp.c (calc_eclosure_iter): Check for storage allocation
19920         failure instead of charging ahead blindly.
19921         * lib/regex_internal.c (register_state): Likewise.
19922         * lib/regexec.c (re_search_2_stub): Use simpler method than boolean
19923         for freeing internal storage.
19924         (group_nodes_into_DFA_states): Use unsigned int, not int, for
19925         bitset pieces used as boolean, to avoid undefined behavior
19926         on hosts that do int overflow checking.
19927
19928 2005-09-01  Paul Eggert  <eggert@cs.ucla.edu>
19929
19930         * config/srclist.txt: Add glibc bugs 1285-1287.
19931
19932 2005-09-01  Jim Meyering  <jim@meyering.net>
19933
19934         * m4/lchown.m4: Require gl_FUNC_CHOWN, for the definition of
19935         CHOWN_MODIFIES_SYMLINK, which is used by lchown.c.
19936         Require gl_STAT_MACROS, too.
19937
19938 2005-09-01  Bruno Haible  <bruno@clisp.org>
19939
19940         * gnulib-tool (import): In the first-use case, provide defaults.
19941
19942 2005-09-01  Bruno Haible  <bruno@clisp.org>
19943
19944         * gnulib-tool (func_import): Remove the .tmp files.
19945
19946 2005-09-01  Bruno Haible  <bruno@clisp.org>
19947
19948         * gnulib-tool (func_import): Fix handling of symbolic links.
19949
19950 2005-08-31  Paul Eggert  <eggert@cs.ucla.edu>
19951
19952         On 64-bit hosts (where size_t is 64 bits and int is 32 bits), the
19953         old glibc regex code mishandles strings longer than 2**31 bytes.
19954         This patch fixes this when the regex code is used in gnulib
19955         (i.e., outside glibc).
19956
19957         This patch should not affect the use of the regex code inside
19958         glibc.  No doubt this problem also needs to be handled for glibc
19959         as well, but the result will be an incompatible change to the
19960         glibc ABI, and the old ABI will have to be supported too.  That
19961         can be the the subject for another patch.
19962
19963         * lib/regex.h (_REGEX_LARGE_OFFSETS): New feature-test macro,
19964         governing whether the rest of this patch is active.  By default,
19965         the macro is disabled and the patch has no effect.
19966         (regoff_t) [defined _REGEX_LARGE_OFFSETS]: Define to off_t, not int.
19967         (__re_idx_t, __re_size_t, __re_long_size_t): New types.
19968         (struct re_pattern_buffer, re_search, re_search_2, re_match):
19969         (re_match_2, re_set_registers): Use the new types.
19970         * lib/regex_internal.h (Idx, re_hashval_t): New types.
19971         (REG_MISSING, REG_ERROR, REG_VALID_INDEX, REG_VALID_NONZERO_INDEX):
19972         New macros.
19973         (re_node_set, re_charset_t, re_token_t, re_string_realloc_buffers):
19974         (re_string_context_at, bin_tree_t, re_dfastate_t):
19975         (struct re_state_table_entry, state_array_t, re_sub_match_last_t):
19976         (re_sub_match_top_t, re_match_context_t, re_sift_context_t):
19977         (struct re_fail_stack_ent_t, struct re_fail_stack_t, struct re_dfa_t):
19978         (re_string_char_size_at, re_string_wchar_at):
19979         (re_string_elem_size_at):
19980         Use the new types and macros to port to 64-bit hosts.
19981         Use unsigned types for internal values, so that the code
19982         mostly works even for arrays larger than SSIZE_MAX.
19983         * lib/regcomp.c (re_compile_internal, init_dfa, duplicate_node):
19984         (search_duplicated_node, calc_eclosure_iter, fetch_number):
19985         (parse_reg_exp, parse_branch, parse_expression, parse_sub_exp):
19986         (build_equiv_class, build_charclass, re_compile_fastmap_iter):
19987         (free_dfa_content, create_initial_state, optimize_utf8, analyze):
19988         (optimize_subexps, calc_first, link_nfa_nodes, duplicate_node_closure):
19989         (calc_inveclosure, parse_dup_op, build_range_exp):
19990         (build_collating_symbol, parse_bracket_exp, build_charclass_op):
19991         (fetch_number, create_token_tree, mark_opt_subexp):
19992         Likewise.
19993         * lib/regex_internal.c (re_string_construct_common,
19994         create_ci_newstate):
19995         (create_cd_newstate, re_string_allocate, re_string_construct):
19996         (re_string_realloc_buffers, build_wcs_upper_buffer):
19997         (re_string_skip_chars, build_upper_buffer, re_string_translate_buffer):
19998         (re_string_reconstruct, re_string_peek_byte_case):
19999         (re_string_fetch_byte_case, re_string_context_at):
20000         (re_node_set_alloc, re_node_set_init_1, re_node_set_init_2):
20001         (re_node_set_init_copy, re_node_set_add_intersect):
20002         (re_node_set_init_union, re_node_set_merge, re_node_set_insert):
20003         (re_node_set_insert_last, re_node_set_compare, re_node_set_contains):
20004         (re_node_set_remove_at, re_dfa_add_node, calc_state_hash):
20005         (re_acquire_state, re_acquire_state_context, register_state):
20006         Likewise.
20007         * lib/regex.c (match_ctx_init, match_ctx_add_entry,
20008         search_cur_bkref_entry):
20009         (match_ctx_add_subtop, match_ctx_add_sublast, sift_ctx_init):
20010         (re_search_internal, re_search_2_stub, re_search_stub)
20011         (re_copy_regs, check_matching, check_halt_state_context, update_regs):
20012         (push_fail_stack, sift_states_iter_mb, build_sifted_states):
20013         (update_cur_sifted_state, check_dst_limits):
20014         (check_dst_limits_calc_pos_1, check_dst_limits_calc_pos):
20015         (check_subexp_limits, sift_states_bkref, merge_state_array):
20016         (check_subexp_matching_top, get_subexp, get_subexp_sub):
20017         (find_subexp_node, check_arrival, check_arrival_add_next_nodes):
20018         (check_arrival_expand_ecl, check_arrival_expand_ecl_sub):
20019         (expand_bkref_cache, check_node_accept_bytes):
20020         (group_nodes_into_DFAstates, check_node_accept, regexec, re_match):
20021         (re_search, re_match_2, re_search_2, prune_impossible_nodes):
20022         (acquire_init_state_context, check_halt_node_context):
20023         (proceed_next_node, pop_fail_stack, set_regs, free_fail_stack_return):
20024         (sift_states_backward, clean_state_log_if_needed):
20025         (sub_epsilon_src_nodes, add_epsilone_src_nodes, merge_state_with_log):
20026         (find_recover_state, transit_state_sb, transit_state_mb):
20027         (transit_state_bkref, build_trtable, match_ctx_clean):
20028         Likewise.
20029         * lib/regcomp.c (parse_dup_op): Add an extra test if Idx is unsigned,
20030         to work around an assumption that REG_MISSING is negative.
20031
20032         * lib/regcomp.c (re_comp) [defined _REGEX_RE_COMP || defined _LIBC]:
20033         (seek_collating_symbol_entry) [defined _LIBC]:
20034         (lookup_collation_sequence_value) [defined _LIBC]:
20035         (build_range_exp, build_collating_symbol) [defined _LIBC]:
20036         Use prototypes rather than old-style function definitions.
20037         * lib/regexec.c (re_exec) [defined _REGEX_RE_COMP || defined _LIBC]:
20038         (transit_state_sb) [0]:
20039         (find_collation_sequence_value) [defined _LIBC]: Likewise.
20040
20041         * lib/regexec.c (re_search_internal): Simplify update of rm_so and
20042         rm_eo.
20043
20044         * lib/regcomp.c (re_compile_fastmap_iter, init_dfa, init_word_char):
20045         (optimize_subexps, lower_subexp):
20046         Don't assume 1<<31 has defined behavior on hosts with 32-bit int,
20047         since the signed shift might overflow.  Use 1u<<31 instead.
20048         * lib/regex_internal.h (bitset_set, bitset_clear, bitset_contain):
20049         Likewise.
20050         * lib/regexec.c (check_dst_limits_calc_pos_1,
20051         check_subexp_matching_top): Likewise.
20052
20053         * lib/regcomp.c (optimize_subexps, lower_subexp):
20054         Use CHAR_BIT rather than 8, for clarity.
20055         * lib/regexec.c (check_dst_limits_calc_pos_1):
20056         (check_subexp_matching_top): Likewise.
20057         * lib/regcomp.c (init_dfa): Make table_size unsigned, so that we don't
20058         have to worry about portability issues when shifting it left.
20059         Remove no-longer-needed test for table_size > 0.
20060         * lib/regcomp.c (parse_sub_exp): Do not shift more bits than there are
20061         in a word, as the resulting behavior is undefined.
20062         * lib/regexec.c (check_dst_limits_calc_pos_1): Likewise;
20063         in one case, a <= should have been an <, and in another case the
20064         whole test was missing.
20065         * lib/regex_internal.h (BYTE_BITS): Remove.  All uses changed to
20066         the standard name CHAR_BIT.
20067         * lib/regexec.c (match_ctx_add_entry): Don't assume that ~0 == -1;
20068         this is not true on one's complement and signed-magnitude hosts.
20069
20070         * lib/regex_internal.h (re_sub_match_top_t): Remove unused member
20071         next_last_offset.
20072         (struct re_dfa_t): Remove unused member states_alloc.
20073         * lib/regcomp.c (init_dfa): Don't initialize unused members.
20074
20075 2005-08-31  Paul Eggert  <eggert@cs.ucla.edu>
20076
20077         * m4/regex.m4 (gl_REGEX): Require AC_SYS_LARGEFILE, Define
20078         _REGEX_LARGE_OFFSETS).  Test for regoff_t/off_t bug in 64-bit
20079         and large-file glibc and in 32-bit large-file Solaris.
20080
20081 2005-08-31  Paul Eggert  <eggert@cs.ucla.edu>
20082
20083         * lib/regex_internal.c (re_string_reconstruct): Don't assume buffer
20084         lengths fit in regoff_t; this isn't true if regoff_t is the same
20085         width as size_t.
20086         * lib/regex.c (re_search_internal): 5th arg is LAST_START
20087         (= START + RANGE) instead of RANGE.  This avoids overflow
20088         problems when regoff_t is the same width as size_t.
20089         All callers changed.
20090         (re_search_2_stub): Check for overflow when adding the
20091         sizes of the two strings.
20092         (re_search_stub): Check for overflow when adding START
20093         to RANGE; if it occurs, substitute the extreme value.
20094
20095 2005-08-31  Paul Eggert  <eggert@cs.ucla.edu>
20096
20097         * config/srclist.txt: Add glibc bugs 1273, 1278-1282, 1284.
20098
20099 2005-08-31  Jim Meyering  <jim@meyering.net>
20100
20101         * lib/regcomp.c (search_duplicated_node): Make first pointer arg
20102         a pointer-to-const.
20103         * lib/regex_internal.c (create_ci_newstate, create_cd_newstate):
20104         (register_state): Likewise.
20105         * lib/regexec.c (search_cur_bkref_entry, check_dst_limits):
20106         (check_dst_limits_calc_pos_1, check_dst_limits_calc_pos):
20107         (group_nodes_into_DFAstates): Likewise.
20108
20109 2005-08-31  Jim Meyering  <jim@meyering.net>
20110
20111         * check-module: Add a FIXME comment.
20112
20113 2005-08-31  Eric Blake  <ebb9@byu.net>
20114
20115         * modules/unistd-safer (Files): Add unistd--.h.
20116         * modules/stdio-safer (Files): Add stdio--.h.
20117
20118 2005-08-31  Derek Price  <derek@ximbiot.com>
20119
20120         * lib/getdelim.c (getdelim): Return EOF on EOF.
20121         Reported by Larry Jones <lawrence.jones@ugs.com>.
20122
20123 2005-08-31  Bruno Haible  <bruno@clisp.org>
20124
20125         Avoid unnecessary diffs in the generated lib/Makefile.am.
20126         * gnulib-tool (func_emit_lib_Makefile_am): Don't write the cmd into
20127         the generated files.
20128         (func_import): Don't set cmd.
20129
20130 2005-08-31  Bruno Haible  <bruno@clisp.org>
20131
20132         * lib/strstr.c: Include <stddef.h>, for NULL.
20133         * lib/strcasestr.c: Likewise.
20134         Reported by Yoann Vandoorselaere <yoann.v@prelude-ids.com>.
20135
20136 2005-08-31  Bruno Haible  <bruno@clisp.org>
20137
20138         * gnulib-tool: New option --macro-prefix.
20139         (func_import): Use macro_prefix.
20140         (import): Handle option --macro-prefix.
20141
20142 2005-08-31  Bruno Haible  <bruno@clisp.org>
20143
20144         * gnulib-tool (import): Rename most ac_* variables to cached_*.
20145         Also use new variables cached_lgpl, cached_libtool.
20146
20147 2005-08-31  Bruno Haible  <bruno@clisp.org>
20148
20149         * gnulib-tool (func_import): Require AC_GNU_SOURCE etc. instead of
20150         always instantiating them.
20151
20152 2005-08-31  Bruno Haible  <bruno@clisp.org>
20153
20154         * gnulib-tool (func_import): Read the previous cached settings
20155         from gnulib-cache.m4 and gnulib-comp.m4. Remove files that were
20156         earlier added by gnulib but are now dropped. Warn when a gnulib file
20157         overwrites a non-gnulib file.
20158
20159 2005-08-31  Bruno Haible  <bruno@clisp.org>
20160
20161         * gnulib-tool (func_import): Generate two files gnulib-cache.m4 and
20162         gnulib-comp.m4 instead of a single gnulib.m4, to make it easy for
20163         projects that don't keep autogenerated files in CVS. Put into
20164         actioncmd only the specified modules, not the transitive closure.
20165
20166 2005-08-31  Bruno Haible  <bruno@clisp.org>
20167
20168         * gnulib-tool (func_import): Fix defaulting of $libname and $libtool.
20169         Create directories that shall be filled.
20170         (import): Don't look for gl_* macros in configure.ac. Recurse across
20171         all directories containing a gnulib-cache.m4 files, if meaningful.
20172
20173 2005-08-31  Bruno Haible  <bruno@clisp.org>
20174
20175         * gnulib-tool (func_import): Emit also a stub for gl_LIBTOOL.
20176         (import): Set seen_libtool when we see gl_LIBTOOL.
20177
20178 2005-08-31  Bruno Haible  <bruno@clisp.org>
20179
20180         * gnulib-tool (func_import): Also copy m4/gnulib-tool.m4. Omit
20181         declaration macro definitions from generated gnulib.m4.
20182
20183 2005-08-30  Oskar Liljeblad  <oskar@osk.mine.nu>
20184
20185         * lib/iconvme.h: Add prototype for iconv_alloc.
20186
20187 2005-08-29  Simon Josefsson  <jas@extundo.com>
20188
20189         * lib/iconvme.c: Fix errno.
20190
20191 2005-08-29  Bruno Haible  <bruno@clisp.org>
20192
20193         * gnulib-tool: Enclose all occurrences of $destdir in "...", so
20194         that it works when the directory contains spaces.
20195
20196 2005-08-29  Bruno Haible  <bruno@clisp.org>
20197
20198         * gnulib-tool (import): Avoid unnecessary spaces in $avoidlist.
20199
20200 2005-08-29  Bruno Haible  <bruno@clisp.org>
20201
20202         * gnulib-tool (func_import): Emit more comments into gnulib.m4.
20203         Emit more advice.
20204
20205 2005-08-29  Bruno Haible  <bruno@clisp.org>
20206         and Stepan Kasal  <kasal@ucw.cz>
20207
20208         * check-module: If more parameters are given, check each of them
20209         separately; add more exceptions, as noted by Jim Meyering.
20210         (check_module): New procedure.
20211         (%exempt_header): Now contains all exceptions.
20212
20213 2005-08-29  Ben Pfaff  <blp@cs.stanford.edu>
20214
20215         * modules/byteswap (Makefile.am): Fix rule to not assume GNU make.
20216
20217 2005-08-29  Oskar Liljeblad  <oskar@osk.mine.nu>
20218
20219         * lib/iconvme.c: Split iconv_string into iconv_alloc.
20220
20221 2005-08-28  Bruno Haible  <bruno@clisp.org>
20222
20223         * m4/gnulib-tool.m4: New file.
20224
20225 2005-08-27  Jim Meyering  <jim@meyering.net>
20226
20227         * modules/unistd-safer (Files): Add pipe-safer.c.
20228         * modules/fcntl-safer (Files): Add creat-safer.c.
20229
20230 2005-08-27  Jim Meyering  <jim@meyering.net>
20231
20232         * m4/stdlib-safer.m4: New file.  From coreutils.
20233         * m4/stdio-safer.m4 (gl_STDIO_SAFER): Add stdio--.h.
20234         * m4/fcntl-safer.m4 (gl_FCNTL_SAFER): Add creat-safer.c to the
20235         AC_LIBSOURCES list and arrange to compile it via AC_LIBOBJ.
20236         * m4/unistd-safer.m4 (gl_UNISTD_SAFER): Likewise, add pipe-safer.c.
20237         Add pipe-safer.c and unistd--.h to the AC_LIBSOURCES list.
20238
20239 2005-08-27  Jim Meyering  <jim@meyering.net>
20240
20241         * lib/fopen-safer.c: Merge minor changes from coreutils.
20242         * lib/dup-safer.c: Likewise.
20243         * lib/fd-safer.c: Likewise.
20244
20245         Merge from coreutils.
20246         * lib/stdio--.h: New file.
20247         * lib/stdlib--.h: New file.
20248         * lib/mkstemp-safer.c: New file.
20249
20250         GNU tar needs these.
20251         * lib/pipe-safer.c: New file.
20252         * lib/creat-safer.c: New file.
20253         * lib/fcntl--.h (creat): Define to creat_safer.
20254         * lib/fcntl-safer.h: Include <sys/types.h> and declare creat_safer.
20255         * lib/unistd--.h (pipe): Define to pipe_safer.
20256         * lib/unistd-safer.h: Declare pipe_safer.
20257
20258 2005-08-26  Simon Josefsson  <jas@extundo.com>
20259
20260         * lib/getpass.c: Use _WIN32 instead of WIN32, suggested by Bruno
20261         Haible <bruno@clisp.org>.
20262
20263 2005-08-26  Paul Eggert  <eggert@cs.ucla.edu>
20264
20265         * lib/regex_internal.h: Remove all references to
20266         RE_NO_INTERNAL_PROTOTYPES; no longer neeeded now that we assume C89
20267         or better.
20268         (bitset_not, bitset_merge, bitset_not_merge):
20269         (bitset_mask, re_string_allocate, re_string_construct):
20270         (re_string_reconstruct, re_string_destruct, re_string_elem_size_at):
20271         (re_string_char_size_at, re_string_wchar_at, re_string_peek_byte_case):
20272         (re_string_fetch_byte_case, re_node_set_alloc, re_node_set_init_1):
20273         (re_node_set_init_2, re_node_set_init_copy, re_node_set_add_intersect):
20274         (re_node_set_init_union, re_node_set_merge, re_node_set_insert):
20275         (re_node_set_insert_last, re_node_set_compare, re_node_set_contains):
20276         (re_node_set_remove_at, re_dfa_add_node, re_acquire_state):
20277         (re_acquire_state_context):
20278         Remove unnecessary forward decls.
20279         (re_string_char_size_at, re_string_wchar_at, re_string_elem_size_at):
20280         Put __attribute at function definition,
20281         now that the function decl has been removed.
20282         * lib/regex_internal.c (re_string_peek_byte_case):
20283         (re_string_fetch_byte_case, re_node_set_compare, re_node_set_contains):
20284         Likewise.
20285
20286 2005-08-25  Stepan Kasal  <kasal@ucw.cz>
20287
20288         * m4/regex.m4: Add AC_PREREQ(2.50).
20289         (gl_REGEX): If --with-included-regex was given, skip the autodetection.
20290
20291 2005-08-25  Simon Josefsson  <jas@extundo.com>
20292
20293         * m4/getpass.m4: Check for termios.h, tcgetattr, tcsetattr, and
20294         __fsetlocking.
20295
20296 2005-08-25  Simon Josefsson  <jas@extundo.com>
20297
20298         * lib/getpass.c: Add WIN32 implementation.  Conditionalize use of
20299         termios.h, tcgetattr, tcsetattr and __fsetlocking.  Remove some
20300         GLIBC specific code.
20301
20302 2005-08-25  Paul Eggert  <eggert@cs.ucla.edu>
20303
20304         Make regex safe for g++.  This fixes one real bug (an "err"
20305         that should have been "*err").  g++ problem reported by
20306         Sam Steingold.
20307         * lib/regex_internal.h (re_calloc): New macro, consistent with
20308         re_malloc etc.  All callers of calloc changed to use re_calloc.
20309         * lib/regex_internal.c (build_wcs_upper_buffer): Return reg_errcode_t,
20310         not int.  All callers changed.
20311         * lib/regcomp.c (re_compile_fastmap_iter): Don't use
20312         alloca (mb_cur_max); just use an array of size MB_LEN_MAX.
20313         * lib/regexec.c (push_fail_stack): Use re_realloc, not realloc.
20314         (find_recover_state): Change "err" to "*err"; this fixes what
20315         appears to be a real bug.
20316         (check_arrival_expand_ecl_sub): Be consistent about reg_errcode_t
20317         versus int.
20318
20319 2005-08-25  Paul Eggert  <eggert@cs.ucla.edu>
20320
20321         * modules/regex (Depends-on): Add malloc, since the code
20322         assumes that !malloc(0) means failure.
20323
20324 2005-08-25  Paul Eggert  <eggert@cs.ucla.edu>
20325
20326         * lib/regexec.c (set_regs): Don't alloca with an unbounded size.
20327
20328         alloca modernization/simplification for regex.
20329         * lib/regex.c: Remove portability cruft for alloca.  This no longer
20330         needs to be at the start of the file, and can be moved into
20331         regex_internal.h and simplified.
20332         * lib/regex_internal.h: Include <alloca.h>.
20333         (__libc_use_alloca) [!defined _LIBC]: New macro.
20334         * lib/regexec.c (build_trtable): Remove "#ifdef _LIBC", since the code
20335         now works outside glibc.
20336
20337 2005-08-25  Paul Eggert  <eggert@cs.ucla.edu>
20338
20339         * config/srclist.txt: Add glibc bugs 1241, 1245.
20340
20341 2005-08-25  Jim Meyering  <jim@meyering.net>
20342
20343         * lib/open-safer.c: Include <config.h>.
20344         Otherwise, we'd lose LARGEFILE support in any file using
20345         e.g. "fcntl--.h"
20346
20347 2005-08-25  Bruno Haible  <bruno@clisp.org>
20348
20349         * m4/minmax.m4: Require autoconf 2.52.
20350         (gl_MINMAX_IN_HEADER): Add comments. Use m4_pushdef/m4_popdef instead
20351         of define/undefine. Use AS_TR_SH and AS_TR_CPP as more robust
20352         alternatives of translit over the alphabet.
20353         Based on a patch from Stepan Kasal <kasal@ucw.cz>.
20354
20355 2005-08-24  Simon Josefsson  <jas@extundo.com>
20356
20357         * tests/test-getpass.c: New file.
20358
20359 2005-08-24  Paul Eggert  <eggert@cs.ucla.edu>
20360
20361         * m4/regex.m4 (gl_REGEX): Use POSIX-compliant spellings when testing
20362         for GNU regex features.
20363
20364 2005-08-24  Paul Eggert  <eggert@cs.ucla.edu>
20365
20366         * lib/regcomp.c (regerror): 2nd arg is 'restrict', as per POSIX.
20367         * lib/regex.h (regerror): Likewise.
20368
20369         * lib/regex.c: Do not include <sys/types.h>, as POSIX no longer
20370         requires this.  (The code never needed it.)
20371
20372         * lib/regcomp.c, regex_internal.c, regex_internal.h, regexec.c:
20373         All uses of recently-renamed identifiers changed to use the new,
20374         POSIX-compliant names.  The code will build and run just fine
20375         without these changes, but it's better to eat our own dog food
20376         and use the standard-conforming names.
20377
20378         * lib/regex.h: Fix a multitude of POSIX name space violations.
20379         These changes have an effect only for programs that define
20380         _POSIX_C_SOURCE, _POSIX_SOURCE, or _XOPEN_SOURCE; they
20381         do not change anything for programs compiled in the normal way.
20382         Also, there is no effect on the ABI.
20383
20384         (_REGEX_SOURCE): New macro.
20385         Do not include <stddef.h> if _XOPEN_SOURCE and VMS are both
20386         defined and _GNU_SOURCE is not; this fixes a name space violation.
20387
20388         Rename the following macros to obey POSIX requirements.
20389         The old names are still visible as macros if _REGEX_SOURCE is defined.
20390         (REG_BACKSLASH_ESCAPE_IN_LISTS): renamed from
20391         RE_BACKSLASH_ESCAPE_IN_LISTS.
20392         (REG_BK_PLUS_QM): renamed from RE_BK_PLUS_QM.
20393         (REG_CHAR_CLASSES): renamed from RE_CHAR_CLASSES.
20394         (REG_CONTEXT_INDEP_ANCHORS): renamed from RE_CONTEXT_INDEP_ANCHORS.
20395         (REG_CONTEXT_INDEP_OPS): renamed from RE_CONTEXT_INDEP_OPS.
20396         (REG_CONTEXT_INVALID_OPS): renamed from RE_CONTEXT_INVALID_OPS.
20397         (REG_DOT_NEWLINE): renamed from RE_DOT_NEWLINE.
20398         (REG_DOT_NOT_NULL): renamed from RE_DOT_NOT_NULL.
20399         (REG_HAT_LISTS_NOT_NEWLINE): renamed from RE_HAT_LISTS_NOT_NEWLINE.
20400         (REG_INTERVALS): renamed from RE_INTERVALS.
20401         (REG_LIMITED_OPS): renamed from RE_LIMITED_OPS.
20402         (REG_NEWLINE_ALT): renamed from RE_NEWLINE_ALT.
20403         (REG_NO_BK_BRACES): renamed from RE_NO_BK_BRACES.
20404         (REG_NO_BK_PARENS): renamed from RE_NO_BK_PARENS.
20405         (REG_NO_BK_REFS): renamed from RE_NO_BK_REFS.
20406         (REG_NO_BK_VBAR): renamed from RE_NO_BK_VBAR.
20407         (REG_NO_EMPTY_RANGES): renamed from RE_NO_EMPTY_RANGES.
20408         (REG_UNMATCHED_RIGHT_PAREN_ORD): renamed from
20409         RE_UNMATCHED_RIGHT_PAREN_ORD.
20410         (REG_NO_POSIX_BACKTRACKING): renamed from RE_NO_POSIX_BACKTRACKING.
20411         (REG_NO_GNU_OPS): renamed from RE_NO_GNU_OPS.
20412         (REG_DEBUG): renamed from RE_DEBUG.
20413         (REG_INVALID_INTERVAL_ORD): renamed from RE_INVALID_INTERVAL_ORD.
20414         (REG_IGNORE_CASE): renamed from RE_ICASE.  This renaming is a bit
20415         unusual, since we can't clash with the POSIX REG_ICASE.
20416         (REG_CARET_ANCHORS_HERE): renamed from RE_CARET_ANCHORS_HERE.
20417         (REG_CONTEXT_INVALID_DUP): renamed from RE_CONTEXT_INVALID_DUP.
20418         (REG_NO_SUB): renamed from RE_NO_SUB.
20419         (REG_SYNTAX_EMACS): renamed from RE_SYNTAX_EMACS.
20420         (REG_SYNTAX_AWK): renamed from RE_SYNTAX_AWK.
20421         (REG_SYNTAX_GNU_AWK): renamed from RE_SYNTAX_GNU_AWK.
20422         (REG_SYNTAX_POSIX_AWK): renamed from RE_SYNTAX_POSIX_AWK.
20423         (REG_SYNTAX_GREP): renamed from RE_SYNTAX_GREP.
20424         (REG_SYNTAX_EGREP): renamed from RE_SYNTAX_EGREP.
20425         (REG_SYNTAX_POSIX_EGREP): renamed from RE_SYNTAX_POSIX_EGREP.
20426         (REG_SYNTAX_ED): renamed from RE_SYNTAX_ED.
20427         (REG_SYNTAX_SED): renamed from RE_SYNTAX_SED.
20428         (_REG_SYNTAX_POSIX_COMMON): renamed from _RE_SYNTAX_POSIX_COMMON.
20429         (REG_SYNTAX_POSIX_BASIC): renamed from RE_SYNTAX_POSIX_BASIC.
20430         (REG_SYNTAX_POSIX_MINIMAL_BASIC): renamed from
20431         RE_SYNTAX_POSIX_MINIMAL_BASIC.
20432         (REG_SYNTAX_POSIX_EXTENDED): renamed from RE_SYNTAX_POSIX_EXTENDED.
20433         (REG_SYNTAX_POSIX_MINIMAL_EXTENDED): renamed from
20434         RE_SYNTAX_POSIX_MINIMAL_EXTENDED.
20435         (REG_DUP_MAX): renamed from RE_DUP_MAX.  No need to undef it.
20436         (REG_UNALLOCATED): Renamed from REGS_UNALLOCATED.
20437         (REG_REALLOCATE): Renamed from REGS_REALLOCATE.
20438         (REG_FIXED): Renamed from REGS_FIXED.
20439         (REG_NREGS): Renamed from RE_NREGS.
20440
20441         (REG_ICASE, REG_NEWLINE, REG_NOSUB): Do not depend on the values
20442         of other REG_* macros, since POSIX says the user is allowed to
20443         #undef these macros selectively.
20444
20445         (reg_errcode_t): Update comment stating what other tables need
20446         to be consistent.
20447
20448         Rename the following enum values to obey POSIX requirements.
20449         The old names are still visible as macros.
20450         (_REG_ENOSYS): Renamed from REG_ENOSYS.  Define even if _XOPEN_SOURCE
20451         is not defined, since GNU is supposed to be a superset of POSIX as
20452         much as possible, and since we want reg_errcode_t to be a signed
20453         type for implementation consistency.
20454         (_REG_NOERROR): Renamed from REG_NOERROR.
20455         (_REG_NOMATCH): Renamed from REG_NOMATCH.
20456         (_REG_BADPAT): Renamed from REG_BADPAT.
20457         (_REG_ECOLLATE): Renamed from REG_ECOLLATE.
20458         (_REG_ECTYPE): Renamed from REG_ECTYPE.
20459         (_REG_EESCAPE): Renamed from REG_EESCAPE.
20460         (_REG_ESUBREG): Renamed from REG_ESUBREG.
20461         (_REG_EBRACK): Renamed from REG_EBRACK.
20462         (_REG_EPAREN): Renamed from REG_EPAREN.
20463         (_REG_EBRACE): Renamed from REG_EBRACE.
20464         (_REG_BADBR): Renamed from REG_BADBR.
20465         (_REG_ERANGE): Renamed from REG_ERANGE.
20466         (_REG_ESPACE): Renamed from REG_ESPACE.
20467         (_REG_BADRPT): Renamed from REG_BADRPT.
20468         (_REG_EEND): Renamed from REG_EEND.
20469         (_REG_ESIZE): Renamed from REG_ESIZE.
20470         (_REG_ERPAREN): Renamed from REG_ERPAREN.
20471         (REG_ENOSYS, REG_NOERROR, REG_NOMATCH, REG_BADPAT, REG_ECOLLATE):
20472         (REG_ECTYPE, REG_EESCAPE, REG_ESUBREG, REG_EBRACK, REG_EPAREN):
20473         (REG_EBRACE, REG_BADBR, REG_ERANGE, REG_ESPACE, REG_BADRPT, REG_EEND):
20474         (REG_ESIZE, REG_ERPAREN): Now macros, not enum constants.
20475
20476         (_REG_RE_NAME, _REG_RM_NAME): New macros.
20477         (REG_TRANSLATE_TYPE): Renamed from RE_TRANSLATE_TYPE.  All uses
20478         changed.  But support the old name if the new one is not defined
20479         and if _REGEX_SOURCE.
20480
20481         Change the following member names in struct re_pattern_buffer.
20482         The old names are still supported if !_REGEX_SOURCE.
20483         The new names are always supported, regardless of _REGEX_SOURCE.
20484         (re_buffer): Renamed from buffer.
20485         (re_allocated): Renamed from allocated.
20486         (re_used): Renamed from used.
20487         (re_syntax): Renamed from syntax.
20488         (re_fastmap): Renamed from fastmap.
20489         (re_translate): Renamed from translate.
20490         (re_can_be_null): Renamed from can_be_null.
20491         (re_regs_allocated): Renamed from regs_allocated.
20492         (re_fastmap_accurate): Renamed from fastmap_accurate.
20493         (re_no_sub): Renamed from no_sub.
20494         (re_not_bol): Renamed from not_bol.
20495         (re_not_eol): Renamed from not_eol.
20496         (re_newline_anchor): Renamed from newline_anchor.
20497
20498         Change the following member names in struct re_registers.
20499         The old names are still supported if !_REGEX_SOURCE.
20500         The new names are always supported, regardless of _REGEX_SOURCE.
20501         (rm_num_regs): Renamed from num_regs.
20502         (rm_start): Renamed from start.
20503         (rm_end): Renamed from end.
20504
20505         (re_set_syntax, re_compile_pattern, re_compile_fastmap):
20506         (re_search, re_search_2, re_match, re_match_2, re_set_registers):
20507         Prepend __ to parameter names.
20508
20509         Undo yesterday's changes.
20510
20511 2005-08-24  Paul Eggert  <eggert@cs.ucla.edu>
20512
20513         * config/srclist.txt: Remove glibc bug 1233 and add 1236, which
20514         supersedes it. Add glibc bugs 1237, 1238, 1240.  Comment out
20515         lib/regex.c.
20516
20517 2005-08-24  Jim Meyering  <jim@meyering.net>
20518
20519         Sync from coreutils.
20520         * m4/fcntl-safer.m4: New file.
20521
20522         * m4/xgetcwd.m4: Use AC_LIBSOURCES and AC_LIBOBJ to indicate source
20523         and object files for this module.
20524
20525 2005-08-24  Jim Meyering  <jim@meyering.net>
20526
20527         Sync from coreutils.
20528         * lib/fcntl--.h, lib/fcntl-safer.h, lib/open-safer.c: New files.
20529
20530 2005-08-24  Jim Meyering  <jim@meyering.net>
20531
20532         * modules/xgetcwd (Makefile.am): Remove `lib_SOURCES += ...' line,
20533         now that xgetcwd.m4 requires xgetcwd.c and xgetcwd.h.
20534
20535 2005-08-24  Jim Meyering  <jim@meyering.net>
20536
20537         * modules/fcntl-safer: New module.
20538         * modules/fts (Depends-on): Add fcntl-safer.
20539         * MODULES.html.sh (File descriptor based Input/Output):
20540         Add fcntl-safer.
20541
20542 2005-08-24  Bruno Haible  <bruno@clisp.org>
20543
20544         Support for unit test modules.
20545         * modules/README: Mention tests modules.
20546         * modules/TEMPLATE-TESTS: New file.
20547         * gnulib-tool: New options --extract-tests-module, --with-tests and
20548         --tests-base (unused for the moment).
20549         (testsbase, inctests): New variables.
20550         (func_all_modules): Exclude TEMPLATE-TESTS and *-tests.
20551         (func_verify_module): Exclude TEMPLATE-TESTS.
20552         (func_verify_nontests_module, func_verify_tests_module): New functions.
20553         (func_get_dependencies): Add implicit dependency for tests modules.
20554         (func_get_tests_module): New function.
20555         (func_modules_transitive_closure): When --with-tests was specified,
20556         include the unit tests as well, unless explicitly avoided.
20557         (func_emit_lib_Makefile_am): Ignore the tests modules here.
20558         (func_emit_tests_Makefile_am): New function.
20559         (func_create_testdir): When --with-tests was specified, emit a
20560         tests/ directory.
20561         * MODULES.html.sh (Future developments): Update.
20562
20563 2005-08-24  Bruno Haible  <bruno@clisp.org>
20564
20565         * modules/tls-tests: New file.
20566         * tests/test-tls.c: New file, from GNU gettext.
20567
20568 2005-08-24  Bruno Haible  <bruno@clisp.org>
20569
20570         * modules/lock-tests: New file.
20571         * tests/test-lock.c: New file, from GNU gettext.
20572
20573 2005-08-24  Bruno Haible  <bruno@clisp.org>
20574
20575         * lib/lock.h: Add multiple inclusion guard.
20576         * lib/tls.h: Add multiple inclusion guard.
20577
20578 2005-08-24  Bruno Haible  <bruno@clisp.org>
20579
20580         * gnulib-tool: Add support for the --aux-dir option to
20581         --create-testdir, --create-megatestdir, --test, --megatest.
20582         (func_create_testdir, func_create_megatestdir): Optionally emit a
20583         AC_CONFIG_AUX_DIR directive.
20584         (create-testdir, create-megatestdir, test, megatest): Provide a
20585         default value for $auxdir.
20586
20587 2005-08-24  Bruno Haible  <bruno@clisp.org>
20588
20589         * gnulib-tool (import): Use compound statement instead of subshell
20590         where possible.
20591
20592 2005-08-24  Bruno Haible  <bruno@clisp.org>
20593
20594         * gnulib-tool (import): Change --aux-dir default to "build-aux".
20595
20596 2005-08-24  Bruno Haible  <bruno@clisp.org>
20597
20598         * gnulib-tool (func_version): Update.
20599
20600 2005-08-24  Bruno Haible  <bruno@clisp.org>
20601
20602         * gnulib-tool (func_import, func_create_testdir,
20603         func_create_megatestdir): Quote all autoconf macro arguments.
20604
20605 2005-08-24  Bruno Haible  <bruno@clisp.org>
20606
20607         * gnulib-tool (func_create_megatestdir): Call autoreconf without the
20608         option --force, because --force causes the aclocal.m4 of each
20609         subdirectory to be newer than the corresponding config.h.in.
20610
20611 2005-08-23  Paul Eggert  <eggert@cs.ucla.edu>
20612
20613         * m4/regex.m4 (gl_INCLUDED_REGEX): Remove; no longer used.
20614         All contents moved to gl_REGEX.
20615         (gl_REGEX): Don't bother checking whether lib/regex.c exists;
20616         assume that it does.
20617
20618 2005-08-23  Paul Eggert  <eggert@cs.ucla.edu>
20619
20620         * lib/regex.h (REG_NOSYS)
20621         [!defined _XOPEN_SOURCE && 200112L <= _POSIX_C_SOURCE]:
20622         Define, since POSIX requires it as of 2001.
20623         (_REG_ENOSYS)
20624         [! (defined _XOPEN_SOURCE || 200112L <= _POSIX_C_SOURCE)]:
20625         New private symbol, used to keep the enum signed in all cases.
20626         * lib/regex.h (RE_NO_EMPTY_RANGES): Fix doc bug reported by James
20627         Youngman in
20628         <http://lists.gnu.org/archive/html/bug-gnulib/2005-07/msg00132.html>.
20629
20630         * lib/regex_internal.c (re_string_skip_chars, register_state):
20631         (calc_state_hash):
20632         Remove forward decls; no longer needed now that we use prototypes.
20633         * lib/regexec.c (acquire_init_state_context, check_halt_node_context):
20634         (proceed_next_node, pop_fail_stack, sub_epsilon_src_nodes):
20635         (clean_state_log_if_needed): Likewise.
20636
20637 2005-08-23  Paul Eggert  <eggert@cs.ucla.edu>
20638
20639         * config/srclist.txt: Add glibc bugs 1231-1233.
20640
20641 2005-08-20  Paul Eggert  <eggert@cs.ucla.edu>
20642
20643         Fix problems reported by Sam Steingold in
20644         <http://lists.gnu.org/archive/html/bug-gnulib/2005-08/msg00007.html>.
20645         * lib/regexec.c (sift_states_bkref): Fix portability bug: the code
20646         assumed that reg_errcode_t is a signed type, which is not
20647         necessarily true if _XOPEN_SOURCE is not defined.
20648         * lib/regex_internal.c (calc_state_hash): Put 'inline' before type,
20649         since some compilers warn about it otherwise.
20650
20651 2005-08-20  Paul Eggert  <eggert@cs.ucla.edu>
20652
20653         * lib/regcomp.c (create_initial_state): Remove duplicate decl.
20654         (init_word_char, create_initial_state, duplicate_node_closure):
20655         (fetch_token, peek_token_bracket, build_range_exp):
20656         (build_collating_symbol): Remove forward decls; no longer needed
20657         now that we use prototypes.
20658
20659         * lib/regcomp.c:
20660         (re_compile_pattern, re_set_syntax, re_compile_fastmap):
20661         (re_compile_fastmap_iter, regcomp, regerror, regfree):
20662         (re_compile_internal, init_dfa, init_word_char, free_workarea_compile):
20663         (create_initial_state, optimize_utf8, analyze, postorder, preorder):
20664         (optimize_subexps, lower_subexps, lower_subexp, calc_first, calc_next):
20665         (link_nfa_nodes, duplicate_node_closure, search_duplicated_node):
20666         (duplicate_node, calc_inveclosure, calc_eclosure, calc_eclosure_iter):
20667         (fetch_token, peek_token, peek_token_bracket, parse, parse_reg_exp):
20668         (parse_branch, parse_expression, parse_sub_exp, parse_dup_op):
20669         (build_range_exp, build_collating_symbol, parse_bracket_exp):
20670         (parse_bracket_element, parse_bracket_symbol, build_equiv_class):
20671         (build_charclass, build_charclass_op, fetch_number, create_tree):
20672         (create_token_tree, mark_opt_subexp, duplicate_tree):
20673         Use prototypes rather than old-style definitions.
20674
20675         * lib/regex_internal.c:
20676         (re_string_allocate, re_string_construct, re_string_realloc_buffers):
20677         (re_string_construct_common, build_wcs_buffer, build_wcs_upper_buffer):
20678         (re_string_skip_chars, build_upper_buffer, re_string_translate_buffer):
20679         (re_string_reconstruct, re_string_peek_byte_case):
20680         (re_string_fetch_byte_case, re_string_destruct, re_string_context_at):
20681         (re_node_set_alloc, re_node_set_init_1, re_node_set_init_2):
20682         (re_node_set_init_copy, re_node_set_add_intersect):
20683         (re_node_set_init_union, re_node_set_merge, re_node_set_insert):
20684         (re_node_set_insert_last, re_node_set_compare, re_node_set_contains):
20685         (re_node_set_remove_at, re_dfa_add_node, calc_state_hash):
20686         (re_acquire_state, re_acquire_state_context, register_state):
20687         (create_ci_newstate, create_cd_newstate, free_state):
20688         Likewise.
20689         * lib/regexec.c (regexec, re_match, re_search, re_match_2,
20690         re_search_2):
20691         (re_search_2_stub, re_search_stub, re_copy_regs, re_set_registers):
20692         (re_search_internal, prune_impossible_nodes):
20693         (acquire_init_state_context, check_matching, static):
20694         (check_halt_node_context, check_halt_state_context, proceed_next_node):
20695         (push_fail_stack, pop_fail_stack, set_regs, free_fail_stack_return):
20696         (update_regs, sift_states_backward, build_sifted_states):
20697         (clean_state_log_if_needed, merge_state_array):
20698         (update_cur_sifted_state, add_epsilon_src_nodes):
20699         (sub_epsilon_src_nodes, check_dst_limits, check_dst_limits_calc_pos_1):
20700         (check_dst_limits_calc_pos, check_subexp_limits, sift_states_bkref):
20701         (sift_states_iter_mb, transit_state, merge_state_with_log, static):
20702         (find_recover_state, check_subexp_matching_top, transit_state_mb):
20703         (transit_state_bkref, get_subexp, get_subexp_sub, find_subexp_node):
20704         (check_arrival, check_arrival_add_next_nodes):
20705         (check_arrival_expand_ecl, check_arrival_expand_ecl_sub):
20706         (expand_bkref_cache, build_trtable, group_nodes_into_DFAstates):
20707         (check_node_accept_bytes, check_node_accept, extend_buffers):
20708         (match_ctx_init, match_ctx_clean, match_ctx_free, match_ctx_add_entry):
20709         (search_cur_bkref_entry, match_ctx_add_subtop, match_ctx_add_sublast):
20710         (sift_ctx_init):
20711         Likewise.
20712
20713         * lib/regex_internal.h:
20714         (re_string_allocate, re_string_construct, re_string_reconstruct):
20715         (re_string_realloc_buffers, build_wcs_buffer, build_wcs_upper_buffer):
20716         (build_upper_buffer, re_string_translate_buffer, re_string_destruct):
20717         (re_string_elem_size_at, re_string_char_size_at, re_string_wchar_at):
20718         (re_string_context_at, re_string_peek_byte_case):
20719         (re_string_fetch_byte_case): Declare even if RE_NO_INTERNAL_PROTOTYPES
20720         is defined, since we now use prototypes always.
20721
20722         * lib/regex.h (_RE_ARGS): Remove.  No longer needed, since we assume
20723         C89 or better.  All uses removed.
20724
20725 2005-08-20  Paul Eggert  <eggert@cs.ucla.edu>
20726
20727         * config/srclist.txt: Add glibc bugs 1220-1227.
20728
20729 2005-08-20  Jim Meyering  <jim@meyering.net>
20730
20731         * lib/regexec.c (regexec, re_search_stub) [!_LIBC]: Omit declaration
20732         of unused local, dfa.
20733
20734 2005-08-20  Bruno Haible  <bruno@clisp.org>
20735
20736         * m4/regex.m4 (gl_PREREQ_REGEX): Require AC_GNU_SOURCE.
20737
20738 2005-08-19  Paul Eggert  <eggert@cs.ucla.edu>
20739
20740         * lib/regex_internal.c (re_string_realloc_buffers, re_node_set_insert):
20741         (re_node_set_insert_last, re_dfa_add_node):
20742         Rename local variables to avoid GCC shadowing warnings.
20743
20744 2005-08-19  Paul Eggert  <eggert@cs.ucla.edu>
20745
20746         * lib/regex_internal.c (re_acquire_state, re_acquire_state_context)
20747         [defined lint]: Suppress bogus uninitialized-variable warnings.
20748
20749         * lib/regcomp.c (duplicate_node): Return new index, not an error code,
20750         and let the caller return REG_ESPACE if out of space.  This
20751         removes an uninitialied-variable warning with GCC 4.0.1, and also
20752         avoids taking the address of a local variable.  All callers
20753         changed.
20754
20755 2005-08-19  Paul Eggert  <eggert@cs.ucla.edu>
20756
20757         * config/srclist.txt: Comment out $LIBCSRC/posix/regex_internal.c,
20758         $LIBCSRC/posix/regexec.c.
20759         Add glibc bug 1217 for regcomp.c.
20760
20761 2005-08-19  Jim Meyering  <jim@meyering.net>
20762
20763         * lib/regexec.c (proceed_next_node): Redo local variables to
20764         avoid GCC shadowing warnings.
20765
20766 2005-08-18  Bruno Haible  <bruno@clisp.org>
20767
20768         * lib/strstr.c (strstr): Fix return value in multibyte case.
20769         * lib/strcasestr.c (strcasestr): Likewise.
20770
20771 2005-08-17  Paul Eggert  <eggert@cs.ucla.edu>
20772
20773         * lib/regex.h: Remove useless space-before-tab.  From coreutils.
20774
20775 2005-08-17  Jim Meyering  <jim@meyering.net>
20776
20777         Make the %s format (seconds since the epoch) work for a negative
20778         number and when used with a zero-padded field width, e.g. %015s.
20779
20780         * lib/strftime.c (my_strftime): Move the `do_number_sign_and_padding'
20781         label so that it precedes the code to set `digits'.  Otherwise,
20782         %0Ns wouldn't work.  Before this change, `date -d @-22 +%05s' would
20783         print `00-22'.  Now, it prints `-0022', as it should.
20784
20785 2005-08-17  Bruno Haible  <bruno@clisp.org>
20786
20787         * modules/strstr (Files): Add m4/mbrtowc.m4.
20788         (Depends-on): Add mbuiter.
20789
20790 2005-08-17  Bruno Haible  <bruno@clisp.org>
20791
20792         * modules/strcasestr: New file.
20793         * MODULES.html.sh (String handling, based on ANSI C 89): Add
20794         strcasestr.
20795
20796 2005-08-17  Bruno Haible  <bruno@clisp.org>
20797
20798         * modules/strcase (Depends-on): Add mbuiter. Remove strnlen1, mbchar.
20799
20800 2005-08-17  Bruno Haible  <bruno@clisp.org>
20801
20802         * modules/mbuiter: New file.
20803         * MODULES.html.sh (Extended multibyte and wide character utilities):
20804         Add mbuiter.
20805
20806 2005-08-17  Bruno Haible  <bruno@clisp.org>
20807
20808         * m4/strstr.m4 (gl_FUNC_STRSTR): Use the replacement function always.
20809         (gl_PREREQ_STRSTR): Use gl_FUNC_MBRTOWC.
20810
20811 2005-08-17  Bruno Haible  <bruno@clisp.org>
20812
20813         * m4/strcasestr.m4: New file.
20814
20815 2005-08-17  Bruno Haible  <bruno@clisp.org>
20816
20817         * lib/strstr.h: Ignore HAVE_STRSTR, always declare the gnulib function.
20818         * lib/strstr.c: Completely rewritten, with multibyte locale support.
20819
20820 2005-08-17  Bruno Haible  <bruno@clisp.org>
20821
20822         * lib/strcasestr.h: New file.
20823         * lib/strcasestr.c: New file.
20824
20825 2005-08-17  Bruno Haible  <bruno@clisp.org>
20826
20827         * lib/strcasecmp.c: Use mbuiter.h.
20828
20829 2005-08-17  Bruno Haible  <bruno@clisp.org>
20830
20831         * lib/mbuiter.h: New file.
20832
20833 2005-08-16  Paul Eggert  <eggert@cs.ucla.edu>
20834
20835         * m4/getopt.m4 (gl_GETOPT_CHECK_HEADERS): Do not override the results
20836         of gl_GETOPT_SUBSTITUTE.  That way, if both gl_GETOPT_SUBSTITUTE
20837         and gl_GETOPT are both invoked via different paths (as happens
20838         with GNU tar CVS because it uses both argp and getopt), the former
20839         wins.
20840
20841 2005-08-16  Bruno Haible  <bruno@clisp.org>
20842
20843         * modules/tls: New file.
20844         * MODULES.html.sh (Multithreading): Add tls.
20845
20846 2005-08-16  Bruno Haible  <bruno@clisp.org>
20847
20848         * modules/strnlen1: New file.
20849         * MODULES.html.sh (String handling): Add strnlen1.
20850
20851 2005-08-16  Bruno Haible  <bruno@clisp.org>
20852
20853         * modules/strcase (Files): Add m4/mbrtowc.m4.
20854         (Depends-on): Add strnlen1, mbchar.
20855
20856 2005-08-16  Bruno Haible  <bruno@clisp.org>
20857
20858         * modules/mbiter: New file.
20859         * MODULES.html.sh (Extended multibyte and wide character utilities):
20860         Add mbiter.
20861
20862 2005-08-16  Bruno Haible  <bruno@clisp.org>
20863
20864         * modules/mbfile: New file.
20865         * MODULES.html.sh (Extended multibyte and wide character utilities):
20866         Add mbfile.
20867
20868 2005-08-16  Bruno Haible  <bruno@clisp.org>
20869
20870         * modules/mbchar: New file.
20871         * MODULES.html.sh (Extended multibyte and wide character utilities):
20872         New section.
20873
20874 2005-08-16  Bruno Haible  <bruno@clisp.org>
20875
20876         * m4/tls.m4: New file, from GNU gettext.
20877
20878 2005-08-16  Bruno Haible  <bruno@clisp.org>
20879
20880         * m4/strcase.m4 (gl_FUNC_STRCASECMP): Use the replacement function
20881         always.
20882         (gl_PREREQ_STRCASECMP): Use gl_FUNC_MBRTOWC.
20883
20884 2005-08-16  Bruno Haible  <bruno@clisp.org>
20885
20886         * m4/mbiter.m4: New file.
20887
20888 2005-08-16  Bruno Haible  <bruno@clisp.org>
20889
20890         * m4/mbfile.m4: New file.
20891
20892 2005-08-16  Bruno Haible  <bruno@clisp.org>
20893
20894         * m4/mbchar.m4: New file.
20895
20896 2005-08-16  Bruno Haible  <bruno@clisp.org>
20897
20898         * lib/tls.h: New file, from GNU gettext.
20899         * lib/tls.c: New file, from GNU gettext.
20900
20901 2005-08-16  Bruno Haible  <bruno@clisp.org>
20902
20903         * lib/strnlen1.h: New file.
20904         * lib/strnlen1.c: New file.
20905
20906 2005-08-16  Bruno Haible  <bruno@clisp.org>
20907
20908         * lib/strcasecmp.c (struct mbiter_multi): Remove at_end field.
20909         (mbi_init): Update.
20910         (mbi_avail, mbi_advance): Let the iteration end before the terminating
20911         NUL byte, not after it.
20912
20913 2005-08-16  Bruno Haible  <bruno@clisp.org>
20914
20915         * lib/strcase.h (strcasecmp): Add note in comments.
20916         * lib/strncasecmp.c: Use code from strcasecmp.c.
20917         * lib/strcasecmp.c: Use mbchar module. Define private mbiter variant.
20918         (strcasecmp): Work correctly in multibyte locales.
20919
20920 2005-08-16  Bruno Haible  <bruno@clisp.org>
20921
20922         * lib/mbiter.h: New file.
20923
20924 2005-08-16  Bruno Haible  <bruno@clisp.org>
20925
20926         * lib/mbfile.h: New file.
20927
20928 2005-08-16  Bruno Haible  <bruno@clisp.org>
20929
20930         * lib/mbchar.h: New file.
20931         * lib/mbchar.c: New file.
20932
20933 2005-08-16  Bruno Haible  <bruno@clisp.org>
20934
20935         * lib/mbchar.h (mb_cmp, mb_casecmp): Order the invalid characters after
20936         the valid ones. Makes the comparison operations transitive:
20937         cmp (a, b) < 0 && cmp (b, c) < 0 ==> cmp (a, c) < 0.
20938         * lib/strcasecmp.c (strcasecmp): Use mb_casecmp.
20939
20940 2005-08-15  Simon Josefsson  <jas@extundo.com>
20941
20942         * modules/ssize_t (License): Change to 'unlimited'.
20943
20944         * gnulib-tool (sed_extract_prog): Recognize 'unlimited' license.
20945
20946 2005-08-15  Paul Eggert  <eggert@cs.ucla.edu>
20947
20948         * config/srclist.txt: Comment out $LIBCSRC/posix/regex.h.
20949         Add comments for each pending glibc patch.
20950
20951 2005-08-15  Bruno Haible  <bruno@clisp.org>
20952
20953         * lib/regex.h (__restrict_arr): Don't define to __restrict if
20954         __cplusplus is defined.
20955
20956 2005-08-14  Jim Meyering  <jim@meyering.net>
20957
20958         Sync from coreutils.
20959
20960         * lib/fts-cycle.c (setup_dir, enter_dir, leave_dir, free_dir):
20961         Use the hash-table-based cycle-detection code not just when
20962         FTS_TIGHT_CYCLE_CHECK if specified, but also with FTS_LOGICAL.
20963         Reported by James Youngman in
20964         <http://lists.gnu.org/archive/html/bug-gnulib/2005-08/msg00011.html>.
20965         * lib/fts_.h: Mention that with FTS_LOGICAL, we use
20966         FTS_TIGHT_CYCLE_CHECK.
20967         * lib/fts.c (fts_cross_check) [FTS_DEBUG]:
20968         s/active_dir_ht/fts_cycle.ht/. This lets us compile with -DFTS_DEBUG,
20969         once again.
20970         * lib/fts.c [! _LIBC]: Include "lstat.h" rather than rolling our own.
20971         * lib/fts.c (fd_safer): Remove decl.
20972         Include fcntl--.h rather than unistd-safer.h
20973         (fts_safe_changedir): Don't call fd_safer; no longer needed
20974         now that we include fcntl--.h.
20975
20976 2005-08-12  Simon Josefsson  <jas@extundo.com>
20977
20978         * modules/getndelim2: Use ssize_t module.
20979         * modules/getnline: Likewise.
20980         * modules/safe-read: Likewise.
20981         * modules/xreadlink: Likewise.
20982
20983         * modules/ssize_t: New file.
20984
20985 2005-08-12  Simon Josefsson  <jas@extundo.com>
20986
20987         * m4/readline.m4: Look for termcap, curses or ncurses if required.
20988
20989 2005-08-12  Simon Josefsson  <jas@extundo.com>
20990
20991         * MODULES.html.sh (Support for systems lacking POSIX:2001): Add
20992         ssize_t.
20993
20994 2005-08-12  Simon Josefsson  <jas@extundo.com>
20995
20996         * MODULES.html.sh (Extra functions based on ANSI C 89: Misc): Add
20997         readline, getdelim and check_version.
20998         (Support for systems lacking ISO C 99: Sizes of integer types):
20999         Add size_max.
21000
21001 2005-08-12  Bruno Haible  <bruno@clisp.org>
21002
21003         * m4/readline.m4 (gl_FUNC_READLINE): Look for ncurses first.
21004
21005 2005-08-11  Simon Josefsson  <jas@extundo.com>
21006
21007         * modules/readline: New file.
21008
21009         * modules/strnlen (Files): Add strnlen.h.
21010
21011 2005-08-11  Simon Josefsson  <jas@extundo.com>
21012
21013         * m4/readline.m4: New file.
21014
21015 2005-08-11  Simon Josefsson  <jas@extundo.com>
21016
21017         * lib/readline.h, readline.c: New file.
21018
21019 2005-08-11  Simon Josefsson  <jas@extundo.com>
21020
21021         * doc/gnulib.texi (Initial import, Finishing touches): Mention
21022         gl_AVOID.
21023
21024 2005-08-11  Bruno Haible  <bruno@clisp.org>
21025
21026         * lib/strnlen.h (strnlen): Change parameter name to match comment.
21027
21028 2005-08-10  Stepan Kasal  <kasal@ucw.cz>
21029
21030         * m4/onceonly_2_57.m4: Really require Autoconf 2.57.
21031
21032 2005-08-10  Simon Josefsson  <jas@extundo.com>
21033
21034         * tests/test-iconvme.c: New file.
21035
21036 2005-08-10  Simon Josefsson  <jas@extundo.com>
21037
21038         * m4/strnlen.m4: New file.
21039
21040         * m4/strndup.m4: Don't check for strnlen declaration, done in
21041         strnlen.m4.
21042
21043 2005-08-10  Simon Josefsson  <jas@extundo.com>
21044
21045         * lib/strndup.c: Use strnlen.h.
21046
21047         * lib/strnlen.h: New file.
21048
21049 2005-08-08  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>  (tiny change)
21050
21051         * README: Typos.
21052
21053 2005-08-02  Simon Josefsson  <jas@extundo.com>
21054
21055         * modules/readline: New file.
21056
21057 2005-08-02  Simon Josefsson  <jas@extundo.com>
21058
21059         * modules/getdelim: New file.
21060
21061         * modules/getline: Rewrite, don't use getndelim2.
21062
21063 2005-08-02  Simon Josefsson  <jas@extundo.com>
21064
21065         * m4/getline.m4: Separate out getdelim stuff into separate module.
21066
21067         * m4/getdelim.m4: New file.
21068
21069 2005-08-02  Simon Josefsson  <jas@extundo.com>
21070
21071         * lib/getline.h, getline.c: Rewrite.
21072
21073         * lib/getdelim.h, lib/getdelim.c: New files, ported from glibc.
21074
21075 2005-07-31  Bruno Haible  <bruno@clisp.org>
21076
21077         * lib/lock.h (gl_lock_initializer): New macro.
21078         (gl_lock_define_initialized): Use it.
21079         (gl_rwlock_initializer): New macro.
21080         (gl_rwlock_define_initialized): Use it.
21081         (gl_recursive_lock_initializer): New macro.
21082         (gl_recursive_lock_define_initialized): Use it.
21083
21084 2005-07-30  Karl Berry  <karl@gnu.org>
21085
21086         * doc/gnulib.texi (Initial import): mention -I$(top_builddir)/lib.
21087         Report from Ben Pfaff, regarding getopt.
21088
21089 2005-07-26  Paul Eggert  <eggert@cs.ucla.edu>
21090
21091         Add support to getopt for Emacs, which doesn't use LIBOBJS in the
21092         normal way.
21093         * m4/getopt.m4 (gl_GETOPT_SUBSTITUTE_HEADER): New macro.
21094         (gl_GETOPT_SUBSTITUTE): Use it.  Invoke gl_PREREQ_GETOPT.
21095         (gl_GETOPT_IFELSE, gl_GETOPT_CHECK_HEADERS): New macros.
21096         (gl_GETOPT): Use the new macros.  Most of the implementation
21097         is moved to the new macros.  This is for programs like Emacs
21098         that don't want all the functionality of gl_GETOPT.
21099
21100 2005-07-26  Bruno Haible  <bruno@clisp.org>
21101
21102         * m4/lock.m4: Update from GNU gettext.
21103
21104 2005-07-26  Bruno Haible  <bruno@clisp.org>
21105
21106         * lib/lock.h: Update from GNU gettext.
21107         * lib/lock.c: Update from GNU gettext.
21108
21109 2005-07-25  Paul Eggert  <eggert@cs.ucla.edu>
21110
21111         * m4/regex.m4 (gl_INCLUDED_REGEX): Use AC_RUN_IFELSE instead of the
21112         obsolescent AC_TRY_RUN.  Include the default includes files, for
21113         'exit'.
21114
21115 2005-07-24  Bruno Haible  <bruno@clisp.org>
21116
21117         * modules/visibility: New file.
21118         * MODULES.html.sh (Misc): Add visibility.
21119
21120 2005-07-24  Bruno Haible  <bruno@clisp.org>
21121
21122         * m4/visibility.m4: New file.
21123
21124 2005-07-24  Bruno Haible  <bruno@clisp.org>
21125
21126         * doc/visibility.texi: New file.
21127
21128 2005-07-22  Bruno Haible  <bruno@clisp.org>
21129
21130         * modules/alloca-opt (Makefile.am): Remove explicit dependency on
21131         $(ALLOCA_H), redundant through BUILT_SOURCES.
21132         * modules/argz (Makefile.am): Remove explicit dependency on $(ARGZ_H),
21133         redundant through BUILT_SOURCES.
21134         * modules/byteswap (Makefile.am): Remove explicit dependency on
21135         $(BYTESWAP_H), redundant through BUILT_SOURCES.
21136         * modules/fnmatch (Makefile.am): Remove explicit dependency on
21137         $(FNMATCH_H), redundant through BUILT_SOURCES.
21138         * modules/getopt (Makefile.am): Remove explicit dependency on
21139         $(GETOPT_H), redundant through BUILT_SOURCES.
21140         * modules/glob (Makefile.am): Remove explicit dependency on $(GLOB_H),
21141         redundant through BUILT_SOURCES.
21142         * modules/poll (Makefile.am): Remove explicit dependency on $(POLL_H),
21143         redundant through BUILT_SOURCES.
21144         * modules/stdbool (Makefile.am): Remove explicit dependency on
21145         $(STDBOOL_H), redundant through BUILT_SOURCES.
21146         * modules/stdint (Makefile.am): Remove explicit dependency on
21147         $(STDINT_H), redundant through BUILT_SOURCES.
21148         * modules/sysexits (Makefile.am): Add $(SYSEXITS_H) to BUILT_SOURCES.
21149         Remove explicit dependency on $(SYSEXITS_H).
21150         Reported by Alexandre Duret-Lutz <adl@src.lip6.fr>.
21151
21152 2005-07-18  Simon Josefsson  <jas@extundo.com>
21153
21154         * lib/check-version.c (check_version): Accept identical versions too.
21155
21156 2005-07-18  Bruno Haible  <bruno@clisp.org>
21157
21158         * modules/lock: New file.
21159         * MODULES.html.sh (Multithreading): New section.
21160
21161 2005-07-18  Bruno Haible  <bruno@clisp.org>
21162
21163         * m4/lock.m4: New file, from GNU gettext.
21164
21165 2005-07-18  Bruno Haible  <bruno@clisp.org>
21166
21167         * lib/lock.h: New file, from GNU gettext.
21168         * lib/lock.c: New file, from GNU gettext.
21169
21170 2005-07-18  Bruno Haible  <bruno@clisp.org>
21171
21172         * lib/lock.h (gl_once_t): New type.
21173         (gl_once_define, gl_once): New macros.
21174         * lib/lock.c (fresh_once): New variable.
21175         (glthread_once, glthread_once_call, glthread_once_singlethreaded): New
21176         functions.
21177
21178 2005-07-16  Simon Josefsson  <jas@extundo.com>
21179
21180         * doc/gnulib.texi (Library version handling): Add ELF symbol collision
21181         workaround, suggested by Bruno.
21182
21183 2005-07-15  Paul Eggert  <eggert@cs.ucla.edu>
21184
21185         * modules/xalloc (Depends-on): Add xalloc-die.
21186         * modules/xvasprintf (Depends-on): Add xalloc-die.
21187
21188 2005-07-15  Paul Eggert  <eggert@cs.ucla.edu>
21189
21190         * lib/quotearg.c: Add translator comment suggested by Bruno Haible,
21191         with a minor change.
21192
21193 2005-07-15  Bruno Haible  <bruno@clisp.org>
21194
21195         * m4/poll.m4 (gl_FUNC_POLL): Check against MacOS X 10.4 poll() bug.
21196         When using lib/poll.c, define poll as rpl_poll.
21197
21198 2005-07-14  Paul Eggert  <eggert@cs.ucla.edu>
21199
21200         * modules/argp (Depends-on): Remove unlocked-io.
21201
21202 2005-07-14  Derek Price  <derek@ximbiot.com>
21203
21204         * m4/glob.m4 (gl_GLOB): Cache glob interface check result.  Add check
21205         for glob symlink bug.
21206
21207 2005-07-14  Bruno Haible  <bruno@clisp.org>
21208
21209         * m4/argp.m4 (gl_ARGP): Remove invocation of gl_FUNC_GLIBC_UNLOCKED_IO.
21210         Instead, test for *_unlocked function declarations directly.
21211
21212 2005-07-11  Simon Josefsson  <jas@extundo.com>
21213
21214         * modules/size_max: New file.
21215
21216         * modules/xsize: Depend on size_max module for size_max.m4.
21217
21218 2005-07-11  Simon Josefsson  <jas@extundo.com>
21219
21220         * lib/size_max.h: New file.
21221
21222 2005-07-11  Paul Eggert  <eggert@cs.ucla.edu>
21223
21224         * lib/version-etc-fsf.c (version_etc_copyright): Parameterize the
21225         copyright symbol and the year.
21226         * lib/version-etc.c (COPYRIGHT_YEAR): New constant.
21227         (version_etc_va): Use parameterized copyright notice.
21228         Reword to conform to the current GNU coding standards.
21229
21230 2005-07-11  Karl Berry  <karl@gnu.org>
21231
21232         * doc/gnulib.texi (Quoting): new node.
21233         (Initial import): more info, from Patrice.
21234
21235 2005-07-11  Bruno Haible  <bruno@clisp.org>
21236
21237         * gnulib-tool (func_usage): Document option --avoid.
21238         (Command line options): Handle --avoid.
21239         (func_acceptable): New function.
21240         (func_modules_transitive_closure): Use it.
21241
21242 2005-07-11  Bruno Haible  <bruno@clisp.org>
21243
21244         * MODULES.html.sh: Use shortcut URLs to the www.opengroup.org site.
21245         Reported by Jim Meyering.
21246
21247 2005-07-10  Bruno Haible  <bruno@clisp.org>
21248
21249         * m4/size_max.m4 (gl_SIZE_MAX): Cast ~(size_t)0 back to size_t.
21250         Needed when size_t is smaller than 'unsigned int'.
21251         Reported by Paul Eggert.
21252
21253 2005-07-09  Sergey Poznyakoff  <gray@gnu.org.ua>
21254
21255         * modules/argp (Depends-on): Add unlocked-io
21256
21257 2005-07-09  Sergey Poznyakoff  <gray@gnu.org.ua>
21258
21259         * lib/argp-namefrob.h: Include unlocked-io.h. Removed unnecessary
21260         block of defines.
21261
21262 2005-07-08  Paul Eggert  <eggert@cs.ucla.edu>
21263
21264         * config/srclist.txt: Comment out regcomp.c, since we have a porting
21265         fix now.
21266
21267 2005-07-08  Eric Blake  <ebb9@byu.net>  (tiny change)
21268         and Paul Eggert  <eggert@cs.ucla.edu>
21269
21270         * lib/regcomp.c (init_dfa, build_range_exp): Store __btowc value
21271         in wint_t, not wchar_t.  Remove now-unnecessary cast.
21272
21273 2005-07-07  Paul Eggert  <eggert@cs.ucla.edu>
21274
21275         * modules/regex (Files): Add lib/regex_internal.c,
21276         lib/regex_internal.h, lib/regexec.c, lib/regcomp.c, m4/codeset.m4.
21277         (Depends-on): Add extensions.
21278         (Makefile.am): Remove lib_SOURCES; now done by m4 code.
21279
21280 2005-07-07  Paul Eggert  <eggert@cs.ucla.edu>
21281
21282         * m4/backupfile.m4 (gl_BACKUPFILE): Use AC_CHECK_FUNCS_ONCE on
21283         pathconf.
21284         * m4/same.m4 (gl_SAME): Likewise.
21285         Require AC_SYS_LONG_FILE_NAMES; bug reported by Gerrit P. Haase.
21286
21287         * m4/regex.m4: Adjust to new libc regex implementation.
21288         (gl_INCLUDED_REGEX): Add AC_LIBSOURCES for
21289         all the .c and .h parts of (the new) regex.
21290         Quote the m4 stuff better.
21291         Check for RE_ICASE bug of old gnulib.
21292         Check for REG_STARTEND of recent libc.
21293         Rename local variables from jm_* to gl_*.
21294         Quote operand of "test -f".
21295         Say "recent enough" version of libc, not "version 2".
21296         (gl_PREREQ_REGEX): Remove AC_FUNC_ALLOCA, since alloca is a
21297         prerequisite module.  Remove AC_HEADER_STDC; no longer needed.
21298         Check for locale.h, isblank, mbrtowc, wcrtomb, wcscoll.
21299         Remove check for btowc, isascii.
21300         Require AM_LANGINFO_CODESET.
21301
21302 2005-07-07  Paul Eggert  <eggert@cs.ucla.edu>
21303
21304         * lib/regex.c, regex.h: Sync from libc.
21305         * lib/regcomp.c, lib/regexec_internal.c, lib/regex_internal.h:
21306         * lib/regexec.c:
21307         New files, synced from libc, except that regex_internal.h
21308         currently has a small porting fix.
21309
21310 2005-07-07  Paul Eggert  <eggert@cs.ucla.edu>
21311
21312         * config/srclist.txt: Add regcomp.c, regex.c, regex.h,
21313         regex_internal.c, regexec.c.
21314         Add regex_internal.h too, but as a comment, since the libc version
21315         is currently broken in gnulib mode.
21316
21317 2005-07-06  Paul Eggert  <eggert@cs.ucla.edu>
21318
21319         Support programs like Emacs that use gnulib but not gettext.
21320         * MODULES.html.sh (Internationalization functions): Add gettext-h.
21321         * modules/gettext-h: New file.
21322         * modules/gettext (Files): Remove lib/gettext.h.
21323         (Depends-on): Add gettext-h.
21324         (Makefile.am): Remove lib_SOURCES.
21325         * modules/argmatch, modules/c-stack, modules/closeout:
21326         * modules/copy-file, modules/csharpcomp, modules/csharpexec:
21327         * modules/execute, modules/file-type, modules/getaddrinfo:
21328         * modules/getopt, modules/human, modules/javacomp:
21329         * modules/javaexec, modules/mkdir-p, modules/obstack:
21330         * modules/openat, modules/pagealign_alloc, modules/pipe:
21331         * modules/quotearg, modules/regex, modules/rpmatch:
21332         * modules/unicodeio, modules/userspec, modules/version-etc:
21333         * modules/wait-process, modules/xalloc-die, modules/xmemcoll:
21334         * modules/xsetenv:
21335         Depend on gettext-h, not gettext.
21336
21337 2005-07-05  Paul Eggert  <eggert@cs.ucla.edu>
21338
21339         * gnulib-tool (func_import): Add support for 'public domain' license.
21340         * modules/alloca, modules/atexit, modules/memmove:
21341         Now public domain, not GPL.
21342         * modules/dup2, modules/getpagesize, modules/malloc, modules/memset:
21343         * modules/realloc, modules/strerror, modules/strtod:
21344         Now LGPL, not GPL.
21345
21346 2005-07-05  Bruno Haible  <bruno@clisp.org>
21347
21348         * m4/mbrtowc.m4 (gl_FUNC_MBRTOWC): Upgrade to version from current
21349         autoconf CVS. Needed for mingw.
21350
21351 2005-07-03  Paul Eggert  <eggert@cs.ucla.edu>
21352
21353         Remove the dependency of the strftime module on the tzset module.
21354         * modules/strftime (Depends-on): Remove dependency on tzset.
21355
21356 2005-07-03  Paul Eggert  <eggert@cs.ucla.edu>
21357
21358         Remove the dependency of the strftime module on the tzset module.
21359         * m4/strftime.m4 (gl_FUNC_STRFTIME): Don't require
21360         gl_FUNC_TZSET_CLOBBER.
21361
21362 2005-07-03  Paul Eggert  <eggert@cs.ucla.edu>
21363
21364         Remove the dependency of the strftime module on the tzset module.
21365         * lib/strftime.c (my_strftime)
21366         [! defined _LIBC && ! HAVE_RUN_TZSET_TEST]:
21367         Copy the input structure, to work around some of the bug with
21368         Solaris 2.5.1 and Solaris 2.6.  If you still care about these old
21369         Solaris releases, you should also use the tzset module, but we won't
21370         require it as a dependency any more since we don't want LGPLed code
21371         to depend on GPLed code.
21372
21373 2005-07-02  Jim Meyering  <jim@meyering.net>
21374
21375         * m4/chown.m4, cloexec.m4, dup2.m4, fsusage.m4:
21376         * m4/getcwd-path-max.m4, getcwd.m4, mkstemp.m4, mountlist.m4:
21377         * m4/pagealign_alloc.m4, save-cwd.m4, unistd-safer.m4:
21378         Don't check for fcntl.h, and don't test for HAVE_FCNTL_H.
21379
21380 2005-07-02  Jim Meyering  <jim@meyering.net>
21381
21382         * lib/backupfile.c (backup_args): Change a `0' to NULL.
21383
21384 2005-07-01  Paul Eggert  <eggert@cs.ucla.edu>
21385
21386         * lib/xnanosleep.c: Include timespec.h, since OpenBSD 3.4 <time.h>
21387         declares only 'struct timespec;' (!).
21388
21389 2005-07-01  Jim Meyering  <jim@meyering.net>
21390
21391         * lib/chown.c, cloexec.c, dup-safer.c, dup2.c, fsusage.c, getcwd.c:
21392         * lib/getloadavg.c, mountlist.c, openat.h, pagealign_alloc.c:
21393         * lib/save-cwd.c, tempname.c:
21394         Assume HAVE_FCNTL_H (i.e., include <fcntl.h> unconditionally,
21395         and don't include <sys/file.h>).
21396
21397 2005-06-29  Jim Meyering  <jim@meyering.net>
21398
21399         * lib/mkdir-p.c (make_dir_parents): Don't apply sizeof to a hard-coded
21400         type name.  Use the variable name instead.
21401         * lib/idcache.c (getuser, getuidbyname, getgroup, getgidbyname):
21402         Likewise.
21403
21404 2005-06-28  Simon Josefsson  <jas@extundo.com>
21405
21406         * modules/check-version (Files): Add check-version.m4.
21407
21408 2005-06-28  Simon Josefsson  <jas@extundo.com>
21409
21410         * m4/check-version.m4: New file, suggested by Jim Meyering
21411         <jim@meyering.net>.
21412
21413 2005-06-28  Simon Josefsson  <jas@extundo.com>
21414
21415         * lib/check-version.h, lib/check-version.c: New files.
21416
21417 2005-06-28  Simon Josefsson  <jas@extundo.com>
21418
21419         * lib/base64.c (base64_encode): Indent.  Rename 'b64' to avoid
21420         collision with global variable.  Better indentation.  Don't
21421         increment buffer pointer beyond buffer end.  Based on comments
21422         from Paul Eggert <eggert@cs.ucla.edu>.
21423
21424         * lib/base64.h: Indent.
21425
21426 2005-06-28  Simon Josefsson  <jas@extundo.com>
21427
21428         * doc/gnulib.texi (Library version handling): New section.
21429
21430 2005-06-28  Jim Meyering  <jim@meyering.net>
21431
21432         * check-module (find_included_lib_files): Hard-code another
21433         pair of exceptions: fts.c includes fts-cycle.c and unistd-safer.h
21434         but modules/fts-lgpl (correctly) does not list those files.
21435
21436         * modules/canonicalize (Files): Add lib/pathmax.h.
21437
21438 2005-06-25  Simon Josefsson  <jas@extundo.com>
21439
21440         * modules/check-version: New file.
21441
21442 2005-06-24  Paul Eggert  <eggert@cs.ucla.edu>
21443
21444         * lib/canon-host.c (canon-host): Append trailing "," to 0 in
21445         initializer of struct addrinfo, as an indication that we don't
21446         care how many members the structure has.
21447
21448 2005-06-24  Derek Price  <derek@ximbiot.com>
21449         and Bruno Haible  <bruno@clisp.org>
21450
21451         Remove stat module & update lstat.
21452         * m4/lstat.m4 (gl_FUNC_LSTAT): Drop AC_FUNC_LSTAT in favor of
21453         AC_FUNC_LSTAT_FOLLOWS_SLASHED_SYMLINK.
21454         * m4/stat.m4: Remove this file.
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         * lib/stat.c: Remove this file...
21461         (slash_aware_lstat): ...moving this content and its support...
21462         * lib/lstat.c (rpl_lstat): ...into here.
21463         * lib/lstat.h: New file.
21464
21465 2005-06-24  Derek Price  <derek@ximbiot.com>
21466         and Bruno Haible  <bruno@clisp.org>
21467
21468         Remove stat module & update lstat.
21469         * config/srclist.txt (libc sources): Remove stat.
21470
21471 2005-06-24  Derek Price  <derek@ximbiot.com>
21472         and Bruno Haible  <bruno@clisp.org>
21473
21474         Remove stat module & update lstat.
21475         * MODULES.html.sh (stat): Remove.
21476         * MODULES.html: Regenerated.
21477         * modules/lstat (Description): Correct function name.
21478         (Files): Add "lstat.h".
21479         (Depends-on): Remove stat, add xalloc, stat-macros.
21480         * modules/stat: Remove this file.
21481         (Include): Add "lstat.h", remove <sys/stat.h>.
21482
21483 2005-06-23  Paul Eggert  <eggert@cs.ucla.edu>
21484
21485         * lib/mktime.c: Include <string.h> even if !DEBUG.  (From glibc.)
21486         (ranged_convert): Don't save conversion in a temporary struct.
21487         This causes a warning with GCC 4.0.0, and anyway in the typical
21488         case it's not worth the extra 100 bytes or so of code.
21489         (ranged_convert, __mktime_internal): When calling a function via a
21490         pointer P, use P () rather than (*P) (), as we now assume C89 or
21491         better.
21492
21493 2005-06-22  Paul Eggert  <eggert@cs.ucla.edu>
21494
21495         * lib/readutmp.c (desirable_utmp_entry): Fix bug where "who -b" and
21496         "who -r" failed to give output.  Problem reported by Tim Waugh.
21497
21498         * lib/xmalloc.c (HAVE_GNU_CALLOC): New constant.
21499         (xcalloc): Use it to avoid needless tests.
21500         Problem reported by Jim Meyering.
21501
21502 2005-06-20  Derek Price  <derek@ximbiot.com>
21503
21504         * m4/bison.m4: Note that precious decls of YACC & YFLAGS will be
21505         unnecessary for Autoconfs > 2.59c.
21506
21507 2005-06-16  Sergey Poznyakoff  <gray@Mirddin.farlep.net>
21508
21509         * lib/argp.h (__option_is_short): Check upper limit of
21510         __key. Isprint() requires its argument to have the value
21511         of an unsigned char or EOF.
21512
21513 2005-06-16  Jim Meyering  <jim@meyering.net>
21514
21515         * lib/calloc.c (rpl_calloc): Allocate a 1-byte buffer (not 1xS or Nx1)
21516         when either N or S is zero.
21517
21518 2005-06-16  Derek Price  <derek@ximbiot.com>
21519
21520         * m4/bison.m4: Declare YACC & YFLAGS precious.
21521
21522 2005-06-10  Paul Eggert  <eggert@cs.ucla.edu>
21523
21524         * lib/fnmatch.c (fnmatch): If there is an encoding error in a
21525         multibyte string or pattern, fall back on unibyte matching.
21526         Problem reported by James Youngman.
21527
21528 2005-06-08  Bruno Haible  <bruno@clisp.org>
21529
21530         * modules/csharpcomp: New file.
21531         * MODULES.html.sh (C#): Add csharpcomp.
21532
21533 2005-06-08  Bruno Haible  <bruno@clisp.org>
21534
21535         * m4/csharpcomp.m4: New file, from GNU gettext.
21536
21537 2005-06-08  Bruno Haible  <bruno@clisp.org>
21538
21539         * lib/csharpcomp.h: New file, from GNU gettext.
21540         * lib/csharpcomp.c: New file, from GNU gettext.
21541         * lib/csharpcomp.sh.in: New file, from GNU gettext.
21542
21543 2005-06-08  Bruno Haible  <bruno@clisp.org>
21544
21545         * lib/binary-io.h (fileno): Undefine before defining it. Avoids a gcc
21546         warning on mingw.
21547
21548 2005-06-07  Derek Price  <derek@ximbiot.com>
21549
21550         Sync from CVS.
21551         * lib/glob_.h: Indent nested #ifdef.
21552
21553 2005-06-02  Paul Eggert  <eggert@cs.ucla.edu>
21554
21555         Sync from coreutils.
21556         Use "file name" when talking about file names, instead of "filename"
21557         or "path", as per the GNU coding standards.
21558         * lib/mkdir-p.c: Renamed from makepath.c.
21559         (make_dir_parents): Renamed from make_path.  All callers changed.
21560         * lib/mkdir-p.h: Likewise.  All includers changed.
21561         * lib/filenamecat.c: Renamed from path-concat.c.
21562         (file_name_concat): Renamed from path_concat.  All callers changed.
21563         [TEST_FILE_NAME_CONCAT]: Renamed from TEST_PATH_CONCAT.
21564         * lib/filenamecat.h: Likewise.  All includers changed.
21565         * lib/acl.c: Don't use "path" or "filename" to mean "file name"
21566         in comments or local variable names.
21567         * lib/basename.c: Likewise.
21568         * lib/canonicalize.c, canonicalize.h: Likewise.
21569         * lib/dirname.c, dirname.h: Likewise.
21570         * lib/euidaccess.c: Likewise.
21571         * lib/exclude.c: Likewise
21572         * lib/fnmatch_.h, fnmatch_loop.c: Likewise.
21573         * lib/fsusage.c, fsuage.h: Likewise.
21574         * lib/fts.c, fts_.h: Likewise.
21575         * lib/getcwd.c: Likewise.
21576         * lib/getloadavg.c: Likewise.
21577         * lib/mkstemp.c: Likewise.
21578         * lib/mountlist.c, mountlist.h: Likewise.
21579         * lib/openat.c, openat.h: Likewise.
21580         * lib/readlink-stub.c: Likewise.
21581         * lib/readutmp.c, readutmp.h: Likewise.
21582         * lib/rename.c: Likewise.
21583         * lib/rmdir.c: Likewise.
21584         * lib/same.c: Likewise.
21585         * lib/savedir.c: Likewise.
21586         * lib/stripslash.c: Likewise.
21587         * lib/tempname.c: Likewise.
21588         * lib/xreadlink.c: Likewise.
21589         * lib/exclude.c (excluded_file_name): Renamed from excluded_filename.
21590         All uses changed.
21591         * lib/exclude.h: Likewise.
21592
21593         * lib/euidaccess.c (getuid, getgid, getuid, getegid)
21594         [!defined _POSIX_VERSION]: Remove decls; not needed these days.
21595         * lib/idcache.c (getpwuid, getpwnam, getgrgid, getgrnam)
21596         [!defined _POSIX_VERSION]: Remove decls; not needed these days.
21597         * lib/pathmax.h: Include <limits.h> unconditionally, since other
21598         files have been getting away with it for years (MORE/BSD 4.3
21599         is extinct now).
21600         * lib/userspec.c (getpwnam, getgrnam, getgrgid)
21601         [!defined _POSIX_VERSION]: Remove decls; not needed these days.
21602
21603         * lib/pathmax.h (_POSIX_PATH_MAX) [!defined _POSIX_PATH_MAX]:
21604         Define to 256, not 255, as per modern POSIX.
21605
21606 2005-06-02  Paul Eggert  <eggert@cs.ucla.edu>
21607
21608         Sync from coreutils.
21609         Use "file name" when talking about file names, instead of "filename"
21610         or "path", as per the GNU coding standards.
21611         * MODULES.html.sh: mkdir-p renamed from makepath.
21612         filenamecat renamed from path-concat.
21613         * modules/filenamecat: Renamed from modules/path-concat.
21614         (Files): filenamecat.h and filenamecat.c renamed from
21615         path-concat.h and path-concat.c.
21616         (configure.ac): gl_FILE_NAME_CONCAT, not gl_PATH_CONCAT.
21617         (Include): filenamecat.h, not path-concat.h.
21618         * modules/mkdir-p: Renamed from modules/makepath.
21619         (Files): mkdir-p.h and mkdir-p.c renamed from makepath.h and
21620         makepath.c.
21621         (configure.ac): gl_MKDIR_PARENTS, not gl_MAKEPATH.
21622         (Include): mkdir-p.h, not makepath.h.
21623
21624 2005-06-02  Paul Eggert  <eggert@cs.ucla.edu>
21625
21626         Sync from coreutils.
21627         * m4/mkdir-p.m4: Renamed from makepath.m4.
21628         (gl_MKDIR_PARENTS): Renamed from gl_MAKEPATH.  All uses changed.
21629         Rename files from makepath.c to mkdir-p.c, and from
21630         makepath.h to mkdir-p.h.
21631         * m4/filenamecat.m4: Renamed from path-concat.m4.
21632         (gl_FILE_NAME_CONCAT): Renamed from gl_PATH_CONCAT.  All uses changed.
21633         Rename files from path-concat.c to filenamecat.c,
21634         and from path-concat.h to filenamecat.h.
21635         * m4/getcwd-path-max.m4: Don't use "path" or "filename" to mean
21636         "file name" in local variables or comments.
21637         * m4/rename.m4: Likewise.
21638
21639 2005-06-01  Bruno Haible  <bruno@clisp.org>
21640
21641         * modules/csharpexec: New file.
21642         * MODULES.html.sh (C#): New section.
21643
21644 2005-06-01  Bruno Haible  <bruno@clisp.org>
21645
21646         * m4/csharp.m4: New file, from GNU gettext.
21647         * m4/csharpexec.m4: New file, from GNU gettext.
21648
21649 2005-06-01  Bruno Haible  <bruno@clisp.org>
21650
21651         * lib/csharpexec.h: New file, from GNU gettext.
21652         * lib/csharpexec.c: New file, from GNU gettext.
21653         * lib/csharpexec.sh.in: New file, from GNU gettext.
21654
21655 2005-05-31  Derek Price  <derek@ximbiot.com>
21656             Paul Eggert  <eggert@cs.ucla.edu>
21657
21658         Sync from cvs.
21659         * m4/glob.m4: s/MISSING_SYS_CDEFS_H/_SYS_CDEFS_H/ and comment.
21660
21661 2005-05-31  Derek Price  <derek@ximbiot.com>
21662             Paul Eggert  <eggert@cs.ucla.edu>
21663
21664         Sync from cvs.
21665         * lib/glob_.h: s/MISSING_SYS_CDEFS_H/_SYS_CDEFS_H/ and comment.
21666
21667 2005-05-29  Derek Price  <derek@ximbiot.com>
21668
21669         * config/srclist.txt (glob_.h, glob.c): Add these files.
21670
21671 2005-05-29  Derek Price  <derek@ximbiot.com>
21672
21673         * MODULES.html.sh: Add glob to Enhanced POSIX.2001 section.
21674         * modules/glob: New file.
21675         * modules/getlogin_r: Add link to POSIX spec in description.
21676
21677 2005-05-29  Derek Price  <derek@ximbiot.com>
21678             Paul Eggert  <eggert@cs.ucla.edu>
21679
21680         * m4/glob.m4: New file.
21681
21682 2005-05-29  Derek Price  <derek@ximbiot.com>
21683             Paul Eggert  <eggert@cs.ucla.edu>
21684
21685         * lib/glob_.h, lib/glob.c: New files.
21686
21687 2005-05-27  Paul Eggert  <eggert@cs.ucla.edu>
21688
21689         * modules/fts (Files): Remove m4/inttypes-pri.m4.
21690         * modules/fts-lgpl (Depends-on): Remove gettext.
21691
21692 2005-05-27  Paul Eggert  <eggert@cs.ucla.edu>
21693
21694         * m4/fts.m4 (gl_FUNC_FTS_CORE): Don't check for inttypes.h or stdint.h,
21695         and don't require gt_INTTYPES_PRI.
21696
21697 2005-05-27  Paul Eggert  <eggert@cs.ucla.edu>
21698
21699         * lib/getlogin_r.c (getlogin_r): Don't set errno to 0 on return.
21700
21701         * lib/fts.c: Don't worry about debugging on pre-C99-compatible hosts;
21702         the configuration hassle isn't worth it.
21703         Include inttypes.h and stdint.h unconditionally if FTS_DEBUG.
21704         (LONGEST_MODIFIER, PRIuMAX): Remove.
21705
21706 2005-05-27  Bruno Haible  <bruno@clisp.org>
21707
21708         * lib/getlogin_r.h: Remove second include of <stddef.h>.
21709
21710 2005-05-26  Paul Eggert  <eggert@cs.ucla.edu>
21711
21712         * m4/extensions.m4 (gl_USE_SYSTEM_EXTENSIONS): Define
21713         _POSIX_PTHREAD_SEMANTICS for Solaris.
21714
21715 2005-05-25  Derek Price  <derek@ximbiot.com>
21716
21717         * MODULES.html.sh: Add getlogin_r to POSIX.2001 support section.
21718
21719 2005-05-25  Derek Price  <derek@ximbiot.com>
21720             Paul Eggert  <eggert@cs.ucla.edu>
21721
21722         * modules/getlogin_r, m4/getlogin_r.m4: New files.
21723         * lib/getlogin_r.c, getlogin_r.h: New files.
21724
21725 2005-05-25  Bruno Haible  <bruno@clisp.org>
21726             Derek Price  <derek@ximbiot.com>
21727
21728         * lib/getlogin_r.h: Simplify API documentation.
21729
21730 2005-05-23  Derek Price  <derek@ximbiot.com>
21731
21732         * modules/minmax (Files): Add m4/minmax.m4.
21733         (configure.ac): Add gl_MINMAX.
21734
21735 2005-05-22  Paul Eggert  <eggert@cs.ucla.edu>
21736
21737         * lib/fts.c (fd_safer) [_LGPL_PACKAGE]: New static function,
21738         so that unistd-safer.h (GPL'ed code) need not be included.
21739
21740 2005-05-22  Bruno Haible  <bruno@clisp.org>
21741
21742         * m4/minmax.m4: New file.
21743         Based on a patch by Derek Price <derek@ximbiot.com>.
21744
21745 2005-05-22  Bruno Haible  <bruno@clisp.org>
21746
21747         * lib/stdint_.h (_STDINT_H_HAVE_INT64): New macro. Use it in #ifdefs.
21748         (INT64_MIN): Fix definition.
21749         Suggested by Paul Eggert <eggert@cs.ucla.edu>.
21750
21751         * lib/stdint_.h (_STDINT_H_NEED_SIGNED_INT_TYPES): Renamed from
21752         NEED_SIGNED_INT_TYPES.
21753
21754         * lib/stdint_.h (_STDINT_H_HAVE_SYSTEM_INTTYPES): Renamed from
21755         HAVE_SYSTEM_INTTYPES.
21756
21757 2005-05-22  Bruno Haible  <bruno@clisp.org>
21758
21759         * lib/minmax.h: Include <limits.h> only when it defines MIN, MAX.
21760         Also include <sys/param.h> if it defines MIN, MAX.
21761         Based on a patch by Derek Price <derek@ximbiot.com>.
21762
21763 2005-05-21  Jim Meyering  <jim@meyering.net>
21764
21765         * modules/fts (Files): Add m4/inttypes-pri.m4.
21766         (Depends-on): Add lstat and remove gettext.  Alphabetize.
21767
21768 2005-05-20  Paul Eggert  <eggert@cs.ucla.edu>
21769
21770         New fts module.
21771         * lib/fts.c: Don't include "cycle-check.h" or "hash.h".
21772         (setup_dir, free_dir): New functions.
21773         (enter_dir, leave_dir): Define trivial
21774         alternatives of _LGPL_PACKAGE.  Move to fts-cycle.c if !_LGPL_PACKAGE.
21775         (HT_INITIAL_SIZE, ENTER_DIR): Remove.  All uses removed.
21776         (LEAVE_DIR): Fix typo: pass Fts and Ent to leave_dir.
21777         (struct Active_dir, AD_compare, AD_hash, enter_dir, leave_dir):
21778         Move to fts-cycle.c.
21779         (fts_open): Use setup_dir.
21780         (fts_close): Use free_dir.
21781         (fts_read): Have just one copy of the ENTER_DIR code rather than three.
21782         This adds a label and some gotos, but the alternatives were messier.
21783         Check for memory allocation failure when entering a dir.
21784         (fts_stat) [_LGPL_PACKAGE]: Bring back glibc cycle detection code.
21785         * lib/fts_.h (_LGPL_PACKAGE) [defined _LIBC]: New macro.
21786         (FTS): New member fts_cycle, that is a union that contains the
21787         old active_dir_ht and cycle_state.  All uses changed to mention
21788         fts_cycle.ht and fts_cycle.state.
21789         * lib/fts-cycle.c: New file, containing GPL'ed code migrated out of
21790         fts.c, with the following changes:
21791         (setup_dir, free_dir): New functions.
21792         (enter_dir): Now returns bool.  Return true if successful, false
21793         if memory exhausted.  All callers changed.
21794         Do not bother partly cleaning up on
21795         memory allocation failure; that is free_dir's job.
21796         However, free ad if hash_insert fails, to avoid memory leak.
21797         (enter_dir, leave_dir): Accommodate change to FTS by inspecting
21798         fts->fts_options to see which union member to use.
21799
21800 2005-05-20  Paul Eggert  <eggert@cs.ucla.edu>
21801
21802         * m4/fts.m4 (gl_FUNC_FTS_CORE): Renamed from gl_FUNC_FTS.
21803         (gl_FUNC_FTS, gl_FUNC_FTS_LGPL): New macros.
21804
21805 2005-05-20  Paul Eggert  <eggert@cs.ucla.edu>
21806
21807         * MODULES.html.sh (File system functions): Add fts, fts-lgpl.
21808
21809 2005-05-20  Jim Meyering  <jim@meyering.net>
21810
21811         * lib/unlinkdir.h (cannot_unlink_dir) [UNLINK_CANNOT_UNLINK_DIR]:
21812         Now a macro, to pacify GCC.
21813
21814 2005-05-20  Eric Blake  <ebb9@byu.net>  (tiny change)
21815
21816         * m4/chown.m4 (gl_FUNC_CHOWN): Correct sense of test for honoring IDs
21817         of -1.
21818
21819 2005-05-20  Eric Blake  <ebb9@byu.net>  (tiny change)
21820
21821         * lib/chown.c (rpl_chown): Return -1 on failure.
21822
21823 2005-05-18  Paul Eggert  <eggert@cs.ucla.edu>
21824
21825         * m4/canonicalize.m4 (AC_FUNC_CANONICALIZE_FILE_NAME]):
21826         Don't check for stddef.h.
21827         * m4/fts.m4 (gl_FUNC_FTS): Don't require AC_HEADER_STDC, as we
21828         don't use its results.
21829         Don't check for fcntl.h, stddef.h, stdlib.h, string.h, unistd.h,
21830         since we include them unconditionally.  Don't require
21831         AM_STDBOOL_H, since stdbool is a prerequisite.
21832         Don't require AC_C_CONST, AC_TYPE_SIZE_T or check for ptrdiff_t
21833         since we assume C89 or better.
21834         Don't require AC_FUNC_CLOSEDIR_VOID, AC_FUNC_LSTAT, or AC_FUNC_STAT,
21835         as we don't use their results.
21836         Don't check for fchdir, memmove, memset, strrchr, as we use
21837         them unconditionally.
21838         * m4/gettimeofday.m4 (AC_FUNC_GETTIMEOFDAY_CLOBBER): Don't define
21839         GETTIMEOFDAY_CLOBBERS_LOCALTIME_BUFFER, since nobody uses it.
21840
21841 2005-05-18  Paul Eggert  <eggert@cs.ucla.edu>
21842
21843         * lib/canonicalize.c: Include canonicalize.h first, to test interface.
21844         Include <stddef.h> unconditionally, since we assume C89 now.
21845         All uses of PTR_INT_TYPE replaced by ptrdiff_t.
21846         * lib/fts.c: Include fts_.h first, to check interface.
21847         Do not include intprops.h; no longer needed.
21848         Include cycle-check.h and hash.h, since fts_.h no longer does.
21849         Remove unnecessary casts of closedir to void.
21850         (fts_build): Use a simpler method (not involving TYPE_SIGNED) to
21851         decide whether to decrement nlinks.
21852         * lib/fts_.h: Do not include hash.h or cycle-check.h; no longer needed.
21853         (FTS): Use struct hash_table * instead of Hash_table, so that
21854         we no longer need to include hash.h here.
21855
21856 2005-05-18  Jim Meyering  <jim@meyering.net>
21857
21858         * modules/dirfd (License): Change to LGPL.  Most of the code
21859         is already in the public domain.
21860
21861 2005-05-18  Jim Meyering  <jim@meyering.net>
21862
21863         * m4/fts.m4 (AC_LIBSOURCES): Add intprops.h to the list.
21864         Reported by Yoann Vandoorselaere.
21865
21866 2005-05-17  Jim Meyering  <jim@meyering.net>
21867
21868         * m4/fts.m4: New file, from coreutils.
21869
21870 2005-05-17  Jim Meyering  <jim@meyering.net>
21871
21872         * lib/fts.c, lib/fts_.h: New files, from coreutils.
21873
21874 2005-05-14  Paul Eggert  <eggert@cs.ucla.edu>
21875
21876         Sync from coreutils.
21877         * m4/unlinkdir.m4: New file.
21878
21879 2005-05-14  Paul Eggert  <eggert@cs.ucla.edu>
21880
21881         Sync from coreutils.
21882         * lib/unlinkdir.c, lib/unlinkdir.h: New files.
21883         * lib/gethrxtime.c, lib/gethrxtime.h, lib/getpass.h, lib/mountlist.h,
21884         lib/path-concat.c, lib/regex.h, lib/unlocked-io.h, lib/xtime.h:
21885         White space changes only.
21886         * lib/makepath.c (make_path): Port to hosts where leading "//" is
21887         special.
21888         * lib/yesno.c: Include getline.h, not ctype.h.
21889         (yesno): Don't remove leading white space; POSIX doesn't allow it.
21890         Use getline to remove arbitrary restriction on response length.
21891
21892 2005-05-14  Paul Eggert  <eggert@cs.ucla.edu>
21893
21894         * config/srclist-update: Spell out "Street" in FSF postal
21895         mail address; this is the style the FSF seems to prefer.
21896
21897         * build-aux/depcomp, build-aux/install-sh, build-aux/mdate-sh,
21898         build-aux/missing, build-aux/mkinstalldirs: Sync from Automake;
21899         this updates FSF postal mail address.
21900
21901         Sync from coreutils.
21902         * modules/unlinkdir: New file.
21903         * modules/yesno (Depends-on): Add getline.
21904         * MODULES.html.sh (File system functions): Add unlinkdir.
21905
21906 2005-05-13  Paul Eggert  <eggert@cs.ucla.edu>
21907
21908         * lib/byteswap_.h, lib/getsubopt.h, lib/iconvme.h, lib/strsep.c,
21909         lib/strsep.h:
21910         Change the initial comment to refer to GPL, not LGPL.
21911         gnulib-tool will change it to LGPL as needed.
21912
21913         * lib/__fpending.c, lib/acl.c, lib/acl.h, lib/alloca_.h, lib/allocsa.c,
21914         lib/allocsa.h, lib/argmatch.c, lib/argmatch.h, lib/argp-ba.c,
21915         lib/argp-eexst.c, lib/argp-fmtstream.c, lib/argp-fmtstream.h,
21916         lib/argp-fs-xinl.c, lib/argp-help.c, lib/argp-namefrob.h,
21917         lib/argp-parse.c, lib/argp-pv.c, lib/argp-pvh.c, lib/argp-xinl.c,
21918         lib/argp.h, lib/argz.c, lib/argz_.h, lib/asnprintf.c, lib/asprintf.c,
21919         lib/atanl.c, lib/backupfile.c, lib/backupfile.h, lib/base64.c,
21920         lib/base64.h, lib/basename.c, lib/binary-io.h, lib/byteswap_.h,
21921         lib/c-ctype.c, lib/c-ctype.h, lib/c-stack.c, lib/c-stack.h,
21922         lib/c-strtod.c, lib/calloc.c, lib/canon-host.c, lib/canonicalize.c,
21923         lib/canonicalize.h, lib/ceill.c, lib/chdir-long.c, lib/chdir-long.h,
21924         lib/chown.c, lib/classpath.c, lib/classpath.h, lib/cloexec.c,
21925         lib/closeout.c, lib/closeout.h, lib/concatpath.c, lib/config.charset,
21926         lib/copy-file.c, lib/copy-file.h, lib/cycle-check.c, lib/cycle-check.h,
21927         lib/diacrit.c, lib/diacrit.h, lib/dirfd.c, lib/dirfd.h, lib/dirname.c,
21928         lib/dirname.h, lib/dummy.c, lib/dup-safer.c, lib/dup2.c, lib/eealloc.h,
21929         lib/error.c, lib/error.h, lib/euidaccess.c, lib/exclude.c,
21930         lib/exclude.h, lib/execute.c, lib/execute.h, lib/exit.h,
21931         lib/exitfail.c, lib/exitfail.h, lib/expl.c, lib/fatal-signal.c,
21932         lib/fatal-signal.h, lib/fd-safer.c, lib/file-type.c, lib/file-type.h,
21933         lib/fileblocks.c, lib/filemode.c, lib/filemode.h, lib/findprog.c,
21934         lib/findprog.h, lib/floorl.c, lib/fnmatch.c, lib/fnmatch_.h,
21935         lib/fnmatch_loop.c, lib/fopen-safer.c, lib/free.c, lib/frexpl.c,
21936         lib/fsusage.c, lib/fsusage.h, lib/full-read.c, lib/full-read.h,
21937         lib/full-write.c, lib/full-write.h, lib/fwriteerror.c,
21938         lib/fwriteerror.h, lib/gai_strerror.c, lib/gcd.c, lib/gcd.h,
21939         lib/getaddrinfo.c, lib/getaddrinfo.h, lib/getcwd.c, lib/getcwd.h,
21940         lib/getdate.h, lib/getdate.y, lib/getdomainname.c, lib/getdomainname.h,
21941         lib/getgroups.c, lib/gethostname.c, lib/gethrxtime.c, lib/gethrxtime.h,
21942         lib/getline.c, lib/getline.h, lib/getloadavg.c, lib/getndelim2.c,
21943         lib/getndelim2.h, lib/getnline.c, lib/getnline.h, lib/getopt.c,
21944         lib/getopt1.c, lib/getopt_.h, lib/getopt_int.h, lib/getpagesize.h,
21945         lib/getpass.c, lib/getpass.h, lib/getsubopt.c, lib/getsubopt.h,
21946         lib/gettext.h, lib/gettime.c, lib/gettimeofday.c, lib/getugroups.c,
21947         lib/getusershell.c, lib/group-member.c, lib/group-member.h,
21948         lib/hard-locale.c, lib/hard-locale.h, lib/hash-pjw.c, lib/hash-pjw.h,
21949         lib/hash.c, lib/hash.h, lib/human.c, lib/human.h, lib/iconvme.c,
21950         lib/iconvme.h, lib/idcache.c, lib/inet_ntop.h, lib/intprops.h,
21951         lib/inttostr.c, lib/inttostr.h, lib/isdir.c, lib/javacomp.c,
21952         lib/javacomp.h, lib/javacomp.sh.in, lib/javaexec.c, lib/javaexec.h,
21953         lib/javaexec.sh.in, lib/lbrkprop.h, lib/lchown.c, lib/ldexpl.c,
21954         lib/linebreak.c, lib/linebreak.h, lib/linebuffer.c, lib/linebuffer.h,
21955         lib/localcharset.c, lib/localcharset.h, lib/logl.c, lib/long-options.c,
21956         lib/long-options.h, lib/lstat.c, lib/makepath.c, lib/makepath.h,
21957         lib/malloc.c, lib/mathl.h, lib/mbswidth.c, lib/mbswidth.h, lib/md5.c,
21958         lib/md5.h, lib/memcasecmp.c, lib/memcasecmp.h, lib/memchr.c,
21959         lib/memcmp.c, lib/memcoll.c, lib/memcoll.h, lib/memcpy.c, lib/memmem.c,
21960         lib/memmem.h, lib/mempcpy.c, lib/mempcpy.h, lib/memrchr.c,
21961         lib/memrchr.h, lib/memset.c, lib/minmax.h, lib/mkdir.c, lib/mkdtemp.c,
21962         lib/mkdtemp.h, lib/mkstemp.c, lib/mktime.c, lib/modechange.c,
21963         lib/modechange.h, lib/mountlist.c, lib/mountlist.h, lib/nanosleep.c,
21964         lib/obstack.c, lib/obstack.h, lib/openat.c, lib/openat.h,
21965         lib/pagealign_alloc.c, lib/pagealign_alloc.h, lib/path-concat.c,
21966         lib/path-concat.h, lib/pathmax.h, lib/pathname.h, lib/physmem.c,
21967         lib/physmem.h, lib/pipe.c, lib/pipe.h, lib/poll.c, lib/poll_.h,
21968         lib/posixtm.c, lib/posixtm.h, lib/posixver.c, lib/printf-args.c,
21969         lib/printf-args.h, lib/printf-parse.c, lib/printf-parse.h,
21970         lib/progname.c, lib/progname.h, lib/progreloc.c, lib/putenv.c,
21971         lib/quote.c, lib/quote.h, lib/quotearg.c, lib/quotearg.h, lib/raise.c,
21972         lib/readlink.c, lib/readtokens.c, lib/readtokens.h, lib/readtokens0.c,
21973         lib/readtokens0.h, lib/readutmp.c, lib/readutmp.h, lib/realloc.c,
21974         lib/ref-add.sin, lib/ref-del.sin, lib/regex.c, lib/regex.h,
21975         lib/rename.c, lib/rmdir.c, lib/rpmatch.c, lib/safe-read.c,
21976         lib/safe-read.h, lib/safe-write.c, lib/safe-write.h, lib/same.c,
21977         lib/same.h, lib/save-cwd.c, lib/save-cwd.h, lib/savedir.c,
21978         lib/savedir.h, lib/setenv.c, lib/setenv.h, lib/settime.c,
21979         lib/sh-quote.c, lib/sh-quote.h, lib/sha1.c, lib/sha1.h, lib/sig2str.c,
21980         lib/sig2str.h, lib/sincosl.c, lib/snprintf.c, lib/snprintf.h,
21981         lib/sqrtl.c, lib/stat-macros.h, lib/stat.c, lib/stdbool_.h,
21982         lib/stdint_.h, lib/stdio-safer.h, lib/stpcpy.c, lib/stpcpy.h,
21983         lib/stpncpy.c, lib/stpncpy.h, lib/strcase.h, lib/strcasecmp.c,
21984         lib/strchrnul.c, lib/strchrnul.h, lib/strcspn.c, lib/strdup.c,
21985         lib/strdup.h, lib/strerror.c, lib/strftime.c, lib/strftime.h,
21986         lib/stripslash.c, lib/strndup.c, lib/strndup.h, lib/strnlen.c,
21987         lib/strpbrk.c, lib/strpbrk.h, lib/strsep.c, lib/strsep.h, lib/strstr.c,
21988         lib/strstr.h, lib/strtod.c, lib/strtoimax.c, lib/strtok_r.c,
21989         lib/strtok_r.h, lib/strtol.c, lib/strtoll.c, lib/strtoul.c,
21990         lib/strtoull.c, lib/strverscmp.c, lib/strverscmp.h, lib/sysexit_.h,
21991         lib/tempname.c, lib/time_r.c, lib/time_r.h, lib/timegm.c, lib/timegm.h,
21992         lib/timespec.h, lib/trigl.c, lib/trigl.h, lib/ucs4-utf16.h,
21993         lib/ucs4-utf8.h, lib/unicodeio.c, lib/unicodeio.h, lib/unistd-safer.h,
21994         lib/unlocked-io.h, lib/unsetenv.c, lib/userspec.c, lib/utf16-ucs4.h,
21995         lib/utf8-ucs4.h, lib/utime.c, lib/utimecmp.c, lib/utimecmp.h,
21996         lib/utimens.c, lib/vasnprintf.c, lib/vasnprintf.h, lib/vasprintf.c,
21997         lib/vasprintf.h, lib/version-etc-fsf.c, lib/version-etc.c,
21998         lib/version-etc.h, lib/vsnprintf.c, lib/vsnprintf.h, lib/w32spawn.h,
21999         lib/wait-process.c, lib/wait-process.h, lib/xalloc-die.c, lib/xalloc.h,
22000         lib/xallocsa.c, lib/xallocsa.h, lib/xasprintf.c, lib/xgetcwd.c,
22001         lib/xgetcwd.h, lib/xgetdomainname.c, lib/xgetdomainname.h,
22002         lib/xgethostname.c, lib/xmalloc.c, lib/xmemcoll.c, lib/xnanosleep.c,
22003         lib/xreadlink.c, lib/xreadlink.h, lib/xsetenv.c, lib/xsetenv.h,
22004         lib/xsize.h, lib/xstrndup.c, lib/xstrndup.h, lib/xstrtod.c,
22005         lib/xstrtod.h, lib/xstrtoimax.c, lib/xstrtol.c, lib/xstrtol.h,
22006         lib/xstrtoumax.c, lib/xtime.h, lib/xvasprintf.c, lib/xvasprintf.h,
22007         lib/yesno.c, lib/yesno.h:
22008         Update FSF postal mail address.
22009
22010 2005-05-13  Paul Eggert  <eggert@cs.ucla.edu>
22011
22012         * MODULES.html.sh, README, gnulib-tool, tests/test-base64.c,
22013         tests/test-memmem.c, tests/test-stpncpy.c:
22014         Update FSF postal mail address.
22015
22016 2005-05-13  Bruno Haible  <bruno@clisp.org>
22017
22018         * lib/stdint_.h (int64_t, uint64_t, int_least64_t, uint_least64_t,
22019         int_fast64_t, uint_fast64_t, intmax_t, uintmax_t, INT64_MIN, INT64_MAX,
22020         UINT64_MAX, INT_LEAST64_MIN, INT_LEAST64_MAX, UINT_LEAST64_MAX,
22021         INT_FAST64_MIN, INT_FAST64_MAX, UINT_FAST64_MAX, INTMAX_MIN,
22022         INTMAX_MAX, UINTMAX_MAX, INT64_C, UINT64_C, INTMAX_C, UINTMAX_C):
22023         Add support for 64-bit integers in the MSVC compiler.
22024
22025 2005-05-12  Sergey Poznyakoff  <gray@Mirddin.farlep.net>
22026
22027         * modules/getdate (Makefile.am): Add getdate.c to EXTRA_DIST
22028
22029 2005-05-12  Eric Blake  <ebb9@byu.net>  (tiny change)
22030
22031         * gnulib-tool (func_import): Sort and uniquify recommended includes.
22032
22033 2005-05-11  Paul Eggert  <eggert@cs.ucla.edu>
22034
22035         * doc/getdate.texi (General date syntax): Don't say that date
22036         date --iso-8601=ns generates acceptable dates; it doesn't yet.
22037         Problem reported by Nic Ferrier.
22038
22039 2005-05-10  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
22040
22041         * lib/getaddrinfo.c: Don't fail when SOCK_STREAM or SOCK_DGRAM are
22042         specified in ai_socktype. Fix invalid ai_protocol
22043         check. ai_protocol is usually set to 0 or depending on
22044         ai_family/ai_socktype to IPPROTO_TCP / IPPROTO_UDP.  Checking for
22045         SOCK_STREAM / SOCK_DGRAM in ai_protocol was invalid.  Set
22046         ai_socktype / ai_protocol in the returned addrinfo structure.
22047
22048 2005-05-10  Simon Josefsson  <jas@extundo.com>
22049
22050         * m4/getaddrinfo.m4: Look in libnsl/libsocket for getaddrinfo, from
22051         Yoann Vandoorselaere <yoann.v@prelude-ids.com>.
22052
22053 2005-05-10  Karl Berry  <karl@gnu.org>
22054
22055         * doc/fdl.texi, gpl.texi, lgpl.texi, COPYING: update FSF address
22056         (from http://www.gnu.org/licenses).
22057         * doc/COPYING.LIB: also rename to COPYING.LESSER.
22058         * doc/COPYING.DOC: remove; per rms, only needed in doc files, so
22059         fdl.texi suffices.
22060
22061 2005-05-10  Karl Berry  <karl@gnu.org>
22062
22063         * config/srclist.txt (COPYING.LESSER): rename from COPYING.LIB.
22064         (COPYING.DOC): remove.
22065
22066         * config/srclist-update: new FSF address.
22067
22068 2005-05-10  Derek Price  <derek@ximbiot.com>
22069
22070         * m4/getopt.m4 (gl_GETOPT): Check for Solaris 10 bug, not decl, when
22071         possible.
22072
22073 2005-05-09  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
22074             Bruno Haible  <bruno@clisp.org>
22075
22076         * modules/inet_ntop: New file.
22077         * MODULES.html.sh (Support for systems lacking POSIX:2001): Add
22078         inet_ntop.
22079
22080 2005-05-09  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
22081             Bruno Haible  <bruno@clisp.org>
22082
22083         * m4/inet_ntop.m4: New file.
22084
22085 2005-05-09  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
22086             Bruno Haible  <bruno@clisp.org>
22087
22088         * lib/inet_ntop.h: New file.
22089         * lib/inet_ntop.c: New file, from glibc with modifications.
22090
22091 2005-05-09  Paul Eggert  <eggert@cs.ucla.edu>
22092
22093         * modules/time_r (License): Change to LGPL.
22094         * modules/extensions (License): Change to LGPL.  Actually,
22095         the license is more permissive than that, but currently gnulib-tool
22096         doesn't know how to handle more-permissive licenses.
22097
22098         * modules/stat-macros (Depends-on): Don't depend on stat-macros (!).
22099         Problem reported by Dave Love.
22100
22101 2005-05-08  Jim Meyering  <jim@meyering.net>
22102
22103         * lib/classpath.c (PATH_SEPARATOR): Remove insignificant trailing
22104         blank.
22105
22106 2005-05-06  Paul Eggert  <eggert@cs.ucla.edu>
22107
22108         * modules/argmatch (Depends-on): Add stdbool.
22109         * modules/backupfile (Depends-on): Likewise.
22110         * modules/chdir-long (Depends-on): Likewise.
22111         * modules/closeout (Depends-on): Likewise.
22112         * modules/cycle-check (Depends-on): Likewise.
22113         * modules/dirname (Depends-on): Likewise.
22114         * modules/fnmatch (Depends-on): Likewise.
22115         * modules/fsusage (Depends-on): Likewise.
22116         * modules/fwriteerror (Depends-on): Likewise.
22117         * modules/getcwd (Depends-on): Likewise.
22118         * modules/getloadavg (Depends-on): Likewise.
22119         * modules/hard-locale (Depends-on): Likewise.
22120         * modules/makepath (Depends-on): Likewise.
22121         * modules/mountlist (Depends-on): Likewise.
22122         * modules/nanosleep (Depends-on): Likewise.
22123         * modules/posixtm (Depends-on): Likewise.
22124         * modules/quotearg (Depends-on): Likewise.
22125         * modules/readtokens (Depends-on): Likewise.
22126         * modules/readtokens0 (Depends-on): Likewise.
22127         * modules/readutmp (Depends-on): Likewise.
22128         * modules/save-cwd (Depends-on): Likewise.
22129         * modules/strftime (Depends-on): Likewise.
22130         * modules/userspec (Depends-on): Likewise.
22131         * modules/utimecmp (Depends-on): Likewise.
22132         * modules/xgetcwd (Depends-on): Likewise.
22133         * modules/xnanosleep (Depends-on): Likewise.
22134         * modules/xstrtod (Depends-on): Likewise.
22135         * modules/yesno (Depends-on): Likewise.
22136
22137 2005-05-05  Paul Eggert  <eggert@cs.ucla.edu>
22138
22139         * m4/getopt.m4 (gl_GETOPT): Check for Solaris 10 getopt, and avoid
22140         needless checks.
22141
22142 2005-05-01  Paul Eggert  <eggert@cs.ucla.edu>
22143
22144         Merge from coreutils.  Among other things,
22145         add bulletproofing for cases where stdin, stdout, or stderr are closed.
22146         * lib/fd-safer.c: New file.
22147         * lib/fcntl-safer.h, open-safer.c: Remove.
22148         * lib/chdir-long.c: Fix comment "fetish" -> "coreutils".
22149         * lib/dup-safer.c: Include unistd-safer.h first.
22150         Don't include errno.h.
22151         (dup_safer) [!defined F_DUPFD]: Let fd_safer do the real work.
22152         * lib/file-type.h: Don't assume invoker included sys/stat.h first.
22153         * lib/file-type.c: Rely on file-type.h change.
22154         * lib/getloadavg.c: Include unistd-safer.h.
22155         (getloadavg): Use safer open.
22156         * lib/getusershell.c: Include "stdio-safer.h".
22157         (getusershell): Use safer fopen.
22158         * lib/long-options.c (long_options): Use NULL rather than 0.
22159         * lib/modechange.h (mode_free): Remove; all callers changed to invoke
22160         'free'.
22161         * lib/modechange.c: Likewise.
22162         xstrtol.h, stdbool.h, stddef.h: Don't include; no longer needed.
22163         (MODE_DONE): New constant.
22164         (struct mode_change): Remove 'next' member.
22165         (make_node_op_equals): New function; like the old one of the
22166         same name, except it allocates an array.
22167         (mode_compile, mode_create_from_ref): Use it.
22168         (mode_compile): Allocate result as an array, not a linked list.
22169         Parse octal string ourself, so that we catch mistakes like "+0".
22170         (mode_adjust): Arg is an array, not a linked list.
22171         * lib/modechange.c: Include stat-macros.h, xalloc.h.
22172         (S_ISDIR, S_ISUID, S_ISGID, S_ISVTX, S_IRUSR, S_IWUSR, S_IXUSR):
22173         (S_IRGRP, S_IWGRP, S_IXGRP, S_IROTH, S_IWOTH, S_IXOTH, S_IRXWU):
22174         (S_IRWXG, S_IRWXO, CHMOD_MODE_BITS):
22175         Remove.  This is now stat-macros.h's job.
22176         (talloc): Remove.  All callers replaced by xalloc, so that
22177         our invokers don't have to worry about reporting memory failures.
22178         (make_node_op_equals): Remove.
22179         (MODE_ORDINARY_CHAGE, MODE_X_IF_ANY_X, MODE_COPY_EXISTING):
22180         New constants.
22181         (struct mode_change): Moved here from modechange.h.
22182         (mode_append_entry): Remove.
22183         (mode_compile): Remove MASKED_OPS arg, since it encouraged
22184         apps to have incorrect behavior.  Use simpler algorithm for head
22185         and tail.  Don't futz with umask; that's now the job of mode_adjust.
22186         Detect more invalid usages rather than having somewhat-random behavior.
22187         Don't insert an "a=" action, as that leads to incorrect behavior.
22188         (mode_compile, mode_create_from_ref): Return NULL on error instead
22189         of an enum, since now there's only one way to have an error.  All
22190         callers changed.
22191         (mode_adjust): Accept new arg UMASK_VALUE, and interpret it
22192         at the correct time.  Simplify calculation of "+u" and its ilk.
22193         Don't mishandle "+X".
22194         (mode_free): Remove "register" and localize decls.
22195         * lib/modechange.h (MODE_X_IF_ANY_X, MODE_COPY_EXISTING):
22196         (struct mode_change): Move to modechange.c; callers don't
22197         need to see this stuff.
22198         (MODE_MASK_EQUALS, MODE_MASK_PLUS, MODE_MASK_MINUS, MODE_MASK_ALL):
22199         (MODE_INVALID, MODE_MEMORY_EXHAUSTED, MODE_BAD_REFERENCE): Remove.
22200         (mode_change, mode_adjust): Reflect the new signatures noted above.
22201         * lib/nanosleep.c (rpl_nanosleep): Include "timespec.h" before macros
22202         that might redefine system include files.
22203         (siginterrupt) [!HAVE_SIGINTERRUPT]: New macro.
22204         (my_usleep): Use NULL rather than (void *) 0.
22205         (rpl_nanosleep) [!defined SA_NOCLDSTOP]:
22206         Use siginterrupt to specify that system calls should be interrupted.
22207         (rpl_nanosleep): Move initialization of suspended closer to call of
22208         my_usleep.
22209         * lib/readutmp.h (read_utmp): New arg OPTIONS.  All uses changed.
22210         * lib/readutmp.c: Likewise.  Include signal.h, stdbool.h.
22211         (desirable_utmp_entry): New function.
22212         (read_utmp) [defined UTMP_NAME_FUNCTION]: Redo memory allocation
22213         using x2nrealloc, to simplify logic.
22214         (read_utmp) [!defined UTMP_NAME_FUNCTION]: Check for overflow in
22215         size calculation.  Do not assume utmp file is a regular file.
22216         * lib/readutmp.h (UT_PID): Moved here from ../src/who.c.
22217         (READ_UTMP_CHECK_PIDS): New constant.
22218         * lib/save-cwd.c: Include unistd-safer.h.
22219         (save_cwd): Use fd_safer.
22220         * lib/tempname.c (S_ISDIR, S_IRUSR, S_IRUSR, S_IWUSR, S_IXUSR): Remove.
22221         [!_LIBC] Include "stat-macros.h" instead.
22222         * lib/unistd-safer.h (fd_safer): New decl.
22223
22224 2005-05-01  Paul Eggert  <eggert@cs.ucla.edu>
22225
22226         * modules/getloadavg (Depends-on): Add unistd-safer.
22227         * modules/getusershell (Depends-on): Add stdio-safer.
22228         * modules/lstat (Depends-on): Remove xalloc.
22229         * modules/mkstemp (Depends-on): Add stat-macros.
22230         * modules/modechange (Depends-on): Remove xstrtol.
22231         Add stat-macros, xalloc.
22232         * modules/save-cwd (Depends-on): Add unistd-safer.
22233         * modules/stdio-safer (Makefile.am): Remove lib_SOURCES.
22234         * modules/unistd-safer (Files): Add lib/fd-safer.c
22235         (Makefile.am): Remove lib_SOURCES.
22236
22237         * MODULES.html.sh (Enhancements for POSIX:2001 functions):
22238         Remove fcntl-safer; unistd-safer supersedes it.
22239
22240 2005-05-01  Paul Eggert  <eggert@cs.ucla.edu>
22241
22242         * m4/euidaccess.m4 (gl_PREREQ_EUIDACCESS): Don't require
22243         AC_HEADER_STAT.
22244         * m4/lchown.m4 (gl_FUNC_CHOWN): Likewise.
22245         (gl_PREREQ_CHOWN): Remove.
22246         * m4/lstat.m4 (gl_FUNC_LSTAT): Require AC_FUNC_LSTAT instead of calling
22247         it.  Don't require AC_HEADER_STAT.
22248         (gl_PREREQ_LSTAT): Remove.
22249         * m4/mkstemp.m4 (gl_PREREQ_TEMPNAME): Check stdint.h only once.
22250         Don't require AC_HEADER_STAT.
22251         * m4/rmdir.m4 (gl_FUNC_RMDIR): Don't require AC_HEADER_STAT.
22252         (gl_PREREQ_RMDIR): Remove.
22253         * m4/canonicalize.m4 (AC_FUNC_CANONICALIZE_FILE_NAME): Don't
22254         mention stat-macros.h or AC_HEADER_STAT, since we'll make
22255         the stat-macros module a prerequisite.
22256         * m4/file-type.m4 (gl_FILE_TYPE): Likewise.
22257         * m4/filemode.m4 (gl_FILEMODE): Likewise.
22258         * m4/makepath.m4 (gl_MAKEPATH): Likewise.
22259         * m4/modechange.m4 (gl_MODECHANGE): Likewise.
22260         * m4/clock_time.m4 (gl_CLOCK_TIME): Use gl_ rather than fetish_ for
22261         variable names.
22262         * m4/rmdir-errno.m4 (gl_FUNC_RMDIR_NOTEMPTY): Renamed from
22263         fetish_FUNC_RMDIR_NOTEMPTY.  All uses changed.  Use gl_ for
22264         variable prefixes.
22265         * m4/fcntl-safer.m4: Remove.
22266         * m4/stdio-safer.m4 (gl_STDIO_SAFER): Use AC_LIBSOURCES and AC_LIBOBJ.
22267         * m4/unistd-safer.m4 (gl_UNISTD_SAFER): Likewise.
22268         Invoke gl_PREREQ_FD_SAFER.
22269         (gl_PREREQ_FD_SAFER): New macro.
22270         * m4/nanosleep.m4 (gl_PREREQ_NANOSLEEP): Check for siginterrupt.
22271         * m4/readutmp.m4 (gl_READUTMP): Require AC_C_INLINE.
22272         Use AC_CHECK_HEADERS_ONCE and AC_CHECK_FUNCS_ONCE when possible.
22273         Remove duplicate call to AC_LIBOBJ(readutmp).
22274         (gl_PREREQ_READUTMP): Remove.  All uses inlined.
22275
22276         * m4/mmap-anon.m4 (gl_FUNC_MMAP_ANON): Check for message, not for
22277         MAP_ANON.  Problem reported by Moriyoshi Koizumi to bug-cvs.
22278
22279 2005-05-01  Paul Eggert  <eggert@cs.ucla.edu>
22280
22281         * MODULES.html.sh (Misc): Add byteswap.
22282
22283 2005-05-01  Oskar Liljeblad  <oskar@osk.mine.nu>
22284
22285         * modules/getcwd (Depends-on): Add extensions.
22286         * modules/openat (Depends-on): Likewise.
22287
22288 2005-05-01  Oskar Liljeblad  <oskar@osk.mine.nu>
22289
22290         * modules/byteswap: New file.
22291
22292 2005-05-01  Oskar Liljeblad  <oskar@osk.mine.nu>
22293
22294         * m4/byteswap.m4: New file.
22295
22296 2005-05-01  Oskar Liljeblad  <oskar@osk.mine.nu>
22297
22298         * lib/byteswap_.h: New file.
22299
22300 2005-04-25  Karl Berry  <karl@gnu.org>
22301
22302         * m4/gettext.m4: Update from GNU gettext 0.14.4.
22303
22304 2005-04-25  Albert Chin  <china@thewrittenword.com>
22305
22306         * lib/regex.c: Include <stdio.h>, as a workaround to a Compaq Desktop
22307         Toolkit C bug.
22308
22309 2005-04-21  Oskar Liljeblad  <oskar@osk.mine.nu>
22310
22311         * gnulib-tool (Options): Add -s for --symlink/--symbolic.
22312         (func_ln_if_changed) Remove forcibly for no error message
22313         in case file does not exist.
22314
22315 2005-04-19  Simon Josefsson  <jas@extundo.com>
22316
22317         * gnulib-tool (Options): Make --symlink mean --symbolic.
22318
22319 2005-04-18  Oskar Liljeblad  <oskar@osk.mine.nu>
22320
22321         * doc/gnulib.texi (Initial import): Fix.  Mention --aux-dir.
22322
22323 2005-04-16  Simon Josefsson  <jas@extundo.com>
22324
22325         * modules/getpass-gnu (Makefile.am): Don't mention getpass.h.
22326
22327 2005-04-15  Simon Josefsson  <jas@extundo.com>
22328
22329         * m4/getpass.m4 (gl_FUNC_GETPASS): Use AC_LIBSOURCES.
22330
22331 2005-04-15  Simon Josefsson  <jas@extundo.com>
22332
22333         * gnulib-tool: Rename --symlink to --symbolic.
22334
22335 2005-04-15  Oskar Liljeblad  <oskar@osk.mine.nu>
22336
22337         * gnulib-tool: Add -s, --symlink option to gnulib-tool to make
22338         symbolic links to files instead of copying/moving.  Add --aux-dir,
22339         specifying directory relative --dir where auxiliary build tools
22340         are placed.
22341
22342 2005-04-14  Bruno Haible  <bruno@clisp.org>
22343
22344         * modules/allocsa (License): Change to LGPL.
22345         Requested by Yoann Vandoorselaere <yoann@prelude-ids.org>.
22346
22347 2005-04-13  Paul Eggert  <eggert@cs.ucla.edu>
22348
22349         * lib/getdate.y (zone): Allow relunit_snumber after tZONE, so
22350         that "UTC +1 second" continues to work.  Problem reported
22351         by Dmitry V. Levin.
22352         (relunit_snumber): New rule.
22353         (relunit): Use it.
22354
22355 2005-04-12  Paul Eggert  <eggert@cs.ucla.edu>
22356
22357         * lib/getdate.y (universal_time_zone_table): New constant.
22358         (time_zone_table): Remove GMT, UT, UTC entries; they're now in
22359         universal_time_zone_table.
22360         (lookup_zone): Prefer universal_time_zone_table to
22361         local_time_zone_table, so that "GMT" time stamps are allowed in
22362         London during the summer.  Problem reported by Ian Abbott.
22363
22364 2005-04-12  Jim Meyering  <jim@meyering.net>
22365
22366         * lib/human.c (humblock): Set *options even when returning due to
22367         xstrtoumax conversion failure.  Thanks to a used-uninitialized
22368         warning from gcc-4.
22369
22370 2005-04-09  Jim Meyering  <jim@meyering.net>
22371
22372         * lib/posixtm.c (posixtime) [lint]: Avoid spurious warning from gcc-4's
22373         -Wuninitialized: initialize tm0.tm_year.
22374
22375 2005-04-04  Paul Eggert  <eggert@cs.ucla.edu>
22376
22377         * lib/getdate.y (parser_control): rels_seen is now a boolean, not a
22378         count, since there's no maximum.  All uses changed.
22379         Add member dsts_seen.
22380         (local_zone): Accumulate dsts_seen rather than relying on tm_isdst
22381         not being INT_MAX.
22382         (get_date): Initialize dsts_seen, and check that it doesn't go over 1.
22383         Use pc_rels_seen to decide whther a date is absolute.
22384
22385         * lib/getdate.y (number): Don't overwrite year.
22386         (get_date): Initialize pc.year.digits to 0, not 4, to enable above
22387         check.
22388
22389 2005-04-02  Simon Josefsson  <jas@extundo.com>
22390
22391         * lib/getaddrinfo.h: Fix OpenBSD compilation failure, inspired by tiny
22392         patch from Yoann Vandoorselaere <yoann@prelude-ids.org>.
22393
22394 2005-03-28  Eric Blake  <ebb9@byu.net>  (tiny change)
22395
22396         * m4/getcwd-path-max.m4: Return success on systems such as Cygwin
22397         where no absolute path name can be longer than PATH_MAX.
22398
22399 2005-03-27  Jim Meyering  <jim@meyering.net>
22400
22401         * lib/argmatch.c: Clarify comment: null-terminated -> NULL-terminated.
22402
22403 2005-03-26  Paul Eggert  <eggert@cs.ucla.edu>
22404
22405         * lib/intprops.h (INT_STRLEN_BOUND, INT_BUFSIZE_BOUND):
22406         "one's complement" -> "ones' complement" in comment, as per Knuth.
22407         "value of type" -> "type or expression" in comment.
22408         * lib/mktime.c, strftime.c: Propagate intprops.h comment nits.
22409
22410 2005-03-26  Jim Meyering  <jim@meyering.net>
22411
22412         Comment nits.
22413         * lib/intprops.h: Add the apostrophe in `(one|two)'s complement'.
22414         Correct typos: s/or/of/.
22415
22416 2005-03-26  Jim Meyering  <jim@meyering.net>
22417
22418         * modules/check-include-files: Move to ../ and rename to...
22419         * check-module: ...this.
22420
22421 2005-03-25  Jim Meyering  <jim@meyering.net>
22422
22423         * modules/xvasprintf (Files): Add xalloc.h.
22424
22425 2005-03-23  Paul Eggert  <eggert@cs.ucla.edu>
22426
22427         * modules/gettext (Files): config/config.rpath ->
22428         build-aux/config.rpath
22429         * modules/iconv (Files): Likewise.
22430         Problem reported by Oskar Liljeblad.
22431
22432 2005-03-23  Jim Meyering  <jim@meyering.net>
22433
22434         * modules/check-include-files: New script to check for
22435         missing dependencies, multiple includes, etc.
22436
22437         * modules/c-strtold (Depends-on): Add xalloc.
22438         * modules/c-strtod (Depends-on): Add xalloc.
22439         * modules/hash (Depends-on): Add xalloc.
22440         (Files): Remove lib/xalloc.h.
22441
22442         * modules/gethrxtime (Files): Add lib/gethrxtime.h.
22443         * modules/userspec (Files): Add lib/inttostr.h.
22444
22445 2005-03-23  Jim Meyering  <jim@meyering.net>
22446
22447         * lib/canonicalize.c: Remove duplicate `#include "stat-macros.h"'.
22448
22449 2005-03-22  Jim Meyering  <jim@meyering.net>
22450
22451         * modules/stat-macros: New module.
22452         * modules/canonicalize, modules/euidaccess, modules/file-type,
22453         * modules/filemode, modules/lchown, modules/makepath,
22454         * modules/rmdir, modules/stat: Depend on new stat-macros module
22455         rather than listing lib/stat-macros.h manually.
22456         Don't add stat-macros.h to lib_SOURCES or list it in Files: section.
22457
22458 2005-03-22  Jim Meyering  <jim@meyering.net>
22459
22460         * m4/stat-macros.m4 (gl_STAT_MACROS): New file/macro.
22461
22462 2005-03-22  Bruno Haible  <bruno@clisp.org>
22463
22464         * config/srclist.txt: Replace target directory 'config' with
22465         'build-aux'.
22466         * config/config.guess, config.sub, config.rpath, depcomp, install-sh:
22467         * config/mdate-sh, missing, mkinstalldirs, texinfo.tex: Move to
22468         ../build-aux/.
22469
22470 2005-03-21  Paul Eggert  <eggert@cs.ucla.edu>
22471
22472         * modules/chdir-long (Depends-on): Add mempcpy.
22473
22474         * modules/acl, modules/backupfile, modules/c-strtod,
22475         modules/c-strtold, modules/canon-host, modules/canonicalize,
22476         modules/cloexec, modules/closeout, modules/dirfd, modules/dirname,
22477         modules/exclude, modules/exitfail, modules/file-type,
22478         modules/filemode, modules/fpending, modules/fsusage, modules/getcwd,
22479         modules/getdate, modules/getline, modules/getpagesize,
22480         modules/getpass, modules/getugroups, modules/group-member,
22481         modules/hard-locale, modules/hash, modules/human, modules/idcache,
22482         modules/inttostr, modules/long-options, modules/makepath,
22483         modules/md5, modules/memcasecmp, modules/memcoll,
22484         modules/modechange, modules/mountlist, modules/path-concat,
22485         modules/pathmax, modules/physmem, modules/posixtm, modules/posixver,
22486         modules/quote, modules/quotearg, modules/readtokens, modules/readutmp,
22487         modules/safe-read, modules/safe-write, modules/same, modules/savedir,
22488         modules/settime, modules/sha1, modules/sig2str, modules/strdup,
22489         modules/strftime, modules/strndup, modules/strverscmp,
22490         modules/timespec, modules/unlocked-io, modules/userspec,
22491         modules/utimecmp, modules/utimens, modules/xalloc, modules/xstrtol,
22492         modules/yesno:
22493         Remove lib_SOURCES line from Makefile.am section, as this is now
22494         done automatically by the corresponding Autoconf macro.
22495
22496 2005-03-21  Jim Meyering  <jim@meyering.net>
22497
22498         Changes imported from coreutils.
22499
22500         * lib/cycle-check.c: Don't include xalloc.h.
22501
22502         * lib/path-concat.c: Don't include assert.h.
22503         (path_concat): Remove assertion that would have triggered
22504         for ABASE starting with more than one slash.
22505         Reported by Andreas Schwab.
22506
22507         * lib/path-concat.c (path_concat): Set *BASE_IN_RESULT
22508         properly when ABASE is an absolute file name.
22509         Correct the description of this function.
22510         Include <assert.h>.
22511         Add an assertion and a test driver.
22512         This fixes a bug introduced on 2004-07-02.
22513         Andreas Schwab reported the resulting failure of cp --parents:
22514         http://lists.gnu.org/archive/html/bug-coreutils/2005-01/msg00130.html
22515
22516 2005-03-21  Jim Meyering  <jim@meyering.net>
22517
22518         * m4/chdir-long.m4 (gl_PREREQ_CHDIR_LONG): Invoke gl_FUNC_MEMRCHR.
22519         * m4/memrchr.m4 (gl_FUNC_MEMRCHR): Check for memrchr decl.
22520
22521 2005-03-21  Jim Meyering  <jim@meyering.net>
22522         and  Paul Eggert  <eggert@cs.ucla.edu>
22523
22524         * m4/acl.m4, m4/backupfile.m4, m4/c-strtod.m4, m4/canon-host.m4,
22525         m4/canonicalize.m4, m4/cloexec.m4, m4/closeout.m4, m4/dirfd.m4,
22526         m4/dirname.m4, m4/exclude.m4, m4/exitfail.m4, m4/file-type.m4,
22527         m4/filemode.m4, m4/fpending.m4, m4/fsusage.m4, m4/getcwd.m4,
22528         m4/getdate.m4, m4/getline.m4, m4/getpagesize.m4, m4/getpass.m4,
22529         m4/getugroups.m4, m4/group-member.m4, m4/hard-locale.m4, m4/hash.m4,
22530         m4/human.m4, m4/idcache.m4, m4/inttostr.m4, m4/long-options.m4,
22531         m4/makepath.m4, m4/md5.m4, m4/memcasecmp.m4, m4/memcoll.m4,
22532         m4/modechange.m4, m4/mountlist.m4, m4/nanosleep.m4, m4/path-concat.m4,
22533         m4/pathmax.m4, m4/physmem.m4, m4/posixtm.m4, m4/posixver.m4,
22534         m4/quote.m4, m4/quotearg.m4, m4/readtokens.m4, m4/readutmp.m4,
22535         m4/safe-read.m4, m4/safe-write.m4, m4/same.m4, m4/savedir.m4,
22536         m4/settime.m4, m4/sha1.m4, m4/sig2str.m4, m4/strdup.m4, m4/strftime.m4,
22537         m4/strndup.m4, m4/strverscmp.m4, m4/timespec.m4, m4/unlocked-io.m4,
22538         m4/userspec.m4, m4/utimecmp.m4, m4/utimens.m4, m4/xalloc.m4,
22539         m4/xnanosleep.m4, m4/xstrtol.m4, m4/yesno.m4:
22540         Use AC_LIBSOURCES and AC_LIBOBJ to indicate source and object files
22541         for these modules.
22542
22543 2005-03-18  Paul Eggert  <eggert@cs.ucla.edu>
22544
22545         * lib/strftime.c (my_strftime): If the underlying strftime returns 0
22546         (which shouldn't happen), generate nothing instead of returning 0
22547         immediately, so that nstrftime (NULL, ...) doesn't return 0.
22548
22549 2005-03-16  Bruno Haible  <bruno@clisp.org>
22550
22551         * modules/stdint (Makefile.am): Use HAVE_LONG_LONG_64BIT instead of
22552         HAVE_LONGLONG_64BIT.
22553
22554 2005-03-16  Bruno Haible  <bruno@clisp.org>
22555
22556         * m4/stdint.m4 (gl_STDINT_H): Define HAVE_LONG_LONG_64BIT instead of
22557         HAVE_LONGLONG_64BIT.
22558
22559 2005-03-16  Bruno Haible  <bruno@clisp.org>
22560
22561         * lib/stdint_.h: Use HAVE_LONG_LONG_64BIT instead of
22562         HAVE_LONGLONG_64BIT.
22563
22564 2005-03-15  Paul Eggert  <eggert@cs.ucla.edu>
22565
22566         * lib/strftime.c (my_strftime): Prepend space to format so that we can
22567         reliably distinguish strftime failure from empty output on POSIX
22568         hosts.
22569
22570 2005-03-15  Paul Eggert  <eggert@cs.ucla.edu>
22571
22572         * lib/iconvme.c (SIZE_MAX): New macro, if not already defined.
22573         (iconv_string): Don't guess a size-zero buffer, as that might cause
22574         buffer overrun.  Instead, avoid multiplying by MB_LEN_MAX if the
22575         result would be 'too large', where 'too large' is (heuristically)
22576         the square root of SIZE_MAX, divided by MB_LEN_MAX to allay
22577         overflow concerns.  This will prevent some unwanted malloc failures
22578         when the inputs are very large.
22579
22580 2005-03-15  Karl Berry  <karl@gnu.org>
22581
22582         * config/srclist.txt (config.rpath): from gettext.
22583         * config/config.rpath: update.
22584
22585 2005-03-15  Bruno Haible  <bruno@clisp.org>
22586
22587         * lib/regex.c (byte_re_match_2_internal): Rename local variable 'not'
22588         to 'negate'.
22589
22590         * lib/regex.c (byte_re_match_2_internal): Reduce scope of same_str_p
22591         variable.
22592
22593         * lib/regex.c (EXTEND_BUFFER, regcomp): Cast the realloc/malloc
22594         results.
22595
22596 2005-03-14  Simon Josefsson  <jas@extundo.com>
22597
22598         * lib/timegm.h: Use proper prototype CPP guards, reported by Dave Love
22599         <fx@gnu.org>.
22600
22601 2005-03-14  Paul Eggert  <eggert@cs.ucla.edu>
22602
22603         * lib/mktime.c (TYPE_TWOS_COMPLEMENT, TYPE_ONES_COMPLEMENT,
22604         TYPE_SIGNED_MAGNITUDE, TYPE_MINIMUM, TYPE_MAXIMUM): Sync from
22605         intprops.h.
22606         * lib/strtol.c: Likewise.
22607
22608 2005-03-14  Jim Meyering  <jim@meyering.net>
22609
22610         * lib/strftime.c (my_strftime) [HAVE_STRFTIME && ! (_NL_CURRENT
22611         && HAVE_STRUCT_ERA_ENTRY)]: Initialize the first byte of ubuf[]
22612         to be nonzero so that we (and caller) can detect the difference
22613         between a valid zero-length expansion and an error return, even
22614         when the underlying strftime fails before writing anything into
22615         that location.
22616
22617 2005-03-14  Bruno Haible  <bruno@clisp.org>
22618
22619         * m4/lib-link.m4, gettext.m4, nls.m4, po.m4:
22620         Update from GNU gettext 0.14.3.
22621
22622 2005-03-10  Jim Meyering  <jim@meyering.net>
22623
22624         * m4/save-cwd.m4 (gl_SAVE_CWD): Check for fchdir.
22625
22626 2005-03-10  Jim Meyering  <jim@meyering.net>
22627
22628         * lib/save-cwd.c [!HAVE_FCHDIR]: Define open, fchdir, and chdir_long
22629         so that this module works on systems without fchdir.
22630
22631 2005-03-09  Paul Eggert  <eggert@cs.ucla.edu>
22632
22633         Factor int-properties macros into a single file, except for
22634         glibc-related files.
22635         * lib/intprops.h: New file.
22636         * lib/getloadavg.c: Include it instead of limits.h.
22637         (INT_STRLEN_BOUND): Remove.
22638         * lib/human.c: Include intprops.h.
22639         (group_number): Use INT_STRLEN_BOUND instead of rolling it ourself.
22640         * lib/human.h (LONGEST_HUMAN_READABLE): Use 146/485 rather than
22641         302/1000.
22642         * lib/inttostr.h: Include intprops.h instead of limits.h.
22643         (INT_STRLEN_BOUND, INT_BUFSIZE_BOUND): Remove.
22644         * lib/mktime.c (TYPE_IS_INTEGER, TYPE_TWOS_COMPLEMENT): New macros,
22645         for consistency with intprops.h.
22646         (time_t_is_integer, twos_complement_arithmetic): Use them.
22647         * lib/sig2str.h: Include <signal.h>, intprops.h.
22648         (INT_STRLEN_BOUND): Remove.
22649         * lib/strftime.c (TYPE_SIGNED): Remove.
22650         (INT_STRLEN_BOUND): Switch to same implementation as intprops.h.
22651         * lib/strtol.c: Adjust comments to match intprops.h.
22652         * lib/userspec.c: Include intprops.h.
22653         (TYPE_SIGNED, TYPE_MINIMUM, TYPE_MAXIMUM): Remove.
22654         * lib/utimecmp.c, xnanosleep.c, xstrtol.c: Likewise.
22655         * lib/utimecmp.c (utimecmp): Use TYPE_IS_INTEGER, TYPE_TWOS_COMPLEMENT
22656         instead of rolling our own expressions.
22657         * lib/xstrtol.c: Include xstrtol.h first, to test interface.
22658
22659         * lib/strftime.c: Include <stdbool.h>.  Use bool where appropriate,
22660         instead of int.
22661         (my_strftime): Do not mishandle years close to INT_MAX, by doing
22662         the right thing even if adding 1900 would overflow.  Similarly
22663         for tm_mon + 1 and tm_yday + 1.
22664         Make %Y always equivalent to %C%y, and similarly for %G and %g.
22665         (DO_NUMBER, DO_NUMBER_SPACEPAD): Set digits to d, not a conditional.
22666         (DO_SIGNED_NUMBER): New macro.
22667         (my_strftime) [HAVE_TZNAME]: Don't dump core if tp->tm_dst > 1.
22668
22669 2005-03-07  Bruno Haible  <bruno@clisp.org>
22670
22671         * m4/mmap-anon.m4 (MAP_FILE, MAP_FAILED): Remove definitions.
22672
22673 2005-03-07  Bruno Haible  <bruno@clisp.org>
22674
22675         * lib/pagealign_alloc.c (MAP_FILE, MAP_FAILED): Define fallbacks.
22676
22677 2005-03-04  Derek R. Price  <derek@ximbiot.com>
22678
22679         * gnulib-tool (func_cp_if_changed, func_mv_if_changed): New functions.
22680         (func_import): Only replace files via --import when they have actually
22681         changed.
22682
22683 2005-03-03  Derek R. Price  <derek@ximbiot.com>
22684
22685         * m4/mmap-anon.m4: New file.
22686         * m4/pagealign_alloc.m4: New file.
22687
22688 2005-03-03  Derek R. Price  <derek@ximbiot.com>
22689             Bruno Haible  <bruno@clisp.org>
22690
22691         * modules/pagealign_alloc: New file.
22692         * MODULES.html.sh (Memory management functions): Add pagealign_alloc.
22693
22694 2005-03-03  Derek R. Price  <derek@ximbiot.com>
22695             Bruno Haible  <bruno@clisp.org>
22696
22697         * lib/pagealign_alloc.h: New file.
22698         * lib/pagealign_alloc.c: New file.
22699
22700 2005-03-03  Bruno Haible  <bruno@clisp.org>
22701
22702         * m4/inttypes.m4, isc-posix.m4, once-only.m4:
22703         Use an all-permissive copyright notice, recommended by RMS.
22704
22705 2005-03-02  Bruno Haible  <bruno@clisp.org>
22706
22707         * m4/stpncpy.m4 (gl_FUNC_STPNCPY): Undo the replacement here. Because
22708         of AIX, the replacement has to be done only after <string.h> is
22709         included, therefore not in config.h. stpncpy.h does the replacement,
22710         and stpncpy.c uses it.
22711
22712 2005-03-02  Bruno Haible  <bruno@clisp.org>
22713
22714         * lib/stpncpy.h (stpncpy): Define as a macro without arguments, so that
22715         stpncpy.c uses it.
22716
22717 2005-03-01  Paul Eggert  <eggert@cs.ucla.edu>
22718
22719         Remove workaround for bug in Linux kernel 2.6.8 or thereabouts.
22720         The workaround isn't strictly needed for POSIX conformance, and
22721         it's too much of a pain to configure and maintain.  We'll ask
22722         people to fix their kernels instead.
22723         * lib/xnanosleep.c: Don't include gethrxtime.h or xtime.h.
22724         (NANOSLEEP_BUG_WORKAROUND): Remove.
22725         (xnanosleep): Remove the workaround.
22726
22727 2005-03-01  Paul Eggert  <eggert@cs.ucla.edu>
22728
22729         * modules/gettime (Makefile.am): Remove lib_SOURCES line.
22730         Reported by Derek Price.
22731         (Include): Add "timespec.h".
22732
22733         * modules/xnanosleep (Depends-on): Remove gethrxtime.
22734
22735 2005-03-01  Paul Eggert  <eggert@cs.ucla.edu>
22736
22737         * m4/xnanosleep.m4 (gl_XNANOSLEEP): Remove configuration attempting
22738         to detect nanosleep bug.
22739
22740 2005-03-01  Bruno Haible  <bruno@clisp.org>
22741
22742         * lib/vasnprintf.c (EOVERFLOW): Define to a fallback if needed.
22743
22744 2005-02-26  Paul Eggert  <eggert@cs.ucla.edu>
22745
22746         * modules/gethrxtime: New file.
22747         * modules/xnanosleep (Files): Add m4/xnanosleep.m4.
22748         (Depends-on): Add gethrxtime.
22749         (configure.ac): Add gl_XNANOSLEEP.
22750         (Makefile.am): Remove lib_SOURCES line.
22751
22752 2005-02-25  Paul Eggert  <eggert@cs.ucla.edu>
22753
22754         * m4/gethrxtime.m4, m4/xnanosleep.m4: New files.
22755         * m4/gettime.m4 (gl_GETTIME): Check for nanotime.
22756
22757 2005-02-25  Paul Eggert  <eggert@cs.ucla.edu>
22758
22759         * lib/gethrxtime.h, lib/gethrxtime.c, lib/xtime.h: New files.
22760         * lib/timespec.h (gettime): Return void, since it always
22761         succeeds now.  All uses changed.
22762         * lib/gettime.c (gettime) Likewise.
22763         [HAVE_NANOTIME]: Prefer nanotime.
22764         Assume gettimeofday succeeds, as POSIX requires.
22765         Assime time () succeeds, since other code already does.
22766         * lib/xnanosleep.c: Include xtime.h and gethrxtime.h, not xalloc.h.
22767         (timespec_subtract): Remove.
22768         (NANOSLEEP_BUG_WORKAROUND): New constant.
22769         (xnanosleep): Use gethrxtime rather than gettime; this simplifies
22770         things considerably.  Use it only on GNU/Linux hosts, since the
22771         workaround shouldn't be needed elsewhere.
22772
22773 2005-02-24  Bruno Haible  <bruno@clisp.org>
22774
22775         * modules/gettext (Files): Add m4/glibc2.m4.
22776
22777 2005-02-24  Bruno Haible  <bruno@clisp.org>
22778
22779         * m4/gettext.m4, intdiv0.m4, intmax.m4, inttypes-pri.m4, lcmessage.m4:
22780         * m4/lib-link.m4, lib-prefix.m4, nls.m4, po.m4, printf-posix.m4:
22781         * m4/progtest.m4:
22782         Update from GNU gettext 0.14.2.
22783         * m4/glibc2.m4: New file, from GNU gettext 0.14.2.
22784
22785 2005-02-24  Bruno Haible  <bruno@clisp.org>
22786
22787         * lib/localcharset.c: Update from GNU gettext 0.14.2.
22788         * lib/config.charset: Update from GNU gettext 0.14.2.
22789
22790 2005-02-24  Bruno Haible  <bruno@clisp.org>
22791
22792         * lib/gettext.h: Update from GNU gettext 0.14.2.
22793
22794 2005-02-23  Simon Josefsson  <jas@extundo.com>
22795
22796         * m4/iconvme.m4: New file.
22797
22798 2005-02-23  Jim Meyering  <jim@meyering.net>
22799
22800         * m4/extensions.m4 (gl_USE_SYSTEM_EXTENSIONS): Revert yesteday's
22801         change.
22802         Thanks to Bruno Haible for catching it.
22803
22804 2005-02-22  Simon Josefsson  <jas@extundo.com>
22805
22806         * modules/iconvme: New file.
22807
22808         * MODULES.html.sh: Add iconvme.
22809
22810 2005-02-22  Simon Josefsson  <jas@extundo.com>
22811
22812         * lib/iconvme.h, lib/iconvme.c: New files, from libc.
22813
22814 2005-02-22  Simon Josefsson  <jas@extundo.com>
22815
22816         * config/srclist.txt: Sync iconvme.h, iconvme.c from libc.
22817
22818 2005-02-22  Jim Meyering  <jim@meyering.net>
22819
22820         * m4/extensions.m4 (gl_USE_SYSTEM_EXTENSIONS): Fix typo:
22821         s/ifndef/ifdef/.
22822
22823 2005-02-20  Neil Conway  <neilc@samurai.com>
22824
22825         * lib/xgethostname.c (xgethostname): Check for ENOMEM, which is
22826         returned by OSX/Darwin if the specified buffer is not large
22827         enough for the hostname.
22828
22829 2005-02-03  Sergey Poznyakoff  <gray@Mirddin.farlep.net>
22830
22831         * lib/argp-help.c (__argp_help): Create a fake struct argp_state and
22832         pass it to _help, otherwise the latter coredumps trying to
22833         dereference state.root_argp.
22834
22835 2005-02-03  Paul Eggert  <eggert@cs.ucla.edu>
22836
22837         * modules/chdir-long (Depends-on): Add memrchr.
22838         * modules/memrchr (Files): Add lib/memrchr.h.
22839         (Include): "memrchr.h".
22840
22841 2005-02-03  Paul Eggert  <eggert@cs.ucla.edu>
22842
22843         * m4/memrchr.m4 (gl_FUNC_MEMRCHR): Add AC_LIBSOURCES, for memrchr.h.
22844
22845 2005-02-03  Paul Eggert  <eggert@cs.ucla.edu>
22846
22847         * lib/memrchr.h: New file.
22848         * lib/chdir-long.c: Include it.
22849         * lib/memrchr.c [!defined _LIBC]: Include it rather than <string.h>
22850         Don't bother including stddef.h.
22851
22852 2005-02-01  Paul Eggert  <eggert@cs.ucla.edu>
22853
22854         * lib/mountlist.h (MOUNTLIST_H_): New macro, to protect against double
22855         inclusion.
22856         Include <sys/types.h>, for dev_t.
22857         (ME_DUMMY, ME_REMOTE): Move from here....
22858         * lib/mountlist.c (ME_DUMMY, ME_REMOTE): To here.
22859         (ME_DUMMY): Count "subfs" as a dummy.  Problem reported by
22860         Dmitry V. Levin.
22861         Include mountlist.h first, to test the interface.
22862
22863 2005-01-29  Bruno Haible  <bruno@clisp.org>
22864
22865         * lib/progname.c (program_name): Initialize.
22866         Needed when linking statically on MacOS X.
22867
22868 2005-01-28  Paul Eggert  <eggert@cs.ucla.edu>
22869
22870         Sync from coreutils.
22871         * modules/getloadavg (Files): Remove m4/getloadavg.m4.
22872         (Depends-on): Add c-strtod.
22873         (configure.ac): Replace gl_FUNC_GETLOADAVG with AC_FUNC_GETLOADAVG.
22874
22875 2005-01-28  Paul Eggert  <eggert@cs.ucla.edu>
22876
22877         Sync from coreutils.
22878         * m4/getloadavg.m4, glibc.m4, search-libs.m4: Remove.
22879
22880         Remove files that are specific to coreutils.
22881         * m4/check-decl.m4, jm-macros.m4, lib-check.m4, prereq.m4: Remove.
22882
22883 2005-01-28  Bruno Haible  <bruno@clisp.org>
22884
22885         * modules/javacomp: New file.
22886         * MODULES.html.sh (Java): Add javacomp.
22887
22888 2005-01-28  Bruno Haible  <bruno@clisp.org>
22889
22890         * m4/javacomp.m4: New file, from GNU gettext.
22891
22892 2005-01-28  Bruno Haible  <bruno@clisp.org>
22893
22894         * lib/javacomp.sh.in: New file, from GNU gettext.
22895         * lib/javacomp.h: New file, from GNU gettext.
22896         * lib/javacomp.c: New file, from GNU gettext.
22897
22898 2005-01-26  Simon Josefsson  <jas@extundo.com>
22899
22900         * lib/gai_strerror.c: Use GPL in header.
22901
22902 2005-01-26  Bruno Haible  <bruno@clisp.org>
22903
22904         * modules/javaexec: New file.
22905         * MODULES.html.sh (Java): Add javaexec.
22906
22907 2005-01-26  Bruno Haible  <bruno@clisp.org>
22908
22909         * m4/javaexec.m4: New file, from GNU gettext.
22910
22911 2005-01-26  Bruno Haible  <bruno@clisp.org>
22912
22913         * lib/javaexec.sh.in: New file, from GNU gettext.
22914         * lib/javaexec.h: New file, from GNU gettext.
22915         * lib/javaexec.c: New file, from GNU gettext.
22916
22917 2005-01-24  Sergey Poznyakoff  <gray@Mirddin.farlep.net>
22918
22919         * modules/lchown (Depends-on): Remove lchown.h
22920
22921 2005-01-24  Sergey Poznyakoff  <gray@Mirddin.farlep.net>
22922
22923         * m4/sysexits.m4 (gl_SYSEXITS): Reverted logic. SYSEXITS_H
22924         must be defined if the header file was not found, in order
22925         to provide a replacement. Reported by Todd Vierling <tv@duh.org>
22926
22927 2005-01-24  Sergey Poznyakoff  <gray@Mirddin.farlep.net>
22928
22929         * lib/argp-help.c (hol_entry_help): Avoid using non-constant
22930         initializers for struct pentry_state.
22931         (__argp_error): Check return value of __asprintf
22932         (__argp_failure): Translate error message
22933
22934         * lib/argp-parse.c: Removed braces around the expansion of N_()
22935
22936 2005-01-23  Paul Eggert  <eggert@cs.ucla.edu>
22937
22938         * m4/acl.m4, afs.m4, alloca.m4, argp.m4, assert.m4, atexit.m4,
22939         backupfile.m4, base64.m4, bison.m4, c-bs-a.m4, c-stack.m4,
22940         c-strtod.m4, calloc.m4, canon-host.m4, canonicalize.m4,
22941         clock_time.m4, cloexec.m4, closeout.m4, d-ino.m4, d-type.m4,
22942         dirfd.m4, dirname.m4, dos.m4, dup2.m4, error.m4, euidaccess.m4,
22943         exclude.m4, exitfail.m4, extensions.m4, fcntl-safer.m4,
22944         file-type.m4, fileblocks.m4, filemode.m4, fnmatch.m4, fpending.m4,
22945         free.m4, fstypename.m4, fsusage.m4, ftruncate.m4, getaddrinfo.m4,
22946         getcwd-path-max.m4, getcwd.m4, getdate.m4, getdomainname.m4,
22947         getgroups.m4, gethostname.m4, getline.m4, getndelim2.m4,
22948         getnline.m4, getopt.m4, getpagesize.m4, getpass.m4, getsubopt.m4,
22949         gettime.m4, gettimeofday.m4, getugroups.m4, getusershell.m4,
22950         group-member.m4, hard-locale.m4, hash.m4, host-os.m4, human.m4,
22951         idcache.m4, inttostr.m4, isdir.m4, jm-winsz1.m4, jm-winsz2.m4,
22952         link-follow.m4, long-options.m4, ls-mntd-fs.m4, lstat.m4,
22953         makepath.m4, mathl.m4, md5.m4, memcasecmp.m4, memchr.m4,
22954         memcmp.m4, memcoll.m4, memcpy.m4, memmem.m4, memmove.m4,
22955         memrchr.m4, memset.m4, mkdir-slash.m4, mkstemp.m4, mktime.m4,
22956         modechange.m4, mountlist.m4, nanosleep.m4, obstack.m4,
22957         path-concat.m4, pathmax.m4, perl.m4, physmem.m4, poll.m4,
22958         posixtm.m4, posixver.m4, putenv.m4, quote.m4, quotearg.m4,
22959         readdir.m4, readtokens.m4, readutmp.m4, regex.m4, rename.m4,
22960         restrict.m4, rmdir-errno.m4, rmdir.m4, rpmatch.m4, same.m4,
22961         savedir.m4, settime.m4, sha1.m4, sig2str.m4, snprintf.m4,
22962         sockpfaf.m4, st_dm_mode.m4, st_mtim.m4, stat.m4, stdint.m4,
22963         stdio-safer.m4, strchrnul.m4, strdup.m4, strerror.m4,
22964         strerror_r.m4, strftime.m4, strndup.m4, strnlen.m4, strsep.m4,
22965         strtod.m4, strtoimax.m4, strtok_r.m4, strtol.m4, strtoll.m4,
22966         strtoul.m4, strtoull.m4, strtoumax.m4, strverscmp.m4, sysexits.m4,
22967         time_r.m4, timegm.m4, timespec.m4, tm_gmtoff.m4, tzset.m4,
22968         uint32_t.m4, uintptr_t.m4, unistd-safer.m4, unlink-busy.m4,
22969         unlocked-io.m4, uptime.m4, userspec.m4, utimbuf.m4, utime.m4,
22970         utimecmp.m4, utimens.m4, utimes-null.m4, vsnprintf.m4, xalloc.m4,
22971         xgetcwd.m4, xreadlink.m4, xstrndup.m4, xstrtod.m4, xstrtoimax.m4,
22972         xstrtol.m4, xstrtoumax.m4, yesno.m4:
22973         Use an all-permissive copyright notice, recommended by RMS.
22974
22975 2005-01-21  Paul Eggert  <eggert@cs.ucla.edu>
22976
22977         * modules/chdir-long (Depends-on): Remove mempcpy.
22978
22979 2005-01-21  Jim Meyering  <jim@meyering.net>
22980
22981         * lib/openat.h (AT_SYMLINK_NOFOLLOW): Define to 4096, so it's the
22982         same value as for Solaris 9.
22983
22984         * lib/chdir-long.c (chdir_long): Rewrite to remove limitation on
22985         component length.  This included changing the parameter to be
22986         of type `char *' rather than `char const *'.
22987         * lib/chdir-long.h (chdir_long): Update prototype.
22988
22989         * lib/openat.c (fdopendir, fstatat): New functions.
22990         * lib/openat.h: Include headers required for use of DIR and struct
22991         stat.
22992         [AT_SYMLINK_NOFOLLOW]: Define.
22993         (fdopendir, fstatat): Add prototypes.
22994
22995 2005-01-21  Bruno Haible  <bruno@clisp.org>
22996
22997         * modules/classpath: New file.
22998         * MODULES.html.sh (Java): Add classpath.
22999
23000 2005-01-21  Bruno Haible  <bruno@clisp.org>
23001
23002         * lib/classpath.h: New file, from GNU gettext.
23003         * lib/classpath.c: New file, from GNU gettext.
23004
23005 2005-01-20  Simon Josefsson  <jas@extundo.com>
23006
23007         * modules/version-etc-fsf: New file.
23008
23009 2005-01-20  Simon Josefsson  <jas@extundo.com>
23010
23011         * lib/version-etc-fsf.c: New file, with version_etc_copyright.
23012         * lib/version-etc.c: Remove version_etc_copyright.
23013         * lib/version-etc.h (version_etc_copyright): Use [] instead of * in
23014         prototype, suggested by Paul Eggert <eggert@CS.UCLA.EDU>.
23015
23016 2005-01-20  Simon Josefsson  <jas@extundo.com>
23017
23018         * lib/base64.h (isbase64): Add.
23019
23020         * lib/base64.c (isb64): Rename to isbase64, use to_uchar instead of
23021         using a unsigned prototype, don't inline.
23022         (base64_decode): Use it.
23023
23024 2005-01-20  Paul Eggert  <eggert@cs.ucla.edu>
23025
23026         * m4/save-cwd.m4 (gl_SAVE_CWD): Remove check for fcntl; we now assume
23027         it.
23028
23029 2005-01-20  Paul Eggert  <eggert@cs.ucla.edu>
23030
23031         * lib/save-cwd.c (save_cwd): Remove code to support the case
23032         where fchdir is missing or flaky.
23033
23034 2005-01-20  Paul Eggert  <eggert@cs.ucla.edu>
23035
23036         * MODULES.html.sh (Command-line arguments): Add version-etc-fsf.
23037
23038 2005-01-19  Paul Eggert  <eggert@cs.ucla.edu>
23039
23040         * modules/mempcpy (Makefile.am): Remove mention of mempcpy.h;
23041         AC_LIBSOURCES now does this.
23042         * MODULES.html.sh (Sizes of integer types <limits.h>): New element,
23043         with new ullong_max module.
23044
23045 2005-01-19  Bruno Haible  <bruno@clisp.org>
23046
23047         * modules/sh-quote: New file.
23048         * MODULES.html.sh (Executing programs): Add sh-quote.
23049
23050 2005-01-19  Bruno Haible  <bruno@clisp.org>
23051
23052         * lib/sh-quote.h: New file, from GNU gettext.
23053         * lib/sh-quote.c: New file, from GNU gettext.
23054
23055 2005-01-18  Paul Eggert  <eggert@cs.ucla.edu>
23056
23057         Merge from coreutils.
23058         * m4/ullong_max.m4: New file.
23059         * m4/jm-macros.m4 (gl_MACROS): Require gl_ULLONG_MAX.
23060         (gl_MACROS): Assume localeconv exists.
23061
23062 2005-01-18  Paul Eggert  <eggert@cs.ucla.edu>
23063
23064         Merge changes from coreutils, as described below in several
23065         changelogs dated today.
23066
23067         * lib/save-cwd.c: Include "save-cwd.h" before other include files.
23068         (O_DIRECTORY): Remove; not needed here, since "." must be
23069         a directory.  All uses removed.
23070         (save_cwd): Use __sgi || __sun, not sun || __sun.  __sun is
23071         universal on Suns, and we also need to test for IRIX.
23072         Revamp code to use 'if' rather than '#if'.
23073         Avoid unnecessary comparison of cwd->desc to 0.
23074
23075         * lib/utimens.c (futimens): Robustify the previous patch, by checking
23076         for known valid error numbers rather than observed invalid ones.
23077
23078 2005-01-18  Paul Eggert  <eggert@cs.ucla.edu>
23079
23080         * modules/ullong_max: New file.
23081
23082         * modules/chdir-long, modules/openat: New files.
23083         * modules/save-cwd (Depends-on): Depend on chdir-long.
23084         (Makefile.am): Remove lib_SOURCES; now handled by AC_LIBSOURCES.
23085
23086 2005-01-18  Jim Meyering  <jim@meyering.net>
23087
23088         Merge from coreutils.
23089         * m4/chdir-long.m4, m4/openat.m4: New files.
23090         * m4/save-cwd.m4 (gl_SAVE_CWD): Add AC_LIBSOURCES for save-cwd.c,
23091         save-cwd.h.  Add AC_LIBOBJ for save-cwd.
23092         * m4/chown.m4 (gl_FUNC_CHOWN): When cross-compiling, assume that chown
23093         is sane and DOES follow symlinks.  Besides, testing 20 different
23094         systems found no broken chown implementations.
23095         Prompted by a change in rsync's copy of this macro.
23096         * m4/jm-macros.m4 (gl_MACROS): Require gl_FUNC_CHDIR_LONG.
23097
23098         * m4/lchown.m4 (gl_FUNC_LCHOWN): Use AC_LIBSOURCES.
23099
23100         * m4/utimes.m4: Work around tests/touch/empty-file failure on a system
23101         (sparc64, Linux-2.4.28, glibc-2.3.3) that didn't honor utimes'
23102         NULL-means-set-to-current-time semantics.
23103         Remove temporary file immediately, rather than waiting
23104         for configure's at-exit trap code to do it.
23105
23106 2005-01-18  Jim Meyering  <jim@meyering.net>
23107
23108         * lib/version-etc.c (version_etc_copyright): Update copyright date.
23109
23110         * lib/utimens.c (futimens): Account for the fact that futimes
23111         can also fail with errno == ENOSYS or errno == ENOENT.
23112         Patch from Dmitry V. Levin.
23113
23114         Change the name of the robust chdir function from chdir to chdir_long.
23115         * lib/save-cwd.c: Include chdir-long.h rather than chdir.h.
23116         (restore_cwd): Use chdir_long, not chdir.
23117         * lib/chdir-long.c: Renamed from chdir.c.
23118         * lib/chdir-long.h: Renamed from chdir.h.
23119         [!defined PATH_MAX]: Define chdir_long to chdir on systems like the
23120         Hurd.
23121
23122 2005-01-18  Bruno Haible  <bruno@clisp.org>
23123
23124         * m4/allocsa.m4, m4/codeset.m4, m4/copy-file.m4, m4/eaccess.m4:
23125         * m4/eealloc.m4, m4/eoverflow.m4, m4/execute.m4, m4/fatal-signal.m4:
23126         * m4/findprog.m4, m4/glibc21.m4, m4/iconv.m4, m4/intmax_t.m4:
23127         * m4/inttypes_h.m4, m4/lib-ld.m4, m4/lib-link.m4, m4/lib-prefix.m4:
23128         * m4/linebreak.m4, m4/localcharset.m4, m4/longdouble.m4:
23129         * m4/longlong.m4, m4/mbrtowc.m4, m4/mbstate_t.m4, m4/mbswidth.m4:
23130         * m4/mkdtemp.m4, m4/pipe.m4, m4/readlink.m4, m4/safe-read.m4:
23131         * m4/safe-write.m4, m4/setenv.m4, m4/sig_atomic_t.m4:
23132         * m4/signalblocking.m4, m4/signed.m4, m4/size_max.m4, m4/ssize_t.m4:
23133         * m4/stdbool.m4, m4/stdint_h.m4, m4/stpcpy.m4, m4/stpncpy.m4:
23134         * m4/strcase.m4, m4/strcspn.m4, m4/strpbrk.m4, m4/strstr.m4:
23135         * m4/ucs4-utf.m4, m4/uintmax_t.m4, m4/ulonglong.m4, m4/unicodeio.m4:
23136         * m4/utf-ucs4.m4, m4/vasnprintf.m4, m4/vasprintf.m4:
23137         * m4/wait-process.m4, m4/wchar_t.m4, m4/wint_t.m4, m4/xsize.m4:
23138         Use an all-permissive copyright notice, recommended by RMS.
23139
23140 2005-01-18  Bob Proulx  <bob@proulx.com>
23141
23142         * lib/obstack.c [DEFAULT_ALIGNMENT]: Use an intermediate type to
23143         simplify offsetof() macro construct to avoid compile failure with
23144         native HP-UX 11.0 ANSI C compiler.
23145
23146 2005-01-17  Bruno Haible  <bruno@clisp.org>
23147
23148         * lib/stpncpy.c: Remove HAVE_STPNCPY and gnu_stpncpy renaming,
23149         redundant because stpncpy.m4 takes care of it.
23150
23151 2005-01-17  Bruno Haible  <bruno@clisp.org>
23152
23153         * lib/progreloc.c: Include xalloc.h instead of xmalloc.h.
23154
23155 2005-01-17  Bruno Haible  <bruno@clisp.org>
23156
23157         * lib/progreloc.c (xstrdup): Define as strdup if no xmalloc should be
23158         used.
23159
23160 2005-01-17  Bruno Haible  <bruno@clisp.org>
23161
23162         * lib/fwriteerror.h (fwriteerror): Change specification to include
23163         fclose.
23164         * lib/fwriteerror.c: Include <stdbool.h>.
23165         (fwriteerror): At the end, close the file stream. Record whether
23166         stdout was already closed.
23167
23168 2005-01-17  Bruno Haible  <bruno@clisp.org>
23169
23170         * lib/execute.c (environ): Declare if needed.
23171         * lib/pipe.c (environ): Likewise.
23172         Reported by Michael Schloh von Bennewitz <michael.schloh@cw.com>.
23173
23174 2005-01-11  Sergey Poznyakoff  <gray@Mirddin.farlep.net>
23175
23176         * modules/argp: Depend on vsnprintf
23177
23178 2005-01-10  Jim Meyering  <jim@meyering.net>
23179
23180         * modules/closeout (Depends-on): Add atexit.
23181
23182 2005-01-06  Bruno Haible  <bruno@clisp.org>
23183
23184         * m4/stpncpy.m4 (gl_FUNC_STPNCPY): Rename stpncpy to gnu_stpncpy here.
23185
23186 2005-01-04  Paul Eggert  <eggert@cs.ucla.edu>
23187
23188         * lib/human.c (SIZE_MAX, UINTMAX_MAX): Move these conditional
23189         definitions to be after all include files, to avoid collisions.
23190         Problem reported by Bob Proulx.
23191
23192 2005-01-04  Jim Meyering  <jim@meyering.net>
23193
23194         Changes imported from coreutils.
23195         * m4/mkstemp.m4 (gl_FUNC_MKSTEMP): Rather than using "conftestXXXXXX"
23196         as the mkstemp template, use a temporary directory and an
23197         8.3-friendly template to avoid trouble on systems like DJGPP.
23198         Reported by Juan M. Guerrero via Stepan Kasal.
23199         * m4/(gl_FUNC_MKSTEMP): Include <unistd.h> for the declaration of
23200         close. Remove the temporary directory right away, rather than waiting
23201         for configure's at-exit trap code to do it.
23202         Suggestion from Stepan Kasal.
23203
23204 2005-01-01  Simon Josefsson  <jas@extundo.com>
23205
23206         * gnulib-tool: Print #include directives when --import'ing.
23207
23208 2004-12-28  Simon Josefsson  <jas@extundo.com>
23209
23210         * tests/test-base64.c: Include required header files.  Remove
23211         unused variables.
23212
23213 2004-12-28  Paul Eggert  <eggert@cs.ucla.edu>
23214
23215         * modules/error (Depends-on): Remove gettext.
23216
23217 2004-12-28  Paul Eggert  <eggert@cs.ucla.edu>
23218
23219         * lib/error.c [!_LIBC && !ENABLE_NLS]: Do not include "gettext.h";
23220         not needed.  This removes a dependency on the gettext module.
23221         [defined _LIBC]: Do not include <libintl.h>; not needed.
23222
23223 2004-12-24  Paul Eggert  <eggert@cs.ucla.edu>
23224
23225         * m4/c-strtod.m4 (gl_C99_STRTOLD): New macro.
23226         (gl_C_STRTOD): Use it instead of AC_CHECK_DECLS_ONCE(strtold).
23227
23228 2004-12-24  Paul Eggert  <eggert@cs.ucla.edu>
23229
23230         * lib/c-strtod.c (STRTOD): Depend on HAVE_C99_STRTOLD, not
23231         HAVE_DECL_STRTOLD.
23232
23233 2004-12-23  Paul Eggert  <eggert@cs.ucla.edu>
23234
23235         * modules/getdate (Depends-on): Remove alloca-opt.
23236
23237 2004-12-23  Paul Eggert  <eggert@cs.ucla.edu>
23238
23239         * m4/getdate.m4 (gl_GETDATE): Remove AC_FUNC_ALLOCA.
23240
23241 2004-12-23  Paul Eggert  <eggert@cs.ucla.edu>
23242
23243         * lib/argp-parse.c: Include <stddef.h>.
23244         (alignof, alignto): New macros.
23245         (parser_init): Don't assume that void * is aligned sufficiently
23246         for struct option.
23247
23248         * lib/getdate.y (YYSTACK_USE_ALLOCA): Define to 0, since there's no
23249         need to extend the stack.
23250         (YYINITDEPTH): New macro, so that the initial stack isn't overly
23251         large.
23252
23253 2004-12-22  Sergey Poznyakoff  <gray@Mirddin.farlep.net>
23254
23255         * lib/argp-parse.c (parser_init): Avoid arithmetics on void pointers.
23256
23257 2004-12-19  Paul Eggert  <eggert@cs.ucla.edu>
23258
23259         * modules/regex (lib_SOURCES): Remove regex.c, undoing previous
23260         (2004-10-24) change.  Apparently this was a false alarm.
23261
23262         * modules/getdate: Depend on alloca-opt, not alloca.
23263
23264 2004-12-19  Paul Eggert  <eggert@cs.ucla.edu>
23265
23266         * lib/alloca_.h: Conditionalize on _GNULIB_ALLOCA_H, not _ALLOCA_H.
23267         Remove now-obsolete comment about AIX.
23268         * lib/getdate.y: Include <alloca.h> only if HAVE_ALLOCA.
23269         (YYSTACK_USE_ALLOCA): Define to 0 if !HAVE_ALLOCA.
23270         (YYMAXDEPTH): New macro.
23271
23272 2004-12-18  Simon Josefsson  <jas@extundo.com>
23273
23274         * modules/alloca: Depend on alloca-opt, instead of duplicating it.
23275
23276 2004-12-18  Bruno Haible  <bruno@clisp.org>
23277
23278         * m4/fatal-signal.m4 (gl_FATAL_SIGNAL): Also test for sigaction.
23279
23280 2004-12-18  Bruno Haible  <bruno@clisp.org>
23281
23282         * lib/fatal-signal.c (fatal_signals): Make non-const.
23283         (init_fatal_signals): New function.
23284         (uninstall_handlers, install_handlers): Ignore signals that were set to
23285         SIG_IGN.
23286         (at_fatal_signal): Call init_fatal_signals.
23287         (init_fatal_signal_set): Likewise. Ignore signals that were set to
23288         SIG_IGN.
23289         Reported by Paul Eggert.
23290
23291 2004-12-18  Bruno Haible  <bruno@clisp.org>
23292
23293         * doc/alloca.texi: New file.
23294         * doc/alloca-opt.texi: New file.
23295
23296 2004-12-17  Jim Meyering  <jim@meyering.net>
23297
23298         * config/install-sh: Use `(exit N); exit N', not `(exit N); exit'.
23299         Otherwise, install-sh could exit with improper exit status when
23300         exiting via a trapped interrupt.  Thanks to a report from Bob Proulx.
23301
23302 2004-12-16  Simon Josefsson  <jas@extundo.com>
23303
23304         * tests/test-base64.c: Add license.
23305
23306 2004-12-15  Stepan Kasal  <address@hidden>
23307
23308         * gnulib-tool (func_emit_lib_Makefile_am): Shorten a long sed command.
23309
23310 2004-12-12  Paul Eggert  <eggert@cs.ucla.edu>
23311
23312         * modules/getcwd (Files): Add m4/d-ino.m4.
23313         Suggested by Mark D. Baushke.
23314
23315 2004-12-08  Paul Eggert  <eggert@cs.ucla.edu>
23316
23317         * lib/getdate.y (textint): New member "negative".
23318         (time_zone_hhmm): New function.
23319         Expect 14 shift-reduce conflicts, not 13.
23320         (o_colon_minutes): New rule.
23321         (time, zone): Use it to add support for +HH:MM, UTC+HH:MM.
23322         (yylex): Set the "negative" member of signed numbers.
23323
23324 2004-12-08  Paul Eggert  <eggert@cs.ucla.edu>
23325
23326         * doc/getdate.texi (Time of day items, Time zone items):
23327         Describe new formats +00:00, UTC+00:00.
23328
23329 2004-12-07  Paul Eggert  <eggert@cs.ucla.edu>
23330
23331         * m4/ls-mntd-fs.m4 (AC_FUNC_GETMNTENT): Fix typo in previous change:
23332         spurious "-l"s.  Problem reported by Stepan Kasal.
23333
23334 2004-12-06  Paul Eggert  <eggert@cs.ucla.edu>
23335
23336         * m4/ls-mntd-fs.m4 (AC_FUNC_GETMNTENT): New macro, to work around bug
23337         in Autoconf 2.59.  Problem reported by Mark D. Baushke.
23338
23339 2004-12-04  Simon Josefsson  <jas@extundo.com>
23340
23341         * modules/getaddrinfo (License): Add LGPL, reported by Yoann
23342         Vandoorselaere <yoann@prelude-ids.org>.
23343
23344 2004-12-04  Paul Eggert  <eggert@cs.ucla.edu>
23345
23346         Changes imported from coreutils.
23347         * m4/hard-locale.m4 (gl_HARD_LOCALE): Assume locale.h and setlocale
23348         exist.
23349         * m4/human.m4 (gl_HUMAN): Assume locale.h and localeconv exist.
23350
23351 2004-12-04  Paul Eggert  <eggert@cs.ucla.edu>
23352
23353         Changes imported from coreutils.
23354         * lib/hard-locale.c: Assume <locale.h> exists.
23355         Include "strdup.h".
23356         (GLIBC_VERSION): New macro.
23357         (hard_locale): Assume setlocale exists.
23358         Rewrite to avoid #ifdef.
23359         Use strdup rather than malloc + strcpy.
23360         * lib/human.c: Assume <locale.h> exists.
23361         (human_readable): Assume localeconv exists.
23362
23363 2004-12-04  Paul Eggert  <eggert@cs.ucla.edu>
23364
23365         * modules/hard-locale (Depends-on): Add strdup.
23366
23367 2004-12-01  Jakub Jelinek  <jakub@redhat.com>
23368
23369         * lib/mktime.c (__mktime_internal): If SEC_REQUESTED != SEC,
23370         convert T2, not T.  (Imported from libc.)
23371
23372 2004-11-30  Simon Josefsson  <jas@extundo.com>
23373
23374         * modules/restrict (License): Change to LGPL.
23375
23376 2004-11-30  Simon Josefsson  <jas@extundo.com>
23377
23378         * m4/restrict.m4: Add copyright and copying conditions.
23379
23380 2004-11-30  Simon Josefsson  <jas@extundo.com>
23381
23382         * m4/base64.m4: New file.
23383
23384 2004-11-30  Simon Josefsson  <jas@extundo.com>
23385
23386         * MODULES.html.sh (Extra functions based on ANSI C 89): Add
23387         base64.
23388
23389         * tests/test-base64.c: New file.
23390
23391         * modules/base64: New file.
23392
23393 2004-11-30  Paul Eggert  <eggert@cs.ucla.edu>
23394
23395         * m4/getcwd-path-max.m4 (gl_FUNC_GETCWD_PATH_MAX):
23396         Define HAVE_PARTLY_WORKING_GETCWD if getcwd is partly working.
23397
23398         * m4/readutmp.m4 (gl_READUTMP): Don't check for sys/param.h.
23399
23400 2004-11-30  Paul Eggert  <eggert@cs.ucla.edu>
23401
23402         * lib/getcwd.c (is_ENAMETOOLONG): New macro.
23403         (__getcwd.c): Don't restore errno; glibc doesn't.
23404         [HAVE_PARTLY_WORKING_GETCWD && !defined AT_FDCWD]: Try system getcwd
23405         first, falling back to our code only if its results look suspicious.
23406         Ensure that the resulting buffer is only as large as necessary.
23407
23408         * lib/readutmp.c: Include readutmp.h first.
23409         Include <errno.h>, since readutmp.h no longer does that.
23410         * lib/readutmp.h: Don't include <errno.h>,
23411         <sys/param.h>, <time.h>; not needed to establish interface.
23412         (errno): Remove decl.
23413         (HAVE_STRUCT_XTMP_UT_TYPE): Remove; no longer needed.
23414         (UT_TYPE_EQ, UT_TYPE_NOT_DEFINED, UT_TYPE_BOOT_TIME,
23415         UT_TYPE_USER_PROCESS, IS_USER_PROCESS): New macros.
23416
23417 2004-11-28  Simon Josefsson  <jas@extundo.com>
23418
23419         * lib/base64.h, base64.c: New file.
23420
23421 2004-11-27  Paul Eggert  <eggert@cs.ucla.edu>
23422
23423         * lib/getcwd.h: New file, which I forgot to check in on 2004-11-25.
23424
23425 2004-11-26  Paul Eggert  <eggert@cs.ucla.edu>
23426
23427         * modules/getcwd (Files): Add lib/getcwd.h, m4/getcwd.m4.
23428         (Depends-on): Remove pathmax, same.  Add mempcpy.
23429         (configure.ac): GL_FUNC_GETCWD_PATH_MAX -> gl_FUNC_GETCWD.
23430         (Makefile.am): Append getcwd.h to lib_SOURCES.
23431         (Include): Add getcwd.h.
23432         (Maintainer): Change from Jim Meyering to "all, glibc",
23433         since getdate now uses intended-for-glibc code.
23434         * modules/xgetcwd (Files): Remove m4/getcwd.m4.
23435         (Depends-on): Depend on getcwd.  Do not depend on pathmax.
23436
23437 2004-11-25  Paul Eggert  <eggert@cs.ucla.edu>
23438
23439         Fix problems reported by Scott S. Tinsley for HP-UX 11.11 using
23440         HP's ANSI C compiler.
23441         * lib/fsusage.c (statvfs) [HAVE_SYS_STATVFS_H]: Remove decl.
23442         Declaring int functions causes warnings on some modern systems and
23443         shouldn't be needed to compile on ancient ones.
23444         * lib/same.c (MIN) [defined MIN]: Don't define, since it's already
23445         defined.
23446
23447         * lib/getcwd.c: Replace by a copy of glibc/sysdeps/posix/getcwd.c, but
23448         with the following changes.
23449         (__set_errno): Parenthesize properly.
23450         Include <stdbool.h>.
23451         (MIN, MAX, MATCHING_INO): New macros.
23452         (__getcwd): Define with prototype, not K&R form.
23453         Use heuristics to allocate default buffer on stack if possible.
23454         If AT_FDCWD is defined, use openat and fstatat to avoid O(N**2)
23455         behavior, and to avoid the PATH_MAX limit when computing
23456         ../../../../...
23457         Use MATCHING_INO to compare inode number to file.
23458         Check for arithmetic overflow in size calculations.
23459         Fix bug in reallocation of dot array that caused getcwd to fail
23460         on directories nested deeper than 75.
23461         Be more careful about saving errno on error.
23462         Do not use realloc; use only free+malloc, as this is a bit
23463         more flexible and avoids a needless copy operation.
23464         Do not inspect st_dev and st_ino for symbolic links; POSIX
23465         doesn't specify the latter.
23466         Check for closedir errors.
23467         Avoid needless casts.
23468         Use "#ifdef weak_alias" around weak_alias, to be like other
23469         glibc code.
23470         The following changes to getcwd.c have effect only when used in
23471         gnulib; they have no effect inside glibc proper.
23472         (#pragma alloca) [defined _AIX && !defined __GNUC__]: Remove,
23473         as alloca isn't used.
23474         (alloca, __alloca): Likewise.
23475         [!_LIBC]: Include "getcwd.h", "mempcpy.h".
23476         Include <stddef.h>, <stdlib.h>, <string.h>, <limits.h>
23477         unconditionally, as gnulib assumes C89 or better.
23478         Do not include <sys/param.h>.
23479         (errno) [!defined __GNU_LIBRARY__ && !defined STDC_HEADERS]: Remove
23480         no-longer-necessary 'extern int errno' decl; gnulib assumes C89 or
23481         better.
23482         (NULL) [!defined NULL]: Remove; we assume C89 or better.
23483         Include <dirent.h> in a way that is compatible with modern Autoconf.
23484         (_D_ALLOC_NAMELEN, _D_EXACT_NAMLEN):
23485         New macros, if not already defined.
23486         Include <unistd.h> if _LIBC, not if __GNU_LIBRARY__.
23487         Use "_LIBC", not "defined _LIBC", for consistency.
23488         (HAVE_MEMPCPY): Remove; no longer needed now that gnulib has
23489         a mempcpy module.
23490         (__lstat, __closedir, __opendir, __readdir) [!_LIBC]: New macros.
23491         (GETCWD_RETURN_TYPE): Remove.  All uses replaced by char *.
23492         * lib/xgetcwd.c: David MacKenzie's old code was removed, so give
23493         credit only to Jim Meyering and adjust the copyright dates.
23494         Do not include <limits.h>, <stdio.h>, <sys/types.h>,
23495         <stdlib.h>, <unistd.h>, "pathmax.h".
23496         Instead, include "xgetcwd.h" (first) and "getcwd.h".
23497         (INITIAL_BUFFER_SIZE): Remove.
23498         (xgetcwd): Rely on getcwd, since we now depend on a reliable one.
23499
23500 2004-11-25  Paul Eggert  <eggert@cs.ucla.edu>
23501
23502         * m4/getcwd-path-max.m4 (gl_FUNC_GETCWD_PATH_MAX): Renamed from
23503         GL_FUNC_GETCWD_PATH_MAX for consistency.  All uses changed.
23504         Use the _ONCE methods, for efficiency.
23505         Check for fcntl.h.  In test program, include <errno.h>
23506         and <fcntl.h> if available.  Remove old K&R cruft from
23507         test program.  Check for common errors in GNU/Linux,
23508         OpenBSD, and Solaris.  Just set gl_cv_func_getcwd_path_max;
23509         don't do AC_LIBOBJ, as that's getcwd.m4's job.
23510         * m4/getcwd.m4 (gl_FUNC_GETCWD_NULL): Renamed from
23511         AC_FUNC_GETCWD_NULL.  All used changed.  Change cache variable
23512         name accordingly.
23513         (gl_FUNC_GETCWD, gl_PREREQ_GETCWD): New macros.  Revamp to
23514         accommodate new getcwd.c.
23515         * m4/jm-macros.m4 (gl_MACROS): Don't require GL_FUNC_GETCWD_PATH_MAX.
23516         * m4/prereq.m4 (gl_PREREQ): Add gl_FUNC_MEMPCPY.
23517         * m4/xgetcwd.m4 (gl_XGETCWD): Replace with gl_FUNC_GETCWD, since
23518         that's all we need now.
23519
23520 2004-11-23  Sergey Poznyakoff  <gray@Mirddin.farlep.net>
23521
23522         * m4/argp.m4 (gl_ARGP): Require gl_GETOPT_SUBSTITUTE unconditionally:
23523         argp-parse.c depends on getopt internals, that means we should
23524         always use our getopt, to be on the safe side.
23525         * m4/getopt.m4 (gl_GETOPT): Check if GETOPT_H is already set, in
23526         order not to spoil the result of an eventual previous invocation
23527         of gl_GETOPT_SUBSTITUTE.
23528
23529 2004-11-23  Sergey Poznyakoff  <gray@Mirddin.farlep.net>
23530
23531         * lib/getopt_.h: Re-addition of __getopt_argv_const caused
23532         redefinition warnings. To avoid them, include the defines
23533         in `#if !defined __need_getopt ... #endif'. The only place
23534         where __getopt_argv_const is used is in definitions
23535         of getopt_long and getopt_long_only below, which are as well
23536         protected by `#ifndef __need_getopt'.
23537         [defined __GETOPT_PREFIX && !defined __need_getopt]: Undef
23538         __need_getopt after including <stdio.h> and <unistd.h> These
23539         headers might have defined it.
23540
23541 2004-11-23  Paul Eggert  <eggert@cs.ucla.edu>
23542
23543         * m4/utimens.m4 (gl_UTIMENS): Check for futimes function.
23544
23545 2004-11-23  Paul Eggert  <eggert@cs.ucla.edu>
23546
23547         * lib/utimens.c (__attribute__, ATTRIBUTE_UNUSED): New macros.
23548         (futimens): New function, which uses futimes if available.
23549         (futimens, utimens): Support timespec==NULL, with same semantics
23550         as utime and utimens.
23551         * lib/utimens.h (futimens): New decl.
23552
23553 2004-11-23  Jim Meyering  <jim@meyering.net>
23554
23555         * lib/getopt_.h: Remove trailing blanks.
23556
23557 2004-11-23  Jim Meyering  <jim@meyering.net>
23558
23559         * lib/__fpending.c: Add comment.
23560
23561 2004-11-22  Paul Eggert  <eggert@cs.ucla.edu>
23562
23563         * modules/canonicalize (Depends-on): Add xreadlink.
23564         Problem reported by James Youngman.
23565
23566 2004-11-20  Paul Eggert  <eggert@cs.ucla.edu>
23567
23568         * lib/getopt_.h (__GETOPT_CONCAT, __GETOPT_XCONCAT, __GETOPT_ID):
23569         New macros.
23570         (getopt, getopt_long, getopt_long_only, optarg, opterr, optind,
23571         optopt): Use them instead of invoking ## directly; otherwise, the
23572         symbols will be __GETOPT_PREFIXgetopt rather than rpl_getopt.
23573
23574 2004-11-19  Bruno Haible  <bruno@clisp.org>
23575
23576         * lib/strtok_r.c: Move comments from here...
23577         * lib/strtok_r.h: ... to here.
23578
23579 2004-11-17  Paul Eggert  <eggert@cs.ucla.edu>
23580
23581         * m4/calloc.m4 (_AC_FUNC_CALLOC_IF): Check for buggy calloc
23582         implementations that mishandle size_t overflow.
23583
23584 2004-11-17  Paul Eggert  <eggert@cs.ucla.edu>
23585
23586         * lib/realloc.c (rpl_realloc): Call 'free' if n==0, since realloc
23587         might fail.  Problem reported by Yoann Vandoorselaere.
23588         * lib/calloc.c (rpl_calloc): Defend against buggy calloc
23589         implementations that mishandle size_t overflow.
23590
23591 2004-11-16  Paul Eggert  <eggert@cs.ucla.edu>
23592
23593         * modules/canon-host (Depends-on): Add strdup.
23594
23595 2004-11-16  Paul Eggert  <eggert@cs.ucla.edu>
23596
23597         * m4/canon-host.m4 (gl_CANON_HOST): Check for getaddrinfo.
23598
23599 2004-11-16  Paul Eggert  <eggert@cs.ucla.edu>
23600
23601         * lib/canon-host.c: Include "strdup.h".
23602         (canon_host): Use getaddrinfo if available, so that IPv6 works.
23603         Use strdup instead of malloc/strcpy to duplicate strings.
23604
23605         * lib/human.h (LONGEST_HUMAN_READABLE): Add 1 for space before unit.
23606         (human_space_before_unit): New constant.
23607         * lib/human.c (human_readable): Support it.
23608
23609         * lib/xgetcwd.c: Include <limits.h>, for PATH_MAX.
23610         (xgetcwd): Set errno correctly when failing.
23611         Work around Solaris 9 bug: getcwd sets errno==ERANGE even though
23612         the failure is actually due to a PATH_MAX problem.
23613
23614         Further getopt changes to make it more likely that glibc will
23615         buy the changes back.
23616         * lib/getopt.c (POSIXLY_CORRECT): New constant.
23617         (getopt): Use it, so to preserve glibc semantic
23618         * lib/getopt1.c (getopt_long, getopt_long_only): Arg is char * const *
23619         when compiling for libc.
23620         * lib/getopt_.h (__getopt_argv_const): Bring it back.
23621         (getopt_long, getopt_long_only): Use it.
23622
23623         * lib/getopt.c (_getopt_initialize, _getopt_internal_r,
23624         _getopt_internal): New arg POSIXLY_CORRECT.  All callers changed.
23625         (getopt): Argv is now char * const *, as per standard.
23626         (_getopt_internal_r, _getopt_internal): Argv is now char **,
23627         not char *__getopt_argv_const *.
23628         * lib/getopt1.c (getopt_long, _getopt_long_r, getopt_long_only,
23629         _getopt_long_only_r): Likewise.
23630         * lib/getopt_.h (getopt, getopt_long, geopt_long_only): Likewise.
23631         * lib/getopt_int.h (_getopt_internal, _getopt_internal_r,
23632         _getopt_long_r, _getopt_long_only_r): Likewise.
23633         * lib/getopt_.h (__getopt_argv_const): Remove.
23634         (getopt): Argv is now char * const *, as per standard.
23635
23636         * lib/getdate.y (tORDINAL): New token.
23637         (day, relunit): Allow it for relative times.
23638         (relative_time_table): Use tORDINAL for ordinals.
23639
23640 2004-11-16  Paul Eggert  <eggert@cs.ucla.edu>
23641
23642         * doc/getdate.texi (General date syntax): "next" is 1, not 2.
23643         Document that "second" isn't allowed as an ordinal number.
23644
23645 2004-11-16  Jim Meyering  <jim@meyering.net>
23646
23647         * modules/closeout (Depends-on): Add fpending.
23648
23649 2004-11-15  Jim Meyering  <jim@meyering.net>
23650
23651         * lib/closeout.c: Include "__fpending.h" once again.
23652         Include <stdbool.h>.
23653         (close_stdout): Don't fail just because stdout was closed initially,
23654         since some programs don't write to stdout in the normal course of
23655         operation (other than --version and --help), and we don't want this
23656         function to make e.g. `touch file >&-' fail.
23657         But do fail if it was closed and someone has tried to write to it.
23658         E.g., `printf foo >&-' must fail.
23659
23660 2004-11-13  Jim Meyering  <jim@meyering.net>
23661
23662         * m4/jm-macros.m4: Do require gl_FUNC_FPENDING.
23663
23664 2004-11-12  Simon Josefsson  <jas@extundo.com>
23665
23666         * config/srclist.txt: Add strtok_r.c, glibc bought our changes, but a
23667         small doc fix is still pending.
23668
23669 2004-11-11  Simon Josefsson  <jas@extundo.com>
23670
23671         * modules/strtok_r: New file.
23672
23673         * MODULES.html.sh (Support for systems lacking POSIX:2001): Add
23674         strtok_r.
23675
23676 2004-11-11  Simon Josefsson  <jas@extundo.com>
23677
23678         * m4/strtok_r.m4: New file.
23679
23680         * m4/getopt.m4: Replace opterr.
23681
23682 2004-11-11  Simon Josefsson  <jas@extundo.com>
23683
23684         * lib/strtok_r.h, strtok_r.c: New file.
23685
23686 2004-11-11  Paul Eggert  <eggert@cs.ucla.edu>
23687
23688         * m4/getopt.m4 (gl_GETOPT_SUBSTITUTE): Define __GETOPT_PREFIX instead
23689         of replacing opterr, getopt, etc.  This should handle the
23690         powerpc-apple-darwin5.5 problem recently noted by Simon Josefsson.
23691
23692 2004-11-11  Paul Eggert  <eggert@cs.ucla.edu>
23693
23694         * lib/getopt_.h (__getopt_argv_const): New macro, to be used so that
23695         we can stop lying to compilers about the constness of argv when we
23696         are compiled outside glibc.
23697         (getopt, getopt_long, getopt_long_only): Use it.
23698         * lib/getopt.c (_getopt_initialize, _getopt_internal_r,
23699         _getopt_internal, getopt): Likewise.
23700         * lib/getopt1.c (getopt_long, _getopt_long_r, getopt_long_only,
23701         _getopt_long_only_r): Likewise.
23702         * lib/getopt_int.h (_getopt_internal, _getopt_internal_r,
23703         _getopt_long_r, _getopt_long_only_r): Likewise.
23704
23705         * lib/getopt_.h [defined __GETOPT_PREFIX && !defined __need_getopt]:
23706         Include <stdlib.h> and <stdio.h>, and <unistd.h> if available.
23707         Then rename getopt to __GETOPT_PREFIX##getopt, and so forth for
23708         the other external symbols.
23709         (getopt) [!defined __GNU_LIBRARY]: Use prototype, not old-style
23710         declaration, since the above renaming now works around collisions.
23711
23712 2004-11-11  Jim Meyering  <jim@meyering.net>
23713
23714         * lib/linebreak.c: Remove trailing blanks.
23715         * lib/alloca_.h: Likewise.
23716         * lib/acosl.c: Likewise.
23717         * lib/euidaccess.c: Likewise.
23718         * lib/allocsa.h: Likewise.
23719
23720 2004-11-10  Simon Josefsson  <jas@extundo.com>
23721
23722         * m4/getaddrinfo.m4: New file.
23723
23724 2004-11-10  Simon Josefsson  <jas@extundo.com>
23725
23726         * lib/getaddrinfo.h, lib/getaddrinfo.c: New files.
23727
23728 2004-11-10  Simon Josefsson  <jas@extundo.com>
23729
23730         * MODULES.html.sh (Support for systems lacking POSIX:2001): Add
23731         getaddrinfo.
23732
23733         * modules/getaddrinfo: New file.
23734
23735 2004-11-10  Paul Eggert  <eggert@cs.ucla.edu>
23736
23737         * m4/prereq.m4 (gl_PREREQ): Require gt_FUNC_SETENV.
23738
23739 2004-11-10  Paul Eggert  <eggert@cs.ucla.edu>
23740
23741         * lib/mktime.c (SHR): New macro, which is a portable
23742         substitute for >> that should work even on Crays.
23743         (TIME_T_MIDPOINT, ydhms_diff, __mktime_internal): Use it.
23744         Problem reported by Mark D. Baushke in
23745         <http://lists.gnu.org/archive/html/bug-gnulib/2004-11/msg00071.html>.
23746         * lib/getdate.y (SHR): Likewise.
23747         (tm_diff): Use it.
23748         * lib/strftime.c (SHR): Likewise.
23749         (tm_diff): Use it.
23750         * lib/quotearg.c (struct quoting_options): Use unsigned int for
23751         quote_these_too, so that right shifts are well defined.  All uses
23752         changed.
23753
23754 2004-11-10  Jim Meyering  <jim@meyering.net>
23755
23756         Ensure that no close failure goes unreported.
23757         * lib/closeout.c (close_stdout): Always close stdout.  I.e., don't
23758         return early when it seems there's nothing to flush.
23759         Don't include __fpending.h.
23760
23761 2004-11-10  Jim Meyering  <jim@meyering.net>
23762
23763         * modules/closeout (Depends-on): Remove fpending.
23764
23765 2004-11-10  Jim Meyering  <jim@meyering.net>
23766
23767         * m4/jm-macros.m4 (gl_MACROS): Don't require gl_FUNC_FPENDING.
23768
23769 2004-11-09  Paul Eggert  <eggert@cs.ucla.edu>
23770
23771         * m4/strftime.m4 (_gl_STRFTIME_PREREQS): Remove.  Move its body to
23772         gl_FUNC_STRFTIME.
23773         (gl_FUNC_STRFTIME): Use AC_CHECK_FUNCS_ONCE and AC_CHECK_HEADERS_ONCE
23774         and AC_REQUIRE when possible, to avoid duplicate checks.
23775         Check for <wchar.h>.
23776
23777 2004-11-09  Paul Eggert  <eggert@cs.ucla.edu>
23778
23779         * lib/strftime.c (DO_MULTIBYTE): Check for wchar.h, too.
23780
23781 2004-11-09  Bruno Haible  <bruno@clisp.org>
23782
23783         * m4/sockpfaf.m4: New file.
23784
23785 2004-11-05  Bruno Haible  <bruno@clisp.org>
23786
23787         * lib/readlink.c: Include stddef.h, needed for size_t on Woe32.
23788         Reported by Mark D. Baushke <mdb@cvshome.org>.
23789
23790 2004-11-04  Bruno Haible  <bruno@clisp.org>
23791
23792         2004-09-11  Bruno Haible  <bruno@clisp.org>
23793                 * allocsa.valgrind: New file.
23794         2004-02-06  Bruno Haible  <bruno@clisp.org>
23795                 * allocsa.h (sa_alignof): Define differently with HP-UX cc, to
23796                 avoid a bug of this cc on HP-UX 10.20 dealing with enums.
23797                 Reported by Christopher Seip <chris.seip@hp.com>.
23798
23799 2004-11-04  Bruno Haible  <bruno@clisp.org>
23800
23801         * modules/allocsa (Files): Add lib/allocsa.valgrind.
23802         (Makefile.am): Distribute it.
23803
23804 2004-11-03  Paul Eggert  <eggert@cs.ucla.edu>
23805
23806         * lib/xreadlink.c (xreadlink): AIX and HP-UX readlink return -1
23807         with errno == ERANGE if the buffer is too small.
23808         Problem reported by Mark D. Baushke.
23809
23810 2004-11-03  Albert Chin  <china@thewrittenword.com>
23811             Paul Eggert  <eggert@cs.ucla.edu>
23812
23813         * m4/uint32_t.m4 (gl_AC_TYPE_UINT32_T): When determining uint32_t
23814         equivalent, substitute $ac_type for equivalent type rather than
23815         blindly using uint32_t *always* which won't work if uint32_t is not
23816         available.  Define _UINT32_T to work around typedef of uint32_t if
23817         <sys/sched.h>, <pthread.h>, or <semaphore.h> used on Solaris
23818         2.5.1.
23819
23820 2004-11-02  Paul Eggert  <eggert@cs.ucla.edu>
23821
23822         * m4/jm-macros.m4: Sync from coreutils.
23823         (gl_MACROS): Check for mbrlen, for pathchk.
23824         (gl_CHECK_ALL_TYPES): Require AC_TYPE_MBSTATE_T, for pathchk.
23825
23826 2004-11-02  Paul Eggert  <eggert@cs.ucla.edu>
23827
23828         * lib/xreadlink.c (MAXSIZE): New macro.
23829         (xreadlink): Use it instead of SSIZE_MAX.  Ensure initial buffer
23830         size does not exceed MAXSIZE.  Avoid cast.
23831         As suggested by Mark D. Baushke in
23832         <http://lists.gnu.org/archive/html/bug-gnulib/2004-11/msg00009.html>,
23833         if readlink fails with buffer size just under MAXSIZE, try again
23834         with MAXSIZE.
23835
23836 2004-11-02  Paul Eggert  <eggert@cs.ucla.edu>
23837
23838         * config/srclist.txt: Add mktime.c; glibc bought all our changes.
23839
23840 2004-11-02  Derek R. Price  <derek@ximbiot.com>
23841         and  Paul Eggert  <eggert@cs.ucla.edu>
23842
23843         * lib/getdate.y [!TEST]: Include <stdio.h>, since we use sprintf now.
23844         (get_date): Overparenthesize to avoid GCC warning.
23845
23846 2004-11-02  Bruno Haible  <bruno@clisp.org>
23847
23848         * m4/setenv.m4 (gt_FUNC_SETENV): Define VOID_UNSETENV if unsetenv()
23849         returns void.
23850
23851 2004-11-02  Bruno Haible  <bruno@clisp.org>
23852
23853         * lib/setenv.h (unsetenv): Define as a macro if the system's unsetenv()
23854         function returns void.
23855
23856 2004-11-01  Paul Eggert  <eggert@cs.ucla.edu>
23857
23858         * m4/getpass.m4 (gl_PREREQ_GETPASS): Check for declarations of
23859         fflush_unlocked, flockfile, funlockfile, funlockfile,
23860         fputs_unlocked, putc_unlocked.
23861
23862 2004-11-01  Paul Eggert  <eggert@cs.ucla.edu>
23863
23864         * lib/getpass.c (fflush_unlocked, flockfile, funlockfile)
23865         (funlockfile, fputs_unlocked, putc_unlocked): Don't define if
23866         already declared.
23867
23868 2004-10-29  Paul Eggert  <eggert@cs.ucla.edu>
23869
23870         * modules/getdate (Files): Add doc/getdate.texi.
23871         (Depends-on): Add setenv, xalloc.
23872
23873 2004-10-29  Paul Eggert  <eggert@cs.ucla.edu>
23874
23875         * lib/getdate.y: Add support for TZ="foo" within a date string.
23876         Fix some bugs near time_t boundaries.  Reject dates with
23877         out-of-range components, e.g., "Sept 31".
23878         Include <stdlib.h>, "setenv.h", "xalloc.h".
23879         (ISDIGIT_LOCALE): Remove; unused.
23880         Note that the TZ and time functions used here are not reentrant.
23881         (mktime_ok, get_tz): New functions.
23882         (TZBUFSIZE): New constant.
23883         (get_date): Parse leading TZ="foo".  Reject out-of-range components;.
23884         This requires that we sometimes generate our own TZ="XXX..." setting.
23885
23886 2004-10-29  Paul Eggert  <eggert@cs.ucla.edu>
23887
23888         * doc/getdate.texi: New file, from coreutils with modifications for
23889         the new TZ parsing.
23890
23891 2004-10-27  Derek R. Price  <derek@ximbiot.com>
23892
23893         * lib/mktime.c (not_equal_tm): Remove redundant check.
23894
23895 2004-10-24  Paul Eggert  <eggert@cs.ucla.edu>
23896
23897         * modules/regex (lib_SOURCES): Add regex.c.
23898         Reported by James Youngman in
23899         <http://lists.gnu.org/archive/html/bug-gnulib/2004-10/msg00199.html>.
23900
23901 2004-10-24  Paul Eggert  <eggert@cs.ucla.edu>
23902
23903         * lib/getdate.y: Use Bison 1.875 features, and some minor
23904         code cleanups.  This change does not affect semantics.
23905         Don't include <stdlib.h>; no longer needed.
23906         Don't include unlocked-io.h; only the "#if TEST" code uses
23907         stdio, and performance isn't crucial there.
23908         (PC, YYLEX_PARAM, YYPARSE_PARAM): Remove; replaced by
23909         Bison 1.875 features as described below.
23910         All uses of "PC." replaced by "pc->".
23911         (YYSTYPE): Add a forward declaration.
23912         (yylex, yyerror): Use full prototypes in forward decls.
23913         Use "%pure-parser" rather than obsolescent "%pure_parser".
23914         Use %parse-param and %lex-param instead of obsolescent
23915         YYPARSE_PARAM and YYLEX_PARAM.
23916         (meridian_table, month_and_day_table, time_units_table,
23917         relative_time_table, time_zone_table, military_table,
23918         lookup_zone, lookup_word, get_date):
23919         Use NULL instead of 0 where appropriate.
23920         (to_hour): Avoid abort (), to avoid a dependency on
23921         stdlib.h.
23922         (yyerror, yylex): Now accepts parser_control * arg.
23923         (main) [TEST]: Use '\0' rather than 0 for char.
23924
23925 2004-10-22  Paul Eggert  <eggert@cs.ucla.edu>
23926
23927         * m4/getpagesize.m4 (gl_GETPAGESIZE): Check for <sys/param.h>.
23928
23929 2004-10-22  Paul Eggert  <eggert@cs.ucla.edu>
23930
23931         * lib/getpagesize.c (getpagesize): Don't assume <sys/param.h> exists.
23932         It's now the caller's responsibility to handle the case where
23933         !HAVE_GETPAGESIZE && !defined getpagesize.
23934
23935         * lib/mktime.c (leapyear): Arg is long int, not int.
23936
23937 2004-10-18  Paul Eggert  <eggert@cs.ucla.edu>
23938
23939         * lib/argp-fs-xinl.c, argp-xinl.c: Update from glibc.
23940
23941 2004-10-17  Paul Eggert  <eggert@cs.ucla.edu>
23942
23943         * gnulib-tool (func_emit_lib_Makefile_am): Fix typo: a $ was
23944         missing.  Problem reported by James Youngman.
23945
23946 2004-10-16  Simon Josefsson  <jas@extundo.com>
23947
23948         * gnulib-tool: Fix comments.  Fix parse problem.
23949         (func_emit_lib_Makefile_am): Don't hard code a in libgl_a_SOURCES.
23950
23951 2004-10-15  Paul Eggert  <eggert@cs.ucla.edu>
23952
23953         * m4/getopt.m4 (gl_GETOPT): Detect and reject the incompatible BSD
23954         implementation of getopt_long.  Problem reported by Alexander Taler in:
23955         http://lists.gnu.org/archive/html/bug-gnulib/2004-10/msg00103.html
23956
23957 2004-10-15  Bruno Haible  <bruno@clisp.org>
23958
23959         * gnulib-tool: Untabify. Initialize supplied_libname.
23960         (func_usage): More homogenous output.
23961         (func_modules_transitive_closure, func_modules_to_filelist,
23962         func_emit_lib_Makefile_am): New functions.
23963         (func_import): New function, extracted from big case statement. Use
23964         func_get_license, func_modules_transitive_closure,
23965         func_modules_to_filelist, func_emit_lib_Makefile_am. Initialize
23966         opt_lgpl. Don't use test -a, as it's not portable.
23967         (func_create_testdir): Use func_modules_transitive_closure,
23968         func_modules_to_filelist, func_emit_lib_Makefile_am.
23969
23970 2004-10-15  Bruno Haible  <bruno@clisp.org>
23971
23972         * gnulib-tool (func_import): Let gl_INIT define LTALLOCA when needed.
23973
23974 2004-10-15  Bruno Haible  <bruno@clisp.org>
23975
23976         * gnulib-tool (func_emit_lib_Makefile_am): Add markers to separate
23977         the portions belonging to each module.
23978         Suggested by Derek Robert Price <derek@ximbiot.com>.
23979
23980 2004-10-12  Simon Josefsson  <jas@extundo.com>
23981
23982         * lib/getpass.c (fflush_unlocked, flockfile, funlockfile)
23983         (fputs_unlocked, putc_unlocked) [!_LIBCS && !USE_UNLOCKED_IO]: Map
23984         to real functions.
23985
23986 2004-10-11  Yoann Vandoorselaere  <yoann@prelude-ids.org>
23987
23988         * modules/vsnprintf: New file.
23989
23990 2004-10-11  Yoann Vandoorselaere  <yoann@prelude-ids.org>
23991
23992         * m4/vsnprintf.m4: New file.
23993
23994 2004-10-11  Yoann Vandoorselaere  <yoann@prelude-ids.org>
23995
23996         * lib/vsnprintf.h: New file.
23997         * lib/vsnprintf.c: New file.
23998
23999 2004-10-11  Bruno Haible  <bruno@clisp.org>
24000
24001         * MODULES.html.sh (Support for systems lacking ISO C 99): Add
24002         vsnprintf.
24003
24004 2004-10-10  Paul Eggert  <eggert@cs.ucla.edu>
24005
24006         * config/srclistvars.sh: Add GNUSTANDARDS (for eggert only).
24007
24008 2004-10-07  Bruno Haible  <bruno@clisp.org>
24009
24010         * lib/snprintf.c (snprintf): Avoid a memory allocation if the result
24011         fits into the provided buffer.
24012
24013 2004-10-06  Paul Eggert  <eggert@cs.ucla.edu>
24014
24015         * lib/diacrit.c, diacrit.h: Add GPL notice.
24016
24017         * lib/atanl.c, logl.c: Add GPL notice, to match glibc's added LGPL
24018         notice.
24019         * lib/atanl.c (atanl): Keep the code as similar to glibc as possible.
24020         * lib/logl.c (logl): Keep the code as similar to glibc as possible.
24021         This avoids a potential constant-folding bug.
24022
24023 2004-10-05  Bruno Haible  <bruno@clisp.org>
24024
24025         * m4/strsep.m4 (gl_FUNC_STRSEP): Require AC_GNU_SOURCE. Don't check
24026         for the declaration of strsep.
24027
24028 2004-10-05  Bruno Haible  <bruno@clisp.org>
24029
24030         * lib/strsep.h: Don't declare strsep() if HAVE_STRSEP.
24031
24032 2004-10-04  Simon Josefsson  <jas@extundo.com>
24033
24034         * modules/memmem: New file.
24035         * tests/test-memmem.c: New file.
24036         * MODULES.html.sh (Extra functions based on ANSI C 89): Add memmem.
24037
24038 2004-10-04  Simon Josefsson  <jas@extundo.com>
24039
24040         * m4/memmem.m4: New file.
24041
24042 2004-10-04  Simon Josefsson  <jas@extundo.com>
24043
24044         * lib/memmem.h: New file.
24045         * lib/memmem.c: New file, taken from glibc.
24046
24047 2004-10-04  Simon Josefsson  <jas@extundo.com>
24048
24049         * lib/error.c, md5.c, regex.c: Use '#if USE_UNLOCKED_IO' instead of
24050         '#ifdef USE_UNLOCKED_IO'.
24051
24052 2004-10-04  Simon Josefsson  <jas@extundo.com>
24053
24054         * config/srclist.txt: Add memmem from glibc.
24055
24056 2004-10-04  Paul Eggert  <eggert@cs.ucla.edu>
24057
24058         * modules/xalloc (Files, Makefile.am): Remove xstrdup.c.
24059
24060         * modules/argmatch, modules/argp, modules/closeout, modules/error,
24061         modules/exclude, modules/getdate, modules/getline,
24062         modules/getndelim2, modules/getpass, modules/getpass-gnu,
24063         modules/getusershell, modules/linebuffer, modules/md5,
24064         modules/mountlist, modules/posixtm, modules/readtokens,
24065         modules/readutmp, modules/regex, modules/sha1,
24066         modules/version-etc, modules/yesno:
24067         Remove dependency on unlocked-io.
24068
24069 2004-10-04  Paul Eggert  <eggert@cs.ucla.edu>
24070
24071         * m4/xalloc.m4 (gl_PREREQ_XSTRDUP): Remove.  All uses removed.
24072
24073         * m4/unlocked-io.m4: Add copyright notice.
24074         (gl_FUNC_GLIBC_UNLOCKED_IO): Define USE_UNLOCKED_IO.
24075
24076 2004-10-04  Paul Eggert  <eggert@cs.ucla.edu>
24077
24078         * lib/xalloc.h (xmemdup): Renamed from xclone.  All uses changed.
24079         * lib/xmalloc.c (xmemdup): Likewise.
24080         * lib/xalloc.h (CCLONE, CLONE, NEW, XCALLOC, XMALLOC, XREALLOC,
24081         XFREE): Remove these long-obsolescent macros.
24082         * lib/xmalloc.c (xstrdup): Implementation moved here from xstrdup.c
24083         * lib/xstrdup.c: Remove.
24084
24085         * lib/regex.c (re_comp): Cast gettext return value to char *,
24086         Problem reported by Martin Neitzel via Mark D. Baushke.
24087
24088 2004-10-04  Paul Eggert  <eggert@cs.ucla.edu>
24089
24090         * lib/argmatch.c, closeout.c, error.c, exclude.c, getdate.y,
24091         getndelim2.c, getpass.c, getusershell.c, linebuffer.c,
24092         md5.c, mountlist.c, posixtm.c, readtokens.c, readutmp.c,
24093         regex.c, sha1.c, version-etc.c, yesno.c:
24094         Include "unlocked-io.h" only if USE_UNLOCKED_IO.
24095         * lib/unlocked-io.h: Don't worry about USE_UNLOCKED_IO; that's now
24096         the includer's responsibility.
24097
24098         Sync from coreutils.
24099
24100         * lib/modechange.c (mode_compile): Don't decrement a pointer that
24101         points to the start of a string, as the C Standard says the
24102         resulting behavior is undefined.
24103
24104         * lib/backupfile.h (enum backuptype): Rename none -> no_backups,
24105         simple -> simple_backups, numbered_existing ->
24106         numbered_existing_backups, numbered -> numbered_backups
24107         to avoid shadowing problems.  All uses changed.
24108         * lib/argmatch.c (enum backuptype) [defined TEST]: Likewise.
24109         * lib/backupfile.c (check_extension, numbered_backup):
24110         Rename locals to avoid shadowing 'basename'.
24111         * lib/backupfile.h (VALID_BACKUP_TYPE): Don't evaluate arg more than
24112         once.
24113
24114         * lib/.cppi-disable: Add getopt_.h, getopt_int.h.
24115         * lib/.cvsignore: Add getopt.h.
24116
24117 2004-10-04  Bruno Haible  <bruno@clisp.org>
24118
24119         * modules/README: New file.
24120         * gnulib-tool (func_all_modules, func_verify_module): modules/README is
24121         not a module.
24122
24123 2004-10-02  Jim Meyering  <jim@meyering.net>
24124
24125         * lib/dirfd.h, getpagesize.h: Add copyright notice.
24126
24127 2004-10-01  Yoann Vandoorselaere  <yoann@prelude-ids.org>
24128
24129         * modules/strsep: New file.
24130
24131 2004-10-01  Yoann Vandoorselaere  <yoann@prelude-ids.org>
24132
24133         * m4/strsep.m4: New file.
24134
24135 2004-10-01  Yoann Vandoorselaere  <yoann@prelude-ids.org>
24136
24137         * lib/strsep.h: New file.
24138         * lib/strsep.c: New file.
24139
24140 2004-10-01  Simon Josefsson  <jas@extundo.com>
24141
24142         * lib/snprintf.c (snprintf): Handle size==0.
24143
24144 2004-10-01  Simon Josefsson  <jas@extundo.com>
24145             Bruno Haible  <bruno@clisp.org>
24146
24147         * lib/snprintf.c: Include <stdarg.h>, <stdlib.h>, <string.h>.
24148         (snprintf): Declare 'args'.
24149
24150 2004-10-01  Paul Eggert  <eggert@cs.ucla.edu>
24151
24152         * lib/snprintf.c: Remove comments as to why each header is needed.
24153
24154 2004-10-01  Bruno Haible  <bruno@clisp.org>
24155
24156         * MODULES.html.sh: Add strsep.
24157
24158 2004-09-30  Simon Josefsson  <jas@extundo.com>
24159
24160         * modules/snprintf: New file.
24161
24162 2004-09-30  Simon Josefsson  <jas@extundo.com>
24163
24164         * m4/snprintf.m4: New file.
24165
24166 2004-09-30  Simon Josefsson  <jas@extundo.com>
24167
24168         * lib/snprintf.h, lib/snprintf.c: New files.
24169
24170 2004-09-30  Sergey Poznyakoff  <gray@Mirddin.farlep.net>
24171
24172         * lib/argp-help.c (canon_doc_option): Fixed coredump if *name==NULL
24173         (hol_entry_help): Never translate an empty string.
24174         Do not translate option tag (opt->name) if OPTION_NO_TRANS is set
24175         * lib/argp.h (OPTION_NO_TRANS): New option.
24176
24177 2004-09-30  Paul Eggert  <eggert@cs.ucla.edu>
24178
24179         * modules/argp (Maintainer): Replace Simon Josefsson
24180         by Sergey Poznyakoff.
24181
24182 2004-09-30  Paul Eggert  <eggert@cs.ucla.edu>
24183
24184         * config/srclist.txt: Comment-out argp/argp.h, until we get the argp
24185         changes merged back into glibc.
24186
24187 2004-09-30  Paul Eggert  <eggert@cs.ucla.edu>
24188
24189         * MODULES.html.sh (Support for systems lacking ISO C 99): Add snprintf.
24190
24191 2004-09-29  Oskar Liljeblad  <oskar@osk.mine.nu>
24192
24193         * lib/xvasprintf.c: Include xalloc.h.
24194         (xvasprintf): Use xalloc_die, not xmalloc_die.
24195
24196 2004-09-29  Bruno Haible  <bruno@clisp.org>
24197
24198         * modules/alloca-opt: New file, derived from modules/alloca.
24199         * modules/allocsa: Depend on alloca-opt instead of alloca.
24200         * modules/setenv: Likewise.
24201         * modules/vasnprintf: Likewise.
24202         * MODULES.html.sh: Add alloca-opt.
24203
24204 2004-09-28  Simon Josefsson  <jas@extundo.com>
24205
24206         * gnulib-tool: New parameter --lgpl, to asseert that modules are
24207         LGPL, and to replace license template from GPL to LGPL.
24208
24209 2004-09-28  Paul Eggert  <eggert@cs.ucla.edu>
24210
24211         * modules/dummy: Change license to LGPL.
24212
24213 2004-09-28  Paul Eggert  <eggert@cs.ucla.edu>
24214
24215         * lib/dummy.c: Change copyright notice to FSF, and license to GPL.
24216
24217 2004-09-24  Simon Josefsson  <jas@extundo.com>
24218
24219         * modules/minmax (License): Change from GPL to LGPL.
24220
24221 2004-09-23  Simon Josefsson  <jas@extundo.com>
24222
24223         * gnulib-tool (--import): Typo.
24224
24225 2004-09-23  Simon Josefsson  <jas@extundo.com>
24226
24227         * gnulib-tool (--import): Make sure *.m4 end up in m4/ by default.
24228
24229 2004-09-22  Bruno Haible  <bruno@clisp.org>
24230
24231         * modules/*: Add 'License' field.
24232         * gnulib-tool: Accept --extract-license option.
24233         (func_get_license): New function.
24234
24235 2004-09-21  Bruno Haible  <bruno@clisp.org>
24236
24237         * modules/vasnprintf (Files): Add m4/stdint_h.m4, m4/inttypes_h.m4.
24238         Reported by Simon Josefsson.
24239
24240 2004-09-20  Paul Eggert  <eggert@cs.ucla.edu>
24241
24242         * modules/inttostr (Files): Add m4/longlong.m4, since it uses
24243         gl_AC_TYPE_LONG_LONG.
24244
24245 2004-09-20  Paul Eggert  <eggert@cs.ucla.edu>
24246
24247         * config/srclist.txt: Add getsubopt.c, since libc bought our changes.
24248
24249 2004-09-18  Simon Josefsson  <jas@extundo.com>
24250         and  Paul Eggert  <eggert@cs.ucla.edu>
24251
24252         * gnulib-tool: Replace various ad-hoc automake/autoconf/aclocal
24253         calls with autoreconf.  Define GL_LIB.
24254
24255 2004-09-14  Karl Berry  <karl@gnu.org>
24256
24257         * config/srclist.txt: unsync setenv.c, sigh.
24258
24259 2004-09-13  Paul Eggert  <eggert@cs.ucla.edu>
24260
24261         * lib/argp-pvh.c (argp_program_version_hook): Provide initial value.
24262         Problem reported by Bruno Haible in:
24263         http://lists.gnu.org/archive/html/bug-tar/2004-09/msg00023.html
24264
24265 2004-09-13  Paul Eggert  <eggert@cs.ucla.edu>
24266
24267         * config/srclist.txt: Comment out argp-pvh.c.
24268
24269 2004-09-11  Paul Eggert  <eggert@cs.ucla.edu>
24270
24271         * lib/mempcpy.h: Wrap the entire include file inside #ifndef mempcpy,
24272         in case some system header has #define'd it.  Problem reported by
24273         Soeren D. Schulze in
24274         <http://lists.gnu.org/archive/html/bug-gnulib/2004-09/msg00017.html>.
24275
24276 2004-09-09  Karl Berry  <karl@gnu.org>
24277
24278         * regex.[ch]: delete from the root.  These were supposed to be
24279                 synced with emacs cvs, but this has not happened for about
24280                 a year, and anyway nothing else uses emacs regex.[ch].
24281                 bug-gnulib mail from Jeff Bailey, 9 Sep 2004 15:49:24 -0700.
24282                 lib/regex[.ch] is untouched.
24283
24284 2004-09-09  Bruno Haible  <bruno@clisp.org>
24285
24286         * modules/vasnprintf (Files): Add m4/eoverflow.m4.
24287
24288 2004-09-09  Bruno Haible  <bruno@clisp.org>
24289
24290         * m4/eoverflow.m4: New file, taken from GNU libiconv eilseq.m4 with
24291         modifications.
24292         * m4/vasnprintf.m4 (gl_FUNC_VASNPRINTF): Require gl_EOVERFLOW.
24293
24294 2004-09-08  Oskar Liljeblad  <oskar@osk.mine.nu>
24295
24296         * modules/xvasprintf: New file.
24297         * MODULES.html.sh (Extra functions based on ANSI C 89): Add vasprintf.
24298
24299 2004-09-08  Oskar Liljeblad  <oskar@osk.mine.nu>
24300
24301         * lib/xvasprintf.h: New file.
24302         * lib/xvasprintf.c: New file.
24303         * lib/xasprintf.c: New file.
24304
24305 2004-09-08  Bruno Haible  <bruno@clisp.org>
24306
24307         * m4/stdint.m4: New file, taken from GNU clisp with modifications.
24308
24309 2004-09-08  Bruno Haible  <bruno@clisp.org>
24310
24311         * lib/vasnprintf.c (VASNPRINTF): Signal EOVERFLOW if the resulting
24312         length is > INT_MAX.
24313         * lib/vasprintf.c (vasprintf): Don't test for length > INT_MAX any
24314         more.
24315
24316 2004-09-08  Bruno Haible  <bruno@clisp.org>
24317
24318         * lib/stdint_.h: New file, taken from GNU clisp.
24319
24320 2004-09-08  Bruno Haible  <bruno@clisp.org>
24321             Oskar Liljeblad  <oskar@osk.mine.nu>
24322
24323         * modules/stdint: New file.
24324         * MODULES.html.sh (Support for systems lacking ISO C 99): Add stdint.
24325
24326 2004-08-19  Paul Eggert  <eggert@cs.ucla.edu>
24327
24328         Import from coreutils.
24329         * lib/userspec.c: Don't use <alloca.h>, so that we don't use alloca on
24330         strings on unbounded length.  alloca's performance benefits aren't
24331         that important here.
24332         (V_STRDUP): Remove.
24333         (parse_with_separator): New function, with most of the internals
24334         of the old parse_user_spec.  Allow user to omit both user and group,
24335         for compatibility with FreeBSD.
24336         Clone only the user name, not the entire spec.
24337         Do not set *uid, *gid unless entirely successful.
24338         Avoid memory leak in some failing cases.
24339         Fix regression for USER.GROUP reported by Dmitry V. Levin in
24340         <http://lists.gnu.org/archive/html/bug-coreutils/2004-08/msg00102.html>
24341         (parse_user_spec): Rewrite to use parse_with_separator.
24342
24343 2004-08-19  Paul Eggert  <eggert@cs.ucla.edu>
24344
24345         * modules/userspec: Don't depend on alloca.
24346
24347 2004-08-19  Paul Eggert  <eggert@cs.ucla.edu>
24348
24349         * m4/userspec.m4 (gl_USERSPEC): Don't require AC_FUNC_ALLOCA.
24350
24351 2004-08-17  Paul Eggert  <eggert@cs.ucla.edu>
24352
24353         * MODULES.html.sh: Add xalloc-die, c-strtod, c-strtold, raise,
24354         readtokens0, getcwd, fcntl-safer, canonicalize, cycle-check,
24355         utimecmp, utimens, xnanosleep.  Rename sha to sha1.
24356
24357 2004-08-16  Simon Josefsson  <jas@extundo.com>
24358
24359         * gnulib-tool: Use sed instead of autoconf --trace, inspired by
24360         libtoolize behaviour by "Gary V. Vaughan" <gary@gnu.org>.
24361         Add --dry-run for --import.
24362         Let user provided command line parameters override configure.ac
24363         settings.
24364
24365 2004-08-12  Simon Josefsson  <jas@extundo.com>
24366
24367         * m4/getopt.m4 (gl_GETOPT_SUBSTITUTE): New macro,
24368         as discussed with Paul Eggert in threads rooted at
24369         <http://lists.gnu.org/archive/html/bug-gnulib/2004-06/msg00039.html>
24370         and
24371         <http://lists.gnu.org/archive/html/bug-gnulib/2004-07/msg00001.html>.
24372         Before, the test was empty, and relied on ELIDE_CODE in source
24373         code.)
24374         (gl_PREREQ_GETOPT): New macro.
24375         (gl_GETOPT): Use them.
24376
24377 2004-08-12  Simon Josefsson  <jas@extundo.com>
24378
24379         * lib/getopt.c, getopt1.c: Remove ELIDE_CODE hack.
24380         * lib/getopt_.h: Renamed from getopt.h.
24381
24382 2004-08-12  Simon Josefsson  <jas@extundo.com>
24383
24384         * gnulib-tool: Add --source-base, --m4-base, --libtool options.
24385         Change default library name from libfoo to libgnu.
24386         Now, if you have a configure.ac that says:
24387                 gl_SOURCE_BASE(gl)
24388                 gl_M4_BASE(gl/m4)
24389                 gl_MODULES(error getopt etcetera)
24390                 gl_INIT
24391         you can import all you need by running:
24392                 ../gnulib/gnulib-tool --import
24393
24394         * modules/getopt (Files): Rename getopt.h to getopt_.h.
24395         (Makefile.am): Rewrite, use logic from argz.
24396         (Include): Use <getopt.h> instead of "getopt.h".
24397
24398 2004-08-12  Paul Eggert  <eggert@cs.ucla.edu>
24399
24400         * modules/argp (Files): Add m4/unlocked-io.m4.
24401         (Depends-on): Add extensions.
24402
24403 2004-08-12  Paul Eggert  <eggert@cs.ucla.edu>
24404
24405         * m4/argp.m4 (gl_ARGP): Do not check for argp.h or argp_parse; nobody
24406         uses HAVE_ARGP_H or HAVE_ARGP_PARSE.
24407         Require gl_FUNC_GLIBC_UNLOCKED_IO, gl_USE_SYSTEM_EXTENSIONS.
24408         Check for program_invocation_name, program_invocation_short_name,
24409         flockfile, funlockfile, features.h, _getopt_long_only_r.
24410
24411 2004-08-12  Paul Eggert  <eggert@cs.ucla.edu>
24412
24413         * lib/argp-help.c, argp-parse.c: Use "gettext.h" instead of
24414         its complicated substitute.
24415         * lib/argp-help.c: Include <errno.h>, for program_invocation_short_name
24416         and program_invocation_name.
24417         (__argp_basename) [!_LIBC]: Remove; the only use was
24418         replaced by its body.
24419         (__argp_short_program_name): Change condition from
24420         !defined __argp_short_program_name to
24421         ! (defined _LIBC || HAVE_DECL_PROGRAM_INVOCATION_SHORT_NAME),
24422         to match argp-namefrob.h.
24423         (__argp_failure): Don't assume strerror_r returns char *.
24424         * lib/argp-parse.c (N_): Define unconditionally.
24425         (argp_default_options): Fill out initializers with 0 to avoid
24426         gcc warnings.
24427
24428 2004-08-12  Paul Eggert  <eggert@cs.ucla.edu>
24429
24430         * config/srclist.txt: Remove getopt.c, getopt.h (renamed to getopt_.h),
24431         getopt1.c.
24432
24433 2004-08-11  Paul Eggert  <eggert@cs.ucla.edu>
24434
24435         Merge from coreutils.
24436
24437         * m4/fnmatch.m4 (_AC_LIBOBJ_FNMATCH): Check for wmemchr and wmemcpy.
24438
24439         * m4/obstack.m4 (gl_PREREQ_OBSTACK): Require
24440         gl_AC_HEADER_INTTYPES_H, gl_AC_HEADER_STDINT_H, gl_AC_TYPE_UINTMAX_T.
24441
24442 2004-08-11  Paul Eggert  <eggert@cs.ucla.edu>
24443
24444         Merge from coreutils.
24445
24446         * lib/fnmatch.c (WIDE_CHAR_SUPPORT): Don't set to 1 if missing
24447         wmemchr or wmemcpy.  Problem reported by Robert Dahlem
24448         for Reliant Unix 5.43.
24449
24450         * lib/obstack.c: Include <inttypes.h> and <stdint.h> if available.
24451         (union fooround): Use uintmax_t, not long int.
24452         The rest is a merge from libc:
24453         [defined _LIBC]: Include <shlib-compat.h>.
24454         (_obstack) [defined _LIBC]: Remove after 2.3.4.
24455
24456         * lib/settime.c (settime): Recode to avoid warning with
24457         Sun Forte C 6U2.
24458
24459         * lib/strverscmp.c: Convert to UTF-8.
24460
24461 2004-08-11  Paul Eggert  <eggert@cs.ucla.edu>
24462
24463         * modules/obstack (Files): Add m4/inttypes_h.m4, m4/stdint_h.m4,
24464         m4/uintmax_t.m4.
24465
24466 2004-08-09  Paul Eggert  <eggert@cs.ucla.edu>
24467
24468         * modules/xalloc-die: New file.
24469         * modules/xalloc: Remove dependencies on error, gettext, exitfail.
24470
24471         * modules/md5 (Files): Add m4/uint32_t.m4.
24472         * modules/sha1: Renamed from modules/sha.
24473         (Files):
24474         Rename lib/sha.h to lib/sha1.h.
24475         Rename lib/sha.c to lib/sha1.c.
24476         Rename m4/sha.m4 to m4/sha1.m4.
24477         (lib_SOURCES): Likewise.
24478         (configure.ac): Rename gl_SHA to gl_SHA1.
24479         (Include): sha.h -> sha1.h.
24480
24481 2004-08-09  Paul Eggert  <eggert@cs.ucla.edu>
24482
24483         * m4/uint32_t.m4, m4/uintptr_t.m4: New files.
24484         * m4/sha1.m4: Renamed from sha.m4.
24485         (gl_SHA1): Renamed from gl_SHA.  All uses changed.
24486
24487 2004-08-09  Paul Eggert  <eggert@cs.ucla.edu>
24488
24489         * lib/obstack.h (obstack_empty_p):
24490         Don't assume that chunk->contents is suitably aligned.
24491         * lib/obstack.c (_obstack_begin, _obstack_begin_1, _obstack_newchunk):
24492         Likewise. Problem reported by Benno in
24493         <http://sources.redhat.com/ml/libc-alpha/2004-08/msg00055.html>.
24494
24495         * lib/chown.c (rpl_chown): Work even if the file is writeable but not
24496         readable.  This could be improved further but it'd take some work.
24497
24498 2004-08-08  Simon Josefsson  <jas@extundo.com>
24499
24500         * modules/xgethostname (Depends-on): Remove exit and error (not
24501         used).
24502
24503         * modules/getpass-gnu: Add getpass.h.
24504         (Depends-on): Add stdbool.
24505         * modules/getpass: Add getpass.h.
24506
24507 2004-08-08  Simon Josefsson  <jas@extundo.com>
24508
24509         * m4/getpass.m4 (gl_FUNC_GETPASS, gl_FUNC_GETPASS_GNU):
24510         Check getpass declaration.
24511
24512 2004-08-08  Simon Josefsson  <jas@extundo.com>
24513
24514         * lib/xgethostname.c: Don't include error.h (not used).
24515
24516         * lib/getpass.h: Add.
24517         * lib/getpass.c: Include getpass.h first.
24518
24519 2004-08-08  Paul Eggert  <eggert@cs.ucla.edu>
24520
24521         * lib/xalloc-die.c: New file.
24522         * lib/xalloc.h (xalloc_fail_func, xalloc_msg_memory_exhausted): Remove.
24523         All uses removed.
24524         * lib/xmalloc.c (xalloc_fail_func, xalloc_msg_memory_exhausted):
24525         Likewise. Move inclusions of gettext.h, error.h, exitfail.h to
24526         xalloc-die.c.
24527         (_, N_, xalloc_die): Move to xalloc-die.c.
24528         * lib/userspec.c (parse_user_spaec): Use xstrdup rather than strdup,
24529         so that we needn't mess with xalloc_msg_memory_exhausted.
24530
24531         * lib/sha1.h: Renamed from sha.h.
24532         (SHA1_H): Renamed from _SHA_H.
24533         (sha1_ctx): Renamed from sha_ctx.
24534         (sha1_init_ctx): Renamed from sha_init_ctx.
24535         (sha1_process_block): Renamed from sha_process_block.
24536         (sha1_process_bytes): Renamed from sha_process_bytes.
24537         (sha1_finish_ctx): Renamed from sha_finish_ctx.
24538         (sha1_read_ctx): Renamed from sha_read_ctx.
24539         (sha1_stream): Renamed from sha_stream.
24540         (sha1_buffer): Renamed from sha_buffer.
24541         * lib/sha1.c: Likewise; renamed from sha.c.
24542         Do not include <sys/types.h>.
24543         Include <stddef.h> rather than <stdlib.h>.
24544
24545 2004-08-08  Bruno Haible  <bruno@clisp.org>
24546
24547         * lib/pathname.h (FILE_SYSTEM_PREFIX_LEN): Renamed from
24548         FILESYSTEM_PREFIX_LEN.
24549         * lib/progreloc.c: Likewise.
24550         * lib/concatpath.c (concatenated_pathname): Use FILE_SYSTEM_PREFIX_LEN.
24551
24552 2004-08-06  Simon Josefsson  <jas@extundo.com>
24553
24554         * modules/progname (Depends-on): Don't depend on stdbool.
24555
24556 2004-08-06  Simon Josefsson  <jas@extundo.com>
24557
24558         * modules/getsubopt: New file.
24559         * MODULES.html.sh (Support for systems lacking POSIX:2001): Add
24560         getsubopt.
24561
24562 2004-08-06  Paul Eggert  <eggert@cs.ucla.edu>
24563
24564         More merge from coreutils.
24565
24566         * m4/utimens.m4, m4/utimecmp.m4: New files.
24567         * m4/backupfile.m4, euidacces.m4, acl.m4, afs.m4, calloc.m4, dirfd.m4,
24568         fsusage.m4, jm-macros.m4, ls-mntd-fs.m4, md5.m4, mountlist.m4,
24569         prereq.m4, sha.m4: Import changes from coreutils.
24570
24571 2004-08-06  Paul Eggert  <eggert@cs.ucla.edu>
24572
24573         More merge from coreutils.
24574         * modules/raise, modules/readtokens0, modules/utimens:
24575         * modules/utimecmp, module/xnanosleep: New files.
24576         * modules/strftime: Add lib/strftime.h.
24577         Change include from <time.h> to "strftime.h".
24578         * modules/yesno: Add lib/yesno.h.
24579         * modules/backupfile: Remove lib/addext.c.
24580         * modules/euidaccess: Add stat-macros.h.
24581         * modules/canonicalize, modules/euidaccess,
24582         modules/filemode, modules/lchown, modules/makepath,
24583         modules/rmdir, modules/stat: Likewise.
24584
24585 2004-08-06  Paul Eggert  <eggert@cs.ucla.edu>
24586
24587         Merge from tar.
24588         * lib/argp-help.c (make_hol, hol_append): Don't assume that
24589         SIZE_MAX is a valid preprocessor constant.
24590         (__argp_basename): Change from "#ifndef _LIBC"
24591         to "#ifndef __argp_short_program_name", so that
24592         we don't compile these functions for tar.
24593
24594         More merges from coreutils.
24595         * lib/raise.c, lib/readtokens0.h, lib/readtokens0.c, lib/strftime.h:
24596         * lib/utimens.h, lib/utimens.c, lib/utimecmp.h, lib/utimecmp.c:
24597         * lib/xnanosleep.h, lib/xnanosleep.c, lib/yesno.h: New files.
24598         * lib/addext.c: Remove; no longer needed.
24599         * lib/yesno.c, lib/argmatch.h, lib/argmatch.c, lib/backupfile.h,
24600         lib/backupfile.c, lib/euidaccess.c, lib/filemode.c, lib/closeout.c,
24601         lib/dup2.c, lib/exclude.c, lib/fileblocks.c, lib/filemode.c,
24602         lib/fnmatch.c, lib/fnmtahc_loop.c, lib/fopen-safer.c, lib/fsusage.c,
24603         lib/fsusage.h, lib/ftruncate.c, lib/full-write.c, lib/getdate.y,
24604         lib/getloadavg.c, lib/getugroups.c, lib/hard-locale.c,
24605         lib/hard-locale.h, lib/hash.c, lib/human.c, lib/human.h, lib/lchown.c,
24606         lib/lchown.h, lib/makepath.c, lib/makepath.h, lib/md5.c, lib/md5.h,
24607         lib/memchr.c, lib/memcoll.c, lib/memrchr.c, lib/modechange.c,
24608         lib/modechange.h, lib/mountlist.c, lib/mountlist.h, lib/nanosleep.c,
24609         lib/posixtm.c, lib/putenv.c, quotearg.c, lib/quotearg.h,
24610         lib/readtokens.c, lib/readutmp.c, lib/readutmp.h, lib/rmdir.c,
24611         lib/safe-read.c, lib/save-cwd.c, lib/savedir.c, lib/setenv.c,
24612         lib/sig2str.c, lib/stat.c, lib/strtoimax.c, lib/strverscmp.c,
24613         lib/userspec.c, lib/utime.c, lib/version-etc.c., lib/xgethostname.c,
24614         lib/xmemcoll.c, lib/xreadlink.c, lib/xstrtod.c, lib/xstrtod.h,
24615         lib/xstrtoimax.c, lib/xstrtol.c, lib/xstrtol.h, lib/xstrtoumax.c:
24616         Import changes from coreutils.
24617
24618 2004-08-05  Simon Josefsson  <jas@extundo.com>
24619
24620         * m4/strdup.m4: Always run gl_PREREQ_STRDUP, since strdup.h need it.
24621
24622 2004-08-05  Simon Josefsson  <jas@extundo.com>
24623
24624         * m4/getsubopt.m4: New file.
24625
24626 2004-08-05  Paul Eggert  <eggert@cs.ucla.edu>
24627
24628         Merge from coreutils.
24629
24630         * m4/c-strtod.m4, m4/canonicalize.m4, m4/fcntl-safer.m4:
24631         * m4/getcwd-path-max.m4: New files.
24632
24633         * m4/dos.m4 (gl_AC_DOS): filesystem -> file system renaming.
24634         FILESYSTEM_PREFIX_LEN ->
24635         FILE_SYSTEM_PREFIX_LEN.
24636         FILESYSTEM_ACCEPTS_DRIVE_LETTER_PREFIX ->
24637         FILE_SYSTEM_ACCEPTS_DRIVE_LETTER_PREFIX.
24638         FILESYSTEM_BACKSLASH_IS_FILE_NAME_SEPARATOR ->
24639         FILE_SYSTEM_BACKSLASH_IS_FILE_NAME_SEPARATOR.
24640
24641         * m4/path-concat.m4 (gl_PATH_CONCAT): Don't require gl_AC_DOS, the
24642         prerequisite modules now handle the DOS stuff.
24643         Don't check for unistd.h.
24644
24645 2004-08-05  Paul Eggert  <eggert@cs.ucla.edu>
24646
24647         Merge from coreutils.
24648
24649         * lib/.gdb-history: Remove; this doesn't belong here.
24650
24651         * lib/c-strtod.c, lib/c-strtod.h, lib/c-strtold.c, lib/cycle-check.c:
24652         * lib/cycle-check.h, lib/dev-ino.h, lib/canonicalize.h:
24653         * lib/canonicalize.c, lib/fcntl-safer.h, lib/fcntl-safer.c:
24654         * lib/getcwd.c: New files.
24655
24656         * lib/dirname.h: Include <stdbool.h>.
24657         (FILE_SYSTEM_PREFIX_LEN): Renamed from FILESYSTEM_PREFIX_LEN,
24658         for consistency with POSIX terminology.  All uses changed.
24659         (IS_ABSOLUTE_FILE_NAME, IS_RELATIVE_FILE_NAME): New macros.
24660         (strip_trailing_slashes): Use bool for booleans.
24661         * lib/stripslash.c (strip_trailing_slashes): Likewise.
24662
24663         * lib/error.c: Work around bug in OpenBSD 3.4 sterror_r: it
24664         sometimes returns a positive errno value even when it succeeds.
24665         (print_errno_message) [!LIBC]: Fall back on strerror if
24666         __strerror_r fails.
24667
24668         * lib/path-concat.c (mempcpy): Don't define if a system header defines
24669         it. Don't include stdio.h, stdlib.h, unistd.h, strdup.h.
24670         (longest_relative_suffix): New function.
24671         (path_concat): Use it.  Assume first argument is not NULL.
24672         Port to DOS.  Omit redundant separators.
24673         Report an error instead of returning NULL.
24674         Use mempcpy instead of memcpy.
24675         (xpath_concat): Remove: not declared or used.
24676
24677         * lib/same.h: Include <stdbool.h>
24678         (same_name): Return bool, not int.
24679         * lib/same.c (same_name): Likewise.
24680         (errno): Don't declare; we assume C89 or better now.
24681
24682         * lib/stat-macros (S_ISCTG, S_ISOFD, S_ISOFL): New macros,
24683         if not already defined.
24684
24685         * lib/xgetcwd.c (errno): Don't declare; we assume C89 or better now.
24686         * lib/dup-safer.c (errno): Likewise.
24687
24688 2004-08-05  Paul Eggert  <eggert@cs.ucla.edu>
24689
24690         Merge from coreutils.
24691         * modules/c-strtod, modules/c-strtold, modules/canonicalize:
24692         * modules/cycle-check, modules/fcntl-safer, modules/getcwd: New files.
24693         * modules/path-concat: Don't depend on strdup.
24694
24695 2004-08-03  Simon Josefsson  <jas@extundo.com>
24696
24697         * lib/strdup.h: Only use HAVE_DECL_STRDUP if defined.
24698         * lib/progname.h: Don't include stdbool.h.
24699
24700 2004-08-03  Paul Eggert  <eggert@cs.ucla.edu>
24701
24702         * modules/fatal: Remove, as the "fatal" module wasn't used or working.
24703         * MODULES.html.sh (func_all_modules): Remove fatal.
24704
24705 2004-08-03  Paul Eggert  <eggert@cs.ucla.edu>
24706
24707         * m4/fatal.m4: Remove, as the "fatal" module wasn't used or working.
24708
24709 2004-08-03  Paul Eggert  <eggert@cs.ucla.edu>
24710
24711         * lib/fatal.c, fatal.h: Remove as the "fatal" module wasn't used or
24712         working.
24713
24714 2004-08-02  Simon Josefsson  <jas@extundo.com>
24715
24716         * lib/getsubopt.h: New file, with comments from Bruno Haible.
24717         * lib/getsubopt.c: New file, from glibc, but slightly modified based on
24718         suggestions from Paul Eggert <eggert@cs.ucla.edu>.
24719
24720 2004-08-01  Simon Josefsson  <jas@extundo.com>
24721
24722         * lib/xgetdomainname.c: Include stdlib.h, for free().
24723
24724 2004-07-19  Bruno Haible  <bruno@clisp.org>
24725
24726         * MODULES.html.sh (func_all_modules): Add dummy.
24727
24728 2004-07-16  Simon Josefsson  <jas@extundo.com>
24729
24730         * modules/dummy: New file.
24731
24732 2004-07-16  Simon Josefsson  <jas@extundo.com>
24733
24734         * lib/dummy.c: New file.
24735
24736 2004-07-16  Bruno Haible  <bruno@clisp.org>
24737
24738         * lib/backupfile.h: Add extern "C" for C++.
24739         * lib/closeout.h: Likewise.
24740         * lib/copy-file.h: Likewise.
24741         * lib/findprog.h: Likewise.
24742         * lib/full-write.h: Likewise.
24743         * lib/pathname.h: Likewise.
24744         * lib/progname.h: Likewise.
24745         * lib/stpcpy.h: Likewise.
24746         * lib/stpncpy.h: Likewise.
24747         * lib/strcase.h: Likewise.
24748         * lib/strstr.h: Likewise.
24749         * lib/xalloc.h: Likewise.
24750
24751         * lib/mbswidth.h: Add extern "C" for C++.
24752         Reported by Albert Chin-A-Young <china@thewrittenword.com>.
24753
24754 2004-07-13  Robert Millan  <robertmh@gnu.org>
24755
24756         * m4/host-os.m4: s/KNetBSD/kNetBSD/g and s/KFreeBSD/kFreeBSD/g.
24757
24758 2004-07-09  Simon Josefsson  <jas@extundo.com>
24759
24760         * lib/getndelim2.c: Include stddef.h, for ptrdiff_t.  (FreeBSD 4.9
24761         failed without this.)
24762
24763 2004-07-09  Paul Eggert  <eggert@cs.ucla.edu>
24764
24765         * modules/chown (Files): Add lib/fchown-stub.c, since
24766         gl_PREREQ_CHOWN invokes AC_LIBOBJ(fchown-stub).
24767
24768 2004-07-09  Paul Eggert  <eggert@cs.ucla.edu>
24769
24770         * lib/fchown-stub.c: New file.
24771
24772 2004-06-24  Jim Meyering  <jim@meyering.net>
24773
24774         * lib/obstack.h (obstack_base): Cast to (void *), per documentation.
24775
24776 2004-06-22  Paul Eggert  <eggert@cs.ucla.edu>
24777
24778         * modules/argz: Omit "#include".
24779
24780         * MODULES.html.sh (func_all_modules): Add calloc, to match
24781         2004-06-01 addition of calloc module.
24782
24783 2004-06-22  Paul Eggert  <eggert@cs.ucla.edu>
24784
24785         * m4/argz.m4: New file, which is autoupdated from libtool.
24786
24787 2004-06-22  Paul Eggert  <eggert@cs.ucla.edu>
24788
24789         * lib/argz.c, lib/argz_.h: New files, which are autoupdated from
24790         libtool.
24791
24792 2004-06-22  Paul Eggert  <eggert@cs.ucla.edu>
24793
24794         * config/srclist-update: Don't insist on "USA." before the
24795         close-comment, as libtool omits the period and puts the */ on a
24796         separate line.
24797         * config/srclist.txt: Add argz.c, argz_.h, argz.m4.
24798         * config/srclistvars.sh: Add LIBTOOL (for eggert only).
24799
24800 2004-06-22  Gary V. Vaughan  <gary@gnu.org>
24801
24802         * modules/argz: New file.
24803         * MODULES.html.sh (func_all_modules): Add argz.
24804
24805 2004-06-12  Jim Meyering  <jim@meyering.net>
24806         and  Paul Eggert  <eggert@cs.ucla.edu>
24807
24808         * modules/hash (Files): Add lib/xalloc.h.
24809         * modules/pipe (Depends-on): Add wait-process.
24810         * modules/stat (Depends-on): Add xalloc.
24811         * modules/userspec (Files): Add lib/userspec.h.
24812         * modules/xstrto
24813
24814         Upgrade from gettext-0.13.
24815         * modules/gettext (Files): Add m4/intmax.m4, m4/longdouble.m4,
24816         m4/longlong.m4, m4/printf-posix.m4, m4/signed.m4, m4/size_max.m4,
24817         m4/wchar_t.m4, m4/wint_t.m4, m4/xsize.m4.
24818
24819 2004-06-10  Jim Meyering  <jim@meyering.net>
24820
24821         * lib/calloc.c: New file.
24822
24823 2004-06-06  Paul Eggert  <eggert@cs.ucla.edu>
24824
24825         * lib/getdate.y (yylex): Allow space between sign and number.
24826         Problem reported by Dan Jacobson.
24827
24828 2004-06-01  Paul Eggert  <eggert@cs.ucla.edu>
24829
24830         Merge from coreutils CVS.
24831
24832         * m4/backupfile.m4, dirname.m4, human.m4, inttypes.m4, longlong.m4,
24833         makepath.m4, memchr.m4, memcmp.m4, mountlist.m4, path-concat.m4,
24834         putenv.m4, quotearg.m4, readutmp.m4, strtoimax.m4, strtoll.m4,
24835         strtoull.m4, strtoumax.m4, ulonglong.m4, vasnprintf.m4,
24836         xstrtol.m4: Fix copyright date and/or serial number.
24837
24838         * m4/chown.m4 (gl_PREREQ_CHOWN): Check for fcntl.h.
24839         See if we need an fchown replacement.
24840         (gl_FUNC_CHOWN_FOLLOWS_SYMLINK): New macro.
24841         (gl_FUNC_CHOWN): Require gl_FUNC_CHOWN_FOLLOWS_SYMLINK,
24842         and use the replacement function if we detect either defect.
24843
24844         * m4/prereq.m4 (gl_PREREQ): Add gl_ALLOCSA, gl_CLOEXEC, gl_INTTOSTR,
24845         gl_UTIMECMP.
24846
24847 2004-06-01  Paul Eggert  <eggert@cs.ucla.edu>
24848         and  Jim Meyering  <jim@meyering.net>
24849
24850         Merge from coreutils CVS.
24851
24852         * lib/stat-macros.h: New file, with contents from file-type.h
24853         and coreutils' system.h.
24854         * lib/file-type.c: Include "stat-macros.h".
24855         * lib/file-type.h (file_type): Move all macro definitions to new file,
24856         stat-macros.h.
24857
24858         * lib/chown.c (rpl_chown) [CHOWN_FAILS_TO_HONOR_ID_OF_NEGATIVE_ONE]:
24859         Wrap old code with this conditional.
24860         [CHOWN_MODIFIES_SYMLINK]: Try to work around a chown
24861         function that does not dereference symlinks.
24862         * lib/lchown.c (lchown) [CHOWN_MODIFIES_SYMLINK]: Just call chown.
24863
24864         * lib/xreadlink.c: Include xreadlink.h first, to catch .h file
24865         dependency problems.
24866         (xreadlink): Accept new arg SIZE, for efficiency.
24867         All decls and uses changed.
24868         * lib/xreadlink.h: Include <stddef.h>, for size_t.
24869
24870         * lib/.cppi-disable: Add alloca_.h, allocsa.h, exit.h, getndelim2.h,
24871         gettext.h, localcharset.h, strdup.h, strndup.h, strtoul.c, time_r.h.
24872
24873         * lib/.cvsignore: Add alloca.h, fnmatch.h, poll.h, stdbool.h,
24874         sysexits.h.
24875
24876 2004-06-01  Jim Meyering  <jim@meyering.net>
24877
24878         * m4/calloc.m4: New file.
24879
24880 2004-05-31  Paul Eggert  <eggert@cs.ucla.edu>
24881
24882         * m4/stdbool.m4 (AC_HEADER_STDBOOL): Detect _Bool bug in HP aC++/ANSI
24883         C B3910B A.05.55 [Dec 04 2003].  Problem reported by Jim Meyering.
24884         Also, fix a typo in a diagnostic.
24885
24886 2004-05-30  Paul Eggert  <eggert@cs.ucla.edu>
24887
24888         * m4/xalloc.m4 (gl_PREREQ_XMALLOC): Do not require AC_FUNC_MALLOC
24889         or AC_FUNC_REALLOC.
24890
24891 2004-05-30  Paul Eggert  <eggert@cs.ucla.edu>
24892
24893         * lib/xmalloc.c (HAVE_MALLOC, HAVE_REALLOC): Do not require these
24894         macros to be defined.
24895         (xnmalloc_inline, xnrealloc_inline, xcalloc): Do not die if
24896         the allocator returns NULL because the requested size is zero.
24897
24898 2004-05-20  Paul Eggert  <eggert@cs.ucla.edu>
24899
24900         * lib/malloc/obstack.c (_obstack) [defined _LIBC]: Bring back this
24901         var.  Add comment explaining why libc still defines it.  This
24902         merges the following patch from glibc:
24903         http://sources.redhat.com/ml/libc-alpha/2004-05/msg00157.html
24904
24905 2004-05-20  Andreas Schwab  <schwab@suse.de>
24906
24907         * m4/free.m4: Replace free if it not known to work, not the other
24908         way round.
24909
24910 2004-05-19  Paul Eggert  <eggert@cs.ucla.edu>
24911
24912         * lib/obstack.c (_obstack): Remove unused variable.  It hasn't been
24913         present in glibc since revision 1.1 of this file.
24914         * lib/obstack.h (_obstack_free, obstack_1grow, obstack_1grow_fast,
24915         obstack_alignment_mask, obstack_alloc, obstack_base,
24916         obstack_blank, obstack_blank_fast, obstack_chunk_size,
24917         obstack_copy, obstack_copy0, obstack_finish, obstack_grow,
24918         obstack_grow0, obstack_init, obstack_int_grow,
24919         obstack_int_grow_fast, obstack_make_room, obstack_memory_used,
24920         obstack_next_free, obstack_object_size, obstack_ptr_grow,
24921         obstack_ptr_grow_fast, obstack_room): Remove declarations of
24922         nonexistent functions.
24923
24924 2004-05-18  Karl Berry  <karl@gnu.org>
24925
24926         * config/srclist.txt: break link for vasnprintf.c.
24927
24928 2004-05-17  Paul Eggert  <eggert@cs.ucla.edu>
24929
24930         Port obstack to the AS/400, where pointers are 16 bytes wide and
24931         you cannot cast an integer to a valid pointer.  This patch is
24932         currently waiting to be integrated into glibc; see
24933         <http://sources.redhat.com/ml/libc-alpha/2004-05/msg00073.html>.
24934
24935         * lib/obstack.h (__PTR_TO_INT, __INT_TO_PTR): Remove.
24936         All uses of __INT_TO_PTR (PTR_TO_INT ...) replaced by __PTR_ALIGN.
24937         (__BPTR_ALIGN, __PTR_ALIGN): New macros.
24938         (struct obstack): temp member is now a union of a pointer and
24939         an integer, instead of an integer.  All integer uses changed.
24940         This does not affect the physical layout of struct obstack,
24941         except on hosts (like the AS/400) where the size or alignment of
24942         void * is greater than that of ptrdiff_t.
24943         (obstack_finish) [! (defined __GNUC__ && defined __STDC__ &&
24944         __STDC__)]: Store temporary in pointer member of union, not
24945         integer member.
24946         * lib/obstack.c: Include <stddef.h>, for offsetof.
24947         (struct fooalign): Remove; it doesn't need a name.
24948         (union fooround): Change double to long double, and add void *.
24949         (DEFAULT_ALIGNMENT): Use offsetof to compute.
24950         (DEFAULT_ALIGNMENT, DEFAULT_ROUNDING): Now an enum constant,
24951         not a macro.  Hence the values are always int; so remove all
24952         casts-to-int in uses.
24953
24954 2004-05-17  Paul Eggert  <eggert@cs.ucla.edu>
24955
24956         * config/srclist.txt: Break link for argp-help.c and argp-parse.c until
24957         we can get this patch merged into glibc.
24958
24959 2004-05-17  Derek R. Price  <derek@ximbiot.com>
24960             Paul Eggert  <eggert@cs.ucla.edu>
24961
24962         * m4/argp: Depend on alloca.
24963
24964 2004-05-17  Derek R. Price  <derek@ximbiot.com>
24965             Paul Eggert  <eggert@cs.ucla.edu>
24966
24967         * lib/argp-help.c, argp-parse.c: Assume <alloca.h> rather than
24968         freecoding.
24969
24970 2004-05-17  Bruno Haible  <bruno@clisp.org>
24971
24972         * lib/vasnprintf.c (VASNPRINTF): Correctly handle the case of a
24973         precision that consists of a '.' followed by an empty digit string.
24974         Patch by Tor Lillqvist <tml@iki.fi>.
24975
24976 2004-05-16  Paul Eggert  <eggert@cs.ucla.edu>
24977
24978         * m4/alloca.m4 (gl_FUNC_ALLOCA): Define HAVE_ALLOCA_H always,
24979         for backward compatibility with older code.  We need our own
24980         alloca.h if _AIX is defined.  Define HAVE_ALLOCA if we discover
24981         it under some other name, and our alloca.h will define it.
24982
24983 2004-05-16  Paul Eggert  <eggert@cs.ucla.edu>
24984             Derek Price  <derek@ximbiot.com>
24985
24986         * lib/alloca.c: Include <alloca.h>, to get our interface.
24987         * lib/alloca_.h: Use __alloca on AIX, so that we don't have to
24988         include <alloca.h> first.  Use C89 prototype for alloca; this
24989         requires including <stddef.h> for size_t.  Use extern "C" if C++.
24990         Use #elif for simplicity, since we can assume C89 now.
24991         Don't try to source the system alloca.h since it will not be found
24992         and to prevent recursively including its replacement.
24993         * lib/fnmatch.c: Include <alloca.h> instead of opencoding.
24994         * lib/regex.c: Likewise.
24995
24996 2004-05-16  Derek Price  <derek@ximbiot.com>
24997             Paul Eggert  <eggert@cs.ucla.edu>
24998
24999         getline cleanup.  This changes the getndelim2 API: both order of
25000         arguments, and meaning of delim2 (now uses EOF, not 0, to indicate
25001         no delimiter).
25002
25003         * lib/getline.c: Don't include stddef.h or stdio.h, since our
25004         interface does that.
25005         (getline): Always use getdelim, so that we don't have two
25006         copies of this code.
25007         * lib/getndelim2.c: Include <limits.h>, <inttypes.h>, <stdint.h>
25008         if available.
25009         (PTRDIFF_MAX, SIZE_MAX, SSIZE_MAX): Define if not defined.
25010         (GETNDELIM2_MAXIMUM): New macro.
25011         (getndelim2): Reorder arguments.  delim==EOF now means no delimiter,
25012         instead of the old practice of delim2==0.  All callers changed.
25013         Return -1 on overflow, instead of returning junk.
25014         Do not set *linesize unless allocation succeeds.
25015         * lib/getndelim2.h: Do not include stddef.h; no longer needed, now
25016         that we include sys/types.h.
25017         * lib/getnline.h: Likewise.
25018         * lib/getndelim2.h (GETNLINE_NO_LIMIT): New macro.
25019         (getndelim2): Reorder arguments.
25020         * lib/getnline.c (getnline, getndelim):
25021         Don't discard the NMAX argument.
25022         (getnline): Invoke getndelim, to avoid code duplication.
25023         * lib/getnline.h (GETNLINE_NO_LIMIT): New macro, used instead
25024         of (size_t) -1 by callers of the getnline family.
25025
25026 2004-05-13  Paul Eggert  <eggert@cs.ucla.edu>
25027
25028         * m4/gettime.m4 (gl_GETTIME): Require gl_TIMESPEC.
25029         Check for gettimeofday.
25030         * m4/settime.m4 (gl_SETTIME): Require gl_TIMESPEC.
25031         Check for settimeofday, stime.
25032
25033 2004-05-13  Paul Eggert  <eggert@cs.ucla.edu>
25034
25035         * lib/nanosleep.c (suspended): Change its type from int to
25036         sig_atomic_t volatile.
25037         (first_call): Make it private to rpl_nanosleep, and have it
25038         be zero initially as that's a bit faster.
25039         (my_usleep): Round up fractional times instead of truncating them,
25040         as this is the usual meaning for 'sleep'.
25041
25042         * lib/gettime.c (gettime): Fall back on `time' if `gettimeofday'
25043         doesn't work.
25044         * lib/settime.c: Include <unistd.h>, for stime (on Solaris 8, anyway).
25045         (ENOSYS): Define if not defined.
25046         (settime): Fall back on stime if it exists and settimeofday fails.
25047         But don't bother with fallbacks if a method fails with errno == EPERM.
25048
25049 2004-05-11  Jim Meyering  <jim@meyering.net>
25050
25051         Prior to this change, the save_cwd caller required read access to the
25052         current directory on most systems (ones with the fchdir function).
25053
25054         * lib/save-cwd.c (save_cwd) [HAVE_FCHDIR]: If opening `.' read-only
25055         fails, try write-only, and finally, resort to using xgetcwd.
25056
25057 2004-05-06  Paul Eggert  <eggert@cs.ucla.edu>
25058
25059         * lib/obstack.c, obstack.h: Import changes from libc.
25060
25061 2004-04-28  Bruno Haible  <bruno@clisp.org>
25062
25063         * lib/findprog.c (find_in_path): Treat Cygwin like Windows, since it
25064         also implicitly appends .exe to executables.
25065         * lib/localcharset.c (ISSLASH): Treat Cygwin like Windows, since it now
25066         accepts Windows pathnames.
25067         * lib/pathname.h (ISSLASH, IS_PATH_WITH_DIR, FILESYSTEM_PREFIX_LEN):
25068         Treat Cygwin like Windows, since it now accepts Windows pathnames.
25069         * lib/progreloc.c (ISSLASH, IS_PATH_WITH_DIR, FILESYSTEM_PREFIX_LEN):
25070         Treat Cygwin like Windows, since it now accepts Windows pathnames.
25071         Reported by Derek Robert Price <derek@ximbiot.com>.
25072
25073 2004-04-21  Karl Berry  <karl@gnu.org>
25074
25075         * config/srclist.txt (localcharset.c): break sync.
25076
25077 2004-04-20  Paul Eggert  <eggert@twinsun.com>
25078
25079         * m4/host-os.m4: Add a copyright notice.
25080
25081 2004-04-20  Jim Meyering  <jim@meyering.net>
25082
25083         Change UTILS_ to gl_ in AC_DEFINE'd names.
25084         Change utils_- and jm_-prefixed variables, too.
25085         * m4/mkdir-slash.m4 (gl_FUNC_MKDIR_TRAILING_SLASH): Renamed from
25086         UTILS_FUNC_MKDIR_TRAILING_SLASH.
25087         * m4/mkstemp.m4 (gl_FUNC_MKSTEMP): Renamed from UTILS_FUNC_MKSTEP.
25088
25089         * m4/dirfd.m4 (gl_FUNC_DIRFD): Rename from UTILS_FUNC_DIRFD.
25090         Don't emit trailing blanks.
25091         Also rename jm_-prefixed variables to have gl_ prefix.
25092
25093         * m4/host-os.m4 (gl_HOST_OS): Rename from UTILS_HOST_OS.
25094         Also rename jm_-prefixed variables to have gl_ prefix.
25095
25096         * m4/jm-macros.m4: Reflect the renamings.
25097         * m4/prereq.m4: Likewise.
25098
25099 2004-04-20  Jim Meyering  <jim@meyering.net>
25100
25101         * lib/getndelim2.c (getndelim2): Upon realloc failure, don't leak
25102         memory.
25103
25104 2004-04-20  Jim Meyering  <jim@meyering.net>
25105             Bruno Haible  <bruno@clisp.org>
25106
25107         * lib/localcharset.c (get_charset_aliases) [!VMS && !WIN32]: Don't leak
25108         memory when realloc fails.
25109
25110 2004-04-19  Jim Meyering  <jim@meyering.net>
25111
25112         * m4/readutmp.m4 (gl_PREREQ_READUTMP): Require gl_FUNC_FREE,
25113         now that readutmp.c may call `free (0)'.
25114
25115 2004-04-19  Bruno Haible  <bruno@clisp.org>
25116
25117         * m4/mbrtowc.m4: Change jm_ to gl_ in cache variables as well.
25118         * m4/inttypes_h.m4: Likewise.
25119         * m4/stdint_h.m4: Likewise.
25120         * m4/intmax_t.m4: Likewise.
25121         * m4/uintmax_t.m4: Likewise.
25122
25123 2004-04-18  Jim Meyering  <jim@meyering.net>
25124
25125         * m4/prereq.m4: Don't forbid jm_ prefix.
25126
25127         * m4/afs.m4, m4/allocsa.m4, m4/assert.m4, m4/backupfile.m4:
25128         * m4/bison.m4, m4/check-decl.m4, m4/chown.m4, m4/d-ino.m4:
25129         * m4/d-type.m4, m4/dirname.m4, m4/dos.m4, m4/error.m4, m4/fpending.m4:
25130         * m4/fstypename.m4, m4/fsusage.m4, m4/ftruncate.m4, m4/getdate.m4:
25131         * m4/getgroups.m4, m4/gettext.m4, m4/glibc21.m4, m4/group-member.m4:
25132         * m4/human.m4, m4/intmax.m4, m4/intmax_t.m4, m4/inttostr.m4:
25133         * m4/inttypes.m4, m4/inttypes_h.m4, m4/jm-macros.m4, m4/jm-winsz1.m4:
25134         * m4/jm-winsz2.m4, m4/lchown.m4, m4/lib-check.m4, m4/link-follow.m4:
25135         * m4/localcharset.m4, m4/longlong.m4, m4/ls-mntd-fs.m4, m4/lstat.m4:
25136         * m4/makepath.m4, m4/mbrtowc.m4, m4/mbswidth.m4, m4/memchr.m4:
25137         * m4/memcmp.m4, m4/mkdtemp.m4, m4/mkstemp.m4, m4/mountlist.m4:
25138         * m4/nanosleep.m4, m4/path-concat.m4, m4/perl.m4, m4/prereq.m4:
25139         * m4/putenv.m4, m4/quotearg.m4, m4/regex.m4, m4/stat.m4:
25140         * m4/stdint_h.m4, m4/strftime.m4, m4/strtoimax.m4, m4/strtoll.m4:
25141         * m4/strtoull.m4, m4/strtoumax.m4, m4/timespec.m4, m4/uintmax_t.m4:
25142         * m4/ulonglong.m4, m4/unlink-busy.m4, m4/unlocked-io.m4, m4/uptime.m4,
25143         * m4/utimbuf.m4, m4/utime.m4, m4/utimes-null.m4, m4/vasnprintf.m4:
25144         * m4/xstrtoimax.m4, m4/xstrtol.m4, m4/xstrtoumax.m4:
25145         Change jm_ to gl_ in AC_DEFINE'd names. Update all uses.
25146
25147 2004-04-18  Jim Meyering  <jim@meyering.net>
25148
25149         * lib/readutmp.c (read_utmp) [UTMP_NAME_FUNCTION]: Upon realloc
25150         failure, don't leak memory and do call END_UTMP_ENT.
25151
25152 2004-04-16  Jim Meyering  <jim@meyering.net>
25153
25154         * m4/prereq.m4 (jm_PREREQ_STAT): Remove macro.  It is specific to
25155         coreutils' stat program.
25156         (gl_PREREQ): Don't require jm_PREREQ_STAT.
25157
25158 2004-04-11  Paul Eggert  <eggert@twinsun.com>
25159
25160         * lib/inttostr.h: Include <limits.h> unconditionally, since we assume
25161         C89.
25162         (CHAR_BIT): Remove, since we assume C89.
25163         Include <stdint.h> if available, as per current Autoconf CVS advice.
25164
25165 2004-03-31  Jim Meyering  <jim@meyering.net>
25166
25167         * m4/prereq.m4: Require AC_FUNC_MALLOC, not jm_FUNC_MALLOC.
25168         Require AC_FUNC_REALLOC, not jm_FUNC_REALLOC.
25169         * m4/xalloc.m4: Likewise.
25170
25171 2004-03-30  Paul Eggert  <eggert@twinsun.com>
25172
25173         Merge from coreutils.
25174
25175         * m4/inttostr.m4: New file.
25176         * m4/getdate.m4 (gl_GETDATE): Remove time-related stuff.
25177         Require AM_STDBOOL_H and gl_TIMESPEC instead.
25178         Require gl_CLOCK_TIME.
25179         * m4/clock_time.m4 (gl_CLOCK_TIME): Require AC_GNU_SOURCE.
25180
25181 2004-03-30  Paul Eggert  <eggert@twinsun.com>
25182
25183         * lib/cloexec.h, cloexec.c (set_cloexec_flag): Return int
25184         not bool, to be more consistent with Unix conventions.
25185         Suggested by Bruno Haible.
25186
25187         Merge from coreutils.
25188
25189         * lib/imaxtostr.c, lib/inttostr.c, lib/inttostr.h, lib/offtostr.c:
25190         * lib/umaxtostr.c: New files.
25191
25192         * lib/getdate.h: Include stdbool.h, and timespec.h instead of
25193         the usual <time.h> dance.
25194         (get_date): Change signature to support fractional time stamps.
25195         All callers changed.
25196         * lib/getdate.y: Include "getdate.h" first, as we can now
25197         assume C89 and don't need to worry about 'const'.
25198         Similarly, include "unlocked-io.h" near start, not in middle.
25199         Include <limits.h>.
25200         (textint.value): Use long int rather than int.
25201         (textint.digits): Use size_t rather than int.
25202         (BILLION, LOG10_BILLION): New constants.
25203         (parser_control): New member rel_ns.  Members day_ordinal,
25204         time_zone, month, day, hour, minutes, rel_year, rel_month,
25205         rel_day, rel_hour, rel_minutes, rel_seconds
25206         are now long int, not int.  Member seconds is now struct timespec,
25207         not int.  New member timespec_seen.  Members dates_seen, days_seen,
25208         local_zones_seen, rels_seen, times_seen, zones_seen are now size_t,
25209         not int.
25210         (%union.intval): Now long int, not int.
25211         New member timespec.
25212         (tSDECIMAL_NUMBER, tUDECIMAL_NUMBER): New tokens.
25213         (seconds, signed_seconds, unsigned_seconds): New nonterminals.
25214         (spec): Now is a timespec or an item list.
25215         (timespec, items): New nonterminals.
25216         (time, rel, relunit, number, get_date):
25217         Add support for fractional seconds.
25218         (time): Fix bug: seconds weren't cleared in "00:00 +0000" syntax.
25219         (gmtime, localtime, mktime): Remove decls; not needed with C89.
25220         (to_hour): First arg is now long int, not int.
25221         (to_year): Returns long int, not int.
25222         Don't treat year -70 like 70.
25223         (tm_diff): Returns long int, not int.
25224         (lookup_word): Use bool instead of int when appropriate.
25225         (yylex): Use size_t for count, not int.
25226         Detect overflow when parsing large integer constants.
25227         Add support for fractions.
25228         (get_date): Make pointers 'const' if possible.
25229         Use more-portable code to detect integer overflow.
25230         (main) [TEST]: Adjust to above changes.  Test for localtime failure.
25231         Don't use ctime; it's not reliable if the year has >4 digits.
25232
25233         * lib/human.c (humblock): Inspect BLOCKSIZE if BLOCK_SIZE isn't set.
25234         This is for compatibility with BSD.
25235
25236         * lib/timespec.h (ST_TIME_CMP_NS, ST_TIME_CMP): Define.
25237         (ATIME_CMP, CTIME_CMP, MTIME_CMP, TIMESPEC_NS): Likewise.
25238         From coreutils' system.h.
25239
25240         * lib/userspec.c: Don't include "posixver.h".
25241         (parse_user_spec): Fall back on USER.GROUP parsing, regardless
25242         of POSIX version, as POSIX 1003.1-2001 allows that behavior as a
25243         compatible extension.  Simplify code by removing a boolean int
25244         that was always nonzero if a string was nonnull.
25245
25246 2004-03-30  Jim Meyering  <jim@meyering.net>
25247
25248         Merge from coreutils.
25249
25250         Avoid a configure-time warning about sys/ucred.h on OSF V4.0.
25251         * m4/ls-mntd-fs.m4: Test for sys/ucred.h separately, since
25252         on some systems one must include <grp.h> before it.
25253         Reported by Christian Krackowizer.
25254
25255 2004-03-30  Jim Meyering  <jim@meyering.net>
25256
25257         Merge from coreutils.
25258
25259         * lib/mountlist.c [HAVE_SYS_UCRED_H]: Include grp.h before sys/ucred.h.
25260
25261         * lib/readtokens.c (readtoken): Don't leak 64 bytes when reading
25262         an empty input stream.
25263
25264         * lib/readtokens.c: Include <stdbool.h>.
25265         (readtoken): Use `size_t' rather than int/long.
25266         All callers adjusted.
25267         Use `bool' rather than `int' where appropriate.
25268         Use memset rather than an explicit loop.
25269         Use x2nrealloc rather than xrealloc.
25270         Allow the use of `\0' as a delimiter.
25271         (readtokens): Likewise.
25272         * lib/readtokens.h (readtoken, readtokens): Update prototypes.
25273
25274 2004-03-30  Jim Meyering  <jim@meyering.net>
25275
25276         * m4/realloc.m4: Remove file, since now it does no more than
25277         AC_REQUIRE([AC_FUNC_REALLOC]), and that can be done via
25278         the `configure.ac' section of module/realloc.
25279         * m4/malloc.m4: Likewise, but for AC_FUNC_MALLOC.
25280
25281 2004-03-30  Bruno Haible  <bruno@clisp.org>
25282
25283         * lib/getloadavg.c (getloadavg): Don't assume setlocale returns
25284         nonnull.
25285
25286 2004-03-29  Paul Eggert  <eggert@twinsun.com>
25287
25288         Merge changes to getloadavg.c from coreutils and Emacs.
25289
25290         * lib/getloadavg.c [!defined HAVE_SETLOCALE] (setlocale):
25291         Define to an expression, not to the empty string.
25292         Include cloexec.h and xalloc.h.
25293         (getloadavg): Restore LC_NUMERIC locale after setting it temporarily.
25294         Use set_cloexec_flag rather than rolling our own.
25295         * lib/cloexec.c, lib/cloexec.h: New files.
25296
25297 2004-03-29  Paul Eggert  <eggert@twinsun.com>
25298
25299         * m4/cloexec.m4: New file.
25300
25301 2004-03-18  Paul Eggert  <eggert@twinsun.com>
25302
25303         * lib/getopt.h: Sync with libc CVS.
25304
25305 2004-03-18  Paul Eggert  <eggert@twinsun.com>
25306             Bruno Haible  <bruno@clisp.org>
25307
25308         * m4/mbswidth.m4 (gl_MBSWIDTH): Also test whether <wchar.h> declares
25309         mbswidth.
25310
25311 2004-03-18  Paul Eggert  <eggert@twinsun.com>
25312             Bruno Haible  <bruno@clisp.org>
25313
25314         * lib/mbswidth.h: Include <wchar.h> only if
25315         HAVE_DECL_MBSWIDTH_IN_WCHAR_H, not on all platforms that have
25316         <wchar.h>.
25317         * lib/mbswidth.c: Include <stdio.h> and <time.h> before <wchar.h>.
25318
25319 2004-03-09  Paul Eggert  <eggert@twinsun.com>
25320
25321         * lib/argp-parse.c, getopt.c, getopt.h, getopt1.c:
25322         Sync with libc CVS.
25323         * lib/getopt_int.h: New file, also synced from libc.
25324
25325 2004-03-09  Paul Eggert  <eggert@twinsun.com>
25326
25327         * config/srclistvars.sh: Add GNUWWWLICENSES for eggert.
25328         * config/srclist.txt: Sync getopt with libc.  Add getopt_int.h.
25329         Bring back getopt.c, getopt.h, getopt1.c.
25330
25331 2004-03-07  Paul Eggert  <eggert@twinsun.com>
25332
25333         * m4/c-stack.m4 (gl_PREREQ_C_STACK): Renamed from jm_PREREQ_C_STACK.
25334         All uses changed.  Check for sa_sigaction member; this fixes
25335         a bug first reported by Jason Andrade in
25336         <http://mail.gnu.org/archive/html/bug-textutils/2003-03/msg00027.html>.
25337
25338 2004-03-07  Paul Eggert  <eggert@twinsun.com>
25339
25340         * lib/c-stack.c (SIGACTION_WORKS): New macro.  Use it instead of long
25341         '#if' expressions.  Unlike the code it replaces, it does not
25342         depend on (defined _SC_PAGESIZE).  However, it does depend on
25343         HAVE_STRUCT_SIGACTION_SA_SIGACTION; this last change fixes a bug
25344         first reported by Jason Andrade in
25345         <http://mail.gnu.org/archive/html/bug-textutils/2003-03/msg00027.html>.
25346
25347 2004-02-25  Simon Josefsson  <jas@extundo.com>
25348
25349         * m4/strdup.m4 (gl_PREREQ_STRDUP): Check whether strdup is declared.
25350
25351 2004-02-25  Simon Josefsson  <jas@extundo.com>
25352
25353         * lib/strdup.h: New file.
25354         * lib/strdup.c: Include it.
25355         * lib/path-concat.c: Include strdup.h. Drop strdup declaration.
25356         * lib/userspec.c: Include strdup.h. Drop strdup declaration.
25357
25358 2004-02-23  Karl Berry  <karl@gnu.org>
25359
25360         * doc/maintain.texi, doc/standards.texi, doc/make-stds.texi: new files
25361         (from fencepost.gnu.org:/gd/gnuorg).
25362
25363 2004-02-23  Karl Berry  <karl@gnu.org>
25364
25365         * config/srclistvars.sh (GNUORG) [karl]: redefine.
25366         * config/srclist.txt: add maintain/standards documents.
25367
25368 2004-02-18  Bruno Haible  <bruno@clisp.org>
25369
25370         * m4/xsize.m4 (gl_XSIZE): Require AC_C_INLINE.
25371         Reported by Derek Robert Price <derek@ximbiot.com>.
25372
25373 2004-02-16  Karl Berry  <karl@gnu.org>
25374
25375         * config/mkinstalldirs, install-sh: update from automake.
25376
25377 2004-02-06  Karl Berry  <karl@gnu.org>
25378
25379         * m4/po.m4: update from gettext 0.14.1.
25380
25381 2004-02-06  Karl Berry  <karl@gnu.org>
25382
25383         * lib/config.charset: update from gettext 0.14.1.
25384
25385 2004-02-05  Paul Eggert  <eggert@twinsun.com>
25386
25387         Add comments and code, prompted by suggestions from Bruno Haible
25388         for sh-quote.
25389         * lib/quotearg.h (quotearg_alloc): New decl.  Improve the comments
25390         describing the enum quoting_style values.
25391         * lib/quotearg.c (quotearg_alloc): New function.
25392         (quotearg_buffer_restyled): Treat lone { and } as special.
25393         Treat = as special.  Work around bug with older shells
25394         that "see" a '\' that is really the 2nd byte of a multibyte char.
25395         Quote empty string with shell_quoting_style.
25396
25397 2004-02-03  Bruno Haible  <bruno@clisp.org>
25398
25399         * m4/pipe.m4: New file, from GNU gettext.
25400
25401 2004-02-03  Bruno Haible  <bruno@clisp.org>
25402
25403         * lib/pipe.h: New file, from GNU gettext.
25404         * lib/pipe.c: New file, from GNU gettext.
25405
25406 2004-01-27  Bruno Haible  <bruno@clisp.org>
25407
25408         * m4/execute.m4: New file, from GNU gettext.
25409
25410 2004-01-27  Bruno Haible  <bruno@clisp.org>
25411
25412         * lib/execute.h: New file, from GNU gettext.
25413         * lib/execute.c: New file, from GNU gettext.
25414         * lib/w32spawn.h: New file, from GNU gettext.
25415
25416 2004-01-24  Paul Eggert  <eggert@twinsun.com>
25417
25418         Merge from diffutils.
25419
25420         * lib/file-type.c (file_type): Add typed memory objects.
25421         * lib/file-type.h (S_TYPEISTMO): New macro.
25422
25423         * lib/c-stack.h (c_stack_action): Remove argv argument.
25424         * lib/c-stack.c (c_stack_action): Likewise.  All uses changed.
25425         (die): Don't calculate message unless segv_action returns.
25426         (get_stack_location, min_address_from_argv, max_address_from_argv,
25427         volatile stack_base, volatile_stack_size): Remove.
25428         (segv_handler): If ! HAVE_XSI_STACK_OVERFLOW_HEURISTIC, assume
25429         that every segmentation violation is a stack overflow.  (Ouch!)
25430         See Debian bug 136249 (still outstanding) for more info about why
25431         HAVE_XSI_STACK_OVERFLOW_HEURISTIC fails on Linux kernels.
25432
25433 2004-01-24  Paul Eggert  <eggert@twinsun.com>
25434
25435         Exit-status fix from coreutils.
25436
25437         Use exit_failure consistently in place of EXIT_FAILURE,
25438         so that program exit statuses are consistent on failure.
25439
25440         * lib/argmatch.c (ARGMATCH_DIE) [! defined ARGMATCH_DIE]:
25441         Include "exitfail.h", and use exit_failure rather than EXIT_FAILURE.
25442         * lib/argmatch.h: Comment fix to match the above.
25443         * lib/obstack.c (obstack_exit_failure) [!defined _LIBC]:
25444         Now a macro referring to exit_failure, instead of a separate
25445         variable.  Include "exitfail.h" to get it.
25446         * lib/xstrtol.h: Include "exitfail.h".
25447         (STRTOL_FATAL_ERROR): Exit with status exit_failure, not 2.
25448
25449         * lib/long-options.c (parse_long_options): Use prototype
25450         for usage function arg.  Pass it EXIT_SUCCESS rather than 0,
25451         for clarity.
25452
25453 2004-01-21  Jim Meyering  <jim@meyering.net>
25454
25455         * lib/mktime.c (__mktime_internal) [!_LIBC]: Define to mktime_internal
25456         so as not to conflict with a different-sized __mktime_internal
25457         function in GNU libc.
25458         * lib/timegm.c (__mktime_internal) [!_LIBC]: Likewise.
25459         Problem building statically-linked `ls' reported by Michael Brunnbauer.
25460
25461 2004-01-20  Karl Berry  <karl@gnu.org>
25462
25463         * config/config.guess: update from config.
25464
25465         * config/srclistvars.sh: GNUWWWLICENSES for karl.
25466
25467 2004-01-20  Bruno Haible  <bruno@clisp.org>
25468
25469         Safer stack allocation.
25470         * lib/setenv.c: Include allocsa.h.
25471         (alloca): Remove fallback definition.
25472         (freea): Remove macro.
25473         (__add_to_environ) [!_LIBC]: Use allocsa instead of alloca. Use freesa
25474         instead of freea.
25475
25476 2004-01-20  Bruno Haible  <bruno@clisp.org>
25477
25478         * m4/eealloc.m4: New file, from GNU gettext.
25479
25480 2004-01-20  Bruno Haible  <bruno@clisp.org>
25481
25482         * m4/allocsa.m4: New file, from GNU gettext.
25483
25484 2004-01-20  Bruno Haible  <bruno@clisp.org>
25485
25486         * lib/xallocsa.h: New file, from GNU gettext.
25487         * lib/xallocsa.c: New file, from GNU gettext.
25488
25489 2004-01-20  Bruno Haible  <bruno@clisp.org>
25490
25491         * lib/wait-process.c: On Windows, include windows.h. Needed on mingw.
25492
25493 2004-01-20  Bruno Haible  <bruno@clisp.org>
25494
25495         * lib/wait-process.c (wait_subprocess): Add ignore_sigpipe argument.
25496         * lib/wait-process.c (wait_subprocess): Likewise. Handle SIGPIPE
25497         specially.
25498
25499 2004-01-20  Bruno Haible  <bruno@clisp.org>
25500
25501         * lib/wait-process.c (wait_process): Disable the 2003-10-31 waitid()
25502         patch.
25503
25504 2004-01-20  Bruno Haible  <bruno@clisp.org>
25505
25506         * lib/wait-process.c (cleanup_slaves): Use ANSI C declaration.
25507
25508 2004-01-20  Bruno Haible  <bruno@clisp.org>
25509
25510         * lib/eealloc.h: New file.
25511
25512 2004-01-20  Bruno Haible  <bruno@clisp.org>
25513
25514         * lib/binary-io.h: Avoid warnings on Cygwin.
25515
25516 2004-01-20  Bruno Haible  <bruno@clisp.org>
25517
25518         * lib/allocsa.h: New file, from GNU gettext.
25519         * lib/allocsa.c: New file, from GNU gettext.
25520
25521 2004-01-18  Karl Berry  <karl@gnu.org>
25522
25523         * doc/gpl.texi, doc/lgpl.texi: new files.
25524
25525 2004-01-18  Karl Berry  <karl@gnu.org>
25526
25527         * config/srclistvars.sh (GNUWWWLICENSES): new variable.
25528         * config/srclist.txt ({fdl,gpl,lgpl}.text): get from there.
25529
25530 2004-01-15  Paul Eggert  <eggert@twinsun.com>
25531
25532         Merge from coreutils.
25533
25534         * m4/jm-macros.m4 (jm_CHECK_ALL_TYPES): Check for uintptr_t.
25535         * m4/posixver.m4 (gl_POSIXVER): Require gl_DEFAULT_POSIX2_VERSION.
25536         (gl_DEFAULT_POSIX2_VERSION): Move
25537         the documentation from 'configure' into 'config.hin',
25538         so that 'configure --help' isn't burdened by it and
25539         we don't have to worry about its formatting there.
25540         Reword the documentation so that it's more succinct
25541         and can be run together into a single paragraph.
25542         * m4/same.m4 (gl_SAME): Check for pathconf.
25543
25544 2004-01-15  Paul Eggert  <eggert@twinsun.com>
25545
25546         Merge from coreutils.
25547
25548         * lib/posixver.c: Include posixver.h.
25549
25550         * lib/same.c: Include <stdbool.h>, <limits.h>.
25551         (_POSIX_NAME_MAX): Define if not defined.
25552         (MIN): New macro.
25553         (same_name): If file names are silently truncated, report
25554         that the file names are the same if they are the same after
25555         the silent truncation.
25556
25557         * lib/xstrtod.h (xstrtod): Accept an extra arg, specifying the
25558         conversion function.
25559         * lib/xstrtod.c (xstrtod): Likewise.  All callers changed to
25560         include c-strtod.h and use c_strtod.  Don't include stdlib.h; no
25561         longer needed.
25562
25563 2004-01-15  Jim Meyering  <jim@meyering.net>
25564
25565         Merge from coreutils.
25566
25567         * m4/clock_time.m4 (gl_CLOCK_TIME): Don't set LIB_CLOCK_GETTIME
25568         if no library is required.
25569         * m4/jm-macros.m4: Don't require UTILS_SYS_OPEN_MAX.
25570         * m4/jm-macros.m4 (jm_MACROS): Require gl_FUNC_FREE.
25571         * m4/jm-macros.m4 (jm_MACROS): Require autoconf-2.58.
25572         (AC_LANG_SOURCE): Remove definition, now that we require autoconf-2.58.
25573         * m4/jm-macros.m4 (jm_MACROS): Don't require AC_FUNC_FTW.
25574         * m4/lib-check.m4 (jm_LIB_CHECK): Do not set LIB_CRYPT to the
25575         value, $ac_cv_search_crypt, if it's "none required".
25576         * m4/posixver.m4 (gl_DEFAULT_POSIX2_VERSION): New macro.
25577         * m4/prereq.m4 (jm_PREREQ): Require AC_FUNC_GETLOADAVG,
25578         not gl_FUNC_GETLOADAVG.
25579         * m4/prereq.m4 (jm_PREREQ): Require gl_READTOKENS, gl_MD5, gl_MAKEPATH,
25580         gl_LONG_OPTIONS, and gl_IDCACHE, gl_GETUGROUPS.
25581
25582 2004-01-15  Jim Meyering  <jim@meyering.net>
25583
25584         Merge from coreutils.
25585
25586         * lib/md5.h (rol) [__GNUC__ && __i386__]: Don't use `asm' code.  These
25587         days, gcc-3.x does better all by itself.  Patch from Dean Gaudet:
25588         http://mail.gnu.org/archive/html/bug-coreutils/2003-11/msg00144.html
25589
25590         * lib/posixver.c (DEFAULT_POSIX2_VERSION): Use definition of new,
25591         optional configure-time default.
25592
25593         * lib/version-etc.c (version_etc_copyright): Update copyright date.
25594
25595         * lib/xreadlink.c (xreadlink): Correct outdated comment.
25596
25597 2004-01-15  Alexandre Duret-Lutz  <adl@gnu.org>
25598
25599         Merge from coreutils.
25600
25601         * m4/nanosleep.m4 (jm_FUNC_NANOSLEEP): Do not set LIB_NANOSLEEP to the
25602         value, $ac_cv_search_nanosleep, if it's "none required".
25603
25604 2004-01-14  Paul Eggert  <eggert@twinsun.com>
25605
25606         * lib/fnmatch_loop.c (ALLOCA_LIMIT): Remove macro, which collided
25607         with like-named macro in fnmatch.c.
25608         (EXT): Use an internal constant instead.
25609
25610         Merge fnmatch patches from glibc.
25611         * lib/fnmatch.c (mbsinit): Remove define.
25612         Add libc_hidden_ver (__fnmatch, fnmatch).
25613         * lib/fnmatch_loop.c (FCT): Cast to int32_t and UCHAR when appropriate.
25614         Adjust to renaming of collseq_table_lookup to __collseq_table_lookup.
25615
25616 2004-01-14  Karl Berry  <karl@gnu.org>
25617
25618         * config/install-sh: update from automake.
25619
25620 2004-01-13  Karl Berry  <karl@gnu.org>
25621
25622         * config/install-sh: update from automake.
25623
25624 2004-01-09  Karl Berry  <karl@gnu.org>
25625
25626         * config/install-sh: update from automake.
25627
25628 2004-01-05  Karl Berry  <karl@gnu.org>
25629
25630         * config/config.{sub,guess}: update from config.
25631
25632 2003-12-31  Karl Berry  <karl@gnu.org>
25633
25634         * config/depcomp: update from automake.
25635
25636 2003-12-14  Karl Berry  <karl@gnu.org>
25637
25638         * lib/config.charset: update from gettext-runtime.
25639
25640 2003-12-03  Paul Eggert  <eggert@twinsun.com>
25641
25642         * lib/getgroups.c (getgroups): xmalloc takes one argument, not two.
25643         Bug reported by Alfred M. Szmidt.
25644
25645 2003-12-03  Bruno Haible  <bruno@clisp.org>
25646
25647         * m4/gettext.m4: Upgrade from gettext-0.13.
25648         * m4/po.m4: Upgrade from gettext-0.13.
25649         * m4/size_max.m4 (gl_SIZE_MAX): Don't use the _ONCE macros here.
25650         * m4/intmax.m4: New file, from gettext-0.13.
25651         * m4/printf-posix.m4: New file, from gettext-0.13.
25652
25653 2003-11-29  Karl Berry  <karl@gnu.org>
25654
25655         * lib/argp-{help.c,parse.c,namefrob.h}, argp.h: update from libc.
25656
25657 2003-11-25  Paul Eggert  <eggert@twinsun.com>
25658             Bruno Haible  <bruno@clisp.org>
25659
25660         * lib/printf-parse.h: Don't include sys/types.h.
25661         (ARG_NONE): New macro.
25662         (char_directive): Change type of *arg_index fields to size_t.
25663         * lib/printf-parse.c: Don't include sys/types.h.
25664         (SSIZE_MAX): Remove macro.
25665         (PRINTF_PARSE): Change the type of the arg_index variables to size_t.
25666         Remove unnecessary overflow check.
25667         * lib/vasnprintf.c (VASNPRINTF): Update for type change of *arg_index
25668         fields.
25669
25670 2003-11-25  Bruno Haible  <bruno@clisp.org>
25671
25672         * modules/vasnprintf (Files): Remove m4/ssize_t.m4.
25673
25674 2003-11-25  Bruno Haible  <bruno@clisp.org>
25675
25676         * m4/vasnprintf.m4 (gl_PREREQ_PRINTF_PARSE): Don't require
25677         gt_TYPE_SSIZE_T.
25678
25679 2003-11-24  Paul Eggert  <eggert@twinsun.com>
25680
25681         * modules/alloca: Remove dependency on xalloc.
25682
25683 2003-11-24  Paul Eggert  <eggert@twinsun.com>
25684
25685         * lib/alloca.c: Remove dependency on xalloc module.
25686         (xalloc_die): Remove.
25687         (memory_full) [!defined emacs]: New macro.
25688         [!defined emacs]: Don't include xalloc.h.
25689         (alloca): Invoke memory_full, not xalloc_die, if malloc fails or
25690         address arithmetic overflows.  Change datatypes a bit to avoid
25691         unnecessary casts.
25692
25693 2003-11-22  Jim Meyering  <jim@meyering.net>
25694
25695         * lib/xmalloc.c (x2nrealloc_inline): Fix typos in comments:
25696         s/size/size_t/.
25697
25698 2003-11-21  Karl Berry  <karl@gnu.org>
25699
25700         * config/config.{sub,guess}: update from config.
25701
25702 2003-11-18  Karl Berry  <karl@gnu.org>
25703
25704         * config/config.{sub,guess}: update from config.
25705
25706         * config/(printf-{parse,args}.[ch]): sync broken, sigh.
25707
25708 2003-11-17  Paul Eggert  <eggert@twinsun.com>
25709
25710         * README: Mention that S+T cannot overflow if S is the size of
25711         an existing object and T is sufficiently small.
25712
25713 2003-11-17  Jim Meyering  <jim@meyering.net>
25714
25715         On systems without utime and without a utimes function capable of
25716         dealing with a NULL struct utimbuf* argument, this utime replacement
25717         could -- in unusual circumstances -- leak a file descriptor.
25718         * lib/utime.c: Include <unistd.h> and <errno.h>.
25719         (utime_null): Be sure to close `fd' and to preserve errno.
25720         Reported by Geoff Collyer via Arnold Robbins.
25721
25722 2003-11-17  Bruno Haible  <bruno@clisp.org>
25723
25724         * modules/vasnprintf (Files): Add m4/ssize_t.m4.
25725         (Depends-on): Add xsize.
25726
25727 2003-11-17  Bruno Haible  <bruno@clisp.org>
25728
25729         * m4/vasnprintf.m4 (gl_PREREQ_PRINTF_PARSE): Require gt_TYPE_SSIZE_T.
25730
25731 2003-11-17  Bruno Haible  <bruno@clisp.org>
25732
25733         * lib/vasnprintf.c (alloca): Remove fallback definition.
25734         (freea): Remove definition.
25735         (VASNPRINTF): Use alloca only for small sizes, say <= 4000 bytes.
25736         Reported by Paul Eggert.
25737
25738 2003-11-16  Paul Eggert  <eggert@twinsun.com>
25739             Bruno Haible  <bruno@clisp.org>
25740
25741         Protect against address arithmetic overflow.
25742         * lib/printf-args.h: Include stddef.h.
25743         (arguments): Change type of field 'count' to size_t.
25744         * lib/printf-args.c (printf_fetchargs): Use size_t instead of
25745         'unsigned int' where appropriate.
25746         * lib/printf-parse.h: Include sys/types.h.
25747         (char_directive): Change type of *arg_index fields to ssize_t.
25748         (char_directives): Change type of fields 'count', max_*_length to
25749         size_t.
25750         * lib/printf-parse.c: Include sys/types.h and xsize.h.
25751         (SSIZE_MAX): Define fallback value.
25752         (PRINTF_PARSE): Use size_t instead of 'unsigned int' and ssize_t
25753         instead of 'int' where appropriate. Check a_allocated, d_allocated
25754         against overflow. Reject %m$ argument numbers > SSIZE_MAX + 1.
25755         * lib/vasnprintf.c: Include xsize.h.
25756         (VASNPRINTF): Use size_t instead of 'unsigned int' where appropriate.
25757         Check alloca, malloc, realloc, ENSURE_ALLOCATION arguments against
25758         overflow. Avoid wraparound when converting a width or precision from
25759         decimal to binary.
25760
25761 2003-11-16  Bruno Haible  <bruno@clisp.org>
25762
25763         Update from GNU gettext.
25764         * lib/printf-parse.c: Generalize to it can be compiled for wide
25765         strings.
25766         (PRINTF_PARSE, CHAR_T, DIRECTIVE, DIRECTIVES): New macros.
25767         * lib/vasnprintf.c: Generalize to it can be compiled for wide strings.
25768         (VASNPRINTF, CHAR_T, DIRECTIVE, DIRECTIVES, PRINTF_PARSE, USE_SNPRINTF,
25769         SNPRINTF): New macros.
25770         Don't include <alloca.h> if the file is used inside libintl.
25771         (local_wcslen): New function, for Solaris 2.5.1.
25772         (VASNPRINTF): Use it instead of wcslen.
25773
25774 2003-11-16  Bruno Haible  <bruno@clisp.org>
25775
25776         * lib/xsize.h (xmax): New function.
25777         (xsum, xsum3, xsum4): Declare as "pure" functions.
25778
25779 2003-11-12  Paul Eggert  <eggert@twinsun.com>
25780
25781         * modules/xalloc (Files): Undo latest change, since xalloc.h
25782         no longer needs SIZE_MAX or PTRDIFF_MAX.
25783
25784 2003-11-12  Paul Eggert  <eggert@twinsun.com>
25785
25786         * m4/xalloc.m4 (gl_PREREQ_XALLOC): Do not require gl_SIZE_MAX or
25787         gl_PTRDIFF_MAX.
25788
25789 2003-11-12  Paul Eggert  <eggert@twinsun.com>
25790
25791         * lib/xstrtol.c (__xstrtol): Remove "break" immediately after
25792         "return", to pacify some unknown compiler.  Problem reported
25793         by Joerg Schilling.
25794
25795 2003-11-12  Paul Eggert  <eggert@twinsun.com>
25796
25797         * lib/xalloc.h: Do not include <limits.h> or <stdint.h>.
25798         (xalloc_oversized): Use sizeof (ptrdiff_t) and sizeof (size_t) for
25799         the heuristic, rather than PTRDIFF_MAX and SIZE_MAX.  This
25800         heuristic is just as accurate as far as we know, and it removes a
25801         dependency on size_max.m4 and ptrdiff_max.m4.
25802
25803 2003-11-11  Bruno Haible  <bruno@clisp.org>
25804
25805         * modules/xsize (Files): Add m4/size_max.m4.
25806         * modules/xalloc (Files): Add m4/size_max.m4, m4/ptrdiff_max.m4.
25807
25808 2003-11-11  Bruno Haible  <bruno@clisp.org>
25809
25810         * m4/size_max.m4: New file.
25811         * m4/ptrdiff_max.m4: New file.
25812         * m4/xsize,m4 (gl_XSIZE): Require gl_SIZE_MAX.
25813         * m4/xalloc.m4 (gl_PREREQ_XALLOC): New macro.
25814         (gl_XALLOC): Invoke it.
25815
25816 2003-11-11  Bruno Haible  <bruno@clisp.org>
25817
25818         * lib/xsize.h (SIZE_MAX): Remove fallback definition.
25819         * lib/xalloc.h: Include limits.h. Assume SIZE_MAX and PTRDIFF_MAX are
25820         defined.
25821
25822 2003-11-10  Paul Eggert  <eggert@twinsun.com>
25823
25824         * lib/xalloc.h (xalloc_oversized): [! (defined PTRDIFF_MAX &&
25825         PTRDIFF_MAX < SIZE_MAX)]: Fix off-by-one error that would have
25826         rejected some allocations of exactly SIZE_MAX - 2 bytes.
25827         From Bruno Haible.
25828         [defined PTRDIFF_MAX && PTRDIFF_MAX < SIZE_MAX]: Use SIZE_MAX,
25829         not (size_t) -1, since it's defined here.
25830
25831 2003-11-09  Karl Berry  <karl@gnu.org>
25832
25833         * config/mkinstalldirs, depcomp, mdate-sh: update from automake.
25834
25835 2003-11-06  Paul Eggert  <eggert@twinsun.com>
25836
25837         * lib/xalloc.h [HAVE_STDINT_H]: Include <stdint.h>.
25838         (xalloc_oversized) [! (PTRDIFF_MAX < SIZE_MAX)]:
25839         Reject sizes of exactly SIZE_MAX bytes.
25840         * lib/xreadlink.c: Include "xalloc.h" before checking whether SIZE_MAX
25841         is defined, since "xalloc.h" now defines SIZE_MAX on modern hosts.
25842
25843 2003-11-05  Bruno Haible  <bruno@clisp.org>
25844
25845         * lib/xsize.h: Include limits.h, to avoid a possible collision with
25846         SIZE_MAX defined in <limits.h> on Solaris.
25847
25848 2003-11-04  Jim Meyering  <jim@meyering.net>
25849
25850         * modules/sysexits: Use the `$(VAR)' notation for AC_SUBST'd
25851         variable names, rather than @VAR@.
25852         * modules/poll: Likewise.
25853
25854 2003-11-04  Bruno Haible  <bruno@clisp.org>
25855
25856         * modules/xsize: New file.
25857         * modules/linebreak: Depend on xsize.
25858         * MODULES.html.sh (func_all_modules): Add xsize.
25859
25860 2003-11-04  Bruno Haible  <bruno@clisp.org>
25861
25862         * m4/xsize.m4: New file.
25863
25864 2003-11-04  Bruno Haible  <bruno@clisp.org>
25865
25866         * lib/xsize.h: New file.
25867         * lib/linebreak.c: Include xsize.h.
25868         (mbs_possible_linebreaks, mbs_width_linebreaks): Check malloc()
25869         argument for overflow.
25870         Suggested by Paul Eggert.
25871
25872 2003-11-03  Karl Berry  <karl@gnu.org>
25873
25874         * config/config.{guess,sub}: update from config.
25875
25876 2003-11-03  Jim Meyering  <jim@meyering.net>
25877
25878         * modules/userspec (lib_SOURCES): Add userspec.h.
25879         (Include): Add "userspec.h".
25880         Improve description.
25881
25882 2003-11-03  Jim Meyering  <jim@meyering.net>
25883
25884         * lib/userspec.c: Include "userspec.h".
25885         * lib/userspec.h: New file.
25886
25887 2003-11-03  Bruno Haible  <bruno@clisp.org>
25888
25889         * m4/wait-process.m4 (gl_WAIT_PROCESS): Also check for waitid.
25890
25891 2003-11-03  Bruno Haible  <bruno@clisp.org>
25892
25893         * lib/wait-process.c (wait_process): Use waitid with WNOWAIT if
25894         available, to avoid (extremely rare) race condition.
25895         Suggested by Paul Eggert.
25896
25897 2003-11-02  Karl Berry  <karl@gnu.org>
25898
25899         * config/srclist.txt (vasprintf.c): sync broken, sigh.
25900
25901 2003-10-31  Paul Eggert  <eggert@twinsun.com>
25902
25903         * lib/mountlist.h (struct mount_entry.me_type_malloced): New member.
25904         * lib/mountlist.c (SIZE_MAX): Define if not defined already.
25905         (read_filesystem_list): Set and use me_type_malloced.
25906         Use "sizeof *me" rather than "sizeof (struct mount_entry)" (or
25907         whatever the type happens to be), for brevity and consistency.
25908         Check for size calculation overflow on Alphas running OSF/1.
25909
25910 2003-10-31  Jim Meyering  <jim@meyering.net>
25911
25912         * lib/hash.c: Include "xalloc.h" for use of xalloc_oversized.
25913
25914         * lib/linebuffer.c: Include <string.h> for declaration of memset.
25915
25916 2003-10-30  Paul Eggert  <eggert@twinsun.com>
25917             Bruno Haible  <bruno@clisp.org>
25918
25919         * lib/vasprintf.c: Include <limits.h>, <stdlib.h>.
25920         (vasprintf): Fail if the resulting length doesn't fit in an 'int'.
25921
25922 2003-10-30  Paul Eggert  <eggert@cs.ucla.edu>
25923
25924         * m4/host-os.m4 (UTILS_HOST_OS): Change netbsd*-gnu pattern back to
25925         netbsd*-gnu*.  Suggested by Robert Millan.
25926
25927 2003-10-29  Paul Eggert  <eggert@twinsun.com>
25928
25929         * modules/group-member: Depend on stdbool.
25930
25931 2003-10-29  Paul Eggert  <eggert@twinsun.com>
25932
25933         * m4/xalloc.m4 (gl_XALLOC): Undo previous change.
25934
25935 2003-10-29  Paul Eggert  <eggert@twinsun.com>
25936
25937         * m4/host-os.m4 (UTILS_HOST_OS): Resurrect netbsd*-gnu.  Add comments
25938         to it, and to knetbsd*-gnu and kfreebsd*-gnu.  Remove the '*' from
25939         after the 'gnu' in these cases.  This fixes some bugs in the
25940         previous change, and is based on suggestions by Robert Millan.
25941
25942 2003-10-29  Paul Eggert  <eggert@twinsun.com>
25943
25944         * lib/xalloc.h (xalloc_oversized): Now a macro, not a function,
25945         so that it works even if SIZE_MAX < N.  Do not include <stdbool.h>;
25946         no longer needed.
25947         * lib/quotearg.c (quotearg_n_options): Use it.
25948         * lib/group-member.c: Include <stdbool.h>.
25949         (free_group_info): Arg is now const *; don't free arg.
25950         (get_group_info): Now returns bool and accepts struct group_info *,
25951         rather than returning a malloc'ed struct group_info *.
25952         All uses changed.  Check for overflow in internal size calculation.
25953
25954         * lib/getusershell.c (readname): Simplify the code by using x2nrealloc
25955         rather than xmalloc/xrealloc.
25956         * lib/linebuffer.c (initbuffer, readlinebuffer): Simplify the code by
25957         using x2realloc rather than xmalloc/xrealloc.  Also, fix a C
25958         conformance bug: the old code used a pointer after freeing the
25959         storage that it addressed.
25960         * lib/hash.c (hash_initialize): Simplify the code by using
25961         xalloc_oversized rather than doing it by hand.
25962         * lib/getgroups.c (getgroups): Don't use xrealloc, since we don't need
25963         the buffer preserved.  Use free and xmalloc instead.
25964         * lib/quotearg.c (quotearg_n_options): Likewise.
25965         Use a simpler test for size overflow.  Don't use xalloc_oversized
25966         because unsigned int might be wider than size_t (!); this suggests
25967         that we should switch from unsigned int to size_t for slot numbers.
25968
25969 2003-10-28  Paul Eggert  <eggert@twinsun.com>
25970
25971         * m4/host-os.m4 (UTILS_HOST_OS): Identify GNU/KFreeBSD and
25972         GNU/KNetBSD.  These implementations use glibc atop the FreeBSD and
25973         NetBSD kernels.  Requested by Richard Stallman.
25974
25975 2003-10-27  Paul Eggert  <eggert@twinsun.com>
25976
25977         * lib/exclude.c (new_exclude): Use xzalloc rather than xmalloc
25978         to allocate the returned structure.  Do not allocate a subarray,
25979         as x2nrealloc will do that.
25980         (add_exclude): Use x2nrealloc to reallocate ex->exclude,
25981         instead of xnrealloc.
25982         (add_exclude_file): Use x2realloc instead of malloc + xnrealloc.
25983
25984 2003-10-27  Bruno Haible  <bruno@clisp.org>
25985
25986         * lib/stdbool_.h: Better support for BeOS.
25987
25988 2003-10-26  Paul Eggert  <eggert@twinsun.com>
25989
25990         * m4/xalloc.m4 (gl_XALLOC): Requore AC_C_INLINE, since xalloc.h
25991         now uses inline.
25992
25993 2003-10-26  Paul Eggert  <eggert@twinsun.com>
25994
25995         * lib/xalloc.h (xalloc_oversized): New static inline function, for
25996         callers that want to do their own size-overflow checking.  Include
25997         <stdbool.h>, since xalloc_oversized returns bool.
25998         * lib/xalloc.c (array_size_overflow): Remove.  All callers changed
25999         to use xalloc_oversized.
26000
26001         Add two functions x2realloc, x2nrealloc, for programs that grow
26002         arrays dynamically by doubling their sizes.
26003         * lib/xalloc.h (x2realloc, x2nrealloc): New decls.
26004         * lib/xmalloc.c (x2nrealloc_inline, x2nrealloc, x2realloc):
26005         New functions.
26006
26007         Port to C99 semantics for 'inline' of external functions.
26008         Bug reported by Bruno Haible.
26009         * lib/xmalloc.c (xnmalloc_inline): New static inline function,
26010         with the old contents of xnmalloc.
26011         (xnmalloc, xmalloc): Use it.
26012         (xnrealloc_inline): New static inline function,
26013         with the old contents of xnrealloc.
26014         (xnrealloc, xrealloc): Use it.
26015
26016         * lib/alloc.c (alloca): xmalloc cannot return NULL, so don't test for
26017         that.
26018
26019 2003-10-26  Karl Berry  <karl@gnu.org>
26020
26021         * config/srclist.txt (COPYING.DOC): no longer available from
26022         /gd/gnuorg; don't know where the ultimate source is.
26023
26024 2003-10-25  Paul Eggert  <eggert@twinsun.com>
26025
26026         Fix several address-calculation bugs in the hash modules,
26027         plus some minor code cleanup.
26028
26029         * lib/hash.h: Include <stdbool.h>, for bool.
26030         * lib/hash.c: Don't include <stdbool.h>, since hash.h does it now.
26031         * lib/hash.h (Hash_hasher, hash_get_n_buckets, hash_get_n_buckets_used,
26032         hash_get_n_entries, hash_get_max_bucket_length,
26033         hash_get_entries, hash_do_for_each, hash_string, hash_initialize,
26034         hash_rehash): Use size_t rather than unsigned.
26035         * lib/hash.c (struct hash_table, hash_get_n_buckets,
26036         hash_get_n_buckets_used, hash_get_n_entries,
26037         hash_get_max_bucket_length, hash_table_ok, hash_print_statistics,
26038         hash_get_entries, hash_do_for_each, hash_string, is_prime,
26039         next_prime, hash_initialize, hash_rehash, hash_delete, hash_print):
26040         Likewise.
26041         (SIZE_MAX): Define if not defined.
26042         (hash_get_max_bucket_length, hash_table_ok, hash_lookup,
26043         hash_get_first, hash_get_next, hash_get_entries, hash_do_for_each,
26044         hash_print):
26045         Use const * when possible.
26046         (hash_string): Use (unsigned char) *P rather than *(unsigned char *) P.
26047         (check_tuning): Fix bug: if tuning parameters were very close to
26048         0 or 1, rounding errors could have caused subscript violations.
26049         (hash_initialize, allocate_entry, hash_print): Remove unnecessary cast.
26050         (hash_initialize): Add 'fail:' label
26051         to free table and return NULL, and use it to simplify code.
26052         Use calloc rather than clearing the storage ourself.
26053         (hash_initialize, hash_rehash): Check for arithmetic overflow in
26054         buffer size calculations.
26055         * lib/hash-pjw.h (hash_pjw): Use size_t, not unsigned.
26056         Include <stddef.h>, for size_t.
26057         * lib/hash-pjw.c (hash_pjw): Likewise.
26058         Switch to method described by Bruno Haible.
26059         Include <limits.h>, for CHAR_BIT.
26060         (SIZE_BITS): New macro.
26061
26062 2003-10-23  Paul Eggert  <eggert@twinsun.com>
26063
26064         * m4/getline.m4 (AM_FUNC_GETLINE):
26065         Don't include getndelim2.o twice into LIBOBJS; this breaks on some
26066         hosts.  Problem reported by Derek Robert Price in
26067         <http://mail.gnu.org/archive/html/bug-gnulib/2003-10/msg00092.html>.
26068         This patch can be withdrawn after Autoconf 2.58 is required for gnulib.
26069         * m4/getndelim2.m4 (gl_GETNDELIM2): Likewise.
26070
26071 2003-10-21  Paul Eggert  <eggert@twinsun.com>
26072
26073         * lib/getndelim2.c (getndelim2): When size calculation overflows,
26074         ceiling the allocation at NMAX bytes rather than silently
26075         discarding input bytes before NMAX is reached.  This makes
26076         a difference only if NMAX exceeds SIZE_MAX / 2.
26077
26078         * lib/obstack.c: Merge from glibc.
26079         [defined _LIBC]: Include <obstack.h>, not "obstack.h".
26080         Add libc_hidden_def (_obstack_newchunk).
26081         (_obstack_free) [! defined _LIBC]: Remove.
26082         [defined _LIBC]: Make a strong alias from obstack_free, rather than
26083         a clone of the function body.
26084         (fputs) [defined _LIBC && defined USE_IN_LIBIO]: Remove.
26085         [defined _LIBC && !defined USE_IN_LIBIO]: Include <libio/iolibio.h>.
26086
26087         * lib/obstack.h: Indenting cleanup, to make it easier to merge with
26088         glibc.
26089         (obstack_grow, obstack_grow0): Remove unnecessary parentheses around
26090         arg to memcpy.
26091
26092         * lib/obstack.h (obstack_1grow_fast): Properly parenthesize arg.
26093         (obstack_ptr_grow_fast, obstack_int_grow_fast):
26094         Don't use lvalue casts, as GCC plans to remove support for them
26095         in GCC 3.5.  Reported by Joseph S. Myers.  This bug
26096         was also present in the non-GCC version, indicating that this
26097         code had always been buggy and had never been widely used.
26098         (obstack_1grow, obstack_ptr_grow, obstack_int_grow, obstack_blank):
26099         Use the fast variant of each macro, rather than copying the
26100         definiens of the fast variant; that way, we'll be more likely to
26101         catch future bugs in the fast variants.
26102
26103 2003-10-20  Bruno Haible  <bruno@clisp.org>
26104
26105         * modules/wait-process: New file.
26106         * MODULES.html.sh (func_all_modules): Add wait-process.
26107
26108 2003-10-20  Bruno Haible  <bruno@clisp.org>
26109
26110         * m4/wait-process.m4: New file.
26111
26112 2003-10-20  Bruno Haible  <bruno@clisp.org>
26113
26114         * lib/wait-process.h: New file, from GNU gettext.
26115         * lib/wait-process.c: New file, from GNU gettext.
26116
26117 2003-10-19  Jim Meyering  <jim@meyering.net>
26118
26119         * lib/vasnprintf.c (vasnprintf): Work around losing snprintf on
26120         HPUX 10.20.
26121
26122 2003-10-18  Karl Berry  <karl@gnu.org>
26123
26124         * config/config.guess: update from config.
26125
26126 2003-10-16  Paul Eggert  <eggert@twinsun.com>
26127
26128         * lib/getgroups.c: Include <errno.h>, <stdlib.h>.
26129         (getgroups): First arg is int, not size_t.
26130         Don't let 'free' mangle errno.
26131
26132 2003-10-16  Paul Eggert  <eggert@twinsun.com>
26133
26134         * README: Mention that gnulib assumes that (foo *) NULL + 0 == NULL.
26135
26136 2003-10-16  Karl Berry  <karl@gnu.org>
26137
26138         * config/config.{guess,sub}: update from config.
26139
26140 2003-10-16  Jim Meyering  <jim@meyering.net>
26141
26142         * lib/xmalloc.c: Include <string.h>, for declarations of memset and
26143         memcpy.
26144
26145 2003-10-15  Paul Eggert  <eggert@twinsun.com>
26146
26147         * lib/exclude.c: Do not include <inttypes.h> or <stdint.h>.
26148         (SIZE_MAX): Remove.
26149         (new_exclude, add_exclude_file): Initial size no longer needs to
26150         be a power of 2.
26151         (add_exclude, add_exclude_file): Use xnrealloc instead of rolling
26152         our own address arithmetic overflow checking.
26153
26154         * lib/fnmatch.c (SIZE_MAX): Define if standard headers don't.
26155         (fnmatch): Do not alloca more than 2000 wide characters;
26156         instead, use malloc for large buffers.
26157         Check for address arithmetic overflow, and return -1
26158         with errno set to ENOMEM in that case.
26159         * lib/fnmatch_loop.c (ALLOCA_LIMIT): New macro.
26160         (NEW_PATTERN): Do not alloca more than 8000 bytes;
26161         instead, return -1.  Check for address arithmetic overflow.
26162
26163 2003-10-14  Paul Eggert  <eggert@twinsun.com>
26164
26165         Handle invalid suffixes and overflow independently, so that
26166         callers can treat them independently as needed.  Fix some bugs in
26167         suffix handling, e.g., "100k@" was not diagnosed as an invalid
26168         suffix for a human-readable blocksize.  The major caller-visible
26169         change is the addition of a new
26170         LONGINT_INVALID_SUFFIX_CHAR_WITH_OVERFLOW enum value, indicating
26171         that both overflow and suffix chars were found.
26172
26173         * lib/human.c (humblock): Don't check separately for invalid suffix
26174         char; that is xstrtoumax's job (now that its bug is fixed).
26175         * lib/xstrtoimax.c (STRTOL_T_MINIMUM, STRTOL_T_MAXIMUM) [defined
26176         INTMAX_MAX]: New macros.
26177         * lib/xstrtol.c (STRTOL_T_MINIMUM, STRTOL_T_MAXIMUM, TYPE_MINIMUM,
26178         TYPE_MAXIMUM): New macros.
26179         (bkm_scale, bkm_scale_by_power): Return strtol_error, not int.
26180         (bkm_scale, bkm_scale_by_power, __xstrtol): Return maximal values
26181         if overflow occurs, as it's what __strtol does and it's more useful
26182         in practice.
26183         (__xstrtol): If __strtol reports some error other than ERANGE,
26184         reflect it to the caller as LONGINT_INVALID.  If it reports
26185         ERANGE, continue the rest of parsing, and report LONGINT_OVERFLOW
26186         | LONGINT_INVALID_SUFFIX_CHAR if both errors occur.
26187         * lib/xstrtol.h (LONGINT_INVALID_SUFFIX_CHAR_WITH_OVERFLOW): New enum
26188         value.
26189         (_STRTOL_ERROR): Handle it.  Abort when given unknown error codes.
26190         * lib/xstrtoul.c (STRTOL_T_MINIMUM, STRTOL_T_MAXIMUM): New macros.
26191         * lib/xstrtoumax.c (STRTOL_T_MINIMUM, STRTOL_T_MAXIMUM)
26192         [defined UINTMAX_MAX]: New macros.
26193
26194 2003-10-14  Bruno Haible  <bruno@clisp.org>
26195
26196         * modules/fatal-signal: Add m4/sig_atomic_t.m4 to file list.
26197
26198 2003-10-14  Bruno Haible  <bruno@clisp.org>
26199
26200         * m4/sig_atomic_t: New file, from GNU gettext.
26201         * m4/fatal-signal.m4 (gl_FATAL_SIGNAL): Require gt_TYPE_SIG_ATOMIC_T.
26202
26203 2003-10-14  Bruno Haible  <bruno@clisp.org>
26204
26205         * lib/fatal-signal.h: Improved comments. Suggested by Paul Eggert.
26206         * lib/fatal-signal.c: Use sig_atomic_t. Suggested by Paul Eggert.
26207         Also use volatile where needed.
26208
26209 2003-10-12  Paul Eggert  <eggert@twinsun.com>
26210
26211         * modules/xalloc: Do not depend on 'exit'.  Depend on 'stdbool'.
26212         Change maintainer from Bruno Haible to 'all'.
26213
26214 2003-10-12  Paul Eggert  <eggert@twinsun.com>
26215
26216         * m4/xalloc.m4 (gl_PREREQ_XMALLOC): Require AC_C_INLINE.
26217
26218 2003-10-12  Paul Eggert  <eggert@twinsun.com>
26219
26220         * lib/xalloc.h (xnmalloc, xzalloc, xnrealloc, xclone): New decls.
26221         (XMALLOC, XCALLOC, XREALLOC, XFREE, CCLONE, CLONE): Deprecate,
26222         and define in terms of the other primitives.
26223         * lib/xmalloc.c: Include stdbool.h; do not include exit.h.
26224         (SIZE_MAX): Define if not already defined.
26225         (array_size_overflow): New function.
26226         (xalloc_die): Abort instead of exiting if 'error' returns.
26227         (xnmalloc, xnrealloc, xzalloc, xclone): New functions.
26228         (xmalloc, xrealloc): Use them.
26229         (xcalloc): Check for address arithmetic overflow.
26230         * lib/xstrdup.c (xstrdup): Use xclone, since memcpy should be
26231         a bit faster than strcpy.
26232
26233 2003-10-10  Simon Josefsson  <jas@extundo.com>
26234
26235         * modules/argp (Depends-on): Add restrict and strcase.
26236
26237 2003-10-10  Simon Josefsson  <jas@extundo.com>
26238
26239         * m4/argp.m4: Add AC_C_INLINE.
26240
26241 2003-10-08  Paul Eggert  <eggert@twinsun.com>
26242
26243         Merge getpass from libc, plus a few fixes.
26244
26245         * lib/getpass.c (HAVE_STDIO_EXT) [_LIBC]: Define to 1.
26246         Include <stdbool.h>.
26247         Include <stdio_ext.h> if HAVE_STDIO_H, otherwise define
26248         __fsetlocking to empty.
26249         [_LIBC]: Do not include "getline.h" or "unlocked-io.h", but
26250         do include <bits/libc-lock.h>.
26251         Do not include <fcntl.h>; not needed.
26252         [_LIBC]: Include <wchar.h>.
26253         (NOTCANCEL_MODE): New macro.
26254         (flockfile, funlockfile) [_LIBC]: New macros.
26255         (__libc_cleanup_push, __libc_cleanup_pop, __getline, __tcgetattr)
26256         [!_LIBC]: New macros.
26257         (call_fclose): New function.
26258         (getpass): Use it.  Save tty stream separately; this simplifies the
26259         code and makes it more reliable if stdin happens to equal stdout.
26260         Invoke __fsetlocking on tty.
26261         Handle thread cancellation if needed.
26262         Namespace cleanup (use __tcgetattr, __getline).
26263         Use bool for Booleans.
26264         [USE_IN_LIBIO]: Handle wide streams.
26265         [!_LIBC]: Unconditionally do the fseek, since we don't know what
26266         stream might go where.
26267
26268         * lib/unlocked-io.h: Include <stdio.h>, so that the caller
26269         doesn't have to include <stdio.h> before us.
26270         (clearerr_unlocked, feof_unlocked, ferror_unlocked,
26271         fflush_unlocked, fgets_unlocked, fputc_unlocked, fputs_unlocked,
26272         fread_unlocked, fwrite_unlocked, getc_unlocked, getchar_unlocked,
26273         putc_unlocked, putchar_unlocked): Define to the unlocked counterpart
26274         if not declared, so that we can use getpass.c code from libc without
26275         rewriting it.
26276         (flockfile, ftrylockfile, funlockfile): New macros.
26277
26278 2003-10-08  Paul Eggert  <eggert@twinsun.com>
26279
26280         * modules/getpass: Depend on stdbool.
26281
26282 2003-10-08  Paul Eggert  <eggert@twinsun.com>
26283
26284         * m4/getpass.m4 (gl_PREREQ_GETPASS): Check for stdio_ext.h.
26285
26286 2003-10-07  Karl Berry  <karl@gnu.org>
26287
26288         * config/config.{guess,sub}: update from config.
26289
26290 2003-10-06  Jim Meyering  <jim@meyering.net>
26291             Bruno Haible  <bruno@clisp.org>
26292
26293         This lets translators provide better translations for the
26294         "Written by ..." part of --version output.
26295         * lib/version-etc.h: Include stdarg.h.
26296         (version_etc_copyright): Declare as readonly.
26297         (version_etc): Make this function variadic with a NULL-terminated list
26298         of author name strings.
26299         (version_etc_va): New declaration.
26300         * lib/version-etc.c: Include stdarg.h, stdlib.h.
26301         (version_etc_copyright): Declare as readonly.
26302         (version_etc_va): New function. Provide a different translatable string
26303         for each possible number of authors < 10. Abbreviate when there are 10
26304         authors or more.
26305         (version_etc): Make this function variadic. Call version_etc_va.
26306         Suggestion from Gary V. Vaughan.
26307
26308         * lib/long-options.h (parse_long_options): Change prototype: the
26309         authors string is moved to the end and becomes variadic.
26310         * lib/long-options.c: Include stdarg.h.
26311         (parse_long_options): Make this function variadic, too.
26312         Call version_etc_va, not version_etc.
26313
26314 2003-10-06  Bruno Haible  <bruno@clisp.org>
26315
26316         * modules/version-etc-2: Remove file.
26317         * MODULES.html.sh (func_all_modules): Remove version-etc-2.
26318
26319 2003-10-06  Bruno Haible  <bruno@clisp.org>
26320
26321         * modules/fatal-signal: New file.
26322         * MODULES.html.sh (func_all_modules): Add fatal-signal.
26323
26324 2003-10-06  Bruno Haible  <bruno@clisp.org>
26325
26326         * m4/fatal-signal.m4: New file.
26327         * m4/signalblocking.m4: New file, from GNU gettext.
26328
26329 2003-10-06  Bruno Haible  <bruno@clisp.org>
26330
26331         * lib/version-etc-2.h: Remove file.
26332         * lib/version-etc-2.c: Remove file.
26333
26334 2003-10-06  Bruno Haible  <bruno@clisp.org>
26335
26336         * lib/fatal-signal.h: New file, from GNU gettext.
26337         * lib/fatal-signal.c: New file, from GNU gettext.
26338
26339 2003-10-05  Paul Eggert  <eggert@twinsun.com>
26340
26341         * README: Rework advice for preventing empty .o files.
26342         Don't recommend ELIDE constructs.  Recommend <stddef.h>,
26343         not <sys/types.h>.
26344
26345 2003-10-04  Karl Berry  <karl@gnu.org>
26346
26347         * lib/argp*: update from libc.
26348
26349 2003-10-04  Karl Berry  <karl@gnu.org>
26350
26351         * config/config.{guess,sub}: update from config.
26352
26353 2003-10-02  Bruno Haible  <bruno@clisp.org>
26354
26355         * modules/lchown (Include): Add lchown.h.
26356         * modules/time_r (Include): Use "..." syntax.
26357         * modules/xgetdomainname (Include): Add xgetdomainname.h.
26358
26359 2003-10-01  Simon Josefsson  <jas@extundo.com>
26360
26361         * MODULES.html.sh (func_all_modules): Move gethostname from section
26362         'based on' to section 'lacking' POSIX:2001.
26363
26364 2003-10-01  Larry Jones  <lawrence.jones@eds.com>
26365
26366         * lib/getpass.c (getpass): Use a no-op fseek when switching from input
26367         to output mode on the same stream.
26368
26369 2003-09-29  Paul Eggert  <eggert@twinsun.com>
26370
26371         * lib/strftime.c (tm_diff) [! HAVE_TM_GMTOFF]:
26372         Fix arg typo in previous patch.
26373
26374 2003-09-28  Jim Meyering  <jim@meyering.net>
26375
26376         * lib/error.c: Correct cpp indentation.
26377
26378 2003-09-27  Paul Eggert  <eggert@twinsun.com>
26379
26380         * modules/free: New file.
26381
26382 2003-09-27  Paul Eggert  <eggert@twinsun.com>
26383
26384         * m4/free.m4: New file.
26385
26386 2003-09-27  Paul Eggert  <eggert@twinsun.com>
26387
26388         * lib/minmax.h (MIN, MAX)
26389         [__STDC__ && defined __GNUC__ && __GNUC__ >= 2]:
26390         Omit the special code that used __typeof__, since we worry that
26391         it could be more trouble than it's worth.  See:
26392         http://mail.gnu.org/archive/html/bug-gnulib/2003-01/msg00090.html
26393         http://mail.gnu.org/archive/html/bug-gnulib/2003-01/msg00095.html
26394
26395         * lib/free.c: New file.
26396
26397 2003-09-27  Oskar Liljeblad  <oskar@osk.mine.nu>
26398
26399         Trivial fixes to Makefile.am parts of module listings.
26400         * modules/strstr: Append strstr.h to lib_SOURCES.
26401         * modules/strcase: Likewise, for strcase.h.
26402
26403 2003-09-27  Karl Berry  <karl@gnu.org>
26404
26405         * config/mkinstalldirs: update from automake.
26406
26407 2003-09-26  Paul Eggert  <eggert@twinsun.com>
26408
26409         * lib/error.c (SIZE_MAX) [!defined SIZE_MAX]: Define.
26410         (error_tail): Do not loop, reallocating temporary buffer, since
26411         the output cannot contain more wide characters than the input
26412         contains bytes, the size must be big enough already.  This avoids
26413         one potential size overflow calculation.  Check for size overflow
26414         when calculating temporary buffer size.  Free temporary buffer
26415         when done, if it was allocated with malloc; this plugs a memory
26416         leak.  Remove casts from void * to pointers, that are no longer
26417         needed now that we're assuming C89 or better.
26418
26419         Merge error changes from glibc.
26420
26421         * lib/error.c, error.h: Update copyright notice header to match glibc.
26422         * lib/error.c [defined _LIBC]: Include <errno.h>, <bits/libc-lock.h>.
26423         (error, error_at_line) [defined _LIBC && defined __libc_ptf_call]:
26424         Disable cancellation while printing error.
26425         * lib/error.h: Prepend __ to parameter names.
26426
26427 2003-09-26  Jim Meyering  <jim@meyering.net>
26428
26429         * lib/error.c (error_tail): Move some declarations
26430         into inner scope where the local variables are used.
26431
26432 2003-09-26  Bruno Haible  <bruno@clisp.org>
26433
26434         * m4/stpncpy.m4 (gl_FUNC_STPNCPY): Add comments about the AIX
26435         stpncpy().
26436         Don't define stpncpy through config.h; it's now done through stpncpy.h.
26437
26438 2003-09-26  Bruno Haible  <bruno@clisp.org>
26439
26440         * lib/stpncpy.h (gnu_stpncpy): New declaration.
26441         (stpncpy): Define as alias for gnu_stpncpy.
26442         * lib/stpncpy.c [!_LIBC]: Define gnu_stpncpy, not stpncpy.
26443
26444 2003-09-25  Simon Josefsson  <jas@extundo.com>
26445
26446         * lib/xgetdomainname.h: New file.
26447         * lib/xgetdomainname.c: New file.
26448
26449 2003-09-25  Simon Josefsson  <jas@extundo.com>
26450             Bruno Haible  <bruno@clisp.org>
26451
26452         * modules/getdomainname: New file.
26453         * modules/xgetdomainname: New file.
26454         * MODULES.html.sh (func_all_modules): Add getdomainname,
26455         xgetdomainname.
26456
26457 2003-09-25  Simon Josefsson  <jas@extundo.com>
26458             Bruno Haible  <bruno@clisp.org>
26459
26460         * m4/getdomainname.m4: New file.
26461
26462 2003-09-25  Simon Josefsson  <jas@extundo.com>
26463             Bruno Haible  <bruno@clisp.org>
26464
26465         * lib/getdomainname.h: New file.
26466         * lib/getdomainname.c: New file.
26467
26468 2003-09-25  Karl Berry  <karl@gnu.org>
26469
26470         * lib/argp-fmtstream.c, argp-help.c: update from libc.
26471
26472 2003-09-25  Karl Berry  <karl@gnu.org>
26473
26474         * config/install-sh: update from automake.
26475
26476 2003-09-25  Bruno Haible  <bruno@clisp.org>
26477
26478         * modules/version-etc-2: New file, from modules/version-etc with
26479         modifications.
26480         * MODULES.html.sh (func_all_modules): Add version-etc-2.
26481
26482 2003-09-25  Bruno Haible  <bruno@clisp.org>
26483
26484         * lib/version-etc-2.h: New file, from version-etc.h with modifications.
26485         * lib/version-etc-2.c: New file, from version-etc.c with modifications.
26486
26487 2003-09-24  Simon Josefsson  <jas@extundo.com>
26488
26489         * modules/xgethostname: Add xgethostname.h.
26490
26491 2003-09-24  Paul Eggert  <eggert@twinsun.com>
26492
26493         * lib/linebuffer.c (freebuffer): Don't free the argument, just
26494         the buffer associated with the argument.  Bug reported by
26495         Simon Josefsson.
26496
26497 2003-09-24  Paul Eggert  <eggert@twinsun.com>
26498
26499         * README: Document assumptions that 'int' is at least 32 bits
26500         wide, that integer arithmetic is 2's complement without overflow,
26501         that there are no holes in integer values, that adding sizes of
26502         two nonoverlapping objects can't overflow, and that all-bits-zero
26503         yields scalar zero.  Fix spelling and capitalization typos.
26504
26505 2003-09-19  Karl Berry  <karl@gnu.org>
26506
26507         * lib/argp.h: update from libc.
26508
26509 2003-09-17  Paul Eggert  <eggert@twinsun.com>
26510
26511         * m4/extensions.m4 (gl_USE_SYSTEM_EXTENSIONS): Call AC_BEFORE first,
26512         to avoid spurious warnings like "AC_RUN_IFELSE was called before
26513         gl_USE_SYSTEM_EXTENSIONS" from autoreconf.
26514
26515 2003-09-17  Paul Eggert  <eggert@twinsun.com>
26516
26517         * gnulib-tool: Use "test -h", not "test -L", for portability
26518         to Solaris 8 /bin/sh.  (This bug is fixed in Solaris 9.)
26519         (tags_regexp): Remove, since \| doesn't conform to POSIX.
26520         (sed_extract_prog): Issue s commands one-by-one, rather than
26521         using \| in one s command.
26522
26523 2003-09-16  Paul Eggert  <eggert@twinsun.com>
26524
26525         * lib/linebuffer.c (readlinebuffer): Return NULL immediately upon
26526         input error, instead of returning NULL the next time we are called
26527         (and therefore losing track of errno).
26528
26529 2003-09-16  Bruno Haible  <bruno@clisp.org>
26530
26531         * gnulib-tool (func_create_testdir): Warn about duplicated
26532         dependencies.
26533
26534 2003-09-15  Paul Eggert  <eggert@twinsun.com>
26535
26536         * modules/argmatch, modules/fatal, modules/obstack,
26537         modules/xalloc, modules/xgethostname: Sort dependencies by
26538         importance, not alphabetically.
26539
26540 2003-09-15  Paul Eggert  <eggert@twinsun.com>
26541
26542         * lib/getndelim2.c (getndelim2): Don't trash errno when a read
26543         fails, so that the caller gets the proper errno.
26544
26545         * lib/readutmp.c (read_utmp): Likewise.
26546         Check for fstat error.  Close stream and free storage
26547         when failing.
26548
26549 2003-09-14  Karl Berry  <karl@gnu.org>
26550
26551         * config/srclist.txt (strdup.c): disable for c89 changes.
26552
26553 2003-09-14  Jim Meyering  <jim@meyering.net>
26554
26555         * lib/getloadavg.c: Correct cpp indentation.
26556         * lib/strdup.c: Likewise.
26557         * lib/vasnprintf.c: Likewise.
26558
26559 2003-09-14  Bruno Haible  <bruno@clisp.org>
26560
26561         * modules/fwriteerror: New file.
26562         * MODULES.html.sh (func_all_modules): Add fwriteerror.
26563
26564 2003-09-14  Bruno Haible  <bruno@clisp.org>
26565
26566         * lib/fwriteerror.h: New file.
26567         * lib/fwriteerror.c: New file.
26568
26569 2003-09-12  Paul Eggert  <eggert@twinsun.com>
26570
26571         * modules/argmatch, modules/exitfail, modules/fatal, modules/obstack,
26572         modules/xgethostname, modules/xalloc: Depend on exit.
26573
26574 2003-09-12  Paul Eggert  <eggert@twinsun.com>
26575
26576         * m4/error.m4: Require AC_FUNC_STRERROR_R rather than invoking it.
26577
26578         * m4/extensions.m4 (gl_USE_SYSTEM_EXTENSIONS): Require AC_AIX
26579         and AC_MINIX, too, so that their extensions are available.
26580
26581         * m4/prereq.m4 (jm_PREREQ_ADDEXT): Remove.  All uses removed.
26582         This macro has been superseded by gl_BACKUPFILE.
26583
26584         More patches to assume C89 or better.
26585
26586         * m4/error.m4 (gl_ERROR): Don't check for vprintf.
26587
26588         * m4/check-decl.m4 (jm_CHECK_DECLS): Include <string.h>, <stdlib.h>
26589         unconditionally.
26590         * m4/closeout.m4 (gl_CLOSEOUT): Don't check for stdlib.h.
26591         * m4/gettimeofday.m4 (AC_FUNC_GETTIMEOFDAY_CLOBBER):
26592         Include <string.h>, <stdlib.h> unconditionally.
26593         * m4/lstat.m4 (gl_PREREQ_LSTAT): Don't check for stdlib.h, free.
26594         * m4/readdir.m4 (GL_FUNC_READDIR): Don't check for string.h.
26595         * m4/readutmp.m4 (gl_PREREQ_READUTMP): Don't check for standard C
26596         headers or for string.h.
26597         * m4/strtoumax.m4 (gl_PREREQ_STRTOUMAX): Don't check for stdlib.h
26598         or strtoul.
26599
26600         * m4/mkstemp.m4 (jm_PREREQ_TEMPNAME): Do not require standard C
26601         headers.
26602         * m4/strdup.m4 (gl_PREREQ_STRDUP): Likewise.
26603         * m4/userspec.m4 (gl_USERSPEC): Likewise.
26604         * m4/xalloc.m4 (gl_PREREQ_XMALLOC): Likewise.
26605         * m4/xstrtod.m4 (gl_XSTRTOD): Likewise.
26606         * m4/xstrtol.m4 (gl_PREREQ_XSTRTOL): Likewise.
26607         * m4/strftime.m4 (_jm_STRFTIME_PREREQS): Don't check for limits.h,
26608         memcpy, memset.
26609         (jm_FUNC_GNU_STRFTIME): Don't require standard C headers.
26610         * m4/strtod.m4 (gl_FUNC_STRTOD): Do not check for float.h.
26611         * m4/strtoimax.m4 (gl_PREREQ_STRTOIMAX): Do not check for stdlib.h,
26612         strtol.
26613         * m4/strtol.m4 (gl_FUNC_STRTOL): Do not check for limits.h.
26614         * m4/userspec.m4 (gl_USERSPEC): Do not check for string.h.
26615         * m4/xstrtol.m4 (gl_PREREQ_XSTRTOL): Do not check for string.h, strtol,
26616         strtoul.
26617
26618 2003-09-12  Paul Eggert  <eggert@twinsun.com>
26619
26620         * lib/argmatch.c, fatal.c, xgethostname.c, xmalloc.c: Include exit.h.
26621         * lib/obstack.c [!defined _LIBC]: Likewise.
26622         * lib/argmatch.c (EXIT_FAILURE): Remove; now done by exit.h
26623         * lib/exitfail.c, fatal.c, xgethostname.c, xmalloc.c: Likewise.
26624         * lib/exitfail.c: Don't include stdlib.h; no longer needed.
26625
26626         More changes to assume C89 or better.
26627
26628         * lib/error.c (error_tail): Assume vprintf.
26629
26630         * lib/argmatch.c (getenv): Remove decl.
26631         * lib/progreloc.c (get_full_program_name): Define via prototype.
26632         * lib/setenv.c (clearenv): Likewise.
26633         * lib/stpncpy.c: Do not include <string.h> or <sys/types.h>; not
26634         needed.
26635         * lib/strdup.c: Include <stdlib.h>, <string.h> unconditionally.
26636         (malloc, memcpy): Remove decls.
26637         * lib/strftime.c (HAVE_LIMITS_H, STDC_HEADERS) [defined _LIBC]: Remove.
26638         (HAVE_MEMCPY) [defined emacs && !defined HAVE_BCOPY]: Remove.
26639         Include <limits.h>, <stddef.h>, <stdlib.h>, <string.h> unconditionally.
26640         (memcpy): Remove macro.
26641         (MEMCPY) [!defined COMPILE_WIDE]: Define to memcpy unconditionally.
26642         (__P): Remove.  All uses removed.
26643         (PTR): Remove.  All uses changed to void *.
26644         (CHAR_BIT, NULL): Remove.
26645         (spaces, zeros, memset_space, memset_zero)
26646         [!defined memset && !defined HAVE_MEMSET && !defined _LIBC]:
26647         Remove.
26648         (LOCALE_PARAM, LOCALE_PARAM_DECL): Remove.
26649         (memcpy_lowcase, memcpy_uppcase, tm_diff, iso_week_days):
26650         Define with prototype.
26651         Remove now-unnecessary prototype decl.
26652         (extra_args_spec): Assume ANSI C.  All uses changed.
26653         (extra_args_spec_iso): Remove.
26654         (my_strftime, emacs_strftimeu): Define via prototype.
26655         * lib/strtod.c: Include <float.h>, <stdlib.h>, <string.h>
26656         unconditionally.
26657         (DBL_MAX, DBL_MIN, HUGE_VAL, NULL): Remove decls.
26658         * lib/strtoimax.c: Include <stdlib.h> unconditionally.
26659         (strtoul, strtol): Remove decls.
26660         * lib/strtol.c (STDC_HEADERS, HAVE_LIMITS_H, NULL, ULONG_MAX,
26661         LONG_MAX): Remove.
26662         Include <limits.h>, <stddef.h>, <stdlib.h>, <string.h> unconditionally.
26663         (LOCALE_PARAM_DECL): Remove.  All uses changed to LOCALE_PARAM_PROTO.
26664         (LOCALE_PARAM_PROTO): New macro.
26665         (INTERNAL, INTERNAL1, WEAKNAME): Assume ANSI C, not K&R.
26666         (INTERNAL (strtol), strtol): Define with a prototype.
26667         (PARAMS): Remove.  All uses removed.
26668         * lib/tempname.c: Include <string.h> unconditionally.
26669         * lib/userspec.c: Include <stdlib.h>, <string.h> unconditionally.
26670         * lib/xgethostname.c (main): Define with a prototype.
26671         * lib/xmalloc.c: Include "xalloc.h" first, to check interface.
26672         Include <stdlib.h> unconditionally.
26673         (calloc, malloc, realloc, free): Remove decls.
26674         * lib/xstrtod.c: Include "xstrtod.h" first, to check interface.
26675         Include <stdlib.h> unconditionally.  Sort include file names.
26676         (strtod): Remove.
26677         (xstrtod): Define with a prototype.
26678         * lib/xstrtol.c: Include <stdlib.h>, <string.h> unconditionally.
26679         (strtol, strtoul): Remove decls.
26680
26681 2003-09-11  Paul Eggert  <eggert@twinsun.com>
26682
26683         More patches to assume C89 or better.
26684         * m4/strndup.m4 (gl_PREREQ_STRNDUP): Remove STDC_HEADERS check.
26685         * m4/strnlen.m4 (gl_PREREQ_STRNLEN): Don't check for memory.h,
26686         string.h, memchr, STDC_HEADERS.
26687
26688 2003-09-11  Paul Eggert  <eggert@twinsun.com>
26689
26690         * lib/strndup.c: Don't include <stdio.h>, <sys/types.h>.
26691         Include <stdlib.h>, <string.h> unconditionally.
26692         Remove now-unnecessary cast to char *.
26693         * lib/strnlen.c: Include <string.h> unconditionally.
26694         * lib/yesno.c (yesno): Define with a prototype.
26695
26696 2003-09-11  Bruno Haible  <bruno@clisp.org>
26697
26698         * config/srclist.txt (setenv.c, unsetenv.c): Disable for the moment.
26699
26700 2003-09-10  Jim Meyering  <jim@meyering.net>
26701
26702         * lib/error.c: Correct indentation of cpp directives.
26703
26704 2003-09-10  Bruno Haible  <bruno@clisp.org>
26705
26706         * m4/strcspn.m4 (gl_PREREQ_STRCSPN): Remove <string.h> check.
26707         * m4/strpbrk.m4 (gl_PREREQ_STRPBRK): Remove <string.h> check.
26708         * m4/strstr.m4 (gl_PREREQ_STRSTR): Remove <string.h> check.
26709         * m4/unicodeio.m4 (gl_UNICODEIO): Remove <string.h> check.
26710         * m4/setenv.m4 (gl_PREREQ_SETENV, gl_PREREQ_UNSETENV): Remove
26711         <stdlib.h> and <string.h> checks.
26712         * m4/xreadlink.m4 (gl_XREADLINK): Remove <stdlib.h> check.
26713         * m4/yesno.m4 (gl_YESNO): Remove <stdlib.h> check.
26714
26715 2003-09-10  Bruno Haible  <bruno@clisp.org>
26716
26717         * lib/strcspn.c: Include <string.h> unconditionally.
26718         * lib/strpbrk.c: Include <string.h> unconditionally.
26719         * lib/strstr.c: Include <string.h> unconditionally.
26720         * lib/unicodeio.c: Include <string.h> unconditionally.
26721         * lib/setenv.c: Include <stdlib.h> and <string.h> unconditionally.
26722         * lib/unsetenv.c: Likewise.
26723         * lib/xreadlink.c: Include <stdlib.h> unconditionally.
26724         * lib/yesno.c: Include <stdlib.h> unconditionally.
26725         (rpmatch): Add prototype.
26726
26727 2003-09-09  Paul Eggert  <eggert@twinsun.com>
26728
26729         More patches to assume C89 or better.
26730         * m4/getcwd.m4 (AC_FUNC_GETCWD_NULL): Don't check for stdlib.h.
26731         * m4/getopt.m4 (gl_GETOPT): Don't check for string.h.
26732         * m4/getugroups.m4 (gl_GETUGROUPS): Do not check for standard C headers
26733         or for string.h.
26734         * m4/getusershell.m4 (gl_PREREQ_GETUSERSHELL): Do not check for
26735         stdlib.h.
26736         * m4/group-member.m4 (gl_PREREQ_GROUP_MEMBER): Do not require standard
26737         C headers.
26738         * m4/hard-locale.m4 (gl_HARD_LOCALE): Do not check for stdlib.h,
26739         string.h.
26740         * m4/hash.m4 (gl_HASH): Do not check for stdlib.h, malloc, free.
26741         * m4/human.m4 (gl_HUMAN): Do not check for stdlib.h, string.h, getenv.
26742         * m4/idcache.m4 (gl_IDCACHE): Do not check for standard C headers,
26743         or for string.h.
26744         * m4/long-options.m4 (gl_LONG_OPTIONS): Do not check for stdlib.h.
26745         * m4/makepath.m4 (gl_MAKEPATH): Do not check for string.h or standard
26746         C headers.
26747         * m4/md5.m4 (gl_MD5): Don't check for limits.h, standard C headers,
26748         memcpy.
26749         * m4/sha.m4 (gl_SHA): Don't check for standard Cheaders, memcpy.
26750         * m4/memchr.m4 (jm_PREREQ_MEMCHR): Don't check for limits.h, stdlib.h.
26751         * m4/memcmp.m4 (gl_PREREQ_MEMCMP): Don't check for string.h.
26752         * m4/memcoll.m4 (gl_MEMCOLL): Likewise.
26753         * m4/memrchr.c (gl_PREREQ_MEMRCHR): Don't check for limits.h.
26754         * m4/mkdir-slash.m4 (gl_PREREQ_MKDIR): Don't check for stdlib.h,
26755         string.h, free.
26756         * m4/mktime.m4 (gl_PREREQ_MKTIME): Don't check for standard C headers.
26757         * m4/modechange.m4 (gl_MODECHANGE): Don't check for standard C headers.
26758         * m4/mountlist.m4 (gl_PREREQ_MOUNTLIST_EXTRA): Don't check for standard
26759         C headers, or for string.h.
26760         * m4/obstack.m4 (gl_OBSTACK): Don't check for stddefe.h, string.h.
26761         (gl_PREREQ_OBSTACK): Don't check for stdlib.h.
26762         * m4/path-concat.m4 (gl_PATH_CONCAT): Don't check for standard C
26763         headers, memory.h, stdlib.h, string.h, strings.h.
26764         * m4/posixtm.m4 (gl_POSIXTM): Don't check for stdlib.h, string.h.
26765         * m4/posixver.m4 (gl_POSIXVER): Don't check for getenv.
26766         * m4/putenv.m4 (gl_PREREQ_PUTENV): Don't check for string.h, memcpy,
26767         strchr.
26768         * m4/readtokens.m4 (gl_READTOKENS): Don't check for standard C
26769         headers, memory.h, string.h.
26770         * m4/regex.m4 (jm_PREREQ_REGEX): Do not check for limits.h, string.h.
26771         * m4/rename.m4 (gl_PREREQ_RENAME): Do not check for stdlib.h, string.h,
26772         free.
26773         * m4/rpmatch.m4 (gl_PREREQ_RPMATCH): Don't check for standard C
26774         headers.
26775         * m4/same.m4 (gl_SAME): Don't check for stdlib.h, string.h, free.
26776         * m4/save-cwd.m4 (gl_SAVE_CWD): Don't check for standard C headers.
26777         * m4/savedir.m4 (gl_SAVEDIR): Don't check for standard C headers.
26778         * m4/strchrnul.m4 (gl_PREREQ_STRCHRNUL): Don't check for string.h.
26779         * m4/xgetcwd.m4 (gl_XGETCWD): Don't check for stdlib.h.
26780
26781 2003-09-09  Paul Eggert  <eggert@twinsun.com>
26782
26783         More K&R removal.
26784
26785         * lib/acosl.c (main): Use a prototype.
26786         * lib/asinl.c, cosl.c, expl.c, frexpl.c, ldexpl.c, sinl.c,
26787         tanl.c: Likewise.
26788
26789         * lib/getloadavg.c (getloadavg, main): Define via prototypes.
26790
26791         * lib/getopt.h (struct option.name): Assume C89, and use 'const'.
26792         (getopt, etopt_long, getopt_long_only, _getopt_internal)
26793         [defined __GNU_LIBRARY__]: Assume C89, so we can always declare
26794         with a prototype.
26795         * lib/getopt.c (const): Remove macro.
26796         Include <string.h> unconditionally.
26797         (my_index): Remove; all uses changed to strchr.
26798         (strlen): Remove decl.
26799         (exchange): Remove forward decl; no longer needed.
26800         (exchange, _getopt_initialize, _getopt_internal, getopt, main):
26801         Define with prototype.
26802         * lib/getopt1.c (const): Remove macro.
26803         (getopt_long, getopt_long_only, main): Define with prototype.
26804
26805         * lib/getugroups.c: Include <string.h> unconditionally.
26806
26807         * lib/getusershell.c: Include <stdlib.h> unconditionally.
26808         (getusershell, setusershell, endusershell, readname, main):
26809         Define with prototypes.
26810
26811         * lib/group-member.c: Include group-member.h first.
26812         Include <stdlib.h> unconditionally.
26813
26814         * lib/hard-locale.c: Include hard-locale.h first.
26815         Include <stdlib.h>, <string.h> unconditionally.
26816
26817         * lib/hash.c (free, malloc): Remove decls.
26818         Include <stdlib.h> unconditionally.
26819
26820         * lib/human.c: Include <stdlib.h>, <string.h> unconditionally.
26821         (getenv): Do not declare.
26822
26823         * lib/idcache.c: Include <string.h> unconditionally.
26824
26825         * lib/long-options.c: Include long-options.h first, to test interface.
26826         Include <stdlib.h> unconditionally.
26827
26828         * lib/makepath.c: Include makepath.h first, to test interface.
26829         Include <stdlib.h> and <string.h> unconditionally.
26830
26831         * lib/linebuffer.c: Include <stdlib.h>.
26832         (free): Remove decl.
26833
26834         * lib/malloc.c: Include <stdlib.h>, for malloc; don't bother with
26835         stddef.h. rpl_malloc returns void *, not char *.
26836         * lib/realloc.c (rpl_realloc): Likewise.  Also, define with a
26837         prototype.
26838
26839         * lib/md5.h: Include <limits.h> unconditionally.
26840         (UINT_MAX_32_BITS): Don't worry about non-__STDC__ case.
26841         (__P): Remove; all uses removed.
26842         * lib/md5.c: Include "md5.h" first.
26843         (md5_init_ctx, md5_read_ctx, md5_finish_ctx, md5_stream,
26844         md5_buffer, md5_process_bytes, md5_process_block):
26845         Define with prototypes.
26846         * lib/sha.h (__P): Remove all uses.  (It wasn't defined??)
26847         * lib/sha.c: Include "sha.h" first.
26848         Include <stdlib.h>, <string.h> unconditionally.
26849
26850         * lib/memchr.c (__ptr_t): Remove; all uses changed to void *.
26851         * lib/memcmp.c (__ptr_t): Likewise.
26852         * lib/memrchr.c (__ptr_t): Likewise.
26853         * lib/memchr.c, memcmp.c, memcoll.c, memrchr.c:
26854         Include <string.h> unconditionally.
26855         * lib/memchr.c, memrchr.c: Include <limits.h> unconditionally.
26856         * lib/memchr.c: Include <stdlib.h> unconditionally.
26857         * lib/memchr.c (LONG_MAX): Remove.
26858         * lib/memrchr.c (LONG_MAX): Likewise.
26859         * lib/memchr.c (__memchr): Define via a prototype.
26860         * lib/memrchr.c (__memrchr): Likewise.
26861         * lib/memcmp.c (__P): Remove, and remove all uses.
26862         (memcmp_bytes, memcmp_common_alignment, memcmp_not_common_alignment):
26863         Remove forward decls; no longer needed.
26864         * lib/memcpy.c, memmove.c, memset.c: Include <stddef.h>.
26865         Use types required by C89 in prototype.
26866
26867         * lib/mkdir.c: Include <stdlib.h>, <string.h> unconditionally.
26868         * lib/savedir.c: Likewise.
26869         * lib/mkdir.c (free): Remove decl.
26870         * lib/rmdir.c (rmdir): Define with a prototype.
26871         * lib/savedir.c: Include savedir.h first, to test interface.
26872
26873         * lib/mktime.c (STDC_HEADERS): Remove.
26874         Include <stdlib.h>, <string.h> unconditionally.
26875
26876         * lib/modechange.c: Include <stdlib.h> unconditionally.
26877         (malloc): Remove decl.
26878
26879         * lib/mountlist.c: Include <stdlib.h>, <string.h> unconditionally.
26880         (free): Remove decl.
26881
26882         * lib/obstack.h (PTR_INT_TYPE) [!defined __PTRDIFF_TYPE__]:
26883         Define to ptrdiff_t, without bothering to check HAVE_STDDEF_H.
26884         (This type really should be intptr_t, but that's a C99ism.)
26885         (_obstack_memcpy): Remove: all uses changed to memcpy.
26886         Include <string.h> unconditionally.
26887         (struct obstack): Assume __STDC__ for types of members
26888         chunkfun, freefun, extra_arg.
26889         (_obstack_newchunk, _obstack_free, _obstack_begin, _obstack_begin_1,
26890         _obstack_memory_used, obstack_alloc_failed_handler, obstack_init,
26891         obstack_begin, obstack_specify_allocation,
26892         obstack_specify_allocation_with_arg, obstack_chunkfun,
26893         obstack_freefun, obstack_free) [! (defined __STDC__ && __STDC__)]:
26894         Remove unprototyped decls and the macros that use them.
26895         * lib/obstack.c (POINTER): Remove.  All uses changed to void *.
26896         (obstack_alloc_failed_handler, CALL_CHUNKFUN, CALL_FREEFUN,
26897         _obstack_begin, _obstack_begin_1, _obstack_allocated_p)
26898         (defined __STDC__ && __STDC__)]:
26899         Remove nonprototyped code.
26900         Include <stdlib.h> unconditionally.
26901         (_obstack_begin, _obstack_begin_1, _obstack_newchunk,
26902         _obstack_allocated_p, _obstack_free, obstack_free,
26903         _obstack_memory_used, print_and_abort):
26904         Define using prototypes.
26905         (obstack_1grow, obstack_1grow_fast, obstack_alloc, obstack_base,
26906         obstack_blank, obstack_blank_fast, obstack_copy, obstack_copy0,
26907         obstack_finish, obstack_grow, obstack_grow0, obstack_make_room,
26908         obstack_next_free, obstack_object_size, obstack_room) [0]:
26909         Remove unused, unprototyped code.
26910
26911         * lib/path-concat.c: Include <stdlib.h>, <string.h> unconditionally.
26912
26913         * lib/physmem.c (physmem_total, physmem_available, main): Define
26914         with prototypes.
26915
26916         * lib/posixtm.c: Include <stdlib.h>, <string.h> unconditionally.
26917         (main): Define with a prototype.
26918
26919         * lib/posixver.c (getenv): Remove decl.
26920
26921         * lib/putenv.c (malloc): Returns void *, not char *.
26922         Include <string.h> unconditionally.
26923         (strchr, memcpy, NULL): Do not define.
26924
26925         * lib/readtokens.c: Include readtokens.h first, to test interface.
26926         Include <stdlib.h>, <string.h> unconditionally.
26927         (init_tokenbuffer): Define with a prototype.
26928
26929         * lib/regex.c (PARAMS): Remove.  All uses removed.
26930         All uses of _RE_ARGS removed, too.
26931         Include <stddef.h>, <stdlib.h>, <string.h>, <limits.h>
26932         unconditionally.
26933         (bzero): Assume memset exists.
26934         (memcmp, memcpy, NULL): Remove.
26935         (SIGN_EXTEND_CHAR): Remove; all uses replaced by casts to signed
26936         char, or assignments to local vars of type signed char.
26937         (init_syntax_once, PREFIX(extract_number_and_incr),
26938         PREFIX(print_partial_compiled_pattern),
26939         PREFIX(print_compiled_pattern), PREFIX(print_double_string),
26940         convert_mbs_to_wcs, print_fastmap, re_set_syntax,
26941         PREFIX(regex_grow_registers), PREFIX(regex_compile),
26942         PREFIX(store_op1), PREFIX(store_op2), PREFIX(insert_op1),
26943         PREFIX(insert_op2), PREFIX(at_begline_loc_p),
26944         PREFIX(at_endline_loc_p), group_in_compile_stack, insert_space,
26945         wcs_compile_range, byte_compile_range, truncate_wchar,
26946         PREFIX(re_compile_fastmap), re_compile_fastmap, re_set_registers,
26947         re_search, re_search_2, PREFIX(re_search_2), re_match, re_match_2,
26948         count_mbs_length, wcs_re_match_2_internal,
26949         byte_re_match_2_internal, PREFIX(group_match_null_string_p),
26950         PREFIX(alt_match_null_string_p),
26951         PREFIX(common_op_match_null_string_p), PREFIX(bcmp_translate),
26952         re_compile_pattern, re_comp, re_exec, regcomp, regexec, regerror,
26953         regfree, PREFIX(extract_number)): Define with prototype.  Remove
26954         now-unnecessary declaration, if any.
26955         (byte_compile_range, PREFIX(regex_compile), re_comp, re_exec,
26956         regcomp, regexec):
26957         Remove now-unnecessary casts among pointer types.
26958         * lib/regex.h (_RE_ARGS): Remove.  All uses removed.
26959
26960         * lib/rename.c: Include <stdlib.h>, <string.h> unconditionally.
26961         (free): Remove decl.
26962
26963         * lib/rpmatch.c: Include <stdlib.h> unconditionally.
26964
26965         * lib/same.c: Include <stdlib.h>, <string.h> unconditionally.
26966         (free): Remove decl.
26967
26968         * lib/save-cwd.c: Include <stdlib.h> unconditionally.
26969         * lib/xgetcwd.c: Likewise.
26970
26971         * lib/stat.c: Include <stdlib.h>, <string.h> unconditionally.
26972         (free): Remove decl.
26973
26974         * lib/strchrnul.c (strchrnul): Define with a prototype.
26975         Fix bug: c_in was not converted to char before searching.
26976
26977         The following changes are not K&R related:
26978
26979         * lib/group-member.h: Include <sys/types.h>, so that this file is
26980         self-contained.
26981         * lib/makepath.h: Likewise.
26982
26983         * lib/getusershell.c (readname, default_index, line_size, readname):
26984         Use size_t, not int, for sizes.
26985         (readname): If the size overflows, report an error instead of
26986         looping forever.
26987
26988 2003-09-09  Paul Eggert  <eggert@twinsun.com>
26989
26990         * config/srclist.txt: Do not get getopt.h, getopt1.c, or regex.h from
26991         libc.
26992
26993 2003-09-09  Paul Eggert  <eggert@twinsun.com>
26994
26995         * README: New section: portability guidelines.
26996
26997 2003-09-09  Derek Robert Price  <derek@ximbiot.com>
26998
26999         * m4/getndelim2.m4 (gl_PREREQ_GETNDELIM2): Assume stdlib.h per the
27000         C89 spec.
27001
27002 2003-09-09  Derek Robert Price  <derek@ximbiot.com>
27003
27004         * lib/getndelim2.c: Assume stdlib.h per the C89 spec.
27005
27006 2003-09-08  Paul Eggert  <eggert@twinsun.com>
27007
27008         Assume C89 or better; remove K&R cruft.
27009         A few of these changes were first proposed by Derek Robert Price
27010         in <http://mail.gnu.org/archive/html/bug-gnulib/2003-07/msg00105.html>.
27011
27012         * lib/addext.c: Include <string.h> unconditionally.
27013         * lib/backupfile.c: Include <string.h>, <stdlib.h> unconditionally.
27014         Don't declare getenv or malloc.
27015
27016         * lib/alloca.c: Include <string.h>, <stdlib.h> unconditionally.
27017         (POINTER_TYPE, pointer): Remove; all uses changed to void *.
27018         (NULL): Remove.
27019         (find_stack_direction, alloca): Use prototypes.
27020
27021         * lib/atexit.c (atexit): Define using a prototype.
27022
27023         * lib/basename.c, dirname.c, stripslash.c:
27024         Include <string.h> unconditionally.
27025
27026         * lib/bcopy.c: Include <stddef.h>.
27027         (bcopy): Define with prototype, using 'const' and 'void' and 'size_t'.
27028
27029         * lib/canon-host.c: Include <stdlib.h>, <string.h> unconditionally.
27030
27031         * lib/error.h (error, error_at_line, error_print_progname)
27032         [! (defined (__STDC__) && __STDC__)]: Remove decls.
27033         * lib/error.c: Include error.h first, to check interface.
27034         Include <stdarg.h>, <stdlib.h>, <string.h> unconditionally.
27035         (VA_START): Remove; all uses changeed to va_start.
27036         (exit, strerror): Remove decls.
27037         (error_print_progname): Prototype uncondionally.
27038         Don't include <errno.h>; no longer needed.
27039         (private_strerror): Remove.
27040         (error_tail): Always define.
27041         (error, error_at_line): Assume C89 or better; always use prototypes.
27042         * lib/fatal.c: Include "fatal.h" first, to test interface.
27043         Include <stdarg.h>, <stdlib.h>, <string.h> unconditionally.
27044         (VA_START): Remove; all uses changed to va_start.
27045         [! (HAVE_VPRINTF || HAVE_DOPRNT || _LIBC)]: Remove support for
27046         this case.
27047         (exit): Remove decl.
27048         (fatal): Prototype unconditionally.  Assume va_start works.
27049         Abort at end, to pacify gcc.
27050
27051         * lib/euidaccess.c (main): Define with a prototype.
27052
27053         * lib/exclude.c: Include <stdlib.h>, <string.h> unconditionally.
27054
27055         * lib/exitfail.c: Include <stdlib.h> unconditionally.
27056
27057         * lib/fnmatch_.h (__P): Remove.  All uses changed to assume
27058         prototypes.
27059         * lib/fnmatch.c: Include fnmatch.h first, to test interface.
27060         Include <string.h>, <stddef.h>, <stdlib.h> unconditionally.
27061         (getenv): Remove decl.
27062         (fnmatch): Define using a prototype.
27063         * lib/fnmatch_loop.c (FCT): Remove forward decl; no longer needed.
27064         (FCT): Define using a prototype.
27065
27066         * lib/getdate.y: Include <stdlib.h>, <string.h> unconditionally.
27067
27068         * lib/gethostname.c: Include <stddef.h>.
27069         (gethostname): Define with prototype.  Length is size_t, not int.
27070
27071 2003-09-08  Paul Eggert  <eggert@twinsun.com>
27072
27073         Assume C89 or better; remove K&R cruft.
27074         * m4/alloca.m4 (gl_PREREQ_ALLOCA): Don't check for stdlib.h, string.h.
27075         * m4/backupfile.m4 (gl_BACKUPFILE): Don't check for stdlib.h,
27076         string.h, getenv, malloc.
27077         * m4/dirname.m4 (gl_DIRNAME): Don't check for string.h or C standard
27078         headers.
27079         * m4/canon-host.m4 (gl_CANON_HOST): Don't check for string.h, stdlib.h.
27080         * m4/error.m4 (jm_PREREQ_ERROR): Do not require STDC headers, and
27081         do not check for strerror.
27082         * m4/exclude.m4: Do not check for stdlib.h, string.h, strings.h.
27083         * m4/exitfail.m4 (gl_EXITFAIL): Do not check for stdlib.h.
27084         * m4/fatal.m4 (gl_FATAL): Do not require STDC headers, and
27085         do not check for doprnt or vprintf.
27086         * m4/fnmatch.m4 (gl_PREREQ_FNMATCH_EXTRA): Remove.  All uses removed.
27087         * m4/getdate.m4 (gl_GETDATE): Don't check for stdlib.h or string.h.
27088
27089 2003-09-08  Paul Eggert  <eggert@twinsun.com>
27090
27091         * lib/getversion.c: Remove; was migrated to backupfile.c in 1997.
27092         getversion.c should have been removed then, but was accidentally
27093         preserved.
27094
27095         * lib/utime.c [!HAVE_UTIMES_NULL]: Include <sys/stat.h>, <fcntl.h>.
27096         (utime_null): Fix typo: 'st' was sometimes called 'sb'.
27097
27098 2003-09-08  Karl Berry  <karl@gnu.org>
27099
27100         * config/config.sub, config.guess, srclistvars.sh: update from savannah
27101                 config, forget about prep.
27102
27103         * config/depcomp, missing: update from automake.
27104
27105 2003-09-07  Paul Eggert  <eggert@twinsun.com>
27106
27107         * modules/time_r: Depend on 'restrict'.  Fix from Simon Josefsson in
27108         <http://mail.gnu.org/archive/html/bug-gnulib/2003-09/msg00028.html>.
27109
27110 2003-09-07  Paul Eggert  <eggert@twinsun.com>
27111
27112         * lib/time_r.c (gmtime_r, localtime_r): Fix silly typo: missing arg to
27113         copy_tm_result.  Bug reported by Simon Josefsson in
27114         <http://mail.gnu.org/archive/html/bug-gnulib/2003-09/msg00028.html>.
27115
27116 2003-09-06  Paul Eggert  <eggert@twinsun.com>
27117
27118         * m4/time_r.m4: New file.
27119         * m4/mktime.m4 (gl_PREREQ_MKTIME): Remove check for limits.h.
27120         * m4/timegm.m4 (gl_FUNC_TIMEGM): Assume that timegm is buggy if mktime
27121         is. Check for timegm declaration.
27122         (gl_PREREQ_TIMEGM): Require gl_FUNC_MKTIME.
27123         Do not check for gmtime_r.
27124         Replace mktime if __mktime_internal does not exist and if mktime
27125         hasn't been replaced already.
27126
27127 2003-09-06  Paul Eggert  <eggert@twinsun.com>
27128
27129         * lib/time_r.c, lib/time_r.h: New files.
27130
27131         * lib/mktime.c (my_mktime_localtime_r): Remove; all uses changed to
27132         __localtime_r.
27133         (__localtime_r) [!defined _LIBC]: New macro.  Include <time_r.h>.
27134         (__mktime_internal) [!defined _LIBC]: Now extern, not static.
27135
27136         * lib/strftime.c (my_strftime_gmtime_r): Remove; all uses changed to
27137         __gmtime_r.
27138         (my_strftime_localtime_r): Remove; all uses changed to __localtime_r.
27139         (__gtime_r, __localtime_r) [!HAVE_TM_GMTOFF]: New macros.
27140         Include <time_r.h>.
27141
27142         * lib/timegm.c: Switch to glibc implementation, with the following
27143         changes:
27144         [defined HAVE_CONFIG_H]: Include <config.h>.
27145         [!defined _LIBC]: Include "timegm.h" rather than <time.h>.
27146         (__mktime_internal) [!defined _LIBC]: New decl.
27147         (__gmtime_r) [!defined _LIBC]: New macro and function.
27148         (timegm): Use a prototype, since gnulib assumes C89.
27149         Do not bother declaring tmp to be const, as it's not really usefu.
27150         * lib/timegm.h: Hoist "#include <time.h>" out of #ifdef.
27151         (timegm): Declare only if HAVE_DECL_TIMEGM.
27152
27153 2003-09-06  Paul Eggert  <eggert@twinsun.com>
27154
27155         * MODULES.html.sh (func_all_modules): Add time_r.
27156         * modules/time_r: New file.
27157         * modules/mktime, modules/strftime, modules/timegm: Depend on time_r.
27158         * modules/timegm: Depend on mktime.  Change maintainer to "all, glibc".
27159
27160 2003-09-03  Paul Eggert  <eggert@twinsun.com>
27161
27162         * lib/human.c (human_readable): Fix bug that rounded 10501 to 10k.
27163         Bug reported by Lute Kamstra in
27164         <http://mail.gnu.org/archive/html/bug-gnulib/2003-09/msg00003.html>.
27165
27166         * lib/getdate.y (relative_time_table): Use tDAY_UNIT for "tomorrow",
27167         "yesterday", "today", and "now" rather than tMINUTE_UNIT.  Of
27168         course with correspondingly smaller numbers for tomorrow and
27169         yesterday.  From Tadayoshi Funaba.  Originally installed into
27170         sh-utils on 1999-08-07, but the patch got lost (I guess during the
27171         coreutils merge?).
27172
27173 2003-08-31  Simon Josefsson  <jas@extundo.com>
27174
27175         * modules/timegm: New file.
27176         * MODULES.html.sh (func_all_modules): Add timegm.
27177
27178 2003-08-31  Simon Josefsson  <jas@extundo.com>
27179
27180         * m4/timegm.m4: New file.
27181
27182 2003-08-31  Simon Josefsson  <jas@extundo.com>
27183
27184         * lib/timegm.h: New file.
27185         * lib/timegm.c: New file.  Based on
27186         wget-1.8.2/src/http.c:mktime_from_utc.
27187
27188 2003-08-31  Karl Berry  <karl@gnu.org>
27189
27190         * lib/argp.h: update from libc.
27191
27192 2003-08-28  Bruno Haible  <bruno@clisp.org>
27193
27194         * m4/fnmatch.m4 (_AC_LIBOBJ_FNMATCH): Remove AC_DEFINE of fnmatch here.
27195         This avoids havoc on compilers for which '#define fnmatch rpl_fnmatch'
27196         followed by '#define fnmatch fnmatch_posix' gives an error.
27197
27198 2003-08-28  Bruno Haible  <bruno@clisp.org>
27199
27200         * lib/binary-io.h: Undefine O_BINARY before defining it. This avoids a
27201         warning on QNX, which defines O_BINARY to 000000.
27202
27203 2003-08-27  Jim Meyering  <jim@meyering.net>
27204
27205         * m4/mkstemp.m4: Require that the system mkstemp be able to create
27206         70 temporary files, not just 30.  Tru64 V4.0F's mkstemp function
27207         would fail after 32.  Reported by Danny Levinson.  Details here:
27208         http://mail.gnu.org/archive/html/bug-coreutils/2003-08/msg00124.html
27209
27210 2003-08-24  Bruno Haible  <bruno@clisp.org>
27211
27212         * lib/binary-io.h: Include <stdio.h>, to avoid a compilation error when
27213         MSVC7 <stdio.h> is included later.
27214
27215 2003-08-22  Simon Josefsson  <jas@extundo.com>
27216
27217         * modules/strndup (Makefile.am): Add strndup.h to lib_SOURCES.
27218
27219 2003-08-20  Karl Berry  <karl@gnu.org>
27220
27221         * m4/lib-ld.m4: serial 1003 from gettext, no changes besides serial.
27222
27223 2003-08-20  Bruno Haible  <bruno@clisp.org>
27224
27225         * modules/progname: New file.
27226         * MODULES.html.sh (func_all_modules): Add progname.
27227
27228 2003-08-20  Bruno Haible  <bruno@clisp.org>
27229
27230         * lib/progname.h: New file, from GNU gettext.
27231         * lib/progname.c: New file, from GNU gettext.
27232         * lib/progreloc.c: New file, from GNU gettext.
27233
27234 2003-08-19  Jim Meyering  <jim@meyering.net>
27235
27236         * m4/lib-ld.m4: Revert yesterday's change, per Bruno's request here:
27237         http://mail.gnu.org/archive/html/bug-gnulib/2003-08/msg00155.html
27238
27239 2003-08-19  Bruno Haible  <bruno@clisp.org>
27240
27241         * m4/xalloc.m4 (gl_PREREQ_XSTRDUP): Don't check for <string.h> any
27242         more.
27243
27244 2003-08-19  Bruno Haible  <bruno@clisp.org>
27245
27246         * lib/xstrdup.c: Assume <string.h> exists.
27247
27248 2003-08-18  Paul Eggert  <eggert@twinsun.com>
27249
27250         * modules/stdbool: Add BUILT_SOURCES.  Prefer $@ to target name
27251         in makefile rules.
27252
27253 2003-08-18  Jim Meyering  <jim@meyering.net>
27254
27255         * m4/getloadavg.m4: Use [\t ], not [ \t] (where \t is a literal TAB).
27256         * m4/lib-ld.m4: Likewise.
27257
27258 2003-08-18  Jim Meyering  <jim@meyering.net>
27259
27260         * lib/setenv.h: Indent nested cpp directive.
27261         * lib/vasnprintf.c: Remove trailing blanks.
27262
27263 2003-08-17  Simon Josefsson  <jas@extundo.com>
27264
27265         * modules/xstrndup: New file.
27266         * MODULES.html.sh (func_all_modules): Add xstrndup.
27267
27268 2003-08-17  Simon Josefsson  <jas@extundo.com>
27269
27270         * modules/argp: Fix autoconf macro name. Add more dependencies.
27271
27272 2003-08-17  Simon Josefsson  <jas@extundo.com>
27273
27274         * m4/xstrndup.m4: New file.
27275
27276 2003-08-17  Simon Josefsson  <jas@extundo.com>
27277
27278         * m4/argp.m4: New file.
27279
27280 2003-08-17  Simon Josefsson  <jas@extundo.com>
27281             Bruno Haible  <bruno@clisp.org>
27282
27283         * lib/xstrndup.h: New file.
27284         * lib/xstrndup.c: New file.
27285
27286 2003-08-17  Bruno Haible  <bruno@clisp.org>
27287
27288         * modules/strndup (Files, Include): Add lib/strndup.h.
27289
27290 2003-08-17  Bruno Haible  <bruno@clisp.org>
27291
27292         * modules/euidaccess (Files): Add lib/euidaccess.h.
27293
27294 2003-08-17  Bruno Haible  <bruno@clisp.org>
27295
27296         * lib/strndup.h: New file.
27297
27298 2003-08-17  Bruno Haible  <bruno@clisp.org>
27299
27300         * gnulib-tool (func_create_testdir): Handle gl_USE_SYSTEM_EXTENSIONS
27301         like AC_GNU_SOURCE.
27302         * modules/extensions (configure.ac): Comment out the invocation of
27303         gl_USE_SYSTEM_EXTENSIONS.
27304
27305 2003-08-16  Paul Eggert  <eggert@twinsun.com>
27306
27307         Merges from coreutils, etc.
27308         * m4/rpmatch.m4 (gl_PREREQ_RPMATCH): Insert ':' to prevent a syntax
27309         error in gl_FUNC_MATCH.  This fixes a bug I introduced on 2003-05-28.
27310         * m4/readlink.m4 (gl_PREREQ_READLINK): Renamed from gl_PREREQ_READLINE,
27311         fixing a typo.
27312         * m4/host-os.m4 (UTILS_HOST_OS): Add GNU/NetBSD, GNU/FreeBSD.
27313         * m4/hash.m4 (gl_HASH): Use AM_STDBOOL_H, not AC_HEADER_STDBOOL.
27314
27315 2003-08-16  Paul Eggert  <eggert@twinsun.com>
27316
27317         Document merge from coreutils.
27318         * modules/alloca: Append $(ALLOCA_H) to BUILT_SOURCES.
27319         * modules/fnmatch: Append $(FNMATCH_H) to BUILT_SOURCES.
27320         * modules/utime: Add m4/utimes-null.m4.
27321
27322 2003-08-16  Paul Eggert  <eggert@twinsun.com>
27323
27324         * lib/regex.h, strdup.c, strtoll.c, strtoul.c: Do not normalize white
27325         space, undoing this 2003-08-12 change:
27326         <http://mail.gnu.org/archive/html/bug-gnulib/2003-08/msg00080.html>
27327
27328 2003-08-16  Paul Eggert  <eggert@twinsun.com>
27329
27330         * config/srclist.txt: Get regex.h, strdup.c, strtoll.c,
27331         strtoul.c from libc, undoing this 2003-08-12 change:
27332         <http://mail.gnu.org/archive/html/bug-gnulib/2003-08/msg00080.html>
27333
27334 2003-08-16  Jim Meyering  <jim@meyering.net>
27335
27336         Merges from coreutils.
27337         * m4/readdir.m4 (GL_FUNC_READDIR): Change name to have GL_ (not jm_)
27338         prefix.  Adjust cache variables similarly.  Create 500 rather than
27339         just 300 files, to exercise bug on Darwin6.5, too.
27340         * m4/perl.m4 (jm_PERL): Use $am_missing_run, not undefined
27341         $missing_dir.
27342         * m4/jm-winsz1.m4: Require AC_SYS_POSIX_TERMIOS, not
27343         AM_SYS_POSIX_TERMIOS.
27344         Reported by mkc@mathdogs.com.
27345         Also change use of $am_cv_sys_posix_termios
27346         to $ac_cv_sys_posix_termios.  Reported by Andreas Schwab.
27347         * m4/getgroups.m4 (jm_FUNC_GETGROUPS): Rewrite to use AC_FUNC_GETGROUPS
27348         and (if needed) to call AC_LIBOBJ and to set GETGROUPS_LIB.
27349         * m4/fsusage.m4 [__GLIBC__]: GNU libc's statvfs stats each mount point
27350         in /proc/mounts until it finds one with matching device number.  This
27351         is unnecessary when the FILE argument *is* a mount point.  No stat call
27352         is necessary in that case.  So, disable the statvfs-testing code on
27353         systems with GNU libc.  Reported by Andrei Gaponenko via Tim Waugh
27354         as RedHat bug# 84846.
27355         * m4/c-stack.m4 (AC_SYS_XSI_STACK_OVERFLOW_HEURISTIC): Limit stack size
27356         to 1MB, so as not to render systems with no stack size limit (e.g.,
27357         linux-2.2.x) unusable.  Suggestion and code from Bruno Haible.
27358         Include <unistd.h>.  On some systems,
27359         it is required for the definition of _SC_PAGESIZE.
27360
27361 2003-08-16  Jim Meyering  <jim@meyering.net>
27362
27363         Merge from coreutils.
27364         * lib/xstrtoimax.c: #else #if -> #elif.
27365         * lib/xstrtoumax.c: Likewise.
27366
27367 2003-08-16  Jim Meyering  <jim@meyering.net>
27368
27369         * m4/utimes.m4 (gl_FUNC_UTIMES): New file.
27370         * m4/utimes.m4: Removed.
27371         * m4/utimes-null.m4: Renamed from utimes.m4.
27372
27373         * m4/c-stack.m4 (AC_SYS_XSI_STACK_OVERFLOW_HEURISTIC): Limit stack size
27374         to 1MB, so as not to render systems with no stack size limit (e.g.,
27375         linux-2.2.x) unusable.  Suggestion and code from Bruno Haible.
27376         Include <unistd.h>.  On some systems,
27377         it is required for the definition of _SC_PAGESIZE.
27378
27379 2003-08-16  Jim Meyering  <jim@meyering.net>
27380         and Paul Eggert  <eggert@cs.ucla.edu>
27381
27382         Merges from coreutils, etc.
27383
27384         * m4/jm-macros.m4 (AC_LANG_SOURCE(C)): New macro, undefine, then define
27385         using the latest version from cvs.  This avoids problems with #line
27386         directives using a vendor (Sun) compiler.
27387         (jm_MACROS): Bump prerequisite from 2.52g to 2.57.
27388         Don't set GETGROUPS_LIB here; now it's
27389         done via getgroups.m4's wrapper function.
27390         AC_SUBST OPTIONAL_BIN_PROGS, OPTIONAL_BIN_ZCRIPTS, and MAN here,
27391         rather than just in sh-util/configure.in, so that the
27392         now-shared-by-fileutils-and-textutils lib/Makefile.am are all the
27393         same.
27394         Use AC_CONFIG_LIBOBJ_DIR(lib) to tell the new
27395         AC_FUNC_GETLOADAVG where to find getloadavg.c.
27396         Require AC_FUNC_FTW, gt_INTTYPES_PRI, gl_CLOCK_TIME,
27397         UTILS_SYS_OPEN_MAX, GL_FUNC_GETCWD_PATH_MAX, GL_FUNC_READDIR,
27398         gl_FSUSAGE, gl_MOUNTLIST, AC_FUNC_CANONICALIZE_FILE_NAME.
27399         Remove code that is now done by the newly-required macros.
27400         Append $(EXEEXT) to DF_PROG.
27401         AC_LIBOBJ fchdir-stub if fchdir doesn't exist; similarly for fchown.
27402         Do not invoke or require the following here,
27403         since prereq.m4 or some gnulib .m4 now does this for us:
27404         gl_REGEX, UTILS_FUNC_MKDIR_TRAILING_SLASH, jm_BISON, gl_FUNC_MKTIME,
27405         jm_FUNC_LSTAT, jm_FUNC_STAT, jm_FUNC_REALLOC, jm_FUNC_MALLOC,
27406         jm_FUNC_NANOSLEEP, jm_FUNC_READDIR, jm_FUNC_MEMCMP,
27407         jm_FUNC_GLIBC_UNLOCKED_IO, AC_FUNC_FNMATCH_GNU, jm_FUNC_PUTENV,
27408         jm_AC_PREREQ_XSTRTOUMAX, jm_AC_PREREQ_XSTRTOIMAX,
27409         AC_FUNC_ERROR_AT_LINE, jm_FUNC_GNU_STRFTIME, AC_FUNC_VPRINTF,
27410         vb_FUNC_RENAME, UTILS_FUNC_MKSTEP, jm_FUNC_UTIME, AM_FUNC_GETLINE,
27411         AC_FUNC_OBSTACK.
27412         Do not replace the following functions, as this is now the job
27413         of some gnulib .m4: strcasecmp, strncasecmp, dup2, gethostname,
27414         getusershell, sig2str, strcspn, stpcpy, strstr, strtol, strtoul
27415         strpbrk, euidaccess, memcmp, rmdir, rpmatch, strndup, strverscmp,
27416         atexit getpass, strdup, getpagesize.
27417         Replace 'raise'.
27418         Do not check for the following functions, as this is now the job
27419         of some gnulib .m4: bcopy, canonicalize_file_name, fchdir, ftime,
27420         getcwd, getmntinfo, resolvepath.  But check for sysctl, setreuid,
27421         setregid.
27422         (jm_CHECK_ALL_HEADERS): Do not check for fenv.h.
27423         Check for sys/sysctl.h.
27424         (jm_CHECK_ALL_TYPES): Do not require AC_STRUCT_TM, AC_STRUCT_TIMEZONE,
27425         jm_CHECK_TYPE_STRUCT_TIMESPEC.  Invoke gt_TYPE_SSIZE_T instead
27426         of checking for ssize_t ourselves.
27427
27428         * m4/prereq.m4 (jm_PREREQ): Don't invoke macros; AC_REQUIRE them.
27429         Require every macro that gnulib/modules/* suggests for us.
27430         (jm_PREREQ_ADDEXT): New macro.
27431         (jm_PREREQ_STAT): Check for 'struct statfs' on Ultrix 4.4.
27432         Require jm_AC_TYPE_LONG_LONG instead of invoking it.
27433
27434         * m4/physmem.m4 (gl_SYS__SYSTEM_CONFIGURATION): New macro.
27435         (gl_PHYSMEM): Use it.
27436         Also check for `table' function.
27437         Check for new headers and functions.
27438         Add check for sys/sysmp.h.
27439         With suggestions from Kaveh Ghazi.
27440         Ignore headers that are present but cannot be compiled.  This
27441         avoids spurious warnings on Solaris 9 sparc with Forte Developer 7
27442         C 5.4.
27443
27444 2003-08-15  Paul Eggert  <eggert@twinsun.com>
27445
27446         Document merge from coreutils.
27447         * modules/userspec: Depend on posixver.
27448         * modules/strftime: Depend on tzset.
27449
27450 2003-08-15  Paul Eggert  <eggert@twinsun.com>
27451
27452         * lib/config.charset, ref-add.sin, ref-del.sin: Use three spaces,
27453         rather than tab, after '#' in shell-script copyright notices.
27454         Suggested by Bruno Haible.
27455
27456 2003-08-15  Paul Eggert  <eggert@twinsun.com>
27457
27458         * config/srclist-update: Use three spaces, rather than tab, after '#'
27459         in shell-script copyright notices.  Suggested by Bruno Haible.
27460         Remove unnecessary parenthesization in regular expression.
27461
27462 2003-08-15  Jim Meyering  <jim@meyering.net>
27463
27464         Merge from coreutils.
27465         * lib/xgethostname.c: Include <stdlib.h>.
27466         (xghostname): Don't exit for anything other than memory-related
27467         failure; just return NULL.
27468         * lib/userspec.c: Include "posixver.h".
27469         (parse_user_spec): Accept `.' as a separator only
27470         in pre-POSIX-200112 mode.
27471         * lib/strtoimax.c: Use #elif rather than #else #if.
27472         * lib/strftime.c (my_strftime) [!_LIBC && HAVE_TZNAME && HAVE_TZSET]:
27473         Remove function, now that we can rely on a working tzset function.
27474         [!_LIBC]: Ensure that the required autoconf test has been run.
27475         [!defined _NL_CURRENT && HAVE_STRFTIME]:
27476         Use underlying_strftime for %r.
27477         * lib/sha.c: Merge in some clean-up and optimization changes from
27478         glibc.
27479         * lib/sha.c (sha_stream) [BLOCKSIZE]: Move definition to top of file.
27480         Ensure that it is a multiple of 64.
27481         Rearrange loop exit tests so as to avoid performing an
27482         additional fread after encountering an error or EOF.
27483         * lib/realloc.c: Update copyright date.
27484
27485 2003-08-15  Jim Meyering  <jim@meyering.net>
27486         and Paul Eggert  <eggert@twinsun.com>
27487
27488         Merge from coreutils.
27489         * lib/readutmp.h (HAVE_UTMPX_H): Undef if struct utmp has the ut_exit
27490         member but strut utmpx does not.  Needed for AIX 4.3.3.
27491         (UT_EXIT_E_TERMINATION, UT_EXIT_E_EXIT): Define.
27492
27493 2003-08-15  Jim Meyering  <jim@meyering.net>
27494         and Paul Eggert  <eggert@cs.ucla.edu>
27495
27496         Merges from coreutils, etc.
27497         * m4/strftime.m4 (_jm_STRFTIME_PREREQS):
27498         Require gl_FUNC_TZSET_CLOBBER.
27499         * m4/readutmp.m4 (gl_READUTMP): Check for ut_exit.ut_exit,
27500         ut_exit.e_exit, ut_exit.ut_termination, and ut_exit.e_termination
27501         members.
27502
27503 2003-08-14  Paul Eggert  <eggert@twinsun.com>
27504
27505         Help the merge from coreutils.
27506         * m4/gettimeofday.m4 (gl_GETTIMEOFDAY_REPLACE_LOCALTIME): New macro.
27507         (AC_FUNC_GETTIMEOFDAY_CLOBBER): Use it.
27508         * m4/tzset.m4: Use it too.
27509
27510 2003-08-14  Paul Eggert  <eggert@twinsun.com>
27511
27512         * modules/tzset: New file.
27513
27514 2003-08-14  Jim Meyering  <jim@meyering.net>
27515
27516         Merges from coreutils.
27517         * modules/fnmatch: Use the `$(FNMATCH_H)' notation for AC_REPLACED
27518         variable names, rather than @FNMATCH_H@.
27519         * modules/alloca: Likewise for $(ALLOCA_H).
27520
27521         * modules/fnmatch (fnmatch.h): Use `$@' in the commands, in place of
27522         the three copies of the literal target, `fnmatch.h'.
27523         * modules/alloca (alloca.h): Likewise.
27524
27525 2003-08-14  Jim Meyering  <jim@meyering.net>
27526
27527         Merge from coreutils.
27528         * m4/tzset.m4: New file.
27529         * m4/ls-mntd-fs.m4 (jm_LIST_MOUNTED_FILESYSTEMS): Move the
27530         MOUNTED_VMOUNT test to precede the MOUNTED_GETMNTENT1 tests, since
27531         otherwise, AIX 5.1 systems would end up using the latter.
27532         MOUNTED_GETMNTENT1 support is inadequate on such systems: 1) detecting
27533         whether a file system is remote doesn't work  2) the MOUNTED_VMOUNT
27534         code reports the HOSTNAME:/MOUNT_POINT, while the MOUNTED_GETMNTENT1
27535         code reports merely /MOUNT_POINT.  Reported by Mike Jetzer.
27536
27537 2003-08-14  Jim Meyering  <jim@meyering.net>
27538
27539         Merge from coreutils.
27540         * lib/obstack.h: Whitespace changes.
27541         * lib/mountlist.c: Remove anachronistic casts of xmalloc, xrealloc,
27542         and xcalloc return values.
27543         (read_filesystem_list) [MOUNTED_GETFSSTAT]:
27544         Use MNT_NOWAIT, rather than MNT_WAIT.  Otherwise, `df DIR' could
27545         hang on OSF/1 5.1 for DIR on both local and remote file systems.
27546         Reported by (and fix confirmed by) Nelson H. F. Beebe.
27547         (read_filesystem_list) [MOUNTED_VMOUNT]: Detect any
27548         error from mntctl.
27549         Use mntctl's return value to drive the entry-processing loop, since
27550         we can't rely on the value of the vmt_length member in the last
27551         entry.  On some systems doing so could result in exhausting
27552         virtual memory.  Based in part on a patch from Mike Jetzer.
27553
27554 2003-08-14  Jim Meyering  <jim@meyering.net>
27555         and Paul Eggert  <eggert@twinsun.com>
27556
27557         Merges from coreutils, plus other fixes.
27558         * lib/physmem.c: Merge in portability changes from gcc/libiberty
27559         to support AIX, IRIX, Tru64, and Windows.  See the ChangeLog there
27560         for credits and details.  Thanks to Kaveh Ghazi for helping
27561         to keep these files in sync.
27562         (ARRAY_SIZE): Define it.
27563         (physmem_total, physmem_available): Add comments. From Kaveh Ghazi.
27564         * lib/memcasecmp.c: Remove unnecessary parentheses after 'defined'.
27565         (memcasecmp): Don't assume size_t fits in unsigned int.
27566         Remove casts and duplicate code.
27567         * lib/md5.c: Include <string.h> and <stdlib.h> unconditionally.
27568         (memcpy): Remove definition.
27569         Merge in some clean-up and optimization changes from glibc.
27570         [BLOCKSIZE]: Move definition to top of file.
27571         Ensure that it is a multiple of 64.
27572         Rearrange loop exit tests so as to avoid performing an
27573         additional fread after encountering an error or EOF.
27574         * lib/md5.h (md5_uintptr): Define.
27575         * lib/makepath.c (CLEANUP_CWD): Report an error if we failed to
27576         return to the initial working directory.  Preserve errno
27577         for caller.
27578         * lib/idcache.c: Include "xalloc.h".
27579         (xmalloc, xrealloc): Remove decls.
27580         (getuser): Remove casts no longer required in C89.
27581         * lib/human.c: Include stdio.h, for sprintf.
27582         * lib/group-member.c: Include "xalloc.h".
27583         (xmalloc, xrealloc): Remove decls.
27584         (get_group_info): Remove casts no longer required in C89.
27585         * lib/getusershell.c (readname): Remove casts no longer required in
27586         C89.
27587         * lib/gettimeofday.c (rpl_gmtime, rpl_tzset): New functions.
27588         * lib/getline.c: Whitespace fix, from coreutils.
27589
27590 2003-08-13  Paul Eggert  <eggert@twinsun.com>
27591
27592         * m4/exclude.m4 (gl_EXCLUDE): Require AC_C_INLINE, AC_HEADER_STDC.
27593         Check for isascii.
27594
27595         * m4/gettext.m4, iconv.m4, intdiv0.m4, inttypes-pri.m4, lib-link.m4,
27596         lib-prefix.m4, longdouble.m4, po.m4, progtest.m4, signed.m4:
27597         Undo previous (whitespace-only) change.
27598
27599 2003-08-13  Paul Eggert  <eggert@twinsun.com>
27600
27601         * lib/exclude.c: Include <ctype.h>
27602         (IN_CTYPE_DOMAIN): New macro.
27603         (is_space): New fn.
27604         (add_exclude_file): If LINE_END is a space, ignore trailing spaces
27605         and empty lines.
27606
27607         * lib/argp-help.c, argp-parse.c, config.charset, getopt.h:
27608         Undo previous (whitespace-only) change.
27609
27610 2003-08-13  Paul Eggert  <eggert@twinsun.com>
27611
27612         * config/srclist-update: Change update back to the old behavior,
27613         leaving whitespace alone.  Use one 'sed' command rather than a
27614         pipeline.
27615         (fixlicense): Now a variable, not a function.
27616         (remove_trailing_blanks): Remove.
27617         (fixfile): Don't invoke unexpand or cat, or remove trailing blanks.
27618         * config/config.guess, config.sub, install-sh, missing, texinfo.tex:
27619         Undo previous (whitespace-only) change.
27620
27621 2003-08-12  Paul Eggert  <eggert@twinsun.com>
27622
27623         Merge from coreutils.
27624         * modules/euidaccess: Add lib_SOURCES, include for new
27625         file euidaccess.h
27626
27627 2003-08-12  Paul Eggert  <eggert@twinsun.com>
27628
27629         * m4/gettext.m4, iconv.m4, intdiv0.m4, inttypes-pri.m4, lib-link.m4,
27630         lib-prefix.m4, longdouble.m4, po.m4, progtest.m4, signed.m4:
27631         Normalize leading white space and remove trailing white space.
27632
27633         Merge from coreutils
27634         * m4/euidaccess.m4 (gl_FUNC_EUIDACCESS): Check for euidaccess decl.
27635
27636         * m4/lib-ld.m4, lib-link.m4, lib-prefix.m4: Regenerate from gettext
27637         0.12.1.  These files are now being upgraded automatically by
27638         ../config/srclist-update.
27639
27640 2003-08-12  Paul Eggert  <eggert@twinsun.com>
27641
27642         * lib/argp-help.c, argp-parse.c, config.charset, getopt.h:
27643         Normalize leading white space and remove trailing white space.
27644         * lib/ref-add.sin, ref-del.sin: Use '#' before empty line in copyright
27645         notice, as per ../config/srclist-update.
27646
27647         Merge from coreutils.
27648         * lib/euidaccess.h: New file.
27649         * lib/euidaccess.c: Include it.
27650         * lib/.cppi-disable: Add printf-args.h, printf-parse.h, stdbool_.h,
27651         vasnprintf.h, vasprintf.h.  Remove strdup.c, gettext.h.
27652         * lib/regex.h, strdup.c, strtoll.c, strtoul.c: Normalize white space.
27653
27654 2003-08-12  Paul Eggert  <eggert@twinsun.com>
27655
27656         * config/srclist-update: Add copyright notice.
27657         (remove_id_lines, remove_trailing_blanks): New constants.
27658         (fixfile): Use them to normalize spacing a bit in copied files.
27659         * config/config.guess, config.sub, install-sh, missing, texinfo.tex:
27660         Normalize leading white space and remove trailing white space.
27661
27662         * config/texinfo.tex: Sync with texinfo.
27663
27664         * config/srclist.txt: Don't get regex.h, strdup.c, strtoll.c,
27665         strtoul.c from libc, to merge coreutils whitespace changes.
27666
27667         * config/srclist.txt: Get the following m4 files from gettext:
27668         codeset.m4, gettext.m4, glibc21.m4, iconv.m4, intdiv0.m4,
27669         inttypes-pri.m4, lcmessage.m4, lib-ld.m4, lib-link.m4, lib-prefix.m4,
27670         longdouble.m4, nls.m4, po.m4, progtest.m4, signed.m4, wchar_t.m4,
27671         wint_t.m4.
27672
27673 2003-08-12  Karl Berry  <karl@gnu.org>
27674
27675         * config/srclist.txt: can't sync vasnprintf.c any more, changes have
27676         been made.
27677
27678 2003-08-11  Paul Eggert  <eggert@twinsun.com>
27679
27680         * modules/gnu-source, m4/gnu-source.m4:
27681         Remove; we're assuming Autoconf 2.54 or later now.
27682         Suggested by Bruno Haible.
27683         * MODULES.html.sh (func_all_modules): Remove gnu-source.
27684
27685 2003-08-11  Bruno Haible  <bruno@clisp.org>
27686
27687         * m4/vasnprintf.m4 (gl_PREREQ_VASNPRINTF): Also check for wcslen.
27688
27689 2003-08-11  Bruno Haible  <bruno@clisp.org>
27690
27691         * lib/vasnprintf.c (local_wcslen): New function, for Solaris 2.5.1.
27692         (vasnprintf): Use it instead of wcslen.
27693
27694 2003-08-11  Bruno Haible  <bruno@clisp.org>
27695
27696         * lib/stdbool_.h (_Bool): Undo last change; instead use a negative enum
27697         value to ensure that _Bool promotes to int. Use #define for _Bool when
27698         using the Solaris C compiler. Adds comments suggested by Paul Eggert.
27699
27700 2003-08-10  Karl Berry  <karl@gnu.org>
27701
27702         * lib/regex.h: update from libc (whitespace fix).
27703
27704 2003-08-09  Paul Eggert  <eggert@twinsun.com>
27705
27706         Merge some files from coreutils.  These changes were
27707         originally made by Jim Meyering.
27708         * lib/acl.c: Include <sys/types.h> before <sys/stat.h>;
27709         many older Unixes require this.
27710         * lib/alloca.c (alloca): Remove cast to argument of free;
27711         no longer needed in C89.
27712         * lib/alloca_.h, regex.h: Fix white space to match
27713         what GNU indent does.
27714
27715 2003-08-09  Paul Eggert  <eggert@twinsun.com>
27716
27717         * m4/regex.m4 (jm_INCLUDED_REGEX): Change "\201" to "\371";
27718         apparently Emacs's Unicode mode got confused before my 2003-08-05
27719         checkin.
27720
27721 2003-08-08  Paul Eggert  <eggert@twinsun.com>
27722
27723         * m4/extensions.m4: New file.
27724         * m4/timespec.m4 (jm_CHECK_TYPE_STRUCT_TIMESPEC):
27725         Require gl_USE_SYSTEM_EXTENSIONS.
27726         * m4/unlocked-io.m4 (jm_FUNC_GLIBC_UNLOCKED_IO):
27727         Require gl_USE_SYSTEM_EXTENSIONS rather than AC_GNU_SOURCE.
27728
27729 2003-08-08  Paul Eggert  <eggert@twinsun.com>
27730
27731         * MODULES.html.sh (func_all_modules): Add extensions, gnu-source.
27732         * modules/extensions, modules/gnu-source: New files.
27733         * modules/timespec, modules/unlocked-io: Depend on extensions.
27734
27735 2003-08-07  Paul Eggert  <eggert@twinsun.com>
27736
27737         * modules/restrict: New file.
27738         * MODULES.html.sh (func_all_modules): Add restrict.
27739         * modules/regex: Depend on restrict.
27740
27741 2003-08-07  Paul Eggert  <eggert@twinsun.com>
27742
27743         * m4/restrict.m4: New file.
27744         * m4/regex.m4 (jm_PREREQ_REGEX): Add gl_C_RESTRICT.
27745
27746 2003-08-07  Bruno Haible  <bruno@clisp.org>
27747
27748         * modules/getndelim2 (Makefile.am): Add the files to EXTRA_DIST, not
27749         lib_SOURCES, because getndelim2.m4 now uses AC_LIBOBJ(getndelim2).
27750
27751 2003-08-07  Bruno Haible  <bruno@clisp.org>
27752
27753         * m4/getndelim2.m4 (gl_GETNDELIM2): Use AC_LIBOBJ(getndelim2). This
27754         makes the module 'getndelim2' compatible with the module 'getline'.
27755
27756 2003-08-05  Paul Eggert  <eggert@twinsun.com>
27757
27758         * m4/regex.m4 (jm_INCLUDED_REGEX): Replace a single non-ASCII
27759         byte with "\201" to avoid glitches when editing that source file
27760         with multi-gnome-terminal.
27761
27762 2003-08-05  Paul Eggert  <eggert@twinsun.com>
27763
27764         * lib/bumpalloc.h: Remove.
27765
27766 2003-08-05  Paul Eggert  <eggert@twinsun.com>
27767
27768         * MODULES.html.sh (func_all_modules): Remove bumpalloc.
27769         * modules/bumpalloc: Remove.
27770
27771 2003-08-04  Paul Eggert  <eggert@twinsun.com>
27772
27773         * lib/getloadavg.c: Change copyright notice and spacing to conform to
27774         GNU coding style.
27775
27776         Merge from coreutils.
27777         * lib/error.c [!USE_IN_LIBIO]: Omit this case; assume USE_IN_LIBIO is
27778         1. From glibc.
27779         * lib/getdate.y (date): Also accept dates like May-23-2003; suggestion
27780         from Karl Berry, implemented by Jim Meyering.
27781         * lib/getgroups.c: Include "xalloc.h" instead of declaring xalloc fns;
27782         from Dmitry V. Levin.
27783         Remove anachronistic cast of xrealloc.
27784         * lib/fnmatch_.h (__const): Remove.  Use 'const'.
27785         * lib/fnmatch_loop.c (NEW_PATTERN): Cast alloca return value to proper
27786         type. Otherwise, it wouldn't compile with at least /bin/cc on
27787         ymp-cray-unicos9.0.2.X.
27788         Combine two mostly-identical uses of alloca into one.
27789         Thanks to the Cray-Cyber project for access to a Cray Y-MP.
27790
27791 2003-08-04  Dave Love  <d.love@dl.ac.uk>
27792
27793         [From Emacs.]
27794
27795         * lib/getloadavg.c: Check `__unix' as well as `unix'.  Use #ifdef, not
27796         #if.  Check HAVE_LIBKSTAT as well as LOAD_AVE_TYPE.  Check
27797         F_SETFD, not FD_SETFD.  Use HAVE_STRUCT_NLIST_N_UN_N_NAME, not
27798         obsolete NLIST_NAME_UNION.
27799         [__GNU__]: Undef BSD and FSCALE.
27800         [!NLIST_STRUCT]: Remove conditional definition of NLIST_STRUCT.
27801
27802 2003-08-03  Paul Eggert  <eggert@twinsun.com>
27803
27804         * lib/stdbool_.h (_Bool): Make it signed char, instead of
27805         an enum type, so that it's guaranteed to promote to int.  See:
27806         <http://mail.gnu.org/archive/html/bug-gnulib/2003-07/msg00124.html>
27807
27808 2003-08-03  Karl Berry  <karl@gnu.org>
27809
27810         * config/depcomp: update from automake.
27811
27812 2003-07-31  Paul Eggert  <eggert@twinsun.com>
27813
27814         * lib/strerror.c: Include config.h, limits.h.  Declare sprintf.
27815         (strerror): Don't assume that a printable int fits in 14 bytes.
27816
27817 2003-07-31  Bruno Haible  <bruno@clisp.org>
27818
27819         * modules/getpass-gnu: New file.
27820         * MODULES.html.sh (func_all_modules): Add getpass-gnu.
27821
27822 2003-07-31  Bruno Haible  <bruno@clisp.org>
27823
27824         * m4/getpass.m4 (gl_FUNC_GETPASS_GNU): New macro.
27825
27826 2003-07-24  Karl Berry  <karl@gnu.org>
27827
27828         * config/missing: update from automake.
27829
27830 2003-07-24  Derek Robert Price  <derek@ximbiot.com>
27831             Bruno Haible  <bruno@clisp.org>
27832
27833         * lib/getline.h (getline, getdelim): Change return type to ssize_t.
27834         * lib/getline.c (getline, getdelim): Likewise.
27835         Remove _GNU_SOURCE define; now it's defined in config.h through
27836         m4/getline.m4.
27837
27838 2003-07-23  Karl Berry  <karl@gnu.org>
27839
27840         * config/config.sub: update from prep.
27841
27842 2003-07-22  Paul Eggert  <eggert@twinsun.com>
27843
27844         * modules/xalloc (Depends-on): Add exitfail.
27845         * modules/xmemcoll: Likewise.
27846
27847 2003-07-22  Paul Eggert  <eggert@twinsun.com>
27848
27849         * lib/xalloc.h (XCALLOC, XREALLOC, CCLONE): Fix under- and
27850         over-parenthesization in macros.
27851
27852         Sync with coreutils.
27853
27854         * lib/xalloc.h (XMALLOC, XCALLOC, XREALLOC): Remove casts not
27855         required by C99.
27856
27857         Use `exit_failure' for xalloc and xmemcoll instead of their own
27858         private exit-failure variables.
27859         * lib/xalloc.h (xalloc_exit_failure): Remove.
27860         * lib/xmalloc.c: Likewise.  Include exitfail.h.
27861         (xalloc_die): Use exit_failure instead of xalloc_exit_failure.
27862         * lib/xmemcoll.h (xmemcoll_exit_failure): Remove.
27863         * lib/xmemcoll.c: Likewise.  Include exitfail.h.
27864         (xmemcoll): Use exit_failure instead of xalloc_exit_failure.
27865
27866 2003-07-20  Jim Meyering  <jim@meyering.net>
27867
27868         * modules/closeout (Depends-on): Add exitfail.
27869         Suggestion from Bruno Haible.
27870
27871 2003-07-19  Karl Berry  <karl@gnu.org>
27872
27873         * config/config.sub: update from prep.
27874
27875 2003-07-18  Paul Eggert  <eggert@twinsun.com>
27876
27877         * lib/closeout.h (close_stdout_set_status, close_stdout_status):
27878         Remove.
27879         * lib/closeout.c: Likewise.  Include "closeout.h" right after config.h,
27880         to test that it can stand by itself.  Include "exitfail.h".
27881         Clients should set exit_failure instead.
27882         (EXIT_FAILURE): Remove; no longer needed.  Do not include <stdlib.h>.
27883
27884 2003-07-18  Bruno Haible  <bruno@clisp.org>
27885
27886         * modules/getndelim2: New file.
27887         * modules/getline: Share files with module getndelim2.
27888         * modules/getnline: Depend on getndelim2 instead of sharing files with
27889         it. Add getnline.c to lib_SOURCES.
27890         * MODULES.html.sh (func_all_modules): Add getndelim2.
27891
27892 2003-07-18  Bruno Haible  <bruno@clisp.org>
27893
27894         * m4/getndelim2.m4: New file.
27895         * m4/getline.m4 (AM_FUNC_GETLINE): Add AC_LIBOBJ of getndelim2.c and
27896         invoke gl_PREREQ_GETNDELIM2.
27897         (gl_PREREQ_GETLINE): Drop AC_HEADER_STDC, now done by
27898         gl_PREREQ_GETNDELIM2.
27899         * m4/getnline.m4 (gl_GETNLINE): Drop AC_HEADER_STDC, now done by
27900         gl_GETNDELIM2.
27901
27902 2003-07-18  Bruno Haible  <bruno@clisp.org>
27903
27904         * lib/getndelim2.h: New file.
27905         * lib/getndelim2.c: Make into a module of its own. Include config.h,
27906         getndelim2.h.
27907         (getndelim2): Make non-static. Change return type to ssize_t.
27908         * lib/getline.h: Change argument names.
27909         * lib/getline.c: Include getndelim2.h instead of getndelim2.c.
27910         * lib/getnline.c: Include getndelim2.h.
27911
27912 2003-07-18  Andreas Schwab  <schwab@suse.de>
27913
27914         * lib/memcoll.c (memcoll) [!HAVE_STRCOLL]: Clear errno.
27915
27916 2003-07-17  Karl Berry  <karl@gnu.org>
27917
27918         * config/config.sub: update from prep.
27919
27920 2003-07-17  Bruno Haible  <bruno@clisp.org>
27921
27922         * modules/getnline: New file.
27923         * modules/getline: Add lib/getndelim2.c to source file list.
27924         * MODULES.html.sh (func_all_modules): Add getnline.
27925
27926 2003-07-17  Bruno Haible  <bruno@clisp.org>
27927
27928         * m4/getnline.m4: New file.
27929
27930 2003-07-17  Bruno Haible  <bruno@clisp.org>
27931
27932         * m4/Makefile.am.in: Remove file.
27933         * m4/Makefile.am: Remove file.
27934         * m4/Makefile.in: Remove file.
27935
27936 2003-07-17  Bruno Haible  <bruno@clisp.org>
27937
27938         * lib/getnline.h: New file.
27939         * lib/getnline.c: New file.
27940         * lib/getndelim2.c: New file, extracted from getline.c.
27941         (getndelim2): Renamed from getdelim2, with added nmax argument.
27942         * lib/getline.c: Include getndelim2.c.
27943         (getdelim2): Moved out to getndelim2.c.
27944         (getline, getdelim): Update.
27945
27946 2003-07-17  Bruno Haible  <bruno@clisp.org>
27947
27948         * lib/Makefile.am: Remove file.
27949         * lib/Makefile.in: Remove file.
27950
27951 2003-07-17  Bruno Haible  <bruno@clisp.org>
27952
27953         * configure.in: Remove file.
27954         * Makefile.in: Remove file.
27955
27956 2003-07-17  Bruno Haible  <bruno@clisp.org>
27957
27958         * MODULES.html.sh: Put the </BODY> right before </HTML>.
27959
27960 2003-07-16  Karl Berry  <karl@gnu.org>
27961
27962         * config/srclist-update: was running fixlicense twice, which caused
27963                 texinfo.tex to be nullified for some reason.  Simplify,
27964                 $gplsrc is no longer needed as far as I can see?
27965
27966 2003-07-16  Jim Meyering  <jim@meyering.net>
27967
27968         * modules/save-cwd: Depend on xgetcwd.  From Derek Price.
27969
27970 2003-07-15  Paul Eggert  <eggert@twinsun.com>
27971
27972         * config/srclist.txt: Get the following files from gettext-runtime/intl
27973         instead: config.charset, localcharset.c, localcharset.h, ref-add.sin,
27974         ref-del.sin.  From Bruno Haible.
27975         * config/srclist-update (fixfile): Change grep pattern again, since the
27976         previous fix didn't work (there was another trailing $).  Use
27977         '[$]' to escape the $s.
27978
27979 2003-07-15  Karl Berry  <karl@gnu.org>
27980
27981         * lib/vasnprintf.c: update from gettext.
27982
27983 2003-07-15  Karl Berry  <karl@gnu.org>
27984
27985         * config/srclist-update (fixfile): Change grep pattern, since 'Id'
27986         gets expanded when surrounded by '$'.
27987
27988 2003-07-15  Jim Meyering  <jim@meyering.net>
27989
27990         * modules/save-cwd: Don't depend on error.  From Derek Price.
27991
27992 2003-07-15  Jim Meyering  <jim@meyering.net>
27993
27994         * lib/makepath.c (make_path): Enclose diagnostic in _(...).
27995
27996 2003-07-14  Simon Josefsson  <jas@extundo.com>
27997
27998         * modules/mempcpy: New file.
27999         * MODULES.html.sh (func_all_modules): Add mempcpy.
28000
28001 2003-07-14  Simon Josefsson  <jas@extundo.com>
28002
28003         * m4/mempcpy.m4: New file.
28004
28005 2003-07-14  Simon Josefsson  <jas@extundo.com>
28006
28007         * lib/mempcpy.h: New file.
28008         * lib/mempcpy.c: New file.
28009
28010 2003-07-14  Paul Eggert  <eggert@twinsun.com>
28011
28012         * modules/getdate, modules/posixtm: Depend on mktime.
28013
28014 2003-07-14  Paul Eggert  <eggert@twinsun.com>
28015
28016         * lib/ceill.c, expl.c, floorl.c, frexpl.c, ldexpl.c, mathl.h,
28017         sincosl.c, sqrtl.c, trigl.c, trigl.h, poll.c, poll_.h, mkstemp.c,
28018         unicodeio.c, unicodeio.h, unlocked-io.h:
28019         Switch from LGPL to GPL.
28020
28021 2003-07-14  Paul Eggert  <eggert@twinsun.com>
28022
28023         * lib/asnprintf.c, asprintf.c, config.charset, gettext.h,
28024         localcharset.c, localcharset.h, mkdtemp.c, printf-args.c,
28025         printf-args.h, printf-parse.c, printf-parse.h, ref-add.sin,
28026         ref-del.sin, setenv.c, unsetenv.c, vasnprintf.c, vasnprintf.h,
28027         vasprintf.c, vasprintf.h: Regenerate.  These files are now being
28028         updated automatically by ../config/srclist-update.  This changes
28029         their license from LPGL to GPL.
28030
28031 2003-07-14  Paul Eggert  <eggert@twinsun.com>
28032
28033         * config/srclist.txt: Add tons more gettext files.  $GETTEXT is now
28034         assumed to refer to the root of the most recent stable gettext version.
28035         * config/srclistvars.sh: Add defaults for eggert.
28036         * config/srclist-update: Convert LGPL to GPL in shell scripts, too.
28037         Match "This program" as well as "The program".  This is needed
28038         for gettext.
28039
28040 2003-07-14  Jim Meyering  <jim@meyering.net>
28041
28042         Don't emit diagnostics.  Let callers do that.
28043         * lib/save-cwd.c: Don't include "error.h".
28044         (save_cwd): Don't call error.  Ensure that errno is valid
28045         when returning nonzero.
28046
28047         * lib/save-cwd.h (restore_cwd): Update prototype.
28048         * lib/save-cwd.c (restore_cwd): Remove two parameters.
28049         Simplify.  Don't call error upon failure.  Let callers do that.
28050         (save_cwd): Mention that Irix 5.3 has the same problem as SunOS 4
28051         when auditing is enabled.  But don't bother updating the #if.
28052
28053 2003-07-11  Alexandre Duret-Lutz  <adl@gnu.org>
28054
28055         * lib/obstack.h (__INT_TO_PTR): Revert change of 2003-03-13;
28056         it breaks C++ compilation.
28057         [!__GNUC__ || !__STDC__] (obstack_finish): Cast result to void*.
28058
28059 2003-07-10  Simon Josefsson  <jas@extundo.com>
28060
28061         * modules/strchrnul (Makefile.am): Add strchrnul.h.
28062
28063 2003-07-10  Jim Meyering  <jim@meyering.net>
28064
28065         * m4/clock_time.m4: Remove trailing blank.
28066         * m4/intmax_t.m4: Likewise.
28067
28068 2003-07-10  Jim Meyering  <jim@meyering.net>
28069
28070         * lib/vasnprintf.c: Remove trailing blanks.
28071         Make cpp indentation consistent.
28072
28073 2003-07-09  Paul Eggert  <eggert@twinsun.com>
28074
28075         * lib/alloca_.h, euidaccess.c, getpass.c, memrchr.c, obstack.h,
28076         posixver.c, strftime.c, strnlen.c, strverscmp.c:
28077         Switch from LGPL to GPL.
28078
28079 2003-07-09  Paul Eggert  <eggert@twinsun.com>
28080
28081         * config/srclist.txt: Sort sublists.  Add
28082         $LIBCSRC/sysdeps/generic/strtoul.c. In comments, add more libc files
28083         that differ from gnulib for one reason or another; we'd like this list
28084         to be smaller but for now let's document what we have.
28085
28086 2003-07-08  Paul Eggert  <eggert@twinsun.com>
28087
28088         * config/srclist-update: Port to POSIX 1003.1-2001 hosts by avoiding
28089         the use of GNU extensions.  Change "x=`eval echo $x`" to the shorter
28090         and sweeter "eval x=$x".
28091         * config/srclist.txt: Get lib/argp* from glibc.
28092
28093 2003-07-07  Paul Eggert  <eggert@twinsun.com>
28094
28095         * lib/mktime.c: Fix some boundary cases and remove need for floating
28096         point.
28097
28098         Issue a compile-time diagnostic if time_t is floating point, or if
28099         two's complement arithmetic is not in effect, or if arithmetic
28100         right shift does not propagate the sign.  These assumptions were
28101         all in the original code but they weren't checked.
28102
28103         (TIME_T_MIDPOINT, verify): New macros.
28104         (__isleap): Remove; it has integer overflow problems.
28105         (leapyear): New function, without those problems.
28106         (ydhms_tm_diff): Remove; splitting into two parts.
28107         (ydhms_diff): New function, containing the arithmetic part of
28108         the old ydhms_tm_diff function.  Issue a compile-time
28109         diagnostic if we are not using C99 integer division.
28110         Avoid casts when possible.
28111         (guess_time_tm): New function, containing the checking part of
28112         the old ydhms_tm_diff function.  Return the new value, rather than
28113         the difference between it and the old.  Accept a new argument T
28114         so that *T specifies the old value.  Check for overflow in the result.
28115
28116         (__mktime_internal): Use a time_t offset, not a long int offset.
28117         This undoes the 2003-06-04 change, which is no longer needed now
28118         that we have better overflow checking.
28119         (localtime_offset): Likewise.
28120
28121         (__mktime_internal): Avoid harmful overflow on hosts where time_t
28122         and long are 64-bit but int is only 32-bit.
28123         (ydhms_diff): Use long int to store year1 and yday1.
28124         Issue a compile-time diagnostic if long int is not wide enough.
28125
28126         (__mktime_internal): Use long int to store adjusted year and yday.
28127         Use plain C rather than preprocessor commands, if that doesn't
28128         affect efficiency.
28129         Check for overflow (and try to repair) after each probe
28130         rather than checking only at the very end.  This avoids some bugs
28131         (e.g., southern hemisphere, behind GMT, and GMT offset at minimum time
28132         does not equal GMT offset at maximum time).
28133         Use integer to check for overflow rather than floating point; this
28134         is more portable to non-IEEE hosts, and is a tad faster.
28135         When we detect that we are oscillating between two values,
28136         don't check whether tm_isdst has the requested value, since
28137         we already know the answer.  When tm_isdst has the wrong value,
28138         use a different heuristic to find the right one, based on the
28139         extreme values actually observed in practice in tz2003a,
28140         rather than the (overly optimistic) "previous 3 calendar quarters".
28141
28142         (not_equal_tm, print_tm, check_result): Use "const T" rather than
28143         "T const" to accommodate glibc style.
28144         (check_result): Use less-confusing report format.  "long" -> "long int.
28145         (main): Likewise.
28146         Don't loop if the iteration overflows time_t.
28147         Allow a negative step in the iteration.
28148
28149 2003-07-06  Karl Berry  <karl@gnu.org>
28150
28151         * config/depcomp: update from automake.
28152         * config/config.sub: update from prep.
28153
28154 2003-07-03  Karl Berry  <karl@gnu.org>
28155
28156         * config/config.guess: update from prep.
28157
28158 2003-07-01  Paul Eggert  <eggert@twinsun.com>
28159
28160         * m4/xreadlink.m4 (gl_XREADLINK): Don't check for sys/types.h, since
28161         xreadlink.c now includes it unconditionally.
28162
28163 2003-07-01  Paul Eggert  <eggert@twinsun.com>
28164
28165         * lib/xreadlink.c: Include <sys/types.h> unconditionally, instead of
28166         having it depend on HAVE_SYS_TYPES_H.
28167
28168 2003-07-01  Bruno Haible  <bruno@clisp.org>
28169
28170         * m4/ssize_t.m4 (gt_TYPE_SSIZE_T): Don't include <unistd.h>.
28171         <sys/types.h> should be sufficient.
28172         Reported by Paul Eggert.
28173
28174 2003-06-26  Karl Berry  <karl@gnu.org>
28175
28176         * config/depcomp: update from automake.
28177
28178 2003-06-26  Bruno Haible  <bruno@clisp.org>
28179
28180         * modules/human: Depend on module stdbool.
28181
28182 2003-06-25  Bruno Haible  <bruno@clisp.org>
28183
28184         * modules/readlink: New file.
28185         * modules/xreadlink: Depend on it.
28186         * MODULES.html.sh (func_all_modules): Add readlink.
28187
28188 2003-06-25  Bruno Haible  <bruno@clisp.org>
28189
28190         * m4/readlink.m4: New file.
28191
28192 2003-06-25  Bruno Haible  <bruno@clisp.org>
28193
28194         * lib/readlink.c: New file.
28195
28196 2003-06-22  Karl Berry  <karl@gnu.org>
28197
28198         * config/srclist.txt: update mkinstalldirs from automake.
28199         * config/mkinstalldirs: update.
28200
28201 2003-06-22  Bruno Haible  <bruno@clisp.org>
28202
28203         Portability to mingw32.
28204         * m4/ssize_t.m4: New file, from GNU gettext.
28205         * m4/safe-read.m4 (gl_PREREQ_SAFE_READ): Require gt_TYPE_SSIZE_T.
28206         * m4/xreadlink.m4 (gl_XREADLINK): Require gt_TYPE_SSIZE_T.
28207
28208 2003-06-22  Bruno Haible  <bruno@clisp.org>
28209
28210         * modules/safe-read: Add m4/ssize_t.m4.
28211         * modules/xreadlink: Add m4/ssize_t.m4.
28212
28213 2003-06-20  Bruno Haible  <bruno@clisp.org>
28214
28215         Assume C89, so PARAMS isn't needed.
28216         * lib/unicodeio.h (PARAMS): Remove.
28217         * lib/unicodeio.c: Don't use PARAMS.
28218
28219 2003-06-18  Karl Berry  <karl@gnu.org>
28220
28221         * config/config.{guess,sub}: update from prep.
28222
28223 2003-06-18  Jim Meyering  <jim@meyering.net>
28224
28225         Merge changes from coreutils.
28226         * lib/readutmp.c: Include <string.h> and <stdlib.h> unconditionally.
28227         Remove explicit declarations of xmalloc and realloc.
28228         Include xalloc.h.
28229         (read_utmp): Remove anachronistic cast of xmalloc.
28230
28231 2003-06-17  Paul Eggert  <eggert@twinsun.com>
28232
28233         Assume C89, so PARAMS isn't needed.
28234         * lib/backupfile.h (PARAMS): Remove.  All uses removed.
28235         * lib/closeout.h, lib/dirname.h, lib/filemode.h, lib/fsusage.h,
28236         lib/getdate.h, lib/getline.h, lib/group-member.h, lib/hard-locale.h,
28237         lib/hash.h, lib/linebuffer.h, lib/long-options.h, lib/makepath.h,
28238         lib/memcasecmp.h, lib/memcoll.h, lib/modechange.h, lib/mountlist.h,
28239         lib/path-concat.h, lib/physmem.h, lib/posixtm.h, lib/quote.h,
28240         lib/readutmp.h, lib/same.h, lib/save-cwd.h, lib/savedir.h,
28241         lib/stdio-safer.h, lib/strtoimax.c, lib/strverscmp.h,
28242         lib/unistd-safer.h, lib/version-etc.h, lib/xalloc.h, lib/xreadlink.h,
28243         lib/xstrtod.h, lib/xstrtol.h: Likewise.
28244         * lib/filemode.h, lib/hard-locale.h, lib/memcoll.h, lib/modechange.h,
28245         lib/physmem.h, lib/same.h, lib/strverscmp.h: Do not include config.h;
28246         no longer needed. Anyway, config.h should always be included before any
28247         other file.
28248
28249 2003-06-11  Simon Josefsson  <jas@extundo.com>
28250
28251         * modules/sysexits: New file.
28252         * MODULES.html.sh (func_all_modules): Add sysexits.
28253
28254 2003-06-11  Simon Josefsson  <jas@extundo.com>
28255
28256         * lib/sysexit_.h: New file.
28257
28258 2003-06-11  Derek Price  <derek@ximbiot.com>
28259
28260         * lib/stat.c [LSTAT]: Compile/use slash_aware_lstat only if it is
28261         necessary.
28262
28263 2003-06-11  Bruno Haible  <bruno@clisp.org>
28264
28265         * m4/sysexits.m4: New file.
28266
28267 2003-06-10  Simon Josefsson  <jas@extundo.com>
28268
28269         * lib/argp.h: New file, from glibc.
28270         * lib/argp-ba.c: New file, from glibc.
28271         * lib/argp-eexst.c: New file, from glibc.
28272         * lib/argp-fmtstream.c: New file, from glibc.
28273         * lib/argp-fmtstream.h: New file, from glibc.
28274         * lib/argp-fs-xinl.c: New file, from glibc.
28275         * lib/argp-help.c: New file, from glibc.
28276         * lib/argp-namefrob.h: New file, from glibc.
28277         * lib/argp-parse.c: New file, from glibc.
28278         * lib/argp-pv.c: New file, from glibc.
28279         * lib/argp-pvh.c: New file, from glibc.
28280         * lib/argp-xinl.c: New file, from glibc.
28281
28282 2003-06-10  Simon Josefsson  <jas@extundo.com>
28283
28284         * modules/strchrnul: New file.
28285
28286 2003-06-10  Simon Josefsson  <jas@extundo.com>
28287
28288         * modules/argp: New file.
28289
28290 2003-06-10  Simon Josefsson  <jas@extundo.com>
28291
28292         * m4/strchrnul.m4: New file.
28293
28294 2003-06-10  Simon Josefsson  <jas@extundo.com>
28295
28296         * lib/strchrnul.h: New file.
28297         * lib/strchrnul.c: New file.
28298
28299 2003-06-10  Bruno Haible  <bruno@clisp.org>
28300
28301         * MODULES.html.sh (func_all_modules): Add strchrnul and argp.
28302
28303 2003-06-07  Karl Berry  <karl@gnu.org>
28304
28305         * config/config.{guess,sub}: update from prep.
28306
28307 2003-06-07  Jim Meyering  <jim@meyering.net>
28308
28309         * modules/strtod: Use $(...) notation, not @...@ for
28310         AC_REPLACE'd variables.
28311         * modules/localcharset: Likewise.
28312
28313 2003-06-07  Jim Meyering  <jim@meyering.net>
28314
28315         * lib/readtokens.h: Put `Free Software Foundation, Inc.'
28316         in place of my name in the copyright comment.
28317         Remove definition and uses of __P.
28318
28319         From coreutils.
28320         * lib/stat.c: Don't declare xmalloc explicitly.
28321         Instead, include "xalloc.h".
28322         * lib/readtokens.c (readtokens): Remove anachronistic casts of xmalloc,
28323         xrealloc, and xcalloc return values.
28324         * lib/xgetcwd.c (xgetcwd): Include "xgetcwd.h".
28325         Improve comment.
28326         * lib/xgetcwd.h: Remove definition/uses of PARAMS.
28327
28328 2003-06-07  Bruno Haible  <bruno@clisp.org>
28329
28330         * modules/poll (Makefile.am): Use explicit creation rule for poll.h, to
28331         avoid AC_CONFIG_LINKS.
28332         * modules/fnmatch (Makefile.am): Use explicit creation rule for
28333         fnmatch.h, to avoid AC_CONFIG_LINKS.
28334         * modules/alloca (Makefile.am): Make creation of alloca.h Ctrl-C safe.
28335
28336 2003-06-07  Bruno Haible  <bruno@clisp.org>
28337
28338         * m4/fnmatch.m4 (_AC_LIBOBJ_FNMATCH, gl_FUNC_FNMATCH_POSIX,
28339         gl_FUNC_FNMATCH_GNU): Set FNMATCH_H instead of invoking
28340         AC_CONFIG_LINKS. Needed to allow for a different name of the lib
28341         directory.
28342         * m4/poll.m4 (gl_FUNC_POLL): Set POLL_H instead of invoking
28343         AC_CONFIG_LINKS. Needed to allow for a different name of the lib
28344         directory.
28345
28346 2003-06-06  Jim Meyering  <jim@meyering.net>
28347
28348         Merge from coreutils.
28349         * lib/same.c: (same_name): Declare *_basename locals to be `const'.
28350         Consolidate declarations and initializations of *_base* locals.
28351
28352         Merge from coreutils.
28353         This avoids a core dump on systems without GNU putenv,
28354         when running `env -u SOME_ALREADY_UNSET_VARIABLE'.
28355         * lib/putenv.c (__set_errno, LOCK, UNLOCK): Define.
28356         (unsetenv): New static function, from GNU libc.
28357         (rpl_putenv): Use it.
28358
28359         * lib/modechange.c: Remove trailing blanks.
28360
28361         Merge from coreutils.
28362         * lib/fsusage.c: Remove declaration of statfs.
28363         It conflicted with one from OSF/1 5.1 in <sys/mount.h>.
28364
28365         * lib/posixtm.c: Include <stdbool.h> unconditionally.
28366
28367 2003-06-06  Jim Meyering  <jim@meyering.net>
28368
28369         * lib/stdbool_.h: Renamed from stdbool.h.in.
28370
28371 2003-06-06  Jim Meyering  <jim@meyering.net>
28372             Bruno Haible  <bruno@clisp.org>
28373
28374         * modules/stdbool: Reflect renaming: stdbool.h.in -> stdbool_.h.
28375         Adjust Makefile.am snippet not to redirect directly to target.
28376         Use $(STDBOOL_H) notation, not @STDBOOL_H@ for AC_REPLACE'd variables.
28377
28378 2003-06-05  Paul Eggert  <eggert@twinsun.com>
28379
28380         * lib/mktime.c (__mktime_internal): When resolving a tm_isdst
28381         mismatch, look in future quarters as well as past.  This fixes a
28382         bug when processing fall-backwards gaps immediately after a long
28383         period of daylight-saving time.
28384
28385         * lib/mktime.c: Assume freestanding C89 or better.
28386         (HAVE_LIMITS_H): Remove.  Assume it's 1.
28387         (__P): Remove; not used.
28388         (CHAR_BIT, INT_MIN, INT_MAX): Remove; <limits.h> defines them.
28389         (mktime, not_equal_tm, print_tm, check_result,
28390         main): Use prototypes.  Use const * where appropriate.
28391         (main): Fix typo in testing code that uncovered by above changes.
28392         (Local Variables): Remove -DHAVE_LIMITS_H from compile-command.
28393
28394 2003-06-04  Paul Eggert  <eggert@twinsun.com>
28395
28396         * m4/human.m4 (gl_HUMAN): Require AM_STDBOOL_H.  Check for
28397         locale.h, localeconv.  This merges changes from coreutils.
28398
28399         * m4/mktime.m4 (AC_FUNC_MKTIME): New macro, taken from Autoconf CVS.
28400         It can be removed after the next Autoconf is released.
28401         * m4/exclude.m4 (gl_EXCLUDE): Don't check for sys/types.h; no loner
28402         needed.
28403
28404 2003-06-04  Paul Eggert  <eggert@twinsun.com>
28405
28406         * lib/mktime.c: Fix Debian bug 177940
28407         <http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=177940>.
28408         (localtime_offset): Now long int, not time_t, because we want it
28409         to be guaranteed to be signed.  All uses changed.
28410         (__mktime_internal): If overflow would occur when adding offset,
28411         don't add it.
28412
28413         Merge 'human' changes from coreutils.  Rewrite to support
28414         locale-specific notations like thousands separators.
28415         * lib/human.c: Simplify authorship notice.
28416         Include human.h immediately after config.h.
28417         <sys/types.h>, <stdio.h>: Do not include; no longer needed.
28418         <limits.h>: Do not include, since human.h does.
28419         (SIZE_MAX, UINTMAX_MAX): New macros.
28420         <strings.h>: Include if HAVE_STRINGS_H, not if !HAVE_STRING_H.
28421         <locale.h>: Include if HAVE_LOCALE_H and HAVE_LOCALECONV.
28422         (HUMAN_READABLE_SUFFIX_LENGTH_MAX): New macro.
28423         (power_letter): Renamed from suffixes.
28424         (generate_suffix_backwards): Remove.
28425         (adjust_value): Now takes int style (because of human.h changes)
28426         and long double value (for greater precision on some platforms).
28427         (group_number): New function.
28428         (human_readable): Use it.  Use integer options, not enum.
28429         Put the options before the sizes in the arg list.
28430         Support all the new options.
28431         The old human_readable function has been removed;
28432         use inttostr.h instead.
28433         (human_readable, default_block_size, humblock):
28434         Use uintmax_t, not int, for block sizes.
28435         (human_readable_inexact, block_size_types): Remove.
28436         (block_size_opts): New constant.
28437         (human_options): Renamed from human_block_size, with new signature
28438         that allows block sizes up to UINTMAX_MAX.  All callers changed.
28439         * lib/human.h: Add copyright and authorship notice.
28440         Include <limits.h> and <stdbool.h> unconditionally.
28441         (PARAMS): Remove.  All uses removed.
28442         (LONGEST_HUMAN_READABLE): Add support for thousands separator.
28443         (enum human_inexact_style): Remove tag; now a nameless enum.
28444         (human_floor, human_ceiling, human_round_to_even): Now have
28445         values 2, 0, 1 rather than -1, 1, 0.
28446         (human_group_digits, human_suppress_point_zero, human_autoscale,
28447         human_base_1024, human_SI, human_B): New constants.
28448         (human_readable_inexact, human_block_size): Remove.
28449         (human_readable): Size args are now uintmax_t, not int.
28450         (human_options): New decl.
28451
28452         * lib/exclude.c: (new_exclude, add_exclude): Remove casts that are
28453         unnecessary now that we assume C89 or better.  This change
28454         imported from coreutils.
28455
28456         * lib/mktime.c (__mktime_internal): Do not reject negative timestamps
28457         arbitrarily.  This is the same patch as 2003-05-28, but it got lost
28458         in the 2003-05-30 sync from glibc.
28459
28460         .h files should stand alone, but we shouldn't include <sys/types.h>
28461         if we can get away with just <stddef.h>.
28462
28463         * lib/__fpending.h, addext.c, backupfile.c, exclude.c, getline.c,
28464         malloc.c, putenv.c, realloc.c, strcasecmp.c: Include <stddef.h>
28465         rather than <sys/types.h>, as we merely need size_t.
28466         * lib/dirname.h, memcoll.h, xalloc.h, xmemcoll.h: Include <stddef.h>,
28467         to get size_t.
28468         * lib/hash.h, linebuffer.h, readtokens.h, stdio-safer.h, version-etc.h:
28469         Include <stdio.h>, to get FILE.
28470         * lib/memcasecmp.c: Don't include <sys/types.h>, as we can assume
28471         memcasecmp.h has included <stddef.h> and all we need is size_t.
28472         * lib/memcoll.c: Include "memcoll.h", which gets us size_t and checks
28473         our interface, instead of including <sys/types.h>
28474
28475 2003-06-04  Paul Eggert  <eggert@twinsun.com>
28476
28477         * config/srclist.txt ($LIBCSRC/time/mktime.c lib gpl): Comment out for
28478         now, as glibc mktime is buggy on non-glibc systems.
28479
28480 2003-06-03  Karl Berry  <karl@gnu.org>
28481
28482         * config/config.sub: update from prep.
28483
28484 2003-06-02  Paul Eggert  <eggert@twinsun.com>
28485
28486         [from coreutils]
28487         Fix some minor time-related bugs with POSIX time arguments.
28488         Some valid time stamps were being rejected (notably -1, and
28489         time stamps before 1900 on 64-bit hosts).  And some invalid
28490         time stamps were being accepted, e.g. September 31.
28491
28492         * lib/posixtm.h (posixtime): Return bool instead of time_t, so
28493         that we can return (time_t) -1 successfully.
28494         * lib/posixtm.c: Likewise.
28495         [HAVE_STDBOOL_H]: Include <stdbool.h>.
28496         (bool, false, true) [!HAVE_STDBOOL_H]: New type.
28497         (t): Remove static var.
28498         (year, posix_time_parse): Now takes struct tm * arg to modify, instead
28499         of static var.  All uses changed.
28500         (year): Do not reject years before 1900; they can occur with
28501         64-bit time_t.
28502         (posix_time_parse): Do not check for out-of-range components;
28503         that is now the caller's responsibility, since our checks were
28504         only approximations.
28505         (posixtime): Use mktime to check for out-of-range components,
28506         since it knows them exactly.
28507         If mktime returns (time_t) -1, check whether an error actually occurred
28508         by invoking localtime on -1.
28509         (main) [TEST_POSIXTIME]: Check for input data errors, and report
28510         posixtime failures better.
28511         Improve the test data (in comments only).
28512
28513 2003-06-02  Karl Berry  <karl@gnu.org>
28514
28515         * config/mkinstalldirs (version): new variable.
28516         (--version): new option.
28517         (usage): improve message.
28518
28519 2003-05-30  Karl Berry  <karl@gnu.org>
28520
28521         * lib/mktime.c: update from libc.
28522
28523 2003-05-30  Bruno Haible  <bruno@clisp.org>
28524
28525         * modules/gettext: Add files m4/nls.m4 and m4/po.m4.
28526         * config/config.rpath: Upgrade to gettext-0.12.1.
28527
28528 2003-05-30  Bruno Haible  <bruno@clisp.org>
28529
28530         * m4/gettext.m4: Upgrade to gettext-0.12.1.
28531         * m4/nls.m4: New file, from gettext-0.12.1.
28532         * m4/po.m4: New file, from gettext-0.12.1.
28533         * m4/progtest.m4: Upgrade to gettext-0.12.1.
28534
28535 2003-05-30  Bruno Haible  <bruno@clisp.org>
28536
28537         * lib/config.charset: Upgrade to gettext-0.12.1 and libiconv-1.9.1.
28538         * lib/localcharset.h: Likewise.
28539         * lib/localcharset.c: Likewise.
28540
28541 2003-05-29  Karl Berry  <karl@gnu.org>
28542
28543         * config/config.rpath: update from gettext.
28544
28545 2003-05-28  Paul Eggert  <eggert@twinsun.com>
28546
28547         Assume the headers required for C89 freestanding compilers.
28548         * m4/backupfile.m4 (gl_BACKUPFILE): Don't check for limits.h.
28549         * m4/fsusage.m4 (gl_PREREQ_FSUSAGE_EXTRA): Likewise.
28550         * m4/human.m4 (gl_HUMAN): Likewise.
28551         * m4/pathmax.m4 (gl_PATHMAX): Likewise.
28552         * m4/rpmatch.m4 (gl_FUNC_RPMATCH): Likewise.
28553         * m4/userspec.m4 (gl_USERSPEC): Likewise.
28554         * m4/xreadlink.m4 (gl_XREADLINK): Likewise.
28555         * m4/xstrtol.m4 (gl_PREREQ_XSTRTOL): Likewise.
28556         * m4/quote.m4 (gl_QUOTE): Don't check for stddef.h.
28557
28558 2003-05-28  Paul Eggert  <eggert@twinsun.com>
28559
28560         Assume the headers required for C89 freestanding compilers.
28561         * lib/addext.c, lib/backupfile.c, lib/fsusage.c, lib/human.c,
28562         lib/pathmax.h, lib/rpmatch.c, lib/userspec.c, lib/xreadlink.c,
28563         lib/xstrtol.c: Include <limits.h> without checking for HAVE_LIMITS_H.
28564         * lib/backupfile.c, lib/fsusage.c, lib/hash.c, lib/human.c,
28565         lib/safe-read.c, lib/userspec.c, lib/xstrtol.c (CHAR_BIT): Don't
28566         define, since <limits.h> is guaranteed to do that.
28567         * lib/fatal.c: Include <stdarg.h> without checking for __STDC__.
28568         * lib/exclude.c: Include <stdbool.h> unconditionally.
28569         * lib/tempname.c: Include <stddef.h> unconditionally.
28570         * lib/hash.c: Include <limits.h>, since we no longer define CHAR_BIT.
28571         * lib/modechange.c, rpmatch.c (NULL): Don't define, since
28572         <stddef.h> does that.
28573         * lib/quote.c: Dont include <stddef.h> or <sys/types.h>; not needed.
28574         * lib/safe-read.c (INT_MAX): Don't define, since <limits.h> does that.
28575         * lib/safe-read.c (TYPE_MINIMUM, TYPE_MAXIMUM): Remove; no longer
28576         needed.
28577         * lib/xstrtol.c: Likewise.
28578         * lib/safe-read.c: Remove TYPE_SIGNED; no longer needed.
28579         * lib/savedir.c: Include <stddef.h> instead of defining NULL.
28580
28581         * lib/addext.c (addext): Use assignment rather than cast, to avoid
28582         warnings on some platforms.
28583
28584         * lib/mktime.c (__mktime_internal): Do not reject negative timestamps
28585         arbitrarily.
28586
28587 2003-05-26  Jim Meyering  <jim@meyering.net>
28588
28589         Merge in a change from coreutils:
28590         * m4/dirfd.m4 (UTILS_FUNC_DIRFD): Test the cache variable, not one
28591         that is guaranteed to be `no'.  Use `no_such_member' to indicate
28592         that condition, rather than `-1' which is slightly misleading.
28593         Change the name of the cache variable to have the gl_ prefix.
28594         Prompted by a patch from Richard Dawe for DJGPP.
28595
28596 2003-05-24  Karl Berry  <karl@gnu.org>
28597
28598         * config/config.guess: update from prep.
28599
28600 2003-05-22  Karl Berry  <karl@gnu.org>
28601
28602         * gnulib-tool (func_usage): =LIBRARY not =libRARY in help msg.
28603
28604 2003-05-20  Karl Berry  <karl@gnu.org>
28605
28606         * config/config.guess: update from prep.
28607
28608 2003-05-18  Karl Berry  <karl@gnu.org>
28609
28610         * config/srclistvars.sh (TEXMF): use TEXMFROOT instead, since TEXMF
28611         might actually be set by the user.
28612
28613         * config/depcomp, install-sh, mdate-sh: update from automake.
28614
28615 2003-05-17  Bruno Haible  <bruno@clisp.org>
28616
28617         * m4/dirfd.m4 (UTILS_FUNC_DIRFD): Fix a quoting bug leading to an
28618         invalid expansion for AC_EGREP_CPP.
28619         * m4/strtoimax.m4 (gl_FUNC_STRTOIMAX): Likewise.
28620         * m4/strtoumax.m4 (gl_FUNC_STRTOUMAX): Likewise.
28621         Suggested by Akim Demaille <akim@epita.fr> in
28622         http://mail.gnu.org/archive/html/bug-autoconf/2003-05/threads.html
28623
28624 2003-05-12  Jim Meyering  <jim@meyering.net>
28625
28626         * lib/strftime.c (my_strftime): Let the `-' (no-pad) flag affect
28627         the space-padded-by-default conversion specifiers, %e, %k, %l.
28628
28629 2003-05-12  Bruno Haible  <bruno@clisp.org>
28630
28631         * lib/linebreak.c (iconv_string_length): Don't return -1 just because
28632         the string is longer than 4 KB.
28633
28634 2003-05-11  Karl Berry  <karl@gnu.org>
28635
28636         * config/config.{guess,sub}: update from prep.
28637
28638 2003-05-09  Bruno Haible  <bruno@clisp.org>
28639
28640         * modules/error: Add m4/strerror_r.m4 to file list.
28641
28642 2003-05-03  Bruno Haible  <bruno@clisp.org>
28643
28644         Upgrade to Unicode-4.0.
28645         * lib/linebreak.c (nonspacing_table_data): Change width of U+00AD,
28646         U+0350..U+0357, U+035D..U+035F, U+0600..U+0603, U+0610..U+0615,
28647         U+0656..U+0658, U+0A01, U+0AE2..U+0AE3, U+0CBC, U+17B4..U+17B5,
28648         U+17DD, U+1920..U+1922, U+1927..U+192B, U+1932, U+1939..U+193B
28649         from 1 to 0. Change width of U+0CBF, U+0CC6, U+180E from 0 to 1.
28650         (uc_width): Change width of U+4DC0..U+4DFF from 2 to 1. Change width
28651         of U+2A6D7..U+2F7FF, U+2FA1E..U+2FFFD, U+30000..U+3FFFD from 1 to 2.
28652         Change width of U+E0100..U+E01EF from 1 to 0.
28653
28654 2003-04-25  Jim Meyering  <jim@meyering.net>
28655
28656         * lib/copy-file.c (copy_file_preserving): Declare buf_size to be
28657         of type size_t, not int.
28658
28659 2003-04-25  Bruno Haible  <bruno@clisp.org>
28660
28661         * lib/copy-file.c: Include <stddef.h>, for size_t.
28662
28663 2003-04-21  Paul Eggert  <eggert@twinsun.com>
28664
28665         * m4/error.m4 (gl_ERROR): Do not put under dynamic conditions some
28666         code which expansion is under static control.  Patch imported from
28667         Akim Demaille's patch to Bison; see
28668         <http://mail.gnu.org/archive/html/bison-patches/2003-03/msg00057.html>.
28669
28670 2003-04-14  Bruno Haible  <bruno@clisp.org>
28671
28672         * m4/error.m4 (jm_PREREQ_ERROR): Use AC_FUNC_VPRINTF.
28673
28674 2003-04-11  Jim Meyering  <jim@meyering.net>
28675
28676         Merge changes from Coreutils.
28677
28678         2003-03-22  Jim Meyering  <jim@meyering.net>
28679
28680         * lib/strftime.c (widen): Cast alloca return value to proper type.
28681
28682         2003-01-19  Ulrich Drepper  <drepper@redhat.com>
28683
28684         From GNU libc.
28685         * lib/strftime.c (my_strftime): Handle very large width
28686         specifications for numeric values correctly.  Improve checks for
28687         overflow.
28688
28689         2003-01-19  Jim Meyering  <jim@meyering.net>
28690
28691         * lib/strftime.c (widen) [COMPILE_WIDE]: Merge nearly-identical
28692         definitions.
28693         (nl_get_alt_digit) [! defined my_strftime]: Define.
28694         (my_strftime) [_NL_CURRENT]: Merge nearly-identical uses of
28695         _nl_get_alt_digit and _nl_get_walt_digit.
28696
28697         * lib/strftime.c (my_strftime): Merge in locale-related changes from
28698         libc. These changes have no effect outside of _LIBC.
28699
28700 2003-04-10  Bruno Haible  <bruno@clisp.org>
28701
28702         * modules/findprog: New file.
28703         * MODULES.html.sh (func_all_modules): Add it.
28704
28705 2003-04-10  Bruno Haible  <bruno@clisp.org>
28706
28707         * m4/findprog.m4: New file.
28708         * m4/eaccess.m4: New file.
28709
28710 2003-04-10  Bruno Haible  <bruno@clisp.org>
28711
28712         * lib/findprog.h: New file, from GNU gettext.
28713         * lib/findprog.c: New file, from GNU gettext.
28714
28715 2003-04-05  Jim Meyering  <jim@meyering.net>
28716
28717         Merge changes from Coreutils.
28718
28719         * lib/exclude.h (PARAMS): Remove definition and uses.
28720         * lib/exclude.c: Remove uses of `PARAMS'.
28721
28722         * lib/dirname.c [TEST_DIRNAME]: Update build instructions for test.
28723         Add test-cases for DOS filenames. Declare program_name.
28724         (main): Set up program_name.  Patch by Rich Dawe.
28725
28726         * lib/mountlist.c (read_filesystem_list) [MOUNTED_VMOUNT]: Detect any
28727         error from mntctl.
28728         Use mntctl's return value to drive the entry-processing loop, since
28729         we can't rely on the value of the vmt_length member in the last
28730         entry.  On some systems doing so could result in exhausting
28731         virtual memory.  Based in part on a patch from Mike Jetzer.
28732
28733 2003-04-04  Bruno Haible  <bruno@clisp.org>
28734
28735         * modules/linebreak: New file.
28736         * MODULES.html.sh (func_all_modules): Add it.
28737
28738 2003-04-04  Bruno Haible  <bruno@clisp.org>
28739
28740         * m4/linebreak.m4: New file.
28741
28742 2003-04-04  Bruno Haible  <bruno@clisp.org>
28743
28744         * lib/linebreak.h: New file, from GNU gettext.
28745         * lib/linebreak.c: New file, from GNU gettext with slight
28746         modifications.
28747         * lib/lbrkprop.h: New file, from GNU gettext.
28748
28749 2003-04-03  Bruno Haible  <bruno@clisp.org>
28750
28751         * modules/utf8-ucs4: New file.
28752         * modules/utf16-ucs4: New file.
28753         * modules/ucs4-utf8: New file.
28754         * modules/ucs4-utf16: New file.
28755         * MODULES.html.sh (func_all_modules): Add them.
28756
28757 2003-04-03  Bruno Haible  <bruno@clisp.org>
28758
28759         * m4/utf-ucs4.m4: New file.
28760         * m4/ucs4-utf.m4: New file.
28761
28762 2003-04-03  Bruno Haible  <bruno@clisp.org>
28763
28764         * lib/utf8-ucs4.h: New file, from GNU gettext.
28765         * lib/utf16-ucs4.h: New file, from GNU gettext.
28766         * lib/ucs4-utf8.h: New file, from GNU gettext.
28767         * lib/ucs4-utf16.h: New file, from GNU gettext.
28768
28769 2003-04-02  Bruno Haible  <bruno@clisp.org>
28770
28771         * modules/binary-io: New file.
28772         * MODULES.html.sh (func_all_modules): Add it.
28773
28774 2003-04-02  Bruno Haible  <bruno@clisp.org>
28775
28776         * lib/binary-io.h: New file, from GNU gettext.
28777
28778 2003-04-01  Bruno Haible  <bruno@clisp.org>
28779
28780         * modules/pathname: New file.
28781         * MODULES.html.sh (func_all_modules): Add it.
28782
28783 2003-04-01  Bruno Haible  <bruno@clisp.org>
28784
28785         * lib/pathname.h: New file, from GNU gettext.
28786         * lib/concatpath.c: New file, from GNU gettext.
28787
28788 2003-03-30  Bruno Haible  <bruno@clisp.org>
28789
28790         * m4/copy-file.m4 (gl_COPY_FILE): Add check for chown().
28791
28792 2003-03-30  Bruno Haible  <bruno@clisp.org>
28793
28794         * lib/copy-file.c (copy_file_preserving): Don't set owner if the
28795         function chown() doesn't exist.
28796
28797 2003-03-28  Bruno Haible  <bruno@clisp.org>
28798
28799         * modules/copy-file: New file.
28800         * MODULES.html.sh (func_all_modules): Add it.
28801
28802 2003-03-28  Bruno Haible  <bruno@clisp.org>
28803
28804         * m4/copy-file.m4: New file.
28805
28806 2003-03-28  Bruno Haible  <bruno@clisp.org>
28807
28808         * lib/copy-file.h: New file, from GNU gettext.
28809         * lib/copy-file.c: New file, from GNU gettext.
28810
28811 2003-03-18  Jim Meyering  <jim@meyering.net>
28812
28813         * lib/quote.c (quote_n): Fix typo in comment.
28814
28815 2003-03-18  Bruno Haible  <bruno@clisp.org>
28816
28817         * m4/onceonly.m4: Use m4_defn instead of defn, for better error
28818         checking.
28819         * m4/onceonly_2_57.m4: Likewise.
28820
28821 2003-03-17  Bruno Haible  <bruno@clisp.org>
28822
28823         * m4/onceonly.m4: Require autoconf 2.54 or newer.
28824         (m4_quote): Remove macro.
28825         * m4/onceonly_2_57.m4: Require autoconf 2.54 or newer.
28826
28827 2003-03-14  Jim Meyering  <jim@meyering.net>
28828
28829         Merge changes from Coreutils.
28830         * lib/obstack.h (obstack_object_size): Declare temporary, __o,
28831         to be const, in order to avoid warnings.
28832         (obstack_room): Likewise.
28833         (obstack_empty_p): Likewise.
28834
28835 2003-03-14  Bruno Haible  <bruno@clisp.org>
28836
28837         * m4/onceonly_2_57.m4 (AC_CHECK_HEADERS_ONCE, AC_CHECK_FUNCS_ONCE,
28838         AC_CHECK_DECLS_ONCE): Quote AC_FOREACH variable-expansions properly.
28839
28840 2003-03-13  Paul Eggert  <eggert@twinsun.com>
28841
28842         Merge changes from Bison.
28843         * lib/obstack.h: (__INT_TO_PTR) [__STDC__]: Cast result to
28844         (void *) to avoid diagnostic with native c89 on SGI IRIX 6.5
28845         when compiling Bison 1.875's `bitset bset = obstack_alloc
28846         (bobstack, bytes);'.  Problem reported by Nelson H. F. Beebe.
28847         * lib/hash.c: Include <stdbool.h> unconditionally.
28848
28849 2003-03-13  Paul Eggert  <eggert@twinsun.com>
28850
28851         * m4/onceonly.m4 (m4_quote): New macro.
28852         (AC_CHECK_HEADERS_ONCE, AC_CHECK_FUNCS_ONCE, AC_CHECK_DECLS_ONCE):
28853         Quote AC_FOREACH variable-expansions properly.
28854
28855 2003-03-13  Paul Eggert  <eggert@twinsun.com>
28856
28857         * doc/COPYING.DOC, fdl.texi: Sync with latest FSF version.
28858
28859 2003-03-09  Paul Eggert  <eggert@twinsun.com>
28860
28861         * lib/argmatch.c (EXIT_FAILURE): Define if the system doesn't.
28862         Reported by Bruce Becker; see:
28863         http://mail.gnu.org/archive/html/bug-bison/2003-03/msg00017.html
28864
28865 2003-03-03  Paul Eggert  <eggert@twinsun.com>
28866             Bruno Haible  <bruno@clisp.org>
28867
28868         * lib/mbswidth.h: Include <wchar.h>. Needed for UnixWare 7.1.1.
28869         Reported by John Hughes, see
28870         http://mail.gnu.org/archive/html/bug-bison/2003-02/msg00030.html
28871
28872 2003-02-20  Bruno Haible  <bruno@clisp.org>
28873
28874         * MODULES.html.sh (func_all_modules): Add poll.
28875
28876 2003-02-19  Paolo Bonzini  <bonzini@gnu.org>
28877
28878         * modules/poll: New file.
28879
28880 2003-02-19  Paolo Bonzini  <bonzini@gnu.org>
28881
28882         * lib/poll_.h: New file.
28883         * lib/poll.c: New file.
28884
28885 2003-02-19  Paolo Bonzini  <bonzini@gnu.org>
28886
28887         * m4/poll.m4: New file.
28888
28889 2003-02-18  Paolo Bonzini  <bonzini@gnu.org>
28890
28891         * modules/mathl: New file.
28892
28893 2003-02-18  Paolo Bonzini  <bonzini@gnu.org>
28894
28895         * lib/mathl.h: New file.
28896         * lib/acosl.c: New file.
28897         * lib/asinl.c: New file.
28898         * lib/atanl.c: New file.
28899         * lib/ceill.c: New file.
28900         * lib/cosl.c: New file.
28901         * lib/expl.c: New file.
28902         * lib/floorl.c: New file.
28903         * lib/frexpl.c: New file.
28904         * lib/ldexpl.c: New file.
28905         * lib/logl.c: New file.
28906         * lib/sincosl.c: New file.
28907         * lib/sinl.c: New file.
28908         * lib/sqrtl.c: New file.
28909         * lib/tanl.c: New file.
28910         * lib/trigl.c: New file.
28911         * lib/trigl.h: New file.
28912
28913 2003-02-18  Paolo Bonzini  <bonzini@gnu.org>
28914
28915         * m4/mathl.m4: New file.
28916
28917 2003-02-18  Bruno Haible  <bruno@clisp.org>
28918
28919         * MODULES.html.sh (func_all_modules): Add mathl.
28920
28921 2003-02-17  Bruno Haible  <bruno@clisp.org>
28922
28923         * modules/mkdtemp: New module.
28924         * MODULES.html.sh (func_all_modules): Add it.
28925
28926 2003-02-17  Bruno Haible  <bruno@clisp.org>
28927
28928         * m4/mkdtemp.m4: New file, from GNU gettext with modifications.
28929
28930 2003-02-17  Bruno Haible  <bruno@clisp.org>
28931
28932         * lib/mkdtemp.h: New file, from GNU gettext.
28933         * lib/mkdtemp.c: New file, from GNU gettext.
28934
28935 2003-02-02  Jim Meyering  <jim@meyering.net>
28936
28937         * m4/regex.m4 (jm_INCLUDED_REGEX): Detect broken re_search in
28938         e.g. glibc-2.2.93.
28939
28940 2003-01-31  Bruno Haible  <bruno@clisp.org>
28941
28942         * m4/rename.m4 (vb_FUNC_RENAME): Add a redirection from 'rename' to
28943         'rpl_rename'.
28944         * m4/strnlen.m4 (gl_FUNC_STRNLEN): Add a redirection from 'strnlen' to
28945         'rpl_strnlen'.
28946         * m4/strtod.m4 (gl_FUNC_STRTOD): Add a redirection from 'strtod' to
28947         'rpl_strtod'.
28948         * m4/utime.m4 (jm_FUNC_UTIME): Add a redirection from 'utime' to
28949         'rpl_utime'.
28950
28951 2003-01-31  Bruno Haible  <bruno@clisp.org>
28952
28953         * lib/rename.c: #undef rename before defining rpl_rename.
28954         * lib/strnlen.c: #undef strnlen, define rpl_strnlen instead of strnlen.
28955
28956 2003-01-30  Bruno Haible  <bruno@clisp.org>
28957
28958         * modules/vasnprintf, modules/vasprintf: New modules.
28959         * MODULES.html.sh (func_all_modules): Add them.
28960
28961 2003-01-30  Bruno Haible  <bruno@clisp.org>
28962
28963         * m4/signed.m4: New file, from GNU gettext.
28964         * m4/longdouble.m4: New file, from GNU gettext.
28965         * m4/wchar_t.m4: New file, from GNU gettext.
28966         * m4/wint_t.m4: New file, from GNU gettext.
28967         * m4/vasnprintf.m4: New file.
28968         * m4/vasprintf.m4: New file.
28969
28970 2003-01-30  Bruno Haible  <bruno@clisp.org>
28971
28972         * lib/printf-args.h: New file, from GNU gettext.
28973         * lib/printf-args.c: New file, from GNU gettext.
28974         * lib/printf-parse.h: New file, from GNU gettext.
28975         * lib/printf-parse.c: New file, from GNU gettext.
28976         * lib/vasnprintf.h: New file, from GNU gettext.
28977         * lib/vasnprintf.c: New file, from GNU gettext.
28978         * lib/asnprintf.c: New file, from GNU gettext.
28979         * lib/vasprintf.h: New file, from GNU gettext with modifications.
28980         * lib/vasprintf.c: New file, from GNU gettext.
28981         * lib/asprintf.c: New file, from GNU gettext.
28982
28983 2003-01-29  Bruno Haible  <bruno@clisp.org>
28984
28985         * modules/stpncpy: New module.
28986         * MODULES.html.sh (func_all_modules): Add it.
28987
28988 2003-01-29  Bruno Haible  <bruno@clisp.org>
28989
28990         * m4/stpncpy.m4: New file.
28991
28992 2003-01-29  Bruno Haible  <bruno@clisp.org>
28993
28994         * lib/stpncpy.h: New file, from GNU gettext with modifications.
28995         * lib/stpncpy.c: New file, from GNU gettext with modifications.
28996
28997 2003-01-28  Bruno Haible  <bruno@clisp.org>
28998
28999         * modules/c-ctype: New module.
29000         * MODULES.html.sh (func_all_modules): Add it.
29001
29002 2003-01-28  Bruno Haible  <bruno@clisp.org>
29003
29004         * lib/c-ctype.h: New file, from GNU gettext, with changes suggested by
29005         Paul Eggert.
29006         * lib/c-ctype.c: New file, from GNU gettext, with changes suggested by
29007         Paul Eggert.
29008
29009 2003-01-27  Bruno Haible  <bruno@clisp.org>
29010
29011         * modules/xsetenv: New module.
29012         * MODULES.html.sh (func_all_modules): Add it.
29013
29014 2003-01-27  Bruno Haible  <bruno@clisp.org>
29015
29016         * lib/xsetenv.h: New file, from GNU gettext.
29017         * lib/xsetenv.c: New file, from GNU gettext.
29018
29019 2003-01-23  Jim Meyering  <jim@meyering.net>
29020
29021         * m4/dirfd.m4 (UTILS_FUNC_DIRFD): Correct typo: s/-1/no/ that kept this
29022         from working on systems without dirfd (at least Irix and OSF1/Tru64).
29023
29024 2003-01-23  Bruno Haible  <bruno@clisp.org>
29025
29026         * modules/minmax: New module.
29027         * MODULES.html.sh (func_all_modules): Add it.
29028
29029 2003-01-23  Bruno Haible  <bruno@clisp.org>
29030
29031         * lib/minmax.h: New file, from GNU gettext, with comments from Paul
29032         Eggert.
29033
29034 2003-01-22  Bruno Haible  <bruno@clisp.org>
29035
29036         * modules/exit: New module.
29037         * MODULES.html.sh (func_all_modules): Add it.
29038
29039 2003-01-22  Bruno Haible  <bruno@clisp.org>
29040
29041         * lib/exit.h: New file, from GNU gettext.
29042
29043 2003-01-19  Bruno Haible  <bruno@clisp.org>
29044
29045         * gnulib-tool: Recognize option --extract-maintainer.
29046         (func_get_maintainer): New function.
29047         * modules/*: Add Maintainer entry.
29048
29049 2003-01-16  Jim Meyering  <jim@meyering.net>
29050
29051         * m4/regex.m4: The `regex' struct is both input and output.
29052         Initialize it before each use.  Patch by Tim Waugh.
29053
29054 2003-01-16  Bruno Haible  <bruno@clisp.org>
29055
29056         * MODULES.html.sh: Add a table of contents. Add the module name as
29057         leftmost column. Add hyperlinks.
29058
29059 2003-01-15  Bruno Haible  <bruno@clisp.org>
29060
29061         * m4/md5.m4 (gl_MD5): Require AC_C_INLINE.
29062
29063 2003-01-15  Bruno Haible  <bruno@clisp.org>
29064
29065         * m4/longlong.m4 (jm_AC_TYPE_LONG_LONG): Also test the LL suffix.
29066         * m4/ulonglong.m4 (jm_AC_TYPE_UNSIGNED_LONG_LONG): Also test the ULL
29067         suffix.
29068
29069 2003-01-15  Bruno Haible  <bruno@clisp.org>
29070
29071         * m4/alloca.m4 (gl_FUNC_ALLOCA): Invoke AC_EGREP_CPP prerequisites.
29072
29073 2003-01-15  Bruno Haible  <bruno@clisp.org>
29074
29075         * lib/stpcpy.h (stpcpy): Use ANSI C function declarations.
29076         * lib/strcase.h (strcasecmp, strncasecmp): Likewise.
29077
29078 2003-01-14  Jim Meyering  <jim@meyering.net>
29079
29080         * lib/same.c (same_name): Tweak a comment.
29081
29082 2003-01-14  Bruno Haible  <bruno@clisp.org>
29083
29084         * lib/same.c (same_name): Reorder tests so as to avoid calling stat()
29085         when a string comparison is sufficient.
29086
29087 2003-01-14  Bruno Haible  <bruno@clisp.org>
29088
29089         * lib/readtokens.c (readtoken): Cast character to 'unsigned char', not
29090         'unsigned int'.
29091
29092 2003-01-14  Bruno Haible  <bruno@clisp.org>
29093
29094         * lib/hash-pjw.c: Add comment about low quality of this function.
29095
29096 2003-01-13  Bruno Haible  <bruno@clisp.org>
29097
29098         * modules/stpcpy: Distribute lib/stpcpy.h.
29099         * modules/setenv: Depend on alloca. Distribute lib/setenv.h.
29100
29101 2003-01-13  Bruno Haible  <bruno@clisp.org>
29102
29103         * modules/*: Add a description.
29104         * modules/strpbrk: Fix Makefile.am snippet.
29105         * modules/strtoimax: Fix dependencies.
29106         * modules/strtoumax: Likewise.
29107
29108 2003-01-13  Bruno Haible  <bruno@clisp.org>
29109
29110         * gnulib-tool (func_create_testdir): Substitute lib_OBJECTS.
29111         * modules/alloca (Makefile.am): All object files depend on alloca.h.
29112         * modules/stdbool (Makefile.am): All object files depend on stdbool.h.
29113
29114 2003-01-13  Bruno Haible  <bruno@clisp.org>
29115
29116         * gnulib-tool (func_create_testdir): Store config/* files in the main
29117         directory.
29118         * config.rpath: Move to ...
29119         * config/config.rpath: ... here.
29120         * modules/gettext: Contains config/config.rpath, not config.rpath.
29121         * modules/iconv: Likewise.
29122
29123 2003-01-12  Paul Eggert  <eggert@twinsun.com>
29124
29125         Finish renaming getstr -> getdelim2 and readline -> readlinebuffer,
29126         to avoid collisions with libcurses and libreadline.
29127
29128         * m4/getstr.m4: Remove.
29129         * m4/getline.m4 (gl_PREREQ_GETLINE): Require AC_HEADER_STDC.
29130
29131 2003-01-12  Paul Eggert  <eggert@twinsun.com>
29132
29133         Finish renaming getstr -> getdelim2 and readline -> readlinebuffer,
29134         to avoid collisions with libcurses and libreadline.
29135
29136         * lib/Makefile.am (libfetish_a_SOURCES): Remove getstr.c, getstr.h.
29137         * lib/getstr.h, getstr.c: Remove.
29138         * lib/getline.c: Include "getline.h", to check interface.
29139         Move body of old getstr.c here: this defines MIN_CHUNK and
29140         declares getdelim2, which is renamed from getstr.
29141         (getline, getdelim): Adjust to renaming of getstr -> getdelim2.
29142
29143         * lib/linebuffer.c (readlinebuffer): Renamed from readline.
29144         All uses changed.
29145         * lib/linebuffer.h: Likewise.
29146         (readline): Remove backward-compatibility macro.
29147
29148 2003-01-12  Paul Eggert  <eggert@twinsun.com>
29149
29150         Finish renaming getstr -> getdelim2 and readline -> readlinebuffer,
29151         to avoid collisions with libcurses and libreadline.
29152         * getstr: Remove.
29153         * MODULES.html.sh: Remove getstr.
29154         * modules/getline: Depend on unlocked-io, not getstr.
29155
29156 2003-01-12  Jim Meyering  <jim@meyering.net>
29157
29158         * lib/makepath.c: Don't test HAVE_ERRNO_H.  It's not necessary.
29159
29160 2003-01-10  Bruno Haible  <bruno@clisp.org>
29161
29162         * modules/alloca: Change Makefile.am requirements. Simplify Include
29163         requirements. Add lib/alloca_.h to file list.
29164
29165 2003-01-10  Bruno Haible  <bruno@clisp.org>
29166
29167         * m4/alloca.m4 (gl_FUNC_ALLOCA): Also define ALLOCA_H.
29168
29169 2003-01-10  Bruno Haible  <bruno@clisp.org>
29170
29171         * lib/alloca_.h: New file.
29172         * lib/getdate.y: Unconditionally include alloca.h.
29173         * lib/makepath.c: Likewise.
29174         * lib/setenv.c: Likewise.
29175         * lib/userspec.c: Likewise.
29176
29177 2003-01-09  Karl Berry  <karl@gnu.org>
29178
29179         * MODULES.html.sh: include `dirname $0` in PATH, to find
29180         gnulib-tool.
29181
29182 2003-01-09  Bruno Haible  <bruno@clisp.org>
29183
29184         * modules/stdbool: Change configure.ac, Makefile.am requirements.
29185         Simplify Include requirements. Add lib/stdbool.h.in to file list.
29186
29187 2003-01-09  Bruno Haible  <bruno@clisp.org>
29188
29189         * m4/stdbool.m4 (AM_STDBOOL_H): New macro.
29190
29191 2003-01-09  Bruno Haible  <bruno@clisp.org>
29192
29193         * lib/stdbool.h.in: New file.
29194
29195 2003-01-09  Bruno Haible  <bruno@clisp.org>
29196
29197         * gnulib-tool (func_all_modules): Ignore files ending in ~.
29198         * MODULES.html.sh: Likewise.
29199
29200 2003-01-08  Jim Meyering  <jim@meyering.net>
29201
29202         * lib/full-write.c: Undefine and define-away `const' after inclusion
29203         of errno.h, not before.  Suggestion from Bruno Haible.
29204
29205 2003-01-08  Bruno Haible  <bruno@clisp.org>
29206
29207         * modules/full-read: Depend on full-write.
29208
29209 2003-01-08  Bruno Haible  <bruno@clisp.org>
29210
29211         * lib/safe-read.c: Include specification header first, to ensure its
29212         selfcontainedness.
29213         * lib/full-write.c: Likewise.
29214
29215 2003-01-07  Jim Meyering  <jim@meyering.net>
29216
29217         * lib/full-write.c: Rework so that it may serve to define full_read,
29218         too.
29219         * lib/full-read.c: Simply #define FULL_READ and include full-write.c.
29220
29221 2003-01-07  Bruno Haible  <bruno@clisp.org>
29222
29223         * lib/strtoimax.c: Include <stdint.h> as an alternative to
29224         <inttypes.h>.
29225         * lib/xstrtol.h: Likewise.
29226         * lib/xstrtoimax.c: Likewise.
29227         * lib/xstrtoumax.c: Likewise.
29228         * lib/human.h: Likewise.
29229
29230         * lib/tempname.c: Include <inttypes.h> too. Avoids a compilation error
29231         on systems that have <inttypes.h> but not <stdint.h>.
29232
29233 2003-01-07  Bruno Haible  <bruno@clisp.org>
29234
29235         * MODULES.html.sh: Add copyright notice.
29236         (missed_files): Omit CVS directory entries.
29237         (func_module): Make it work with sed-3.02.
29238         * MODULES.txt: Remove file.
29239
29240 2003-01-06  Jim Meyering  <jim@meyering.net>
29241
29242         * lib/version-etc.c: Update year in translatable copyright string.
29243
29244 2003-01-03  Karl Berry  <karl@gnu.org>
29245
29246         * config/config.{guess,sub}: update from prep.
29247
29248 2003-01-02  Karl Berry  <karl@gnu.org>
29249
29250         * doc/COPYING.DOC: belatedly updated to 1.2.
29251
29252 2003-01-01  Karl Berry  <karl@gnu.org>
29253
29254         * gnulib-tool (func_verify_module): report module name $module in
29255         error message, not $1.
29256         * gnulib-tool (create-testdir): don't complain if destdir couldn't
29257         be created, only if it doesn't exist.
29258         * gnulib-tool (last_checkin_date): don't expand the $Date here.
29259
29260 2002-12-31  Paul Eggert  <eggert@twinsun.com>
29261
29262         * m4/memcoll.m4 (gl_MEMCOLL): Require AC_FUNC_MEMCMP.
29263
29264 2002-12-31  Paul Eggert  <eggert@twinsun.com>
29265
29266         * lib/memcoll.c (memcoll): Fall back on a simple algorithm using
29267         memcmp if strcoll doesn't work.
29268
29269 2002-12-31  Bruno Haible  <bruno@clisp.org>
29270
29271         * lib/utime.c (utime_null): No need to call ftruncate if the file was
29272         nonempty.
29273
29274 2002-12-31  Bruno Haible  <bruno@clisp.org>
29275
29276         * lib/memcoll.c (STRCOLL): New macro.
29277         (memcoll): Use it.
29278
29279 2002-12-31  Bruno Haible  <bruno@clisp.org>
29280
29281         * lib/localcharset.h: New file.
29282         * lib/localcharset.c: Include it.
29283         * lib/unicodeio.c: Likewise.
29284
29285 2002-12-31  Bruno Haible  <bruno@clisp.org>
29286
29287         * lib/getstr.h (getstr): Define, to avoid clash with libcurses.
29288         * lib/linebuffer.h (readline): Define, to avoid clash with libreadline.
29289
29290 2002-12-31  Bruno Haible  <bruno@clisp.org>
29291
29292         * lib/getline.h: Include <stddef.h>, for size_t.
29293
29294         * lib/unicodeio.h: Include <stddef.h>, for size_t.
29295         * lib/unicodeio.c: Don't include <stddef.h>.
29296
29297 2002-12-31  Bruno Haible  <bruno@clisp.org>
29298
29299         * lib/getdate.y (get_date): Test HAVE_STRUCT_TM_TM_ZONE, not
29300         HAVE_TM_ZONE.
29301
29302 2002-12-24  Karl Berry  <karl@gnu.org>
29303
29304         * config/config.guess: update from prep.
29305
29306 2002-12-24  Bruno Haible  <bruno@clisp.org>
29307
29308         General infrasructure.
29309         * m4/README: Rewritten.
29310         * m4/onceonly.m4: New file.
29311         * m4/onceonly_2_57.m4: New file.
29312
29313         Module atexit.
29314         * m4/atexit.m4: New file.
29315
29316         Module strtod.
29317         * m4/strtod.m4: New file.
29318
29319         Module strtol.
29320         * m4/strtol.m4: New file.
29321
29322         Module strtoul.
29323         * m4/strtoul.m4: New file.
29324
29325         Module memchr.
29326         * m4/memchr.m4: New file.
29327
29328         Module memcmp.
29329         * m4/memcmp.m4 (gl_PREREQ_MEMCMP): New macro.
29330         (jm_FUNC_MEMCMP): Invoke it.
29331
29332         Module memcpy.
29333         * m4/memcpy.m4: New file.
29334
29335         Module memmove.
29336         * m4/memmove.m4: New file.
29337
29338         Module memset.
29339         * m4/memset.m4: New file.
29340
29341         Module strcspn.
29342         * m4/strcspn.m4: New file.
29343
29344         Module strpbrk.
29345         * m4/strpbrk.m4: New file.
29346
29347         Module strstr.
29348         * m4/strstr.m4: New file.
29349
29350         Module strerror.
29351         * m4/strerror.m4: New file.
29352
29353         Module mktime.
29354         * m4/mktime.m4: Renamed from jm-mktime.m4.
29355         (gl_PREREQ_MKTIME): New macro.
29356         (gl_FUNC_MKTIME): Renamed from jm_FUNC_MKTIME. Invoke gl_PREREQ_MKTIME.
29357
29358         Module malloc.
29359         * m4/malloc.m4 (gl_PREREQ_MALLOC): New macro.
29360         (jm_FUNC_MALLOC): Use AC_FUNC_MALLOC. Invoke gl_PREREQ_MALLOC.
29361         Don't define HAVE_DONE_WORKING_MALLOC_CHECK, since nothing uses it.
29362
29363         Module realloc.
29364         * m4/realloc.m4 (gl_PREREQ_REALLOC): New macro.
29365         (jm_FUNC_REALLOC): Use AC_FUNC_REALLOC. Invoke gl_PREREQ_REALLOC.
29366         Don't define HAVE_DONE_WORKING_REALLOC_CHECK, since nothing uses it.
29367
29368         Module strftime.
29369         * m4/tm_gmtoff.m4: New file, extracted from strftime.m4.
29370         * m4/strftime.m4 (_jm_STRFTIME_PREREQS): Use AC_FUNC_STRFTIME.
29371         Don't test for bcopy (we are not emacs). Invoke AC_TYPE_MBSTATE_T and
29372         gl_TM_GMTOFF.
29373         (_jm_STRFTIME_PREREQS, jm_FUNC_GNU_STRFTIME): Use onceonly macros.
29374
29375         Module xalloc.
29376         * m4/xalloc.m4: New file.
29377
29378         Module alloca.
29379         * m4/alloca.m4: New file.
29380
29381         Module putenv.
29382         * m4/putenv.m4 (gl_PREREQ_PUTENV): New macro.
29383         (jm_FUNC_PUTENV): Invoke it.
29384
29385         Module setenv.
29386         * m4/setenv.m4 (gt_FUNC_SETENV): New macro.
29387         (gt_CHECK_VAR_DECL): Fix quoting error that led to infinite loop in m4
29388         when invoked twice.
29389         (gt_PREREQ_SETENV, gt_PREREQ_UNSETENV): New macros, replacing old
29390         gt_FUNC_SETENV.
29391
29392         Module memrchr.
29393         * m4/memrchr.m4: New file.
29394
29395         Module stpcpy.
29396         * m4/stpcpy.m4: New file.
29397
29398         Module strcase.
29399         * m4/strcase.m4: New file.
29400
29401         Module strdup.
29402         * m4/strdup.m4: New file.
29403
29404         Module strnlen.
29405         * m4/strnlen.m4: New file.
29406
29407         Module strndup.
29408         * m4/strndup.m4: New file.
29409
29410         Module xstrtod.
29411         * m4/xstrtod.m4: New file.
29412
29413         Module xstrtol.
29414         * m4/xstrtol.m4: New file.
29415
29416         Module getdate.
29417         * m4/getdate.m4: New file.
29418
29419         Module unlocked-io.
29420         * m4/unlocked-io.m4: Renamed from jm-glibc-io.m4.
29421         (jm_FUNC_GLIBC_UNLOCKED_IO): Invoke AC_GNU_SOURCE. Use onceonly macros.
29422         * m4/jm-glibc-io.m4n: Remove file.
29423
29424         Module long-options.
29425         * m4/long-options.m4: New file.
29426
29427         Module md5.
29428         * m4/md5.m4: New file.
29429
29430         Module sha.
29431         * m4/sha.m4: New file.
29432
29433         Module getstr.
29434         * m4/getstr.m4: New file.
29435
29436         Module getline.
29437         * m4/getline.m4 (gl_PREREQ_GETLINE): New macro.
29438         (AM_FUNC_GETLINE): Invoke AC_GNU_SOURCE. Use <stdlib.h>, not
29439         <sys/types.h>, for size_t. Use the function name gnu_getline, not
29440         simply getline. Infoke gl_PREREQ_GETLINE.
29441
29442         Module obstack.
29443         * m4/obstack.m4: New file.
29444
29445         Module hash.
29446         * m4/hash.m4: New file.
29447
29448         Module readtokens.
29449         * m4/readtokens.m4: New file.
29450
29451         Module strverscmp.
29452         * m4/strverscmp.m4: New file.
29453
29454         Module stdbool.
29455         * m4/stdbool.m4 (AC_HEADER_STDBOOL): Add test for _Bool. Needed for
29456         OSF/1.
29457
29458         Module strtoll.
29459         * m4/strtoll.m4: New file.
29460
29461         Module strtoull.
29462         * m4/strtoull.m4: New file.
29463
29464         Module strtoimax.
29465         * m4/strtoimax.m4: New file.
29466
29467         Module strtoumax.
29468         * m4/strtoumax.m4: New file.
29469
29470         Module xstrtoimax.
29471         * m4/xstrtoimax.m4 (jm_XSTRTOIMAX): Renamed from
29472         jm_AC_PREREQ_XSTRTOIMAX.
29473         Moved the strtol prerequisites to strtol.m4.
29474         Moved the strtoll prerequisites to strtoll.m4.
29475         Moved the strtoimax prerequisites to strtoimax.m4.
29476
29477         Module xstrtoumax.
29478         * m4/xstrtoumax.m4 (jm_XSTRTOUMAX): Renamed from
29479         jm_AC_PREREQ_XSTRTOUMAX.
29480         Moved the strtoul prerequisites to strtoul.m4.
29481         Moved the strtoull prerequisites to strtoull.m4.
29482         Moved the strtoumax prerequisites to strtoumax.m4.
29483
29484         Module chown.
29485         * m4/chown.m4 (gl_PREREQ_CHOWN): New macro.
29486         (jm_FUNC_CHOWN): Use AC_FUNC_CHOWN. Invoke gl_PREREQ_CHOWN.
29487
29488         Module dup2.
29489         * m4/dup2.m4: New file.
29490
29491         Module ftruncate.
29492         * m4/ftruncate.m4 (gl_PREREQ_FTRUNCATE): New macro.
29493         (jm_FUNC_FTRUNCATE): Use AC_REPLACE_FUNCS. Invoke gl_PREREQ_FTRUNCATE.
29494
29495         Module getgroups.
29496         * m4/getgroups.m4 (gl_PREREQ_GETGROUPS): New macro.
29497         (jm_FUNC_GETGROUPS): Use AC_FUNC_GETGROUPS. Invoke gl_PREREQ_GETGROUPS.
29498
29499         Module gettimeofday.
29500         * m4/gettimeofday.m4 (gl_PREREQ_GETTIMEOFDAY): New macro.
29501         (AC_FUNC_GETTIMEOFDAY_CLOBBER): Use onceonly macros. Invoke
29502         gl_PREREQ_GETTIMEOFDAY.
29503
29504         Module mkdir.
29505         * m4/mkdir-slash.m4 (gl_PREREQ_MKDIR): New macro.
29506         (UTILS_FUNC_MKDIR_TRAILING_SLASH): Invoke gl_PREREQ_MKDIR.
29507
29508         Module mkstemp.
29509         * m4/mkstemp.m4 (gl_PREREQ_MKSTEMP): New macro.
29510         (jm_PREREQ_TEMPNAME): New macro, from prereq.m4. Also invoke
29511         jm_AC_TYPE_UINTMAX_T.
29512         (UTILS_FUNC_MKSTEMP): Invoke gl_PREREQ_MKSTEMP and jm_PREREQ_TEMPNAME.
29513
29514         Module stat.
29515         * m4/stat.m4 (gl_PREREQ_STAT): New macro.
29516         (jm_FUNC_STAT): Use AC_FUNC_STAT. Invoke gl_PREREQ_STAT.
29517
29518         Module lstat.
29519         * m4/lstat.m4 (gl_PREREQ_LSTAT): New macro.
29520         (jm_FUNC_LSTAT): Use AC_FUNC_LSTAT. Invoke gl_PREREQ_LSTAT.
29521
29522         Module timespec.
29523         * m4/timespec.m4 (gl_TIMESPEC): New macro.
29524         (jm_CHECK_TYPE_STRUCT_TIMESPEC): Add check for <sys/time.h>.
29525         * m4/st_mtim.m4: Indentation.
29526
29527         Module nanosleep.
29528         * m4/nanosleep.m4 (gl_PREREQ_NANOSLEEP): New macro.
29529         (jm_FUNC_NANOSLEEP): Add check for <sys/time.h>. Invoke
29530         gl_PREREQ_NANOSLEEP.
29531
29532         Module regex.
29533         * m4/regex.m4 (jm_PREREQ_REGEX): New macro.
29534         (jm_INCLUDED_REGEX): Invoke jm_PREREQ_REGEX.
29535         (gl_REGEX): New macro.
29536
29537         Module rename.
29538         * m4/rename.m4 (gl_PREREQ_RENAME): New macro.
29539         (vb_FUNC_RENAME): Invoke gl_PREREQ_RENAME.
29540
29541         Module rmdir.
29542         * m4/rmdir.m4: New file.
29543
29544         Module utime.
29545         * m4/utimbuf.m4 (jm_CHECK_TYPE_STRUCT_UTIMBUF): Use onceonly macros.
29546         * m4/utime.m4 (gl_PREREQ_UTIME): New macro.
29547         (jm_FUNC_UTIME): Invoke gl_PREREQ_UTIME.
29548
29549         Module dirname.
29550         * m4/dirname.m4: New file.
29551
29552         Module getopt.
29553         * m4/getopt.m4: New file.
29554
29555         Module unistd-safer.
29556         * m4/unistd-safer.m4: New file.
29557
29558         Module fnmatch.
29559         * m4/fnmatch.m4 (_AC_FUNC_FNMATCH_IF): Include <stdlib.h>, for exit()
29560         declaration.
29561         (gl_PREREQ_FNMATCH_EXTRA): New macro.
29562         (gl_FUNC_FNMATCH_POSIX): New macro.
29563         (gl_FUNC_FNMATCH_GNU): Renamed from AC_FUNC_FNMATCH_GNU. Invoke
29564         gl_PREREQ_FNMATCH_EXTRA. Use the function name gnu_fnmatch, not
29565         simply fnmatch.
29566
29567         Module exclude.
29568         * m4/exclude.m4: New file.
29569
29570         Module human.
29571         * m4/human.m4: New file.
29572
29573         Module acl.
29574         * m4/acl.m4: Nop.
29575
29576         Module backupfile.
29577         * m4/backupfile.m4: New file.
29578         * m4/d-ino.m4: Indentation.
29579
29580         Module fsusage.
29581         * m4/fsusage.m4 (gl_FSUSAGE): New macro.
29582         (jm_STATFS_TRUNCATES): New macro, from coreutils-4.5.4/configure.ac.
29583         (gl_PREREQ_FSUSAGE_EXTRA): New macro.
29584
29585         Module dirfd.
29586         * m4/dirfd.m4 (UTILS_FUNC_DIRFD): Invoke some AC_EGREP_CPP
29587         requirements.
29588
29589         Module euidaccess.
29590         * m4/euidaccess.m4: New file.
29591
29592         Module file-type.
29593         * m4/file-type.m4: New file.
29594
29595         Module fileblocks.
29596         * m4/fileblocks.m4: New file.
29597
29598         Module filemode.
29599         * m4/filemode.m4: New file.
29600
29601         Module isdir.
29602         * m4/isdir.m4: New file.
29603
29604         Module lchown.
29605         * m4/lchown.m4 (gl_PREREQ_LCHOWN): New macro.
29606         (jm_FUNC_LCHOWN): Invoke gl_PREREQ_LCHOWN.
29607
29608         Module makepath.
29609         * m4/makepath.m4: New file.
29610
29611         Module modechange.
29612         * m4/modechange.m4: New file.
29613
29614         Module mountlist.
29615         * m4/mountlist.m4: New file.
29616         * m4/ls-mntd-fs.m4 (jm_LIST_MOUNTED_FILESYSTEMS): Use onceonly macros.
29617         Indentation.
29618
29619         Module path-concat.
29620         * m4/path-concat.m4: New file.
29621
29622         Module pathmax.
29623         * m4/pathmax.m4: New file.
29624
29625         Module same.
29626         * m4/same.m4: New file.
29627
29628         Module save-cwd.
29629         * m4/save-cwd.m4: New file.
29630
29631         Module savedir.
29632         * m4/savedir.m4: New file.
29633
29634         Module xgetcwd.
29635         * m4/xgetcwd.m4: New file.
29636         * m4/getcwd.m4 (AC_FUNC_GETCWD_NULL): Use onceonly macros.
29637
29638         Module xreadlink.
29639         * m4/xreadlink.m4: New file.
29640
29641         Module safe-read.
29642         * m4/safe-read.m4: New file.
29643
29644         Module safe-write.
29645         * m4/safe-write.m4: New file.
29646
29647         Module closeout.
29648         * m4/closeout.m4: New file.
29649
29650         Module stdio-safer.
29651         * m4/stdio-safer.m4: New file.
29652
29653         Module getpass.
29654         * m4/getpass.m4: New file.
29655
29656         Module getugroups.
29657         * m4/getugroups.m4: New file.
29658
29659         Module group-member.
29660         * m4/group-member.m4 (gl_PREREQ_GROUP_MEMBER): New macro.
29661         (jm_FUNC_GROUP_MEMBER): Invoke AC_GNU_SOURCE, gl_PREREQ_GROUP_MEMBER.
29662
29663         Module idcache.
29664         * m4/idcache.m4: New file.
29665
29666         Module userspec.
29667         * m4/userspec.m4: New file.
29668
29669         Module gettime.
29670         * m4/clock_time.m4: New file.
29671         * m4/gettime.m4: New file.
29672
29673         Module settime.
29674         * m4/settime.m4: New file.
29675
29676         Module posixtm.
29677         * m4/posixtm.m4: New file.
29678
29679         Module gethostname.
29680         * m4/gethostname.m4: New file.
29681
29682         Module canon-host.
29683         * m4/canon-host.m4: New file.
29684
29685         Module gettext.
29686         * m4/codeset.m4: New file, from gettext-0.11.5.
29687         * m4/gettext.m4: New file, from gettext-0.11.5.
29688         * m4/glibc21.m4: New file, from gettext-0.11.5.
29689         * m4/iconv.m4: New file, from gettext-0.11.5.
29690         * m4/intdiv0.m4: New file, from gettext-0.11.5.
29691         * m4/inttypes-pri.m4: New file, from gettext-0.11.5.
29692         * m4/inttypes.m4: New file, from gettext-0.11.5.
29693         * m4/inttypes_h.m4: New file, from gettext-0.11.5 with modifications.
29694         * m4/isc-posix.m4: New file, from gettext-0.11.5.
29695         * m4/lcmessage.m4: New file, from gettext-0.11.5.
29696         * m4/lib-ld.m4: New file, from gettext-0.11.5.
29697         * m4/lib-link.m4: New file, from gettext-0.11.5.
29698         * m4/lib-prefix.m4: New file, from gettext-0.11.5.
29699         * m4/progtest.m4: New file, from gettext-0.11.5.
29700         * m4/stdint_h.m4: New file, from gettext-0.11.5 with modifications.
29701         * m4/uintmax_t.m4: New file, from gettext-0.11.5 with modifications.
29702         * m4/ulonglong.m4: New file, from gettext-0.11.5 with modifications.
29703
29704         Module localcharset.
29705         * m4/localcharset.m4: New file.
29706
29707         Module hard-locale.
29708         * m4/hard-locale.m4: New file.
29709
29710         Module mbswidth.
29711         * m4/mbswidth.m4 (gl_MBSWIDTH): Renamed from jm_PREREQ_MBSWIDTH. Use
29712         onceonly macros.
29713         * m4/mbrtowc.m4: Add comment.
29714
29715         Module memcasecmp.
29716         * m4/memcasecmp.m4: New file.
29717
29718         Module memcoll.
29719         * m4/memcoll.m4: New file.
29720
29721         Module unicodeio.
29722         * m4/unicodeio.m4: New file.
29723
29724         Module rpmatch.
29725         * m4/rpmatch.m4: New file.
29726
29727         Module yesno.
29728         * m4/yesno.m4: New file.
29729
29730         Module exitfail.
29731         * m4/exitfail.m4: New file.
29732
29733         Module c-stack.
29734         * m4/c-stack.m4 (gl_C_STACK): New macro.
29735         (jm_PREREQ_C_STACK): Check for <sys/time.h>. Use onceonly macros.
29736
29737         Module error.
29738         * m4/error.m4 (gl_ERROR): New macro.
29739         (jm_PREREQ_ERROR): Use onceonly macros.
29740
29741         Module fatal.
29742         * m4/fatal.m4: New file.
29743
29744         Module getloadavg.
29745         * m4/getloadavg.m4 (AC_FUNC_GETLOADAVG): Use onceonly macros.
29746         (gl_FUNC_GETLOADAVG, gl_PREREQ_GETLOADAVG): New macros.
29747
29748         Module getpagesize.
29749         * m4/getpagesize.m4: New file.
29750
29751         Module getusershell.
29752         * m4/getusershell.m4: New file.
29753
29754         Module physmem.
29755         * m4/physmem.m4: New file.
29756
29757         Module posixver.
29758         * m4/posixver.m4: New file.
29759
29760         Module quotearg.
29761         * m4/quotearg.m4: New file.
29762
29763         Module quote.
29764         * m4/quote.m4: New file.
29765
29766         Module readutmp.
29767         * m4/readutmp.m4: New file, based on jm_PREREQ_READUTMP from prereq.m4.
29768
29769         Module sig2str.
29770         * m4/sig2str.m4: New file.
29771
29772         Other.
29773         * m4/longlong.m4 (jm_AC_TYPE_UNSIGNED_LONG_LONG): Remove, moved to
29774         ulonglong.m4.
29775         * m4/intmax_t.m4: New file.
29776         * m4/d-type.m4: Indentation.
29777         * m4/jm-macros.m4: Update.
29778         * m4/prereq.m4 (jm_PREREQ): Update.
29779         (jm_PREREQ_ADDEXT): Remove, obsoleted by backupfile.m4.
29780         (jm_PREREQ_CANON_HOST): Remove, obsoleted by canon-host.m4.
29781         (jm_PREREQ_DIRNAME): Remove, obsoleted by dirname.m4.
29782         (jm_PREREQ_EXCLUDE): Remove, obsoleted by exclude.m4.
29783         (jm_PREREQ_GETPAGESIZE): Remove, obsoleted by getpagesize.m4.
29784         (jm_PREREQ_HARD_LOCALE): Remove, obsoleted by hard-locale.m4.
29785         (jm_PREREQ_HASH): Remove, obsoleted by hash.m4.
29786         (jm_PREREQ_HUMAN): Remove, obsoleted by human.m4.
29787         (jm_PREREQ_MEMCHR): Remove, obsoleted by memchr.m4.
29788         (jm_PREREQ_PHYSMEM): Remove, obsoleted by physmem.m4.
29789         (jm_PREREQ_POSIXVER): Remove, obsoleted by posixver.m4.
29790         (jm_PREREQ_QUOTEARG): Remove, obsoleted by quotearg.m4.
29791         (jm_PREREQ_READUTMP): Remove, obsoleted by readutmp.m4.
29792         (jm_PREREQ_REGEX): Remove, obsoleted by regex.m4.
29793         (jm_PREREQ_STRNLEN): Remove, obsoleted by strnlen.m4.
29794         (jm_PREREQ_TEMPNAME): Remove, obsoleted by mkstemp.m4.
29795         (jm_PREREQ_XGETCWD): Remove, obsoleted by xgetcwd.m4.
29796         (jm_PREREQ_XREADLINK): Remove, obsoleted by xreadlink.m4.
29797         * m4/readdir.m4 (jm_FUNC_READDIR): Use onceonly macros.
29798
29799 2002-12-24  Bruno Haible  <bruno@clisp.org>
29800
29801         * MODULES.txt: Update according to m4/ changes.
29802
29803         Module gettext.
29804         * config.rpath: New file, from gettext-0.11.5.
29805
29806         * modules/*: New module descriptions.
29807         * gnulib-tool: New file.
29808         * MODULES.html.sh: New file.
29809
29810 2002-12-21  Karl Berry  <karl@gnu.org>
29811
29812         * doc/fdl.texi: update to version 1.2.
29813
29814 2002-12-19  Karl Berry  <karl@gnu.org>
29815
29816         * config/config.guess: update from prep.
29817
29818 2002-12-18  Bruno Haible  <bruno@clisp.org>
29819
29820         * m4/strftime.m4 (_jm_STRFTIME_PREREQS): Don't test for localtime_r.
29821         * m4/jm-mktime.m4 (jm_FUNC_MKTIME): Likewise.
29822
29823 2002-12-17  Bruno Haible  <bruno@clisp.org>
29824
29825         * m4/mbswidth.m4 (jm_PREREQ_MBSWIDTH): Remove checks for limits.h,
29826         stdlib.h, string.h.
29827
29828 2002-12-17  Bruno Haible  <bruno@clisp.org>
29829
29830         * lib/canon-host.c (strdup): Remove unused declaration.
29831
29832         * lib/fsusage.c: Include full_read.h.
29833         (get_fs_usage): Use full_read instead of safe_read.
29834
29835         * lib/utime.c (utime_null): Use SAFE_READ_ERROR.
29836
29837 2002-12-12  Karl Berry  <karl@gnu.org>
29838
29839         * config/config.guess: update from prep.
29840
29841 2002-12-11  Bruno Haible  <bruno@clisp.org>
29842
29843         * m4/setenv.m4: New file, from gettext-0.11.5.
29844
29845 2002-12-11  Bruno Haible  <bruno@clisp.org>
29846
29847         * lib/setenv.h: Rewritten to cope with systems that have setenv() but
29848         not unsetenv().
29849         * lib/setenv.c, unsetenv.c: Taken from glibc-2.2.4 with the following
29850         modifications:
29851
29852         2002-12-11  Bruno Haible  <bruno@clisp.org>
29853
29854                 * setenv.c (alloca): Fall back to malloc.
29855                 (freea): New macro.
29856                 (setenv): Use freea() to free memory allocated with alloca().
29857
29858         2002-11-13  Bruno Haible  <bruno@clisp.org>
29859
29860                 * setenv.c (compar_fn_t, __add_to_environ, setenv): Use ANSI C
29861                 function declarations.
29862                 * unsetenv.c (unsetenv): Likewise.
29863
29864         2002-03-04  Bruno Haible  <bruno@clisp.org>
29865
29866                 Portability to AIX 4.3.3.
29867                 * unsetenv.c: New file, extracted from setenv.c.
29868                 * setenv.c: Move the unsetenv() function to unsetenv.c.
29869
29870         2001-12-20  Bruno Haible  <bruno@clisp.org>
29871
29872                 * setenv.c (__add_to_environ): Don't call realloc(NULL,...),
29873                 use malloc instead. For SunOS 4.
29874
29875         2001-12-11  Bruno Haible  <bruno@clisp.org>
29876
29877                 * setenv.c: Declare alloca.
29878                 (compar_fn_t): New typedef.
29879                 (KNOWN_VALUE, STORE_VALUE): Use it.
29880
29881         * lib/Makefile.am (libfetish_a_SOURCES): Add setenv.c, unsetenv.c,
29882         setenv.h.
29883
29884 2002-12-10  Paul Eggert  <eggert@twinsun.com>
29885
29886         Port exclude.c and exclude.h to more non-GNU systems, e.g. Solaris 7.
29887         * lib/exclude.h (EXCLUDE_ANCHORED, EXCLUDE_INCLUDE, EXCLUDE_WILDCARDS):
29888         Choose values that are less likely to collide with system fnmatch
29889         options.
29890         * lib/exclude.c (FNM_CASEFOLD, FNM_LEADING_DIR): Define to 0 if not
29891         defined (e.g., a pure POSIX system).
29892         (EXCLUDE_macros_do_not_collide_with_FNM_macros): Use FNM_PATHNAME
29893         instead of FNM_FILE_NAME, for compatibility with pure POSIX sytems.
29894
29895 2002-12-06  Paul Eggert  <eggert@twinsun.com>
29896
29897         Undo the 2001-07-02 change for jm-glibc-io, as it was too much of
29898         a pain in practice to deal with generated m4 files.  This change
29899         goes together with the 2002-12-04 unlocked-io.h change in ../lib.
29900
29901         * m4/Makefile.am.in (Makefile.am): Don't mention jm-glibc-io.m4n
29902         and jm-glibc-io.m4, as they are no longer a special case.
29903         * m4/jm-glibc-io.m4: Rename from jm-glibc-io.m4n, and remove the
29904         kludge and the auto-generation stuff.  Check only whether the
29905         functions are declared, not whether they exist, since older hosts
29906         that don't declare the functions can't use the optimization anyway.
29907
29908 2002-12-06  Jim Meyering  <jim@meyering.net>
29909
29910         * lib/error.c: Be consistent: change `#ifndef _LIBC' to `#if !_LIBC'.
29911
29912         Merge in changes from libc's misc/error.c, in preparation
29913         for the merge of gnulib's changes back into libc.
29914
29915         * lib/error.c (_): Define only if not already defined.
29916         Move definition to follow all #include directives.
29917         Include unlocked-io.h only if !_LIBC.
29918         [_LIBC]: Include <libio/libioP.h>.
29919         [USE_IN_LIBIO]: Include <libio/iolibio.h>
29920         (fflush): Tweak definition to use INTUSE.
29921         (putc): Define.
29922
29923 2002-12-05  Paul Eggert  <eggert@twinsun.com>
29924
29925         * lib/alloca.c [defined emacs]: Include "lisp.h".
29926         (xalloc_die) [defined emacs]: New macro.
29927         (free) [defined emacs && defined EMACS_FREE]: Define to EMACS_FREE.
29928         [! defined emacs]: Include <xalloc.h>.
29929         (POINTER_TYPE) [!defined POINTER_TYPE]: New macro.
29930         (pointer): Typedef to POINTER_TYPE *.
29931         (malloc): Remove decl; we now always use xmalloc.
29932         (alloca): Use old-style definition, since Emacs needs this.
29933         Check for arithmetic overflow when computing combined size.
29934
29935 2002-12-04  Paul Eggert  <eggert@twinsun.com>
29936
29937         Do not generate unlocked-io.h automatically, since it's easier to
29938         maintain it by hand.
29939
29940         * lib/unlocked-io.h: New file, from GNU diffutils,
29941         but with proper copyright notice and attribution.
29942         * lib/gen-uio: Remove.
29943         * lib/Makefile.am: Add copyright notice.
29944         (libfetish_a_SOURCES): Add unlocked-io.h.
29945         (BUILT_SOURCES, all-local): Remove unlocked-io.h.
29946         (DISTCLEANFILES, io_functions): Remove macros.
29947         (EXTRA_DIST): Remove gen_uio.
29948         (unlocked-io.h): Remove rule.
29949
29950 2002-12-04  Jim Meyering  <jim@meyering.net>
29951
29952         Reflect the fact that stat.c and lstat.c are no longer generated.
29953         * lib/Makefile.am (BUILT_SOURCES): Remove stat.c and lstat.c.
29954         (DISTCLEANFILES): Likewise.
29955         (EXTRA_DIST): Likewise.
29956         (all_local): Don't depend on stat.c or lstat.c.
29957         (stat.c, lstat.c): Remove rules.
29958         (EXTRA_DIST): Remove xstat.in.
29959
29960         * lib/xstat.in: Remove file.  Contents moved into stat.c.
29961         * lib/stat.c: New file.  Contents mostly from xstat.in.
29962         * lib/stat.c: Rework so that it may serve to define rpl_lstat, too.
29963         * lib/lstat.c: New file. Simply #define LSTAT and include stat.c.
29964
29965         * lib/safe-read.c: Rework so that it may serve to define safe_write,
29966         too.
29967         * lib/safe-write.c: Simply #define SAFE_WRITE and include safe-read.c.
29968
29969 2002-12-03  Jim Meyering  <jim@meyering.net>
29970
29971         * lib/safe-read.c, safe-write.c: Change variable names and comments,
29972         but not semantics, to minimize the differences between these two files.
29973         (safe_read): Change comment to mention SAFE_READ_ERROR.
29974
29975         * lib/safe-read.c (IS_EINTR): Define.
29976         (safe_read): Use IS_EINTR in place of in-function cpp directives.
29977
29978 2002-12-02  Jim Meyering  <jim@meyering.net>
29979
29980         * lib/safe-read.c (EINTR): Define.
29981         (CHAR_BIT, TYPE_SIGNED, TYPE_MINIMUM, TYPE_MAXIMUM): Define.
29982         (INT_MAX): Provide fallback.
29983         (safe_read): Rewrite to iterate IFF the read fails with EINTR.
29984
29985         * lib/safe-read.h (SAFE_READ_ERROR): Define.
29986
29987 2002-12-02  Bruno Haible  <bruno@clisp.org>
29988
29989         * lib/safe-write.c (CHAR_BIT, TYPE_SIGNED, TYPE_MINIMUM, TYPE_MAXIMUM):
29990         Define, taken from safe-read.c.
29991         (INT_MAX): Provide fallback.
29992         (safe_write): Rewrite to iterate IFF the write fails with EINTR.
29993         * lib/safe-write.h (SAFE_WRITE_ERROR): Define.
29994
29995         * lib/safe-read.c (EINTR): Remove definition.
29996         (safe_read): Don't use EINTR if it is absent.
29997
29998 2002-12-01  Jim Meyering  <jim@meyering.net>
29999
30000         * lib/safe-read.c: (safe_read): Also exit the loop when read returns
30001         zero.
30002         (CHAR_BIT, TYPE_SIGNED, TYPE_MINIMUM, TYPE_MAXIMUM, INT_MAX): Define.
30003
30004 2002-11-27  Paul Eggert  <eggert@twinsun.com>
30005
30006         * lib/hash.c (hash_lookup, hash_get_first, hash_get_next,
30007         hash_find_entry, hash_rehash): Replace `if (limit <= value) abort ();'
30008         with `if (! (value < limit)) abort ();', for readability.
30009
30010 2002-11-26  Karl Berry  <karl@gnu.org>
30011
30012         * lib/strdup.c: copy from libc again, with jim's ok.
30013         * lib/.cppi-disable: re-add strdup.c
30014
30015 2002-11-25  Karl Berry  <karl@gnu.org>
30016
30017         * lib/strtoll.c: copy from libc, meaning we now #include <strtol.c>
30018         instead of "strtol.c".
30019
30020 2002-11-25  Karl Berry  <karl@gnu.org>
30021
30022         * config/install-sh: update from automake for variable quoting, $0 in
30023         error msgs, etc.
30024
30025         * config/srclist.txt ($LIBCSRC/time/mktime.c lib gpl): new entry.
30026         * config/srclist.txt ($LIBCSRC/sysdeps/generic/strtoll.c lib gpl): new
30027         entry.
30028
30029 2002-11-25  Jim Meyering  <jim@meyering.net>
30030
30031         * lib/mktime.c: Sync from libc, now that it has the latest fix.
30032
30033 2002-11-24  Karl Berry  <karl@gnu.org>
30034
30035         * lib/error.c, getopt.c, getopt.h, getopt1.c, obstack.c, regex.c,
30036         regex.h, strdup.c, strtoll.c, tempname.c: change license to gpl.
30037
30038 2002-11-24  Jim Meyering  <jim@meyering.net>
30039
30040         Update from coreutils:
30041
30042         * lib/mktime.c: Merge in changes from libc.
30043
30044         Avoid a link-time failure on some Linux systems.
30045         * lib/mktime.c (STATIC): Define to be empty (_LIBC) or `static'
30046         (otherwise).
30047         (__mon_yday): Declare with the STATIC attribute.
30048         (__mktime_internal): Likewise.
30049         Based on a report from Greg Schafer.
30050
30051 2002-11-23  Jim Meyering  <jim@meyering.net>
30052
30053         * lib/sig2str.c (str2signum, sig2str): Avoid a warning from gcc:
30054         Use `unsigned', not `int', as type of index.
30055
30056         * lib/xstat.in [@BEGIN_LSTAT_ONLY@]: Include <string.h>.
30057
30058         * lib/fsusage.c: Remove unneeded parentheses around operands of
30059         `defined'.
30060
30061 2002-11-22  Paul Eggert  <eggert@twinsun.com>
30062
30063         * lib/quotearg.h: Allow multiple inclusion by surrounding with
30064         "#ifndef QUOTEARG_H_".  Include <stddef.h>, for size_t,
30065         so that we can be included first.
30066         (PARAMS): Remove; we now assume C89 or later.  All uses removed.
30067         * lib/quotearg.c: Include quotearg.h immediately after config.h.
30068         No need to include stddef.h or sys/types.h any more.
30069         Surround local include files with "", not "<>".
30070         Assume HAVE_LIMITS_H unconditionally, as we assume C89.
30071         Similarly, assume HAVE_C_BACKSLASH_A, CHAR_BIT, UCHAR_MAX, UINT_MAX,
30072         HAVE_STDLIB_H, HAVE_STRING_H, STDC_HEADERS.
30073         (HAVE_MBSINIT): Undef if !HAVE_MBRTOWC.
30074         (mbsinit): Define to 1 if !defined mbsinit && !HAVE_MBSINIT.
30075         (ISPRINT): Remove; no longer needed now that we assume C89.
30076
30077         (clone_quoting_options, quotearg_buffer, quotearg_n_options):
30078         Preserve errno.
30079
30080         (quotearg_buffer_restyled, quotearg_n, quotearg_n_style,
30081         quotearg_char): Use SIZE_MAX rather than
30082         (size_t) -1 when we are talking about "infinity".
30083
30084         (quotearg_buffer_restyled): Fix bug when quoting trigraphs.
30085
30086 2002-11-22  Paul Eggert  <eggert@twinsun.com>
30087
30088         * lib/hash.c: Avoid use of <assert.h>, as the GNU Coding Standards
30089         hint that one should use `if (! x) abort ();' rather than `assert
30090         (x);', and anyway it's one less thing to worry about configuring.
30091         (hash_lookup, hash_get_first, hash_get_next, hash_find_entry,
30092         hash_rehash, hash_insert): Use abort rather than assert.
30093
30094 2002-11-22  Bruno Haible  <bruno@clisp.org>
30095
30096         * lib/safe-read.h: Assume C89. Add comments.
30097         (safe_read): Change return type to size_t.
30098         * lib/safe-read.c (safe_read): Change return type to size_t. Handle
30099         byte counts > SSIZE_MAX correctly.
30100         * lib/safe-write.h: New file.
30101         * lib/safe-write.c: New file.
30102         * lib/full-read.h: New file.
30103         * lib/full-read.c: New file.
30104         * lib/full-write.h: Assume C89. Add comments.
30105         * lib/full-write.c: Include safe-write.h.
30106         (full_write): Rewritten to use safe_write.
30107         Suggested by Jim Meyering and Paul Eggert.
30108
30109 2002-11-21  Jim Meyering  <jim@meyering.net>
30110
30111         * lib/strdup.c (strdup): Tweak comment and initial #if/#include.
30112
30113         Merge in changes from the coreutils.
30114
30115         2002-09-25  Paul Eggert  <eggert@twinsun.com>
30116         * lib/fsusage.c [! HAVE_INTTYPES_H && HAVE_STDINT_H] Include
30117         <stdint.h>.
30118         (UINTMAX_MAX) [!defined UINTMAX_MAX]: New macro.
30119         (PROPAGATE_ALL_ONES): Work even if X is unsigned and narrower than
30120         int.  Work more efficiently if X is the same width as uintmax_t.
30121         Do not compare X to -1, to avoid bogus compiler warning.
30122         (get_fs_usage): (uintmax_t) -1 -> UINTMAX_MAX to avoid a cast.
30123         Don't assume that f_frsize and f_bsize are the same type.
30124
30125         * lib/mountlist.c: #undef MNT_IGNORE before defining it, to avoid
30126         warning on FreeBSD.
30127
30128         * lib/makepath.c (make_path): Restore umask *before* creating the final
30129         component.
30130         (make_path): Minor reformatting.
30131
30132         * lib/xmalloc.c: Adjust to work with new autoconf macros,
30133         AC_FUNC_MALLOC and AC_FUNC_REALLOC: test #ifndef
30134         HAVE_MALLOC/HAVE_REALLOC.
30135
30136         * lib/mountlist.h (ME_DUMMY): Don't count entries of type `auto' as
30137         dummy ones.  At least on GNU/Linux systems, `auto' means something
30138         else.
30139         From Michael Stone.
30140
30141 2002-11-21  Bruno Haible  <bruno@clisp.org>
30142
30143         Remove case insensitive option matching.
30144         * lib/argmatch.h (argcasematch): Remove declaration.
30145         (ARGCASEMATCH): Remove macro.
30146         (__xargmatch_internal): Remove case_sensitive argument.
30147         (XARGMATCH): Update.
30148         (XARGCASEMATCH): Remove macro.
30149         * lib/argmatch.c (argmatch): Renamed from __argmatch_internal. Remove
30150         case_sensitive argument.
30151         (argcasematch): Remove function.
30152         (__xargmatch_internal): Remove case_sensitive argument.
30153         (main): Use XARGMATCH instead of XARGCASEMATCH.
30154
30155         * lib/xmalloc.c: Change compile-time error message. Add comment about
30156         required autoconf version.
30157
30158 2002-11-20  Paul Eggert  <eggert@twinsun.com>
30159
30160         Merge argmatch cleanups from Bison.  Assume C89.
30161
30162         * lib/argmatch.c: Include config.h here, not in argmatch.h.
30163         Include stdlib.h, for EXIT_FAILURE.
30164         Always include <string.h>, since we assume C89.
30165         (EXIT_FAILURE): Remove pre-C89 bug workaround.
30166         * lib/argmatch.h: Do not include <config.h> or <sys/types.h>.
30167         Include <stddef.h> instead, since it's all we need for size_t.
30168         (PARAMS): Remove.  All uses removed.
30169         (ARRAY_CARDINALITY): Do not bother to #undef.
30170         (ARRAY_CARDINALITY, ARGMATCH, ARGCASEMATCH, invalid_arg,
30171         ARGMATCH_VALID, XARGMATCH, XARGCASEMATCH):
30172         Remove unnecessary parentheses.
30173         (ARGMATCH_VALID, XARGMATCH, XARGCASEMATCH):
30174         Insert necessary parentheses.
30175         (ARGMATCH_CONSTRAINT, ARGMATCH_VERIFY): New macros.
30176         (ARGMATCH_ASSERT): Use ARGMATCH_CONSTRAINT.
30177
30178 2002-11-19  Bruno Haible  <bruno@clisp.org>
30179
30180         * lib/mbswidth.c: Include mbswidth.h right at the beginning.
30181         * lib/mbswidth.h: Include <stddef.h>, for size_t.
30182
30183         * lib/mbswidth.h (PARAMS): Remove macro.
30184         (mbswidth, mbsnwidth): Use ANSI C function declarations.
30185         * lib/mbswidth.c (mbswidth, mbsnwidth): Likewise.
30186
30187         * lib/gcd.h (PARAMS): Remove macro.
30188         (gcd): Use ANSI C function declarations.
30189         * lib/gcd.c (gcd): Likewise.
30190
30191 2002-11-15  Bruno Haible  <bruno@clisp.org>
30192
30193         * lib/strcspn.c: Include <stddef.h>.
30194         (strcspn): Use ANSI C function declaration. Change return type to
30195         size_t. Use NULL.
30196         * lib/strpbrk.c: Minimize diffs to glibc. Include <stddef.h>.
30197         (strpbrk): Use NULL.
30198         * lib/strpbrk.h (PARAMS): Remove macro.
30199         (strpbrk): Use ANSI C function declaration.
30200         * lib/strstr.c: Don't include <sys/types.h>.
30201         * lib/strstr.h (PARAMS): Remove macro.
30202         (strstr): Use ANSI C function declarations.
30203
30204 2002-11-14  Karl Berry  <karl@gnu.org>
30205
30206         * config/mkinstalldirs: `do' on separate line, instead of
30207         `for var; do'.
30208
30209 2002-11-06  Bruno Haible  <bruno@clisp.org>
30210
30211         * lib/gcd.h (gcd): Change argument type to 'unsigned long'.
30212         * lib/gcd.c (gcd): Likewise.
30213
30214 2002-11-05  Bruno Haible  <bruno@clisp.org>
30215
30216         * lib/gcd.h: New file, from gettext-0.11.5.
30217         * lib/gcd.c: New file, from gettext-0.11.5.
30218
30219 2002-11-05  Bruno Haible  <bruno@clisp.org>
30220
30221         * lib/error.c [!_LIBC]: Include gettext.h instead of <libintl.h>.
30222         * lib/getopt.c [!_LIBC]: Include gettext.h instead of <libintl.h>.
30223         * lib/obstack.c [!_LIBC]: Include gettext.h instead of <libintl.h>.
30224         * lib/regex.c [!_LIBC]: Include gettext.h instead of <libintl.h>.
30225
30226         * lib/argmatch.c: Include gettext.h instead of <locale.h> and
30227         <libintl.h>.
30228         * lib/makepath.c: Include gettext.h instead of <locale.h> and
30229         <libintl.h>.
30230
30231         * lib/closeout.c: Include gettext.h instead of <libintl.h>.
30232         * lib/human.c: Include gettext.h instead of <libintl.h>.
30233         * lib/quotearg.c: Include gettext.h instead of <libintl.h>.
30234         * lib/rpmatch.c: Include gettext.h instead of <libintl.h>.
30235         * lib/unicodeio.c: Include gettext.h instead of <libintl.h>.
30236         * lib/userspec.c: Include gettext.h instead of <libintl.h>.
30237         * lib/version-etc.c: Include gettext.h instead of <libintl.h>.
30238         * lib/xmalloc.c: Include gettext.h instead of <libintl.h>.
30239         (textdomain): Remove definition.
30240         * lib/xmemcoll.c: Include gettext.h instead of <libintl.h>.
30241
30242         * lib/long-options.c: Remove include of <libintl.h> and definition of
30243         _.
30244         * lib/same.c: Remove include of <libintl.h> and definition of _.
30245
30246 2002-11-04  Owen Taylor  <otaylor@redhat.com>
30247
30248         * lib/config.charset: A few additions for Solaris.
30249
30250 2002-11-04  Bruno Haible  <haible@clisp.cons.org>
30251
30252         Make it possible to build libcharset with CC=gcc CFLAGS="-x c++".
30253         * lib/localcharset.c (locale_charset): Declare as extern "C".
30254
30255 2002-11-04  Bruno Haible  <haible@clisp.cons.org>
30256
30257         * lib/config.charset: msdos in uk_UA uses CP1125.
30258
30259 2002-11-04  Bruno Haible  <bruno@clisp.org>
30260
30261         * lib/stpcpy.h: New file, from GNU gettext-0.11.5.
30262         * lib/strcase.h: New file, from GNU gettext-0.11.5.
30263         * lib/strpbrk.h: New file, from GNU gettext-0.11.5.
30264         * lib/strstr.h: New file, from GNU gettext-0.11.5.
30265         * lib/xgetcwd.h: New file, from GNU gettext-0.11.5.
30266
30267 2002-11-04  Bruno Haible  <bruno@clisp.org>
30268
30269         * lib/localcharset.c (locale_charset): Don't return an empty string.
30270
30271 2002-11-04  Bruno Haible  <bruno@clisp.org>
30272
30273         * lib/localcharset.c (get_charset_aliases): Add more Windows specific
30274         aliases.
30275
30276 2002-11-04  Bruno Haible  <bruno@clisp.org>
30277
30278         * lib/config.charset: Update for newest glibc. Add canonical names
30279         ISO-8859-14, KOI8-T, TCVN5712-1, GEORGIAN-PS.
30280
30281 2002-11-04  Bruno Haible  <bruno@clisp.org>
30282
30283         * lib/config.charset: Add support for NetBSD.
30284
30285 2002-11-04  Bruno Haible  <bruno@clisp.org>
30286
30287         * lib/config.charset [msdosdjgpp]: For Russian, use CP866.
30288
30289 2002-11-01  Bruno Haible  <bruno@clisp.org>
30290
30291         * configure.in: Add AC_CONFIG_AUX_DIR call.
30292         (AC_OUTPUT): Add m4/Makefile, lib/Makefile. Remove doc/Makefile,
30293         test/Makefile.
30294         * Makefile.in (subdirs): Add m4, lib. Remove doc, test.
30295
30296 2002-09-28  Karl Berry  <karl@gnu.org>
30297
30298         * config/srclist.txt: can't copy install-sh/mkinstalldirs from
30299         installed automake until the next release, since changes have been
30300         made.
30301
30302 2002-09-25  Karl Berry  <karl@gnu.org>
30303
30304         * lib/strdup.c: copy from libc/string (via ../config/srclist*).
30305         * lib/getopt*: copy from libc/posix.
30306         * lib/gettext.h: copy from gettext.
30307         * lib/.cppi-disable: add strdup.c, gettext.h.
30308
30309 2002-09-25  Karl Berry  <karl@gnu.org>
30310
30311         * config/srclist.txt: enable gettext.h check.
30312         * config/config.{guess,sub}: update from prep.
30313         * config/depcomp, install-sh, mdate-sh, missing, mkinstalldirs: update
30314                 from automake 1.6.3.
30315         See srclist*.
30316
30317 2002-08-23  Stefan Monnier  <monnier@cs.yale.edu>
30318
30319         * regex.c (PATFETCH): Remove the translating fetch.
30320         (PATFETCH_RAW): Rename to PATFETCH.
30321         (set_image_of_range): New fun.
30322         (SET_RANGE_TABLE_WORK_AREA): Use it.
30323         (regex_compile): Don't translate the pattern chars so eagerly.
30324         Only do it when inserting an `exactn' bytecode or when handling
30325         a char-range.
30326         (mutually_exclusive_p): Avoid empty statement.
30327
30328 2002-07-06  Jim Meyering  <meyering@lucent.com>
30329
30330         * m4/README: Don't mention Makefile.am.in.
30331         Outline how I've tested changes to .m4 files.  Yep, it's a pain.
30332
30333 2002-07-01  Jim Meyering  <meyering@lucent.com>
30334
30335         * lib/c-stack.c: Include sys/time.h.
30336         From Volker Borchert.
30337
30338 2002-06-26  Paul Eggert  <eggert@twinsun.com>
30339
30340         * m4/fnmatch.m4 (_AC_LIBOBJ_FNMATCH): Check for btowc.
30341
30342 2002-06-26  Paul Eggert  <eggert@twinsun.com>
30343
30344         * lib/fnmatch.c, fnmatch_loop.c (WIDE_CHAR_SUPPORT):
30345         New macro.  Use it uniformly instead of
30346         (defined HAVE_WCTYPE_H && defined HAVE_WCHAR_H).
30347         It also uses HAVE_BTOWC, to fix a porting bug on Solaris 2.5.1
30348         reported by Vin Shelton.
30349
30350 2002-06-22  Paul Eggert  <eggert@twinsun.com>
30351
30352         * lib/c-stack.h (segv_handler, c_stack_action) [! defined SA_SIGINFO]:
30353         Do not assume SA_SIGINFO behavior.
30354         Bug reported by Jim Meyering on NetBSD 1.5.2.
30355
30356 2002-06-22  Jim Meyering  <meyering@lucent.com>
30357
30358         * m4/c-stack.m4: New file, from diffutils-2.8.2.
30359         * m4/prereq.m4 (jm_PREREQ): Add jm_PREREQ_C_STACK.
30360
30361         * m4/jm-macros.m4 (jm_CHECK_ALL_TYPES): Don't require AC__GNU_SOURCE,
30362         now that configure.ac uses AC_GNU_SOURCE.
30363         (jm_MACROS): Rename: jm_FUNC_FNMATCH to AC_FUNC_FNMATCH_GNU.
30364         * m4/prereq.m4 (jm_PREREQ_EXCLUDE): Likewise, wrt jm_FUNC_FNMATCH.
30365
30366         Update to latest tools.  Suggestions from Paul Eggert.
30367         * m4/stdbool.m4: New file, from diffutils-2.8.2.
30368         * m4/gnu-source.m4: Update from diffutils-2.8.2.
30369         * m4/fnmatch.m4: Likewise.
30370         * m4/prereq.m4: Change each use of AC_CHECK_HEADERS(stdbool.h)
30371         to AC_HEADER_STDBOOL
30372
30373 2002-06-22  Jim Meyering  <meyering@lucent.com>
30374
30375         * lib/fnmatch.c (ISASCII, ISPRINT): Undefine, to avoid warning about
30376         redefinition due to Solaris 2.6's definition in /usr/include/sys/euc.h.
30377
30378 2002-06-22  Jim Meyering  <meyering@lucent.com>
30379
30380         * lib/c-stack.c, lib/c-stack.h: New files, from diffutils-2.8.2.
30381
30382         * lib/exitfail.c, exitfail.h: Likewise.
30383         * lib/Makefile.am (libfetish_a_SOURCES): Add exitfail.c and exitfail.h.
30384
30385         * lib/Makefile.am (libfetish_a_SOURCES): Add fnmatch_.h in place
30386         of fnmatch.h.
30387         (EXTRA_DIST): Add fnmatch_loop.c.
30388         (libfetish_a_SOURCES): Add c-stack.c and c-stack.h.
30389
30390         * lib/fnmatch_loop.c: New file, from diffutils-2.8.2.
30391         * lib/fnmatch.c: Update from diffutils-2.8.2.
30392         * lib/fnmatch_.h: New file.  From diffutils-2.8.2.
30393         * lib/fnmatch.h: Remove file.
30394
30395 2002-06-21  Jim Meyering  <meyering@lucent.com>
30396
30397         * m4/c-bs-a.m4: Add comment, from diffutils-2.8.2.
30398         * m4/mbrtowc.m4: Likewise.
30399
30400         * m4/mbstate_t.m4: Update from diffutils-2.8.2.
30401         * m4/mbswidth.m4: Reflect name change:
30402         s/AC_MBSTATE_T/AC_TYPE_MBSTATE_T.
30403         * m4/prereq.m4 (jm_PREREQ_QUOTEARG): Likewise.
30404
30405         * m4/lib-link.m4: Update from gettext-0.11.2.
30406         * m4/gettext.m4: Likewise.
30407
30408         * m4/jm-macros.m4 (jm_CHECK_ALL_HEADERS): Check for hurd.h.
30409         From Alfred M. Szmidt.
30410
30411 2002-06-18  Paul Eggert  <eggert@twinsun.com>
30412
30413         * lib/file-type.h: Report an error if neither S_ISREG nor
30414         S_IFREG is defined, instead of using a test specific to glibc
30415         2.2.  This should be safe, since POSIX requires S_ISREG and
30416         Unix Version 7 had S_IFREG.  We don't need to check for
30417         <sys/types.h> since we don't use any symbols that it defines.
30418
30419 2002-06-15  Richard Dawe  <richdawe@bigfoot.com>
30420
30421         * lib/Makefile.am (lstat.c, stat.c, .sin.sed): Use t-$@, rather than
30422         $@-t, so that each temporary file name is unique and valid in the first
30423         8 characters, for operation under DOS.
30424
30425 2002-06-15  Paul Eggert  <eggert@twinsun.com>
30426
30427         * m4/jm-macros.m4 (jm_CHECK_ALL_TYPES): Check for st_author.
30428
30429 2002-06-15  Jim Meyering  <meyering@lucent.com>
30430
30431         Work even with DJGPP 2.03, which lacks support for symlinks.
30432         From Richard Dawe.
30433         * lib/xstat.in (S_ISLNK): Define to 0 if neither S_ISLNK nor S_IFLNK
30434         is defined.
30435         * lib/lchown.c (S_ISLNK): Likewise.
30436
30437 2002-06-15  Jim Meyering  <meyering@lucent.com>
30438
30439         * lib/file-type.h (FILE_TYPE_H): Guard entire contents with #ifndef.
30440         For GNU libc 2.2 and newer, ensure that <sys/types.h> and <sys/stat.h>
30441         have been included before this file.
30442
30443 2002-06-14  Jim Meyering  <meyering@lucent.com>
30444
30445         * lib/file-type.h: Use the version from diffutils-2.8.2.
30446         * lib/file-type.c: Likewise.
30447
30448 2002-06-07  Jim Meyering  <meyering@lucent.com>
30449
30450         * m4/prereq.m4 (jm_PREREQ_STAT): Check for sys/param.h and sys/mount.h.
30451         They're needed at least for NetBSD 1.5.2.
30452         ($statxfs_includes): Include those same headers.
30453         ($statxfs_includes): Include sys/vfs.h if available.
30454         ($statxfs_includes): Likewise for sys/statvfs.h.
30455         Check for the following members in both structs statfs and statvfs:
30456         f_basetype, f_type, f_fsid.__val, f_namemax, f_namelen.
30457
30458 2002-06-01  Jim Meyering  <meyering@lucent.com>
30459
30460         * m4/d-type.m4 (jm_CHECK_TYPE_STRUCT_DIRENT_D_TYPE): Rename macro:
30461         s/D_TYPE_IN_DIRENT/HAVE_STRUCT_DIRENT_D_TYPE/.
30462
30463 2002-05-28  Jim Meyering  <meyering@lucent.com>
30464
30465         * m4/readdir.m4 (jm_FUNC_READDIR): Undefine `mkdir', not `rmdir'.
30466         Reported by Volker Borchert.
30467
30468 2002-05-27  Jim Meyering  <meyering@lucent.com>
30469
30470         Fix a problem seen only on nonconforming systems whereby ls.c's
30471         use of localtime, and then of gettimeofday would cause trouble:
30472         the localtime call used to initialize rpl_gettimeofday's save
30473         mechanism would clobber ls's current local time information so
30474         that in any long listing the first file would always be listed
30475         with date 1970-01-01.  Analysis by Volker Borchert.
30476
30477         * lib/gettimeofday.c (localtime): Undefine.
30478         (rpl_localtime): New function.
30479
30480 2002-05-27  Jim Meyering  <meyering@lucent.com>
30481
30482         * m4/gettimeofday.m4 (AC_FUNC_GETTIMEOFDAY_CLOBBER): Also replace
30483         localtime.
30484
30485         * m4/readdir.m4 (jm_FUNC_READDIR): Undefine `rmdir' so we don't try to
30486         use the replacement function; it wouldn't resolve at link time.
30487         Reported by Volker Borchert.
30488
30489 2002-05-22  Jim Meyering  <meyering@lucent.com>
30490
30491         * lib/Makefile.am (libfetish_a_SOURCES): Add file-type.c and
30492         file-type.h.
30493         * lib/file-type.h: New file.
30494         * lib/file-type.c (file_type): New file/function.  Extracted from
30495         diffutils.
30496
30497 2002-04-30  Jim Meyering  <meyering@lucent.com>
30498
30499         * m4/prereq.m4 (jm_PREREQ): Add jm_PREREQ_STAT.
30500
30501 2002-04-29  Paul Eggert  <eggert@twinsun.com>
30502
30503         * m4/prereq.m4 (jm_PREREQ_SIG2STR): Remove; all callers changed.
30504
30505 2002-04-29  Paul Eggert  <eggert@twinsun.com>
30506
30507         * m4/prereq.m4 (jm_PREREQ_HARD_LOCALE): Check for stdlib.h.
30508         Do not check for alloca.h (no longer used) or stdbool.h (was never
30509         used?).  Add AM_C_PROTOTYPES since hard-locale.h uses it.
30510
30511 2002-04-29  Paul Eggert  <eggert@twinsun.com>
30512
30513         * lib/hard-locale.c: Upgrade to version used in GNU Diffutils 2.8.1.
30514
30515 2002-04-29  Jim Meyering  <meyering@lucent.com>
30516
30517         * m4/jm-macros.m4 (jm_MACROS): Remove use of AC_FUNC_STRNLEN.
30518         * m4/prereq.m4: Add jm_PREREQ_STRNLEN.
30519         Use AC_FUNC_STRNLEN here instead.
30520
30521         * m4/jm-macros.m4: Don't AC_REQUIRE([AC_PROG_CC_STDC]).
30522         With autoconf-2.53a, it's part of AC_PROG_CC.
30523
30524 2002-04-28  Paul Eggert  <eggert@twinsun.com>
30525
30526         * m4/jm-macros.m4 (jm_MACROS): Add AC_REPLACE_FUNCS(sig2str).
30527         * m4/prereq.m4 (jm_PREREQ): Add jm_PREREQ_SIG2STR.
30528
30529 2002-04-28  Paul Eggert  <eggert@twinsun.com>
30530
30531         * lib/sig2str.h, lib/sig2str.c: New files.
30532         * lib/Makefile.am (libfetish_a_SOURCES): Add sig2str.h.
30533
30534 2002-04-28  Paul Eggert  <eggert@twinsun.com>
30535
30536         * lib/sig2str.h (SIGNUM_BOUND): Do not use WTERMSIG, to avoid
30537         depending on <sys/wait.h> and WTERMSIG.  Default to 64 instead
30538         of 127, since 64 is the largest conceivable number for ancient
30539         nonstandard hosts.
30540         * lib/sig2str.c: Do not include <sys/wait.h>; no longer needed.
30541
30542 2002-04-28  Jim Meyering  <meyering@lucent.com>
30543
30544         * lib/sig2str.c (WTERMSIG): Remove definition (unused).
30545
30546 2002-04-24  Jim Meyering  <meyering@lucent.com>
30547
30548         * m4/prereq.m4 (jm_PREREQ_HARD_LOCALE): New macro.
30549         (jm_PREREQ): Use it.
30550
30551         * m4/getloadavg.m4: Check for these headers: locale.h unistd.h
30552         mach/mach.h fcntl.h.
30553         Check for this function: setlocale.
30554
30555 2002-04-24  Jim Meyering  <meyering@lucent.com>
30556
30557         * lib/gettext.h: New file, from Gettext.
30558         * lib/Makefile.am (INCLUDES): Remove -I../intl.
30559         (libfetish_a_SOURCES): Add gettext.h.
30560
30561 2002-04-16  Jim Meyering  <meyering@lucent.com>
30562
30563         * m4/prereq.m4 (jm_PREREQ_READUTMP): Also check for these members:
30564         ut_pid, ut_id, ut_exit.
30565
30566 2002-04-16  Jim Meyering  <meyering@lucent.com>
30567
30568         * lib/readutmp.h (UT_TYPE): Remove definition (now in who.c).
30569         (HAVE_STRUCT_XTMP_UT_EXIT, HAVE_STRUCT_XTMP_UT_ID): Define.
30570         (HAVE_STRUCT_XTMP_UT_PID, HAVE_STRUCT_XTMP_UT_TYPE): Define.
30571
30572 2002-04-12  Jim Meyering  <meyering@lucent.com>
30573
30574         * m4/ls-mntd-fs.m4 (checking for getmntinfo function...): Remove
30575         now-bogus check for f_type in sys/mount.h.  Instead, just test for the
30576         existence of the getmntinfo function.  Needed for Darwin 5.3.
30577
30578         * m4/dirfd.m4 (UTILS_FUNC_DIRFD): Also detect when dirfd is a macro.
30579         This is necessary at least on Darwin 5.3.
30580
30581         * m4/jm-macros.m4: Don't AC_REPLACE(strnlen), now that we use
30582         AC_FUNC_STRNLEN.  Otherwise, we'd end up putting two copies of
30583         strnlen.o in the library, and that makes some versions of ranlib
30584         object.
30585
30586 2002-04-12  Jim Meyering  <meyering@lucent.com>
30587
30588         * lib/dirfd.h (dirfd): Elide prototype if dirfd is a macro.
30589
30590 2002-04-09  Jim Meyering  <meyering@lucent.com>
30591
30592         * m4/malloc.m4: (jm_FUNC_MALLOC): Change the `checking ...' message
30593         to be more precise.  Rather than saying we're checking whether the
30594         function `works', say what we're testing.
30595         * m4/realloc.m4 (jm_FUNC_REALLOC): Likewise.
30596         Reported by Bruno Haible.
30597
30598 2002-03-10  Jim Meyering  <meyering@lucent.com>
30599
30600         * lib/makepath.c (make_path): Remove a comma from a diagnostic.
30601         Suggestion from Santiago Vila.
30602
30603 2002-03-08  Jim Meyering  <meyering@lucent.com>
30604
30605         * lib/rename.c: Mention that this wrapper is needed also on
30606         mips-dec-ultrix4.4 systems.
30607
30608 2002-03-02  Jim Meyering  <meyering@lucent.com>
30609
30610         * lib/gettime.c (gettime): Test HAVE_CLOCK_GETTIME,
30611         not HAVE_CLOCK_SETTIME.
30612
30613 2002-02-27  Paul Eggert  <eggert@twinsun.com>
30614
30615         * m4/jm-macros.m4 (jm_MACROS): Do not replace stime; no longer used.
30616         Check for clock_settime.
30617
30618 2002-02-27  Paul Eggert  <eggert@twinsun.com>
30619
30620         * lib/nanosleep.h: Rename to....
30621         * lib/timespec.h: New name for nanosleep.h.  All uses changed.
30622
30623         * lib/gettime.c: New file.
30624         * lib/settime.c: New file.
30625         * lib/stime.c: Remove.
30626
30627         * lib/Makefile.am (libfetish_a_SOURCES): Add gettime.c, settime.c,
30628         timespec.h.  Remove nanosleep.h.
30629
30630 2002-02-25  Paul Eggert  <eggert@twinsun.com>
30631
30632         * m4/acl.m4: New file.
30633         * m4/jm-macros.m4 (jm_MACROS): Require AC_FUNC_ACL.
30634         Do not check for acl or sys/acl.h, as AC_FUNC_ACL does that now.
30635
30636 2002-02-25  Paul Eggert  <eggert@twinsun.com>
30637
30638         * lib/acl.c, lib/acl.h: New files.
30639         * lib/Makefile.am (libfetish_a_SOURCES): Add acl.h, acl.c.
30640
30641 2002-02-24  Jim Meyering  <meyering@lucent.com>
30642
30643         * lib/strnlen.c (strnlen): Define-away/undef so that an inconsistent
30644         prototype in string.h (on at least AIX4.3.2.0 w/gcc-2.95.3) doesn't
30645         cause trouble.  Reported by Nelson Beebe.
30646
30647 2002-02-23  Paul Eggert  <eggert@twinsun.com>
30648
30649         * lib/path-concat.c (xpath_concat): Reorder code to pacify
30650         compilers that don't know that xalloc_die never returns.
30651
30652 2002-02-20  Jim Meyering  <meyering@lucent.com>
30653
30654         * lib/getdate.c: Regenerate using bison-1.33.
30655
30656 2002-02-17  Jim Meyering  <meyering@lucent.com>
30657
30658         * config/config.guess (main): Don't use `head -1'; it's no longer
30659         portable. Use `sed 1q' instead.
30660
30661 2002-02-16  gettextize  <bug-gnu-gettext@gnu.org>
30662
30663         * m4/codeset.m4: Upgrade to gettext-0.11.
30664         * m4/gettext.m4: Upgrade to gettext-0.11.
30665         * m4/glibc21.m4: Upgrade to gettext-0.11.
30666         * m4/iconv.m4: Upgrade to gettext-0.11.
30667         * m4/isc-posix.m4: Upgrade to gettext-0.11.
30668         * m4/lcmessage.m4: Upgrade to gettext-0.11.
30669         * m4/lib-ld.m4: New file, from gettext-0.11.
30670         * m4/lib-link.m4: New file, from gettext-0.11.
30671         * m4/lib-prefix.m4: New file, from gettext-0.11.
30672         * m4/progtest.m4: Upgrade to gettext-0.11.
30673
30674 2002-02-15  Paul Eggert  <eggert@twinsun.com>
30675
30676         * m4/prereq.m4 (jm_PREREQ_POSIXVER): New macro.
30677         (jm_PREREQ): Use it.
30678
30679 2002-02-15  Paul Eggert  <eggert@twinsun.com>
30680
30681         * lib/posixver.c, lib/posixver.h: New files.
30682         * lib/Makefile.am (libfetish_a_SOURCES): Add them.
30683
30684 2002-02-02  Paul Eggert  <eggert@twinsun.com>
30685             Bruno Haible  <bruno@clisp.org>
30686
30687         * lib/unicodeio.h (print_unicode_char): Add exit_on_error argument.
30688         (fwrite_success_callback): New declaration.
30689         * lib/unicodeio.c (unicode_to_mb): New function, extracted from
30690         print_unicode_char. Call failure callback instead of error.
30691         (fwrite_success_callback): New function.
30692         (exit_failure_callback): New function.
30693         (fallback_failure_callback): New function.
30694         (print_unicode_char): Call unicode_to_mb.
30695
30696 2002-01-26  Jim Meyering  <meyering@lucent.com>
30697
30698         * m4/jm-macros.m4 (jm_MACROS): Require autoconf-2.52g.
30699         * m4/strnlen.m4: Remove file, now that it's part of autoconf.
30700
30701 2002-01-26  Jim Meyering  <meyering@lucent.com>
30702
30703         * lib/Makefile.am (getdate$U.o): Depend on unlocked-io.h.
30704
30705 2002-01-22  Paul Eggert  <eggert@twinsun.com>
30706
30707         * m4/jm-macros.m4 (jm_MACROS): Require AC_FUNC_FSEEKO.
30708
30709 2002-01-22  Jim Meyering  <meyering@lucent.com>
30710
30711         * lib/Makefile.am (Makefile): Don't depend on $(BUILT_SOURCES).
30712         Otherwise, some versions of automake would omit the rule that makes
30713         Makefile from Makefile.in.
30714
30715 2002-01-21  Paul Eggert  <eggert@twinsun.com>
30716
30717         * lib/xmemcoll.h, lib/xmemcoll.c: New files.
30718         * lib/Makefile.am (libfetish_a_SOURCES): Add them.
30719         * lib/memcoll.c: Include errno.h, and declare errno if not defined.
30720         (memcoll): Set errno to zero if there is no error.
30721
30722         * lib/quotearg.c (quotearg_buffer_restyled):
30723         Fix bug with quoting buffers containing NUL when backslashing escapes.
30724         This bug was exposed by the other changes in this patch.
30725         (quotearg_n_options): New arg ARGSIZE.
30726         All callers changed.
30727         (quoting_options_from_style): New function.
30728         (quotearg_n_style): Use it.
30729         (quotearg_n_style_mem): New function.
30730
30731         * lib/quotearg.h (quotearg_n_style_mem): New function.
30732
30733 2002-01-19  Jim Meyering  <meyering@lucent.com>
30734
30735         * m4/jm-macros.m4 (jm_MACROS): Use AC_FUNC_STRNLEN.
30736         Remove useless quotes: DF_PROG="df".
30737         * m4/strnlen.m4: New file.
30738
30739 2002-01-16  Paul Eggert  <eggert@twinsun.com>
30740
30741         * lib/backupfile.c (ISDIGIT): Comment fix.
30742         * lib/getdate.y (ISDIGIT): Likewise.
30743         * lib/posixtm.c (ISDIGIT, year): Likewise.
30744         * lib/strverscmp.c (ISDIGIT): Likewise.
30745         * lib/userspec.c (ISDIGIT): Likewise.
30746
30747 2002-01-16  Jim Meyering  <meyering@lucent.com>
30748
30749         * lib/getdate.y: Add three semicolons, each just before a closing
30750         brace. Bison (as of version 1.31) no longer papers over that mistake.
30751
30752 2002-01-05  Jim Meyering  <meyering@lucent.com>
30753
30754         * lib/version-etc.c (version_etc_copyright): Update copyright year.
30755
30756 2001-12-19  Paul Eggert  <eggert@twinsun.com>
30757
30758         * lib/closeout.c (close_stdout_status): If ferror (stdout), do
30759         not silently exit merely because the output buffer happens to
30760         have nothing pending.
30761
30762 2001-12-18  Paul Eggert  <eggert@twinsun.com>
30763
30764         See the big note in ../ChangeLog.
30765         * lib/human.c (suffixes): Prefer K to k for 1024.
30766         (generate_suffix_backwards): New function.
30767         (human_readable_inexact): Use it.
30768         * lib/xstrtol.c (__xstrtol): If there is no number but there
30769         is a valid suffix, assume 1.  "MB" now means decimal, "MiB" binary.
30770         Accept 'K' as well as 'k'.
30771
30772 2001-12-15  Jim Meyering  <meyering@lucent.com>
30773
30774         * lib/regex.h (__restrict_arr): Update from libc.
30775
30776         * lib/mountlist.h (ME_REMOTE): Recognize file systems of type smbfs
30777         as `remote' if the name starts with `//'.  Suggested by Michael Stone.
30778         (STREQ): Define.
30779
30780 2001-12-14  Jim Meyering  <meyering@lucent.com>
30781
30782         * m4/jm-macros.m4 (jm_MACROS): Check for iswspace.
30783         Suggestion from Bruno Haible.
30784
30785 2001-12-10  Jim Meyering  <meyering@lucent.com>
30786
30787         * lib/linebuffer.c: Remove explicit declarations of xmalloc and
30788         xrealloc, Instead, include "xalloc.h".
30789         (initbuffer): Don't cast xmalloc return value to char*.
30790         (readline): Reword comment.
30791         Don't cast xrealloc return value to char*
30792         Return NULL, not 0.
30793
30794 2001-12-09  Jim Meyering  <meyering@lucent.com>
30795
30796         * lib/modechange.c (mode_compile): Add cast to avoid pedantic warning
30797         about `signed and unsigned type in conditional expression'.
30798         * lib/posixtm.c (posix_time_parse): Likewise.
30799
30800         * lib/xreadlink.c (xreadlink): Add cast to avoid a pedantic warning.
30801
30802         * lib/readtokens.c (readtoken): Declare an index to be of type unsigned
30803         to avoid a pedantic warning.
30804
30805         * lib/getstr.c: Don't include assert.h.
30806         (getstr): Remove warning-evoking assertions.
30807         Return -1 if offset parameter is out of bounds.
30808         Change the type of a local from int to size_t.
30809
30810         * lib/strftime.c (my_strftime_localtime_r): Include this function
30811         definition in the `#if ! HAVE_TM_GMTOFF' block.
30812
30813         * lib/xgethostname.c: Remove declarations of xmalloc and xrealloc.
30814         Include xalloc.h instead.
30815
30816 2001-12-02  Jim Meyering  <meyering@lucent.com>
30817
30818         * lib/tempname.c: Don't declare getenv, thus reverting the change of
30819         2001-11-18.  It's no longer necessary, now that stdlib.h is always
30820         included.
30821
30822         * lib/regex.c [!__BOUNDED_POINTERS__]: Define away __bounded,
30823         __unbounded, and __ptrvalue.  Reported by Uwe H. Steinfeld.
30824
30825 2001-11-30  Akim Demaille  <akim@epita.fr>
30826
30827         * lib/xstrdup.c: Include xalloc.h, so that xstrdup is declared
30828         before being defined.
30829
30830 2001-11-27  Paul Eggert  <eggert@twinsun.com>
30831
30832         * lib/quotearg.h (quotearg_n, quotearg_n_style):
30833         First arg is int, not unsigned.
30834         * lib/quotearg.c (quotearg_n, quotearg_n_style): Likewise.
30835         (SIZE_MAX, UINT_MAX): New macros.
30836         (quotearg_n_options): Abort if N is negative.
30837         Avoid overflow check on hosts where size_t is 64 bits and int
30838         is 32 bits, as overflow is impossible there.
30839         Fix off-by-one typo that caused unnecessary reallocation.
30840
30841 2001-11-27  Jim Meyering  <meyering@lucent.com>
30842
30843         * lib/tempname.c: Merge with version from libc.
30844         * lib/regex.c: Likewise.
30845
30846         * lib/tempname.c: Include stdlib.h unconditionally.  On some old
30847         systems for which STDC_HEADERS is 0, it was not included, resulting in
30848         a warning about an integer-to-pointer conversion problem with getenv.
30849         Reported by Volker Borchert.
30850
30851 2001-11-26  Jim Meyering  <meyering@lucent.com>
30852
30853         * lib/gtod.h: Remove file.
30854         * lib/Makefile.am (libfetish_a_SOURCES): Remove gtod.h.
30855         * lib/gettimeofday.c: Don't include gtod.h.
30856         (GTOD_init): Remove function.
30857         (rpl_gettimeofday): Do its job here instead, rather than aborting.
30858         Suggestion from Volker Borchert.
30859
30860 2001-11-23  Jim Meyering  <meyering@lucent.com>
30861
30862         * lib/hash.h (struct hash_table): Don't define here.  Merely declare
30863         it.
30864         * lib/hash.c (struct hash_table): Define it here instead.
30865
30866 2001-11-22  Jim Meyering  <meyering@lucent.com>
30867
30868         * lib/hash.h: Bracket contents of file with #ifndef HASH_H_ ... #endif.
30869
30870 2001-11-20  Jim Meyering  <meyering@lucent.com>
30871
30872         * m4/mkstemp.m4 (UTILS_FUNC_MKSTEMP): Update comment to reflect that
30873         SunOS 4.1.4 and Solaris 2.5.1 lose, too.
30874
30875 2001-11-19  Jim Meyering  <meyering@lucent.com>
30876
30877         * m4/mkstemp.m4 (UTILS_FUNC_MKSTEMP): Don't bother with a temporary
30878         directory.  Use "conftestXXXXXX" as the template.
30879         Suggestion from Paul Eggert.
30880
30881         * m4/mkstemp.m4 (UTILS_FUNC_MKSTEMP): Close each descriptor
30882         immediately, so the test doesn't mistakenly hit the max-open-files
30883         limit.
30884
30885 2001-11-18  Paul Eggert  <eggert@twinsun.com>
30886
30887         * lib/tempname.c (TMP_MAX): Remove; no longer needed.
30888         (TEMPORARIES): New macro.
30889         (__gen_tempname): Use TEMPORARIES rather than TMP_MAX.  This
30890         removes an artificial limitation (e.g. HP-UX 10.20, where
30891         TMP_MAX is 17576).
30892
30893 2001-11-18  Jim Meyering  <meyering@lucent.com>
30894
30895         * m4/prereq.m4 (jm_PREREQ_TEMPNAME): Check for declaration of getenv.
30896
30897 2001-11-18  Jim Meyering  <meyering@lucent.com>
30898
30899         * lib/tempname.c [!HAVE_DECL_GETENV]: Declare getenv to avoid warning
30900         on SunOS 4.
30901
30902         * lib/Makefile.am (Makefile): Depend on $(BUILT_SOURCES), so those
30903         files will be created before anything else.
30904
30905 2001-11-17  Paul Eggert  <eggert@twinsun.com>
30906
30907         * m4/jm-winsz1.m4 (jm_WINSIZE_IN_PTEM): Do not define
30908         WINSIZE_IN_PTEM if <termios.h> defines struct winsize.
30909
30910 2001-11-17  Jim Meyering  <meyering@lucent.com>
30911
30912         * m4/mkstemp.m4 (UTILS_FUNC_MKSTEMP): New file and macro.
30913         Prompted by a report from Bob Proulx.
30914
30915         * m4/jm-macros.m4 (jm_MACROS): Don't test for mkstemp here.
30916         Instead, require UTILS_FUNC_MKSTEMP.
30917
30918 2001-11-17  Jim Meyering  <meyering@lucent.com>
30919
30920         * m4/jm-macros.m4 (jm_MACROS): Remove code to set POW_LIBM.
30921         Now, that's done as part of AC_FUNC_STRTOD.
30922
30923 2001-11-17  Jim Meyering  <meyering@lucent.com>
30924
30925         * lib/modechange.c (mode_adjust): Fix error introduced on 1999-04-26
30926         that made e.g., `chmod a=,o=w,g=o F' cause F to be group readable
30927         rather than group writable.  Patch by Juan F. Codagnone.
30928
30929         * lib/readtokens.c: Remove explicit declarations of xmalloc and
30930         xrealloc, Instead, include "xalloc.h".
30931
30932         * lib/mountlist.c: Include unlocked-io.h after all system headers.
30933         Remove explicit declarations of xmalloc, xrealloc,
30934         and xstrdup.  Instead, include "xalloc.h".
30935
30936         * lib/argmatch.c, closeout.c, error.c, exclude.c: Include
30937         unlocked-io.h.
30938         * lib/fatal.c, getdate.y, getpass.c, getstr.c, getusershell.c:
30939         Likewise.
30940         * lib/mountlist.c, posixtm.c, readtokens.c, readutmp.c: Likewise.
30941
30942         * lib/regex.c, sha.c, version-etc.c, yesno.c: Likewise.
30943         Reported by Padraig Brady.
30944
30945         * lib/mkstemp.c: #undef mkstemp.
30946         Include config.h.
30947         (rpl_mkstemp): Rename from mkstemp.
30948         Protoize.
30949
30950 2001-11-16  Jim Meyering  <meyering@lucent.com>
30951
30952         * lib/physmem.c [HAVE_SYS_PSTAT_H]: Include <sys/pstat.h>.
30953         (physmem_total) [HAVE_PSTAT_GETSTATIC]: If sysconf couldn't be used to
30954         determine the amount of total physical memory, use pstat_getstatic.
30955         HPUX-11 doesn't define _SC_PHYS_PAGES.
30956         (physmem_available) [HAVE_PSTAT_GETSTATIC && HAVE_PSTAT_GETDYNAMIC]:
30957         If sysconf couldn't be used to determine the amount of available
30958         physical memory, use both pstat_getstatic and pstat_getdynamic.
30959         Based on a patch from Bob Proulx.
30960
30961 2001-11-10  Jim Meyering  <meyering@lucent.com>
30962
30963         * m4/prereq.m4 (jm_PREREQ_PHYSMEM): New function.
30964         (jm_PREREQ): Use it.
30965
30966 2001-11-09  Jim Meyering  <meyering@lucent.com>
30967
30968         * m4/jm-macros.m4: Require autoconf-2.52f.
30969         (AC_FUNC_ERROR_AT_LINE, AC_FUNC_OBSTACK, AC_FUNC_STRTOD):
30970         Use these AC_-prefixed names, not the AM_-prefixed ones.
30971
30972         * m4/afs.m4 (jm_AFS): Quote the body.  Patch by Akim Demaille.
30973
30974 2001-11-05  Jim Meyering  <meyering@lucent.com>
30975
30976         * lib/xstat.in (slash_aware_lstat): Correct a misleading comment.
30977
30978 2001-11-04  Jim Meyering  <meyering@lucent.com>
30979
30980         * m4/fpending.m4: Remove unused cruft that saved, set, and restored
30981         $DEFS.
30982
30983 2001-11-03  Jim Meyering  <meyering@lucent.com>
30984
30985         * m4/jm-glibc-io.m4n (jm_FUNC_GLIBC_UNLOCKED_IO): Quote first arg
30986         of AC_DEFUN.
30987
30988         * m4/dirfd.m4 (UTILS_FUNC_DIRFD): Rework so dirfd.c doesn't have to
30989         know the name of the variable in the macro definition.
30990
30991 2001-11-03  Jim Meyering  <meyering@lucent.com>
30992
30993         * lib/argmatch.h (ARGMATCH_TO_ARGUMENT): Remove casts of first two args
30994         in argmatch_to_argument call.
30995
30996         * lib/dirfd.c (dirfd): Reflect the fact that DIR_TO_FD now takes an
30997         argument.
30998
30999         * lib/hash.c (hash_clear): Fix a bug that could lead to an infloop or
31000         e.g., a fault due to an attempt to free a NULL pointer.
31001
31002 2001-11-01  Jim Meyering  <meyering@lucent.com>
31003
31004         * m4/dirfd.m4 (UTILS_FUNC_DIRFD): New macro.
31005         * m4/jm-macros.m4 (jm_MACROS): Require UTILS_FUNC_DIRFD.
31006
31007 2001-11-01  Jim Meyering  <meyering@lucent.com>
31008
31009         * lib/dirfd.c, lib/dirfd.h: New files.
31010         * lib/Makefile.am (libfetish_a_SOURCES): Add dirfd.h.
31011
31012         * lib/hash.c (hash_print) [TESTING]: Clean up.
31013
31014 2001-10-22  Paul Eggert  <eggert@twinsun.com>
31015
31016         * lib/hard-locale.c (alloca): Define to __builtin_alloca if __GNUC__,
31017         to avoid a warning if -Wall.
31018
31019 2001-10-22  Jeff Bailey  <jbailey@outpost.dnsalias.org>
31020
31021         * README: New file
31022         * doc/*: Add COPYING, COPYING.LIB, COPYING.DOC, fdl.texi
31023         (per RMS's instructions, this is now the canonical source)
31024         * lgpl/, gpl/: New directories.
31025
31026 2001-10-21  Paul Eggert  <eggert@twinsun.com>
31027
31028         * lib/regex.c (uintptr_t): Remove macro and decl; it's config.h's job.
31029
31030 2001-10-21  Jim Meyering  <meyering@lucent.com>
31031
31032         * lib/obstack.c (_): Honor the setting of ENABLE_NLS.  Otherwise,
31033         this code would end up calling gettext even in packages built
31034         with --disable-nls.
31035         * lib/getopt.c (_): Likewise.
31036         * lib/regex.c (_): Likewise.
31037
31038 2001-10-20  Paul Eggert  <eggert@twinsun.com>
31039
31040         * m4/error.m4 (jm_PREREQ_ERROR):
31041         Do not invoke AC_CHECK_FUNCS with strerror_r, as
31042         AC_FUNC_STRERROR_R does that.
31043         Check for strerror declaration.
31044
31045         * m4/strerror_r.m4: Add copyright notice, as nontrivial m4 files
31046         are supposed to have them these days.
31047         (AC_FUNC_STRERROR_R): Always do char* test, so that it gets cached.
31048         Merge changes from latest Autoconf CVS.
31049         Rename ac_cv_func_strerror_r_works to ac_cv_func_strerror_r_char_p,
31050         and rename HAVE_WORKING_STRERROR_R to STRERROR_R_CHAR_P, since
31051         POSIX decided to standardize on the int flavor of strerror_r.
31052
31053 2001-10-20  Paul Eggert  <eggert@twinsun.com>
31054
31055         * lib/error.c (strerror_r): Do not declare unless !_LIBC.
31056         Do not check for HAVE_DECL_STRERROR_R missing unless STRERROR_R_CHAR_P.
31057         Use strerror_r that is only a macro, even if it is not a function.
31058         (strerror): Check for HAVE_DECL_STRERROR before declaring.
31059         (private_strerror): Use prototypes, not old-style function definition.
31060         (print_errno_message): New function.
31061         Support the POSIX 'int'-flavored strerror_r, as well as the traditional
31062         char*-flavored one.
31063         (error_tail, error, error_at_line): Use it.
31064
31065 2001-10-11  Jim Meyering  <meyering@lucent.com>
31066
31067         * lib/argmatch.c (argmatch_invalid): Use quotearg_n_style (0, ...
31068         and quote_n (1, ... to avoid clobbering a buffer.
31069
31070 2001-10-05  Jim Meyering  <meyering@lucent.com>
31071
31072         * lib/Makefile.am: (libfetish_a_SOURCES): Add hash-pjw.c and
31073         hash-pjw.h.
31074         * lib/hash-pjw.c: New file (factored out of fileutils' remove.c).
31075         * lib/hash-pjw.h: New file.
31076
31077 2001-09-30  Jim Meyering  <meyering@lucent.com>
31078
31079         * m4/ls-mntd-fs.m4 (jm_LIST_MOUNTED_FILESYSTEMS): See if
31080         `struct fsstat' has the `f_fstypename' member.
31081         Use that to define FS_TYPE, which is now used to make
31082         the getfsstat link test tighter.
31083
31084 2001-09-30  Jim Meyering  <meyering@lucent.com>
31085
31086         * lib/mountlist.c [MOUNTED_GETFSSTAT]:
31087         Include <sys/ucred.h>, for Apple Darwin.
31088         Include sys/mount.h and sys/fs_types.h only if available.
31089         (FS_TYPE): Define.
31090         (read_filesystem_list): Use FS_TYPE.
31091
31092 2001-09-29  Paul Eggert  <eggert@twinsun.com>
31093
31094         * lib/exclude.c (excluded_filename): 0 -> false, since it's
31095         a boolean context.
31096
31097 2001-09-29  Jim Meyering  <meyering@lucent.com>
31098
31099         * m4/ls-mntd-fs.m4 (jm_LIST_MOUNTED_FILESYSTEMS)
31100         [one-argument getmntent function]): Include stdio.h before mntent.h.
31101         SunOS 4.1.x needs it for the declaration of `FILE'.
31102         Patch by Volker Borchert.
31103
31104         * m4/ls-mntd-fs.m4 (jm_LIST_MOUNTED_FILESYSTEMS)
31105         Check for these headers: sys/param.h sys/ucred.h sys/mount.h
31106         sys/fs_types.h, and make the link-test for getfsstat guard #include
31107         directives with appropriate #if HAVE_*_H tests so that we can
31108         detect getfsstat on Apple Darwin1.3.7 systems.
31109         Reported by Nelson Beebe.
31110         Fix harmless typo in cache variable name: s/getsstat/getfsstat/.
31111
31112 2001-09-28  Paul Eggert  <eggert@twinsun.com>
31113
31114         Fix bug reported by Petter Reinholdtsen for HP-UX 10.20, which
31115         #defines strtoimax.  Also treat the other strto* functions
31116         like strtoimax.
31117
31118         * m4/xstrtoimax.m4 (jm_AC_PREREQ_XSTRTOIMAX):
31119         Check for strtoul and strtoumax,
31120         as those declarations are made even in the signed case.
31121         * m4/xstrtoumax.m4 (jm_AC_PREREQ_XSTRTOUMAX):
31122         Likewise, for strtol and strtoimax.
31123
31124 2001-09-28  Paul Eggert  <eggert@twinsun.com>
31125
31126         Fix bug reported by Petter Reinholdtsen for HP-UX 10.20, which
31127         #defines strtoimax.  Also treat the other strto* functions
31128         like strtoimax.
31129
31130         * lib/xstrtol.c (strtol): Do not declare if HAVE_DECL_STRTOL.
31131         (strtoul): Do not declare if HAVE_DECL_STRTOUL.
31132         (strtoimax, strtoumax): Do not declare if already defined as a macro.
31133
31134 2001-09-26  Jim Meyering  <meyering@lucent.com>
31135
31136         Most macros in unlocked-io.h had the wrong number of arguments.
31137         * lib/gen-uio: New script.
31138         (USE_UNLOCKED_IO): Define to 1 if not already defined.
31139         * lib/unlocked-io.hin: Remove file.
31140         * lib/Makefile.am (unlocked-io.h): Rewrite to use a separate script,
31141         rather than trying to embed it here.
31142         (EXTRA_DIST): Add gen-uio.  Remove unlocked-io.hin
31143         Reported by Padraig Brady.
31144
31145 2001-09-25  Volker Borchert  <bt@teknon.de>
31146
31147         * lib/gettimeofday.c (rpl_gettimeofday): Declare local variable
31148         `result'.
31149
31150 2001-09-24  Jim Meyering  <meyering@lucent.com>
31151
31152         * m4/gettext.m4: Use the version from gettext-0.10.40, not CVS.
31153
31154 2001-09-23  Jim Meyering  <meyering@lucent.com>
31155
31156         * m4/ls-mntd-fs.m4 (jm_LIST_MOUNTED_FILESYSTEMS): Add a compile-test
31157         instead of the mere test for existence of mntent.h.  The latter
31158         would get a false-positive on AIX 3.4 systems.
31159         In the outer getmntent if-block, don't die if neither of the getmntent
31160         tests succeeds.  Instead, just fall through and continue with the
31161         remaining tests.
31162
31163 2001-09-23  Jim Meyering  <meyering@lucent.com>
31164
31165         * lib/mountlist.c: Remove useless parentheses in #if directives.
31166         (MOUNTED) [!defined MOUNTED]: Define to _PATH_MOUNTED, for when
31167         the deprecated MOUNTED symbol is no longer defined in mntent.h.
31168
31169 2001-09-22  Jim Meyering  <meyering@lucent.com>
31170
31171         * m4/gettext.m4: New file.  From gettext.
31172         * m4/lcmessage.m4: Sync with gettext -- this changes only comments.
31173         * m4/progtest.m4: Likewise
31174         * m4/isc-posix.m4: Decrement serial number to sync with gettext.
31175         * m4/glibc21.m4: Likewise.
31176
31177         * m4/libintl.m4: Remove.  No longer used.
31178
31179 2001-09-22  Jim Meyering  <meyering@lucent.com>
31180
31181         * lib/localcharset.c: Update from latest gettext.
31182         * lib/config.charset: Likewise.
31183
31184 2001-09-20  Jim Meyering  <meyering@lucent.com>
31185
31186         * m4/xstrtoimax.m4 (jm_AC_PREREQ_XSTRTOIMAX): Check for declaration of
31187         strtoimax.
31188         * m4/xstrtoumax.m4 (jm_AC_PREREQ_XSTRTOUMAX): Check for declaration of
31189         strtoumax.
31190
31191 2001-09-20  Jim Meyering  <meyering@lucent.com>
31192
31193         * lib/xstrtol.c (strtoimax): Guard declaration with
31194         `#if !HAVE_DECL_STRTOIMAX', rather than just `#ifndef strtoimax'.
31195         The latter fails because some systems (at least rs6000-ibm-aix4.3.3.0)
31196         have their own, conflicting declaration of strtoimax in sys/inttypes.h.
31197         (strtoumax): Likewise, for completeness (it wasn't necessary).
31198
31199 2001-09-17  Paul Eggert  <eggert@twinsun.com>
31200
31201         * lib/strtoimax.c (HAVE_LONG_LONG):
31202         Redefine to HAVE_UNSIGNED_LONG_LONG if unsigned.
31203         (strtoimax): Use sizeof (long), not sizeof strtol (ptr, endptr, base),
31204         to work around bug in IBM C compiler.
31205
31206 2001-09-17  Jim Meyering  <meyering@lucent.com>
31207
31208         * m4/chown.m4, fstypename.m4, getgroups.m4, gettimeofday.m4,
31209         * m4/jm-mktime.m4, lstat.m4, malloc.m4, memcmp.m4, mkdir-slash.m4,
31210         * m4/nanosleep.m4, putenv.m4, readdir.m4, realloc.m4, rename.m4,
31211         * m4/st_dm_mode.m4, stat.m4, strerror_r.m4, timespec.m4, utimbuf.m4,
31212         * m4/utimes.m4: Use AC_DEFINE rather than AC_DEFINE_UNQUOTED,
31213         whenever the right hand side need not be expanded by the shell.
31214
31215 2001-09-16  Paul Eggert  <eggert@twinsun.com>
31216
31217         * m4/fnmatch.m4 (jm_FUNC_FNMATCH): Remove test for GNU C
31218         library.  It's not correct, as some older glibcs are buggy.
31219         fnmatch wasn't fixed until glibc 2.2.
31220
31221         Use AC_DEFINE, not AC_DEFINE_UNQUOTED, as there's no
31222         special shell magic here.
31223
31224 2001-09-16  Jim Meyering  <meyering@lucent.com>
31225
31226         * m4/mkdir-slash.m4 (UTILS_FUNC_MKDIR_TRAILING_SLASH): New file/macro.
31227         * m4/jm-macros.m4: Require it.
31228
31229 2001-09-16  Jim Meyering  <meyering@lucent.com>
31230
31231         * lib/mkdir.c: New file.
31232
31233 2001-09-15  Jim Meyering  <meyering@lucent.com>
31234
31235         * m4/jm-macros.m4: Check for help2man.
31236
31237 2001-09-11  Jim Meyering  <meyering@lucent.com>
31238
31239         * m4/host-os.m4 (UTILS_HOST_OS): New file/macro.
31240         The body, by Paul Eggert, was moved here from configure.in.
31241         * m4/jm-macros.m4: Require UTILS_HOST_OS.
31242
31243 2001-09-04  Paul Eggert  <eggert@twinsun.com>
31244
31245         * m4/prereq.m4 (jm_PREREQ_XREADLINK): New macro.
31246         (jm_PREREQ): Use it.
31247
31248 2001-09-04  Paul Eggert  <eggert@twinsun.com>
31249
31250         * lib/xreadlink.c (xreadlink): Omit size_t* arg.  All uses changed.
31251         Use ssize_t, not int, to store result of readlink.
31252         Check for ssize_t overflow as well as size_t overflow,
31253         as POSIX says the result of readlink is implementation-defined
31254         when ssize_t overflows.
31255         Remove unnecessary cast to char*.
31256         Use free+malloc instead of realloc, as the storage doesn't need
31257         to be preserved and it's clearer and can be more efficient that way.
31258         (SIZE_MAX, SSIZE_MAX): New macros, if <limits.h> doesn't declare.
31259         * lib/xreadlink.h (xreadlink): Update prototype.
31260
31261 2001-09-04  Paul Eggert  <eggert@twinsun.com>
31262
31263         * lib/xgetcwd.c: Revert some of the previous change; intead,
31264         fix the HAVE_GETCWD_NULL code to behave more like the
31265         !HAVE_GETCWD_NULL code used to.
31266
31267         Include "xalloc.h".
31268         (xgetcwd): Do not return NULL when memory is exhausted; instead,
31269         invoke xalloc_die.
31270
31271 2001-09-03  Paul Eggert  <eggert@twinsun.com>
31272
31273         * m4/prereq.m4 (jm_PREREQ_XGETCWD): Check for limits.h and
31274         sys/param.h, as pathmax.h includes them.
31275
31276 2001-09-03  Paul Eggert  <eggert@twinsun.com>
31277
31278         * m4/prereq.m4 (jm_PREREQ): Add jm_PREREQ_XGETCWD.
31279         (jm_PREREQ_XGETCWD): New macro.
31280
31281         * m4/getcwd.m4: New file.
31282
31283 2001-09-03  Paul Eggert  <eggert@twinsun.com>
31284
31285         * lib/xgetcwd.c: Fix the !HAVE_GETCWD_NULL code to behave more
31286         like the HAVE_GETCWD_NULL code.
31287         Include pathmax.h if not HAVE_GETCWD.
31288         Do not include xalloc.h.
31289         (INITIAL_BUFFER_SIZE): New symbol.
31290         Do not use xmalloc / xrealloc, since the caller is responsible for
31291         handling errors.  Preserve errno around `free' during failure.
31292         Do not overrun buffer when using getwd.
31293
31294 2001-09-03  Paul Eggert  <eggert@twinsun.com>
31295
31296         * lib/xgetcwd.c (xgetcwd): Use HAVE_GETCWD_NULL, not (defined
31297         __GLIBC__ && __GLIBC__ >= 2), to decide whether to use
31298         getcwd (NULL, 0).
31299
31300 2001-09-03  Paul Eggert  <eggert@twinsun.com>
31301
31302         * lib/exclude.c (fnmatch_no_wildcards): Fix confusion between
31303         usage of FNM_CASEFOLD and FNM_LEADING_DIR.  The bug was
31304         spotted by Jim Meyering.
31305
31306 2001-09-03  Jim Meyering  <meyering@lucent.com>
31307
31308         * lib/xreadlink.c (xreadlink): Preserve errno around `free' during
31309         failure.
31310
31311 2001-09-02  Jim Meyering  <meyering@lucent.com>
31312
31313         * lib/error.c: Update from GNU libc.
31314
31315 2001-09-01  Jim Meyering  <meyering@lucent.com>
31316
31317         * m4/jm-macros.m4 (jm_MACROS): Check for canonicalize_file_name.
31318         Used by df.
31319
31320 2001-09-01  Jim Meyering  <meyering@lucent.com>
31321
31322         * lib/xreadlink.c: New file.
31323         * lib/xreadlink.h: New file.
31324         * lib/Makefile.am (libfetish_a_SOURCES): Add xreadlink.c and
31325         xreadlink.h.
31326
31327         * lib/regex.c (uintptr_t) [!_LIBC]: Define to private_uintptr_t, so it
31328         doesn't conflict with sparc Solaris 7's definition in
31329         /usr/include/sys/int_types.h.
31330
31331         * lib/exclude.c: Use `""', not `<>' to #include non-system header
31332         files.
31333         (fnmatch_no_wildcards): Rewrite not to use function names, strcasecmp
31334         and strncasecmp as r-values.  Unixware didn't have declarations.
31335
31336 2001-08-31  Paul Eggert  <eggert@twinsun.com>
31337
31338         * lib/xstrtol.h: Add copyright notice.
31339         (_DECLARE_XSTRTOL): Improve quality of diagnostic for
31340         LONGINT_INVALID_SUFFIX_CHAR.
31341
31342 2001-08-31  Paul Eggert  <eggert@twinsun.com>
31343
31344         * lib/xstrtol.c (strtoimax): New decl.
31345
31346 2001-08-31  Paul Eggert  <eggert@twinsun.com>
31347
31348         * lib/xgetcwd.c: Don't include pathmax.h.
31349         Include stdlib.h and unistd.h if available.
31350         Include xalloc.h.
31351         (xmalloc, xstrdup, free): Remove decls.
31352         (xgetcwd): Don't assume sizes fit in unsigned.
31353         Check for overflow when computing sizes.
31354         Simplify reallocation code.
31355
31356 2001-08-31  Paul Eggert  <eggert@twinsun.com>
31357
31358         * lib/savedir.c (savedir): Remove size parameter, as POSIX says that
31359         a directory's st_size can have an arbitrary value, so the old
31360         usage could waste an arbitrary amount of memory.  All uses
31361         changed.
31362         * lib/savedir.h: Update prototype.
31363
31364 2001-08-31  Paul Eggert  <eggert@twinsun.com>
31365
31366         * lib/Makefile.am (libfetish_a_SOURCES): Remove strtoxmax.c.
31367
31368         * lib/strtoimax.c: Renamed from strtoxmax.c, removing the
31369         old strtoimax.c.
31370
31371         Also, make the following further changes to make this file's
31372         configuration more similar to that of strtol.c:
31373         (UNSIGNED): Renamed from STRTOUXMAX_UNSIGNED.  All uses changed.
31374         (strtoumax, uintmax_t, strtoull, strtol): Remove.
31375         (intmax_t, strtoimax, strtol, strtoll): New macros, if UNSIGNED.
31376         (strtoimax): Renamed from strtoumax.  All uses of unsigned values
31377         changed to signed values.
31378
31379         And make the following changes as well:
31380         Fix copyright notice, as 1999 was missing.
31381         (verify): New macro.
31382         (strtoimax): Check sizes at compile-time, not run-time.
31383         Prefer strtol to strtoll if both work.
31384         (main): Remove; it was not that useful and was a pain to maintain.
31385
31386         * lib/strtoumax.c: Include strtoimax.c, not strtouxmax.c.
31387
31388 2001-08-31  Jim Meyering  <meyering@lucent.com>
31389
31390         * lib/xgetcwd.c (xgetcwd): Reorganize to avoid some duplication.
31391         Use an initial, malloc'd, buffer of length 128 rather than
31392         a statically allocated one of length 1024.
31393
31394 2001-08-30  Paul Eggert  <eggert@twinsun.com>
31395
31396         Simplify code, partly by assuming autoconf 2.52 semantics.
31397
31398         * m4/Makefile.am (EXTRA_DIST): Remove uintmax_t.m4.
31399
31400         * m4/inttypes.m4 (AC_PREREQ): Bump to 2.52.
31401         (jm_AC_HEADER_INTTYPES_H): Remove; now done by autoconf in 2.52.
31402         All uses removed.
31403         (jm_AC_TYPE_INTMAX_T, jm_AC_TYPE_UINTMAX_T):
31404         Move AC_REQUIRE to next-to-top level, to avoid confusion.
31405         Use 2.52's AC_CHECK_TYPE instead of merely looking for the header.
31406         * m4/prereq.m4 (jm_PREREQ_HUMAN): Don't require
31407         jm_AC_HEADER_INTTYPES_H.
31408         * m4/jm-macros.m4 (jm_MACROS): Likewise.
31409
31410         * m4/uintmax_t.m4: Remove, as it duplicates inttypes.m4.
31411
31412         * m4/xstrtoimax.m4 (jm_AC_PREREQ_XSTRTOIMAX):
31413         Quote first arg of AC_DEFUN.
31414         Require jm_AC_TYPE_UINTMAX_T and jm_AC_TYPE_UNSIGNED_LONG_LONG
31415         since they are needed to parse the include file even if we need
31416         only xstrtoimax.  Simplify logic behind the args to AC_REPLACE.
31417         * m4/xstrtoumax.m4 (jm_AC_PREREQ_XSTRTOUMAX): Likewise,
31418         but with opposite signedness.
31419
31420 2001-08-30  Paul Eggert  <eggert@twinsun.com>
31421
31422         Merge 'exclude' changes from tar 1.13.22.
31423         This fixes one or two unlikely storage allocation overflow bugs,
31424         but doesn't change user-visible behavior otherwise.
31425
31426 2001-08-30  Paul Eggert  <eggert@twinsun.com>
31427
31428         * m4/prereq.m4 (jm_PREREQ): Add jm_PREREQ_EXCLUDE.
31429         (jm_PREREQ_EXCLUDE): New macro.
31430
31431 2001-08-30  Paul Eggert  <eggert@twinsun.com>
31432
31433         * lib/quotearg.c: BSD/OS 4.1 wchar.h requires FILE and struct
31434         tm to be declared.
31435
31436 2001-08-30  Paul Eggert  <eggert@twinsun.com>
31437
31438         * lib/hash.c: Remove '2001' from copyright notice.
31439
31440 2001-08-30  Paul Eggert  <eggert@twinsun.com>
31441
31442         * lib/full-write.h: New file.
31443         * lib/Makefile.am (libfetish_a_SOURCES): Add full-write.h.
31444         * lib/full-write.c: Correct credits, as cccp.c no longer
31445         exists and anyway it was so heavily changed from the old cccp
31446         code as to be unrecognizable.  Include full-write.h.
31447         (full_write) Return size_t, with short writes meaning failure.
31448         All callers changed.  This fixes a bug with large buffers
31449         on 64-bit hosts.
31450         * lib/utime.c: Include full-write.h.
31451
31452 2001-08-30  Paul Eggert  <eggert@twinsun.com>
31453
31454         * lib/exclude.c (bool): Declare, perhaps by including stdbool.h.
31455         (<sys/types.h>): Include only if HAVE_SYS_TYPES_H.
31456         (<stdlib.h>, <string.h>, <strings.h>, <inttypes.h>, <stdint.h>):
31457         Include if available.
31458         (<xalloc.h>): Include
31459         (SIZE_MAX): Define if <stdint.h> or <inttypes.h> doesn't.
31460         (verify): New macro.  Use it to verify that EXCLUDE macros do not
31461         collide with FNM macros.
31462         (struct patopts): New struct.
31463         (struct exclude): Use it, as exclude patterns now come with options.
31464         (new_exclude): Support above changes.
31465         (new_exclude, add_exclude_file):
31466         Initial size must now be a power of two to simplify overflow checking.
31467         (free_exclude, fnmatch_no_wildcards): New function.
31468         (excluded_filename): No longer requires options arg, as the options
31469         are determined by add_exclude.  Now returns bool, not int.
31470         (excluded_filename, add_exclude):
31471         Add support for the fancy new exclusion options.
31472         (add_exclude, add_exclude_file): Now takes int options arg.
31473         Check for arithmetic overflow when computing sizes.
31474         (add_exclude_file): xrealloc might modify errno, so don't
31475         realloc until after errno might be used.
31476
31477         * lib/exclude.h (EXCLUDE_ANCHORED, EXCLUDE_INCLUDE,EXCLUDE_WILDCARDS):
31478         New macros.
31479         (free_exclude): New decl.
31480         (add_exclude, add_exclude_file): Now takes int options arg.
31481         (excluded_filename): No longer requires options arg, as the options
31482         are determined by add_exclude.  Now returns bool, not int.
31483
31484 2001-08-30  Paul Eggert  <eggert@twinsun.com>
31485
31486         * lib/alloca.c (alloca): Arg is of type size_t, not unsigned.
31487
31488 2001-08-27  Jim Meyering  <meyering@lucent.com>
31489
31490         * lib/Makefile.am (libfetish_a_SOURCES): Add strtoxmax.c
31491
31492         * lib/version-etc.c (N_): Remove definition.
31493         Revert most of last change.
31494         Instead, simply don't mark the `Copyright...' string for translation.
31495         Based on advice from Paul Eggert.
31496
31497         * lib/strtoxmax.c: Tweak comment.
31498
31499 2001-08-26  Jim Meyering  <meyering@lucent.com>
31500
31501         * m4/jm-macros.m4: Require jm_AC_PREREQ_XSTRTOIMAX.
31502
31503         * m4/xstrtoimax.m4: New file.
31504         * m4/xstrtoumax.m4: Add comments explaining why we
31505         AC_REPLACE_FUNCS(strtol).
31506
31507 2001-08-26  Jim Meyering  <meyering@lucent.com>
31508
31509         * lib/version-etc.c (version_etc_copyright_fmt): Replace literal year
31510         of copyright with `%s' so translators don't get an untranslated
31511         message in 2002.
31512         (COPYRIGHT_YEAR): Define.
31513         (version_etc): Use fprintf rather than fputs.
31514         Suggestion from Ulrich Drepper.
31515
31516         * lib/Makefile.am (libfetish_a_SOURCES): Add xstrtoimax.c.
31517
31518         * lib/strtoll.c: New file, from GNU libc.
31519         * lib/xstrtoimax.c: New file.
31520
31521         * lib/xstrtol.h: Add xstrtoimax.
31522         * lib/strtoumax.c: New file.  Simply include "strtoumax.c".
31523         * lib/strtoimax.c: New file.  Likewise, but first define
31524         STRTOUXMAX_SIGNED.
31525
31526         * lib/strtoumax.c: Factor to work both for unsigned and signed types,
31527         ...
31528         * lib/strtoxmax.c: ... then renamed to this.
31529
31530 2001-08-18  Paul Eggert  <eggert@twinsun.com>
31531
31532         * m4/inttypes.m4: Add AC_PREREQ(2.13).
31533         (jm_AC_HEADER_INTTYPES_H): Test for intmax_t, too.
31534         (jm_AC_TYPE_INTMAX_T): New macro.
31535         (jm_AC_TYPE_UINTMAX_T): Moved here from uintmax_t.m4.
31536
31537         * m4/longlong.m4 (jm_AC_TYPE_LONG_LONG): New macro.
31538
31539         * m4/longlong.m4: Renamed from ulonglong.m4.
31540         * m4/inttypes.m4: Renamed from inttypes_h.m4.
31541         * m4/uintmax_t.m4: Removed.
31542
31543 2001-08-13  Paul Eggert  <eggert@twinsun.com>
31544
31545         * lib/Makefile.am (unlocked-io.h): Do not append "_unlocked" twice.
31546         Port to Solaris 8, where 'sed' requires a space after the 'r'
31547         command, and where sh dislikes "$/".  Clean up the spacing a bit.
31548         Redirect output to $tmp just once.
31549
31550 2001-08-12  Paul Eggert  <eggert@sic.twinsun.com>
31551
31552         * lib/addext.c (<errno.h>): Include.
31553         (errno): Declare if not defined.
31554         (addext): Work correctly when pathconf returns -1 and leaves
31555         errno alone because there is no limit.  Also, work even if
31556         pathconf returns a value greater than SIZE_MAX.
31557
31558 2001-08-12  Jim Meyering  <meyering@lucent.com>
31559
31560         * m4/afs.m4, assert.m4, bison.m4, check-decl.m4, chown.m4, d-ino.m4,
31561         d-type.m4, dos.m4, error.m4, fnmatch.m4, fpending.m4, fstypename.m4,
31562         fsusage.m4, ftruncate.m4, getgroups.m4, glibc.m4, gnu-source.m4,
31563         group-member.m4, jm-glibc-io.m4, jm-macros.m4, jm-mktime.m4,
31564         jm-winsz1.m4, jm-winsz2.m4, lchown.m4, lib-check.m4, libintl.m4,
31565         link-follow.m4, ls-mntd-fs.m4, lstat.m4, malloc.m4, mbrtowc.m4,
31566         mbstate_t.m4, mbswidth.m4, memcmp.m4, nanosleep.m4, perl.m4,
31567         prereq.m4, putenv.m4, readdir.m4, realloc.m4, regex.m4, rename.m4,
31568         rmdir-errno.m4, search-libs.m4, st_dm_mode.m4, st_mtim.m4, stat.m4,
31569         strftime.m4, timespec.m4, unlink-busy.m4, uptime.m4, utimbuf.m4,
31570         utime.m4, utimes.m4, xstrtoumax.m4:
31571         Quote the first argument in each use of AC_DEFUN.
31572
31573 2001-08-12  Jim Meyering  <meyering@lucent.com>
31574
31575         * lib/xgetcwd.c (xgetcwd) [defined __GLIBC__ && __GLIBC__ >= 2]:
31576         Simply `return getcwd (NULL, 0);'.
31577         [! (defined __GLIBC__ && __GLIBC__ >= 2)]:
31578         Use 1300 as initial value for length, not PATH_MAX.
31579
31580         * lib/pathmax.h: Clean up cpp syntax.
31581
31582 2001-08-12  Jim Meyering  <meyering@lucent.com>
31583
31584         * lib/gettimeofday.c: New file.
31585         * lib/gtod.h: New file.
31586         * lib/Makefile.am (libfetish_a_SOURCES): Add gtod.h.
31587
31588 2001-08-05  Jim Meyering  <meyering@lucent.com>
31589
31590         * m4/jm-macros.m4: Require autoconf-2.52.
31591
31592 2001-08-04  Jim Meyering  <meyering@lucent.com>
31593
31594         * lib/error.h (__attribute__): Remove `|| __STRICT_ANSI__' from #if
31595         stmt, to get in sync with glibc.
31596
31597 2001-08-03  Paul Eggert  <eggert@twinsun.com>
31598
31599         The following changes are from gettext 0.10.39 as maintained by
31600         Bruno Haible.
31601
31602         * lib/mbswidth.h (MBSW_REJECT_UNPRINTABLE, MBSW_REJECT_INVALID):
31603         Renamed from MBSW_ACCEPT_UNPRINTABLE and MBSW_ACCEPT_INVALID
31604         with inverted sense.  All uses changed.
31605
31606         * lib/mbswidth.c: Don't include <limits.h>.
31607         Include <stdlib.h> and <string.h> unconditionally.
31608         (iswcntrl, mbsinit, ISCNTRL): New macros.
31609         (mbsnwidth): Use K&R style function declarations.
31610         Don't bother checking for MB_LEN_MAX == 1, since the compiler
31611         can optimize it when MB_CUR_MAX == 1.
31612         The width of control characters is zero, not 1.
31613
31614 2001-08-03  Paul Eggert  <eggert@twinsun.com>
31615
31616         The following changes are from gettext 0.10.39 as maintained by
31617         Bruno Haible, except that getline.m4 continues to use AC_LIBOBJ.
31618
31619         * m4/codeset.m4: Upgrade to serial AM1.
31620         (AM_LANGINFO_CODESET): Renamed from jm_LANGINFO_CODESET;
31621         all uses changed.  Quote first arg of AC_DEFUN.
31622         (am_cv_langinfo_codeset): Renamed from jm_cv_langinfo_codeset.
31623
31624         * m4/iconv.m4: Upgrade to serial AM2.
31625         (AM_ICONV): Renamed from jm_ICONV; all uses changed.
31626         Add --with-libconv-prefix.
31627         Quote first arg of AC_DEFUN.  Add description for ICONV_CONST.
31628         (am_cv_func_iconv): Renamed from jm_cv_func_iconv.
31629         (am_cv_lib_iconv): Renamed from jm_cv_lib_iconv.
31630         (am_cv_proto_iconv): Renamed from jm_cv_proto_iconv.
31631         * m4/jm-macros.m4 (jm_MACROS): Reflect s/jm_/AM_/ renamings.
31632
31633         * m4/c-bs-a.m4 (AC_C_BACKSLASH_A): Quote first arg of AC_DEFUN.
31634         * m4/getline.m4 (AM_FUNC_GETLINE): Likewise.
31635         * m4/glibc21.m4 (jm_GLIBC21): Likewise.
31636         * m4/inttypes_h.m4 (jm_AC_HEADER_INTTYPES_H): Likewise.
31637         * m4/isc-posix.m4 (AC_ISC_POSIX): Likewise.
31638         * m4/lcmessage.m4 (AM_LC_MESSAGES): Likewise.
31639         * m4/progtest.m4 (AM_PATH_PROG_WITH_TEST): Likewise.
31640         * m4/uintmax_t.m4 (jm_AC_TYPE_UINTMAX_T): Likewise.
31641         * m4/ulonglong.m4 (jm_AC_TYPE_UNSIGNED_LONG_LONG): Likewise.
31642
31643         * m4/getline.m4 (AM_FUNC_GETLINE): Don't bother checking for
31644         string.h any more.
31645
31646         * m4/progtest.m4 (AM_PATH_PROG_WITH_TEST): If not found, print "no",
31647         not the default value.
31648
31649         2001-06-25  Bruno Haible  <haible@clisp.cons.org>
31650         * m4/mbswidth.m4 (jm_PREREQ_MBSWIDTH): Don't require AM_C_PROTOTYPES.
31651         Also check for mbsinit.  Needed for SCO 3.2v5.0.2.
31652         Also include <string.h>; this is where AIX 3.2.5 declares wcwidth.
31653         Also check for iswcntrl, used for wcwidth fallback.
31654         Use AC_TRY_COMPILE to emulate AC_CHECK_DECLS, for portability
31655         to Autoconf 2.13.
31656
31657 2001-08-03  Jim Meyering  <meyering@lucent.com>
31658
31659         * m4/mbrtowc.m4 (jm_FUNC_MBRTOWC): Use `#include', not `@%:@include',
31660         as it was in the original.  Reported by Paul Eggert.
31661
31662 2001-07-16  Jim Meyering  <meyering@lucent.com>
31663
31664         * m4/gettimeofday.m4: New file.
31665         Prompted by a report from Bernhard Baehr.
31666
31667 2001-07-15  Jim Meyering  <meyering@lucent.com>
31668
31669         * m4/Makefile.am.in (Makefile.am): Remove most of the unlocked-io.h
31670         stuff. Now it's in ../Makefile.cfg.
31671
31672 2001-07-15  Jim Meyering  <meyering@lucent.com>
31673
31674         * lib/Makefile.am (EXTRA_DIST): Add unlocked-io.hin.
31675         (BUILT_SOURCES): Add unlocked-io.h.
31676         (io_functions): Define.
31677         (unlocked-io.h): New rule.
31678         (DISTCLEANFILES): Add unlocked-io.h.
31679         (all-local): Depend on unlocked-io.h, to ensure it is created.
31680
31681         * lib/unlocked-io.hin: New file
31682
31683         * lib/regex.c: Update from glibc.
31684
31685 2001-07-05  Jim Meyering  <meyering@lucent.com>
31686
31687         * lib/Makefile.am (noinst_HEADERS): Remove definition, per new automake
31688         recommendation.
31689         (libfetish_a_SOURCES): Put all .h files here instead.
31690         Remove a thus-exposed (better checks in automake) duplicate and
31691         two unnecessary .h files.
31692
31693 2001-07-04  Jim Meyering  <meyering@lucent.com>
31694
31695         * m4/Makefile.am.in (glibc-io.struct): New target.  Rework the code
31696         that generates jm-glibc-io.m4 so that it doesn't trigger any make
31697         distcheck failure.
31698
31699 2001-07-02  Jim Meyering  <meyering@lucent.com>
31700
31701         The following changes were prompted by suggestions from Bruno Haible.
31702
31703         * m4/jm-glibc-io.m4n: New file, the template from which jm-glibc-io.m4
31704         is now generated.
31705         * m4/Makefile.am.in (Makefile.am): Include jm-glibc-io.m4n in emitted
31706         definition of EXTRA_DIST.
31707         (Makefile.am): Emit the dependency, `all-local: jm-glibc-io.m4' to
31708         ensure that the generated file is created/updated whenever the list
31709         of $(unlocked_functions) is changed.
31710         (jm-glibc-io.m4): New rule.
31711         (unlocked-io.h): New rule -- currently unused.
31712
31713 2001-06-24  Jim Meyering  <meyering@lucent.com>
31714
31715         * m4/regex.m4 (jm_INCLUDED_REGEX): Use a quadrigraph to represent an
31716         unmatched right bracket, rather than kludging it with an extra,
31717         falsely-matching quote in a comment.  Patch by Akim Demaille.
31718
31719 2001-06-11  Jim Meyering  <meyering@lucent.com>
31720
31721         * lib/regex.c: Update from GNU libc.
31722
31723 2001-05-27  Jim Meyering  <meyering@lucent.com>
31724
31725         * m4/prereq.m4 (jm_PREREQ_READUTMP): Check for ut_type in struct utmpx.
31726         Check for ut_type in struct utmp.
31727
31728 2001-05-27  Jim Meyering  <meyering@lucent.com>
31729
31730         * lib/readutmp.h (UT_TYPE): Define.
31731
31732 2001-05-24  Jim Meyering  <meyering@lucent.com>
31733
31734         * lib/argmatch.c: Include "quote.h".
31735         (argmatch_invalid): Remove explicit `' quotes.  Instead, use the
31736         quote function.  Reported by Göran Uddeborg.
31737
31738 2001-05-22  Jim Meyering  <meyering@lucent.com>
31739
31740         * m4/strftime.m4 (_jm_STRFTIME_PREREQS): Don't use AC_LIBOBJ(strftime),
31741         now that we use the package-supplied version unconditionally.
31742         (jm_FUNC_STRFTIME): Don't replace strftime, for the same reason.
31743
31744 2001-05-21  Jim Meyering  <meyering@lucent.com>
31745
31746         * m4/regex.m4: Change a couple backticks to single quotes to avoid
31747         shell syntax errors.
31748
31749 2001-05-21  Alexandre Duret-Lutz  <duret_g@epita.fr>
31750
31751         * m4/dos.m4 (jm_AC_DOS): Check for _WIN32, __WIN32__, and __MSDOS__.
31752
31753 2001-05-20  Paul Eggert  <eggert@twinsun.com>
31754
31755         * m4/strftime.m4 (jm_FUNC_GNU_STRFTIME):
31756         Don't bother to check library strftime, since
31757         we'll be using our own my_strftime function anyway.
31758         Define my_strftime instead of strftime.
31759
31760 2001-05-20  Alexandre Duret-Lutz  <duret_g@epita.fr>
31761
31762         * lib/dirname.c (dir_name): Compute append_dot using path, not newpath
31763         which is not yet declared.
31764
31765 2001-05-15  Jim Meyering  <meyering@lucent.com>
31766
31767         * m4/regex.m4: Use proper quoting so brackets appear in the test
31768         program.
31769         Reported by, and with help from, Bruno Haible.
31770
31771 2001-05-13  Jim Meyering  <meyering@lucent.com>
31772
31773         * m4/jm-macros.m4 (major_t, minor_t): Define to unsigned int if
31774         undefined.
31775
31776 2001-05-11  Paul Eggert  <eggert@twinsun.com>
31777
31778         dirname code cleanup.  base_name now behaves more compatibly
31779         with POSIX basename when given file names that have trailing
31780         slashes, and similarly for dir_name.  Add new primitives
31781         base_len and dir_len.  Put the directory-name-related decls
31782         into dirname.h.
31783
31784         * lib/addext.c (ISSLASH, base_name): Remove; now in dirname.h.
31785         * lib/backupfile.c (base_name): Likewise.
31786         * lib/basename.c (FILESYSTEM_PREFIX_LEN, PARAMS, ISSLASH): Likewise.
31787         * lib/dirname.c (FILESYSTEM_PREFIX_LEN, ISSLASH): Likewise.
31788         * lib/makepath.c (strip_trailing_slashes): Likewise.
31789         * lib/path-concat.c (DIRECTORY_SEPARATOR, FILESYSTEM_PREFIX_LEN,
31790         ISSLASH): Likewise.
31791         * lib/rename.c (strip_trailing_slashes): Likewise.
31792         * lib/same.c (base_name): Likewise.
31793         * lib/stripslash.c (ISSLASH): Likewise.
31794
31795         * lib/addext.c: Include <dirname.h> after size_t is defined.
31796         * lib/backupfile.c: Likewise.
31797
31798         * lib/addext.c (addext): Use base_len to trim redundant
31799         trailing slashes instead of doing it ourselves.
31800         But do not trim the last slash if it is not redundant.
31801
31802         * lib/backupfile.c (find_backup_file_name,
31803         max_backup_version): Use base_len instead of rolling it ourselves.
31804         Handle the case of "" and (on DOS) "C:" correctly.
31805
31806         * lib/basename.c: Do not include <stdio.h>, <assert.h>; no longer
31807         needed. Include <string.h>, <dirname.h>.
31808         (base_name): Allow file names ending in slashes, other than names
31809         that are all slashes.  In this case, return the basename followed
31810         by the slashes.  This is more general, and can be used in places
31811         where the original base_name purposely had an assertion failure.
31812         (base_len): New function.
31813
31814         * lib/dirname.c: Include <string.h> instead of <stdlib.h>.
31815         Do not include <assert.h>; no longer needed.
31816         Include xalloc.h.
31817         (memrchr): Remove decl.
31818         (dir_name_r): Remove.
31819         (dir_len): Renamed from dirlen.  All callers changed.
31820         Rewrite in terms of base_name, for simplicity and consistency.
31821         (dir_name): Never return NULL.  All callers changed.
31822         Do not include <stdlib.h> in test program; no longer needed.
31823         return 0; is fine for test program.
31824
31825         * lib/dirname.h (DIRECTORY_SEPARATOR, ISSLASH, FILESYSTEM_PREFIX_LEN):
31826         New macros.
31827         (base_name, base_len, dir_len, strip_trailing_slashes): New decls.
31828
31829         * lib/path-concat.c (path_concat): Use base_len to compute
31830         base length, not strlen; this means we cannot rely on memcpy
31831         to null-terminate.
31832
31833         * lib/same.c (STREQ): Remove.
31834         (same_name): Handle the case where the basename ends in trailing '/'.
31835
31836         * lib/stripslash.c (strip_trailing_slashes): Return nonzero if
31837         a slash was stripped.  Do not strip the last slash after a
31838         file system prefix.
31839
31840 2001-05-11  Paul Eggert  <eggert@twinsun.com>
31841
31842         * lib/Makefile.am (libfetish_a_SOURCES):
31843         Add strftime.c, since we now compile it on all hosts.
31844
31845         * lib/strftime.c (my_strftime):
31846         Define to nstrftime if emacs, but only if my_strftime is not defined.
31847         (extra_args, extra_args_spec, extra_args_spec_iso): Rename from
31848         ut_argument, ut_argument_spec, ut_argument_spec_iso, respectively.
31849         Add one more extra argument: a nanoseconds value.
31850         All uses changed.
31851         (ns): New macro.
31852         (my_strftime function): Add %N format.
31853         (emacs_strftimeu): Renamed from emacs_strftime,
31854         with extra ut argument.
31855
31856 2001-05-09  Paul Eggert  <eggert@twinsun.com>
31857
31858         * m4/jm-macros.m4 (jm_MACROS): Do not check for fseeko; no longer used.
31859
31860 2001-04-21  Jim Meyering  <meyering@lucent.com>
31861
31862         * m4/rmdir-errno.m4: Write to a new file, so that a restrictive umask
31863         doesn't interfere.
31864
31865 2001-04-21  Alexandre Duret-Lutz  <duret_g@epita.fr>
31866
31867         * m4/ftruncate.m4: Check for chsize.
31868         Link with ftruncate.o unconditionally if ftruncate is missing.
31869         This was required when cross-compiling to i586-mingw32msvc.
31870
31871 2001-04-08  Jim Meyering  <meyering@lucent.com>
31872
31873         * lib/getdate.y (get_date): Set tm_isdst to -1 to ensure that it is
31874         recomputed; that's necessary when the offset spans a DST transition.
31875         Patch by David J. MacKenzie.  Reported by Hon-Yin Kok.
31876
31877 2001-04-02  Jim Meyering  <meyering@lucent.com>
31878
31879         * lib/regex.h, regex.c: Update from GNU libc.
31880
31881 2001-03-24  Jim Meyering  <meyering@lucent.com>
31882
31883         * m4/jm-macros.m4: Require autoconf-2.49d.
31884
31885 2001-03-20  Bruno Haible  <haible@clisp.cons.org>
31886
31887         * m4/iconv.m4 (jm_ICONV): Recommend GNU libiconv.
31888
31889 2001-03-19  Paul Eggert  <eggert@twinsun.com>
31890
31891         * lib/version-etc.c (version_etc_copyright): Update to 2001.
31892
31893 2001-03-17  Jim Meyering  <meyering@lucent.com>
31894
31895         * m4/memcmp.m4 (jm_AC_FUNC_MEMCMP): Remove my copy of AC_FUNC_MEMCMP,
31896         now that the version in autoconf is equivalent.
31897         (jm_FUNC_MEMCMP): Adjust to use AC_FUNC_MEMCMP.
31898
31899         * m4/error.m4 (jm_PREREQ_ERROR): Invoke AC_FUNC_STRERROR_R.
31900         Suggestion from Akim Demaille.
31901
31902         * m4/prereq.m4 (jm_PREREQ): Add jm_PREREQ_TEMPNAME.
31903         (jm_PREREQ_TEMPNAME): New function.
31904
31905 2001-03-16  Paul Eggert  <eggert@twinsun.com>
31906
31907         * lib/tempname.c (uint64_t): Define to uintmax_t if
31908         not defined, and if UINT64_MAX is not defined.
31909         Required at least for Vax Ultrix4.3, which doesn't define uint64_t.
31910         Reported by John David Anglin.
31911
31912 2001-03-15  Bruno Haible  <haible@clisp.cons.org>
31913
31914         * lib/localcharset.c (locale_charset): Allow wildcard syntax. Also
31915         resolve alias if codeset is empty.
31916         * lib/config.charset (BeOS): Use wildcard syntax.
31917
31918 2001-03-13  Jim Meyering  <meyering@lucent.com>
31919
31920         * lib/path-concat.c (path_concat)
31921         [FILESYSTEM_ACCEPTS_DRIVE_LETTER_PREFIX]: Don't insert a backslash when
31922         concatenating e.g., `C:' and `foo'.
31923         From Bruno Haible.
31924
31925 2001-03-06  Bruno Haible  <haible@clisp.cons.org>
31926
31927         * lib/localcharset.c (locale_charset): Don't use
31928         setlocale(LC_CTYPE,NULL). Don't return NULL.
31929         * lib/unicodeio.c (print_unicode_char): Simplify accordingly.
31930
31931 2001-03-06  Bruno Haible  <haible@clisp.cons.org>
31932
31933         * lib/config.charset: Update for FreeBSD 4.2 and OSF/1 5.1. Add
31934         support for DOS/DJGPP.
31935
31936 2001-03-01  Paul Eggert  <eggert@twinsun.com>
31937
31938         * m4/jm-macros.m4 (jm_MACROS): Use mkstemp replacement if the system
31939         lacks mkstemp.  Compile our own tempname.c if we compile our own
31940         mkstemp.c, as mkstemp relies on tempname.
31941
31942 2001-03-01  Jim Meyering  <meyering@lucent.com>
31943
31944         * m4/dos.m4 (jm_AC_DOS): Remove extra backslashes, now that
31945         AH_VERBATIM really does output its argument verbatim.
31946
31947 2001-02-28  Paul Eggert  <eggert@twinsun.com>
31948
31949         * lib/Makefile.am (libfetish_a_SOURCES):
31950         Add dup-safer.c, fopen-safer.c.
31951         (noinst_HEADERS): Add stdio-safer.h, unistd-safer.h.
31952
31953         * lib/dup-safer.c, lib/fopen-safer.c, lib/stdio-safer.h:
31954         * lib/unistd-safer.h: New files.
31955
31956 2001-02-25  Paul Eggert  <eggert@twinsun.com>
31957
31958         The mkstemp replacement is taken from glibc 2.2.2, with some
31959         portability fixes for use outside glibc, as follows:
31960
31961         * lib/tempname.c (struct_stat64): New macro.
31962         (direxists, __gen_tempname): Use it.
31963         This avoids a portability problem with Solaris 8.
31964
31965         * lib/tempname.c (<config.h>): Include if HAVE_CONFIG_H.
31966         (<stddef.h>, <stdint.h>, <string.h>):
31967         Include only if STDC_HEADERS || _LIBC.
31968         (<fcntl.h>): Include only if HAVE_FCNTL_H || _LIBC.
31969         (<unistd.h>): Include only if HAVE_UNISTD_H || _LIBC.
31970         (<sys/time.h>): Include only if HAVE_SYS_TIME_H || _LIBC.
31971         (__set_errno): Define this macro if <errno.h> doesn't.
31972         (P_tmpdir, TMP_MAX, __GT_FILE, __GT_BIGFILE, __GT_DIR, __GT_NOCREATE):
31973         Define these macros if <stdio.h> doesn't.
31974         (S_ISDIR, S_IRUSR, S_IWUSR, S_IXUSR):
31975         Define these macros if <sys/stat.h>
31976         doesn't.  Ignore <sys/stat.h> S_ISDIR if STAT_MACROS_BROKEN.
31977         (stat64, __getpid, __gettimeofday, __mkdir, __open, __open64, lxstat64,
31978         __xstat64): Define if not _LIBC.
31979         (__secure_getenv): Define if ! (HAVE___SECURE_GETENV || _LIBC).
31980         (__gen_tempname): Invoke gettimeofday only if
31981         HAVE_GETTIMEOFDAY || _LIBC;
31982         otherwise, fall back on plain "time".
31983         Use macros like S_IRUSR | S_IWUSR rather than octal values like 0600.
31984
31985         * lib/mkstemp.c (__GT_FILE): Define to zero if not defined.
31986
31987         * lib/mkstemp.c, lib/tempname.c: New files, taken from glibc 2.2.2.
31988
31989 2001-02-18  Paul Eggert  <eggert@twinsun.com>
31990
31991         * m4/jm-macros.m4 (jm_CHECK_ALL_HEADERS): Check for sys/resource.h.
31992
31993 2001-02-17  Paul Eggert  <eggert@twinsun.com>
31994
31995         * m4/mbrtowc.m4: New file, defining jm_FUNC_MBRTOWC.
31996         * m4/mbswidth.m4 (jm_PREREQ_MBSWIDTH):
31997         Use jm_FUNC_MBRTOWC, not AC_CHECK_FUNCS(mbrtowc).
31998         * m4/prereq.m4 (jm_PREREQ_QUOTEARG): Likewise.
31999
32000 2001-02-17  Paul Eggert  <eggert@twinsun.com>
32001
32002         * lib/mbswidth.c, quotearg.c (mbrtowc, mbsinit):
32003         Remove workaround macros for hosts that have mbrtowc but not
32004         mbstate_t, as we now insist on proper declarations for both
32005         before using mbrtowc.
32006
32007 2001-02-17  Jim Meyering  <meyering@lucent.com>
32008
32009         * m4/ls-mntd-fs.m4 (jm_LIST_MOUNTED_FILESYSTEMS): Don't check for
32010         getmntent via AC_CHECK_FUNCS, since that would get a `no' and disrupt
32011         further attempts by AC_FUNC_GETMNTENT to check with e.g., -lgen on
32012         UnixWare 7.1.1.
32013
32014         * m4/mbrtowc.m4 (jm_FUNC_MBRTOWC): Adapt to use AC_CACHE_CHECK etc.,
32015         rather than AC_CACHE_VAL.
32016
32017 2001-02-17  Jim Meyering  <meyering@lucent.com>
32018
32019         * lib/strtoul.c: Sync from GNU libc.  Use double quotes, not <...>
32020         around included file name.
32021
32022         * lib/strnlen.c (__strnlen): Merge in a change from GNU libc.
32023
32024         * lib/strftime.c: Update from GNU libc (the only changes were to
32025         comments).
32026
32027 2001-02-17  Jim Meyering  <meyering@lucent.com>
32028
32029         * lib/regex.c: Update from libc.
32030
32031 2001-02-17  Bruno Haible  <haible@clisp.cons.org>
32032
32033         * lib/mbswidth.h (mbswidth): Also define as macro, to avoid prototype
32034         clash.
32035
32036 2001-02-16  Paul Eggert  <eggert@twinsun.com>
32037
32038         * lib/alloca.c (malloc): Undef before defining, since stdlib.h
32039         may have defined it.  Needed for Encore Umax-3.0.9.16b systems.
32040         Reported by Mark Hounschell via Paul Eggert.
32041
32042 2001-02-07  Jim Meyering  <meyering@lucent.com>
32043
32044         * m4/regex.m4 (jm_INCLUDED_REGEX): Add a test for the latest bug.
32045
32046 2001-02-05  Jim Meyering  <meyering@lucent.com>
32047
32048         * m4/jm-macros.m4: Require autoconf-2.14d (not yet released), because
32049         it includes the patch required for `large file' support with at least
32050         HP-UX's 10.20 /bin/cc.
32051
32052 2001-02-03  Jim Meyering  <meyering@lucent.com>
32053
32054         * m4/ls-mntd-fs.m4 (jm_LIST_MOUNTED_FILESYSTEMS): Restore prior use of
32055         AS_IF, now that it works once again (mysteriously).
32056         * m4/fsusage.m4 (jm_FILE_SYSTEM_USAGE): Likewise.
32057
32058 2001-01-30  Jim Meyering  <meyering@lucent.com>
32059
32060         Don't use filenames that are 8.3-equivalent to "conftest" on DOS.
32061         * m4/chown.m4: Rename conftestchown to conftest.chown.
32062         * m4/rename.m4: s/conftestdir/conftest.d1/ and
32063         s/conftestdir2/conftest.d2/.
32064         * m4/utimes.m4: s/conftestdata/conftest.data/
32065         Inspired by Pavel Roskin's change in autoconf.
32066
32067 2001-01-30  Bruno Haible  <haible@clisp.cons.org>
32068
32069         * lib/config.charset: Update for FreeBSD 4.2.
32070
32071 2001-01-27  Jim Meyering  <meyering@lucent.com>
32072
32073         * m4/ls-mntd-fs.m4 (jm_LIST_MOUNTED_FILESYSTEMS): Open-code what was
32074         a use of AS_IF.
32075         * m4/fsusage.m4 (jm_FILE_SYSTEM_USAGE): Likewise.
32076
32077 2001-01-26  Jim Meyering  <meyering@lucent.com>
32078
32079         * m4/prereq.m4 (jm_PREREQ_QUOTEARG): Check for stddef.h, now that
32080         quotearg.c includes it.
32081
32082 2001-01-26  Jim Meyering  <meyering@lucent.com>
32083
32084         * lib/quotearg.c: Include stddef.h.
32085         * lib/quote.c: Include stddef.h.
32086         Reported by Axel Kittenberger.
32087
32088         * lib/xmalloc.c [HAVE_DONE_WORKING_MALLOC_CHECK]: Enclose error-evoking
32089         line in double quotes so that it evokes a better diagnostic.
32090         [HAVE_DONE_WORKING_REALLOC_CHECK]: Likewise.
32091         Reported by Axel Kittenberger.
32092
32093 2001-01-24  Stefan Monnier  <monnier@cs.yale.edu>
32094
32095         * regex.c (mutually_exclusive_p): Don't blindly handle `charset_not'
32096         as if it was a `charset'.
32097
32098 2001-01-21  Bruno Haible  <haible@clisp.cons.org>
32099
32100         * m4/iconv.m4 (jm_ICONV): Also check whether the iconv declaration
32101         has const.
32102
32103 2001-01-21  Bruno Haible  <haible@clisp.cons.org>
32104
32105         * lib/unicodeio.c (print_unicode_char): Cast the second iconv() arg,
32106         to avoid a warning.  Add back 'const' to inptr.
32107
32108 2001-01-20  Jim Meyering  <meyering@lucent.com>
32109
32110         Be sure that headers are checked before used in code compiled
32111         for the type checks.
32112         * m4/jm-macros.m4 (jm_MACROS): Remove all header checks.
32113         In place of that, invoke jm_CHECK_ALL_TYPES.
32114         (jm_CHECK_ALL_HEADERS): New functions with the above checks.
32115         (jm_CHECK_ALL_TYPES): Require jm_CHECK_ALL_HEADERS.
32116         Alan Iwi reported a build failure on an f300-fujitsu-uxpv4.1_ES;
32117         The check for ssize_t was mistakenly run before the test for unistd.h.
32118
32119         The configure-time check for stdbool.h was missing.
32120         * m4/prereq.m4 (jm_PREREQ): Add jm_PREREQ_HASH.
32121         (jm_PREREQ_HASH): New function.
32122
32123 2001-01-17  Jim Meyering  <meyering@lucent.com>
32124
32125         * m4/fsusage.m4 (jm_FILE_SYSTEM_USAGE): Use AS_IF, not AS_IFELSE,
32126         for autoconf-2.49c.
32127         * m4/ls-mntd-fs.m4 (jm_LIST_MOUNTED_FILESYSTEMS): Likewise.
32128
32129 2001-01-16  Jim Meyering  <meyering@lucent.com>
32130
32131         * lib/basename.c: Include <stdio.h>, needed by assert on SunOS 4.
32132         From Bruno Haible.
32133
32134 2001-01-14  Jim Meyering  <meyering@lucent.com>
32135
32136         * m4/rename.m4: Use temporary directories named conftestdir{,2}, not
32137         foo and bar.  Create conftestdir/ in the script, not in the C code.
32138         Remove directories in the script, not in the C code.
32139         Remove conftestdir{,2} before trying to create the directory.
32140         Make the entire configure script fail if the mkdir fails.
32141
32142 2001-01-14  Jim Meyering  <meyering@lucent.com>
32143
32144         * lib/rename.c: New file.  From Volker Borchert.
32145         Include stdlib.h, string.h or strings.h, and xalloc.h.
32146         Use strip_trailing_slashes rather than open-coding it.
32147
32148 2001-01-03  Paul Eggert  <eggert@twinsun.com>
32149
32150         * lib/strftime.c: Sync with glibc time/strftime.c 1.81.
32151
32152 2001-01-03  Jim Meyering  <meyering@lucent.com>
32153
32154         * lib/unicodeio.c (print_unicode_char): Remove `const' from declaration
32155         of local `inptr' to avoid warning with some system declarations of
32156         iconv.
32157
32158 2001-01-02  Volker Borchert  <bt@teknon.de>
32159
32160         * m4/rename.m4: New file.
32161         * m4/jm-macros.m4 (jm_MACROS): Require vb_FUNC_RENAME.
32162
32163 2001-01-01  Jim Meyering  <meyering@lucent.com>
32164
32165         * m4/prereq.m4 (jm_PREREQ_READUTMP): Include utmp.h (if available),
32166         even on systems with utmpx.h.  It's necessary for the declaration of
32167         utmp's ut_user member.  Reported by Andreas Jaeger.
32168
32169         * m4/check-decl.m4 (jm_CHECK_DECLS): Include grp.h and pwd.h if
32170         available. They are required for the declarations of getgrgid and
32171         getpwuid resp.
32172         (_jm_DECL_HEADERS): Check for grp.h and pwd.h.
32173         Reported by Andreas Jaeger.
32174
32175 2001-01-01  Alexandre Duret-Lutz  <duret_g@epita.fr>
32176
32177         * m4/libintl.m4 (AM_GNU_GETTEXT): Define MKINSTALLDIRS by
32178         expanding the value of $ac_aux_dir, as in AM_MISSING_HAS_RUN,
32179         so `make install' also works in VPATH builds.
32180
32181 2000-12-31  Alexandre Duret-Lutz  <duret_g@epita.fr>
32182
32183         * m4/libintl.m4 (AM_WITH_NLS): When using AC_CONFIG_AUX_DIR,
32184         prepend $(top_srcdir) to the value of MKINSTALLDIRS so that it
32185         can be used in subdirectories.
32186
32187 2000-12-29  Paul Eggert  <eggert@twinsun.com>
32188
32189         * lib/modechange.c: Do not assume that mode_t uses the
32190         traditional octal encoding.  E.g. "chmod 1 FOO" should set
32191         the other-execute bit of FOO even if S_IXOTH != 1.
32192
32193         (SUID, SGID, SVTX, RUSR, WUSR, XUSR, RGRP, WGRP, XGRP, ROTH,
32194         WOTH, XOTH, ALLM): New macros.
32195         (S_ISUID, S_ISGID, S_ISVTX, S_IRUSR, S_IWUSR, S_IXUSR,
32196          S_IRGRP, S_IWGRP, S_IXGRP, S_IROTH, S_IWOTH, S_IXOTH):
32197         Use them.
32198         (S_ISGID): Fix typo; it was defaulting to the same value as S_ISUID.
32199         (S_IRWXU, S_IRWXG, S_IRWXO): Specify defaults in terms of the above.
32200         (mode_compile):
32201         No need to use uintmax_t; unsigned long is long enough.
32202         Don't bother to get suffix since we don't use it.
32203
32204 2000-12-26  Jim Meyering  <meyering@lucent.com>
32205
32206         * m4/dos.m4 (jm_AC_DOS): Rewrite (though it's still a stub) to work
32207         better with autoheader.
32208
32209 2000-12-24  Jim Meyering  <meyering@lucent.com>
32210
32211         * lib/hash.c (is_prime): Return explicit boolean values.
32212         (hash_get_first): Return NULL to appease Irix5.6's 89.
32213         Reported by Nelson Beebe.
32214
32215 2000-12-19  Bruno Haible  <haible@clisp.cons.org>
32216
32217         * lib/localcharset.c (locale_charset): Add support for Win32.
32218
32219 2000-12-18  Paul Eggert  <eggert@twinsun.com>
32220
32221         * lib/physmem.h, lib/physmem.c: New files.
32222
32223         * lib/Makefile.am (libfetish_a_SOURCES): Add physmem.c.
32224         (noinst_HEADERS): Add physmem.h.
32225
32226         * lib/xstrtol.c (__xstrtol): Add undocumented suffixes 'g' and
32227         't' for compatibility with Solaris 8 sort.
32228
32229 2000-12-18  Bruno Haible  <haible@clisp.cons.org>
32230
32231         * lib/config.charset: Add support for BeOS.
32232
32233 2000-12-17  Jim Meyering  <meyering@lucent.com>
32234
32235         * m4/dos.m4 (jm_AC_DOS): New file and macro.
32236         * m4/jm-macros.m4 (jm_MACROS): Require jm_AC_DOS.
32237
32238 2000-12-16  Jim Meyering  <meyering@lucent.com>
32239
32240         This bug had a serious impact on chown: `chown N:M FILE' (for integer
32241         N and M) would have treated it like `chown N:N FILE'.
32242
32243         * lib/userspec.c (parse_user_spec): Fix typo: s/u/g/.
32244
32245 2000-12-16  Jim Meyering  <meyering@lucent.com>
32246
32247         * lib/getusershell.c [!SHELLS_FILE && __DJGPP__]: Define
32248         SHELLS_FILE to a file name that's useful on djgpp systems.
32249         Include stdlib.h.
32250         (ADDITIONAL_DEFAULT_SHELLS): Define.
32251         (default_shells): Prepend ADDITIONAL_DEFAULT_SHELLS.
32252         Based mostly on a patch from Prashant TR.
32253
32254 2000-12-16  Bruno Haible  <haible@clisp.cons.org>
32255
32256         * lib/config.charset: Add ISO-8859-3, BIG5HKSCS, GB18030, JOHAB,
32257         VISCII, CP874, CP949, CP950, CP1250, CP1253, CP1254, CP1255, CP1256,
32258         CP1257 to the list of canonical encodings. Rename EUC-CN to GB2312.
32259
32260 2000-12-08  Andreas Schwab  <schwab@suse.de>
32261
32262         * lib/mbswidth.c (mbsnwidth): Don't loop endlessly when called with an
32263         invalid mulitbyte sequence and with the MBSW_ACCEPT_INVALID flag set.
32264
32265 2000-12-07  Jim Meyering  <meyering@lucent.com>
32266
32267         * lib/stripslash.c (ISSLASH): Define.
32268         (strip_trailing_slashes): Use ISSLASH rather than comparing against
32269         `/'.
32270         From Prashant TR.
32271
32272         * lib/dirname.c (FILESYSTEM_PREFIX_LEN): Define.
32273         (dir_name_r): Declare this function as static.
32274         [BACKSLASH_IS_PATH_SEPARATOR]: Fix a bug that'd
32275         manifest itself on a name containing a mix of slashes and
32276         backslashes.
32277         Make this function work with names starting with a DOS-style
32278         drive letter and colon prefix.
32279         (dir_name): Append `.' if necessary.
32280         Based mostly on patches from Prashant TR and Eli Zaretskii.
32281
32282         * lib/dirname.h (dir_name_r): Remove prototype.
32283
32284 2000-12-06  Paul Eggert  <eggert@twinsun.com>
32285
32286         * m4/off_t-format.m4: Remove this file.
32287         * m4/jm-macros.m4 (jm_MACROS): Remove jm_SYS_OFF_T_PRINTF_FORMAT.
32288
32289 2000-12-06  Jim Meyering  <meyering@lucent.com>
32290
32291         * m4/xstrtoumax.m4 (jm_AC_PREREQ_XSTRTOUMAX): If we need the
32292         replacement strtoull, we may well need the replacement strtoul, too.
32293         Check for declarations of strtoul and strtoull.
32294         Check for strtol.  Mainly as a cue to cause automake to include
32295         strtol.c -- that file is included by each of strtoul.c and strtoull.c.
32296         Check for limits.h -- strtol.c needs it.
32297
32298 2000-12-05  Jim Meyering  <meyering@lucent.com>
32299
32300         * lib/dirname.c (dir_name_r): Add `const' in a few local declarations.
32301
32302 2000-12-04  Jim Meyering  <meyering@lucent.com>
32303
32304         * lib/path-concat.c: [!HAVE_DECL_MALLOC]: Declare malloc.
32305         Also include memory.h, stdlib.h, unistd.h if appropriate.
32306         Reported by Andreas Jaeger (conflicting declaration of malloc).
32307
32308 2000-12-02  Jim Meyering  <meyering@lucent.com>
32309
32310         * m4/off_t-format.m4 (OFF_T_PRINTF_FORMAT_STRING): New file/macro.
32311         * m4/jm-macros.m4 (jm_MACROS): require it.
32312
32313 2000-12-02  Jim Meyering  <meyering@lucent.com>
32314
32315         * lib/closeout.h: Make idempotent, to avoid some obscure warnings.
32316
32317 2000-12-01  Paul Eggert  <eggert@twinsun.com>
32318
32319         * lib/memrchr.c: Include <config.h> before any system include file.
32320
32321 2000-11-30  Jim Meyering  <meyering@lucent.com>
32322
32323         * m4/jm-macros.m4 (jm_MACROS): Check for stdint.h.
32324
32325 2000-11-30  Jim Meyering  <meyering@lucent.com>
32326
32327         * m4/getloadavg.m4: s/ifval/m4_ifval/ to accommodate new autoconf.
32328
32329 2000-11-29  Paul Eggert  <eggert@twinsun.com>
32330
32331         * lib/dirname.c (dir_name_r): Fix typo: int -> size_t.
32332
32333 2000-11-26  Jim Meyering  <meyering@lucent.com>
32334
32335         * lib/memcoll.c: Include sys/types.h.  From Werner Almesberger.
32336
32337 2000-11-22  Paul Eggert  <eggert@twinsun.com>
32338
32339         * lib/strftime.c (my_strftime): Do not invoke mbrlen with a
32340         size of (size_t) -1; it's not portable.
32341
32342 2000-11-17  Jim Meyering  <meyering@lucent.com>
32343
32344         * lib/strstr.c: Update from GNU libc.
32345
32346 2000-11-17  Akim Demaille  <akim@epita.fr>
32347
32348         * lib/obstack.h: Formatting changes.
32349         (obstack_grow, obstack_grow0): Don't cast WHERE at all: that would
32350         prevent type checking.
32351         (obstack_ptr_grow, obstack_ptr_grow_fast): When assigning, don't
32352         cast the value to (void *): assigning a `foo *' to a `void *'
32353         variable is valid.
32354         (obstack_int_grow, obstack_int_grow_fast): Don't cast AINT to int.
32355
32356 2000-11-16  Jim Meyering  <meyering@lucent.com>
32357
32358         * lib/strverscmp.c: Incorporate weak-alias-related changes from glibc.
32359
32360 2000-11-11  Jim Meyering  <meyering@lucent.com>
32361
32362         * lib/error.c: Add a couple #includes, merging from GNU libc version.
32363
32364 2000-11-10  Jim Meyering  <meyering@lucent.com>
32365
32366         * lib/obstack.h: Update from GNU libc.
32367         * lib/obstack.c: Likewise.
32368
32369 2000-11-08  Bruno Haible  <haible@clisp.cons.org>
32370
32371         * m4/jm-macros.m4 (jm_MACROS): Add test for wcrtomb.
32372
32373 2000-11-06  Paul Eggert  <eggert@twinsun.com>
32374
32375         * lib/getusershell.c (setusershell): Use rewind rather than
32376         fseek/fseeko, to avoid configuration hassles with fseeko.
32377         Don't bother opening SHELLS_FILE if shellstream is NULL;
32378         it's not necessary.
32379
32380 2000-11-05  Jim Meyering  <meyering@lucent.com>
32381
32382         * lib/makepath.h (make_dir): Declare.
32383         * lib/makepath.c (make_dir): Remove `static' attribute.
32384         Tweak a comment.
32385
32386 2000-11-04  Jim Meyering  <meyering@lucent.com>
32387
32388         * m4/regex.m4: Use the `m4_' prefix on `syscmd' and `m4_sysval'.
32389
32390 2000-11-04  Alexandre Duret-Lutz  <duret_g@epita.fr>
32391
32392         * lib/hash.c (hash_get_next): Fix a thinko:  when ENTRY is the
32393         last one in a bucket, advance to the next bucket.
32394
32395 2000-11-02  Vesselin Atanasov  <vesselin@bgnet.bg>
32396
32397         * lib/fnmatch.c: Do not comment out all the code if we are using
32398         the GNU C library, because in some cases we are replacing buggy
32399         code in the GNU C library itself.
32400
32401 2000-10-30  Stefan Monnier  <monnier@cs.yale.edu>
32402
32403         * regex.c (re_iswctype, re_wctype_to_bit): Fix braino.
32404         (regex_compile): Catch bogus \(\1\).
32405
32406 2000-10-30  Paul Eggert  <eggert@twinsun.com>
32407
32408         * lib/fnmatch.c (FOLD): Do not assume that characters are unsigned.
32409         (fnmatch): Fix some FNM_FILE_NAME and FNM_LEADING_DIR bugs,
32410         e.g. fnmatch("d*/*1", "d/s/1", FNM_FILE_NAME) incorrectly yielded zero.
32411
32412 2000-10-30  Paul Eggert  <eggert@twinsun.com>
32413
32414         * lib/error.h, getline.h, modechange.h:
32415         Remove "2000" from Copyright line, as the file hasn't been
32416         changed this year other than in the copyright notice.
32417
32418         * lib/xalloc.h: Add "2000" to Copyright line, as this file
32419         was changed this year.
32420
32421 2000-10-29  Jim Meyering  <meyering@lucent.com>
32422
32423         * m4/fsusage.m4: s/AC_SHELL_IFELSE/AS_IFELSE/ to match autoconf
32424         renaming.
32425         * m4/ls-mntd-fs.m4: Likewise
32426
32427 2000-10-29  Jim Meyering  <meyering@lucent.com>
32428
32429         * lib/xstat.in: Fix grammar in comment.
32430
32431 2000-10-29  Greg Louis  <glouis@dynamicro.on.ca>
32432
32433         * lib/regex.h (__restrict_arr): Move definition out of #ifndef block.
32434         Required because egcs-2.91.66 (aka 1.1.2) defines __restrict, but
32435         doesn't define __restrict_arr.
32436
32437 2000-10-28  Jim Meyering  <meyering@lucent.com>
32438
32439         * m4/prereq.m4 (jm_PREREQ): Add jm_PREREQ_MEMCHR.
32440         (jm_PREREQ_MEMCHR): New function.
32441
32442 2000-10-28  Jim Meyering  <meyering@lucent.com>
32443
32444         * lib/memchr.c: Update from libc.
32445         Adjust for portability:
32446         [HAVE_STDLIB_H]: Include stdlib.h.
32447         [HAVE_BP_SYM_H || _LIBC]: Guard inclusion of bp-sym.h.
32448         Undef __memchr, too.
32449         [!weak_alias]: Define __memchr to memchr.
32450
32451         * lib/regex.c: Update from libc.
32452         * lib/regex.h: Likewise.
32453         * lib/getopt1.c: Likewise.
32454         * lib/memcmp.c: Likewise.
32455
32456         * lib/getusershell.c (setusershell) [HAVE_FSEEKO]: Use fseeko.
32457         Avoid using fseek, when possible -- it's broken by design.
32458         Patch by Ulrich Drepper.
32459
32460 2000-10-27  Stefan Monnier  <monnier@cs.yale.edu>
32461
32462         * regex.c (POP_FAILURE_REG_OR_COUNT, re_match_2_internal)
32463         (re_match_2_internal, re_match_2_internal, re_match_2_internal):
32464         Giving in to popular pressure to shut up the compiler with casts.
32465
32466 2000-10-26  Jim Meyering  <meyering@lucent.com>
32467
32468         * lib/strftime.c: Update from libc.
32469
32470 2000-10-25  Stefan Monnier  <monnier@cs.yale.edu>
32471
32472         * regex.c: More `unsigned char' -> `re_char' changes.
32473         Also change several `int' into `re_wchar_t'.
32474         (PATTERN_STACK_EMPTY, PUSH_PATTERN_OP, POP_PATTERN_OP): Remove.
32475         (PUSH_FAILURE_POINTER): Don't cast any more.
32476         (POP_FAILURE_REG_OR_COUNT): Remove the cast that strips `const'.
32477         We want GCC to complain, since this piece of code makes
32478         re_match non-reentrant, which *should* be fixed.
32479         (GET_BUFFER_SPACE): Use size_t rather than unsigned long.
32480         (EXTEND_BUFFER): Use RETALLOC.
32481         (SET_LIST_BIT): Don't cast.
32482         (re_wchar_t): New type.
32483         (re_iswctype, re_wctype_to_bit): Make it crystal clear to GCC
32484         that those two functions will always properly return.
32485         (IMMEDIATE_QUIT_CHECK): Cast to void.
32486         (analyse_first): Use recursion rather than an explicit stack.
32487         (re_compile_fastmap): Can't fail anymore.
32488         (re_search_2): Don't check re_compile_fastmap for failure.
32489         (PUSH_NUMBER): Renamed from PUSH_FAILURE_COUNT.
32490         Now also sets the new value (passed in a new argument).
32491         (re_match_2_internal): Use it.
32492         Also, use a new var `reg' of type size_t when looping through regs
32493         rather than reuse the inappropriate `mcnt'.
32494
32495 2000-10-25  Jim Meyering  <meyering@lucent.com>
32496
32497         * lib/obstack.c: Update from libc.
32498
32499 2000-10-24  Kenichi Handa  <handa@etl.go.jp>
32500
32501         * regex.c (regex_compile): Change the way of handling a range from
32502         a char less than 256 to a char not less than 256.
32503
32504 2000-10-24  Andrew Innes  <andrewi@gnu.org>
32505
32506         * regex.c (IMMEDIATE_QUIT_CHECK): New macro, which does QUIT on
32507         NT-Emacs only.
32508         (re_match_2_internal): Use IMMEDIATE_QUIT_CHECK instead of QUIT,
32509         so that re_search functions only quit when callers expect them to.
32510
32511 2000-10-23  Jim Meyering  <meyering@lucent.com>
32512
32513         * lib/hard-locale.c (hard_locale): Revert last change -- it was simply
32514         wrong.  That set_locale call must not have any side effects.
32515         From Paul Eggert.
32516
32517 2000-10-22  Jim Meyering  <meyering@lucent.com>
32518
32519         * lib/md5.c (md5_process_block) [OP]: Use `rol', not CYCLIC.
32520         [CYCLIC]: Remove now-unused definition.
32521
32522         * lib/save-cwd.c (O_DIRECTORY): Define, if needed.
32523         (save_cwd) [HAVE_FCHDIR]: Use O_DIRECTORY when opening ".".
32524         Suggestion from Ulrich Drepper.
32525
32526 2000-10-21  Jim Meyering  <meyering@lucent.com>
32527
32528         * m4/check-decl.m4 (jm_CHECK_DECLS): Also check for memrchr.
32529         * m4/prereq.m4 (jm_PREREQ_DIRNAME): New macro.
32530         * m4/jm-macros.m4 (AC_REPLACE_FUNCS): Add memrchr.
32531
32532 2000-10-21  Jim Meyering  <meyering@lucent.com>
32533
32534         * lib/dirname.c (memrchr): Declare if necessary.
32535         (dir_name): Remove the restriction that there be no
32536         trailing slashes.  Now, this code skips past them, effectively
32537         ignoring them.
32538         [TEST_DIRNAME] (main): New unit tests.
32539
32540         * lib/memrchr.c: New file from GNU libc.
32541         Undef __memrchr, too.
32542         [!weak_alias]: Define __memrchr to memrchr.
32543         Guard weak_alias use with `#ifdef weak_alias'.
32544
32545 2000-10-21  Jim Meyering  <meyering@lucent.com>
32546
32547         * lib/dirname.c (dir_name_r): New function, factored out of dir_name.
32548         (dir_name): Use dir_name_r.
32549         * lib/dirname.h (dir_name_r): Declare it.
32550
32551 2000-10-17  Jim Meyering  <meyering@lucent.com>
32552
32553         * lib/quote.h (PARAMS): Define and use.
32554         Reported by Akim Demaille.
32555
32556         * lib/getopt.c: Update from libc.
32557
32558 2000-10-16  Jim Meyering  <meyering@lucent.com>
32559
32560         * lib/hard-locale.c (hard_locale): Use "", not 0 as 2nd arg to
32561         setlocale.
32562         From Jan Fedak.
32563
32564 2000-10-15  Stefan Monnier  <monnier@cs.yale.edu>
32565
32566         * regex.c (WIDE_CHAR_SUPPORT): Define if _LIBC as well.
32567
32568 2000-09-25  Jim Meyering  <meyering@lucent.com>
32569
32570         * lib/md5.h (rol): Define (from GnuPG).
32571
32572         * lib/sha.c: Give credit (GnuPG) where due.
32573         (M): Use rol rather than open-coding it.
32574         Add a FIXME comment.
32575
32576 2000-09-21  Jim Meyering  <meyering@lucent.com>
32577
32578         * lib/userspec.c (parse_user_spec): Remove debugging printf I'd added.
32579         Reported by Michael Stone.
32580
32581 2000-09-20  Jim Meyering  <meyering@lucent.com>
32582
32583         * lib/Makefile.am (libfetish_a_SOURCES): Add sha.c.
32584         (noinst_HEADERS): Add sha.h.
32585         Based on code from Scott G. Miller and from GnuPG.
32586
32587 2000-09-18  Jim Meyering  <meyering@lucent.com>
32588
32589         * m4/getloadavg.m4 (AC_FUNC_GETLOADAVG): Restore the initial value of
32590         LIBS. Otherwise, everyone ends up linking with -lelf for some
32591         configurations.
32592         Reported by Mike Stone.
32593
32594 2000-09-15  Jim Meyering  <meyering@lucent.com>
32595
32596         * lib/regex.c: Update from libc.
32597
32598 2000-09-10  Jim Meyering  <meyering@lucent.com>
32599
32600         * lib/getopt.c (_getopt_internal): Update from glibc.
32601
32602 2000-09-09  Jim Meyering  <meyering@lucent.com>
32603
32604         * lib/quotearg.c: Rename ISASCII to IN_CTYPE_DOMAIN, so people don't
32605         think it should be used as a general replacement for isascii.
32606         * lib/fnmatch.c: Likewise.
32607         * lib/mbswidth.c: Likewise
32608         * lib/regex.c: Likewise.
32609
32610         Don't use atoi.
32611         * lib/userspec.c: Include sys/param.h and limits.h.
32612         Include xstrtol.h.
32613         (CHAR_BIT, TYPE_SIGNED, TYPE_MINIMUM, TYPE_MAXIMUM): Define.
32614         (UID_T_MAX, GID_T_MAX, MAXUID, MAXGID): Define.
32615         (parse_user_spec): Use xstrtoul, not atoi when converting numeric
32616         UID, GID.  Check range.
32617
32618 2000-09-06  Jim Meyering  <meyering@lucent.com>
32619
32620         * lib/getopt.c (_getopt_internal): Update from glibc.
32621
32622 2000-08-30  Jim Meyering  <meyering@lucent.com>
32623
32624         * lib/strftime.c: Merge in changes from GNU libc.
32625
32626 2000-08-26  Jim Meyering  <meyering@lucent.com>
32627
32628         * m4/jm-macros.m4: Use jm_FUNC_FPENDING.
32629         * m4/fpending.m4: New file.
32630
32631 2000-08-26  Jim Meyering  <meyering@lucent.com>
32632
32633         * lib/closeout.c: Include "__fpending.h".
32634         (close_stdout_status): Return right away if there's nothing to flush.
32635
32636         * lib/Makefile.am (noinst_HEADERS): Add __fpending.h.
32637         * lib/__fpending.c: New file.
32638         * lib/__fpending.h: New file.
32639
32640 2000-08-20  Jim Meyering  <meyering@lucent.com>
32641
32642         * m4/check-decl.m4: Include utmp.h `#if HAVE_UTMP_H', rather than
32643         `#if !HAVE_UTMPX_H'.  The latter would lose on systems with neither
32644         utmp.h nor utmpx.h.  Reported by Eli Zaretskii.
32645
32646 2000-08-11  J. David Anglin  <dave@hiauly1.hia.nrc.ca>
32647
32648         Improve fileutils installation on systems where running
32649         programs (like install) can't be unlinked.
32650         * m4/unlink-busy.m4 (jm_FUNC_UNLINK_BUSY_TEXT): New file/macro.
32651         * m4/jm-macros.m4: Use jm_FUNC_UNLINK_BUSY_TEXT.
32652
32653 2000-08-07  Paul Eggert  <eggert@twinsun.com>
32654
32655         Standardize on "memory exhausted" instead of "Memory exhausted"
32656         or "virtual memory exhausted".
32657         * lib/obstack.c (print_and_abort): Use "memory exhausted", not
32658         "virtual memory exhausted".
32659         * lib/same.c (same_name): Invoke xalloc_die instead of printing
32660         our own message.
32661         * lib/userspec.c (parse_user_spec): Likewise.
32662         * lib/bumpalloc.h: comment fix
32663         * lib/same.c, userspec.c: Include xalloc.h.
32664
32665         * lib/xalloc.h (xalloc_msg_memory_exhausted): Now char const[],
32666         not char *const and pointing to a constant array.
32667         * lib/xmalloc.c (xalloc_msg_memory_exhausted): Likewise.
32668         (xrealloc): Comment fix.
32669
32670         * lib/userspec.c (parse_user_spec):
32671         Don't translate a message until just before returning,
32672         to avoid unnecessary translation.
32673
32674 2000-08-07  Jim Meyering  <meyering@lucent.com>
32675
32676         * lib/addext.c, argmatch.c, argmatch.h, backupfile.h, bumpalloc.h,
32677         chown.c, diacrit.h, dirname.h, dup2.c, exclude.h, fileblocks.c,
32678         fnmatch.c, fnmatch.h, fsusage.c, fsusage.h, getdate.h,
32679         getgroups.c, gethostname.c, getopt.h, group-member.c,
32680         hard-locale.c, hash.h, isdir.c, lchown.c, linebuffer.c,
32681         linebuffer.h, long-options.h, malloc.c, md5.c, md5.h, memchr.c,
32682         memcmp.c, memcoll.c, memset.c, mktime.c, modechange.h, obstack.h,
32683         pathmax.h, realloc.c, rmdir.c, safe-read.c, save-cwd.c, stime.c,
32684         stpcpy.c, strcasecmp.c, strcspn.c, strdup.c, stripslash.c,
32685         strstr.c, strtod.c, strtol.c, strtoul.c, strtoull.c, strtoumax.c,
32686         utime.c, version-etc.h, xalloc.h, xstrdup.c, xstrtoumax.c,
32687         yesno.c: Back out Copyright date changes for each file with no change
32688         this year.  This eases coordination with other programs using the same
32689         source code modules.  From Paul Eggert.
32690
32691 2000-08-06  Paul Eggert  <eggert@twinsun.com>
32692
32693         * m4/mbstate_t.m4 (AC_MBSTATE_T): Define mbstate_t to be int,
32694         not char, for compatibility with glibc 2.1.3 strftime.c.
32695
32696 2000-08-03  Greg McGary  <greg@mcgary.org>
32697
32698         * lib/regex.c (SET_HIGH_BOUND, MOVE_BUFFER_POINTER,
32699         ELSE_EXTEND_BUFFER_HIGH_BOUND): New macros.
32700         (EXTEND_BUFFER): Use them.
32701
32702 2000-08-01  Jim Meyering  <meyering@lucent.com>
32703
32704         * lib/dirname.c (ISSLASH): Define.
32705         (BACKSLASH_IS_PATH_SEPARATOR): Define.
32706         (dir_name) [BACKSLASH_IS_PATH_SEPARATOR]: Handle the case in which
32707         both `\' and `/' may be use as path separators.
32708         Based on a patch from Prashant TR.
32709
32710 2000-07-31  Paul Eggert  <eggert@twinsun.com>
32711
32712         * lib/quotearg.c (quotearg_n_options): Don't make the initial
32713         slot vector a constant, since it might get modified.
32714
32715 2000-07-31  Jim Meyering  <meyering@lucent.com>
32716
32717         * lib/xmalloc.c: Use `virtual memory exhausted', not
32718         `Memory exhausted'.
32719         * lib/obstack.c (print_and_abort): Likewise.
32720
32721 2000-07-30  Paul Eggert  <eggert@twinsun.com>
32722
32723         * lib/quotearg.c (quotearg_n_options): Preallocate a slot 0
32724         buffer, so that the caller can always quote one small
32725         component of a "memory exhausted" message in slot 0.
32726         From a suggestion by Jim Meyering.
32727
32728 2000-07-30  Jim Meyering  <meyering@lucent.com>
32729
32730         * lib/makepath.c (make_path): Quote the other instance, too.
32731
32732         * lib/quotearg.c (N_STATIC_SLOTVECS): Define.
32733         (STATIC_BUF_SIZE): Define.
32734         (quotearg_n_options): Use only statically allocated storage when
32735         N < N_STATIC_SLOTVECS and the length of the quoted result is smaller
32736         than STATIC_BUF_SIZE.
32737
32738 2000-07-29  Jim Meyering  <meyering@lucent.com>
32739
32740         * lib/diacrit.c (diacrit_diac): Use __MSDOS__ in favor of MSDOS.
32741         * lib/dirname.c (dir_name): Likewise.
32742
32743         * lib/basename.c (base_name): Use ISSLASH rather than comparing against
32744         `/'.
32745
32746         * lib/dirname.c (dir_name) [MSDOS]: Declare `lim' to be const.
32747         (dir_name): Assert that there are no trailing slashes.
32748
32749 2000-07-29  Bruno Haible  <haible@clisp.cons.org>
32750
32751         * lib/mbswidth.h (mbswidth): Add a flags argument.
32752         (mbswidth): New declaration.
32753         (MBSW_ACCEPT_INVALID, MBSW_ACCEPT_UNPRINTABLE): New macros.
32754         * lib/mbswidth.c (mbswidth): Add a flags argument.
32755         (mbsnwidth): New function.
32756
32757 2000-07-24  Jim Meyering  <meyering@lucent.com>
32758
32759         * lib/mbswidth.c: Remove useless #else.  From Bruno Haible.
32760
32761 2000-07-23  Paul Eggert  <eggert@twinsun.com>
32762
32763         * m4/mbswidth.m4 (jm_PREREQ_MBSWIDTH): Check for wcwidth declaration.
32764
32765 2000-07-23  Paul Eggert  <eggert@twinsun.com>
32766
32767         * lib/quotearg.c: Streamline by invoking multibyte code only if needed.
32768         <wchar.h>: Include only if HAVE_MBRTOWC && 1 < MB_LEN_MAX.
32769         (MB_CUR_MAX): Redefine to 1 if ! (HAVE_MBRTOWC && 1 < MB_LEN_MAX).
32770         (quotearg_buffer_restyled): If a unibyte locale, don't bother to
32771         invoke multibyte primitives.
32772
32773 2000-07-23  Paul Eggert  <eggert@twinsun.com>
32774
32775         * lib/quotearg.c:
32776         Include <wchar.h> even if ! (HAVE_MBRTOWC && 1 < MB_LEN_MAX),
32777         so that mbstate_t is always defined.
32778
32779         Do not inspect MB_LEN_MAX, since it's incorrectly defined to
32780         be 1 in at least one GCC installation, and this configuration
32781         error is likely to be common.  Ignoring MB_LEN_MAX hurts
32782         performance on hosts that have mbrtowc but have only unibyte
32783         locales, but I assume these hosts are rare.
32784
32785 2000-07-23  Paul Eggert  <eggert@twinsun.com>
32786
32787         * lib/mbswidth.c (_XOPEN_SOURCE):
32788         Don't define; this causes problems on Solaris 7.
32789         (wcwidth) [!HAVE_DECL_WCWIDTH]: Declare.
32790
32791 2000-07-23  Jim Meyering  <meyering@lucent.com>
32792
32793         * m4/check-decl.m4 (jm_CHECK_DECLS): Check for declarations of these,
32794         too: getgrgid, getpwuid, getuid.
32795
32796 2000-07-23  Jim Meyering  <meyering@lucent.com>
32797
32798         * lib/basename.c (base_name): Add an assertion.
32799
32800 2000-07-23  Bruno Haible  <haible@clisp.cons.org>
32801
32802         * lib/quotearg.c: When the system forces us to redefine mbstate_t,
32803         shadow its mbsinit function.
32804
32805 2000-07-17  Bruno Haible  <haible@clisp.cons.org>
32806
32807         * lib/mbswidth.h: New file.
32808         * lib/mbswidth.c: New file.
32809         * lib/Makefile.am (libfetish_a_SOURCES): Add mbswidth.c.
32810         (noinst_HEADERS): Add mbswidth.h.
32811
32812 2000-07-17  Bruno Haible  <haible@clisp.cons.org>
32813
32814         * lib/config.charset: Add support for FreeBSD. Improve support for
32815         HP-UX and IRIX 6.
32816
32817 2000-07-16  Bruno Haible  <haible@clisp.cons.org>
32818
32819         * m4/mbswidth.m4: New file.
32820         * m4/prereq.m4 (jm_PREREQ): Call jm_PREREQ_MBSWIDTH.
32821
32822 2000-07-15  Jim Meyering  <meyering@lucent.com>
32823
32824         * lib/makepath.c: Include quote.h.
32825         (make_path): Convert "`%s'" in format strings to "%s", and wrap each
32826         corresponding argument in a `quote (...)' call.
32827         Give better diagnostics.
32828
32829         * lib/Makefile.am (libfetish_a_SOURCES): Add quote.c.
32830         (noinst_HEADERS): Add quote.h.
32831
32832         * lib/quote.c (quote, quote_n): New file.  Two functions taken verbatim
32833         from tar's src/misc.c.
32834         * lib/quote.h: New file.  Prototypes for same.
32835
32836 2000-07-14  Paul Eggert  <eggert@twinsun.com>
32837
32838         From a suggestion by Bruno Haible.
32839         * lib/quotearg.c (mbrtowc): Do not use HAVE_WCHAR_H in the definition.
32840         Use defined mbstate_t, not HAVE_MBSTATE_T_OBJECT,
32841         to decide whether to define the BeOS workaround macro;
32842         this adjusts to the change to AC_MBSTATE_T.
32843
32844 2000-07-14  Jim Meyering  <meyering@lucent.com>
32845
32846         * m4/xstrtoumax.m4 (jm_AC_PREREQ_XSTRTOUMAX): Require
32847         jm_AC_TYPE_UINTMAX_T.
32848
32849 2000-07-13  Paul Eggert  <eggert@twinsun.com>
32850
32851         * lib/quotearg.h (enum quoting style): New enum clocale_quoting_style.
32852
32853         * lib/quotearg.c (quoting_style_args, quoting_style_vals,
32854         quotearg_buffer_restyled): Add support for
32855         clocale_quoting_style.  Undo previous change to
32856         locale_quoting_style behavior, and undo the "{LEFT QUOTATION MARK}"
32857         and "{RIGHT QUOTATION MARK}" msgids.
32858
32859 2000-07-10  Paul Eggert  <eggert@twinsun.com>
32860
32861         From a suggestion by Bruno Haible.
32862         * m4/mbstate_t.m4 (AC_MBSTATE_T):
32863         Renamed from AC_MBSTATE_T_OBJECT.  All uses changed.
32864         Change from a two-part test, which defines both HAVE_MBSTATE_T_OBJECT
32865         and mbstate_t, to a single-part test that simply defines mbstate_t.
32866         * m4/prereq.m4 (jm_PREREQ_QUOTEARG):
32867         s/AC_MBSTATE_T_OBJECT/AC_MBSTATE_T/.
32868
32869 2000-07-10  Jim Meyering  <meyering@lucent.com>
32870
32871         * m4/strerror_r.m4: Mirror the correction made in autoconf.
32872
32873         * m4/gnu-source.m4: Output to confdefs.h directly.
32874         Suggestion from Akim Demaille.
32875
32876 2000-07-09  Paul Eggert  <eggert@twinsun.com>
32877
32878         The old behavior of quoting `like this' doesn't look good with
32879         newer, ISO-style fonts.  See:
32880         http://www.cl.cam.ac.uk/~mgk25/ucs/quotes.html
32881
32882         Instead, quote "like this" by default.  Let the translator
32883         tailor the locale-specific quoting behavior by providing
32884         translations for {LEFT QUOTATION MARK} and {RIGHT QUOTATION MARK}.
32885
32886         * lib/quotearg.c (N_): New macro.
32887         (gettext_default): New function.
32888         (quotearg_buffer_restyled): Use
32889         gettext_default ("{LEFT QUOTATION MARK}", "\"") for left quote, and
32890         gettext_default ("{RIGHT QUOTATION MARK}", "\"") for right quote.
32891
32892 2000-07-09  Jim Meyering  <meyering@lucent.com>
32893
32894         * m4/jm-macros.m4 (jm_MACROS): Add a test to see if -lm is required
32895         to link seq.  If so, set SEQ_LIBM to -lm.  From Bruno Haible.
32896
32897         * m4/gnu-source.m4 (AC__GNU_SOURCE): New file/macro.
32898         * m4/jm-macros.m4 (jm_CHECK_ALL_TYPES): Require it.
32899
32900 2000-07-09  Jim Meyering  <meyering@lucent.com>
32901
32902         * lib/Most files: Update copyright dates to include 2000.
32903
32904 2000-07-08  Jim Meyering  <meyering@lucent.com>
32905
32906         * lib/xgethostname.c (ENAMETOOLONG): Define to an unlikely value
32907         if not defined.
32908         (xgethostname): Remove now-unnecessary #ifdef.
32909         Move declaration of `err' into loop where it's used.
32910
32911 2000-07-05  Paul Eggert  <eggert@twinsun.com>
32912         and Bruno Haible  <haible@clisp.cons.org>
32913
32914         * m4/mbstate_t.m4 (AC_MBSTATE_T_OBJECT): Test for mbstate_t
32915         only if the test for an object-type mbstate_t fails.  This
32916         prevents us from mistakenly reporting that mbstate_t is a
32917         system object type after we "#define mbstate_t int" to work
32918         around its lack.
32919
32920 2000-07-05  Paul Eggert  <eggert@twinsun.com>
32921         and Bruno Haible  <haible@clisp.cons.org>
32922
32923         * lib/quotearg.c (mbrtowc): Declare returned type, since BeOS doesn't.
32924
32925 2000-07-05  Bruno Haible  <haible@clisp.cons.org>
32926
32927         * m4/strerror_r.m4 (AC_FUNC_STRERROR_R): Pass a reasonably large buffer
32928         to strerror_r.
32929         Include <ctype.h> for use of isalpha.
32930
32931 2000-07-05  Bruno Haible  <haible@clisp.cons.org>
32932
32933         * lib/xgethostname.c (xgethostname): Protect against the SunOS 5.5 bug
32934         by allocating a larger buffer. Test the gethostname return value for
32935         being >= 0, not == 0, for BeOS.  Don't exhaust memory if gethostname
32936         returns an error and ENAMETOOLONG isn't defined.
32937
32938 2000-07-05  Bruno Haible  <haible@clisp.cons.org>
32939
32940         * lib/quotearg.c (struct quoting_options): Simplify quote_these_too
32941         dimension.
32942
32943 2000-07-04  Jim Meyering  <meyering@lucent.com>
32944
32945         * m4/fsusage.m4 (jm_FILE_SYSTEM_USAGE): Use plain old `echo' instead
32946         of the deprecated AC_CHECKING.
32947
32948 2000-07-04  Jim Meyering  <meyering@lucent.com>
32949
32950         * lib/strndup.c: [!HAVE_DECL_STRNLEN]: Declare strnlen.
32951         Reported by Bruno Haible.
32952
32953 2000-07-04  Jim Meyering  <meyering@lucent.com>
32954
32955         * lib/quotearg.c: Make inclusion of <wchar.h> independent of whether
32956         HAVE_MBRTOWC is set.  Required at least for irix-5.6, which
32957         lacks mbrtowc.
32958
32959 2000-07-03  Paul Eggert  <eggert@twinsun.com>
32960
32961         * m4/mbstate_t.m4 (AC_MBSTATE_T_OBJECT): Port to autoconf 2.13.
32962         Add AC_CHECK_HEADERS(stdlib.h), since we use HAVE_STDLIB_H.
32963
32964 2000-07-03  Paul Eggert  <eggert@twinsun.com>
32965         and Bruno Haible  <haible@clisp.cons.org>
32966
32967         * lib/quotearg.c (mbrtowc):
32968         Assign to *pwc, and return 1 only if result is nonzero.
32969         (iswprint): Use ISPRINT when substituting our own mbrtowc.
32970
32971 2000-07-03  Jim Meyering  <meyering@lucent.com>
32972
32973         * m4/check-decl.m4 (AC_CHECK_DECLS): Add strnlen.
32974
32975 2000-07-03  Jim Meyering  <meyering@lucent.com>
32976
32977         * lib/readutmp.h: [HAVE_UTMPX_H]: Include <utmp.h> if HAVE_UTMP_H.
32978         This is necessary to get a definition of e.g., UTMP_FILE on
32979         HP-UX 10.20.
32980         From Bob Proulx.
32981
32982 2000-07-02  Jim Meyering  <meyering@lucent.com>
32983
32984         * m4/mbstate_t.m4: Also define mbstate_t, if necessary.
32985
32986         * m4/chown.m4: Replace each use of AC_SUBST(LIBOBJS)/LIBOBJS=... with
32987         AC_LIBOBJ(function_name).
32988         * m4/chown.m4: Likewise.
32989         * m4/fnmatch.m4: Likewise.
32990         * m4/ftruncate.m4: Likewise.
32991         * m4/getgroups.m4: Likewise.
32992         * m4/getline.m4: Likewise.
32993         * m4/group-member.m4: Likewise.
32994         * m4/jm-macros.m4: Likewise.
32995         * m4/lstat.m4: Likewise.
32996         * m4/malloc.m4: Likewise.
32997         * m4/memcmp.m4: Likewise.
32998         * m4/nanosleep.m4: Likewise.
32999         * m4/putenv.m4: Likewise.
33000         * m4/realloc.m4: Likewise.
33001         * m4/regex.m4: Likewise.
33002         * m4/stat.m4: Likewise.
33003         * m4/strftime.m4: Likewise.
33004
33005 2000-07-02  Jim Meyering  <meyering@lucent.com>
33006
33007         * lib/quotearg.c (mbstate_t): Don't define here.
33008
33009 2000-07-02  Jim Meyering  <meyering@lucent.com>
33010
33011         * lib/nanosleep.c (SIGCONT): Define if not already defined.
33012
33013 2000-07-01  Jim Meyering  <meyering@lucent.com>
33014
33015         * m4/uptime.m4: Put double quotes around use of $cross_compiling.
33016
33017 2000-07-01  Jim Meyering  <meyering@lucent.com>
33018
33019         * m4/ls-mntd-fs.m4: Remove a `FIXME' comment and fix the associated
33020         problem.
33021
33022 2000-07-01  Bruno Haible  <haible@clisp.cons.org>
33023
33024         * m4/ls-mntd-fs.m4 (jm_LIST_MOUNTED_FILESYSTEMS): Rename BeOS specific
33025         macro from MOUNTED_NEXT_DEV to MOUNTED_FS_STAT_DEV.
33026
33027 2000-07-01  Bruno Haible  <haible@clisp.cons.org>
33028
33029         * lib/mountlist.c: Use MOUNTED_FS_STAT_DEV instead of MOUNTED_NEXT_DEV,
33030         per change in ../m4/ls-mntd-fs.m4.
33031         (read_filesystem_list): Ignore symbolic links.
33032
33033 2000-06-29  Jim Meyering  <meyering@lucent.com>
33034
33035         * lib/same.c: Include <string.h> or <strings.h>, as appropriate,
33036         for declaration of strcmp.
33037
33038         * lib/long-options.c: Include <stdlib.h>, for declaration of exit.
33039
33040         * lib/mountlist.c (fsp_to_string) [HAVE_F_FSTYPENAME_IN_STATFS]:
33041         Avoid warning by casting result to `char *' to remove `const'.
33042
33043 2000-06-28  Jim Meyering  <meyering@lucent.com>
33044
33045         * m4/mbstate_t.m4: Use stdlib.h, not stdio.h.  The latter is not
33046         included by quotearg.c, for which we perform this test.  From
33047         Bruno Haible.
33048
33049 2000-06-27  Bruno Haible  <haible@clisp.cons.org>
33050
33051         * m4/check-decl.m4 (_jm_DECL_HEADERS): Check for utmp.h as well.
33052         * m4/prereq.m4 (jm_PREREQ_READUTMP): Likewise. If either <utmp.h> or
33053         <utmpx.h> exists, put readutmp.o into LIBOBJS.
33054
33055 2000-06-27  Bruno Haible  <haible@clisp.cons.org>
33056
33057         * lib/Makefile.am (libfetish_a_SOURCES): Remove readutmp.c.
33058
33059 2000-06-26  Paul Eggert  <eggert@twinsun.com>
33060
33061         savedir now sets errno on failure and invokes xmalloc to get memory.
33062         Fix a couple of other minor bugs while we're at it.
33063
33064         * lib/savedir.c (<unistd.h>): Do not include; there's no need.
33065         (NAMLEN): Remove macro.
33066         (malloc, realloc): Remove decls.
33067         (stpcpy): Likewise.
33068         ("xalloc.h"): Include.
33069         (NAME_SIZE_DEFAULT): New macro.
33070         (savedir): Use xmalloc / xrealloc to allocate memory.
33071         Use NAME_SIZE_DEFAULT if name_size is negative or overflows to zero.
33072         Skip "" directory entries.
33073         Use strlen to calculate directory entry length, since the old method
33074         is rarely used these days and isn't worth supporting.
33075         Don't use a pointer after freeing it.
33076         Check for integer overflow when calculating allocation size.
33077         Use memcpy to copy entries, instead of stpcpy.
33078         Set errno properly when returning NULL.
33079         Check for readdir error.
33080
33081 2000-06-26  Jim Meyering  <meyering@lucent.com>
33082
33083         * lib/posixtm.c [HAVE_STDLIB_H]: Include stdlib.h, for decl of abort.
33084
33085 2000-06-25  Jim Meyering  <meyering@lucent.com>
33086
33087         * m4/mbstate_t.m4: Include stdio.h before wchar.h to work around
33088         Linux header bug when _XOPEN_SOURCE is defined to 500.
33089
33090 2000-06-25  Bruno Haible  <haible@clisp.cons.org>
33091
33092         * lib/unicodeio.c (print_unicode_char): Work around ansi2knr
33093         deficiency.
33094
33095 2000-06-25  Bruno Haible  <haible@clisp.cons.org>
33096
33097         * lib/getusershell.c (xmalloc, xrealloc): Remove functions.
33098         Include xalloc.h.
33099         Don't include <stdlib.h>.  Don't declare malloc, realloc.
33100
33101 2000-06-24  Jim Meyering  <meyering@lucent.com>
33102
33103         * m4/strerror_r.m4: Revive this file -- to try out an experimental
33104         version of AC_FUNC_STRERROR_R that may work even on BeOS, a system
33105         for which strerror does return char*, but which lacks a conveniently
33106         accessible declaration of the function.  If the compile-test says
33107         strerror_r doesn't work, then resort to a `run'-test that works on
33108         BeOS and segfaults on DEC Unix.
33109
33110 2000-06-24  Jim Meyering  <meyering@lucent.com>
33111
33112         * lib/error.c [!HAVE_DECL_STRERROR_R]: Declare strerror_r.
33113
33114 2000-06-23  Paul Eggert  <eggert@twinsun.com>
33115
33116         * m4/mbstate_t.m4: New file, defining AC_MBSTATE_T_OBJECT.
33117         * m4/prereq.m4 (jm_PREREQ_QUOTEARG): Use it.  Add check for iswprint.
33118
33119 2000-06-23  Paul Eggert  <eggert@twinsun.com>
33120
33121         * lib/quotearg.c: Include <wctype.h> after <wchar.h>, for Solaris 2.5.
33122         (mbrtowc, mbstate_t): Define substitutes if
33123         HAVE_MBRTOWC && HAVE_WCHAR_H && !HAVE_MBSTATE_T_OBJECT.
33124         (iswprint): Define to 1 if !defined iswprint && !HAVE_ISWPRINT,
33125         not if ! (HAVE_MBRTOWC && HAVE_WCHAR_H).
33126
33127 2000-06-23  Jim Meyering  <meyering@lucent.com>
33128
33129         * m4/afs.m4: Add missing AC_MSG_RESULT.
33130         Reported by Bruno Haible.
33131
33132         * m4/fsusage.m4: s/AC_MSG_CHECKING/AC_CHECKING/.
33133         Suggestion from Bruno Haible.
33134
33135 2000-06-23  Jim Meyering  <meyering@lucent.com>
33136
33137         * lib/getpass.c: New file, from Bruno Haible.  Required for BeOS.
33138
33139 2000-06-21  Jim Meyering  <meyering@lucent.com>
33140
33141         * m4/jm-macros.m4 (AC_REPLACE_FUNCS): Add getpass.
33142
33143 2000-06-21  Jim Meyering  <meyering@lucent.com>
33144
33145         * lib/Makefile.am (libfetish_a_SOURCES): Add getstr.c.
33146         (noinst_HEADERS): Add getstr.h.
33147
33148         * lib/getline.c (getstr): Move into a separate file.
33149         * lib/getstr.c (getstr): New file, extracted from getline.c, with
33150         the following changes: new parameter, delim2; both delim[12]
33151         parameters have type `int', not `char'.  The latter would lose
33152         with 8-bit delimiters.
33153         * lib/getstr.h: New file.
33154
33155 2000-06-21  Bruno Haible  <haible@clisp.cons.org>
33156
33157         * lib/xgetcwd.c (xgetcwd): If the required pathname length is smaller
33158         than 1024, return a memory chunk of least possible size, instead
33159         of size PATH_MAX + 2. In the loop, increment the size proportionally.
33160         Use free/xmalloc instead of xrealloc to avoid copying for very long
33161         paths.
33162
33163 2000-06-21  Bruno Haible  <haible@clisp.cons.org>
33164
33165         * lib/path-concat.c (path_concat): Don't access dir[-1] if dir is
33166         the empty string.
33167
33168 2000-06-21  Bruno Haible  <haible@clisp.cons.org>
33169
33170         * lib/canon-host.c (canon_host): Use malloc and memcpy to copy an
33171         address, not strdup.  Include <stdlib.h> and don't declare free().
33172
33173 2000-06-19  Jim Meyering  <meyering@lucent.com>
33174
33175         * lib/getloadavg.c [HAVE_NLIST_H] (NLIST_STRUCT): Define.
33176
33177 2000-06-18  Jim Meyering  <meyering@lucent.com>
33178
33179         * m4/jm-macros.m4 (AC_REPLACE_FUNCS): Remove mkdir.
33180
33181         * m4/link-follow.m4 (jm_AC_FUNC_LINK_FOLLOWS_SYMLINK): Change the
33182         `checking whether...' message to be consistent with that of the
33183         lstat test.
33184
33185 2000-06-18  Jim Meyering  <meyering@lucent.com>
33186
33187         * lib/mkdir.c: Remove file, due mainly to copyright incompatibility.
33188         Besides, these days every porting target provides a mkdir function.
33189
33190         * lib/strnlen.c: Include memory.h, string.h, and/or strings.h as
33191         needed. (this snippet comes from src/system.h).
33192
33193 2000-06-16  Bruno Haible  <haible@clisp.cons.org>
33194
33195         * m4/glibc21.m4 (jm_GLIBC21): Define GLIBC21 for Makefiles, not for C.
33196
33197 2000-06-15  Paul Eggert  <eggert@twinsun.com>
33198
33199         * lib/human.c (adjust_value): New function.
33200         (human_readable_inexact): Apply rounding style even when
33201         printing approximate values.
33202
33203 2000-06-14  Paul Eggert  <eggert@twinsun.com>
33204
33205         * lib/human.c (human_readable_inexact): Allow an input block
33206         size that is not a multiple of the output block size, and vice versa.
33207         Reported by Piergiorgio Sartor.
33208
33209 2000-06-14  Paul Eggert  <eggert@twinsun.com>
33210
33211         * lib/getdate.y (get_date): Apply relative times after time
33212         zone indicator, not before.  Reported by Todd A. Jacobs.
33213
33214 2000-06-13  Jim Meyering  <meyering@lucent.com>
33215
33216         * lib/Makefile.am (all-local): Depend on lstat.c and stat.c.
33217
33218         * lib/xstat.in [!HAVE_DECL_FREE]: Declare free in lstat.c.
33219
33220 2000-06-12  Paul Eggert  <eggert@twinsun.com>
33221
33222         * lib/xstat.in: Include <stdlib.h> in lstat, to declare "free".
33223
33224 2000-06-12  Jim Meyering  <meyering@lucent.com>
33225
33226         * m4/getloadavg.m4 (AM_FUNC_GETLOADAVG): Replace with
33227         AC_FUNC_GETLOADAVG from autoconf, and tweak the latter to accept an
33228         optional argument.
33229         * m4/jm-macros.m4: s/AM_FUNC_GETLOADAVG/AC_FUNC_GETLOADAVG/, and supply
33230         the optional argument, `lib'.
33231
33232 2000-06-08  Jim Meyering  <meyering@lucent.com>
33233
33234         * m4/largefile.m4: Remove file (now that it's part of autoconf).
33235
33236 2000-06-04  Paul Eggert  <eggert@twinsun.com>
33237
33238         Rewrite largefile configuration so that we don't need to run
33239         getconf and don't need AC_CANONICAL_HOST.  [I'm leaving the use of
33240         AC_CANONICAL_HOST in configure.in -- jmm]
33241
33242         * m4/largefile.m4 (AC_SYS_LARGEFILE_FLAGS,
33243         AC_SYS_LARGEFILE_SPACE_APPEND): Remove.
33244         (AC_SYS_LARGEFILE_TEST_INCLUDES): New macro.
33245         (AC_SYS_LARGEFILE_MACRO_VALUE): Change arguments from
33246         CODE-TO-SET-DEFAULT to VALUE, INCLUDES, FUNCTION-BODY.
33247         All uses changed.
33248         Instead of inspecting the output of getconf, try to compile the
33249         test program without and with the macro definition.
33250         (AC_SYS_LARGEFILE): Do not require AC_CANONICAL_HOST or check
33251         for getconf.  Instead, check for the needed flags by compiling
33252         test programs.
33253
33254 2000-06-04  Paul Eggert  <eggert@twinsun.com>
33255
33256         * lib/strnlen.c: Include <config.h> if HAVE_CONFIG_H.
33257
33258 2000-06-04  Jim Meyering  <meyering@lucent.com>
33259
33260         * lib/getugroups.c (getugroups): Cast -1 to gid_t, for systems like
33261         SunOS 4.1.4 for which gid_t is an unsigned type.
33262
33263 2000-06-03  Jim Meyering  <meyering@lucent.com>
33264
33265         * m4/prereq.m4 (jm_PREREQ_HUMAN): Use []-quoted list in AC_CHECK_DECLS,
33266         now that autoconf requires that.
33267
33268         * m4/jm-glibc-io.m4: Add a kludge to make autoheader emit the required
33269         #undefs.  E.g., #undef HAVE_DECL_FERROR_UNLOCKED.
33270         Use []-quoted list in AC_CHECK_DECLS, now that autoconf requires that.
33271
33272 2000-06-03  Jim Meyering  <meyering@lucent.com>
33273
33274         * lib/strnlen.c [!HAVE_DECL_MEMCHR]: Declare memchr.
33275
33276 2000-06-03  Bruno Haible  <haible@clisp.cons.org>
33277
33278         * m4/glibc21.m4: New file.
33279         * m4/jm-macros.m4 (jm_MACROS): Call jm_GLIBC21.
33280
33281 2000-06-03  Bruno Haible  <haible@clisp.cons.org>
33282
33283         * lib/Makefile.am (install-exec-local): On systems with glibc-2.1 or
33284         newer, don't install charset.alias.
33285         * lib/config.charset: Change the Linux/glibc rules so they become empty
33286         on glibc-2.1 or newer.
33287
33288 2000-06-02  Jim Meyering  <meyering@lucent.com>
33289
33290         * lib/mountlist.c: Back out last change.  Instead, do this...
33291         * lib/mountlist.c (read_filesystem_list) [MOUNTED_VMOUNT]: Set the
33292         me_dummy member using the same `ignore'-testing code.
33293         * lib/mountlist.h (ME_DUMMY): Add `autofs' to the list of ignored
33294         fs_type strings.
33295         From Mark D. Roth.
33296
33297 2000-05-29  Jim Meyering  <meyering@lucent.com>
33298
33299         * lib/mountlist.c (read_filesystem_list) [MOUNTED_VMOUNT]: Ignore
33300         mounts with the `ignore' attribute.  Based on a patch from
33301         Mark D. Roth.
33302
33303 2000-05-28  Jim Meyering  <meyering@lucent.com>
33304
33305         * m4/jm-macros.m4 (AC_FUNC_LSTAT_FOLLOWS_SLASHED_SYMLINK): Rename from
33306         jm_FUNC_LSTAT_FOLLOWS_SLASHED_SYMLINK.
33307         * m4/stat.m4: Likewise.
33308         * m4/lstat.m4: Likewise.
33309         * m4/lstat-slash.m4: Remove file (absorbed into autoconf).
33310
33311         * m4/jm-macros.m4 (AC_FUNC_STRERROR_R): Rename from jm_FUNC_STRERROR_R.
33312         * m4/strerror_r.m4: Remove file (absorbed into autoconf).
33313
33314 2000-05-26  Jim Meyering  <meyering@lucent.com>
33315
33316         * m4/uptime.m4: Use `$cross_compiling', not `$ac_cv_prog_cc_cross'.
33317
33318 2000-05-24  Jim Meyering  <meyering@lucent.com>
33319
33320         * m4/prereq.m4: Use []-quoted list in AC_CHECK_MEMBERS, now that
33321         autoconf requires that.
33322         * m4/lib-check.m4: Likewise.
33323         * m4/jm-macros.m4: Likewise.
33324         * m4/strftime.m4: Likewise.
33325
33326         * m4/check-decl.m4 (jm_CHECK_DECLS): Use []-quoted list in
33327         AC_CHECK_DECLS, now that autoconf requires that.
33328
33329 2000-05-22  Jim Meyering  <meyering@lucent.com>
33330
33331         * m4/stat.m4: Require jm_FUNC_LSTAT_FOLLOWS_SLASHED_SYMLINK.
33332         * m4/lstat.m4: Likewise.
33333
33334 2000-05-22  Jim Meyering  <meyering@lucent.com>
33335
33336         * lib/makepath.c: Remove old, now-unnecessary `#ifdef __MSDOS__' block.
33337
33338 2000-05-20  Jim Meyering  <meyering@lucent.com>
33339
33340         * m4/prereq.m4 (jm_PREREQ_HUMAN): New macro.
33341         (jm_PREREQ): Use it.
33342
33343 2000-05-18  Jim Meyering  <meyering@lucent.com>
33344
33345         * lib/hash.c (hash_rehash): Fix a nasty bug: copy the free entry list
33346         back, too, since it may have been modified by allocate_entry.
33347         (hash_delete): Rewrite to use neither the assignment operator
33348         nor the comma operator in an if-expression.
33349
33350 2000-05-15  Paul Eggert  <eggert@twinsun.com>
33351
33352         * lib/closeout.c:
33353         <sys/stat.h>, <sys/types.h>, <unistd.h>, (STDOUT_FILENO):
33354         Remove; no longer needed.
33355         "quotearg.h": Add include.
33356         (file_name): Do not bother to explicitly initialize to NULL; it's less
33357         efficient on some hosts.
33358         (close_stdout_status): Remove test as to whether stdout was already
33359         closed; it breaks for the case "echo x | sort >&-".
33360         Quote file name colons.
33361         Do not assume that _("write error") lacks format strings.
33362
33363 2000-05-15  Jim Meyering  <meyering@lucent.com>
33364
33365         * lib/version-etc.c (version_etc_copyright): Update the copyright
33366         string used in all --version output.
33367
33368 2000-05-14  Jim Meyering  <meyering@lucent.com>
33369
33370         * lib/closeout.c (close_stdout_set_file_name): New function.
33371         (close_stdout_status): Use new file-scoped global.
33372         Return right away if fstat says the stdout file descriptor is invalid.
33373         * lib/closeout.h (close_stdout_set_file_name): Declare.
33374
33375 2000-05-10  Jim Meyering  <meyering@lucent.com>
33376
33377         * lib/closeout.c [default_exit_status]: New file-scoped variable.
33378         (close_stdout_set_status): New function.
33379         * lib/closeout.h (close_stdout_set_status): Declare.
33380
33381 2000-05-09  Jim Meyering  <meyering@lucent.com>
33382
33383         * m4/gettext.m4: Rename this...
33384         * m4/libintl.m4: ...to this.
33385
33386 2000-05-08  Jim Meyering  <meyering@lucent.com>
33387
33388         * lib/long-options.c: Don't include closeout.h.
33389         (parse_long_options): Don't call close_stdout for --version.
33390
33391 2000-05-06  Paul Eggert  <eggert@twinsun.com>
33392
33393         * m4/largefile.m4 (AC_SYS_LARGEFILE): Define _XOPEN_SOURCE to
33394         be 500, instead of _GNU_SOURCE to be 1, to work around glibc
33395         2.1.3 bug.  This avoids a clash when files like regex.c define
33396         _GNU_SOURCE.
33397
33398 2000-05-06  Jim Meyering  <meyering@lucent.com>
33399
33400         * m4/jm-macros.m4 (AC_REPLACE_FUNCS): Add atexit.
33401         (AC_REPLACE_FUNCS): Add strnlen.
33402
33403         * m4/rmdir-errno.m4 (fetish_FUNC_RMDIR_NOTEMPTY): New macro and file.
33404         * m4/jm-macros.m4: Require fetish_FUNC_RMDIR_NOTEMPTY.
33405
33406         * m4/nanosleep.m4 (jm_FUNC_NANOSLEEP): Save and restore LIBS around
33407         AC_SEARCH_LIBS call for nanosleep.
33408         (LIB_NANOSLEEP): Set and AC_SUBST.
33409
33410 2000-05-06  Jim Meyering  <meyering@lucent.com>
33411
33412         * lib/strnlen.c: Undefine __strnlen and strnlen.
33413         [!weak_alias]: Define __strnlen to strnlen.
33414
33415         * lib/atexit.c: New file, from libiberty.
33416
33417 2000-05-06  Jim Meyering  <meyering@lucent.com>
33418
33419         * lib/closeout.c (close_stdout_status): Also check for errors on the
33420         stderr stream.
33421
33422 2000-05-05  Jim Meyering  <meyering@lucent.com>
33423
33424         * m4/jm-macros.m4 (jm_MACROS): Save and restore LIBS around
33425         AC_SEARCH_LIBS call for clock_gettime.
33426         (LIB_CLOCK_GETTIME): Set and AC_SUBST.
33427
33428         * m4/search-libs.m4: Update from autoconf.
33429
33430         su doesn't work on Solaris 2.6.
33431         * m4/lib-check.m4: When checking for struct spwd.sp_pwdp, also include
33432         <shadow.h>.  Reported by Dragos Harabor.
33433
33434 2000-05-05  Bruno Haible  <haible@clisp.cons.org>
33435
33436         * lib/localcharset.c (get_charset_aliases): Use malloc, realloc and
33437         memcpy instead of xmalloc, xrealloc, path_concat.
33438         (locale_charset): Treat empty environment variables as absent.
33439         (DIRECTORY_SEPARATOR, ISSLASH): New macros.
33440
33441 2000-05-04  Jim Meyering  <meyering@lucent.com>
33442
33443         * lib/getopt.c: Update from glibc.
33444         * lib/obstack.c: Likewise.
33445         * lib/obstack.h: Likewise.
33446         * lib/regex.c: Likewise.  NB: K&R compiler support is dropped for this
33447         file
33448
33449         * lib/regex.h: Likewise.
33450         * lib/strndup.c: Likewise.
33451         * lib/strnlen.c: New file, from glibc.
33452
33453 2000-05-03  Jim Meyering  <meyering@lucent.com>
33454
33455         * m4/check-decl.m4 (AC_CHECK_DECLS): Add strndup.
33456
33457 2000-05-02  Paul Eggert  <eggert@twinsun.com>
33458
33459         * m4/largefile.m4 (AC_SYS_LARGEFILE): Define _GNU_SOURCE if
33460         this is needed to make ftello visible (e.g. glibc 2.1.3).  Use
33461         compile-time test, rather than inspecting host and OS, to
33462         decide whether to define _LARGEFILE_SOURCE.
33463
33464 2000-05-01  Jim Meyering  <meyering@lucent.com>
33465
33466         * m4/fsusage.m4: Use AC_MSG_CHECKING instead of obsolete AC_CHECKING.
33467
33468         * m4/ls-mntd-fs.m4 (jm_LIST_MOUNTED_FILESYSTEMS): Add BeOS support.
33469         Based on a patch from Bruno Haible.
33470
33471 2000-05-01  Jim Meyering  <meyering@lucent.com>
33472
33473         * lib/full-write.c (full_write): Remove `FIXME' part of comment.
33474
33475 2000-04-29  Jim Meyering  <meyering@lucent.com>
33476
33477         * lib/path-concat.c: Declare strdup only if it's not defined.
33478         * lib/canon-host.c: Likewise.
33479
33480 2000-04-28  Jim Meyering  <meyering@lucent.com>
33481
33482         * lib/rpmatch.c [HAVE_LIMITS_H]: Include limits.h before regex.h to
33483         avoid redefinition warning on some systems (HPUX).  Otherwise, regex.h
33484         is included first, then limits.h is included by locale.h by libintl.h.
33485         From John David Anglin.
33486
33487 2000-04-25  Jim Meyering  <meyering@lucent.com>
33488
33489         * lib/makepath.c (S_IRWXUGO): Define.
33490         (make_path): Always perform explicit chmod if MODE specifies any
33491         of the `special' permission bits.  Prompted by a bug report against
33492         install from Mate Wierdl and Joost van Baal.
33493
33494 2000-04-18  Jim Meyering  <meyering@lucent.com>
33495
33496         * m4/prereq.m4 (jm_PREREQ_GETPAGESIZE): New macro.
33497         (jm_PREREQ): Use it.
33498
33499 2000-04-18  Jim Meyering  <meyering@lucent.com>
33500
33501         * lib/README: New file.
33502
33503         * lib/getpagesize.h [!getpagesize && HAVE_OS_H && B_PAGE_SIZE]: Define
33504         getpagesize.  For BeOS.  Based on a patch from Bruno Haible.
33505
33506 2000-04-17  Jim Meyering  <meyering@lucent.com>
33507
33508         Get it right :-)
33509         * m4/jm-macros.m4 (jm_CHECK_ALL_TYPES) [_GNU_SOURCE]: Emit the
33510         actual #define via AH_VERBATIM.  Don't need separate AC_DEFINE.
33511         Suggestion from Akim Demaille.
33512
33513 2000-04-17  Jim Meyering  <meyering@lucent.com>
33514
33515         * lib/strftime.c (my_strftime) [strftime]: Declare strftime here, since
33516         the definition of it to rpl_strftime also defined-away the system's
33517         declaration.
33518
33519 2000-04-15  Jim Meyering  <meyering@lucent.com>
33520
33521         Use `C' to denote so-called `contiguous' files, the same way
33522         that tar does.
33523         * lib/filemode.c (S_ISCTG) [!S_ISCTG && S_IFCTG]: Define.
33524         (ftypelet): Use S_ISCTG.
33525         From Michael Deutschmann.
33526
33527 2000-04-14  Jim Meyering  <meyering@lucent.com>
33528
33529         * m4/jm-macros.m4 (jm_CHECK_ALL_TYPES) [_GNU_SOURCE]: Use the one-arg
33530         form of AC_DEFINE.  Otherwise, the #ifndef in AH_VERBATIM gets
33531         clobbered.
33532
33533 2000-04-14  Jim Meyering  <meyering@lucent.com>
33534
33535         * lib/strftime.c (my_strftime) [#ifdef strftime]: Declare strftime.
33536
33537 2000-04-13  Jim Meyering  <meyering@lucent.com>
33538
33539         * m4/jm-macros.m4 (jm_CHECK_ALL_TYPES) [_GNU_SOURCE]: Use new
33540         AH_VERBATIM to insert required #ifndef into config.h.in.
33541         Suggestion from Akim Demaille.
33542
33543 2000-04-12  Jim Meyering  <meyering@lucent.com>
33544
33545         * m4/getloadavg.m4 (AM_FUNC_GETLOADAVG): Use AC_CHECK_HEADERS, not
33546         `AC_CHECK_HEADER' to check for locale.h.  Thanks to a report from
33547         Christian Krackowizer.
33548
33549         More code moved from ../configure.in into (jm_CHECK_ALL_TYPES).
33550         * m4/jm-macros.m4 (_GNU_SOURCE): Define.
33551         (AC_SYS_LARGEFILE): Require.
33552         (AM_C_PROTOTYPES): Require.
33553
33554 2000-04-08  Jim Meyering  <meyering@lucent.com>
33555
33556         * lib/Makefile.am (charset.alias): Use t-$@, not $@-t so the DOS 8.3
33557         names don't conflict.  Reported by Eli Zaretskii.
33558
33559 2000-04-07  Jim Meyering  <meyering@lucent.com>
33560
33561         * lib/putenv.c: Move inclusion of errno.h so it follows that of
33562         sys/types.h, to work around system header problems on AIX 3.2.5.
33563         From Bruno Haible.
33564
33565 2000-04-07  Bruno Haible  <haible@clisp.cons.org>
33566
33567         * lib/unicodeio.c (print_unicode_char): Avoid triggering Solaris iconv
33568         bug.  Deal with the different error behavior of Irix iconv.
33569
33570 2000-04-05  Paul Eggert  <eggert@twinsun.com>
33571
33572         * m4/largefile.m4 (AC_SYS_LARGEFILE_FLAGS): Don't use -n32 on
33573         IRIX if the installer said otherwise.
33574
33575 2000-04-05  Jim Meyering  <meyering@lucent.com>
33576
33577         Portability tweaks required for ultrix4.3.
33578         * m4/check-decl.m4 [!HAVE_UTMPX_H] (headers): Include <utmp.h>.
33579         (jm_CHECK_DECLS): Add getutent to the list of functions.
33580         (_jm_DECL_HEADERS): Add utmpx.h.
33581         From John David Anglin.
33582
33583         * m4/strftime.m4: Back out the 2000-04-02 change.
33584         Instead of that change, simply undefine putenv in the test program.
33585
33586 2000-04-05  Jim Meyering  <meyering@lucent.com>
33587
33588         Portability tweaks required for ultrix4.3.
33589         * lib/readutmp.h [HAVE_UTMPX_H && !HAVE_DECL_GETUTENT]: Declare
33590         getutent.
33591         * lib/readutmp.c: Include sys/types.h before sys/stat.h.
33592         * lib/canon-host.c: Declare strdup.
33593         * lib/path-concat.c: Likewise.
33594         From John David Anglin.
33595
33596 2000-04-04  Jim Meyering  <meyering@lucent.com>
33597
33598         Be more DOS 8.3-friendly.
33599         * lib/ref-add.sin: Renamed from ref-add.sed.in.
33600         * lib/ref-del.sin: Renamed from ref-del.sed.in.
33601         * lib/Makefile.am: Reflect renaming.
33602         Reported by Eli Zaretskii.
33603
33604         Use a temporary file name that won't clash with `charset.alias'
33605         in the DOS 8.3 name space.
33606         * lib/Makefile.am (charset_tmp): Define.
33607         (install-exec-local): Use $(charset_tmp) instead of $(charset_alias)-t.
33608         (uninstall-local): Likewise.
33609         Reported by Eli Zaretskii.
33610
33611 2000-04-03  Jim Meyering  <meyering@lucent.com>
33612
33613         * m4/gettext.m4: Fix typo in comment.
33614
33615         * m4/codeset.m4 (AC_CHECK_HEADERS): Add langinfo.h (moved here from
33616         textutils/configure.in).  Suggestion from Paul Eggert.
33617         (AC_CHECK_FUNCS): Add nl_langinfo.  (also from textutils/configure.in)
33618
33619 2000-04-02  Paul Eggert  <eggert@twinsun.com>
33620
33621         * m4/strftime.m4 (jm_FUNC_GNU_STRFTIME): Set TZ environment
33622         variable in the shell rather than using putenv, which isn't
33623         portable.  This avoids the configure-time inter-test dependency
33624         on the potentially-renamed putenv function.
33625
33626 2000-03-30  Paul Eggert  <eggert@twinsun.com>
33627
33628         * m4/jm-macros.m4 (jm_CHECK_ALL_TYPES): Include <sys/stat.h>
33629         before checking struct stat.st_blksize, so that
33630         HAVE_STRUCT_STAT_ST_BLKSIZE is defined correctly.
33631
33632 2000-03-29  Paul Eggert  <eggert@twinsun.com>
33633
33634         * m4/strftime.m4 (_jm_STRFTIME_PREREQS): Check for strftime,
33635         since strftime.c uses HAVE_STRFTIME to decide whether to use
33636         the underlying strftime.
33637
33638 2000-03-29  Paul Eggert  <eggert@twinsun.com>
33639
33640         * lib/time/strftime.c (my_strftime): Make sure we call the system
33641         strftime, not ourselves, when invoking the underlying strftime.
33642
33643 2000-03-24  Jim Meyering  <meyering@lucent.com>
33644
33645         * lib/Makefile.am (EXTRA_DIST): Add ref-add.sed.in and ref-del.sed.in.
33646         (charset_alias): Define.
33647         (install-exec-local): Factor out common code.
33648         (uninstall-local): Split lines longer than 80.
33649         (ref-add.sed, ref-del.sed): Remove rules... (do the following instead)
33650         (SUFFIXES): Define.
33651         (.sed.in.sed): New rule.  Don't redirect directly to $@.
33652         (CLEANFILES): Add ref-add.sed and ref-del.sed.
33653
33654 2000-03-19  Bruno Haible  <haible@clisp.cons.org>
33655
33656         * lib/config.charset: Output a line containing "Packages using this
33657         file".
33658         * lib/ref-add.sed.in, lib/ref-del.sed.in: New files.
33659         * lib/Makefile.am (install-exec-local, uninstall-local, ref-add.sed,
33660         ref-del.sed): New rules.
33661
33662 2000-03-17  Jim Meyering  <meyering@lucent.com>
33663
33664         * lib/unicodeio.c (<string.h>): Include only #if HAVE_STRING_H.
33665         Otherwise, include <strings.h>
33666
33667 2000-03-17  Bruno Haible  <haible@clisp.cons.org>
33668
33669         * lib/unicodeio.c (utf8_wctomb): New function.
33670         (print_unicode_char): Pass the Unicode character to iconv in UTF-8
33671         format instead of in UCS-4 with platform dependent endianness.
33672
33673 2000-03-10  Jim Meyering  <meyering@lucent.com>
33674
33675         * m4/lib-check.m4: Look for getspnam in -lgen, too.
33676         From Marco Franzen.
33677
33678 2000-03-07  Paul Eggert  <eggert@twinsun.com>
33679
33680         * lib/savedir.c (savedir): Work even if directory size is
33681         negative; this can happen with some screwy NFS configurations.
33682
33683 2000-03-06  Jim Meyering  <meyering@lucent.com>
33684
33685         * lib/localcharset.c (get_charset_aliases): Don't try to free file_name
33686         if it's NULL (because we ran out of memory).  From Bruno Haible.
33687
33688 2000-03-05  Jim Meyering  <meyering@lucent.com>
33689
33690         * lib/localcharset.c ("path-concat.h"): Include.
33691         (get_charset_aliases): Use path_concat instead of ANSI string
33692         concatenation.
33693
33694         * lib/unicodeio.h (PARAMS): Define.
33695         Use it to guard prototype.
33696
33697 2000-03-04  Jim Meyering  <meyering@lucent.com>
33698
33699         * m4/jm-macros.m4 (jm_CHECK_ALL_TYPES): Require AC_C_VOLATILE,
33700         for lib/localcharset.c.
33701
33702 2000-03-04  Jim Meyering  <meyering@lucent.com>
33703
33704         * lib/Makefile.am (install-exec-local): Create $(libdir) before
33705         installing into it.
33706         (uninstall-local): Uncomment this rule so `make distcheck' works
33707         once again.
33708
33709         * lib/unicodeio.c (<errno.h>): Include it.
33710         (errno): Declare if not defined.
33711
33712         * lib/localcharset.c: Add Bruno's comment justifying use of volatile.
33713
33714         * lib/config.charset: New version, incorporating remarks from a linux
33715         i18n mailing list.  From Bruno Haible.
33716
33717 2000-03-04  Bruno Haible  <haible@clisp.cons.org>
33718
33719         * m4/codeset.m4: New file.
33720         * m4/iconv.m4: New file.
33721         * m4/jm-macros.m4 (jm_MACROS): Call jm_LANGINFO_CODESET and jm_ICONV.
33722
33723 2000-03-03  Jim Meyering  <meyering@lucent.com>
33724
33725         * m4/regex.m4: Make sure re_compile_pattern accepts patterns like `{1'.
33726
33727 2000-03-02  Jim Meyering  <meyering@lucent.com>
33728
33729         * m4/timespec.m4: Require AC_HEADER_TIME before the cache check so
33730         the messages come out on separate lines.
33731
33732         * m4/jm-glibc-io.m4 (jm_FUNC_GLIBC_UNLOCKED_IO): Use AC_CHECK_DECLS,
33733         rather than jm_CHECK_DECLARATIONS.
33734         * m4/decl.m4: Remove now-unused file.
33735
33736         * m4/check-decl.m4 (AC_CHECK_DECLS): Add getlogin, ttyname, and
33737         geteuid.
33738
33739 2000-03-02  Jim Meyering  <meyering@lucent.com>
33740
33741         * lib/Makefile.am (EXTRA_DIST): Add config.charset.
33742
33743 2000-03-01  Jim Meyering  <meyering@lucent.com>
33744
33745         * lib/localcharset.c: Guard some #includes with `#if HAVE_...'.
33746         * lib/unicodeio.c: Likewise.
33747
33748 2000-03-01  Bruno Haible  <haible@clisp.cons.org>
33749
33750         * lib/config.charset: New file.
33751         * lib/localcharset.c: New file.
33752         * lib/unicodeio.h, lib/unicodeio.c: New files.
33753         * lib/Makefile.am (DEFS): Add -DLIBDIR=...
33754         (libfetish_a_SOURCES): Add localcharset.c and unicodeio.c.
33755         (noinst_HEADERS): Add unicodeio.h.
33756         (all-local, install-exec-local, charset.alias): New targets.
33757
33758 2000-02-28  Paul Eggert  <eggert@twinsun.com>
33759
33760         * lib/quotearg.c (ALERT_CHAR): New macro.
33761         (quotearg_buffer_restyled): Use it.
33762
33763 2000-02-27  Jim Meyering  <meyering@lucent.com>
33764
33765         * m4/check-decl.m4: Add getenv to the list.
33766
33767 2000-02-27  Jim Meyering  <meyering@lucent.com>
33768
33769         * lib/strtoumax.c: Fix typo in decl of strtoul: s/long long/long/.
33770         Guard declaration of strtoull also with `&& HAVE_UNSIGNED_LONG_LONG'.
33771
33772         * lib/backupfile.c: Guard inclusion of stdlib.h with
33773         `#if HAVE_STDLIB_H', not `#if STDC_HEADERS'.
33774         Declare malloc if needed.
33775
33776         * lib/backupfile.c: Use `#if !HAVE_DECL...' instead of
33777         `#ifndef HAVE_DECL..'
33778         now that autoconf always defines the HAVE_DECL_ symbols.
33779         * lib/human.c: Likewise.
33780         * lib/same.c: Likewise.
33781         * lib/strtoumax.c: Likewise.
33782
33783         * lib/backupfile.c: Arrange for cpp to fail if the configure-time
33784         declaration check was not run.
33785         * lib/hash.c: Likewise.
33786         * lib/human.c: Likewise.
33787         * lib/same.c: Likewise.
33788         * lib/strtoumax.c: Likewise.
33789
33790         * lib/userspec.c (parse_user_spec): If there is no `:' but there is a
33791         `.', then first look up the entire `.'-containing string as a login
33792         name.
33793
33794 2000-02-23  Jim Meyering  <meyering@lucent.com>
33795
33796         * m4/check-decl.m4: Now that we have the new AC_CHECK_DECLS, use it
33797         in place of my hack.
33798
33799 2000-02-18  Paul Eggert  <eggert@twinsun.com>
33800
33801         * lib/getdate.y: Handle two-digit years with leading zeros correctly.
33802         (textint): New typedef.
33803         (parser_control): Member year changed from int to textint.
33804         All uses changed.
33805         (YYSTYPE): Removed; replaced by %union with int and textint members.
33806         (tDAY, tDAY_UNIT, tDAYZONE, tHOUR_UNIT, tID, tLOCAL_ZONE, tMERIDIAN,
33807         tMINUTE_UNIT, tMONTH, tMONTH_UNIT tSEC_UNIT, tSNUMBER, tUNUMBER,
33808         tYEAR_UNIT, tZONE, o_merid): Now of type <intval>.
33809         (tSNUMBER, tUNUMBER): Now of type <textintval>.
33810         (date, number, to_year): Use width of number in digits, not its value,
33811         to determine whether it's a 2-digit year, or a 2-digit time.
33812         (yylex): Store number of digits of numeric tokens.
33813         Reported by John Kendall.
33814
33815         (parser_control): Changed from struct parser_control to typedef (for
33816         consistency).  All uses changed.
33817
33818         (tID): Removed; not used.
33819         (yylex): Return '?' for unknown identifiers, rather than (unused) tID.
33820
33821 2000-02-14  Paul Eggert  <eggert@twinsun.com>
33822
33823         * lib/getpagesize.h (getpagesize): Port to VMS for Alpha;
33824         adapted from changes to grep getpagesize.h by Martin P.J. Zinser.
33825
33826 2000-02-12  Jim Meyering  <meyering@lucent.com>
33827
33828         * lib/userspec.c (ISDIGIT): Define it.
33829         (isdigit): Remove definition.
33830         (is_number): Use ISDIGIT, not isdigit.
33831         <libintl.h>: Include.
33832         (_ and N_): Define.
33833         (parse_user_spec): Mark translatable strings.
33834
33835 2000-02-10  Jim Meyering  <meyering@lucent.com>
33836
33837         With these changes, nanosleep.[ch] are finally enough like the other
33838         lib/* replacement files to compile on a few more losing systems.
33839
33840         * lib/nanosleep.h: Don't include config.h.
33841         Remove prototype from declaration of nanosleep.
33842         (PARAMS): Remove now-unneeded definition.
33843         * lib/nanosleep.c: #undef nanosleep.
33844         (rpl_nanosleep): Rename from nanosleep.
33845
33846 2000-02-10  Jim Meyering  <meyering@lucent.com>
33847
33848         * m4/nanosleep.m4 (jm_FUNC_NANOSLEEP): Rename replacement function from
33849         gnu_nanosleep to rpl_nanosleep.
33850
33851 2000-02-09  Jim Meyering  <meyering@lucent.com>
33852
33853         * m4/lib-check.m4 (jm_LIB_CHECK): Fix typo: check for sp_pwdp in
33854         struct spwd, rather than in struct passwd.  Reported by Gaël Quéri.
33855
33856 2000-02-08  Akim Demaille  <akim@epita.fr>
33857
33858         * m4/largefile.m4 (AC_SYS_LARGEFILE_FLAGS): Quote square brackets with
33859         `[' and `]' and remove uses of `changequote'.
33860         (AC_SYS_LARGEFILE_MACRO_VALUE): Likewise.
33861         (AC_SYS_LARGEFILE): Likewise.
33862         * m4/gettext.m4 (AM_GNU_GETTEXT): Likewise.
33863         * m4/strftime.m4 (jm_FUNC_GNU_STRFTIME): Remove now-unnecessary use
33864         of changequote.
33865         * m4/regex.m4 (jm_INCLUDED_REGEX): Likewise.
33866         * m4/readdir.m4 (jm_FUNC_READDIR): Likewise
33867         * m4/memcmp.m4 (jm_AC_FUNC_MEMCMP): Likewise, and add `int' for main.
33868         * m4/getloadavg.m4 (AM_FUNC_GETLOADAVG): Likewise.
33869
33870 2000-02-05  Jim Meyering  <meyering@lucent.com>
33871
33872         * m4/jm-macros.m4 (jm_CHECK_ALL_TYPES): Require most macros.
33873         Remove explicit use of AC_HEADER_TIME.  It is required by
33874         jm_CHECK_TYPE_STRUCT_TIMESPEC.  Using AC_HEADER_TIME and
33875         `AC_REQUIRE'ing jm_CHECK_TYPE_STRUCT_TIMESPEC provoked a but
33876         in autoconf whereby the expansion of the latter ended up preceding
33877         the expansion of its prerequisite, AC_HEADER_TIME.
33878         Reported by Volker Borchert.
33879
33880 2000-02-03  Jim Meyering  <meyering@lucent.com>
33881
33882         * m4/prereq.m4 (jm_PREREQ_READUTMP): Check for utmpxname.
33883
33884 2000-02-03  Jim Meyering  <meyering@lucent.com>
33885
33886         * lib/readutmp.c (read_utmp): Guard with `#ifdef UTMP_NAME_FUNCTION',
33887         rather than with `#if HAVE_UTMPNAME'.
33888
33889 2000-02-02  Jim Meyering  <meyering@lucent.com>
33890
33891         * m4/prereq.m4 (jm_PREREQ_ADDEXT): Fix typo that resulted in no
33892         definition of HAVE_PATHCONF: s/AC_CHECK_FUNC/AC_CHECK_FUNCS/.
33893         Reported by Eli Zaretskii.
33894
33895 2000-02-01  Jim Meyering  <meyering@lucent.com>
33896
33897         * lib/readutmp.h (UT_USER): Add parens.  From Andreas Schwab.
33898
33899 2000-01-31  Jim Meyering  <meyering@lucent.com>
33900
33901         * m4/check-decl.m4 (jm_CHECK_DECLS): Add nanosleep to the list of
33902         functions.  Add the time.h and sys/time.h headers along with the
33903         AC_REQUIRE'ment of AC_HEADER_TIME.
33904
33905 2000-01-31  Jim Meyering  <meyering@lucent.com>
33906
33907         * lib/nanosleep.h (nanosleep): Guard declaration with
33908         `#if ! HAVE_DECL_NANOSLEEP'.
33909         Without this, OFS gets a redeclaration error for rpl_nanosleep, due to
33910         the declaration in that vendor's sys/timers.h.
33911         Reported by Christian Krackowizer.
33912
33913         * lib/quotearg.c (ISASCII): Add #undef and move definition to follow
33914         inclusion of wctype.h to work around Solaris 2.6 namespace pollution.
33915         (ISPRINT): Likewise.
33916         Reported by Tom Tromey.
33917
33918 2000-01-30  Jim Meyering  <meyering@lucent.com>
33919
33920         * m4/lib-check.m4: Clean up some kludgy old shadow password tests.
33921
33922         * m4/prereq.m4 (utmp_includes): Define.
33923         Check for ut_user and ut_name members in both struct utmpx
33924         and struct utmp.
33925
33926 2000-01-30  Jim Meyering  <meyering@lucent.com>
33927
33928         * lib/readutmp.c (extract_trimmed_name): Use UT_USER instead of
33929         hard-coding uses of ->ut_name.  The latter doesn't work with new Linux
33930         header files where only utmpx.ut_user is declared.
33931
33932         * lib/readutmp.h (UT_USER): Define.
33933
33934 2000-01-29  Jim Meyering  <meyering@lucent.com>
33935
33936         * m4/lib-check.m4: New file containing library-related checks from
33937         fileutils and sh-utils (textutils had none).
33938
33939 2000-01-28  Jim Meyering  <meyering@lucent.com>
33940
33941         * m4/perl.m4: Change format of warning message to look more like that
33942         from the missing script.  Suggestion from François Pinard.
33943
33944 2000-01-25  Jim Meyering  <meyering@lucent.com>
33945
33946         * m4/timespec.m4: Require AC_HEADER_TIME, and include sys/time.h as
33947         well as time.h in the compile check.
33948         * m4/nanosleep.m4: Require AC_HEADER_TIME rather than simply using it.
33949         Fix typo in cross-compiling case: s/yes/no/.
33950
33951 2000-01-23  Jim Meyering  <meyering@lucent.com>
33952
33953         * m4/jm-macros.m4: Move df-related tests here from
33954         fileutils/configure.in
33955
33956         * m4/ls-mntd-fs.m4: s/list_mounted_fs/ac_list_mounted_fs/
33957         (jm_LIST_MOUNTED_FILESYSTEMS): Take two parameters.
33958
33959         * m4/fsusage.m4: New file.  Extracted from fileutils/configure.in.
33960         s/space/ac_fsusage_space/.
33961         (jm_FILE_SYSTEM_USAGE): Take two parameters.
33962
33963         * m4/ftruncate.m4: New file (derived from part of
33964         fileutils/configure.in).
33965         * m4/jm-macros.m4 (jm_FUNC_FTRUNCATE): AC_REQUIRE it.
33966         (jm_CHECK_ALL_TYPES): Require AC_HEADER_MAJOR and AC_HEADER_DIRENT.
33967
33968         * m4/jm-macros.m4 (OPTIONAL_BIN_PROGS, OPTIONAL_BIN_ZCRIPTS, MAN):
33969         AC_SUBST these here, rather than just in sh-util/configure.in, so
33970         that the now-shared-by-fileutils-and-textutils lib/Makefile.am are
33971         all the same.
33972         (AM_FUNC_OBSTACK): Add (from fileutils/configure.in).
33973         (AC_CHECK_FUNCS): Merge all checks from fileutils, textutils, sh-utils.
33974         (AM_FUNC_STRTOD): Added (from textutils', sh-utils' configure.in).
33975         (AC_SUBST(POW_LIBM)): Likewise.
33976         (AC_SUBST(DF_PROG)): Moved from fileutils/configure.in.
33977
33978 2000-01-23  Jim Meyering  <meyering@lucent.com>
33979
33980         * lib/Makefile.am (libfetish_a_SOURCES): Remove explicit mention of
33981         obstack.c.
33982
33983 2000-01-22  Jim Meyering  <meyering@lucent.com>
33984
33985         * m4/jm-macros.m4: Call AC_PROG_CC_STDC just before AC_C_CONST.
33986
33987         * m4/prereq.m4 (jm_PREREQ_QUOTEARG): Add wctype.h.
33988
33989         * m4/jm-macros.m4 (AC_CHECK_HEADERS): Add checks from fileutils'
33990         configure.in
33991         (AC_CHECK_HEADERS): Likewise for sh-utils.
33992         (AC_CHECK_HEADERS): Likewise for textutils.
33993         Merge the three lists of headers.
33994
33995         * m4/prereq.m4 (jm_PREREQ_ADDEXT): New macro.  Parts moved here
33996         from fileutils' configure.in.
33997
33998         * m4/decl.m4: Remove kludgy `test -z $ac_...AC_CHECK_HEADERS(...)'
33999         code. Moved tests into their own function (_jm_DECL_HEADERS) in
34000         check-decl.m4.
34001
34002         * m4/check-decl.m4: Use #if rather than #ifdef.
34003         Add HAVE_DECL_STRTOUL and HAVE_DECL_STRTOULL.
34004         (jm_CHECK_DECLARATIONS): Add strtoul strtoull.
34005         (_jm_DECL_HEADERS): Define new function.
34006         (jm_CHECK_DECLARATIONS): Require it.
34007
34008 2000-01-22  Jim Meyering  <meyering@lucent.com>
34009
34010         * lib/strtoumax.c: [! HAVE_DECL_STRTOUL]: Declare strtoul.
34011         [! HAVE_DECL_STRTOULL]: Declare strtoull.
34012         Required for some AIX systems.  Reported by Christian Krackowizer.
34013         [TESTING] (main): New function.
34014
34015         1997-10-17  Eli Zaretskii  <eliz@is.elta.co.il>
34016         * lib/dirname.c (dir_name): Support for DOS-style file names with drive
34017         letters.
34018
34019         * lib/quotearg.c [HAVE_WCTYPE_H]: Include <wctype.h> for decl of
34020         iswprint.
34021
34022         * lib/strverscmp.c (ISDIGIT): Define.
34023         (strverscmp): Use ISDIGIT, not isdigit.
34024
34025 2000-01-19  Jim Meyering  <meyering@lucent.com>
34026
34027         * m4/nanosleep.m4 (jm_FUNC_NANOSLEEP): Include <sys/time.h>, too.
34028         Use AC_HEADER_TIME.  Volker Borchert reported that OpenBSD-2.3/sparc
34029         defines `struct timespec' in <sys/time.h>
34030
34031         * m4/c-bs-a.m4: Remove uses of changequote altogether.
34032         Thanks to Akim for explaining.
34033
34034 2000-01-17  Paul Eggert  <eggert@twinsun.com>
34035
34036         * lib/nanosleep.c (nanosleep):
34037         Don't use SA_INTERRUPT to decide whether to call sigaction, as
34038         POSIX.1 doesn't require SA_INTERRUPT and some systems
34039         (e.g. Solaris 7) don't define it.  Use SA_NOCLDSTOP instead;
34040         it's been part of POSIX.1 since day 1 (in 1988).
34041
34042 2000-01-17  Jim Meyering  <meyering@lucent.com>
34043
34044         * lib/interlock: Remove unused file.  Reported by François Pinard.
34045
34046 2000-01-16  Paul Eggert  <eggert@twinsun.com>
34047
34048         * lib/quotearg.c (quotearg_buffer_restyled): Do not quote
34049         alert, backslash, formfeed, and vertical tab unnecessarily in
34050         shell quoting style.
34051
34052 2000-01-16  Jim Meyering  <meyering@lucent.com>
34053
34054         * m4/jm-macros.m4: Require jm_FUNC_GROUP_MEMBER, jm_FUNC_PUTENV,
34055         AM_FUNC_ERROR_AT_LINE, jm_FUNC_GNU_STRFTIME, jm_FUNC_MKTIME,
34056         jm_FUNC_GETGROUPS AC_FUNC_VPRINTF, AC_FUNC_ALLOCA,
34057         AM_FUNC_GETLOADAVG, and jm_SYS_PROC_UPTIME.
34058
34059 2000-01-16  Jim Meyering  <meyering@lucent.com>
34060
34061         * m4/c-bs-a.m4: Use `changequote(<<,>>)', rather than `changequote(, )'
34062         because the latter didn't work.
34063
34064 2000-01-15  Jim Meyering  <meyering@lucent.com>
34065
34066         * m4/jm-macros.m4 (AC_REPLACE_FUNCS): Add gethostname and getusershell.
34067         (AC_REPLACE_FUNCS): Add memcpy and memset.
34068         Add these, too: stime strcspn stpcpy strstr strtol strtoul.
34069         Add strpbrk.
34070         Add these: euidaccess memcmp mkdir rmdir rpmatch strndup strverscmp.
34071
34072 2000-01-12  Jim Meyering  <meyering@lucent.com>
34073
34074         * m4/prereq.m4 (jm_PREREQ_CANON_HOST): New macro.
34075         (jm_PREREQ): Use it.
34076         (jm_PREREQ_READUTMP): New macro.
34077         (jm_PREREQ): Use it.
34078
34079 2000-01-11  Paul Eggert  <eggert@twinsun.com>
34080
34081         Quote multibyte characters correctly.
34082         * m4/c-bs-a.m4: New file.
34083         * m4/prereq.m4 (jm_PREREQ_QUOTEARG): New macro.
34084         (jm_PREREQ): Use it.
34085
34086 2000-01-11  Paul Eggert  <eggert@twinsun.com>
34087
34088         * m4/uintmax_t.m4: Port to autoconf 2.13.
34089
34090 2000-01-08  Jim Meyering  <meyering@ascend.com>
34091
34092         * m4/strerror_r.m4 (jm_FUNC_STRERROR_R): New file/macro.
34093         * m4/jm-macros.m4 (jm_FUNC_STRERROR_R): Require it.
34094
34095 2000-01-04  Jim Meyering  <meyering@ascend.com>
34096
34097         * m4/d-type.m4 (jm_CHECK_TYPE_STRUCT_DIRENT_D_TYPE): Rename from
34098         jm_STRUCT_DIRENT_D_TYPE.
34099         * m4/d-ino.m4 (jm_CHECK_TYPE_STRUCT_DIRENT_D_INO): Rename from
34100         jm_STRUCT_DIRENT_D_INO.
34101         * m4/utimbuf.m4 (jm_CHECK_TYPE_STRUCT_UTIMBUF): Rename from
34102         jm_STRUCT_UTIMBUF.
34103         * m4/jm-macros.m4: Reflect s/jm_STRUCT_/jm_CHECK_TYPE_STRUCT_/
34104         renamings.
34105         * m4/utime.m4: Likewise.
34106
34107         * m4/timespec.m4 (jm_CHECK_TYPE_STRUCT_TIMESPEC): New file, macro.
34108         * m4/jm-macros.m4 (jm_CHECK_TYPE_STRUCT_TIMESPEC): Require it.
34109
34110 2000-01-03  Paul Eggert  <eggert@twinsun.com>
34111
34112         * m4/nanosleep.m4 (jm_FUNC_NANOSLEEP): Search for nanosleep in -lrt
34113         (for Solaris 7) and in -lposix4 (for Solaris 2.5.1).
34114
34115 2000-01-02  Jim Meyering  <meyering@ascend.com>
34116
34117         * m4/search-libs.m4: Escape `$' in $3 of dnl comment.  I no longer
34118         remember if this is necessary.
34119
34120 1999-12-26  Jim Meyering  <meyering@ascend.com>
34121
34122         * m4/jm-macros.m4: Use it here.
34123         * m4/nanosleep.m4 (jm_FUNC_NANOSLEEP): New file/macro.
34124
34125 1999-12-23  Jim Meyering  <meyering@ascend.com>
34126
34127         * m4/jm-macros.m4: Check for clock_gettime (moved from
34128         fileutils/configure.in)
34129         Check for gettimeofday.
34130
34131 1999-12-20  Jim Meyering  <meyering@ascend.com>
34132
34133         * m4/strftime.m4: Remove kludge, now that I'm using the fixed
34134         autoconf-2.14a-1999-12-20.
34135
34136 1999-12-19  Jim Meyering  <meyering@ascend.com>
34137
34138         * m4/lstat-slash.m4: New file.
34139         * m4/jm-macros.m4: Use the new macro:
34140         jm_FUNC_LSTAT_FOLLOWS_SLASHED_SYMLINK.
34141
34142 1999-12-07  Jim Meyering  <meyering@ascend.com>
34143
34144         * m4/perl.m4: Require that File::Compare be available, too.
34145         Too many systems seem to lack it.
34146
34147         * m4/strftime.m4: Add checks for most of the cpp macros tested in
34148         GNU's strftime.c.  Prompted by a patch from Paul Eggert.
34149
34150 1999-11-18  Paul Eggert  <eggert@twinsun.com>
34151
34152         * m4/largefile.m4 (AC_SYS_LARGEFILE_FLAGS): Work around a
34153         problem with the QNX 4.25 shell, which doesn't propagate exit
34154         status of failed commands inside shell assignments.
34155
34156 1999-11-17  Jim Meyering  <meyering@ascend.com>
34157
34158         * m4/gettext.m4: Use new AC_CONFIG_LINKS in place of AC_LINK_FILES.
34159
34160 1999-11-07  Jim Meyering  <meyering@ascend.com>
34161
34162         * m4/getloadavg.m4: Add `, 1, [FIXME]' to each use of AC_DEFINE.
34163
34164 1999-11-06  Jim Meyering  <meyering@ascend.com>
34165
34166         * m4/link-follow.m4 (jm_AC_FUNC_LINK_FOLLOWS_SYMLINK): New file/macro.
34167         * m4/jm-macros.m4 (jm_MACROS): Use it here.
34168
34169 1999-11-05  Jim Meyering  <meyering@ascend.com>
34170
34171         * m4/jm-macros.m4 (jm_CHECK_ALL_TYPES): Move some tests from
34172         configure.in of textutils, fileutils, and sh-utils into this one
34173         (shared between those packages) file.
34174         Use `AC_CHECK_MEMBERS((struct stat.st_blksize))' instead of deprecated
34175         AC_STRUCT_ST_BLKSIZE.
34176
34177 1999-11-03  Jim Meyering  <meyering@ascend.com>
34178
34179         * m4/ssize_t.m4: Remove file.  No longer needed since the new version
34180         of AC_CHECK_TYPE checks includes unistd.h.
34181         * m4/jm-macros.m4: Use straight `AC_CHECK_TYPE(ssize_t, int)'.
34182         Suggestion from Akim Demaille.
34183
34184 1999-10-30  Jim Meyering  <meyering@ascend.com>
34185
34186         * m4/uintmax_t.m4: Require 2.14a.  Remove backslash before backtick in
34187         m4-quoted string.
34188         * m4/ls-mntd-fs.m4: Likewise.
34189         * m4/jm-macros.m4: Likewise.  Also, use AC_TYPE_SSIZE_T instead
34190         * m4/jm-winsz1.m4: Likewise.
34191
34192         * m4/const.m4: Remove file, since the fix made it into the experimental
34193         version of autoconf.
34194         * m4/mktime.m4: Likewise.
34195
34196         * m4/check-type.m4: Remove file, now that the latest version of
34197         AC_CHECK_TYPE takes a third arg to specify additional #includes.
34198
34199         * m4/ssize_t.m4: New file, requires experimental version of autoconf.
34200         * m4/jm-macros.m4: Use new AC_TYPE_SSIZE_T instead of my hacked
34201         AC_CHECK_TYPE.
34202
34203 1999-10-04  Jim Meyering  <meyering@ascend.com>
34204
34205         * m4/jm-macros.m4: Don't require autoconf-2.14.1.
34206
34207 1999-09-22  Paul Eggert  <eggert@twinsun.com>
34208
34209         * m4/largefile.m4 (AC_SYS_LARGEFILE_FLAGS): Work around GCC
34210         2.95.1 bug with HP-UX 10.20.
34211
34212 1999-09-17  Jim Meyering  <meyering@ascend.com>
34213
34214         * m4/jm-macros.m4 (AC_REPLACE_FUNCS): Add strdup.
34215         Paul Nevai reported a link failure on a NeXT CUBE with NeXTSTEP 3.3
34216         due to missing strdup (against sh-utils-2.0).
34217
34218 1999-08-29  Jim Meyering  <meyering@ascend.com>
34219
34220         * m4/jm-macros.m4: Require jm_BISON.
34221         * m4/bison.m4: New file.
34222
34223 1999-08-17  Paul Eggert  <eggert@twinsun.com>
34224
34225         * m4/largefile.m4 (AC_SYS_LARGEFILE): Fix typo: missing comma
34226         in value for _FILE_OFFSET_BITS, which broke ports to HP-UX 10.20.
34227
34228 1999-08-05  Jim Meyering  <meyering@ascend.com>
34229
34230         * m4/getline.m4: Rename test file from conftestdata to conftest.data
34231         to avoid conflicts with `conftest' on 8+3 filesystems.
34232         Suggestion from Eli Zaretskii.
34233
34234 1999-08-04  Jim Meyering  <meyering@ascend.com>
34235
34236         * m4/jm-macros.m4: Move a 4-line block of code from the configure.in of
34237         fileutils and sh-utils (textutils's getline test was inadequate).
34238         (AM_FUNC_GETLINE): Run this test.
34239         (AC_CHECK_FUNCS): Check for getdelim.
34240         Reported by Bob Proulx.
34241
34242 1999-08-02  Jim Meyering  <meyering@ascend.com>
34243
34244         * m4/jm-macros.m4: Add a comment.
34245
34246 1999-08-01  Paul Eggert  <eggert@twinsun.com>
34247
34248         * m4/xstrtoumax.m4 (jm_AC_PREREQ_XSTRTOUMAX): Check whether
34249         <inttypes.h> defines strtoumax as a macro (and not as a
34250         function).
34251
34252 1999-08-01  Paul Eggert  <eggert@twinsun.com>
34253
34254         * m4/ulonglong.m4 (jm_AC_TYPE_UNSIGNED_LONG_LONG): Make sure
34255         that we can shift, multiply and divide unsigned long long
34256         values; Ultrix cc can't do it.
34257
34258 1999-08-01  Paul Eggert  <eggert@twinsun.com>
34259
34260         * m4/mktime.m4: New file, which is a preview of what should appear
34261         in the next public autoconf release.
34262
34263 1999-08-01  Paul Eggert  <eggert@twinsun.com>
34264
34265         * m4/lfs.m4: Remove this file.
34266         * m4/largefile.m4: New file.  It contains the old contents of
34267         lfs.m4, except that all names with prefix AC_LFS have been
34268         changed to use the prefix AC_SYS_LARGEFILE instead, to be
34269         compatible with future autoconf versions.  Also, some minor m4
34270         quoting problems have been fixed.
34271
34272 1999-08-01  Paul Eggert  <eggert@twinsun.com>
34273
34274         * m4/gettext.m4 (AM_WITH_NLS): Remove unnecessary lines.
34275         Fix typo: $nls_cv_header_intl was misspelled as $nsl_cv_header_intl.
34276         (AM_GNU_GETTEXT): Fix problem with brackets and m4 quoting,
34277         and simplify the shell code.
34278
34279 1999-08-01  Jim Meyering  <meyering@ascend.com>
34280
34281         * m4/mktime.m4 (AC_FUNC_MKTIME): Undefine to avoid syntax errors from
34282         m4.
34283
34284 1999-07-20  Jim Meyering  <meyering@ascend.com>
34285
34286         * m4/jm-macros.m4 (AC_REPLACE_FUNCS): Add memmove.
34287
34288 1999-07-15  Jim Meyering  <meyering@ascend.com>
34289
34290         * m4/jm-macros.m4 (AC_CHECK_FUNCS): Check for getpagesize.
34291
34292 1999-05-22  Jim Meyering  <meyering@ascend.com>
34293
34294         * m4/jm-macros.m4 (AC_REPLACE_FUNCS): Add memchr.
34295
34296 1999-05-20  Jim Meyering  <meyering@ascend.com>
34297
34298         * m4/search-libs.m4 [AC_SEARCH_LIBS]: Quote name in undefine.
34299         Add a colon after each `then' in case $4 is empty.
34300
34301 1999-05-16  Jim Meyering  <meyering@ascend.com>
34302
34303         * m4/search-libs.m4: New file to override autoconf's AC_SEARCH_LIBS.
34304
34305 1999-05-10  Jim Meyering  <meyering@ascend.com>
34306
34307         * m4/jm-mktime.m4: Reflect renaming: AM_FUNC_MKTIME -> AC_FUNC_MKTIME.
34308
34309         * m4/jm-macros.m4: Require 2.14.1, since we use newly-renamed
34310         AC_FUNC_MKTIME.
34311
34312 1999-05-10  Andreas Schwab  <schwab@issan.cs.uni-dortmund.de>
34313
34314         * m4/jm-mktime.m4, putenv.m4: Fix typos in config.h comments.
34315
34316 1999-05-04  Paul Eggert  <eggert@twinsun.com>
34317
34318         * m4/lfs.m4 (AC_LFS): -n32, -o32, and -n64 should be in CFLAGS,
34319         not CPPFLAGS, so that linking works correctly in IRIX.
34320
34321 1999-04-30  Paul Eggert  <eggert@twinsun.com>
34322
34323         * m4/jm-macros.m4 (AC_REPLACE_FUNCS): Add dup2.
34324
34325 1999-04-20  Paul Eggert  <eggert@twinsun.com>
34326
34327         * m4/uintmax_t.m4 (jm_AC_TYPE_UINTMAX_T): Move unsigned long
34328         long check into new jm_AC_TYPE_UNSIGNED_LONG_LONG macro.
34329         * m4/jm-macros.m4 (jm_CHECK_ALL_TYPES): Require
34330         jm_AC_TYPE_UNSIGNED_LONG_LONG.
34331         * m4/ulonglong.m4 (jm_AC_TYPE_UNSIGNED_LONG_LONG): New file/macro.
34332
34333         * m4/lfs.m4: Port to AIX and HP-UX.  Support cross-compilation.
34334
34335 1999-04-20  Jim Meyering  <meyering@ascend.com>
34336
34337         * m4/xstrtoumax.m4: Require jm_AC_TYPE_UNSIGNED_LONG_LONG.
34338         AC_REPLACE xstroull if necessary.  From Paul Eggert.
34339         (AC_CHECK_FUNCS): Remove strtoull, strtoumax, strtouq.
34340
34341 1999-04-18  Jim Meyering  <meyering@ascend.com>
34342
34343         * m4/xstrtoumax.m4 (jm_AC_PREREQ_XSTRTOUMAX): New file/macro.
34344         * m4/jm-macros.m4: Use it.
34345
34346 1999-04-06  Jim Meyering  <meyering@ascend.com>
34347
34348         * m4/strftime.m4: Remove test for %f.
34349
34350 1999-03-29  Jim Meyering  <meyering@ascend.com>
34351
34352         * m4/jm-macros.m4 (jm_CHECK_ALL_TYPES): New macro, contains the
34353         superset of the AC_TYPE_* checks in the textutils, fileutils,
34354         and sh-utils, plus AC_TYPE_PID_T.  Paul Eggert suggested adding
34355         AC_TYPE_PID_T.
34356
34357 1999-03-28  Jim Meyering  <meyering@ascend.com>
34358
34359         * m4/jm-macros.m4: Define GNU_PACKAGE here.
34360         Be sure to AC_SUBST it, once again, so that @GNU_PACKAGE@ is
34361         replaced e.g., in the *.sh files of the sh-utils.
34362
34363 1999-03-20  Jim Meyering  <meyering@ascend.com>
34364
34365         * m4/jm-macros.m4: s/jm_WITH_REGEX/jm_INCLUDED_REGEX/.
34366         * m4/regex.m4 (jm_INCLUDED_REGEX): Rename from jm_WITH_REGEX.
34367         Don't depend on AM_GLIBC.  Suggestions from Alain Magloire.
34368
34369 1999-03-19  Jim Meyering  <meyering@ascend.com>
34370
34371         * m4/jm-winsz1.m4 (jm_WINSIZE_IN_PTEM): New macro.
34372
34373 1999-03-12  Jim Meyering  <meyering@ascend.com>
34374
34375         * m4/jm-macros.m4: Use AC_FUNC_SETVBUF_REVERSED.
34376
34377 1999-03-07  Jim Meyering  <meyering@ascend.com>
34378
34379         * m4/jm-glibc-io.m4: Use only those *_unlocked macros that are
34380         declared.
34381
34382 1999-02-17  Jim Meyering  <meyering@ascend.com>
34383
34384         * m4/gettext.m4 (AM_GNU_GETTEXT): Do `changequote' around use of
34385         brackets in macro definition.  From Eli Zaretskii and Alain Magloire.
34386
34387 1999-02-07  Jim Meyering  <meyering@ascend.com>
34388
34389         * m4/group-member.m4: New file -- extracted from sh-utils'
34390         configure.in.
34391
34392         1999-02-05  Eli Zaretskii  <eliz@is.elta.co.il>
34393         * m4/gettext.m4: Support DOS-style d:/foo/bar absolute file names.
34394
34395 1999-02-06  Jim Meyering  <meyering@ascend.com>
34396
34397         * m4/chown.m4: Use `AC_SUBST(LIBOBJS)' since we set LIBOBJS.
34398         * m4/fnmatch.m4: Likewise.
34399         * m4/getgroups.m4: Likewise.
34400         * m4/lstat.m4: Likewise.
34401         * m4/malloc.m4: Likewise.
34402         * m4/putenv.m4: Likewise.
34403         * m4/realloc.m4: Likewise.
34404         * m4/regex.m4: Likewise.
34405         * m4/stat.m4: Likewise.
34406         * m4/strftime.m4: Likewise.
34407         Suggestion from Alain Magloire.
34408
34409         * m4/chown.m4: Use `.$ac_objext', not `.o'.
34410         * m4/fnmatch.m4: Likewise.
34411         * m4/getgroups.m4: Likewise.
34412         * m4/getline.m4: Likewise.
34413         * m4/lstat.m4: Likewise.
34414         * m4/malloc.m4: Likewise.
34415         * m4/memcmp.m4: Likewise.
34416         * m4/putenv.m4: Likewise.
34417         * m4/realloc.m4: Likewise.
34418         * m4/regex.m4: Likewise.
34419         * m4/stat.m4: Likewise.
34420         * m4/strftime.m4: Likewise.
34421         Suggestion from Alain Magloire.
34422
34423         * m4/jm-macros.m4: Actually invoke jm_WITH_REGEX now that it requires
34424         an argument.
34425
34426         * m4/regex.m4: Add a run-time Test for proper operation of
34427         re_compile_pattern.
34428
34429 1999-01-31  Jim Meyering  <meyering@ascend.com>
34430
34431         * m4/getloadavg.m4: Check for locale.h and the function, setlocale.
34432
34433 1999-01-30  Jim Meyering  <meyering@ascend.com>
34434
34435         * m4/check-type.m4: Use 3-arg form of AC_DEFINE.
34436
34437         * m4/jm-mktime.m4: Make this a wrapper around the official
34438         AM_FUNC_MKTIME rather than my private copy, now that the official one
34439         is up to date.
34440         * m4/mktime.m4: Remove file.
34441
34442         * m4/getloadavg.m4: Use 3-arg form of AC_DEFINE.
34443         * m4/uptime.m4: Likewise.
34444         * m4/uintmax_t.m4: Likewise.
34445
34446 1999-01-28  Jim Meyering  <meyering@ascend.com>
34447
34448         * m4/jm-macros.m4: Use jm_AFS.
34449         * m4/afs.m4: New file (from fileutils' configure.in).
34450
34451         * m4/assert.m4: Use the 3-argument forms of AC_DEFINE* macros.
34452         * m4/chown.m4: Likewise.
34453         * m4/d-ino.m4: Likewise.
34454         * m4/d-type.m4: Likewise.
34455         * m4/fnmatch.m4: Likewise.
34456         * m4/getgroups.m4: Likewise.
34457         * m4/gettext.m4: Likewise.
34458         * m4/jm-mktime.m4: Likewise.
34459         * m4/jm-winsz2.m4: Likewise.
34460         * m4/lcmessage.m4: Likewise.
34461         * m4/ls-mntd-fs.m4: Likewise.
34462         * m4/malloc.m4: Likewise.
34463         * m4/memcmp.m4: Likewise.
34464         * m4/putenv.m4: Likewise.
34465         * m4/realloc.m4: Likewise.
34466         * m4/st_mtim.m4: Likewise.
34467         * m4/strftime.m4: Likewise.
34468
34469 1999-01-16  Jim Meyering  <meyering@ascend.com>
34470
34471         * m4/jm-macros.m4 (ARGMATCH_DIE): Define.
34472         (ARGMATCH_DIE_DECL): Define.
34473
34474 1999-01-12  Jim Meyering  <meyering@ascend.com>
34475
34476         * m4/Makefile.am.in: Rewrite to avoid using fmt.
34477         Reported by Lars Hecking.
34478
34479 1999-01-10  Jim Meyering  <meyering@ascend.com>
34480
34481         * m4/fstypename.m4: Use the new 3-arg form of AC_DEFINE instead of my
34482         gross kludge.
34483         * m4/inttypes_h.m4: Likewise.
34484         * m4/lstat.m4: Likewise.
34485         * m4/malloc.m4: Likewise.
34486         * m4/readdir.m4: Likewise.
34487         * m4/realloc.m4: Likewise.
34488         * m4/st_dm_mode.m4: Likewise.
34489         * m4/stat.m4: Likewise.
34490         * m4/utimbuf.m4: Likewise.
34491         * m4/utimes.m4: Likewise.
34492
34493         * m4/check-decl.m4: Use the new 3-arg form of AC_DEFINE instead of the
34494         AC_CHECK_FUNCS hack.  Now, it's still a hack, but at least the
34495         comments in config.h.in are meaningful.
34496
34497         * m4/jm-macros.m4: Require autoconf-2.13 here.
34498
34499         * m4/regex.m4: By default, don't use the included regex.c on systems
34500         with glibc 2.  Suggestion from Uli Drepper.
34501
34502 1999-01-02  Jim Meyering  <meyering@ascend.com>
34503
34504         * m4/jm-macros.m4: Replace strcasecmp and strncasecmp.
34505
34506 1998-12-18  Jim Meyering  <meyering@ascend.com>
34507
34508         * m4/Makefile.am.in (Makefile.am): Simplify rule.
34509         Based on a suggestion from Lars Hecking.
34510
34511 1998-11-16  Paul Eggert  <eggert@twinsun.com>
34512
34513         * m4/lfs.m4 (AC_LFS): Add support for HP-UX 10.20 and HP-UX 11.
34514
34515 1998-11-16  Jim Meyering  <meyering@ascend.com>
34516
34517         * m4/lfs.m4: Double-quote the `uname...` expression.
34518
34519 1998-11-14  Jim Meyering  <meyering@ascend.com>
34520
34521         * m4/lstat.m4: Correct comment.  POSIX does not permit it to succeed.
34522         * m4/stat.m4: Likewise.
34523
34524 1998-11-03  Jim Meyering  <meyering@ascend.com>
34525
34526         * m4/stat.m4: Rewrite to set HAVE_STAT_EMPTY_STRING_BUG.
34527         * m4/lstat.m4: Rewrite to set HAVE_LSTAT_EMPTY_STRING_BUG.
34528
34529 1998-10-18  Jim Meyering  <meyering@ascend.com>
34530
34531         * m4/check-decl.m4 (jm_CHECK_DECL_LOCALTIME_R): Remove macro.
34532
34533 1998-10-17  Jim Meyering  <meyering@ascend.com>
34534
34535         * m4/decl.m4 (jm_CHECK_DECLARATION): Don't hard-code which headers to
34536         include, though we still hard-code the `require'-like AC_CHECK_HEADERS
34537         calls for those previously hard-coded headers.  Instead, take a new
34538         parameter.
34539         (jm_CHECK_DECLARATIONS): Reflect interface change.
34540         * m4/check-decl.m4 (jm_CHECK_DECLS): Likewise.
34541         (jm_CHECK_DECL_LOCALTIME_R): New macro.
34542
34543         * m4/mktime.m4: Test for spring-forward gap before long-running test.
34544
34545 1998-10-14  Jim Meyering  <meyering@ascend.com>
34546
34547         * m4/mktime.m4: Use the more portable "TZ=PST8PDT,M4.1.0,M10.5.0"
34548         instead of "TZ=America/Vancouver".  From Paul Eggert.
34549
34550 1998-10-11  Jim Meyering  <meyering@ascend.com>
34551
34552         * m4/mktime.m4 (jm_AM_FUNC_MKTIME): New file and macro.
34553         This adds a test for a recently added compatibility fix for mktime.c.
34554         * m4/jm-mktime.m4: Require jm_AM_FUNC_MKTIME, not AM_FUNC_MKTIME.
34555
34556 1998-09-27  Jim Meyering  <meyering@ascend.com>
34557
34558         * m4/jm-macros.m4 (jm_MACROS): Require jm_FUNC_FNMATCH.
34559
34560         * m4/fnmatch.m4 (jm_FUNC_FNMATCH): New file/macro.  Extracted from
34561         ../configure.in, including a change from Gordon Matzigkeit to allow
34562         cross-compiling for the Hurd.
34563
34564         * m4/glibc.m4: New file/macro to test for the GNU C Library
34565         versions 1 and 2.  From Gordon Matzigkeit.
34566         Indent.
34567
34568 1998-09-21  Jim Meyering  <meyering@ascend.com>
34569
34570         * m4/chown.m4: Declare locals: before, after.  From Andries Brouwer.
34571
34572 1998-08-18  Paul Eggert  <eggert@twinsun.com>
34573
34574         Port nanosecond-resolution times to UnixWare 2.1.2 and
34575         pedantic Solaris 2.6.
34576
34577         * m4/st_mtim.m4 (AC_STRUCT_ST_MTIM_NSEC): Renamed from
34578         AC_STRUCT_ST_MTIM.
34579         * m4/st_mtim.m4 (AC_STRUCT_ST_MTIM_NSEC):
34580         Generate name of ns member, instead of just 1 or undef.
34581         Allow for UnixWare 2.1.2 and Solaris 2.6 if in pedantic mode.
34582
34583 1998-08-15  Jim Meyering  <meyering@ascend.com>
34584
34585         * m4/ssize_t.m4 (jm_TYPE_SSIZE_T): Remove file.
34586         * m4/check-type.m4: New file.  Replacement for AC_CHECK_TYPE.
34587         * m4/jm-macros.m4: Use the new AC_CHECK_TYPE(ssize_t, int)
34588         instead of jm_TYPE_SSIZE_T.
34589
34590 1998-08-12  Jim Meyering  <meyering@ascend.com>
34591
34592         * m4/st_dm_mode.m4: New file.  From Johan Danielsson.
34593
34594 1998-08-02  Jim Meyering  <meyering@ascend.com>
34595
34596         * m4/st_mtim.m4: Use hack to avoid having to put #undef HAVE_ST_MTIM
34597         in acconfig.h manually.
34598
34599 1998-07-31  Paul Eggert  <eggert@twinsun.com>
34600
34601         * m4/st_mtim.m4: New file.
34602
34603 1998-07-28  Jim Meyering  <meyering@ascend.com>
34604
34605         * m4/utimes.m4: Undef stat.
34606
34607 1998-07-25  Jim Meyering  <meyering@ascend.com>
34608
34609         * m4/utime.m4 (jm_FUNC_UTIME): New file and macro.
34610         * m4/utimes.m4 (jm_FUNC_UTIMES_NULL): New file and macro.
34611
34612 1998-07-09  Manfred Hollstein  <manfred@s-direktnet.de>
34613
34614         * m4/chown.m4 (jm_FUNC_CHOWN): Add a check to verify that the
34615         uid and gid actually remain unchanged.
34616
34617 1998-07-07  Jim Meyering  <meyering@ascend.com>
34618
34619         * m4/jm-glibc-io.m4: Remove fclose_unlocked.
34620
34621 1998-07-04  Jim Meyering  <meyering@ascend.com>
34622
34623         * m4/regex.m4: Use syscmd, ifelse, and sysval.  Mainly as an exercise
34624         to prove that this macro can be used in packages without regex.c.
34625
34626 1998-07-04  Andreas Schwab  <schwab@issan.informatik.uni-dortmund.de>
34627
34628         * m4/gettext.m4 (AM_WITH_NLS): Remove intl/libintl.h if <libintl.h>
34629         is to be used.
34630
34631 1998-07-03  Jim Meyering  <meyering@ascend.com>
34632
34633         * m4/gettext.m4: Add -lintl if it's found to be necessary.
34634
34635         * m4/gettext.m4: New file -- from gettext-0.10.35.
34636         * m4/lcmessage.m4: Likewise.
34637         * m4/progtest.m4: Likewise.
34638
34639         * m4/regex.m4 (jm_WITH_REGEX): New file and macro.
34640         * m4/jm-macros.m4: Require the new macro.
34641
34642 1998-06-29  Jim Meyering  <meyering@ascend.com>
34643
34644         * m4/fstypename.m4: Include sys/param.h.  NetBSD 1.3.1 requires this
34645         for the definition of NGROUPS (used in a system header included
34646         by sys/mount.h).
34647
34648 1998-06-28  Jim Meyering  <meyering@ascend.com>
34649
34650         * m4/ls-mntd-fs.m4: New file.
34651         * m4/fstypename.m4: New file.
34652
34653         * m4/jm-macros.m4: Require the new macro.
34654         * m4/jm-glibc-io.m4: New file.
34655
34656 1998-05-19  Jim Meyering  <meyering@ascend.com>
34657
34658         * m4/jm-macros.m4: Add jm_FUNC_LCHOWN.
34659         * m4/lchown.m4: New file.
34660
34661         * m4/Makefile.am.in: New file.
34662         * m4/Makefile.am (Makefile.am): Depend on Makefile.am.in.
34663
34664 1998-05-14  Jim Meyering  <meyering@ascend.com>
34665
34666         * m4/Makefile.am (EXTRA_DIST): Add them.
34667         * m4/jm-macros.m4: New file.
34668         * m4/utimbuf.m4: New file.
34669
34670 1998-05-12  Jim Meyering  <meyering@ascend.com>
34671
34672         * m4/Makefile.am (EXTRA_DIST): Add isc-posix.m4.
34673
34674 1998-05-11  Jim Meyering  <meyering@ascend.com>
34675
34676         * m4/isc-posix.m4: New file.
34677
34678 1998-05-10  Jim Meyering  <meyering@ascend.com>
34679
34680         * m4/jm-mktime.m4: Use AM_FUNC_MKTIME, now that it's up to date.
34681
34682 1998-05-09  Jim Meyering  <meyering@ascend.com>
34683
34684         * m4/Makefile.am (EXTRA_DIST): Add ssize_t.m4.
34685         (EXTRA_DIST): Remove mktime.m4, now that the new version is included
34686         with automake.
34687
34688         * m4/ssize_t.m4: New file.
34689         * m4/mktime.m4: Remove file -- the new automake has this now.
34690
34691 1998-04-26  Jim Meyering  <meyering@ascend.com>
34692
34693         * m4/assert.m4: New file.
34694         * m4/Makefile.am (EXTRA_DIST): Add assert.m4.
34695
34696 1998-04-05  Jim Meyering  <meyering@ascend.com>
34697
34698         * m4/prereq.m4 (jm_PREREQ_REGEX): New macro.
34699         (jm_PREREQ): Use it here.
34700
34701 1998-03-23  Jim Meyering  <meyering@eng.ascend.com>
34702
34703         * m4/inttypes_h.m4: Kludges so I don't have to add HAVE_INTTYPES_H
34704         in acconfig.h.
34705
34706 1998-03-15  Jim Meyering  <meyering@eng.ascend.com>
34707
34708         * m4/prereq.m4: New file.
34709         * m4/error.m4: New file.
34710         * m4/Makefile.am (EXTRA_DIST): Add error.m4 and prereq.m4.
34711
34712 1998-02-07  Jim Meyering  <meyering@eng.ascend.com>
34713
34714         * m4/getline.m4: Don't set am_cv_func_working_getline before the
34715         cache-check for the same variable -- that defeated the purpose of
34716         the test; the test program was never run.  This was a problem only
34717         on systems with losing getline functions -- HP-UX 10.20 is one.
34718         Reported by Bjorn Helgaas.
34719
34720 1998-02-06  Jim Meyering  <meyering@eng.ascend.com>
34721
34722         * m4/Makefile.am (EXTRA_DIST): Add perl.m4.
34723
34724 1998-01-10  Jim Meyering  <meyering@na-net.ornl.gov>
34725
34726         * m4/Makefile.am (EXTRA_DIST): Add const.m4.
34727
34728         * m4/const.m4: New file.  Use an initializer in this declaration
34729         typedef int charset[2]; const charset x;
34730         Reported by Bob Glickstein.
34731
34732 1997-12-21  Jim Meyering  <meyering@na-net.ornl.gov>
34733
34734         * m4/chown.m4: Fix reversed types on -1 args to chown.
34735         From Kaveh Ghazi.
34736
34737 1997-12-14  Jim Meyering  <meyering@na-net.ornl.gov>
34738
34739         * m4/check-decl.m4: s/DECLARATION_/DECL_/g.
34740         Add lseek and memchr.
34741
34742         * m4/decl.m4: s/HAVE_DECLARATION_/HAVE_DECL_/g.
34743         T.E.Dickey <dickey@clark.net> said that some older preprocessors
34744         have a 20-character limit on names.
34745
34746 1997-11-30  Jim Meyering  <meyering@na-net.ornl.gov>
34747
34748         * m4/inttypes_h.m4: New file.
34749         * m4/uintmax_t.m4: New file.
34750         * m4/Makefile.am (EXTRA_DIST): Add inttypes_h.m4 and uintmax_t.m4.
34751
34752 Copyright (C) 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007
34753   Free Software Foundation, Inc.
34754 Copying and distribution of this file, with or without modification,
34755 are permitted provided the copyright notice and this notice are preserved.